release-exporter


Namerelease-exporter JSON
Version 1.1.2 PyPI version JSON
download
home_page
SummaryRelease exporter for GitHub and GitLab
upload_time2023-11-14 22:38:18
maintainer
docs_urlNone
authorAkshay Raj Gollahalli
requires_python>=3.9,<4.0
licenseMIT
keywords changelog releases
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Release Exporter

![Banner](https://raw.githubusercontent.com/akshaybabloo/release-exporter-old/master/release-exporter.png)

**Blog:** [https://www.gollahalli.com/blog/export-your-github-and-gitlab-releases-as-a-changelog/](https://www.gollahalli.com/blog/export-your-github-and-gitlab-releases-as-a-changelog/)

This CLI exports your project releases to a markdown based on [keep a
changelog](http://keepachangelog.com/en/1.0.0/) and
[markdownlint](https://github.com/DavidAnson/markdownlint) and JSON,
it currently supports GitHub and GitLab.

## Install

```bash
pip install release-exporter
```

Or download this repository and type in the following in your
terminal/cmd

```bash
python setup.py install
```

## Usage

In your terminal/cmd, change to the folder where your repository is
located and do the following:

```bash
rex --token <your token> markdown
```

That's it. You should see a `CHANGELOG.md` in your folder.

### Advance Usage

Release exporter has the following options

```bash
Usage: rex [OPTIONS] COMMAND [ARGS]...

Options:
    --token TEXT      Token number if its a private repository.
    --url TEXT        URL of your repository. This is optional if your current
                    directory has .git folder with remote url.
    --location TEXT   Local location of your repository.
    --version
    --universal TEXT  Create a global settings file. Defaults to True.
    --help            Show this message and exit.

Commands:
    all       Creates change log for all formats.
    init      Creates .rex file.
    json      Creates JSON file.
    markdown  Creates markdown file.
    rst       Creates reStructuredText file.
```

If you don't have a repository on your computer, but you still want to
generate a change log you can manually add your repository URL as
follows:

```bash
rex markdown --token <your token> --url <your url>
```

If you have your repository in a different location and you are lazy
(like me) to change into that directory, get the absolute path of your
repository add it to the `--location <location>`.

```bash
rex --token <your token> --location <absolute path>
```

You can also export your releases to JSON file by just replacing
`markdown` with `json`. The output looks something like this:

```json
{
    "repositoryName": "release-exporter",
    "provider": "github.com",
    "owner": "akshaybabloo",
    "repoUrl": "https://github.com/akshaybabloo/release-exporter",
    "totalTags": 2,
    "data": [
        {
            "tagName": "Unreleased",
            "description": "",
            "createdAt": "",
            "compareUrl": "https://github.com/akshaybabloo/release-exporter/compare/1.0.1...HEAD"
        },
        {
            "tagName": "v1.0.1",
            "description": "### Added\n- Unreleased tag added to the template and GitHub\n- Unreleased tag added to GitHub\n\n### Fixed\n- Tag missing in GitHub JSON fixed\n- Tag missing in GitLab JSON fixed",
            "createdAt": "2018-01-16",
            "compareUrl": "https://github.com/akshaybabloo/release-exporter/compare/v1.0...v1.0.1"
        },
        {
            "tagName": "v1.0",
            "description": "Initial release.",
            "createdAt": "2018-01-15",
            "compareUrl": null
        }
    ]
}
```

> **Note:** The `Unreleased` tag is not counted in `totalTags`.

## Problems you might encounter

If you are using `rex` on your repository folder or if you are using
`--location` you might get an error saying that there are duplicate
keys, this is because sometimes the file `.git/config` has more than
one `[remote "origin"]`. In such case, it is best to give the URL of
your repository by giving `--url <repo URL>`.

## Reference

- Markdown logo from [https://github.com/dcurtis/markdown-mark/](https://github.com/dcurtis/markdown-mark/)

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "release-exporter",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9,<4.0",
    "maintainer_email": "",
    "keywords": "changelog,releases",
    "author": "Akshay Raj Gollahalli",
    "author_email": "akshay@gollahalli.com",
    "download_url": "https://files.pythonhosted.org/packages/51/a8/bf2f41f17efe3c456cd8813e8dfb59c7b1abd27dec02a7c6fb296ca824e3/release_exporter-1.1.2.tar.gz",
    "platform": null,
    "description": "# Release Exporter\n\n![Banner](https://raw.githubusercontent.com/akshaybabloo/release-exporter-old/master/release-exporter.png)\n\n**Blog:** [https://www.gollahalli.com/blog/export-your-github-and-gitlab-releases-as-a-changelog/](https://www.gollahalli.com/blog/export-your-github-and-gitlab-releases-as-a-changelog/)\n\nThis CLI exports your project releases to a markdown based on [keep a\nchangelog](http://keepachangelog.com/en/1.0.0/) and\n[markdownlint](https://github.com/DavidAnson/markdownlint) and JSON,\nit currently supports GitHub and GitLab.\n\n## Install\n\n```bash\npip install release-exporter\n```\n\nOr download this repository and type in the following in your\nterminal/cmd\n\n```bash\npython setup.py install\n```\n\n## Usage\n\nIn your terminal/cmd, change to the folder where your repository is\nlocated and do the following:\n\n```bash\nrex --token <your token> markdown\n```\n\nThat's it. You should see a `CHANGELOG.md` in your folder.\n\n### Advance Usage\n\nRelease exporter has the following options\n\n```bash\nUsage: rex [OPTIONS] COMMAND [ARGS]...\n\nOptions:\n    --token TEXT      Token number if its a private repository.\n    --url TEXT        URL of your repository. This is optional if your current\n                    directory has .git folder with remote url.\n    --location TEXT   Local location of your repository.\n    --version\n    --universal TEXT  Create a global settings file. Defaults to True.\n    --help            Show this message and exit.\n\nCommands:\n    all       Creates change log for all formats.\n    init      Creates .rex file.\n    json      Creates JSON file.\n    markdown  Creates markdown file.\n    rst       Creates reStructuredText file.\n```\n\nIf you don't have a repository on your computer, but you still want to\ngenerate a change log you can manually add your repository URL as\nfollows:\n\n```bash\nrex markdown --token <your token> --url <your url>\n```\n\nIf you have your repository in a different location and you are lazy\n(like me) to change into that directory, get the absolute path of your\nrepository add it to the `--location <location>`.\n\n```bash\nrex --token <your token> --location <absolute path>\n```\n\nYou can also export your releases to JSON file by just replacing\n`markdown` with `json`. The output looks something like this:\n\n```json\n{\n    \"repositoryName\": \"release-exporter\",\n    \"provider\": \"github.com\",\n    \"owner\": \"akshaybabloo\",\n    \"repoUrl\": \"https://github.com/akshaybabloo/release-exporter\",\n    \"totalTags\": 2,\n    \"data\": [\n        {\n            \"tagName\": \"Unreleased\",\n            \"description\": \"\",\n            \"createdAt\": \"\",\n            \"compareUrl\": \"https://github.com/akshaybabloo/release-exporter/compare/1.0.1...HEAD\"\n        },\n        {\n            \"tagName\": \"v1.0.1\",\n            \"description\": \"### Added\\n- Unreleased tag added to the template and GitHub\\n- Unreleased tag added to GitHub\\n\\n### Fixed\\n- Tag missing in GitHub JSON fixed\\n- Tag missing in GitLab JSON fixed\",\n            \"createdAt\": \"2018-01-16\",\n            \"compareUrl\": \"https://github.com/akshaybabloo/release-exporter/compare/v1.0...v1.0.1\"\n        },\n        {\n            \"tagName\": \"v1.0\",\n            \"description\": \"Initial release.\",\n            \"createdAt\": \"2018-01-15\",\n            \"compareUrl\": null\n        }\n    ]\n}\n```\n\n> **Note:** The `Unreleased` tag is not counted in `totalTags`.\n\n## Problems you might encounter\n\nIf you are using `rex` on your repository folder or if you are using\n`--location` you might get an error saying that there are duplicate\nkeys, this is because sometimes the file `.git/config` has more than\none `[remote \"origin\"]`. In such case, it is best to give the URL of\nyour repository by giving `--url <repo URL>`.\n\n## Reference\n\n- Markdown logo from [https://github.com/dcurtis/markdown-mark/](https://github.com/dcurtis/markdown-mark/)\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Release exporter for GitHub and GitLab",
    "version": "1.1.2",
    "project_urls": null,
    "split_keywords": [
        "changelog",
        "releases"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7ecfd03fa544ccb792d590d313ce74c75775a2bf51adcab0317eae471dcecaba",
                "md5": "8b144cd28c6563b7a4d94712bebc3d4b",
                "sha256": "74b4a6b57fa8e32e9426474b7f48329b7396317a00364a20c18060b0f37163e4"
            },
            "downloads": -1,
            "filename": "release_exporter-1.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8b144cd28c6563b7a4d94712bebc3d4b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9,<4.0",
            "size": 14110,
            "upload_time": "2023-11-14T22:38:16",
            "upload_time_iso_8601": "2023-11-14T22:38:16.563400Z",
            "url": "https://files.pythonhosted.org/packages/7e/cf/d03fa544ccb792d590d313ce74c75775a2bf51adcab0317eae471dcecaba/release_exporter-1.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "51a8bf2f41f17efe3c456cd8813e8dfb59c7b1abd27dec02a7c6fb296ca824e3",
                "md5": "ca7253b7e142feb2244aeaf5d2ab8e4b",
                "sha256": "204233bd4af48d4b5d3ccb7d80e915b009b11ffe2d5b1aa13d2a56b53bcd18d6"
            },
            "downloads": -1,
            "filename": "release_exporter-1.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "ca7253b7e142feb2244aeaf5d2ab8e4b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9,<4.0",
            "size": 12154,
            "upload_time": "2023-11-14T22:38:18",
            "upload_time_iso_8601": "2023-11-14T22:38:18.858170Z",
            "url": "https://files.pythonhosted.org/packages/51/a8/bf2f41f17efe3c456cd8813e8dfb59c7b1abd27dec02a7c6fb296ca824e3/release_exporter-1.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-14 22:38:18",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "release-exporter"
}
        
Elapsed time: 2.72972s