question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

New release process?

See original GitHub issue

Having just gone through the release process the first time myself I found that I wasn’t a huge fan of it.

I propose we do the following for releases, but I can be convinced otherwise:

  1. Create a new branch, release-MAJOR.MINOR.PATCH.
  2. Add a single commit to that branch that updates the version in urllib3/__init__.py and CHANGES.rst.
  3. Send a PR to merge that branch into master. Someone must review.
  4. Merge the PR and delete the HEAD branch.
  5. Tag the squashed merge commit with MAJOR.MINOR.PATCH.
  6. Let Travis upload the package to PyPI when built with tags.

This would mean removing the release branch.

/cc @urllib3/maintainers for #opinions

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:30 (25 by maintainers)

github_iconTop GitHub Comments

1reaction
sethmlarsoncommented, Dec 9, 2018

Alright everyone I took a first stab at this by toying around with Travis a lot. Here’s the example repository I built: https://github.com/SethMichaelLarson/python-travis-deploy

The workflow for a release is:

  • Any user creates a branch named release-x.x.x, commits CHANGES.rst and urllib3/__init__.py, and opens a PR to our master branch.
  • Unit tests run as usual but integration tests also run against this commit. (This is where I’d add requests tests)
  • Once this PR is approved it’ll be merged into master any maintainer can tag that commit and push the tagged commit.
  • Travis will build the tag and run the PyPI deployment and draft a GitHub release for the tag of the same name.
  • The GitHub release can be approved by any maintainer.

Next steps for me:

  • Fork the urllib3 repository and integrate this into that fork and see how the deployment goes.
  • Write up release procedure documentation for other maintainers and contributors.

What are other maintainers thoughts?

1reaction
theacodescommented, Jun 5, 2018

That’s exactly what I’m proposing. I updated my comment to be a little more explicit on that. The release-MAJOR.MINOR.PATCH branch is just short-lived branch to initiate the Pull Request.

Read more comments on GitHub >

github_iconTop Results From Across the Web

5 Steps to a Successful Release Management Process
5 Steps to a successful release management process · 1. Plan release · 2. Build release · 3. User acceptance testing · 4....
Read more >
Release Management: 5 Steps to Success [2022] • Asana
The release management lifecycle consists of five steps, which include planning, building, testing, preparing, and deploying a software update.
Read more >
The Essential Guide to Release Management | Smartsheet
In this guide to software release management, learn how to plan, build, test, and deploy new releases, and find free templates.
Read more >
What is Release Management? - Micro Focus
Release management refers to the process of planning, designing, scheduling, testing, deploying, and controlling software releases. It ensures that release ...
Read more >
What is Release Management? A Complete Overview
Release management is the process of planning, designing, scheduling, testing, deploying, and controlling a software release. It ensures that ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found