Commit graph

58 commits

Author SHA1 Message Date
Chris Mayo
e6da68b7f6 Add linting with Pylint to build workflow 2023-05-03 19:24:53 +01:00
Chris Mayo
8820c8c0f0 Revert "Remove check-python-versions that needs setup.py"
Supports pyproject.toml since 0.21.

This reverts commit a214531030.
2023-05-03 19:24:53 +01:00
Chris Mayo
75996718de Publish release to PyPI 2023-05-01 19:24:55 +01:00
Chris Mayo
b5a290e98e Use Coveralls GitHub Action
Python package stopped working.
2023-05-01 19:24:55 +01:00
Chris Mayo
c055c4f52b
Merge pull request #721 from cjmayo/build
Set permissions for build workflow
2023-01-30 19:36:36 +00:00
Chris Mayo
91105d722a
Merge pull request #716 from cjmayo/py38
Raise minimum Python version to 3.8
2023-01-30 19:36:11 +00:00
Chris Mayo
f31d532c7e
Merge pull request #715 from cjmayo/delete_docker
Delete oldest Docker images
2023-01-23 19:28:05 +00:00
Chris Mayo
7a09ab4bb4 Set permissions for build workflow 2023-01-19 19:25:57 +00:00
Chris Mayo
51c6b3ef2f Allow sphinx-rtd-theme to pick the versions of sphinx & docutils
From version 1.1.0 sphinx-rtd-theme adds upper bounds for compatible
versions of sphinx and docutils.
2023-01-18 19:22:50 +00:00
Chris Mayo
4162540019
Merge pull request #714 from cjmayo/python-version
Resolve actions/setup-python python-version warnings
2023-01-18 19:22:28 +00:00
Chris Mayo
67f884e507 Ensure jQuery is installed to support RTD on Sphinx 6
Without jQuery website search is broken.
2023-01-17 19:54:00 +00:00
Chris Mayo
643364a655 Raise minimum Python version to 3.8 2023-01-17 19:23:29 +00:00
Chris Mayo
8366bde4e2 Delete oldest Docker images
Keep 20 most recent.
2023-01-16 19:36:22 +00:00
Chris Mayo
aff5e2918d Resolve actions/setup-python python-version warnings 2023-01-14 17:22:20 +00:00
Chris Mayo
86726a64f3 Make ClamAV cache directory writeable for cache action
Else cache restore fails:

/usr/bin/tar: ../../../../../var/lib/clamav/main.cvd: Cannot open: Permission denied
/usr/bin/tar: ../../../../../var/lib/clamav/freshclam.dat: Cannot open: File exists
/usr/bin/tar: ../../../../../var/lib/clamav/daily.cvd: Cannot open: File exists
/usr/bin/tar: ../../../../../var/lib/clamav/bytecode.cvd: Cannot open: Permission denied
/usr/bin/tar: ../../../../../var/lib/clamav: Cannot utime: Operation not permitted
/usr/bin/tar: Exiting with failure status due to previous errors
Warning: Failed to restore: Tar failed with error: The process '/usr/bin/tar' failed with exit code 2
Cache not found for input keys: clamav-v1
2023-01-12 19:53:03 +00:00
Chris Mayo
87368c14da Fix build workflow docs job failure
cryptography 39 is causing problems on Ubuntu 22.04 for Sphinx
autosummary:

* AttributeError: module 'lib' has no attribute 'OpenSSL_add_all_algorithms'

Stop installing pdfminer.six which is causing cryptography to be
installed.
2023-01-09 19:25:07 +00:00
Marius Gedminas
4ee13f140a Cache ClamAV signatures
We don't care if the signatures are stale (we only need the EICAR virus
test signature), so run freshclam only if the cache is missing entirely.

Closes #709.

Also, use apt-get instead of apt to avoid

    WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
2022-12-31 17:15:25 +02:00
Chris Mayo
46c5712baf Add pdfminer.six to minimum version testing
20181108 is the version used by the current Debian oldstable.
Ubuntu 20.04 LTS has 20191020.

pdfminer installs cryptography, >= 38 breaks pyOpenSSL < 22 as found in
Ubuntu 20.04 LTS. Update docs job to use ubuntu-22.04 to avoid
failures.
2022-12-05 19:22:35 +00:00
Chris Mayo
f489660925 Test with minimum versions of requirements
Pick 1.8.1 as the minimum version of argcomplete. This is the version in
the current Debian oldstable and Ubuntu 20.04 LTS.
2022-11-30 19:21:06 +00:00
Chris Mayo
c7989eb058 Turn all warnings into errors when building website
Drop code target, sphinx-autogen is not using conf.py, and since Sphinx
4.0 autosummary is generating stub pages by default anyway.

Mock ctypes and linkcheck.__main__: colorama.py imports MS Windows
libraries, autosummary executes __main__.py.
2022-11-02 19:24:35 +00:00
Chris Mayo
740fce4df5
Merge pull request #682 from cjmayo/node16
Update Actions to Node16 versions
2022-10-31 19:22:50 +00:00
Chris Mayo
169e327d50 Add Python 3.11 2022-10-25 19:21:39 +01:00
Chris Mayo
776f2980bc Update 3rd-party Actions to Node16 versions 2022-10-24 19:26:52 +01:00
Chris Mayo
a3bedadfb6 Update GitHub Actions to Node16 versions 2022-10-24 19:26:52 +01:00
Chris Mayo
38dea6b7f4 Fix install with pip git+https
pip only uses the wheel target.

Save building the metadata twice as a result in GitHub workflows and
update documentation.md.
2022-09-13 19:32:06 +01:00
Chris Mayo
b6a7f2d313 Don't need hatch to build documentation
This is a partial revert of:
47d1015e ("Replace setuptools and setup.py with hatch and pyproject.toml", 2022-09-05)

Also hatch is an option to run tests.
2022-09-13 19:32:06 +01:00
Chris Mayo
af265f3d52 Write all metadata used to _release.py
Enables running without installing.
Removes use of importlib.metadata.
2022-09-13 19:32:06 +01:00
Chris Mayo
a214531030 Remove check-python-versions that needs setup.py 2022-09-05 19:24:01 +01:00
Chris Mayo
1975613b44 Remove MANIFEST.in
All files stored in Git are included in the sdist, unless excluded with
tool.hatch.build.exclude.

Build artifacts listed in tool.hatch.build.artifacts are also included.
2022-09-05 19:24:01 +01:00
Chris Mayo
47d1015e00 Replace setuptools and setup.py with hatch and pyproject.toml 2022-09-05 19:24:01 +01:00
Chris Mayo
75196921e4
Merge pull request #635 from cjmayo/relpages
Publish the documentation when there is a release
2022-08-30 19:28:25 +01:00
Chris Mayo
a520b26885 Publish the documentation when there is a release 2022-08-23 19:27:12 +01:00
Chris Mayo
fbceca5dc9 Remove dependency on pyxdg
Read the environment variables and implement the same fallbacks.
Saves a hardly used dependency and is more explicit.
2022-08-23 19:26:15 +01:00
Chris Mayo
f8c6d45571 Run apt update in build.yml
Avoid Not Found [IP: 52.154.174.208 80] for azure.archive.ubuntu.com.
2022-01-19 19:35:24 +00:00
Chris Mayo
e6788e2e0a Remove GitHub workflow translation checks
Already done by tests/test_po.py.

Added as part of:
d99e600e ("Add translation .po file checks", 2021-11-22)
2022-01-19 19:31:01 +00:00
Chris Mayo
1d10fffde4 Use package metadata 2021-12-30 19:27:04 +00:00
Chris Mayo
5c0d66dd74 Raise minimum Python requirement to 3.7 2021-12-30 19:27:04 +00:00
Chris Mayo
bab99bd945 Log checksums for release distribution files
Logs will be removed. PyPI will calculate and record checksums.
2021-12-22 19:24:54 +00:00
Chris Mayo
abd5a68c27 Use sphinx-sitemap to create a sitemap 2021-12-17 19:25:43 +00:00
Chris Mayo
5cb406a8c3 Reword commit message updating documentation translations 2021-12-16 19:23:53 +00:00
Chris Mayo
dd2fe08ebd Add a manual trigger to publish Docker image 2021-12-15 19:41:20 +00:00
Chris Mayo
3ddc25fd4e Ensure application translations are updated by workflow 2021-12-15 19:41:20 +00:00
Chris Mayo
ef33a61b41 Workflow to automatically add Python distribution files to the release 2021-12-09 19:31:28 +00:00
Chris Mayo
26ed46ad40 Workflow to semi-automate man page and translation updates
Expected to be used form a fork, it will create a branch man-updates,
based on the upstream repository with additional commits with the updates.
Then a pull request would be created to send the updates upstream.
2021-12-09 19:31:28 +00:00
Chris Mayo
7f78acf856 Fetch tag history in publish-pages 2021-12-06 19:27:49 +00:00
Chris Mayo
3eb3a70aab Limit token permissions and pin 3rd-party action in publish-pages 2021-12-06 19:27:49 +00:00
Chris Mayo
454ce0c3a5 Add a yamllint check for workflows 2021-11-30 19:45:17 +00:00
Chris Mayo
edc974e7b9 Tag Docker image using latest, commit checksum and semver
The following tags will be added: latest, 1234567 and 1.2.3
2021-11-28 18:55:46 +00:00
Chris Mayo
99d0d5218b Release new Docker image hosted on GitHub Packages 2021-11-25 19:33:29 +00:00
Chris Mayo
163c44378f Update to latest docker actions
metadata-action v3.6.0
build-push-action v2.7.0
2021-11-23 19:34:27 +00:00