2.0.0-M1
This is the first milestone release for Apache Isis 2.0
Apache Isis 2.0 upgrades the framework to require Java 8 and above, and along the way upgrades DataNucleus ORM to 5.1 and Wicket to 8.0.
Notable new features include support for meta-annotations (both Apache Isis annotations and DataNucleus).
Features deprecated in Apache Isis 1.x (most notably, domain services and annotations) have been removed.
The most significant domain service removed is DomainObjectContainer
.
New Feature
-
ISIS-1969 - Distribute Isis as a Docker image, with the libraries in Tomcat’s lib/ folder (skinny wars)
-
ISIS-1809 - Convenience adapter implementations of UrlEncodingService
-
ISIS-1740 - New Feature: Where am I
-
ISIS-1726 - Support DataNucleus meta annotations for @PersistenceCapable.
-
ISIS-1632 - Support meta annotations for @Property/@Collection/@Action + @XxxLayout
-
ISIS-1056 - [DUPLICATE] Support user-defined annotations (as per Spring and JSR-303 etc).
Improvement
-
ISIS-1961 - ResourceCachingFilter: Suppress 'client connection abort' exceptions.
-
ISIS-1959 - Update to Wicket 8
-
ISIS-1958 - Integration Tests: HSQL-DB is forced upon users
-
ISIS-1956 - Remove dependencies on guava from unittestsupport
-
ISIS-1955 - Allow for ErrorReportingService Tickets to render arbitrary HTML
-
ISIS-1954 - JUnit 5 support
-
ISIS-1950 - Add a ByteBuddy plugin implementing proxy-factory mechanics
-
ISIS-1949 - Make proxy-factory mechanics a plugin (Javassist)
-
ISIS-1948 - Remove Javassist as a dependency
-
ISIS-1942 - New Facet: XmlAccessorTypeFacet
-
ISIS-1935 - Remove the requirement for event-bus plugins to implement QueryResultCacheControl
-
ISIS-1932 - Consolidation of Collection Utility classes
-
ISIS-1931 - ServicesInjector: Reduce Heap Pollution
-
ISIS-1930 - PersistenceSession: Reduce Heap Pollution
-
ISIS-1928 - Don’t log ERROR if fail to authenticate (INFO is enough)
-
ISIS-1911 - TranslationServicePo: new config option to disable the service
-
ISIS-1910 - Rename IsisJdoSupport0 back to its original name
-
ISIS-1906 - Programming Model: @Parent needs replacement
-
ISIS-1904 - gitlab setup, supporting CI/CD builds with externalized version
-
ISIS-1897 - applib: the new ObjectContracts needs backward compatibility
-
ISIS-1896 - Swagger-UI: provide a link for convenient login to restful API
-
ISIS-1891 - Make jax-rs provider (resteasy) a plugin
-
ISIS-1881 - Package swagger-ui web-content with metamodel module
-
ISIS-1846 - Code deduplication (new Internal API)
-
ISIS-1844 - API cleanup: make any unchecked casts explicit
-
ISIS-1843 - remove occurences of Thread.currentThread().getContextClassLoader()
-
ISIS-1842 - API cleanup: add generic type arguments where missing
-
ISIS-1830 - Eliminate dependence on any JDK internal APIs (jdeps JDK 9)
-
ISIS-1827 - Remove dependencies on guava from isis-core-applib (public API)
-
ISIS-1823 - Config property for disabling footer entirly
-
ISIS-1818 - new config property: max navigable parent chain length
-
ISIS-1817 - new config property that allows to disable the where-am-i feature
-
ISIS-1779 - Transition to JAX-RS 2.0 Client API
-
ISIS-1775 - Context-Path support for SwaggerService
-
ISIS-1763 - Change @DomainObject#bounded (a boolean) to @DomainObject#bounding (an enum)
-
ISIS-1762 - Java 8+ Miscellaneous Utilities
-
ISIS-1756 - JEE Support - proper life-cycling
-
ISIS-1755 - JEE Support - let CDI ignore certain beans
-
ISIS-1753 - Plugable support for guava and axon event bus implementation.
-
ISIS-1744 - Update DataNucleus to the latest version (5.1.5 or later)
-
ISIS-1742 - Remove deprecated annotations, methods etc.
-
ISIS-1727 - Minor internal refactorings from upgrade to JDK 8
-
ISIS-1725 - Simplify bootstrapping logic by requiring an AppManifest to be supplied, remoev cfg property
-
ISIS-1724 - Remove JDO applib’s IsisJdoSupport
-
ISIS-1723 - Remove JDO applib’s Auditable interface and @Auditable annotation
-
ISIS-1683 - Move org.apache.isis.applib.services.timestamp.Timestampable to mixins.timestamp
-
ISIS-1682 - Move org.apache.isis.applib.services.layout.Object_downloadLayoutXml mixins out of services.layout and into mixins.layout
-
ISIS-1681 - Move wrapper factory events (eg org.apache.isis.applib.events.AccessEvent) to subpackage of services.wrapper
-
ISIS-1680 - Move event classes (eg org.apache.isis.applib.services.eventbus.AbstractDomainEvent) out of services.eventbus and into applib.events (subpackages thereof)
-
ISIS-1679 - Move org.apache.isis.applib.services.dto.Dto to org.apache.isis.applib.mixins
Bug
-
ISIS-1963 - Wicket UI: IllegalArgumentExceptions after persistent field update using AJAX
-
ISIS-1957 - ServiceInjector fails to handle Generic Types in target fields of type List
-
ISIS-1946 - Running with o.a.i.WebServer throws exception due to empty context path.
-
ISIS-1941 - [NOT A PROBLEM] Metamodel: XmlJavaTypeAdapterFacetFactory broken somehow
-
ISIS-1940 - MultiSelect Action Invocation throws IllegalArgumentException
-
ISIS-1939 - Internal API: Memento deserialization requires proper class-loader
-
ISIS-1929 - Skinny WAR Redeployment: Isis Core Plugins might not be resolved
-
ISIS-1887 - Metamodel: restore java.sql.Timestamp support
-
ISIS-1880 - LocalResourcePath: new value type for local URLs
-
ISIS-1870 - Fix JUnit Tests previously not picked up by surefire
-
ISIS-1869 - Surefire does not pick up all relevant tests
-
ISIS-1868 - Eclipse fails to build the schema module
-
ISIS-1866 - Metamodel: 38 JUnit Test Failures
-
ISIS-1865 - Wicket-Impl: Some JUnit tests are failing
-
ISIS-1852 - Iterating over query result list with parallelStream produces next exception
-
ISIS-1821 - Metadata validation failure when no @Nullable is present
-
ISIS-1736 - ConfigurationServiceDefault is inconsistent
-
ISIS-1721 - Isis should optionally not override the default values of entities.
-
ISIS-1599 - "Set" interface does not work as an action parameter’s collection type
-
ISIS-1531 - Possible memory leak
-
ISIS-1506 - tomcat shutdown - threads in PARK state
-
ISIS-1172 - Logo in wicket viewer should be calculated relative to context root
Dependency upgrade
-
ISIS-1276 - Update DN to 5.1.x (from DN 4.1.x)
Sub-task
-
ISIS-1951 - Move objenesis dependency to plugin codegen-javassist
-
ISIS-1915 - Migration Notes: We have core plugins now
-
ISIS-1909 - Migration Notes: Moved and Deprecated Classes
-
ISIS-1908 - Mirgation Notes: swagger-ui is now packed with metamodel
-
ISIS-1907 - Migration Notes: Apply workaround for DN plugins
-
ISIS-1893 - fix mvn build issues
-
ISIS-1890 - configure surefire for all new plugins
-
ISIS-1889 - Backport datanucleus specific commits from M2 into M1.
-
ISIS-1886 - Port QueryResultCache back into applib
-
ISIS-1885 - Re-invent ObjectContracts' JUnit Tests
-
ISIS-1819 - Documentation (guide) of where-am-i feature
-
ISIS-1816 - Specify framework’s behavior if multiple @Parent annotations or parent() methods are resolved in the object’s hierarchy
-
ISIS-1754 - JEE Support - Investigate Class Loading on Payara 4.1.2