mcpcap 0.5.8__tar.gz → 0.5.10__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.
- mcpcap-0.5.10/.github/ISSUE_TEMPLATE/bug_report.yml +106 -0
- mcpcap-0.5.10/.github/ISSUE_TEMPLATE/config.yml +8 -0
- mcpcap-0.5.10/.github/ISSUE_TEMPLATE/feature_request.yml +104 -0
- mcpcap-0.5.10/.github/ISSUE_TEMPLATE/module_request.yml +123 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/.github/workflows/release.yml +20 -21
- {mcpcap-0.5.8 → mcpcap-0.5.10}/.github/workflows/test.yml +27 -5
- {mcpcap-0.5.8 → mcpcap-0.5.10}/PKG-INFO +1 -1
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/_version.py +3 -3
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap.egg-info/PKG-INFO +1 -1
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap.egg-info/SOURCES.txt +4 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/.github/FUNDING.yml +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/.gitignore +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/.readthedocs.yaml +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/CONTRIBUTING.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/LICENSE +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/README.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/Makefile +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/_static/.gitkeep +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/api/cli.rst +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/api/core.rst +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/api/modules.rst +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/conf.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/developer/contributing.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/developer/module-creation-tutorial.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/index.rst +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/user-guide/analysis-guides.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/user-guide/installation.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/user-guide/mcp-integration.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/docs/source/user-guide/quickstart.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/examples/README.md +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/examples/dhcp.pcap +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/examples/dns.pcap +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/pyproject.toml +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/readme-assets/mcpcap-logo.png +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/server.json +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/setup.cfg +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/__init__.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/cli.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/core/__init__.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/core/config.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/core/server.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/modules/__init__.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/modules/base.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/modules/dhcp.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/modules/dns.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap/modules/icmp.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap.egg-info/dependency_links.txt +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap.egg-info/entry_points.txt +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap.egg-info/requires.txt +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/src/mcpcap.egg-info/top_level.txt +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/tests/__init__.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/tests/test_cli.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/tests/test_dhcp.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/tests/test_dns.py +0 -0
- {mcpcap-0.5.8 → mcpcap-0.5.10}/tests/test_modules/test_icmp.py +0 -0
@@ -0,0 +1,106 @@
|
|
1
|
+
name: Bug Report
|
2
|
+
description: Report a bug or issue with mcpcap
|
3
|
+
title: "[Bug] "
|
4
|
+
labels: ["bug"]
|
5
|
+
body:
|
6
|
+
- type: markdown
|
7
|
+
attributes:
|
8
|
+
value: |
|
9
|
+
Thanks for taking the time to report a bug! Please fill out this form as completely as possible.
|
10
|
+
|
11
|
+
- type: textarea
|
12
|
+
id: description
|
13
|
+
attributes:
|
14
|
+
label: Bug Description
|
15
|
+
description: A clear and concise description of what the bug is.
|
16
|
+
placeholder: Describe the bug...
|
17
|
+
validations:
|
18
|
+
required: true
|
19
|
+
|
20
|
+
- type: textarea
|
21
|
+
id: reproduction
|
22
|
+
attributes:
|
23
|
+
label: Steps to Reproduce
|
24
|
+
description: Steps to reproduce the behavior
|
25
|
+
placeholder: |
|
26
|
+
1. Run mcpcap with...
|
27
|
+
2. Analyze PCAP file...
|
28
|
+
3. See error...
|
29
|
+
validations:
|
30
|
+
required: true
|
31
|
+
|
32
|
+
- type: textarea
|
33
|
+
id: expected
|
34
|
+
attributes:
|
35
|
+
label: Expected Behavior
|
36
|
+
description: A clear and concise description of what you expected to happen.
|
37
|
+
placeholder: What should have happened?
|
38
|
+
validations:
|
39
|
+
required: true
|
40
|
+
|
41
|
+
- type: textarea
|
42
|
+
id: actual
|
43
|
+
attributes:
|
44
|
+
label: Actual Behavior
|
45
|
+
description: What actually happened instead?
|
46
|
+
placeholder: What actually happened?
|
47
|
+
validations:
|
48
|
+
required: true
|
49
|
+
|
50
|
+
- type: textarea
|
51
|
+
id: pcap-info
|
52
|
+
attributes:
|
53
|
+
label: PCAP File Information
|
54
|
+
description: Information about the PCAP file that caused the issue (if applicable)
|
55
|
+
placeholder: |
|
56
|
+
- File size:
|
57
|
+
- Protocols present:
|
58
|
+
- Capture tool:
|
59
|
+
- Any sensitive data removed: Yes/No
|
60
|
+
validations:
|
61
|
+
required: false
|
62
|
+
|
63
|
+
- type: dropdown
|
64
|
+
id: modules
|
65
|
+
attributes:
|
66
|
+
label: Affected Modules
|
67
|
+
description: Which mcpcap modules are affected?
|
68
|
+
multiple: true
|
69
|
+
options:
|
70
|
+
- DNS
|
71
|
+
- DHCP
|
72
|
+
- ICMP
|
73
|
+
- All modules
|
74
|
+
- Unknown
|
75
|
+
validations:
|
76
|
+
required: true
|
77
|
+
|
78
|
+
- type: textarea
|
79
|
+
id: environment
|
80
|
+
attributes:
|
81
|
+
label: Environment
|
82
|
+
description: Information about your environment
|
83
|
+
placeholder: |
|
84
|
+
- mcpcap version:
|
85
|
+
- Python version:
|
86
|
+
- Operating system:
|
87
|
+
- Installation method: pip/git/other
|
88
|
+
validations:
|
89
|
+
required: true
|
90
|
+
|
91
|
+
- type: textarea
|
92
|
+
id: logs
|
93
|
+
attributes:
|
94
|
+
label: Error Logs
|
95
|
+
description: If applicable, add any error messages or logs
|
96
|
+
render: shell
|
97
|
+
validations:
|
98
|
+
required: false
|
99
|
+
|
100
|
+
- type: textarea
|
101
|
+
id: additional
|
102
|
+
attributes:
|
103
|
+
label: Additional Context
|
104
|
+
description: Add any other context about the problem here
|
105
|
+
validations:
|
106
|
+
required: false
|
@@ -0,0 +1,8 @@
|
|
1
|
+
blank_issues_enabled: false
|
2
|
+
contact_links:
|
3
|
+
- name: Documentation
|
4
|
+
url: https://docs.mcpcap.ai
|
5
|
+
about: Check the documentation for usage guides and API reference
|
6
|
+
- name: Discussions
|
7
|
+
url: https://github.com/mcpcap/mcpcap/discussions
|
8
|
+
about: Ask questions and discuss ideas with the community
|
@@ -0,0 +1,104 @@
|
|
1
|
+
name: Feature Request
|
2
|
+
description: Suggest a new feature or enhancement for mcpcap
|
3
|
+
title: "[Feature] "
|
4
|
+
labels: ["enhancement"]
|
5
|
+
body:
|
6
|
+
- type: markdown
|
7
|
+
attributes:
|
8
|
+
value: |
|
9
|
+
Thanks for suggesting a new feature! Please describe your idea clearly.
|
10
|
+
|
11
|
+
- type: textarea
|
12
|
+
id: summary
|
13
|
+
attributes:
|
14
|
+
label: Feature Summary
|
15
|
+
description: A brief summary of the feature you'd like to see
|
16
|
+
placeholder: What feature would you like to see added?
|
17
|
+
validations:
|
18
|
+
required: true
|
19
|
+
|
20
|
+
- type: textarea
|
21
|
+
id: problem
|
22
|
+
attributes:
|
23
|
+
label: Problem Statement
|
24
|
+
description: What problem does this feature solve?
|
25
|
+
placeholder: |
|
26
|
+
Is your feature request related to a problem? Please describe.
|
27
|
+
A clear and concise description of what the problem is.
|
28
|
+
validations:
|
29
|
+
required: true
|
30
|
+
|
31
|
+
- type: textarea
|
32
|
+
id: solution
|
33
|
+
attributes:
|
34
|
+
label: Proposed Solution
|
35
|
+
description: Describe the solution you'd like
|
36
|
+
placeholder: A clear and concise description of what you want to happen.
|
37
|
+
validations:
|
38
|
+
required: true
|
39
|
+
|
40
|
+
- type: dropdown
|
41
|
+
id: category
|
42
|
+
attributes:
|
43
|
+
label: Feature Category
|
44
|
+
description: What type of feature is this?
|
45
|
+
options:
|
46
|
+
- New protocol support
|
47
|
+
- Analysis enhancement
|
48
|
+
- Performance improvement
|
49
|
+
- User interface
|
50
|
+
- Documentation
|
51
|
+
- Testing
|
52
|
+
- Other
|
53
|
+
validations:
|
54
|
+
required: true
|
55
|
+
|
56
|
+
- type: dropdown
|
57
|
+
id: priority
|
58
|
+
attributes:
|
59
|
+
label: Priority Level
|
60
|
+
description: How important is this feature to you?
|
61
|
+
options:
|
62
|
+
- Low - Nice to have
|
63
|
+
- Medium - Would be helpful
|
64
|
+
- High - Important for my use case
|
65
|
+
- Critical - Blocking my work
|
66
|
+
validations:
|
67
|
+
required: true
|
68
|
+
|
69
|
+
- type: textarea
|
70
|
+
id: alternatives
|
71
|
+
attributes:
|
72
|
+
label: Alternative Solutions
|
73
|
+
description: Describe any alternative solutions or features you've considered
|
74
|
+
placeholder: What alternatives have you considered?
|
75
|
+
validations:
|
76
|
+
required: false
|
77
|
+
|
78
|
+
- type: textarea
|
79
|
+
id: use-cases
|
80
|
+
attributes:
|
81
|
+
label: Use Cases
|
82
|
+
description: Describe specific use cases where this feature would be valuable
|
83
|
+
placeholder: |
|
84
|
+
- Use case 1: ...
|
85
|
+
- Use case 2: ...
|
86
|
+
validations:
|
87
|
+
required: false
|
88
|
+
|
89
|
+
- type: textarea
|
90
|
+
id: implementation
|
91
|
+
attributes:
|
92
|
+
label: Implementation Ideas
|
93
|
+
description: If you have ideas about how this could be implemented, share them here
|
94
|
+
placeholder: Any thoughts on how this could be implemented?
|
95
|
+
validations:
|
96
|
+
required: false
|
97
|
+
|
98
|
+
- type: textarea
|
99
|
+
id: additional
|
100
|
+
attributes:
|
101
|
+
label: Additional Context
|
102
|
+
description: Add any other context, screenshots, or examples about the feature request
|
103
|
+
validations:
|
104
|
+
required: false
|
@@ -0,0 +1,123 @@
|
|
1
|
+
name: Protocol Module Request
|
2
|
+
description: Request support for a new network protocol analysis module
|
3
|
+
title: "[Module] Add support for [PROTOCOL_NAME]"
|
4
|
+
labels: ["enhancement", "module", "protocol"]
|
5
|
+
body:
|
6
|
+
- type: markdown
|
7
|
+
attributes:
|
8
|
+
value: |
|
9
|
+
Thanks for requesting a new protocol module! This helps us prioritize which protocols to support next.
|
10
|
+
|
11
|
+
- type: input
|
12
|
+
id: protocol-name
|
13
|
+
attributes:
|
14
|
+
label: Protocol Name
|
15
|
+
description: What protocol would you like mcpcap to support?
|
16
|
+
placeholder: e.g., HTTP, FTP, SSH, etc.
|
17
|
+
validations:
|
18
|
+
required: true
|
19
|
+
|
20
|
+
- type: textarea
|
21
|
+
id: protocol-description
|
22
|
+
attributes:
|
23
|
+
label: Protocol Description
|
24
|
+
description: Brief description of the protocol and its purpose
|
25
|
+
placeholder: What does this protocol do? What is it used for?
|
26
|
+
validations:
|
27
|
+
required: true
|
28
|
+
|
29
|
+
- type: dropdown
|
30
|
+
id: protocol-layer
|
31
|
+
attributes:
|
32
|
+
label: OSI Layer
|
33
|
+
description: Which OSI layer does this protocol primarily operate at?
|
34
|
+
options:
|
35
|
+
- Layer 2 - Data Link
|
36
|
+
- Layer 3 - Network
|
37
|
+
- Layer 4 - Transport
|
38
|
+
- Layer 5 - Session
|
39
|
+
- Layer 6 - Presentation
|
40
|
+
- Layer 7 - Application
|
41
|
+
- Multiple layers
|
42
|
+
- Unknown/Other
|
43
|
+
validations:
|
44
|
+
required: true
|
45
|
+
|
46
|
+
- type: textarea
|
47
|
+
id: use-cases
|
48
|
+
attributes:
|
49
|
+
label: Use Cases
|
50
|
+
description: What specific analysis would you want to perform on this protocol?
|
51
|
+
placeholder: |
|
52
|
+
- Security analysis: ...
|
53
|
+
- Performance monitoring: ...
|
54
|
+
- Troubleshooting: ...
|
55
|
+
- Compliance: ...
|
56
|
+
validations:
|
57
|
+
required: true
|
58
|
+
|
59
|
+
- type: textarea
|
60
|
+
id: analysis-goals
|
61
|
+
attributes:
|
62
|
+
label: Analysis Goals
|
63
|
+
description: What specific information should the module extract or analyze?
|
64
|
+
placeholder: |
|
65
|
+
- Packet counts and sizes
|
66
|
+
- Connection patterns
|
67
|
+
- Error rates
|
68
|
+
- Specific protocol fields
|
69
|
+
- Security indicators
|
70
|
+
validations:
|
71
|
+
required: true
|
72
|
+
|
73
|
+
- type: input
|
74
|
+
id: rfc-standards
|
75
|
+
attributes:
|
76
|
+
label: RFC or Standards
|
77
|
+
description: Are there RFC documents or standards that define this protocol?
|
78
|
+
placeholder: e.g., RFC 793, IEEE 802.11, etc.
|
79
|
+
validations:
|
80
|
+
required: false
|
81
|
+
|
82
|
+
- type: dropdown
|
83
|
+
id: priority
|
84
|
+
attributes:
|
85
|
+
label: Priority Level
|
86
|
+
description: How important is this protocol support to your work?
|
87
|
+
options:
|
88
|
+
- Low - Nice to have
|
89
|
+
- Medium - Would be helpful
|
90
|
+
- High - Important for my use case
|
91
|
+
- Critical - Blocking my work
|
92
|
+
validations:
|
93
|
+
required: true
|
94
|
+
|
95
|
+
- type: textarea
|
96
|
+
id: sample-data
|
97
|
+
attributes:
|
98
|
+
label: Sample Data Availability
|
99
|
+
description: Do you have sample PCAP files with this protocol that could help with development?
|
100
|
+
placeholder: |
|
101
|
+
- Yes, I can provide sanitized samples
|
102
|
+
- Yes, but they contain sensitive data
|
103
|
+
- No, but I can generate some
|
104
|
+
- No sample data available
|
105
|
+
validations:
|
106
|
+
required: false
|
107
|
+
|
108
|
+
- type: textarea
|
109
|
+
id: existing-tools
|
110
|
+
attributes:
|
111
|
+
label: Existing Analysis Tools
|
112
|
+
description: Are there existing tools that analyze this protocol? How would mcpcap be different/better?
|
113
|
+
placeholder: What tools currently exist for analyzing this protocol?
|
114
|
+
validations:
|
115
|
+
required: false
|
116
|
+
|
117
|
+
- type: textarea
|
118
|
+
id: additional
|
119
|
+
attributes:
|
120
|
+
label: Additional Context
|
121
|
+
description: Any other information that would help with implementing this module
|
122
|
+
validations:
|
123
|
+
required: false
|
@@ -23,10 +23,21 @@ jobs:
|
|
23
23
|
with:
|
24
24
|
python-version: "3.11"
|
25
25
|
|
26
|
+
- name: Install uv
|
27
|
+
uses: astral-sh/setup-uv@v4
|
28
|
+
|
29
|
+
- name: Cache uv dependencies
|
30
|
+
uses: actions/cache@v4
|
31
|
+
with:
|
32
|
+
path: ~/.cache/uv
|
33
|
+
key: ${{ runner.os }}-uv-release-${{ hashFiles('pyproject.toml') }}
|
34
|
+
restore-keys: |
|
35
|
+
${{ runner.os }}-uv-release-
|
36
|
+
${{ runner.os }}-uv-
|
37
|
+
|
26
38
|
- name: Install build dependencies
|
27
39
|
run: |
|
28
|
-
|
29
|
-
pip install build setuptools-scm[toml]
|
40
|
+
uv pip install --system build setuptools-scm[toml]
|
30
41
|
|
31
42
|
- name: Verify version matches tag
|
32
43
|
run: |
|
@@ -53,7 +64,7 @@ jobs:
|
|
53
64
|
|
54
65
|
- name: Verify package contents
|
55
66
|
run: |
|
56
|
-
pip install twine
|
67
|
+
uv pip install --system twine
|
57
68
|
twine check dist/*
|
58
69
|
|
59
70
|
- name: Create GitHub Release
|
@@ -107,26 +118,14 @@ jobs:
|
|
107
118
|
echo "server.json not found at repo root; skipping version update"
|
108
119
|
fi
|
109
120
|
|
110
|
-
# -------- MCP Registry: install publisher (
|
111
|
-
- name: Set up Go (for building mcp-publisher)
|
112
|
-
if: steps.pypi_publish.outcome == 'success'
|
113
|
-
uses: actions/setup-go@v5
|
114
|
-
with:
|
115
|
-
go-version: '1.24.x'
|
116
|
-
|
121
|
+
# -------- MCP Registry: install publisher (pre-built binary) ---------------
|
117
122
|
- name: Install MCP Publisher
|
118
123
|
if: steps.pypi_publish.outcome == 'success'
|
119
124
|
run: |
|
120
125
|
set -euo pipefail
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
# Verify expected output location and copy to repo root
|
125
|
-
test -f bin/mcp-publisher || { echo "mcp-publisher binary not found at bin/mcp-publisher"; ls -R; exit 1; }
|
126
|
-
cp bin/mcp-publisher ../mcp-publisher
|
127
|
-
cd ..
|
128
|
-
chmod +x mcp-publisher
|
129
|
-
./mcp-publisher --version || true
|
126
|
+
curl -L "https://github.com/modelcontextprotocol/registry/releases/download/v1.0.0/mcp-publisher_1.0.0_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar xz mcp-publisher
|
127
|
+
sudo mv mcp-publisher /usr/local/bin/
|
128
|
+
mcp-publisher --version
|
130
129
|
|
131
130
|
# -------- MCP Registry: login with DNS (mcpcap.ai) ------------------------
|
132
131
|
# Secret MCP_PRIVATE_KEY must be a 64-character hex Ed25519 private key
|
@@ -141,12 +140,12 @@ jobs:
|
|
141
140
|
|
142
141
|
- name: Login to MCP Registry (DNS)
|
143
142
|
if: steps.pypi_publish.outcome == 'success'
|
144
|
-
run:
|
143
|
+
run: mcp-publisher login dns --domain mcpcap.ai --private-key "${{ secrets.MCP_PRIVATE_KEY }}"
|
145
144
|
|
146
145
|
# -------- MCP Registry: publish -------------------------------------------
|
147
146
|
- name: Publish to MCP Registry
|
148
147
|
if: steps.pypi_publish.outcome == 'success'
|
149
|
-
run:
|
148
|
+
run: mcp-publisher publish
|
150
149
|
|
151
150
|
- name: Upload build artifacts
|
152
151
|
uses: actions/upload-artifact@v4
|
@@ -24,10 +24,21 @@ jobs:
|
|
24
24
|
with:
|
25
25
|
python-version: ${{ matrix.python-version }}
|
26
26
|
|
27
|
+
- name: Install uv
|
28
|
+
uses: astral-sh/setup-uv@v4
|
29
|
+
|
30
|
+
- name: Cache uv dependencies
|
31
|
+
uses: actions/cache@v4
|
32
|
+
with:
|
33
|
+
path: ~/.cache/uv
|
34
|
+
key: ${{ runner.os }}-uv-${{ matrix.python-version }}-${{ hashFiles('pyproject.toml') }}
|
35
|
+
restore-keys: |
|
36
|
+
${{ runner.os }}-uv-${{ matrix.python-version }}-
|
37
|
+
${{ runner.os }}-uv-
|
38
|
+
|
27
39
|
- name: Install dependencies
|
28
40
|
run: |
|
29
|
-
|
30
|
-
pip install -e .[test]
|
41
|
+
uv pip install --system -e .[test]
|
31
42
|
|
32
43
|
- name: Check version detection
|
33
44
|
run: |
|
@@ -35,7 +46,7 @@ jobs:
|
|
35
46
|
|
36
47
|
- name: Run linting with ruff
|
37
48
|
run: |
|
38
|
-
pip install ruff
|
49
|
+
uv pip install --system ruff
|
39
50
|
ruff check .
|
40
51
|
ruff format --check .
|
41
52
|
|
@@ -54,11 +65,22 @@ jobs:
|
|
54
65
|
uses: actions/setup-python@v5
|
55
66
|
with:
|
56
67
|
python-version: "3.11"
|
68
|
+
|
69
|
+
- name: Install uv
|
70
|
+
uses: astral-sh/setup-uv@v4
|
71
|
+
|
72
|
+
- name: Cache uv dependencies
|
73
|
+
uses: actions/cache@v4
|
74
|
+
with:
|
75
|
+
path: ~/.cache/uv
|
76
|
+
key: ${{ runner.os }}-uv-check-version-${{ hashFiles('pyproject.toml') }}
|
77
|
+
restore-keys: |
|
78
|
+
${{ runner.os }}-uv-check-version-
|
79
|
+
${{ runner.os }}-uv-
|
57
80
|
|
58
81
|
- name: Install setuptools-scm
|
59
82
|
run: |
|
60
|
-
|
61
|
-
pip install setuptools-scm[toml]
|
83
|
+
uv pip install --system setuptools-scm[toml]
|
62
84
|
|
63
85
|
- name: Verify version can be determined
|
64
86
|
run: |
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
28
28
|
commit_id: COMMIT_ID
|
29
29
|
__commit_id__: COMMIT_ID
|
30
30
|
|
31
|
-
__version__ = version = '0.5.
|
32
|
-
__version_tuple__ = version_tuple = (0, 5,
|
31
|
+
__version__ = version = '0.5.10'
|
32
|
+
__version_tuple__ = version_tuple = (0, 5, 10)
|
33
33
|
|
34
|
-
__commit_id__ = commit_id = '
|
34
|
+
__commit_id__ = commit_id = 'g6be924820'
|
@@ -6,6 +6,10 @@ README.md
|
|
6
6
|
pyproject.toml
|
7
7
|
server.json
|
8
8
|
.github/FUNDING.yml
|
9
|
+
.github/ISSUE_TEMPLATE/bug_report.yml
|
10
|
+
.github/ISSUE_TEMPLATE/config.yml
|
11
|
+
.github/ISSUE_TEMPLATE/feature_request.yml
|
12
|
+
.github/ISSUE_TEMPLATE/module_request.yml
|
9
13
|
.github/workflows/release.yml
|
10
14
|
.github/workflows/test.yml
|
11
15
|
docs/Makefile
|
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
|
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
|
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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|