tremors 0.0.1__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.
tremors-0.0.1/LICENSE ADDED
@@ -0,0 +1,15 @@
1
+ The tremors package.
2
+ Copyright (C) 2025 Narvin Singh
3
+
4
+ This program is free software: you can redistribute it and/or modify
5
+ it under the terms of the GNU General Public License as published by
6
+ the Free Software Foundation, either version 3 of the License, or
7
+ (at your option) any later version.
8
+
9
+ This program is distributed in the hope that it will be useful,
10
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ GNU General Public License for more details.
13
+
14
+ You should have received a copy of the GNU General Public License
15
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
tremors-0.0.1/PKG-INFO ADDED
@@ -0,0 +1,47 @@
1
+ Metadata-Version: 2.4
2
+ Name: tremors
3
+ Version: 0.0.1
4
+ Summary: The tremors package.
5
+ Author-email: Narvin Singh <Narvin.A.Singh@gmail.com>
6
+ License: The tremors package.
7
+ Copyright (C) 2025 Narvin Singh
8
+
9
+ This program is free software: you can redistribute it and/or modify
10
+ it under the terms of the GNU General Public License as published by
11
+ the Free Software Foundation, either version 3 of the License, or
12
+ (at your option) any later version.
13
+
14
+ This program is distributed in the hope that it will be useful,
15
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
+ GNU General Public License for more details.
18
+
19
+ You should have received a copy of the GNU General Public License
20
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
21
+
22
+ Project-URL: Homepage, https://gitlab.com/narvin/tremors
23
+ Project-URL: Repository, https://gitlab.com/narvin/tremors
24
+ Project-URL: Bug Tracker, https://gitlab.com/narvin/tremors/-/issues
25
+ Classifier: Programming Language :: Python :: 3
26
+ Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
27
+ Classifier: Operating System :: OS Independent
28
+ Requires-Python: >=3.12
29
+ Description-Content-Type: text/x-rst
30
+ License-File: LICENSE
31
+ Provides-Extra: dev
32
+ Requires-Dist: mypy~=1.18; extra == "dev"
33
+ Requires-Dist: pre-commit~=4.3; extra == "dev"
34
+ Requires-Dist: pytest~=8.4; extra == "dev"
35
+ Requires-Dist: ruff~=0.14.2; extra == "dev"
36
+ Provides-Extra: doc
37
+ Requires-Dist: python-docs-theme~=2025.10; extra == "doc"
38
+ Requires-Dist: sphinx~=8.2; extra == "doc"
39
+ Provides-Extra: deploy
40
+ Requires-Dist: build~=1.3; extra == "deploy"
41
+ Requires-Dist: twine~=6.2; extra == "deploy"
42
+ Dynamic: license-file
43
+
44
+ tremors
45
+ #######
46
+
47
+ The tremors package.
@@ -0,0 +1,4 @@
1
+ tremors
2
+ #######
3
+
4
+ The tremors package.
@@ -0,0 +1,108 @@
1
+ [build-system]
2
+ requires = ["setuptools"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "tremors"
7
+ dynamic = ["version"]
8
+ authors = [
9
+ {name = "Narvin Singh", email = "Narvin.A.Singh@gmail.com"}
10
+ ]
11
+ classifiers = [
12
+ "Programming Language :: Python :: 3",
13
+ "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)",
14
+ "Operating System :: OS Independent"
15
+ ]
16
+ description = "The tremors package."
17
+ readme = "README.rst"
18
+ license = {file = "LICENSE"}
19
+ requires-python = ">=3.12"
20
+
21
+ dependencies = [
22
+ ]
23
+
24
+ [project.optional-dependencies]
25
+ dev = [
26
+ "mypy ~= 1.18",
27
+ "pre-commit ~= 4.3",
28
+ "pytest ~= 8.4",
29
+ "ruff ~= 0.14.2",
30
+ ]
31
+ doc = [
32
+ "python-docs-theme ~= 2025.10",
33
+ "sphinx ~= 8.2",
34
+ ]
35
+ deploy = [
36
+ "build ~= 1.3",
37
+ "twine ~= 6.2",
38
+ ]
39
+
40
+ [project.urls]
41
+ Homepage = "https://gitlab.com/narvin/tremors"
42
+ Repository = "https://gitlab.com/narvin/tremors"
43
+ "Bug Tracker" = "https://gitlab.com/narvin/tremors/-/issues"
44
+
45
+ [tool.setuptools]
46
+ package-data = {"*" = ["py.typed"]}
47
+
48
+ [tool.setuptools.dynamic]
49
+ version = {attr = "pypireg.__version__"}
50
+
51
+ [tool.mypy]
52
+ python_version = "3.14"
53
+ strict = true
54
+
55
+ [tool.ruff]
56
+ line-length = 100
57
+ target-version = "py314"
58
+
59
+ [tool.ruff.format]
60
+ skip-magic-trailing-comma = true
61
+
62
+ [tool.ruff.lint]
63
+ select = ["ALL"]
64
+ ignore = [
65
+ # flake8-commas
66
+ "COM812", # Trailing comma missing
67
+
68
+ # pydocstyle
69
+ "D203", # 1 blank line required before class docstring
70
+ "D205", # 1 blank line required between summary line and description
71
+ "D212", # Multi-line docstring summary should start at the first line
72
+ "D400", # First line should end with a period
73
+ "D415", # First line should end with a period, question mark, or exclamation point
74
+
75
+ # Error
76
+ "E501", # Line too long ({width} > {limit})
77
+ "E731", # Do not assign a lambda expression, use a def
78
+
79
+ # eradicate
80
+ "ERA001", # Found commented-out code
81
+
82
+ # flake8-fixme
83
+ "FIX002", # Line contains TODO, consider resolving the issue
84
+
85
+ # flake8-implicit-str-concat
86
+ "ISC001", # Implicitly concatenated string literals on one line
87
+
88
+ # flake8-pytest-style
89
+ "PT009", # Use a regular assert instead of unittest-style {assertion}
90
+ "PT027", # Use pytest.raises instead of unittest-style {assertion}
91
+
92
+ # flake8-todos
93
+ "TD003", # Missing issue link on the line following this TODO
94
+ ]
95
+ fixable = [
96
+ "F401", # unused import
97
+ "F541", # f-string without any placeholders
98
+
99
+ # isort
100
+ "I001", # Import block is un-sorted or un-formatted
101
+
102
+ # Ruff-specific rules
103
+ "RUF022", # `__all__` is not sorted
104
+ "RUF100", # Unused noqa directive
105
+ ]
106
+ isort.split-on-trailing-comma = false
107
+ pydocstyle.convention = "google"
108
+
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,5 @@
1
+ """The main package."""
2
+
3
+ __authors__ = ["Narvin Singh"]
4
+ __project__ = "PyPi Registration"
5
+ __version__ = "0.0.1"
File without changes
@@ -0,0 +1,65 @@
1
+ """The main module."""
2
+
3
+ import pathlib
4
+ import subprocess
5
+
6
+
7
+ def apply_name(name: str, description: str) -> None:
8
+ """Apply a package name to this project."""
9
+ projroot = pathlib.Path(__file__).parent.parent.parent
10
+ lic = projroot / "LICENSE"
11
+ pyproj = projroot / "pyproject.toml"
12
+ readme = projroot / "README.rst"
13
+
14
+ with lic.open("r+") as f:
15
+ template = f.read()
16
+ f.seek(0)
17
+ content = template.replace("{{DESCRIPTION}}", description)
18
+ f.write(content)
19
+ f.truncate()
20
+
21
+ with pyproj.open("r+") as f:
22
+ template = f.read()
23
+ f.seek(0)
24
+ content = template.replace("{{PROJECT}}", name).replace("{{DESCRIPTION}}", description)
25
+ f.write(content)
26
+ f.truncate()
27
+
28
+ with readme.open("r+") as f:
29
+ template = f.read()
30
+ f.seek(0)
31
+ content = (
32
+ template.replace("{{PROJECT}}", name)
33
+ .replace("{{PROJECT_UNDERLINE}}", "#" * len(name))
34
+ .replace("{{DESCRIPTION}}", description)
35
+ )
36
+ f.write(content)
37
+ f.truncate()
38
+
39
+
40
+ def revert_apply_name() -> None:
41
+ """Revert the application of a package name to this project."""
42
+ projroot = pathlib.Path(__file__).parent.parent.parent
43
+
44
+ subprocess.run(
45
+ ["/usr/bin/git", "restore", "LICENSE", "pyproject.toml", "README.rst"],
46
+ cwd=projroot,
47
+ check=False,
48
+ )
49
+
50
+
51
+ if __name__ == "__main__":
52
+ import logging
53
+ import sys
54
+
55
+ if len(sys.argv) < 2: # noqa: PLR2004
56
+ logging.getLogger(__name__).error("bad args")
57
+ else:
58
+ _, name, *description = sys.argv
59
+
60
+ if name == "--restore":
61
+ revert_apply_name()
62
+ elif len(description) != 1:
63
+ logging.getLogger(__name__).error("bad args")
64
+ else:
65
+ apply_name(name, description[0])
@@ -0,0 +1,47 @@
1
+ Metadata-Version: 2.4
2
+ Name: tremors
3
+ Version: 0.0.1
4
+ Summary: The tremors package.
5
+ Author-email: Narvin Singh <Narvin.A.Singh@gmail.com>
6
+ License: The tremors package.
7
+ Copyright (C) 2025 Narvin Singh
8
+
9
+ This program is free software: you can redistribute it and/or modify
10
+ it under the terms of the GNU General Public License as published by
11
+ the Free Software Foundation, either version 3 of the License, or
12
+ (at your option) any later version.
13
+
14
+ This program is distributed in the hope that it will be useful,
15
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
+ GNU General Public License for more details.
18
+
19
+ You should have received a copy of the GNU General Public License
20
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
21
+
22
+ Project-URL: Homepage, https://gitlab.com/narvin/tremors
23
+ Project-URL: Repository, https://gitlab.com/narvin/tremors
24
+ Project-URL: Bug Tracker, https://gitlab.com/narvin/tremors/-/issues
25
+ Classifier: Programming Language :: Python :: 3
26
+ Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
27
+ Classifier: Operating System :: OS Independent
28
+ Requires-Python: >=3.12
29
+ Description-Content-Type: text/x-rst
30
+ License-File: LICENSE
31
+ Provides-Extra: dev
32
+ Requires-Dist: mypy~=1.18; extra == "dev"
33
+ Requires-Dist: pre-commit~=4.3; extra == "dev"
34
+ Requires-Dist: pytest~=8.4; extra == "dev"
35
+ Requires-Dist: ruff~=0.14.2; extra == "dev"
36
+ Provides-Extra: doc
37
+ Requires-Dist: python-docs-theme~=2025.10; extra == "doc"
38
+ Requires-Dist: sphinx~=8.2; extra == "doc"
39
+ Provides-Extra: deploy
40
+ Requires-Dist: build~=1.3; extra == "deploy"
41
+ Requires-Dist: twine~=6.2; extra == "deploy"
42
+ Dynamic: license-file
43
+
44
+ tremors
45
+ #######
46
+
47
+ The tremors package.
@@ -0,0 +1,11 @@
1
+ LICENSE
2
+ README.rst
3
+ pyproject.toml
4
+ src/pypireg/__init__.py
5
+ src/pypireg/py.typed
6
+ src/pypireg/pypireg.py
7
+ src/tremors.egg-info/PKG-INFO
8
+ src/tremors.egg-info/SOURCES.txt
9
+ src/tremors.egg-info/dependency_links.txt
10
+ src/tremors.egg-info/requires.txt
11
+ src/tremors.egg-info/top_level.txt
@@ -0,0 +1,14 @@
1
+
2
+ [deploy]
3
+ build~=1.3
4
+ twine~=6.2
5
+
6
+ [dev]
7
+ mypy~=1.18
8
+ pre-commit~=4.3
9
+ pytest~=8.4
10
+ ruff~=0.14.2
11
+
12
+ [doc]
13
+ python-docs-theme~=2025.10
14
+ sphinx~=8.2
@@ -0,0 +1 @@
1
+ pypireg