Skip to content

Commit f2a61bd

Browse files
authored
Bumping version: 0.17.0 → 0.18.0 (#249)
* Bump version * Create changelog entry * Slightly rearrange the steps in the "Create a New Release" section of the Developer Guide. * Add an additional step in the "Building Documentation" section to watch for warnings and errors.
1 parent f33d6cf commit f2a61bd

11 files changed

Lines changed: 113 additions & 63 deletions

File tree

CHANGELOG.rst

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,83 @@ Changes for the upcoming release can be found in the
2121

2222
.. towncrier release notes start
2323
24+
Version 0.18.0
25+
==============
26+
27+
Bug Fixes
28+
---------
29+
30+
- Fixed the ``config`` subcommand to prevent crashes when displaying help (``-h/--help``) with an invalid configuration file. The ``app`` and ``env`` subcommands have been unified into ``config list`` and ``config validate`` for a more streamlined user experience. (:gh:`112`)
31+
- Improved error handling for configuration loading. Malformed TOML files now trigger a formatted diagnostic message with line and column details instead of a Python traceback. (:gh:`175`)
32+
- Added strict syntax validation for configuration placeholders. The application will now explicitly report an error and halt when encountering malformed placeholders (e.g., missing or incorrectly ordered curly braces like ``{server.name``) instead of silently leaving them unresolved. (:gh:`233`)
33+
34+
35+
Improved Documentation
36+
----------------------
37+
38+
- Describe the new portal schema from the perspective of a user trying to add
39+
or change the config.
40+
Additionally, rework on the glossary page to improve the layout and readability of terms and definitions. (:gh:`238`)
41+
- Improve usability and readability of docs by adding
42+
homepage navigation cards using Sphinx Design extension. (:gh:`247`)
43+
44+
45+
Infrastructure
46+
--------------
47+
48+
- Several dependency updates:
49+
50+
* `Update pytest-cov requirement from >=6.1.1 to >=7.1.0 <https://github.com/openSUSE/docbuild/pull/244>`_
51+
* `Update sphinx-autodoc-typehints requirement from >=3.2.0 to >=3.10.2 <https://github.com/openSUSE/docbuild/pull/243>`_
52+
* `Update sphobjinv requirement from >=2.3.1.3 to >=2.4 <https://github.com/openSUSE/docbuild/pull/242>`_
53+
* `Update sphinx requirement from >=8.2.3 to >=9.1.0 <https://github.com/openSUSE/docbuild/pull/241>`_
54+
* `Update pydata-sphinx-theme requirement from >=0.16.1 to >=0.17.1 <https://github.com/openSUSE/docbuild/pull/240>`_
55+
* `Update sphinx-autoapi requirement from >=3.6.0 to >=3.8.0 <https://github.com/openSUSE/docbuild/pull/229>`_
56+
* `Update towncrier requirement from >=24.8.0 to >=25.8.0 <https://github.com/openSUSE/docbuild/pull/228>`_
57+
* `Update pydantic requirement from >=2.11.4 to >=2.13.3 <https://github.com/openSUSE/docbuild/pull/227>`_
58+
* `Update tomlkit requirement from >=0.13.2 to >=0.14.0 <https://github.com/openSUSE/docbuild/pull/226>`_
59+
* `Update rich requirement from >=14.0.0 to >=15.0.0 <https://github.com/openSUSE/docbuild/pull/225>`_
60+
* `Bump softprops/action-gh-release from 2 to 2.6.2 <https://github.com/openSUSE/docbuild/pull/219>`_
61+
* `Update pyright requirement from >=1.1.401 to >=1.1.408 <https://github.com/openSUSE/docbuild/pull/218>`_
62+
* `Update setuptools requirement from >=77 to >=82.0.1 <https://github.com/openSUSE/docbuild/pull/217>`_
63+
* `Update ruff requirement from >=0.11.12 to >=0.15.10 <https://github.com/openSUSE/docbuild/pull/216>`_
64+
* `Update pytest-asyncio requirement from >=1.0.0 to >=1.3.0 <https://github.com/openSUSE/docbuild/pull/215>`_
65+
* `Update docformatter requirement from >=1.7.5 to >=1.7.7 <https://github.com/openSUSE/docbuild/pull/214>`_
66+
67+
68+
Code Refactoring
69+
----------------
70+
71+
- Refactor product schema (:pr:`197`)
72+
73+
These changes reflect broad architectural shifts and naming conventions
74+
throughout the entire configuration system.
75+
76+
* **Rebranding**: The naming convention has shifted from Docserv to Portal.
77+
This is reflected in namespace changes and element renaming
78+
(e.g., ``<product>`` is now part of a portal root).
79+
80+
* **Documentation-First Design**: The schema now heavily utilizes ``db:refname``
81+
and ``db:refpurpose`` annotations for almost every element and attribute.
82+
This allows for automated generation of human-readable documentation directly
83+
from the RNC file.
84+
85+
* **Enhanced Modularity**: The schema now explicitly supports splitting large
86+
configuration files into smaller, more manageable parts. By utilizing
87+
inclusion mechanisms, you can maintain different sections of the portal
88+
(like ``<categories>`` or specific products) in separate files, leading to
89+
a cleaner and more maintainable structure.
90+
91+
* **Implicit Language Logic**: Master/source language identification
92+
has shifted from a boolean attribute (``@default``) to a value-based system.
93+
The schema now assumes ``en-us`` is the source locale for products and deliverables.
94+
95+
* **Migration Tooling**: To facilitate the transition, an XSLT migration
96+
stylesheet is available. This tool automates the conversion of version
97+
6.0 configuration files to the 7.0 format, handling the renaming of
98+
elements, restructuring of attributes, and the removal of deprecated metadata. (:gh:`187`)
99+
100+
24101
Version 0.17.0
25102
==============
26103

changelog.d/+depupdates.infra.rst

Lines changed: 0 additions & 18 deletions
This file was deleted.

changelog.d/112.bugfix.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

changelog.d/175.bugfix.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

changelog.d/187.refactor.rst

Lines changed: 0 additions & 28 deletions
This file was deleted.

changelog.d/233.bugfix.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

changelog.d/238.doc.rst

Lines changed: 0 additions & 3 deletions
This file was deleted.

changelog.d/247.doc.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

docs/source/developer/build-docs.rst

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,18 @@ To build the documentation for this project, use the following steps:
1010
#. Build the HTML documentation using the :ref:`makedocs <devel-helpers>` command:
1111

1212
.. code-block:: shell-session
13-
:caption: Building the documentation
1413
:name: makedocs
1514
1615
makedocs
1716
18-
#. Find the generated documentation in the :file:`docs/build/html` directory.
17+
If you want to have a bit more control, use this command:
18+
19+
.. code-block:: shell-session
20+
:name: sphinx-build
21+
22+
uv run --frozen make -C docs html
23+
24+
#. Watch for warnings and errors during the build process.
25+
If you encounter any issues, review the output and fix them accordingly.
26+
27+
Find the generated documentation in the :file:`docs/build/html` directory.

docs/source/developer/create-release.rst

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,40 @@
33
Creating a New Release
44
======================
55

6-
When you are ready to release a new version of the project, start with creating a new release branch. There you bump the version, build the changelog, and adjust minor things like the documentation. Avoid commiting changes that introduces new features or add breaking changes.
6+
A release is a snapshot of the project at a specific point in time, typically
7+
associated with a version number. It represents a stable and tested state of
8+
the project that can be shared with users. Creating a release involves several
9+
steps to ensure that the project is properly packaged, documented, and ready
10+
for distribution.
11+
12+
Ensure the the following pre-requisites are met before starting the release process:
13+
14+
* You have pulled the latest changes from the main branch of the repository.
15+
* You have the necessary permissions to create a release.
716

817
Follow these steps:
918

10-
#. Ensure that you have the latest changes from the main branch of the repository.
1119
#. Create a new branch named ``release/<VERSION>``, where ``<VERSION>`` is the version number you are releasing (e.g., ``release/1.0.0``).
1220
#. :ref:`Bump the version <bump-version>`.
1321
#. :ref:`Update the project <update-project>`.
1422
#. :ref:`Build the changelog <build-changelog>`.
23+
#. :ref:`Build the documentation <build-docs>`.
24+
#. Optionally, look for Ruff issues:
25+
26+
.. code-block:: console
27+
28+
ruff check .
29+
1530
#. In your current branch, push the branch to the remote repository:
1631

1732
.. code-block:: console
1833
1934
git push -u origin HEAD
2035
21-
#. Wait for the CI to pass. If it fails, fix the issues and commit again.
22-
#. If the CI passes, (squash-)merge your release branch into the main branch.
23-
The GitHub Action workflow will automatically create a new release based on the name of the release branch.
24-
#. Find the release in the GitHub repository under the |gh_release| section.
36+
#. Wait for the CI to pass.
37+
38+
* If it fails, fix the issues and commit again.
39+
* If the CI passes, (squash-)merge your release branch into the main branch.
40+
The GitHub Action workflow will automatically create a new release based on the name of the release branch.
41+
42+
Find the new release in the GitHub repository under the |gh_release| section.

0 commit comments

Comments
 (0)