Skip to content

Commit

Permalink
Merge pull request #90 from HBehrens/noahp/rst-to-md
Browse files Browse the repository at this point in the history
Convert rst to markdown
  • Loading branch information
noahp committed Oct 18, 2023
2 parents 5f73673 + 7da0a7f commit d37fd86
Show file tree
Hide file tree
Showing 4 changed files with 118 additions and 137 deletions.
116 changes: 116 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
[![GitHub Link](https://img.shields.io/badge/GitHub-HBehrens/puncover-8da0cb?style=flat-square&logo=github)](https://github.com/HBehrens/puncover)

[![GitHub Workflow Status (branch)](https://img.shields.io/github/actions/workflow/status/HBehrens/puncover/ci.yml?style=flat-square&branch=master)](https://github.com/HBehrens/puncover/actions?query=branch%3Amaster+)

[![Codecov branch](https://img.shields.io/codecov/c/github/HBehrens/puncover/master?style=flat-square)](https://codecov.io/gh/HBehrens/puncover)

[![PyPI](https://img.shields.io/pypi/v/puncover?style=flat-square)](https://pypi.org/project/puncover)

[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/puncover?style=flat-square)](https://pypi.org/project/puncover)

[![License - MIT](https://img.shields.io/github/license/HBehrens/puncover?color=blue&style=flat-square)](https://github.com/HBehrens/puncover)

# puncover

![image](https://raw.githubusercontent.com/HBehrens/puncover/master/images/overview.png)

Analyzes C/C++ binaries for code size, static variables and stack usages. It
creates a report with disassembler and call-stack analysis per directory, file,
or function.

# Installation and Usage

Install with pip:

```bash
pip install puncover
```

Run it by passing the binary to analyze:

```bash
puncover --elf_file project.elf
...
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
```

Open the link in your browser to view the analysis.

# Running Tests Locally

To run the tests locally, you need to install the development dependencies:

1. install pyenv: <https://github.com/pyenv/pyenv>

```bash
curl https://pyenv.run | bash
```

2. install all the python environments, using this bashism (this can take a few
minutes):

```bash
for _py in $(<.python-version ); do pyenv install ${_py}; done
```

3. install the development dependencies:

```bash
pip install -r requirements-dev.txt
```

Then you can run the tests with:

```bash
tox
```

# Publishing Release

1. Update the version in `puncover/__version__.py`.

2. Commit the version update:

```bash
git add . && git commit -m "Bump version to x.y.z"
```

3. Create an annotated tag:

```bash
git tag -a {-m=,}x.y.z
```

4. Push the commit and tag:

```bash
git push && git push --tags
```

5. Either wait for the GitHub Action to complete and download the release
artifact for uploading: <https://github.com/HBehrens/puncover/actions> OR
Build the package locally: `python setup.py sdist bdist_wheel`

6. Upload the package to PyPI:

```bash
twine upload dist/*
```

7. Create GitHub releases:

- `gh release create --generate-notes x.y.z`
- attach the artifacts to the release too: `gh release upload x.y.z dist/*`

## Release Script

See `release.sh` for a script that automates the above steps. This example will
work with the PyPi tokens (now required):

```bash
PUNCOVER_VERSION=0.3.5 TWINE_PASSWORD="<pypi token>" TWINE_USERNAME=__token__ ./release.sh
```

# Contributing

Contributions are welcome! Please open an issue or pull request on GitHub.
135 changes: 0 additions & 135 deletions README.rst

This file was deleted.

2 changes: 1 addition & 1 deletion setup.cfg
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
[metadata]
description-file = README.rst
description-file = README.md
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ def run(self):
name="puncover",
version=__version__,
description="Analyses C/C++ build output for code size, static variables, and stack usage.",
long_description=open("README.rst").read(),
long_description=open("README.md").read(),
long_description_content_type="text/x-rst",
url="https://github.com/hbehrens/puncover",
download_url="https://github.com/hbehrens/puncover/tarball/%s" % __version__,
Expand Down

0 comments on commit d37fd86

Please sign in to comment.