Opened 6 months ago
Closed 6 months ago
#20518 closed enhancement (fixed)
pyparsing-3.2.0 (Python module)
Reported by: | Bruce Dubbs | Owned by: | Bruce Dubbs |
---|---|---|---|
Priority: | normal | Milestone: | 12.3 |
Component: | BOOK | Version: | git |
Severity: | normal | Keywords: | |
Cc: |
Description ¶
New minor version.
Change History (3)
comment:1 by , 6 months ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:2 by , 6 months ago
comment:3 by , 6 months ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed at commits
e31696151d Update to wayland-protocols-1.38. 9637385c18 Update to inkscape-1.4. 736b5330a1 Update to libadwaita-1.6.1. b72fcd3f1f pyparsing-3.2.0 (Python module). c0dce340e7 Update to libarchive-3.7.7 (Security update).
Note:
See TracTickets
for help on using tickets.
Version 3.2.0 - October, 2024
typing
module (e.g.,list[str]
vsList[str]
).OrderedDict
).pdb.set_trace()
call inParserElement.set_break()
tobreakpoint()
.typing.NamedTuple
todataclasses.dataclass
in railroad diagramming code.from __future__ import annotations
to clean up some type annotations. (with assistance from ISyncWithFoo, issue #535, thanks for the help!)ParseElementEnhance
subclasses that replaced detailed exception messages raised in contained expressions with a less-specific and less-informative generic exception message and location.transform_string()
where whitespace in the input string was not properly preserved in the output string.IndexError
raised in a parse action was incorrectly handled as anIndexError
raised as part of theParserElement
parsing methods, and reraised as aParseException
. Now anIndexError
that raises inside a parse action will properly propagate out as anIndexError
. (Issue #573, reported by August Karlstedt, thanks!)pyparsing
package, and addedmypy
run totox.ini
, so that type annotations are now run as part of pyparsing's CI. Addresses Issue #373, raised by Iwan Aucamp, thanks!ParseBaseException.format_message
:run_tests
now detects if an exception is raised in a parse action, and will report it with an enhanced error message, with the exception type, string, and parse action name.QuotedString
now handles translation of escaped integer, hex, octal, and Unicode sequences to their corresponding characters.Regex
terms to deduplicate repeated backslashes, for easier reading in debugging, printing, and railroad diagrams.common_html_entity
.Regex
instances can now be created using a callable that takes no arguments and just returns a string or a compiled regular expression, so that creating complex regular expression patterns can be deferred until they are actually used for the first time in the parser.flatten
Boolean argument toParseResults.as_list()
, to return the parsed values in a flattened list.indent
andbase_1
arguments topyparsing.testing.with_line_numbers
. When usingwith_line_numbers
inside a parse action, setbase_1
=False, since the reportedloc
value is 0-based.indent
can be a leading string (typically of spaces or tabs) to indent the numbered string passed towith_line_numbers
. Added while working on #557, reported by Bernd Wechner.mongodb_query_expression.py
with:a[0]
style array referencinglox_parser.py
example, a parser for the Lox language used as a tutorial in Robert Nystrom's "Crafting Interpreters" (http://craftinginterpreters.com/). With helpful corrections from RoDuth.complex_chemical_formulas.py
example, to add parsing capability for formulas such as "3(C₆H₅OH)₂".tag_emitter.py
to use newTag
class, introduced in pyparsing 3.1.3.