일단 커밋. 오랫동안 커밋을 안해서 꼬였다.

리팩토리 중.
This commit is contained in:
2025-11-15 15:59:49 +09:00
parent 5a47b792d6
commit d79c10b975
12909 changed files with 2070539 additions and 285 deletions

View File

@@ -0,0 +1,114 @@
Metadata-Version: 2.3
Name: sqlparse
Version: 0.5.1
Summary: A non-validating SQL parser.
Project-URL: Home, https://github.com/andialbrecht/sqlparse
Project-URL: Documentation, https://sqlparse.readthedocs.io/
Project-URL: Release Notes, https://sqlparse.readthedocs.io/en/latest/changes.html
Project-URL: Source, https://github.com/andialbrecht/sqlparse
Project-URL: Tracker, https://github.com/andialbrecht/sqlparse/issues
Author-email: Andi Albrecht <albrecht.andi@gmail.com>
License-File: AUTHORS
License-File: LICENSE
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Database
Classifier: Topic :: Software Development
Requires-Python: >=3.8
Provides-Extra: dev
Requires-Dist: build; extra == 'dev'
Requires-Dist: hatch; extra == 'dev'
Provides-Extra: doc
Requires-Dist: sphinx; extra == 'doc'
Description-Content-Type: text/x-rst
python-sqlparse - Parse SQL statements
======================================
|buildstatus|_
|coverage|_
|docs|_
|packageversion|_
.. docincludebegin
sqlparse is a non-validating SQL parser for Python.
It provides support for parsing, splitting and formatting SQL statements.
The module is compatible with Python 3.8+ and released under the terms of the
`New BSD license <https://opensource.org/licenses/BSD-3-Clause>`_.
Visit the project page at https://github.com/andialbrecht/sqlparse for
further information about this project.
Quick Start
-----------
.. code-block:: sh
$ pip install sqlparse
.. code-block:: python
>>> import sqlparse
>>> # Split a string containing two SQL statements:
>>> raw = 'select * from foo; select * from bar;'
>>> statements = sqlparse.split(raw)
>>> statements
['select * from foo;', 'select * from bar;']
>>> # Format the first statement and print it out:
>>> first = statements[0]
>>> print(sqlparse.format(first, reindent=True, keyword_case='upper'))
SELECT *
FROM foo;
>>> # Parsing a SQL statement:
>>> parsed = sqlparse.parse('select * from foo')[0]
>>> parsed.tokens
[<DML 'select' at 0x7f22c5e15368>, <Whitespace ' ' at 0x7f22c5e153b0>, <Wildcard '*' … ]
>>>
Links
-----
Project page
https://github.com/andialbrecht/sqlparse
Bug tracker
https://github.com/andialbrecht/sqlparse/issues
Documentation
https://sqlparse.readthedocs.io/
Online Demo
https://sqlformat.org/
sqlparse is licensed under the BSD license.
Parts of the code are based on pygments written by Georg Brandl and others.
pygments-Homepage: http://pygments.org/
.. |buildstatus| image:: https://github.com/andialbrecht/sqlparse/actions/workflows/python-app.yml/badge.svg
.. _buildstatus: https://github.com/andialbrecht/sqlparse/actions/workflows/python-app.yml
.. |coverage| image:: https://codecov.io/gh/andialbrecht/sqlparse/branch/master/graph/badge.svg
.. _coverage: https://codecov.io/gh/andialbrecht/sqlparse
.. |docs| image:: https://readthedocs.org/projects/sqlparse/badge/?version=latest
.. _docs: https://sqlparse.readthedocs.io/en/latest/?badge=latest
.. |packageversion| image:: https://img.shields.io/pypi/v/sqlparse?color=%2334D058&label=pypi%20package
.. _packageversion: https://pypi.org/project/sqlparse

View File

@@ -0,0 +1,51 @@
../../../bin/sqlformat,sha256=0UevGihZIIqts75Ii4Sje_oP2p1gXMMK9jdRdK9QOYM,262
sqlparse-0.5.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
sqlparse-0.5.1.dist-info/METADATA,sha256=RVAzVawU4y8MPtDPQorN8doI6smnWtzGMJJ3fr3rZkg,3865
sqlparse-0.5.1.dist-info/RECORD,,
sqlparse-0.5.1.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
sqlparse-0.5.1.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
sqlparse-0.5.1.dist-info/entry_points.txt,sha256=caB1VVIDXYzEjsQD0qpaPl2CfDFIKnRSPpsK88ne_4M,53
sqlparse-0.5.1.dist-info/licenses/AUTHORS,sha256=HULMecB4jbBOfHuHa-yidfn2Nv138BGZdnWS9XlXy1o,3350
sqlparse-0.5.1.dist-info/licenses/LICENSE,sha256=wZOCNbgNOekxOOrontw69n4Y7LxA0mZSn6V7Lc5CYxA,1537
sqlparse/__init__.py,sha256=SlwlABqk0lnd7zGodgVxf9fYbmZD73u5omO7-dT4S5k,2325
sqlparse/__main__.py,sha256=1jhVFLHlZs4NUJoAuHvQQKWgykPVTdgeE8V4XB5WQzw,610
sqlparse/__pycache__/__init__.cpython-312.pyc,,
sqlparse/__pycache__/__main__.cpython-312.pyc,,
sqlparse/__pycache__/cli.cpython-312.pyc,,
sqlparse/__pycache__/exceptions.cpython-312.pyc,,
sqlparse/__pycache__/formatter.cpython-312.pyc,,
sqlparse/__pycache__/keywords.cpython-312.pyc,,
sqlparse/__pycache__/lexer.cpython-312.pyc,,
sqlparse/__pycache__/sql.cpython-312.pyc,,
sqlparse/__pycache__/tokens.cpython-312.pyc,,
sqlparse/__pycache__/utils.cpython-312.pyc,,
sqlparse/cli.py,sha256=D2EUGXr9kMzrNOI-yVFnwPnOefed_9N3hU2HgJ3T7Ck,5891
sqlparse/engine/__init__.py,sha256=i9kh0USMjk1bwKPFTn6K0PKC55HOqvnkoxHi1t7YccE,447
sqlparse/engine/__pycache__/__init__.cpython-312.pyc,,
sqlparse/engine/__pycache__/filter_stack.cpython-312.pyc,,
sqlparse/engine/__pycache__/grouping.cpython-312.pyc,,
sqlparse/engine/__pycache__/statement_splitter.cpython-312.pyc,,
sqlparse/engine/filter_stack.py,sha256=vj_pGENMLgvkjxTYwLcLCvUDjbLlbJeDsTurB-MxxlM,1370
sqlparse/engine/grouping.py,sha256=B58WRRfv0XEcZXXdCRxaVyCnJI6KG1cXy0e8Rb5MDwg,14602
sqlparse/engine/statement_splitter.py,sha256=iB-Pcy0_Om9dGnTFP7FvwNytlb07rGDhFNHOtFvnARs,4094
sqlparse/exceptions.py,sha256=QyZ9TKTvzgcmuQ1cJkxAj9SoAw4M02-Bf0CSUNWNDKM,342
sqlparse/filters/__init__.py,sha256=HSlZIjmJBUwjwQf00KDpok1azKOzFVUWXBNpsVLKZ3Y,1343
sqlparse/filters/__pycache__/__init__.cpython-312.pyc,,
sqlparse/filters/__pycache__/aligned_indent.cpython-312.pyc,,
sqlparse/filters/__pycache__/others.cpython-312.pyc,,
sqlparse/filters/__pycache__/output.cpython-312.pyc,,
sqlparse/filters/__pycache__/reindent.cpython-312.pyc,,
sqlparse/filters/__pycache__/right_margin.cpython-312.pyc,,
sqlparse/filters/__pycache__/tokens.cpython-312.pyc,,
sqlparse/filters/aligned_indent.py,sha256=kvN5TVMxovyX6cDnmxF-t-KUz2RnzbQ1fIQzdIxYY2g,5110
sqlparse/filters/others.py,sha256=lyl2gbowDEX0N6pllzHM5lLFhXkMxB_6glX2bV9njmw,5619
sqlparse/filters/output.py,sha256=OMSalSPvq3s3-r268Tjv-AmtjTNCfhLayWtQFO5oyVE,4001
sqlparse/filters/reindent.py,sha256=cgiTOSfW02Ll2vl0pHpStbYtpzsmpTBreFrFDIjXxTg,9906
sqlparse/filters/right_margin.py,sha256=Hil692JB3ZkiMPpPPZcMUiRUjDpmhFiuARUu5_imym8,1543
sqlparse/filters/tokens.py,sha256=CZwDwMzzOdq0qvTRIIic7w59g54QhwFgM2Op9932Zvk,1553
sqlparse/formatter.py,sha256=Cf_vAKmcSN-Wq_6Hz1NBtFjxJl8dyYwcZf772Ecy4MU,7804
sqlparse/keywords.py,sha256=lCMBURdnyyC6r5hfDhH-PUiI7wO4F8NrQ4DcGUGuzXw,30471
sqlparse/lexer.py,sha256=IOfwZTxvw0hSfACRA72sbWbwKTkaVSNCzKjR83PTonA,5991
sqlparse/sql.py,sha256=AHyavoy8AvNPoJVl6QyvtGr_I2VQJAqadxt4HU_ej30,21040
sqlparse/tokens.py,sha256=g9iwZMLGboSuRQUHfVLSddC5dv43PkxJOu4-tkhMs0o,1779
sqlparse/utils.py,sha256=bKFkat1Ko5wfEIPhD_FvZRMBGG9OJtv9dQLBoZKnboc,3475

View File

@@ -0,0 +1,4 @@
Wheel-Version: 1.0
Generator: hatchling 1.25.0
Root-Is-Purelib: true
Tag: py3-none-any

View File

@@ -0,0 +1,2 @@
[console_scripts]
sqlformat = sqlparse.__main__:main

View File

@@ -0,0 +1,85 @@
python-sqlparse is written and maintained by Andi Albrecht <albrecht.andi@gmail.com>.
This module contains code (namely the lexer and filter mechanism) from
the pygments project that was written by Georg Brandl.
This module contains code (Python 2/3 compatibility) from the six
project: https://bitbucket.org/gutworth/six.
Alphabetical list of contributors:
* Adam Greenhall <agreenhall@lyft.com>
* Adam Johnson <me@adamj.eu>
* Aki Ariga <chezou+github@gmail.com>
* Alexander Beedie <ayembee@gmail.com>
* Alexey Malyshev <nostrict@gmail.com>
* ali-tny <aliteeney@googlemail.com>
* andrew deryabin <github@djsf.com>
* Andrew Tipton <andrew.tipton@compareglobalgroup.com>
* atronah <atronah.ds@gmail.com>
* casey <casey@cloudera.com>
* Cauê Beloni <cbeloni@gmail.com>
* Christian Clauss <cclauss@me.com>
* circld <circld1@gmail.com>
* Corey Zumar <corey.zumar@databricks.com>
* Cristian Orellana <cristiano@groupon.com>
* Dag Wieers <dag@wieers.com>
* Daniel Harding <dharding@living180.net>
* Darik Gamble <darik.gamble@gmail.com>
* Demetrio92 <Demetrio.Rodriguez.T@gmail.com>
* Dennis Taylor <dennis.taylor@clio.com>
* Dvořák Václav <Vaclav.Dvorak@ysoft.com>
* Erik Cederstrand <erik@adamatics.com>
* Florian Bauer <florian.bauer@zmdi.com>
* Fredy Wijaya <fredy.wijaya@gmail.com>
* Gavin Wahl <gwahl@fusionbox.com>
* Georg Traar <georg@crate.io>
* griff <70294474+griffatrasgo@users.noreply.github.com>
* Hugo van Kemenade <hugovk@users.noreply.github.com>
* hurcy <cinyoung.hur@gmail.com>
* Ian Robertson <ian.robertson@capitalone.com>
* Igor Khrol <igor.khrol@automattic.com>
* JacekPliszka <Jacek.Pliszka@gmail.com>
* JavierPan <PeterSandwich@users.noreply.github.com>
* Jean-Martin Archer <jm@jmartin.ca>
* Jesús Leganés Combarro "Piranna" <piranna@gmail.com>
* Johannes Hoff <johshoff@gmail.com>
* John Bodley <john.bodley@airbnb.com>
* Jon Dufresne <jon.dufresne@gmail.com>
* Josh Soref <jsoref@users.noreply.github.com>
* Kevin Jing Qiu <kevin.jing.qiu@gmail.com>
* koljonen <koljonen@outlook.com>
* Likai Liu <liulk@likai.org>
* Long Le Xich <codenamelxl@users.noreply.github.com>
* mathilde.oustlant <mathilde.oustlant@ext.cdiscount.com>
* Michael Schuller <chick@mschuller.net>
* Mike Amy <cocoade@googlemail.com>
* mulos <daniel.strackbein@gmail.com>
* Oleg Broytman <phd@phdru.name>
* osmnv <80402144+osmnv@users.noreply.github.com>
* Patrick Schemitz <patrick.schemitz@digitalbriefkasten.de>
* Pi Delport <pjdelport@gmail.com>
* Prudhvi Vatala <pvatala@gmail.com>
* quest <quest@wonky.windwards.net>
* Robert Nix <com.github@rnix.org>
* Rocky Meza <rmeza@fusionbox.com>
* Romain Rigaux <romain.rigaux@gmail.com>
* Rowan Seymour <rowanseymour@gmail.com>
* Ryan Wooden <rygwdn@gmail.com>
* saaj <id@saaj.me>
* Shen Longxing <shenlongxing2012@gmail.com>
* Simon Heisterkamp <she@delegate.dk>
* Sjoerd Job Postmus
* Soloman Weng <soloman1124@gmail.com>
* spigwitmer <itgpmc@gmail.com>
* Tao Wang <twang2218@gmail.com>
* Tenghuan <tenghuanhe@gmail.com>
* Tim Graham <timograham@gmail.com>
* Victor Hahn <info@victor-hahn.de>
* Victor Uriarte <vmuriart@gmail.com>
* Ville Skyttä <ville.skytta@iki.fi>
* vthriller <farreva232@yandex.ru>
* wayne.wuw <wayne.wuw@alibaba-inc.com>
* Will Jones <willjones127@gmail.com>
* William Ivanski <william.ivanski@gmail.com>
* Yago Riveiro <yago.riveiro@gmail.com>
* Zi-Xuan Fu <r33s3n6@gmail.com>

View File

@@ -0,0 +1,25 @@
Copyright (c) 2016, Andi Albrecht <albrecht.andi@gmail.com>
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the authors nor the names of its contributors may be
used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.