Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
3bf7b46
feat: add database and mandate test fixtures for improved testing cov…
RAWx18 Apr 2, 2026
92830a6
feat: add cryptographic and Redis test fixtures for enhanced testing …
RAWx18 Apr 2, 2026
4a6c980
feat: add delegation test fixtures for improved testing coverage
RAWx18 Apr 2, 2026
6fb672e
feat: add user and principal test fixtures for enhanced testing coverage
RAWx18 Apr 2, 2026
eabe990
feat: add integration tests for delegation workflows
RAWx18 Apr 2, 2026
67097e7
feat: add integration tests for database transaction handling and rol…
RAWx18 Apr 2, 2026
2484e76
feat: add MockDatabase implementation for testing database operations
RAWx18 Apr 2, 2026
00a525a
feat: add MockAuthority and MockProvider implementations for testing
RAWx18 Apr 2, 2026
5ae32fd
feat: add README files for Python and TypeScript SDK tests with struc…
RAWx18 Apr 2, 2026
bd1d5ec
feat: add MockRedis implementation for testing Redis operations
RAWx18 Apr 2, 2026
73297d6
feat: add environment setup utilities for testing
RAWx18 Apr 2, 2026
e290ff7
feat: add database and Redis setup utilities for testing
RAWx18 Apr 2, 2026
0c0b025
feat: add fuzz testing and regression tests for cryptographic operati…
RAWx18 Apr 2, 2026
6d41a15
feat: add mock gateway client for testing with request handling and r…
RAWx18 Apr 2, 2026
e22a3cb
feat: add security tests for injection attack protection and input va…
RAWx18 Apr 2, 2026
451e83e
feat: add unit tests for CLI main entry point and its subcommands
RAWx18 Apr 2, 2026
2f43de8
feat: add unit tests for Authority and Mandate core logic
RAWx18 Apr 2, 2026
57bcb96
feat: add end-to-end tests for CLI workflows and helper utilities for…
RAWx18 Apr 2, 2026
b5370ae
feat: add unit tests for MCP adapter functionality
RAWx18 Apr 2, 2026
a90c547
feat: add unit tests for Authority model and test fixtures
RAWx18 Apr 2, 2026
83a187f
feat: add validation scripts for test infrastructure setup and execution
RAWx18 Apr 2, 2026
e973974
feat: add validation script for CI/CD pipeline configuration
RAWx18 Apr 2, 2026
6354523
feat: add validation scripts for test infrastructure structure and ex…
RAWx18 Apr 2, 2026
ea7ee36
feat: add coverage validation script and update dependencies
RAWx18 Apr 2, 2026
58bca22
feat: add GitHub Actions workflow for testing and coverage reporting
RAWx18 Apr 2, 2026
6185135
feat: add coverage.xml to .gitignore
RAWx18 Apr 2, 2026
c55d7a8
fix: correct indentation in setup_init function for proper execution …
RAWx18 Apr 2, 2026
07d49fa
Refactor code structure for improved readability and maintainability
RAWx18 Apr 2, 2026
5a95310
feat: add simulate_ci.py to run CI test workflow locally
RAWx18 Apr 2, 2026
08085a8
feat: add comprehensive CI validation scripts and documentation
RAWx18 Apr 2, 2026
45b8c77
feat: add junit-unit.xml to .gitignore for test result exclusion
RAWx18 Apr 2, 2026
4ef942a
fix: update license classifier to Apache Software License and adjust …
RAWx18 Apr 2, 2026
a4de4df
feat: add unit tests for Caracal pathing module with source_of and en…
RAWx18 Apr 2, 2026
48aefd3
feat: add unit tests for Caracal exceptions and version modules
RAWx18 Apr 2, 2026
12d6029
refactor: remove outdated enterprise configuration details from README
RAWx18 Apr 2, 2026
f5d4108
feat: add unit tests for MandateManager class and its lifecycle methods
RAWx18 Apr 2, 2026
43bb02d
feat: add unit tests for DelegationTokenManager and DelegationTokenCl…
RAWx18 Apr 2, 2026
318abc1
feat: add unit tests for AuditReference and AuditLogManager classes
RAWx18 Apr 2, 2026
f576af6
feat: add unit tests for Circuit Breaker and Retry logic functionality
RAWx18 Apr 2, 2026
589a3b9
feat: add unit tests for MandateIssuanceRateLimiter class
RAWx18 Apr 2, 2026
1cb8830
feat: add unit tests for database connection management
RAWx18 Apr 2, 2026
4c7f06f
feat: add unit tests for Caracal vault module
RAWx18 Apr 2, 2026
3077577
feat: add unit tests for CLI delegation commands including generate, …
RAWx18 Apr 2, 2026
7b65092
Refactor code structure for improved readability and maintainability
RAWx18 Apr 2, 2026
a0f29d4
feat: add unit tests for database migrations and update .gitignore fo…
RAWx18 Apr 2, 2026
26cb5c4
fix: update coverage threshold to 80% and improve test documentation
RAWx18 Apr 2, 2026
860da62
feat: add unit tests for Merkle tree and verifier functionality
RAWx18 Apr 2, 2026
bc9bada
fix: add coverage-unit.json to .gitignore
RAWx18 Apr 2, 2026
d58b8dd
feat: add unit tests for MCP adapter service and related models
RAWx18 Apr 2, 2026
d4977f8
feat: add unit tests for MCP adapter and related classes
RAWx18 Apr 2, 2026
144a845
fix: update .gitignore to streamline coverage file exclusions and imp…
RAWx18 Apr 2, 2026
afa0e8b
feat: add integration tests for authority-ledger interactions
RAWx18 Apr 2, 2026
789eb71
feat: add CodeQL and OpenSSF Scorecard workflows for enhanced securit…
RAWx18 Apr 2, 2026
d3d164b
feat: add integration tests for mandate-delegation interactions
RAWx18 Apr 2, 2026
bb6b5fc
feat: add integration tests for deployment mode and MCP adapter
RAWx18 Apr 2, 2026
d5b819b
feat: add integration tests for database-redis coordination
RAWx18 Apr 2, 2026
7959611
feat: remove OpenSSF Scorecard workflow
RAWx18 Apr 2, 2026
032b6c2
Add Scorecard workflow for supply-chain security analysis
RAWx18 Apr 2, 2026
2501aa9
feat: add security tests for rate limiting enforcement and bypass att…
RAWx18 Apr 2, 2026
4ac635e
feat: add security tests for cryptographic operations
RAWx18 Apr 2, 2026
e9a318b
feat: add crypto_fixtures for real cryptographic key testing
RAWx18 Apr 2, 2026
3a3c8db
feat: add validation scripts for test organization and structure
RAWx18 Apr 2, 2026
f1e649d
feat: enhance test file validation with detailed naming conventions c…
RAWx18 Apr 2, 2026
4a3d1ee
feat: update coverage reporting to display results without threshold …
RAWx18 Apr 2, 2026
aaad753
fix: update config manager patch paths in CLI tests and enhance asser…
RAWx18 Apr 2, 2026
9ef6fa2
fix: improve mock setup for delegation and migration tests to enhance…
RAWx18 Apr 2, 2026
01f89c0
fix: rename principal_id to agent_id in query and summary commands fo…
RAWx18 Apr 2, 2026
4f27e71
fix: update patch for get_db_manager in authority list command tests …
RAWx18 Apr 2, 2026
c6bdb49
Remove outdated documentation for Caracal Enterprise and Caracal Flow…
RAWx18 Apr 2, 2026
46d00c2
fix: streamline installation instructions and remove outdated command…
RAWx18 Apr 2, 2026
a6227c9
feat: add enterprise overview and troubleshooting documentation pages
RAWx18 Apr 2, 2026
220b869
feat: add getting started and reference documentation pages for enter…
RAWx18 Apr 2, 2026
5f7f846
feat: add deployment and open-source developer documentation pages
RAWx18 Apr 2, 2026
2ef92c9
feat: add development setup and releases documentation pages for open…
RAWx18 Apr 2, 2026
65c8288
feat: add documentation pages for open-source end users and enterpris…
RAWx18 Apr 2, 2026
110850c
feat: add contributing and CLI documentation pages for open-source users
RAWx18 Apr 2, 2026
1f41534
feat: add placeholder documentation for enterprise administration and…
RAWx18 Apr 2, 2026
6f1ccc8
feat: add placeholder documentation for concepts and installation sec…
RAWx18 Apr 2, 2026
5477027
feat: add placeholder documentation for configuration and security se…
RAWx18 Apr 2, 2026
ec7f8d8
feat: add placeholder documentation for testing and quickstart sectio…
RAWx18 Apr 2, 2026
0980063
feat: add placeholder documentation for troubleshooting and workflows…
RAWx18 Apr 2, 2026
22f6c5b
feat: add placeholder documentation for TUI section for open-source e…
RAWx18 Apr 2, 2026
6c79b83
feat: add placeholder documentation for build and manage sections for…
RAWx18 Apr 2, 2026
b333daa
feat: add placeholder documentation for commands and start sections f…
RAWx18 Apr 2, 2026
379afc2
feat: add placeholder documentation for architecture and overview sec…
RAWx18 Apr 2, 2026
0db5d2e
feat: add reference documentation and announcement bar test script
RAWx18 Apr 2, 2026
40b9289
feat: implement HubPage component with card layout and styling
RAWx18 Apr 2, 2026
35bb8bc
feat: add HelpfulFooter component for user feedback and Search data t…
RAWx18 Apr 2, 2026
4baf271
feat: add DocPlaceholder and DocActions components for changelog docu…
RAWx18 Apr 2, 2026
718fce8
feat: add DocItemTOCDesktop component and styles for improved documen…
RAWx18 Apr 2, 2026
caf0710
feat: add DocPlaceholder component for structured documentation and r…
RAWx18 Apr 2, 2026
266a4ab
feat: add ExpandButton component to toggle sidebar visibility in docu…
RAWx18 Apr 2, 2026
9fb5881
feat: add DocRootLayoutMain and shared sidebar functions for document…
RAWx18 Apr 2, 2026
76f650d
feat: add SearchBar component for enhanced documentation search funct…
RAWx18 Apr 2, 2026
f30ae72
feat: add mobile sidebar component for improved navigation in documen…
RAWx18 Apr 2, 2026
eb08131
feat: add enterprise configuration documentation placeholder and home…
RAWx18 Apr 2, 2026
3b026b5
feat: add Resources page with documentation standards and support paths
RAWx18 Apr 2, 2026
c03c658
feat: add enterprise access and authentication documentation placehol…
RAWx18 Apr 2, 2026
cc995d8
feat: update sidebar configuration and add desktop content component …
RAWx18 Apr 2, 2026
90feb9a
Refactor code structure for improved readability and maintainability
RAWx18 Apr 3, 2026
101e019
feat: add Storage and Data documentation for developers, covering wor…
RAWx18 Apr 3, 2026
5cfc1c1
feat: add documentation for Flow TUI internals and runtime model, det…
RAWx18 Apr 3, 2026
ee2909a
feat: enhance documentation for Enterprise Connector and add Services…
RAWx18 Apr 3, 2026
e45ebc7
feat: update release documentation to include versioning details and …
RAWx18 Apr 3, 2026
da7e6c2
feat: enhance configuration documentation with detailed explanations …
RAWx18 Apr 3, 2026
3202303
feat: enhance contributing and testing documentation with detailed wo…
RAWx18 Apr 3, 2026
2df957b
feat: enhance CLI and installation documentation with detailed explan…
RAWx18 Apr 3, 2026
ac91abc
feat: enhance changelog and concepts documentation with detailed expl…
RAWx18 Apr 3, 2026
d227c6d
feat: enhance developer documentation with detailed setup instruction…
RAWx18 Apr 3, 2026
7419926
feat: enhance TUI and overview documentation with detailed explanatio…
RAWx18 Apr 3, 2026
8d90c95
feat: enhance troubleshooting documentation with detailed diagnostics…
RAWx18 Apr 3, 2026
fc8ccc9
feat: enhance security documentation with detailed explanations on au…
RAWx18 Apr 3, 2026
de6512a
feat: add placeholder structures for SDK overview and reference docum…
RAWx18 Apr 3, 2026
4c9536a
feat: add placeholder structures for Python SDK and SDK workflows doc…
RAWx18 Apr 3, 2026
3c78ec2
feat: add TypeScript SDK documentation structure and layout styles
RAWx18 Apr 3, 2026
d92a36a
feat: enhance workflows documentation with detailed operational seque…
RAWx18 Apr 3, 2026
a2b5d8d
feat: add initial SDK concepts documentation and enhance search resul…
RAWx18 Apr 3, 2026
39ec4c2
feat: implement DocItemLayout component and enhance DocRootLayoutMain…
RAWx18 Apr 3, 2026
879c884
feat: enhance quickstart documentation and improve search data struct…
RAWx18 Apr 3, 2026
40156f3
feat: add documentation structure page and enhance navigation for SDK…
RAWx18 Apr 3, 2026
fec6450
feat: update Manage hub content to enhance clarity on runtime operati…
RAWx18 Apr 3, 2026
5dcf4e2
feat: enhance reference documentation and improve TOC component with …
RAWx18 Apr 3, 2026
44589f8
feat: update sidebar structure for SDK and enhance search page result…
RAWx18 Apr 3, 2026
65ab5f3
feat: refine summary for resources and update contributor calls secti…
RAWx18 Apr 3, 2026
e7f5e11
feat: enhance enterprise reference documentation and add SDK API surf…
RAWx18 Apr 3, 2026
88eb0d3
feat: add placeholder structures for Enterprise SDK examples and over…
RAWx18 Apr 3, 2026
02fde27
feat: add placeholder structures for Enterprise SDK advanced and usag…
RAWx18 Apr 3, 2026
d2d3801
feat: update enterprise documentation and add SDK API surface structure
RAWx18 Apr 3, 2026
7a86ef9
feat: enhance enterprise documentation with detailed troubleshooting …
RAWx18 Apr 3, 2026
822c5e1
feat: enhance enterprise deployment and monitoring documentation with…
RAWx18 Apr 3, 2026
15da8f9
feat: enhance enterprise configuration documentation with detailed gu…
RAWx18 Apr 3, 2026
ec87509
feat: update enterprise connector documentation with detailed develop…
RAWx18 Apr 3, 2026
383b314
feat: add placeholder structure for enterprise SDK installation guidance
RAWx18 Apr 3, 2026
4839fba
feat: enhance enterprise administration documentation with detailed r…
RAWx18 Apr 3, 2026
bf0cbfe
feat: add placeholder structure for advanced SDK guidance and remove …
RAWx18 Apr 3, 2026
f96a846
feat: remove placeholder structures for SDK concepts and Python SDK d…
RAWx18 Apr 3, 2026
7c89bd3
feat: add SDK usage documentation structure and remove obsolete SDK r…
RAWx18 Apr 3, 2026
ca37ae1
feat: update enterprise access documentation with detailed guidance a…
RAWx18 Apr 3, 2026
a4d902e
feat: remove placeholder structures for SDK overview and workflows do…
RAWx18 Apr 3, 2026
bc2cab1
feat: update SDK API surface documentation with accurate descriptions…
RAWx18 Apr 3, 2026
4e2d780
feat: update enterprise and open-source SDK documentation with accura…
RAWx18 Apr 3, 2026
47224bb
feat: update enterprise SDK examples and usage documentation with acc…
RAWx18 Apr 3, 2026
2e1b202
feat: enhance SDK overview and DocPlaceholder content with clearer de…
RAWx18 Apr 3, 2026
c46187d
feat: update SDK installation guidance and clarify enterprise connect…
RAWx18 Apr 3, 2026
f5e63bb
feat: enhance enterprise SDK documentation with detailed guidance map…
RAWx18 Apr 3, 2026
e5e03e4
feat: update SDK documentation with accurate descriptions for enterpr…
RAWx18 Apr 3, 2026
7079c10
feat: update SDK examples documentation with accurate descriptions an…
RAWx18 Apr 3, 2026
8cffca8
feat: refine deployment model and security posture sections for clari…
RAWx18 Apr 3, 2026
e477c52
feat: enhance SDK navigation and styling with new dropdown category t…
RAWx18 Apr 3, 2026
e16d974
feat: restructure SDK sidebar categories for improved organization an…
RAWx18 Apr 3, 2026
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
36 changes: 36 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: "CodeQL Analysis"

on:
push:
branches: ["main"]
pull_request: {}
schedule:
- cron: '0 4 * * 0' # weekly

permissions:
contents: read
security-events: write
Comment thread Dismissed
id-token: write

jobs:
analyze:
name: Analyze (CodeQL)
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
id-token: write
steps:
- name: Checkout repository
uses: actions/checkout@v4

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium

score is 5: GitHub-owned GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help

- name: Initialize CodeQL
uses: github/codeql-action/init@v2

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium

score is 5: GitHub-owned GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help
with:
languages: python

- name: Autobuild
uses: github/codeql-action/autobuild@v2

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium

score is 5: GitHub-owned GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help

- name: Perform CodeQL analysis
uses: github/codeql-action/analyze@v2

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium

score is 5: GitHub-owned GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help
78 changes: 78 additions & 0 deletions .github/workflows/scorecard.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# This workflow uses actions that are not certified by GitHub. They are provided
# by a third-party and are governed by separate terms of service, privacy
# policy, and support documentation.

name: Scorecard supply-chain security
on:
# For Branch-Protection check. Only the default branch is supported. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection
branch_protection_rule:
# To guarantee Maintained check is occasionally updated. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained
schedule:
- cron: '37 5 * * 2'
push:
branches: [ "main" ]

# Declare default permissions as read only.
permissions: read-all

jobs:
analysis:
name: Scorecard analysis
runs-on: ubuntu-latest
# `publish_results: true` only works when run from the default branch. conditional can be removed if disabled.
if: github.event.repository.default_branch == github.ref_name || github.event_name == 'pull_request'
permissions:
# Needed to upload the results to code-scanning dashboard.
security-events: write
# Needed to publish results and get a badge (see publish_results below).
id-token: write
# Uncomment the permissions below if installing in a private repository.
# contents: read
# actions: read

steps:
- name: "Checkout code"
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false

- name: "Run analysis"
uses: ossf/scorecard-action@f49aabe0b5af0936a0987cfb85d86b75731b0186 # v2.4.1
with:
results_file: results.sarif
results_format: sarif
# (Optional) "write" PAT token. Uncomment the `repo_token` line below if:
# - you want to enable the Branch-Protection check on a *public* repository, or
# - you are installing Scorecard on a *private* repository
# To create the PAT, follow the steps in https://github.com/ossf/scorecard-action?tab=readme-ov-file#authentication-with-fine-grained-pat-optional.
# repo_token: ${{ secrets.SCORECARD_TOKEN }}

# Public repositories:
# - Publish results to OpenSSF REST API for easy access by consumers
# - Allows the repository to include the Scorecard badge.
# - See https://github.com/ossf/scorecard-action#publishing-results.
# For private repositories:
# - `publish_results` will always be set to `false`, regardless
# of the value entered here.
publish_results: true

# (Optional) Uncomment file_mode if you have a .gitattributes with files marked export-ignore
# file_mode: git

# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
# format to the repository Actions tab.
- name: "Upload artifact"
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
with:
name: SARIF file
path: results.sarif
retention-days: 5

# Upload the results to GitHub's code scanning dashboard (optional).
# Commenting out will disable upload of results to your repo's Code Scanning dashboard
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: results.sarif
168 changes: 168 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
name: Test Suite
Comment thread Dismissed

on:
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
workflow_dispatch:

jobs:
test:
name: Test Python ${{ matrix.python-version }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11", "3.12"]

services:
postgres:
image: postgres:15
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: test
POSTGRES_DB: caracal_test
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 5432:5432

redis:
image: redis:7
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 6379:6379

steps:
- name: Checkout code
uses: actions/checkout@v4

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium test

score is 1: GitHub-owned GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium test

score is 1: GitHub-owned GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'

- name: Install uv
run: |
curl -LsSf https://astral.sh/uv/install.sh | sh

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium test

score is 1: downloadThenRun not pinned by hash
Click Remediation section below to solve this issue
echo "$HOME/.cargo/bin" >> $GITHUB_PATH

- name: Install dependencies
run: |
uv pip install --system -e ".[dev]"

- name: Run unit tests
run: |
pytest -m unit \
--cov=caracal \
--cov-report=xml \
--cov-report=term \
--junitxml=junit-unit.xml
env:
PYTHONPATH: ${{ github.workspace }}

- name: Run integration tests
run: |
pytest -m integration \
--cov=caracal \
--cov-append \
--cov-report=xml \
--cov-report=term \
--junitxml=junit-integration.xml
env:
DATABASE_URL: postgresql://postgres:test@localhost:5432/caracal_test
REDIS_URL: redis://localhost:6379
PYTHONPATH: ${{ github.workspace }}

- name: Run security tests
run: |
pytest tests/security/ \
--cov=caracal \
--cov-append \
--cov-report=xml \
--cov-report=term \
--junitxml=junit-security.xml
env:
DATABASE_URL: postgresql://postgres:test@localhost:5432/caracal_test
REDIS_URL: redis://localhost:6379
PYTHONPATH: ${{ github.workspace }}

- name: Run e2e tests
run: |
pytest -m e2e \
--cov=caracal \
--cov-append \
--cov-report=xml \
--cov-report=term \
--junitxml=junit-e2e.xml
env:
DATABASE_URL: postgresql://postgres:test@localhost:5432/caracal_test
REDIS_URL: redis://localhost:6379
PYTHONPATH: ${{ github.workspace }}

- name: Display coverage report
if: always()
run: |
echo "=== Coverage Report ==="
coverage report
echo ""
echo "Coverage report generated (no threshold enforcement)"

- name: Generate HTML coverage report
if: always()
run: |
coverage html

- name: Upload coverage to Codecov
if: matrix.python-version == '3.11'
uses: codecov/codecov-action@v4

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium test

score is 1: third-party GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help
with:
file: ./coverage.xml
flags: unittests
name: codecov-umbrella
fail_ci_if_error: false

- name: Upload HTML coverage report
if: always()
uses: actions/upload-artifact@v4

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium test

score is 1: GitHub-owned GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help
with:
name: coverage-report-${{ matrix.python-version }}
path: htmlcov/
retention-days: 30

- name: Upload test results
if: always()
uses: actions/upload-artifact@v4

Check warning

Code scanning / Scorecard

Pinned-Dependencies Medium test

score is 1: GitHub-owned GitHubAction not pinned by hash
Remediation tip: update your workflow using https://app.stepsecurity.io
Click Remediation section below for further remediation help
with:
name: test-results-${{ matrix.python-version }}
path: |
junit-*.xml
retention-days: 30

test-summary:
name: Test Summary
runs-on: ubuntu-latest
needs: test
if: always()

steps:
- name: Check test results
run: |
if [ "${{ needs.test.result }}" == "failure" ]; then
echo "Tests failed"
exit 1
elif [ "${{ needs.test.result }}" == "cancelled" ]; then
echo "Tests were cancelled"
exit 1
else
echo "All tests passed"
fi
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,14 @@ env/
# Testing
.pytest_cache/
.coverage
.coverage.*
htmlcov/
.hypothesis/
*.cover
.tox/
junit-*.xml
coverage.*
coverage-*.json

# IDEs
.vscode/
Expand Down
Loading
Loading