From b234133f8e11731cd66029e97b3269ba95f94a3d Mon Sep 17 00:00:00 2001 From: Allan Leander Rostock Hansen <64133386+AllanLeanderRostockHansen@users.noreply.github.com> Date: Sat, 9 Dec 2023 06:25:31 +0100 Subject: [PATCH] Relax supported versions (#20) * Also support Python 3.7 * Update docs to reflect Python versions --------- Co-authored-by: Jason Kinyua --- README.md | 1 + docs/installation.md | 6 ++--- poetry.lock | 54 +++++++++++++++++++++++++++++++++++++++++--- pyproject.toml | 3 +-- 4 files changed, 56 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index fbc3547..20cee1b 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ # Dremio SQL Lakehouse Arrow Flight Client +![Python3.9](https://img.shields.io/badge/python-3.9-brightgreen?style=flat&logo=python) ![Python3.10](https://img.shields.io/badge/python-3.10-brightgreen?style=flat&logo=python) ![Python3.11](https://img.shields.io/badge/python-3.11-blue?style=flat&logo=python) diff --git a/docs/installation.md b/docs/installation.md index 4d7afd8..902f824 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -14,7 +14,7 @@ This Dremio Arrow Flight Client is based on [python Official examples](https://g ## Installation Requirements - A package manger :-> [Pip](https://pip.pypa.io), [Poetry](https://python-poetry.org/docs/master/#installation) or [Conda](https://conda.io/docs/user-guide/install/index.html) -- [Python](http://docs.python-guide.org/en/latest/starting/installation/) (any of 3.7, 3.8, 3.9 or 3.10) +- [Python](http://docs.python-guide.org/en/latest/starting/installation/) (any of 3.9 through 3.11) - [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) if installing from source ???+ hint "Experimental Git Branches" @@ -28,7 +28,7 @@ This Dremio Arrow Flight Client is based on [python Official examples](https://g This package is thorougly tested against `python3.7`, `python3.8`, `python3.9` or `python3.10`. Other python3 versions might work but just note they have not been tested. -!!! info "Virtual Environment or Install on OS Filesystem?" +!!! info "Virtual Environment or Install on OS Filesystem?" Personally I discourage installation on the python base libraries path. I consider it an `evil act` because it may cause unprecedented issues if the package is compromised (we are always onlook for security vulnerabilities but it is always good to be prepared for unexpected eventualities). In my opinion therefore, it is better to install the package (not just this but also all other packages that you use) in a virtual environment. @@ -38,7 +38,7 @@ This Dremio Arrow Flight Client is based on [python Official examples](https://g Create a virtual environment and activate it. -- Using [virtualenv](https://virtualenv.pypa.io/en/latest/installation.html) +- Using [virtualenv](https://virtualenv.pypa.io/en/latest/installation.html) ```bash virtualenv -p python3 venv diff --git a/poetry.lock b/poetry.lock index 82e6dc9..f166be6 100644 --- a/poetry.lock +++ b/poetry.lock @@ -232,6 +232,7 @@ packaging = ">=22.0" pathspec = ">=0.9.0" platformdirs = ">=2" tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} +typing-extensions = {version = ">=3.10.0.0", markers = "python_version < \"3.10\""} [package.extras] colorama = ["colorama (>=0.4.3)"] @@ -815,6 +816,25 @@ files = [ {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, ] +[[package]] +name = "importlib-metadata" +version = "6.8.0" +description = "Read metadata from Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "importlib_metadata-6.8.0-py3-none-any.whl", hash = "sha256:3ebb78df84a805d7698245025b975d9d67053cd94c79245ba4b3eb694abe68bb"}, + {file = "importlib_metadata-6.8.0.tar.gz", hash = "sha256:dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743"}, +] + +[package.dependencies] +zipp = ">=0.5" + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +perf = ["ipython"] +testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] + [[package]] name = "iniconfig" version = "2.0.0" @@ -883,6 +903,7 @@ prompt-toolkit = ">=3.0.30,<3.0.37 || >3.0.37,<3.1.0" pygments = ">=2.4.0" stack-data = "*" traitlets = ">=5" +typing-extensions = {version = "*", markers = "python_version < \"3.10\""} [package.extras] all = ["black", "curio", "docrepr", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] @@ -1044,6 +1065,7 @@ files = [ ] [package.dependencies] +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" python-dateutil = ">=2.8.2" pyzmq = ">=23.0" @@ -1111,6 +1133,7 @@ files = [ ] [package.dependencies] +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} jupyter-server = ">=1.1.2" [[package]] @@ -1181,6 +1204,7 @@ files = [ [package.dependencies] async-lru = ">=1.0.0" +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} ipykernel = "*" jinja2 = ">=3.0.3" jupyter-core = "*" @@ -1223,6 +1247,7 @@ files = [ [package.dependencies] babel = ">=2.10" +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} jinja2 = ">=3.0.3" json5 = ">=0.9.0" jsonschema = ">=4.17.3" @@ -1246,6 +1271,9 @@ files = [ {file = "Markdown-3.3.7.tar.gz", hash = "sha256:cbb516f16218e643d8e0a95b309f77eb118cb138d39a4f27851e6a63581db874"}, ] +[package.dependencies] +importlib-metadata = {version = ">=4.4", markers = "python_version < \"3.10\""} + [package.extras] testing = ["coverage", "pyyaml"] @@ -1380,6 +1408,7 @@ files = [ click = ">=7.0" colorama = {version = ">=0.4", markers = "platform_system == \"Windows\""} ghp-import = ">=1.0" +importlib-metadata = {version = ">=4.3", markers = "python_version < \"3.10\""} jinja2 = ">=2.11.1" markdown = ">=3.2.1,<3.4" mergedeep = ">=1.3.4" @@ -1480,12 +1509,14 @@ files = [ ] [package.dependencies] +importlib-metadata = {version = ">=4.6", markers = "python_version < \"3.10\""} Jinja2 = ">=2.11.1" Markdown = ">=3.3" MarkupSafe = ">=1.1" mkdocs = ">=1.2" mkdocs-autorefs = ">=0.3.1" pymdown-extensions = ">=6.3" +typing-extensions = {version = ">=4.1", markers = "python_version < \"3.10\""} [package.extras] crystal = ["mkdocstrings-crystal (>=0.3.4)"] @@ -1601,6 +1632,7 @@ files = [ beautifulsoup4 = "*" bleach = "!=5.0.0" defusedxml = "*" +importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""} jinja2 = ">=3.0" jupyter-core = ">=4.7" jupyterlab-pygments = "*" @@ -1778,6 +1810,7 @@ files = [ [package.dependencies] numpy = [ + {version = ">=1.20.3", markers = "python_version < \"3.10\""}, {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, ] @@ -2875,7 +2908,7 @@ files = [ name = "typing-extensions" version = "4.7.1" description = "Backported and Experimental Type Hints for Python 3.7+" -optional = true +optional = false python-versions = ">=3.7" files = [ {file = "typing_extensions-4.7.1-py3-none-any.whl", hash = "sha256:440d5dd3af93b060174bf433bccd69b0babc3b15b1a8dca43789fd7f61514b36"}, @@ -3037,6 +3070,21 @@ docs = ["Sphinx (>=3.4)", "sphinx-rtd-theme (>=0.5)"] optional = ["python-socks", "wsaccel"] test = ["websockets"] +[[package]] +name = "zipp" +version = "3.17.0" +description = "Backport of pathlib-compatible object wrapper for zip files" +optional = false +python-versions = ">=3.8" +files = [ + {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"}, + {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy (>=0.9.1)", "pytest-ruff"] + [extras] dev = ["bump2version", "pre-commit", "requests", "types-requests", "virtualenv"] doc = ["mkdocs", "mkdocs-autorefs", "mkdocs-git-revision-date-localized-plugin", "mkdocs-include-markdown-plugin", "mkdocs-material", "mkdocstrings"] @@ -3045,5 +3093,5 @@ toy = ["ipython", "jupyterlab"] [metadata] lock-version = "2.0" -python-versions = ">=3.10,<3.12" -content-hash = "71baf74e152318b185d3c7750e714e06bdd97456b56896c42826b64ebdfce304" +python-versions = ">=3.9,<3.12" +content-hash = "fc0eded19a9b2e0704daffb25d6ac4c4c588beab2aae27a18c308f48c4d212dc" diff --git a/pyproject.toml b/pyproject.toml index 262ad07..e15a748 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,7 +21,7 @@ packages = [ ] [tool.poetry.dependencies] -python = ">=3.10,<3.12" +python = ">=3.9,<3.12" pyarrow = ">=12.0.1,<15.0.0" pandas = "^2.0.3" @@ -52,7 +52,6 @@ tornado = "^6.3.2" mkdocs-include-markdown-plugin = "^4.0.4" mkdocstrings-python = "^1.1.2" - [tool.poetry.extras] test = [ "black",