Quickstart

Summary

A quickstart guide for the docs release process.

Concepts

Changelog

With every release, the Changelog (Private) expands to include the following types of updates (with docs links, when applicable):

  • Features
  • Enhancements
  • Fixes
  • Breaking Changes
  • Deprecation Notices

Highlights

The first sections of any release notes will contain an overview highlighting specific features and enhancements of a release.

This is made up of:

  • Overview of features, enhancements, and/or breaking changes of importance in the release.
  • ## Highlights: Changelog items referenced in the overview.
  • ## Everything Else: Changelog items not referenced in the overview.

Early Seed

These are pre-release versions of Dendron extensions made available to Environmentalist (Private).

  • Release cadence: Every Other Tuesday (PST)

Release Notes

Release notes are done with the General Release of Dendron that comes out each Tuesday. These provide quite a bit more context compared to the changelog notes, including:

  • Highlights
  • Upcoming events
  • Discord community messages from the today-i-learned (Private) and starboard (Private) channels
  • Community contributions: Contributors that have been raising issues, contributing code, contributing docs, etc. For more information, view the documentation on Discord Roles (Private)
  • General announcements: Blog posts, videos, other events/resources of note, etc.

The release notes also serve as the content submitted to subscribers of the Dendron Newsletter.

Newsletter

Dendron sends out a weekly newsletter, scheduled for every Wednesday at 6AM PST.

Dendron uses Buttondown for managing a newsletter. It's a simple interface that uses Markdown formatting. To make our lives easier, we use a newsletter template and the Markdown Export Pod to send subscribers a copy of our weekly release notes.

Prerequisites

  • Permissions to merge to dev and master in dendron-site
  • Access to the Buttondown Email Dendron credentials for sending out the newsletter
  • Permissions to post to #announcements and #releases channels in the Dendron Discord
  • Your Discord account may need to boost the Dendron Discord in order to unlock a higher character limit within posts.

Steps: Early Seed Release Docs Process

Day before

  • The evening before, create a new Discord thread in #dendron-team with the title early-seed yyyy-mm-dd
    • Template: Discord Thread Start
    • This is done to give the teams a heads up to get docs in, remaining updates to the Ready to Ship section, etc. ahead of time

Day of

  1. Make sure Early Seed Changelog (Private) is updated by following the process here. This should be submitted as a PR to dendron-site.
  1. When the PR is approved, merge into dev
  2. Merge dev into master in dendron-site
    git checkout dev
    git pull
    git checkout master
    git pull
    git merge dev
    git push
    
  3. Check that the changes have made it to the main page
  4. Use the Discord Announce template to write the announcement message
    • You can see an example of a past announcement here
    • see the sop on release highlights 4 for release format
  5. Announce the release in the environmentalist (Private) channel.

Footnotes

  1. Release Highlights˄

Steps: General Release Docs Process

Before the release

  • due: 23:00 UTC Monday
  1. Run workspace sync in your local dev branch for dendron-site vault
  2. Create a new release branch with format release/<version> (eg. release/083)
  3. Update the changelog > Changelog Update
  4. Create a new release under changelog.release.{date-with-dashes}
    • NOTE: date should line up with the tuesday of the coming week and should be created in dendron-site
      • a template will fill after you create the note
    • eg. 0.84 (Private)
    1. Fill out the highlights using Release Highlights
  5. Fill our community highlights using Community Highlights (Private)
  6. Add to and update everything under ## Community
  7. commit and push changes as an open PR
  8. The evening before, create a new Discord thread in #dendron-team with the title weekly-release yyyy-mm-dd
  • Template: Discord Thread Start
    • Make sure to change the values of hours estimate, and of the weekly journal names
      • Hours estimate: Amount of hours before 10AM PST
  • This is done to give the teams a heads up to get docs in, remaining updates to the Ready to Ship section, etc. ahead of time
  • Add second comment in Discord thread with link to release PR, tagging Kevin
    • ex. @kevin In-progress release/changelog PR: <PR Link>

Day of release

  1. ping @john (Private) about transferring community highlights to the release notes

    • He needs to create the weekly.journal.*.contributions contributor highlights
    • after john has finished transferring highlights, pull down changes and create a thread in dendron-team titled weekly-release {date-with-dashes} and use the Release template
  2. after approval, merge changes to master and push

    • First confirm that dev currently includes all commits in master
    • Once confirmed, merge dev into master
      # In the dendron.dendron-site repo
      git checkout dev
      git pull # Gets latest changes
      git checkout master
      git pull # Gets latest changes
      git merge dev # Adds changes in dev to master
      git push # Publishes updated master
      
  3. verify that changes are up

  4. use markdown export pod to copy to clipboard on release notes (ensure wikilinkToUrl is true)

  5. create release notes under area.product.release.{date}.notes

    • NOTE: loom video embed links will not render in discord, use a regular loom link instead (eg. https://www.loom.com/share/c6e8e75605d5416a9a8aa67465a6df17)
    • Add @everyone to the top
    • to create release notes, copy everything above ## Community and Thank Yous
    • This should include:
      • Release Highlights descriptions
      • Highlights section
      • Everything Else section
      • Thank Yous
    • example: Notes (Private)
    • Add the URL link to the release directly beneath Dendron {version} has sprouted
      • example:
        Dendron 0.87 has sprouted  :seedling:
        https://wiki.dendron.so/notes/qcwfzax4uaqj54evgp8li5y/
        
  6. create announcement notes under area.product.release.{date}.announcement

    • Add @ServerNotify to the top
    • to create announcement notes copy everything in ## Community but leave out Thank Yous, Starboard, Changelog, and Reading Series sections
    • This sections should include:
      • General
      • Events
    • NOTE: make sure all discord mentions come out properly so that folks are notified for their contribution
    • example: Announcement (Private)
  7. create reading series notes under area.product.release.{date}.reading-series

After the release

  1. Announce release on discord

    • Add contents of area.product.release.{date}.reading-series into #teatime channel
      • Add an emoji related to the story
    • Add contents of area.product.release.{date}.notes into #releases channel
      • Add a :seedling: emoji
    • Add contents of area.product.release.{date}.announcement into #announcements channel
      • Add a :farmer: emoji
  2. Announce release on twitter

    • Use a format similar to the following:

      Dendron 0.84 has sprouted 🌱
      
      - Speed improvements in "Dendron: Show Preview"
      - Pod V2 is now available to use directly from dendron-cli
      - New "Community Teatime" events starting this week
      - Contribute #opensource to good first issues in Dendron code
      
      https://wiki.dendron.so/notes/qcwfzax4uaqj54evgp8li5y/
      
  3. Announce release on mastodon

    • Use a format similar to Twitter, but optimized for Mastodon. Threads don't work the same in Mastodon, so don't make a thread. It's a one message kind of deal. You can always send a second message (such as upcoming events) at another time.

    • Example format with slight modifications to above:

      Dendron 0.84 #release has sprouted 🌱
      
      - Speed improvements in "Dendron: Show Preview"
      - Pod V2 is now available to use directly from dendron-cli
      - New "Community Teatime" events starting this week
      - Contribute #opensource to good first issues in Dendron code
      
      #dendron #vscode #vscodium
      
      https://wiki.dendron.so/notes/qcwfzax4uaqj54evgp8li5y/
      
  4. Release the newsletter updates via Weekly Newsletter


Footnotes

  1. Repos (Private)˄

  2. Repos (Private)˄

Checklists

Early Seed Docs and Announcements Checklist

General Release Docs and Announcements Checklist

Day Before Release

Day Of Release

  • Add contributors information to PR once finalized and formatted by team
  • Address any review feedback in PR
  • PR approved, merged to dev, and dev is merged to master (in dendron-site)
  • Verify website is updated with latest content

Announcements After Release

  • Discord

    • #teatime: Reading Series with @ServerNotify

    • #releases post with @everyone

      • Release highlights
      • ##Highlights
      • ## Everything Else
    • #announcements post with @ServerNotify

      • Everything under ## Community except

        • ### Starboard and TIL Highlights
        • ### Dendron Reading Series
        • ## Changelog
      • Replace ### Event Reminders section with

        ### Event Reminders
        
        - Visit our events calendar: https://link.dendron.so/luma
          - This week we have `<event name(s)>`!
        
    • #publishing: Add any publishing-related updates to the publishing channel (Private) with @PublishNotify

  • Twitter announcement

  • Mastodon announcement

  • Schedule Weekly Newsletter