{"id":2930642,"name":"sqlparse","ecosystem":"pypi","description":"A non-validating SQL parser.","homepage":"https://github.com/andialbrecht/sqlparse","licenses":"BSD License","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/andialbrecht/sqlparse","keywords_array":[],"namespace":null,"versions_count":38,"first_release_published_at":"2013-05-20T06:39:42.000Z","latest_release_published_at":"2025-12-19T07:17:46.000Z","latest_release_number":"0.5.5","last_synced_at":"2026-04-13T12:13:43.888Z","created_at":"2022-04-10T12:42:15.696Z","updated_at":"2026-04-13T16:13:40.402Z","registry_url":"https://pypi.org/project/sqlparse/","install_command":"pip install sqlparse --index-url https://pypi.org/simple","documentation_url":"https://sqlparse.readthedocs.io/","metadata":{"funding":null,"documentation":"https://sqlparse.readthedocs.io/","classifiers":["Development Status :: 5 - Production/Stable","Intended Audience :: Developers","License :: OSI Approved :: BSD License","Operating System :: OS Independent","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3 :: Only","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.14","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Programming Language :: Python :: Implementation :: CPython","Programming Language :: Python :: Implementation :: PyPy","Topic :: Database","Topic :: Software Development"],"normalized_name":"sqlparse","project_status":null},"repo_metadata":{"id":37663312,"uuid":"4067434","full_name":"andialbrecht/sqlparse","owner":"andialbrecht","description":"A non-validating SQL parser module for Python","archived":false,"fork":false,"pushed_at":"2024-08-31T12:39:52.000Z","size":1484,"stargazers_count":3738,"open_issues_count":245,"forks_count":698,"subscribers_count":94,"default_branch":"master","last_synced_at":"2024-10-29T15:54:50.680Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andialbrecht.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-04-18T19:33:21.000Z","updated_at":"2024-10-28T10:52:21.000Z","dependencies_parsed_at":"2024-03-15T08:25:11.886Z","dependency_job_id":"5bafbd06-0b0c-451e-ae65-dfd87d85f9b3","html_url":"https://github.com/andialbrecht/sqlparse","commit_stats":{"total_commits":1080,"total_committers":105,"mean_commits":"10.285714285714286","dds":0.4648148148148148,"last_synced_commit":"bd417b8c7d6b79d0b6af1b42c78b17d13b724411"},"previous_names":[],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andialbrecht","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222090770,"owners_count":16929471,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"andialbrecht","name":"Andi Albrecht","uuid":"25632","kind":"user","description":null,"email":"","website":"http://andialbrecht.de","location":"Bad Münstereifel","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/25632?v=4","repositories_count":16,"last_synced_at":"2023-04-09T06:56:38.823Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/andialbrecht","funding_links":[],"total_stars":3625,"followers":null,"following":null,"created_at":"2022-11-02T16:22:47.887Z","updated_at":"2024-03-25T17:38:30.460Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andialbrecht","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andialbrecht/repositories"},"tags":[{"name":"0.5.0","sha":"ddbd0ec3592545c914fe71e47118c04582d8bfb0","kind":"tag","published_at":"2024-04-13T12:37:58.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.5.0","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.5.0/manifests"},{"name":"0.4.4","sha":"647d1457acf7d88614215841eb15d423df2a1895","kind":"tag","published_at":"2023-04-18T08:29:42.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.4.4","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.4/manifests"},{"name":"0.4.3","sha":"fba15d34a01739c10596d727e20b89762298eea8","kind":"tag","published_at":"2022-09-23T18:31:31.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.4.3","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.3/manifests"},{"name":"0.4.2","sha":"b1f76f6fa9763ee0f1d3a3870f05565abf1314e8","kind":"tag","published_at":"2021-09-10T06:53:27.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.4.2","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.2/manifests"},{"name":"0.4.1","sha":"77b2b22f2f41259f53bad013e247e657667eb22a","kind":"tag","published_at":"2020-10-08T05:57:27.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.4.1","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.1/manifests"},{"name":"0.4.0","sha":"982ecdf1ef1b3224ca0c4a8f3e7a50bbb59df559","kind":"tag","published_at":"2020-10-07T06:57:39.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.4.0","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.4.0/manifests"},{"name":"0.3.1","sha":"0d6684baba850a9729bad5bd0665d7612155a96c","kind":"tag","published_at":"2020-02-29T12:57:06.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.3.1","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"93d7718e486c715849b291c35f8bbc5672a1a5de","kind":"tag","published_at":"2019-03-11T18:18:52.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.3.0","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.3.0/manifests"},{"name":"0.2.4","sha":"7c3f77133819ff61f19b22b651bf2f7312c04802","kind":"tag","published_at":"2017-09-27T07:09:00.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.2.4","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.4/manifests"},{"name":"0.2.3","sha":"1b9e371ee55a60ecb41dafa4945898424c095dff","kind":"tag","published_at":"2017-03-02T04:42:09.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.2.3","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.3/manifests"},{"name":"0.2.2","sha":"dfb28998056fa33efccaa0f8b95c22815dab7811","kind":"tag","published_at":"2016-10-22T21:32:14.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.2.2","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.2/manifests"},{"name":"0.2.1","sha":"c2561491b8adb10ad30932d4d61781a97edad675","kind":"tag","published_at":"2016-08-13T15:42:25.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.2.1","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"9919d14755143780a8889bbafafd554ed8c28930","kind":"commit","published_at":"2016-07-20T07:20:19.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.2.0","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.2.0/manifests"},{"name":"0.1.19","sha":"b3810c4c13dbf36436795aa68661092c119aabc4","kind":"tag","published_at":"2016-03-07T10:46:15.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.19","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.19","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.19/manifests"},{"name":"0.1.18","sha":"cded58e3dbd7fc1e4dfb250d07c28662eafc32ed","kind":"tag","published_at":"2015-10-25T07:42:16.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.18","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.18","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.18/manifests"},{"name":"0.1.17","sha":"9f638ed86f1103b44b9c061500f7133c29ba8676","kind":"tag","published_at":"2015-10-25T07:36:21.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.17","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.17","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.17/manifests"},{"name":"0.1.16","sha":"14ddedee47808ac1cc8e21f32907b01af6af4efc","kind":"tag","published_at":"2015-07-26T09:24:12.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.16","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.16","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.16/manifests"},{"name":"0.1.15","sha":"4b7b0d3a01d8061572137f82a53de7365f3a241c","kind":"commit","published_at":"2015-04-15T16:17:57.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.15","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.15","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.15/manifests"},{"name":"0.1.14","sha":"a525a29c754522d6fa1b904792f7a8991142c4c5","kind":"commit","published_at":"2014-11-30T07:23:27.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.14","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.14","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.14/manifests"},{"name":"0.1.13","sha":"991e7348075accae6d08025212251af21e92e664","kind":"tag","published_at":"2014-10-09T03:52:00.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.13","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.13/manifests"},{"name":"0.1.12","sha":"e0430495417dd1601a3c6a4fd716e16d3534323a","kind":"tag","published_at":"2014-09-20T16:52:44.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.12","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.12/manifests"},{"name":"0.1.11","sha":"fcf41c86cd0f1370a5f77ffa83334c803e82157f","kind":"tag","published_at":"2014-02-07T20:38:52.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.11","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.11/manifests"},{"name":"0.1.10","sha":"1cb10e741b30e9889f32ac8ba052eaa9d3b5556f","kind":"commit","published_at":"2013-11-02T06:44:35.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.10","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.10/manifests"},{"name":"0.1.9","sha":"6764f6d3d07ea6d76ae381e272d562a615465071","kind":"tag","published_at":"2013-09-28T06:42:50.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.9","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.9/manifests"},{"name":"0.1.8","sha":"dbe33de2f50541e875b05a805ef7baed79f495d8","kind":"tag","published_at":"2013-06-29T17:32:26.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.8","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.8/manifests"},{"name":"0.1.7","sha":"6b98a05f5ea1d0d255312d4a79efa688305c673f","kind":"tag","published_at":"2013-04-06T08:50:26.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.7","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.7/manifests"},{"name":"0.1.6","sha":"f94badafd769427f1f9026211b2d875361548132","kind":"tag","published_at":"2013-01-01T15:43:45.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.6","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.6/manifests"},{"name":"0.1.5","sha":"1bcac860cccfb808a35ae4b3b2383affa0944202","kind":"tag","published_at":"2012-11-13T04:47:37.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.5","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.5/manifests"},{"name":"0.1.4","sha":"0afebf47e24d8a1ee1981faef39c0a15a798f7fd","kind":"tag","published_at":"2012-04-20T17:44:39.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.4","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.4/manifests"},{"name":"0.1.3","sha":"5adefeeaa6df776d76ee62df824eecbc5ed31545","kind":"commit","published_at":"2011-07-29T19:59:59.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.3","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.3/manifests"},{"name":"0.1.2","sha":"26c2abe55a5316a681b8d9023f85a5a13a7b3195","kind":"commit","published_at":"2010-11-23T05:23:28.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.2","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.2/manifests"},{"name":"0.1.1","sha":"ef577981c85baca29185b350134d74ca0cefb0cf","kind":"commit","published_at":"2009-05-06T19:36:14.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.1","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.1/manifests"},{"name":"0.1.0","sha":"6c3465b67c6b15d18e50fa5eca473bd5c128f15b","kind":"commit","published_at":"2009-04-08T08:17:38.000Z","download_url":"https://codeload.github.com/andialbrecht/sqlparse/tar.gz/0.1.0","html_url":"https://github.com/andialbrecht/sqlparse/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2024-10-29T19:59:54.628Z","dependent_packages_count":429,"downloads":122567788,"downloads_period":"last-month","dependent_repos_count":201134,"rankings":{"downloads":0.028979818674375053,"dependent_repos_count":0.0034849149038805446,"dependent_packages_count":0.05612547160986561,"stargazers_count":1.7996834229934686,"forks_count":2.4420082647508194,"docker_downloads_count":0.0634621345654036,"average":0.7322906712496354},"purl":"pkg:pypi/sqlparse","advisories":[{"uuid":"GSA_kwCzR0hTQS0yN2pwLXdtNnEtZ3AyNc4ABSUd","url":"https://github.com/advisories/GHSA-27jp-wm6q-gp25","title":"sqlparse: formatting list of tuples leads to denial of service","description":"### Summary\nThe below gist hangs while attempting to format a long list of tuples.\n\nThis was found while [drafting a regression test for Dja\nngo 5.2's composite primary key feature](https://code.djangoproject.com/ticket/36416#comment:3), which allows querying composite fields with tuples.\n\n###","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2026-02-13T16:16:11.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.9,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","references":["https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-27jp-wm6q-gp25","https://github.com/andialbrecht/sqlparse/commit/40ed3aa958657fa4a82055927fa9de70ab903360","https://github.com/andialbrecht/sqlparse/releases/tag/0.5.4","https://github.com/advisories/GHSA-27jp-wm6q-gp25"],"source_kind":"github","identifiers":["GHSA-27jp-wm6q-gp25"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-02-13T17:00:08.905Z","updated_at":"2026-04-05T20:01:14.109Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yN2pwLXdtNnEtZ3AyNc4ABSUd","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0yN2pwLXdtNnEtZ3AyNc4ABSUd","packages":[{"ecosystem":"pypi","package_name":"sqlparse","versions":[{"first_patched_version":"0.5.4","vulnerable_version_range":"\u003c= 0.5.3"}],"purl":"pkg:pypi/sqlparse"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yN2pwLXdtNnEtZ3AyNc4ABSUd/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS02MnFmLWpjcTgtOGd4d84AA7aa","url":"https://github.com/advisories/GHSA-62qf-jcq8-8gxw","title":"Duplicate Advisory: sqlparse parsing heavily nested list leads to Denial of Service","description":"## Duplicate Advisory\nThis advisory has been withdrawn because it is a duplicate of GHSA-2m57-hf25-phgg. This link is maintained to preserve external references.\n\n## Original Description\nPassing a heavily nested list to sqlparse.parse() leads to a Denial of Service due to RecursionError.","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2024-04-30T15:30:38.000Z","withdrawn_at":"2024-05-01T11:08:47.000Z","classification":"GENERAL","cvss_score":7.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","references":["https://nvd.nist.gov/vuln/detail/CVE-2024-4340","https://github.com/andialbrecht/sqlparse/commit/b4a39d9850969b4e1d6940d32094ee0b42a2cf03","https://github.com/advisories/GHSA-2m57-hf25-phgg","https://research.jfrog.com/vulnerabilities/sqlparse-stack-exhaustion-dos-jfsa-2024-001031292","https://github.com/advisories/GHSA-62qf-jcq8-8gxw"],"source_kind":"github","identifiers":["GHSA-62qf-jcq8-8gxw"],"repository_url":"https://github.com/andialbrecht/sqlparse","blast_radius":0.0,"created_at":"2024-05-01T12:05:25.487Z","updated_at":"2026-04-05T20:05:18.725Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS02MnFmLWpjcTgtOGd4d84AA7aa","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS02MnFmLWpjcTgtOGd4d84AA7aa","packages":[{"ecosystem":"pypi","package_name":"sqlparse","versions":[{"first_patched_version":"0.5.0","vulnerable_version_range":"\u003c 0.5.0"}],"purl":"pkg:pypi/sqlparse"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS02MnFmLWpjcTgtOGd4d84AA7aa/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS0ybTU3LWhmMjUtcGhnZ84AA7Be","url":"https://github.com/advisories/GHSA-2m57-hf25-phgg","title":"sqlparse parsing heavily nested list leads to Denial of Service","description":"### Summary\nPassing a heavily nested list to sqlparse.parse() leads to a Denial of Service due to RecursionError.\n\n### Details + PoC\nRunning the following code will raise Maximum recursion limit exceeded exception:\n```py\nimport sqlparse\nsqlparse.parse('[' * 10000 + ']' * 10000)\n```\nWe expect a traceback of RecursionError:\n```py\nTraceback (most recent call last):\n  File \"trigger_sqlparse_nested_list.py\", line 3, in \u003cmodule\u003e\n    sqlparse.parse('[' * 10000 + ']' * 10000)\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/__init__.py\", line 30, in parse\n    return tuple(parsestream(sql, encoding))\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/engine/filter_stack.py\", line 36, in run\n    stmt = grouping.group(stmt)\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/engine/grouping.py\", line 428, in group\n    func(stmt)\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/engine/grouping.py\", line 53, in group_brackets\n    _group_matching(tlist, sql.SquareBrackets)\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/engine/grouping.py\", line 48, in _group_matching\n    tlist.group_tokens(cls, open_idx, close_idx)\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/sql.py\", line 328, in group_tokens\n    grp = grp_cls(subtokens)\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/sql.py\", line 161, in __init__\n    super().__init__(None, str(self))\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/sql.py\", line 165, in __str__\n    return ''.join(token.value for token in self.flatten())\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/sql.py\", line 165, in \u003cgenexpr\u003e\n    return ''.join(token.value for token in self.flatten())\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/sql.py\", line 214, in flatten\n    yield from token.flatten()\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/sql.py\", line 214, in flatten\n    yield from token.flatten()\n  File \"/home/uriya/.local/lib/python3.10/site-packages/sqlparse/sql.py\", line 214, in flatten\n    yield from token.flatten()\n  [Previous line repeated 983 more times]\nRecursionError: maximum recursion depth exceeded\n```\n\n### Fix suggestion\nThe [flatten()](https://github.com/andialbrecht/sqlparse/blob/master/sqlparse/sql.py#L207) function of TokenList class should limit the recursion to a maximal depth:\n```py\nfrom sqlparse.exceptions import SQLParseError\n\nMAX_DEPTH = 100\n\n    def flatten(self, depth=1):\n        \"\"\"Generator yielding ungrouped tokens.\n\n        This method is recursively called for all child tokens.\n        \"\"\"\n    if depth \u003e= MAX_DEPTH:\n        raise SQLParseError('Maximal depth reached')\n        for token in self.tokens:\n            if token.is_group:\n                yield from token.flatten(depth + 1)\n            else:\n                yield token\n```\n\n### Impact\nDenial of Service (the impact depends on the use).\nAnyone parsing a user input with sqlparse.parse() is affected.\n","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2024-04-15T20:21:25.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":7.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","references":["https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-2m57-hf25-phgg","https://github.com/andialbrecht/sqlparse/commit/b4a39d9850969b4e1d6940d32094ee0b42a2cf03","https://nvd.nist.gov/vuln/detail/CVE-2024-4340","https://research.jfrog.com/vulnerabilities/sqlparse-stack-exhaustion-dos-jfsa-2024-001031292","https://github.com/advisories/GHSA-2m57-hf25-phgg"],"source_kind":"github","identifiers":["GHSA-2m57-hf25-phgg","CVE-2024-4340"],"repository_url":"https://github.com/andialbrecht/sqlparse","blast_radius":0.0,"created_at":"2024-04-15T21:04:50.725Z","updated_at":"2026-04-05T20:05:41.819Z","epss_percentage":0.15953,"epss_percentile":0.94728,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0ybTU3LWhmMjUtcGhnZ84AA7Be","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0ybTU3LWhmMjUtcGhnZ84AA7Be","packages":[{"ecosystem":"pypi","package_name":"sqlparse","versions":[{"first_patched_version":"0.5.0","vulnerable_version_range":"\u003c 0.5.0"}],"purl":"pkg:pypi/sqlparse"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0ybTU3LWhmMjUtcGhnZ84AA7Be/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS1ycm02LXd2ajctY3doMs4AAy63","url":"https://github.com/advisories/GHSA-rrm6-wvj7-cwh2","title":"sqlparse contains a regular expression that is vulnerable to Regular Expression Denial of Service","description":"### Impact\nThe SQL parser contains a regular expression that is vulnerable to [ReDoS](https://owasp.org/www-community/attacks/Regular_expression_Denial_of_Service_-_ReDoS) (Regular Expression Denial of Service). The vulnerability may lead to Denial of Service (DoS).\n\n### Patches\nThis issues has been fixed in sqlparse 0.4.4.\n\n### Workarounds\nNone. \n\n### References\nThis issue was discovered and reported by GHSL team member [@erik-krogh (Erik Krogh Kristensen)](https://github.com/erik-krogh).\n- Commit that introduced the vulnerability: e75e35869473832a1eb67772b1adfee2db11b85a","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2023-04-21T20:24:21.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.9,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","references":["https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-rrm6-wvj7-cwh2","https://nvd.nist.gov/vuln/detail/CVE-2023-30608","https://github.com/andialbrecht/sqlparse/commit/c457abd5f097dd13fb21543381e7cfafe7d31cfb","https://github.com/andialbrecht/sqlparse/commit/e75e35869473832a1eb67772b1adfee2db11b85a","https://owasp.org/www-community/attacks/Regular_expression_Denial_of_Service_-_ReDoS","https://lists.debian.org/debian-lts-announce/2023/05/msg00017.html","https://github.com/pypa/advisory-database/tree/main/vulns/sqlparse/PYSEC-2023-87.yaml","https://lists.debian.org/debian-lts-announce/2024/12/msg00022.html","https://github.com/advisories/GHSA-rrm6-wvj7-cwh2"],"source_kind":"github","identifiers":["GHSA-rrm6-wvj7-cwh2","CVE-2023-30608"],"repository_url":"https://github.com/andialbrecht/sqlparse","blast_radius":36.59404988519574,"created_at":"2023-04-21T21:03:18.964Z","updated_at":"2026-04-05T20:03:57.271Z","epss_percentage":0.01127,"epss_percentile":0.78171,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1ycm02LXd2ajctY3doMs4AAy63","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS1ycm02LXd2ajctY3doMs4AAy63","packages":[{"ecosystem":"pypi","package_name":"sqlparse","versions":[{"first_patched_version":"0.4.4","vulnerable_version_range":"\u003e= 0.1.15, \u003c 0.4.4"}],"purl":"pkg:pypi/sqlparse"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1ycm02LXd2ajctY3doMs4AAy63/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS1wNXc4LXdxaGotOWhoZs0VtQ","url":"https://github.com/advisories/GHSA-p5w8-wqhj-9hhf","title":"StripComments filter contains a regular expression that is vulnerable to ReDOS (Regular Expression Denial of Service)","description":"### Impact\nThe formatter function that strips comments from a SQL contains a regular expression that is vulnerable to [ReDoS](https://owasp.org/www-community/attacks/Regular_expression_Denial_of_Service_-_ReDoS) (Regular Expression Denial of Service). The regular expression may cause exponential backtracking on strings containing many repetitions of '\\r\\n' in SQL comments.\n\n### Patches\nThe issues has been fixed in sqlparse 0.4.2.\n\n### Workarounds\nOnly the formatting feature that removes comments from SQL statements is affected by this regular expression. As a workaround don't use the `sqlformat.format` function with keyword `strip_comments=True` or the `--strip-comments` command line flag when using the `sqlformat` command line tool.\n\n### References\nThis issue was discovered by GitHub team members @erik-krogh and @yoff. It was found using a [CodeQL](https://codeql.github.com/) query which identifies inefficient regular expressions. You can see the results of the query on python-sqlparse by following [this link](https://lgtm.com/query/2223658096471222354/). \n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [sqlparse issue tracker](https://github.com/andialbrecht/sqlparse/issues)\n* Email us at [albrecht.andi@gmail.com](mailto:albrecht.andi@gmail.com)","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2021-09-10T17:56:06.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":8.7,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","references":["https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-p5w8-wqhj-9hhf","https://github.com/andialbrecht/sqlparse/commit/8238a9e450ed1524e40cb3a8b0b3c00606903aeb","https://nvd.nist.gov/vuln/detail/CVE-2021-32839","https://github.com/pypa/advisory-database/tree/main/vulns/sqlparse/PYSEC-2021-333.yaml","https://securitylab.github.com/advisories/GHSL-2021-107-andialbrecht-sqlparse","https://lists.debian.org/debian-lts-announce/2024/12/msg00022.html","https://github.com/advisories/GHSA-p5w8-wqhj-9hhf"],"source_kind":"github","identifiers":["GHSA-p5w8-wqhj-9hhf","CVE-2021-32839"],"repository_url":"https://github.com/andialbrecht/sqlparse","blast_radius":46.14032376829027,"created_at":"2022-12-21T16:12:47.482Z","updated_at":"2026-04-13T16:10:43.401Z","epss_percentage":0.00112,"epss_percentile":0.30177,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1wNXc4LXdxaGotOWhoZs0VtQ","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS1wNXc4LXdxaGotOWhoZs0VtQ","packages":[{"ecosystem":"pypi","package_name":"sqlparse","versions":[{"first_patched_version":"0.4.2","vulnerable_version_range":"\u003e= 0.4.0, \u003c 0.4.2"}],"purl":"pkg:pypi/sqlparse"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1wNXc4LXdxaGotOWhoZs0VtQ/related_packages","related_advisories":[]}],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/sqlparse","docker_dependents_count":6817,"docker_downloads_count":1449987824,"usage_url":"https://repos.ecosyste.ms/usage/pypi/sqlparse","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/sqlparse/dependencies","status":null,"funding_links":[],"critical":true,"issue_metadata":{"last_synced_at":"2024-10-29T18:02:42.332Z","issues_count":117,"pull_requests_count":79,"avg_time_to_close_issue":27829694.1875,"avg_time_to_close_pull_request":62444217.803030305,"issues_closed_count":48,"pull_requests_closed_count":66,"pull_request_authors_count":56,"issue_authors_count":104,"avg_comments_per_issue":1.5897435897435896,"avg_comments_per_pull_request":2.0632911392405062,"merged_pull_requests_count":27,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":31,"past_year_pull_requests_count":17,"past_year_avg_time_to_close_issue":1572314.8181818181,"past_year_avg_time_to_close_pull_request":3512350.3636363638,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":11,"past_year_pull_request_authors_count":15,"past_year_issue_authors_count":28,"past_year_avg_comments_per_issue":0.5483870967741935,"past_year_avg_comments_per_pull_request":1.2941176470588236,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":9,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/andialbrecht%2Fsqlparse/issues","maintainers":[{"login":"andialbrecht","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/andialbrecht"},{"login":"mrmasterplan","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrmasterplan"}],"active_maintainers":[{"login":"andialbrecht","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/andialbrecht"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sqlparse/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sqlparse/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sqlparse/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sqlparse/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sqlparse/codemeta","maintainers":[{"uuid":"aalbrecht","login":"aalbrecht","name":null,"email":null,"url":null,"packages_count":6,"html_url":"https://pypi.org/user/aalbrecht/","role":null,"created_at":"2023-02-04T04:47:08.158Z","updated_at":"2023-02-04T04:47:08.158Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/aalbrecht/packages"}]}