Permalink
Browse files

Merge branch 'master' into pcreate-to-cookiecutter

  • Loading branch information...
2 parents 760cf2c + 6421f4c commit 884bcdc628e7144abf8e1cd1cde1ed3019e7e699 @stevepiercy stevepiercy committed on GitHub Dec 13, 2016
Showing with 3,004 additions and 1,468 deletions.
  1. +4 −1 .travis.yml
  2. +85 −1 CHANGES.txt
  3. +128 −109 HACKING.txt
  4. +2 −2 RELEASING.txt
  5. +1 −7 TODO.txt
  6. +7 −0 appveyor.yml
  7. +1 −0 docs/api/i18n.rst
  8. +9 −4 docs/conf.py
  9. +0 −107 docs/conventions.rst
  10. +4 −3 docs/index.rst
  11. +1 −1 docs/latexindex.rst
  12. +16 −8 docs/narr/hooks.rst
  13. +1 −1 docs/narr/install.rst
  14. +1 −1 docs/narr/introduction.rst
  15. +42 −0 docs/narr/project.rst
  16. +9 −0 docs/narr/sessions.rst
  17. +5 −3 docs/narr/viewconfig.rst
  18. +9 −9 docs/quick_tour.rst
  19. +3 −3 docs/quick_tutorial/requirements.rst
  20. +1,258 −0 docs/style-guide.rst
  21. +38 −3 docs/tutorials/wiki/authorization.rst
  22. +1 −0 docs/tutorials/wiki/definingviews.rst
  23. +5 −4 docs/tutorials/wiki/installation.rst
  24. +1 −0 docs/tutorials/wiki/src/authorization/setup.py
  25. +15 −2 docs/tutorials/wiki/src/authorization/tutorial/security.py
  26. +2 −2 docs/tutorials/wiki/src/authorization/tutorial/views.py
  27. +1 −0 docs/tutorials/wiki/src/tests/setup.py
  28. +15 −2 docs/tutorials/wiki/src/tests/tutorial/security.py
  29. +11 −0 docs/tutorials/wiki/src/tests/tutorial/tests.py
  30. +2 −2 docs/tutorials/wiki/src/tests/tutorial/views.py
  31. +5 −4 docs/tutorials/wiki2/installation.rst
  32. +1 −0 docs/tutorials/wiki2/src/tests/tutorial/scripts/initializedb.py
  33. +12 −0 docs/tutorials/wiki2/src/tests/tutorial/tests/test_functional.py
  34. +20 −0 docs/tutorials/wiki2/src/tests/tutorial/tests/test_initdb.py
  35. +21 −0 docs/tutorials/wiki2/src/tests/tutorial/tests/test_security.py
  36. +67 −0 docs/tutorials/wiki2/src/tests/tutorial/tests/test_user_model.py
  37. +338 −0 docs/typographical-conventions.rst
  38. +1 −1 docs/whatsnew-1.7.rst
  39. +1 −1 pyramid/asset.py
  40. +2 −301 pyramid/config/predicates.py
  41. +4 −6 pyramid/config/routes.py
  42. +18 −3 pyramid/config/security.py
  43. +53 −118 pyramid/config/settings.py
  44. +1 −1 pyramid/config/tweens.py
  45. +1 −14 pyramid/config/util.py
  46. +8 −6 pyramid/config/views.py
  47. +1 −1 pyramid/httpexceptions.py
  48. +11 −1 pyramid/i18n.py
  49. +1 −0 pyramid/interfaces.py
  50. +1 −26 pyramid/paster.py
  51. +300 −0 pyramid/predicates.py
  52. +1 −1 pyramid/renderers.py
  53. +15 −10 pyramid/response.py
  54. +16 −10 pyramid/scripts/common.py
  55. +15 −3 pyramid/scripts/pcreate.py
  56. +2 −1 pyramid/scripts/prequest.py
  57. +88 −472 pyramid/scripts/pserve.py
  58. +1 −2 pyramid/scripts/pshell.py
  59. +3 −3 pyramid/session.py
  60. +11 −6 pyramid/static.py
  61. +5 −1 pyramid/tests/test_config/test_security.py
  62. +19 −20 pyramid/tests/test_config/test_settings.py
  63. +10 −1 pyramid/tests/test_config/test_util.py
  64. +2 −2 pyramid/tests/test_config/test_views.py
  65. +1 −1 pyramid/tests/test_httpexceptions.py
  66. +30 −0 pyramid/tests/test_i18n.py
  67. +11 −11 pyramid/tests/{test_config → }/test_predicates.py
  68. +5 −3 pyramid/tests/test_scripts/dummy.py
  69. +0 −30 pyramid/tests/test_scripts/test_common.py
  70. +21 −0 pyramid/tests/test_scripts/test_pcreate.py
  71. +29 −14 pyramid/tests/test_scripts/test_prequest.py
  72. +24 −77 pyramid/tests/test_scripts/test_pserve.py
  73. +2 −10 pyramid/tests/test_static.py
  74. +11 −1 pyramid/tests/test_traversal.py
  75. +4 −0 pyramid/tests/test_urldispatch.py
  76. +28 −0 pyramid/tests/test_viewderivers.py
  77. +5 −2 pyramid/traversal.py
  78. +7 −6 pyramid/url.py
  79. +8 −3 pyramid/urldispatch.py
  80. +14 −3 pyramid/util.py
  81. +6 −1 pyramid/viewderivers.py
  82. +0 −1 scaffoldtests.sh
  83. +47 −1 setup.cfg
  84. +13 −9 setup.py
  85. +6 −5 tox.ini
View
@@ -18,10 +18,13 @@ matrix:
env: TOXENV=docs
- python: 3.5
env: TOXENV=pep8
- - python: nightly
+ - python: 3.6-dev
env: TOXENV=py36
+ - python: nightly
+ env: TOXENV=py37
allow_failures:
- env: TOXENV=py36
+ - env: TOXENV=py37
install:
- travis_retry pip install tox
View
@@ -16,15 +16,39 @@ Backward Incompatibilities
See https://github.com/Pylons/pyramid/pull/2615
-- ``pcreate`` is now interactive by default. You will be prompted if it
+- ``pcreate`` is now interactive by default. You will be prompted if
a file already exists with different content. Previously if there were
similar files it would silently skip them unless you specified
``--interactive`` or ``--overwrite``.
See https://github.com/Pylons/pyramid/pull/2775
+- Removed undocumented argument ``cachebust_match`` from
+ ``pyramid.static.static_view``. This argument was shipped accidentally
+ in Pyramid 1.6. See https://github.com/Pylons/pyramid/pull/2681
+
+- Change static view to avoid setting the ``Content-Encoding`` response header
+ to an encoding guessed using Python's ``mimetypes`` module. This was causing
+ clients to decode the content of gzipped files when downloading them. The
+ client would end up with a ``foo.txt.gz`` file on disk that was already
+ decoded, thus should really be ``foo.txt``. Also, the ``Content-Encoding``
+ should only have been used if the client itself broadcast support for the
+ encoding via ``Accept-Encoding`` request headers.
+ See https://github.com/Pylons/pyramid/pull/2810
+
+- Settings are no longer accessible as attributes on the settings object
+ (e.g. ``request.registry.settings.foo``). This was deprecated in Pyramid 1.2.
+ See https://github.com/Pylons/pyramid/pull/2823
+
Features
--------
+- Python 3.6 compatibility.
+ https://github.com/Pylons/pyramid/issues/2835
+
+- pcreate learned about --package-name to allow you to create a new project in
+ an existing folder with a different package name than the project name. See
+ https://github.com/Pylons/pyramid/pull/2783
+
- The `_get_credentials` private method of `BasicAuthAuthenticationPolicy`
has been extracted into standalone function ``extract_http_basic_credentials`
in `pyramid.authentication` module, this function extracts HTTP Basic
@@ -58,6 +82,53 @@ Features
- the pipeline can be optimized at config-time.
See https://github.com/Pylons/pyramid/pull/2660
+- ``pserve`` should now work with ``gevent`` and other workers that need
+ to monkeypatch the process, assuming the server and / or the app do so
+ as soon as possible before importing the rest of pyramid.
+ See https://github.com/Pylons/pyramid/pull/2797
+
+- Pyramid no longer copies the settings object passed to the
+ ``pyramid.config.Configurator(settings=)``. The original ``dict`` is kept.
+ See https://github.com/Pylons/pyramid/pull/2823
+
+- The csrf trusted origins setting may now be a whitespace-separated list of
+ domains. Previously only a python list was allowed. Also, it can now be set
+ using the ``PYRAMID_CSRF_TRUSTED_ORIGINS`` environment variable similar to
+ other settings. See https://github.com/Pylons/pyramid/pull/2823
+
+- ``pserve --reload`` now uses the
+ `hupper <http://docs.pylonsproject.org/projects/hupper/en/latest/>`
+ library to monitor file changes. This comes with many improvements:
+
+ - If the `watchdog <http://pythonhosted.org/watchdog/>`_ package is
+ installed then monitoring will be done using inotify instead of
+ cpu and disk-intensive polling.
+
+ - The monitor is now a separate process that will not crash and starts up
+ before any of your code.
+
+ - The monitor will not restart the process after a crash until a file is
+ saved.
+
+ - The monitor works on windows.
+
+ - You can now trigger a reload manually from a pyramid view or any other
+ code via ``hupper.get_reloader().trigger_reload()``. Kind of neat.
+
+ - You can trigger a reload by issuing a ``SIGHUP`` to the monitor process.
+
+ See https://github.com/Pylons/pyramid/pull/2805
+
+- A new ``[pserve]`` section is supported in your config files with a
+ ``watch_files`` key that can configure ``pserve --reload`` to monitor custom
+ file paths. See https://github.com/Pylons/pyramid/pull/2827
+
+- Allow streaming responses to be made from subclasses of
+ ``pyramid.httpexceptions.HTTPException``. Previously the response would
+ be unrolled while testing for a body, making it impossible to stream
+ a response.
+ See https://github.com/Pylons/pyramid/pull/2863
+
Bug Fixes
---------
@@ -88,11 +159,24 @@ Bug Fixes
from previous orders have executed.
See https://github.com/Pylons/pyramid/pull/2757
+- Fix bug in i18n where the default domain would always use the Germanic plural
+ style, even if a different plural function is defined in the relevant
+ messages file. See https://github.com/Pylons/pyramid/pull/2859
+
Deprecations
------------
Documentation Changes
---------------------
+- Replace Typographical Conventions with an enhanced Style Guide.
+ https://github.com/Pylons/pyramid/pull/2838
+
+- Add pyramid_nacl_session to session factories.
+ See https://github.com/Pylons/pyramid/issues/2791
+
+- Update HACKING.txt from stale branch that was never merged to master.
+ See https://github.com/Pylons/pyramid/pull/2782
+
- Updated Windows installation instructions and related bits.
See https://github.com/Pylons/pyramid/issues/2661
Oops, something went wrong.

0 comments on commit 884bcdc

Please sign in to comment.