Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

it is time to deprecate python 3.8 #4817

Merged
merged 11 commits into from
Sep 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions .github/workflows/build-db.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ jobs:
path: package/db/dist/*.whl

test:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
needs: build
env:
FIFTYONE_DO_NOT_TRACK: true
Expand All @@ -90,16 +90,20 @@ jobs:
with:
name: dist-sdist
path: downloads
- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: 3.9
- name: Install fiftyone-db
run: |
pip3 install downloads/fiftyone_db-*.tar.gz
pip install downloads/fiftyone_db-*.tar.gz
- name: Install test dependencies
run: |
pip3 install pytest
pip install pytest
- name: Run tests
run: |
cd package/db/
python3 -m pytest --verbose tests/
python -m pytest --verbose tests/

publish:
runs-on: ubuntu-latest
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@ jobs:
path: fiftyone-teams
token: ${{ secrets.TEAMS_GITHUB_PAT }}
ref: main
- name: Set up Python 3.8
- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: 3.8
python-version: 3.9
- name: Install pip dependencies
run: |
pip install --upgrade pip setuptools wheel build
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,10 @@ jobs:
uses: actions/checkout@v4
with:
submodules: true
- name: Set up Python 3.8
- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: 3.8
python-version: 3.9
- name: Install dependencies
run: |
pip install --upgrade pip setuptools wheel build
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,10 @@ jobs:
- ubuntu-latest-m
- windows-latest
python:
- "3.8"
- "3.9"
- "3.10"
- "3.11"
exclude:
- os: windows-latest
python: "3.8"
- os: windows-latest
python: "3.9"
- os: windows-latest
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ to make adjustments. If you are working in Google Colab,

You will need:

- [Python](https://www.python.org) (3.8 - 3.11)
- [Python](https://www.python.org) (3.9 - 3.11)
- [Node.js](https://nodejs.org) - on Linux, we recommend using
[nvm](https://github.com/nvm-sh/nvm) to install an up-to-date version.
- [Yarn](https://yarnpkg.com) - once Node.js is installed, you can
Expand Down
2 changes: 1 addition & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ generate its documentation and API reference from source.

In order to build the docs locally, you must:

1. Be running Python 3.8 or 3.9 in a
1. Be running Python 3.9 in a
[virtual environment](https://docs.voxel51.com/getting_started/virtualenv.html)

2. Perform a developer install of `fiftyone`:
Expand Down
9 changes: 1 addition & 8 deletions docs/source/deprecation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,8 @@ are recommended for the best FiftyOne experience.

Python 3.8
----------
*Support Ends October 2024*
*Support Ended October 2024*

`Python 3.8 <https://devguide.python.org/versions/>`_
transitions to `end-of-life` effective October of 2024. FiftyOne releases after
September 30, 2024 will no longer support Python 3.8.

Versions of `fiftyone` after 0.24.1, or after FiftyOne Teams SDK version 0.18.0,
will provide a deprecation notice when `fiftyone` is imported using Python 3.8.

You can disable this deprecation notice by setting the
`FIFTYONE_PYTHON_38_DEPRECATION_NOTICE` environment variable to `false` prior
to importing `fiftyone`.
5 changes: 2 additions & 3 deletions docs/source/environments/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -415,14 +415,13 @@ Next, build the image:

docker build -t voxel51/fiftyone .

The default image uses Ubuntu 20.04 and Python 3.8, but you can customize these
The default image uses Python 3.11, but you can customize these
via optional build arguments:

.. code:: shell

docker build \
--build-arg BASE_IMAGE=ubuntu:18.04 \
--build-arg PYTHON_VERSION=3.9 \
--build-arg PYTHON_VERSION=3.10 \
-t voxel51/fiftyone .

Refer to the
Expand Down
2 changes: 1 addition & 1 deletion docs/source/getting_started/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Prerequisites
-------------

You will need a working Python installation. FiftyOne currently requires
**Python 3.8 - 3.11**
**Python 3.9 - 3.11**


On Linux, we recommend installing Python through your system package manager
Expand Down
4 changes: 2 additions & 2 deletions docs/source/getting_started/troubleshooting.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ old, you may encounter errors like these:

.. code-block:: text

fiftyone requires Python '>=3.8' but the running Python is 3.4.10
fiftyone requires Python '>=3.9' but the running Python is 3.4.10

To resolve this, you will need to use Python 3.8 or newer, and pip 19.3 or
To resolve this, you will need to use Python 3.9 or newer, and pip 19.3 or
newer. See the :ref:`installation guide <installing-fiftyone>` for details. If
you have installed a suitable version of Python in a virtual environment and
still encounter this error, ensure that the virtual environment is activated.
Expand Down
4 changes: 2 additions & 2 deletions docs/source/getting_started/virtualenv.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ these commands:
$ python --version
Python 2.7.17
$ python3 --version
Python 3.8.9
Python 3.9.20

In this case, `python3` should be used in the next step.

Expand Down Expand Up @@ -71,7 +71,7 @@ of this guide. For example:
.. code-block:: text

$ python --version
Python 3.8.3
Python 3.9.20

Also note that `python` and `pip` live inside the `env` folder (in this output,
the path to the current folder is replaced with `...`):
Expand Down
15 changes: 0 additions & 15 deletions fiftyone/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,6 @@

logger = logging.getLogger(__name__)

# Python 3.8 goes EoL in October, 2024
# We should tell folks we won't support those Python versions after 9/24

PYTHON_38_NOTICE = getenv(
'FIFTYONE_PYTHON_38_DEPRECATION_NOTICE', "True"
) == "True"

if hexversion < 0x30900f0 and hexversion >= 0x30800f0 and PYTHON_38_NOTICE:
logger.warning("***Python 3.8 Deprecation Notice***")
logger.warning("Python 3.8 will no longer be supported in new releases"
" after October 1, 2024.")
logger.warning("Please upgrade to Python 3.9 or later.")
logger.warning("For additional details please see"
" https://deprecation.voxel51.com")

#
# This statement allows multiple `fiftyone.XXX` packages to be installed in the
# same environment and used simultaneously.
Expand Down
5 changes: 2 additions & 3 deletions package/db/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ def _get_download():
MONGODB_BINARIES = ["mongod"]


VERSION = "1.1.5"
VERSION = "1.1.6"


def get_version():
Expand Down Expand Up @@ -320,11 +320,10 @@ def write_wheelfile(self, *args, **kwargs):
"Operating System :: POSIX :: Linux",
"Operating System :: Microsoft :: Windows",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
],
python_requires=">=3.8",
python_requires=">=3.9",
cmdclass=cmdclass,
)
3 changes: 1 addition & 2 deletions package/desktop/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -187,11 +187,10 @@ def write_wheelfile(self, *args, **kwargs):
"Operating System :: POSIX :: Linux",
"Operating System :: Microsoft :: Windows",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
],
python_requires=">=3.8",
python_requires=">=3.9",
cmdclass=cmdclass,
)
3 changes: 1 addition & 2 deletions package/graphql/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,9 @@ def get_version():
"Operating System :: POSIX :: Linux",
"Operating System :: Microsoft :: Windows",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
],
python_requires=">=3.8",
python_requires=">=3.9",
)
2 changes: 1 addition & 1 deletion requirements/common.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ pandas>=1.3
plotly==5.17.0
pprintpp==0.4.0
psutil>=5.7.0
pymongo>=3.12
pymongo>=3.12,<4.9
pydantic==2.6.4
pytz==2022.1
PyYAML==6.0.1
Expand Down
7 changes: 6 additions & 1 deletion requirements/docs.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,10 @@ myst-parser==0.13.7
nbsphinx==0.8.8
sphinx-tabs==1.2.1
Sphinx==3.5.4
sphinxcontrib-napoleon==0.7
sphinx-copybutton==0.4.0
sphinxcontrib-applehelp==1.0.4
sphinxcontrib-devhelp==1.0.2
sphinxcontrib-htmlhelp==2.0.1
sphinxcontrib-napoleon==0.7
sphinxcontrib-qthelp==1.0.3
sphinxcontrib-serializinghtml==1.1.5
3 changes: 1 addition & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -150,11 +150,10 @@ def get_install_requirements(install_requires, choose_install_requires):
"Operating System :: POSIX :: Linux",
"Operating System :: Microsoft :: Windows",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
],
entry_points={"console_scripts": ["fiftyone=fiftyone.core.cli:main"]},
python_requires=">=3.8",
python_requires=">=3.9",
)
Loading