cobigen
cobigen copied to clipboard
Code-based Incremental Generator
Check this code: https://github.com/devonfw/cobigen/blob/28f53b0dad58ff71b30d011f0a0dfe450f646313/cobigen-eclipse/cobigen-eclipse/src/com/devonfw/cobigen/eclipse/healthcheck/HealthCheckDialog.java#L167-L168
Check this code: https://github.com/devonfw/cobigen/blob/28f53b0dad58ff71b30d011f0a0dfe450f646313/cobigen-cli/cli/src/main/java/com/devonfw/cobigen/cli/commands/GenerateCommand.java#L323-L324
Check if TemplatesInstallationTests and DownloadTemplateSetTests can be combined and if the tests need to be overhauled. https://github.com/devonfw/cobigen/blob/28f53b0dad58ff71b30d011f0a0dfe450f646313/cobigen/cobigen-core-systemtest/src/test/java/com/devonfw/cobigen/systemtest/TemplatesInstallationTest.java#L22-L48 https://github.com/devonfw/cobigen/blob/28f53b0dad58ff71b30d011f0a0dfe450f646313/cobigen/cobigen-core-systemtest/src/test/java/com/devonfw/cobigen/systemtest/DownloadTemplateSetsIT.java#L29-L57
The TemplateAdapterImpl can detect template set jars which don't provide a source jar. We need to add an exception handling and maybe automatically download missing source jars if needed. https://github.com/devonfw/cobigen/blob/28f53b0dad58ff71b30d011f0a0dfe450f646313/cobigen/cobigen-core/src/main/java/com/devonfw/cobigen/impl/adapter/TemplateAdapterImpl.java#L256-L262
Currently we allow monolithic templates by default, which is a workaround for our tests and the postpone upgrade functionality. We need to make sure that the ConfigurationHolder holds the state...
Currently we are using a fixed version number for the pom configuration version after the upgrade. This version needs to be retrieved automatically from the latest version of CobiGen. https://github.com/devonfw/cobigen/blob/01ef924c47b4d905441e05045cbd8e4f492e5322/cobigen/cobigen-core-api/src/main/java/com/devonfw/cobigen/api/constants/ConfigurationConstants.java#L132...
Currently we determine the folder for the template set utilities like this: https://github.com/devonfw/cobigen/blob/ac2efa9bf52a67f015d53d7a825b9cc0e9d5e399/cobigen/cobigen-core/src/main/java/com/devonfw/cobigen/impl/config/TemplateSetConfiguration.java#L187-L196 Adjust the TemplateSetConfigurationManager here: https://github.com/devonfw/cobigen/blob/ac2efa9bf52a67f015d53d7a825b9cc0e9d5e399/cobigen/cobigen-core/src/main/java/com/devonfw/cobigen/impl/config/reader/TemplateSetConfigurationManager.java#L75-L82 to get access to the root directory of each template-set.
Check if this test is still needed: https://github.com/devonfw/cobigen/blob/ac2efa9bf52a67f015d53d7a825b9cc0e9d5e399/cobigen/cobigen-core/src/test/java/com/devonfw/cobigen/unittest/config/reader/TemplatesConfigurationReaderTest.java#L93-L116
### Expected behavior As a CobiGen user, I want to have two different versions of a template set in my adapted folder but only the latest version should get loaded....
The detection of a monolithic configuration occurs late in the startup process and takes place, after a CobiGen object is created, in the configurationHolder by a simple query whether the...