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

PyPI should render readmes written in Markdown #46

Closed
hickford opened this issue Jun 3, 2014 · 20 comments
Closed

PyPI should render readmes written in Markdown #46

hickford opened this issue Jun 3, 2014 · 20 comments

Comments

@hickford
Copy link
Contributor

hickford commented Jun 3, 2014

Reproduced from https://bitbucket.org/pypa/pypi/issue/148/support-markdown-for-readmes


If you write your readme in Restructured Text, PyPI will render it on your project's page (eg. https://pypi.python.org/pypi/requests ). It should be possible to write your readme in Markdown too. Markdown is a pervasive format used on GitHub and StackOverflow. It shouldn't be necessary to learn a new markup language or rewrite your project's documentation to publish a Python package.

This is common frustration, and the Python community suffers because it's a barrier to publishing packages and writing documentation . Please consider it!

This is common frustration, and the Python community suffers because it's a barrier to publishing packages and writing documentation . Please consider it!

@ncoghlan
Copy link
Member

ncoghlan commented Jun 3, 2014

I believe supporting more markup languages is on the todo list for
Warehouse (behind becoming a feature complete replacement for the existing
PyPI implementation).

@hickford
Copy link
Contributor Author

hickford commented Jun 5, 2014

@bukzor
Copy link

bukzor commented Jan 29, 2015

hickford's change was committed, then rolled back.
This is the second attempt I think: https://bitbucket.org/pypa/pypi/pull-request/59

@karolyi
Copy link

karolyi commented Mar 1, 2016

+1

1 similar comment
@xapple
Copy link

xapple commented Mar 16, 2016

+1

@coxjonc
Copy link

coxjonc commented Apr 29, 2016

+1 man writing rst is annoying

@pylover
Copy link

pylover commented Aug 8, 2016

+1

@ekohl
Copy link

ekohl commented Aug 8, 2016

It would appear pypa/readme_renderer#3 is the latest effort.

@pylover
Copy link

pylover commented Aug 8, 2016

Interesting

@msabramo
Copy link

msabramo commented Aug 9, 2016

I think the next step is to get pypa/packaging.python.org#258 reviewed.

@AnaPana-zz
Copy link

+1

@glenjamin
Copy link

Is this feature now fully merged? I tried to piece together how to make it work today, but my README ends up as plain text still.

@brainwane
Copy link
Contributor

@glenjamin Sorry, no, not yet! @di is working on the checklist in pypi/warehouse#869 (comment) . Specifically, at the moment, he's working to update pkginfo. Then the next thing to fix will be twine and then Warehouse.

facebook-github-bot pushed a commit to facebook/pyre-check that referenced this issue Mar 9, 2018
Summary:
Adding a long_description text field improves the formatting on the project page.
When pypa/packaging-problems#46 will be closed we will be able to upload the README in full markup.

Reviewed By: dkgi

Differential Revision: D7208368

fbshipit-source-id: 8a5e946f11fcb31811f29b2e8860f2f655f3f941
@sayanarijit
Copy link

sayanarijit commented Mar 11, 2018

Hi All

Why don't we just use client side JavaScript to automatically detect the format and render it?

There are plenty of render tools like gfm that are capable enough to handle it all at client side.

This way I believe there is no need to change any algorithm at the back-end.

@merwok
Copy link

merwok commented Mar 12, 2018

I would be great if the new PyPI kept being functional without requiring javascript.

@ewdurbin
Copy link
Member

Accepted PEP 566 Description-Content-Type removes the need for trying to detect the format.

Once implemented, The renderer for PyPI (https://github.com/pypa/readme_renderer) will be able to add explicit renders for various markup syntaxes. This is the correct solution and doesn't require JavaScript or other fragile hacks.

Right now most of the maintainers/contributors are working on completing the final/production rollout and switchover to https://github.com/pypa/warehouse, but I believe some progress is being made towards implementation of PEP 566 overall.

@brainwane
Copy link
Contributor

Yeah, @di has been making great progress on implementing PEP 566 in relevant tools -- pypi/warehouse#869 (comment) is a good checklist to follow and he's updating it as maintainers merge and release his improvements.

There's now a release candidate for the next version of Twine available and it includes PEP 566 compliance. (Witness my test project!) Feel free to use it as you test other Markdown-related packaging ecosystem stuff.

@ncoghlan
Copy link
Member

Given https://dustingram.com/articles/2018/03/16/markdown-descriptions-on-pypi, I'm going to go ahead and close this. Even though it will take a while for all the related updates to ripple out through the ecosystem, it now works with latest PyPI, setuptools, and twine combo :)

@hickford
Copy link
Contributor Author

Great news, thank for sharing! To clarify, Markdown readme detection isn't automatic: you need to follow the instructions for and reupload your project.

Thanks to all involved.

@msabramo
Copy link

I was very happy to see that this happened! Fantastic! Thank you everyone who worked on this and the new PyPI!

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

No branches or pull requests