...
- Remove dependencies to 'maven' packages in central modules
- Maven should be just a implementation of a specific type of repository. Maven specifics should not be part of central APIs
- Provide central generic API for repository handling, with implementations in separate modules.
- Start with maven as implementation
- Try to abstract the concepts
- Try to reduce/remove redundant APIs
- E.g. there are different ways to access the physical files of a repository → MetaData, Repository implementation, Repository API
- Improve performance
- Find pain points
- Upgrade the used libraries / dependencies
- Use newer maven libraries and API
- Update selenium web tests
- Update versions of all maven plugins used
- Get rid of maven plugins that are not used
- Modernize the techniques libraries used for Web UI
- Rename packages to mirror the main architecture
- Unique naming for maven specific packages → bundle them under one tree
- plugins folder : Does it make sense? What is a plugin exactly?
- Can we make them Java 9 Jigsaw ready?
- Update documentation
- Remove functionality that is not needed and/or not used
...