{ "info": { "author": "Jurriaan H. Spaaks", "author_email": "j.spaaks@esciencecenter.nl", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Information Technology", "Intended Audience :: Science/Research", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering", "Topic :: Software Development", "Topic :: Utilities" ], "description": "Badges\n======\n\n- |Zenodo DOI|\n- |Travis build status|\n- |PyPI badge|\n- |CII Best Practices|\n- |SonarCloud Quality Gate|\n- |SonarCloud Code Coverage|\n- |Research Software Directory|\n\ncffconvert\n==========\n\nRead `CFF formatted\nCITATION `__ file from a GitHub\nurl and convert it to various formats, such as:\n\n1. BibTeX\n2. EndNote\n3. codemeta\n4. plain JSON\n5. schema.org\n6. RIS\n7. Zenodo JSON\n\nSupported types of GitHub URL:\n\n1. ``https://github.com//``\n2. ``https://github.com///tree/``\n3. ``https://github.com///tree/``\n4. ``https://github.com///tree/``\n\n``cffconvert`` does not support the full `CFF\nspec `__\nyet.\n\nFor users\n=========\n\nInstall\n-------\n\nThere are a few options:\n\n**Option 1 (preferred): install in user space.**\n\nEnsure that the user space directory ``~/.local/bin/`` is on the ``PATH``.\n\n.. code:: bash\n\n pip3 install --user cffconvert\n\n**Option 2: use ``cffconvert`` as a Google Cloud Function**\n\n``cffconvert`` comes with `an interface `_ for running\nas a Google Cloud Function. We set it up here https://bit.ly/cffconvert for the\ntime being / as long as we have enough credits on the Google Cloud Function\nplatform.\n\nReally, all the Google Cloud interface does is get any supplied URL parameters,\nand use them as if they had been entered as command line arguments. For more\ndetailed explanation and examples, see https://bit.ly/cffconvert.\n\nOn Google Cloud Function, set ``requirements.txt`` to:\n\n.. code::\n\n Flask\n cffconvert\n\nand use the following as ``main.py``:\n\n.. code:: python\n\n from cffconvert.gcloud import cffconvert\n\n def main(request):\n return cffconvert(request)\n\n**Option 3 (not preferred): install in virtual environment**\n\n.. code:: bash\n\n virtualenv -p /usr/bin/python3.5 myvenv3\n source myvenv3/bin/activate\n pip3 install cffconvert\n\n**Option 4 (not preferred): install globally**\n\nNote: this option needs sudo rights.\n\n.. code:: bash\n\n sudo -H pip3 install cffconvert\n\n**Option 5 (not preferred): install with conda**\n\nSee https://stackoverflow.com/questions/41060382/using-pip-to-install-packages-to-anaconda-environment\n\n.. code:: bash\n\n conda install pip\n pip install cffconvert\n\n**Option 6 (not preferred): install with setup.py in the user environment**\n\n.. code:: bash\n\n python setup.py install --user\n\n\nCommand line interface\n----------------------\n\nSee ``cffconvert``'s options:\n\n.. code:: bash\n\n cffconvert --help\n\nShows:\n\n.. code:: bash\n\n Usage: cffconvert [OPTIONS]\n\n Options:\n -if, --infile TEXT Path to the CITATION.cff input file.\n -of, --outfile TEXT Path to the output file.\n -f, --outputformat TEXT Output format: bibtex|cff|codemeta|endnote|schema.org|ris|zenodo\n -u, --url TEXT URL of the repo containing the CITATION.cff (currently only github.com is supported; may\n include branch name, commit sha, tag name). For example: 'https://github.com/citation-\n file-format/cff-converter-python' or 'https://github.com/citation-file-format/cff-\n converter-python/tree/master'\n --validate Validate the CITATION.cff found at the URL or supplied through '--infile'\n -ig, --ignore-suspect-keys If True, ignore any keys from CITATION.cff that are likely out of date, such as\n 'commit', 'date-released', 'doi', and 'version'.\n --verbose Provide feedback on what was entered.\n --version Print version and exit.\n --help Show this message and exit.\n\nExample usage, retrieve CITATION.cff from URL with ``curl``, output as BibTeX:\n\n.. code:: bash\n\n curl https://raw.githubusercontent.com/citation-file-format/cff-converter-python/44a8ad35d94dd50a8b5924d8d26402ae0d162189/CITATION.cff > CITATION.cff\n cffconvert -f bibtex\n\nResults in:\n\n.. code:: bash\n\n @misc{YourReferenceHere,\n author = {\n Jurriaan H. Spaaks and\n Tom Klaver\n },\n title = {cff-converter-python},\n month = {1},\n year = {2018},\n doi = {10.5281/zenodo.1162057},\n url = {https://github.com/citation-file-format/cff-converter-python}\n }\n\nExample usage, let ``cffconvert`` retrieve CITATION.cff from URL, output as ``codemeta.json``:\n\n.. code:: bash\n\n cffconvert -f codemeta -u https://github.com/citation-file-format/cff-converter-python/tree/master -of codemeta.json\n\nContents of file ``codemeta.json``:\n\n.. code:: json\n\n {\n \"@context\": [\n \"https://doi.org/10.5063/schema/codemeta-2.0\",\n \"http://schema.org\"\n ],\n \"@type\": \"SoftwareSourceCode\",\n \"author\": [\n {\n \"@type\": \"Person\",\n \"affiliation\": {\n \"@type\": \"Organization\",\n \"legalName\": \"Netherlands eScience Center\"\n },\n \"familyName\": \"Spaaks\",\n \"givenName\": \"Jurriaan H.\"\n },\n {\n \"@type\": \"Person\",\n \"affiliation\": {\n \"@type\": \"Organization\",\n \"legalName\": \"Netherlands eScience Center\"\n },\n \"familyName\": \"Klaver\",\n \"givenName\": \"Tom\"\n },\n {\n \"@type\": \"Person\",\n \"affiliation\": {\n \"@type\": \"Organization\",\n \"legalName\": \"Netherlands eScience Center\"\n },\n \"familyName\": \"Verhoeven\",\n \"givenName\": \"Stefan\"\n }\n ],\n \"codeRepository\": \"https://github.com/citation-file-format/cff-converter-python\",\n \"datePublished\": \"2018-05-22\",\n \"identifier\": \"https://doi.org/10.5281/zenodo.1162057\",\n \"keywords\": [\n \"citation\",\n \"bibliography\",\n \"cff\",\n \"CITATION.cff\"\n ],\n \"license\": \"http://www.apache.org/licenses/LICENSE-2.0\",\n \"name\": \"cffconvert\",\n \"version\": \"0.0.5\"\n }\n\nConvert the contents of a local file ``CITATION.cff`` into the format used by ``.zenodo.json`` files (see\n`Zenodo's API docs `__), while ignoring any keys that are likely out of date:\n\n.. code:: bash\n\n cffconvert -f zenodo --ignore-suspect-keys\n\nResults in (note absence of ``date-released``, ``doi``, and ``version``):\n\n.. code:: bash\n\n {\n \"creators\": [\n {\n \"affiliation\": \"Netherlands eScience Center\",\n \"name\": \"Spaaks, Jurriaan H.\"\n },\n {\n \"affiliation\": \"Netherlands eScience Center\",\n \"name\": \"Klaver, Tom\"\n },\n {\n \"affiliation\": \"Netherlands eScience Center\",\n \"name\": \"Verhoeven, Stefan\"\n }\n ],\n \"keywords\": [\n \"citation\",\n \"bibliography\",\n \"cff\",\n \"CITATION.cff\"\n ],\n \"license\": {\n \"id\": \"Apache-2.0\"\n },\n \"title\": \"cffconvert\"\n }\n\n\nFor developers\n==============\n\nInstall\n-------\n\n.. code:: bash\n\n # get a copy of the cff-converter-python software\n git clone https://github.com/citation-file-format/cff-converter-python.git\n # change directory into cff-converter-python\n cd cff-converter-python\n # make a Python3.5 virtual environment named .venv35\n virtualenv -p /usr/bin/python3.5 .venv35\n # activate the virtual environment\n source ./.venv35/bin/activate\n # install any packages that cff-converter-python needs\n pip install -r requirements.txt\n # install any packages used for development such as for testing\n pip install -r requirements-dev.txt\n # install the cffconvert package using symlinks\n pip install --editable .\n\nRunning tests\n-------------\n\n.. code:: bash\n\n # (from the project root)\n\n # run unit tests\n pytest test/\n\n # run tests against live system (GitHub)\n pytest livetest/\n\n\nFor maintainers\n===============\n\nMaking a release\n----------------\n\n.. code:: bash\n\n # make sure the release notes are up to date\n\n # run the live tests and unit tests, make sure they pass\n\n # git push everything, merge into master as appropriate\n\n # verify that everything has been pushed and merged by testing as follows\n cd $(mktemp -d)\n git clone https://github.com/citation-file-format/cff-converter-python.git\n cd cff-converter-python\n virtualenv -p /usr/bin/python3.5 myvenv3\n source myvenv3/bin/activate\n pip install -r requirements.txt\n pip install -r requirements-dev.txt\n pytest test/\n pytest livetest/\n\n # register with PyPI test instance https://test.pypi.org\n\n # remove these directories if you have them\n rm -rf dist\n rm -rf cffconvert-egg.info\n # make a source distribution:\n python setup.py sdist\n # install the 'upload to pypi/testpypi tool' aka twine\n pip install twine\n # upload the contents of the source distribtion we just made\n twine upload --repository-url https://test.pypi.org/legacy/ dist/*\n\n # checking the package\n # pip install --user --index-url https://test.pypi.org/simple/ cffconvert\n \n # check that the package works as it should when installed from pypitest\n\n # FINAL STEP: upload to PyPI\n twine upload dist/*\n\n.. |Travis build status| image:: https://travis-ci.org/citation-file-format/cff-converter-python.svg?branch=master\n :target: https://travis-ci.org/citation-file-format/cff-converter-python\n.. |Zenodo DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.1162057.svg\n :target: https://doi.org/10.5281/zenodo.1162057\n.. |PyPi Badge| image:: https://img.shields.io/pypi/v/cffconvert.svg?colorB=blue \n :target: https://pypi.python.org/pypi/cffconvert/ \n.. |Research Software Directory| image:: https://img.shields.io/badge/rsd-cffconvert-00a3e3.svg\n :target: https://www.research-software.nl/software/cff-converter-python\n.. |CII Best Practices| image:: https://bestpractices.coreinfrastructure.org/projects/1811/badge\n :target: https://bestpractices.coreinfrastructure.org/projects/1811\n.. |SonarCloud Quality Gate| image:: https://sonarcloud.io/api/project_badges/measure?project=cff-converter-python&metric=alert_status\n :target: https://sonarcloud.io/dashboard?id=cff-converter-python\n.. |SonarCloud Code Coverage| image:: https://sonarcloud.io/api/project_badges/measure?project=cff-converter-python&metric=coverage\n :target: https://sonarcloud.io/dashboard?id=cff-converter-python", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/citation-file-format/cff-converter-python/archive/1.3.0.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/citation-file-format/cff-converter-python", "keywords": "citation,cff,CITATION.cff,bibliography", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "cffconvert", "package_url": "https://pypi.org/project/cffconvert/", "platform": "", "project_url": "https://pypi.org/project/cffconvert/", "project_urls": { "Download": "https://github.com/citation-file-format/cff-converter-python/archive/1.3.0.tar.gz", "Homepage": "https://github.com/citation-file-format/cff-converter-python" }, "release_url": "https://pypi.org/project/cffconvert/1.3.0/", "requires_dist": null, "requires_python": "", "summary": "Read CFF formatted CITATION file from a GitHub url or local file and convert it to BibTeX, EndNote, RIS, Codemeta, .zenodo.json, or plain JSON", "version": "1.3.0" }, "last_serial": 5913446, "releases": { "0.0.3": [ { "comment_text": "", "digests": { "md5": "e48f6018e07350f929ce0c8785e43efa", "sha256": "86b9459dab29180f01d4cb40d2af3bc4d19aa7a7aaa63a6976069b261dd43f9e" }, "downloads": -1, "filename": "cffconvert-0.0.3.tar.gz", "has_sig": false, "md5_digest": "e48f6018e07350f929ce0c8785e43efa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11743, "upload_time": "2018-05-03T12:09:14", "url": "https://files.pythonhosted.org/packages/a0/2c/0ed0bcbc3e02f0c1093b0eb1757e53bb4ee6de20aa1de88a0152330dcdec/cffconvert-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "e7c1e9cd3b80c9a6393c5ba0ce1b3d57", "sha256": "ccdbf66775c6e4d7170a9fd6d9ac7793473db3c8bd1d3f6d12fc3c0c395615ea" }, "downloads": -1, "filename": "cffconvert-0.0.4.tar.gz", "has_sig": false, "md5_digest": "e7c1e9cd3b80c9a6393c5ba0ce1b3d57", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14798, "upload_time": "2018-05-22T15:23:10", "url": "https://files.pythonhosted.org/packages/0f/c3/c6618bf452a2433bcaef0a8e7caa2ce17ba21f427d1ac70cc9ceb1437634/cffconvert-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "aa0530844167d9f9d8ef152c3f945b56", "sha256": "75485d6f7be2a7315fc0d11af58d0a6ecef61a7e69bf6c9b3b068719d1db0583" }, "downloads": -1, "filename": "cffconvert-0.0.5.tar.gz", "has_sig": false, "md5_digest": "aa0530844167d9f9d8ef152c3f945b56", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14866, "upload_time": "2018-05-22T16:19:17", "url": "https://files.pythonhosted.org/packages/7e/9f/3bfae9a6eae3bffd5d8c045913a108f7d1434c03de172985e7b1456761c0/cffconvert-0.0.5.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "94a6bdcb5c1a2c7ced239aa0d03492a5", "sha256": "a85ab8ee08db085871c7ef97d983795e7bc8e2a47c879b7cd3328a24a9f61a3c" }, "downloads": -1, "filename": "cffconvert-1.0.0.tar.gz", "has_sig": false, "md5_digest": "94a6bdcb5c1a2c7ced239aa0d03492a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16331, "upload_time": "2018-07-23T14:00:05", "url": "https://files.pythonhosted.org/packages/b5/39/d19b0d84d80c90176c5ca4abde4518e1333fe8b3271fa8d7a60dcf00aef6/cffconvert-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "a5e34a5d9737e5a8fab03c62b465062d", "sha256": "a5dcef4e42a2fcf37e32dd0864eca577b1bda3660b634a8d5a1b8ada4390f280" }, "downloads": -1, "filename": "cffconvert-1.0.1.tar.gz", "has_sig": false, "md5_digest": "a5e34a5d9737e5a8fab03c62b465062d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16469, "upload_time": "2018-07-25T11:21:22", "url": "https://files.pythonhosted.org/packages/79/ee/6a359b57860b48badfe5538a1ea906c500532a35f76d46b9866f915968f4/cffconvert-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "f81203eb601a612c7994b649344d300b", "sha256": "cd1f5486db81ad1252aa126444ef4b7d14570e967b3db07a68dedc07d37567d7" }, "downloads": -1, "filename": "cffconvert-1.0.2.tar.gz", "has_sig": false, "md5_digest": "f81203eb601a612c7994b649344d300b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16534, "upload_time": "2018-10-09T15:01:23", "url": "https://files.pythonhosted.org/packages/25/db/d20a998d0c1c4c8eb055439a8c5e7c9f36eda264abeaa19afa459e29eba6/cffconvert-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "2f6b85324567516182a53c959fb4b6ec", "sha256": "4739b5a20cd0a5ee02d2dd917cf49544b55ab739857961f1cdea6fa88a25f86f" }, "downloads": -1, "filename": "cffconvert-1.0.3.tar.gz", "has_sig": false, "md5_digest": "2f6b85324567516182a53c959fb4b6ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16524, "upload_time": "2018-11-05T16:40:21", "url": "https://files.pythonhosted.org/packages/21/32/326462456bde60719661d29fd2b56a7e795566692caf00299ea4dcd6d7e8/cffconvert-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "e8f3a1744fa98387259597095d07b7a4", "sha256": "2483f88855c61b02c1c72585ff5a57287ea67f71588ec22b9c10004b19904695" }, "downloads": -1, "filename": "cffconvert-1.0.4.tar.gz", "has_sig": false, "md5_digest": "e8f3a1744fa98387259597095d07b7a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16581, "upload_time": "2018-12-05T14:18:44", "url": "https://files.pythonhosted.org/packages/7b/0e/c5aa22995f98eef71c3a0670fc2b7029d1379b2c146636e9eabffc741f55/cffconvert-1.0.4.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "a90493fd3747b6cc37278839749cbbdc", "sha256": "923d08812e8b9fcba20b926b5cb22d4923f1980b7d1ce1bc7d7602c566034525" }, "downloads": -1, "filename": "cffconvert-1.1.0.tar.gz", "has_sig": false, "md5_digest": "a90493fd3747b6cc37278839749cbbdc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17203, "upload_time": "2019-04-04T13:50:35", "url": "https://files.pythonhosted.org/packages/23/69/1b05ccee5d6ebe777a0ab8815e6f38784d46db183f0be577e8f3ee06ffe3/cffconvert-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "d00f8b1ed7d6a12ac92cff8cca8ac848", "sha256": "5c130ddcd44445780316ac16a02f01cef22fe92f147720de6f7192eb6b7635a3" }, "downloads": -1, "filename": "cffconvert-1.2.0.tar.gz", "has_sig": false, "md5_digest": "d00f8b1ed7d6a12ac92cff8cca8ac848", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17215, "upload_time": "2019-06-25T11:48:46", "url": "https://files.pythonhosted.org/packages/2a/e6/29021d2b5fdbc2a0b82b15d7e68d6328201adbc3b90bc049a1b19dbf3456/cffconvert-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "2ecd0b3d884728191c4db3d5c2493cb9", "sha256": "d43e5925b43ddc2140b50a87cca45cc8e8ed7e5426476c8d3d67f3753ea9a8db" }, "downloads": -1, "filename": "cffconvert-1.2.1.tar.gz", "has_sig": false, "md5_digest": "2ecd0b3d884728191c4db3d5c2493cb9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17997, "upload_time": "2019-07-16T13:56:17", "url": "https://files.pythonhosted.org/packages/08/de/7ae01e13c544a4b6888552459ca91faf8238efa97a169e82e80320600f9c/cffconvert-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "517402dc4e38d92b0fde3f74d3f10172", "sha256": "ba042a960def1625440c2526637dcb3e666ad7378b0513744f93f68d3a64ce4d" }, "downloads": -1, "filename": "cffconvert-1.2.2.tar.gz", "has_sig": false, "md5_digest": "517402dc4e38d92b0fde3f74d3f10172", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19717, "upload_time": "2019-10-01T13:51:04", "url": "https://files.pythonhosted.org/packages/f5/bf/e59773ef7184768fe601adaa8cf95f68f642d230e5d34ff29b577d89505c/cffconvert-1.2.2.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "12f0759af42032c8353df56798184510", "sha256": "2c369fd1745b0332608847b677dca5835bd2aa7d2c3a56a8853a00c4c7f99fb1" }, "downloads": -1, "filename": "cffconvert-1.3.0.tar.gz", "has_sig": false, "md5_digest": "12f0759af42032c8353df56798184510", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20201, "upload_time": "2019-10-01T15:51:52", "url": "https://files.pythonhosted.org/packages/8d/a3/0a9368496422f2cb2f8075219b4dff7c97116baff8aa68b2e6c46665d29c/cffconvert-1.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "12f0759af42032c8353df56798184510", "sha256": "2c369fd1745b0332608847b677dca5835bd2aa7d2c3a56a8853a00c4c7f99fb1" }, "downloads": -1, "filename": "cffconvert-1.3.0.tar.gz", "has_sig": false, "md5_digest": "12f0759af42032c8353df56798184510", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20201, "upload_time": "2019-10-01T15:51:52", "url": "https://files.pythonhosted.org/packages/8d/a3/0a9368496422f2cb2f8075219b4dff7c97116baff8aa68b2e6c46665d29c/cffconvert-1.3.0.tar.gz" } ] }