Skip to content

Commit

Permalink
chore: prepare for release 6.3.1 (#2285)
Browse files Browse the repository at this point in the history
Update everything to reflect release version 6.3.1.
  • Loading branch information
aucampia authored Mar 18, 2023
1 parent e3884b7 commit f3d31b0
Show file tree
Hide file tree
Showing 5 changed files with 82 additions and 31 deletions.
41 changes: 41 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,44 @@
# 2023-03-18 RELEASE 6.3.1


This is a patch release that includes a singular user facing fix, which is the
inclusion of the `test` directory in the `sdist` release artifact.

The following sections describe the changes included in this version.

## build: explicitly specify `packages` in `pyproject.toml` (#2280)

Commit [334787b](https://github.com/RDFLib/rdflib/commit/334787b), closes [#2280](https://github.com/RDFLib/rdflib/issues/2280).


The default behaviour makes it more of a hassle to republish RDFLib to
a separate package, something which I plan to do for testing purposes
and possibly other reasons.

More changes may follow in a similar vein.


## build: include test in sdist (#2282)

Commit [e3884b7](https://github.com/RDFLib/rdflib/commit/e3884b7), closes [#2282](https://github.com/RDFLib/rdflib/issues/2282).


A perhaps minor regression from earlier versions is that the sdist does not include the test folder, which makes it harder for downstreams to use a single source of truth to build and test a reliable package. This restores the test folder for sdists.

## docs: don't use kroki (#2284)

Commit [bea782f](https://github.com/RDFLib/rdflib/commit/bea782f), closes [#2284](https://github.com/RDFLib/rdflib/issues/2284).


The Kroki server is currently experiencing some issues which breaks our
build, this change eliminates the use of Kroki in favour of directly
using the generated SVG images which is checked into git alongside the
PlantUML sources.

I also added a task to the Taskfile to re-generate the SVG images from
the PlantUML sources by calling docker.


# 2023-03-16 RELEASE 6.3.0

This is a minor release that includes bug fixes and features.
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ The stable release of RDFLib may be installed with Python's package management t
Alternatively manually download the package from the Python Package
Index (PyPI) at https://pypi.python.org/pypi/rdflib

The current version of RDFLib is 6.3.0, see the ``CHANGELOG.md`` file for what's new in this release.
The current version of RDFLib is 6.3.1, see the ``CHANGELOG.md`` file for what's new in this release.

### Installation of the current main branch (for developers)

Expand Down
66 changes: 38 additions & 28 deletions docs/developers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -358,43 +358,53 @@ RDFLib 5.0.0 maintained compatibility with Python versions 2.7, 3.4, 3.5, 3.6, 3
Releasing
---------

Set to-be-released version number in :file:`rdflib/__init__.py` and
:file:`README.md`. Check date in :file:`LICENSE`.
Create a release-preparation pull request with the following changes:

Add :file:`CHANGELOG.md` entry.
* Updated copyright year in the ``LICENSE`` file.
* Updated copyright year in the ``docs/conf.py`` file.
* Updated main branch version and current version in the ``README.md`` file. The
main branch version should be the next major version with an ``a0`` suffix to
indicate it is alpha 0. When releasing 6.3.1, the main branch version in the
README should be 6.4.0a0.
* Updated version in the ``pyproject.toml`` file.
* Updated ``__date__`` in the ``rdflib/__init__.py`` file.
* Accurate ``CHANGELOG.md`` entry for the release.

Commit this change. It's preferable make the release tag via
https://github.com/RDFLib/rdflib/releases/new ::
Our Tag versions aren't started with 'v', so just use a plain 5.0.0 like
version. Release title is like "RDFLib 5.0.0", the description a copy of your
:file:`CHANGELOG.md` entry.
This gives us a nice release page like this::
https://github.com/RDFLib/rdflib/releases/tag/4.2.2
Once the PR is merged, switch to the main branch, build the release and upload it to PyPI:

If for whatever reason you don't want to take this approach, the old one is::

Tagging the release commit with::

git tag -am 'tagged version' X.X.X
.. code-block:: bash
# Clean up any previous builds
\rm -vf dist/*
When pushing, remember to do::
# Build artifacts
poetry build
git push --tags
# Check that the built wheel works correctly:
pipx run --spec "$(readlink -f dist/rdflib*.whl)" rdfpipe --version
# Publish to PyPI
poetry publish
No matter how you create the release tag, remember to upload tarball to pypi with::
Once this is done, create a release tag from `GitHub releases
<https://github.com/RDFLib/rdflib/releases/new>`_. For a release of version
6.3.1 the tag should be ``6.3.1`` (without a "v" prefix), and the release title
should be "RDFLib 6.3.1". The release notes for the latest version be added to
the release description. The artifacts built with ``poetry build`` should be
uploaded to the release as release artifacts.

rm -r dist/X.X.X[.-]* # delete all previous builds for this release, just in case
The resulting release will be available at https://github.com/RDFLib/rdflib/releases/tag/6.3.1

rm -r build
python setup.py sdist
python setup.py bdist_wheel
ls dist
Once this is done announce the release at the following locations:

# upload with twine
# WARNING: once uploaded can never be modified, only deleted!
twine upload dist/rdflib-X.X.X[.-]*
* Twitter: Just make a tweet from your own account linking to the latest release.
* RDFLib mailing list.
* RDFLib Gitter / matrix.org chat room.

Set new dev version number in the above locations, i.e. next release ``-dev``: ``5.0.1-dev`` and commit again.
Once this is all done, create another post-release pull request with the following changes:

Tweet, email mailing list and inform members in the chat.
* Set the just released version in ``docker/latest/requirements.in`` and run
``task docker:prepare`` to update the ``docker/latest/requirements.txt`` file.
* Set the version in the ``pyproject.toml`` file to the next minor release with
a ``a0`` suffix to indicate alpha 0.
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "rdflib"
version = "6.4.0a0"
version = "6.3.1"
description = """RDFLib is a Python library for working with RDF, \
a simple yet powerful language for representing information."""
authors = ["Daniel 'eikeon' Krech <[email protected]>"]
Expand Down
2 changes: 1 addition & 1 deletion rdflib/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
__docformat__ = "restructuredtext en"

__version__: str = _DISTRIBUTION_METADATA["Version"]
__date__ = "2023-03-16"
__date__ = "2023-03-18"

__all__ = [
"URIRef",
Expand Down

0 comments on commit f3d31b0

Please sign in to comment.