Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.2.0 #39

Closed
7 tasks done
ESultanik opened this issue Oct 31, 2018 · 0 comments
Closed
7 tasks done

Release v0.2.0 #39

ESultanik opened this issue Oct 31, 2018 · 0 comments
Assignees
Milestone

Comments

@ESultanik
Copy link
Member

ESultanik commented Oct 31, 2018

To release Etheno:

  1. Merge a PR for Update the README with Echidna and differential testing usage #22 bumping the version number in setup.py, bumping the version number in __main__.py (--version), and updating the changelog with the version being released. Conventional commit message is "Etheno x.y.z". In the changelog don't forget to update the number in the "unreleased" line and check the date is correct.
  2. Check you are tagging master branch
    • git checkout master
    • git pull origin master
    • etheno --version should show expected version
  3. Tag that commit with the version number, and push tags.
    • git tag -a 0.2.xx -m "Etheno 0.2.xx"
    • git push origin 0.2.xx or git push origin --tags
  4. Make a draft release in github releases page https://github.com/trailofbits/etheno/releases. Select the right tag. The txt must be heavily based on the lastest part of the Changelog at this point: https://raw.githubusercontent.com/trailofbits/etheno/master/CHANGELOG.md
  5. Make the distribution file.
    • Make a fresh clone of the repository git clone git@github.com:trailofbits/etheno.git (If you use your normal copy the distribution file may include unexpected files)
    • Delete or manage what is in the dist/ folder so you do not accidentally upload anything else
    • python setup.py sdist # this creates the distribution file in dist/ folder

** Uploading to pypi is not reversible please try it out on test.pypi.org first **

6a. [ ] Push to test pypi and test it
- twine upload --repository-url https://test.pypi.org/legacy/ dist/*
- Check you see the correct version at https://test.pypi.org/project/etheno
- Install it from test pypi (ideally on a fresh box):
- pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple etheno
6b. Optional. If no access to test pypi. Do a fresh install in a virtualenv.
- virtualenv --python=python3.7 temp
- source temp/bin/activate
- Untar the distro file you are about to upload
- python setup.py install
- Check everything looks good

  • Uploading to pypi is not reversible please try it out on test.pypi.org first **
  1. Push to pypi
    • twine upload dist/*
  2. Update the github releases page https://github.com/trailofbits/etheno/releases

Tips

Use the Github diff links to see all the commits between the last release and now, e.g. 0.1.0...HEAD

Start with the categories of changes from keepachangelog

Types of changes

Added for new features.
Changed for changes in existing functionality.
Deprecated for soon-to-be removed features.
Removed for now removed features.
Fixed for any bug fixes.
Security in case of vulnerabilities.

and start categorizing features/commits from the diff into those

Resources

@ESultanik ESultanik added this to the 0.2.0 milestone Oct 31, 2018
@ESultanik ESultanik self-assigned this Oct 31, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant