4 Commits
Author SHA1 Message Date
mdaleo404 7280fc353d Update poetry deps, tool version bump 2026-10-01 10:28:20 +01:00
mdaleo404 e75573cffb Add support section in README 2026-09-29 09:55:43 +01:00
mdaleo404 24de55cb53 Migrate project metadata to Poetry 2 format 2026-09-27 15:42:34 +01:00
mdaleo404 e7790fec44 Update pre-commit config 2026-09-18 10:35:04 +01:00
5 changed files with 57 additions and 28 deletions

No files matched your search

+1 -1
View File
@@ -24,7 +24,7 @@ jobs:
- name: Install Poetry
run: |
pip install poetry
pip install "poetry>=2,<3"
poetry self add poetry-plugin-export
- name: Install pip-audit
+7 -1
View File
@@ -3,19 +3,25 @@ repos:
rev: 1.9.4
hooks:
- id: bandit
name: Security Scan with Bandit
files: ^src/mirro/
args: ["-lll", "-iii", "-s", "B110,B112"]
- repo: https://github.com/psf/black-pre-commit-mirror
rev: 26.3.1
rev: 26.5.1
hooks:
- id: black
name: Enforce Black formatting
language_version: python3
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v6.0.0
hooks:
- id: trailing-whitespace
name: Enforce removal of trailing whitespace
- id: end-of-file-fixer
name: Enforce end of the file format
- id: check-yaml
name: Check YAML syntax
- id: check-toml
name: Check TOML syntax
+6
View File
@@ -279,3 +279,9 @@ poetry install
poetry run pre-commit install
```
This ensures consistent formatting, catches common issues early, and keeps the codebase clean.
## Support
If you find **mirro** useful, consider supporting its development:
[![Support me on Ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/mdaleo404)
Generated
+28 -15
View File
@@ -1,4 +1,4 @@
# This file is automatically @generated by Poetry 2.3.3 and should not be changed by hand.
# This file is automatically @generated by Poetry 2.5.0 and should not be changed by hand.
[[package]]
name = "argcomplete"
@@ -181,14 +181,14 @@ test = ["pytest (>=6)"]
[[package]]
name = "filelock"
version = "3.20.3"
version = "4.0.8"
description = "A platform independent file lock."
optional = false
python-versions = ">=3.10"
groups = ["dev"]
files = [
{file = "filelock-3.20.3-py3-none-any.whl", hash = "sha256:4b0dda527ee31078689fc205ec4f1c1bf7d56cf88b6dc9426c4f230e46c2dce1"},
{file = "filelock-3.20.3.tar.gz", hash = "sha256:18c57ee915c7ec61cff0ecf7f0f869936c7c30191bb0cf406f1341778d0834e1"},
{file = "filelock-4.0.8-py3-none-any.whl", hash = "sha256:325ff22f358c18443b1fcdfa0a7aa3faec4b500c2807c554719da4567b533d31"},
{file = "filelock-4.0.8.tar.gz", hash = "sha256:733d9b6b153fc63672f86104324186818b6bbe9dd7db84e9bb9887b6a04a2775"},
]
[[package]]
@@ -353,6 +353,21 @@ pytest = ">=7"
[package.extras]
testing = ["process-tests", "pytest-xdist", "virtualenv"]
[[package]]
name = "python-discovery"
version = "1.6.1"
description = "Python interpreter discovery"
optional = false
python-versions = ">=3.8"
groups = ["dev"]
files = [
{file = "python_discovery-1.6.1-py3-none-any.whl", hash = "sha256:d43fcdef879fe795352bd13ccf8d185ba5a9f86f36cfcd00529f596e737442b3"},
{file = "python_discovery-1.6.1.tar.gz", hash = "sha256:cf87d3627dfb4412437fdd5b13eae402607722998d21567993aedbc59b23c15e"},
]
[package.dependencies]
filelock = ">=3.15.4"
[[package]]
name = "pyyaml"
version = "6.0.3"
@@ -443,7 +458,7 @@ description = "A lil' TOML parser"
optional = false
python-versions = ">=3.8"
groups = ["dev"]
markers = "python_full_version <= \"3.11.0a6\""
markers = "python_version == \"3.10\""
files = [
{file = "tomli-2.3.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:88bd15eb972f3664f5ed4b57c1634a97153b4bac4479dcb6a495f41921eb7f45"},
{file = "tomli-2.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:883b1c0d6398a6a9d29b508c331fa56adbcdff647f6ace4dfca0f50e90dfd0ba"},
@@ -504,27 +519,25 @@ files = [
[[package]]
name = "virtualenv"
version = "20.36.1"
version = "21.14.2"
description = "Virtual Python Environment builder"
optional = false
python-versions = ">=3.8"
python-versions = ">=3.9"
groups = ["dev"]
files = [
{file = "virtualenv-20.36.1-py3-none-any.whl", hash = "sha256:575a8d6b124ef88f6f51d56d656132389f961062a9177016a50e4f507bbcc19f"},
{file = "virtualenv-20.36.1.tar.gz", hash = "sha256:8befb5c81842c641f8ee658481e42641c68b5eab3521d8e092d18320902466ba"},
{file = "virtualenv-21.14.2-py3-none-any.whl", hash = "sha256:6a8b7fd4e4ee00ebcdc1c5ee8cffd035d1fe130e354e8c9a44f510aac8affdc1"},
{file = "virtualenv-21.14.2.tar.gz", hash = "sha256:571930928b11e43db690073ad8228162eca8a3f8fd3a87acdeae07df7dd57068"},
]
[package.dependencies]
distlib = ">=0.3.7,<1"
filelock = {version = ">=3.20.1,<4", markers = "python_version >= \"3.10\""}
filelock = {version = ">=3.24.2,<5", markers = "python_version >= \"3.10\""}
packaging = ">=23.1"
platformdirs = ">=3.9.1,<5"
python-discovery = ">=1.6"
typing-extensions = {version = ">=4.13.2", markers = "python_version < \"3.11\""}
[package.extras]
docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2,!=7.3)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"]
test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8) ; platform_python_implementation == \"PyPy\" or platform_python_implementation == \"GraalVM\" or platform_python_implementation == \"CPython\" and sys_platform == \"win32\" and python_version >= \"3.13\"", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10) ; platform_python_implementation == \"CPython\""]
[metadata]
lock-version = "2.1"
python-versions = ">=3.10,<4.0"
content-hash = "b90604ce6169c72e35550fd278fab34b383e08f72e6db019f3a8ae611c2eae0a"
content-hash = "badf81e0c865a7a9aed1f2f3390ff4779cf7c50a5ca1ba95b88305acb56bfecb"
+15 -11
View File
@@ -1,21 +1,25 @@
[tool.poetry]
[project]
name = "mirro"
version = "0.6.3"
version = "0.6.4"
description = "A safe editing wrapper: edits a temp copy, compares, and saves original backup if changed."
authors = ["Marco D'Aleo <marco@marcodaleo.com>"]
authors = [{ name = "Marco D'Aleo", email = "marco@marcodaleo.com" }]
license = "GPL-3.0-or-later"
readme = "README.md"
homepage = "https://git.sysmd.uk/guardutils/mirro"
repository = "https://git.sysmd.uk/guardutils/mirro"
packages = [{include = "mirro", from = "src"}]
requires-python = ">=3.10,<4.0"
dependencies = [
"argcomplete>=2",
]
[tool.poetry.dependencies]
python = ">=3.10,<4.0"
argcomplete = ">=2"
[project.urls]
Homepage = "https://git.sysmd.uk/guardutils/mirro"
Repository = "https://git.sysmd.uk/guardutils/mirro"
[tool.poetry.scripts]
[project.scripts]
mirro = "mirro.main:main"
[tool.poetry]
packages = [{include = "mirro", from = "src"}]
[tool.poetry.group.dev.dependencies]
pytest = "^9.0.1"
pytest-cov = "^7.0.0"
@@ -25,5 +29,5 @@ pre-commit = "^3.8"
line-length = 79
[build-system]
requires = ["poetry-core"]
requires = ["poetry-core>=2.0.0,<3.0.0"]
build-backend = "poetry.core.masonry.api"