django-cfg 1.4.63__py3-none-any.whl → 1.4.64__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.
Potentially problematic release.
This version of django-cfg might be problematic. Click here for more details.
- django_cfg/__init__.py +1 -1
- django_cfg/apps/centrifugo/apps.py +1 -1
- django_cfg/apps/centrifugo/codegen/discovery.py +1 -1
- django_cfg/apps/centrifugo/models/centrifugo_log.py +1 -1
- django_cfg/apps/centrifugo/router.py +2 -2
- django_cfg/apps/centrifugo/services/client/client.py +6 -1
- django_cfg/apps/centrifugo/services/client/config.py +8 -0
- django_cfg/apps/centrifugo/services/client/exceptions.py +1 -1
- django_cfg/apps/centrifugo/services/logging.py +1 -1
- django_cfg/apps/centrifugo/views/admin_api.py +7 -1
- django_cfg/pyproject.toml +1 -1
- {django_cfg-1.4.63.dist-info → django_cfg-1.4.64.dist-info}/METADATA +1 -1
- {django_cfg-1.4.63.dist-info → django_cfg-1.4.64.dist-info}/RECORD +16 -16
- {django_cfg-1.4.63.dist-info → django_cfg-1.4.64.dist-info}/WHEEL +0 -0
- {django_cfg-1.4.63.dist-info → django_cfg-1.4.64.dist-info}/entry_points.txt +0 -0
- {django_cfg-1.4.63.dist-info → django_cfg-1.4.64.dist-info}/licenses/LICENSE +0 -0
django_cfg/__init__.py
CHANGED
|
@@ -15,7 +15,7 @@ class CentrifugoConfig(AppConfig):
|
|
|
15
15
|
- Async client for publishing messages to Centrifugo
|
|
16
16
|
- ACK tracking for delivery confirmation
|
|
17
17
|
- Logging of all publish operations
|
|
18
|
-
- Migration-friendly API (mirrors
|
|
18
|
+
- Migration-friendly API (mirrors legacy WebSocket solution patterns)
|
|
19
19
|
"""
|
|
20
20
|
|
|
21
21
|
default_auto_field = "django.db.models.BigAutoField"
|
|
@@ -50,7 +50,7 @@ def discover_rpc_methods_from_router(router: Any) -> List[RPCMethodInfo]:
|
|
|
50
50
|
List of discovered method information
|
|
51
51
|
|
|
52
52
|
Example:
|
|
53
|
-
>>>
|
|
53
|
+
>>> # Legacy router import removed
|
|
54
54
|
>>> router = MessageRouter(connection_manager)
|
|
55
55
|
>>>
|
|
56
56
|
>>> @router.register("echo")
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""
|
|
2
2
|
MessageRouter for Centrifugo RPC handlers.
|
|
3
3
|
|
|
4
|
-
Compatible with
|
|
4
|
+
Compatible with legacy WebSocket solution's MessageRouter interface for code generation.
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
7
|
import logging
|
|
@@ -14,7 +14,7 @@ class MessageRouter:
|
|
|
14
14
|
"""
|
|
15
15
|
Message router for Centrifugo RPC handlers.
|
|
16
16
|
|
|
17
|
-
Provides
|
|
17
|
+
Provides legacy WebSocket solution compatible interface for handler registration
|
|
18
18
|
and discovery by codegen system.
|
|
19
19
|
"""
|
|
20
20
|
|
|
@@ -4,7 +4,7 @@ Django-CFG Centrifugo Client.
|
|
|
4
4
|
Async client enabling Django applications to publish messages
|
|
5
5
|
to Centrifugo via Python Wrapper with ACK tracking.
|
|
6
6
|
|
|
7
|
-
Mirrors DjangoCfgRPCClient interface for easy migration from
|
|
7
|
+
Mirrors DjangoCfgRPCClient interface for easy migration from legacy WebSocket solution.
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
import asyncio
|
|
@@ -83,6 +83,7 @@ class CentrifugoClient:
|
|
|
83
83
|
http_timeout: int = 35,
|
|
84
84
|
max_retries: int = 3,
|
|
85
85
|
retry_delay: float = 1.0,
|
|
86
|
+
verify_ssl: bool = False,
|
|
86
87
|
):
|
|
87
88
|
"""
|
|
88
89
|
Initialize Centrifugo client.
|
|
@@ -95,6 +96,7 @@ class CentrifugoClient:
|
|
|
95
96
|
http_timeout: HTTP request timeout (seconds)
|
|
96
97
|
max_retries: Maximum retry attempts
|
|
97
98
|
retry_delay: Delay between retries (seconds)
|
|
99
|
+
verify_ssl: Whether to verify SSL certificates (default: False, allows self-signed certs)
|
|
98
100
|
"""
|
|
99
101
|
self.wrapper_url = wrapper_url or self._get_wrapper_url_from_settings()
|
|
100
102
|
self.wrapper_api_key = wrapper_api_key
|
|
@@ -103,6 +105,7 @@ class CentrifugoClient:
|
|
|
103
105
|
self.http_timeout = http_timeout
|
|
104
106
|
self.max_retries = max_retries
|
|
105
107
|
self.retry_delay = retry_delay
|
|
108
|
+
self.verify_ssl = verify_ssl
|
|
106
109
|
|
|
107
110
|
# Create HTTP client with connection pooling
|
|
108
111
|
headers = {"Content-Type": "application/json"}
|
|
@@ -114,6 +117,7 @@ class CentrifugoClient:
|
|
|
114
117
|
headers=headers,
|
|
115
118
|
timeout=httpx.Timeout(self.http_timeout),
|
|
116
119
|
limits=httpx.Limits(max_keepalive_connections=20, max_connections=50),
|
|
120
|
+
verify=self.verify_ssl,
|
|
117
121
|
)
|
|
118
122
|
|
|
119
123
|
logger.info(f"Centrifugo client initialized: {self.wrapper_url}")
|
|
@@ -567,6 +571,7 @@ def _create_client_from_settings() -> CentrifugoClient:
|
|
|
567
571
|
http_timeout=cfg.http_timeout,
|
|
568
572
|
max_retries=cfg.max_retries,
|
|
569
573
|
retry_delay=cfg.retry_delay,
|
|
574
|
+
verify_ssl=cfg.verify_ssl,
|
|
570
575
|
)
|
|
571
576
|
|
|
572
577
|
|
|
@@ -122,6 +122,12 @@ class DjangoCfgCentrifugoConfig(BaseModel):
|
|
|
122
122
|
description="Delay between retries (seconds)",
|
|
123
123
|
)
|
|
124
124
|
|
|
125
|
+
# SSL settings
|
|
126
|
+
verify_ssl: bool = Field(
|
|
127
|
+
default=False,
|
|
128
|
+
description="Verify SSL certificates for HTTPS connections (default: False for self-signed certs)",
|
|
129
|
+
)
|
|
130
|
+
|
|
125
131
|
# Logging settings
|
|
126
132
|
log_all_calls: bool = Field(
|
|
127
133
|
default=False,
|
|
@@ -197,6 +203,7 @@ class DjangoCfgCentrifugoConfig(BaseModel):
|
|
|
197
203
|
"HTTP_TIMEOUT": self.http_timeout,
|
|
198
204
|
"MAX_RETRIES": self.max_retries,
|
|
199
205
|
"RETRY_DELAY": self.retry_delay,
|
|
206
|
+
"VERIFY_SSL": self.verify_ssl,
|
|
200
207
|
"LOG_ALL_CALLS": self.log_all_calls,
|
|
201
208
|
"LOG_ONLY_WITH_ACK": self.log_only_with_ack,
|
|
202
209
|
"LOG_LEVEL": self.log_level,
|
|
@@ -222,6 +229,7 @@ class DjangoCfgCentrifugoConfig(BaseModel):
|
|
|
222
229
|
"http_timeout": self.http_timeout,
|
|
223
230
|
"max_retries": self.max_retries,
|
|
224
231
|
"retry_delay": self.retry_delay,
|
|
232
|
+
"verify_ssl": self.verify_ssl,
|
|
225
233
|
}
|
|
226
234
|
|
|
227
235
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Custom Exceptions for Centrifugo Client.
|
|
3
3
|
|
|
4
4
|
Provides specific exception types for better error handling and debugging.
|
|
5
|
-
Mirrors
|
|
5
|
+
Mirrors legacy WebSocket solution exception patterns for easy migration.
|
|
6
6
|
"""
|
|
7
7
|
|
|
8
8
|
from typing import Optional
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Centrifugo Logging helper for tracking publish operations.
|
|
3
3
|
|
|
4
4
|
Provides async-safe logging of Centrifugo publishes to database.
|
|
5
|
-
Mirrors RPCLogger patterns from
|
|
5
|
+
Mirrors RPCLogger patterns from legacy WebSocket solution for easy migration.
|
|
6
6
|
"""
|
|
7
7
|
|
|
8
8
|
import time
|
|
@@ -58,15 +58,21 @@ class CentrifugoAdminAPIViewSet(viewsets.ViewSet):
|
|
|
58
58
|
|
|
59
59
|
headers = {"Content-Type": "application/json"}
|
|
60
60
|
if config.centrifugo_api_key:
|
|
61
|
-
|
|
61
|
+
# Centrifugo expects "Authorization: apikey <key>" header
|
|
62
|
+
headers["Authorization"] = f"apikey {config.centrifugo_api_key}"
|
|
63
|
+
logger.debug(f"Using Centrifugo API key: {config.centrifugo_api_key[:10]}...")
|
|
64
|
+
else:
|
|
65
|
+
logger.warning("No Centrifugo API key configured!")
|
|
62
66
|
|
|
63
67
|
# Use base URL without /api suffix since we'll add it in requests
|
|
64
68
|
base_url = config.centrifugo_api_url.rstrip('/api').rstrip('/')
|
|
69
|
+
logger.debug(f"Centrifugo API base URL: {base_url}")
|
|
65
70
|
|
|
66
71
|
self._http_client = httpx.AsyncClient(
|
|
67
72
|
base_url=base_url,
|
|
68
73
|
headers=headers,
|
|
69
74
|
timeout=httpx.Timeout(10.0),
|
|
75
|
+
verify=False, # Disable SSL verification for self-signed certs
|
|
70
76
|
)
|
|
71
77
|
|
|
72
78
|
return self._http_client
|
django_cfg/pyproject.toml
CHANGED
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "django-cfg"
|
|
7
|
-
version = "1.4.
|
|
7
|
+
version = "1.4.64"
|
|
8
8
|
description = "Django AI framework with built-in agents, type-safe Pydantic v2 configuration, and 8 enterprise apps. Replace settings.py, validate at startup, 90% less code. Production-ready AI workflows for Django."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
keywords = [ "django", "configuration", "pydantic", "settings", "type-safety", "pydantic-settings", "django-environ", "startup-validation", "ide-autocomplete", "ai-agents", "enterprise-django", "django-settings", "type-safe-config",]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-cfg
|
|
3
|
-
Version: 1.4.
|
|
3
|
+
Version: 1.4.64
|
|
4
4
|
Summary: Django AI framework with built-in agents, type-safe Pydantic v2 configuration, and 8 enterprise apps. Replace settings.py, validate at startup, 90% less code. Production-ready AI workflows for Django.
|
|
5
5
|
Project-URL: Homepage, https://djangocfg.com
|
|
6
6
|
Project-URL: Documentation, https://djangocfg.com
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
django_cfg/README.md,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
django_cfg/__init__.py,sha256=
|
|
2
|
+
django_cfg/__init__.py,sha256=GvXegabjq71wrj3IiFpuA9KdBa3y-bteK912rbskxvc,1620
|
|
3
3
|
django_cfg/apps.py,sha256=72m3uuvyqGiLx6gOfE-BD3P61jddCCERuBOYpxTX518,1605
|
|
4
4
|
django_cfg/config.py,sha256=y4Z3rnYsHBE0TehpwAIPaxr---mkvyKrZGGsNwYso74,1398
|
|
5
5
|
django_cfg/apps/__init__.py,sha256=JtDmEYt1OcleWM2ZaeX0LKDnRQzPOavfaXBWG4ECB5Q,26
|
|
@@ -120,10 +120,10 @@ django_cfg/apps/api/health/serializers.py,sha256=Y_kn_RIn4MBRJWbsO2_DNEG_AqxnhuD
|
|
|
120
120
|
django_cfg/apps/api/health/urls.py,sha256=eCTzgB4rv_H2W0NrixPO6qsh0pT2oUePrYAT5D35QIY,550
|
|
121
121
|
django_cfg/apps/api/health/views.py,sha256=65oA6O3gaz2ECY2SiXlT3n4JpORt0nDufa_10um0nRw,8194
|
|
122
122
|
django_cfg/apps/centrifugo/__init__.py,sha256=VeMqGhK9OgFikSbF3ZgBEqQJ8y7YvKzbWmXsxunJ7FI,1833
|
|
123
|
-
django_cfg/apps/centrifugo/apps.py,sha256=
|
|
123
|
+
django_cfg/apps/centrifugo/apps.py,sha256=lsNkssW5QAk3IkjRxxck-Dvl8pD1NI4HLvQynuA7UhQ,882
|
|
124
124
|
django_cfg/apps/centrifugo/decorators.py,sha256=J3KA0ll3lYwU_gLPKmfmB0HQ5vFnbSABbCNOjKm3y-Y,4174
|
|
125
125
|
django_cfg/apps/centrifugo/registry.py,sha256=HRaBN39UlCMX6ZAysYhdCWMlzAx1scGTvgZLyl3MCjc,2819
|
|
126
|
-
django_cfg/apps/centrifugo/router.py,sha256=
|
|
126
|
+
django_cfg/apps/centrifugo/router.py,sha256=HyiJF0t3w085Upu9SPaTJ-qcSW8JYND71rXtuEFAt2g,3116
|
|
127
127
|
django_cfg/apps/centrifugo/urls.py,sha256=wb7MwTmsZC1uewLQrUBpULpCVwzwh9YztUEgmMnLDQ4,902
|
|
128
128
|
django_cfg/apps/centrifugo/urls_admin.py,sha256=Bo_T1Y2bL3FQxdE1nsvzApFrCl976hKdTGw5tqFf0ss,431
|
|
129
129
|
django_cfg/apps/centrifugo/admin/__init__.py,sha256=JoDpJaJwT4f0ntWi8eNgNN5RRzWRty2fKdbDm-7PwEY,254
|
|
@@ -133,7 +133,7 @@ django_cfg/apps/centrifugo/codegen/IMPLEMENTATION_SUMMARY.md,sha256=8AGzxD-5i7au
|
|
|
133
133
|
django_cfg/apps/centrifugo/codegen/README.md,sha256=2UUicvh_wVAyMoR9wZlO5F98TlN_Jx2imzKklYEiJQE,7149
|
|
134
134
|
django_cfg/apps/centrifugo/codegen/USAGE.md,sha256=vjwW86vc-GDhmnafpOTewU_tvNwYkwbv0SWZRhee_o4,17159
|
|
135
135
|
django_cfg/apps/centrifugo/codegen/__init__.py,sha256=FSaoEnPlaO-QudsL859D9Yht3NPHGVazmKuElnbh7Qk,392
|
|
136
|
-
django_cfg/apps/centrifugo/codegen/discovery.py,sha256=
|
|
136
|
+
django_cfg/apps/centrifugo/codegen/discovery.py,sha256=WHCKZ5cy0ampjfFNuIwmxZKOvR6n4IuOSvLUHQ9g2jQ,6903
|
|
137
137
|
django_cfg/apps/centrifugo/codegen/generators/go_thin/__init__.py,sha256=aSOeGysELkxi6nzmmyfuUYAvve_erSnyfSRKGuRgVSc,104
|
|
138
138
|
django_cfg/apps/centrifugo/codegen/generators/go_thin/generator.py,sha256=3_EFLLIIjz50tU_EE6ieEL9iGwRakKabWPZfkT7-BiA,5555
|
|
139
139
|
django_cfg/apps/centrifugo/codegen/generators/go_thin/templates/README.md.j2,sha256=zkMemzXVwhYpjWEmUbPiKmnjran3lUJfxsg870HLDoI,4428
|
|
@@ -170,7 +170,7 @@ django_cfg/apps/centrifugo/managers/centrifugo_log.py,sha256=84nsM6DGJg4_OD8FYGv
|
|
|
170
170
|
django_cfg/apps/centrifugo/migrations/0001_initial.py,sha256=heL0VqUxX1-UubK24U3qE4QLKdN55LljNTcnLfzjhzo,6130
|
|
171
171
|
django_cfg/apps/centrifugo/migrations/__init__.py,sha256=DTK3Sbal03kPFHsmF1Ri6LKihhrcMlipmBgfXda4Z7o,31
|
|
172
172
|
django_cfg/apps/centrifugo/models/__init__.py,sha256=vav0ToNcSDcwwpJ-7_npM1oBSbhIHCE6bfQ3XJl1U_I,165
|
|
173
|
-
django_cfg/apps/centrifugo/models/centrifugo_log.py,sha256=
|
|
173
|
+
django_cfg/apps/centrifugo/models/centrifugo_log.py,sha256=VAUrfXZzPO7rR-6wbSySpKSnbMvCptOKlnTT2umF2KY,5656
|
|
174
174
|
django_cfg/apps/centrifugo/serializers/__init__.py,sha256=AjNEgSrCqiRtI4_bbLnGeuwdB-84btJDyqYuunwLWBI,1161
|
|
175
175
|
django_cfg/apps/centrifugo/serializers/admin_api.py,sha256=oKhMAes1GswpJnO9sXN7zPSyA1vtneeO8JYVO4dKodY,7769
|
|
176
176
|
django_cfg/apps/centrifugo/serializers/channels.py,sha256=Oh0Otb5qdGduzSgE9ijsgXaWukLjUCmk5N87cixtVcE,864
|
|
@@ -180,11 +180,11 @@ django_cfg/apps/centrifugo/serializers/stats.py,sha256=po3sR0EGOWj9C8F8cFatGrDug
|
|
|
180
180
|
django_cfg/apps/centrifugo/services/__init__.py,sha256=IKtNnDDRMOQdOhAP41GgUIDPpEspF1dW87IE9Jc80vI,247
|
|
181
181
|
django_cfg/apps/centrifugo/services/config_helper.py,sha256=d2eT8AczcCRl-v2OqZUu0n-MvSt42GWJOD7tJTHKiSg,1583
|
|
182
182
|
django_cfg/apps/centrifugo/services/dashboard_notifier.py,sha256=uagZMbykw4GjX-mqlekCYjR6tgLMifWe2c9mwIjYrLU,4793
|
|
183
|
-
django_cfg/apps/centrifugo/services/logging.py,sha256=
|
|
183
|
+
django_cfg/apps/centrifugo/services/logging.py,sha256=_pNm0zW0jqAy9zAlB4wtGnwy3bt3zmbClTswEKMyCqI,21840
|
|
184
184
|
django_cfg/apps/centrifugo/services/client/__init__.py,sha256=BiPchCB875BLN7Q7poCkQzIyFiQV1N5Y3vWyh0gUcBE,750
|
|
185
|
-
django_cfg/apps/centrifugo/services/client/client.py,sha256=
|
|
186
|
-
django_cfg/apps/centrifugo/services/client/config.py,sha256=
|
|
187
|
-
django_cfg/apps/centrifugo/services/client/exceptions.py,sha256=
|
|
185
|
+
django_cfg/apps/centrifugo/services/client/client.py,sha256=2WhzoYr__DP0eH70f4M3QSx8Se1WlFAFEjTqtQj4q6I,18938
|
|
186
|
+
django_cfg/apps/centrifugo/services/client/config.py,sha256=udkAhLCq1J0GSCupta9N3LwAdSa1mGkZid1GFVjsc00,6952
|
|
187
|
+
django_cfg/apps/centrifugo/services/client/exceptions.py,sha256=VsYExbk_H-qOaPa3iFUWBa1HMgw1IObil73JI1FhcDM,6263
|
|
188
188
|
django_cfg/apps/centrifugo/static/django_cfg_centrifugo/css/dashboard.css,sha256=UK9KGtIlebjyv61mTMMcFDc7Blp2I-YYTOALr3hTMmY,4792
|
|
189
189
|
django_cfg/apps/centrifugo/static/django_cfg_centrifugo/js/dashboard/live_channels.mjs,sha256=QOctXgF4jAJYam4mY_JcacU-h-ibXqEJSKiNK4Cfc0E,12661
|
|
190
190
|
django_cfg/apps/centrifugo/static/django_cfg_centrifugo/js/dashboard/live_testing.mjs,sha256=HUE1s9ax4s8t4HS1qU6t6PngFgrehiOanFnM4Krb-xA,28384
|
|
@@ -206,7 +206,7 @@ django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/tags/connection_scrip
|
|
|
206
206
|
django_cfg/apps/centrifugo/templatetags/__init__.py,sha256=W0mT4SMe7uZ3wInk88xVw1LP2vYWBsVV1U3EFt9uW7k,32
|
|
207
207
|
django_cfg/apps/centrifugo/templatetags/centrifugo_tags.py,sha256=0t9cZjxBgKJ3JDh9moRwnPEFkaXwB7gnk2LLwofLgmE,1873
|
|
208
208
|
django_cfg/apps/centrifugo/views/__init__.py,sha256=k4gAQehwJOF6RE-wqgEISdtTRjT4iMw9NoLqh4AeNqk,364
|
|
209
|
-
django_cfg/apps/centrifugo/views/admin_api.py,sha256=
|
|
209
|
+
django_cfg/apps/centrifugo/views/admin_api.py,sha256=N6rJx2cXo6IxkLdo2C9bpOGjTg-9ZQ7TaGLfJITVa6I,13968
|
|
210
210
|
django_cfg/apps/centrifugo/views/dashboard.py,sha256=Xl8wseEy_NfdKl8ITe9AFOJSCpLxqEY70mouUGywgDI,423
|
|
211
211
|
django_cfg/apps/centrifugo/views/monitoring.py,sha256=YVDMB-zsTgznijloxpRBZoyixTZZ99y5q003klo_y3A,10006
|
|
212
212
|
django_cfg/apps/centrifugo/views/testing_api.py,sha256=li26QPSZIFwxrsoSZui02S8OI6GmWmYnke4lSNdnYZQ,14768
|
|
@@ -1103,9 +1103,9 @@ django_cfg/utils/version_check.py,sha256=WO51J2m2e-wVqWCRwbultEwu3q1lQasV67Mw2aa
|
|
|
1103
1103
|
django_cfg/CHANGELOG.md,sha256=jtT3EprqEJkqSUh7IraP73vQ8PmKUMdRtznQsEnqDZk,2052
|
|
1104
1104
|
django_cfg/CONTRIBUTING.md,sha256=DU2kyQ6PU0Z24ob7O_OqKWEYHcZmJDgzw-lQCmu6uBg,3041
|
|
1105
1105
|
django_cfg/LICENSE,sha256=xHuytiUkSZCRG3N11nk1X6q1_EGQtv6aL5O9cqNRhKE,1071
|
|
1106
|
-
django_cfg/pyproject.toml,sha256=
|
|
1107
|
-
django_cfg-1.4.
|
|
1108
|
-
django_cfg-1.4.
|
|
1109
|
-
django_cfg-1.4.
|
|
1110
|
-
django_cfg-1.4.
|
|
1111
|
-
django_cfg-1.4.
|
|
1106
|
+
django_cfg/pyproject.toml,sha256=o-zTVLYDc69aZfF57rOd6c06JM6WqQIMP175W_Hpjxc,8260
|
|
1107
|
+
django_cfg-1.4.64.dist-info/METADATA,sha256=XcmJeH3uqtBX_h-1KFRfx7cK4IwYkVLKNhCMzzqOcbc,22589
|
|
1108
|
+
django_cfg-1.4.64.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
1109
|
+
django_cfg-1.4.64.dist-info/entry_points.txt,sha256=Ucmde4Z2wEzgb4AggxxZ0zaYDb9HpyE5blM3uJ0_VNg,56
|
|
1110
|
+
django_cfg-1.4.64.dist-info/licenses/LICENSE,sha256=xHuytiUkSZCRG3N11nk1X6q1_EGQtv6aL5O9cqNRhKE,1071
|
|
1111
|
+
django_cfg-1.4.64.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|