devpi-admin 1.4.4__tar.gz → 1.4.6__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 (38) hide show
  1. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/PKG-INFO +1 -1
  2. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/_version.py +3 -3
  3. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/static/css/style.css +7 -0
  4. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/static/js/app.js +17 -5
  5. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin.egg-info/PKG-INFO +1 -1
  6. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/.github/workflows/publish.yml +0 -0
  7. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/.github/workflows/tests.yml +0 -0
  8. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/.gitignore +0 -0
  9. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/LICENSE +0 -0
  10. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/README.md +0 -0
  11. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/__init__.py +0 -0
  12. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/customizer.py +0 -0
  13. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/main.py +0 -0
  14. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/static/favicon.svg +0 -0
  15. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/static/index.html +0 -0
  16. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/static/js/api.js +0 -0
  17. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/static/js/marked.min.js +0 -0
  18. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/static/js/theme.js +0 -0
  19. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin/tokens.py +0 -0
  20. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin.egg-info/SOURCES.txt +0 -0
  21. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin.egg-info/dependency_links.txt +0 -0
  22. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin.egg-info/entry_points.txt +0 -0
  23. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin.egg-info/requires.txt +0 -0
  24. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/devpi_admin.egg-info/top_level.txt +0 -0
  25. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/pyproject.toml +0 -0
  26. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/setup.cfg +0 -0
  27. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/__init__.py +0 -0
  28. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_acl_read.py +0 -0
  29. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_devpi_tokens_ui.py +0 -0
  30. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_filter.py +0 -0
  31. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_hooks.py +0 -0
  32. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_json_safe.py +0 -0
  33. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_package.py +0 -0
  34. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_pipconf.py +0 -0
  35. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_tokens.py +0 -0
  36. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_tween.py +0 -0
  37. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_view_helpers.py +0 -0
  38. {devpi_admin-1.4.4 → devpi_admin-1.4.6}/tests/test_wants_html.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devpi-admin
3
- Version: 1.4.4
3
+ Version: 1.4.6
4
4
  Summary: Modern web UI plugin for devpi-server — drop-in replacement for devpi-web
5
5
  Author-email: Pavel Revak <pavelrevak@gmail.com>
6
6
  License: MIT
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '1.4.4'
22
- __version_tuple__ = version_tuple = (1, 4, 4)
21
+ __version__ = version = '1.4.6'
22
+ __version_tuple__ = version_tuple = (1, 4, 6)
23
23
 
24
- __commit_id__ = commit_id = 'g312e747ee'
24
+ __commit_id__ = commit_id = 'gcd18d639e'
@@ -1313,6 +1313,13 @@ body {
1313
1313
  font-family: inherit;
1314
1314
  }
1315
1315
 
1316
+ /* Visually mask admin-set passwords for other users. The input stays
1317
+ type="text" on purpose — type="password" would make the browser
1318
+ offer to save someone else's credentials as the admin's own. */
1319
+ .masked-input {
1320
+ -webkit-text-security: disc;
1321
+ }
1322
+
1316
1323
  .modal-body select:not(.tag-picker-add) {
1317
1324
  width: 100%;
1318
1325
  height: 36px;
@@ -2661,10 +2661,17 @@
2661
2661
  pwInput = el('input', {type: 'password', id: 'form-password'});
2662
2662
  pwInput.setAttribute('autocomplete', 'new-password');
2663
2663
  } else {
2664
- // Other user: plain text — Safari won't offer to save text fields
2665
- pwInput = el('input', {type: 'text', id: 'form-password'});
2664
+ // Other user: plain text — Safari won't offer to save
2665
+ // text fields. Visual masking via CSS text-security
2666
+ // keeps the password manager out of the loop.
2667
+ pwInput = el('input', {
2668
+ type: 'text',
2669
+ id: 'form-password',
2670
+ className: 'masked-input',
2671
+ });
2666
2672
  pwInput.setAttribute('autocomplete', 'off');
2667
2673
  pwInput.setAttribute('spellcheck', 'false');
2674
+ pwInput.setAttribute('autocapitalize', 'off');
2668
2675
  }
2669
2676
  body.appendChild(formGroup(
2670
2677
  isEdit ? 'New Password (leave empty to keep)' : 'Password',
@@ -3958,9 +3965,14 @@
3958
3965
  }
3959
3966
 
3960
3967
  function formatLogWhen(when) {
3961
- // keyfs link log 'when' is a UTC tuple [Y, M, D, h, m, s]
3962
- return when[0] + '-' + pad(when[1]) + '-' + pad(when[2]) + ' ' +
3963
- pad(when[3]) + ':' + pad(when[4]);
3968
+ // keyfs link log 'when' is a UTC tuple [Y, M, D, h, m, s]
3969
+ // render it in the browser's local time zone.
3970
+ var d = new Date(Date.UTC(
3971
+ when[0], when[1] - 1, when[2],
3972
+ when[3], when[4], when[5] || 0));
3973
+ return d.getFullYear() + '-' + pad(d.getMonth() + 1) + '-' +
3974
+ pad(d.getDate()) + ' ' + pad(d.getHours()) + ':' +
3975
+ pad(d.getMinutes());
3964
3976
  }
3965
3977
 
3966
3978
  function cmpLogWhen(a, b) {
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devpi-admin
3
- Version: 1.4.4
3
+ Version: 1.4.6
4
4
  Summary: Modern web UI plugin for devpi-server — drop-in replacement for devpi-web
5
5
  Author-email: Pavel Revak <pavelrevak@gmail.com>
6
6
  License: MIT
File without changes
File without changes
File without changes
File without changes
File without changes