-
Notifications
You must be signed in to change notification settings - Fork 963
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
The description failed to render in the default format of reStructuredText #5855
Comments
The source code or the built artifact you're trying to deploy could be useful so we can examine the metadata. |
this is the project in question: https://bitbucket.org/dativa4data/dativatools/ this is the tar - github won't let me add the wheel, but you'll probably want to build it yourself anyway to check im not being an idiot :) This is the deployment that is failing: |
(There seems to be a problem with your MANIFEST.in: The sdist you linked to isn't valid, as $ diff -u ./dativatools-2.12.../PKG-INFO ./dativatools-2.12.195/PKG-INFO
--- ./dativatools-2.12.../PKG-INFO 2019-05-15 10:06:23.000000000 -0500
+++ ./dativatools-2.12.195/PKG-INFO 2019-05-16 04:42:54.287139204 -0500
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
-Name: dativatools
-Version: 2.12...
+Name: dativatools-jm
+Version: 2.12.195
Summary: A selection of tools for easier processing of data using Pandas and AWS
Home-page: https://bitbucket.org/dativa4data/dativatools/
Author: Dativa I then uploaded it to https://test.pypi.org/project/dativatools-jm/ successfully:
The markdown rendered correctly there. Obviously the metadata in the PKG-INFO is correct. I also (accidentally!) uploaded it to pypi.org, where it also rendered correctly. Without seeing the actual wheel, I don't have any other guesses about what might have gone wrong. Perhaps you could upload it by changing the extension, or wrapping it in another archive (.tar), or just post a link? |
thanks very much for looking at this. I worked out where the ... is coming from - we're appending bitbucket pipeline number to the version number in order to auto-increment versions when we deploy. Obviously running this locally was not achieving the same thing! this is my wheel I'm not sure I fully understand about the readme not getting included - is that normal practice? I thought that setup.py reading it in and rendering it was the key part. (Although I understand why this might be useful to you in trying to help me with my problems lol!) |
Yes, absolutely, for source distributions (sdists) (a .tar.gz, or for older windows versions, a .zip). This is supposed to contain everything needed to reproduce the binary distributions (bdist) (such as a wheel or an egg). Working source distributions are important to always provide for a number of reasons, both practical (there exist systems that cannot install binary distributions; future binary distribution formats will need to start from a source distribution) and philosophical (is it really open source if there's no source provided?) |
This time I downloaded the wheel, used So either this was just a transient error, or the distributions that was produced and uploaded today does not match what bitbucket tried to upload. |
frustratingly, i still can't make this work, i've added the readme to the manifest (although it never seemed that that was the problem). if i change the long description to 'long_description' I can upload it: https://test.pypi.org/project/dativatools/ There must be something I'm doing that is triggering the description validation - do you have any ideas at all? |
huh. As you can see here: https://test.pypi.org/project/dativatools/ I've truncated my readme and used http://rst.ninjs.org/ to help me format it as reStructuredText, now it uploads and then displays as markdown.. I think that confirms my theory that somehow my |
That suggests using an incompatible version of setuptools, wheel, or twine. The pipeline definitely uploaded using the newest twine, but I can’t tell about the other two. The files I uploaded had been built with current setuptools and wheel, and I uploaded with latest twine. Can you check your versions of all three? |
we're specifying in setup (updated this morning to see if it would help) hmm, i'm not sure what we've been using - i thought we were specifying the versions in setup.py. but that doesn't make sense. i've added steps to explicitly set the versions in build.sh:
still no luck |
aaaaaaaah, I think I've got it The bitbucket pipeline was not deploying the setuptools correctly. I think I have it now, but (as usual) i have no idea how it ever worked before. |
we were specifying 'install_requires', but the environment didn't match that - is it supposed to warn or error in that case? |
Historically, I just have something like a |
i mis-typed. we are setting
but clearly i've not understood that. Thanks so much for the links and the help. :) |
Since the #5835 commit (I think) our deployments to pypi have been failing with this error:
as previously, our setup.py specifies
long_description_content_type="text/markdown"
looking at previous issues, I have tried using twine to verify it locally and it seems perfectly happy with the readme and setup.
i'm using the most recent versions of setuptools and wheel
Expected behavior
If there is a legitimate problem with our description, surely it should be that the markdown can't be read?
To Reproduce
My Platform
This is happening through a bitbucket deployment pipeline
i'm sure i've missed some vital info, but hopefully i can answer any questions later. Thanks.
The text was updated successfully, but these errors were encountered: