Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
This is the initial code for the aiven-commons
Aiven commons is patterned after Apache commons. The main POM contains that shard configuration against all the other components. The components are not modules of the parent pom.
The parent pom has version 1, it is not using semantic numbering but does use monotonically increasing numbers.
Each child can depend upon a different version of the parent.
Each child can change their version number at their own cadence.
Each child builds as a separate project.
The parent will change the version number whenever there is a change to the configuration.
Snapshot versions may be deployed and are encouraged.
Code is cleaned by during the build so after a maven build there my be formatting changes to the code.
The build system makes every effort to ensure good code before check in.
Please review all the code looking for naming issues and other items that you would not want to see in a SNAPSHOT version. The code here will be Version 1 aiven-commons and version 0.0.1-SNAPSHOT for everything else.
I know there is a lot of code, but most of it you have seen already as it has been moved and perhaps slightly modified from other code bases in aiven-open.
The initial code
Why this way
Allows each common component to evolve at its own cadence. Allows systems to utilize older versions as long as they need to.