{"id":29790908,"url":"https://github.com/metabrainz/mb-rngpy","last_synced_at":"2026-01-20T17:35:18.883Z","repository":{"id":18612442,"uuid":"21817850","full_name":"metabrainz/mb-rngpy","owner":"metabrainz","description":"Python bindings for the MusicBrainz XML Metadata RELAX NG schema","archived":false,"fork":false,"pushed_at":"2025-05-18T10:48:43.000Z","size":408,"stargazers_count":0,"open_issues_count":1,"forks_count":3,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-07-16T03:39:37.176Z","etag":null,"topics":["musicbrainz","python","python-bindings","relaxng"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/mb-rngpy/","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/metabrainz.png","metadata":{"funding":{"custom":["https://metabrainz.org/donate"],"github":["metabrainz"]},"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-07-14T11:51:50.000Z","updated_at":"2025-05-06T16:39:23.000Z","dependencies_parsed_at":"2025-05-05T17:46:45.380Z","dependency_job_id":"38e692d5-0285-428f-b249-a5dfad155131","html_url":"https://github.com/metabrainz/mb-rngpy","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/metabrainz/mb-rngpy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabrainz%2Fmb-rngpy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabrainz%2Fmb-rngpy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabrainz%2Fmb-rngpy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabrainz%2Fmb-rngpy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/metabrainz","download_url":"https://codeload.github.com/metabrainz/mb-rngpy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabrainz%2Fmb-rngpy/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267442904,"owners_count":24087893,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-27T02:00:11.917Z","response_time":82,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["musicbrainz","python","python-bindings","relaxng"],"created_at":"2025-07-28T00:13:04.369Z","updated_at":"2026-01-20T17:35:18.842Z","avatar_url":"https://github.com/metabrainz.png","language":"Python","funding_links":["https://metabrainz.org/donate","https://github.com/sponsors/metabrainz"],"categories":[],"sub_categories":[],"readme":"# mb-rngpy\n\nPython bindings for the MusicBrainz RNG schema. Required by [sir](https://github.com/metabrainz/sir)\n\n## Installation\n\nDevelopment files of both [`libxml2`](http://www.xmlsoft.org/) and\n[`libxslt`](http://www.xmlsoft.org/XSLT/) are\nrequired to install [`lxml`](https://lxml.de/) Python package\nwhich is imported by `mb-rngpy`.\n\nIf you are on Ubuntu/Debian you can install these via:\n```bash\nsudo apt-get install libxml2-dev libxslt1-dev\n```\n\nThen you can install `mb-rngpy` from [PyPI](https://pypi.org/project/mb-rngpy/) via:\n```bash\npip install mb-rngpy\n```\n\nIt is supported on Python 3 only.\n\n## Community\n\nJoin the development community of MusicBrainz at https://community.metabrainz.org/c/musicbrainz/devel\n\nReport issues at https://tickets.metabrainz.org/secure/CreateIssue!default.jspa?pid=10022\n\n## Updating the models\n\n### Requirements\n\nPlease install the following programs:\n\n* [Trang](https://github.com/relaxng/jing-trang/releases)\n* [Twine](https://twine.readthedocs.io/) to upload to PyPI\n* [Virtualenv](https://virtualenv.pypa.io/) to create a virtual environment\n\nIf you are on Ubuntu/Debian you can install these via:\n```bash\nsudo apt-get install trang twine python-virtualenv\n```\n\nMake sure you have:\n* Git credentials for remote `origin`\n* GPG private signing key `CE33CF04`\n* PyPI credentials in `~/.pypirc`\n\n### Updating and pushing to Git and PyPI\n\nFinall run\n```bash\n./update.sh\n```\n\nIt will create a virtual environment with the packages lxml and\n[generateDS](http://www.davekuhlman.org/generateDS.html), update the\nschema, regenerate the files, test, commit and tag changes with Git,\npush commits and tags with Git, build Python package and push it to\nPyPI.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetabrainz%2Fmb-rngpy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmetabrainz%2Fmb-rngpy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetabrainz%2Fmb-rngpy/lists"}