summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2010-09-30 06:06:32 +0000
committerChris McDonough <chrism@agendaless.com>2010-09-30 06:06:32 +0000
commit4df388dd6b262691e239c7d9e96ce1b2bba6d272 (patch)
tree367208c260a9f0adac7c0df814c408bee2c1c6b0 /docs
parent5ed60425340f5739bdaff29d916f0327e91c9bdf (diff)
downloadpyramid-4df388dd6b262691e239c7d9e96ce1b2bba6d272.tar.gz
pyramid-4df388dd6b262691e239c7d9e96ce1b2bba6d272.tar.bz2
pyramid-4df388dd6b262691e239c7d9e96ce1b2bba6d272.zip
work up
Diffstat (limited to 'docs')
-rw-r--r--docs/whatsnew-1.3.rst18
1 files changed, 18 insertions, 0 deletions
diff --git a/docs/whatsnew-1.3.rst b/docs/whatsnew-1.3.rst
index c356d5fa4..8447f8e38 100644
--- a/docs/whatsnew-1.3.rst
+++ b/docs/whatsnew-1.3.rst
@@ -407,6 +407,24 @@ Minor Feature Additions
- Compatibility with WebOb 1.0 (now requires WebOb >= 1.0).
+- The :meth:`repoze.bfg.traversal.traversal_path` API now eagerly
+ attempts to encode a Unicode ``path`` into ASCII before attempting
+ to split it and decode its segments. This is for convenience,
+ effectively to allow a (stored-as-Unicode-in-a-database, or
+ retrieved-as-Unicode-from-a-request-parameter) Unicode path to be
+ passed to :meth:`repoze.bfg.traversal.find_model`, which eventually
+ internally uses the ``traversal_path`` function under the hood. In
+ version 1.2 and prior, if the ``path`` was Unicode, that Unicode was
+ split on slashes and each resulting segment value was Unicode. An
+ inappropriate call to the ``decode()`` method of a resulting Unicode
+ path segment could cause a ``UnicodeDecodeError`` to occur even if
+ the Unicode representation of the path contained no 'high order'
+ characters (it effectively did a "double decode"). By converting
+ the Unicode path argument to ASCII before we attempt to decode and
+ split, genuine errors will occur in a more obvious place while also
+ allowing us to handle (for convenience) the case that it's a Unicode
+ representation formed entirely from ASCII-compatible characters.
+
Backwards Incompatibilities
---------------------------