| Age | Commit message (Collapse) | Author |
|
|
|
key prefixes. Allows settings prefixes other than "mako." to be used to
create different factories that don't use the global mako settings. This
will be useful for the debug toolbar, which can currently be sabotaged by
someone using custom mako configuration settings.
|
|
lines in order to be able to tell people to comment out only the
``pyramid_debugtoolbar`` line when they want to disable the toolbar.
|
|
--------
- Add ``pyramid.config.Configurator.add_resource_url_adapter`` API method.
See the Hooks narrative documentation section entitled "Changing How
pyramid.request.Request.resource_url Generates a URL" for more information.
This is not a new feature, it just provides an API for adding a resource
url adapter without needing to use the ZCA API.
- A new interface was added: ``pyramid.interfaces.IResourceURL``. An adapter
implementing its interface can be used to override resource URL generation
when ``request.resource_url`` is called. This interface replaces the
now-deprecated ``pyramid.interfaces.IContextURL`` interface.
- The dictionary passed to a resource's ``__resource_url__`` method (see
"Overriding Resource URL Generation" in the "Resources" chapter) now
contains an ``app_url`` key, representing the application URL generated
during ``request.resource_url``. It represents a potentially customized
URL prefix, containing potentially custom scheme, host and port information
passed by the user to ``request.resource_url``. It should be used instead
of ``request.application_url`` where necessary.
- The ``request.resource_url`` API now accepts these arguments: ``app_url``,
``scheme``, ``host``, and ``port``. The app_url argument can be used to
replace the URL prefix wholesale during url generation. The ``scheme``,
``host``, and ``port`` arguments can be used to replace the respective
default values of ``request.application_url`` partially.
- A new API named ``request.resource_path`` now exists. It works like
``request.resource_url`` but produces a relative URL rather than an
absolute one.
- The ``request.route_url`` API now accepts these arguments: ``_app_url``,
``_scheme``, ``_host``, and ``_port``. The ``_app_url`` argument can be
used to replace the URL prefix wholesale during url generation. The
``_scheme``, ``_host``, and ``_port`` arguments can be used to replace the
respective default values of ``request.application_url`` partially.
Backwards Incompatibilities
---------------------------
- The ``pyramid.interfaces.IContextURL`` interface has been deprecated.
People have been instructed to use this to register a resource url adapter
in the "Hooks" chapter to use to influence ``request.resource_url`` URL
generation for resources found via custom traversers since Pyramid 1.0.
The interface still exists and registering such an adapter still works, but
this interface will be removed from the software after a few major Pyramid
releases. You should replace it with an equivalent
``pyramid.interfaces.IResourceURL`` adapter, registered using the new
``pyramid.config.Configurator.add_resource_url_adapter`` API. A
deprecation warning is now emitted when a
``pyramid.interfaces.IContextURL`` adapter is found when
``request.resource_url`` is called.
Misc
----
- Change ``set_traverser`` API name to ``add_traverser``.
Ref #438.
|
|
passing something named r, and a template may depend on its existence or nonexistence to conditionalize rendering a bit of html.
|
|
|
|
``request``. This means that you can now, for example, in a template, do
``r.route_url(...)`` instead of ``request.route_url(...)``.
Fixes #413.
|
|
Hooks narrative documentation section entitled "Changing the Traverser" for
more information. This is not a new feature, it just provides an API for
adding a traverser without needing to use the ZCA API.
|
|
``DBSession`` instead (this is more common in real SQLA apps).
|
|
This is not permitted due to error reporting requirements, and a better
error message is shown when it is attempted. Previously it would fail with
something like "AttributeError: 'NoneType' object has no attribute
'rfind'".
Fixed #420.
|
|
converted to a response (for example, when a view callable returns a
dictionary without a renderer defined, or doesn't return any value at all).
The error message now contains information about the view callable itself
as well as the result of calling it.
|
|
--------
- The ``scan`` method of a ``Configurator`` can be passed an ``ignore``
argument, which can be a string, a callable, or a list consisting of
strings and/or callables. This feature allows submodules, subpackages, and
global objects from being scanned. See
http://readthedocs.org/docs/venusian/en/latest/#ignore-scan-argument for
more information about how to use the ``ignore`` argument to ``scan``.
Dependencies
------------
- Depend on ``venusian`` >= 1.0a3 to provide scan ``ignore`` support.
|
|
|
|
|
|
allowing them to find their way into resolveConflicts).
|
|
|
|
``includeme``. See https://github.com/Pylons/pyramid/pull/392.
Closes #392.
|
|
|
|
return HTML or text. See https://github.com/Pylons/pyramid/issues/381
Fixes #381.
|
|
flag when the ``development.ini`` file (any any other .ini file in use) is
changed. See https://github.com/Pylons/pyramid/issues/377 and
https://github.com/Pylons/pyramid/pull/411
Fixes #377.
|
|
|
|
|
|
``Configurator.add_view`` that pointed to a class with a ``view_defaults``
decorator, the view defaults would not be applied. See
https://github.com/Pylons/pyramid/issues/396 .
Fixes #396.
|
|
|
|
a ``wsgi.file_wrapper`` (see
http://www.python.org/dev/peps/pep-0333/#optional-platform-specific-file-handling)
when one is provided by the web server.
|
|
|
|
|
|
``request.upath_info`` (Unicode) rather than ``request.path_info``
(indeterminate value based on Python 3 vs. Python 2). This has to be done
to normalize matching on Python 2 and Python 3.
|
|
more than one view relied on the defaults being different for configuration
conflict resolution. See https://github.com/Pylons/pyramid/issues/394.
Closes #394.
|
|
|
|
|
|
config.add_route('trav_route', 'traversal/{traverse:.*}')
Would cause a ``UnicodeDecodeError`` when the route was matched and the
matched portion of the URL contained any high-order characters. See also
https://github.com/Pylons/pyramid/issues/385 .
|
|
|
|
as a decorator with no arguments like this::
@subscriber()
def somefunc(event):
pass
Would register ``somefunc`` to receive all events sent via the registry,
but this was untrue. Instead, it would receive no events at all. This has
now been fixed and the code matches the documentation. See also
https://github.com/Pylons/pyramid/issues/386
Closes #386
|
|
|
|
|
|
|
|
e.g. ``adapters.lookup(...).__discriminator__(context, request)``. It will
be used by superdynamic systems that require the discriminator to be used
for introspection after manual view lookup.
|
|
docs. It survives on in the Cookbook
(http://docs.pylonsproject.org/projects/pyramid_cookbook/en/latest/gae.html).
Rationale: it provides the correct info for the Python 2.5 version of GAE
only, and this version of Pyramid does not support Python 2.5.
|
|
"Command-Line Pyramid" chapter.
|
|
(``pviews``, ``proutes``, etc).
|
|
|
|
|
|
want to have extension scaffolds that can work across Pyramid 1.0.X, 1.1.X,
1.2.X and 1.3.X. See the new "Creating Pyramid Scaffolds" chapter in the
narrative documentation for more info.
- Added an API docs chapter for ``pyramid.scaffolds``.
- Added a narrative docs chapter named "Creating Pyramid Scaffolds".
- The ``template_renderer`` method of ``pyramid.scaffolds.PyramidScaffold``
was renamed to ``render_template``. If you were overriding it, you're a
bad person, because it wasn't an API before now. But we're nice so we're
letting you know.
|
|
handling of --list-templates
|
|
whatsnew.
|
|
|
|
``pyramid.path.DottedNameResolver``. The former can be used to resolve
asset specifications, the latter can be used to resolve dotted names to
modules or packages.
|
|
|
|
|