kinto 19.5.0__tar.gz → 20.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (424) hide show
  1. {kinto-19.5.0 → kinto-20.0.0}/.gitignore +0 -1
  2. kinto-20.0.0/.readthedocs.yaml +12 -0
  3. {kinto-19.5.0 → kinto-20.0.0}/Dockerfile +0 -1
  4. {kinto-19.5.0 → kinto-20.0.0}/Makefile +1 -1
  5. {kinto-19.5.0/kinto.egg-info → kinto-20.0.0}/PKG-INFO +2 -6
  6. {kinto-19.5.0 → kinto-20.0.0}/README.rst +0 -1
  7. kinto-20.0.0/SUPPORT.md +3 -0
  8. {kinto-19.5.0 → kinto-20.0.0}/constraints.in +1 -4
  9. {kinto-19.5.0 → kinto-20.0.0}/constraints.txt +7 -27
  10. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/accounts.rst +0 -131
  11. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/authentication.rst +3 -3
  12. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/index.rst +0 -1
  13. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/openapi.rst +2 -2
  14. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/openid.rst +1 -1
  15. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/permissions.rst +5 -5
  16. {kinto-19.5.0 → kinto-20.0.0}/docs/api/index.rst +1 -6
  17. {kinto-19.5.0 → kinto-20.0.0}/docs/commandline.rst +2 -30
  18. {kinto-19.5.0 → kinto-20.0.0}/docs/community.rst +3 -14
  19. {kinto-19.5.0 → kinto-20.0.0}/docs/concepts.rst +1 -1
  20. {kinto-19.5.0 → kinto-20.0.0}/docs/conf.py +1 -2
  21. {kinto-19.5.0 → kinto-20.0.0}/docs/configuration/good-practices.rst +2 -22
  22. {kinto-19.5.0 → kinto-20.0.0}/docs/configuration/settings.rst +8 -189
  23. {kinto-19.5.0 → kinto-20.0.0}/docs/core/glossary.rst +0 -3
  24. {kinto-19.5.0 → kinto-20.0.0}/docs/faq.rst +37 -77
  25. {kinto-19.5.0 → kinto-20.0.0}/docs/images/architecture.svg +118 -134
  26. {kinto-19.5.0 → kinto-20.0.0}/docs/overview.rst +15 -59
  27. {kinto-19.5.0 → kinto-20.0.0}/docs/requirements.txt +2 -3
  28. {kinto-19.5.0 → kinto-20.0.0}/docs/troubleshooting.rst +2 -2
  29. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/first-steps.rst +24 -25
  30. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/index.rst +0 -4
  31. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/install.rst +2 -48
  32. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/notifications-custom.rst +0 -102
  33. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/permissions.rst +12 -12
  34. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/write-plugin.rst +1 -4
  35. {kinto-19.5.0 → kinto-20.0.0}/kinto/__main__.py +0 -17
  36. {kinto-19.5.0 → kinto-20.0.0}/kinto/config/kinto.tpl +0 -13
  37. {kinto-19.5.0 → kinto-20.0.0/kinto}/contribute.json +0 -3
  38. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/__init__.py +3 -3
  39. kinto-20.0.0/kinto/core/cornice/__init__.py +93 -0
  40. kinto-20.0.0/kinto/core/cornice/cors.py +144 -0
  41. kinto-20.0.0/kinto/core/cornice/errors.py +40 -0
  42. kinto-20.0.0/kinto/core/cornice/pyramidhook.py +373 -0
  43. kinto-20.0.0/kinto/core/cornice/renderer.py +89 -0
  44. kinto-20.0.0/kinto/core/cornice/resource.py +205 -0
  45. kinto-20.0.0/kinto/core/cornice/service.py +641 -0
  46. kinto-20.0.0/kinto/core/cornice/util.py +138 -0
  47. kinto-20.0.0/kinto/core/cornice/validators/__init__.py +94 -0
  48. kinto-20.0.0/kinto/core/cornice/validators/_colander.py +142 -0
  49. kinto-20.0.0/kinto/core/cornice/validators/_marshmallow.py +182 -0
  50. kinto-20.0.0/kinto/core/cornice_swagger/__init__.py +92 -0
  51. kinto-20.0.0/kinto/core/cornice_swagger/converters/__init__.py +21 -0
  52. kinto-20.0.0/kinto/core/cornice_swagger/converters/exceptions.py +6 -0
  53. kinto-20.0.0/kinto/core/cornice_swagger/converters/parameters.py +90 -0
  54. kinto-20.0.0/kinto/core/cornice_swagger/converters/schema.py +249 -0
  55. kinto-20.0.0/kinto/core/cornice_swagger/swagger.py +725 -0
  56. kinto-20.0.0/kinto/core/cornice_swagger/templates/index.html +73 -0
  57. kinto-20.0.0/kinto/core/cornice_swagger/templates/index_script_template.html +21 -0
  58. kinto-20.0.0/kinto/core/cornice_swagger/util.py +42 -0
  59. kinto-20.0.0/kinto/core/cornice_swagger/views.py +78 -0
  60. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/initialization.py +0 -14
  61. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/openapi.py +2 -3
  62. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/resource/viewset.py +1 -1
  63. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/pool.py +1 -1
  64. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/testing.py +1 -1
  65. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/utils.py +3 -2
  66. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/views/batch.py +1 -1
  67. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/views/errors.py +2 -0
  68. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/views/openapi.py +1 -1
  69. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/accounts/__init__.py +2 -19
  70. kinto-20.0.0/kinto/plugins/accounts/authentication.py +63 -0
  71. kinto-20.0.0/kinto/plugins/accounts/utils.py +13 -0
  72. kinto-19.5.0/kinto/plugins/accounts/views/__init__.py → kinto-20.0.0/kinto/plugins/accounts/views.py +7 -62
  73. kinto-20.0.0/kinto/plugins/admin/VERSION +1 -0
  74. kinto-20.0.0/kinto/plugins/admin/build/VERSION +1 -0
  75. kinto-20.0.0/kinto/plugins/admin/build/assets/asn1-EdZsLKOL.js +1 -0
  76. kinto-20.0.0/kinto/plugins/admin/build/assets/index-Bq62Gei8.js +165 -0
  77. kinto-19.5.0/kinto/plugins/admin/build/assets/index-BdpYyatM.css → kinto-20.0.0/kinto/plugins/admin/build/assets/index-Cs7JVwIg.css +1 -1
  78. kinto-20.0.0/kinto/plugins/admin/build/assets/javascript-qCveANmP.js +1 -0
  79. kinto-20.0.0/kinto/plugins/admin/build/assets/mllike-CXdrOF99.js +1 -0
  80. kinto-20.0.0/kinto/plugins/admin/build/assets/sql-D0XecflT.js +1 -0
  81. kinto-20.0.0/kinto/plugins/admin/build/assets/ttcn-cfg-B9xdYoR4.js +1 -0
  82. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/build/index.html +2 -2
  83. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/flush.py +1 -1
  84. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/openid/views.py +1 -1
  85. {kinto-19.5.0 → kinto-20.0.0}/kinto/views/contribute.py +14 -13
  86. {kinto-19.5.0 → kinto-20.0.0/kinto.egg-info}/PKG-INFO +2 -6
  87. {kinto-19.5.0 → kinto-20.0.0}/kinto.egg-info/SOURCES.txt +31 -29
  88. {kinto-19.5.0 → kinto-20.0.0}/kinto.egg-info/requires.txt +1 -4
  89. {kinto-19.5.0 → kinto-20.0.0}/pyproject.toml +6 -5
  90. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_events.py +1 -0
  91. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_viewset.py +1 -1
  92. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_initialization.py +7 -20
  93. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_openapi.py +1 -2
  94. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_views_errors.py +10 -0
  95. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/test_accounts.py +1 -389
  96. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/test_history.py +2 -5
  97. {kinto-19.5.0 → kinto-20.0.0}/tests/test_configuration/test.ini +0 -13
  98. {kinto-19.5.0 → kinto-20.0.0}/tests/test_main.py +0 -19
  99. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_contribute.py +1 -1
  100. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_permissions.py +1 -1
  101. kinto-19.5.0/SUPPORT.md +0 -10
  102. kinto-19.5.0/docs/api/1.x/quotas.rst +0 -97
  103. kinto-19.5.0/docs/images/logo-demos.svg +0 -80
  104. kinto-19.5.0/docs/images/logo-indexing.svg +0 -1
  105. kinto-19.5.0/docs/images/logo-livesync.svg +0 -114
  106. kinto-19.5.0/docs/images/logo-offline.svg +0 -84
  107. kinto-19.5.0/docs/images/logo-quotas.svg +0 -68
  108. kinto-19.5.0/docs/images/logo-signature.svg +0 -70
  109. kinto-19.5.0/docs/tutorials/app-examples.rst +0 -14
  110. kinto-19.5.0/docs/tutorials/authentication-github.rst +0 -360
  111. kinto-19.5.0/docs/tutorials/client-side-encryption.rst +0 -19
  112. kinto-19.5.0/docs/tutorials/notifications-websockets.rst +0 -124
  113. kinto-19.5.0/kinto/plugins/accounts/authentication.py +0 -109
  114. kinto-19.5.0/kinto/plugins/accounts/mails.py +0 -96
  115. kinto-19.5.0/kinto/plugins/accounts/utils.py +0 -146
  116. kinto-19.5.0/kinto/plugins/accounts/views/validation.py +0 -136
  117. kinto-19.5.0/kinto/plugins/admin/VERSION +0 -1
  118. kinto-19.5.0/kinto/plugins/admin/build/VERSION +0 -1
  119. kinto-19.5.0/kinto/plugins/admin/build/assets/asn1-CGOzndHr.js +0 -1
  120. kinto-19.5.0/kinto/plugins/admin/build/assets/index-n-QM_iZE.js +0 -165
  121. kinto-19.5.0/kinto/plugins/admin/build/assets/javascript-iSgyE4tI.js +0 -1
  122. kinto-19.5.0/kinto/plugins/admin/build/assets/mllike-C_8OmSiT.js +0 -1
  123. kinto-19.5.0/kinto/plugins/admin/build/assets/sql-C4g8LzGK.js +0 -1
  124. kinto-19.5.0/kinto/plugins/admin/build/assets/ttcn-cfg-BIkV9KBc.js +0 -1
  125. kinto-19.5.0/kinto/plugins/quotas/__init__.py +0 -21
  126. kinto-19.5.0/kinto/plugins/quotas/listener.py +0 -226
  127. kinto-19.5.0/kinto/plugins/quotas/scripts.py +0 -80
  128. kinto-19.5.0/kinto/plugins/quotas/utils.py +0 -7
  129. kinto-19.5.0/kinto/scripts.py +0 -41
  130. kinto-19.5.0/tests/plugins/test_quotas.py +0 -1142
  131. kinto-19.5.0/tests/test_scripts.py +0 -32
  132. {kinto-19.5.0 → kinto-20.0.0}/.dockerignore +0 -0
  133. {kinto-19.5.0 → kinto-20.0.0}/.github/CODE_OF_CONDUCT.md +0 -0
  134. {kinto-19.5.0 → kinto-20.0.0}/.github/CONTRIBUTING.md +0 -0
  135. {kinto-19.5.0 → kinto-20.0.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  136. {kinto-19.5.0 → kinto-20.0.0}/.github/dependabot.yml +0 -0
  137. {kinto-19.5.0 → kinto-20.0.0}/.github/release.yml +0 -0
  138. {kinto-19.5.0 → kinto-20.0.0}/.github/workflows/labels.yaml +0 -0
  139. {kinto-19.5.0 → kinto-20.0.0}/.github/workflows/publish.yml +0 -0
  140. {kinto-19.5.0 → kinto-20.0.0}/.github/workflows/scheduled.yml +0 -0
  141. {kinto-19.5.0 → kinto-20.0.0}/.github/workflows/test.yml +0 -0
  142. {kinto-19.5.0 → kinto-20.0.0}/CHANGELOG.rst +0 -0
  143. {kinto-19.5.0 → kinto-20.0.0}/CONTRIBUTORS.rst +0 -0
  144. {kinto-19.5.0 → kinto-20.0.0}/LICENSE +0 -0
  145. {kinto-19.5.0 → kinto-20.0.0}/SECURITY.md +0 -0
  146. {kinto-19.5.0 → kinto-20.0.0}/app.wsgi +0 -0
  147. {kinto-19.5.0 → kinto-20.0.0}/docker-compose.yml +0 -0
  148. {kinto-19.5.0 → kinto-20.0.0}/docs/_static/piwik.js +0 -0
  149. {kinto-19.5.0 → kinto-20.0.0}/docs/_static/theme_overrides.css +0 -0
  150. {kinto-19.5.0 → kinto-20.0.0}/docs/_templates/footer.html +0 -0
  151. {kinto-19.5.0 → kinto-20.0.0}/docs/_templates/indexcontent.html +0 -0
  152. {kinto-19.5.0 → kinto-20.0.0}/docs/_templates/layout.html +0 -0
  153. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_details-delete-list.rst +0 -0
  154. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_details-delete-object.rst +0 -0
  155. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_details-get-list.rst +0 -0
  156. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_details-get-object.rst +0 -0
  157. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_details-head-list.rst +0 -0
  158. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_details-patch-object.rst +0 -0
  159. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_details-post-list.rst +0 -0
  160. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_details-put-object.rst +0 -0
  161. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_status-delete-list.rst +0 -0
  162. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_status-delete-object.rst +0 -0
  163. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_status-get-list.rst +0 -0
  164. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_status-get-object.rst +0 -0
  165. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_status-patch-object.rst +0 -0
  166. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_status-post-list.rst +0 -0
  167. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/_status-put-object.rst +0 -0
  168. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/admin.rst +0 -0
  169. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/backoff.rst +0 -0
  170. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/batch.rst +0 -0
  171. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/buckets.rst +0 -0
  172. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/collections.rst +0 -0
  173. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/deprecation.rst +0 -0
  174. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/errors.rst +0 -0
  175. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/filtering.rst +0 -0
  176. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/flush.rst +0 -0
  177. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/groups.rst +0 -0
  178. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/history.rst +0 -0
  179. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/pagination.rst +0 -0
  180. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/records.rst +0 -0
  181. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/selecting_fields.rst +0 -0
  182. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/sorting.rst +0 -0
  183. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/timestamps.rst +0 -0
  184. {kinto-19.5.0 → kinto-20.0.0}/docs/api/1.x/utilities.rst +0 -0
  185. {kinto-19.5.0 → kinto-20.0.0}/docs/api/versioning.rst +0 -0
  186. {kinto-19.5.0 → kinto-20.0.0}/docs/changelog.rst +0 -0
  187. {kinto-19.5.0 → kinto-20.0.0}/docs/configuration/index.rst +0 -0
  188. {kinto-19.5.0 → kinto-20.0.0}/docs/configuration/production.rst +0 -0
  189. {kinto-19.5.0 → kinto-20.0.0}/docs/core/_static/theme_overrides.css +0 -0
  190. {kinto-19.5.0 → kinto-20.0.0}/docs/core/api.rst +0 -0
  191. {kinto-19.5.0 → kinto-20.0.0}/docs/core/cache.rst +0 -0
  192. {kinto-19.5.0 → kinto-20.0.0}/docs/core/decorators.rst +0 -0
  193. {kinto-19.5.0 → kinto-20.0.0}/docs/core/errors.rst +0 -0
  194. {kinto-19.5.0 → kinto-20.0.0}/docs/core/images/cliquet-base.png +0 -0
  195. {kinto-19.5.0 → kinto-20.0.0}/docs/core/images/cliquet-mozilla.png +0 -0
  196. {kinto-19.5.0 → kinto-20.0.0}/docs/core/index.rst +0 -0
  197. {kinto-19.5.0 → kinto-20.0.0}/docs/core/notifications.rst +0 -0
  198. {kinto-19.5.0 → kinto-20.0.0}/docs/core/permission.rst +0 -0
  199. {kinto-19.5.0 → kinto-20.0.0}/docs/core/quickstart.rst +0 -0
  200. {kinto-19.5.0 → kinto-20.0.0}/docs/core/rationale.rst +0 -0
  201. {kinto-19.5.0 → kinto-20.0.0}/docs/core/resource.rst +0 -0
  202. {kinto-19.5.0 → kinto-20.0.0}/docs/core/storage.rst +0 -0
  203. {kinto-19.5.0 → kinto-20.0.0}/docs/core/testing.rst +0 -0
  204. {kinto-19.5.0 → kinto-20.0.0}/docs/core/utils.rst +0 -0
  205. {kinto-19.5.0 → kinto-20.0.0}/docs/core/viewsets.rst +0 -0
  206. {kinto-19.5.0 → kinto-20.0.0}/docs/images/alwaysdata-button.svg +0 -0
  207. {kinto-19.5.0 → kinto-20.0.0}/docs/images/color-formatter.png +0 -0
  208. {kinto-19.5.0 → kinto-20.0.0}/docs/images/concepts-general.png +0 -0
  209. {kinto-19.5.0 → kinto-20.0.0}/docs/images/concepts-permissions.png +0 -0
  210. {kinto-19.5.0 → kinto-20.0.0}/docs/images/heroku-button.png +0 -0
  211. {kinto-19.5.0 → kinto-20.0.0}/docs/images/kinto-logo.png +0 -0
  212. {kinto-19.5.0 → kinto-20.0.0}/docs/images/kinto-logo.svg +0 -0
  213. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-admin.svg +0 -0
  214. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-attachment.svg +0 -0
  215. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-community.svg +0 -0
  216. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-history.svg +0 -0
  217. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-javascript.svg +0 -0
  218. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-jsonschema.svg +0 -0
  219. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-multiapps.svg +0 -0
  220. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-permissions.svg +0 -0
  221. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-python.svg +0 -0
  222. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-selfhostable.svg +0 -0
  223. {kinto-19.5.0 → kinto-20.0.0}/docs/images/logo-synchronisation.svg +0 -0
  224. {kinto-19.5.0 → kinto-20.0.0}/docs/images/overview-deployonce-selfhost.png +0 -0
  225. {kinto-19.5.0 → kinto-20.0.0}/docs/images/overview-features.png +0 -0
  226. {kinto-19.5.0 → kinto-20.0.0}/docs/images/overview-synchronisation.png +0 -0
  227. {kinto-19.5.0 → kinto-20.0.0}/docs/images/overview-use-cases.png +0 -0
  228. {kinto-19.5.0 → kinto-20.0.0}/docs/images/scalingo-button.svg +0 -0
  229. {kinto-19.5.0 → kinto-20.0.0}/docs/images/screenshot-kinto-admin-1.png +0 -0
  230. {kinto-19.5.0 → kinto-20.0.0}/docs/images/screenshot-kinto-admin-2.png +0 -0
  231. {kinto-19.5.0 → kinto-20.0.0}/docs/images/screenshot-kinto-admin-3.png +0 -0
  232. {kinto-19.5.0 → kinto-20.0.0}/docs/images/screenshot-kinto-admin-4.png +0 -0
  233. {kinto-19.5.0 → kinto-20.0.0}/docs/images/sequence-storage.png +0 -0
  234. {kinto-19.5.0 → kinto-20.0.0}/docs/images/sync-both.svg +0 -0
  235. {kinto-19.5.0 → kinto-20.0.0}/docs/images/sync-newest.svg +0 -0
  236. {kinto-19.5.0 → kinto-20.0.0}/docs/images/sync-oldest.svg +0 -0
  237. {kinto-19.5.0 → kinto-20.0.0}/docs/index.rst +0 -0
  238. {kinto-19.5.0 → kinto-20.0.0}/docs/kinto-admin.rst +0 -0
  239. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/custom-id-generator.rst +0 -0
  240. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/permission-setups.rst +0 -0
  241. {kinto-19.5.0 → kinto-20.0.0}/docs/tutorials/synchronisation.rst +0 -0
  242. {kinto-19.5.0 → kinto-20.0.0}/kinto/__init__.py +0 -0
  243. {kinto-19.5.0 → kinto-20.0.0}/kinto/authorization.py +0 -0
  244. {kinto-19.5.0 → kinto-20.0.0}/kinto/config/__init__.py +0 -0
  245. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/authentication.py +0 -0
  246. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/authorization.py +0 -0
  247. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/cache/__init__.py +0 -0
  248. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/cache/memcached.py +0 -0
  249. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/cache/memory.py +0 -0
  250. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/cache/postgresql/__init__.py +0 -0
  251. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/cache/postgresql/schema.sql +0 -0
  252. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/cache/testing.py +0 -0
  253. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/decorators.py +0 -0
  254. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/errors.py +0 -0
  255. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/events.py +0 -0
  256. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/listeners/__init__.py +0 -0
  257. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/metrics.py +0 -0
  258. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/permission/__init__.py +0 -0
  259. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/permission/memory.py +0 -0
  260. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/permission/postgresql/__init__.py +0 -0
  261. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/permission/postgresql/migrations/migration_001_002.sql +0 -0
  262. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/permission/postgresql/schema.sql +0 -0
  263. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/permission/testing.py +0 -0
  264. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/resource/__init__.py +0 -0
  265. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/resource/model.py +0 -0
  266. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/resource/schema.py +0 -0
  267. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/schema.py +0 -0
  268. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/scripts.py +0 -0
  269. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/statsd.py +0 -0
  270. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/__init__.py +0 -0
  271. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/exceptions.py +0 -0
  272. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/generators.py +0 -0
  273. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/memory.py +0 -0
  274. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/__init__.py +0 -0
  275. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/client.py +0 -0
  276. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_001_002.sql +0 -0
  277. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_002_003.sql +0 -0
  278. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_003_004.sql +0 -0
  279. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_004_005.sql +0 -0
  280. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_005_006.sql +0 -0
  281. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_006_007.sql +0 -0
  282. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_007_008.sql +0 -0
  283. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_008_009.sql +0 -0
  284. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_009_010.sql +0 -0
  285. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_010_011.sql +0 -0
  286. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_011_012.sql +0 -0
  287. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_012_013.sql +0 -0
  288. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_013_014.sql +0 -0
  289. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_014_015.sql +0 -0
  290. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_015_016.sql +0 -0
  291. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_016_017.sql +0 -0
  292. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_017_018.sql +0 -0
  293. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_018_019.sql +0 -0
  294. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_019_020.sql +0 -0
  295. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_020_021.sql +0 -0
  296. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrations/migration_021_022.sql +0 -0
  297. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/migrator.py +0 -0
  298. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/postgresql/schema.sql +0 -0
  299. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/testing.py +0 -0
  300. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/storage/utils.py +0 -0
  301. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/views/__init__.py +0 -0
  302. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/views/heartbeat.py +0 -0
  303. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/views/hello.py +0 -0
  304. {kinto-19.5.0 → kinto-20.0.0}/kinto/core/views/version.py +0 -0
  305. {kinto-19.5.0 → kinto-20.0.0}/kinto/events.py +0 -0
  306. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/__init__.py +0 -0
  307. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/accounts/scripts.py +0 -0
  308. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/README.md +0 -0
  309. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/__init__.py +0 -0
  310. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/build/assets/clojure-BMjYHr_A.js +0 -0
  311. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/build/assets/css-BnMrqG3P.js +0 -0
  312. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/build/assets/logo-VBRiKSPX.png +0 -0
  313. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/build/assets/python-BuPzkPfP.js +0 -0
  314. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/build/assets/rpm-CTu-6PCP.js +0 -0
  315. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/public/help.html +0 -0
  316. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/admin/views.py +0 -0
  317. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/default_bucket/__init__.py +0 -0
  318. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/history/__init__.py +0 -0
  319. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/history/listener.py +0 -0
  320. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/history/views.py +0 -0
  321. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/openid/__init__.py +0 -0
  322. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/openid/utils.py +0 -0
  323. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/prometheus.py +0 -0
  324. {kinto-19.5.0 → kinto-20.0.0}/kinto/plugins/statsd.py +0 -0
  325. {kinto-19.5.0 → kinto-20.0.0}/kinto/schema_validation.py +0 -0
  326. {kinto-19.5.0 → kinto-20.0.0}/kinto/views/__init__.py +0 -0
  327. {kinto-19.5.0 → kinto-20.0.0}/kinto/views/admin.py +0 -0
  328. {kinto-19.5.0 → kinto-20.0.0}/kinto/views/buckets.py +0 -0
  329. {kinto-19.5.0 → kinto-20.0.0}/kinto/views/collections.py +0 -0
  330. {kinto-19.5.0 → kinto-20.0.0}/kinto/views/groups.py +0 -0
  331. {kinto-19.5.0 → kinto-20.0.0}/kinto/views/permissions.py +0 -0
  332. {kinto-19.5.0 → kinto-20.0.0}/kinto/views/records.py +0 -0
  333. {kinto-19.5.0 → kinto-20.0.0}/kinto.egg-info/dependency_links.txt +0 -0
  334. {kinto-19.5.0 → kinto-20.0.0}/kinto.egg-info/entry_points.txt +0 -0
  335. {kinto-19.5.0 → kinto-20.0.0}/kinto.egg-info/top_level.txt +0 -0
  336. {kinto-19.5.0 → kinto-20.0.0}/scripts/pull-kinto-admin.sh +0 -0
  337. {kinto-19.5.0 → kinto-20.0.0}/setup.cfg +0 -0
  338. {kinto-19.5.0 → kinto-20.0.0}/tests/__init__.py +0 -0
  339. {kinto-19.5.0 → kinto-20.0.0}/tests/browser.ini +0 -0
  340. {kinto-19.5.0 → kinto-20.0.0}/tests/browser.py +0 -0
  341. {kinto-19.5.0 → kinto-20.0.0}/tests/core/__init__.py +0 -0
  342. {kinto-19.5.0 → kinto-20.0.0}/tests/core/listeners.py +0 -0
  343. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/__init__.py +0 -0
  344. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_base.py +0 -0
  345. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_cache_expires.py +0 -0
  346. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_filter.py +0 -0
  347. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_model.py +0 -0
  348. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_object.py +0 -0
  349. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_object_permissions.py +0 -0
  350. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_pagination.py +0 -0
  351. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_partial_response.py +0 -0
  352. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_preconditions.py +0 -0
  353. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_schema.py +0 -0
  354. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_sort.py +0 -0
  355. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_sync.py +0 -0
  356. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_views.py +0 -0
  357. {kinto-19.5.0 → kinto-20.0.0}/tests/core/resource/test_views_cors.py +0 -0
  358. {kinto-19.5.0 → kinto-20.0.0}/tests/core/schema/postgresql-permission-1.sql +0 -0
  359. {kinto-19.5.0 → kinto-20.0.0}/tests/core/schema/postgresql-storage-1.6.sql +0 -0
  360. {kinto-19.5.0 → kinto-20.0.0}/tests/core/schema/postgresql-storage-11.sql +0 -0
  361. {kinto-19.5.0 → kinto-20.0.0}/tests/core/support.py +0 -0
  362. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_authentication.py +0 -0
  363. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_authorization.py +0 -0
  364. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_cache.py +0 -0
  365. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_decorators.py +0 -0
  366. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_deprecation.py +0 -0
  367. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_errors.py +0 -0
  368. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_listeners.py +0 -0
  369. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_logging.py +0 -0
  370. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_metrics.py +0 -0
  371. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_permission.py +0 -0
  372. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_schema.py +0 -0
  373. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_scripts.py +0 -0
  374. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_storage.py +0 -0
  375. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_storage_migrations.py +0 -0
  376. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_storage_pool.py +0 -0
  377. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_utils.py +0 -0
  378. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_views_batch.py +0 -0
  379. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_views_heartbeat.py +0 -0
  380. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_views_hello.py +0 -0
  381. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_views_openapi.py +0 -0
  382. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_views_postgresql.py +0 -0
  383. {kinto-19.5.0 → kinto-20.0.0}/tests/core/test_views_transaction.py +0 -0
  384. {kinto-19.5.0 → kinto-20.0.0}/tests/core/testapp/__init__.py +0 -0
  385. {kinto-19.5.0 → kinto-20.0.0}/tests/core/testapp/static/index.html +0 -0
  386. {kinto-19.5.0 → kinto-20.0.0}/tests/core/testapp/views.py +0 -0
  387. {kinto-19.5.0 → kinto-20.0.0}/tests/core/testplugin/__init__.py +0 -0
  388. {kinto-19.5.0 → kinto-20.0.0}/tests/functional.ini +0 -0
  389. {kinto-19.5.0 → kinto-20.0.0}/tests/functional.py +0 -0
  390. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/__init__.py +0 -0
  391. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/support.py +0 -0
  392. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/test_plugins.py +0 -0
  393. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/test_resources.py +0 -0
  394. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/test_responses_buckets.py +0 -0
  395. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/test_responses_collections.py +0 -0
  396. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/test_responses_errors.py +0 -0
  397. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/test_responses_groups.py +0 -0
  398. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/test_responses_records.py +0 -0
  399. {kinto-19.5.0 → kinto-20.0.0}/tests/openapi/test_validation.py +0 -0
  400. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/__init__.py +0 -0
  401. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/test_admin.py +0 -0
  402. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/test_default_bucket.py +0 -0
  403. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/test_flush.py +0 -0
  404. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/test_openid.py +0 -0
  405. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/test_prometheus.py +0 -0
  406. {kinto-19.5.0 → kinto-20.0.0}/tests/plugins/test_statsd.py +0 -0
  407. {kinto-19.5.0 → kinto-20.0.0}/tests/support.py +0 -0
  408. {kinto-19.5.0 → kinto-20.0.0}/tests/test_authorization.py +0 -0
  409. {kinto-19.5.0 → kinto-20.0.0}/tests/test_config.py +0 -0
  410. {kinto-19.5.0 → kinto-20.0.0}/tests/test_init.py +0 -0
  411. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_admin.py +0 -0
  412. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_buckets.py +0 -0
  413. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_collections.py +0 -0
  414. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_collections_cache.py +0 -0
  415. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_disable_default.py +0 -0
  416. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_groups.py +0 -0
  417. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_hello.py +0 -0
  418. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_metrics.py +0 -0
  419. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_objects_permissions.py +0 -0
  420. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_records.py +0 -0
  421. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_schema_collection.py +0 -0
  422. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_schema_group.py +0 -0
  423. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_schema_record.py +0 -0
  424. {kinto-19.5.0 → kinto-20.0.0}/tests/test_views_version.py +0 -0
@@ -16,7 +16,6 @@ build/
16
16
  kinto/plugins/admin/build
17
17
  kinto/plugins/admin/kinto-admin-*
18
18
  .pytest_cache/
19
- mail/
20
19
  .history/
21
20
  .vscode/
22
21
  .ruff_cache/
@@ -0,0 +1,12 @@
1
+ version: 2
2
+
3
+ build:
4
+ os: "ubuntu-22.04"
5
+ tools:
6
+ python: "3.12"
7
+ jobs:
8
+ install:
9
+ - make install-docs
10
+ build:
11
+ html:
12
+ - SPHINX_BUILDDIR=$READTHEDOCS_OUTPUT make docs
@@ -20,7 +20,6 @@ RUN cp -r /kinto-admin/kinto/plugins/admin/build kinto/plugins/admin/
20
20
  RUN pip install ".[postgresql,memcached,monitoring]" -c constraints.txt && pip install kinto-attachment kinto-emailer httpie
21
21
 
22
22
  FROM python:3.10-slim-bullseye
23
- RUN apt-get update && apt-get install -y --no-install-recommends libpq-dev
24
23
  RUN groupadd --gid 10001 app && \
25
24
  useradd --uid 10001 --gid 10001 --home /app --create-home app
26
25
 
@@ -1,6 +1,6 @@
1
1
  SERVER_CONFIG = config/kinto.ini
2
2
 
3
- SPHINX_BUILDDIR = docs/_build
3
+ SPHINX_BUILDDIR := $(shell echo $${SPHINX_BUILDDIR-docs/_build})
4
4
  VENV := $(shell echo $${VIRTUAL_ENV-.venv})
5
5
  PYTHON = $(VENV)/bin/python3
6
6
  DEV_STAMP = $(VENV)/.dev_env_installed.stamp
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: kinto
3
- Version: 19.5.0
3
+ Version: 20.0.0
4
4
  Summary: Kinto Web Service - Store, Sync, Share, and Self-Host.
5
5
  Author-email: Mozilla Services <developers@kinto-storage.org>
6
6
  License: Copyright 2012 - Mozilla Foundation
@@ -33,15 +33,12 @@ Description-Content-Type: text/x-rst
33
33
  License-File: LICENSE
34
34
  Requires-Dist: bcrypt
35
35
  Requires-Dist: colander
36
- Requires-Dist: cornice
37
- Requires-Dist: cornice_swagger
38
36
  Requires-Dist: dockerflow
39
37
  Requires-Dist: jsonschema
40
38
  Requires-Dist: jsonpatch
41
39
  Requires-Dist: logging-color-formatter
42
40
  Requires-Dist: python-dateutil
43
41
  Requires-Dist: pyramid
44
- Requires-Dist: pyramid_mailer
45
42
  Requires-Dist: pyramid_multiauth
46
43
  Requires-Dist: transaction
47
44
  Requires-Dist: pyramid_tm
@@ -54,7 +51,7 @@ Provides-Extra: memcached
54
51
  Requires-Dist: python-memcached; extra == "memcached"
55
52
  Provides-Extra: postgresql
56
53
  Requires-Dist: SQLAlchemy<3; extra == "postgresql"
57
- Requires-Dist: psycopg2; extra == "postgresql"
54
+ Requires-Dist: psycopg2-binary; extra == "postgresql"
58
55
  Requires-Dist: zope.sqlalchemy; extra == "postgresql"
59
56
  Provides-Extra: monitoring
60
57
  Requires-Dist: newrelic; extra == "monitoring"
@@ -108,7 +105,6 @@ Kinto is a minimalist JSON storage service with synchronisation and sharing abil
108
105
  * `Tutorial <https://kinto.readthedocs.io/en/latest/tutorials/first-steps.html>`_
109
106
  * `Issue tracker <https://github.com/Kinto/kinto/issues>`_
110
107
  * `Contributing <https://kinto.readthedocs.io/en/latest/community.html#how-to-contribute>`_
111
- * `Try our daily flushed instance at: https://demo.kinto-storage.org/v1/ <https://demo.kinto-storage.org/v1/>`_
112
108
  * `Docker Hub <https://hub.docker.com/r/kinto/kinto-server>`_
113
109
 
114
110
  Requirements
@@ -32,7 +32,6 @@ Kinto is a minimalist JSON storage service with synchronisation and sharing abil
32
32
  * `Tutorial <https://kinto.readthedocs.io/en/latest/tutorials/first-steps.html>`_
33
33
  * `Issue tracker <https://github.com/Kinto/kinto/issues>`_
34
34
  * `Contributing <https://kinto.readthedocs.io/en/latest/community.html#how-to-contribute>`_
35
- * `Try our daily flushed instance at: https://demo.kinto-storage.org/v1/ <https://demo.kinto-storage.org/v1/>`_
36
35
  * `Docker Hub <https://hub.docker.com/r/kinto/kinto-server>`_
37
36
 
38
37
  Requirements
@@ -0,0 +1,3 @@
1
+ # Support
2
+
3
+ If you're looking for support for Kinto, use [Github issues](https://github.com/Kinto/kinto/issues).
@@ -1,15 +1,12 @@
1
1
  # main dependencies
2
2
  bcrypt
3
3
  colander
4
- cornice
5
- cornice_swagger
6
4
  dockerflow
7
5
  jsonschema
8
6
  jsonpatch
9
7
  logging-color-formatter
10
8
  python-dateutil
11
9
  pyramid
12
- pyramid_mailer
13
10
  pyramid_multiauth
14
11
  transaction
15
12
  pyramid_tm
@@ -21,7 +18,7 @@ python-rapidjson
21
18
  python-memcached
22
19
  # postgresql
23
20
  SQLAlchemy < 3
24
- psycopg2
21
+ psycopg2-binary
25
22
  zope.sqlalchemy
26
23
  # monitoring
27
24
  newrelic
@@ -10,7 +10,7 @@ attrs==23.2.0
10
10
  # via
11
11
  # jsonschema
12
12
  # referencing
13
- bcrypt==4.2.1
13
+ bcrypt==4.3.0
14
14
  # via -r constraints.in
15
15
  beautifulsoup4==4.12.3
16
16
  # via webtest
@@ -25,17 +25,9 @@ certifi==2024.7.4
25
25
  charset-normalizer==3.3.2
26
26
  # via requests
27
27
  colander==2.0
28
- # via
29
- # -r constraints.in
30
- # cornice-swagger
28
+ # via -r constraints.in
31
29
  colorama==0.4.6
32
30
  # via logging-color-formatter
33
- cornice==6.0.1
34
- # via
35
- # -r constraints.in
36
- # cornice-swagger
37
- cornice-swagger==1.0.1
38
- # via -r constraints.in
39
31
  coverage==7.6.4
40
32
  # via pytest-cov
41
33
  dockerflow==2024.4.2
@@ -102,7 +94,7 @@ pluggy==1.5.0
102
94
  # via pytest
103
95
  prometheus-client==0.21.1
104
96
  # via -r constraints.in
105
- psycopg2==2.9.10
97
+ psycopg2-binary==2.9.10
106
98
  # via -r constraints.in
107
99
  pyee==12.0.0
108
100
  # via playwright
@@ -111,17 +103,13 @@ pyproject-hooks==1.0.0
111
103
  pyramid==2.0.2
112
104
  # via
113
105
  # -r constraints.in
114
- # cornice
115
- # pyramid-mailer
116
106
  # pyramid-multiauth
117
107
  # pyramid-tm
118
- pyramid-mailer==0.15.1
119
- # via -r constraints.in
120
108
  pyramid-multiauth==1.0.2
121
109
  # via -r constraints.in
122
110
  pyramid-tm==2.6
123
111
  # via -r constraints.in
124
- pytest==8.3.4
112
+ pytest==8.3.5
125
113
  # via
126
114
  # -r constraints.in
127
115
  # pytest-cache
@@ -149,8 +137,6 @@ referencing==0.32.1
149
137
  # via
150
138
  # jsonschema
151
139
  # jsonschema-specifications
152
- repoze-sendmail==4.4.1
153
- # via pyramid-mailer
154
140
  requests==2.32.3
155
141
  # via
156
142
  # -r constraints.in
@@ -163,7 +149,7 @@ rpds-py==0.17.1
163
149
  # via
164
150
  # jsonschema
165
151
  # referencing
166
- ruff==0.9.6
152
+ ruff==0.9.9
167
153
  # via -r constraints.in
168
154
  sentry-sdk==2.8.0
169
155
  # via -r constraints.in
@@ -172,12 +158,11 @@ simplejson==3.19.2
172
158
  six==1.16.0
173
159
  # via
174
160
  # bravado-core
175
- # cornice-swagger
176
161
  # python-dateutil
177
162
  # rfc3339-validator
178
163
  soupsieve==2.5
179
164
  # via beautifulsoup4
180
- sqlalchemy==2.0.37
165
+ sqlalchemy==2.0.38
181
166
  # via
182
167
  # -r constraints.in
183
168
  # sentry-sdk
@@ -189,9 +174,7 @@ swagger-spec-validator==3.0.3
189
174
  transaction==5.0
190
175
  # via
191
176
  # -r constraints.in
192
- # pyramid-mailer
193
177
  # pyramid-tm
194
- # repoze-sendmail
195
178
  # zope-sqlalchemy
196
179
  translationstring==1.4
197
180
  # via
@@ -211,9 +194,7 @@ urllib3==2.2.2
211
194
  # requests
212
195
  # sentry-sdk
213
196
  venusian==3.1.0
214
- # via
215
- # cornice
216
- # pyramid
197
+ # via pyramid
217
198
  waitress==3.0.2
218
199
  # via
219
200
  # -r constraints.in
@@ -233,7 +214,6 @@ zope-deprecation==5.0
233
214
  zope-interface==6.1
234
215
  # via
235
216
  # pyramid
236
- # repoze-sendmail
237
217
  # transaction
238
218
  # zope-sqlalchemy
239
219
  zope-sqlalchemy==3.1
@@ -153,15 +153,6 @@ Alternatively, accounts can be created using POST. Supply the user id and passw
153
153
 
154
154
  Depending on the :ref:`configuration <settings-accounts>`, you may not be allowed to create accounts.
155
155
 
156
- .. note::
157
-
158
- If the :ref:`accounts validation <settings-account-validation>` is enabled,
159
- you might also need to provide an ``email-context`` in the ``data``:
160
-
161
- .. sourcecode:: bash
162
-
163
- $ echo '{"data": {"id": "bob@example.com", "password": "azerty123", "email-context": {"name": "Bob Smith", "form-url": "https://example.com/validate/"}}}' | http POST http://localhost:8888/v1/accounts --verbose
164
-
165
156
 
166
157
  .. _accounts-update:
167
158
 
@@ -303,125 +294,3 @@ Or delete some account:
303
294
  ::
304
295
 
305
296
  $ http DELETE http://localhost:8888/v1/accounts/sam-body --auth admin:s3cr3t
306
-
307
-
308
-
309
- .. _accounts-validate:
310
-
311
- Validate accounts
312
- =================
313
-
314
- When the ``account_validation`` option is enabled in :ref:`the settings
315
- <settings-account-validation>`, account IDs need to be valid email addresses:
316
- they need to match the regexp in the ``account_validation.email_regexp``
317
- setting. The default one is very generic, but you may restrict it to only allow
318
- certain emails, for example only ones from a specific domain.
319
-
320
- To make sure the ``account_validation`` is enabled, you can check if the
321
- ``validation_enabled`` flag is ``true`` in the ``"accounts"`` field on the
322
- :ref:`root URL <api-utilities-hello>`.
323
-
324
- .. http:post:: /accounts/(user_id)/validate/(activation_key)
325
-
326
- :synopsis: Activates a newly created account with the ``account_validation`` option enabled.
327
-
328
- **Anonymous**
329
-
330
- **Example Request**
331
-
332
- .. sourcecode:: bash
333
-
334
- $ http POST http://localhost:8888/v1/accounts/bob@example.com/validate/2fe7a389-3556-4c8f-9513-c26bfc5f160b --verbose
335
-
336
-
337
- .. sourcecode:: http
338
-
339
- POST /v1/accounts/bob@example.com/validate/2fe7a389-3556-4c8f-9513-c26bfc5f160b HTTP/1.1
340
- Accept: */*
341
- Accept-Encoding: gzip, deflate
342
- Connection: keep-alive
343
- Content-Length: 0
344
- Host: localhost:8888
345
- User-Agent: HTTPie/0.9.8
346
-
347
- **Example Response**
348
-
349
- .. sourcecode:: http
350
-
351
- HTTP/1.1 200 OK
352
- Access-Control-Expose-Headers: Content-Length, Retry-After, Backoff, Alert
353
- Content-Length: 195
354
- Content-Type: application/json
355
- Date: Mon, 21 Jan 2019 13:41:17 GMT
356
- Server: waitress
357
- X-Content-Type-Options: nosniff
358
-
359
- {
360
- "id": "bob@example.com",
361
- "last_modified": 1548077982793,
362
- "password": "$2b$12$zlTlYet5v.v57ak2gEYyoeqKSGzLvwXF/.v3DGpT/q69LecHv68gm",
363
- "validated": true
364
- }
365
-
366
- .. _accounts-reset-password:
367
-
368
- Resetting a forgotten password
369
- ==============================
370
-
371
- If the ``account_validation`` option in :ref:`the settings
372
- <settings-account-validation>` has been enabled, a temporary reset password may
373
- be requested through the endpoint available at ``/accounts/(user
374
- id)/reset-password``.
375
-
376
- .. http:post:: /accounts/(user_id)/reset-password
377
-
378
- :synopsis: Request a temporary reset password for an account with the ``account_validation`` option enabled.
379
-
380
- **Anonymous**
381
-
382
- **Example Request**
383
-
384
- .. sourcecode:: bash
385
-
386
- $ http POST http://localhost:8888/v1/accounts/bob@example.com/reset-password --verbose
387
-
388
-
389
- .. sourcecode:: http
390
-
391
- POST /v1/accounts/bob@example.com/reset-password HTTP/1.1
392
- Accept: */*
393
- Accept-Encoding: gzip, deflate
394
- Connection: keep-alive
395
- Content-Length: 0
396
- Host: localhost:8888
397
- User-Agent: HTTPie/0.9.8
398
-
399
-
400
- **Example Response**
401
-
402
- .. sourcecode:: http
403
-
404
- HTTP/1.1 200 OK
405
- Access-Control-Expose-Headers: Backoff, Alert, Retry-After, Content-Length
406
- Content-Length: 62
407
- Content-Type: application/json
408
- Date: Fri, 08 Feb 2019 14:04:15 GMT
409
- Server: waitress
410
- X-Content-Type-Options: nosniff
411
-
412
- {
413
- "message": "A temporary reset password has been sent by mail"
414
- }
415
-
416
- .. note::
417
-
418
- You might also need to provide an ``email-context`` in the ``data`` to fill
419
- in the holes of the email template defined in the :ref:`settings
420
- <settings-account-password-reset>`:
421
-
422
- .. sourcecode:: bash
423
-
424
- $ echo '{"data": {"email-context": {"name": "Bob Smith"}}}' | http POST http://localhost:8888/v1/accounts/bob@example.com/reset-password --verbose
425
-
426
- Using this temporary reset password, one can
427
- :ref:`update the account <accounts-update>` providing the new password.
@@ -36,7 +36,7 @@ The currently authenticated *user ID* can be obtained on the :ref:`root URL <api
36
36
 
37
37
  .. code-block:: bash
38
38
 
39
- $ http GET https://demo.kinto-storage.org/v1/ --auth admin:s3cr3t
39
+ $ http GET http://localhost:8888/v1/ --auth admin:s3cr3t
40
40
 
41
41
  .. code-block:: http
42
42
  :emphasize-lines: 6
@@ -44,7 +44,7 @@ The currently authenticated *user ID* can be obtained on the :ref:`root URL <api
44
44
  HTTP/1.1 200 OK
45
45
 
46
46
  {
47
- "url": "https://demo.kinto-storage.org/v1/",
47
+ "url": "http://localhost:8888/v1/",
48
48
  "user": {
49
49
  "bucket": "4399ed6c-802e-3278-5d01-44f261f0bab4",
50
50
  "id": "account:admin",
@@ -76,7 +76,7 @@ In order to know which authentication methods are supported by a *Kinto* server,
76
76
 
77
77
  .. code-block:: shell
78
78
 
79
- $ http https://demo.kinto-storage.org/v1/
79
+ $ http http://localhost:8888/v1/
80
80
 
81
81
  .. code-block:: http
82
82
 
@@ -24,7 +24,6 @@ Full detailed API documentation:
24
24
  pagination
25
25
  selecting_fields
26
26
  history
27
- quotas
28
27
  utilities
29
28
  admin
30
29
  batch
@@ -68,9 +68,9 @@ One way to interact and explore an API is through interactive documentation.
68
68
  SwaggerUI is a resource that allows testing and visualizing the behavior
69
69
  of an OpenAPI described interface.
70
70
 
71
- You can try the instance running on https://demo.kinto-storage.org/v1/ from you browser
71
+ You can try the instance running on https://your-domain/v1/ from you browser
72
72
  accessing this
73
- `Swagger UI example <http://petstore.swagger.io/?url=https://demo.kinto-storage.org/v1/__api__>`_
73
+ `Swagger UI example <http://petstore.swagger.io/?url=https://your-domain/v1/__api__>`_
74
74
 
75
75
  Automated client generation
76
76
  ===========================
@@ -69,7 +69,7 @@ for the configured provider ``name``.
69
69
  JavaScript example
70
70
  ------------------
71
71
 
72
- Let's go through a simple OpenID login example using the `JavaScript kinto client <https://github.com/Kinto/kinto-http.js>`_.
72
+ Let's go through a simple OpenID login example using the `JavaScript kinto client <https://github.com/Kinto/kinto.js>`_.
73
73
 
74
74
  When the user clicks a login button, it initiates the login process by redirecting the browser to the
75
75
  Identity Provider, which itself redirects it to the application page once successful.
@@ -283,7 +283,7 @@ itself, using the same :ref:`PATCH <record-patch>` and :ref:`PUT
283
283
  .. sourcecode:: bash
284
284
 
285
285
  $ echo '{"permissions": {"read": ["system.Authenticated"]}}' | \
286
- http PATCH https://demo.kinto-storage.org/v1/buckets/default/collections/tasks \
286
+ http PATCH http://localhost:8888/v1/buckets/default/collections/tasks \
287
287
  --auth bob:p4ssw0rd
288
288
 
289
289
  .. sourcecode:: http
@@ -295,7 +295,7 @@ itself, using the same :ref:`PATCH <record-patch>` and :ref:`PUT
295
295
  Connection: keep-alive
296
296
  Content-Length: 52
297
297
  Content-Type: application/json; charset=utf-8
298
- Host: demo.kinto-storage.org
298
+ Host: localhost:8888
299
299
  User-Agent: HTTPie/0.8.0
300
300
 
301
301
  {
@@ -347,7 +347,7 @@ itself, using the same :ref:`PATCH <record-patch>` and :ref:`PUT
347
347
  .. sourcecode:: bash
348
348
 
349
349
  $ echo '{"permissions": {"write": ["groups:writers"]}}' | \
350
- http PUT https://demo.kinto-storage.org/v1/buckets/default/collections/tasks \
350
+ http PUT http://localhost:8888/v1/buckets/default/collections/tasks \
351
351
  --auth bob:p4ssw0rd
352
352
 
353
353
  .. sourcecode:: http
@@ -359,7 +359,7 @@ itself, using the same :ref:`PATCH <record-patch>` and :ref:`PUT
359
359
  Connection: keep-alive
360
360
  Content-Length: 57
361
361
  Content-Type: application/json; charset=utf-8
362
- Host: demo.kinto-storage.org
362
+ Host: localhost:8888
363
363
  User-Agent: HTTPie/0.8.0
364
364
 
365
365
  {
@@ -414,7 +414,7 @@ List every permissions
414
414
 
415
415
  .. sourcecode:: bash
416
416
 
417
- $ http GET https://demo.kinto-storage.org/v1/permissions --auth bob:p4ssw0rd
417
+ $ http GET http://localhost:8888/v1/permissions --auth bob:p4ssw0rd
418
418
 
419
419
  .. sourcecode:: http
420
420
 
@@ -14,12 +14,7 @@ Changelog
14
14
  1.22 (2019-03-20)
15
15
  '''''''''''''''''
16
16
 
17
- - New ``/accounts/{user id}/validate/{validation key}`` endpoint to validate a
18
- created account when the ``account validation`` option is enabled for the
19
- accounts plugin. See :ref:`account validation <accounts-validate>` (#1973)
20
- - New ``/accounts/{user id}/reset-password`` endpoint to request a temporary
21
- reset password by email when the ``account validation`` option is enabled for
22
- the accounts plugin. See :ref:`account validation <accounts-validate>` (#1973)
17
+ - New endpoints within the ``kinto.plugins.accounts`` plugin (#1973)
23
18
 
24
19
 
25
20
  1.21 (2019-01-10)
@@ -12,7 +12,7 @@ A set of «sub commands» are available.
12
12
 
13
13
  ::
14
14
 
15
- usage: kinto [-h] {init,start,migrate,version,rebuild-quotas} ...
15
+ usage: kinto [-h] {init,start,migrate,version} ...
16
16
 
17
17
  Kinto Command-Line Interface
18
18
 
@@ -22,7 +22,7 @@ A set of «sub commands» are available.
22
22
  subcommands:
23
23
  Main Kinto CLI commands
24
24
 
25
- {init,start,migrate,version,rebuild-quotas}
25
+ {init,start,migrate,version}
26
26
  Choose and run with --help
27
27
 
28
28
 
@@ -82,34 +82,6 @@ Starts Kinto locally using a simple HTTP server.
82
82
 
83
83
  This **not** recommended for production. :ref:`See more details <run-production>`.
84
84
 
85
-
86
- Rebuild quotas
87
- --------------
88
-
89
- Recalculate the amount of storage taken up by buckets and collections
90
- and update quota records to match reality. This can be useful if
91
- you've been bitten by `bug #1226
92
- <https://github.com/Kinto/kinto/issues/1226>`_. However, this isn't
93
- intended to be a reoccurring maintenance task -- if your quota records
94
- are regularly becoming inaccurate, please file a bug!
95
-
96
- ::
97
-
98
- usage: kinto rebuild-quotas [-h] [--ini INI_FILE] [-q] [-v] [--dry-run]
99
-
100
- optional arguments:
101
- -h, --help show this help message and exit
102
- --ini INI_FILE Application configuration file
103
- -q, --quiet Show only critical errors.
104
- -v, --debug Show all messages, including debug messages.
105
- --dry-run Simulate the rebuild operation and show information
106
-
107
- For example:
108
-
109
- ::
110
-
111
- kinto rebuild-quotas --ini=config/postgresql.ini
112
-
113
85
  Flush Cache
114
86
  -----------
115
87
 
@@ -6,16 +6,6 @@ Community
6
6
 
7
7
  You can check out Kinto on GitHub at https://github.com/Kinto/kinto/.
8
8
 
9
- .. _communication_channels:
10
-
11
- Communication channels
12
- ======================
13
-
14
- * Questions tagged ``kinto`` on `Stack Overflow <http://stackoverflow.com/questions/tagged/kinto>`_.
15
- * Our `Gitter community <https://gitter.im/Kinto/kinto>`_
16
- * `The Kinto mailing list <https://mail.mozilla.org/listinfo/kinto>`_.
17
- * Some `#Kinto <https://twitter.com/search?q=%23Kinto>`_ mentions on Twitter :)
18
-
19
9
  .. _how-to-contribute:
20
10
 
21
11
  How to contribute
@@ -204,7 +194,7 @@ Before we merge a pull request, we check that it meets these guidelines:
204
194
  Hack core libraries
205
195
  -------------------
206
196
 
207
- If you want to run *Kinto* with some core libraries under development (like *Cornice*),
197
+ If you want to run *Kinto* with some core libraries under development,
208
198
  just install them from your local folder using ``pip``.
209
199
 
210
200
  For example:
@@ -212,9 +202,9 @@ For example:
212
202
  ::
213
203
 
214
204
  cd ..
215
- git clone https://github.com/mozilla-services/cornice.git
205
+ git clone https://github.com/Kinto/kinto-attachment.git
216
206
  cd kinto/
217
- .venv/bin/pip install -e ../cornice/
207
+ .venv/bin/pip install -e ../kinto-attachment/
218
208
 
219
209
 
220
210
  Functional Tests
@@ -293,4 +283,3 @@ Step 3
293
283
 
294
284
  - Check that the version in ReadTheDocs was published
295
285
  - Check that a Pypi package was published
296
- - Tweet about it!
@@ -121,7 +121,7 @@ Technical Architecture
121
121
  Every concept of bucket, group, collection or record is a REST
122
122
  *resource* and behaves according to the conventions of a resource.
123
123
 
124
- *Kinto* relies on `Cornice <https://cornice.readthedocs.io>`_ and `Pyramid <https://pyramid.readthedocs.io>`_
124
+ *Kinto* relies on `Pyramid <https://pyramid.readthedocs.io>`_
125
125
  to implement the endpoints and HTTP request/response handling.
126
126
 
127
127
  .. image:: images/architecture.svg
@@ -109,7 +109,7 @@ nitpick_ignore = [
109
109
  ("py:class", "str"),
110
110
  ("py:class", "tuple"),
111
111
  ("py:class", "Exception"),
112
- ("py:class", "cornice.Service"),
112
+ ("py:class", "kinto.core.cornice.Service"),
113
113
  # Member autodoc fails with those:
114
114
  # kinto.core.resource.schema
115
115
  ("py:class", "Integer"),
@@ -163,7 +163,6 @@ def setup(app):
163
163
 
164
164
  intersphinx_mapping = {
165
165
  "colander": ("https://colander.readthedocs.io/en/latest/", None),
166
- "cornice": ("https://cornice.readthedocs.io/en/latest/", None),
167
166
  "pyramid": ("https://pyramid.readthedocs.io/en/latest/", None),
168
167
  }
169
168
 
@@ -181,26 +181,6 @@ Using Amazon RDS
181
181
  * Use Route53 for loadbalancing
182
182
 
183
183
 
184
- Authentication service
185
- ======================
186
-
187
- Each request contains an ``Authorization`` header that needs to be verified by the authentication service.
188
-
189
- In the case of Mozilla, *Kinto* is plugged with the *Firefox Accounts* OAuth service.
190
-
191
-
192
- Fail safe
193
- ---------
194
-
195
- With the *Firefox Accounts* policy, token verifications are cached for an amount of time.
196
-
197
- .. code-block:: ini
198
-
199
- fxa-oauth.cache_ttl_seconds = 300 # 5 minutes
200
-
201
- If the remote service is down, the cache will allow the authentication of known token for a while. However new tokens will generate a 401 or 503 error response.
202
-
203
-
204
184
  Scheduled down time
205
185
  ===================
206
186
 
@@ -257,10 +237,10 @@ always remains the same.
257
237
  At the database level
258
238
  ----------------------
259
239
 
260
- PostgreSQL and Redis have sharding support built-in.
240
+ PostgreSQL has sharding support built-in.
261
241
 
262
242
  The right database node is chosen based on some elements of the data query
263
- (most probably bucket or collection id) and partionning is then performed
243
+ (most probably bucket or collection id) and partioning is then performed
264
244
  automatically.
265
245
 
266
246
  As an example, see `pgPool <http://www.pgpool.net/mediawiki/index.php/Main_Page>`_