1 Commits

Author SHA1 Message Date
Xuwznln
824b99635e Bump version: 0.0.6 → 0.1.0 2025-09-05 01:28:19 +08:00
8 changed files with 65 additions and 45 deletions

View File

@@ -1,5 +1,5 @@
[bumpversion]
current_version = 0.1.4
current_version = 0.1.0
commit = True
tag = True
tag_name = v{new_version}

View File

@@ -16,10 +16,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v6
uses: actions/setup-python@v5
with:
python-version: "3.10" # Use minimum version for consistency
@@ -40,10 +40,10 @@ jobs:
needs: [code-format] # Only run after code formatting passes
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v6
uses: actions/setup-python@v5
with:
python-version: "3.10"
@@ -72,7 +72,7 @@ jobs:
needs: [basic-build] # Only run after basic build passes
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Setup Miniconda
uses: conda-incubator/setup-miniconda@v3
@@ -112,14 +112,20 @@ jobs:
needs: [basic-build] # Run in parallel with ROS2 test after basic build
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Run Safety CLI to check for vulnerabilities
uses: pyupio/safety-action@v1
- name: Set up Python
uses: actions/setup-python@v5
with:
api-key: ${{ secrets.SAFETY_CHECK }}
output-format: json
args: --detailed-output --output-format json
python-version: "3.10" # Use minimum version for consistency
- name: Install security tools
run: |
python -m pip install --upgrade pip
pip install "safety>=3.0.0" "typer<0.12.0" "marshmallow<4.0.0"
- name: Run safety security scan
run: safety check --output json > safety-report.json
- name: Upload security reports
uses: actions/upload-artifact@v4
@@ -136,10 +142,10 @@ jobs:
needs: [basic-build] # Run in parallel with other checks
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v6
uses: actions/setup-python@v5
with:
python-version: "3.10" # Use minimum version for consistency
@@ -176,10 +182,10 @@ jobs:
python-version: "3.10"
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
@@ -195,9 +201,20 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install pytest
python -m pip install flake8 pytest
pip install -e .[dev]
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-line-length=200 --extend-ignore=E203,W503,F401,E402,E721,F841 --statistics
- name: Type checking with mypy
run: |
mypy msgcenterpy --disable-error-code=unused-ignore
- name: Test with pytest
run: |
pytest

View File

@@ -36,12 +36,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
uses: actions/checkout@v4
with:
ref: ${{ github.event.inputs.branch || github.ref }}
- name: Set up Python
uses: actions/setup-python@v6
uses: actions/setup-python@v5
with:
python-version: "3.10"
@@ -55,7 +55,7 @@ jobs:
- name: Setup Pages
id: pages
uses: actions/configure-pages@v5
uses: actions/configure-pages@v4
if: github.ref == 'refs/heads/main' || (github.event_name == 'workflow_dispatch' && github.event.inputs.deploy_to_pages == 'true')
- name: Build Sphinx documentation
@@ -64,7 +64,7 @@ jobs:
make html
- name: Upload artifact
uses: actions/upload-pages-artifact@v4
uses: actions/upload-pages-artifact@v3
if: github.ref == 'refs/heads/main' || (github.event_name == 'workflow_dispatch' && github.event.inputs.deploy_to_pages == 'true')
with:
path: docs/_build/html

View File

@@ -29,10 +29,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v6
uses: actions/setup-python@v5
with:
python-version: "3.10" # Use minimum version for consistency
@@ -53,10 +53,10 @@ jobs:
needs: [code-format] # Only run after code formatting passes
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v6
uses: actions/setup-python@v5
with:
python-version: "3.10"
@@ -85,7 +85,7 @@ jobs:
needs: [basic-build] # Only run after basic build passes
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Setup Miniconda
uses: conda-incubator/setup-miniconda@v3
@@ -125,14 +125,20 @@ jobs:
needs: [basic-build] # Run in parallel with ROS2 test after basic build
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Run Safety CLI to check for vulnerabilities
uses: pyupio/safety-action@v1
- name: Set up Python
uses: actions/setup-python@v5
with:
api-key: ${{ secrets.SAFETY_CHECK }}
output-format: json
args: --detailed-output --output-format json
python-version: "3.10" # Use minimum version for consistency
- name: Install security tools
run: |
python -m pip install --upgrade pip
pip install "safety>=3.0.0" "typer<0.12.0" "marshmallow<4.0.0"
- name: Run safety security scan
run: safety check --output json > safety-report.json
- name: Upload security reports
uses: actions/upload-artifact@v4
@@ -148,10 +154,10 @@ jobs:
needs: [test-with-ros2]
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v6
uses: actions/setup-python@v5
with:
python-version: "3.10" # Use minimum version for consistency
@@ -217,7 +223,7 @@ jobs:
steps:
- name: Retrieve release distributions
uses: actions/download-artifact@v5
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
@@ -240,7 +246,7 @@ jobs:
steps:
- name: Retrieve release distributions
uses: actions/download-artifact@v5
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
@@ -260,13 +266,13 @@ jobs:
steps:
- name: Retrieve release distributions
uses: actions/download-artifact@v5
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
- name: Upload release assets
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v1
with:
files: dist/*
env:
@@ -279,7 +285,7 @@ jobs:
if: always() && (needs.pypi-publish.result == 'success' || needs.test-pypi-publish.result == 'success')
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v4
- name: Create deployment summary
run: |

3
.gitignore vendored
View File

@@ -48,9 +48,6 @@ docs/_static/
# Visual Studio Code
.vscode/
.cursor/
.cursorignore
pyrightconfig.json
# ================================
# Operating System files

View File

@@ -184,7 +184,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright 2025 ZGCA-Forge/MsgCenterPy
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

View File

@@ -5,7 +5,7 @@ A multi-format message conversion system supporting seamless conversion
between ROS2, Pydantic, Dataclass, JSON, Dict, YAML and JSON Schema.
"""
__version__ = "0.1.4"
__version__ = "0.1.0"
__license__ = "Apache-2.0"
from msgcenterpy.core.envelope import MessageEnvelope, create_envelope

View File

@@ -72,7 +72,7 @@ version = {attr = "msgcenterpy.__version__"}
[tool.black]
line-length = 120
target-version = ['py310', 'py311', 'py312']
target-version = ['py310']
[tool.isort]
profile = "black"