igs-slm 0.1.5b2__tar.gz → 0.2.0b0__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 (577) hide show
  1. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.github/workflows/lint.yml +3 -3
  2. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.github/workflows/release.yml +9 -9
  3. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.github/workflows/safety.yml +3 -3
  4. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.github/workflows/scorecard.yml +1 -1
  5. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.github/workflows/test.yml +7 -7
  6. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.github/workflows/zizmor.yml +2 -2
  7. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/PKG-INFO +2 -2
  8. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/changelog.rst +24 -0
  9. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/conf.py +17 -3
  10. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/configuration.rst +65 -0
  11. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/installation.rst +94 -25
  12. igs_slm-0.2.0b0/doc/source/reference/defines/coordinatemode.rst +6 -0
  13. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/index.rst +1 -0
  14. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/justfile +1 -1
  15. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/pyproject.toml +4 -2
  16. igs_slm-0.2.0b0/requirements.txt +2694 -0
  17. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/__init__.py +1 -1
  18. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/admin.py +40 -3
  19. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/edit/views.py +37 -2
  20. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/public/serializers.py +1 -1
  21. igs_slm-0.2.0b0/src/slm/defines/CoordinateMode.py +9 -0
  22. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/SiteLogFormat.py +19 -6
  23. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/__init__.py +24 -22
  24. igs_slm-0.2.0b0/src/slm/file_views/apps.py +7 -0
  25. igs_slm-0.2.0b0/src/slm/file_views/config.py +253 -0
  26. igs_slm-0.2.0b0/src/slm/file_views/settings.py +124 -0
  27. igs_slm-0.2.0b0/src/slm/file_views/static/slm/file_views/banner_header.png +0 -0
  28. igs_slm-0.2.0b0/src/slm/file_views/static/slm/file_views/css/listing.css +82 -0
  29. igs_slm-0.2.0b0/src/slm/file_views/templates/slm/file_views/listing.html +70 -0
  30. igs_slm-0.2.0b0/src/slm/file_views/urls.py +47 -0
  31. igs_slm-0.2.0b0/src/slm/file_views/views.py +472 -0
  32. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/forms.py +22 -4
  33. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/ascii_9char.log +1 -1
  34. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/legacy.log +1 -1
  35. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/check_upgrade.py +11 -11
  36. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/generate_sinex.py +9 -7
  37. igs_slm-0.2.0b0/src/slm/migrations/0001_alter_archivedsitelog_size_and_more.py +44 -0
  38. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0032_archiveindex_valid_range_and_more.py +8 -1
  39. igs_slm-0.2.0b0/src/slm/migrations/simplify_daily_index_files.py +86 -0
  40. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/index.py +73 -6
  41. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/sitelog.py +6 -0
  42. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/system.py +35 -2
  43. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/__init__.py +10 -0
  44. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/legacy/binding.py +3 -2
  45. igs_slm-0.2.0b0/src/slm/receivers/cache.py +25 -0
  46. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/root.py +22 -0
  47. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/routines.py +1 -0
  48. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/slm.py +71 -10
  49. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/urls.py +1 -1
  50. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/validation.py +5 -4
  51. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/signals.py +33 -23
  52. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/enums.js +7 -6
  53. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/form.js +25 -14
  54. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/slm.js +4 -2
  55. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templatetags/slm.py +3 -3
  56. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/utils.py +161 -36
  57. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/validators.py +51 -0
  58. igs_slm-0.2.0b0/tests/test_utils.py +237 -0
  59. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/tests.py +4 -8
  60. igs_slm-0.2.0b0/tests/uploads/__init__.py +0 -0
  61. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/uploads/files/AAA600USA_20240418.log +2 -2
  62. igs_slm-0.2.0b0/uv.lock +5830 -0
  63. igs_slm-0.1.5b2/requirements.txt +0 -185
  64. igs_slm-0.1.5b2/uv.lock +0 -4324
  65. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.github/dependabot.yml +0 -0
  66. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.gitignore +0 -0
  67. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.pre-commit-config.yaml +0 -0
  68. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/.safety-policy.yml +0 -0
  69. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/CONTRIBUTING.md +0 -0
  70. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/LICENSE +0 -0
  71. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/README.md +0 -0
  72. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/SECURITY.md +0 -0
  73. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/data_model_refactor.txt +0 -0
  74. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/deploy/.env.example +0 -0
  75. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/deploy/Dockerfile +0 -0
  76. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/deploy/README.md +0 -0
  77. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/deploy/docker-compose.dev.yml +0 -0
  78. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/deploy/docker-compose.yml +0 -0
  79. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/deploy/nginx/nginx.conf +0 -0
  80. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/.readthedocs.yaml +0 -0
  81. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/APIs.rst +0 -0
  82. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/_static/img/Django.svg +0 -0
  83. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/_static/img/slm-logo.svg +0 -0
  84. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/_static/style.css +0 -0
  85. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/architecture/data_model.rst +0 -0
  86. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/architecture/extensions.rst +0 -0
  87. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/architecture/index.rst +0 -0
  88. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/architecture/signals.rst +0 -0
  89. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/commands.rst +0 -0
  90. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/dependencies.rst +0 -0
  91. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/ignored_spellings.txt +0 -0
  92. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/index.rst +0 -0
  93. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/manual/howto.rst +0 -0
  94. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/manual/index.rst +0 -0
  95. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/manual/organization.rst +0 -0
  96. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/manual/permissions.rst +0 -0
  97. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/overview.rst +0 -0
  98. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/alertlevel.rst +0 -0
  99. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/antennacalibration.rst +0 -0
  100. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/antennafeatures.rst +0 -0
  101. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/antennareferencepoint.rst +0 -0
  102. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/aspiration.rst +0 -0
  103. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/cardinaldirection.rst +0 -0
  104. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/collocationstatus.rst +0 -0
  105. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/equipmentstate.rst +0 -0
  106. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/flagseverity.rst +0 -0
  107. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/fracturespacing.rst +0 -0
  108. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/frequencystandardtype.rst +0 -0
  109. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/geodesymlversion.rst +0 -0
  110. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/instrumentation.rst +0 -0
  111. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/isocountry.rst +0 -0
  112. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/logentrytype.rst +0 -0
  113. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/sitefileuploadstatus.rst +0 -0
  114. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/sitelogformat.rst +0 -0
  115. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/sitelogstatus.rst +0 -0
  116. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/slmfiletype.rst +0 -0
  117. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/defines/tectonicplates.rst +0 -0
  118. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/index.rst +0 -0
  119. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/settings.rst +0 -0
  120. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/signals.rst +0 -0
  121. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/reference/validators.rst +0 -0
  122. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/refs.rst +0 -0
  123. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/doc/source/upgrading.rst +0 -0
  124. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/manage.py +0 -0
  125. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/igs_tools/__init__.py +0 -0
  126. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/igs_tools/connection.py +0 -0
  127. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/igs_tools/defines/__init__.py +0 -0
  128. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/igs_tools/defines/constellation.py +0 -0
  129. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/igs_tools/defines/data_center.py +0 -0
  130. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/igs_tools/defines/rinex.py +0 -0
  131. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/igs_tools/directory.py +0 -0
  132. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/igs_tools/utils.py +0 -0
  133. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/edit/__init__.py +0 -0
  134. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/edit/serializers.py +0 -0
  135. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/fields.py +0 -0
  136. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/filter.py +0 -0
  137. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/pagination.py +0 -0
  138. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/permissions.py +0 -0
  139. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/public/__init__.py +0 -0
  140. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/public/views.py +0 -0
  141. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/serializers.py +0 -0
  142. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/api/views.py +0 -0
  143. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/apps.py +0 -0
  144. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/authentication.py +0 -0
  145. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/__init__.py +0 -0
  146. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/startproject.py +0 -0
  147. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/pyproject.toml +0 -0
  148. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/__init__.py +0 -0
  149. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/__init__.py +0 -0
  150. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/base.py +0 -0
  151. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/develop/__init__.py +0 -0
  152. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/develop/local.py +0 -0
  153. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/develop/wsgi.py +0 -0
  154. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/manage.py +0 -0
  155. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/production/__init__.py +0 -0
  156. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/production/wsgi.py +0 -0
  157. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/urls.py +0 -0
  158. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/sites/{{ site }}/validation.py +0 -0
  159. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/__init__.py +0 -0
  160. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/admin.py +0 -0
  161. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/apps.py +0 -0
  162. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/management/__init__.py +0 -0
  163. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/management/commands/__init__.py +0 -0
  164. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/management/commands/import_archive.py +0 -0
  165. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/migrations/__init__.py +0 -0
  166. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/models.py +0 -0
  167. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/templates/slm/base.html +0 -0
  168. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/urls.py +0 -0
  169. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/bin/templates/{{ project_dir }}/src/{{ extension_app }}/views.py +0 -0
  170. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/context.py +0 -0
  171. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/AlertLevel.py +0 -0
  172. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/AntennaCalibration.py +0 -0
  173. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/AntennaFeatures.py +0 -0
  174. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/AntennaReferencePoint.py +0 -0
  175. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/Aspiration.py +0 -0
  176. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/CardinalDirection.py +0 -0
  177. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/CollocationStatus.py +0 -0
  178. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/EquipmentState.py +0 -0
  179. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/FlagSeverity.py +0 -0
  180. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/FractureSpacing.py +0 -0
  181. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/FrequencyStandardType.py +0 -0
  182. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/GeodesyMLVersion.py +0 -0
  183. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/ISOCountry.py +0 -0
  184. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/Instrumentation.py +0 -0
  185. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/LogEntryType.py +0 -0
  186. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/SLMFileType.py +0 -0
  187. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/SiteFileUploadStatus.py +0 -0
  188. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/SiteLogStatus.py +0 -0
  189. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/defines/TectonicPlates.py +0 -0
  190. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/collocationInformation.xml +0 -0
  191. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/condition.xml +0 -0
  192. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/contact.xml +0 -0
  193. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/formInformation.xml +0 -0
  194. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/frequencyStandard.xml +0 -0
  195. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/gnssAntenna.xml +0 -0
  196. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/gnssReceiver.xml +0 -0
  197. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/humiditySensor.xml +0 -0
  198. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/localEpisodicEffect.xml +0 -0
  199. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/moreInformation.xml +0 -0
  200. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/multipathSource.xml +0 -0
  201. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/otherInstrumentation.xml +0 -0
  202. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/pressureSensor.xml +0 -0
  203. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/radioInterference.xml +0 -0
  204. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/sensor.xml +0 -0
  205. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/signalObstruction.xml +0 -0
  206. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/siteIdentification.xml +0 -0
  207. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/siteLocation.xml +0 -0
  208. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/surveyedLocalTie.xml +0 -0
  209. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/temperatureSensor.xml +0 -0
  210. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.4/waterVaporSensor.xml +0 -0
  211. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/0.5/document.xml +0 -0
  212. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/geodesyml_0.4.xml +0 -0
  213. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/jinja2/slm/sitelog/xsd/geodesyml_0.5.xml +0 -0
  214. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/manage.py +0 -0
  215. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/__init__.py +0 -0
  216. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/__init__.py +0 -0
  217. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/build_index.py +0 -0
  218. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/head_from_index.py +0 -0
  219. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/import_archive.py +0 -0
  220. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/import_equipment.py +0 -0
  221. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/set_site.py +0 -0
  222. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/sitelog.py +0 -0
  223. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/synchronize.py +0 -0
  224. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/update_data_availability.py +0 -0
  225. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/validate_db.py +0 -0
  226. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/management/commands/validate_gml.py +0 -0
  227. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/__init__.py +0 -0
  228. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/admin.py +0 -0
  229. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/api/__init__.py +0 -0
  230. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/api/edit/__init__.py +0 -0
  231. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/api/edit/serializers.py +0 -0
  232. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/api/edit/views.py +0 -0
  233. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/api/public/__init__.py +0 -0
  234. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/api/public/serializers.py +0 -0
  235. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/api/public/views.py +0 -0
  236. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/apps.py +0 -0
  237. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/defines.py +0 -0
  238. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/migrations/0001_initial.py +0 -0
  239. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/migrations/__init__.py +0 -0
  240. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/models.py +0 -0
  241. /igs_slm-0.1.5b2/src/slm/map/templatetags/__init__.py → /igs_slm-0.2.0b0/src/slm/map/settings.py +0 -0
  242. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/static/slm/css/map.css +0 -0
  243. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/static/slm/js/map.js +0 -0
  244. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/templates/slm/map.html +0 -0
  245. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/templates/slm/station/base.html +0 -0
  246. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/templates/slm/station/edit.html +0 -0
  247. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/templates/slm/top_nav.html +0 -0
  248. {igs_slm-0.1.5b2/src/slm/migrations → igs_slm-0.2.0b0/src/slm/map/templatetags}/__init__.py +0 -0
  249. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/templatetags/slm_map.py +0 -0
  250. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/urls.py +0 -0
  251. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/map/views.py +0 -0
  252. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/middleware.py +0 -0
  253. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0001_alter_siteantenna_marker_enu_alter_sitelocation_llh_and_more.py +0 -0
  254. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0001_initial.py +0 -0
  255. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0001_remove_archiveindex_no_overlapping_ranges_per_site_and_more.py +0 -0
  256. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0002_alter_archivedsitelog_file_and_more.py +0 -0
  257. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0002_alter_dataavailability_site.py +0 -0
  258. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0003_alter_archivedsitelog_name_and_more.py +0 -0
  259. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0003_remove_logentry_slm_logentr_site_lo_7a2af7_idx_and_more.py +0 -0
  260. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0004_alter_logentry_timestamp_and_more.py +0 -0
  261. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0004_alter_site_name.py +0 -0
  262. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0005_alter_logentry_options_alter_logentry_section_and_more.py +0 -0
  263. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0005_slmversion.py +0 -0
  264. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0006_alter_logentry_options_alter_logentry_index_together.py +0 -0
  265. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0007_alter_dataavailability_rate.py +0 -0
  266. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0008_alter_archiveindex_options_and_more.py +0 -0
  267. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0009_alter_archiveindex_end.py +0 -0
  268. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0010_alter_dataavailability_rinex_version_and_more.py +0 -0
  269. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0011_alter_siteidentification_fracture_spacing.py +0 -0
  270. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0012_alter_logentry_type.py +0 -0
  271. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0013_unpublishedfilesalert.py +0 -0
  272. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0014_sitelogpublished.py +0 -0
  273. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0015_alter_siteantenna_options_and_more.py +0 -0
  274. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0016_alter_antenna_description_alter_radome_description_and_more.py +0 -0
  275. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0017_alter_logentry_unique_together_and_more.py +0 -0
  276. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0018_afix_deleted.py +0 -0
  277. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0018_alter_siteantenna_options_and_more.py +0 -0
  278. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0019_remove_siteantenna_marker_enu_siteantenna_marker_une_and_more.py +0 -0
  279. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0020_alter_manufacturer_options.py +0 -0
  280. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0021_alter_siteform_report_type.py +0 -0
  281. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0022_rename_antcal_antenna_radome_slm_antcal_antenna_20827a_idx_and_more.py +0 -0
  282. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0023_archivedsitelog_gml_version_and_more.py +0 -0
  283. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0024_alter_agency_name_alter_agency_shortname.py +0 -0
  284. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0025_alter_archivedsitelog_log_format_and_more.py +0 -0
  285. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0026_alter_archivedsitelog_log_format_and_more.py +0 -0
  286. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0027_importalert_file_contents_importalert_findings_and_more.py +0 -0
  287. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0028_antenna_replaced_manufacturer_url_radome_replaced_and_more.py +0 -0
  288. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0029_manufacturer_full_name.py +0 -0
  289. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0030_alter_antenna_state_alter_radome_state_and_more.py +0 -0
  290. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/0031_alter_antenna_features.py +0 -0
  291. {igs_slm-0.1.5b2/src/slm/settings/platform → igs_slm-0.2.0b0/src/slm/migrations}/__init__.py +0 -0
  292. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/add_index_order_index.py +0 -0
  293. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/load_satellitesystems.py +0 -0
  294. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/normalize_index.py +0 -0
  295. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/simplify_index.py +0 -0
  296. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/migrations/verify_index.py +0 -0
  297. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/__init__.py +0 -0
  298. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/about.py +0 -0
  299. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/alerts.py +0 -0
  300. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/data.py +0 -0
  301. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/equipment.py +0 -0
  302. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/fields.py +0 -0
  303. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/help.py +0 -0
  304. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/models/user.py +0 -0
  305. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/legacy/__init__.py +0 -0
  306. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/legacy/parser.py +0 -0
  307. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/__init__.py +0 -0
  308. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/binding.py +0 -0
  309. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/commonTypes.xsd +0 -0
  310. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/contact.xsd +0 -0
  311. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/dataStreams.xsd +0 -0
  312. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/document.xsd +0 -0
  313. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/equipment.xsd +0 -0
  314. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/fieldMeasurement.xsd +0 -0
  315. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/geodesyML.xsd +0 -0
  316. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/geodeticEquipment.xsd +0 -0
  317. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/geodeticMonument.xsd +0 -0
  318. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/lineage.xsd +0 -0
  319. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/localInterferences.xsd +0 -0
  320. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/measurement.xsd +0 -0
  321. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/monumentInfo.xsd +0 -0
  322. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/observationSystem.xsd +0 -0
  323. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/project.xsd +0 -0
  324. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/quality.xsd +0 -0
  325. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/referenceFrame.xsd +0 -0
  326. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.4/siteLog.xsd +0 -0
  327. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/commonTypes.xsd +0 -0
  328. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/contact.xsd +0 -0
  329. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/dataStreams.xsd +0 -0
  330. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/document.xsd +0 -0
  331. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/equipment.xsd +0 -0
  332. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/fieldMeasurement.xsd +0 -0
  333. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/geodesyML.xsd +0 -0
  334. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/geodeticEquipment.xsd +0 -0
  335. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/geodeticMonument.xsd +0 -0
  336. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/lineage.xsd +0 -0
  337. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/localInterferences.xsd +0 -0
  338. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/measurement.xsd +0 -0
  339. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/monumentInfo.xsd +0 -0
  340. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/observationSystem.xsd +0 -0
  341. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/project.xsd +0 -0
  342. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/quality.xsd +0 -0
  343. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/referenceFrame.xsd +0 -0
  344. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/geodesyml/0.5/siteLog.xsd +0 -0
  345. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/parser.py +0 -0
  346. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/parsing/xsd/resolver.py +0 -0
  347. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/receivers/__init__.py +0 -0
  348. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/receivers/alerts.py +0 -0
  349. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/receivers/cleanup.py +0 -0
  350. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/receivers/event_loggers.py +0 -0
  351. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/receivers/index.py +0 -0
  352. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/receivers/migration.py +0 -0
  353. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/__init__.py +0 -0
  354. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/assets.py +0 -0
  355. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/auth.py +0 -0
  356. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/ckeditor.py +0 -0
  357. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/debug.py +0 -0
  358. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/emails.py +0 -0
  359. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/internationalization.py +0 -0
  360. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/logging.py +0 -0
  361. {igs_slm-0.1.5b2/src/slm/templatetags → igs_slm-0.2.0b0/src/slm/settings/platform}/__init__.py +0 -0
  362. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/platform/darwin.py +0 -0
  363. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/rest.py +0 -0
  364. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/secrets.py +0 -0
  365. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/security.py +0 -0
  366. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/static_templates.py +0 -0
  367. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/templates.py +0 -0
  368. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/settings/uploads.py +0 -0
  369. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/singleton.py +0 -0
  370. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/css/bootstrap-tweaks.css +0 -0
  371. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/css/bootstrap.min.css +0 -0
  372. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/css/bootstrap.min.css.map +0 -0
  373. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/css/default.css +0 -0
  374. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/css/prettify.css +0 -0
  375. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/docs/css/base.css +0 -0
  376. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/docs/css/highlight.css +0 -0
  377. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/docs/css/jquery.json-view.min.css +0 -0
  378. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/docs/img/favicon.ico +0 -0
  379. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/docs/img/grid.png +0 -0
  380. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/docs/js/api.js +0 -0
  381. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/docs/js/highlight.pack.js +0 -0
  382. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/docs/js/jquery.json-view.min.js +0 -0
  383. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/img/grid.png +0 -0
  384. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/ajax-form.js +0 -0
  385. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/bootstrap.bundle.min.js +0 -0
  386. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/bootstrap.bundle.min.js.map +0 -0
  387. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/bootstrap.min.js.map +0 -0
  388. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/coreapi-0.1.1.js +0 -0
  389. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/csrf.js +0 -0
  390. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/default.js +0 -0
  391. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/jquery-3.5.1.min.js +0 -0
  392. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/rest_framework/js/prettify-min.js +0 -0
  393. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/css/admin.css +0 -0
  394. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/css/defines.css +0 -0
  395. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/css/forms.css +0 -0
  396. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/css/style.css +0 -0
  397. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/img/email-branding.png +0 -0
  398. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/img/favicon.ico +0 -0
  399. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/img/login-bg.jpg +0 -0
  400. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/img/slm-logo.svg +0 -0
  401. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/autocomplete.js +0 -0
  402. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/fileIcons.js +0 -0
  403. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/file_modal.js +0 -0
  404. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/formWidget.js +0 -0
  405. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/persistable.js +0 -0
  406. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static/slm/js/time24.js +0 -0
  407. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static_templates/slm/css/defines.css +0 -0
  408. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static_templates/slm/js/enums.js +0 -0
  409. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static_templates/slm/js/fileIcons.js +0 -0
  410. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/static_templates/slm/js/urls.js +0 -0
  411. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/base.html +0 -0
  412. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/base.html +0 -0
  413. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/base_message.txt +0 -0
  414. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/email_confirmation_message.html +0 -0
  415. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/email_confirmation_message.txt +0 -0
  416. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/email_confirmation_signup_message.html +0 -0
  417. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/email_confirmation_signup_message.txt +0 -0
  418. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/email_confirmation_signup_subject.txt +0 -0
  419. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/email_confirmation_subject.txt +0 -0
  420. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/password_reset_key_message.html +0 -0
  421. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/password_reset_key_message.txt +0 -0
  422. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/password_reset_key_subject.txt +0 -0
  423. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/unknown_account_message.html +0 -0
  424. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/unknown_account_message.txt +0 -0
  425. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/email/unknown_account_subject.txt +0 -0
  426. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/login.html +0 -0
  427. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/logout.html +0 -0
  428. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/password_change.html +0 -0
  429. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/password_reset.html +0 -0
  430. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/password_reset_done.html +0 -0
  431. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/password_reset_from_key.html +0 -0
  432. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/account/password_reset_from_key_done.html +0 -0
  433. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/admin/base.html +0 -0
  434. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/messages.html +0 -0
  435. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/README +0 -0
  436. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/admin/detail.html +0 -0
  437. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/admin/dict_value.html +0 -0
  438. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/admin/list.html +0 -0
  439. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/admin/list_value.html +0 -0
  440. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/admin/simple_list_value.html +0 -0
  441. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/admin.html +0 -0
  442. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/api.html +0 -0
  443. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/base.html +0 -0
  444. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/auth/basic.html +0 -0
  445. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/auth/session.html +0 -0
  446. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/auth/token.html +0 -0
  447. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/document.html +0 -0
  448. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/error.html +0 -0
  449. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/index.html +0 -0
  450. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/interact.html +0 -0
  451. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/langs/javascript-intro.html +0 -0
  452. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/langs/javascript.html +0 -0
  453. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/langs/python-intro.html +0 -0
  454. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/langs/python.html +0 -0
  455. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/langs/shell-intro.html +0 -0
  456. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/langs/shell.html +0 -0
  457. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/link.html +0 -0
  458. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/docs/sidebar.html +0 -0
  459. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/filters/base.html +0 -0
  460. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/filters/ordering.html +0 -0
  461. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/filters/search.html +0 -0
  462. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/checkbox.html +0 -0
  463. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/checkbox_multiple.html +0 -0
  464. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/dict_field.html +0 -0
  465. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/fieldset.html +0 -0
  466. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/form.html +0 -0
  467. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/input.html +0 -0
  468. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/list_field.html +0 -0
  469. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/list_fieldset.html +0 -0
  470. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/radio.html +0 -0
  471. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/select.html +0 -0
  472. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/select_multiple.html +0 -0
  473. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/horizontal/textarea.html +0 -0
  474. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/checkbox.html +0 -0
  475. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/checkbox_multiple.html +0 -0
  476. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/dict_field.html +0 -0
  477. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/fieldset.html +0 -0
  478. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/form.html +0 -0
  479. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/input.html +0 -0
  480. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/list_field.html +0 -0
  481. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/list_fieldset.html +0 -0
  482. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/radio.html +0 -0
  483. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/select.html +0 -0
  484. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/select_multiple.html +0 -0
  485. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/inline/textarea.html +0 -0
  486. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/login.html +0 -0
  487. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/login_base.html +0 -0
  488. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/pagination/numbers.html +0 -0
  489. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/pagination/previous_and_next.html +0 -0
  490. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/raw_data_form.html +0 -0
  491. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/schema.js +0 -0
  492. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/checkbox.html +0 -0
  493. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/checkbox_multiple.html +0 -0
  494. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/dict_field.html +0 -0
  495. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/fieldset.html +0 -0
  496. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/form.html +0 -0
  497. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/input.html +0 -0
  498. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/list_field.html +0 -0
  499. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/list_fieldset.html +0 -0
  500. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/radio.html +0 -0
  501. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/select.html +0 -0
  502. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/select_multiple.html +0 -0
  503. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/rest_framework/vertical/textarea.html +0 -0
  504. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/about.html +0 -0
  505. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/alerts/alert.html +0 -0
  506. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/alerts/geodesymlinvalid.html +0 -0
  507. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/alerts/importalert.html +0 -0
  508. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/alerts.html +0 -0
  509. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/auth_menu.html +0 -0
  510. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/base.html +0 -0
  511. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/emails/alert_issued.html +0 -0
  512. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/emails/alert_issued.txt +0 -0
  513. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/emails/base.html +0 -0
  514. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/emails/changes_rejected.txt +0 -0
  515. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/emails/review_requested.txt +0 -0
  516. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/forms/widgets/auto_complete.html +0 -0
  517. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/forms/widgets/auto_complete_multiple.html +0 -0
  518. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/forms/widgets/checkbox_multiple.html +0 -0
  519. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/forms/widgets/inline_multi.html +0 -0
  520. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/forms/widgets/splitdatetime.html +0 -0
  521. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/forms/widgets/time24.html +0 -0
  522. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/help.html +0 -0
  523. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/messages.html +0 -0
  524. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/new_site.html +0 -0
  525. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/profile.html +0 -0
  526. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/register.html +0 -0
  527. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/reports/file_log.html +0 -0
  528. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/reports/head_log.html +0 -0
  529. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/reports/head_report.html +0 -0
  530. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/reports/index_log.html +0 -0
  531. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/reports/index_report.html +0 -0
  532. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/alert.html +0 -0
  533. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/alerts.html +0 -0
  534. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/base.html +0 -0
  535. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/download.html +0 -0
  536. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/edit.html +0 -0
  537. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/form.html +0 -0
  538. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/log.html +0 -0
  539. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/review.html +0 -0
  540. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/upload.html +0 -0
  541. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/uploads/attachment.html +0 -0
  542. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/uploads/geodesyml.html +0 -0
  543. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/uploads/image.html +0 -0
  544. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/uploads/json.html +0 -0
  545. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/station/uploads/legacy.html +0 -0
  546. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/top_nav.html +0 -0
  547. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/user_activity.html +0 -0
  548. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/widgets/alert_scroll.html +0 -0
  549. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/widgets/filelist.html +0 -0
  550. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/widgets/legend.html +0 -0
  551. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/widgets/log_scroll.html +0 -0
  552. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templates/slm/widgets/stationlist.html +0 -0
  553. {igs_slm-0.1.5b2/tests → igs_slm-0.2.0b0/src/slm/templatetags}/__init__.py +0 -0
  554. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/templatetags/jinja2.py +0 -0
  555. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/urls.py +0 -0
  556. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/views.py +0 -0
  557. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/widgets.py +0 -0
  558. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/src/slm/wsgi.py +0 -0
  559. {igs_slm-0.1.5b2/tests/commands → igs_slm-0.2.0b0/tests}/__init__.py +0 -0
  560. {igs_slm-0.1.5b2/tests/defines → igs_slm-0.2.0b0/tests/commands}/__init__.py +0 -0
  561. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/commands/archive.tar.bz2 +0 -0
  562. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/commands/test_import_archive.py +0 -0
  563. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/defines/ISOCountry.py +0 -0
  564. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/defines/SiteLogStatus.py +0 -0
  565. {igs_slm-0.1.5b2/tests/parsing → igs_slm-0.2.0b0/tests/defines}/__init__.py +0 -0
  566. {igs_slm-0.1.5b2/tests/uploads → igs_slm-0.2.0b0/tests/parsing}/__init__.py +0 -0
  567. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/parsing/files/0.4/20na_20161027.xml +0 -0
  568. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/parsing/files/0.5/20na_20161027.xml +0 -0
  569. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/parsing/files/AAA200USA_20220909.log +0 -0
  570. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/parsing/legacy.py +0 -0
  571. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/parsing/xsd.py +0 -0
  572. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/settings.py +0 -0
  573. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/test_settings.py +0 -0
  574. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/uploads/files/jplm.jpg +0 -0
  575. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/uploads/tests.py +0 -0
  576. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/tests/wsgi.py +0 -0
  577. {igs_slm-0.1.5b2 → igs_slm-0.2.0b0}/todo.txt +0 -0
@@ -44,14 +44,14 @@ jobs:
44
44
  with:
45
45
  detached: true
46
46
  timeout-minutes: 60
47
- - uses: actions/checkout@v4
47
+ - uses: actions/checkout@v5
48
48
  - name: Set up Python ${{ matrix.python-version }}
49
- uses: actions/setup-python@v5
49
+ uses: actions/setup-python@v6
50
50
  id: sp
51
51
  with:
52
52
  python-version: ${{ matrix.python-version }}
53
53
  - name: Install uv
54
- uses: astral-sh/setup-uv@v6
54
+ uses: astral-sh/setup-uv@v7
55
55
  with:
56
56
  enable-cache: true
57
57
  - name: Install Just
@@ -39,13 +39,13 @@ jobs:
39
39
  PACKAGE_NAME: ${{ steps.set-package.outputs.package_name }}
40
40
  RELEASE_VERSION: ${{ steps.set-package.outputs.release_version }}
41
41
  steps:
42
- - uses: actions/checkout@v4
42
+ - uses: actions/checkout@v5
43
43
  - name: Set up Python
44
- uses: actions/setup-python@v5
44
+ uses: actions/setup-python@v6
45
45
  with:
46
46
  python-version: ">=3.11" # for tomlib
47
47
  - name: Install uv
48
- uses: astral-sh/setup-uv@v6
48
+ uses: astral-sh/setup-uv@v7
49
49
  with:
50
50
  enable-cache: true
51
51
  - name: Setup Just
@@ -95,12 +95,12 @@ jobs:
95
95
  id-token: write # IMPORTANT: mandatory for trusted publishing
96
96
  steps:
97
97
  - name: Download all the dists
98
- uses: actions/download-artifact@v4
98
+ uses: actions/download-artifact@v5
99
99
  with:
100
100
  name: python-package-distributions
101
101
  path: dist/
102
102
  - name: Publish distribution 📦 to PyPI
103
- uses: pypa/gh-action-pypi-publish@release/v1.12
103
+ uses: pypa/gh-action-pypi-publish@release/v1.13
104
104
 
105
105
  github-release:
106
106
  name: Publish GitHub Release
@@ -115,12 +115,12 @@ jobs:
115
115
 
116
116
  steps:
117
117
  - name: Download all the dists
118
- uses: actions/download-artifact@v4
118
+ uses: actions/download-artifact@v5
119
119
  with:
120
120
  name: python-package-distributions
121
121
  path: dist/
122
122
  - name: Sign the dists with Sigstore
123
- uses: sigstore/gh-action-sigstore-python@v3.0.1
123
+ uses: sigstore/gh-action-sigstore-python@v3.1.0
124
124
  with:
125
125
  inputs: >-
126
126
  ./dist/*.tar.gz
@@ -160,12 +160,12 @@ jobs:
160
160
 
161
161
  steps:
162
162
  - name: Download all the dists
163
- uses: actions/download-artifact@v4
163
+ uses: actions/download-artifact@v5
164
164
  with:
165
165
  name: python-package-distributions
166
166
  path: dist/
167
167
  - name: Publish distribution 📦 to TestPyPI
168
- uses: pypa/gh-action-pypi-publish@release/v1.12
168
+ uses: pypa/gh-action-pypi-publish@release/v1.13
169
169
  with:
170
170
  repository-url: https://test.pypi.org/legacy/
171
171
  skip-existing: true
@@ -35,14 +35,14 @@ jobs:
35
35
  with:
36
36
  detached: true
37
37
  timeout-minutes: 60
38
- - uses: actions/checkout@v4
38
+ - uses: actions/checkout@v5
39
39
  - name: Set up Python ${{ matrix.python-version }}
40
- uses: actions/setup-python@v5
40
+ uses: actions/setup-python@v6
41
41
  id: sp
42
42
  with:
43
43
  python-version: ${{ matrix.python-version }}
44
44
  - name: Install uv
45
- uses: astral-sh/setup-uv@v6
45
+ uses: astral-sh/setup-uv@v7
46
46
  with:
47
47
  enable-cache: true
48
48
  - name: Install Just
@@ -20,7 +20,7 @@ jobs:
20
20
 
21
21
  steps:
22
22
  - name: "Checkout code"
23
- uses: actions/checkout@v4
23
+ uses: actions/checkout@v5
24
24
  with:
25
25
  persist-credentials: false
26
26
 
@@ -65,14 +65,14 @@ jobs:
65
65
  with:
66
66
  detached: true
67
67
  timeout-minutes: 60
68
- - uses: actions/checkout@v4
68
+ - uses: actions/checkout@v5
69
69
  - name: Set up Python ${{ matrix.python-version }}
70
- uses: actions/setup-python@v5
70
+ uses: actions/setup-python@v6
71
71
  id: sp
72
72
  with:
73
73
  python-version: ${{ matrix.python-version }}
74
74
  - name: Install uv
75
- uses: astral-sh/setup-uv@v6
75
+ uses: astral-sh/setup-uv@v7
76
76
  with:
77
77
  enable-cache: true
78
78
  - name: Install Just
@@ -102,13 +102,13 @@ jobs:
102
102
  permissions:
103
103
  contents: read
104
104
  steps:
105
- - uses: actions/checkout@v4
106
- - uses: actions/setup-python@v5
105
+ - uses: actions/checkout@v5
106
+ - uses: actions/setup-python@v6
107
107
  id: sp
108
108
  with:
109
109
  python-version: '3.12'
110
110
  - name: Install uv
111
- uses: astral-sh/setup-uv@v6
111
+ uses: astral-sh/setup-uv@v7
112
112
  with:
113
113
  enable-cache: true
114
114
  - name: Setup Just
@@ -119,7 +119,7 @@ jobs:
119
119
  just install
120
120
 
121
121
  - name: Get coverage files
122
- uses: actions/download-artifact@v4
122
+ uses: actions/download-artifact@v5
123
123
  with:
124
124
  pattern: "*.coverage"
125
125
  merge-multiple: true
@@ -23,7 +23,7 @@ jobs:
23
23
 
24
24
  steps:
25
25
  - name: Checkout repository
26
- uses: actions/checkout@v4
26
+ uses: actions/checkout@v5
27
27
  with:
28
28
  persist-credentials: false
29
29
 
@@ -32,7 +32,7 @@ jobs:
32
32
 
33
33
  - name: Install Zizmor
34
34
  run: |
35
- cargo install zizmor
35
+ cargo install --locked zizmor
36
36
 
37
37
  - name: Run Zizmor analysis
38
38
  run: |
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: igs-slm
3
- Version: 0.1.5b2
3
+ Version: 0.2.0b0
4
4
  Summary: IGS Site Log Manager
5
5
  Project-URL: Homepage, https://igs-slm.readthedocs.io
6
6
  Project-URL: Documentation, https://igs-slm.readthedocs.io
@@ -62,7 +62,7 @@ Requires-Dist: polyline<3.0.0,>=2.0.0
62
62
  Requires-Dist: psycopg>=3.1
63
63
  Requires-Dist: python-dateutil<3.0.0,>=2.8.2
64
64
  Requires-Dist: requests<3.0.0,>=2.32.4
65
- Requires-Dist: rich<14.0.0,>=13.7.1
65
+ Requires-Dist: rich<15.0.0,>=13.7.1
66
66
  Requires-Dist: tqdm<5.0.0,>=4.64.1
67
67
  Provides-Extra: debug
68
68
  Requires-Dist: django-debug-toolbar<5.0.0,>=4.1.0; extra == 'debug'
@@ -6,6 +6,30 @@
6
6
  Change Log
7
7
  ==========
8
8
 
9
+ v0.2.0b0 (2025-10-23)
10
+ =====================
11
+
12
+ * Implemented `Should be able to pass string arguments to GeneratedFile views. <https://github.com/International-GNSS-Service/SLM/issues/184>`_
13
+ * Fixed `ArchivedLog view can erroneously include logs from last index date if multiple indexes exist for that date. <https://github.com/International-GNSS-Service/SLM/issues/183>`_
14
+ * Fixed `Need to be able to pass url kwargs to file view Entries. <https://github.com/International-GNSS-Service/SLM/issues/182>`_
15
+ * Fixed `LogEntry admin search field errors out <https://github.com/International-GNSS-Service/SLM/issues/181>`_
16
+ * Fixed `Add a validator to check XYZ/LLH consistency. <https://github.com/International-GNSS-Service/SLM/issues/180>`_
17
+ * Fixed `Generated SINEX with latitudes at 0 degrees S lose the sign <https://github.com/International-GNSS-Service/SLM/issues/176>`_
18
+ * Fixed `SLM site log serialization cuts lines at 79 characters - this should be 80. <https://github.com/International-GNSS-Service/SLM/issues/166>`_
19
+ * Fixed `Allow "URL for More Information" to split a url across multiple lines. <https://github.com/International-GNSS-Service/SLM/issues/165>`_
20
+ * Implemented `Antenna Alignment from True north should be desired not required. <https://github.com/International-GNSS-Service/SLM/issues/164>`_
21
+ * Fixed `Some malformed query parameters result in unhandled exceptions producing 500s instead of 400s <https://github.com/International-GNSS-Service/SLM/issues/162>`_
22
+ * Implemented `Provide app that contains the igs file list views. <https://github.com/International-GNSS-Service/SLM/issues/108>`_
23
+
24
+
25
+ v0.1.5b3 (2025-07-25)
26
+ =====================
27
+
28
+ * Fixed `WSGI_APPLICATION default is wrong <https://github.com/International-GNSS-Service/SLM/issues/154>`_
29
+ * Fixed `Provide SLM IGS station naming validation toggle. <https://github.com/International-GNSS-Service/SLM/issues/153>`_
30
+ * Fixed `Sometimes the javascript diffing/site log error renderer inserts extra newlines. <https://github.com/International-GNSS-Service/SLM/issues/151>`_
31
+
32
+
9
33
  v0.1.5b2 (2025-07-15)
10
34
  =====================
11
35
 
@@ -13,6 +13,7 @@ from sphinx.ext.autodoc import between
13
13
  import warnings
14
14
  import os
15
15
  import django
16
+ from django.utils.version import get_docs_version
16
17
  import re
17
18
 
18
19
  sys.path.append(str(Path(__file__).parent.parent.parent / "src"))
@@ -20,6 +21,7 @@ sys.path.append(str(Path(__file__).parent.parent.parent))
20
21
  os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'tests.settings')
21
22
  django.setup()
22
23
 
24
+
23
25
  # -- Path setup --------------------------------------------------------------
24
26
 
25
27
  # If extensions (or modules to document with autodoc) are in another directory,
@@ -106,13 +108,22 @@ django_show_db_tables = True # Boolean, default: False
106
108
  # Add abstract database tables names (only takes effect if django_show_db_tables is True)
107
109
  django_show_db_tables_abstract = True # Boolean, default: False
108
110
 
111
+ autodoc_default_options = {
112
+ 'show-inheritance': True,
113
+ # Add other autodoc options here if desired, e.g.:
114
+ # 'members': True,
115
+ # 'inherited-members': True,
116
+ }
117
+ # In your Sphinx conf.py
118
+ autodoc_typehints = "description"
119
+ autodoc_typehints_format = "short"
120
+ autodoc_class_signature = "separated"
109
121
  autodoc_member_order = 'bysource'
110
122
 
111
- # TODO - ALWAYS POINT THE DJANGO DOCS AT OUR CURRENT DJANGO VERSION, NOT STABLE
112
123
  intersphinx_mapping = {
113
124
  "django": (
114
- "https://docs.djangoproject.com/en/4.2",
115
- "https://docs.djangoproject.com/en/4.2/_objects/",
125
+ f"https://docs.djangoproject.com/en/{get_docs_version()}/",
126
+ f"https://docs.djangoproject.com/en/{get_docs_version()}/_objects/",
116
127
  ),
117
128
  "click": ("https://click.palletsprojects.com/en/stable", None),
118
129
  "rich": ("https://rich.readthedocs.io/en/stable", None),
@@ -139,6 +150,7 @@ html_css_files = [
139
150
  'https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.11.3/font/bootstrap-icons.min.css',
140
151
  ]
141
152
 
153
+
142
154
  def color_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
143
155
  """Role that creates a color box with the hex color."""
144
156
  from docutils import nodes
@@ -156,6 +168,7 @@ def color_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
156
168
  node = nodes.raw('', html, format='html')
157
169
  return [node], []
158
170
 
171
+
159
172
  def css_icon(name, rawtext, text, lineno, inliner, options={}, content=[]):
160
173
  """Role that creates a color box with the hex color."""
161
174
  from docutils import nodes
@@ -168,6 +181,7 @@ def css_icon(name, rawtext, text, lineno, inliner, options={}, content=[]):
168
181
  node = nodes.raw('', html, format='html')
169
182
  return [node], []
170
183
 
184
+
171
185
  def setup(app):
172
186
  # Register a sphinx.ext.autodoc.between listener to ignore everything
173
187
  # between lines that contain the word IGNORE
@@ -221,6 +221,9 @@ The following settings may be overridden by environment variables:
221
221
  * - :setting:`SLM_DEBUG_TOOLBAR`
222
222
  - :ref:`env_types_bool`
223
223
  - ``on|off``
224
+ * - :setting:`SLM_IGS_STATION_NAMING`
225
+ - :ref:`env_types_bool`
226
+ - ``on|off``
224
227
  * - :setting:`SLM_SITE_NAME`
225
228
  - :ref:`env_types_bool`
226
229
  - ``slm.yourdomain.org``
@@ -236,6 +239,9 @@ The following settings may be overridden by environment variables:
236
239
  * - :setting:`SLM_IGS_VALIDATION`
237
240
  - :ref:`env_types_bool`
238
241
  - ``on|off``
242
+ * - :setting:`SLM_COORDINATE_MODE`
243
+ - :class:`str`
244
+ - ``INDEPENDENT|ECEF|LLH``
239
245
  * - :setting:`STATIC_ROOT`
240
246
  - :ref:`env_types_path`
241
247
  - ``path/to/static/from/basedir``
@@ -420,6 +426,45 @@ Default: ``True``
420
426
  Use the default IGS log :ref:`validation rules <validation>`. If ``False`` no validation
421
427
  will be performed on site log values other than basic database column type checks.
422
428
 
429
+ ``SLM_COORDINATE_MODE`` ⚙️
430
+ --------------------------
431
+ .. setting:: SLM_COORDINATE_MODE
432
+
433
+ Default: ``INDEPENDENT``
434
+
435
+ Site logs contain position fields in both lat/lon/height and xyz (ECEF). By default the SLM will
436
+ allow users to specify these values indepenendently. Optionally it can be configured to compute
437
+ one from the other using the ITRF2020 ellipsoid parameters:
438
+
439
+ .. tabs::
440
+
441
+ .. tab:: Visual
442
+
443
+ .. list-table::
444
+ :header-rows: 1
445
+ :widths: 10 70
446
+
447
+ * - :class:`~slm.defines.CoordinateMode`
448
+ - Behavior
449
+ * - :attr:`~slm.defines.CoordinateMode.INDEPENDENT`
450
+ - User specifies station coordinates in ECEF and LLH seperately.
451
+ * - :attr:`~slm.defines.CoordinateMode.ECEF`
452
+ - User specifies station coordinates in ECEF, LLH coordinates are calculated by the system.
453
+ * - :attr:`~slm.defines.CoordinateMode.LLH`
454
+ - User specifies station coordinates in LLH, ECEF coordinates are calculated by the system.
455
+
456
+ .. tab:: Code
457
+
458
+ .. code-block:: python
459
+
460
+ from slm.defines import CoordinateMode
461
+
462
+ SLM_COORDINATE_MODE = CoordinateMode.ECEF
463
+
464
+
465
+ If using IGS validation rules there is also a validator that will throw warnings if these
466
+ coordinates differ by more than 1 meter in three dimensions.
467
+
423
468
  ``SLM_SECURITY_DEFAULTS`` ⚙️
424
469
  ----------------------------
425
470
  .. setting:: SLM_SECURITY_DEFAULTS
@@ -445,6 +490,26 @@ Enable or disable the MapBox_ admin map in the SLM. Must be set in the environme
445
490
  or prior to the inclusion of ``slm.settings.root``. You may also enable or disable
446
491
  the admin map by adding or removing ``slm.map`` from :setting:`INSTALLED_APPS`.
447
492
 
493
+ ``SLM_IGS_STATION_NAMING`` ⚙️
494
+ ------------------------------
495
+ .. setting:: SLM_IGS_STATION_NAMING
496
+
497
+ Default: ``False``
498
+
499
+ Enable or disable the use of IGS naming rules for station names. If enabled, the defaults for
500
+ :setting:`SLM_STATION_NAME_REGEX` and :setting:`SLM_STATION_NAME_HELP` will be set to:
501
+
502
+ .. code-block:: python
503
+
504
+ SLM_STATION_NAME_REGEX = r"[\w]{4}[\d]{2}[\w]{3}"
505
+ SLM_STATION_NAME_HELP = _(
506
+ "This is the 9 Character station name (XXXXMRCCC) used in RINEX 3 "
507
+ "filenames Format: (XXXX - existing four character IGS station "
508
+ "name, M - Monument or marker number (0-9), R - Receiver number "
509
+ "(0-9), CCC - Three digit ISO 3166-1 country code)"
510
+ )
511
+
512
+
448
513
  ``SLM_STATION_NAME_REGEX``
449
514
  --------------------------
450
515
  .. setting:: SLM_STATION_NAME_REGEX
@@ -158,7 +158,7 @@ itself yet though.
158
158
 
159
159
  .. code:: bash
160
160
 
161
- ?> uvx --from igs-slm --prerelease slm-startproject --help
161
+ ?> uvx --from igs-slm --prerelease allow slm-startproject --help
162
162
 
163
163
  .. tab:: pip
164
164
 
@@ -288,7 +288,7 @@ the first question you can just hit enter to accept the defaults:
288
288
  (.venv) ?> touch .env
289
289
  (.venv) ?> pip install "igs-slm[debug]"
290
290
 
291
- Add a minimal configuraton to the .env file. It may look something like this. You may also
291
+ Add a minimal configuration to the .env file. It may look something like this. You may also
292
292
  refer to the :ref:`configuration` page for all of the available settings. The most important
293
293
  settings are :setting:`SLM_ENV`, :setting:`BASE_DIR`:
294
294
 
@@ -395,10 +395,10 @@ Deploy
395
395
  We offer a notional deployment strategy here. There are myriad operational concerns that will vary
396
396
  based on your organization's so the following examples are merely suggestions.
397
397
 
398
- The scaffold we generated should be checked into version control. You can manage it just like you
399
- would a normal python package. It can be built and installed using uv_ or pip_ or any other python
400
- package management tooling that supports wheels. When you install it it will pull in all of its
401
- required python dependencies.
398
+ If you are customizing the SLM, the scaffold we generated should be checked into version control.
399
+ You can manage it just like you would a normal python package. It can be built and installed using
400
+ uv_ or pip_ or any other python package management tooling that supports wheels. When you install it
401
+ it will pull in all of its required python dependencies.
402
402
 
403
403
  First you need to make sure your host server has all the dependencies installed, PostGIS_, etc.
404
404
  Then you should use ``psql`` to create the database. It is usually sufficient to configure PostGIS_
@@ -450,31 +450,69 @@ environment somewhere you think is appropriate. For example:
450
450
  Build and Install
451
451
  -----------------
452
452
 
453
- .. code-block:: bash
453
+ .. tabs::
454
+
455
+ .. tab:: Basic Install
456
+
457
+ .. code-block:: bash
454
458
 
455
- # in your git repository holding your slm-startproject
456
- ?> uv build
457
- # get the wheel to your server somehow
458
- ?> scp dist/network-x.x.x-py3-none-any.whl yourserver:./
459
- ?> ssh yourserver
460
- ?> source /opt/slm_venv/bin/activate
461
- # install with gunicorn if using nginx or mod_wsgi if using Apache
462
- (slm_venv) ?> pip install network-x.x.x-py3-none-any.whl
463
- # if using nginx:
464
- (slm_venv) ?> pip install gunicorn
465
- # if using apache:
466
- (slm_venv) ?> pip install mod_wsgi
459
+ ?> source /opt/slm_venv/bin/activate
460
+ # install with gunicorn if using nginx or mod_wsgi if using Apache
461
+ (slm_venv) ?> pip install igs-slm
462
+ # if using nginx:
463
+ (slm_venv) ?> pip install gunicorn
464
+ # if using apache:
465
+ (slm_venv) ?> pip install mod_wsgi
466
+
467
+ .. tab:: Custom Install
468
+
469
+ .. code-block:: bash
470
+
471
+ # in your git repository holding your slm-startproject
472
+ ?> uv build
473
+ # get the wheel to your server somehow
474
+ ?> scp dist/network-x.x.x-py3-none-any.whl yourserver:./
475
+ ?> ssh yourserver
476
+ ?> source /opt/slm_venv/bin/activate
477
+ # install with gunicorn if using nginx or mod_wsgi if using Apache
478
+ (slm_venv) ?> pip install network-x.x.x-py3-none-any.whl
479
+ # if using nginx:
480
+ (slm_venv) ?> pip install gunicorn
481
+ # if using apache:
482
+ (slm_venv) ?> pip install mod_wsgi
467
483
 
468
484
  Filesystem
469
485
  ----------
470
486
 
471
487
  We recommend setting up your site's working directory somewhere under /var/www:
472
488
 
473
- .. code-block:: bash
489
+ .. tabs::
490
+
491
+ .. tab:: Basic Install
492
+
493
+ .. code-block:: bash
494
+
495
+ ?> mkdir -p /var/www/network.example.com/production
496
+ ?> cd /var/www/network.example.com/production
497
+ ?> mkdir static media logs secrets
498
+
499
+ You will need to create an environment file to tell the SLM about itself:
500
+
501
+ .. code-block:: bash
502
+ :caption: /var/www/network.example.com/production/.env
503
+
504
+ DEBUG=False
505
+ BASE_DIR=/var/www/network.example.com/production
506
+ SLM_ORG_NAME="Example"
507
+ SLM_SITE_NAME="network.example.com"
508
+
509
+ .. tab:: Custom Install
474
510
 
475
- ?> mkdir -p /var/www/network.example.com/production
476
- ?> cd /var/www/network.example.com/production
477
- ?> mkdir static media logs secrets
511
+ .. code-block:: bash
512
+
513
+ ?> mkdir -p /var/www/network.example.com/production
514
+ ?> cd /var/www/network.example.com/production
515
+ ?> mkdir static media logs secrets
478
516
 
479
517
  web servers
480
518
  -----------
@@ -549,6 +587,7 @@ web servers
549
587
  User=www-data
550
588
  Group=www-data
551
589
  WorkingDirectory=/var/www/network.example.com/production
590
+ Environment="SLM_ENV=/var/www/network.example.com/production/.env"
552
591
  ExecStart=/opt/slm_venv/bin/gunicorn --workers 4 --bind unix:/var/www/network.example.com/production/slm.sock sites.network.production.wsgi:application
553
592
 
554
593
  [Install]
@@ -584,6 +623,13 @@ web servers
584
623
  # WSGI configuration
585
624
  WSGIDaemonProcess network python-home=/opt/slm_venv python-path=/var/www/network.example.com/production
586
625
  WSGIProcessGroup network
626
+
627
+ WSGIEnvVar SLM_ENV /var/www/network.example.com/production/.env
628
+
629
+ # TODO - For Basic Install:
630
+ WSGIScriptAlias / /opt/slm_venv/lib/python3.x/site-packages/slm/wsgi.py
631
+
632
+ # TODO - For Custom Install:
587
633
  WSGIScriptAlias / /opt/slm_venv/lib/python3.x/site-packages/sites/network/production/wsgi.py
588
634
 
589
635
  # Static & media files
@@ -610,9 +656,32 @@ routine deploy
610
656
  Anytime you install a new version of your SLM you need to run :django-admin:`routine deploy`. This
611
657
  will migrate the database and bundle all static files:
612
658
 
613
- .. code-block:: bash
614
659
 
615
- (slm_venv) ?> network routine deploy
660
+ .. tabs::
661
+
662
+ .. tab:: Basic Install
663
+
664
+ .. code-block:: bash
665
+
666
+ (slm_venv) ?> slm routine deploy
667
+
668
+ If it is the first installation you can run the :django-admin:`routine install` routine instead:
669
+
670
+ .. code-block:: bash
671
+
672
+ (slm_venv) ?> slm routine install
673
+
674
+ .. tab:: Custom Install
675
+
676
+ .. code-block:: bash
677
+
678
+ (slm_venv) ?> network routine deploy
679
+
680
+ If it is the first installation you can run the :django-admin:`routine install` routine instead:
681
+
682
+ .. code-block:: bash
683
+
684
+ (slm_venv) ?> network routine install
616
685
 
617
686
 
618
687
  .. tip::
@@ -0,0 +1,6 @@
1
+ .. include:: ../../refs.rst
2
+
3
+ .. autoclass:: slm.defines.CoordinateMode
4
+ :members:
5
+ :undoc-members:
6
+ :show-inheritance:
@@ -15,6 +15,7 @@ slm.defines
15
15
  aspiration
16
16
  cardinaldirection
17
17
  collocationstatus
18
+ coordinatemode
18
19
  equipmentstate
19
20
  flagseverity
20
21
  fracturespacing
@@ -152,7 +152,7 @@ docs: build-docs-html open-docs
152
152
 
153
153
  # serve the documentation, with auto-reload
154
154
  docs-live: install-docs
155
- @just run sphinx-autobuild doc/source doc/build --open-browser --watch src --port 8000 --delay 1
155
+ @just run sphinx-autobuild doc/source doc/build --open-browser --watch src --port 8001 --delay 1
156
156
 
157
157
  _link_check:
158
158
  -uv run sphinx-build -b linkcheck -Q -D linkcheck_timeout=10 ./doc/source ./doc/build
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "igs-slm"
3
- version = "0.1.5b2"
3
+ version = "0.2.0b0"
4
4
  description = "IGS Site Log Manager"
5
5
  requires-python = ">=3.8,<4.0"
6
6
  authors = [
@@ -76,7 +76,7 @@ dependencies = [
76
76
  "django-typer>=2.1.2,<3.0.0",
77
77
  "click<8.2", # TODO remove this when django-typer is upgraded
78
78
  "django-routines>=1.1.3,<2.0.0",
79
- "rich>=13.7.1,<14.0.0",
79
+ "rich>=13.7.1,<15.0.0",
80
80
  "requests>=2.32.4,<3.0.0",
81
81
  "packaging>=24.2",
82
82
  "django-compressor>=4.5.1",
@@ -140,6 +140,8 @@ dev = [
140
140
  "ipdb>=0.13.13,<1.0.0",
141
141
  "pre-commit>=3.5.0",
142
142
  "tomlkit>=0.13.2",
143
+ "djlint>=1.35.2",
144
+ "whitenoise>=6.7.0",
143
145
  ]
144
146
  docs = [
145
147
  "Sphinx>=7.2.0,<8.0.0; python_version > '3.8'",