pyphenix 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.
- pyphenix-0.1.0/.copier-answers.yml +19 -0
- pyphenix-0.1.0/.dir-locals.el +9 -0
- pyphenix-0.1.0/.github/ISSUE_TEMPLATE/bug_report.yml +87 -0
- pyphenix-0.1.0/.github/ISSUE_TEMPLATE/documentation.md +11 -0
- pyphenix-0.1.0/.github/ISSUE_TEMPLATE/feature_request.md +27 -0
- pyphenix-0.1.0/.github/ISSUE_TEMPLATE/task.md +11 -0
- pyphenix-0.1.0/.github/PULL_REQUEST_TEMPLATE.md +12 -0
- pyphenix-0.1.0/.github/dependabot.yml +25 -0
- pyphenix-0.1.0/.github/workflows/test_and_deploy.yml +86 -0
- pyphenix-0.1.0/.gitignore +90 -0
- pyphenix-0.1.0/.napari-hub/DESCRIPTION.md +9 -0
- pyphenix-0.1.0/.napari-hub/config.yml +9 -0
- pyphenix-0.1.0/.ob-jupyter/2e4964c2a0be550e39d5fa941d099a1219e57327.png +0 -0
- pyphenix-0.1.0/.ob-jupyter/aa17d8b12f4cd24f7f7f69e519ac531647da254a.png +0 -0
- pyphenix-0.1.0/.ob-jupyter/b4172680c71629c5c38bfd6ef19cc07fb6cbe75b.png +0 -0
- pyphenix-0.1.0/.ob-jupyter/f2d6210fb5988f310c53e30e49a1ab135fd918b8.png +0 -0
- pyphenix-0.1.0/.pre-commit-config.yaml +27 -0
- pyphenix-0.1.0/.python-version +1 -0
- pyphenix-0.1.0/LICENSE +675 -0
- pyphenix-0.1.0/MANIFEST.in +5 -0
- pyphenix-0.1.0/PKG-INFO +789 -0
- pyphenix-0.1.0/README.md +79 -0
- pyphenix-0.1.0/README.org +5496 -0
- pyphenix-0.1.0/pyproject.toml +131 -0
- pyphenix-0.1.0/setup.cfg +4 -0
- pyphenix-0.1.0/src/pyphenix/__init__.py +15 -0
- pyphenix-0.1.0/src/pyphenix/_reader.py +776 -0
- pyphenix-0.1.0/src/pyphenix/_version.py +34 -0
- pyphenix-0.1.0/src/pyphenix/_widget.py +526 -0
- pyphenix-0.1.0/src/pyphenix/_writer.py +65 -0
- pyphenix-0.1.0/src/pyphenix/napari.yaml +22 -0
- pyphenix-0.1.0/src/pyphenix.egg-info/PKG-INFO +789 -0
- pyphenix-0.1.0/src/pyphenix.egg-info/SOURCES.txt +42 -0
- pyphenix-0.1.0/src/pyphenix.egg-info/dependency_links.txt +1 -0
- pyphenix-0.1.0/src/pyphenix.egg-info/entry_points.txt +2 -0
- pyphenix-0.1.0/src/pyphenix.egg-info/requires.txt +7 -0
- pyphenix-0.1.0/src/pyphenix.egg-info/top_level.txt +1 -0
- pyphenix-0.1.0/tests/__init__.py +0 -0
- pyphenix-0.1.0/tests/conftest.py +51 -0
- pyphenix-0.1.0/tests/test_reader.py +236 -0
- pyphenix-0.1.0/tests/test_widget.py +217 -0
- pyphenix-0.1.0/tests/test_writer.py +7 -0
- pyphenix-0.1.0/tox.ini +33 -0
- pyphenix-0.1.0/uv.lock +4448 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Changes here will be overwritten by Copier; NEVER EDIT MANUALLY
|
|
2
|
+
_commit: v2.0.1
|
|
3
|
+
_src_path: https://github.com/napari/napari-plugin-template
|
|
4
|
+
display_name: PyPhenix
|
|
5
|
+
email: ferrin@calicolabs.com
|
|
6
|
+
full_name: Max Ferrin
|
|
7
|
+
github_repository_url: https://github.com/ferrinm/pyphenix
|
|
8
|
+
github_username_or_organization: ferrinm
|
|
9
|
+
include_reader_plugin: true
|
|
10
|
+
include_sample_data_plugin: false
|
|
11
|
+
include_widget_plugin: true
|
|
12
|
+
include_writer_plugin: true
|
|
13
|
+
install_dependabot: true
|
|
14
|
+
install_precommit: true
|
|
15
|
+
license: GNU GPL v3.0
|
|
16
|
+
module_name: pyphenix
|
|
17
|
+
plugin_name: pyphenix
|
|
18
|
+
short_description: A data loader and widget to visualize high-dimensional data collected
|
|
19
|
+
on the Opera Phenix
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
;; Set the Jupyter kernel for all jupyter-python blocks in this project
|
|
2
|
+
((jupyter-python-mode . ((org-babel-default-header-args :kernel . "s1_pyphenix"))))
|
|
3
|
+
|
|
4
|
+
;; tangle source code upon saving
|
|
5
|
+
(org-mode . ((eval . (add-hook 'after-save-hook
|
|
6
|
+
(lambda ()
|
|
7
|
+
(when (derived-mode-p 'org-mode)
|
|
8
|
+
(org-babel-tangle)))
|
|
9
|
+
nil t)))))
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
name: "\U0001F41B Bug Report"
|
|
2
|
+
description: Report a bug encountered while using pyphenix
|
|
3
|
+
labels:
|
|
4
|
+
- "bug"
|
|
5
|
+
|
|
6
|
+
body:
|
|
7
|
+
- type: markdown
|
|
8
|
+
attributes:
|
|
9
|
+
value: |
|
|
10
|
+
Thanks for taking the time to report this issue! 🙏🏼
|
|
11
|
+
|
|
12
|
+
Please fill out the sections below to help us reproduce the problem.
|
|
13
|
+
|
|
14
|
+
- type: textarea
|
|
15
|
+
id: bug-report
|
|
16
|
+
attributes:
|
|
17
|
+
label: "\U0001F41B Bug Report"
|
|
18
|
+
description: "Please provide a clear and concise description of the bug."
|
|
19
|
+
placeholder: "What went wrong? What did you expect to happen?"
|
|
20
|
+
validations:
|
|
21
|
+
required: true
|
|
22
|
+
|
|
23
|
+
- type: textarea
|
|
24
|
+
id: steps-to-reproduce
|
|
25
|
+
attributes:
|
|
26
|
+
label: "\U0001F4A1 Steps to Reproduce"
|
|
27
|
+
description: "Please provide a minimal code snippet or list of steps to reproduce the bug."
|
|
28
|
+
placeholder: |
|
|
29
|
+
1. Go to '...'
|
|
30
|
+
2. Click on '....'
|
|
31
|
+
3. Scroll down to '....'
|
|
32
|
+
4. See error
|
|
33
|
+
validations:
|
|
34
|
+
required: true
|
|
35
|
+
|
|
36
|
+
- type: textarea
|
|
37
|
+
id: expected-behavior
|
|
38
|
+
attributes:
|
|
39
|
+
label: "\U0001F4A1 Expected Behavior"
|
|
40
|
+
description: "Please provide a clear and concise description of what you expected to happen."
|
|
41
|
+
placeholder: "What did you expect to happen?"
|
|
42
|
+
|
|
43
|
+
- type: textarea
|
|
44
|
+
id: environment
|
|
45
|
+
attributes:
|
|
46
|
+
label: "\U0001F30E Environment"
|
|
47
|
+
description: |
|
|
48
|
+
Please provide detailed information regarding your environment. Please paste the output of `napari --info` here or copy the information from the "napari info" dialog in the napari Help menu.
|
|
49
|
+
|
|
50
|
+
Otherwise, please provide information regarding your operating system (OS), Python version, napari version, Qt backend and version, Qt platform, method of installation, and any other relevant information related to your environment.
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
placeholder: |
|
|
54
|
+
napari: 0.5.0
|
|
55
|
+
Platform: macOS-13.2.1-arm64-arm-64bit
|
|
56
|
+
System: MacOS 13.2.1
|
|
57
|
+
Python: 3.11.4 (main, Aug 7 2023, 20:34:01) [Clang 14.0.3 (clang-1403.0.22.14.1)]
|
|
58
|
+
Qt: 5.15.10
|
|
59
|
+
PyQt5: 5.15.10
|
|
60
|
+
NumPy: 1.25.1
|
|
61
|
+
SciPy: 1.11.1
|
|
62
|
+
Dask: 2023.7.1
|
|
63
|
+
VisPy: 0.13.0
|
|
64
|
+
magicgui: 0.7.2
|
|
65
|
+
superqt: 0.5.4
|
|
66
|
+
in-n-out: 0.1.8
|
|
67
|
+
app-model: 0.2.0
|
|
68
|
+
npe2: 0.7.2
|
|
69
|
+
|
|
70
|
+
OpenGL:
|
|
71
|
+
- GL version: 2.1 Metal - 83
|
|
72
|
+
- MAX_TEXTURE_SIZE: 16384
|
|
73
|
+
|
|
74
|
+
Screens:
|
|
75
|
+
- screen 1: resolution 1512x982, scale 2.0
|
|
76
|
+
|
|
77
|
+
Settings path:
|
|
78
|
+
- /Users/.../napari/napari_5c6993c40c104085444cfc0c77fa392cb5cb8f56/settings.yaml
|
|
79
|
+
validations:
|
|
80
|
+
required: true
|
|
81
|
+
|
|
82
|
+
- type: textarea
|
|
83
|
+
id: additional-context
|
|
84
|
+
attributes:
|
|
85
|
+
label: "\U0001F4A1 Additional Context"
|
|
86
|
+
description: "Please provide any additional information or context regarding the problem here."
|
|
87
|
+
placeholder: "Add any other context about the problem here."
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "\U0001F4DA Documentation"
|
|
3
|
+
about: Report an issue with pyphenix documentation
|
|
4
|
+
title: ''
|
|
5
|
+
labels: documentation
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## 📚 Documentation
|
|
11
|
+
<!-- A clear and concise description of the documentation that needs to be created/updated -->
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "\U0001F680 Feature Request"
|
|
3
|
+
about: Submit a proposal/request for a new pyphenix feature
|
|
4
|
+
title: ''
|
|
5
|
+
labels: feature
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## 🚀 Feature
|
|
11
|
+
<!-- A clear and concise description of the feature proposal -->
|
|
12
|
+
|
|
13
|
+
## Motivation
|
|
14
|
+
|
|
15
|
+
<!-- Please outline the motivation for the proposal. Is your feature request related to a problem? e.g., I'm always frustrated when [...]. If this is related to another GitHub issue, please link here too -->
|
|
16
|
+
|
|
17
|
+
## Pitch
|
|
18
|
+
|
|
19
|
+
<!-- A clear and concise description of what you want to happen. -->
|
|
20
|
+
|
|
21
|
+
## Alternatives
|
|
22
|
+
|
|
23
|
+
<!-- A clear and concise description of any alternative solutions or features you've considered, if any. -->
|
|
24
|
+
|
|
25
|
+
## Additional context
|
|
26
|
+
|
|
27
|
+
<!-- Add any other context or screenshots about the feature request here. -->
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# References and relevant issues
|
|
2
|
+
<!-- What relevant resources were used in the creation of this PR?
|
|
3
|
+
If this PR addresses an existing issue on the repo,
|
|
4
|
+
please link to that issue here as "Closes #(issue-number)"
|
|
5
|
+
If this PR depends on another PR/issue (even in another repo),
|
|
6
|
+
please link to it with "Depends on #PR-number" or "Depends on org/repo#PR-number"
|
|
7
|
+
-->
|
|
8
|
+
|
|
9
|
+
# Description
|
|
10
|
+
<!-- What does this pull request (PR) do? Is it a new feature, a bug fix,
|
|
11
|
+
an improvement, or something else? Why is it necessary? If relevant, please add
|
|
12
|
+
a screenshot or a screen capture: "An image is worth a thousand words!" -->
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Dependabot configuration
|
|
2
|
+
# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates#enabling-github-dependabot-version-updates
|
|
3
|
+
# https://til.simonwillison.net/github/dependabot-python-setup
|
|
4
|
+
|
|
5
|
+
version: 2
|
|
6
|
+
updates:
|
|
7
|
+
# Monitor pip dependencies
|
|
8
|
+
- package-ecosystem: pip
|
|
9
|
+
directory: "/"
|
|
10
|
+
schedule:
|
|
11
|
+
interval: monthly
|
|
12
|
+
groups:
|
|
13
|
+
python-packages:
|
|
14
|
+
patterns:
|
|
15
|
+
- "*"
|
|
16
|
+
|
|
17
|
+
# Monitor GitHub Actions and propose updates for security and maintenance
|
|
18
|
+
- package-ecosystem: github-actions
|
|
19
|
+
directory: "/"
|
|
20
|
+
schedule:
|
|
21
|
+
interval: monthly
|
|
22
|
+
groups:
|
|
23
|
+
github-actions:
|
|
24
|
+
patterns:
|
|
25
|
+
- "*"
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# This workflows will upload a Python Package using Twine when a release is created
|
|
2
|
+
# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
|
|
3
|
+
name: tests
|
|
4
|
+
|
|
5
|
+
on:
|
|
6
|
+
push:
|
|
7
|
+
branches:
|
|
8
|
+
- main
|
|
9
|
+
- npe2
|
|
10
|
+
tags:
|
|
11
|
+
- "v*" # Push events to matching v*, i.e. v1.0, v20.15.10
|
|
12
|
+
pull_request:
|
|
13
|
+
branches:
|
|
14
|
+
- main
|
|
15
|
+
- npe2
|
|
16
|
+
workflow_dispatch:
|
|
17
|
+
|
|
18
|
+
concurrency:
|
|
19
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
20
|
+
cancel-in-progress: true
|
|
21
|
+
|
|
22
|
+
jobs:
|
|
23
|
+
test:
|
|
24
|
+
name: ${{ matrix.platform }} py${{ matrix.python-version }}
|
|
25
|
+
runs-on: ${{ matrix.platform }}
|
|
26
|
+
timeout-minutes: 30
|
|
27
|
+
strategy:
|
|
28
|
+
fail-fast: false
|
|
29
|
+
matrix:
|
|
30
|
+
platform: [ubuntu-latest, windows-latest, macos-latest]
|
|
31
|
+
python-version: ["3.10", "3.11", "3.12", "3.13"]
|
|
32
|
+
|
|
33
|
+
steps:
|
|
34
|
+
- uses: actions/checkout@v6
|
|
35
|
+
|
|
36
|
+
- name: Setup python
|
|
37
|
+
uses: astral-sh/setup-uv@v7
|
|
38
|
+
with:
|
|
39
|
+
python-version: ${{ matrix.python-version }}
|
|
40
|
+
activate-environment: "true"
|
|
41
|
+
- name: Install Windows OpenGL
|
|
42
|
+
uses: pyvista/setup-headless-display-action@v4.2
|
|
43
|
+
with:
|
|
44
|
+
qt: true
|
|
45
|
+
wm: herbstluftwm
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
# note: if you need dependencies from conda, considering using
|
|
49
|
+
# setup-miniconda: https://github.com/conda-incubator/setup-miniconda
|
|
50
|
+
# and
|
|
51
|
+
# tox-conda: https://github.com/tox-dev/tox-conda
|
|
52
|
+
# this runs the platform-specific tests declared in tox.ini
|
|
53
|
+
- name: Test with tox
|
|
54
|
+
run: uvx --with tox-gh-actions tox
|
|
55
|
+
env:
|
|
56
|
+
PLATFORM: ${{ matrix.platform }}
|
|
57
|
+
|
|
58
|
+
- name: Coverage
|
|
59
|
+
uses: codecov/codecov-action@v5
|
|
60
|
+
|
|
61
|
+
build-and-inspect-package:
|
|
62
|
+
name: Build & inspect package.
|
|
63
|
+
runs-on: ubuntu-latest
|
|
64
|
+
|
|
65
|
+
steps:
|
|
66
|
+
- uses: actions/checkout@v6
|
|
67
|
+
- uses: hynek/build-and-inspect-python-package@v2
|
|
68
|
+
|
|
69
|
+
deploy:
|
|
70
|
+
# this will run when you have tagged a commit, starting with "v*"
|
|
71
|
+
# and requires that you have put your twine API key in your
|
|
72
|
+
# github secrets (see readme for details)
|
|
73
|
+
needs: [test, build-and-inspect-package]
|
|
74
|
+
runs-on: ubuntu-latest
|
|
75
|
+
if: contains(github.ref, 'tags')
|
|
76
|
+
environment: pypi
|
|
77
|
+
permissions:
|
|
78
|
+
id-token: write
|
|
79
|
+
steps:
|
|
80
|
+
- name: Download built artifact to dist/
|
|
81
|
+
uses: actions/download-artifact@v7
|
|
82
|
+
with:
|
|
83
|
+
name: Packages
|
|
84
|
+
path: dist
|
|
85
|
+
- name: Publish to PyPI
|
|
86
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
|
|
6
|
+
# C extensions
|
|
7
|
+
*.so
|
|
8
|
+
|
|
9
|
+
# Distribution / packaging
|
|
10
|
+
.Python
|
|
11
|
+
env/
|
|
12
|
+
build/
|
|
13
|
+
develop-eggs/
|
|
14
|
+
dist/
|
|
15
|
+
downloads/
|
|
16
|
+
eggs/
|
|
17
|
+
.eggs/
|
|
18
|
+
lib/
|
|
19
|
+
lib64/
|
|
20
|
+
parts/
|
|
21
|
+
sdist/
|
|
22
|
+
var/
|
|
23
|
+
*.egg-info/
|
|
24
|
+
.installed.cfg
|
|
25
|
+
*.egg
|
|
26
|
+
|
|
27
|
+
# PyInstaller
|
|
28
|
+
# Usually these files are written by a python script from a template
|
|
29
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
30
|
+
*.manifest
|
|
31
|
+
*.spec
|
|
32
|
+
|
|
33
|
+
# Installer logs
|
|
34
|
+
pip-log.txt
|
|
35
|
+
pip-delete-this-directory.txt
|
|
36
|
+
|
|
37
|
+
# Unit test / coverage reports
|
|
38
|
+
htmlcov/
|
|
39
|
+
.tox/
|
|
40
|
+
.coverage
|
|
41
|
+
.coverage.*
|
|
42
|
+
.cache
|
|
43
|
+
nosetests.xml
|
|
44
|
+
coverage.xml
|
|
45
|
+
*,cover
|
|
46
|
+
.hypothesis/
|
|
47
|
+
.napari_cache
|
|
48
|
+
|
|
49
|
+
# Translations
|
|
50
|
+
*.mo
|
|
51
|
+
*.pot
|
|
52
|
+
|
|
53
|
+
# Django stuff:
|
|
54
|
+
*.log
|
|
55
|
+
local_settings.py
|
|
56
|
+
|
|
57
|
+
# Flask instance folder
|
|
58
|
+
instance/
|
|
59
|
+
|
|
60
|
+
# Sphinx documentation
|
|
61
|
+
docs/_build/
|
|
62
|
+
|
|
63
|
+
# MkDocs documentation
|
|
64
|
+
/site/
|
|
65
|
+
|
|
66
|
+
# PyBuilder
|
|
67
|
+
target/
|
|
68
|
+
|
|
69
|
+
# Pycharm and VSCode
|
|
70
|
+
.idea/
|
|
71
|
+
venv/
|
|
72
|
+
.vscode/
|
|
73
|
+
|
|
74
|
+
# IPython Notebook
|
|
75
|
+
.ipynb_checkpoints
|
|
76
|
+
|
|
77
|
+
# pyenv
|
|
78
|
+
.python-version
|
|
79
|
+
|
|
80
|
+
# OS
|
|
81
|
+
.DS_Store
|
|
82
|
+
|
|
83
|
+
# written by setuptools_scm
|
|
84
|
+
**/_version.py
|
|
85
|
+
|
|
86
|
+
# emacs files
|
|
87
|
+
*.el
|
|
88
|
+
|
|
89
|
+
# personal testing emacs org-mode file
|
|
90
|
+
README.org
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<!-- This file is a placeholder for customizing description of your plugin
|
|
2
|
+
on the napari hub if you wish. The readme file will be used by default if
|
|
3
|
+
you wish not to do any customization for the napari hub listing.
|
|
4
|
+
|
|
5
|
+
If you need some help writing a good description, check out our
|
|
6
|
+
[guide](https://github.com/chanzuckerberg/napari-hub/wiki/Writing-the-Perfect-Description-for-your-Plugin)
|
|
7
|
+
-->
|
|
8
|
+
|
|
9
|
+
The developer has not yet provided a napari-hub specific description.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# You may use this file to customize how your plugin page appears
|
|
2
|
+
# on the napari hub: https://www.napari-hub.org/
|
|
3
|
+
# See their wiki for details https://github.com/chanzuckerberg/napari-hub/wiki
|
|
4
|
+
|
|
5
|
+
# Please note that this file should only be used IN ADDITION to entering
|
|
6
|
+
# metadata fields (such as summary, description, authors, and various URLS)
|
|
7
|
+
# in your standard python package metadata (e.g. setup.cfg, setup.py, or
|
|
8
|
+
# pyproject.toml), when you would like those fields to be displayed
|
|
9
|
+
# differently on the hub than in the napari application.
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
+
rev: v4.5.0
|
|
4
|
+
hooks:
|
|
5
|
+
- id: check-docstring-first
|
|
6
|
+
- id: end-of-file-fixer
|
|
7
|
+
- id: trailing-whitespace
|
|
8
|
+
exclude: ^\.napari-hub/.*
|
|
9
|
+
- id: check-yaml # checks for correct yaml syntax for github actions ex.
|
|
10
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
11
|
+
rev: v0.3.4
|
|
12
|
+
hooks:
|
|
13
|
+
- id: ruff
|
|
14
|
+
- repo: https://github.com/psf/black
|
|
15
|
+
rev: 24.3.0
|
|
16
|
+
hooks:
|
|
17
|
+
- id: black
|
|
18
|
+
- repo: https://github.com/tlambert03/napari-plugin-checks
|
|
19
|
+
rev: v0.3.0
|
|
20
|
+
hooks:
|
|
21
|
+
- id: napari-plugin-checks
|
|
22
|
+
# https://mypy.readthedocs.io/en/stable/
|
|
23
|
+
# you may wish to add this as well!
|
|
24
|
+
# - repo: https://github.com/pre-commit/mirrors-mypy
|
|
25
|
+
# rev: v1.9.0
|
|
26
|
+
# hooks:
|
|
27
|
+
# - id: mypy
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.13
|