From ec0c5cae96a57b8f3b57f18a870c8d91adc56cd8 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Mon, 9 Sep 2013 19:44:40 -0400 Subject: add note about requiring a later pyramid_debugtoolbar package if you use 1.5a2+ --- CHANGES.txt | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 5cfd5e70d..cdbeeffa3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -51,6 +51,11 @@ Backwards Incompatibilities result = pyramid.renderers.render('mypkg:templates/home.mako', {}) + Note that if you're using the Pyramid debug toolbar, when you upgrade + Pyramid, you'll also need to upgrade the ``pyramid_debugtoolbar`` package to + at least version 1.0.8, as older versions are not compatible with Pyramid + 1.5a2+. + - Removed the ``request.response_*`` varying attributes. These attributes have been deprecated since Pyramid 1.1, and as per the deprecation policy, have now been removed. -- cgit v1.2.3 From f8be30b706e7b735b1ea419fbd9899dd2b5c7d27 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Mon, 9 Sep 2013 20:04:29 -0400 Subject: wording --- CHANGES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index cdbeeffa3..41549fbe5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -54,7 +54,7 @@ Backwards Incompatibilities Note that if you're using the Pyramid debug toolbar, when you upgrade Pyramid, you'll also need to upgrade the ``pyramid_debugtoolbar`` package to at least version 1.0.8, as older versions are not compatible with Pyramid - 1.5a2+. + 1.5a2+ due to this change. - Removed the ``request.response_*`` varying attributes. These attributes have been deprecated since Pyramid 1.1, and as per the deprecation policy, -- cgit v1.2.3 From 75f3857c811c61b9461c6ba31e8147e403bf80e6 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Mon, 9 Sep 2013 21:54:41 -0400 Subject: - The ``pyramid.config.Configurator.set_request_property`` method now issues a deprecation warning when used. It had been docs-deprecated in 1.4 but did not issue a deprecation warning when used. --- CHANGES.txt | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 41549fbe5..5976a326f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -117,6 +117,13 @@ Backwards Incompatibilities Pyramid narrative documentation instead of providing renderer globals values to the configurator. +Deprecations +------------ + +- The ``pyramid.config.Configurator.set_request_property`` method now issues + a deprecation warning when used. It had been docs-deprecated in 1.4 + but did not issue a deprecation warning when used. + 1.5a1 (2013-08-30) ================== -- cgit v1.2.3 From bb6e929288eb7e36173adbf9b28a2062caf9af71 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Wed, 11 Sep 2013 00:55:39 -0400 Subject: wording --- CHANGES.txt | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 5976a326f..0f04587ee 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -18,11 +18,12 @@ Bug Fixes Backwards Incompatibilities --------------------------- -- Pyramid has dropped native support for the Mako and Chameleon renderers. To - re-add support for these renderers into existing projects there are 3 steps: +- Pyramid has dropped native support for the Mako and Chameleon templating + system renderers. To re-add support for these renderers into your existing + projects, there are 3 steps: - - Add `pyramid_mako` and/or `pyramid_chameleon` as dependencies by - adding them to the `install_requires` section of the package's `setup.py`:: + - Add ``pyramid_mako`` and/or ``pyramid_chameleon`` as dependencies by + adding them to the `install_requires` section of your package's `setup.py`:: setup( #... @@ -34,8 +35,8 @@ Backwards Incompatibilities ], ) - - Update instances of the ``pyramid.config.Configurator`` to include the - required addons:: + - Update instances of the ``pyramid.config.Configurator`` to ``include`` the + one or the other (or both) required addons:: config.include('pyramid_chameleon') config.include('pyramid_mako') @@ -67,10 +68,6 @@ Backwards Incompatibilities only necessary when the renderer is generating a response; it was a bug when it was done as a side effect of calling ``pyramid.renderers.render()``. -- The Mako and Chameleon renderers have been removed from Pyramid. Their - functionality has been moved to the ``pyramid_mako`` and - ``pyramid_chameleon`` distributions respectively. - - Removed the ``bfg2pyramid`` fixer script. - The ``pyramid.events.NewResponse`` event is now sent **after** response -- cgit v1.2.3 From 6c42933074f9d2be3be10e9408d7c934541b337a Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Sun, 22 Sep 2013 13:30:54 -0400 Subject: typo --- CHANGES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 0f04587ee..bc094bdd8 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -84,7 +84,7 @@ Backwards Incompatibilities instead. - Removed the ability to pass the following arguments to - ``pyramid.config.Configurator.add_route``: `view``, ``view_context``. + ``pyramid.config.Configurator.add_route``: ``view``, ``view_context``. ``view_for``, ``view_permission``, ``view_renderer``, and ``view_attr``. Using these arguments had been deprecated since Pyramid 1.1. Instead of passing view-related arguments to ``add_route``, use a separate call to -- cgit v1.2.3 From 0778eeab0d758deba3876db9026536863218bda8 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Sun, 22 Sep 2013 13:42:34 -0400 Subject: better description of mako/chameleon bw incompat in changelog, update whatsnew for 1.5 --- CHANGES.txt | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 103 insertions(+), 21 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index bc094bdd8..add6df7bd 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -18,44 +18,126 @@ Bug Fixes Backwards Incompatibilities --------------------------- -- Pyramid has dropped native support for the Mako and Chameleon templating - system renderers. To re-add support for these renderers into your existing - projects, there are 3 steps: +- Pyramid no longer depends on or configures the Mako and Chameleon templating + system renderers by default. Disincluding these templating systems by + default means that the Pyramid core has fewer dependencies and can run on + future platforms without immediate concern for the compatibility of its + templating add-ons. It also makes maintenance slightly more effective, as + different people can maintain the templating system add-ons that they + understand and care about without needing commit access to the Pyramid core, + and it allows users who just don't want to see any packages they don't use + come along for the ride when they install Pyramid. - - Add ``pyramid_mako`` and/or ``pyramid_chameleon`` as dependencies by - adding them to the `install_requires` section of your package's `setup.py`:: + This means that upon upgrading to Pyramid 1.5a2+, projects that use either + of these templating systems will see a traceback that ends something like + this when their application attempts to render a Chameleon or Mako template:: + + ValueError: No such renderer factory .pt + + Or:: + + ValueError: No such renderer factory .mako + + Or:: + + ValueError: No such renderer factory .mak + + Support for Mako templating has been moved into an add-on package named + ``pyramid_mako``, and support for Chameleon templating has been moved into + an add-on package named ``pyramid_chameleon``. These packages are drop-in + replacements for the old built-in support for these templating langauges. + All you have to do is install them and make them active in your configuration + to register renderer factories for ``.pt`` and/or ``.mako`` (or ``.mak``) to + make your application work again. + + To re-add support for Chameleon and/or Mako template renderers into your + existing projects, follow the below steps. + + If you depend on Mako templates: + + * Make sure the ``pyramid_mako`` package is installed. One way to do this + is by adding ``pyramid_mako`` to the ``install_requires`` section of your + package's ``setup.py`` file and afterwards rerunning ``setup.py develop``:: setup( #... install_requires=[ 'pyramid_mako', # new dependency - 'pyramid_chameleon', # new dependency 'pyramid', #... ], ) - - Update instances of the ``pyramid.config.Configurator`` to ``include`` the - one or the other (or both) required addons:: + * Within the portion of your application which instantiates a Pyramid + ``pyramid.config.Configurator`` (often the ``main()`` function in + your project's ``__init__.py`` file), tell Pyramid to include the + ``pyramid_mako`` includeme:: - config.include('pyramid_chameleon') + config = Configurator(.....) config.include('pyramid_mako') - - If any unit tests are invoking either ``pyramid.renderers.render()`` or - ``pyramid.renderers.render_to_response()`` with either Mako or Chameleon - templates then the ``pyramid.config.Configurator`` instance at the root of - the unit test should be also be updated to include the addons, as shown - above. For example:: + If you depend on Chameleon templates: - config = pyramid.testing.setUp() - config.include('pyramid_mako') + * Make sure the ``pyramid_chameleon`` package is installed. One way to do + this is by adding ``pyramid_chameleon`` to the ``install_requires`` section + of your package's ``setup.py`` file and afterwards rerunning + ``setup.py develop``:: - result = pyramid.renderers.render('mypkg:templates/home.mako', {}) + setup( + #... + install_requires=[ + 'pyramid_chameleon', # new dependency + 'pyramid', + #... + ], + ) + + * Within the portion of your application which instantiates a Pyramid + ``~pyramid.config.Configurator`` (often the ``main()`` function in + your project's ``__init__.py`` file), tell Pyramid to include the + ``pyramid_chameleon`` includeme:: + + config = Configurator(.....) + config.include('pyramid_chameleon') - Note that if you're using the Pyramid debug toolbar, when you upgrade - Pyramid, you'll also need to upgrade the ``pyramid_debugtoolbar`` package to - at least version 1.0.8, as older versions are not compatible with Pyramid - 1.5a2+ due to this change. + Note that it's also fine to install these packages into *older* Pyramids for + forward compatibility purposes. Even if you don't upgrade to Pyramid 1.5 + immediately, performing the above steps in a Pyramid 1.4 installation is + perfectly fine, won't cause any difference, and will give you forward + compatibility when you eventually do upgrade to Pyramid 1.5. + + With the removal of Mako and Chameleon support from the core, some + unit tests that use the ``pyramid.renderers.render*`` methods may begin to + fail. If any of your unit tests are invoking either + ``pyramid.renderers.render()`` or ``pyramid.renderers.render_to_response()`` + with either Mako or Chameleon templates then the + ``pyramid.config.Configurator`` instance in effect during + the unit test should be also be updated to include the addons, as shown + above. For example:: + + class ATest(unittest.TestCase): + def setUp(self): + self.config = pyramid.testing.setUp() + self.config.include('pyramid_mako') + + def test_it(self): + result = pyramid.renderers.render('mypkg:templates/home.mako', {}) + + Or:: + + class ATest(unittest.TestCase): + def setUp(self): + self.config = pyramid.testing.setUp() + self.config.include('pyramid_chameleon') + + def test_it(self): + result = pyramid.renderers.render('mypkg:templates/home.pt', {}) + +- If you're using the Pyramid debug toolbar, when you upgrade Pyramid to + 1.5a2+, you'll also need to upgrade the ``pyramid_debugtoolbar`` package to + at least version 1.0.8, as older toolbar versions are not compatible with + Pyramid 1.5a2+ due to the removal of Mako support from the core. It's + fine to use this newer version of the toolbar code with older Pyramids too. - Removed the ``request.response_*`` varying attributes. These attributes have been deprecated since Pyramid 1.1, and as per the deprecation policy, -- cgit v1.2.3 From 78b41e570f69f054a51cd3f32432b92b261ed268 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Sun, 22 Sep 2013 14:11:45 -0400 Subject: prep for 1.5a2 --- CHANGES.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index add6df7bd..8295a98c9 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,5 +1,5 @@ -Next Release -============ +1.5a2 (2013-09-22) +================== Features -------- -- cgit v1.2.3 From 5e8eadb86aeede3c7c27d77a1be4c4d23c951252 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Sun, 22 Sep 2013 14:34:10 -0400 Subject: fix rst rendering of changes --- CHANGES.txt | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 8295a98c9..4c9ba4863 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -247,7 +247,7 @@ Features The above example will ensure that the view is called if the request method is not POST (at least if no other view is more specific). - The :class:`pyramid.config.not_` class can be used against any value that is + The ``pyramid.config.not_`` class can be used against any value that is a predicate value passed in any of these contexts: - ``pyramid.config.Configurator.add_view`` @@ -316,9 +316,7 @@ Features In the past, only the most specific type containing views would be checked and if no matching view could be found then a PredicateMismatch would be raised. Now predicate mismatches don't hide valid views registered on - super-types. Here's an example that now works: - - .. code-block:: python + super-types. Here's an example that now works:: class IResource(Interface): -- cgit v1.2.3 From 5065a519d9e2cd59577840ceb9bf35987c3d99fd Mon Sep 17 00:00:00 2001 From: Paul Everitt Date: Tue, 24 Sep 2013 07:37:40 -0400 Subject: Added a note to CHANGES.txt, push the quick tutorial. --- CHANGES.txt | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 4c9ba4863..8b2210a99 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,11 @@ +Unreleased +========== + +Documentation +------------- + +- Added a "Quick Tutorial" to go with the Quick Tour + 1.5a2 (2013-09-22) ================== -- cgit v1.2.3 From 073e5247f4adf68fe96423d6669b437dc6f337a8 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Tue, 1 Oct 2013 21:43:36 -0400 Subject: - Fix the ``pcreate`` script so that when the target directory name ends with a slash it does not produce a non-working project directory structure. Previously saying ``pcreate -s starter /foo/bar/`` produced different output than saying ``pcreate -s starter /foo/bar``. The former did not work properly. --- CHANGES.txt | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 8b2210a99..34e722fd6 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,6 +1,15 @@ Unreleased ========== +Bug Fixes +--------- + +- Fix the ``pcreate`` script so that when the target directory name ends with a + slash it does not produce a non-working project directory structure. + Previously saying ``pcreate -s starter /foo/bar/`` produced different output + than saying ``pcreate -s starter /foo/bar``. The former did not work + properly. + Documentation ------------- -- cgit v1.2.3 From 678f49d2e08b128785e32ed6fc9e12df4713ad7c Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Tue, 1 Oct 2013 22:10:36 -0400 Subject: - Fix the ``principals_allowed_by_permission`` method of ``ACLAuthorizationPolicy`` so it anticipates a callable ``__acl__`` on resources. Previously it did not try to call the ``__acl__`` if it was callable. --- CHANGES.txt | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 34e722fd6..880f7a3f3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -10,6 +10,11 @@ Bug Fixes than saying ``pcreate -s starter /foo/bar``. The former did not work properly. +- Fix the ``principals_allowed_by_permission`` method of + ``ACLAuthorizationPolicy`` so it anticipates a callable ``__acl__`` + on resources. Previously it did not try to call the ``__acl__`` + if it was callable. + Documentation ------------- -- cgit v1.2.3 From 66be39bf656a2840931603bc959e38ff95e53164 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Wed, 2 Oct 2013 15:35:24 -0400 Subject: - Removed mention of ``pyramid_beaker`` from docs. Beaker is no longer maintained. Point people at ``pyramid_redis_sessions`` instead. --- CHANGES.txt | 3 +++ 1 file changed, 3 insertions(+) (limited to 'CHANGES.txt') diff --git a/CHANGES.txt b/CHANGES.txt index 880f7a3f3..cb28d880b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -20,6 +20,9 @@ Documentation - Added a "Quick Tutorial" to go with the Quick Tour +- Removed mention of ``pyramid_beaker`` from docs. Beaker is no longer + maintained. Point people at ``pyramid_redis_sessions`` instead. + 1.5a2 (2013-09-22) ================== -- cgit v1.2.3