cherrypy-foundation 1.0.0a18__tar.gz → 1.0.0a20__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 (161) hide show
  1. {cherrypy_foundation-1.0.0a18/src/cherrypy_foundation.egg-info → cherrypy_foundation-1.0.0a20}/PKG-INFO +1 -1
  2. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/form.md +1 -1
  3. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/flash.py +15 -13
  4. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/test_form.py +1 -1
  5. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/ratelimit.py +1 -1
  6. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20/src/cherrypy_foundation.egg-info}/PKG-INFO +1 -1
  7. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/.gitignore +0 -0
  8. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/.gitlab-ci.yml +0 -0
  9. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/LICENSE.md +0 -0
  10. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/README.md +0 -0
  11. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/debian/TODO +0 -0
  12. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/debian/changelog +0 -0
  13. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/debian/control +0 -0
  14. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/debian/copyright +0 -0
  15. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/debian/python3-cherrypy-foundation.links +0 -0
  16. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/debian/rules +0 -0
  17. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/debian/source/format +0 -0
  18. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/debian/upstream/metadata +0 -0
  19. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/_templates/version.html +0 -0
  20. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/conf.py +0 -0
  21. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/error_page.md +0 -0
  22. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/flash.md +0 -0
  23. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/index.rst +0 -0
  24. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/introduction.md +0 -0
  25. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/modules.rst +0 -0
  26. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/doc/url.md +0 -0
  27. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/pyproject.toml +0 -0
  28. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/setup.cfg +0 -0
  29. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/sonar-project.properties +0 -0
  30. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/__init__.py +0 -0
  31. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/ColorModes.jinja +0 -0
  32. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Datatable.css +0 -0
  33. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Datatable.jinja +0 -0
  34. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Datatable.js +0 -0
  35. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Field.css +0 -0
  36. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Field.jinja +0 -0
  37. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Field.js +0 -0
  38. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Fields.jinja +0 -0
  39. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Flash.jinja +0 -0
  40. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Icon.jinja +0 -0
  41. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/LocaleSelection.jinja +0 -0
  42. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/LocaleSelection.js +0 -0
  43. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/SideBySideMultiSelect.css +0 -0
  44. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/SideBySideMultiSelect.jinja +0 -0
  45. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/SideBySideMultiSelect.js +0 -0
  46. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Typeahead.css +0 -0
  47. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Typeahead.jinja +0 -0
  48. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/Typeahead.js +0 -0
  49. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/__init__.py +0 -0
  50. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/tests/__init__.py +0 -0
  51. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/tests/test_static.py +0 -0
  52. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap-icons/bootstrap-icons.css +0 -0
  53. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap-icons/bootstrap-icons.min.css +0 -0
  54. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap-icons/fonts/bootstrap-icons.woff +0 -0
  55. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap-icons/fonts/bootstrap-icons.woff2 +0 -0
  56. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/css/bootstrap.css +0 -0
  57. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/css/bootstrap.css.map +0 -0
  58. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/css/bootstrap.min.css +0 -0
  59. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/css/bootstrap.min.css.map +0 -0
  60. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/js/bootstrap.js +0 -0
  61. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/js/bootstrap.js.map +0 -0
  62. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/js/bootstrap.min.js +0 -0
  63. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/js/bootstrap.min.js.map +0 -0
  64. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/bootstrap5/js/color-modes.js +0 -0
  65. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/css/dataTables.dataTables.css +0 -0
  66. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/css/dataTables.dataTables.min.css +0 -0
  67. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/images/sort_asc.png +0 -0
  68. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/images/sort_asc_disabled.png +0 -0
  69. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/images/sort_both.png +0 -0
  70. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/images/sort_desc.png +0 -0
  71. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/images/sort_desc_disabled.png +0 -0
  72. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/js/dataTables.js +0 -0
  73. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables/js/dataTables.min.js +0 -0
  74. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Buttons/css/buttons.dataTables.css +0 -0
  75. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Buttons/css/buttons.dataTables.min.css +0 -0
  76. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Buttons/js/buttons.html5.js +0 -0
  77. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Buttons/js/buttons.html5.min.js +0 -0
  78. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Buttons/js/dataTables.buttons.js +0 -0
  79. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Buttons/js/dataTables.buttons.min.js +0 -0
  80. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/FixedHeader/css/fixedHeader.dataTables.css +0 -0
  81. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/FixedHeader/css/fixedHeader.dataTables.min.css +0 -0
  82. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/FixedHeader/js/dataTables.fixedHeader.js +0 -0
  83. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/FixedHeader/js/dataTables.fixedHeader.min.js +0 -0
  84. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/JSZip/jszip.js +0 -0
  85. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/JSZip/jszip.min.js +0 -0
  86. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Responsive/css/responsive.dataTables.css +0 -0
  87. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Responsive/css/responsive.dataTables.min.css +0 -0
  88. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Responsive/js/dataTables.responsive.js +0 -0
  89. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/Responsive/js/dataTables.responsive.min.js +0 -0
  90. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/pdfmake/build/pdfmake.js +0 -0
  91. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/pdfmake/build/pdfmake.min.js +0 -0
  92. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/pdfmake/build/vfs_fonts.js +0 -0
  93. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/rowgroup/css/rowGroup.dataTables.css +0 -0
  94. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/rowgroup/css/rowGroup.dataTables.min.css +0 -0
  95. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/rowgroup/js/dataTables.rowGroup.js +0 -0
  96. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/datatables-extensions/rowgroup/js/dataTables.rowGroup.min.js +0 -0
  97. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/jquery/jquery.min.js +0 -0
  98. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/multi/LICENSE +0 -0
  99. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/multi/README.md +0 -0
  100. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/multi/multi.css +0 -0
  101. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/multi/multi.js +0 -0
  102. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/popper/popper.js +0 -0
  103. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/popper/popper.min.js +0 -0
  104. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/typeahead/jquery.typeahead.min.css +0 -0
  105. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/components/vendor/typeahead/jquery.typeahead.min.js +0 -0
  106. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/error_page.py +0 -0
  107. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/form.py +0 -0
  108. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/logging.py +0 -0
  109. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/passwd.py +0 -0
  110. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/__init__.py +0 -0
  111. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/db.py +0 -0
  112. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/ldap.py +0 -0
  113. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/restapi.py +0 -0
  114. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/scheduler.py +0 -0
  115. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/smtp.py +0 -0
  116. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/tests/__init__.py +0 -0
  117. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/tests/test_db.py +0 -0
  118. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/tests/test_ldap.py +0 -0
  119. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/tests/test_scheduler.py +0 -0
  120. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/tests/test_scheduler_db.py +0 -0
  121. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/plugins/tests/test_smtp.py +0 -0
  122. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/sessions.py +0 -0
  123. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/__init__.py +0 -0
  124. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/templates/test_flash.html +0 -0
  125. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/templates/test_form.html +0 -0
  126. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/templates/test_url.html +0 -0
  127. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/test_error_page.py +0 -0
  128. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/test_flash.py +0 -0
  129. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/test_logging.py +0 -0
  130. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/test_passwd.py +0 -0
  131. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tests/test_url.py +0 -0
  132. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/__init__.py +0 -0
  133. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/auth.py +0 -0
  134. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/auth_mfa.py +0 -0
  135. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/i18n.py +0 -0
  136. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/jinja2.py +0 -0
  137. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/secure_headers.py +0 -0
  138. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/sessions_timeout.py +0 -0
  139. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/__init__.py +0 -0
  140. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/components/Button.jinja +0 -0
  141. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/locales/de/LC_MESSAGES/messages.mo +0 -0
  142. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/locales/de/LC_MESSAGES/messages.po +0 -0
  143. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/locales/fr/LC_MESSAGES/messages.mo +0 -0
  144. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/locales/fr/LC_MESSAGES/messages.po +0 -0
  145. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/locales/messages.pot +0 -0
  146. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/templates/test_jinja2.html +0 -0
  147. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/templates/test_jinjax.html +0 -0
  148. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/templates/test_jinjax_i18n.html +0 -0
  149. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/test_auth.py +0 -0
  150. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/test_auth_mfa.py +0 -0
  151. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/test_i18n.py +0 -0
  152. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/test_jinja2.py +0 -0
  153. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/test_ratelimit.py +0 -0
  154. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/tools/tests/test_secure_headers.py +0 -0
  155. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/url.py +0 -0
  156. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation/widgets.py +0 -0
  157. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation.egg-info/SOURCES.txt +0 -0
  158. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation.egg-info/dependency_links.txt +0 -0
  159. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation.egg-info/requires.txt +0 -0
  160. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/src/cherrypy_foundation.egg-info/top_level.txt +0 -0
  161. {cherrypy_foundation-1.0.0a18 → cherrypy_foundation-1.0.0a20}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cherrypy-foundation
3
- Version: 1.0.0a18
3
+ Version: 1.0.0a20
4
4
  Summary: Cherrypy-foundation
5
5
  Author-email: Patrik Dufresne <patrik@ikus-soft.com>
6
6
  License: GPLv3
@@ -54,7 +54,7 @@ env = cherrypy.tools.jinja2.create_env(
54
54
  package_name=__package__,
55
55
  )
56
56
 
57
- @cherrypy.tools.sessions(locking='explicit')
57
+ @cherrypy.tools.sessions()
58
58
  @cherrypy.tools.jinja2(env=env)
59
59
  class Root:
60
60
 
@@ -16,7 +16,7 @@
16
16
 
17
17
  from collections import namedtuple
18
18
 
19
- import cherrypy
19
+ from cherrypy_foundation.sessions import session_lock
20
20
 
21
21
  FlashMessage = namedtuple('FlashMessage', ['message', 'level'])
22
22
 
@@ -27,22 +27,24 @@ def flash(message, level='info'):
27
27
  """
28
28
  assert message
29
29
  assert level in ['info', 'error', 'warning', 'success']
30
- if 'flash' not in cherrypy.session:
31
- cherrypy.session['flash'] = []
32
- # Support Markup and string
33
- if hasattr(message, '__html__'):
34
- flash_message = FlashMessage(message, level)
35
- else:
36
- flash_message = FlashMessage(str(message), level)
37
- cherrypy.session['flash'].append(flash_message)
30
+ with session_lock() as session:
31
+ if 'flash' not in session:
32
+ session['flash'] = []
33
+ # Support Markup and string
34
+ if hasattr(message, '__html__'):
35
+ flash_message = FlashMessage(message, level)
36
+ else:
37
+ flash_message = FlashMessage(str(message), level)
38
+ session['flash'].append(flash_message)
38
39
 
39
40
 
40
41
  def get_flashed_messages():
41
42
  """
42
43
  Return all flash message.
43
44
  """
44
- if 'flash' in cherrypy.session:
45
- messages = cherrypy.session['flash']
46
- del cherrypy.session['flash']
47
- return messages
45
+ with session_lock() as session:
46
+ if 'flash' in session:
47
+ messages = session['flash']
48
+ del session['flash']
49
+ return messages
48
50
  return []
@@ -69,7 +69,7 @@ class LoginForm(CherryForm):
69
69
  )
70
70
 
71
71
 
72
- @cherrypy.tools.sessions(locking='explicit')
72
+ @cherrypy.tools.sessions()
73
73
  @cherrypy.tools.jinja2(env=env)
74
74
  class Root:
75
75
 
@@ -198,7 +198,7 @@ class Ratelimit(cherrypy.Tool):
198
198
  if delay <= 0:
199
199
  raise ValueError('Invalid delay: %s' % delay)
200
200
  if limit <= 0:
201
- raise ValueError('Invalid limit: %s' % limit)
201
+ return
202
202
 
203
203
  # Check if this 'method' should be rate limited
204
204
  request = cherrypy.request
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cherrypy-foundation
3
- Version: 1.0.0a18
3
+ Version: 1.0.0a20
4
4
  Summary: Cherrypy-foundation
5
5
  Author-email: Patrik Dufresne <patrik@ikus-soft.com>
6
6
  License: GPLv3