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

Beta release does not distribute zoneinfo or test_zoneinfo #84860

Closed
pganssle opened this issue May 19, 2020 · 10 comments
Closed

Beta release does not distribute zoneinfo or test_zoneinfo #84860

pganssle opened this issue May 19, 2020 · 10 comments
Assignees
Labels
3.9 only security fixes build The build process and cross-build

Comments

@pganssle
Copy link
Member

BPO 40683
Nosy @vstinner, @ambv, @pganssle, @miss-islington
PRs
  • bpo-40683: Add zoneinfo to LIBSUBDIRS #20229
  • [3.9] bpo-40683: Add zoneinfo to LIBSUBDIRS (GH-20229) #20230
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = 'https://github.com/pganssle'
    closed_at = <Date 2020-05-19.17:12:27.995>
    created_at = <Date 2020-05-19.14:32:55.048>
    labels = ['build', '3.9']
    title = 'Beta release does not distribute zoneinfo or test_zoneinfo'
    updated_at = <Date 2020-05-19.17:12:27.995>
    user = 'https://github.com/pganssle'

    bugs.python.org fields:

    activity = <Date 2020-05-19.17:12:27.995>
    actor = 'p-ganssle'
    assignee = 'p-ganssle'
    closed = True
    closed_date = <Date 2020-05-19.17:12:27.995>
    closer = 'p-ganssle'
    components = []
    creation = <Date 2020-05-19.14:32:55.048>
    creator = 'p-ganssle'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 40683
    keywords = ['patch']
    message_count = 10.0
    messages = ['369357', '369359', '369361', '369366', '369369', '369370', '369371', '369373', '369376', '369377']
    nosy_count = 4.0
    nosy_names = ['vstinner', 'lukasz.langa', 'p-ganssle', 'miss-islington']
    pr_nums = ['20229', '20230']
    priority = 'critical'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'compile error'
    url = 'https://bugs.python.org/issue40683'
    versions = ['Python 3.9']

    @pganssle
    Copy link
    Member Author

    Apparently something is wrong with make install for beta 1 and the zoneinfo module is not installed with it (only _zoneinfo).

    When I run a local build ./python -c "import zoneinfo" works, but when I do make install I get ImportError:

      $ bin/python3 -c "import zoneinfo"
      Traceback (most recent call last):
        File "<string>", line 1, in <module>
      ModuleNotFoundError: No module named 'zoneinfo'

    I assume this wasn't caught earlier because Lib/test/test_zoneinfo is *also* not being installed.

    The C extension, _zoneinfo, is installed properly. I don't know if it is working on Windows.

    @pganssle pganssle added the 3.9 only security fixes label May 19, 2020
    @pganssle pganssle self-assigned this May 19, 2020
    @pganssle pganssle added build The build process and cross-build 3.9 only security fixes labels May 19, 2020
    @pganssle pganssle self-assigned this May 19, 2020
    @pganssle pganssle added the build The build process and cross-build label May 19, 2020
    @pganssle
    Copy link
    Member Author

    I think I found the problem: these directories are not included in the Makefile.pre.in LIBSUBDIRS variable:

    LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \

    PR incoming.

    @vstinner
    Copy link
    Member

    FYI my notes about adding new files and directories in Python:
    https://pythondev.readthedocs.io/files.html

    @vstinner vstinner changed the title Beta release does not distribute zoneinfo Beta release does not distribute test_zoneinfo May 19, 2020
    @vstinner vstinner changed the title Beta release does not distribute zoneinfo Beta release does not distribute test_zoneinfo May 19, 2020
    @pganssle
    Copy link
    Member Author

    Victor: Might be worth updating your notes to indicate that any subdirectory (not just test subdirectories) need to go into LIBSUBDIRS. zoneinfo uses a subdirectory for both the tests and the zoneinfo module, and *neither* were included in the installation in this case.

    @pganssle pganssle changed the title Beta release does not distribute test_zoneinfo Beta release does not distribute zoneinfo or test_zoneinfo May 19, 2020
    @pganssle pganssle changed the title Beta release does not distribute test_zoneinfo Beta release does not distribute zoneinfo or test_zoneinfo May 19, 2020
    @vstinner
    Copy link
    Member

    We have multiple "install" buildbot which only run tests on the *installed* Python. I understand that we missed the issue because not only the implementation was broken by "make install", but the whole test was missing as well :-p

    Victor: Might be worth updating your notes to indicate that any subdirectory (not just test subdirectories) need to go into LIBSUBDIRS.

    Done.

    @pganssle
    Copy link
    Member Author

    New changeset 2abeded by Paul Ganssle in branch 'master':
    bpo-40683: Add zoneinfo to LIBSUBDIRS (bpo-20229)
    2abeded

    @miss-islington
    Copy link
    Contributor

    New changeset b5bd435 by Miss Islington (bot) in branch '3.9':
    bpo-40683: Add zoneinfo to LIBSUBDIRS (GH-20229)
    b5bd435

    @pganssle
    Copy link
    Member Author

    Victor has confirmed that this is working on Windows, so I think the current state of the 3.9 and master branches is now fixed.

    The last question remaining is whether this justifies a quick b2 release (or if there's another mechanism for a "fixup" release like b1.post0). Łukasz, what do you think?

    @ambv
    Copy link
    Contributor

    ambv commented May 19, 2020

    The beta releases are every three weeks now because of the release schedule being adjusted to allow Linux distributions to release the new version in the Autumn distributions.

    I understand that you're eager to have your feature up and running. I feel like shipping the fixed version in beta2 will be sufficient. If we released a beta1.5 later in the week, that would be overkill given the already aggressive schedule as you'd then have a beta2 two weeks later, no?

    @pganssle
    Copy link
    Member Author

    No worries Łukasz, I figured it would be worth bringing up because normally the releases aren't so broken that they aren't usable in the common case. That said, this won't break any *existing* code, it'll just prevent people on Linux machines from using zoneinfo.

    I don't think waiting 3 weeks is a big deal. I'm planning to release a backport soon anyway, and I expect people probably won't adopt new-in-3.9 modules without a backport during the beta period *anyway*, since they can't deploy any code using that feature to prod.

    I'm going to resolve this issue. Thanks for the quick response Łukasz and for the quick review Victor!

    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    3.9 only security fixes build The build process and cross-build
    Projects
    None yet
    Development

    No branches or pull requests

    4 participants