Skip to content

Commit 73b75f4

Browse files
authored
Merge pull request #27 from isakruas/chore/improve-docs-tests-and-ci
chore: Improve documentation, test coverage and CI workflow
2 parents a2fe35a + 8d65667 commit 73b75f4

39 files changed

+1584
-1286
lines changed

.github/workflows/ci.yml

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
tags:
8+
- "v*.*.*"
9+
pull_request:
10+
branches:
11+
- master
12+
13+
jobs:
14+
test:
15+
runs-on: ubuntu-latest
16+
strategy:
17+
matrix:
18+
python-version: ["3.9", "3.10", "3.11"]
19+
20+
steps:
21+
- name: Checkout code
22+
uses: actions/checkout@v4
23+
24+
- name: Set up Python ${{ matrix.python-version }}
25+
uses: actions/setup-python@v5
26+
with:
27+
python-version: ${{ matrix.python-version }}
28+
29+
- name: Install dependencies
30+
run: |
31+
python -m venv .venv
32+
.venv/bin/pip install --upgrade pip
33+
.venv/bin/pip install -r requirements-tests.txt
34+
.venv/bin/pip install .
35+
36+
- name: Lint and Format Check
37+
run: |
38+
.venv/bin/ruff format --check .
39+
.venv/bin/ruff check .
40+
41+
- name: Run tests with coverage
42+
run: |
43+
.venv/bin/pytest --cov=ecutils --cov-report=xml tests/
44+
45+
- name: Upload coverage to Codecov
46+
if: matrix.python-version == '3.11'
47+
uses: codecov/codecov-action@v4
48+
with:
49+
token: ${{ secrets.CODECOV_TOKEN }}
50+
files: ./coverage.xml
51+
fail_ci_if_error: true
52+
53+
publish:
54+
needs: test
55+
if: startsWith(github.ref, 'refs/tags/v')
56+
runs-on: ubuntu-latest
57+
58+
steps:
59+
- name: Checkout code
60+
uses: actions/checkout@v4
61+
62+
- name: Set up Python
63+
uses: actions/setup-python@v5
64+
with:
65+
python-version: '3.9'
66+
67+
- name: Install build dependencies
68+
run: |
69+
python -m pip install --upgrade pip
70+
pip install build
71+
72+
- name: Build package
73+
run: python -m build
74+
75+
- name: Publish to PyPI
76+
uses: pypa/gh-action-pypi-publish@release/v1
77+
with:
78+
password: ${{ secrets.PYPI_TOKEN }}

.github/workflows/codecov.yml

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

.github/workflows/pypi.yml

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

.gitignore

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
.ipynb_checkpoints/
22
.pytest_cache/
33
__pycache__/
4-
venv/
4+
.venv/
55
*.ipynb
66
.idea/
77
.coverage
88
htmlcov/
99
site/
1010
.pypirc
11-
dist/
11+
dist/
12+
.ruff_cache

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,25 @@ All notable changes to this project will be documented in this file.
44

55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7+
## [v1.1.5] - 2025-01-21
8+
9+
### Added
10+
- Benchmarks documentation page with performance data for all curves and configurations
11+
- Security considerations documentation page
12+
- Configuration documentation page for LRU cache and coordinate systems
13+
- Benchmark scripts for performance testing
14+
- Ruff configuration for linting and formatting
15+
16+
### Changed
17+
- Reorganized documentation structure using mkdocstrings for API reference
18+
- Consolidated CI workflows into single ci.yml
19+
- Updated README with performance data and supported curves table
20+
- Improved test coverage to 100%
21+
22+
### Removed
23+
- Deprecated separate documentation files (moved to reference/ structure)
24+
- Old workflow files (codecov.yml, pypi.yml)
25+
726
## [v1.1.4] - 2024-10-26
827

928
### Changed

0 commit comments

Comments
 (0)