wexample-filestate-python 0.0.59__tar.gz → 0.1.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.
Files changed (88) hide show
  1. wexample_filestate_python-0.1.1/PKG-INFO +185 -0
  2. wexample_filestate_python-0.1.1/README.md +157 -0
  3. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/pyproject.toml +3 -3
  4. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/class_name_matches_file_name_option.py +4 -0
  5. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python_option.py +4 -0
  6. wexample_filestate_python-0.0.59/PKG-INFO +0 -115
  7. wexample_filestate_python-0.0.59/README.md +0 -87
  8. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/__init__.py +0 -0
  9. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/__pycache__/__init__.py +0 -0
  10. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/common/__init__.py +0 -0
  11. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/common/__pycache__/__init__.py +0 -0
  12. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/common/pipy_gateway.py +0 -0
  13. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/config_option/__init__.py +0 -0
  14. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/config_option/__pycache__/__init__.py +0 -0
  15. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/config_option/mixin/__init__.py +0 -0
  16. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/config_option/mixin/__pycache__/__init__.py +0 -0
  17. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/config_option/mixin/with_stdout_wrapping_mixin.py +0 -0
  18. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/config_value/__init__.py +0 -0
  19. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/config_value/__pycache__/__init__.py +0 -0
  20. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/config_value/python_config_value.py +0 -0
  21. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/const/__init__.py +0 -0
  22. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/const/__pycache__/__init__.py +0 -0
  23. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/const/name_pattern.py +0 -0
  24. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/const/path.py +0 -0
  25. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/const/python_file.py +0 -0
  26. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/event/__init__.py +0 -0
  27. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/event/src/__init__.py +0 -0
  28. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/event/src/wexample_event/__init__.py +0 -0
  29. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/file/__init__.py +0 -0
  30. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/file/__pycache__/__init__.py +0 -0
  31. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/file/python_file.py +0 -0
  32. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/helpers/__init__.py +0 -0
  33. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/helpers/__pycache__/__init__.py +0 -0
  34. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/helpers/package.py +0 -0
  35. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/helpers/python/__init__.py +0 -0
  36. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/helpers/toml.py +0 -0
  37. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/__init__.py +0 -0
  38. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/__pycache__/__init__.py +0 -0
  39. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/__init__.py +0 -0
  40. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/abstract_python_file_content_option.py +0 -0
  41. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/add_future_annotations_option.py +0 -0
  42. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/add_return_types_option.py +0 -0
  43. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/fix_attrs_option.py +0 -0
  44. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/fix_blank_lines_option.py +0 -0
  45. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/format_option.py +0 -0
  46. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/fstringify_option.py +0 -0
  47. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/modernize_typing_option.py +0 -0
  48. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_class_attributes_option.py +0 -0
  49. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_class_docstring_option.py +0 -0
  50. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_class_methods_option.py +0 -0
  51. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_constants_option.py +0 -0
  52. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_iterable_items_option.py +0 -0
  53. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_main_guard_option.py +0 -0
  54. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_module_docstring_option.py +0 -0
  55. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_module_functions_option.py +0 -0
  56. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_module_metadata_option.py +0 -0
  57. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/order_type_checking_block_option.py +0 -0
  58. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/relocate_imports_option.py +0 -0
  59. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/remove_unused_option.py +0 -0
  60. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/sort_imports_option.py +0 -0
  61. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/option/python/unquote_annotations_option.py +0 -0
  62. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/options_provider/__init__.py +0 -0
  63. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/options_provider/__pycache__/__init__.py +0 -0
  64. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/options_provider/python_options_provider.py +0 -0
  65. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/py.typed +0 -0
  66. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/__init__.py +0 -0
  67. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/__pycache__/__init__.py +0 -0
  68. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_attrs_utils.py +0 -0
  69. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_blank_lines_utils.py +0 -0
  70. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_class_attributes_utils.py +0 -0
  71. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_class_docstring_utils.py +0 -0
  72. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_class_methods_utils.py +0 -0
  73. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_constants_utils.py +0 -0
  74. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_docstring_utils.py +0 -0
  75. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_functions_utils.py +0 -0
  76. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_iterable_utils.py +0 -0
  77. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_main_guard_utils.py +0 -0
  78. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_module_metadata_utils.py +0 -0
  79. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/python_type_checking_utils.py +0 -0
  80. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/relocate_imports/__init__.py +0 -0
  81. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/relocate_imports/__pycache__/__init__.py +0 -0
  82. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/relocate_imports/python_import_rewriter.py +0 -0
  83. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/relocate_imports/python_localize_runtime_imports.py +0 -0
  84. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/relocate_imports/python_parser_import_index.py +0 -0
  85. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/relocate_imports/python_runtime_symbol_collector.py +0 -0
  86. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/src/wexample_filestate_python/utils/relocate_imports/python_usage_collector.py +0 -0
  87. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/tests/tests/__init__.py +0 -0
  88. {wexample_filestate_python-0.0.59 → wexample_filestate_python-0.1.1}/tests/wexample_tests/__init__.py +0 -0
@@ -0,0 +1,185 @@
1
+ Metadata-Version: 2.1
2
+ Name: wexample-filestate-python
3
+ Version: 0.1.1
4
+ Summary: Helpers for Python.
5
+ Author-Email: weeger <contact@wexample.com>
6
+ License: MIT
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: License :: OSI Approved :: MIT License
9
+ Classifier: Operating System :: OS Independent
10
+ Project-URL: homepage, https://github.com/wexample/python-filestate-python
11
+ Requires-Python: >=3.10
12
+ Requires-Dist: attrs>=23.1.0
13
+ Requires-Dist: autoflake
14
+ Requires-Dist: black
15
+ Requires-Dist: cattrs>=23.1.0
16
+ Requires-Dist: flynt
17
+ Requires-Dist: isort
18
+ Requires-Dist: libcst
19
+ Requires-Dist: packaging
20
+ Requires-Dist: pyupgrade
21
+ Requires-Dist: tomli
22
+ Requires-Dist: wexample-api>=0.0.84
23
+ Requires-Dist: wexample-filestate>=1.0.0
24
+ Provides-Extra: dev
25
+ Requires-Dist: pytest; extra == "dev"
26
+ Requires-Dist: pytest-cov; extra == "dev"
27
+ Description-Content-Type: text/markdown
28
+
29
+ # filestate_python
30
+
31
+ Version: 0.1.1
32
+
33
+ Helpers for Python.
34
+
35
+ ## Table of Contents
36
+
37
+ - [Tests](#tests)
38
+ - [Suite Integration](#suite-integration)
39
+ - [Dependencies](#dependencies)
40
+ - [Versioning](#versioning)
41
+ - [License](#license)
42
+ - [Suite Integration](#suite-integration)
43
+ - [Suite Signature](#suite-signature)
44
+ - [Roadmap](#roadmap)
45
+ - [Status Compatibility](#status-compatibility)
46
+ - [Useful Links](#useful-links)
47
+ - [Migration Notes](#migration-notes)
48
+
49
+ ## Tests
50
+
51
+ This project uses `pytest` for testing and `pytest-cov` for code coverage analysis.
52
+
53
+ ### Installation
54
+
55
+ First, install the required testing dependencies:
56
+ ```bash
57
+ .venv/bin/python -m pip install pytest pytest-cov
58
+ ```
59
+
60
+ ### Basic Usage
61
+
62
+ Run all tests with coverage:
63
+ ```bash
64
+ .venv/bin/python -m pytest --cov --cov-report=html
65
+ ```
66
+
67
+ ### Common Commands
68
+ ```bash
69
+ # Run tests with coverage for a specific module
70
+ .venv/bin/python -m pytest --cov=your_module
71
+
72
+ # Show which lines are not covered
73
+ .venv/bin/python -m pytest --cov=your_module --cov-report=term-missing
74
+
75
+ # Generate an HTML coverage report
76
+ .venv/bin/python -m pytest --cov=your_module --cov-report=html
77
+
78
+ # Combine terminal and HTML reports
79
+ .venv/bin/python -m pytest --cov=your_module --cov-report=term-missing --cov-report=html
80
+
81
+ # Run specific test file with coverage
82
+ .venv/bin/python -m pytest tests/test_file.py --cov=your_module --cov-report=term-missing
83
+ ```
84
+
85
+ ### Viewing HTML Reports
86
+
87
+ After generating an HTML report, open `htmlcov/index.html` in your browser to view detailed line-by-line coverage information.
88
+
89
+ ### Coverage Threshold
90
+
91
+ To enforce a minimum coverage percentage:
92
+ ```bash
93
+ .venv/bin/python -m pytest --cov=your_module --cov-fail-under=80
94
+ ```
95
+
96
+ This will cause the test suite to fail if coverage drops below 80%.
97
+
98
+ ## Integration in the Suite
99
+
100
+ This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.
101
+
102
+ ### Related Packages
103
+
104
+ The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.
105
+
106
+ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the complete package ecosystem.
107
+
108
+ ## Dependencies
109
+
110
+ - attrs: >=23.1.0
111
+ - autoflake:
112
+ - black:
113
+ - cattrs: >=23.1.0
114
+ - flynt:
115
+ - isort:
116
+ - libcst:
117
+ - packaging:
118
+ - pyupgrade:
119
+ - tomli:
120
+ - wexample-api: >=0.0.84
121
+ - wexample-filestate: >=1.0.0
122
+
123
+ ## Versioning & Compatibility Policy
124
+
125
+ Wexample packages follow **Semantic Versioning** (SemVer):
126
+
127
+ - **MAJOR**: Breaking changes
128
+ - **MINOR**: New features, backward compatible
129
+ - **PATCH**: Bug fixes, backward compatible
130
+
131
+ We maintain backward compatibility within major versions and provide clear migration guides for breaking changes.
132
+
133
+ ## License
134
+
135
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
136
+
137
+ Free to use in both personal and commercial projects.
138
+
139
+ ## Integration in the Suite
140
+
141
+ This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.
142
+
143
+ ### Related Packages
144
+
145
+ The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.
146
+
147
+ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the complete package ecosystem.
148
+
149
+ # About us
150
+
151
+ [Wexample](https://wexample.com) stands as a cornerstone of the digital ecosystem — a collective of seasoned engineers, researchers, and creators driven by a relentless pursuit of technological excellence. More than a media platform, it has grown into a vibrant community where innovation meets craftsmanship, and where every line of code reflects a commitment to clarity, durability, and shared intelligence.
152
+
153
+ This packages suite embodies this spirit. Trusted by professionals and enthusiasts alike, it delivers a consistent, high-quality foundation for modern development — open, elegant, and battle-tested. Its reputation is built on years of collaboration, refinement, and rigorous attention to detail, making it a natural choice for those who demand both robustness and beauty in their tools.
154
+
155
+ Wexample cultivates a culture of mastery. Each package, each contribution carries the mark of a community that values precision, ethics, and innovation — a community proud to shape the future of digital craftsmanship.
156
+
157
+ ## Known Limitations & Roadmap
158
+
159
+ Current limitations and planned features are tracked in the GitHub issues.
160
+
161
+ See the [project roadmap](https://github.com/wexample/python-filestate_python/issues) for upcoming features and improvements.
162
+
163
+ ## Status & Compatibility
164
+
165
+ **Maturity**: Production-ready
166
+
167
+ **Python Support**: >=3.10
168
+
169
+ **OS Support**: Linux, macOS, Windows
170
+
171
+ **Status**: Actively maintained
172
+
173
+ ## Useful Links
174
+
175
+ - **Homepage**: https://github.com/wexample/python-filestate-python
176
+ - **Documentation**: [docs.wexample.com](https://docs.wexample.com)
177
+ - **Issue Tracker**: https://github.com/wexample/python-filestate-python/issues
178
+ - **Discussions**: https://github.com/wexample/python-filestate-python/discussions
179
+ - **PyPI**: [pypi.org/project/filestate_python](https://pypi.org/project/filestate_python/)
180
+
181
+ ## Migration Notes
182
+
183
+ When upgrading between major versions, refer to the migration guides in the documentation.
184
+
185
+ Breaking changes are clearly documented with upgrade paths and examples.
@@ -0,0 +1,157 @@
1
+ # filestate_python
2
+
3
+ Version: 0.1.1
4
+
5
+ Helpers for Python.
6
+
7
+ ## Table of Contents
8
+
9
+ - [Tests](#tests)
10
+ - [Suite Integration](#suite-integration)
11
+ - [Dependencies](#dependencies)
12
+ - [Versioning](#versioning)
13
+ - [License](#license)
14
+ - [Suite Integration](#suite-integration)
15
+ - [Suite Signature](#suite-signature)
16
+ - [Roadmap](#roadmap)
17
+ - [Status Compatibility](#status-compatibility)
18
+ - [Useful Links](#useful-links)
19
+ - [Migration Notes](#migration-notes)
20
+
21
+ ## Tests
22
+
23
+ This project uses `pytest` for testing and `pytest-cov` for code coverage analysis.
24
+
25
+ ### Installation
26
+
27
+ First, install the required testing dependencies:
28
+ ```bash
29
+ .venv/bin/python -m pip install pytest pytest-cov
30
+ ```
31
+
32
+ ### Basic Usage
33
+
34
+ Run all tests with coverage:
35
+ ```bash
36
+ .venv/bin/python -m pytest --cov --cov-report=html
37
+ ```
38
+
39
+ ### Common Commands
40
+ ```bash
41
+ # Run tests with coverage for a specific module
42
+ .venv/bin/python -m pytest --cov=your_module
43
+
44
+ # Show which lines are not covered
45
+ .venv/bin/python -m pytest --cov=your_module --cov-report=term-missing
46
+
47
+ # Generate an HTML coverage report
48
+ .venv/bin/python -m pytest --cov=your_module --cov-report=html
49
+
50
+ # Combine terminal and HTML reports
51
+ .venv/bin/python -m pytest --cov=your_module --cov-report=term-missing --cov-report=html
52
+
53
+ # Run specific test file with coverage
54
+ .venv/bin/python -m pytest tests/test_file.py --cov=your_module --cov-report=term-missing
55
+ ```
56
+
57
+ ### Viewing HTML Reports
58
+
59
+ After generating an HTML report, open `htmlcov/index.html` in your browser to view detailed line-by-line coverage information.
60
+
61
+ ### Coverage Threshold
62
+
63
+ To enforce a minimum coverage percentage:
64
+ ```bash
65
+ .venv/bin/python -m pytest --cov=your_module --cov-fail-under=80
66
+ ```
67
+
68
+ This will cause the test suite to fail if coverage drops below 80%.
69
+
70
+ ## Integration in the Suite
71
+
72
+ This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.
73
+
74
+ ### Related Packages
75
+
76
+ The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.
77
+
78
+ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the complete package ecosystem.
79
+
80
+ ## Dependencies
81
+
82
+ - attrs: >=23.1.0
83
+ - autoflake:
84
+ - black:
85
+ - cattrs: >=23.1.0
86
+ - flynt:
87
+ - isort:
88
+ - libcst:
89
+ - packaging:
90
+ - pyupgrade:
91
+ - tomli:
92
+ - wexample-api: >=0.0.84
93
+ - wexample-filestate: >=1.0.0
94
+
95
+ ## Versioning & Compatibility Policy
96
+
97
+ Wexample packages follow **Semantic Versioning** (SemVer):
98
+
99
+ - **MAJOR**: Breaking changes
100
+ - **MINOR**: New features, backward compatible
101
+ - **PATCH**: Bug fixes, backward compatible
102
+
103
+ We maintain backward compatibility within major versions and provide clear migration guides for breaking changes.
104
+
105
+ ## License
106
+
107
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
108
+
109
+ Free to use in both personal and commercial projects.
110
+
111
+ ## Integration in the Suite
112
+
113
+ This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.
114
+
115
+ ### Related Packages
116
+
117
+ The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.
118
+
119
+ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the complete package ecosystem.
120
+
121
+ # About us
122
+
123
+ [Wexample](https://wexample.com) stands as a cornerstone of the digital ecosystem — a collective of seasoned engineers, researchers, and creators driven by a relentless pursuit of technological excellence. More than a media platform, it has grown into a vibrant community where innovation meets craftsmanship, and where every line of code reflects a commitment to clarity, durability, and shared intelligence.
124
+
125
+ This packages suite embodies this spirit. Trusted by professionals and enthusiasts alike, it delivers a consistent, high-quality foundation for modern development — open, elegant, and battle-tested. Its reputation is built on years of collaboration, refinement, and rigorous attention to detail, making it a natural choice for those who demand both robustness and beauty in their tools.
126
+
127
+ Wexample cultivates a culture of mastery. Each package, each contribution carries the mark of a community that values precision, ethics, and innovation — a community proud to shape the future of digital craftsmanship.
128
+
129
+ ## Known Limitations & Roadmap
130
+
131
+ Current limitations and planned features are tracked in the GitHub issues.
132
+
133
+ See the [project roadmap](https://github.com/wexample/python-filestate_python/issues) for upcoming features and improvements.
134
+
135
+ ## Status & Compatibility
136
+
137
+ **Maturity**: Production-ready
138
+
139
+ **Python Support**: >=3.10
140
+
141
+ **OS Support**: Linux, macOS, Windows
142
+
143
+ **Status**: Actively maintained
144
+
145
+ ## Useful Links
146
+
147
+ - **Homepage**: https://github.com/wexample/python-filestate-python
148
+ - **Documentation**: [docs.wexample.com](https://docs.wexample.com)
149
+ - **Issue Tracker**: https://github.com/wexample/python-filestate-python/issues
150
+ - **Discussions**: https://github.com/wexample/python-filestate-python/discussions
151
+ - **PyPI**: [pypi.org/project/filestate_python](https://pypi.org/project/filestate_python/)
152
+
153
+ ## Migration Notes
154
+
155
+ When upgrading between major versions, refer to the migration guides in the documentation.
156
+
157
+ Breaking changes are clearly documented with upgrade paths and examples.
@@ -6,7 +6,7 @@ build-backend = "pdm.backend"
6
6
 
7
7
  [project]
8
8
  name = "wexample-filestate-python"
9
- version = "0.0.59"
9
+ version = "0.1.1"
10
10
  description = "Helpers for Python."
11
11
  authors = [
12
12
  { name = "weeger", email = "contact@wexample.com" },
@@ -28,8 +28,8 @@ dependencies = [
28
28
  "packaging",
29
29
  "pyupgrade",
30
30
  "tomli",
31
- "wexample-api==0.0.84",
32
- "wexample-filestate==0.0.75",
31
+ "wexample-api>=0.0.84",
32
+ "wexample-filestate>=1.0.0",
33
33
  ]
34
34
 
35
35
  [project.readme]
@@ -16,6 +16,10 @@ if TYPE_CHECKING:
16
16
 
17
17
  @base_class
18
18
  class ClassNameMatchesFileNameOption(OptionMixin, AbstractConfigOption):
19
+ @classmethod
20
+ def get_scopes(cls) -> list[Scope]:
21
+ return [Scope.NAME]
22
+
19
23
  @staticmethod
20
24
  def _expected_class_name_from_path(path: Path) -> str | None:
21
25
  stem = path.stem
@@ -17,6 +17,10 @@ if TYPE_CHECKING:
17
17
 
18
18
  @base_class
19
19
  class PythonOption(OptionMixin, AbstractNestedConfigOption):
20
+ @classmethod
21
+ def get_scopes(cls) -> list[Scope]:
22
+ return [Scope.CONTENT]
23
+
20
24
  @staticmethod
21
25
  def get_raw_value_allowed_type() -> Any:
22
26
  from wexample_filestate_python.config_value.python_config_value import (
@@ -1,115 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: wexample-filestate-python
3
- Version: 0.0.59
4
- Summary: Helpers for Python.
5
- Author-Email: weeger <contact@wexample.com>
6
- License: MIT
7
- Classifier: Programming Language :: Python :: 3
8
- Classifier: License :: OSI Approved :: MIT License
9
- Classifier: Operating System :: OS Independent
10
- Project-URL: homepage, https://github.com/wexample/python-filestate-python
11
- Requires-Python: >=3.10
12
- Requires-Dist: attrs>=23.1.0
13
- Requires-Dist: autoflake
14
- Requires-Dist: black
15
- Requires-Dist: cattrs>=23.1.0
16
- Requires-Dist: flynt
17
- Requires-Dist: isort
18
- Requires-Dist: libcst
19
- Requires-Dist: packaging
20
- Requires-Dist: pyupgrade
21
- Requires-Dist: tomli
22
- Requires-Dist: wexample-api==0.0.84
23
- Requires-Dist: wexample-filestate==0.0.75
24
- Provides-Extra: dev
25
- Requires-Dist: pytest; extra == "dev"
26
- Requires-Dist: pytest-cov; extra == "dev"
27
- Description-Content-Type: text/markdown
28
-
29
- # wexample-filestate-python
30
-
31
- Version: 0.0.59
32
-
33
- Helpers for Python.
34
-
35
- ## Table of Contents
36
-
37
- - [Status Compatibility](#status-compatibility)
38
- - [Tests](#tests)
39
- - [Roadmap](#roadmap)
40
- - [Useful Links](#useful-links)
41
-
42
-
43
- ## Status & Compatibility
44
-
45
- **Maturity**: Production-ready
46
-
47
- **Python Support**: >=3.10
48
-
49
- **OS Support**: Linux, macOS, Windows
50
-
51
- **Status**: Actively maintained
52
-
53
- ## Tests
54
-
55
- This project uses `pytest` for testing and `pytest-cov` for code coverage analysis.
56
-
57
- ### Installation
58
-
59
- First, install the required testing dependencies:
60
- ```bash
61
- .venv/bin/python -m pip install pytest pytest-cov
62
- ```
63
-
64
- ### Basic Usage
65
-
66
- Run all tests with coverage:
67
- ```bash
68
- .venv/bin/python -m pytest --cov --cov-report=html
69
- ```
70
-
71
- ### Common Commands
72
- ```bash
73
- # Run tests with coverage for a specific module
74
- .venv/bin/python -m pytest --cov=your_module
75
-
76
- # Show which lines are not covered
77
- .venv/bin/python -m pytest --cov=your_module --cov-report=term-missing
78
-
79
- # Generate an HTML coverage report
80
- .venv/bin/python -m pytest --cov=your_module --cov-report=html
81
-
82
- # Combine terminal and HTML reports
83
- .venv/bin/python -m pytest --cov=your_module --cov-report=term-missing --cov-report=html
84
-
85
- # Run specific test file with coverage
86
- .venv/bin/python -m pytest tests/test_file.py --cov=your_module --cov-report=term-missing
87
- ```
88
-
89
- ### Viewing HTML Reports
90
-
91
- After generating an HTML report, open `htmlcov/index.html` in your browser to view detailed line-by-line coverage information.
92
-
93
- ### Coverage Threshold
94
-
95
- To enforce a minimum coverage percentage:
96
- ```bash
97
- .venv/bin/python -m pytest --cov=your_module --cov-fail-under=80
98
- ```
99
-
100
- This will cause the test suite to fail if coverage drops below 80%.
101
-
102
- ## Known Limitations & Roadmap
103
-
104
- Current limitations and planned features are tracked in the GitHub issues.
105
-
106
- See the [project roadmap](https://github.com/wexample/python-filestate_python/issues) for upcoming features and improvements.
107
-
108
- ## Useful Links
109
-
110
- - **Homepage**: https://github.com/wexample/python-filestate-python
111
- - **Documentation**: [docs.wexample.com](https://docs.wexample.com)
112
- - **Issue Tracker**: https://github.com/wexample/python-filestate-python/issues
113
- - **Discussions**: https://github.com/wexample/python-filestate-python/discussions
114
- - **PyPI**: [pypi.org/project/wexample-filestate-python](https://pypi.org/project/wexample-filestate-python/)
115
-
@@ -1,87 +0,0 @@
1
- # wexample-filestate-python
2
-
3
- Version: 0.0.59
4
-
5
- Helpers for Python.
6
-
7
- ## Table of Contents
8
-
9
- - [Status Compatibility](#status-compatibility)
10
- - [Tests](#tests)
11
- - [Roadmap](#roadmap)
12
- - [Useful Links](#useful-links)
13
-
14
-
15
- ## Status & Compatibility
16
-
17
- **Maturity**: Production-ready
18
-
19
- **Python Support**: >=3.10
20
-
21
- **OS Support**: Linux, macOS, Windows
22
-
23
- **Status**: Actively maintained
24
-
25
- ## Tests
26
-
27
- This project uses `pytest` for testing and `pytest-cov` for code coverage analysis.
28
-
29
- ### Installation
30
-
31
- First, install the required testing dependencies:
32
- ```bash
33
- .venv/bin/python -m pip install pytest pytest-cov
34
- ```
35
-
36
- ### Basic Usage
37
-
38
- Run all tests with coverage:
39
- ```bash
40
- .venv/bin/python -m pytest --cov --cov-report=html
41
- ```
42
-
43
- ### Common Commands
44
- ```bash
45
- # Run tests with coverage for a specific module
46
- .venv/bin/python -m pytest --cov=your_module
47
-
48
- # Show which lines are not covered
49
- .venv/bin/python -m pytest --cov=your_module --cov-report=term-missing
50
-
51
- # Generate an HTML coverage report
52
- .venv/bin/python -m pytest --cov=your_module --cov-report=html
53
-
54
- # Combine terminal and HTML reports
55
- .venv/bin/python -m pytest --cov=your_module --cov-report=term-missing --cov-report=html
56
-
57
- # Run specific test file with coverage
58
- .venv/bin/python -m pytest tests/test_file.py --cov=your_module --cov-report=term-missing
59
- ```
60
-
61
- ### Viewing HTML Reports
62
-
63
- After generating an HTML report, open `htmlcov/index.html` in your browser to view detailed line-by-line coverage information.
64
-
65
- ### Coverage Threshold
66
-
67
- To enforce a minimum coverage percentage:
68
- ```bash
69
- .venv/bin/python -m pytest --cov=your_module --cov-fail-under=80
70
- ```
71
-
72
- This will cause the test suite to fail if coverage drops below 80%.
73
-
74
- ## Known Limitations & Roadmap
75
-
76
- Current limitations and planned features are tracked in the GitHub issues.
77
-
78
- See the [project roadmap](https://github.com/wexample/python-filestate_python/issues) for upcoming features and improvements.
79
-
80
- ## Useful Links
81
-
82
- - **Homepage**: https://github.com/wexample/python-filestate-python
83
- - **Documentation**: [docs.wexample.com](https://docs.wexample.com)
84
- - **Issue Tracker**: https://github.com/wexample/python-filestate-python/issues
85
- - **Discussions**: https://github.com/wexample/python-filestate-python/discussions
86
- - **PyPI**: [pypi.org/project/wexample-filestate-python](https://pypi.org/project/wexample-filestate-python/)
87
-