Comments (6)
Original comment by @hpk42
It should always do appropriate logging, however. And "generic" exception catching is a critical. Let's rather look at exactly goes wrong and report about the case.
from devpi.
Original comment by @AvdN
If you have a directory with old stuff downloaded from PYPI, then I expect upload to upload anything it can and skip the rest.
Why some packages are not handled by pkginfo is e.g.:
- No PKG-INFO in archive [ rst2pdf-0.92, rst2pdf-0.16, docutils-0.9, dulwich 0.8.6, eyeD3, rdiff-backup, html5lib, uwsgi]
- Not a known archive format: [ various .egg files: Extremes, pylint 0.18, WebOb, DecoratorTools]
Maybe the No PKG Info should be handled differently and should the .egg files not be offered to pkginfo at all (I got the idea they all fail to be uploaded).
Is there already a unitttest for uploading that downloads a set of files and tries to upload them?
from devpi.
Original comment by @hpk42
It seems we just need to use pkginfo.get_metadata
which will also read egg files correctly (i used pkginfo.SDist
which is too specific, there also is pkginfo.BDist
etc. and the get_metadata
is the generic entry point it seems) . As for the remaining packages which don't have a PKG-INFO we can fallback to parse the filename to obtain name/version info. This is enough for devpi's "submit" action.
Are you up for a little PR doing this?
from devpi.
Original comment by @AvdN
I will do that ( I Have the material to test ;-) )
from devpi.
Original comment by @hpk42
resolve issue3 - also print an error message in case we don't find a PKGINFO file.
→ <>
from devpi.
Original comment by @hpk42
automatically start server for install and other commands, fixes issue3
→ <>
from devpi.
Related Issues (20)
- [discussion] Asyncio speedups HOT 7
- docs zip contains unwanted package source files HOT 3
- [client] upload `OSError: [Errno 18] Invalid cross-device link '/tmp/devpi-…/dist/….whl' -> 'dist/….whl'` HOT 2
- Cannot load packages when use base auth in gitlab registry mirror HOT 4
- Need help upgrading from 4.4.0 to current HOT 3
- Incorrect version given to doczip with devpi-client version 7.0.0 HOT 7
- All >400 HTTP responses from login provoke a SystemExit, not using fatal, and are not always fatal errors for login HOT 1
- devpi can install package that is not in mirror_whitelist HOT 15
- Give obvious warning if version file is included in uploaded package HOT 2
- Support basic auth for mirrors via a plugin HOT 1
- upload large WHL files HOT 7
- Support PEP-691: JSON response to the `/simple` API endpoint HOT 4
- devpi web; feature: reference older version's docs? HOT 2
- forgot the root password,how to reset the root password HOT 2
- pytest-flake8 is abandoned
- Support for newer packaging HOT 2
- AttributeError: type object 'PersistentCurrent' has no attribute 'auth' HOT 3
- Mirroring fails for packages with hashes other than sha256 HOT 7
- Failed to upload tensorflow wheel with 400 error HOT 7
- Provide an aiohttp-less version for server HOT 15
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 devpi.