Developer Guide¶
How to Release?¶
Creating a new release of the NC requires 3 steps
Prepare the release
Merge your pull request to the default branch
Trigger the release process
poetry run -- nox -s release:prepare -- --type {major,minor,patch}
poetry run -- nox -s release:trigger
For further information, please refer to section How to Release in the PTB’s User Guide.
Selecting the Versions for SLCT and SLCR¶
NC contains multiple dependencies including the following
Dependency |
Defined in |
Example |
---|---|---|
|
File pyproject.toml |
|
A release of the Exasol Script Languages Containers |
|
Additionally, each version of the SLCR depends on a specific version of the
SLCT, see the SLCR release letters and the file pyproject.toml
used by any
specific released version of the SLCR.
Conclusion: Whenever you update the major version of
script-languages-container-tool
in pyproject.toml
you will need to
update the referenced tag of SLCR in slct_manager.py
.
Example¶
For the versions named in the table above
SLCR version 9.1.0 in the release letter, section “_Script-Language-Container-Tool (Exaslct)_” states “_This release uses version 1.0.0 of the container tool._”
When clicking on the commit 60492ad and “Browse files”, then SLCR’s file pyproject.toml shows
exasol-script-languages-container-tool = "^1.0.0"
In this case, the dependencies shown in the table above, are ✅ valid as
NC’s file pyproject.toml
depends on the same major version of SLCT.
General instructions¶
Check if the referred version of SLCR is also compatible with the version of SLCT:
Go to SLCR releases.
Search for the SLCR version referenced in NC’s file
exasol/nb_connector/slc/constants.py
.Check if in the SLCR release, file
pyproject.toml
, dependencyscript-languages-container-tools
has the same major version.
Impact on NC Tests¶
Some of the tests of the Notebook Connector, especially the integration tests, may depend on particular properties of a particular SLCR release, e.g. a particular flavor to be present.
In consequence, updating the SLCR version potentially may require updating the NC tests as well, e.g. the name of the flavor used in the tests.