Changelog Update
Summary
Goes over updating the Changelog (Private) and the Early Seed Changelog (Private).
Details
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
General Format
Changelog format should look like the following:
- feat(vaults): early implementation of self contained vaults ([[docs|dendron://dendron.dendron-site/dendron.topic.vaults.self-contained]]) (#2517) @kaan
Broken down:
- feat: This is a feature. The first part specifies whether this is a feature, enhancement, or fix (
feat|enhance|fix
). - (vaults): This change is related to Dendron vaults. This section specifies what component of Dendron is changing (
(vaults|publishing|workspace|pods|sync|etc.)
. - early implementation of self contained vaults: Short description of the change/PR/commit.
- docs link: Features should always have a docs reference, and most enhancements should too. Link to the target docs, and link to a specific header when necessary. Format:
([[docs|dendron://dendron.dendron-site/target.note#header]])
- (#2517): This is the PR number of the change in the Dendron GitHub repository.
@kaan
: The contributor. If they are not a member of the Dendron team, then this should instead be a Markdown link to the contributor's GitHub profile.
Breaking Changes and Deprecation Notices
- Breaking Changes: This section should point out what functionality is breaking and how to migrate/update their configurations in order to work with the latest version of Dendron. This section should also point out whether the CLI or the Dendron extension (or both) are impacted. Link to docs where able.
- Deprecation Notices: This section should point out what older functionality is no longer supported in Dendron, along with directions on how to migrate. Link to docs where able.
Example
Here is a mock example that contains all potential sections:
## 0.80.0
### Breaking changes
The latest release of Dendron will prompt users to automatically migrate their `dendron.yml` configurations to use the latest publishing configuration. Updated workspace configurations (`version: 5`) won't work with older versions of `dendron-cli`.
If `dendron-cli` is not updated, you will encounter the following error message:
> Cannot find minimum compatible client version. This error should never occur! Please report a bug if you have encountered this.
If running the latest `dendron-cli`, users can optionally migrate their configurations directly from `dendron-cli`:
> `dendron dev run_migration --migrationVersion 0.83.0`
### Deprecation Notices
- deprecate(publishing): Legacy publishing has now been removed from `dendron-cli`. Dendron users that haven't yet migrated from `dendron buildSite` commands must migrate to using the `dendron publish` commands.
- [[Common commands for Next.js publishing with dendron-cli|dendron://dendron.dendron-site/dendron.topic.publish.cook.common]]
- [[Upgrade Instructions|dendron://dendron.dendron-site/dendron.topic.publish.migration]]
### Features
- feat(vaults): early implementation of self contained vaults ([[docs|dendron://dendron.dendron-site/dendron.topic.vaults.self-contained]]) (#2517) @kaan
### Enhancements
- enhance(pods): support exporting a note to multiple Airtable destinations ([[docs|dendron://dendron.dendron-site/dendron.topic.pod-v2.ref.builtin.airtable.export]]) (#2582) @Joshi
### Fix
- fix(sync): better error message on `Workspace Add and Commit` (#2552) @joshi
Prerequisites
Steps
Loom recording showing example update to early seed changelog, up to the submission of a PR
- Make sure all outstanding docs prs from
dendron-site
are reviewed and merged, especially is they are related to this release.
- follow Community Contributions for any merged PRs, and for any newly opened docs issues in
dendron-site
,dendron-docs
, or other docs-related repos
- Sync your workspace
- Create a new branch from the
dev
branch ofdendron-site
, as we want to create a PR (ex.git checkout -b early-seed-085
orgit checkout -b release-085
) - Go to the Changelog (Private) if a production release, or go to the Early Seed Changelog (Private) if early seed
- Update the changelog using Changelog (Private) template
- Go to the
Ready to Ship
section of the weekly journal for this week- eg.
dendron://private/weekly.journal.2021.10.19
- Categories of focus:
Deprecations
,Features
,Enhancements
,Fix
, and anything related (such as breaking changes).## Internal
is ignored when it comes to the changelog. - For early-seed, only include changes under
<!-- Early Seed: -->
/ above<!-- General Release: -->
. For general release, include all changes.
- eg.
*** in master
line and copy it to the changelog- move the lines under
*** in master
below*** in changelog
after doing this - eg. before copying
... ### Enhancements - *** in master - enhance(publish): support publishing to github as a export template (#1234) @kevin - enhance(publish): support `--yes` flag when exporting to skip prompts (#1235) @kevin - enhance(publish): initialize template will also install dependencies (#1236) @kevin - enhance(publish): warn when `assetsPrefix` isn't set (#1237) @kevin - *** in changelog
- eg. after copying
... ### Enhancements - *** in master - *** in changelog - enhance(publish): support publishing to github as a export template (#1234) @kevin - enhance(publish): support `--yes` flag when exporting to skip prompts (#1235) @kevin - enhance(publish): initialize template will also install dependencies (#1236) @kevin - enhance(publish): warn when `assetsPrefix` isn't set (#1237) @kevin
- NOTE: each commit should adhere to our commit style (Private)
No note with name dev.process.commit found in cache during parsing.
For each category, copy over everything under the - move the lines under
- NOTE: While updating the early-seed changelog, do not include feat/enhance/fix related to #scope.publish (Private) and #scope.common.cli. (Private) These only get published on Tuesdays for Weekly Release.
- eg. before copying
... ### Enhancements - *** in master - enhance(cli): updated dendron lookup command #3043 @kevin - enhance(views): add tooltip on hover for graph nodes #3060 @joshi - enhance(edit): this sets handlebars as the default template format #3070 @kevin
- eg. after copying
... ### Enhancements - *** in master - enhance(cli): updated dendron lookup command #3043 @kevin - *** in changelog - enhance(views): add tooltip on hover for graph nodes #3060 @joshi - enhance(edit): this sets handlebars as the default template format #3070 @kevin
- eg. before copying
- For changes that are introducing new functionality, make sure that docs are provided at the end of the commit
- NOTE: if no docs are available, please ping the developer (their alias should be at the end of the alias)
- in general, all
feat
items and mostenhance
items should have docs - eg.
- feat(publish): add `dendron publish dev` command ([[docs|dendron://dendron.dendron-site/dendron.topic.publish.cli#dev]]) (#1238) @kevin
Checklist
Backlinks