Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
3c39abb
Updated dependencies, bump version to 0.9.0
c8y3 May 26, 2025
6a28662
Started CI
c8y3 May 26, 2025
18b54c3
Trying to simplify build of venv
c8y3 May 26, 2025
ea47423
Removed working_directory
c8y3 May 26, 2025
ddfa1e1
Regenerate Project.conf if VERSION of requirements.txt files changed
c8y3 May 26, 2025
c11280d
Set version to beta 1 (in order to be able to test release)
c8y3 May 26, 2025
9841656
Added execution of component tests during CI
c8y3 May 26, 2025
ca2b118
Added wheel package build
c8y3 May 26, 2025
17c1667
Setup a venv to build the package
c8y3 May 26, 2025
67f4a17
Using the venv when packaging
c8y3 May 26, 2025
9763eb9
Install wheel
c8y3 May 26, 2025
1705de7
Execute python instead of python3
c8y3 May 26, 2025
51f6b74
Building documentation
c8y3 May 28, 2025
3c64c1a
Activate venv
c8y3 May 28, 2025
578d4e0
Do not alter directory
c8y3 May 28, 2025
52bc42d
Fixed path to documentation file
c8y3 May 28, 2025
e357e9b
Simplified build of documentation
c8y3 May 28, 2025
25d0faa
Removed generation of version.txt file
c8y3 May 28, 2025
f2f6896
Renamed directory source to src
c8y3 May 29, 2025
9dd8a6d
Removed test_runner.py I was unable to make work
c8y3 May 29, 2025
d00edd5
Fixed path to execute tests
c8y3 May 29, 2025
6b1e3a5
Using uv and pyproject.toml to build everything
c8y3 May 29, 2025
5d6a3d9
Fix python version
c8y3 May 29, 2025
81b1744
Added mission .python-version file
c8y3 May 29, 2025
110a88f
Fixed test name
c8y3 May 29, 2025
efec78c
Renamed CI job
c8y3 May 29, 2025
5e83e0c
Use uv for documentation generation too
c8y3 May 29, 2025
0124104
Using uv option to set directory
c8y3 May 29, 2025
a2d9db5
Trying to publish a release automatically
c8y3 Jun 2, 2025
434a2c9
Trying to set a dummy tag name to publish release
c8y3 Jun 2, 2025
fd3f28a
Fixed path to documentation to be released
c8y3 Jun 2, 2025
369094a
Release tar.gz with documentation instead of several files
c8y3 Jun 2, 2025
b59cd3c
Fixed directory name
c8y3 Jun 2, 2025
86a7f82
Fixed directory name to upload documentation
c8y3 Jun 2, 2025
ecea3ef
Do a release on tag only
c8y3 Jun 2, 2025
18a2384
Generate release without automatically generated release note
c8y3 Jun 3, 2025
8ceb9d2
Trying to remove the automatically generated release note
c8y3 Jun 3, 2025
a488c23
Checking if option generate_release_notes is really necessary
c8y3 Jun 3, 2025
ae8528d
Perform release only on tag
c8y3 Jun 3, 2025
a467492
Documented how to serve the user documentation
c8y3 Jun 3, 2025
15da83b
Removed Makefile and pylint configuration
c8y3 Jun 3, 2025
2e3b282
Avoid access to private __members__
c8y3 Jun 3, 2025
cd9d92e
Added ruff
c8y3 Jun 3, 2025
e403f14
Fixed directory to run ruff on
c8y3 Jun 3, 2025
92b228b
Documented method to run ruff
c8y3 Jun 3, 2025
e9f2669
Run all tests from top level in a single command
c8y3 Jun 4, 2025
91cbdbe
Generate a temporary directory for tests, instead of having it remain
c8y3 Jun 4, 2025
7a41697
Fixed small error in CONTRIBUTING file
c8y3 Jun 4, 2025
4533efb
Bump version to 0.9.0, updated uv.lock
c8y3 Jun 4, 2025
76d4689
Added documentation to publish a release
c8y3 Jun 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 61 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: Continuous Integration
on: [push, pull_request]

jobs:

static-checks:
name: Static analyis checks
runs-on: ubuntu-22.04
steps:
- name: Check out
uses: actions/checkout@v4
- name: Run ruff
uses: astral-sh/ruff-action@v3
with:
args: check --output-format=github

build:
name: Build
runs-on: ubuntu-22.04
steps:
- name: Check out
uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
version: "0.7.8"
- name: Retrieve version number
run: echo "VERSION=$(uv version --short)" >> $GITHUB_ENV
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version-file: ".python-version"
- name: Install the project
run: uv sync --locked --all-extras --dev
- name: Build package
run: uv build
- name: Build documentation
run: |
uv --directory documentation/user_doc run mkdocs build --clean --site-dir ../../documentation-${{ env.VERSION }}/
tar czf documentation-${{ env.VERSION }}.tar.gz documentation-${{ env.VERSION }}/
- name: Run tests
run: uv run python -m unittest --verbose
- uses: actions/upload-artifact@v4
with:
name: Wheel package
path: dist
if-no-files-found: error
- uses: actions/upload-artifact@v4
with:
name: Documentation
path: documentation-${{ env.VERSION }}/*
if-no-files-found: error
- name: Release
uses: softprops/action-gh-release@v2
if: github.ref_type == 'tag'
with:
files: |
documentation-${{ env.VERSION }}.tar.gz
dist/*
fail_on_unmatched_files: true
body: Release ${{ env.VERSION }}
17 changes: 10 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
dist/
# Python-generated files
__pycache__/
*.py[oc]
build/
results/
docx_generator.egg-info
input_templates
output_files
__pycache__
venv/
dist/
wheels/
*.egg-info

# Virtual environments
.venv

.idea/
1 change: 1 addition & 0 deletions .python-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
3.10
39 changes: 39 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@

# Common operations

This project uses [uv](https://docs.astral.sh/uv/).

* build the distribution package:
```
uv build
```

* run tests:
```
uv run python -m unittest --verbose
```

* run ruff checks:
```
uv run ruff check .
```

* serve the documentation:
```
uv --directory documentation/user_doc run mkdocs serve -a localhost:8888
```

* build the documentation into directory `user_documentation/`:
```
uv --directory documentation/user_doc run mkdocs build --clean --site-dir ../../user_documentation/
```

# Publishing a release

The creation of a tag will automatically publish a release on Github. Ensure the tag is named with the version number:
```
VERSION=$(uv version --short) && echo $VERSION
git tag -s $VERSION -m "Release $VERSION"
git push --tags
```

2 changes: 0 additions & 2 deletions MANIFEST.in

This file was deleted.

91 changes: 0 additions & 91 deletions Makefile

This file was deleted.

7 changes: 0 additions & 7 deletions Makefile.conf

This file was deleted.

10 changes: 0 additions & 10 deletions Project.conf

This file was deleted.

1 change: 0 additions & 1 deletion VERSION

This file was deleted.

1 change: 0 additions & 1 deletion dev_requirements.txt

This file was deleted.

Loading