django-cfg 1.4.4__py3-none-any.whl → 1.4.6__py3-none-any.whl
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.
- django_cfg/CHANGELOG.md +57 -0
- django_cfg/CONTRIBUTING.md +145 -0
- django_cfg/LICENSE +21 -0
- django_cfg/apps/api/endpoints/__init__.py +5 -0
- django_cfg/apps/api/endpoints/checker.py +603 -0
- django_cfg/apps/api/endpoints/drf_views.py +55 -0
- django_cfg/apps/api/endpoints/serializers.py +123 -0
- django_cfg/apps/api/endpoints/tests.py +281 -0
- django_cfg/apps/api/endpoints/urls.py +14 -0
- django_cfg/apps/api/endpoints/views.py +41 -0
- django_cfg/apps/payments/admin_interface/views/api/webhook_admin.py +2 -2
- django_cfg/apps/payments/middleware/rate_limiting.py +9 -3
- django_cfg/apps/urls.py +2 -0
- django_cfg/management/commands/check_endpoints.py +169 -0
- django_cfg/management/commands/rundramatiq.py +3 -3
- django_cfg/modules/django_ipc_client/client.py +1 -0
- django_cfg/modules/django_unfold/dashboard.py +1 -0
- django_cfg/pyproject.toml +148 -0
- django_cfg/routing/routers.py +15 -2
- {django_cfg-1.4.4.dist-info → django_cfg-1.4.6.dist-info}/METADATA +1 -1
- {django_cfg-1.4.4.dist-info → django_cfg-1.4.6.dist-info}/RECORD +24 -12
- {django_cfg-1.4.4.dist-info → django_cfg-1.4.6.dist-info}/WHEEL +0 -0
- {django_cfg-1.4.4.dist-info → django_cfg-1.4.6.dist-info}/entry_points.txt +0 -0
- {django_cfg-1.4.4.dist-info → django_cfg-1.4.6.dist-info}/licenses/LICENSE +0 -0
django_cfg/CHANGELOG.md
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
All notable changes to this project will be documented in this file.
|
4
|
+
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
7
|
+
|
8
|
+
## [1.2.25] - 2025-09-24
|
9
|
+
|
10
|
+
### Added
|
11
|
+
- **Payment System Enhancements**: Unified payment provider configurations
|
12
|
+
- New `PaymentsConfig` model with provider-specific settings
|
13
|
+
- Enhanced validation utilities for API keys and subscription access
|
14
|
+
- Improved webhook handling and reliability
|
15
|
+
- Support for multiple payment providers (NowPayments, Cryptomus, etc.)
|
16
|
+
- **Template System**: Enhanced project template management
|
17
|
+
- Improved template extraction and project name replacement
|
18
|
+
- Better integration with CLI `create-project` command
|
19
|
+
- More reliable template archiving system
|
20
|
+
|
21
|
+
### Changed
|
22
|
+
- **Project Structure**: Reorganized template location
|
23
|
+
- Moved Django sample project to `examples/django_sample`
|
24
|
+
- Improved template packaging for better distribution
|
25
|
+
- **Dependencies**: Updated dependency management
|
26
|
+
- Better version constraint handling
|
27
|
+
- Improved package compatibility
|
28
|
+
|
29
|
+
### Fixed
|
30
|
+
- **Payment Validation**: Enhanced security for payment processing
|
31
|
+
- Improved API key validation
|
32
|
+
- Better webhook verification
|
33
|
+
- Fixed subscription access control issues
|
34
|
+
- **CLI Tools**: Improved reliability of project creation
|
35
|
+
- Fixed template extraction issues
|
36
|
+
- Better error handling for project setup
|
37
|
+
- Improved project name replacement logic
|
38
|
+
|
39
|
+
### Security
|
40
|
+
- **Payment Processing**: Enhanced security measures
|
41
|
+
- Stronger API key validation
|
42
|
+
- Improved webhook verification
|
43
|
+
- Better access control for subscription features
|
44
|
+
|
45
|
+
## [Previous Versions]
|
46
|
+
|
47
|
+
### [1.2.24] and earlier
|
48
|
+
- Core Django-CFG functionality
|
49
|
+
- Basic payment provider support
|
50
|
+
- Configuration management system
|
51
|
+
- CLI tools for project creation
|
52
|
+
- Health monitoring modules
|
53
|
+
- Database and Redis integration
|
54
|
+
|
55
|
+
---
|
56
|
+
|
57
|
+
**Note**: This changelog focuses on user-facing features and API changes in the Django-CFG package.
|
@@ -0,0 +1,145 @@
|
|
1
|
+
# 🤝 Contributing to Django-CFG
|
2
|
+
|
3
|
+
Thank you for your interest in contributing to Django-CFG! This project aims to make Django configuration simple, type-safe, and developer-friendly.
|
4
|
+
|
5
|
+
## 🚀 Quick Start
|
6
|
+
|
7
|
+
### Development Setup
|
8
|
+
|
9
|
+
1. **Clone the repository**
|
10
|
+
```bash
|
11
|
+
git clone https://github.com/markolofsen/django-cfg.git
|
12
|
+
cd django-cfg
|
13
|
+
```
|
14
|
+
|
15
|
+
2. **Install dependencies**
|
16
|
+
```bash
|
17
|
+
poetry install --extras dev
|
18
|
+
```
|
19
|
+
|
20
|
+
3. **Run tests**
|
21
|
+
```bash
|
22
|
+
poetry run pytest
|
23
|
+
```
|
24
|
+
|
25
|
+
## 📋 Development Workflow
|
26
|
+
|
27
|
+
### Making Changes
|
28
|
+
|
29
|
+
1. **Create a feature branch**
|
30
|
+
```bash
|
31
|
+
git checkout -b feature/your-feature-name
|
32
|
+
```
|
33
|
+
|
34
|
+
2. **Make your changes**
|
35
|
+
- Follow the existing code style
|
36
|
+
- Add tests for new features
|
37
|
+
- Update documentation if needed
|
38
|
+
|
39
|
+
3. **Test your changes**
|
40
|
+
```bash
|
41
|
+
# Run all tests
|
42
|
+
poetry run pytest
|
43
|
+
|
44
|
+
# Run with coverage
|
45
|
+
poetry run pytest --cov=django_cfg
|
46
|
+
|
47
|
+
# Run linting
|
48
|
+
poetry run black src/ tests/
|
49
|
+
poetry run isort src/ tests/
|
50
|
+
poetry run flake8 src/ tests/
|
51
|
+
```
|
52
|
+
|
53
|
+
4. **Update version and generate requirements**
|
54
|
+
```bash
|
55
|
+
# Use our development CLI
|
56
|
+
poetry run python scripts/dev_cli.py
|
57
|
+
|
58
|
+
# Or manually bump version
|
59
|
+
poetry run python scripts/version_manager.py bump --bump-type patch
|
60
|
+
```
|
61
|
+
|
62
|
+
### Code Style
|
63
|
+
|
64
|
+
- **Python**: Follow PEP 8, use Black for formatting
|
65
|
+
- **Type Hints**: Required for all public APIs
|
66
|
+
- **Documentation**: Add docstrings for public methods
|
67
|
+
- **Tests**: Write tests for new features and bug fixes
|
68
|
+
|
69
|
+
## 🧪 Testing
|
70
|
+
|
71
|
+
### Running Tests
|
72
|
+
|
73
|
+
```bash
|
74
|
+
# All tests
|
75
|
+
poetry run pytest
|
76
|
+
|
77
|
+
# Specific test file
|
78
|
+
poetry run pytest tests/test_basic_config.py
|
79
|
+
|
80
|
+
# With coverage report
|
81
|
+
poetry run pytest --cov=django_cfg --cov-report=html
|
82
|
+
```
|
83
|
+
|
84
|
+
### Writing Tests
|
85
|
+
|
86
|
+
- Place tests in the `tests/` directory
|
87
|
+
- Use descriptive test names
|
88
|
+
- Test both success and error cases
|
89
|
+
- Mock external dependencies
|
90
|
+
|
91
|
+
## 📝 Pull Request Process
|
92
|
+
|
93
|
+
1. **Ensure tests pass**
|
94
|
+
```bash
|
95
|
+
poetry run pytest
|
96
|
+
```
|
97
|
+
|
98
|
+
2. **Update documentation** if your change affects the public API
|
99
|
+
|
100
|
+
3. **Create a pull request** with:
|
101
|
+
- Clear description of changes
|
102
|
+
- Link to any related issues
|
103
|
+
- Screenshots for UI changes
|
104
|
+
|
105
|
+
4. **Code review** - address any feedback from maintainers
|
106
|
+
|
107
|
+
## 🐛 Bug Reports
|
108
|
+
|
109
|
+
When reporting bugs, please include:
|
110
|
+
|
111
|
+
- Django-CFG version
|
112
|
+
- Django version
|
113
|
+
- Python version
|
114
|
+
- Minimal code example
|
115
|
+
- Full error traceback
|
116
|
+
|
117
|
+
## 💡 Feature Requests
|
118
|
+
|
119
|
+
For new features:
|
120
|
+
|
121
|
+
- Check existing issues first
|
122
|
+
- Describe the use case clearly
|
123
|
+
- Provide code examples if possible
|
124
|
+
- Consider backward compatibility
|
125
|
+
|
126
|
+
## 📚 Documentation
|
127
|
+
|
128
|
+
Documentation improvements are always welcome:
|
129
|
+
|
130
|
+
- Fix typos and grammar
|
131
|
+
- Add examples and use cases
|
132
|
+
- Improve API documentation
|
133
|
+
- Update README with new features
|
134
|
+
|
135
|
+
## ⚖️ License
|
136
|
+
|
137
|
+
By contributing, you agree that your contributions will be licensed under the MIT License.
|
138
|
+
|
139
|
+
## 🙏 Recognition
|
140
|
+
|
141
|
+
All contributors will be recognized in our README and release notes.
|
142
|
+
|
143
|
+
---
|
144
|
+
|
145
|
+
**Questions?** Open an issue or start a discussion. We're here to help! 🚀
|
django_cfg/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2025 ReformsAI Team
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|