# AutoPub
[![Build Status](https://img.shields.io/circleci/build/github/autopub/autopub)](https://circleci.com/gh/autopub/autopub) [![PyPI Version](https://img.shields.io/pypi/v/autopub)](https://pypi.org/project/autopub/)
AutoPub enables project maintainers to release new package versions to PyPI by merging pull requests.
## Environment
AutoPub is intended for use with continuous integration (CI) systems such as [GitHub Actions][], [CircleCI][], or [Travis CI][]. Projects used with AutoPub are built via [build][] and published via [Twine][]. Contributions that add support for other CI and build systems are welcome.
## Configuration
AutoPub settings can be configured via the `[tool.autopub]` table in the target project’s `pyproject.toml` file. Required settings include Git username and email address:
```toml
[tool.autopub]
git-username = "Your Name"
git-email = "your_email@example.com"
```
## Release Files
Contributors should include a `RELEASE.md` file in their pull requests with two bits of information:
* Release type: major, minor, or patch
* Description of the changes, to be used as the changelog entry
Example:
Release type: patch
Add function to update version strings in multiple files.
## Usage
The following `autopub` sub-commands can be used as steps in your CI flows:
* `autopub check`: Check whether release file exists.
* `autopub prepare`: Update version strings and add entry to changelog.
* `autopub build`: Build the project.
* `autopub commit`: Add, commit, and push incremented version and changelog changes.
* `autopub githubrelease`: Create a new release on GitHub.
* `autopub publish`: Publish a new release.
For systems such as Travis CI in which only one deployment step is permitted, there is a single command that runs the above steps in sequence:
* `autopub deploy`: Run `prepare`, `build`, `commit`, `githubrelease`, and `publish` in one invocation.
[GitHub Actions]: https://github.com/features/actions
[CircleCI]: https://circleci.com
[Travis CI]: https://travis-ci.org
[build]: https://pypa-build.readthedocs.io
[Twine]: https://twine.readthedocs.io/
Raw data
{
"_id": null,
"home_page": "https://github.com/autopub/autopub",
"name": "autopub",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10.0",
"maintainer_email": null,
"keywords": "automatic, packaging, publish, release, version",
"author": "Justin Mayer",
"author_email": "entroP@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/0f/f0/2a633a58d1220afbb419a3cb7fc2c2012cf5bd6adba82330244def0bd540/autopub-0.4.1.tar.gz",
"platform": null,
"description": "# AutoPub\n\n[![Build Status](https://img.shields.io/circleci/build/github/autopub/autopub)](https://circleci.com/gh/autopub/autopub) [![PyPI Version](https://img.shields.io/pypi/v/autopub)](https://pypi.org/project/autopub/)\n\nAutoPub enables project maintainers to release new package versions to PyPI by merging pull requests.\n\n## Environment\n\nAutoPub is intended for use with continuous integration (CI) systems such as [GitHub Actions][], [CircleCI][], or [Travis CI][]. Projects used with AutoPub are built via [build][] and published via [Twine][]. Contributions that add support for other CI and build systems are welcome.\n\n## Configuration\n\nAutoPub settings can be configured via the `[tool.autopub]` table in the target project\u2019s `pyproject.toml` file. Required settings include Git username and email address:\n\n```toml\n[tool.autopub]\ngit-username = \"Your Name\"\ngit-email = \"your_email@example.com\"\n```\n\n## Release Files\n\nContributors should include a `RELEASE.md` file in their pull requests with two bits of information:\n\n* Release type: major, minor, or patch\n* Description of the changes, to be used as the changelog entry\n\nExample:\n\n Release type: patch\n\n Add function to update version strings in multiple files.\n\n## Usage\n\nThe following `autopub` sub-commands can be used as steps in your CI flows:\n\n* `autopub check`: Check whether release file exists.\n* `autopub prepare`: Update version strings and add entry to changelog.\n* `autopub build`: Build the project.\n* `autopub commit`: Add, commit, and push incremented version and changelog changes.\n* `autopub githubrelease`: Create a new release on GitHub.\n* `autopub publish`: Publish a new release.\n\nFor systems such as Travis CI in which only one deployment step is permitted, there is a single command that runs the above steps in sequence:\n\n* `autopub deploy`: Run `prepare`, `build`, `commit`, `githubrelease`, and `publish` in one invocation.\n\n\n[GitHub Actions]: https://github.com/features/actions\n[CircleCI]: https://circleci.com\n[Travis CI]: https://travis-ci.org\n[build]: https://pypa-build.readthedocs.io\n[Twine]: https://twine.readthedocs.io/",
"bugtrack_url": null,
"license": "AGPL-3.0",
"summary": "Automatic package release upon pull request merge",
"version": "0.4.1",
"project_urls": {
"Homepage": "https://github.com/autopub/autopub",
"Issue Tracker": "https://github.com/autopub/autopub/issues",
"Repository": "https://github.com/autopub/autopub"
},
"split_keywords": [
"automatic",
" packaging",
" publish",
" release",
" version"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f21325a208402d3b319d45a47b15f6dbc07e9afed0e21849f2a655da49621a88",
"md5": "acaf546faddd0b7ed0f7e4d7e5eae75e",
"sha256": "aa8330091e4a0a4f25354688952937e595da7d9f1c8b7bb494dce6e2fe26e385"
},
"downloads": -1,
"filename": "autopub-0.4.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "acaf546faddd0b7ed0f7e4d7e5eae75e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10.0",
"size": 31857,
"upload_time": "2024-11-02T22:03:33",
"upload_time_iso_8601": "2024-11-02T22:03:33.356358Z",
"url": "https://files.pythonhosted.org/packages/f2/13/25a208402d3b319d45a47b15f6dbc07e9afed0e21849f2a655da49621a88/autopub-0.4.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0ff02a633a58d1220afbb419a3cb7fc2c2012cf5bd6adba82330244def0bd540",
"md5": "d3352f94dbfa85530d9f258d82ec8e15",
"sha256": "53bf2c0ac9e3a83907dabaddf4286e733143d6732f5eb379c844a109ea9d85b0"
},
"downloads": -1,
"filename": "autopub-0.4.1.tar.gz",
"has_sig": false,
"md5_digest": "d3352f94dbfa85530d9f258d82ec8e15",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10.0",
"size": 29155,
"upload_time": "2024-11-02T22:03:35",
"upload_time_iso_8601": "2024-11-02T22:03:35.085955Z",
"url": "https://files.pythonhosted.org/packages/0f/f0/2a633a58d1220afbb419a3cb7fc2c2012cf5bd6adba82330244def0bd540/autopub-0.4.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-02 22:03:35",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "autopub",
"github_project": "autopub",
"github_fetch_exception": true,
"lcname": "autopub"
}