Comments (7)
One option would be to support a recursive scan of dist/
, even if to only support one level. Currently the action complains about any subdirectory of dist
. A recurse would allow directly chaining the download (like with v3), skipping that flatten step in my example. Then the only change needed to folks' workflows would be to add unique artifact names in the upload step.
from gh-action-pypi-publish.
FWIW, this restriction is inherited from twine
: twine
expects to be given one or more files, which this action does by tacking *
onto the packages-dir
input. The action itself isn't actually aware of nested directories.
from gh-action-pypi-publish.
If using twine
directly then tacking on */*
works: https://github.com/scikit-build/cmake-python-distributions/pull/438/files
from gh-action-pypi-publish.
This is already solved in the download action. Not sure if I want extra pattern matching here.
from gh-action-pypi-publish.
This is already solved in the download action. Not sure if I want extra pattern matching here.
Correct. Just to clarify, download-artifact just released v4.1 which includes a merge-multiple
switch that does the flattening. Now this is sufficient:
- uses: actions/download-artifact@v4
with:
path: dist
merge-multiple: true
This is now just a documentation issue, to update the examples so folks know about this non-default switch.
from gh-action-pypi-publish.
This is now just a documentation issue, to update the examples so folks know about this non-default switch.
So this action doesn't showcase the use of matrices and other complex stuff. Neither does my PyPUG guide.
I suppose, it might be more useful to document it in cibuildwheel: pypa/cibuildwheel#1699.
from gh-action-pypi-publish.
This is now just a documentation issue, to update the examples so folks know about this non-default switch.
So this action doesn't showcase the use of matrices and other complex stuff. Neither does my PyPUG guide. I suppose, it might be more useful to document it in cibuildwheel: pypa/cibuildwheel#1699.
Makes sense. I already have a PR for cibuildwheel docs: pypa/cibuildwheel#1705
from gh-action-pypi-publish.
Related Issues (20)
- Publishing fails if dist/ folder contains a subfolder HOT 4
- Why build action container on every run? HOT 2
- [docs] Emphasize the dangers of enabling `skip-existing` in README
- "Only one sdist may be uploaded per release" with skip-existing enabled HOT 2
- Provide a better troubleshooting message when used from a 3P PR
- Provide a full example of a GitHub Actions config, rather than small little pieces HOT 5
- raise BadZipFile("Bad magic number for central directory") HOT 7
- invalid-publisher: valid token, but no corresponding publisher part 2 HOT 16
- Invalid API Token: token with user restriction without a user HOT 5
- Publishing to PyPI fails with HTTPError: 403 Forbidden HOT 4
- Feature request: add `--dry-run` equivalent parameter HOT 8
- `twine check` in action, but passes when dockerfile built locally HOT 4
- option to disable twine progressbar
- HTTPError: 403 Forbidden or invalid-publisher: a valid token is recognized, but no corresponding publisher is found HOT 8
- [TODO] Update the 2FA nudge error message to use present tense
- InvalidDistribution: Unknown distribution format: 'artifact' when not specifying an artifact name HOT 12
- Document permission requirements for private repositories HOT 2
- Token request failed: the index produced an unexpected 503 response HOT 6
- Can't use https://pypi.org/p/<your-pypi-project-name> HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gh-action-pypi-publish.