| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: python313-sqlparse | Distribution: openSUSE Tumbleweed |
| Version: 0.6.0 | Vendor: openSUSE |
| Release: 1.1 | Build date: Tue Aug 18 09:43:22 2026 |
| Group: Unspecified | Build host: reproducible |
| Size: 410921 | Source RPM: python-sqlparse-0.6.0-1.1.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://github.com/andialbrecht/sqlparse | |
| Summary: Non-validating SQL parser | |
sqlparse is a non-validating SQL parser module. It provides support for parsing, splitting and formatting SQL statements.
BSD-3-Clause
* Tue Aug 18 2026 Daniel Garcia <daniel.garcia@suse.com>
- update to 0.6.0 (bsc#1275459, bsc#1275460, bsc#1275461, bsc#1275466):
[#]# Notable Changes
* Drop support for Python 3.8 and 3.9. Python 3.10+ is now required.
* IMPORTANT: Fixes a potential denial of service attack (DOS) in the lexer,
which consumed CPU quadratically on statements containing many unclosed
dollar-quoted literals or multiline comments (CVE-2026-59893). See the
security advisory for details:
https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-prg7-hcfm-mfcr
The vulnerability was discovered by EQSTLab, min8282 and 7thpark.
Thanks for reporting!
* IMPORTANT: Fixes a potential denial of service attack (DOS) when grouping
deeply nested or very wide statements. Building a token group re-read the
whole group on every step, so a small statement could keep a worker busy
for a long time (CVE-2026-54284, pr848 by alhudz and tonghuaroot).
* IMPORTANT: Fixes a potential denial of service attack (DOS) in
`format(sql, reindent=True)`, which consumed CPU quadratically on long
lists of tuples. See the security advisory for details:
https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-cfqr-cjx5-5jcm
* IMPORTANT: Fixes a potential denial of service attack (DOS) on statements
that consist only of comments (CVE-2026-71491). See the security advisory
for details:
https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-f2ff-p2ww-7p4p
The vulnerability was discovered by @sanktjodel. Thanks for reporting!
* IMPORTANT: Backslashes are now escaped in the `python` and `php` output
formats. Without escaping, SQL containing a backslash could break out of
the generated string literal (CVE-2026-59894). See the security advisory
for details:
https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-3496-9g83-7v6x
The vulnerability was discovered by @7thParkk. Thanks for reporting!
[#]# Enhancements
* Modernize type annotations in top-level API functions using PEP 585 and
PEP 604 syntax.
* `END FOR` and `END CASE` are now recognized as keywords.
[#]# Bug Fixes
* Statement splitting was rewritten on a stack-based architecture. This fixes
splitting of statements with nested BEGIN ... END blocks (issue845).
* Fix function grouping being skipped in `CREATE TABLE ... AS SELECT`
statements when the `as` keyword is lowercase (pr867 by Osamaali313).
* Recognize `ROW_FORMAT` as a keyword so that `ALTER TABLE ... ROW_FORMAT=...`
no longer merges the table name and the option into a single identifier
(issue773, pr860 by apoorvdarshan).
* Recognize `MATERIALIZED` as a keyword so it is parsed and formatted
consistently in `CREATE MATERIALIZED VIEW` statements (issue752, pr854 by
gaoflow).
* Fix `get_real_name` for names with more than two dotted parts (issue332,
pr865 by chuenchen309).
* Keep a keyword such as `BETWEEN` from being reclassified as an identifier
when it is followed by a float literal written without a leading zero, so
that `x BETWEEN .03 AND .06` parses its bounds as numbers (issue601, pr868
by deepakganesh78).
* Fix a late-binding closure bug in `TokenList.token_not_matching`.
[#]# Other
* Migrate project dependencies and environment management from `pixi` to `uv`.
* Replace `flake8` with `ruff` for code checking and linting.
* The README is now written in Markdown and the documentation uses an
updated theme.
* Tue Jan 27 2026 Dirk Müller <dmueller@suse.com>
- update to 0.5.5:
* Fix DoS protection to raise SQLParseError instead of silently
returning None when grouping limits are exceeded (issue827).
* Fix splitting of BEGIN TRANSACTION statements (issue826).
* Add support for Python 3.14.
* Add type annotations to top-level API functions and include
py.typed marker for PEP 561 compliance, enabling type checking
with mypy and other tools
* Add pre-commit hook support. sqlparse can now be used as a
pre-commit hook to automatically format SQL files. The CLI now
supports multiple files and an `--in-place` flag for in-place
editing (issue537).
* Add `ATTACH` and `DETACH` to PostgreSQL keywords (pr808).
* Add `INTERSECT` to close keywords in WHERE clause (pr820).
* Support `REGEXP BINARY` comparison operator (pr817).
* Add additional protection against denial of service attacks
when parsing very large lists of tuples. This enhances the
existing recursion protections with configurable limits for
token processing to prevent DoS through algorithmic complexity
attacks. The new limits
MAX_GROUPING_TOKENS=10000) can be adjusted or disabled (by
setting to None) if needed for legitimate large SQL statements.
(GHSA-27jp-wm6q-gp25, bsc#1268597)
* Remove shebang from cli.py and remove executable flag
* Fix strip_comments not removing all comments when input
contains only comments (issue801, pr803 by stropysh).
* Fix splitting statements with IF EXISTS/IF NOT EXISTS inside
BEGIN...END blocks (issue812).
* Fix splitting on semicolons inside BEGIN...END blocks
(issue809).
* Mon Aug 25 2025 Markéta Machová <mmachova@suse.com>
- Convert to libalternatives on SLE-16-based and newer systems
* Mon Feb 24 2025 Dirk Müller <dmueller@suse.com>
- update to 0.5.3:
* EXTENSION is now recognized as a keyword (issue785).
* SQL hints are not removed when removing comments (issue262,
by skryzh).
* Mon Aug 19 2024 Dirk Müller <dmueller@suse.com>
- update to 0.5.1:
* New "compact" option for formatter. If set, the formatter
tries to produce a more compact output by avoiding some line
breaks
* The strip comments filter was a bit greedy and removed too
much whitespace (issue772). Note: In some cases you might want
to add `strip_whitespace=True` where you previously used just
`strip_comments=True`. `strip_comments` did some of the
work that `strip_whitespace` should do.
* Fix error when splitting statements that contain multiple
CASE clauses within a BEGIN block (issue784).
* Fix whitespace removal with nested expressions (issue782).
* Fix parsing and formatting of ORDER clauses containing NULLS
FIRST or NULLS LAST (issue532).
* Tue May 07 2024 Steve Kowalik <steven.kowalik@suse.com>
- Update to 0.5.0:
* Notable Changes
+ Drop support for Python 3.5, 3.6, and 3.7.
+ Python 3.12 is now supported.
+ IMPORTANT: Fixes a potential denial of service attack (DOS) due to
recursion error for deeply nested statements.
(CVE-2024-2430, bsc#1223603)
* Enhancements:
+ Splitting statements now allows to remove the semicolon at the end.
Some database backends love statements without semicolon.
+ Support TypedLiterals in get_parameters.
+ Improve splitting of Transact SQL when using GO keyword.
+ Support for some JSON operators.
+ Improve formatting of statements containing JSON operators.
+ Support for BigQuery and Snowflake keywords.
+ Support parsing of OVER clause.
* Bug Fixes
+ Ignore dunder attributes when creating Tokens.
+ Allow operators to precede dollar-quoted strings.
+ Fix parsing of nested order clauses.
+ Thread-safe initialization of Lexer class.
+ Classify TRUNCATE as DDL and GRANT/REVOKE as DCL keywords.
+ Fix parsing of PRIMARY KEY.
* Other
+ Optimize performance of matching function.
* Mon Feb 26 2024 Robert Schweikert <rjschwei@suse.com>
- Version update in SLE 15 SP4 and later (jsc#PED-6697)
* Fri Jun 09 2023 ecsos <ecsos@opensuse.org>
- Add %{?sle15_python_module_pythons}
* Thu May 25 2023 Matej Cepl <mcepl@suse.com>
- Update to 0.4.4:
* IMPORTANT: This release fixes a security vulnerability in
the parser where a regular expression vulnerable to ReDOS
(Regular Expression Denial of Service) was used. See the
security advisory for details (CVE-2023-30608, bsc#1210617,
https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-rrm6-wvj7-cwh2)
The vulnerability was discovered by @erik-krogh from GitHub
Security Lab (GHSL). Thanks for reporting!
* Revert a change from 0.4.0 that changed IN to be a comparison
(issue694). The primary expectation is that IN is treated as
a keyword and not as a comparison operator. That also follows
the definition of reserved keywords for the major SQL syntax
definitions.
* Fix regular expressions for string parsing.
* sqlparse now uses pyproject.toml instead of setup.cfg
(issue685).
* Mon Oct 03 2022 Dirk Müller <dmueller@suse.com>
- update to 0.4.3:
* Add support for DIV operator.
* Add support for additional SPARK keywords.
* Avoid tokens copy.
* Add REGEXP as a comparision.
* Add DISTINCTROW keyword for MS Access.
* Improve parsing of CREATE TABLE AS SELECT.
* Fix spelling of INDICATOR keyword.
* Fix formatting error in EXTRACT function.
* Fix bad parsing of create table statements that use lower case.
* Handle backtick as valid quote char.
* Allow any unicode character as valid identifier name.
/usr/bin/sqlformat /usr/bin/sqlformat-3.13 /usr/lib/python3.13/site-packages/sqlparse /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/INSTALLER /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/METADATA /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/RECORD /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/REQUESTED /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/WHEEL /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/entry_points.txt /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/licenses /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/licenses/AUTHORS /usr/lib/python3.13/site-packages/sqlparse-0.6.0.dist-info/licenses/LICENSE /usr/lib/python3.13/site-packages/sqlparse/__init__.py /usr/lib/python3.13/site-packages/sqlparse/__main__.py /usr/lib/python3.13/site-packages/sqlparse/__pycache__ /usr/lib/python3.13/site-packages/sqlparse/__pycache__/__init__.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/__main__.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/__main__.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/cli.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/cli.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/exceptions.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/exceptions.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/formatter.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/formatter.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/keywords.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/keywords.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/lexer.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/lexer.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/sql.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/sql.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/tokens.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/tokens.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/utils.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/__pycache__/utils.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/cli.py /usr/lib/python3.13/site-packages/sqlparse/engine /usr/lib/python3.13/site-packages/sqlparse/engine/__init__.py /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__ /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__/__init__.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__/filter_stack.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__/filter_stack.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__/grouping.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__/grouping.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__/statement_splitter.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/engine/__pycache__/statement_splitter.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/engine/filter_stack.py /usr/lib/python3.13/site-packages/sqlparse/engine/grouping.py /usr/lib/python3.13/site-packages/sqlparse/engine/statement_splitter.py /usr/lib/python3.13/site-packages/sqlparse/exceptions.py /usr/lib/python3.13/site-packages/sqlparse/filters /usr/lib/python3.13/site-packages/sqlparse/filters/__init__.py /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__ /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/__init__.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/aligned_indent.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/aligned_indent.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/others.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/others.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/output.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/output.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/reindent.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/reindent.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/right_margin.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/right_margin.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/tokens.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/__pycache__/tokens.cpython-313.pyc /usr/lib/python3.13/site-packages/sqlparse/filters/aligned_indent.py /usr/lib/python3.13/site-packages/sqlparse/filters/others.py /usr/lib/python3.13/site-packages/sqlparse/filters/output.py /usr/lib/python3.13/site-packages/sqlparse/filters/reindent.py /usr/lib/python3.13/site-packages/sqlparse/filters/right_margin.py /usr/lib/python3.13/site-packages/sqlparse/filters/tokens.py /usr/lib/python3.13/site-packages/sqlparse/formatter.py /usr/lib/python3.13/site-packages/sqlparse/keywords.py /usr/lib/python3.13/site-packages/sqlparse/lexer.py /usr/lib/python3.13/site-packages/sqlparse/py.typed /usr/lib/python3.13/site-packages/sqlparse/sql.py /usr/lib/python3.13/site-packages/sqlparse/tokens.py /usr/lib/python3.13/site-packages/sqlparse/utils.py /usr/share/doc/packages/python313-sqlparse /usr/share/doc/packages/python313-sqlparse/AUTHORS /usr/share/doc/packages/python313-sqlparse/README.md /usr/share/libalternatives/sqlformat /usr/share/libalternatives/sqlformat/1313.conf /usr/share/licenses/python313-sqlparse /usr/share/licenses/python313-sqlparse/LICENSE
Generated by rpm2html 1.8.1
Fabrice Bellet, Fri Aug 21 00:06:26 2026