Antsibull Nox Helper Release Notes¶
v1.8.1¶
Release Summary¶
Maintenance release.
Bugfixes¶
- Add estimated Python versions for ansible-core 2.26 to 2.29, including the 'every 6th release' rule for target Python support (https://github.com/ansible-community/antsibull-nox/pull/223).
- Adjust internal ansible-core metadata to the latest
milestonebranch bump (https://github.com/ansible-community/antsibull-nox/pull/224).
v1.8.0¶
Release Summary¶
Bugfix and feature release.
Minor Changes¶
- Add
antsibull-nox update-azp-configsubcommand for updating an AZP configuration file to list all ansible-test nox sessions matching certain restrictions (https://github.com/ansible-community/antsibull-nox/pull/200, https://github.com/ansible-community/antsibull-nox/pull/206, https://github.com/ansible-community/antsibull-nox/pull/220). - Allow to always copy the repository structure before invoking
ansible-test envby setting theANTSIBULL_NOX_ALWAYS_COPY_REPO_STRUCTUREenvironment variable totrue. This is mainly needed to work around a bug inansible-test envin conjunction with AZP (https://github.com/ansible-community/antsibull-nox/pull/202). - Allow to configure whether
ansible-test integrationis passed the--continue-on-errorflag (https://github.com/ansible-community/antsibull-nox/pull/201). - Allow to configure whether
ansible-test integrationis passed the--retry-on-errorflag (https://github.com/ansible-community/antsibull-nox/pull/201). - Allow to control ansible-test coverage analysis more throught the environment variables
ANTSIBULL_NOX_COVERAGE_DESTINATION,ANTSIBULL_NOX_COVERAGE_ANALYSIS_FILE, andANTSIBULL_NOX_COVERAGE_NO_XML(https://github.com/ansible-community/antsibull-nox/pull/205). - Allow to control whether ansible-test integration tests should run tests marked as
unstableif changes affect them throught the environment variableANTSIBULL_NOX_INTEGRATION_ALLOW_UNSTABLE_CHANGED(https://github.com/ansible-community/antsibull-nox/pull/208). - Allow to split up unit test sessions per Python version, and allow finer control which Python versions for every ansible-core version to control a unit test session for (https://github.com/ansible-community/antsibull-nox/pull/209).
- Expose
antsibull_nox.IN_CIconstant that can be used in nox sessions to determine whether the session runs in CI (https://github.com/ansible-community/antsibull-nox/pull/203). - Expose
nice_docker_namesmap insessions.ansible_test_integrationthat allows to translate custom Docker container names into "nice", human-readable strings for use in display-name templating (https://github.com/ansible-community/antsibull-nox/pull/204). - Expose
nice_target_namesmap insessions.ansible_test_integrationthat allows to translate ansible-test target names into "nice", human-readable strings for use in display-name templating (https://github.com/ansible-community/antsibull-nox/pull/204). - In the GH action, allow to control whether ansible-test integration tests should run tests marked as
unstableif changes affect them with theallow-unstable-changedoption (https://github.com/ansible-community/antsibull-nox/pull/208). - In the GHA shared workflow, integration tests now always run tests marked as
unstableif changes affect them in pull requests (https://github.com/ansible-community/antsibull-nox/pull/208). - Provide
docker_niceandremote_nicenames for use in display-name templating forsessions.ansible_test_integration(https://github.com/ansible-community/antsibull-nox/pull/204). - Run
ansible-test envbefore running ansible-test tests. Also allow to supply--timeoutparameter by settingANTSIBULL_NOX_TIMEOUTenvironment variable; this is for use in CI systems such as Azure Pipelines (https://github.com/ansible-community/antsibull-nox/pull/199). - The shared GHA workflow can now be configured with
allow-coverage-cd-override: trueto also interpretci_completeandci_coveragein the last commit message of a PR or push, similar to the AZP CI scripts in ansible-core and several collections (https://github.com/ansible-community/antsibull-nox/pull/207). - Update supported Python versions for ansible-core devel (https://github.com/ansible-community/antsibull-nox/pull/210).
Bugfixes¶
- Fix accidentally completely skipping yamllint and extra checks during change detection (https://github.com/ansible-community/antsibull-nox/issues/212, https://github.com/ansible-community/antsibull-nox/issues/215, https://github.com/ansible-community/antsibull-nox/pull/218).
- Make CI detection also work in Azure Pipelines (https://github.com/ansible-community/antsibull-nox/pull/203).
- The GitHub action now restricts virtualenv to < 21.5.0 when Python 3.8 is used (for example to run Ansible 2.9 tests). virtualenv 21.5.0 no longer supports Python 3.8 (https://github.com/ansible-community/antsibull-nox/issues/216, https://github.com/ansible-community/antsibull-nox/pull/217).
- The license-check session now installs resuse per default as
resuse[charset-normalizer]and not simplyreuse. This is necessary in Ansible's AZP environment (https://github.com/ansible-community/antsibull-nox/pull/219).
v1.7.0¶
Release Summary¶
Feature release.
Minor Changes¶
- A Molecule session can now be added with
[sessions.molecule]inantsibull-nox.toml(https://github.com/ansible-community/antsibull-nox/issues/162, https://github.com/ansible-community/antsibull-nox/pull/187). - Ansible-core devel now supports Python 3.15 (https://github.com/ansible-community/antsibull-nox/pull/198).
- Provide a decorator
@antsibull_nox.sessions.install_packages()in the public API that allows to install Python packages for nox sessions in a way that can later be used to provide a unified way to pin packages and update package lockfiles (https://github.com/ansible-community/antsibull-nox/pull/194).
v1.6.0¶
Release Summary¶
Feature and bugfix release.
Minor Changes¶
- Allow to run commands before executing nox in shared workflows (https://github.com/ansible-community/antsibull-nox/pull/188).
- Always show tracebacks in case of errors for ansible-core 2.19+ in integration tests. Showing these has been turned off by default in ansible-core 2.19, which is great for intentional errors, but makes debugging unintentional ones (like plugin crashes) hard to debug since you do not see where the error comes from (https://github.com/ansible-community/antsibull-nox/pull/190).
- Antsibull-nox's ansible-core
develandmilestonebranch versions have been updated to 2.22. This means thatstable-2.21will now be added to CI matrices ifmax_versionhas not been explicitly specified (https://github.com/ansible-community/antsibull-nox/pull/195).
Bugfixes¶
- If change detection is enabled and
antsibull-nox.tomlor a linter's config file is changed, check all files (https://github.com/ansible-community/antsibull-nox/issues/183, https://github.com/ansible-community/antsibull-nox/pull/185). - Run
ruff checkwith--quietto avoid warnings to prevent parsing of the JSON output (https://github.com/ansible-community/antsibull-nox/issues/184, https://github.com/ansible-community/antsibull-nox/pull/186).
v1.5.0¶
Release Summary¶
Bugfix and feature release.
Minor Changes¶
- Allow to configure which files and directories are modules and module utils (https://github.com/ansible-community/antsibull-nox/pull/181).
- Allow to define the Python code files that the linters should run on (https://github.com/ansible-community/antsibull-nox/issues/178, https://github.com/ansible-community/antsibull-nox/pull/181).
- Allow to set minimum Python version supported by a collection. This is currently used for the
[sessions.ansible_test_integration_w_default_container]section (https://github.com/ansible-community/antsibull-nox/issues/163, https://github.com/ansible-community/antsibull-nox/pull/176). - Allow to specify special configs for modules for all formatters and linters in the
lintsection (https://github.com/ansible-community/antsibull-nox/pull/181). - Format messages nicely outside CI, or when not configured otherwise (https://github.com/ansible-community/antsibull-nox/pull/175).
- Improve error reporting system used by internal scripts (https://github.com/ansible-community/antsibull-nox/pull/171).
- Improve output parsing and formatting for pylint and mypy checks (https://github.com/ansible-community/antsibull-nox/pull/171).
- In the
ruff checkandruff check --fixchecks, make sure to run ruff in aansible_collections/<namespace>/<name>/structure so that import classification works correctly. The output of these checks is now handled as JSON and parsed and then formatted by antsibull-nox (https://github.com/ansible-community/antsibull-nox/pull/171). - When antsibull-docs 2.24.0+ is available, the
docs-checksession now uses its JSON message format (https://github.com/ansible-community/antsibull-nox/pull/173).
Bugfixes¶
- Extra code files were ignored so far in the
pylinttest. They are now used there as well (https://github.com/ansible-community/antsibull-nox/pull/181). - Fix
antsibull-nox-configsession in case antsibull-nox has not been installed in$PATH(https://github.com/ansible-community/antsibull-nox/pull/169). - Fix reporting of locations when running yamllint for YAML code blocks in RST extra docs (https://github.com/ansible-community/antsibull-nox/pull/177).
- Only pass
--color [yes]to ansible-test when nox is running in color mode (https://github.com/ansible-community/antsibull-nox/pull/174). - Remove superfluous call from the
antsibull-nox-configsession (https://github.com/ansible-community/antsibull-nox/pull/172).
v1.4.1¶
Release Summary¶
Bugfix release.
Bugfixes¶
- Avoid construct that does not work with Pythons before 3.13 (https://github.com/ansible-community/antsibull-nox/pull/165).
- Fix compatibility with Python 3.9, and for Python versions < 3.12 (https://github.com/ansible-community/antsibull-nox/pull/168).
- Make sure to set
ANTSIBULL_NOX_IGNORE_INSTALLED_COLLECTIONSin the GitHub Action also while setting up the nox environment(s) (https://github.com/ansible-community/antsibull-nox/pull/166).
v1.4.0¶
Release Summary¶
New bugfix and feature release.
Minor Changes¶
- Add Python 3.15 to Python version search list (https://github.com/ansible-community/antsibull-nox/pull/142).
- Allow to specify extra
requirements.ymlfiles for ansible-lint (https://github.com/ansible-community/antsibull-nox/issues/156, https://github.com/ansible-community/antsibull-nox/issues/161). - Also look for needed collections before running ansible-lint in other places that ansible-lint searches for requirements.yml (https://github.com/ansible-community/antsibull-nox/issues/156, https://github.com/ansible-community/antsibull-nox/pull/159).
- Declare support for Python 3.14 (https://github.com/ansible-community/antsibull-nox/pull/141).
- Use Python 3.14 for antsibull-nox action (https://github.com/ansible-community/antsibull-nox/pull/141).
- When determining changed files for pylint and mypy, also consider files that (transitively) import the changed files (https://github.com/ansible-community/antsibull-nox/pull/143).
- When running ansible-galaxy to list, download, or install collections, look in the current session's venv first (https://github.com/ansible-community/antsibull-nox/pull/155, https://github.com/ansible-community/antsibull-nox/pull/157, https://github.com/ansible-community/antsibull-nox/pull/158, https://github.com/ansible-community/antsibull-nox/pull/160).
Bugfixes¶
- Adjust URLs for antsibull-nox in new templated noxfiles (https://github.com/ansible-community/antsibull-nox/pull/148).
- Avoid using relative symlinks to link from temporary collection root to collections. This can cause problems with non-canonical paths (https://github.com/ansible-community/antsibull-nox/issues/152, https://github.com/ansible-community/antsibull-nox/pull/153).
- If pylint's output is not valid JSON, show output instead of crashing (https://github.com/ansible-community/antsibull-nox/pull/140).
- When computing Python 3 only paths for black or pylint, do not recurse into
__pycache__(https://github.com/ansible-community/antsibull-nox/pull/143). - When determining which files to run various Python linters on when change detection is enabled, ensure to restrict to Python files (https://github.com/ansible-community/antsibull-nox/pull/146).
- Work around bug in ansible-galaxy when no collections are found (https://github.com/ansible-community/antsibull-nox/pull/154).
v1.3.2¶
Release Summary¶
Maintenance release.
Minor Changes¶
- Antsibull-nox's ansible-core
develandmilestonebranch versions have been updated to 2.21. This means thatstable-2.20will now be added to CI matrices ifmax_versionhas not been explicitly specified (https://github.com/ansible-community/antsibull-nox/pull/139).
v1.3.1¶
Release Summary¶
Bugfix release.
Bugfixes¶
- Fix
mypyinvocation intypingsession. For some reason the file list always ended up empty andmypygot skipped (https://github.com/ansible-community/antsibull-nox/pull/137). - isort invocation - make sure to pass
--srcin an appropriate directory structure to ensure correct and more consistent sorting (https://github.com/ansible-community/antsibull-nox/issues/134, https://github.com/ansible-community/antsibull-nox/pull/136).
v1.3.0¶
Release Summary¶
Feature and bugfix release.
Minor Changes¶
- Allow to add tags to integration test sessions, automatically add tags to all sessions showing up in the matrix, and allow filtering the CI matrix generated by the shared workflow by these tags (https://github.com/ansible-community/antsibull-nox/issues/125, https://github.com/ansible-community/antsibull-nox/pull/125, https://github.com/ansible-community/antsibull-nox/pull/126).
- Allow to specify Ansible variables in integration tests directly or through environment variables with new
ansible_varsconfig directive (https://github.com/ansible-community/antsibull-nox/pull/117). - Allow to specify a list of packages, requirement files, and constraint files for every
_packagekey in the config (https://github.com/ansible-community/antsibull-nox/issues/108, https://github.com/ansible-community/antsibull-nox/pull/119). - Allow to specify individual ansible-test integration sessions with the new
[sessions.ansible_test_integration]config setting (https://github.com/ansible-community/antsibull-nox/issues/114, https://github.com/ansible-community/antsibull-nox/pull/118). - Allow to specify minimum/maximum ansible-core version to
matrix-generatorsession and shared workflow (https://github.com/ansible-community/antsibull-nox/issues/113, https://github.com/ansible-community/antsibull-nox/pull/115, https://github.com/ansible-community/antsibull-nox/pull/126). -
Antsibull-nox now supports VCS configuration and basic change detection. At the moment, the following tests support change detection:
-
All ansible-test tests configured through
antsibull-nox.toml; - All ansible-test tests configured through
noxfile.pythat explicitly allow change detection; - All
lintsessions (formatters,codeqa,yamllint,typing); - The
extra-checkssession and all its tests; - All tests but
reusefrom thelicense-checksession; - The docs-check sessions are restricted to changed files (for code-block tests), or skipped if there are no appropriate changed files.
Change detection can be enabled with the environment variable ANTSIBULL_CHANGE_DETECTION.
The base branch can explicitly set with the environment variable ANTSIBULL_BASE_BRANCH
(https://github.com/ansible-community/antsibull-nox/issues/112,
https://github.com/ansible-community/antsibull-nox/pull/120,
https://github.com/ansible-community/antsibull-nox/pull/122,
https://github.com/ansible-community/antsibull-nox/pull/123,
https://github.com/ansible-community/antsibull-nox/pull/124,
https://github.com/ansible-community/antsibull-nox/pull/129,
https://github.com/ansible-community/antsibull-nox/pull/130).
* In [sessions.lint], pylint_extra_deps and mypy_extra_deps can now use package type dictionaries like {type = "requirements", file = "requirements/mypy-extra-deps.txt"} (https://github.com/ansible-community/antsibull-nox/pull/133).
* Make codecov upload for the shared nox workflow more flexible by allowing to disable it for specific event types (https://github.com/ansible-community/antsibull-nox/pull/132).
* Provide a new shared workflow .github/workflows/reusable-nox-run that allows to run nox with change detection (https://github.com/ansible-community/antsibull-nox/pull/128).
* The GitHub antsibull-nox action and the shared workflow support change detection.
To enable change detection for PRs, simply set the workflow parameter change-detection-in-prs
to true
(https://github.com/ansible-community/antsibull-nox/issues/112,
https://github.com/ansible-community/antsibull-nox/pull/120,
https://github.com/ansible-community/antsibull-nox/pull/121).
* antsibull-nox now depends on antsibull-fileutils >= 1.5.0
(https://github.com/ansible-community/antsibull-nox/pull/122).
Deprecated Features¶
- In
[sessions.lint], shell splitting of strings inpylint_extra_depsandmypy_extra_depsis deprecated and will stop working in future releases. Use package type dictionaries instead (https://github.com/ansible-community/antsibull-nox/pull/133). - In
[sessions.lint], using strings that start with dashes (-) is deprecated and will stop working in future releases. Use appropriate package type dictionaries instead (https://github.com/ansible-community/antsibull-nox/pull/133). - In all
_packageoptions, package names starting with dashes (-) are deprecated and will stop working in future releases. Use appropriate package type dictionaries instead (https://github.com/ansible-community/antsibull-nox/pull/133).
v1.2.0¶
Release Summary¶
Maintenance and feature release.
Minor Changes¶
- Allow to install packages editably and from requirement files (https://github.com/ansible-community/antsibull-nox/pull/106).
Bugfixes¶
- The
action-groupsextra check failed ifplugins/modules/does not exist (https://github.com/ansible-community/antsibull-nox/pull/104). - Update supported Python versions for ansible-core milestone (https://github.com/ansible-community/antsibull-nox/pull/109).
v1.1.1¶
Release Summary¶
Maintenance release.
Bugfixes¶
- Update supported Python versions for ansible-core devel (https://github.com/ansible-community/antsibull-nox/pull/102).
v1.1.0¶
Release Summary¶
Feature release.
Minor Changes¶
- Add an
ee-checksession that allows test builds of execution environments (https://github.com/ansible-community/antsibull-nox/issues/16, https://github.com/ansible-community/antsibull-nox/pull/69, https://github.com/ansible-community/antsibull-nox/pull/99, https://github.com/ansible-community/antsibull-nox/pull/100, https://github.com/ansible-community/antsibull-nox/pull/101). - Allow to set preference for container engines with
ANTSIBULL_NOX_CONTAINER_ENGINEenvironment variable (https://github.com/ansible-community/antsibull-nox/issues/98, https://github.com/ansible-community/antsibull-nox/pull/100). - The YAML-in-RST checker for the
yamllintsession now also checksansible-output-dataandansible-output-metadirectives for antsibull-doc'sansible-outputsubcommand (https://github.com/ansible-community/antsibull-nox/pull/95, https://github.com/ansible-community/antsibull-nox/pull/96). - When using the reusable GHA workflow, execution environment tests are automatically added to the matrix (https://github.com/ansible-community/antsibull-nox/issues/16, https://github.com/ansible-community/antsibull-nox/pull/99).
- antsibull-nox now depends on antsibull-fileutils >= 1.4.0 (https://github.com/ansible-community/antsibull-nox/pull/97).
v1.0.0¶
Release Summary¶
First stable release.
Minor Changes¶
- New extra check
avoid-charactersallows to flag characters / regular expressions. This can for example be used to avoid tabulator characters, but also more complex character sequences (https://github.com/ansible-community/antsibull-nox/issues/89, https://github.com/ansible-community/antsibull-nox/pull/94).
v0.7.0¶
Release Summary¶
Feature release.
Minor Changes¶
- Antsibull-nox's ansible-core
develandmilestonebranch versions have been updated to 2.20. This means thatstable-2.19will now be added to CI matrices ifmax_versionhas not been explicitly specified (https://github.com/ansible-community/antsibull-nox/pull/91). - The
docs-checksession now also passes the new--check-extra-docs-refsparameter toantsibull-docs lint-collection-docsfor antsibull-docs >= 2.18.0 (https://github.com/ansible-community/antsibull-nox/pull/90).
v0.6.0¶
Release Summary¶
Bugfix and feature release.
Minor Changes¶
- Add new extra check
no-trailing-whitespace(https://github.com/ansible-community/antsibull-nox/pull/85). - Add new options to
docs-checkthat allow to validate code blocks in collection extra docs (https://github.com/ansible-community/antsibull-nox/pull/88). - Support running
ruff check --fix --select ...in theformatterssession by settingrun_ruff_autofix=truein the config (https://github.com/ansible-community/antsibull-nox/issues/70, https://github.com/ansible-community/antsibull-nox/pull/82). - Support running
ruff checkin thecodeqasession by settingrun_ruff_check=truein the config (https://github.com/ansible-community/antsibull-nox/issues/70, https://github.com/ansible-community/antsibull-nox/pull/82). - Support running
ruff formatin theformatterssession by settingrun_ruff_format=truein the config (https://github.com/ansible-community/antsibull-nox/issues/70, https://github.com/ansible-community/antsibull-nox/pull/82). - The
yamllinttest now also checks YAML and YAML+Jinja code blocks in extra documentation (.rstfiles indocs/docsite/rst/) (https://github.com/ansible-community/antsibull-nox/pull/87).
Bugfixes¶
- Do not fail if an unexpected action group is found that only contains a metadata entry (https://github.com/ansible-community/antsibull-nox/pull/81).
- Fix config file types for
no_unwanted_files_skip_directoriesandno_unwanted_files_yaml_directoriesto what is documented; that is, do not allowNone(https://github.com/ansible-community/antsibull-nox/pull/85). - Ignore metadata entries in action groups (https://github.com/ansible-community/antsibull-nox/pull/81).
- The
no_unwanted_files_skip_directoriesoption for theno-unwanted-fileswas not used (https://github.com/ansible-community/antsibull-nox/pull/85).
v0.5.0¶
Release Summary¶
Feature and bugfix release.
Minor Changes¶
- Allow to pass environment variables as Ansible variables for integration tests with the new
ansible_vars_from_env_varsoption forsessions.ansible_test_integration_w_default_container(https://github.com/ansible-community/antsibull-nox/pull/78).
Bugfixes¶
- Fix action group test. No errors were reported due to a bug in the test (https://github.com/ansible-community/antsibull-nox/pull/80).
v0.4.0¶
Release Summary¶
Feature and bugfix release.
Major Changes¶
- Required collections can now be installed from different sources per depending on the ansible-core version (https://github.com/ansible-community/antsibull-nox/pull/76).
Minor Changes¶
- Capture mypy and pylint errors to report paths of files relative to collection's root, instead of relative to the virtual
ansible_collectionsdirectory (https://github.com/ansible-community/antsibull-nox/pull/75). - Make yamllint plugin check also check doc fragments (https://github.com/ansible-community/antsibull-nox/pull/73).
- Positional arguments passed to nox are now forwarded to
ansible-lint(https://github.com/ansible-community/antsibull-nox/pull/74). - The yamllint session now ignores
RETURNdocumentation with values#and `` # `` (https://github.com/ansible-community/antsibull-nox/pull/71). - The yamllint test no longer shows all filenames in the command line (https://github.com/ansible-community/antsibull-nox/pull/72).
Bugfixes¶
- Adjust yamllint test to no longer use the user's global config, but only the project's config (https://github.com/ansible-community/antsibull-nox/pull/72).
v0.3.0¶
Release Summary¶
Feature release that is stabilizing the API.
All noxfiles and configs using this version should still work with antsibull-nox 1.0.0, unless a critical problem is found that cannot be solved in any other way.
Minor Changes¶
- Add
antsibull-nox initcommand that creates anoxfile.pyandantsibull-nox.tomllto get started (https://github.com/ansible-community/antsibull-nox/pull/58). - Add
callback_beforeandcallback_afterparameters toantsibull_nox.add_ansible_test_session()(https://github.com/ansible-community/antsibull-nox/pull/63). - Add a
antsibull-noxCLI tool with a subcommandlint-configthat lintsnoxfile.pyand theantsibull-nox.tomlconfig file (https://github.com/ansible-community/antsibull-nox/pull/56). - Add a session for linting the antsibull-nox configuration to
lint(https://github.com/ansible-community/antsibull-nox/pull/56). - Add new options
skip_tests,allow_disabled, andenable_optional_errorsfor ansible-test sanity sessions (https://github.com/ansible-community/antsibull-nox/pull/61). - Allow to disable coverage upload for specific integration test jobs in shared workflow with
has-coverage=falsein extra data (https://github.com/ansible-community/antsibull-nox/pull/64). - Ensure that Galaxy importer's output is actually collapsed on GHA (https://github.com/ansible-community/antsibull-nox/pull/67).
- Never show Galaxy importer output unless it can be collapsed, verbosity is enabled, or a new config option
galaxy_importer_always_show_logsis set totrue(https://github.com/ansible-community/antsibull-nox/pull/67). - Skip symlinks that do not point to files in
license-checkandyamllintsessions (https://github.com/ansible-community/antsibull-nox/pull/61). - Update shared workflow to use a
display-nameandgha-containerextra data (https://github.com/ansible-community/antsibull-nox/pull/63).
Removed Features (previously deprecated)¶
- Removed all deprecated functions from
antsibull_nox.**that generate sessions. The only functions left that are public API areantsibull_nox.load_antsibull_nox_toml(),antsibull_nox.add_ansible_test_session(), andantsibull_nox.sessions.prepare_collections()(https://github.com/ansible-community/antsibull-nox/pull/54).
Bugfixes¶
- Action groups extra test no longer fails if
action_groupsdoes not exist inmeta/runtime.yml. It can now be used to ensure that there is no action group present inmeta/runtime.yml(https://github.com/ansible-community/antsibull-nox/pull/60). - Do not fail when trying to install an empty list of packages when
run_reuse=false(https://github.com/ansible-community/antsibull-nox/pull/65). - Make sure that
extra_code_filesis considered forblackwhenrun_black_modules=false(https://github.com/ansible-community/antsibull-nox/pull/59). - Make sure to flush stdout after calling
print()(https://github.com/ansible-community/antsibull-nox/pull/67).
v0.2.0¶
Release Summary¶
Major extension and overhaul with many breaking changes. The next minor release is expected to bring more stabilization.
Major Changes¶
- There is now a new function
antsibull_nox.load_antsibull_nox_toml()which loadsantsibull-nox.tomland creates configuration and sessions from it. Calling other functionality fromantsibull_noxinnoxfile.pyis only necessary for creating own specialized sessions, or ansible-test sessions that cannot be created with theantsibull_nox.add_all_ansible_test_*_test_sessions*()type functions (https://github.com/ansible-community/antsibull-nox/pull/50, https://github.com/ansible-community/antsibull-nox/issues/34).
Minor Changes¶
- Add descriptions to generated sessions that are shown when running
nox --list(https://github.com/ansible-community/antsibull-nox/pull/31). - Add function
add_matrix_generatorwhich allows to generate matrixes for CI systems for ansible-test runs (https://github.com/ansible-community/antsibull-nox/pull/32). - Add several new functions to add ansible-test runs (https://github.com/ansible-community/antsibull-nox/issues/5, https://github.com/ansible-community/antsibull-nox/pull/32, https://github.com/ansible-community/antsibull-nox/pull/41, https://github.com/ansible-community/antsibull-nox/pull/45).
- Add shared workflow for running ansible-test from nox and generating the CI matrix from nox as well (https://github.com/ansible-community/antsibull-nox/issues/35, https://github.com/ansible-community/antsibull-nox/pull/37, https://github.com/ansible-community/antsibull-nox/pull/38, https://github.com/ansible-community/antsibull-nox/pull/48, https://github.com/ansible-community/antsibull-nox/pull/53).
- Allow to add
yamllintsession tolintmeta-session that checks YAML files, and YAML content embedded in plugins and sidecar docs (https://github.com/ansible-community/antsibull-nox/pull/42). - Allow to add ansible-lint session (https://github.com/ansible-community/antsibull-nox/issues/40, https://github.com/ansible-community/antsibull-nox/pull/49).
- Allow to disable using installed collections that are not checked out next to the current one by setting the environment variable
ANTSIBULL_NOX_IGNORE_INSTALLED_COLLECTIONStotrue(https://github.com/ansible-community/antsibull-nox/pull/51). - Collapse Galaxy importer's output in GitHub Actions (https://github.com/ansible-community/antsibull-nox/pull/46).
- In the GitHub Action, no longer use installed collections, but only ones that have been checked out next to the current one. This avoids using collections that come with the Ansible community package installed in the default GHA image (https://github.com/ansible-community/antsibull-nox/pull/51).
- The action allows to install additional Python versions with the new
extra-python-versionsoption (https://github.com/ansible-community/antsibull-nox/pull/32). - The action allows to pass extra commands after
--with the newextra-argsoption (https://github.com/ansible-community/antsibull-nox/pull/32). - antsibull-nox now automatically installs missing collections. It uses
.nox/.cacheto store the collection artifacts and the extracted collections (https://github.com/ansible-community/antsibull-nox/pull/46, https://github.com/ansible-community/antsibull-nox/pull/52, https://github.com/ansible-community/antsibull-nox/issues/7). - pydantic is now a required Python dependency of antsibull-nox (https://github.com/ansible-community/antsibull-nox/pull/50).
- tomli is now a required Python dependency of antsibull-nox for Python versions 3.9 and 3.10 For Python 3.11+, the standard library tomllib will be used (https://github.com/ansible-community/antsibull-nox/pull/50).
Deprecated Features¶
- All functions in
antsibull_nox.**are deprecated exceptantsibull_nox.load_antsibull_nox_toml(),antsibull_nox.add_ansible_test_session(), andantsibull_nox.sessions.prepare_collections(). The other function will still work for the next minor release, but will then be removed. Useantsibull-nox.tomlandantsibull_nox.load_antsibull_nox_toml()instead (https://github.com/ansible-community/antsibull-nox/pull/50).
v0.1.0¶
Release Summary¶
Feature release.
Minor Changes¶
- A
build-import-checksession that builds and tries to import the collection with Galaxy Importer can be added withadd_build_import_check()(https://github.com/ansible-community/antsibull-nox/issues/15, https://github.com/ansible-community/antsibull-nox/pull/17). - A
docs-checksession that runsantsibull-docs lint-collection-docscan be added withadd_docs_check()(https://github.com/ansible-community/antsibull-nox/issues/8, https://github.com/ansible-community/antsibull-nox/pull/14). - A
extra-checkssession that runs extra checks such asno-unwanted-filesoraction-groupscan be added withadd_extra_checks()(https://github.com/ansible-community/antsibull-nox/issues/8, https://github.com/ansible-community/antsibull-nox/pull/14). - A
license-checksession that runsreuseand checks for bad licenses can be added withadd_license_check()(https://github.com/ansible-community/antsibull-nox/issues/8, https://github.com/ansible-community/antsibull-nox/pull/14). - Allow to decide which sessions should be marked as default and which not (https://github.com/ansible-community/antsibull-nox/issues/18, https://github.com/ansible-community/antsibull-nox/pull/20).
- Allow to provide
extra_code_filestoadd_lint_sessions()(https://github.com/ansible-community/antsibull-nox/pull/14). - Check whether we're running in CI using the generic
$CIenviornment variable instead of$GITHUB_ACTIONS.$CIis set totrueon Github Actions, Gitlab CI, and other CI systems (https://github.com/ansible-community/antsibull-nox/pull/28). - For running pylint and mypy, copy the collection and dependent collections into a new tree. This allows the collection repository to be checked out outside an approriate tree structure, and it also allows the dependent collections to live in another tree structure, as long as
ansible-galaxy collection listcan find them (https://github.com/ansible-community/antsibull-nox/pull/1). - When a collection checkout is not part of an
ansible_collectionstree, look for collections in adjacent directories of the form<namespace>.<name>that match the containing collection's FQCN (https://github.com/ansible-community/antsibull-nox/issues/6, https://github.com/ansible-community/antsibull-nox/pull/22). - antsibull-nox now depends on antsibull-fileutils >= 1.2.0 (https://github.com/ansible-community/antsibull-nox/pull/1).
Breaking Changes / Porting Guide¶
- The nox workflow now by default runs all sessions, unless restricted with the
sessionsparameter (https://github.com/ansible-community/antsibull-nox/pull/14).
Bugfixes¶
- Make sure that black in CI checks formatting instead of just reformatting (https://github.com/ansible-community/antsibull-nox/pull/14).
v0.0.1¶
Release Summary¶
Initial alpha release.