Skip to content

Move build dependencies into dev_scripts#61

Merged
empwilli merged 6 commits intomainfrom
empwilli/first_codegen_steps
Nov 24, 2025
Merged

Move build dependencies into dev_scripts#61
empwilli merged 6 commits intomainfrom
empwilli/first_codegen_steps

Conversation

@empwilli
Copy link
Collaborator

@empwilli empwilli commented Nov 19, 2025

The release process relies on a number of separate dependencies:
aas-core-testgen, aas-core-codgen, and aas-core-meta. However, as these
projects also rely on one-another, the result is a complicated mess of
interdependent software. To cut these dependencies at the resp. target SDK side,
we move the respective dependencies (snippets, meta-model.py) into the
dev_scripts, as well as the generated test data. Furthermore, we now generate
the SDK code as part of the dev_scripts.

@empwilli empwilli requested a review from mristin November 19, 2025 07:49
@empwilli empwilli force-pushed the empwilli/first_codegen_steps branch 6 times, most recently from 7bbb44d to ad2cff6 Compare November 21, 2025 22:11
The dev_scripts formerly relied on `setup.py`. As of today, the recommended
standard is `pyproject.toml`. We, therefore, migrate to this new standard.
icontract is not used in the project, as such we drop this dependency.
In the past the generation of the code in this repo happened as part of
the release process in `aas-core-codegen`. Updating aas-core3.0-cpp
then merely was a step of copying test data over. However, this causes
deep coupling between these two repos. To uncouple the repos, we move
the snippets to this repo and call `aas-core-codegen` from the
dev_scripts, instead.
@empwilli empwilli force-pushed the empwilli/first_codegen_steps branch 2 times, most recently from 057d306 to 6dd1b36 Compare November 24, 2025 09:44
Currently, there are some circular dependencies in code and test
generation. As an intermediate step to resolve these dependencies, we
drop the test generation from the dev_scripts.
In future versions we want to cut the fixed dependencies to the meta
model. In a first step we add a downloader script which allows users to
manually update the meta model used for generation.
In order to uncouple meta model, code, and test generation, we now opt
for explicitly moving the current meta model for which the SDK is
generated to the dev_scripts. This breaks the dependency and even allows
us to perform changes to the meta, if they have not been merged to
aas_core_meta.
@empwilli empwilli force-pushed the empwilli/first_codegen_steps branch from 6dd1b36 to 240415e Compare November 24, 2025 10:22
@empwilli empwilli merged commit 6f6c37a into main Nov 24, 2025
1 check passed
@empwilli empwilli deleted the empwilli/first_codegen_steps branch November 24, 2025 10:36
@empwilli empwilli changed the title Add C++ snippets for code generation Move build dependencies into dev_scripts Nov 24, 2025
@empwilli empwilli changed the title Move build dependencies into dev_scripts Move build dependencies into dev_scripts Nov 24, 2025
@empwilli empwilli changed the title Move build dependencies into dev_scripts Move build dependencies into dev_scripts Nov 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant