On Apr 11, 2015 9:46 AM, "Nick Coghlan" <ncoghlan@gmail.com> wrote:
Guido mentioned in his PyCon keynote this morning that we don't currently
have a great way for package authors to ask for help from their user base.
It occurred to me that it could be useful to have a "Help needed" feature
on PyPI (after the Warehouse migration) where package maintainers could register requests for assistance, such as:
* looking for new maintainers * requests for help with Python 3 support * links to specific issues a maintainer would like help with * links to donation pages (including links to Patreon, Gratipay, etc) * links to crowdfunding campaigns for specific new features * links to CVs/LinkedIn if folks are looking for work
Given a requirements.txt file, pip could then gain a "help-needed"
command that pulled the "help needed" entries for the named projects. We currently have https://pypi.python.org/pypi/pyline/json So, ideally: lookup("https://pypi.python.org/pypi/pyline") lookup("https://github.com/westurner/pypi") lookup(<project_uri : unicode>) : JSON-LD dict { PEP 426 Metadata 2.0 JSON (pydist.json), doap:Project, schema.org/SoftwareApplication, [{ "id": "#kickstarter-one", "type": "kickstarter-campaign", "url": <URL>, "description": "...", "date": "...", }, { "id": #donations-one", "type": "donations-xyz", "url": <URL>", } # ... } Unique ids/types made adding service-specific favicons, #anchors (and structured lookup) a bit easier. JSON-LD can also be easily displayed in RDFa in the primary HTML page.
The general idea would be to provide a direct channel from project
maintainers that may need help to their users who may be in a position to provide that help. It wouldn't need to be too complicated, just a Markdown field that maintainers could edit. There is a patch to add Markdown support to pypa/readme ( https://github.com/pypa/readme/issues/1). A structured (JSON-LD) vocabulary for these links (predicates) would also be immensely useful. Use cases: * what are all of the RSS feeds for [my] project * cross-domain project search * devbots * ( you name it ) This ties in with some work on a "Tools Schema" over in the W3C RDFJS group: * https://text.allmende.io/p/rdfjs As well as a Mailing List Extractor ("devbot"): https://westurner.org/wiki/ideas#open-source-mailing-list-extractor) And a general focus on tool / project documentation: https://westurner.org/wiki/tools ( https://westurner.github.io/tools/ )
In some cases, software is backed by folks that already have a
sustainable support model. For these it could be nice if the Markdown field could be used to say "Help not needed", and give credit to the people or orgs supporting them.
Absolutely. Even a link to a 'Contributing' docs page (such as created by cookiecutter-pypackage for ReadTheDocs or pythonhosted)
It's not something we can do anything about until after the Warehouse migration, but I figured I'd mention it while I was thinking about it :)
Getting setuptools/wheel/pypi/warehouse metadata as RDFa would require: * a JSON-LD context (and/or proper RDFS/OWL) * updates to the warehouse templates * new "reified" edges with a schema:url, schema:name/rdfs:label, and schema:descriptions Here's an example of updating pyvideo.org app with RDFa metadata (without migrating the database schema at all): * "Add Schema.org VideoObject RDFa metadata" https://github.com/pyvideo/richard/pull/213
From "Implement "hook" support for package signature verification" https://github.com/pypa/pip/issues/1035#issuecomment-39012414 :
Is this a signed graph with typed edges?
I would love to work on this; with free time or paid time wherever.