This should fix#7366 for now, but using the (IMHO) pragmatic approach
of extending the sed expression to recognize strings.
However, this approach is obviously not parsing the full AST, nor does
it wrap Python itself (as pointed out by @spwhitt in #7366) but tries to
match Python strings as best as possible without getting TOO unreadable.
We also use a little bit of Nix to help generating the SED expression,
because doing the whole quote matching block over and over again would
be quite repetitious and error-prone to change. The reason why I'm using
imap here is that we need to have unique labels to avoid jumping into
the wrong branch.
So the new expression is not only able to match continous regions of
triple-quoted strings, but also regions with only one quote character
(even with escaped inner quotes) and empty strings.
However, what it doesn't correctly recognize is something like this:
"string1" "string2" "multi
line
string"
Which is very unlikely that we'll find something like this in the wild.
Of course, we could handle it as well, but it would mean that we need to
substitute the current line into hold space until we're finished parsing
the strings, branch off to another label where we match multiline
strings of all sorts and swap hold/pattern space and finally print the
result. So to summarize: The SED expression would be 3 to 4 times bigger
than now and we gain very little from that.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
This reverts commit 79a5fec9c0.
meta.broken uses 'throw' under the hood so it can not improve the
current situation. Reverting to previous behaviour gives us correct
error message to the user indicating that interpreter is not supported.
Correcting Hydra output is out of scope of Python packaging.
Fixes this:
$ nix-env -f . -qa \* --meta --xml --drv-path --show-trace >/dev/null
...
error: while querying the derivation named ‘pypy2.5-graph-tool-2.2.36’:
while evaluating the attribute ‘preConfigure’ of the derivation ‘pypy2.5-graph-tool-2.2.36’ at "/home/bfo/nixpkgs/pkgs/development/python-modules/graph-tool/2.x.x.nix":5:3:
attribute ‘sitePackages’ missing, at "/home/bfo/nixpkgs/pkgs/development/python-modules/graph-tool/2.x.x.nix":22:54
We have tons of evaluation errors on Hydra because it tries to build
known broken packages. Re-using meta.broken makes sure these packages
aren't evaluated in the first place.
cherrytree - A hierarchical note taking application, featuring rich text
and syntax highlighting, storing data in a single xml or sqlite file.
This commit also adds PyGtkSourceView - a Python wrapper for the GtkSourceView widget library.
Official page http://www.giuspen.com/cherrytree
Propagation is not needed anymore, as we have more powerful apis today
than this dirty hack. See nix-shell tool and python.buildEnv function
in nixpkgs manual.
Because:
1. It is a mere alias of `pythonPackages.sip`
2. It is usually not needed since propagated by `pyqt4`
3. It makes it easy to have a packages depend on two different versions
of sip