arthexis 0.1.20__py3-none-any.whl → 0.1.22__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 arthexis might be problematic. Click here for more details.
- {arthexis-0.1.20.dist-info → arthexis-0.1.22.dist-info}/METADATA +10 -11
- {arthexis-0.1.20.dist-info → arthexis-0.1.22.dist-info}/RECORD +34 -36
- config/asgi.py +1 -15
- config/settings.py +4 -26
- config/urls.py +5 -1
- core/admin.py +140 -252
- core/apps.py +0 -6
- core/environment.py +2 -220
- core/models.py +425 -77
- core/system.py +76 -0
- core/tests.py +153 -15
- core/views.py +35 -97
- nodes/admin.py +165 -32
- nodes/apps.py +11 -0
- nodes/models.py +26 -6
- nodes/tests.py +263 -1
- nodes/views.py +61 -1
- ocpp/admin.py +68 -7
- ocpp/consumers.py +1 -0
- ocpp/models.py +71 -1
- ocpp/tasks.py +99 -1
- ocpp/tests.py +310 -2
- ocpp/views.py +365 -5
- pages/admin.py +112 -15
- pages/apps.py +32 -0
- pages/context_processors.py +0 -12
- pages/forms.py +31 -8
- pages/models.py +42 -2
- pages/tests.py +361 -63
- pages/urls.py +5 -1
- pages/views.py +264 -16
- core/workgroup_urls.py +0 -17
- core/workgroup_views.py +0 -94
- {arthexis-0.1.20.dist-info → arthexis-0.1.22.dist-info}/WHEEL +0 -0
- {arthexis-0.1.20.dist-info → arthexis-0.1.22.dist-info}/licenses/LICENSE +0 -0
- {arthexis-0.1.20.dist-info → arthexis-0.1.22.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: arthexis
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.22
|
|
4
4
|
Summary: Power & Energy Infrastructure
|
|
5
5
|
Author-email: "Rafael J. Guillén-Osorio" <tecnologia@gelectriic.com>
|
|
6
6
|
License-Expression: GPL-3.0-only
|
|
@@ -26,14 +26,14 @@ Requires-Dist: celery==5.5.3
|
|
|
26
26
|
Requires-Dist: certifi==2025.7.14
|
|
27
27
|
Requires-Dist: cffi==2.0.0
|
|
28
28
|
Requires-Dist: channels==4.1.0
|
|
29
|
-
Requires-Dist: charset-normalizer==3.4.
|
|
29
|
+
Requires-Dist: charset-normalizer==3.4.4
|
|
30
30
|
Requires-Dist: click==8.2.1
|
|
31
31
|
Requires-Dist: click-didyoumean==0.3.1
|
|
32
32
|
Requires-Dist: click-plugins==1.1.1.2
|
|
33
33
|
Requires-Dist: click-repl==0.3.0
|
|
34
34
|
Requires-Dist: colorama==0.4.6
|
|
35
35
|
Requires-Dist: constantly==23.10.4
|
|
36
|
-
Requires-Dist: cron-descriptor==
|
|
36
|
+
Requires-Dist: cron-descriptor==2.0.6
|
|
37
37
|
Requires-Dist: cryptography==45.0.5
|
|
38
38
|
Requires-Dist: daphne==4.2.1
|
|
39
39
|
Requires-Dist: diff-match-patch==20241021
|
|
@@ -56,18 +56,17 @@ Requires-Dist: hyperlink==21.0.0
|
|
|
56
56
|
Requires-Dist: idna==3.11
|
|
57
57
|
Requires-Dist: incremental==24.7.2
|
|
58
58
|
Requires-Dist: kombu==5.5.4
|
|
59
|
-
Requires-Dist: libipld==3.
|
|
60
|
-
Requires-Dist: Markdown==3.
|
|
59
|
+
Requires-Dist: libipld==3.2.0
|
|
60
|
+
Requires-Dist: Markdown==3.9
|
|
61
61
|
Requires-Dist: mdx_truly_sane_lists==1.3
|
|
62
|
-
Requires-Dist: mcp==1.18.0
|
|
63
62
|
Requires-Dist: mfrc522==0.0.7; sys_platform == "linux"
|
|
64
63
|
Requires-Dist: outcome==1.3.0.post0
|
|
65
64
|
Requires-Dist: packaging==25.0
|
|
66
65
|
Requires-Dist: pillow==11.3.0
|
|
67
66
|
Requires-Dist: prompt_toolkit==3.0.51
|
|
68
|
-
Requires-Dist: psutil==7.1.
|
|
67
|
+
Requires-Dist: psutil==7.1.2
|
|
69
68
|
Requires-Dist: psycopg==3.2.9
|
|
70
|
-
Requires-Dist: psycopg-binary==3.2.
|
|
69
|
+
Requires-Dist: psycopg-binary==3.2.12
|
|
71
70
|
Requires-Dist: pyasn1==0.6.1
|
|
72
71
|
Requires-Dist: pyasn1_modules==0.4.2
|
|
73
72
|
Requires-Dist: pycparser==2.22
|
|
@@ -80,7 +79,7 @@ Requires-Dist: python-crontab==3.3.0
|
|
|
80
79
|
Requires-Dist: python-dateutil==2.9.0.post0
|
|
81
80
|
Requires-Dist: python-dotenv==1.1.1
|
|
82
81
|
Requires-Dist: qrcode==8.2
|
|
83
|
-
Requires-Dist: redis==
|
|
82
|
+
Requires-Dist: redis==7.0.1
|
|
84
83
|
Requires-Dist: reportlab==4.2.2
|
|
85
84
|
Requires-Dist: requests==2.32.5
|
|
86
85
|
Requires-Dist: selenium==4.34.2
|
|
@@ -104,14 +103,14 @@ Requires-Dist: typing_extensions==4.14.1
|
|
|
104
103
|
Requires-Dist: tzdata==2025.2
|
|
105
104
|
Requires-Dist: urllib3==2.5.0
|
|
106
105
|
Requires-Dist: vine==5.1.0
|
|
107
|
-
Requires-Dist: wcwidth==0.2.
|
|
106
|
+
Requires-Dist: wcwidth==0.2.14
|
|
108
107
|
Requires-Dist: webencodings==0.5.1
|
|
109
108
|
Requires-Dist: websocket-client==1.8.0
|
|
110
109
|
Requires-Dist: websockets==13.1
|
|
111
110
|
Requires-Dist: whitenoise==6.11.0
|
|
112
111
|
Requires-Dist: plyer==2.1.0; sys_platform == "win32"
|
|
113
112
|
Requires-Dist: wsproto==1.2.0
|
|
114
|
-
Requires-Dist: zope.interface==
|
|
113
|
+
Requires-Dist: zope.interface==8.0.1
|
|
115
114
|
Dynamic: license-file
|
|
116
115
|
|
|
117
116
|
# Arthexis Constellation
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
arthexis-0.1.
|
|
1
|
+
arthexis-0.1.22.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
2
2
|
config/__init__.py,sha256=AwpOX7il-DAOmkdJ5dVfVJ3CWWebn1lHyQNmkw1EkDw,103
|
|
3
3
|
config/active_app.py,sha256=KJqYh-o91nPQjVXPEdbiJHzsI6cN9IZsBZ9O3iZ6Hyc,373
|
|
4
|
-
config/asgi.py,sha256=
|
|
4
|
+
config/asgi.py,sha256=Z2HjWrxOxVU9BXcqS7dMEfOGJC48H-WPwFwokRdermY,774
|
|
5
5
|
config/auth_app.py,sha256=cLlKgFYV4VWsMACinKrpP-nZhXXbWZp1aj1RayDszRc,198
|
|
6
6
|
config/celery.py,sha256=c8fPkjfhKw0UQBr6FolzfdvRX2MQAV-dMokSlJ1Afgg,819
|
|
7
7
|
config/context_processors.py,sha256=p74ocuzPRFI9vKSeIaJ42Vu0V2GtGph1t-2DkRo4NMw,2449
|
|
@@ -10,20 +10,20 @@ config/loadenv.py,sha256=CjXx-wBaTt1wixub4GJ5CMSMFqtiK5JURc7cPXpqO7s,287
|
|
|
10
10
|
config/logging.py,sha256=1cIbPgRshHuMKnVEEH0jKpRAlJSpewvLFbYDz7sCBG4,2104
|
|
11
11
|
config/middleware.py,sha256=zF8Cma0n5G8NNdh2LVeNJi7Hgl1G4mF9msRE2eRi1RU,2328
|
|
12
12
|
config/offline.py,sha256=X-yDcyoI4C44Y27lpkUwszY_09GwwFfazEsthKJpQ70,1382
|
|
13
|
-
config/settings.py,sha256=
|
|
13
|
+
config/settings.py,sha256=b27y7mmQMJmcIFuceNxrX-9yO_R1GqbIf_wFdZNvTWo,20789
|
|
14
14
|
config/settings_helpers.py,sha256=0BdBciUHIkwsWa0vV_RKAd4wDuEzgE7G-42XYiES4YQ,3127
|
|
15
|
-
config/urls.py,sha256=
|
|
15
|
+
config/urls.py,sha256=979WyL05v7nb-Lz_3Qf6Z2QzGtWpXADbIKZ28Zm12ts,5535
|
|
16
16
|
config/wsgi.py,sha256=zU_mKlya6hejQ21PxKacTui3dUWd4ca_-YJNSYAoMX0,433
|
|
17
17
|
core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
18
|
-
core/admin.py,sha256=
|
|
18
|
+
core/admin.py,sha256=dzM1-jibV1bzpcXGvydoR_8_WMclKYS4ohLreHgipvU,146524
|
|
19
19
|
core/admin_history.py,sha256=XZ4b0ryufIka-xcwboK3DzmOL-INSx5Y2fJO-aJdV70,1783
|
|
20
20
|
core/admindocs.py,sha256=ycD0bJ_VE6rTGf9ebXTiKdYkD8Y8hD2oQ4HxxoBURCM,6756
|
|
21
|
-
core/apps.py,sha256=
|
|
21
|
+
core/apps.py,sha256=S6fySxtxUzfvz8FI9dii0KI4wSyLhh5API_oeERLIsc,14084
|
|
22
22
|
core/auto_upgrade.py,sha256=1EffHHFylgydWdZM_id6CppV0QqBtdNw7cwBYVdbNdk,1715
|
|
23
23
|
core/backends.py,sha256=okrNW5Z-zDhJB9Al529aTOHGsTLACeQ6v_hMl4cyfnA,10704
|
|
24
24
|
core/changelog.py,sha256=SRn37i5N-qb-RYV4Gpu9fg7Kv8gu4TH8ZwEmDRgN-Vo,12594
|
|
25
25
|
core/entity.py,sha256=o4VteOXePGEsIWJFZ3fpq3DZsdWr3hpQ9A6kFbKosSE,4844
|
|
26
|
-
core/environment.py,sha256=
|
|
26
|
+
core/environment.py,sha256=4beGOYE1BC8q9vBmTLZzFo75nj_3tBekzMqhsNEZVbU,1653
|
|
27
27
|
core/fields.py,sha256=d-qGahdcv4SRcO4fwCJ6_-NnEAP5xW0k3kODdAAAHSA,5412
|
|
28
28
|
core/form_fields.py,sha256=h2xT8sO8EWbznsiARkxukFk69yoW6mQwqpgonA-d6aA,2496
|
|
29
29
|
core/github_helper.py,sha256=fkjoUPwOB19zbGuk39LNLJ5AbIVKFf3rNCtnu-JISIc,5733
|
|
@@ -34,7 +34,7 @@ core/liveupdate.py,sha256=22m0ueQ10-6b-9pQJHY0_5WRYA98fysXKEXOWzIr550,691
|
|
|
34
34
|
core/log_paths.py,sha256=lxvgXPgJtVNZ-kYrqV8VFle4GFQrSxG-yRTglqvclmU,3318
|
|
35
35
|
core/mailer.py,sha256=JpW0RnD9uZ4O-wvlqeW7CMw95IFeCSkdvbankJDwHq0,2886
|
|
36
36
|
core/middleware.py,sha256=j19K9SX-Emkv7BDDtAacR9g6RWsxhKHwCc8w23JFvMM,3388
|
|
37
|
-
core/models.py,sha256=
|
|
37
|
+
core/models.py,sha256=9cwmW1onK7tAg7NQyhSavm2-eXV4nqDewyJUIHuMjZc,143176
|
|
38
38
|
core/notifications.py,sha256=jNLSuSCrhb8x5cDu_APeDlkrmbMejufk5eJOhssAC4I,3917
|
|
39
39
|
core/public_wifi.py,sha256=yydLgxOo9DmJJbM4X_23wGR3gxL3YzHno54v9GssuFA,7213
|
|
40
40
|
core/reference_utils.py,sha256=tffCoyE1w4_SmYzXVWOsW8aR_ZVVTSPzrGhBq8K2xzA,3631
|
|
@@ -43,70 +43,68 @@ core/rfid_import_export.py,sha256=petyhPvL0WUpehc6uGUDUhjYQ9AVvc6O49zuhDs6YFw,35
|
|
|
43
43
|
core/sigil_builder.py,sha256=nMuhYlw3j3LosrK85Q0pYsMcfGWCmrmdnv8UG7GTq_o,4856
|
|
44
44
|
core/sigil_context.py,sha256=GCzjfM6fcVvBtSbVNfmE6sx3HU8QnxnXrCIytnNpQzM,439
|
|
45
45
|
core/sigil_resolver.py,sha256=rCsypuX-0oWNfKyM1T9ZLWHY0Ezwhtk4VmI0L3krnsE,11098
|
|
46
|
-
core/system.py,sha256=
|
|
46
|
+
core/system.py,sha256=6ndxYDPswKkC3ySTwbgXzH0CdQYCZJytfA-99smyv_Q,42249
|
|
47
47
|
core/tasks.py,sha256=d0MQP5fmn5pA2VCFGxDMEX0xppDIIh8IAzPfGdnk8J4,12340
|
|
48
48
|
core/temp_passwords.py,sha256=FieUnIUeQHmA1DoXvfJ5U6-Ayv3oDz-hSln5s_vNbA4,5271
|
|
49
49
|
core/test_system_info.py,sha256=IMPz21KEs6OC5YbL7YaIBdmJVLjRY6MgPuZpldJB5OI,6935
|
|
50
|
-
core/tests.py,sha256=
|
|
50
|
+
core/tests.py,sha256=eKKoUkF-zI4pCXpjMCuIKCXnv_KgLO8q3_9W0f2lcws,104199
|
|
51
51
|
core/tests_liveupdate.py,sha256=IquU8ztk6zbzC1bQu3Nrr3RzGzuujtPwDkANJHbxg98,510
|
|
52
52
|
core/urls.py,sha256=YPippON1MAP2KeZZ8jHpcLO6mvbnKn1q7fdMv5Vm9dY,425
|
|
53
53
|
core/user_data.py,sha256=02CfvxayELWSWZJCxWpv1Yz7EGg08yEu5MM31Khsi0U,21083
|
|
54
|
-
core/views.py,sha256=
|
|
54
|
+
core/views.py,sha256=oq3_INVD6VwgeRfZ3-UXV0aCUYKj4Kh7Hjx1B9eHVbA,87819
|
|
55
55
|
core/widgets.py,sha256=vlR9PlFfZGlkHm5X2cqNXuEBZSj8gmWaR6MO1mMy6kg,6904
|
|
56
|
-
core/workgroup_urls.py,sha256=XR9IqwsSBI8epW7_-hHhWFU9wsyJfZehHwNQBhCgmpM,407
|
|
57
|
-
core/workgroup_views.py,sha256=vtumF3-8YaTD-K6nSd8eYvUyq3ftpvWSEwtcp5B-P6o,2889
|
|
58
56
|
nodes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
59
|
-
nodes/admin.py,sha256=
|
|
60
|
-
nodes/apps.py,sha256=
|
|
57
|
+
nodes/admin.py,sha256=GDptKIbz5JTu57UxEFiKIq0aqDBFSXilg_zYxc4Tgew,72336
|
|
58
|
+
nodes/apps.py,sha256=oi_M2Ya8CAR8N_MoYU68u7_9u-9SlIMelzLOgYM9tDs,3059
|
|
61
59
|
nodes/backends.py,sha256=dmmbS0X2YIlCDz2KjoDf_L62dy--nuqZF1rEDoi2JHM,5921
|
|
62
60
|
nodes/dns.py,sha256=D5smXD7Rkh6E4MdL6TBL2WY8GgJg7Rx9z88LZrcMbTw,7048
|
|
63
61
|
nodes/feature_checks.py,sha256=27e4PCkZ8BGWnJCOwMcY2Bo9z7LoeZWiTZuISWGnrzk,3996
|
|
64
62
|
nodes/lcd.py,sha256=iKA8Wmq85KZD52aTzAU8ZmS144_gbdGMOXcE8yuECps,5758
|
|
65
|
-
nodes/models.py,sha256=
|
|
63
|
+
nodes/models.py,sha256=3ym5od7ykGokkxOrvXhU8h439e7EaOGsIbG89x7BYz8,72598
|
|
66
64
|
nodes/reports.py,sha256=NRYh3Y0SlZFhx31Zh2K03yO12ZrpxEHEY6T-dODA6WE,12059
|
|
67
65
|
nodes/rfid_sync.py,sha256=oeblawcp6xeLApdIuhsJS83OAk58Eu7pVVmgpAc0Nt8,6953
|
|
68
66
|
nodes/signals.py,sha256=PtOKdQfb08mV1LgSZvn7ZAcfOyy2c3Xkq4AOpBQyUdE,622
|
|
69
67
|
nodes/tasks.py,sha256=7m9pKO-iI6JDdfPQ-GWRGown4mdyKrcroOnhbiWN7dY,5246
|
|
70
|
-
nodes/tests.py,sha256=
|
|
68
|
+
nodes/tests.py,sha256=5aP2byahZXzKtUY87XtNc9Zv0P9ex2WUrkpNPK0BtJI,186035
|
|
71
69
|
nodes/urls.py,sha256=-o9_pLo6XHerKMQwL0TW80wm6wmtVZqyNWcUhpdq9vk,915
|
|
72
70
|
nodes/utils.py,sha256=wt7UuSXGuq79A-g-B6EW3kK49QWJBb7zhhkw4pun4k8,4474
|
|
73
|
-
nodes/views.py,sha256=
|
|
71
|
+
nodes/views.py,sha256=EByqVc8Nj1nGdLgu-2a8AcxcSqbUtXyuLCF_tRSDTSk,38564
|
|
74
72
|
ocpp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
75
|
-
ocpp/admin.py,sha256=
|
|
73
|
+
ocpp/admin.py,sha256=FWYLzZ51-ArcIOZlvI8vwk0ohdPVTAXwurlCOhRhWnc,40502
|
|
76
74
|
ocpp/apps.py,sha256=i3NqrmIamNEQBT33CIqh7HOSOPmJXCMKrZ-DUd3whqg,842
|
|
77
|
-
ocpp/consumers.py,sha256=
|
|
75
|
+
ocpp/consumers.py,sha256=7PYlOkSlHSlIz2FUcBjui4uLFEIHOBWIHfnYpvITrMY,71719
|
|
78
76
|
ocpp/evcs.py,sha256=q1mZrCVSZxXTrtYsDqH6lkeEcJ6tfSC7p9YxkDmpSCw,28883
|
|
79
77
|
ocpp/evcs_discovery.py,sha256=OmrzgaOHwveDRJs8AIhrM3apX8_k2PPXh_oYaYpNW3c,3876
|
|
80
|
-
ocpp/models.py,sha256=
|
|
78
|
+
ocpp/models.py,sha256=XMTKNu8K03_GId5Z9ucHUxMKlIw8crFnn4aTUHZYW8s,36763
|
|
81
79
|
ocpp/reference_utils.py,sha256=_UR82GfE93kv4766mHyVIfdhhyYvrT59660r3H6W55M,1072
|
|
82
80
|
ocpp/routing.py,sha256=3kQya-MdJ00778xDmX0esQLBP05P200V45asg-CGNoo,438
|
|
83
81
|
ocpp/simulator.py,sha256=vnyd59QffT79AaPhmfM_jipni_nqfG57X5tXyx1rBoc,28016
|
|
84
82
|
ocpp/status_display.py,sha256=YGFosd5HJETA0DcLdsjvx6EfhZSnI8Aa3cMnHG2WsBE,939
|
|
85
83
|
ocpp/store.py,sha256=gLCSaP9KKF7li2ALlE3O3RW5eVJtoe-_YHfKhdf0VOM,18943
|
|
86
|
-
ocpp/tasks.py,sha256=
|
|
84
|
+
ocpp/tasks.py,sha256=VSna6Mi1jp3zjYTo4y0c5N-n-4efIq5FRKu3z2y8Oio,8950
|
|
87
85
|
ocpp/test_export_import.py,sha256=ouQbTCp4mxfqoK6gondlu3PPcyrT9jSbWAX5gqqgaNk,4561
|
|
88
86
|
ocpp/test_rfid.py,sha256=IhFSlvsI8A8D3S32sRE298nYfrmqxbv7GfVErtNU3DQ,39137
|
|
89
|
-
ocpp/tests.py,sha256=
|
|
87
|
+
ocpp/tests.py,sha256=5PWaNY3gUPxQmkoEkkjU5AXlryzyeWkDL6MUfsydEyg,203144
|
|
90
88
|
ocpp/transactions_io.py,sha256=p2aUsKlCDYnZ4ZBrOM7pxXoW_w3Tbm-tvRFSjnR3x24,7738
|
|
91
89
|
ocpp/urls.py,sha256=5ZomUtznJe3kfs8E-DtVp12eFva5jUuJdpTEczIsQ5w,1730
|
|
92
|
-
ocpp/views.py,sha256=
|
|
90
|
+
ocpp/views.py,sha256=AsdHwLe_6gdLy6DQcwH5ioSbFATqmlpdKkesGoWD7QI,76346
|
|
93
91
|
pages/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
94
|
-
pages/admin.py,sha256=
|
|
95
|
-
pages/apps.py,sha256=
|
|
92
|
+
pages/admin.py,sha256=VbxkwgjrFx7lXVhwbZuPSvCkS7EC-flBpwOztHejWtE,35834
|
|
93
|
+
pages/apps.py,sha256=0qcTFKVX9_QgqexJtGeph1sHRqq7khJf4x5ZtkWwblg,1424
|
|
96
94
|
pages/checks.py,sha256=sM8_hUVM_HOIocvtTb2sY3AaSEvbTnOlO46UchGVd-0,1527
|
|
97
|
-
pages/context_processors.py,sha256=
|
|
95
|
+
pages/context_processors.py,sha256=vrgMu4vYCOonZ8eZ27gQvGU74PBpMi47T512Lu1__sA,5297
|
|
98
96
|
pages/defaults.py,sha256=3tjv3nFPxwpFu6poJ1Ez1MP92Q6ZvyRluftKHlU-zeI,522
|
|
99
|
-
pages/forms.py,sha256=
|
|
97
|
+
pages/forms.py,sha256=r3JM5qp3_4RR01-u6XV8WDOaeiRe4OvCN8Y52FcsAwI,7909
|
|
100
98
|
pages/middleware.py,sha256=MYd5Nko4AnFg3orY6MuyvvNg_I6GCIf8mDW8znSOgvQ,7042
|
|
101
|
-
pages/models.py,sha256=
|
|
99
|
+
pages/models.py,sha256=9LdIoIK2Epp3YDUk8LUWyhLW5pJ-NiuYTzO_-xKjg0c,23636
|
|
102
100
|
pages/module_defaults.py,sha256=rCAY8aTyxYNL0M5zDr393rX-Gi-svXqKtuLXm0rILrQ,5444
|
|
103
101
|
pages/site_config.py,sha256=f1Me0GFdHeGbIeyMlQNzD2e6hym59YHqbz92U_ppffY,4057
|
|
104
102
|
pages/tasks.py,sha256=ivcba_3wSQ1-cku0oDplzw6vLeQ9hBq3R4TG-LmR5gs,1913
|
|
105
|
-
pages/tests.py,sha256=
|
|
106
|
-
pages/urls.py,sha256=
|
|
103
|
+
pages/tests.py,sha256=OFyYVFeAfsnHXL27zL3ma821pE4cXGVtOrtIO2YGjsk,153460
|
|
104
|
+
pages/urls.py,sha256=2PVF8--cKi3h230CZl7VQsoVaQrxvWg3GPAKiQowQB0,1354
|
|
107
105
|
pages/utils.py,sha256=CR4D1debgJLGgXsw9kap2ggpe7fIpSoWS_ivbgMNp2k,564
|
|
108
|
-
pages/views.py,sha256=
|
|
109
|
-
arthexis-0.1.
|
|
110
|
-
arthexis-0.1.
|
|
111
|
-
arthexis-0.1.
|
|
112
|
-
arthexis-0.1.
|
|
106
|
+
pages/views.py,sha256=7F3zvXUMBH320rY-UtnxOiUz8HFWTRrGkxwdjZlOdbg,60863
|
|
107
|
+
arthexis-0.1.22.dist-info/METADATA,sha256=72h6hoADl-yJFWfojMeYpb2qo3cW56E9a5UyMdSdxn4,11724
|
|
108
|
+
arthexis-0.1.22.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
109
|
+
arthexis-0.1.22.dist-info/top_level.txt,sha256=J2a2q8_BWrCZ8H2WFUNMBfO2jz8j2gax6zZh-_1QDac,29
|
|
110
|
+
arthexis-0.1.22.dist-info/RECORD,,
|
config/asgi.py
CHANGED
|
@@ -9,35 +9,21 @@ https://docs.djangoproject.com/en/5.2/howto/deployment/asgi/
|
|
|
9
9
|
|
|
10
10
|
import os
|
|
11
11
|
from config.loadenv import loadenv
|
|
12
|
-
from typing import Any, Awaitable, Callable, Dict, MutableMapping
|
|
13
12
|
from channels.auth import AuthMiddlewareStack
|
|
14
13
|
from channels.routing import ProtocolTypeRouter, URLRouter
|
|
15
14
|
from django.core.asgi import get_asgi_application
|
|
16
15
|
import ocpp.routing
|
|
17
16
|
|
|
18
|
-
from core.mcp.asgi import application as mcp_application
|
|
19
|
-
from core.mcp.asgi import is_mcp_scope
|
|
20
|
-
|
|
21
17
|
loadenv()
|
|
22
18
|
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "config.settings")
|
|
23
19
|
|
|
24
20
|
django_asgi_app = get_asgi_application()
|
|
25
21
|
|
|
26
|
-
Scope = MutableMapping[str, Any]
|
|
27
|
-
Receive = Callable[[], Awaitable[Dict[str, Any]]]
|
|
28
|
-
Send = Callable[[Dict[str, Any]], Awaitable[None]]
|
|
29
|
-
|
|
30
22
|
websocket_patterns = ocpp.routing.websocket_urlpatterns
|
|
31
23
|
|
|
32
|
-
async def http_application(scope: Scope, receive: Receive, send: Send) -> None:
|
|
33
|
-
if is_mcp_scope(scope):
|
|
34
|
-
await mcp_application(scope, receive, send)
|
|
35
|
-
else:
|
|
36
|
-
await django_asgi_app(scope, receive, send)
|
|
37
|
-
|
|
38
24
|
application = ProtocolTypeRouter(
|
|
39
25
|
{
|
|
40
|
-
"http":
|
|
26
|
+
"http": django_asgi_app,
|
|
41
27
|
"websocket": AuthMiddlewareStack(URLRouter(websocket_patterns)),
|
|
42
28
|
}
|
|
43
29
|
)
|
config/settings.py
CHANGED
|
@@ -444,32 +444,6 @@ ASGI_APPLICATION = "config.asgi.application"
|
|
|
444
444
|
CHANNEL_LAYERS = {"default": {"BACKEND": "channels.layers.InMemoryChannelLayer"}}
|
|
445
445
|
|
|
446
446
|
|
|
447
|
-
# MCP sigil resolver configuration
|
|
448
|
-
def _env_int(name: str, default: int) -> int:
|
|
449
|
-
try:
|
|
450
|
-
return int(os.environ.get(name, default))
|
|
451
|
-
except (TypeError, ValueError): # pragma: no cover - defensive
|
|
452
|
-
return default
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
def _split_env_list(name: str) -> list[str]:
|
|
456
|
-
raw = os.environ.get(name)
|
|
457
|
-
if not raw:
|
|
458
|
-
return []
|
|
459
|
-
return [item.strip() for item in raw.split(",") if item.strip()]
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
MCP_SIGIL_SERVER = {
|
|
463
|
-
"host": os.environ.get("MCP_SIGIL_HOST", "127.0.0.1"),
|
|
464
|
-
"port": _env_int("MCP_SIGIL_PORT", 8800),
|
|
465
|
-
"api_keys": _split_env_list("MCP_SIGIL_API_KEYS"),
|
|
466
|
-
"required_scopes": ["sigils:read"],
|
|
467
|
-
"issuer_url": os.environ.get("MCP_SIGIL_ISSUER_URL"),
|
|
468
|
-
"resource_server_url": os.environ.get("MCP_SIGIL_RESOURCE_URL"),
|
|
469
|
-
"mount_path": os.environ.get("MCP_SIGIL_MOUNT_PATH", "/mcp"),
|
|
470
|
-
}
|
|
471
|
-
|
|
472
|
-
|
|
473
447
|
# Custom user model
|
|
474
448
|
AUTH_USER_MODEL = "core.User"
|
|
475
449
|
|
|
@@ -688,4 +662,8 @@ CELERY_BEAT_SCHEDULE = {
|
|
|
688
662
|
"task": "core.tasks.heartbeat",
|
|
689
663
|
"schedule": crontab(minute="*/5"),
|
|
690
664
|
},
|
|
665
|
+
"ocpp_configuration_check": {
|
|
666
|
+
"task": "ocpp.tasks.schedule_daily_charge_point_configuration_checks",
|
|
667
|
+
"schedule": crontab(minute=0, hour=0),
|
|
668
|
+
},
|
|
691
669
|
}
|
config/urls.py
CHANGED
|
@@ -134,6 +134,11 @@ urlpatterns = [
|
|
|
134
134
|
core_views.todo_done,
|
|
135
135
|
name="todo-done",
|
|
136
136
|
),
|
|
137
|
+
path(
|
|
138
|
+
"admin/core/todos/<int:pk>/delete/",
|
|
139
|
+
core_views.todo_delete,
|
|
140
|
+
name="todo-delete",
|
|
141
|
+
),
|
|
137
142
|
path(
|
|
138
143
|
"admin/core/todos/<int:pk>/snapshot/",
|
|
139
144
|
core_views.todo_snapshot,
|
|
@@ -156,7 +161,6 @@ urlpatterns = [
|
|
|
156
161
|
),
|
|
157
162
|
path("admin/", admin.site.urls),
|
|
158
163
|
path("i18n/setlang/", csrf_exempt(set_language), name="set_language"),
|
|
159
|
-
path("api/", include("core.workgroup_urls")),
|
|
160
164
|
path("", include("pages.urls")),
|
|
161
165
|
]
|
|
162
166
|
|