arthexis 0.1.9__tar.gz → 0.1.10__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.

Potentially problematic release.


This version of arthexis might be problematic. Click here for more details.

Files changed (209) hide show
  1. {arthexis-0.1.9 → arthexis-0.1.10}/PKG-INFO +63 -20
  2. arthexis-0.1.10/README.md +97 -0
  3. {arthexis-0.1.9 → arthexis-0.1.10}/arthexis.egg-info/PKG-INFO +63 -20
  4. {arthexis-0.1.9 → arthexis-0.1.10}/arthexis.egg-info/SOURCES.txt +9 -0
  5. {arthexis-0.1.9 → arthexis-0.1.10}/arthexis.egg-info/requires.txt +2 -0
  6. {arthexis-0.1.9 → arthexis-0.1.10}/config/settings.py +221 -23
  7. {arthexis-0.1.9 → arthexis-0.1.10}/config/urls.py +6 -0
  8. {arthexis-0.1.9 → arthexis-0.1.10}/core/admin.py +401 -35
  9. {arthexis-0.1.9 → arthexis-0.1.10}/core/apps.py +3 -0
  10. arthexis-0.1.10/core/auto_upgrade.py +57 -0
  11. {arthexis-0.1.9 → arthexis-0.1.10}/core/backends.py +77 -3
  12. arthexis-0.1.10/core/fields.py +168 -0
  13. {arthexis-0.1.9 → arthexis-0.1.10}/core/models.py +212 -7
  14. arthexis-0.1.10/core/reference_utils.py +97 -0
  15. {arthexis-0.1.9 → arthexis-0.1.10}/core/sigil_builder.py +16 -3
  16. arthexis-0.1.10/core/system.py +244 -0
  17. arthexis-0.1.10/core/tasks.py +342 -0
  18. arthexis-0.1.10/core/test_system_info.py +79 -0
  19. {arthexis-0.1.9 → arthexis-0.1.10}/core/tests.py +288 -12
  20. {arthexis-0.1.9 → arthexis-0.1.10}/core/user_data.py +103 -8
  21. {arthexis-0.1.9 → arthexis-0.1.10}/core/views.py +257 -15
  22. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/admin.py +12 -4
  23. arthexis-0.1.10/nodes/backends.py +145 -0
  24. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/models.py +205 -2
  25. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/tests.py +370 -1
  26. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/views.py +140 -7
  27. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/admin.py +63 -3
  28. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/consumers.py +252 -41
  29. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/evcs.py +6 -3
  30. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/models.py +49 -7
  31. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/simulator.py +62 -5
  32. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/store.py +30 -0
  33. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/tests.py +384 -8
  34. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/views.py +101 -76
  35. {arthexis-0.1.9 → arthexis-0.1.10}/pages/context_processors.py +20 -0
  36. arthexis-0.1.10/pages/forms.py +131 -0
  37. {arthexis-0.1.9 → arthexis-0.1.10}/pages/tests.py +434 -13
  38. {arthexis-0.1.9 → arthexis-0.1.10}/pages/urls.py +1 -0
  39. {arthexis-0.1.9 → arthexis-0.1.10}/pages/views.py +334 -92
  40. arthexis-0.1.10/pyproject.toml +26 -0
  41. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_admin_profile_link.py +1 -1
  42. arthexis-0.1.10/tests/test_admin_system_stop.py +45 -0
  43. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_assistant_profile_admin.py +65 -1
  44. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_assistant_profile_api.py +19 -0
  45. arthexis-0.1.10/tests/test_auto_upgrade_scheduler.py +41 -0
  46. arthexis-0.1.10/tests/test_benchmark_command.py +176 -0
  47. arthexis-0.1.10/tests/test_check_migrations_script.py +82 -0
  48. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_client_report_generation.py +56 -2
  49. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_email_inbox_admin.py +69 -0
  50. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_email_profiles.py +64 -9
  51. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_language_switch.py +12 -12
  52. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_localhost_admin_backend.py +49 -7
  53. arthexis-0.1.10/tests/test_node_info_view.py +30 -0
  54. arthexis-0.1.10/tests/test_odoo_product.py +173 -0
  55. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_odoo_profile_admin.py +44 -0
  56. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_power_admin_group.py +7 -1
  57. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_profile_inline_deletion.py +22 -16
  58. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_readme_language.py +2 -2
  59. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_release_manager_admin.py +44 -0
  60. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_release_progress.py +35 -0
  61. arthexis-0.1.10/tests/test_release_tasks.py +161 -0
  62. arthexis-0.1.10/tests/test_request_invite.py +119 -0
  63. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_seed_data.py +34 -0
  64. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_show_leads_command.py +4 -1
  65. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_sigil_builder.py +2 -0
  66. arthexis-0.1.10/tests/test_staff_login_net_message.py +54 -0
  67. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_user_data_admin.py +103 -2
  68. arthexis-0.1.10/tests/test_version_endpoint.py +46 -0
  69. arthexis-0.1.9/README.md +0 -56
  70. arthexis-0.1.9/core/fields.py +0 -75
  71. arthexis-0.1.9/core/system.py +0 -230
  72. arthexis-0.1.9/core/tasks.py +0 -199
  73. arthexis-0.1.9/core/test_system_info.py +0 -43
  74. arthexis-0.1.9/nodes/backends.py +0 -53
  75. arthexis-0.1.9/pyproject.toml +0 -26
  76. arthexis-0.1.9/tests/test_admin_system_stop.py +0 -75
  77. arthexis-0.1.9/tests/test_check_migrations_script.py +0 -47
  78. arthexis-0.1.9/tests/test_odoo_product.py +0 -40
  79. arthexis-0.1.9/tests/test_release_tasks.py +0 -66
  80. {arthexis-0.1.9 → arthexis-0.1.10}/LICENSE +0 -0
  81. {arthexis-0.1.9 → arthexis-0.1.10}/arthexis.egg-info/dependency_links.txt +0 -0
  82. {arthexis-0.1.9 → arthexis-0.1.10}/arthexis.egg-info/top_level.txt +0 -0
  83. {arthexis-0.1.9 → arthexis-0.1.10}/config/__init__.py +0 -0
  84. {arthexis-0.1.9 → arthexis-0.1.10}/config/active_app.py +0 -0
  85. {arthexis-0.1.9 → arthexis-0.1.10}/config/asgi.py +0 -0
  86. {arthexis-0.1.9 → arthexis-0.1.10}/config/auth_app.py +0 -0
  87. {arthexis-0.1.9 → arthexis-0.1.10}/config/celery.py +0 -0
  88. {arthexis-0.1.9 → arthexis-0.1.10}/config/context_processors.py +0 -0
  89. {arthexis-0.1.9 → arthexis-0.1.10}/config/horologia_app.py +0 -0
  90. {arthexis-0.1.9 → arthexis-0.1.10}/config/loadenv.py +0 -0
  91. {arthexis-0.1.9 → arthexis-0.1.10}/config/logging.py +0 -0
  92. {arthexis-0.1.9 → arthexis-0.1.10}/config/middleware.py +0 -0
  93. {arthexis-0.1.9 → arthexis-0.1.10}/config/offline.py +0 -0
  94. {arthexis-0.1.9 → arthexis-0.1.10}/config/wsgi.py +0 -0
  95. {arthexis-0.1.9 → arthexis-0.1.10}/core/__init__.py +0 -0
  96. {arthexis-0.1.9 → arthexis-0.1.10}/core/admin_history.py +0 -0
  97. {arthexis-0.1.9 → arthexis-0.1.10}/core/admindocs.py +0 -0
  98. {arthexis-0.1.9 → arthexis-0.1.10}/core/entity.py +0 -0
  99. {arthexis-0.1.9 → arthexis-0.1.10}/core/environment.py +0 -0
  100. {arthexis-0.1.9 → arthexis-0.1.10}/core/github_helper.py +0 -0
  101. {arthexis-0.1.9 → arthexis-0.1.10}/core/github_issues.py +0 -0
  102. {arthexis-0.1.9 → arthexis-0.1.10}/core/lcd_screen.py +0 -0
  103. {arthexis-0.1.9 → arthexis-0.1.10}/core/liveupdate.py +0 -0
  104. {arthexis-0.1.9 → arthexis-0.1.10}/core/log_paths.py +0 -0
  105. {arthexis-0.1.9 → arthexis-0.1.10}/core/mailer.py +0 -0
  106. {arthexis-0.1.9 → arthexis-0.1.10}/core/middleware.py +0 -0
  107. {arthexis-0.1.9 → arthexis-0.1.10}/core/notifications.py +0 -0
  108. {arthexis-0.1.9 → arthexis-0.1.10}/core/public_wifi.py +0 -0
  109. {arthexis-0.1.9 → arthexis-0.1.10}/core/release.py +0 -0
  110. {arthexis-0.1.9 → arthexis-0.1.10}/core/sigil_context.py +0 -0
  111. {arthexis-0.1.9 → arthexis-0.1.10}/core/sigil_resolver.py +0 -0
  112. {arthexis-0.1.9 → arthexis-0.1.10}/core/tests_liveupdate.py +0 -0
  113. {arthexis-0.1.9 → arthexis-0.1.10}/core/urls.py +0 -0
  114. {arthexis-0.1.9 → arthexis-0.1.10}/core/widgets.py +0 -0
  115. {arthexis-0.1.9 → arthexis-0.1.10}/core/workgroup_urls.py +0 -0
  116. {arthexis-0.1.9 → arthexis-0.1.10}/core/workgroup_views.py +0 -0
  117. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/__init__.py +0 -0
  118. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/actions.py +0 -0
  119. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/apps.py +0 -0
  120. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/lcd.py +0 -0
  121. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/tasks.py +0 -0
  122. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/urls.py +0 -0
  123. {arthexis-0.1.9 → arthexis-0.1.10}/nodes/utils.py +0 -0
  124. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/__init__.py +0 -0
  125. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/apps.py +0 -0
  126. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/routing.py +0 -0
  127. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/tasks.py +0 -0
  128. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/test_export_import.py +0 -0
  129. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/test_rfid.py +0 -0
  130. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/transactions_io.py +0 -0
  131. {arthexis-0.1.9 → arthexis-0.1.10}/ocpp/urls.py +0 -0
  132. {arthexis-0.1.9 → arthexis-0.1.10}/pages/__init__.py +0 -0
  133. {arthexis-0.1.9 → arthexis-0.1.10}/pages/admin.py +0 -0
  134. {arthexis-0.1.9 → arthexis-0.1.10}/pages/apps.py +0 -0
  135. {arthexis-0.1.9 → arthexis-0.1.10}/pages/checks.py +0 -0
  136. {arthexis-0.1.9 → arthexis-0.1.10}/pages/middleware.py +0 -0
  137. {arthexis-0.1.9 → arthexis-0.1.10}/pages/models.py +0 -0
  138. {arthexis-0.1.9 → arthexis-0.1.10}/pages/utils.py +0 -0
  139. {arthexis-0.1.9 → arthexis-0.1.10}/setup.cfg +0 -0
  140. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_acronym_capitalization.py +0 -0
  141. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_admin_client_report.py +0 -0
  142. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_admin_doc_commands.py +0 -0
  143. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_admin_doc_model_groups.py +0 -0
  144. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_admin_history.py +0 -0
  145. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_admin_index_actions.py +0 -0
  146. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_admin_model_graph.py +0 -0
  147. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_admin_object_history.py +0 -0
  148. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_allowed_hosts_hostname.py +0 -0
  149. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_assistant_data_api.py +0 -0
  150. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_awg_admin.py +0 -0
  151. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_birthday_greetings.py +0 -0
  152. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_celery_no_debug.py +0 -0
  153. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_client_report_schedule.py +0 -0
  154. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_csrf_failure.py +0 -0
  155. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_csrf_origin_subnet.py +0 -0
  156. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_dist_cleanup.py +0 -0
  157. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_email_collector.py +0 -0
  158. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_email_inbox.py +0 -0
  159. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_email_inbox_search_action.py +0 -0
  160. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_email_outbox_admin.py +0 -0
  161. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_env_refresh_clean.py +0 -0
  162. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_env_refresh_pip.py +0 -0
  163. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_env_refresh_unlink.py +0 -0
  164. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_experience_admin_group.py +0 -0
  165. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_fixture_presence.py +0 -0
  166. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_footer_no_references.py +0 -0
  167. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_footer_presence.py +0 -0
  168. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_footer_render.py +0 -0
  169. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_git_checks.py +0 -0
  170. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_github_issue_reporting.py +0 -0
  171. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_install_script.py +0 -0
  172. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_lcd_check_command.py +0 -0
  173. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_lcd_smbus2.py +0 -0
  174. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_login_view_no_site.py +0 -0
  175. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_man.py +0 -0
  176. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_mcp_process.py +0 -0
  177. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_mcp_sigil_server.py +0 -0
  178. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_message_command.py +0 -0
  179. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_migrations.py +0 -0
  180. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_model_verbose_name_capitalization.py +0 -0
  181. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_network_setup_interactive.py +0 -0
  182. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_notifications_fallback.py +0 -0
  183. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_notify_command.py +0 -0
  184. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_ocpp_session_lock.py +0 -0
  185. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_odoo_profile.py +0 -0
  186. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_offline.py +0 -0
  187. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_package_admin_next_release.py +0 -0
  188. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_projects_rfid.py +0 -0
  189. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_pypi_token.py +0 -0
  190. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_reference_qr_code.py +0 -0
  191. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_reference_transaction_uuid.py +0 -0
  192. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_register_site_apps_command.py +0 -0
  193. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_release_checklist.py +0 -0
  194. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_release_logs.py +0 -0
  195. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_rfid_admin_reference_clear.py +0 -0
  196. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_rfid_admin_scan_csrf.py +0 -0
  197. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_rfid_background_reader.py +0 -0
  198. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_rfid_client_report.py +0 -0
  199. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_role_marker_filtering.py +0 -0
  200. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_send_invite_command.py +0 -0
  201. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_shell_scripts.py +0 -0
  202. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_sigil_resolution.py +0 -0
  203. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_sites_utils.py +0 -0
  204. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_switch_role_script.py +0 -0
  205. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_uninstall_script.py +0 -0
  206. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_update_fixtures_command.py +0 -0
  207. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_urls_autodiscover.py +0 -0
  208. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_version_file.py +0 -0
  209. {arthexis-0.1.9 → arthexis-0.1.10}/tests/test_vscode_manage.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: arthexis
3
- Version: 0.1.9
3
+ Version: 0.1.10
4
4
  Summary: Django-based MESH system
5
5
  Author-email: "Rafael J. Guillén-Osorio" <tecnologia@gelectriic.com>
6
6
  License-Expression: GPL-3.0-only
@@ -43,6 +43,7 @@ Requires-Dist: django-celery-beat==2.8.1
43
43
  Requires-Dist: django-debug-toolbar==6.0.0
44
44
  Requires-Dist: django-import-export==4.3.9
45
45
  Requires-Dist: django-object-actions==5.0.0
46
+ Requires-Dist: django-otp==1.5.4
46
47
  Requires-Dist: django-timezone-field==7.1
47
48
  Requires-Dist: dnspython==2.7.0
48
49
  Requires-Dist: docutils==0.22
@@ -63,6 +64,7 @@ Requires-Dist: outcome==1.3.0.post0
63
64
  Requires-Dist: packaging==25.0
64
65
  Requires-Dist: pillow==11.3.0
65
66
  Requires-Dist: prompt_toolkit==3.0.51
67
+ Requires-Dist: psutil==5.9.8
66
68
  Requires-Dist: psycopg==3.2.9
67
69
  Requires-Dist: psycopg-binary==3.2.9
68
70
  Requires-Dist: pyasn1==0.6.1
@@ -112,50 +114,91 @@ Dynamic: license-file
112
114
 
113
115
  # Arthexis Constellation
114
116
 
117
+ [![Coverage](https://raw.githubusercontent.com/arthexis/arthexis/main/coverage.svg)](https://github.com/arthexis/arthexis/actions/workflows/coverage.yml)
118
+
115
119
  ## Purpose
116
120
 
117
121
  Arthexis Constellation is a [narrative-driven](https://en.wikipedia.org/wiki/Narrative) [Django](https://www.djangoproject.com/)-based [software suite](https://en.wikipedia.org/wiki/Software_suite) that centralizes tools for managing [electric vehicle charging infrastructure](https://en.wikipedia.org/wiki/Charging_station) and orchestrating [energy](https://en.wikipedia.org/wiki/Energy)-related [products](https://en.wikipedia.org/wiki/Product_(business)) and [services](https://en.wikipedia.org/wiki/Service_(economics)).
118
122
 
119
123
  ## Features
120
124
 
121
- - Compatible with the [Open Charge Point Protocol (OCPP) 1.6](https://www.openchargealliance.org/protocols/ocpp-16/)
122
- - [API](https://en.wikipedia.org/wiki/API) integration with [Odoo](https://www.odoo.com/) 1.6
125
+ - Compatible with the [Open Charge Point Protocol (OCPP) 1.6](https://www.openchargealliance.org/protocols/ocpp-16/) central system, handling:
126
+ - Lifecycle & sessions: BootNotification, Heartbeat, StatusNotification, StartTransaction, StopTransaction
127
+ - Access & metering: Authorize, MeterValues
128
+ - Maintenance & firmware: DiagnosticsStatusNotification, FirmwareStatusNotification
129
+ - [API](https://en.wikipedia.org/wiki/API) integration with [Odoo](https://www.odoo.com/), syncing:
130
+ - Employee credentials via `res.users`
131
+ - Product catalog lookups via `product.product`
123
132
  - Runs on [Windows 11](https://www.microsoft.com/windows/windows-11) and [Ubuntu 22.04 LTS](https://releases.ubuntu.com/22.04/)
124
133
  - Tested for the [Raspberry Pi 4 Model B](https://www.raspberrypi.com/products/raspberry-pi-4-model-b/)
125
134
 
126
135
  Project under active development.
127
136
 
128
- ## Four Role Architecture
137
+ ## Role Architecture
129
138
 
130
139
  Arthexis Constellation ships in four node roles tailored to different deployment scenarios.
131
140
 
132
- | Role | Description & Common Features |
133
- | --- | --- |
134
- | Terminal | Single-User Research & Development<br>Features: GUI Toast |
135
- | Control | Single-Device Testing & Special Task Appliances<br>Features: AP Public Wi-Fi, Celery Queue, GUI Toast, LCD Screen, NGINX Server, RFID Scanner |
136
- | Satellite | Multi-Device Edge, Network & Data Acquisition<br>Features: AP Router, Celery Queue, NGINX Server, RFID Scanner |
137
- | Constellation | Multi-User Cloud & Orchestration<br>Features: Celery Queue, NGINX Server |
141
+ <table border="1" cellpadding="8" cellspacing="0">
142
+ <thead>
143
+ <tr>
144
+ <th align="left">Role</th>
145
+ <th align="left">Description &amp; Common Features</th>
146
+ </tr>
147
+ </thead>
148
+ <tbody>
149
+ <tr>
150
+ <td valign="top"><strong>Terminal</strong></td>
151
+ <td valign="top"><strong>Single-User Research &amp; Development</strong><br />Features: GUI Toast</td>
152
+ </tr>
153
+ <tr>
154
+ <td valign="top"><strong>Control</strong></td>
155
+ <td valign="top"><strong>Single-Device Testing &amp; Special Task Appliances</strong><br />Features: AP Public Wi-Fi, Celery Queue, GUI Toast, LCD Screen, NGINX Server, RFID Scanner</td>
156
+ </tr>
157
+ <tr>
158
+ <td valign="top"><strong>Satellite</strong></td>
159
+ <td valign="top"><strong>Multi-Device Edge, Network &amp; Data Acquisition</strong><br />Features: AP Router, Celery Queue, NGINX Server, RFID Scanner</td>
160
+ </tr>
161
+ <tr>
162
+ <td valign="top"><strong>Constellation</strong></td>
163
+ <td valign="top"><strong>Multi-User Cloud &amp; Orchestration</strong><br />Features: Celery Queue, NGINX Server</td>
164
+ </tr>
165
+ </tbody>
166
+ </table>
138
167
 
139
168
  ## Quick Guide
140
169
 
141
170
  ### 1. Clone
142
- - **[Linux](https://en.wikipedia.org/wiki/Linux)**: open a [terminal](https://en.wikipedia.org/wiki/Command-line_interface) and run
143
- `git clone https://github.com/arthexis/arthexis.git`
171
+ - **[Linux](https://en.wikipedia.org/wiki/Linux)**: open a [terminal](https://en.wikipedia.org/wiki/Command-line_interface) and run `git clone https://github.com/arthexis/arthexis.git`.
144
172
  - **[Windows](https://en.wikipedia.org/wiki/Microsoft_Windows)**: open [PowerShell](https://learn.microsoft.com/powershell/) or [Git Bash](https://gitforwindows.org/) and run the same command.
145
173
 
146
174
  ### 2. Start and stop
147
- - **[VS Code](https://code.visualstudio.com/)**: open the folder, go to the
148
- **Run and Debug** panel (`Ctrl+Shift+D`), select the **Run Server** (or
149
- **Debug Server**) configuration, and press the green start button. Stop the
150
- server with the red square button (`Shift+F5`).
151
- - **[Shell](https://en.wikipedia.org/wiki/Shell_(computing))**: on Linux run [`./start.sh`](start.sh) and stop with [`./stop.sh`](stop.sh); on Windows run [`start.bat`](start.bat) and stop with `Ctrl+C`.
175
+ Terminal nodes can start directly with the scripts below without installing; Control, Satellite, and Constellation roles require installation first. Both approaches listen on [`http://localhost:8000/`](http://localhost:8000/) by default.
176
+
177
+ **[VS Code](https://code.visualstudio.com/)**
178
+ - Open the folder and go to the **Run and Debug** panel (`Ctrl+Shift+D`).
179
+ - Select the **Run Server** (or **Debug Server**) configuration.
180
+ - Press the green start button. Stop the server with the red square button (`Shift+F5`).
181
+
182
+ **[Shell](https://en.wikipedia.org/wiki/Shell_(computing))**
183
+ - Linux: run [`./start.sh`](start.sh) and stop with [`./stop.sh`](stop.sh).
184
+ - Windows: run [`start.bat`](start.bat) and stop with `Ctrl+C`.
152
185
 
153
186
  ### 3. Install and upgrade
154
- - **Linux**: use [`./install.sh`](install.sh) with options like `--service NAME`, `--public` or `--internal`, `--port PORT`, `--upgrade`, `--auto-upgrade`, `--latest`, `--celery`, `--lcd-screen`, `--no-lcd-screen`, `--clean`, `--datasette`. Upgrade with [`./upgrade.sh`](upgrade.sh) using flags such as `--latest`, `--clean`, or `--no-restart`.
155
- - **Windows**: run [`install.bat`](install.bat) to install and [`upgrade.bat`](upgrade.bat) to upgrade.
187
+ **Linux:** run [`./install.sh`](install.sh) with a node role flag:
188
+ - `--terminal` default when unspecified and recommended if you're unsure. Terminal nodes can also use the start/stop scripts above without installing.
189
+ - `--control` – prepares the single-device testing appliance.
190
+ - `--satellite` – configures the edge data acquisition node.
191
+ - `--constellation` – enables the multi-user orchestration stack.
192
+ Use `./install.sh --help` to list every available flag if you need to customize the node beyond the role defaults.
193
+
194
+ Upgrade with [`./upgrade.sh`](upgrade.sh).
195
+
196
+ **Windows:**
197
+ - Run [`install.bat`](install.bat) to install (Terminal role) and [`upgrade.bat`](upgrade.bat) to upgrade.
198
+ - Installation is not required to start in Terminal mode (the default).
156
199
 
157
200
  ### 4. Administration
158
- Visit [`http://localhost:8888/admin/`](http://localhost:8888/admin/) for the [Django admin](https://docs.djangoproject.com/en/stable/ref/contrib/admin/) and [`http://localhost:8888/admindocs/`](http://localhost:8888/admindocs/) for the [admindocs](https://docs.djangoproject.com/en/stable/ref/contrib/admin/admindocs/). Use port `8000` if you started with [`start.bat`](start.bat) or the `--public` option.
201
+ Visit [`http://localhost:8000/admin/`](http://localhost:8000/admin/) for the [Django admin](https://docs.djangoproject.com/en/stable/ref/contrib/admin/) and [`http://localhost:8000/admindocs/`](http://localhost:8000/admindocs/) for the [admindocs](https://docs.djangoproject.com/en/stable/ref/contrib/admin/admindocs/). Use `--port` with the start scripts or installer when you need to expose a different port.
159
202
 
160
203
  ## Support
161
204
 
@@ -0,0 +1,97 @@
1
+ # Arthexis Constellation
2
+
3
+ [![Coverage](https://raw.githubusercontent.com/arthexis/arthexis/main/coverage.svg)](https://github.com/arthexis/arthexis/actions/workflows/coverage.yml)
4
+
5
+ ## Purpose
6
+
7
+ Arthexis Constellation is a [narrative-driven](https://en.wikipedia.org/wiki/Narrative) [Django](https://www.djangoproject.com/)-based [software suite](https://en.wikipedia.org/wiki/Software_suite) that centralizes tools for managing [electric vehicle charging infrastructure](https://en.wikipedia.org/wiki/Charging_station) and orchestrating [energy](https://en.wikipedia.org/wiki/Energy)-related [products](https://en.wikipedia.org/wiki/Product_(business)) and [services](https://en.wikipedia.org/wiki/Service_(economics)).
8
+
9
+ ## Features
10
+
11
+ - Compatible with the [Open Charge Point Protocol (OCPP) 1.6](https://www.openchargealliance.org/protocols/ocpp-16/) central system, handling:
12
+ - Lifecycle & sessions: BootNotification, Heartbeat, StatusNotification, StartTransaction, StopTransaction
13
+ - Access & metering: Authorize, MeterValues
14
+ - Maintenance & firmware: DiagnosticsStatusNotification, FirmwareStatusNotification
15
+ - [API](https://en.wikipedia.org/wiki/API) integration with [Odoo](https://www.odoo.com/), syncing:
16
+ - Employee credentials via `res.users`
17
+ - Product catalog lookups via `product.product`
18
+ - Runs on [Windows 11](https://www.microsoft.com/windows/windows-11) and [Ubuntu 22.04 LTS](https://releases.ubuntu.com/22.04/)
19
+ - Tested for the [Raspberry Pi 4 Model B](https://www.raspberrypi.com/products/raspberry-pi-4-model-b/)
20
+
21
+ Project under active development.
22
+
23
+ ## Role Architecture
24
+
25
+ Arthexis Constellation ships in four node roles tailored to different deployment scenarios.
26
+
27
+ <table border="1" cellpadding="8" cellspacing="0">
28
+ <thead>
29
+ <tr>
30
+ <th align="left">Role</th>
31
+ <th align="left">Description &amp; Common Features</th>
32
+ </tr>
33
+ </thead>
34
+ <tbody>
35
+ <tr>
36
+ <td valign="top"><strong>Terminal</strong></td>
37
+ <td valign="top"><strong>Single-User Research &amp; Development</strong><br />Features: GUI Toast</td>
38
+ </tr>
39
+ <tr>
40
+ <td valign="top"><strong>Control</strong></td>
41
+ <td valign="top"><strong>Single-Device Testing &amp; Special Task Appliances</strong><br />Features: AP Public Wi-Fi, Celery Queue, GUI Toast, LCD Screen, NGINX Server, RFID Scanner</td>
42
+ </tr>
43
+ <tr>
44
+ <td valign="top"><strong>Satellite</strong></td>
45
+ <td valign="top"><strong>Multi-Device Edge, Network &amp; Data Acquisition</strong><br />Features: AP Router, Celery Queue, NGINX Server, RFID Scanner</td>
46
+ </tr>
47
+ <tr>
48
+ <td valign="top"><strong>Constellation</strong></td>
49
+ <td valign="top"><strong>Multi-User Cloud &amp; Orchestration</strong><br />Features: Celery Queue, NGINX Server</td>
50
+ </tr>
51
+ </tbody>
52
+ </table>
53
+
54
+ ## Quick Guide
55
+
56
+ ### 1. Clone
57
+ - **[Linux](https://en.wikipedia.org/wiki/Linux)**: open a [terminal](https://en.wikipedia.org/wiki/Command-line_interface) and run `git clone https://github.com/arthexis/arthexis.git`.
58
+ - **[Windows](https://en.wikipedia.org/wiki/Microsoft_Windows)**: open [PowerShell](https://learn.microsoft.com/powershell/) or [Git Bash](https://gitforwindows.org/) and run the same command.
59
+
60
+ ### 2. Start and stop
61
+ Terminal nodes can start directly with the scripts below without installing; Control, Satellite, and Constellation roles require installation first. Both approaches listen on [`http://localhost:8000/`](http://localhost:8000/) by default.
62
+
63
+ **[VS Code](https://code.visualstudio.com/)**
64
+ - Open the folder and go to the **Run and Debug** panel (`Ctrl+Shift+D`).
65
+ - Select the **Run Server** (or **Debug Server**) configuration.
66
+ - Press the green start button. Stop the server with the red square button (`Shift+F5`).
67
+
68
+ **[Shell](https://en.wikipedia.org/wiki/Shell_(computing))**
69
+ - Linux: run [`./start.sh`](start.sh) and stop with [`./stop.sh`](stop.sh).
70
+ - Windows: run [`start.bat`](start.bat) and stop with `Ctrl+C`.
71
+
72
+ ### 3. Install and upgrade
73
+ **Linux:** run [`./install.sh`](install.sh) with a node role flag:
74
+ - `--terminal` – default when unspecified and recommended if you're unsure. Terminal nodes can also use the start/stop scripts above without installing.
75
+ - `--control` – prepares the single-device testing appliance.
76
+ - `--satellite` – configures the edge data acquisition node.
77
+ - `--constellation` – enables the multi-user orchestration stack.
78
+ Use `./install.sh --help` to list every available flag if you need to customize the node beyond the role defaults.
79
+
80
+ Upgrade with [`./upgrade.sh`](upgrade.sh).
81
+
82
+ **Windows:**
83
+ - Run [`install.bat`](install.bat) to install (Terminal role) and [`upgrade.bat`](upgrade.bat) to upgrade.
84
+ - Installation is not required to start in Terminal mode (the default).
85
+
86
+ ### 4. Administration
87
+ Visit [`http://localhost:8000/admin/`](http://localhost:8000/admin/) for the [Django admin](https://docs.djangoproject.com/en/stable/ref/contrib/admin/) and [`http://localhost:8000/admindocs/`](http://localhost:8000/admindocs/) for the [admindocs](https://docs.djangoproject.com/en/stable/ref/contrib/admin/admindocs/). Use `--port` with the start scripts or installer when you need to expose a different port.
88
+
89
+ ## Support
90
+
91
+ Contact us at [tecnologia@gelectriic.com](mailto:tecnologia@gelectriic.com) or visit our [web page](https://www.gelectriic.com/) for [professional services](https://en.wikipedia.org/wiki/Professional_services) and [commercial support](https://en.wikipedia.org/wiki/Technical_support).
92
+
93
+ ## About Me
94
+
95
+ > "What, you want to know about me too? Well, I enjoy [developing software](https://en.wikipedia.org/wiki/Software_development), [role-playing games](https://en.wikipedia.org/wiki/Role-playing_game), long walks on the [beach](https://en.wikipedia.org/wiki/Beach) and a fourth secret thing."
96
+ > --Arthexis
97
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: arthexis
3
- Version: 0.1.9
3
+ Version: 0.1.10
4
4
  Summary: Django-based MESH system
5
5
  Author-email: "Rafael J. Guillén-Osorio" <tecnologia@gelectriic.com>
6
6
  License-Expression: GPL-3.0-only
@@ -43,6 +43,7 @@ Requires-Dist: django-celery-beat==2.8.1
43
43
  Requires-Dist: django-debug-toolbar==6.0.0
44
44
  Requires-Dist: django-import-export==4.3.9
45
45
  Requires-Dist: django-object-actions==5.0.0
46
+ Requires-Dist: django-otp==1.5.4
46
47
  Requires-Dist: django-timezone-field==7.1
47
48
  Requires-Dist: dnspython==2.7.0
48
49
  Requires-Dist: docutils==0.22
@@ -63,6 +64,7 @@ Requires-Dist: outcome==1.3.0.post0
63
64
  Requires-Dist: packaging==25.0
64
65
  Requires-Dist: pillow==11.3.0
65
66
  Requires-Dist: prompt_toolkit==3.0.51
67
+ Requires-Dist: psutil==5.9.8
66
68
  Requires-Dist: psycopg==3.2.9
67
69
  Requires-Dist: psycopg-binary==3.2.9
68
70
  Requires-Dist: pyasn1==0.6.1
@@ -112,50 +114,91 @@ Dynamic: license-file
112
114
 
113
115
  # Arthexis Constellation
114
116
 
117
+ [![Coverage](https://raw.githubusercontent.com/arthexis/arthexis/main/coverage.svg)](https://github.com/arthexis/arthexis/actions/workflows/coverage.yml)
118
+
115
119
  ## Purpose
116
120
 
117
121
  Arthexis Constellation is a [narrative-driven](https://en.wikipedia.org/wiki/Narrative) [Django](https://www.djangoproject.com/)-based [software suite](https://en.wikipedia.org/wiki/Software_suite) that centralizes tools for managing [electric vehicle charging infrastructure](https://en.wikipedia.org/wiki/Charging_station) and orchestrating [energy](https://en.wikipedia.org/wiki/Energy)-related [products](https://en.wikipedia.org/wiki/Product_(business)) and [services](https://en.wikipedia.org/wiki/Service_(economics)).
118
122
 
119
123
  ## Features
120
124
 
121
- - Compatible with the [Open Charge Point Protocol (OCPP) 1.6](https://www.openchargealliance.org/protocols/ocpp-16/)
122
- - [API](https://en.wikipedia.org/wiki/API) integration with [Odoo](https://www.odoo.com/) 1.6
125
+ - Compatible with the [Open Charge Point Protocol (OCPP) 1.6](https://www.openchargealliance.org/protocols/ocpp-16/) central system, handling:
126
+ - Lifecycle & sessions: BootNotification, Heartbeat, StatusNotification, StartTransaction, StopTransaction
127
+ - Access & metering: Authorize, MeterValues
128
+ - Maintenance & firmware: DiagnosticsStatusNotification, FirmwareStatusNotification
129
+ - [API](https://en.wikipedia.org/wiki/API) integration with [Odoo](https://www.odoo.com/), syncing:
130
+ - Employee credentials via `res.users`
131
+ - Product catalog lookups via `product.product`
123
132
  - Runs on [Windows 11](https://www.microsoft.com/windows/windows-11) and [Ubuntu 22.04 LTS](https://releases.ubuntu.com/22.04/)
124
133
  - Tested for the [Raspberry Pi 4 Model B](https://www.raspberrypi.com/products/raspberry-pi-4-model-b/)
125
134
 
126
135
  Project under active development.
127
136
 
128
- ## Four Role Architecture
137
+ ## Role Architecture
129
138
 
130
139
  Arthexis Constellation ships in four node roles tailored to different deployment scenarios.
131
140
 
132
- | Role | Description & Common Features |
133
- | --- | --- |
134
- | Terminal | Single-User Research & Development<br>Features: GUI Toast |
135
- | Control | Single-Device Testing & Special Task Appliances<br>Features: AP Public Wi-Fi, Celery Queue, GUI Toast, LCD Screen, NGINX Server, RFID Scanner |
136
- | Satellite | Multi-Device Edge, Network & Data Acquisition<br>Features: AP Router, Celery Queue, NGINX Server, RFID Scanner |
137
- | Constellation | Multi-User Cloud & Orchestration<br>Features: Celery Queue, NGINX Server |
141
+ <table border="1" cellpadding="8" cellspacing="0">
142
+ <thead>
143
+ <tr>
144
+ <th align="left">Role</th>
145
+ <th align="left">Description &amp; Common Features</th>
146
+ </tr>
147
+ </thead>
148
+ <tbody>
149
+ <tr>
150
+ <td valign="top"><strong>Terminal</strong></td>
151
+ <td valign="top"><strong>Single-User Research &amp; Development</strong><br />Features: GUI Toast</td>
152
+ </tr>
153
+ <tr>
154
+ <td valign="top"><strong>Control</strong></td>
155
+ <td valign="top"><strong>Single-Device Testing &amp; Special Task Appliances</strong><br />Features: AP Public Wi-Fi, Celery Queue, GUI Toast, LCD Screen, NGINX Server, RFID Scanner</td>
156
+ </tr>
157
+ <tr>
158
+ <td valign="top"><strong>Satellite</strong></td>
159
+ <td valign="top"><strong>Multi-Device Edge, Network &amp; Data Acquisition</strong><br />Features: AP Router, Celery Queue, NGINX Server, RFID Scanner</td>
160
+ </tr>
161
+ <tr>
162
+ <td valign="top"><strong>Constellation</strong></td>
163
+ <td valign="top"><strong>Multi-User Cloud &amp; Orchestration</strong><br />Features: Celery Queue, NGINX Server</td>
164
+ </tr>
165
+ </tbody>
166
+ </table>
138
167
 
139
168
  ## Quick Guide
140
169
 
141
170
  ### 1. Clone
142
- - **[Linux](https://en.wikipedia.org/wiki/Linux)**: open a [terminal](https://en.wikipedia.org/wiki/Command-line_interface) and run
143
- `git clone https://github.com/arthexis/arthexis.git`
171
+ - **[Linux](https://en.wikipedia.org/wiki/Linux)**: open a [terminal](https://en.wikipedia.org/wiki/Command-line_interface) and run `git clone https://github.com/arthexis/arthexis.git`.
144
172
  - **[Windows](https://en.wikipedia.org/wiki/Microsoft_Windows)**: open [PowerShell](https://learn.microsoft.com/powershell/) or [Git Bash](https://gitforwindows.org/) and run the same command.
145
173
 
146
174
  ### 2. Start and stop
147
- - **[VS Code](https://code.visualstudio.com/)**: open the folder, go to the
148
- **Run and Debug** panel (`Ctrl+Shift+D`), select the **Run Server** (or
149
- **Debug Server**) configuration, and press the green start button. Stop the
150
- server with the red square button (`Shift+F5`).
151
- - **[Shell](https://en.wikipedia.org/wiki/Shell_(computing))**: on Linux run [`./start.sh`](start.sh) and stop with [`./stop.sh`](stop.sh); on Windows run [`start.bat`](start.bat) and stop with `Ctrl+C`.
175
+ Terminal nodes can start directly with the scripts below without installing; Control, Satellite, and Constellation roles require installation first. Both approaches listen on [`http://localhost:8000/`](http://localhost:8000/) by default.
176
+
177
+ **[VS Code](https://code.visualstudio.com/)**
178
+ - Open the folder and go to the **Run and Debug** panel (`Ctrl+Shift+D`).
179
+ - Select the **Run Server** (or **Debug Server**) configuration.
180
+ - Press the green start button. Stop the server with the red square button (`Shift+F5`).
181
+
182
+ **[Shell](https://en.wikipedia.org/wiki/Shell_(computing))**
183
+ - Linux: run [`./start.sh`](start.sh) and stop with [`./stop.sh`](stop.sh).
184
+ - Windows: run [`start.bat`](start.bat) and stop with `Ctrl+C`.
152
185
 
153
186
  ### 3. Install and upgrade
154
- - **Linux**: use [`./install.sh`](install.sh) with options like `--service NAME`, `--public` or `--internal`, `--port PORT`, `--upgrade`, `--auto-upgrade`, `--latest`, `--celery`, `--lcd-screen`, `--no-lcd-screen`, `--clean`, `--datasette`. Upgrade with [`./upgrade.sh`](upgrade.sh) using flags such as `--latest`, `--clean`, or `--no-restart`.
155
- - **Windows**: run [`install.bat`](install.bat) to install and [`upgrade.bat`](upgrade.bat) to upgrade.
187
+ **Linux:** run [`./install.sh`](install.sh) with a node role flag:
188
+ - `--terminal` default when unspecified and recommended if you're unsure. Terminal nodes can also use the start/stop scripts above without installing.
189
+ - `--control` – prepares the single-device testing appliance.
190
+ - `--satellite` – configures the edge data acquisition node.
191
+ - `--constellation` – enables the multi-user orchestration stack.
192
+ Use `./install.sh --help` to list every available flag if you need to customize the node beyond the role defaults.
193
+
194
+ Upgrade with [`./upgrade.sh`](upgrade.sh).
195
+
196
+ **Windows:**
197
+ - Run [`install.bat`](install.bat) to install (Terminal role) and [`upgrade.bat`](upgrade.bat) to upgrade.
198
+ - Installation is not required to start in Terminal mode (the default).
156
199
 
157
200
  ### 4. Administration
158
- Visit [`http://localhost:8888/admin/`](http://localhost:8888/admin/) for the [Django admin](https://docs.djangoproject.com/en/stable/ref/contrib/admin/) and [`http://localhost:8888/admindocs/`](http://localhost:8888/admindocs/) for the [admindocs](https://docs.djangoproject.com/en/stable/ref/contrib/admin/admindocs/). Use port `8000` if you started with [`start.bat`](start.bat) or the `--public` option.
201
+ Visit [`http://localhost:8000/admin/`](http://localhost:8000/admin/) for the [Django admin](https://docs.djangoproject.com/en/stable/ref/contrib/admin/) and [`http://localhost:8000/admindocs/`](http://localhost:8000/admindocs/) for the [admindocs](https://docs.djangoproject.com/en/stable/ref/contrib/admin/admindocs/). Use `--port` with the start scripts or installer when you need to expose a different port.
159
202
 
160
203
  ## Support
161
204
 
@@ -25,6 +25,7 @@ core/admin.py
25
25
  core/admin_history.py
26
26
  core/admindocs.py
27
27
  core/apps.py
28
+ core/auto_upgrade.py
28
29
  core/backends.py
29
30
  core/entity.py
30
31
  core/environment.py
@@ -39,6 +40,7 @@ core/middleware.py
39
40
  core/models.py
40
41
  core/notifications.py
41
42
  core/public_wifi.py
43
+ core/reference_utils.py
42
44
  core/release.py
43
45
  core/sigil_builder.py
44
46
  core/sigil_context.py
@@ -87,6 +89,7 @@ pages/admin.py
87
89
  pages/apps.py
88
90
  pages/checks.py
89
91
  pages/context_processors.py
92
+ pages/forms.py
90
93
  pages/middleware.py
91
94
  pages/models.py
92
95
  pages/tests.py
@@ -107,7 +110,9 @@ tests/test_allowed_hosts_hostname.py
107
110
  tests/test_assistant_data_api.py
108
111
  tests/test_assistant_profile_admin.py
109
112
  tests/test_assistant_profile_api.py
113
+ tests/test_auto_upgrade_scheduler.py
110
114
  tests/test_awg_admin.py
115
+ tests/test_benchmark_command.py
111
116
  tests/test_birthday_greetings.py
112
117
  tests/test_celery_no_debug.py
113
118
  tests/test_check_migrations_script.py
@@ -145,6 +150,7 @@ tests/test_message_command.py
145
150
  tests/test_migrations.py
146
151
  tests/test_model_verbose_name_capitalization.py
147
152
  tests/test_network_setup_interactive.py
153
+ tests/test_node_info_view.py
148
154
  tests/test_notifications_fallback.py
149
155
  tests/test_notify_command.py
150
156
  tests/test_ocpp_session_lock.py
@@ -166,6 +172,7 @@ tests/test_release_logs.py
166
172
  tests/test_release_manager_admin.py
167
173
  tests/test_release_progress.py
168
174
  tests/test_release_tasks.py
175
+ tests/test_request_invite.py
169
176
  tests/test_rfid_admin_reference_clear.py
170
177
  tests/test_rfid_admin_scan_csrf.py
171
178
  tests/test_rfid_background_reader.py
@@ -178,10 +185,12 @@ tests/test_show_leads_command.py
178
185
  tests/test_sigil_builder.py
179
186
  tests/test_sigil_resolution.py
180
187
  tests/test_sites_utils.py
188
+ tests/test_staff_login_net_message.py
181
189
  tests/test_switch_role_script.py
182
190
  tests/test_uninstall_script.py
183
191
  tests/test_update_fixtures_command.py
184
192
  tests/test_urls_autodiscover.py
185
193
  tests/test_user_data_admin.py
194
+ tests/test_version_endpoint.py
186
195
  tests/test_version_file.py
187
196
  tests/test_vscode_manage.py
@@ -30,6 +30,7 @@ django-celery-beat==2.8.1
30
30
  django-debug-toolbar==6.0.0
31
31
  django-import-export==4.3.9
32
32
  django-object-actions==5.0.0
33
+ django-otp==1.5.4
33
34
  django-timezone-field==7.1
34
35
  dnspython==2.7.0
35
36
  docutils==0.22
@@ -48,6 +49,7 @@ outcome==1.3.0.post0
48
49
  packaging==25.0
49
50
  pillow==11.3.0
50
51
  prompt_toolkit==3.0.51
52
+ psutil==5.9.8
51
53
  psycopg==3.2.9
52
54
  psycopg-binary==3.2.9
53
55
  pyasn1==0.6.1