refactor(internal): adjust pants_venv venv_dir calculation#19140
Merged
cognifloyd merged 3 commits intopantsbuild:mainfrom May 25, 2023
Merged
refactor(internal): adjust pants_venv venv_dir calculation#19140cognifloyd merged 3 commits intopantsbuild:mainfrom
cognifloyd merged 3 commits intopantsbuild:mainfrom
Conversation
The "uname -mps" output on my machine includes odd chars and is really long. Now that py version is a fingerprint instead of 2 chars "39" (see pantsbuild#18916), this trips over the shebang max length (127 chars) triggering distlib shebang logic https://github.com/pypa/distlib/blob/0.3.6/distlib/scripts.py#L152-L157 that breaks with the special uname chars on my machine. So, bypass the whole mess by generating one uname+py fingerprint for the venv.
stuhood
approved these changes
May 25, 2023
| # dodge https://github.com/hashicorp/vagrant/issues/12057. | ||
| platform=$(uname -mps | sed 's/ /./g') | ||
| venv_dir_prefix="${HOME}/.cache/pants/pants_dev_deps/${platform}" | ||
| platform=$(uname -mps) |
Member
There was a problem hiding this comment.
If this isn't actually used outside the function, then moving it inside could be good.
Member
Author
There was a problem hiding this comment.
This function gets called a lot, so I figured it was outside the function to cache the call. Should I still move it in the function?
illicitonion
added a commit
to illicitonion/pants
that referenced
this pull request
May 26, 2023
Internal changes: * Fix TypedDict construction ([pantsbuild#19166](pantsbuild#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([pantsbuild#19149](pantsbuild#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([pantsbuild#19141](pantsbuild#19141)) * Set up remote caching in CI ([pantsbuild#19144](pantsbuild#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([pantsbuild#19140](pantsbuild#19140)) * Prepare `2.16.0rc4`. ([pantsbuild#19146](pantsbuild#19146)) * Warn about `files()` in PEXes in one place ([pantsbuild#19027](pantsbuild#19027)) * Drop our explicit dep on `syn` ([pantsbuild#19134](pantsbuild#19134)) * Fix auto-cherry-picker's merge-conflicts ([pantsbuild#19125](pantsbuild#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([pantsbuild#19127](pantsbuild#19127)) * Make determine_python() pin to 3.9 ([pantsbuild#19116](pantsbuild#19116)) * Upgrade to `actions/checkout@v3` ([pantsbuild#19112](pantsbuild#19112)) * Run the cherry pick script with `-x` for debugging ([pantsbuild#19095](pantsbuild#19095)) * Add more linux x86 test CI shards ([pantsbuild#19099](pantsbuild#19099)) * Use a trait for remote ByteStore network implementation ([pantsbuild#19050](pantsbuild#19050)) * Increase the logging of release version file publishing. ([pantsbuild#19092](pantsbuild#19092)) * Remove the Toolchain plugin ([pantsbuild#18978](pantsbuild#18978)) * Fix bad merge of pantsbuild#18829. ([pantsbuild#19080](pantsbuild#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([pantsbuild#19071](pantsbuild#19071)) * Remove unnecessary interpreter constraint config. ([pantsbuild#19065](pantsbuild#19065)) * Use hand-written change detection for PR/push job trimming ([pantsbuild#19045](pantsbuild#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([pantsbuild#19063](pantsbuild#19063)) * Additional release job publishing fixes ([pantsbuild#19058](pantsbuild#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([pantsbuild#19059](pantsbuild#19059)) * Release doc and script fixes ([pantsbuild#19043](pantsbuild#19043)) * Update cherry-picker to use `pull_request_target` ([pantsbuild#19048](pantsbuild#19048)) * Prepare `2.16.0rc3`. ([pantsbuild#19044](pantsbuild#19044)) * Prepare `2.15.1`. ([pantsbuild#19042](pantsbuild#19042)) * Fixup welcome-newcomers.yaml ([pantsbuild#19039](pantsbuild#19039))
Merged
illicitonion
added a commit
to illicitonion/pants
that referenced
this pull request
May 26, 2023
Internal changes: * Fix TypedDict construction ([pantsbuild#19166](pantsbuild#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([pantsbuild#19149](pantsbuild#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([pantsbuild#19141](pantsbuild#19141)) * Set up remote caching in CI ([pantsbuild#19144](pantsbuild#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([pantsbuild#19140](pantsbuild#19140)) * Prepare `2.16.0rc4`. ([pantsbuild#19146](pantsbuild#19146)) * Warn about `files()` in PEXes in one place ([pantsbuild#19027](pantsbuild#19027)) * Drop our explicit dep on `syn` ([pantsbuild#19134](pantsbuild#19134)) * Fix auto-cherry-picker's merge-conflicts ([pantsbuild#19125](pantsbuild#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([pantsbuild#19127](pantsbuild#19127)) * Make determine_python() pin to 3.9 ([pantsbuild#19116](pantsbuild#19116)) * Upgrade to `actions/checkout@v3` ([pantsbuild#19112](pantsbuild#19112)) * Run the cherry pick script with `-x` for debugging ([pantsbuild#19095](pantsbuild#19095)) * Add more linux x86 test CI shards ([pantsbuild#19099](pantsbuild#19099)) * Use a trait for remote ByteStore network implementation ([pantsbuild#19050](pantsbuild#19050)) * Increase the logging of release version file publishing. ([pantsbuild#19092](pantsbuild#19092)) * Remove the Toolchain plugin ([pantsbuild#18978](pantsbuild#18978)) * Fix bad merge of pantsbuild#18829. ([pantsbuild#19080](pantsbuild#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([pantsbuild#19071](pantsbuild#19071)) * Remove unnecessary interpreter constraint config. ([pantsbuild#19065](pantsbuild#19065)) * Use hand-written change detection for PR/push job trimming ([pantsbuild#19045](pantsbuild#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([pantsbuild#19063](pantsbuild#19063)) * Additional release job publishing fixes ([pantsbuild#19058](pantsbuild#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([pantsbuild#19059](pantsbuild#19059)) * Release doc and script fixes ([pantsbuild#19043](pantsbuild#19043)) * Update cherry-picker to use `pull_request_target` ([pantsbuild#19048](pantsbuild#19048)) * Prepare `2.16.0rc3`. ([pantsbuild#19044](pantsbuild#19044)) * Prepare `2.15.1`. ([pantsbuild#19042](pantsbuild#19042)) * Fixup welcome-newcomers.yaml ([pantsbuild#19039](pantsbuild#19039))
illicitonion
added a commit
to illicitonion/pants
that referenced
this pull request
May 26, 2023
Internal changes: * Fix TypedDict construction ([pantsbuild#19166](pantsbuild#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([pantsbuild#19149](pantsbuild#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([pantsbuild#19141](pantsbuild#19141)) * Set up remote caching in CI ([pantsbuild#19144](pantsbuild#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([pantsbuild#19140](pantsbuild#19140)) * Prepare `2.16.0rc4`. ([pantsbuild#19146](pantsbuild#19146)) * Warn about `files()` in PEXes in one place ([pantsbuild#19027](pantsbuild#19027)) * Drop our explicit dep on `syn` ([pantsbuild#19134](pantsbuild#19134)) * Fix auto-cherry-picker's merge-conflicts ([pantsbuild#19125](pantsbuild#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([pantsbuild#19127](pantsbuild#19127)) * Make determine_python() pin to 3.9 ([pantsbuild#19116](pantsbuild#19116)) * Upgrade to `actions/checkout@v3` ([pantsbuild#19112](pantsbuild#19112)) * Run the cherry pick script with `-x` for debugging ([pantsbuild#19095](pantsbuild#19095)) * Add more linux x86 test CI shards ([pantsbuild#19099](pantsbuild#19099)) * Use a trait for remote ByteStore network implementation ([pantsbuild#19050](pantsbuild#19050)) * Increase the logging of release version file publishing. ([pantsbuild#19092](pantsbuild#19092)) * Remove the Toolchain plugin ([pantsbuild#18978](pantsbuild#18978)) * Fix bad merge of pantsbuild#18829. ([pantsbuild#19080](pantsbuild#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([pantsbuild#19071](pantsbuild#19071)) * Remove unnecessary interpreter constraint config. ([pantsbuild#19065](pantsbuild#19065)) * Use hand-written change detection for PR/push job trimming ([pantsbuild#19045](pantsbuild#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([pantsbuild#19063](pantsbuild#19063)) * Additional release job publishing fixes ([pantsbuild#19058](pantsbuild#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([pantsbuild#19059](pantsbuild#19059)) * Release doc and script fixes ([pantsbuild#19043](pantsbuild#19043)) * Update cherry-picker to use `pull_request_target` ([pantsbuild#19048](pantsbuild#19048)) * Prepare `2.16.0rc3`. ([pantsbuild#19044](pantsbuild#19044)) * Prepare `2.15.1`. ([pantsbuild#19042](pantsbuild#19042)) * Fixup welcome-newcomers.yaml ([pantsbuild#19039](pantsbuild#19039))
illicitonion
added a commit
to illicitonion/pants
that referenced
this pull request
May 26, 2023
Internal changes: * Fix TypedDict construction ([pantsbuild#19166](pantsbuild#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([pantsbuild#19149](pantsbuild#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([pantsbuild#19141](pantsbuild#19141)) * Set up remote caching in CI ([pantsbuild#19144](pantsbuild#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([pantsbuild#19140](pantsbuild#19140)) * Prepare `2.16.0rc4`. ([pantsbuild#19146](pantsbuild#19146)) * Warn about `files()` in PEXes in one place ([pantsbuild#19027](pantsbuild#19027)) * Drop our explicit dep on `syn` ([pantsbuild#19134](pantsbuild#19134)) * Fix auto-cherry-picker's merge-conflicts ([pantsbuild#19125](pantsbuild#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([pantsbuild#19127](pantsbuild#19127)) * Make determine_python() pin to 3.9 ([pantsbuild#19116](pantsbuild#19116)) * Upgrade to `actions/checkout@v3` ([pantsbuild#19112](pantsbuild#19112)) * Run the cherry pick script with `-x` for debugging ([pantsbuild#19095](pantsbuild#19095)) * Add more linux x86 test CI shards ([pantsbuild#19099](pantsbuild#19099)) * Use a trait for remote ByteStore network implementation ([pantsbuild#19050](pantsbuild#19050)) * Increase the logging of release version file publishing. ([pantsbuild#19092](pantsbuild#19092)) * Remove the Toolchain plugin ([pantsbuild#18978](pantsbuild#18978)) * Fix bad merge of pantsbuild#18829. ([pantsbuild#19080](pantsbuild#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([pantsbuild#19071](pantsbuild#19071)) * Remove unnecessary interpreter constraint config. ([pantsbuild#19065](pantsbuild#19065)) * Use hand-written change detection for PR/push job trimming ([pantsbuild#19045](pantsbuild#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([pantsbuild#19063](pantsbuild#19063)) * Additional release job publishing fixes ([pantsbuild#19058](pantsbuild#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([pantsbuild#19059](pantsbuild#19059)) * Release doc and script fixes ([pantsbuild#19043](pantsbuild#19043)) * Update cherry-picker to use `pull_request_target` ([pantsbuild#19048](pantsbuild#19048)) * Prepare `2.16.0rc3`. ([pantsbuild#19044](pantsbuild#19044)) * Prepare `2.15.1`. ([pantsbuild#19042](pantsbuild#19042)) * Fixup welcome-newcomers.yaml ([pantsbuild#19039](pantsbuild#19039))
illicitonion
added a commit
to illicitonion/pants
that referenced
this pull request
May 26, 2023
Internal changes: * Fix TypedDict construction ([pantsbuild#19166](pantsbuild#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([pantsbuild#19149](pantsbuild#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([pantsbuild#19141](pantsbuild#19141)) * Set up remote caching in CI ([pantsbuild#19144](pantsbuild#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([pantsbuild#19140](pantsbuild#19140)) * Prepare `2.16.0rc4`. ([pantsbuild#19146](pantsbuild#19146)) * Warn about `files()` in PEXes in one place ([pantsbuild#19027](pantsbuild#19027)) * Drop our explicit dep on `syn` ([pantsbuild#19134](pantsbuild#19134)) * Fix auto-cherry-picker's merge-conflicts ([pantsbuild#19125](pantsbuild#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([pantsbuild#19127](pantsbuild#19127)) * Make determine_python() pin to 3.9 ([pantsbuild#19116](pantsbuild#19116)) * Upgrade to `actions/checkout@v3` ([pantsbuild#19112](pantsbuild#19112)) * Run the cherry pick script with `-x` for debugging ([pantsbuild#19095](pantsbuild#19095)) * Add more linux x86 test CI shards ([pantsbuild#19099](pantsbuild#19099)) * Use a trait for remote ByteStore network implementation ([pantsbuild#19050](pantsbuild#19050)) * Increase the logging of release version file publishing. ([pantsbuild#19092](pantsbuild#19092)) * Remove the Toolchain plugin ([pantsbuild#18978](pantsbuild#18978)) * Fix bad merge of pantsbuild#18829. ([pantsbuild#19080](pantsbuild#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([pantsbuild#19071](pantsbuild#19071)) * Remove unnecessary interpreter constraint config. ([pantsbuild#19065](pantsbuild#19065)) * Use hand-written change detection for PR/push job trimming ([pantsbuild#19045](pantsbuild#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([pantsbuild#19063](pantsbuild#19063)) * Additional release job publishing fixes ([pantsbuild#19058](pantsbuild#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([pantsbuild#19059](pantsbuild#19059)) * Release doc and script fixes ([pantsbuild#19043](pantsbuild#19043)) * Update cherry-picker to use `pull_request_target` ([pantsbuild#19048](pantsbuild#19048)) * Prepare `2.16.0rc3`. ([pantsbuild#19044](pantsbuild#19044)) * Prepare `2.15.1`. ([pantsbuild#19042](pantsbuild#19042)) * Fixup welcome-newcomers.yaml ([pantsbuild#19039](pantsbuild#19039))
illicitonion
added a commit
to illicitonion/pants
that referenced
this pull request
May 26, 2023
Internal changes: * Fix TypedDict construction ([pantsbuild#19166](pantsbuild#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([pantsbuild#19149](pantsbuild#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([pantsbuild#19141](pantsbuild#19141)) * Set up remote caching in CI ([pantsbuild#19144](pantsbuild#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([pantsbuild#19140](pantsbuild#19140)) * Prepare `2.16.0rc4`. ([pantsbuild#19146](pantsbuild#19146)) * Warn about `files()` in PEXes in one place ([pantsbuild#19027](pantsbuild#19027)) * Drop our explicit dep on `syn` ([pantsbuild#19134](pantsbuild#19134)) * Fix auto-cherry-picker's merge-conflicts ([pantsbuild#19125](pantsbuild#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([pantsbuild#19127](pantsbuild#19127)) * Make determine_python() pin to 3.9 ([pantsbuild#19116](pantsbuild#19116)) * Upgrade to `actions/checkout@v3` ([pantsbuild#19112](pantsbuild#19112)) * Run the cherry pick script with `-x` for debugging ([pantsbuild#19095](pantsbuild#19095)) * Add more linux x86 test CI shards ([pantsbuild#19099](pantsbuild#19099)) * Use a trait for remote ByteStore network implementation ([pantsbuild#19050](pantsbuild#19050)) * Increase the logging of release version file publishing. ([pantsbuild#19092](pantsbuild#19092)) * Remove the Toolchain plugin ([pantsbuild#18978](pantsbuild#18978)) * Fix bad merge of pantsbuild#18829. ([pantsbuild#19080](pantsbuild#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([pantsbuild#19071](pantsbuild#19071)) * Remove unnecessary interpreter constraint config. ([pantsbuild#19065](pantsbuild#19065)) * Use hand-written change detection for PR/push job trimming ([pantsbuild#19045](pantsbuild#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([pantsbuild#19063](pantsbuild#19063)) * Additional release job publishing fixes ([pantsbuild#19058](pantsbuild#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([pantsbuild#19059](pantsbuild#19059)) * Release doc and script fixes ([pantsbuild#19043](pantsbuild#19043)) * Update cherry-picker to use `pull_request_target` ([pantsbuild#19048](pantsbuild#19048)) * Prepare `2.16.0rc3`. ([pantsbuild#19044](pantsbuild#19044)) * Prepare `2.15.1`. ([pantsbuild#19042](pantsbuild#19042)) * Fixup welcome-newcomers.yaml ([pantsbuild#19039](pantsbuild#19039))
illicitonion
added a commit
to illicitonion/pants
that referenced
this pull request
May 26, 2023
Internal changes: * Fix TypedDict construction ([pantsbuild#19166](pantsbuild#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([pantsbuild#19149](pantsbuild#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([pantsbuild#19141](pantsbuild#19141)) * Set up remote caching in CI ([pantsbuild#19144](pantsbuild#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([pantsbuild#19140](pantsbuild#19140)) * Prepare `2.16.0rc4`. ([pantsbuild#19146](pantsbuild#19146)) * Warn about `files()` in PEXes in one place ([pantsbuild#19027](pantsbuild#19027)) * Drop our explicit dep on `syn` ([pantsbuild#19134](pantsbuild#19134)) * Fix auto-cherry-picker's merge-conflicts ([pantsbuild#19125](pantsbuild#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([pantsbuild#19127](pantsbuild#19127)) * Make determine_python() pin to 3.9 ([pantsbuild#19116](pantsbuild#19116)) * Upgrade to `actions/checkout@v3` ([pantsbuild#19112](pantsbuild#19112)) * Run the cherry pick script with `-x` for debugging ([pantsbuild#19095](pantsbuild#19095)) * Add more linux x86 test CI shards ([pantsbuild#19099](pantsbuild#19099)) * Use a trait for remote ByteStore network implementation ([pantsbuild#19050](pantsbuild#19050)) * Increase the logging of release version file publishing. ([pantsbuild#19092](pantsbuild#19092)) * Remove the Toolchain plugin ([pantsbuild#18978](pantsbuild#18978)) * Fix bad merge of pantsbuild#18829. ([pantsbuild#19080](pantsbuild#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([pantsbuild#19071](pantsbuild#19071)) * Remove unnecessary interpreter constraint config. ([pantsbuild#19065](pantsbuild#19065)) * Use hand-written change detection for PR/push job trimming ([pantsbuild#19045](pantsbuild#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([pantsbuild#19063](pantsbuild#19063)) * Additional release job publishing fixes ([pantsbuild#19058](pantsbuild#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([pantsbuild#19059](pantsbuild#19059)) * Release doc and script fixes ([pantsbuild#19043](pantsbuild#19043)) * Update cherry-picker to use `pull_request_target` ([pantsbuild#19048](pantsbuild#19048)) * Prepare `2.16.0rc3`. ([pantsbuild#19044](pantsbuild#19044)) * Prepare `2.15.1`. ([pantsbuild#19042](pantsbuild#19042)) * Fixup welcome-newcomers.yaml ([pantsbuild#19039](pantsbuild#19039))
illicitonion
added a commit
to illicitonion/pants
that referenced
this pull request
May 26, 2023
Internal changes: * Fix TypedDict construction ([pantsbuild#19166](pantsbuild#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([pantsbuild#19149](pantsbuild#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([pantsbuild#19141](pantsbuild#19141)) * Set up remote caching in CI ([pantsbuild#19144](pantsbuild#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([pantsbuild#19140](pantsbuild#19140)) * Prepare `2.16.0rc4`. ([pantsbuild#19146](pantsbuild#19146)) * Warn about `files()` in PEXes in one place ([pantsbuild#19027](pantsbuild#19027)) * Drop our explicit dep on `syn` ([pantsbuild#19134](pantsbuild#19134)) * Fix auto-cherry-picker's merge-conflicts ([pantsbuild#19125](pantsbuild#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([pantsbuild#19127](pantsbuild#19127)) * Make determine_python() pin to 3.9 ([pantsbuild#19116](pantsbuild#19116)) * Upgrade to `actions/checkout@v3` ([pantsbuild#19112](pantsbuild#19112)) * Run the cherry pick script with `-x` for debugging ([pantsbuild#19095](pantsbuild#19095)) * Add more linux x86 test CI shards ([pantsbuild#19099](pantsbuild#19099)) * Use a trait for remote ByteStore network implementation ([pantsbuild#19050](pantsbuild#19050)) * Increase the logging of release version file publishing. ([pantsbuild#19092](pantsbuild#19092)) * Remove the Toolchain plugin ([pantsbuild#18978](pantsbuild#18978)) * Fix bad merge of pantsbuild#18829. ([pantsbuild#19080](pantsbuild#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([pantsbuild#19071](pantsbuild#19071)) * Remove unnecessary interpreter constraint config. ([pantsbuild#19065](pantsbuild#19065)) * Use hand-written change detection for PR/push job trimming ([pantsbuild#19045](pantsbuild#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([pantsbuild#19063](pantsbuild#19063)) * Additional release job publishing fixes ([pantsbuild#19058](pantsbuild#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([pantsbuild#19059](pantsbuild#19059)) * Release doc and script fixes ([pantsbuild#19043](pantsbuild#19043)) * Update cherry-picker to use `pull_request_target` ([pantsbuild#19048](pantsbuild#19048)) * Prepare `2.16.0rc3`. ([pantsbuild#19044](pantsbuild#19044)) * Prepare `2.15.1`. ([pantsbuild#19042](pantsbuild#19042)) * Fixup welcome-newcomers.yaml ([pantsbuild#19039](pantsbuild#19039))
illicitonion
added a commit
that referenced
this pull request
May 27, 2023
Internal changes: * Fix TypedDict construction ([#19166](#19166)) * Have package_dists.InvalidEntryPoint subclass InvalidFieldException ([#19149](#19149)) * Check for `CI=true`, not `CI=1` for cherry-picking ([#19141](#19141)) * Set up remote caching in CI ([#19144](#19144)) * refactor(internal): adjust pants_venv venv_dir calculation ([#19140](#19140)) * Prepare `2.16.0rc4`. ([#19146](#19146)) * Warn about `files()` in PEXes in one place ([#19027](#19027)) * Drop our explicit dep on `syn` ([#19134](#19134)) * Fix auto-cherry-picker's merge-conflicts ([#19125](#19125)) * Use explicit depths on fetches when running cherry-picks in CI ([#19127](#19127)) * Make determine_python() pin to 3.9 ([#19116](#19116)) * Upgrade to `actions/checkout@v3` ([#19112](#19112)) * Run the cherry pick script with `-x` for debugging ([#19095](#19095)) * Add more linux x86 test CI shards ([#19099](#19099)) * Use a trait for remote ByteStore network implementation ([#19050](#19050)) * Increase the logging of release version file publishing. ([#19092](#19092)) * Remove the Toolchain plugin ([#18978](#18978)) * Fix bad merge of #18829. ([#19080](#19080)) * Revert "Implement layout="zip" for Lambda/GCF, skipping lambdex" ([#19071](#19071)) * Remove unnecessary interpreter constraint config. ([#19065](#19065)) * Use hand-written change detection for PR/push job trimming ([#19045](#19045)) * Do not build wheels on push, since that is now accomplished by the release job. ([#19063](#19063)) * Additional release job publishing fixes ([#19058](#19058)) * Change CI trigger to includelist `main` and `2.*.x` ([#19059](#19059)) * Release doc and script fixes ([#19043](#19043)) * Update cherry-picker to use `pull_request_target` ([#19048](#19048)) * Prepare `2.16.0rc3`. ([#19044](#19044)) * Prepare `2.15.1`. ([#19042](#19042)) * Fixup welcome-newcomers.yaml ([#19039](#19039))
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The "uname -mps" output on my machine includes odd chars and is really long:
As of #18916, the entire python version is a fingerprint instead of 2 chars "39". The longer fingerprint plus my excessively long processor name trips over the shebang max length (127 chars).
Once the python interpreter becomes longer than the shebang max length, that triggers distlib's long shebang logic (which writes the shebangs for scripts like
pipin thevenv/bindir), But, that distlib logic breaks with the special uname chars on my machine because distlib does not escape the special chars in the path.https://github.com/pypa/distlib/blob/0.3.6/distlib/scripts.py#L152-L157
So, this bypasses the whole mess by generating one fingerprint for uname + python version and then use that fingerprint (which doesn't have any special chars) in the venv dir name.