Skip to content

chore(ci,docs): align Python to 3.11 and update docs — Resolves #1961#1962

Open
Anselmoo wants to merge 1 commit intokeras-team:masterfrom
Anselmoo:Anselmoo/issue1961
Open

chore(ci,docs): align Python to 3.11 and update docs — Resolves #1961#1962
Anselmoo wants to merge 1 commit intokeras-team:masterfrom
Anselmoo:Anselmoo/issue1961

Conversation

@Anselmoo
Copy link
Contributor

Which issue(s) does this Pull Request fix?

resolves #1961

Summary

Align CI, container images, and documentation with pyproject.toml (Python >= 3.11). This also includes documentation updates and a follow-up note to update ipynb metadata.

Details of the Pull Request

  • What changed:
    • .devcontainer/Dockerfile
    • .github/workflows/actions.yml
    • README.md
    • docker/pre-commit.Dockerfile
    • docs/tutobooks.py
    • pyproject.toml
  • Why: pyproject.toml requires Python >= 3.11; aligning CI and container images prevents version mismatch and ensures consistent build/test environments.
  • Impact: Backwards-compatible (non-breaking); CI and docs now use Python 3.11+.

Documentation & Notes

  • Follow-up: update notebook/ipynb metadata as noted in commit message.

Checklist

  • I added/updated tests (if applicable)
  • I updated relevant documentation
  • CI passes locally
  • This PR is ready for review (or mark as Draft if still in progress)

- Update CI, container images, and docs to match pyproject (Python >= 3.11).
- Note: will follow up to update ipynb metadata.
- Fixes keras-team#1961
@gemini-code-assist
Copy link

Summary of Changes

Hello @Anselmoo, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request standardizes the Python version across the project to 3.11, aligning the development environment, CI/CD pipelines, and documentation with the pyproject.toml configuration. This change ensures consistent build and test environments, preventing version mismatches and facilitating future development, all while remaining backwards-compatible.

Highlights

  • Python Version Upgrade: The project's core Python requirement has been updated to Python 3.11, ensuring compatibility with pyproject.toml and modern development practices.
  • CI/CD and Development Environment Alignment: Continuous Integration workflows, development containers, and pre-commit Docker images have all been updated to use Python 3.11, providing a consistent and up-to-date environment.
  • Documentation and Metadata Updates: The README.md and notebook generation scripts (docs/tutobooks.py) have been revised to reflect the new Python 3.11 and Keras 3.0.0 requirements, along with minor formatting improvements.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Ignored Files
  • Ignored by pattern: .github/workflows/** (1)
    • .github/workflows/actions.yml
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request effectively aligns the project with Python 3.11 by updating the required version in pyproject.toml, Dockerfiles, and documentation. The changes are consistent across the repository. I've added a couple of minor suggestions to improve code style in pyproject.toml and formatting in README.md.

Comment on lines 12 to +13
##

Choose a reason for hiding this comment

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

medium

This empty heading (##) and the following blank line appear to be unintentional. They create unnecessary vertical space and can be confusing. It would be cleaner to remove them.

Comment on lines +20 to +23
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3 :: Only",

Choose a reason for hiding this comment

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

medium

For better readability and to maintain consistency, it's a good practice to sort the classifiers alphabetically. This makes it easier to see which Python versions are supported at a glance.

Suggested change
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I used the original notation of keras

@Anselmoo Anselmoo marked this pull request as ready for review December 28, 2025 16:41
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.

Bug: Inconsistent Python version requirements due to keras>=3.0.0 dependency

1 participant