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

docs: add RELEASE.md #266

Merged
merged 3 commits into from
Apr 12, 2023
Merged

docs: add RELEASE.md #266

merged 3 commits into from
Apr 12, 2023

Conversation

guseggert
Copy link
Contributor

No description provided.

@guseggert guseggert self-assigned this Apr 5, 2023
@guseggert guseggert marked this pull request as ready for review April 5, 2023 20:56
@guseggert guseggert requested a review from a team as a code owner April 5, 2023 20:56
@codecov
Copy link

codecov bot commented Apr 5, 2023

Codecov Report

Merging #266 (d375724) into main (a12deee) will increase coverage by 0.03%.
The diff coverage is n/a.

❗ Current head d375724 differs from pull request most recent head 5325008. Consider uploading reports for the commit 5325008 to get more accurate results

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #266      +/-   ##
==========================================
+ Coverage   47.88%   47.91%   +0.03%     
==========================================
  Files         273      273              
  Lines       33186    33186              
==========================================
+ Hits        15890    15901      +11     
+ Misses      15619    15609      -10     
+ Partials     1677     1676       -1     

see 9 files with indirect coverage changes

Copy link
Contributor

@BigLep BigLep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good stuff Gus. Thanks for getting this critical stuff documented!

Somethings came to mind while reviewing this. I'm happy to verbal if that's quicker for you:

  1. Will we do release on Friday? I assume yes because this isn't a binary. Any production deployment is handled by others and that is there responsibility to make decisions on when to build and deploy. Lets document.
  2. What about giving credit to contributors? I'm thinking about the contributor portion of mkreleaselog.
  3. What's the mechanism for Kubo updating? (I realize that is Kubo's problem, not Boxo, but it's coming to mind, in part because we're opening PR's in Kubo. I assume this gets swept up in the usual "how does Kubo update its dependencies" bucket)
  4. Are we going to use any other announcement channels about the release? How about discuss.ipfs.tech and blog (linking to release)?
  5. I assume there isn't the complexity in this release to warrant having an accompanying PR where we make changes to the release process as we go (like we do with Kubo: https://www.notion.so/pl-strflt/Kubo-Release-Process-5a5d066264704009a28a79cff93062c4?pvs=4#b154fdedd1a04cdbb6b0056d654b4329 )

RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Show resolved Hide resolved
RELEASE.md Show resolved Hide resolved
@@ -0,0 +1,53 @@
# Boxo Releases
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move this under docs/ ? Not sure the best move here, but I was thinking the FAQ.md should be there per #260

RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Show resolved Hide resolved
Copy link
Contributor

@BigLep BigLep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I looked at how this played out in 0.8. My comments/thoughts are linked below for completeness. I also made a couple of small suggestions based on some of this too.

#264 (comment)
#264 (review)
#257 (comment)

RELEASE.md Show resolved Hide resolved
RELEASE.md Show resolved Hide resolved
@guseggert
Copy link
Contributor Author

guseggert commented Apr 7, 2023

Seems like nobody is happy w/ the changelog, we probably need to talk with @galargh about what to do there since it impacts tooling.

Bringing together the various comments:

  • A section to call out breaking changes
  • Links to issues/PRs
  • Auto-generated "Contributors" list
  • "Motivation" section for each change (like "TLDR why should I care?")

@BigLep
Copy link
Contributor

BigLep commented Apr 10, 2023

Seems like nobody is happy w/ the changelog, we probably need to talk with @galargh about what to do there since it impacts tooling.

  • A section to call out breaking changes

Is everything under "removed" a breaking change (and maybe some things under "changed")? Maybe we just make sure those are at the top? I was thinking we could even add a "Breaking Change" section header and put "Removed" under there, but maybe the better way is to add a legend here and have something like 🛠 (what we have used before) next to each line denoting a breaking change.

  • Links to issues/PRs

This should just come during the changelog addition. I see they're doing that in https://keepachangelog.com/en/1.0.0/

  • Auto-generated "Contributors" list

I don't know the full history on this, but seems like a good OSS practice to give credit to folks who contribute. That said, maybe we can just scope it to those who are contributing to Boxo directly rather than all the dependencies?

  • "Motivation" section for each change (like "TLDR why should I care?")

I don't think we need this in general. Ideally providing a link to the related issue is good. I was wondering if we need a tldr about the release because looking at #264 I don't think we're really calling out as well for folks about the big picture things that they may care about. Maybe this would have been done better if we were requiring a changelog addition/change per PR. Maybe too we can use another emoji (✨ ?) to highlight things people should pay attention to especially (and that's also our signal to make sure our descriptive text is particularly useful then).

I like the guiding principle of "Changelogs are for humans, not machines"

So maybe have something at the top of our changelog (which also gets pasted into the "release") like:


We follow semver.  More notes about versioning and our release policies are [here](link to release policies doc).

Legend:
* 🛠 - BREAKING CHANGE.  Action is required if you use this functionality.  
* ✨ - Noteworthy change to aware of.

@BigLep
Copy link
Contributor

BigLep commented Apr 11, 2023

2023-04-11 maintainer conversation:

It's clear the steps we're going to do to resolve this...

  1. A legend will be used to denote breaking changes and features someone should pay attention to.
  2. We will link to informative issues or PRs that give more details on a change.
  3. We will get all release policy functionality together (either in this document, they readme, or the FAQ)
  4. Giving credit to contributors will happen in followup work: Give credit to contributors during a release #276

That said, we didn't answer these questions during our call:

  1. Will we do a release on Friday? I assume yes because this isn't a binary. Any production deployment is handled by others and that is there responsibility to make decisions on when to build and deploy. Lets document.
    • @BigLep thought: I can go either way here. If we release on Friday, folks will get a dependabot announcement then. It make sense just to hold to not doing releases on Friday.
  2. Are we going to use any other announcement channels about the release? How about discuss.ipfs.tech and blog (linking to release)?

@guseggert
Copy link
Contributor Author

guseggert commented Apr 12, 2023

Will we do a release on Friday? I assume yes because this isn't a binary

Yeah I'd like to do this until we discover a reason not to, I think by default that we should bias towards release velocity.

discuss.ipfs.tech seems fine. Do we have any data on how many people view release blog entries or click the links?

@guseggert guseggert force-pushed the docs/release branch 3 times, most recently from 21f89ba to 6852500 Compare April 12, 2023 01:52
@guseggert
Copy link
Contributor Author

Opened #277 to write down how to publish a blog entry in the release process

@guseggert guseggert force-pushed the docs/release branch 4 times, most recently from 62af0ec to dab4b07 Compare April 12, 2023 02:50
Copy link
Contributor

@BigLep BigLep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @guseggert ! Looking good to me. I made some small suggestions, but feel free to ship whenever at this point.

RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Outdated Show resolved Hide resolved
RELEASE.md Show resolved Hide resolved
CHANGELOG.md Outdated Show resolved Hide resolved
guseggert and others added 2 commits April 12, 2023 10:05
@guseggert guseggert merged commit c5fba8c into main Apr 12, 2023
@guseggert guseggert deleted the docs/release branch April 12, 2023 14:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Archived in project
Development

Successfully merging this pull request may close these issues.

2 participants