strverify 0.1.0__tar.gz → 0.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- strverify-0.2.0/.github/workflows/ci.yml +117 -0
- strverify-0.2.0/.github/workflows/release.yml +121 -0
- {strverify-0.1.0 → strverify-0.2.0}/Cargo.lock +1 -1
- {strverify-0.1.0 → strverify-0.2.0}/Cargo.toml +1 -1
- {strverify-0.1.0 → strverify-0.2.0}/PKG-INFO +1 -1
- {strverify-0.1.0 → strverify-0.2.0}/pyproject.toml +1 -1
- strverify-0.1.0/requirements.txt +0 -5
- {strverify-0.1.0 → strverify-0.2.0}/.gitattributes +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/.gitignore +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/LICENSE +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/README.md +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/docs/README.ru.md +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/docs/README.zh.md +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/python/strverify/__init__.py +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/python/strverify/__init__.pyi +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/python/strverify/py.typed +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/src/charset.rs +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/src/filter.rs +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/src/lib.rs +0 -0
- {strverify-0.1.0 → strverify-0.2.0}/tests/test_filters.py +0 -0
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
concurrency:
|
|
10
|
+
group: ci-${{ github.workflow }}-${{ github.ref }}
|
|
11
|
+
cancel-in-progress: true
|
|
12
|
+
|
|
13
|
+
permissions:
|
|
14
|
+
contents: read
|
|
15
|
+
|
|
16
|
+
env:
|
|
17
|
+
CARGO_TERM_COLOR: always
|
|
18
|
+
|
|
19
|
+
jobs:
|
|
20
|
+
rust:
|
|
21
|
+
name: Rust checks
|
|
22
|
+
runs-on: ubuntu-latest
|
|
23
|
+
steps:
|
|
24
|
+
- name: Checkout repository
|
|
25
|
+
uses: actions/checkout@v7
|
|
26
|
+
|
|
27
|
+
- name: Set up Python
|
|
28
|
+
uses: actions/setup-python@v7
|
|
29
|
+
with:
|
|
30
|
+
python-version: "3.14"
|
|
31
|
+
|
|
32
|
+
- name: Set up Rust
|
|
33
|
+
uses: dtolnay/rust-toolchain@stable
|
|
34
|
+
with:
|
|
35
|
+
components: rustfmt, clippy
|
|
36
|
+
|
|
37
|
+
- name: Cache Rust build artifacts
|
|
38
|
+
uses: Swatinem/rust-cache@v2
|
|
39
|
+
|
|
40
|
+
- name: Check formatting
|
|
41
|
+
run: cargo fmt --all -- --check
|
|
42
|
+
|
|
43
|
+
- name: Run Clippy
|
|
44
|
+
run: cargo clippy --locked --all-targets -- -D warnings
|
|
45
|
+
|
|
46
|
+
- name: Run Rust tests
|
|
47
|
+
run: cargo test --locked
|
|
48
|
+
|
|
49
|
+
msrv:
|
|
50
|
+
name: MSRV (Rust 1.85)
|
|
51
|
+
runs-on: ubuntu-latest
|
|
52
|
+
steps:
|
|
53
|
+
- name: Checkout repository
|
|
54
|
+
uses: actions/checkout@v7
|
|
55
|
+
|
|
56
|
+
- name: Set up Python
|
|
57
|
+
uses: actions/setup-python@v7
|
|
58
|
+
with:
|
|
59
|
+
python-version: "3.14"
|
|
60
|
+
|
|
61
|
+
- name: Set up Rust 1.85
|
|
62
|
+
uses: dtolnay/rust-toolchain@1.85.0
|
|
63
|
+
|
|
64
|
+
- name: Cache Rust build artifacts
|
|
65
|
+
uses: Swatinem/rust-cache@v2
|
|
66
|
+
|
|
67
|
+
- name: Check the crate against the MSRV
|
|
68
|
+
run: cargo check --locked --all-targets
|
|
69
|
+
|
|
70
|
+
python:
|
|
71
|
+
name: Python ${{ matrix.python-version }} on ${{ matrix.os }}
|
|
72
|
+
runs-on: ${{ matrix.os }}
|
|
73
|
+
strategy:
|
|
74
|
+
fail-fast: false
|
|
75
|
+
matrix:
|
|
76
|
+
include:
|
|
77
|
+
# Python 3.9 is not available on Ubuntu 26.04 (ubuntu-latest).
|
|
78
|
+
- os: ubuntu-24.04
|
|
79
|
+
python-version: "3.9"
|
|
80
|
+
- os: ubuntu-latest
|
|
81
|
+
python-version: "3.10"
|
|
82
|
+
- os: ubuntu-latest
|
|
83
|
+
python-version: "3.11"
|
|
84
|
+
- os: ubuntu-latest
|
|
85
|
+
python-version: "3.12"
|
|
86
|
+
- os: ubuntu-latest
|
|
87
|
+
python-version: "3.13"
|
|
88
|
+
- os: ubuntu-latest
|
|
89
|
+
python-version: "3.14"
|
|
90
|
+
- os: macos-latest
|
|
91
|
+
python-version: "3.14"
|
|
92
|
+
- os: windows-latest
|
|
93
|
+
python-version: "3.14"
|
|
94
|
+
steps:
|
|
95
|
+
- name: Checkout repository
|
|
96
|
+
uses: actions/checkout@v7
|
|
97
|
+
|
|
98
|
+
- name: Set up Python
|
|
99
|
+
uses: actions/setup-python@v7
|
|
100
|
+
with:
|
|
101
|
+
python-version: ${{ matrix.python-version }}
|
|
102
|
+
|
|
103
|
+
- name: Set up Rust
|
|
104
|
+
uses: dtolnay/rust-toolchain@stable
|
|
105
|
+
|
|
106
|
+
- name: Cache Rust build artifacts
|
|
107
|
+
uses: Swatinem/rust-cache@v2
|
|
108
|
+
with:
|
|
109
|
+
key: ${{ matrix.os }}-python-${{ matrix.python-version }}
|
|
110
|
+
|
|
111
|
+
- name: Install package and test dependencies
|
|
112
|
+
run: |
|
|
113
|
+
python -m pip install --upgrade pip
|
|
114
|
+
python -m pip install ".[test]"
|
|
115
|
+
|
|
116
|
+
- name: Run Python tests
|
|
117
|
+
run: python -m pytest
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags: ["v*"]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
inputs:
|
|
8
|
+
publish:
|
|
9
|
+
description: Publish the built artifacts to PyPI
|
|
10
|
+
required: false
|
|
11
|
+
type: boolean
|
|
12
|
+
default: false
|
|
13
|
+
|
|
14
|
+
concurrency:
|
|
15
|
+
group: release-${{ github.ref }}
|
|
16
|
+
cancel-in-progress: false
|
|
17
|
+
|
|
18
|
+
permissions:
|
|
19
|
+
contents: read
|
|
20
|
+
|
|
21
|
+
env:
|
|
22
|
+
CARGO_TERM_COLOR: always
|
|
23
|
+
|
|
24
|
+
jobs:
|
|
25
|
+
wheels:
|
|
26
|
+
name: Wheel (${{ matrix.target }} on ${{ matrix.os }})
|
|
27
|
+
runs-on: ${{ matrix.os }}
|
|
28
|
+
strategy:
|
|
29
|
+
fail-fast: false
|
|
30
|
+
matrix:
|
|
31
|
+
include:
|
|
32
|
+
- os: ubuntu-latest
|
|
33
|
+
target: x86_64
|
|
34
|
+
- os: ubuntu-24.04-arm
|
|
35
|
+
target: aarch64
|
|
36
|
+
- os: macos-15-intel
|
|
37
|
+
target: x86_64
|
|
38
|
+
- os: macos-latest
|
|
39
|
+
target: aarch64
|
|
40
|
+
- os: windows-latest
|
|
41
|
+
target: x86_64
|
|
42
|
+
steps:
|
|
43
|
+
- name: Checkout repository
|
|
44
|
+
uses: actions/checkout@v7
|
|
45
|
+
|
|
46
|
+
- name: Build wheel
|
|
47
|
+
uses: PyO3/maturin-action@v1
|
|
48
|
+
with:
|
|
49
|
+
target: ${{ matrix.target }}
|
|
50
|
+
args: --release --locked --compatibility pypi --out dist
|
|
51
|
+
manylinux: auto
|
|
52
|
+
|
|
53
|
+
- name: Upload wheel
|
|
54
|
+
uses: actions/upload-artifact@v7
|
|
55
|
+
with:
|
|
56
|
+
name: wheel-${{ matrix.os }}-${{ matrix.target }}
|
|
57
|
+
path: dist/*.whl
|
|
58
|
+
if-no-files-found: error
|
|
59
|
+
|
|
60
|
+
sdist:
|
|
61
|
+
name: Source distribution
|
|
62
|
+
runs-on: ubuntu-latest
|
|
63
|
+
steps:
|
|
64
|
+
- name: Checkout repository
|
|
65
|
+
uses: actions/checkout@v7
|
|
66
|
+
|
|
67
|
+
- name: Build sdist
|
|
68
|
+
uses: PyO3/maturin-action@v1
|
|
69
|
+
with:
|
|
70
|
+
command: sdist
|
|
71
|
+
args: --out dist
|
|
72
|
+
|
|
73
|
+
- name: Upload sdist
|
|
74
|
+
uses: actions/upload-artifact@v7
|
|
75
|
+
with:
|
|
76
|
+
name: sdist
|
|
77
|
+
path: dist/*.tar.gz
|
|
78
|
+
if-no-files-found: error
|
|
79
|
+
|
|
80
|
+
publish:
|
|
81
|
+
name: Publish to PyPI
|
|
82
|
+
needs: [wheels, sdist]
|
|
83
|
+
if: startsWith(github.ref, 'refs/tags/v') || inputs.publish
|
|
84
|
+
runs-on: ubuntu-latest
|
|
85
|
+
# Configure a trusted publisher on PyPI and create a matching
|
|
86
|
+
# "pypi" environment in the repository settings.
|
|
87
|
+
# https://docs.pypi.org/trusted-publishers/
|
|
88
|
+
environment:
|
|
89
|
+
name: pypi
|
|
90
|
+
url: https://pypi.org/project/strverify/
|
|
91
|
+
permissions:
|
|
92
|
+
id-token: write
|
|
93
|
+
steps:
|
|
94
|
+
- name: Download artifacts
|
|
95
|
+
uses: actions/download-artifact@v8
|
|
96
|
+
with:
|
|
97
|
+
path: dist
|
|
98
|
+
merge-multiple: true
|
|
99
|
+
|
|
100
|
+
- name: Publish to PyPI
|
|
101
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
102
|
+
|
|
103
|
+
github-release:
|
|
104
|
+
name: GitHub release
|
|
105
|
+
needs: [publish]
|
|
106
|
+
if: startsWith(github.ref, 'refs/tags/v')
|
|
107
|
+
runs-on: ubuntu-latest
|
|
108
|
+
permissions:
|
|
109
|
+
contents: write
|
|
110
|
+
steps:
|
|
111
|
+
- name: Download artifacts
|
|
112
|
+
uses: actions/download-artifact@v8
|
|
113
|
+
with:
|
|
114
|
+
path: dist
|
|
115
|
+
merge-multiple: true
|
|
116
|
+
|
|
117
|
+
- name: Create GitHub release
|
|
118
|
+
uses: softprops/action-gh-release@v3
|
|
119
|
+
with:
|
|
120
|
+
files: dist/*
|
|
121
|
+
generate_release_notes: true
|
strverify-0.1.0/requirements.txt
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|