4. Across landscape
Across landscape: Across
- Across core
- Across web (AcrossWebModule)
- Across test
- Standard module BOM
BOM containing core dependency versions.
Use as a basis for standard modules.
https://foreach.atlassian.net/wiki/display/AX
5. Across landscape
Across landscape: Across Standard Modules
- Separate modules and projects
- Per-module versioning scheme
- AcrossHibernateModule, DebugWebModule,
AdminWebModule, SpringSecurityModule, UserModule,
SpringSecurityAclModule, EntityModule…
https://foreach.atlassian.net/wiki/display/AX/Standard+modules
6. Across landscape
Across landscape: Across platform
BOM containing dependency versions of all
standard modules.
Use as basis for applications or non-standard
modules.
https://foreach.atlassian.net/wiki/display/AX/Across+Platform
7. Roadmap Across
Platform versions:
- 1.0.6.RELEASE -> 1.0.7 (Q1 2015)
- 1.1.1.RELEASE -> 1.1.2 (Q2 2016)
- 1.2.1 (Q3 2016)
1.0.6 (1.0.x) 1.1.2 (1.1.x) 1.2.0 (1.2.x)
PAST (DISCONTINUED) NEW CURRENT FUTURE
JDK 7 JDK 8 JDK 8
Spring 4.0.x Spring 4.1.x Spring 4.2.x (4.3?)
Spring Boot 1.2.x Spring Boot 1.3.x
Q4 2015 Q1 2016 Q2-Q3 2016
8. Roadmap Across
Development philosophy:
Aggressive evolution, best effort compatibility.
Minor version, eg. 1.0.6 -> 1.0.7:
- Focus on compatibility – prefer deprecation
- May include trivial breaking changes
Major version, eg. 1.0.6 -> 1.1.0:
- Aggressive improvements – breaking changes
Major version + 1, eg. 1.0.6 -> 1.1.0 -> 1.2.0:
- Remove deprecated items from version - 2
9. Across 1.1.2: features & improvements
- Reference documentation
http://across.foreach.be/docs/across/
- Remove boilerplate code
Improve Spring Boot integration.
- Extend installer functionality
10. Across 1.1.2: removing boilerplate code
- Context
@EnableAcrossContext auto configuration
- Scan for modules
- Resolve module dependencies
- Module
- @ModuleConfiguration
- instead of prepareForBootstrap()
- Scan for @Installer classes
- Auto-detect message sources
11. Across 1.1.2: removing boilerplate code
- Spring Boot integration
- Support application.properties & YAML
- Deprecate AcrossModuleSettings for
@ConfigurationProperties
Spring configuration metadata
- Deprecate @AcrossCondition for boot
@ConditionalOnX implementations
ConditionalOnBean, ConditionalOnExpression, ConditionalOnProperty…
WARNING: Spring Boot application auto configuration is not
supported. However, using auto configuration classes directly is
possible.
12. Across 1.1.2: removing boilerplate code
- Across web
- Default HTTP encoding to UTF-8
- Static resources
- /static as resource foler
- Default URL versioning (fixed version)
- Default client-side caching (1 year)
- @AcrossApplication
- Spring Boot executable application
- Auto configures web container based on Spring
Boot starters
- Auto configures application modules
13. Across 1.1.2: installers
Installers
- Separate customizable installer
ApplicationContext
- Support for @Conditional and @Order
- AcrossLiquibaseInstaller detects
SchemaConfiguration beans
Migration related improvements:
- Provide explicit installer name
- Rename installers on InstallerRepository
14. Timeline
- Feb 19 2016: 1.1.2.RC1
- March 2016
- 1.1.2.RC2 (if required) or 1.1.2.RELEASE
Next version focus:
Web related functionality: view engine, templates,
menu building, web resources…
Questions?