summaryrefslogtreecommitdiff
path: root/pyramid
AgeCommit message (Collapse)Author
2015-04-26allow dots in the jsonp callback and prefix content with a commentMichael Merickel
The comment prefix should potential exploints from flash plugins (See CVE-2014-4671 "Rosetta Flash").
2015-04-20update development.ini in scaffolds to listen on 127.0.0.1Michael Merickel
2015-04-19Merge pull request #1627 from bertjwregeer/security/jsonpMichael Merickel
Add some validation for the JSONP callback
2015-04-19Merge branch 'pr/1571'Michael Merickel
2015-04-17default response_callback and finished_callback to an empty deque instead of ↵Michael Merickel
None fixes #1600
2015-04-15Restore request.response if renderer raises exceptionJeff Dairiki
This fixes two bugs in the ``temporary_response`` context manager: - ``Request.response`` should be restored even if the renderer raises an exception - If ``request.response`` is initially set to ``None``, it should be restored to ``None`` (rather than deleted). References: #1563
2015-04-15Add tests for temporary_response context managerJeff Dairiki
These tests test for, among other things, the nits described in comments on #1563, namely: - ``Request.response`` should be restored even if the renderer raises an exception - If ``request.response`` is initially set to ``None``, it should be restored to ``None`` (rather than deleted). (Some of these tests currently fail.)
2015-04-14Add some validation for the JSONP callbackBert JW Regeer
The callback variable could be used to arbitrarily inject javascript into the response object. This validates that the callback doesn't begin with a number and is standard US ASCII characters, because trying to make sure the JavaScript function name is actually valid would require parsing JavaScript itself...
2015-04-13Ignore more pep8 checks and add to travisJohn Anderson
2015-04-13Merge branch 'master' of https://github.com/Pylons/pyramid into start_pep8John Anderson
Conflicts: pyramid/view.py
2015-04-13make it possible to run scaffold functests using toxChris McDonough
2015-04-12omg how embarrassing, forgot to run tests before merging the request ↵Chris McDonough
subclass fix branch
2015-04-12merge master back into this PR branchChris McDonough
2015-04-06Merge branch 'fix.view-lookup'Chris McDonough
2015-04-06change excview_tween to use _call_view instead of adapters.lookup; ↵Chris McDonough
parameterize _call_view and _find_views to cope
2015-04-06add comment about not changing view_execution_permitted use of .lookup for ↵Chris McDonough
view finding
2015-04-06convert render_view_to_response to use _call_viewChris McDonough
2015-04-06break out _call_view into separate importable callable for use in scriptsChris McDonough
2015-04-06use _find_views instead of lookup in proutesChris McDonough
2015-04-06unused importsChris McDonough
2015-04-06use _find_views in pviewsChris McDonough
2015-04-03no need to iter() the resultChris McDonough
2015-04-03cache view lookups; see #1557Chris McDonough
2015-03-15add docs to notfound_view_config decorator code, expand docs to inlcude an ↵Chris McDonough
example
2015-03-15Allow passing a custom redirect class for appending slashesDonald Stufft
2015-03-13fix comment in forbidden_view_configJunya Hayashi
2015-03-11fix merge conflicts after merging master to fix.view-lookup branch; do the ↵Chris McDonough
merge to see diffs more clearly
2015-03-06Merge branch 'master' of https://github.com/Pylons/pyramid into start_pep8John Anderson
Conflicts: pyramid/config/views.py pyramid/scaffolds/tests.py tox.ini
2015-03-05Merge pull request #1471 from Pylons/feature.py3-coverageMichael Merickel
update tox/travis to check code coverage on py3
2015-03-05add clone to the IRendererInfo interfaceMichael Merickel
2015-03-05Merge branch 'master' into fix.shared-view-rendererMichael Merickel
2015-02-24only reset terminal echo flag if stdin is a ttyDavid Glick
2015-02-22remove tuple creation from inner loopMichael Merickel
2015-02-22Merge pull request #1563 from Pylons/fix.idempotent-render-to-responseMichael Merickel
update render_to_response to prevent renderers from mutating request.response
2015-02-20Merge branch 'master' into feature.py3-coverageMichael Merickel
2015-02-19Fix asset override with packageMarc Abramowitz
`AssetsConfiguratorMixin.override_asset` does: ```python __import__(override_package) to_package = sys.modules[override_package] override_source = PackageAssetSource(to_package, override_prefix) ``` so it's assuming that the `package` argument to `PackageAssetSource.__init__` takes a module object. But then `PackageAssetSource` had a bunch of methods that did stuff like: - `pkg_resources.resource_exists(self.package, path)` - `pkg_resources.resource_filename(self.package, path)` - `pkg_resources.resource_stream(self.package, path)` and all these `pkg_resources` functions need their `package_or_requirement` argument to be a **string**; not a module - see https://pythonhosted.org/setuptools/pkg_resources.html#basic-resource-access, which says: > the `package_or_requirement argument` may be either a Python package/module > name (e.g. `foo.bar`) or a `Requirement` instance. This causes errors when overriding assets -- e.g.: I am using Kotti and Kotti has this code (https://github.com/Kotti/Kotti/blob/master/kotti/__init__.py#L251): ```python for override in [a.strip() for a in settings['kotti.asset_overrides'].split() if a.strip()]: config.override_asset(to_override='kotti', override_with=override) ``` A Kotti add-on called kotti_navigation does this (https://github.com/Kotti/kotti_navigation/blob/master/kotti_navigation/__init__.py#L12): ```python settings['kotti.asset_overrides'] += ' kotti_navigation:kotti-overrides/' ``` The above code is all legit as far as I can tell and it works fine in pyramid 1.5.2, but it fails with pyramid master with the following: ```pytb File "/Users/marca/python/virtualenvs/kotti_inventorysvc/lib/python2.7/site-packages/pkg_resources.py", line 959, in resource_filename self, resource_name File "/Users/marca/dev/git-repos/pyramid/pyramid/config/assets.py", line 31, in get_resource_filename filename = overrides.get_filename(resource_name) File "/Users/marca/dev/git-repos/pyramid/pyramid/config/assets.py", line 125, in get_filename result = source.get_filename(path) File "/Users/marca/dev/git-repos/pyramid/pyramid/config/assets.py", line 224, in get_filename if pkg_resources.resource_exists(self.package, path): File "/Users/marca/python/virtualenvs/kotti_inventorysvc/lib/python2.7/site-packages/pkg_resources.py", line 948, in resource_exists return get_provider(package_or_requirement).has_resource(resource_name) File "/Users/marca/python/virtualenvs/kotti_inventorysvc/lib/python2.7/site-packages/pkg_resources.py", line 225, in get_provider __import__(moduleOrReq) TypeError: __import__() argument 1 must be string, not module ``` This was a little tricky to resolve because the `override_asset` function wants to pass a module object to `PackageAssetSource.__init__`, but there are a number of tests in `pyramid/tests/test_config/test_assets.py` that assume that it takes a string. So I ended up making it legal to pass either one, so that I don't have to change as much calling code. See https://github.com/Kotti/kotti_navigation/issues/13
2015-02-19Enhance test_assets to expose #1580Marc Abramowitz
This enhances existing tests so that they detect the issue in #1580. Then I'm going to fix the issue in PR #1587. See #1580
2015-02-17pserve -b will always open 127.0.0.1Michael Merickel
2015-02-17appease coverageChris McDonough
2015-02-17dammit, forgot to revert importMichael Merickel
2015-02-17add functest for config reentrancyChris McDonough
2015-02-17expose public config phases in pyramid.configMichael Merickel
2015-02-17fix merge conflictsChris McDonough
2015-02-17use super with mixins... for reasonsMichael Merickel
2015-02-17remove the token from the ICacheBuster apiMichael Merickel
This exposes the QueryStringCacheBuster and PathSegmentCacheBuster public APIs alongside the md5-variants. These should be more cleanly subclassed by people wishing to extend their implementations.
2015-02-16docstring on apply_propertiesMichael Merickel
2015-02-16add InstancePropertyHelper and apply_request_extensionsMichael Merickel
2015-02-13Merge pull request #1578 from davisagli/fix.docsMichael Merickel
Fix a couple minor documentation issues
2015-02-12remove obsolete note about raise_keyboard_interrupt that's left over from pasteDavid Glick
2015-02-12Add workaround to make sure echo is enabled after reload (refs #689)David Glick
Also add myself to CONTRIBUTORS.txt