2.0.0-M2

This milestone introduces one new feature, namely support for a table tree view in the Wicket viewer. It also includes all the features as of Apache Isis 1.17.0.

The long-term goal (for v2.0.0) is to allow the framework to be run on top of either Spring Boot or JEE MicroProfile, with either of those lower-level frameworks taking responsibility for configuration and injection. In this milestone, some significant initial work has been done in this area. Notably, the IsisConfiguration is now immutable once instantiated, and its creating vis-a-vis the AppManifest has been figured out.

Lots of work has also been done both in updating or removing dependencies, with google guava being notable as one dependency that has been removed.

New Feature

  • ISIS-898 - Add a table tree view to the Wicket viewer.

  • ISIS-1944 - Tree View: allow programmatic expand/collapse of tree-nodes

Improvement

  • ISIS-2082 - Allow for ThreadPoolSupport to simulate legacy behavior

  • ISIS-2073 - Multiple action buttons, when line-breaking, need more vertical space

  • ISIS-2070 - config properties for "where am I" should have "isis.viewer.wicket" as a prefix

  • ISIS-2067 - Rework o.a.i.WebServer

  • ISIS-2049 - Remove guava from core

  • ISIS-2048 - Update Wicket 8.1.0 → 8.2.0

  • ISIS-2047 - ThemeChooser: support for custom ThemeProviders

  • ISIS-2042 - When PROTOTYPING warn when menubars.layout.xml is missing

  • ISIS-2032 - Tables (non-paged): display total number of entites shown

  • ISIS-2030 - Table Column Order: use order of occurrence in layout grid as the default

  • ISIS-2019 - Fix NPEs when rendering REST API.

  • ISIS-2017 - Include the $$domainType for v1 representation.

  • ISIS-2014 - Minor API refinements for integration testing.

  • ISIS-2013 - Add support for H2 embedded database.

  • ISIS-2007 - Use Objects.requireNonNull(Obj, Supplier<String>) to avoid masking errors

  • ISIS-1988 - Move isis-core-wrapper into isis-core-runtime.

  • ISIS-1987 - Delete wicket applib

  • ISIS-1982 - UI: CollectionSelectionPanel replace split button by normal button

  • ISIS-1976 - Improve the metamodel cache management

  • ISIS-1975 - REST: discrepancy between schema export and actual response content

  • ISIS-1972 - JAXB view model: add default XmlAdapters for Java 8 Time

  • ISIS-1943 - Tree View: tree-node content IDs must be unique within a tree structure

  • ISIS-1934 - Menu Action Confirmation Dialog does not escape menu boundaries

  • ISIS-1923 - Table Column Headers do not honor 'describedAs'

  • ISIS-1920 - 'No Access' mouse over effect on domain-object properties.

  • ISIS-1918 - Remove hamcrest as a compile dependency from core modules

  • ISIS-1905 - utilize jee friendly version of axonframework

  • ISIS-1901 - Swagger-UI: Replace index.html with a Servlet that is aware of restful config

  • ISIS-1895 - Simplify deployment descriptors (web.xml)

  • ISIS-1839 - Remove isis-core-wrapper artifact.

  • ISIS-1838 - Move WrapperFactory in isis-core-wrapper to isis-core-runtime.

  • ISIS-1635 - Upgrade dependency to resteasy

  • ISIS-890 - Get rid of exploration mode, treat as synonym for prototype. Ditto with @Exploration annotation.

  • ISIS-1892 - Move Guice out of 'core'

  • ISIS-1841 - API cleanup + refactoring for version 2

  • ISIS-1277 - Prepare for JDK 11

Bug

  • ISIS-2066 - Invoking an action that returns null results in an NPE …​ eg HelloWorldObject#delete().

  • ISIS-2038 - Darkly Theme: tooltips render white text on almost white background

  • ISIS-2037 - UI: Footer Credits, links to local resources are not context path aware

  • ISIS-2036 - When PROTOTYPING prototyping toplevel menu is (sometimes?) hidden

  • ISIS-2035 - Examples: about page …​ swagger link broken

  • ISIS-2028 - Bundled Jetty cannot launch with new Byte-Buddy 1.9.2 in place

  • ISIS-2026 - IllegalAccessExceptions with Byte-Buddy 1.9.2

  • ISIS-2005 - Java built-in temporal type java.sql.Date rendered with -1 day offset after edit

  • ISIS-1991 - Determining the deployment type is broken

  • ISIS-1979 - Integration test logging includes a lot of log events twice.

  • ISIS-1978 - Integration tests are not executed in module module-simple

  • ISIS-1947 - Tree View: serialization issues with tree nodes using ViewModels

Task

Won’t Fix/Duplicates/Not a Problem

  • ISIS-2018 - [WON’T DO] Improve spec cache management

  • ISIS-1601 - [SUPERCEDED] Collection pojos (of view model) added to internal maps with incorrect Oid.

  • ISIS-1308 - [DUPLICATE] Swagger UI does not load json if not running as ROOT.war webapp.

  • ISIS-1050 - [WON’T FIX] Reflection VFS related issues in jetty-console

  • ISIS-1894 - [WONT-FIX] Resteasy: Reactivate PrettyPrinting

  • ISIS-1845 - [WONT-FIX] Improve code coverage regarding applib’s test-suite

  • ISIS-1015 - [WON’T FIX] DataNucleus doesn’t support LocalDateTime

  • ISIS-722 - [DUPLICATE] For 2.0.0, should we get rid of the identity map, and simply "new up" PojoAdapters around pojos as-and-when?

  • ISIS-1981 - [WONT-FIX] Eclipse: DataNucleus enhancer does see 2 different javax.jdo:jdo-api versions on class-path

  • ISIS-2034 - [NOT A PROBLEM] REST operations return empty response

  • ISIS-1345 - [WON’T FIX] Remove the PersistenceSession#executeWithTransaction(…​)

  • ISIS-1962 - [WONT-FIX] Introduce an alternative core-plugin for sub class discovery

  • ISIS-1917 - [WONT FIX] new PropertyLayout::navigable needs proper integration with layout.xml

  • ISIS-1983 - [WONT-FIX] UI: upgrade to bootstrap 4