django-queuebie 0.3.1__tar.gz → 0.3.4__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 (76) hide show
  1. django_queuebie-0.3.4/.ambient-package-update/templates/snippets/tagline.tpl +1 -0
  2. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/.github/workflows/ci.yml +3 -5
  3. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/.pre-commit-config.yaml +18 -13
  4. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/CHANGES.md +9 -0
  5. django_queuebie-0.3.4/CONTRIBUTING.md +77 -0
  6. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/PKG-INFO +8 -88
  7. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/README.md +1 -81
  8. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/SECURITY.md +1 -1
  9. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/pyproject.toml +10 -8
  10. django_queuebie-0.3.4/queuebie/__init__.py +8 -0
  11. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/registry.py +1 -1
  12. django_queuebie-0.3.1/.ambient-package-update/templates/snippets/tagline.tpl +0 -1
  13. django_queuebie-0.3.1/queuebie/__init__.py +0 -8
  14. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/.ambient-package-update/metadata.py +0 -0
  15. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/.ambient-package-update/templates/snippets/content.tpl +0 -0
  16. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/.editorconfig +0 -0
  17. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/.gitignore +0 -0
  18. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/.readthedocs.yaml +0 -0
  19. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/LICENSE +0 -0
  20. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/LICENSE.md +0 -0
  21. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/MANIFEST.in +0 -0
  22. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/Makefile +0 -0
  23. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/conf.py +0 -0
  24. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/features/changelog.rst +0 -0
  25. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/features/getting-started.md +0 -0
  26. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/features/introduction.md +0 -0
  27. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/features/motivation.md +0 -0
  28. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/features/settings.md +0 -0
  29. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/features/setup.md +0 -0
  30. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/index.rst +0 -0
  31. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/docs/make.bat +0 -0
  32. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/manage.py +0 -0
  33. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/apps.py +0 -0
  34. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/database_blocker.py +0 -0
  35. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/exceptions.py +0 -0
  36. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/logger.py +0 -0
  37. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/management/__init__.py +0 -0
  38. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/management/commands/__init__.py +0 -0
  39. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/management/commands/clear_queuebie_registry.py +0 -0
  40. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/messages.py +0 -0
  41. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/runner.py +0 -0
  42. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/settings.py +0 -0
  43. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/queuebie/utils.py +0 -0
  44. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/scripts/unix/install_requirements.sh +0 -0
  45. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/scripts/unix/publish_to_pypi.sh +0 -0
  46. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/scripts/windows/install_requirements.ps1 +0 -0
  47. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/scripts/windows/publish_to_pypi.ps1 +0 -0
  48. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/settings.py +0 -0
  49. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/__init__.py +0 -0
  50. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/handlers/__init__.py +0 -0
  51. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/handlers/commands/__init__.py +0 -0
  52. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/handlers/commands/testapp.py +0 -0
  53. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/handlers/events/__init__.py +0 -0
  54. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/handlers/events/testapp.py +0 -0
  55. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/messages/__init__.py +0 -0
  56. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/messages/commands/__init__.py +0 -0
  57. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/messages/commands/my_commands.py +0 -0
  58. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/messages/commands/other_commands.py +0 -0
  59. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/messages/events/__init__.py +0 -0
  60. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/messages/events/my_events.py +0 -0
  61. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/testapp/urls.py +0 -0
  62. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/__init__.py +0 -0
  63. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/helpers/__init__.py +0 -0
  64. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/helpers/commands.py +0 -0
  65. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/helpers/events.py +0 -0
  66. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/management_commands/__init__.py +0 -0
  67. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/management_commands/test_clear_queuebie_registry.py +0 -0
  68. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_apps.py +0 -0
  69. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_database_blocker.py +0 -0
  70. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_exceptions.py +0 -0
  71. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_logger.py +0 -0
  72. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_messages.py +0 -0
  73. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_registry.py +0 -0
  74. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_runner.py +0 -0
  75. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_settings.py +0 -0
  76. {django_queuebie-0.3.1 → django_queuebie-0.3.4}/tests/test_utils.py +0 -0
@@ -0,0 +1 @@
1
+ A simple and synchronous message queue for commands and events for Django.
@@ -21,7 +21,7 @@ jobs:
21
21
  run: pip install pre-commit
22
22
 
23
23
  - name: Run pre-commit hooks
24
- run: pre-commit run --all-files --hook-stage push
24
+ run: pre-commit run --all-files
25
25
 
26
26
 
27
27
  tests:
@@ -30,17 +30,15 @@ jobs:
30
30
  strategy:
31
31
  matrix:
32
32
  python-version: ['3.10', '3.11', '3.12', '3.13', ]
33
- django-version: ['42', '50', '51', ]
33
+ django-version: ['42', '51', '52', ]
34
34
 
35
35
  exclude:
36
36
  - python-version: '3.9'
37
- django-version: 50
37
+ django-version: 52
38
38
  - python-version: '3.9'
39
39
  django-version: 51
40
40
  - python-version: "3.13"
41
41
  django-version: 42
42
- - python-version: "3.13"
43
- django-version: 50
44
42
 
45
43
  steps:
46
44
  - uses: actions/checkout@v4
@@ -3,12 +3,12 @@
3
3
 
4
4
  repos:
5
5
  - repo: https://github.com/astral-sh/ruff-pre-commit
6
- rev: v0.9.3
6
+ rev: v0.11.11
7
7
  hooks:
8
8
  # Run the Ruff formatter.
9
9
  - id: ruff-format
10
10
  # Run the Ruff linter.
11
- - id: ruff
11
+ - id: ruff-check
12
12
  args: [--fix, --exit-non-zero-on-fix]
13
13
 
14
14
  - repo: https://github.com/adamchainz/blacken-docs
@@ -16,23 +16,23 @@ repos:
16
16
  hooks:
17
17
  - id: blacken-docs
18
18
  additional_dependencies:
19
- - black==24.10.0
19
+ - black==25.1.0
20
20
  files: '(?:README\.md|\.ambient-package-update\/templates\/snippets\/.*\.tpl|docs\/.*\.(?:md|rst))'
21
21
 
22
22
  - repo: https://github.com/asottile/pyupgrade
23
- rev: v3.19.1
23
+ rev: v3.20.0
24
24
  hooks:
25
25
  - id: pyupgrade
26
26
  args: [ --py310-plus ]
27
27
 
28
28
  - repo: https://github.com/adamchainz/django-upgrade
29
- rev: 1.22.2
29
+ rev: 1.25.0
30
30
  hooks:
31
31
  - id: django-upgrade
32
32
  args: [--target-version, "4.2"]
33
33
 
34
34
  - repo: https://github.com/adamchainz/djade-pre-commit
35
- rev: 1.3.2
35
+ rev: 1.4.0
36
36
  hooks:
37
37
  - id: djade
38
38
  args: [--target-version, "4.2"]
@@ -45,10 +45,15 @@ repos:
45
45
  - repo: https://github.com/pre-commit/pre-commit-hooks
46
46
  rev: v5.0.0
47
47
  hooks:
48
- - id: no-commit-to-branch
49
- args:
50
- [
51
- "--pattern",
52
- '^^(?!(?:feature|hotfix|bugfix|refactor|maintenance)/[\w\d\-_#]+).*$',
53
- ]
54
- stages: [ pre-commit ]
48
+ - id: check-ast
49
+ - id: check-builtin-literals
50
+ - id: check-case-conflict
51
+ - id: check-docstring-first
52
+ - id: check-executables-have-shebangs
53
+ - id: check-json
54
+ - id: check-merge-conflict
55
+ - id: check-toml
56
+ - id: end-of-file-fixer
57
+ - id: fix-byte-order-marker
58
+ - id: mixed-line-ending
59
+ - id: trailing-whitespace
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ **0.3.4** (2025-05-29)
4
+ * Maintenance updates via ambient-package-update
5
+
6
+ **0.3.3** (2025-04-03)
7
+ * Clarified package tagline
8
+
9
+ **0.3.2** (2025-04-03)
10
+ * Maintenance updates via ambient-package-update
11
+
3
12
  * *0.3.1* (2025-03-19)
4
13
  * Added a paranoid-ish test to check that the import logic isn't breaking any testing functionality
5
14
 
@@ -0,0 +1,77 @@
1
+ # Contribute
2
+
3
+ ## Setup package for development
4
+
5
+ - Create a Python virtualenv and activate it
6
+ - Install "pip-tools" with `pip install -U pip-tools`
7
+ - Compile the requirements with `pip-compile --extra dev, -o requirements.txt pyproject.toml --resolver=backtracking`
8
+ - Sync the dependencies with your virtualenv with `pip-sync`
9
+
10
+ ## Add functionality
11
+
12
+ - Create a new branch for your feature
13
+ - Change the dependency in your requirements.txt to a local (editable) one that points to your local file system:
14
+ `-e /Users/workspace/django-queuebie` or via pip `pip install -e /Users/workspace/django-queuebie`
15
+ - Ensure the code passes the tests
16
+ - Create a pull request
17
+
18
+ ## Run tests
19
+
20
+ - Run tests
21
+ ````
22
+ pytest --ds settings tests
23
+ ````
24
+
25
+ - Check coverage
26
+ ````
27
+ coverage run -m pytest --ds settings tests
28
+ coverage report -m
29
+ ````
30
+
31
+ ## Git hooks (via pre-commit)
32
+
33
+ We use pre-push hooks to ensure that only linted code reaches our remote repository and pipelines aren't triggered in
34
+ vain.
35
+
36
+ To enable the configured pre-push hooks, you need to [install](https://pre-commit.com/) pre-commit and run once:
37
+
38
+ pre-commit install -t pre-push -t pre-commit --install-hooks
39
+
40
+ This will permanently install the git hooks for both, frontend and backend, in your local
41
+ [`.git/hooks`](./.git/hooks) folder.
42
+ The hooks are configured in the [`.pre-commit-config.yaml`](templates/.pre-commit-config.yaml.tpl).
43
+
44
+ You can check whether hooks work as intended using the [run](https://pre-commit.com/#pre-commit-run) command:
45
+
46
+ pre-commit run [hook-id] [options]
47
+
48
+ Example: run single hook
49
+
50
+ pre-commit run ruff --all-files
51
+
52
+ Example: run all hooks of pre-push stage
53
+
54
+ pre-commit run --all-files
55
+
56
+ ## Update documentation
57
+
58
+ - To build the documentation, run: `sphinx-build docs/ docs/_build/html/`.
59
+ - Open `docs/_build/html/index.html` to see the documentation.
60
+
61
+
62
+ ### Translation files
63
+
64
+ If you have added custom text, make sure to wrap it in `_()` where `_` is
65
+ gettext_lazy (`from django.utils.translation import gettext_lazy as _`).
66
+
67
+ How to create translation file:
68
+
69
+ * Navigate to `django-queuebie`
70
+ * `python manage.py makemessages -l de`
71
+ * Have a look at the new/changed files within `queuebie/locale`
72
+
73
+ How to compile translation files:
74
+
75
+ * Navigate to `django-queuebie`
76
+ * `python manage.py compilemessages`
77
+ * Have a look at the new/changed files within `queuebie/locale`
@@ -1,15 +1,15 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: django-queuebie
3
- Version: 0.3.1
4
- Summary: Simple message queue for commands and events (CQRS)
3
+ Version: 0.3.4
4
+ Summary: A simple and synchronous message queue for commands and events for Django
5
5
  Author-email: Ambient Digital <hello@ambient.digital>
6
6
  Description-Content-Type: text/markdown
7
7
  Classifier: Development Status :: 4 - Beta
8
8
  Classifier: Environment :: Web Environment
9
9
  Classifier: Framework :: Django
10
10
  Classifier: Framework :: Django :: 4.2
11
- Classifier: Framework :: Django :: 5.0
12
11
  Classifier: Framework :: Django :: 5.1
12
+ Classifier: Framework :: Django :: 5.2
13
13
  Classifier: Intended Audience :: Developers
14
14
  Classifier: License :: OSI Approved :: MIT License
15
15
  Classifier: Natural Language :: English
@@ -26,14 +26,14 @@ Requires-Dist: typer~=0.12 ; extra == "dev"
26
26
  Requires-Dist: pytest-django~=4.9 ; extra == "dev"
27
27
  Requires-Dist: pytest-mock~=3.14 ; extra == "dev"
28
28
  Requires-Dist: coverage~=7.6 ; extra == "dev"
29
- Requires-Dist: pre-commit~=4.0 ; extra == "dev"
30
- Requires-Dist: ruff~=0.6 ; extra == "dev"
29
+ Requires-Dist: pre-commit~=4.2 ; extra == "dev"
30
+ Requires-Dist: ruff~=0.11 ; extra == "dev"
31
31
  Requires-Dist: sphinx~=7.1 ; extra == "dev"
32
32
  Requires-Dist: sphinx-rtd-theme~=2.0 ; extra == "dev"
33
33
  Requires-Dist: m2r2==0.3.3.post2 ; extra == "dev"
34
34
  Requires-Dist: mistune<2.0.0 ; extra == "dev"
35
- Requires-Dist: flit~=3.9 ; extra == "dev"
36
- Requires-Dist: keyring~=25.4 ; extra == "dev"
35
+ Requires-Dist: flit~=3.12 ; extra == "dev"
36
+ Requires-Dist: keyring~=25.6 ; extra == "dev"
37
37
  Requires-Dist: ambient-package-update ; extra == "dev"
38
38
  Project-URL: Bugtracker, https://github.com/ambient-innovation/django-queuebie/issues
39
39
  Project-URL: Changelog, https://django-queuebie.readthedocs.io/en/latest/features/changelog.html
@@ -49,7 +49,7 @@ Provides-Extra: dev
49
49
  [![Coding Style](https://img.shields.io/badge/code%20style-Ruff-000000.svg)](https://github.com/astral-sh/ruff)
50
50
  [![Documentation Status](https://readthedocs.org/projects/django-queuebie/badge/?version=latest)](https://django-queuebie.readthedocs.io/en/latest/?badge=latest)
51
51
 
52
- A simple message queue for commands and events (CQRS) for Django.
52
+ A simple and synchronous message queue for commands and events for Django.
53
53
 
54
54
  * [PyPI](https://pypi.org/project/django-queuebie/)
55
55
  * [GitHub](https://github.com/ambient-innovation/django-queuebie)
@@ -132,85 +132,6 @@ handle_message(
132
132
 
133
133
 
134
134
 
135
- ## Contribute
136
-
137
- ### Setup package for development
138
-
139
- - Create a Python virtualenv and activate it
140
- - Install "pip-tools" with `pip install -U pip-tools`
141
- - Compile the requirements with `pip-compile --extra dev, -o requirements.txt pyproject.toml --resolver=backtracking`
142
- - Sync the dependencies with your virtualenv with `pip-sync`
143
-
144
- ### Add functionality
145
-
146
- - Create a new branch for your feature
147
- - Change the dependency in your requirements.txt to a local (editable) one that points to your local file system:
148
- `-e /Users/workspace/django-queuebie` or via pip `pip install -e /Users/workspace/django-queuebie`
149
- - Ensure the code passes the tests
150
- - Create a pull request
151
-
152
- ### Run tests
153
-
154
- - Run tests
155
- ````
156
- pytest --ds settings tests
157
- ````
158
-
159
- - Check coverage
160
- ````
161
- coverage run -m pytest --ds settings tests
162
- coverage report -m
163
- ````
164
-
165
- ### Git hooks (via pre-commit)
166
-
167
- We use pre-push hooks to ensure that only linted code reaches our remote repository and pipelines aren't triggered in
168
- vain.
169
-
170
- To enable the configured pre-push hooks, you need to [install](https://pre-commit.com/) pre-commit and run once:
171
-
172
- pre-commit install -t pre-push -t pre-commit --install-hooks
173
-
174
- This will permanently install the git hooks for both, frontend and backend, in your local
175
- [`.git/hooks`](./.git/hooks) folder.
176
- The hooks are configured in the [`.pre-commit-config.yaml`](templates/.pre-commit-config.yaml.tpl).
177
-
178
- You can check whether hooks work as intended using the [run](https://pre-commit.com/#pre-commit-run) command:
179
-
180
- pre-commit run [hook-id] [options]
181
-
182
- Example: run single hook
183
-
184
- pre-commit run ruff --all-files
185
-
186
- Example: run all hooks of pre-push stage
187
-
188
- pre-commit run --all-files --hook-stage push
189
-
190
- ### Update documentation
191
-
192
- - To build the documentation, run: `sphinx-build docs/ docs/_build/html/`.
193
- - Open `docs/_build/html/index.html` to see the documentation.
194
-
195
-
196
- ### Translation files
197
-
198
- If you have added custom text, make sure to wrap it in `_()` where `_` is
199
- gettext_lazy (`from django.utils.translation import gettext_lazy as _`).
200
-
201
- How to create translation file:
202
-
203
- * Navigate to `django-queuebie`
204
- * `python manage.py makemessages -l de`
205
- * Have a look at the new/changed files within `queuebie/locale`
206
-
207
- How to compile translation files:
208
-
209
- * Navigate to `django-queuebie`
210
- * `python manage.py compilemessages`
211
- * Have a look at the new/changed files within `queuebie/locale`
212
-
213
-
214
135
  ### Publish to ReadTheDocs.io
215
136
 
216
137
  - Fetch the latest changes in GitHub mirror and push them
@@ -248,4 +169,3 @@ configuration and setup files. It works similar to well-known updaters like `pyu
248
169
  To run an update, refer to the [documentation page](https://pypi.org/project/ambient-package-update/)
249
170
  of the "ambient-package-update".
250
171
 
251
-
@@ -5,7 +5,7 @@
5
5
  [![Coding Style](https://img.shields.io/badge/code%20style-Ruff-000000.svg)](https://github.com/astral-sh/ruff)
6
6
  [![Documentation Status](https://readthedocs.org/projects/django-queuebie/badge/?version=latest)](https://django-queuebie.readthedocs.io/en/latest/?badge=latest)
7
7
 
8
- A simple message queue for commands and events (CQRS) for Django.
8
+ A simple and synchronous message queue for commands and events for Django.
9
9
 
10
10
  * [PyPI](https://pypi.org/project/django-queuebie/)
11
11
  * [GitHub](https://github.com/ambient-innovation/django-queuebie)
@@ -88,85 +88,6 @@ handle_message(
88
88
 
89
89
 
90
90
 
91
- ## Contribute
92
-
93
- ### Setup package for development
94
-
95
- - Create a Python virtualenv and activate it
96
- - Install "pip-tools" with `pip install -U pip-tools`
97
- - Compile the requirements with `pip-compile --extra dev, -o requirements.txt pyproject.toml --resolver=backtracking`
98
- - Sync the dependencies with your virtualenv with `pip-sync`
99
-
100
- ### Add functionality
101
-
102
- - Create a new branch for your feature
103
- - Change the dependency in your requirements.txt to a local (editable) one that points to your local file system:
104
- `-e /Users/workspace/django-queuebie` or via pip `pip install -e /Users/workspace/django-queuebie`
105
- - Ensure the code passes the tests
106
- - Create a pull request
107
-
108
- ### Run tests
109
-
110
- - Run tests
111
- ````
112
- pytest --ds settings tests
113
- ````
114
-
115
- - Check coverage
116
- ````
117
- coverage run -m pytest --ds settings tests
118
- coverage report -m
119
- ````
120
-
121
- ### Git hooks (via pre-commit)
122
-
123
- We use pre-push hooks to ensure that only linted code reaches our remote repository and pipelines aren't triggered in
124
- vain.
125
-
126
- To enable the configured pre-push hooks, you need to [install](https://pre-commit.com/) pre-commit and run once:
127
-
128
- pre-commit install -t pre-push -t pre-commit --install-hooks
129
-
130
- This will permanently install the git hooks for both, frontend and backend, in your local
131
- [`.git/hooks`](./.git/hooks) folder.
132
- The hooks are configured in the [`.pre-commit-config.yaml`](templates/.pre-commit-config.yaml.tpl).
133
-
134
- You can check whether hooks work as intended using the [run](https://pre-commit.com/#pre-commit-run) command:
135
-
136
- pre-commit run [hook-id] [options]
137
-
138
- Example: run single hook
139
-
140
- pre-commit run ruff --all-files
141
-
142
- Example: run all hooks of pre-push stage
143
-
144
- pre-commit run --all-files --hook-stage push
145
-
146
- ### Update documentation
147
-
148
- - To build the documentation, run: `sphinx-build docs/ docs/_build/html/`.
149
- - Open `docs/_build/html/index.html` to see the documentation.
150
-
151
-
152
- ### Translation files
153
-
154
- If you have added custom text, make sure to wrap it in `_()` where `_` is
155
- gettext_lazy (`from django.utils.translation import gettext_lazy as _`).
156
-
157
- How to create translation file:
158
-
159
- * Navigate to `django-queuebie`
160
- * `python manage.py makemessages -l de`
161
- * Have a look at the new/changed files within `queuebie/locale`
162
-
163
- How to compile translation files:
164
-
165
- * Navigate to `django-queuebie`
166
- * `python manage.py compilemessages`
167
- * Have a look at the new/changed files within `queuebie/locale`
168
-
169
-
170
91
  ### Publish to ReadTheDocs.io
171
92
 
172
93
  - Fetch the latest changes in GitHub mirror and push them
@@ -203,4 +124,3 @@ configuration and setup files. It works similar to well-known updaters like `pyu
203
124
 
204
125
  To run an update, refer to the [documentation page](https://pypi.org/project/ambient-package-update/)
205
126
  of the "ambient-package-update".
206
-
@@ -4,7 +4,7 @@ The maintainers of this package take security bugs seriously. We appreciate your
4
4
  disclose your findings, and will make every effort to acknowledge your contributions.
5
5
 
6
6
  To report a security issue, please use the GitHub Security
7
- Advisory ["Report a Vulnerability"](https://github.com/ambient-innovation/django-queuebie/security/advisories/new)
7
+ Advisory ["Report a Vulnerability"](https://github.com/ambient-innovation/django-queuebie/security/advisories/new)
8
8
  tab.
9
9
 
10
10
  The maintainers will send a response indicating the next steps in handling your report. After the initial reply to
@@ -13,8 +13,8 @@ classifiers = [
13
13
  "Environment :: Web Environment",
14
14
  "Framework :: Django",
15
15
  "Framework :: Django :: 4.2",
16
- "Framework :: Django :: 5.0",
17
16
  "Framework :: Django :: 5.1",
17
+ "Framework :: Django :: 5.2",
18
18
  "Intended Audience :: Developers",
19
19
  "License :: OSI Approved :: MIT License",
20
20
  "Natural Language :: English",
@@ -42,14 +42,14 @@ dev = [
42
42
  'pytest-django~=4.9',
43
43
  'pytest-mock~=3.14',
44
44
  'coverage~=7.6',
45
- 'pre-commit~=4.0',
46
- 'ruff~=0.6',
45
+ 'pre-commit~=4.2',
46
+ 'ruff~=0.11',
47
47
  'sphinx~=7.1',
48
48
  'sphinx-rtd-theme~=2.0',
49
49
  'm2r2==0.3.3.post2',
50
50
  'mistune<2.0.0',
51
- 'flit~=3.9',
52
- 'keyring~=25.4',
51
+ 'flit~=3.12',
52
+ 'keyring~=25.6',
53
53
  'ambient-package-update',
54
54
  ]
55
55
 
@@ -90,7 +90,8 @@ lint.select = [
90
90
  "ANN401", # Checks that function arguments are annotated with a more specific type than Any
91
91
  "TRY", # Clean try/except
92
92
  "ERA", # Commented out code
93
- "INP" # Ban PEP-420 implicit namespace packages
93
+ "INP", # Ban PEP-420 implicit namespace packages
94
+ "C90", # McCabe code complexity
94
95
  ]
95
96
  lint.ignore = [
96
97
  "TD002", # Missing author in TODO
@@ -124,7 +125,8 @@ lint.fixable = [
124
125
  "ANN401", # Checks that function arguments are annotated with a more specific type than Any
125
126
  "TRY", # Clean try/except
126
127
  "ERA", # Commented out code
127
- "INP" # Ban PEP-420 implicit namespace packages
128
+ "INP", # Ban PEP-420 implicit namespace packages
129
+ "C90", # McCabe code complexity
128
130
  ]
129
131
  lint.unfixable = []
130
132
 
@@ -202,8 +204,8 @@ legacy_tox_ini = """
202
204
  # Django deprecation overview: https://www.djangoproject.com/download/
203
205
  deps =
204
206
  django42: Django==4.2.*
205
- django50: Django==5.0.*
206
207
  django51: Django==5.1.*
208
+ django52: Django==5.2.*
207
209
  extras = dev,
208
210
  commands =
209
211
  coverage run -m pytest --ds settings tests
@@ -0,0 +1,8 @@
1
+ """A simple and synchronous message queue for commands and events for Django"""
2
+
3
+ __version__ = "0.3.4"
4
+
5
+ from queuebie.registry import MessageRegistry
6
+
7
+ # Initialise global message registry
8
+ message_registry = MessageRegistry()
@@ -86,7 +86,7 @@ class MessageRegistry:
86
86
 
87
87
  return decorator
88
88
 
89
- def autodiscover(self) -> None:
89
+ def autodiscover(self) -> None: # noqa: C901
90
90
  """
91
91
  Detects message registries which have been registered via the "register_*" decorator.
92
92
  """
@@ -1 +0,0 @@
1
- A simple message queue for commands and events (CQRS) for Django.
@@ -1,8 +0,0 @@
1
- """Simple message queue for commands and events (CQRS)"""
2
-
3
- __version__ = "0.3.1"
4
-
5
- from queuebie.registry import MessageRegistry
6
-
7
- # Create global message registry
8
- message_registry = MessageRegistry()
File without changes