local-ip-address 0.1.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.
- local_ip_address-0.1.0/.bumpversion.cfg +28 -0
- local_ip_address-0.1.0/.github/ISSUE_TEMPLATE/bug_report.md +51 -0
- local_ip_address-0.1.0/.github/ISSUE_TEMPLATE/feature_request.md +27 -0
- local_ip_address-0.1.0/.github/auto_assign.yml +9 -0
- local_ip_address-0.1.0/.github/dependabot.yml +11 -0
- local_ip_address-0.1.0/.github/milestones.py +28 -0
- local_ip_address-0.1.0/.github/stale.yml +63 -0
- local_ip_address-0.1.0/.github/workflows/CI.yml +205 -0
- local_ip_address-0.1.0/.github/workflows/flake8.yml +49 -0
- local_ip_address-0.1.0/.github/workflows/mypy.yml +53 -0
- local_ip_address-0.1.0/.github/workflows/octocheese.yml +20 -0
- local_ip_address-0.1.0/.github/workflows/python_ci.yml +75 -0
- local_ip_address-0.1.0/.github/workflows/python_ci_linux.yml +109 -0
- local_ip_address-0.1.0/.github/workflows/python_ci_macos.yml +75 -0
- local_ip_address-0.1.0/.gitignore +86 -0
- local_ip_address-0.1.0/.imgbotconfig +6 -0
- local_ip_address-0.1.0/.pre-commit-config.yaml +121 -0
- local_ip_address-0.1.0/.pylintrc +407 -0
- local_ip_address-0.1.0/.readthedocs.yml +24 -0
- local_ip_address-0.1.0/.style.yapf +393 -0
- local_ip_address-0.1.0/CONTRIBUTING.rst +73 -0
- local_ip_address-0.1.0/Cargo.lock +407 -0
- local_ip_address-0.1.0/Cargo.toml +18 -0
- local_ip_address-0.1.0/LICENSE +19 -0
- local_ip_address-0.1.0/PKG-INFO +154 -0
- local_ip_address-0.1.0/README.rst +126 -0
- local_ip_address-0.1.0/formate.toml +41 -0
- local_ip_address-0.1.0/justfile +30 -0
- local_ip_address-0.1.0/pyproject.toml +83 -0
- local_ip_address-0.1.0/python/local_ip_address/__init__.py +57 -0
- local_ip_address-0.1.0/python/local_ip_address/_local_ip_address.pyi +2 -0
- local_ip_address-0.1.0/python/local_ip_address/py.typed +0 -0
- local_ip_address-0.1.0/repo_helper.yml +33 -0
- local_ip_address-0.1.0/requirements.txt +0 -0
- local_ip_address-0.1.0/rustfmt.toml +1 -0
- local_ip_address-0.1.0/src/lib.rs +45 -0
- local_ip_address-0.1.0/tests/requirements.txt +7 -0
- local_ip_address-0.1.0/tests/test_ip_address.py +28 -0
- local_ip_address-0.1.0/tox.ini +205 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
[bumpversion]
|
|
2
|
+
current_version = 0.1.0
|
|
3
|
+
commit = True
|
|
4
|
+
tag = True
|
|
5
|
+
|
|
6
|
+
[bumpversion:file:README.rst]
|
|
7
|
+
|
|
8
|
+
[bumpversion:file:python/local_ip_address/__init__.py]
|
|
9
|
+
search = : str = "{current_version}"
|
|
10
|
+
replace = : str = "{new_version}"
|
|
11
|
+
|
|
12
|
+
[bumpversion:file:pyproject.toml]
|
|
13
|
+
search = version = "{current_version}"
|
|
14
|
+
replace = version = "{new_version}"
|
|
15
|
+
|
|
16
|
+
[bumpversion:file:Cargo.toml]
|
|
17
|
+
search = version = "{current_version}"
|
|
18
|
+
replace = version = "{new_version}"
|
|
19
|
+
|
|
20
|
+
[bumpversion:file:Cargo.lock]
|
|
21
|
+
search =
|
|
22
|
+
name = "py-local-ip-address"
|
|
23
|
+
version = "{current_version}"
|
|
24
|
+
replace =
|
|
25
|
+
name = "py-local-ip-address"
|
|
26
|
+
version = "{new_version}"
|
|
27
|
+
|
|
28
|
+
[bumpversion:file:repo_helper.yml]
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Create a report to help us improve
|
|
4
|
+
labels: bug
|
|
5
|
+
assignees: domdfcoding
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
<!-- Have you searched for similar issues? Before submitting this issue, please check the open issues and add a note before logging a new issue.
|
|
10
|
+
|
|
11
|
+
PLEASE USE THE TEMPLATE BELOW TO PROVIDE INFORMATION ABOUT THE ISSUE.
|
|
12
|
+
THE ISSUE WILL BE CLOSED IF INSUFFICIENT INFORMATION IS PROVIDED.
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
## Description
|
|
16
|
+
<!--Provide a brief description of the issue-->
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## Steps to Reproduce
|
|
20
|
+
<!--Please add a series of steps to reproduce the issue.
|
|
21
|
+
|
|
22
|
+
If possible, please include a small, self-contained reproduction.
|
|
23
|
+
-->
|
|
24
|
+
|
|
25
|
+
1.
|
|
26
|
+
2.
|
|
27
|
+
3.
|
|
28
|
+
|
|
29
|
+
## Actual result:
|
|
30
|
+
<!--Please add screenshots if needed and include the Python traceback if present-->
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
## Expected result:
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
## Reproduces how often:
|
|
37
|
+
<!--[Easily reproduced/Intermittent issue/No steps to reproduce]-->
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Version
|
|
41
|
+
|
|
42
|
+
* Operating System:
|
|
43
|
+
* Python:
|
|
44
|
+
* local-ip-address:
|
|
45
|
+
|
|
46
|
+
## Installation source
|
|
47
|
+
<!-- e.g. GitHub repository, GitHub Releases, PyPI/pip, Anaconda/conda -->
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
## Other Additional Information:
|
|
51
|
+
<!--Any additional information, related issues, extra QA steps, configuration or data that might be necessary to reproduce the issue-->
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Suggest an idea for this project
|
|
4
|
+
labels: "enhancement"
|
|
5
|
+
assignees: domdfcoding
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
<!-- Have you searched for similar issues? Someone may already be working on the feature you are suggesting. Before submitting this issue, please check the open issues and add a note before logging a new issue.
|
|
10
|
+
-->
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## Description
|
|
14
|
+
<!--Provide a clear and concise description of what the problem is and the improvement you are suggesting-->
|
|
15
|
+
|
|
16
|
+
<!--Please add screenshots if needed-->
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## Version
|
|
20
|
+
|
|
21
|
+
* Operating System:
|
|
22
|
+
* Python:
|
|
23
|
+
* local-ip-address:
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
## Other Additional Information:
|
|
27
|
+
<!--Any additional information, related issues, etc.-->
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
# stdlib
|
|
4
|
+
import os
|
|
5
|
+
import sys
|
|
6
|
+
|
|
7
|
+
# 3rd party
|
|
8
|
+
from github3 import GitHub
|
|
9
|
+
from github3.repos import Repository
|
|
10
|
+
from packaging.version import InvalidVersion, Version
|
|
11
|
+
|
|
12
|
+
latest_tag = os.environ["GITHUB_REF_NAME"]
|
|
13
|
+
|
|
14
|
+
try:
|
|
15
|
+
current_version = Version(latest_tag)
|
|
16
|
+
except InvalidVersion:
|
|
17
|
+
sys.exit()
|
|
18
|
+
|
|
19
|
+
gh: GitHub = GitHub(token=os.environ["GITHUB_TOKEN"])
|
|
20
|
+
repo: Repository = gh.repository(*os.environ["GITHUB_REPOSITORY"].split('/', 1))
|
|
21
|
+
|
|
22
|
+
for milestone in repo.milestones(state="open"):
|
|
23
|
+
try:
|
|
24
|
+
milestone_version = Version(milestone.title)
|
|
25
|
+
except InvalidVersion:
|
|
26
|
+
continue
|
|
27
|
+
if milestone_version == current_version:
|
|
28
|
+
sys.exit(not milestone.update(state="closed"))
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# This file is managed by 'repo_helper'. Don't edit it directly.
|
|
2
|
+
# Configuration for probot-stale - https://github.com/probot/stale
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Number of days of inactivity before an Issue or Pull Request becomes stale
|
|
6
|
+
daysUntilStale: 180
|
|
7
|
+
|
|
8
|
+
# Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
|
|
9
|
+
# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
|
|
10
|
+
daysUntilClose: false
|
|
11
|
+
|
|
12
|
+
# Only issues or pull requests with all of these labels are check if stale. Defaults to `[]` (disabled)
|
|
13
|
+
onlyLabels: []
|
|
14
|
+
|
|
15
|
+
# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
|
|
16
|
+
exemptLabels:
|
|
17
|
+
- pinned
|
|
18
|
+
- security
|
|
19
|
+
- "[Status] Maybe Later"
|
|
20
|
+
|
|
21
|
+
# Set to true to ignore issues in a project (defaults to false)
|
|
22
|
+
exemptProjects: false
|
|
23
|
+
|
|
24
|
+
# Set to true to ignore issues in a milestone (defaults to false)
|
|
25
|
+
exemptMilestones: false
|
|
26
|
+
|
|
27
|
+
# Set to true to ignore issues with an assignee (defaults to false)
|
|
28
|
+
exemptAssignees: false
|
|
29
|
+
|
|
30
|
+
# Label to use when marking as stale
|
|
31
|
+
staleLabel: stale
|
|
32
|
+
|
|
33
|
+
# Comment to post when marking as stale. Set to `false` to disable
|
|
34
|
+
markComment: false
|
|
35
|
+
# This issue has been automatically marked as stale because it has not had
|
|
36
|
+
# recent activity. It will be closed if no further activity occurs. Thank you
|
|
37
|
+
# for your contributions.
|
|
38
|
+
|
|
39
|
+
# Comment to post when removing the stale label.
|
|
40
|
+
# unmarkComment: >
|
|
41
|
+
# Your comment here.
|
|
42
|
+
|
|
43
|
+
# Comment to post when closing a stale Issue or Pull Request.
|
|
44
|
+
# closeComment: >
|
|
45
|
+
# Your comment here.
|
|
46
|
+
|
|
47
|
+
# Limit the number of actions per hour, from 1-30. Default is 30
|
|
48
|
+
limitPerRun: 30
|
|
49
|
+
|
|
50
|
+
# Limit to only `issues` or `pulls`
|
|
51
|
+
# only: issues
|
|
52
|
+
|
|
53
|
+
# Optionally, specify configuration settings that are specific to just 'issues' or 'pulls':
|
|
54
|
+
# pulls:
|
|
55
|
+
# daysUntilStale: 30
|
|
56
|
+
# markComment: >
|
|
57
|
+
# This pull request has been automatically marked as stale because it has not had
|
|
58
|
+
# recent activity. It will be closed if no further activity occurs. Thank you
|
|
59
|
+
# for your contributions.
|
|
60
|
+
|
|
61
|
+
# issues:
|
|
62
|
+
# exemptLabels:
|
|
63
|
+
# - confirmed
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
# This file is autogenerated by maturin v1.10.2
|
|
2
|
+
# To update, run
|
|
3
|
+
#
|
|
4
|
+
# maturin generate-ci github
|
|
5
|
+
#
|
|
6
|
+
name: CI
|
|
7
|
+
|
|
8
|
+
on:
|
|
9
|
+
push:
|
|
10
|
+
branches:
|
|
11
|
+
- master
|
|
12
|
+
tags:
|
|
13
|
+
- '*'
|
|
14
|
+
pull_request:
|
|
15
|
+
workflow_dispatch:
|
|
16
|
+
|
|
17
|
+
permissions:
|
|
18
|
+
contents: read
|
|
19
|
+
|
|
20
|
+
jobs:
|
|
21
|
+
linux:
|
|
22
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
23
|
+
strategy:
|
|
24
|
+
matrix:
|
|
25
|
+
platform:
|
|
26
|
+
- runner: ubuntu-22.04
|
|
27
|
+
target: x86_64
|
|
28
|
+
- runner: ubuntu-22.04
|
|
29
|
+
target: x86
|
|
30
|
+
- runner: ubuntu-22.04
|
|
31
|
+
target: aarch64
|
|
32
|
+
- runner: ubuntu-22.04
|
|
33
|
+
target: armv7
|
|
34
|
+
- runner: ubuntu-22.04
|
|
35
|
+
target: s390x
|
|
36
|
+
- runner: ubuntu-22.04
|
|
37
|
+
target: ppc64le
|
|
38
|
+
steps:
|
|
39
|
+
- uses: actions/checkout@v4
|
|
40
|
+
- uses: actions/setup-python@v5
|
|
41
|
+
with:
|
|
42
|
+
python-version: 3.x
|
|
43
|
+
- name: Build wheels
|
|
44
|
+
uses: PyO3/maturin-action@v1
|
|
45
|
+
with:
|
|
46
|
+
target: ${{ matrix.platform.target }}
|
|
47
|
+
args: --release --out dist --find-interpreter
|
|
48
|
+
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
49
|
+
manylinux: auto
|
|
50
|
+
- name: Upload wheels
|
|
51
|
+
uses: actions/upload-artifact@v4
|
|
52
|
+
with:
|
|
53
|
+
name: wheels-linux-${{ matrix.platform.target }}
|
|
54
|
+
path: dist
|
|
55
|
+
|
|
56
|
+
musllinux:
|
|
57
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
58
|
+
strategy:
|
|
59
|
+
matrix:
|
|
60
|
+
platform:
|
|
61
|
+
- runner: ubuntu-22.04
|
|
62
|
+
target: x86_64
|
|
63
|
+
- runner: ubuntu-22.04
|
|
64
|
+
target: x86
|
|
65
|
+
- runner: ubuntu-22.04
|
|
66
|
+
target: aarch64
|
|
67
|
+
- runner: ubuntu-22.04
|
|
68
|
+
target: armv7
|
|
69
|
+
steps:
|
|
70
|
+
- uses: actions/checkout@v4
|
|
71
|
+
- uses: actions/setup-python@v5
|
|
72
|
+
with:
|
|
73
|
+
python-version: 3.x
|
|
74
|
+
- name: Build wheels
|
|
75
|
+
uses: PyO3/maturin-action@v1
|
|
76
|
+
with:
|
|
77
|
+
target: ${{ matrix.platform.target }}
|
|
78
|
+
args: --release --out dist --find-interpreter
|
|
79
|
+
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
80
|
+
manylinux: musllinux_1_2
|
|
81
|
+
- name: Upload wheels
|
|
82
|
+
uses: actions/upload-artifact@v4
|
|
83
|
+
with:
|
|
84
|
+
name: wheels-musllinux-${{ matrix.platform.target }}
|
|
85
|
+
path: dist
|
|
86
|
+
|
|
87
|
+
windows:
|
|
88
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
89
|
+
strategy:
|
|
90
|
+
matrix:
|
|
91
|
+
platform:
|
|
92
|
+
- runner: windows-latest
|
|
93
|
+
target: x64
|
|
94
|
+
- runner: windows-latest
|
|
95
|
+
target: x86
|
|
96
|
+
steps:
|
|
97
|
+
- uses: actions/checkout@v4
|
|
98
|
+
- uses: actions/setup-python@v5
|
|
99
|
+
with:
|
|
100
|
+
python-version: 3.x
|
|
101
|
+
architecture: ${{ matrix.platform.target }}
|
|
102
|
+
- name: Build wheels
|
|
103
|
+
uses: PyO3/maturin-action@v1
|
|
104
|
+
with:
|
|
105
|
+
target: ${{ matrix.platform.target }}
|
|
106
|
+
args: --release --out dist --find-interpreter
|
|
107
|
+
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
108
|
+
- name: Upload wheels
|
|
109
|
+
uses: actions/upload-artifact@v4
|
|
110
|
+
with:
|
|
111
|
+
name: wheels-windows-${{ matrix.platform.target }}
|
|
112
|
+
path: dist
|
|
113
|
+
|
|
114
|
+
macos:
|
|
115
|
+
runs-on: ${{ matrix.platform.runner }}
|
|
116
|
+
strategy:
|
|
117
|
+
matrix:
|
|
118
|
+
platform:
|
|
119
|
+
- runner: macos-15-intel
|
|
120
|
+
target: x86_64
|
|
121
|
+
- runner: macos-14
|
|
122
|
+
target: aarch64
|
|
123
|
+
steps:
|
|
124
|
+
- uses: actions/checkout@v4
|
|
125
|
+
- uses: actions/setup-python@v5
|
|
126
|
+
with:
|
|
127
|
+
python-version: 3.x
|
|
128
|
+
- name: Build wheels
|
|
129
|
+
uses: PyO3/maturin-action@v1
|
|
130
|
+
with:
|
|
131
|
+
target: ${{ matrix.platform.target }}
|
|
132
|
+
args: --release --out dist --find-interpreter
|
|
133
|
+
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
|
134
|
+
- name: Upload wheels
|
|
135
|
+
uses: actions/upload-artifact@v4
|
|
136
|
+
with:
|
|
137
|
+
name: wheels-macos-${{ matrix.platform.target }}
|
|
138
|
+
path: dist
|
|
139
|
+
|
|
140
|
+
sdist:
|
|
141
|
+
runs-on: ubuntu-latest
|
|
142
|
+
steps:
|
|
143
|
+
- uses: actions/checkout@v4
|
|
144
|
+
- name: Build sdist
|
|
145
|
+
uses: PyO3/maturin-action@v1
|
|
146
|
+
with:
|
|
147
|
+
command: sdist
|
|
148
|
+
args: --out dist
|
|
149
|
+
- name: Upload sdist
|
|
150
|
+
uses: actions/upload-artifact@v4
|
|
151
|
+
with:
|
|
152
|
+
name: wheels-sdist
|
|
153
|
+
path: dist
|
|
154
|
+
|
|
155
|
+
release:
|
|
156
|
+
name: Release
|
|
157
|
+
runs-on: ubuntu-latest
|
|
158
|
+
if: ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
|
|
159
|
+
needs: [linux, musllinux, windows, macos, sdist]
|
|
160
|
+
permissions:
|
|
161
|
+
# Use to sign the release artifacts
|
|
162
|
+
id-token: write
|
|
163
|
+
# Used to upload release artifacts
|
|
164
|
+
contents: write
|
|
165
|
+
# Used to generate artifact attestation
|
|
166
|
+
attestations: write
|
|
167
|
+
steps:
|
|
168
|
+
- name: Checkout 🛎️
|
|
169
|
+
uses: "actions/checkout@v4"
|
|
170
|
+
if: startsWith(github.ref, 'refs/tags/')
|
|
171
|
+
|
|
172
|
+
- name: Setup Python 🐍
|
|
173
|
+
uses: "actions/setup-python@v5"
|
|
174
|
+
if: startsWith(github.ref, 'refs/tags/')
|
|
175
|
+
with:
|
|
176
|
+
python-version: 3.8
|
|
177
|
+
|
|
178
|
+
- name: Install dependencies 🔧
|
|
179
|
+
if: startsWith(github.ref, 'refs/tags/')
|
|
180
|
+
run: |
|
|
181
|
+
python -m pip install --upgrade pip setuptools wheel
|
|
182
|
+
python -m pip install --upgrade tox~=3.0
|
|
183
|
+
|
|
184
|
+
- uses: actions/download-artifact@v4
|
|
185
|
+
- name: Generate artifact attestation
|
|
186
|
+
uses: actions/attest-build-provenance@v2
|
|
187
|
+
with:
|
|
188
|
+
subject-path: 'wheels-*/*'
|
|
189
|
+
|
|
190
|
+
- name: Upload distribution to PyPI 🚀
|
|
191
|
+
if: startsWith(github.ref, 'refs/tags/')
|
|
192
|
+
uses: PyO3/maturin-action@v1
|
|
193
|
+
env:
|
|
194
|
+
MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
|
|
195
|
+
with:
|
|
196
|
+
command: upload
|
|
197
|
+
args: --non-interactive --skip-existing wheels-*/*
|
|
198
|
+
|
|
199
|
+
- name: Close milestone 🚪
|
|
200
|
+
if: startsWith(github.ref, 'refs/tags/')
|
|
201
|
+
run: |
|
|
202
|
+
python -m pip install --upgrade github3.py packaging
|
|
203
|
+
python .github/milestones.py
|
|
204
|
+
env:
|
|
205
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# This file is managed by 'repo_helper'. Don't edit it directly.
|
|
2
|
+
---
|
|
3
|
+
name: Flake8
|
|
4
|
+
|
|
5
|
+
on:
|
|
6
|
+
push:
|
|
7
|
+
branches-ignore:
|
|
8
|
+
- 'repo-helper-update'
|
|
9
|
+
- 'pre-commit-ci-update-config'
|
|
10
|
+
- 'imgbot'
|
|
11
|
+
pull_request:
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
Run:
|
|
15
|
+
name: "Flake8"
|
|
16
|
+
permissions:
|
|
17
|
+
contents: read
|
|
18
|
+
runs-on: "ubuntu-22.04"
|
|
19
|
+
|
|
20
|
+
steps:
|
|
21
|
+
- name: Checkout 🛎️
|
|
22
|
+
uses: "actions/checkout@v6"
|
|
23
|
+
|
|
24
|
+
- name: Check for changed files
|
|
25
|
+
uses: dorny/paths-filter@v4
|
|
26
|
+
id: changes
|
|
27
|
+
with:
|
|
28
|
+
list-files: "json"
|
|
29
|
+
filters: |
|
|
30
|
+
code:
|
|
31
|
+
- '!(doc-source/**|CONTRIBUTING.rst|.imgbotconfig|.pre-commit-config.yaml|.pylintrc|.readthedocs.yml)'
|
|
32
|
+
|
|
33
|
+
- name: Setup Python 🐍
|
|
34
|
+
if: steps.changes.outputs.code == 'true'
|
|
35
|
+
uses: "actions/setup-python@v6"
|
|
36
|
+
with:
|
|
37
|
+
python-version: "3.9"
|
|
38
|
+
|
|
39
|
+
- name: Install dependencies 🔧
|
|
40
|
+
if: steps.changes.outputs.code == 'true'
|
|
41
|
+
run: |
|
|
42
|
+
python -VV
|
|
43
|
+
python -m site
|
|
44
|
+
python -m pip install --upgrade pip setuptools wheel
|
|
45
|
+
python -m pip install tox~=3.0
|
|
46
|
+
|
|
47
|
+
- name: "Run Flake8"
|
|
48
|
+
if: steps.changes.outputs.code == 'true'
|
|
49
|
+
run: "python -m tox -e lint -s false -- --format github"
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# This file is managed by 'repo_helper'. Don't edit it directly.
|
|
2
|
+
---
|
|
3
|
+
name: mypy
|
|
4
|
+
|
|
5
|
+
on:
|
|
6
|
+
push:
|
|
7
|
+
branches-ignore:
|
|
8
|
+
- 'repo-helper-update'
|
|
9
|
+
- 'pre-commit-ci-update-config'
|
|
10
|
+
- 'imgbot'
|
|
11
|
+
pull_request:
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
Run:
|
|
15
|
+
permissions:
|
|
16
|
+
contents: read
|
|
17
|
+
name: "mypy / ${{ matrix.os }}"
|
|
18
|
+
runs-on: ${{ matrix.os }}
|
|
19
|
+
|
|
20
|
+
strategy:
|
|
21
|
+
matrix:
|
|
22
|
+
os: ['ubuntu-22.04', 'windows-2022']
|
|
23
|
+
fail-fast: false
|
|
24
|
+
|
|
25
|
+
steps:
|
|
26
|
+
- name: Checkout 🛎️
|
|
27
|
+
uses: "actions/checkout@v6"
|
|
28
|
+
|
|
29
|
+
- name: Check for changed files
|
|
30
|
+
uses: dorny/paths-filter@v4
|
|
31
|
+
id: changes
|
|
32
|
+
with:
|
|
33
|
+
list-files: "json"
|
|
34
|
+
filters: |
|
|
35
|
+
code:
|
|
36
|
+
- '!(doc-source/**|CONTRIBUTING.rst|.imgbotconfig|.pre-commit-config.yaml|.pylintrc|.readthedocs.yml)'
|
|
37
|
+
|
|
38
|
+
- name: Setup Python 🐍
|
|
39
|
+
if: steps.changes.outputs.code == 'true'
|
|
40
|
+
uses: "actions/setup-python@v6"
|
|
41
|
+
with:
|
|
42
|
+
python-version: "3.9"
|
|
43
|
+
|
|
44
|
+
- name: Install dependencies 🔧
|
|
45
|
+
run: |
|
|
46
|
+
python -VV
|
|
47
|
+
python -m site
|
|
48
|
+
python -m pip install --upgrade pip setuptools wheel
|
|
49
|
+
python -m pip install --upgrade tox~=3.0 virtualenv!=20.16.0
|
|
50
|
+
|
|
51
|
+
- name: "Run mypy"
|
|
52
|
+
if: steps.changes.outputs.code == 'true'
|
|
53
|
+
run: "python -m tox -e mypy -s false"
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file is managed by 'repo_helper'. Don't edit it directly.
|
|
2
|
+
---
|
|
3
|
+
|
|
4
|
+
name: "GitHub Releases"
|
|
5
|
+
on:
|
|
6
|
+
schedule:
|
|
7
|
+
- cron: 0 12 * * *
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
Run:
|
|
11
|
+
permissions:
|
|
12
|
+
contents: write
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
steps:
|
|
15
|
+
- uses: domdfcoding/octocheese@master
|
|
16
|
+
with:
|
|
17
|
+
pypi_name: "local-ip-address"
|
|
18
|
+
env:
|
|
19
|
+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
|
20
|
+
if: startsWith(github.ref, 'refs/tags/') != true
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# This file is managed by 'repo_helper'. Don't edit it directly.
|
|
2
|
+
---
|
|
3
|
+
name: Windows
|
|
4
|
+
|
|
5
|
+
on:
|
|
6
|
+
push:
|
|
7
|
+
branches-ignore:
|
|
8
|
+
- 'repo-helper-update'
|
|
9
|
+
- 'pre-commit-ci-update-config'
|
|
10
|
+
- 'imgbot'
|
|
11
|
+
|
|
12
|
+
pull_request:
|
|
13
|
+
|
|
14
|
+
jobs:
|
|
15
|
+
tests:
|
|
16
|
+
permissions:
|
|
17
|
+
actions: write
|
|
18
|
+
contents: read
|
|
19
|
+
name: "windows-2022 / Python ${{ matrix.config.python-version }}"
|
|
20
|
+
runs-on: "windows-2022"
|
|
21
|
+
continue-on-error: ${{ matrix.config.experimental }}
|
|
22
|
+
env:
|
|
23
|
+
USING_COVERAGE: '3.8,3.9,3.10,3.11,3.12,3.13'
|
|
24
|
+
|
|
25
|
+
strategy:
|
|
26
|
+
fail-fast: False
|
|
27
|
+
matrix:
|
|
28
|
+
config:
|
|
29
|
+
- {python-version: "3.8", testenvs: "py38,build", experimental: False}
|
|
30
|
+
- {python-version: "3.9", testenvs: "py39,build", experimental: False}
|
|
31
|
+
- {python-version: "3.10", testenvs: "py310,build", experimental: False}
|
|
32
|
+
- {python-version: "3.11", testenvs: "py311,build", experimental: False}
|
|
33
|
+
- {python-version: "3.12", testenvs: "py312,build", experimental: False}
|
|
34
|
+
- {python-version: "3.13", testenvs: "py313,build", experimental: False}
|
|
35
|
+
|
|
36
|
+
steps:
|
|
37
|
+
- name: Checkout 🛎️
|
|
38
|
+
uses: "actions/checkout@v6"
|
|
39
|
+
|
|
40
|
+
- name: Check for changed files
|
|
41
|
+
if: startsWith(github.ref, 'refs/tags/') != true
|
|
42
|
+
uses: dorny/paths-filter@v4
|
|
43
|
+
id: changes
|
|
44
|
+
with:
|
|
45
|
+
list-files: "json"
|
|
46
|
+
filters: |
|
|
47
|
+
code:
|
|
48
|
+
- '!(doc-source/**|CONTRIBUTING.rst|.imgbotconfig|.pre-commit-config.yaml|.pylintrc|.readthedocs.yml)'
|
|
49
|
+
|
|
50
|
+
- name: Setup Python 🐍
|
|
51
|
+
id: setup-python
|
|
52
|
+
if: ${{ steps.changes.outputs.code == 'true' || steps.changes.outcome == 'skipped' }}
|
|
53
|
+
uses: "actions/setup-python@v6"
|
|
54
|
+
with:
|
|
55
|
+
python-version: "${{ matrix.config.python-version }}"
|
|
56
|
+
|
|
57
|
+
- name: Install dependencies 🔧
|
|
58
|
+
if: steps.setup-python.outcome == 'success'
|
|
59
|
+
run: |
|
|
60
|
+
python -VV
|
|
61
|
+
python -m site
|
|
62
|
+
python -m pip install --upgrade pip setuptools wheel
|
|
63
|
+
python -m pip install --upgrade tox~=3.0 virtualenv!=20.16.0
|
|
64
|
+
|
|
65
|
+
- name: "Run Tests for Python ${{ matrix.config.python-version }}"
|
|
66
|
+
if: steps.setup-python.outcome == 'success'
|
|
67
|
+
run: python -m tox -e "${{ matrix.config.testenvs }}" -s false
|
|
68
|
+
|
|
69
|
+
- name: "Upload Coverage 🚀"
|
|
70
|
+
uses: actions/upload-artifact@v4
|
|
71
|
+
if: ${{ always() && steps.setup-python.outcome == 'success' }}
|
|
72
|
+
with:
|
|
73
|
+
name: "coverage-${{ matrix.config.python-version }}"
|
|
74
|
+
path: .coverage
|
|
75
|
+
include-hidden-files: true
|