Update ccache-action reference.
Bump action version.
.gitignore and .Rbuildignore.Create snapshot update PR against correct branch.
Add reference to /apply-patch workflow in commit message.
Clarify rationale for not deploying on schedule.
Cosmetics.
Bump action versions.
Install clang-format-21.
Align fledge workflow.
Harmonize.
use_tidy_description().clang-format (#1028).extra-packages (#923).Permissions, better tests for missing suggests, lints (#870).
Only fail covr builds if token is given (#867).
Always use _R_CHECK_FORCE_SUGGESTS_=false (#866).
Correct installation of xml2 (#863).
Explain (#861).
Add xml2 for covr, print testthat results (#860).
Sync (#859).
get_release_branch_from_version().bump_version(which = "dev") always bumps from non-dev.Support empty commit messages.
is_news_consistent() detects releases of the kind x.y.z-w.
Work around bug in order() for package versions.
Use correct version for checking GH release.
Use correct version for checking GH release.
release_after_cran_built_binaries() works correctly again (#848).
Better entry if PR info could not be extracted.
Support versions of the form x.y.z-w for tagging.
Newsworthy commits are searched along the first parents only, picking up all relevant commits (#847).
Determining the most recent tag now uses the new get_last_version_tag() and works when the version tag is on a diverged branch (e.g., after squash-merging) (#844).
Consistent protection of hash tag (#836).
Keep empty lines when merging (#834).
plan_release() pulls the current branch (#831).
Get tagging information from fledgling.
Clear clipboard after successful discovery of CRAN URL.
Check token early for automation (#841).
Refactor (#835).
Install R.
Avoid failure in fledge workflow if no changes (#851).
Fetch tags for fledge workflow to avoid unnecessary NEWS entries (#850).
Use larger retry count for lock-threads workflow (#849).
Ignore errors when removing pkg-config on macOS (#840).
Explicit permissions (#839).
Use styler from main branch (#838).
Need to install R on Ubuntu 24.04 (#837).
Use Ubuntu 24.04 and styler PR (#829).
raw NEWS (#827).Refactorings and a new test (#825).
Better JSON snapshot (#824).
Keep raw component up to date, use it for assembling the NEWS (#823).
news component from news column in data frame (#820).CRAN PRs are no longer created as draft (#810).
fledge:::release_after_cran_built_binaries() no longer throws an error if no release exists.
finalize_version() unconditionally overwrites existing tags (#819).
Pre-releases get a different PR title (#818).
PR must open from the main window (#816).
plan_release() calls bump_version() (#814).
Detect contributors for squashed commits (#813).
Mention bump_version(check_default_branch = FALSE) in error message (#812).
New plan_release(), replaces init_release() and pre_release() (#803).
Support which = "pre-patch" for bump_version() and update_version() (#802).
bump_version() does not bump if no newsworthy messages are found (#801).
Messages that start with "fledge: " are no longer considered newsworthy (#800).
Include only relevant info in cran-comments.md (#799).
Support pre-patch version, new versioning scheme starting at 9900 (#794).
Bump commit messages get a fledge prefix.
Add fledge prefix to CRAN PR (#809).
is_dev_version() and related (#805).Reduce use of shut_up_fledge() (#796).
Speed up tests by replacing gert::git_add() with a system call (#793).
Split slow test.
Install local package for pkgdown builds.
Improve support for protected branches, without fledge.
Try pushing head first.
Try pushing head first, fail with branch protection.
bump_version(check_default_branch = TRUE).Auto-update from GitHub Actions.
Run: https://github.com/cynkra/fledge/actions/runs/10425483871
Auto-update from GitHub Actions.
Run: https://github.com/cynkra/fledge/actions/runs/9727971994
Auto-update from GitHub Actions.
Run: https://github.com/cynkra/fledge/actions/runs/9691617690
Avoid checking bashisms on Windows.
Remove netlify workflow.
Remove special branch.
Bump versions, better default, consume custom matrix.
Recent updates.
Set BS version explicitly for now.
https://github.com/cynkra/cynkratemplate/issues/53
repo argument (#761).create_github_release() removes the header from the NEWS entry.post_release() no longer checks if on release branch (#750).news_path() (#751).Allow bumping straight from released version (#747).
post_release() is independent from release branch (#748).
init_release(), to be called before pre_release() (#686).Automatically merge news from dev versions before release (#744).
More extensive preflight checks in post_release(), reduce output in quiet mode (#740).
Extract error from first submission step, fix CRAN submission (#738).
Check if release exists before creating (#731).
Add version and ref arguments to create_release_branch(), fix create_release_branch(force = TRUE) (#734).
no_change() and other functions gain ref argument (#733).
Pretty check_only_modified() (#705).
Clean up, simplify tests (#716).
Add a function to help run the tests without losing one's current dir (#715).
Ask fledgeling for version.
Bad merge conflict resolution from v0.1.1.
Indent multiline NEWS items.
More skip_if_offline() calls.
Type stability of fledgeling object.
Prefer local_options(repos = NULL) over skip_if_offline().
Test order.
post_release() works if the release branch doesn't change files in the main branch.bump_version() only works in interactive sessions or if NEWS.md has a preamble (or both) (#638).Snapshot updates for rcc-smoke (null) (#660).
Snapshot updates for rcc-smoke (null) (#647).
Fix snapshots after updates of upstream dependencies (#657).
Do not write "Same as previous version" as first thing in a brand-new changelog (#655).
New internal release_after_cran_built_binaries() to support automated CRAN release from GHA (#651).
pre_release().Work around unexplicable behavior in demo tests.
Remove push trigger in fledge.yaml, seems broken.
bump_version() keeps updating Date field if it exists in DESCRIPTION.
post_release() pulls the main branch before merging (#525).Closes #525.
New mode of operation "samedev", for #147.
update_news() gains which argument, deprecate update_version() (#607).
Move packages from Imports to Suggests.
Add extra snapshot.
Clean up snapshots.
usethis::use_lifecycle().
Prepare roundtrip via fledgeling (#606).
Move foghorn and rversions to Suggests (#605).
Run fledge workflow only on main branch (#597).
write_fledgling() to write NEWS.md (#588).Harmonize yaml formatting
Revert changes to matrix section
bump_version() returns TRUE if a new version has been createdAdjust empty lines and space in update_news() (#357)
Add PR number to CC messages (#353).
Fix conventional commit regex (#329)
Add which "pre-minor" and "pre-major" to update_version() (#413, #412).
Extract contributor name from PR merge message (@krlmlr, #358)
Harvest PR title from merge commit messages (@krlmlr, @maelle, #343)
Improve parsing of conventional commit messages (#332).
Improve bump_version() behavior in the absence of changes (@krlmlr, @maelle, #323)
New local_test_project() (#318)
Extract conventional commit messages for the changelog (#314).
Turn Netlify builds off for now (#326).
Enable auto-style on GitHub Actions (#317).
Remove testthat specialization for snapshots (#309).
Add README section on related tools (#527).
Update summary of how fledge uses commit messages (#499, #511).
Fix typo in README (#501)
Create and open draft release directly, without using usethis::use_github_release().
Create tag as part of release().
Fix post_release(), still need to tag released version.
release() no longer asks for confirmation.devtools::submit_cran() minus the confirmation messages.pre_release(), release() and post_release() for semi-automatic CRAN releases (#27, #28).Change log management utility, initial release.
The main entry point is bump_version(), which does the following:
DESCRIPTION and NEWS.md are clean before bumping, and that the current branch is the main branch.update_news(): collects NEWS entries from top-level commitsupdate_version(): bump version in DESCRIPTION, add header to NEWS.mdfinalize_version(): commit DESCRIPTION and NEWS.md, create tag with messagecommit_version(); the user needs to call tag_version() manuallyIf you haven't committed since updating NEWS.md and DESCRIPTION, you can also edit NEWS.md and call tag_version() again.
Both the commit and the tag will be updated.
Bumping can be undone with unbump_version().
If the DESCRIPTION has a "Date" field, it is populated with the current date in update_version().
Likewise, if NEWS.md contains dates in the headers, new versions also get a date.
An empty list of changes adds a "Same as previous version" bullet. This allows bumping to a dev version immediately after CRAN release.
Also includes helper functions get_last_tag() and get_top_level_commits().
Includes vignettes: "Get started", "Using fledge", and "Fledge internals".
Examples and tests are supported with a demo project, created via with_demo_project().
Thanks Patrick Schratz and Maëlle Salmon for your contributions!