Merge pull request #8819 from ThomasWaldmann/developer-docs

misc updates to developer docs
This commit is contained in:
TW 2025-05-07 17:43:46 +02:00 committed by GitHub
commit 5dc05b083c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -53,7 +53,7 @@ requests (if you don't have GitHub or don't want to use it you can
send smaller patches via the borgbackup mailing list to the maintainers).
Stable releases are maintained on maintenance branches named ``x.y-maint``, eg.
the maintenance branch of the 1.2.x series is ``1.2-maint``.
the maintenance branch of the 1.4.x series is ``1.4-maint``.
Most PRs should be filed against the ``master`` branch. Only if an
issue affects **only** a particular maintenance branch a PR should be
@ -119,6 +119,11 @@ to your local machine. The instructions for forking and cloning a repository
can be found there:
`<https://docs.github.com/en/get-started/quickstart/fork-a-repo>`_ .
Make sure you also fetched the git tags, because without them, ``setuptools-scm``
will run into issues determining the correct borg version. Check if ``git tag``
shows a lot of release tags (version numbers).
If it does not, use ``git fetch --tags`` to fetch them.
To work on your contribution, you first need to decide which branch your pull
request should be against. Often, this might be master branch (esp. for big /
risky contributions), but it could be also a maintenance branch like e.g.
@ -221,7 +226,6 @@ We use `black`_ for automatically formatting the code.
If you work on the code, it is recommended that you run black **before each commit**
(so that new code is always using the desired formatting and no additional commits
are required to fix the formatting).
::
pip install -r requirements.d/codestyle.txt # everybody use same black version
@ -276,7 +280,6 @@ will have to be installed separately. Run this command to install the pre-commit
pre-commit install
Running the tests
-----------------
@ -284,7 +287,7 @@ The tests are in the borg/testsuite package.
To run all the tests, you need to have fakeroot installed. If you do not have
fakeroot, you still will be able to run most tests, just leave away the
`fakeroot -u` from the given command lines.
``fakeroot -u`` from the given command lines.
To run the test suite use the following command::
@ -307,13 +310,13 @@ Important notes:
- When using ``--`` to give options to py.test, you MUST also give ``borg.testsuite[.module]``.
Running the tests (using the pypi package)
------------------------------------------
Since borg 1.4, it is also possible to run the tests without a development
environment, using the borgbackup dist package (downloaded from pypi.org or
github releases page)::
github releases page):
::
# optional: create and use a virtual env:
python3 -m venv env
@ -326,7 +329,6 @@ github releases page)::
# run the tests
pytest -v -rs --benchmark-skip --pyargs borg.testsuite
Adding a compression algorithm
------------------------------
@ -403,7 +405,6 @@ Usage::
# To copy files from the VM (in this case, the generated binary):
vagrant scp OS:/vagrant/borg/borg.exe .
Creating standalone binaries
----------------------------
@ -422,7 +423,6 @@ If you encounter issues, see also our `Vagrantfile` for details.
work on same OS, same architecture (x86 32bit, amd64 64bit)
without external dependencies.
.. _releasing:
Creating a new release
@ -480,16 +480,16 @@ Checklist:
new version number and release date.
- Announce on:
- Mailing list.
- Twitter.
- IRC channel (change ``/topic``).
- Mailing list.
- Mastodon / BlueSky / X (aka Twitter).
- IRC channel (change ``/topic``).
- Create a GitHub release, include:
* pypi dist package and signature
* Standalone binaries (see above for how to create them).
- pypi dist package and signature
- Standalone binaries (see above for how to create them).
+ For macOS, document the macFUSE version in the README of the binaries.
- For macOS, document the macFUSE version in the README of the binaries.
macFUSE uses a kernel extension that needs to be compatible with the
code contained in the binary.
* A link to ``CHANGES.rst``.
- A link to ``CHANGES.rst``.