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

configure ci for python 3.10 #2734

Merged
merged 11 commits into from Feb 6, 2024
Merged

Conversation

graingert-coef
Copy link
Contributor

@graingert-coef graingert-coef commented Jan 30, 2024

Fixes #1863

switch 3.9 CI to 3.10 CI

Contributor Checklist

  • I have broken down my PR scope into the following TODO tasks
    • change ci to use python 3.10
  • I have run the tests locally and they passed. (refer to testing section in contributing)
  • I have added tests, or extended existing tests, to cover any new features or bugs fixed in this PR

optionals

  • I have added entry in the CHANGELOG.md
  • If this PR needs a follow-up in dash docs, community thread, I have mentioned the relevant URLS as follows
    • this GitHub #PR number updates the dash docs
    • here is the show and tell thread in Plotly Dash community

@graingert-coef
Copy link
Contributor Author

So CI passed on 3.10 for everything except "Display npm errors and exit on failed builds". Locally running "npm ci" always writes logs so I don't see how to make this step pass

@graingert
Copy link
Contributor

since npm/cli@6734ba3 (npm v8.2) npm will always write debug logs

since npm 8.2 logs are alway written, so this step will always fail
@graingert-coef graingert-coef marked this pull request as ready for review January 31, 2024 11:37
@alexcjohnson
Copy link
Contributor

Let's take the Python version number off of the Percy snapshots - no reason they should all look brand new just because we changed that, and we've long since stopped taking snapshots on multiple Python versions.

That's here:

snapshot_name = f"{name} - py{sys.version_info.major}.{sys.version_info.minor}"

@alexcjohnson
Copy link
Contributor

So CI passed on 3.10 for everything except "Display npm errors and exit on failed builds". Locally running "npm ci" always writes logs so I don't see how to make this step pass

Good to know! These still may be useful for debugging when tests DO fail - so perhaps we can either keep the cat in that step, just don't have it cause a failure, or copy those logs to the test artifacts?

CHANGELOG.md Outdated Show resolved Hide resolved

# py3.9 hardcoded here to keep snapshot names the same accorss
# future python upgrades
snapshot_name = f"{name} - py3.9"
Copy link
Contributor

Choose a reason for hiding this comment

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

Ah that's a good strategy - this means we know what changes if any the rest of the changes in this PR cause in the percy snapshots. After merging we can make another PR to remove the version number entirely, which will cause all the snapshots to look new but we can blindly approve.

Copy link
Contributor

@alexcjohnson alexcjohnson left a comment

Choose a reason for hiding this comment

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

💃 Great work, thanks!

@alexcjohnson alexcjohnson merged commit dbcbeae into plotly:dev Feb 6, 2024
3 checks passed
@graingert-coef graingert-coef deleted the python-310 branch February 6, 2024 16:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature Request] Python 3.10 support
3 participants