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

[1.9] Remove Python 3.8 Support #25523

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

OwenKephart
Copy link
Contributor

Summary & Motivation

Remove support for Python 3.8

How I Tested These Changes

Changelog

Dagster no longer supports Python 3.8, which hit EOL on 2024-10-07.

@OwenKephart OwenKephart force-pushed the 10-24-_1.9_remove_python_3.8_support branch from 3e129aa to e858278 Compare October 24, 2024 20:10
@graphite-app graphite-app bot added the area: docs Related to documentation in general label Oct 24, 2024
Copy link
Contributor Author

OwenKephart commented Oct 24, 2024

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @OwenKephart and the rest of your teammates on Graphite Graphite

Copy link
Contributor

@cmpadden cmpadden left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couple more references we'll prob wanna get:

scripts/templates_create_dagster_package/setup.py.tmpl
31:        "Programming Language :: Python :: 3.8",

content/dagster-plus/deployment/serverless.mdx
167:The default version of Python for Serverless deployments is Python 3.8. Versions 3.9 through 3.12 are also supported. You can specify the version you want by updating your GitHub workflow or using the `--python-version` command line argument:
193:1. The standard Python "slim" [Docker image](https://hub.docker.com/\_/python), such as `python:3.8-slim` is used as the base.

docs-beta/docs/dagster-plus/deployment/serverless/runtime-environment.md
17:The default Python version for Dagster+ Serverless is Python 3.8. Python versions 3.9 through 3.12 are also supported. You can specify the Python version you want to use in your GitHub or GitLab workflow, or by using the `dagster-cloud` CLI.

content/concepts/dagster-pipes/aws-glue.mdx
31:  - An AWS Glue job with a Python 3.8+ runtime environment

next/markdoc/partials/DagsterVersion.md
1:Dagster supports Python 3.8 through 3.12.

dagster-university/pages/dagster-essentials/lesson-5/whats-a-code-location.md
66:- Python version (ex., legacy code using Python 3.8 and newer Python 3.11 code locations)

dagster-university/pages/dagster-dbt/lesson-7/5-preparing-for-a-successful-run.md
102:  PYTHON_VERSION: '3.8'

dagster-university/pages/dagster-essentials/lesson-2/requirements-and-installation.md
11:- **To install Python**. Dagster supports Python 3.8 through 3.12.

next/components/mdx/includes/dagster/DagsterVersion.mdx
1:Dagster supports Python 3.8 through 3.12.

docs-beta/docs/getting-started/installation.md
12:- To install Python 3.8 or higher. **Python 3.11 is recommended**.

docs-beta/docs/getting-started/quickstart.md
30:- Python 3.8+ installed on your system. Refer to the [Installation guide](/getting-started/installation) for information.

@cmpadden
Copy link
Contributor

Oh gosh, that was a bit of a rabbit hole. But this might be relevant too, @OwenKephart .

pyproject.toml
52:pythonVersion = "3.8"

integration_tests/test_suites/backcompat-test-suite/webserver_service/Dockerfile_user_code_release
1:FROM python:3.8-slim

integration_tests/test_suites/backcompat-test-suite/webserver_service/Dockerfile_webserver_source
1:FROM python:3.8-slim

integration_tests/test_suites/backcompat-test-suite/webserver_service/Dockerfile_webserver_release
1:FROM python:3.8-slim

integration_tests/test_suites/backcompat-test-suite/webserver_service/Dockerfile_user_code_source
1:FROM python:3.8-slim

python_modules/dagster/README.md
73:Dagster is available on PyPI and officially supports Python 3.8 through Python 3.12.

python_modules/automation/automation/docker/images/buildkite-build-test-project-image/versions.yaml
1:"3.8":
3:    BASE_IMAGE: python:3.8-slim

python_modules/automation/automation/docker/images/test-project-base/versions.yaml
1:"3.8":
3:    BASE_IMAGE: python:3.8-slim

python_modules/dagster/dagster/_record/__init__.py
65:                # This workaround only seems needed for py3.8

python_modules/automation/automation/docker/images/buildkite-test/versions.yaml
1:"3.8":
3:    BASE_IMAGE: python:3.8-slim

python_modules/automation/automation/docker/images/buildkite-integration-windows/versions.yaml
1:"3.8":
3:    BASE_IMAGE: python:3.8-windowsservercore-1809

python_modules/dagster/dagster/_generate/templates/CODE_LOCATION_NAME_PLACEHOLDER/pyproject.toml.tmpl
6:requires-python = ">=3.8,<3.13"

examples/docs_beta_snippets/docs_beta_snippets_tests/test_integration_files_load.py
23:    # FIXME: this breaks on py3.8 and seems related to the non-dagster dependencies

examples/docs_beta_snippets/docs_beta_snippets/dagster-plus/deployment/serverless/runtime-environment/gitlab_disable_pex.yaml
7:  PYTHON_VERSION: '3.8'

python_modules/libraries/dagster-celery/setup.py
39:        "importlib_metadata<5.0.0; python_version<'3.8'",  # https://github.com/celery/celery/issues/7783

python_modules/dagster/dagster/_utils/__init__.py
221:    """Backport of Python 3.8 os.path.isfile behavior.
223:    This is intended to backport https://docs.python.org/dev/whatsnew/3.8.html#os-path. I'm not
367:    # https://docs.python.org/3.8/library/tempfile.html#tempfile.NamedTemporaryFile


python_modules/dagster/dagster_tests/core_tests/resource_tests/pythonic_resources/test_general_pythonic_resources.py
103:@pytest.mark.skipif(sys.version_info < (3, 8), reason="requires python3.8")

python_modules/dagster/dagster_tests/core_tests/pythonic_config_tests/test_basic_pythonic_config.py
446:@pytest.mark.skipif(sys.version_info < (3, 8), reason="requires python3.8")

python_modules/dagster/dagster_tests/storage_tests/test_upath_io_manager.py
516:requires_python38 = pytest.mark.skipif(sys.version_info < (3, 8), reason="requires python3.8")

@OwenKephart OwenKephart force-pushed the 10-24-_1.9_remove_python_3.8_support branch from e858278 to 2526c43 Compare October 24, 2024 20:33
@graphite-app graphite-app bot added the area: dagster-university Related to Dagster University label Oct 24, 2024
@graphite-app graphite-app bot requested a review from cmpadden October 24, 2024 20:33
@OwenKephart
Copy link
Contributor Author

@cmpadden updated

Copy link

github-actions bot commented Oct 24, 2024

Deploy preview for dagster-university ready!

✅ Preview
https://dagster-university-2fqd0cgtg-elementl.vercel.app
https://10-24--1-9-remove-python-3-8-support.dagster-university.dagster-docs.io

Built with commit e7c4bf6.
This pull request is being automatically deployed with vercel-action

@OwenKephart
Copy link
Contributor Author

oops didn't update with your new stuff

@OwenKephart OwenKephart force-pushed the 10-24-_1.9_remove_python_3.8_support branch 2 times, most recently from bb0e857 to e9dd138 Compare October 24, 2024 20:46
@OwenKephart
Copy link
Contributor Author

@cmpadden updated for real -- tried to avoid making any actual code changes, and some of those reference behavior that exists as backcompat for py3.8, so i left them in.

could consider a second round of deletions after this to clean that up

@cmpadden
Copy link
Contributor

@cmpadden updated for real -- tried to avoid making any actual code changes, and some of those reference behavior that exists as backcompat for py3.8, so i left them in.

could consider a second round of deletions after this to clean that up

Sweet, confirmed the instances that I found no longer exist.

Will probably defer approval to @alangenfeld or @gibsondan, since this is a pretty big one.

@@ -1,3 +1,3 @@
"3.8":
"3.9":
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dagster-image build-all --name buildkite-build-test-project-image --dagster-version 0.0.1
dagster-image push-all --name buildkite-build-test-project-image

@cmpadden cmpadden removed the area: dagster-university Related to Dagster University label Oct 24, 2024
@OwenKephart OwenKephart force-pushed the 10-24-_1.9_remove_python_3.8_support branch from ea47f57 to a82d2b1 Compare October 25, 2024 21:57
@OwenKephart OwenKephart force-pushed the 10-24-_1.9_remove_python_3.8_support branch from a82d2b1 to e7c4bf6 Compare October 25, 2024 22:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: docs Related to documentation in general
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants