{"id":191765418,"number":"2.15.8","published_at":"2026-04-20T16:30:40.000Z","licenses":"execsql2 — a fork of execsql.py\n        Copyright (c) 2007-2025 R.Dreas Nielsen\n        Copyright (c) 2026-present Caleb Grant\n        \n        This program is free software: you can redistribute it and/or modify it under\n        the terms of the GNU General Public License as published by the Free Software\n        Foundation, either version 3 of the License, or (at your option) any later\n        version. This program is distributed in the hope that it will be useful, but\n        WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\n        FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more\n        details. The GNU General Public License is available at\n        http://www.gnu.org/licenses/.","integrity":"sha256-cadcd55ad26308c44f66acf0a480d4404c02d63c3c75b0c90d6afe3fd332c513","status":null,"download_url":"https://files.pythonhosted.org/packages/e3/4a/e8ab1fc5a499baeacdccd62e83f66cdcbe52c894d23642accb92df90c58e/execsql2-2.15.8-py3-none-any.whl","registry_url":"https://pypi.org/project/execsql2/2.15.8","documentation_url":"https://execsql2.readthedocs.io/en/2.15.8","install_command":"pip install execsql2==2.15.8 --index-url https://pypi.org/simple","metadata":{"download_url":"https://files.pythonhosted.org/packages/e3/4a/e8ab1fc5a499baeacdccd62e83f66cdcbe52c894d23642accb92df90c58e/execsql2-2.15.8-py3-none-any.whl","requires_python":"\u003e=3.10","yanked":false,"yanked_reason":null,"packagetype":"bdist_wheel","python_version":"py3","size":386176,"has_sig":false},"created_at":"2026-05-03T00:04:55.358Z","updated_at":"2026-05-03T00:04:55.358Z","purl":"pkg:pypi/execsql2@2.15.8","related_tag":{"name":"v2.15.8","sha":"43ff41340260b4523346a3f2530fe6760a57940a","kind":"tag","published_at":"2026-04-20T16:06:53.000Z","download_url":"https://codeload.github.com/geocoug/execsql/tar.gz/v2.15.8","html_url":"https://github.com/geocoug/execsql/releases/tag/v2.15.8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/geocoug/execsql@v2.15.8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geocoug%2Fexecsql/tags/v2.15.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/geocoug%2Fexecsql/tags/v2.15.8/manifests"},"latest":false,"version_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/execsql2/versions/2.15.8","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/execsql2/versions/2.15.8/codemeta","dependencies":[{"id":2026437524,"ecosystem":"pypi","package_name":"python-dateutil","requirements":"\u003e=2.8","kind":"runtime","optional":false},{"id":2026437525,"ecosystem":"pypi","package_name":"rich","requirements":"\u003e=13.0","kind":"runtime","optional":false},{"id":2026437526,"ecosystem":"pypi","package_name":"sqlglot","requirements":"\u003e=25.0","kind":"runtime","optional":false},{"id":2026437527,"ecosystem":"pypi","package_name":"textual","requirements":"\u003e=0.47.0","kind":"runtime","optional":false},{"id":2026437528,"ecosystem":"pypi","package_name":"typer","requirements":"\u003e=0.12","kind":"runtime","optional":false},{"id":2026437529,"ecosystem":"pypi","package_name":"duckdb","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437530,"ecosystem":"pypi","package_name":"firebird-driver","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437531,"ecosystem":"pypi","package_name":"jinja2","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437532,"ecosystem":"pypi","package_name":"keyring","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437533,"ecosystem":"pypi","package_name":"odfpy","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437534,"ecosystem":"pypi","package_name":"openpyxl","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437535,"ecosystem":"pypi","package_name":"oracledb","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437536,"ecosystem":"pypi","package_name":"pg-upsert","requirements":"\u003e=1.22.0","kind":"extra == \"all\"","optional":true},{"id":2026437537,"ecosystem":"pypi","package_name":"polars","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437538,"ecosystem":"pypi","package_name":"psycopg2-binary","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437539,"ecosystem":"pypi","package_name":"pymysql","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437540,"ecosystem":"pypi","package_name":"pyodbc","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437541,"ecosystem":"pypi","package_name":"pyyaml","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437542,"ecosystem":"pypi","package_name":"tables","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437543,"ecosystem":"pypi","package_name":"xlrd","requirements":"*","kind":"extra == \"all\"","optional":true},{"id":2026437544,"ecosystem":"pypi","package_name":"duckdb","requirements":"*","kind":"extra == \"all-db\"","optional":true},{"id":2026437545,"ecosystem":"pypi","package_name":"firebird-driver","requirements":"*","kind":"extra == \"all-db\"","optional":true},{"id":2026437546,"ecosystem":"pypi","package_name":"oracledb","requirements":"*","kind":"extra == \"all-db\"","optional":true},{"id":2026437547,"ecosystem":"pypi","package_name":"psycopg2-binary","requirements":"*","kind":"extra == \"all-db\"","optional":true},{"id":2026437548,"ecosystem":"pypi","package_name":"pymysql","requirements":"*","kind":"extra == \"all-db\"","optional":true},{"id":2026437549,"ecosystem":"pypi","package_name":"pyodbc","requirements":"*","kind":"extra == \"all-db\"","optional":true},{"id":2026437550,"ecosystem":"pypi","package_name":"keyring","requirements":"*","kind":"extra == \"auth\"","optional":true},{"id":2026437551,"ecosystem":"pypi","package_name":"keyring","requirements":"*","kind":"extra == \"auth-encrypted\"","optional":true},{"id":2026437552,"ecosystem":"pypi","package_name":"keyrings-alt","requirements":"*","kind":"extra == \"auth-encrypted\"","optional":true},{"id":2026437553,"ecosystem":"pypi","package_name":"pycryptodome","requirements":"*","kind":"extra == \"auth-encrypted\"","optional":true},{"id":2026437554,"ecosystem":"pypi","package_name":"keyring","requirements":"*","kind":"extra == \"auth-plaintext\"","optional":true},{"id":2026437555,"ecosystem":"pypi","package_name":"keyrings-alt","requirements":"*","kind":"extra == \"auth-plaintext\"","optional":true},{"id":2026437556,"ecosystem":"pypi","package_name":"build","requirements":"\u003e=1.2.2.post1","kind":"extra == \"dev\"","optional":true},{"id":2026437557,"ecosystem":"pypi","package_name":"bump-my-version","requirements":"\u003e=1.2.7","kind":"extra == \"dev\"","optional":true},{"id":2026437558,"ecosystem":"pypi","package_name":"jinja2","requirements":"*","kind":"extra == \"dev\"","optional":true},{"id":2026437559,"ecosystem":"pypi","package_name":"markdown-include","requirements":"\u003e=0.8","kind":"extra == \"dev\"","optional":true},{"id":2026437560,"ecosystem":"pypi","package_name":"mkdocstrings-python","requirements":"\u003e=2.0.3","kind":"extra == \"dev\"","optional":true},{"id":2026437561,"ecosystem":"pypi","package_name":"odfpy","requirements":"*","kind":"extra == \"dev\"","optional":true},{"id":2026437562,"ecosystem":"pypi","package_name":"openpyxl","requirements":"*","kind":"extra == \"dev\"","optional":true},{"id":2026437563,"ecosystem":"pypi","package_name":"polars","requirements":"*","kind":"extra == \"dev\"","optional":true},{"id":2026437564,"ecosystem":"pypi","package_name":"pre-commit","requirements":"\u003e=3.5.0","kind":"extra == \"dev\"","optional":true},{"id":2026437565,"ecosystem":"pypi","package_name":"pytest-cov","requirements":"\u003e=5.0.0","kind":"extra == \"dev\"","optional":true},{"id":2026437566,"ecosystem":"pypi","package_name":"pyyaml","requirements":"*","kind":"extra == \"dev\"","optional":true},{"id":2026437567,"ecosystem":"pypi","package_name":"ruff","requirements":"\u003e=0.4","kind":"extra == \"dev\"","optional":true},{"id":2026437568,"ecosystem":"pypi","package_name":"tables","requirements":"*","kind":"extra == \"dev\"","optional":true},{"id":2026437569,"ecosystem":"pypi","package_name":"tox-uv","requirements":"\u003e=1.13.1","kind":"extra == \"dev\"","optional":true},{"id":2026437570,"ecosystem":"pypi","package_name":"twine","requirements":"\u003e=6.1.0","kind":"extra == \"dev\"","optional":true},{"id":2026437571,"ecosystem":"pypi","package_name":"xlrd","requirements":"*","kind":"extra == \"dev\"","optional":true},{"id":2026437572,"ecosystem":"pypi","package_name":"zensical","requirements":"\u003e=0.0.28","kind":"extra == \"dev\"","optional":true},{"id":2026437573,"ecosystem":"pypi","package_name":"duckdb","requirements":"*","kind":"extra == \"duckdb\"","optional":true},{"id":2026437574,"ecosystem":"pypi","package_name":"firebird-driver","requirements":"*","kind":"extra == \"firebird\"","optional":true},{"id":2026437575,"ecosystem":"pypi","package_name":"jinja2","requirements":"*","kind":"extra == \"formats\"","optional":true},{"id":2026437576,"ecosystem":"pypi","package_name":"odfpy","requirements":"*","kind":"extra == \"formats\"","optional":true},{"id":2026437577,"ecosystem":"pypi","package_name":"openpyxl","requirements":"*","kind":"extra == \"formats\"","optional":true},{"id":2026437578,"ecosystem":"pypi","package_name":"polars","requirements":"*","kind":"extra == \"formats\"","optional":true},{"id":2026437579,"ecosystem":"pypi","package_name":"pyyaml","requirements":"*","kind":"extra == \"formats\"","optional":true},{"id":2026437580,"ecosystem":"pypi","package_name":"tables","requirements":"*","kind":"extra == \"formats\"","optional":true},{"id":2026437581,"ecosystem":"pypi","package_name":"xlrd","requirements":"*","kind":"extra == \"formats\"","optional":true},{"id":2026437582,"ecosystem":"pypi","package_name":"pyodbc","requirements":"*","kind":"extra == \"mssql\"","optional":true},{"id":2026437583,"ecosystem":"pypi","package_name":"pymysql","requirements":"*","kind":"extra == \"mysql\"","optional":true},{"id":2026437584,"ecosystem":"pypi","package_name":"pyodbc","requirements":"*","kind":"extra == \"odbc\"","optional":true},{"id":2026437585,"ecosystem":"pypi","package_name":"oracledb","requirements":"*","kind":"extra == \"oracle\"","optional":true},{"id":2026437586,"ecosystem":"pypi","package_name":"psycopg2-binary","requirements":"*","kind":"extra == \"postgres\"","optional":true},{"id":2026437587,"ecosystem":"pypi","package_name":"pg-upsert","requirements":"\u003e=1.22.0","kind":"extra == \"upsert\"","optional":true}],"package_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/execsql2"}