Skip to content

Commit 39c89f2

Browse files
committed
reinit
0 parents  commit 39c89f2

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+4792
-0
lines changed

.copier-answers.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Changes here will be overwritten by Copier
2+
_commit: ca3e4a0
3+
_src_path: https://github.com/python-project-templates/base.git
4+
add_docs: true
5+
add_extension: rustjswasm
6+
add_wiki: true
7+
8+
github: python-project-templates
9+
project_description: A Rust-Python project template
10+
project_name: python template rust
11+
python_version_primary: '3.9'
12+
team: Python Project Template Authors

.gitattributes

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
examples/* linguist-documentation
2+
docs/* linguist-documentation
3+
*.ipynb linguist-documentation
4+
Makefile linguist-documentation
5+
6+
*.css text=auto eol=lf
7+
*.html text=auto eol=lf
8+
*.js text=auto eol=lf
9+
*.json text=auto eol=lf
10+
*.less text=auto eol=lf
11+
*.md text=auto eol=lf
12+
*.py text=auto eol=lf
13+
*.rs text=auto eol=lf
14+
*.toml text=auto eol=lf
15+
*.ts text=auto eol=lf
16+
*.yaml text=auto eol=lf

.github/CODE_OF_CONDUCT.md

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as
6+
contributors and maintainers pledge to making participation in our project and
7+
our community a harassment-free experience for everyone, regardless of age, body
8+
size, disability, ethnicity, sex characteristics, gender identity and expression,
9+
level of experience, education, socio-economic status, nationality, personal
10+
appearance, race, religion, or sexual identity and orientation.
11+
12+
## Our Standards
13+
14+
Examples of behavior that contributes to creating a positive environment
15+
include:
16+
17+
* Using welcoming and inclusive language
18+
* Being respectful of differing viewpoints and experiences
19+
* Gracefully accepting constructive criticism
20+
* Focusing on what is best for the community
21+
* Showing empathy towards other community members
22+
23+
Examples of unacceptable behavior by participants include:
24+
25+
* The use of sexualized language or imagery and unwelcome sexual attention or
26+
advances
27+
* Trolling, insulting/derogatory comments, and personal or political attacks
28+
* Public or private harassment
29+
* Publishing others' private information, such as a physical or electronic
30+
address, without explicit permission
31+
* Other conduct which could reasonably be considered inappropriate in a
32+
professional setting
33+
34+
## Our Responsibilities
35+
36+
Project maintainers are responsible for clarifying the standards of acceptable
37+
behavior and are expected to take appropriate and fair corrective action in
38+
response to any instances of unacceptable behavior.
39+
40+
Project maintainers have the right and responsibility to remove, edit, or
41+
reject comments, commits, code, wiki edits, issues, and other contributions
42+
that are not aligned to this Code of Conduct, or to ban temporarily or
43+
permanently any contributor for other behaviors that they deem inappropriate,
44+
threatening, offensive, or harmful.
45+
46+
## Scope
47+
48+
This Code of Conduct applies both within project spaces and in public spaces
49+
when an individual is representing the project or its community. Examples of
50+
representing a project or community include using an official project e-mail
51+
address, posting via an official social media account, or acting as an appointed
52+
representative at an online or offline event. Representation of a project may be
53+
further defined and clarified by project maintainers.
54+
55+
## Enforcement
56+
57+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
58+
reported by contacting the project team at [email protected]. All
59+
complaints will be reviewed and investigated and will result in a response that
60+
is deemed necessary and appropriate to the circumstances. The project team is
61+
obligated to maintain confidentiality with regard to the reporter of an incident.
62+
Further details of specific enforcement policies may be posted separately.
63+
64+
Project maintainers who do not follow or enforce the Code of Conduct in good
65+
faith may face temporary or permanent repercussions as determined by other
66+
members of the project's leadership.
67+
68+
## Attribution
69+
70+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71+
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
72+
73+
[homepage]: https://www.contributor-covenant.org
74+
75+
For answers to common questions about this code of conduct, see
76+
https://www.contributor-covenant.org/faq

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
**Screenshots**
24+
If applicable, add screenshots to help explain your problem.
25+
26+
**Desktop (please complete the following information):**
27+
- OS: [e.g. iOS]
28+
- Browser [e.g. chrome, safari]
29+
- Version [e.g. 22]
30+
31+
**Smartphone (please complete the following information):**
32+
- Device: [e.g. iPhone6]
33+
- OS: [e.g. iOS8.1]
34+
- Browser [e.g. stock browser, safari]
35+
- Version [e.g. 22]
36+
37+
**Additional context**
38+
Add any other context about the problem here.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.github/dependabot.yaml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
5+
schedule:
6+
interval: "weekly"
7+
labels:
8+
- "part: github_actions"
9+
10+
- package-ecosystem: "pip"
11+
directory: "/"
12+
schedule:
13+
interval: "monthly"
14+
labels:
15+
- "lang: python"
16+
- "part: dependencies"
17+
18+
- package-ecosystem: "npm"
19+
directory: "/js"
20+
schedule:
21+
interval: "monthly"
22+
labels:
23+
- "lang: javascript"
24+
- "part: dependencies"
25+
26+
- package-ecosystem: "cargo"
27+
directory: "/"
28+
schedule:
29+
interval: "monthly"
30+
labels:
31+
- "lang: rust"
32+
- "part: dependencies"
33+

.github/workflows/build.yaml

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
name: Build Status
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
tags:
8+
- v*
9+
paths-ignore:
10+
- LICENSE
11+
- README.md
12+
pull_request:
13+
branches:
14+
- main
15+
workflow_dispatch:
16+
17+
concurrency:
18+
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
19+
cancel-in-progress: true
20+
21+
permissions:
22+
contents: read
23+
checks: write
24+
pull-requests: write
25+
26+
jobs:
27+
build:
28+
runs-on: ${{ matrix.os }}
29+
30+
strategy:
31+
matrix:
32+
os: [ubuntu-latest, macos-latest, windows-latest]
33+
python-version: ["3.9"]
34+
node-version: [20.x]
35+
36+
steps:
37+
- uses: actions/checkout@v4
38+
39+
- uses: actions-ext/python/setup@main
40+
with:
41+
version: ${{ matrix.python-version }}
42+
43+
- uses: actions-ext/rust/setup@main
44+
45+
- uses: actions-ext/node/setup@main
46+
with:
47+
version: 20.x
48+
49+
- name: Install dependencies
50+
run: make develop
51+
52+
- name: Lint
53+
run: make lint
54+
55+
- name: Checks
56+
run: make checks
57+
if: matrix.os == 'ubuntu-latest'
58+
59+
- name: Build
60+
run: make build
61+
62+
- name: Test
63+
run: make coverage
64+
65+
- name: Upload test results (Python)
66+
uses: actions/upload-artifact@v4
67+
with:
68+
name: test-results-${{ matrix.os }}-${{ matrix.python-version }}
69+
path: '**/junit.xml'
70+
if: ${{ always() }}
71+
72+
- name: Publish Unit Test Results
73+
uses: EnricoMi/publish-unit-test-result-action@v2
74+
with:
75+
files: '**/junit.xml'
76+
if: matrix.os == 'ubuntu-latest'
77+
78+
- name: Upload coverage
79+
uses: codecov/codecov-action@v5
80+
with:
81+
token: ${{ secrets.CODECOV_TOKEN }}
82+
83+
- name: Set up QEMU
84+
uses: docker/setup-qemu-action@v3
85+
with:
86+
platforms: all
87+
if: runner.os == 'Linux' && runner.arch == 'X64'
88+
89+
- name: Make dist
90+
run: |
91+
make dist-rs
92+
make dist-py-sdist
93+
make dist-py-wheel
94+
make dist-check
95+
if: matrix.os == 'ubuntu-latest'
96+
97+
- name: Make dist
98+
run: |
99+
make dist-py-wheel
100+
make dist-check
101+
env:
102+
CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=11.0
103+
if: matrix.os != 'ubuntu-latest'
104+
105+
- uses: actions/upload-artifact@v4
106+
with:
107+
name: dist-${{matrix.os}}
108+
path: dist

.github/workflows/copier.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: Copier Updates
2+
3+
on:
4+
workflow_dispatch:
5+
schedule:
6+
- cron: "0 5 * * 0"
7+
8+
jobs:
9+
update:
10+
permissions:
11+
contents: write
12+
pull-requests: write
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions-ext/copier-update@main
16+
with:
17+
token: ${{ secrets.WORKFLOW_TOKEN }}

.github/workflows/docs.yaml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: Publish Docs
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
permissions:
9+
contents: write
10+
jobs:
11+
docs:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
- uses: actions-ext/python/setup@main
16+
- uses: actions-ext/rust/setup@main
17+
- uses: actions-ext/node/setup@main
18+
- run: uv pip install .
19+
- run: uv pip install yardang
20+
- run: yardang build
21+
- uses: peaceiris/actions-gh-pages@v4
22+
with:
23+
publish_branch: gh-pages
24+
github_token: ${{ secrets.GITHUB_TOKEN }}
25+
publish_dir: docs/html

.github/workflows/wiki.yaml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Publish Wiki
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- "docs/**"
9+
- "README.md"
10+
workflow_dispatch:
11+
12+
concurrency:
13+
group: docs
14+
cancel-in-progress: true
15+
16+
permissions:
17+
contents: write
18+
19+
jobs:
20+
deploy:
21+
runs-on: ubuntu-latest
22+
steps:
23+
- uses: actions/checkout@v4
24+
- run: cp README.md docs/wiki/Home.md
25+
- uses: Andrew-Chen-Wang/github-wiki-action@v5
26+
with:
27+
path: docs/wiki

0 commit comments

Comments
 (0)