pysfi 0.1.0__tar.gz → 0.1.3__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.
Files changed (35) hide show
  1. {pysfi-0.1.0 → pysfi-0.1.3}/.gitignore +1 -0
  2. pysfi-0.1.3/PKG-INFO +107 -0
  3. pysfi-0.1.3/README.md +99 -0
  4. {pysfi-0.1.0 → pysfi-0.1.3}/pyproject.toml +14 -3
  5. pysfi-0.1.3/sfi/__init__.py +3 -0
  6. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/alarmclock/alarmclock.py +367 -367
  7. pysfi-0.1.3/sfi/bumpversion/README.md +218 -0
  8. pysfi-0.1.3/sfi/bumpversion/__init__.py +3 -0
  9. pysfi-0.1.3/sfi/bumpversion/bumpversion.py +535 -0
  10. pysfi-0.1.3/sfi/bumpversion/tests/test_bumpversion.py +698 -0
  11. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/embedinstall/embedinstall.py +418 -418
  12. pysfi-0.1.3/sfi/makepython/makepython.py +328 -0
  13. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/pyloadergen/pyloadergen.py +995 -1042
  14. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/pyloadergen/tests/test_pyloadergen.py +294 -290
  15. pysfi-0.1.0/.codebuddy/rules/language-standards.mdc +0 -79
  16. pysfi-0.1.0/.python-version +0 -1
  17. pysfi-0.1.0/PKG-INFO +0 -78
  18. pysfi-0.1.0/README.md +0 -71
  19. pysfi-0.1.0/sfi/alarmclock/pyproject.toml +0 -7
  20. pysfi-0.1.0/sfi/embedinstall/pyproject.toml +0 -7
  21. pysfi-0.1.0/sfi/filedate/pyproject.toml +0 -11
  22. pysfi-0.1.0/sfi/makepython/makepython.py +0 -68
  23. pysfi-0.1.0/sfi/makepython/pyproject.toml +0 -7
  24. pysfi-0.1.0/sfi/projectparse/pyproject.toml +0 -9
  25. pysfi-0.1.0/sfi/pyloadergen/pyproject.toml +0 -7
  26. pysfi-0.1.0/sfi/pypacker/pyproject.toml +0 -7
  27. {pysfi-0.1.0/sfi → pysfi-0.1.3/sfi/alarmclock}/__init__.py +0 -0
  28. {pysfi-0.1.0/sfi/alarmclock → pysfi-0.1.3/sfi/bumpversion/tests}/__init__.py +0 -0
  29. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/filedate/README.md +0 -0
  30. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/filedate/__init__.py +0 -0
  31. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/filedate/filedate.py +0 -0
  32. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/makepython/__init__.py +0 -0
  33. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/projectparse/projectparse.py +0 -0
  34. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/pyloadergen/tests/__init__.py +0 -0
  35. {pysfi-0.1.0 → pysfi-0.1.3}/sfi/pypacker/fspacker.py +0 -0
@@ -16,3 +16,4 @@ runtime
16
16
  .coverage
17
17
  pyloader.exe
18
18
  *.c
19
+ .python-version
pysfi-0.1.3/PKG-INFO ADDED
@@ -0,0 +1,107 @@
1
+ Metadata-Version: 2.4
2
+ Name: pysfi
3
+ Version: 0.1.3
4
+ Summary: Single File commands for Interactive python.
5
+ Requires-Python: >=3.8
6
+ Requires-Dist: tomli>=2.4.0; python_version < '3.11'
7
+ Description-Content-Type: text/markdown
8
+
9
+ # pysfi
10
+
11
+ Single File commands for Interactive python.
12
+
13
+ ## Overview
14
+
15
+ pysfi is a Python project that provides single-file command-line utilities, designed to be lightweight and easy-to-use.
16
+
17
+ ## Available Commands
18
+
19
+ - **alarmclk**: Alarm clock functionality
20
+ - **[bumpversion](sfi/bumpversion/README.md)**: Automated version number management tool
21
+ - **embedinstall**: Embed installation utilities
22
+ - **[filedate](sfi/filedate/README.md)**: A file date management tool that normalizes date prefixes in filenames
23
+ - **mkp**: Make Python project utilities
24
+ - **projectparse**: Project parsing and analysis tools
25
+ - **pyloadergen**: Python loader code generation
26
+ - **pypacker**: Python packaging utilities
27
+
28
+ ## Installation
29
+
30
+ ```bash
31
+ # Install using uv (recommended)
32
+ uv add pysfi
33
+
34
+ # Or using pip
35
+ pip install pysfi
36
+ ```
37
+
38
+ ## Development
39
+
40
+ ### Requirements
41
+
42
+ - Python >= 3.8
43
+ - [uv](https://github.com/astral-sh/uv) (recommended) or pip
44
+
45
+ ### Development Dependencies
46
+
47
+ ```bash
48
+ uv pip install -e ".[dev]"
49
+ ```
50
+
51
+ ### Code Standards
52
+
53
+ The project uses Ruff for code linting and formatting:
54
+
55
+ ```bash
56
+ # Check code
57
+ ruff check .
58
+
59
+ # Format code
60
+ ruff format .
61
+ ```
62
+
63
+ ## Project Structure
64
+
65
+ ```bash
66
+ pysfi/
67
+ ├── pyproject.toml # Main project configuration
68
+ ├── README.md
69
+ └── sfi/
70
+ ├── __init__.py
71
+ ├── alarmclock/ # alarmclk command module
72
+ │ ├── alarmclock.py
73
+ │ ├── pyproject.toml
74
+ │ └── __init__.py
75
+ ├── embedinstall/ # embedinstall command module
76
+ │ ├── embedinstall.py
77
+ │ ├── pyproject.toml
78
+ │ └── __init__.py
79
+ ├── filedate/ # filedate command module
80
+ │ ├── filedate.py
81
+ │ ├── pyproject.toml
82
+ │ ├── README.md # Detailed documentation
83
+ │ └── __init__.py
84
+ ├── makepython/ # mkp command module
85
+ │ ├── makepython.py
86
+ │ ├── pyproject.toml
87
+ │ └── __init__.py
88
+ ├── projectparse/ # projectparse command module
89
+ │ ├── projectparse.py
90
+ │ ├── pyproject.toml
91
+ │ └── __init__.py
92
+ ├── pyloadergen/ # pyloadergen command module
93
+ │ ├── pyloadergen.py
94
+ │ ├── pyproject.toml
95
+ │ └── __init__.py
96
+ └── pypacker/ # pypacker command module
97
+ ├── fspacker.py
98
+ └── pyproject.toml
99
+ ```
100
+
101
+ ## License
102
+
103
+ MIT License
104
+
105
+ ## Contributing
106
+
107
+ Issues and Pull Requests are welcome!
pysfi-0.1.3/README.md ADDED
@@ -0,0 +1,99 @@
1
+ # pysfi
2
+
3
+ Single File commands for Interactive python.
4
+
5
+ ## Overview
6
+
7
+ pysfi is a Python project that provides single-file command-line utilities, designed to be lightweight and easy-to-use.
8
+
9
+ ## Available Commands
10
+
11
+ - **alarmclk**: Alarm clock functionality
12
+ - **[bumpversion](sfi/bumpversion/README.md)**: Automated version number management tool
13
+ - **embedinstall**: Embed installation utilities
14
+ - **[filedate](sfi/filedate/README.md)**: A file date management tool that normalizes date prefixes in filenames
15
+ - **mkp**: Make Python project utilities
16
+ - **projectparse**: Project parsing and analysis tools
17
+ - **pyloadergen**: Python loader code generation
18
+ - **pypacker**: Python packaging utilities
19
+
20
+ ## Installation
21
+
22
+ ```bash
23
+ # Install using uv (recommended)
24
+ uv add pysfi
25
+
26
+ # Or using pip
27
+ pip install pysfi
28
+ ```
29
+
30
+ ## Development
31
+
32
+ ### Requirements
33
+
34
+ - Python >= 3.8
35
+ - [uv](https://github.com/astral-sh/uv) (recommended) or pip
36
+
37
+ ### Development Dependencies
38
+
39
+ ```bash
40
+ uv pip install -e ".[dev]"
41
+ ```
42
+
43
+ ### Code Standards
44
+
45
+ The project uses Ruff for code linting and formatting:
46
+
47
+ ```bash
48
+ # Check code
49
+ ruff check .
50
+
51
+ # Format code
52
+ ruff format .
53
+ ```
54
+
55
+ ## Project Structure
56
+
57
+ ```bash
58
+ pysfi/
59
+ ├── pyproject.toml # Main project configuration
60
+ ├── README.md
61
+ └── sfi/
62
+ ├── __init__.py
63
+ ├── alarmclock/ # alarmclk command module
64
+ │ ├── alarmclock.py
65
+ │ ├── pyproject.toml
66
+ │ └── __init__.py
67
+ ├── embedinstall/ # embedinstall command module
68
+ │ ├── embedinstall.py
69
+ │ ├── pyproject.toml
70
+ │ └── __init__.py
71
+ ├── filedate/ # filedate command module
72
+ │ ├── filedate.py
73
+ │ ├── pyproject.toml
74
+ │ ├── README.md # Detailed documentation
75
+ │ └── __init__.py
76
+ ├── makepython/ # mkp command module
77
+ │ ├── makepython.py
78
+ │ ├── pyproject.toml
79
+ │ └── __init__.py
80
+ ├── projectparse/ # projectparse command module
81
+ │ ├── projectparse.py
82
+ │ ├── pyproject.toml
83
+ │ └── __init__.py
84
+ ├── pyloadergen/ # pyloadergen command module
85
+ │ ├── pyloadergen.py
86
+ │ ├── pyproject.toml
87
+ │ └── __init__.py
88
+ └── pypacker/ # pypacker command module
89
+ ├── fspacker.py
90
+ └── pyproject.toml
91
+ ```
92
+
93
+ ## License
94
+
95
+ MIT License
96
+
97
+ ## Contributing
98
+
99
+ Issues and Pull Requests are welcome!
@@ -3,15 +3,16 @@ build-backend = "hatchling.build"
3
3
  requires = ["hatchling"]
4
4
 
5
5
  [project]
6
- dependencies = []
6
+ dependencies = ["tomli>=2.4.0; python_version<'3.11'"]
7
7
  description = "Single File commands for Interactive python."
8
8
  name = "pysfi"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.8"
11
- version = "0.1.0"
11
+ version = "0.1.3"
12
12
 
13
13
  [project.scripts]
14
14
  alarmclk = "sfi.alarmclock.alarmclock:main"
15
+ bumpversion = "sfi.bumpversion.bumpversion:main"
15
16
  embedinstall = "sfi.embedinstall.embedinstall:main"
16
17
  filedate = "sfi.filedate.filedate:main"
17
18
  mkp = "sfi.makepython.makepython:main"
@@ -20,9 +21,18 @@ pyloadergen = "sfi.pyloadergen.pyloadergen:main"
20
21
  pypacker = "sfi.pypacker.pypacker:main"
21
22
 
22
23
  [tool.hatch.build.targets.wheel]
23
- exclude = ["sfi/*/README.md", "sfi/*/dist", "sfi/*/pyproject.toml"]
24
+ exclude = [
25
+ "sfi/*/README.md",
26
+ "sfi/*/dist",
27
+ "sfi/*/pyproject.toml",
28
+ "sfi/*/tests",
29
+ ]
24
30
  packages = ["sfi"]
25
31
 
32
+ # Only include necessary source files to minimize package size
33
+ [tool.hatch.build]
34
+ include = ["README.md", "sfi/**/*.py", "sfi/pyproject.toml"]
35
+
26
36
  [tool.ruff]
27
37
  line-length = 120
28
38
  target-version = "py38"
@@ -82,6 +92,7 @@ known-first-party = ["sfi"]
82
92
  [tool.uv.workspace]
83
93
  members = [
84
94
  "sfi/alarmclock",
95
+ "sfi/bumpversion",
85
96
  "sfi/embedinstall",
86
97
  "sfi/filedate",
87
98
  "sfi/makepython",
@@ -0,0 +1,3 @@
1
+ """Single File commands for Interactive python."""
2
+
3
+ __version__ = "0.1.3"