Skip to content

Pin tk<9 for py3.14 - #2876

Open
AdamRJensen wants to merge 2 commits into
pvlib:mainfrom
AdamRJensen:fix-mamba-issue-py314
Open

AdamRJensen wants to merge 2 commits into
pvlib:mainfrom
AdamRJensen:fix-mamba-issue-py314

Conversation

@AdamRJensen

@AdamRJensen AdamRJensen commented Sep 30, 2026 •

Copy link
Copy Markdown
Member
  • I am familiar with the contributing guidelines
  • I attest that all AI-generated material has been vetted for accuracy and is in compliance with the pvlib license
  • Tests added
  • New code is fully documented. Includes numpydoc compliant docstrings, examples, and comments where necessary.
  • Pull request is nearly complete and ready for detailed review.
  • Maintainer: Appropriate GitHub Labels (including remote-data) and Milestone are assigned to the Pull Request and linked Issue.

Test alternative solution to #2875. This alternative solution was discoved by using Claude FYI.

@AdamRJensen AdamRJensen added the build tools Pipelines, CI, GH actions label Sep 30, 2026
@AdamRJensen
AdamRJensen marked this pull request as draft September 30, 2026 14:37
Comment thread ci/requirements-py3.14.yml Outdated
@AdamRJensen
AdamRJensen marked this pull request as ready for review September 30, 2026 14:52
@kandersolar

Copy link
Copy Markdown
Member

@AdamRJensen nice find! Did you find a bug report or some other context?

@kandersolar

Copy link
Copy Markdown
Member

I have made some progress towards understanding this. First, simplify the reproducer down to:

micromamba create -y -n test_env -c anaconda python=3.14 tk=9.0.4

Then, notice that the conda equivalent works just fine (proof):

conda create -y -n test_env -c anaconda python=3.14 tk=9.0.4

Full GH Actions reproducer showing that it works with conda but not micromamba
name: tk-debug

on:
  push:

jobs:
  with-conda:
    runs-on: windows-latest

    steps:
      - name: Checkout source
        uses: actions/checkout@v4

      - name: Set up conda
        uses: conda-incubator/setup-miniconda@v4
      
      - name: Install python and tk
        shell: bash -l {0}
        run: conda create -y -n test_env -c anaconda python=3.14 tk=9.0.4

      - name: List installed package versions
        shell: bash -l {0}
        run: conda list

  with-mamba:
    runs-on: windows-latest

    steps:
      - name: Checkout source
        uses: actions/checkout@v4

      - name: Set up mamba
        uses: mamba-org/setup-micromamba@v3
      
      - name: Install python and tk
        shell: bash -l {0}
        run: micromamba create -y -n test_env -c anaconda python=3.14 tk=9.0.4

      - name: List installed package versions
        shell: bash -l {0}
        run: micromamba list

Finally, read the docs and see that micromamba does not support the anaconda default channels:

https://mamba.readthedocs.io/en/latest/user_guide/troubleshooting.html#using-the-defaults-channels

So: pinning an older tk might fix the immediate problem, but is still unsupported usage. I think we should consider either using micromamba as intended (i.e. using only conda-forge) or switch back to conda so the main channel is supported.

@mikofski

mikofski commented Oct 8, 2026

Copy link
Copy Markdown
Member

Only use conda-forge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build tools Pipelines, CI, GH actions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants