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

fix: platform tag for GraalPy #711

Merged
merged 3 commits into from
Sep 1, 2023

Conversation

mayeut
Copy link
Member

@mayeut mayeut commented Aug 20, 2023

When running a 64-bit version of GraalPy (either x86_64 or aarch64), packaging returns the wrong platform tag (either i686 or armv8l).

Fix this by using the same default implementation as found in stdlib platform.architecture https://github.com/python/cpython/blob/4d4393139fae39db26dead33529b6ae0bafbfc58/Lib/platform.py#L713-L716

fixes #710

cc @timfel

When running a 64-bit version of GraalPy (either x86_64 or aarch64), packaging returns the wrong platform tag (either i686 or armv8l).

Fix this by using the same default implementation as found in stdlib platform.architecture https://github.com/python/cpython/blob/4d4393139fae39db26dead33529b6ae0bafbfc58/Lib/platform.py#L713-L716
@mayeut
Copy link
Member Author

mayeut commented Aug 20, 2023

IMHO, the whole discussion around macOS in #614 was out of scope. This does not change a thing for macOS compared to the previous implementation.
If there was an issue with the previous implementation on macOS, then there should be an issue opened for that.

There are no tests for _32_BIT_INTERPRETER, should we try to add some ? based on what ? (I'm thinking observed values of sys.maxsize and struct.calcsize("P") for now)

@brettcannon
Copy link
Member

There are no tests for _32_BIT_INTERPRETER, should we try to add some ?

Definitely, if we can figure out a good way to. 😅

based on what ? (I'm thinking observed values of sys.maxsize and struct.calcsize("P") for now)

It's definitely better than nothing. You can also monkeypatch the struct module if we end up going with your PR.

@mayeut
Copy link
Member Author

mayeut commented Aug 26, 2023

I added some tests for _32_BIT_INTERPRETER
They were checked with observations from https://github.com/mayeut/sandbox/actions/runs/5984106625

@brettcannon brettcannon self-requested a review August 28, 2023 22:30
tests/test_tags.py Outdated Show resolved Hide resolved
@brettcannon brettcannon merged commit c1346df into pypa:main Sep 1, 2023
29 checks passed
@brettcannon
Copy link
Member

Thanks!

@mayeut mayeut deleted the fix-graalpy-platform-tag branch September 5, 2023 10:05
kodiakhq bot referenced this pull request in cloudquery/plugin-sdk-python Nov 1, 2023
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [packaging](https://github.com/pypa/packaging) | minor | `==23.1` -> `==23.2` |

---

### Release Notes

<details>
<summary>pypa/packaging (packaging)</summary>

### [`v23.2`](https://github.com/pypa/packaging/releases/tag/23.2)

[Compare Source](https://github.com/pypa/packaging/compare/23.1...23.2)

#### What's Changed

-   parse_marker should consume the entire source string by [@&#8203;mwerschy](https://github.com/mwerschy) in [https://github.com/pypa/packaging/pull/687](https://github.com/pypa/packaging/pull/687)
-   Create a Security Policy file  by [@&#8203;joycebrum](https://github.com/joycebrum) in [https://github.com/pypa/packaging/pull/695](https://github.com/pypa/packaging/pull/695)
-   Add python 3.12 to CI by [@&#8203;mayeut](https://github.com/mayeut) in [https://github.com/pypa/packaging/pull/689](https://github.com/pypa/packaging/pull/689)
-   Remove URL validation from requirement parsing by [@&#8203;uranusjr](https://github.com/uranusjr) in [https://github.com/pypa/packaging/pull/684](https://github.com/pypa/packaging/pull/684)
-   Add types for packaging.version.\_Version by [@&#8203;hauntsaninja](https://github.com/hauntsaninja) in [https://github.com/pypa/packaging/pull/665](https://github.com/pypa/packaging/pull/665)
-   Add PyPy 3.10 to CI by [@&#8203;mayeut](https://github.com/mayeut) in [https://github.com/pypa/packaging/pull/699](https://github.com/pypa/packaging/pull/699)
-   Remove unused argument in `_manylinux._is_compatible` by [@&#8203;mayeut](https://github.com/mayeut) in [https://github.com/pypa/packaging/pull/700](https://github.com/pypa/packaging/pull/700)
-   Canonicalize names for requirements comparison by [@&#8203;astrojuanlu](https://github.com/astrojuanlu) in [https://github.com/pypa/packaging/pull/696](https://github.com/pypa/packaging/pull/696)
-   Add platform tag support for LoongArch by [@&#8203;loongson-zn](https://github.com/loongson-zn) in [https://github.com/pypa/packaging/pull/693](https://github.com/pypa/packaging/pull/693)
-   Ability to install `armv7l manylinux/musllinux` wheels on `armv8l` by [@&#8203;mayeut](https://github.com/mayeut) in [https://github.com/pypa/packaging/pull/690](https://github.com/pypa/packaging/pull/690)
-   Include CHANGELOG.rst in sdist by [@&#8203;astrojuanlu](https://github.com/astrojuanlu) in [https://github.com/pypa/packaging/pull/704](https://github.com/pypa/packaging/pull/704)
-   Update pyupgrade to Python 3.7+ by [@&#8203;fangchenli](https://github.com/fangchenli) in [https://github.com/pypa/packaging/pull/580](https://github.com/pypa/packaging/pull/580)
-   Fix version pattern pre-releases by [@&#8203;deathaxe](https://github.com/deathaxe) in [https://github.com/pypa/packaging/pull/705](https://github.com/pypa/packaging/pull/705)
-   Fix typos found by codespell by [@&#8203;DimitriPapadopoulos](https://github.com/DimitriPapadopoulos) in [https://github.com/pypa/packaging/pull/706](https://github.com/pypa/packaging/pull/706)
-   Support enriched metadata by [@&#8203;brettcannon](https://github.com/brettcannon) in [https://github.com/pypa/packaging/pull/686](https://github.com/pypa/packaging/pull/686)
-   Correct rST syntax in CHANGELOG.rst by [@&#8203;atugushev](https://github.com/atugushev) in [https://github.com/pypa/packaging/pull/709](https://github.com/pypa/packaging/pull/709)
-   fix: platform tag for GraalPy by [@&#8203;mayeut](https://github.com/mayeut) in [https://github.com/pypa/packaging/pull/711](https://github.com/pypa/packaging/pull/711)
-   Document that this library uses a calendar-based versioning scheme by [@&#8203;faph](https://github.com/faph) in [https://github.com/pypa/packaging/pull/717](https://github.com/pypa/packaging/pull/717)
-   fix: Update copyright date for docs by [@&#8203;garrypolley](https://github.com/garrypolley) in [https://github.com/pypa/packaging/pull/713](https://github.com/pypa/packaging/pull/713)
-   Bump pip version to avoid known vulnerabilities by [@&#8203;joycebrum](https://github.com/joycebrum) in [https://github.com/pypa/packaging/pull/720](https://github.com/pypa/packaging/pull/720)
-   Typing annotations fixed in version.py by [@&#8203;jolaf](https://github.com/jolaf) in [https://github.com/pypa/packaging/pull/723](https://github.com/pypa/packaging/pull/723)
-   parse\_{sdist,wheel}\_filename: don't raise InvalidVersion by [@&#8203;SpecLad](https://github.com/SpecLad) in [https://github.com/pypa/packaging/pull/721](https://github.com/pypa/packaging/pull/721)
-   Fix code blocks in CHANGELOG.md by [@&#8203;edmorley](https://github.com/edmorley) in [https://github.com/pypa/packaging/pull/724](https://github.com/pypa/packaging/pull/724)

#### New Contributors

-   [@&#8203;mwerschy](https://github.com/mwerschy) made their first contribution in [https://github.com/pypa/packaging/pull/687](https://github.com/pypa/packaging/pull/687)
-   [@&#8203;joycebrum](https://github.com/joycebrum) made their first contribution in [https://github.com/pypa/packaging/pull/695](https://github.com/pypa/packaging/pull/695)
-   [@&#8203;astrojuanlu](https://github.com/astrojuanlu) made their first contribution in [https://github.com/pypa/packaging/pull/696](https://github.com/pypa/packaging/pull/696)
-   [@&#8203;loongson-zn](https://github.com/loongson-zn) made their first contribution in [https://github.com/pypa/packaging/pull/693](https://github.com/pypa/packaging/pull/693)
-   [@&#8203;fangchenli](https://github.com/fangchenli) made their first contribution in [https://github.com/pypa/packaging/pull/580](https://github.com/pypa/packaging/pull/580)
-   [@&#8203;deathaxe](https://github.com/deathaxe) made their first contribution in [https://github.com/pypa/packaging/pull/705](https://github.com/pypa/packaging/pull/705)
-   [@&#8203;DimitriPapadopoulos](https://github.com/DimitriPapadopoulos) made their first contribution in [https://github.com/pypa/packaging/pull/706](https://github.com/pypa/packaging/pull/706)
-   [@&#8203;atugushev](https://github.com/atugushev) made their first contribution in [https://github.com/pypa/packaging/pull/709](https://github.com/pypa/packaging/pull/709)
-   [@&#8203;faph](https://github.com/faph) made their first contribution in [https://github.com/pypa/packaging/pull/717](https://github.com/pypa/packaging/pull/717)
-   [@&#8203;garrypolley](https://github.com/garrypolley) made their first contribution in [https://github.com/pypa/packaging/pull/713](https://github.com/pypa/packaging/pull/713)
-   [@&#8203;jolaf](https://github.com/jolaf) made their first contribution in [https://github.com/pypa/packaging/pull/723](https://github.com/pypa/packaging/pull/723)
-   [@&#8203;SpecLad](https://github.com/SpecLad) made their first contribution in [https://github.com/pypa/packaging/pull/721](https://github.com/pypa/packaging/pull/721)
-   [@&#8203;edmorley](https://github.com/edmorley) made their first contribution in [https://github.com/pypa/packaging/pull/724](https://github.com/pypa/packaging/pull/724)

**Full Changelog**: pypa/packaging@23.1...23.2

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4xMDkuNCIsInVwZGF0ZWRJblZlciI6IjM2LjEwOS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
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.

Incorrect platform tag returned for GraalPy
3 participants