- fix: Add optional to type chain (#560) by @brian-lou
- fix(docker): install buildx (#558) by @joshuarli
- ref(docker): Use docker buildx (BuildKit) to publish docker images (#556) by @Dav1dde
- build(deps): bump micromatch from 4.0.5 to 4.0.8 (#555) by @dependabot
- feat: Add #body-in-changelog option to PR/commit bodies (#554) by @BYK
- fix(maven): move
importGPGKey
function call from constructor topublish
(#553) by @buenaflor - all-repos: update actions/upload-artifact to v4 (#551) by @joshuarli
- build(deps-dev): bump fast-xml-parser from 4.2.5 to 4.4.1 (#550) by @dependabot
- fix(readme): markdown on a long description for skipValidation (#548) by @vaind
- feat: add skipValidation to dart publishing (#544) by @vaind
- chore: update flutter to the latest version (#545) by @vaind
- Upgrade Flutter from 3.10.0 to 3.13.0 (#543) by @buenaflor
- build(deps): bump braces from 3.0.2 to 3.0.3 (#542) by @dependabot
- fix(maven): Rename module.json to dist.module (#540) by @markushi
- fix(maven): ignore artifacts which contain no POM/BOM (#538) by @markushi
- feat: Publish Gradle module metadata for Maven targets (#535) by @romtsn
- ref: Rename createdAt to created_at (#534) by @HazAT
- bump symbol collector 1.17.0 (#533) by @bruno-garcia
- feat: Add
createdAt
key to json in registry (#532) by @HazAT - build(deps-dev): bump tar from 4.4.18 to 6.2.1 (#531) by @dependabot
- No documented changes.
- ref: upload to twine synchronously in a single call (#530) by @asottile-sentry
- ref: upgrade twine to 5.x (#528) by @asottile-sentry
- ref: upgrade node to 20.x (#527) by @asottile-sentry
- ref: upgrade docker to debian bookworm (#526) by @asottile-sentry
- ref: upgrade craft to node 18 (#525) by @asottile-sentry
- ref: fix unzipping larger files in node 18+ (#524) by @asottile-sentry
- ref: upgrade to node 16 (#523) by @asottile-sentry
- Install/update
twine
from pypi (#522) by @Swatinem
- feat: powershell target (#515) by @vaind
- build(deps): bump es5-ext from 0.10.53 to 0.10.63 (#516) by @dependabot
- Revert "build: Bump Dockerfile base image to node:20-bookworm (#511)" (#513) by @loewenheim
- upgrade nock (#512) by @asottile-sentry
- build: Bump Dockerfile base image to node:20-bookworm (#511) by @loewenheim
- ref: handle comparison of two numeric pre releases (#510) by @asottile-sentry
- install net7 in addition to net8 (#506) by @bruno-garcia
- feat(npm): Allow to configure
checkPackageName
for npm target (#504) by @mydea - Use mainline .NET 8 SDK (#505) by @bruno-garcia
- feat(github): Only set
latest
when new version > old version (#503) by @mydea
- feat: use dotnet 8 SDK (#501) by @vaind
- Bump CocoaPods from 1.13.0 to 1.14.2 (#497) by @philipphofmann
- ref: Pin cocoapods version (#496) by @brustolin
- feat(commit-on-git-repository): Allow for authentication in github (#495) by @lforst
- feat: Add
commit-on-git-repository
target (#492) by @lforst - build(deps): bump semver from 6.3.0 to 6.3.1 (#470) by @dependabot
- build(deps): bump @babel/traverse from 7.22.5 to 7.23.2 (#494) by @dependabot
- ref: remove volta from CI (#493) by @asottile-sentry
- fix: Handle
{major}.json
and{minor}.json
symlinks when publishing older versions (#483) by @cleptric - Bump symbol collector 1.12.0 (#491) by @bruno-garcia
- fix(brew): Replace version in artifact names with 'VERSION' to access checksums from mustache (#488) by @romtsn
- fix typo (#487) by @asottile-sentry
- fix branch trigger for image (#486) by @asottile-sentry
- ref: build docker image using gha (#485) by @asottile-sentry
- feat(elixir): Use precompiled packages from erlang solutions for elixir (#481) by @sl0thentr0py
- Revert "feat(elixir): Use asdf to install erlang and elixir (#479)" (#480) by @sl0thentr0py
- feat(elixir): Use asdf to install erlang and elixir (#479) by @sl0thentr0py
- ref: add python3-packaging explicitly (#478) by @asottile-sentry
- build(deps): bump word-wrap from 1.2.3 to 1.2.4 (#477) by @dependabot
- No documented changes.
- Revert changes since 1.2.3 (#475) by @mydea
- ref: add python3-packaging explicitly (#474) by @asottile-sentry
- fix(hex): Add erlang-dev for missing parsetools (#473) by @sl0thentr0py
- feat(build): Bump Dockerfile base image to node:20-bookworm (#472) by @sl0thentr0py
- fix(hex): Need local.hex --force for compiling deps (#471) by @sl0thentr0py
- ref: update jest (#468) by @asottile-sentry
- build(deps-dev): bump fast-xml-parser from 4.2.4 to 4.2.5 (#467) by @dependabot
- build(deps-dev): bump fast-xml-parser from 3.19.0 to 4.2.4 (#466) by @dependabot
- Upgrade Flutter to 3.10 in the docker image (#463) by @marandaneto
- fix missing await when calling uploadKmpPomDistribution (#460) by @buenaflor
- feat: maven kotlin multiplatform support (#412) by @buenaflor
- Push nupkg and snupkg together (#459) by @mattjohnsonpint
- Support nuget snupkg artifacts (#458) by @mattjohnsonpint
- Fix extracting flutter file to tmp folder instead of current folder (#457) by @marandaneto
- ref: allow all mounted directories to be considered "safe" (#455) by @asottile-sentry
- Make Flutter available in the docker image (#453) by @marandaneto
- ref: use --no-document for faster smaller gem install (#454) by @asottile-sentry
- build(deps-dev): bump simple-git from 3.15.0 to 3.16.0 (#448) by @dependabot
- chore(maven): Increase nexus polling deadline to 60 mins (#450) by @romtsn
- feat: Add hex target for publishing elixir packages (#449) by @sl0thentr0py
- feat(github): Allow to push a tag without a release (#447) by @tonyo
- cleanup(github): Remove mentions of unused annotatedTag (#446) by @tonyo
- document the sentry-pypi target (#444) by @asottile-sentry
- fix: Publishing podspec depending on other podspec (#442) by @philipphofmann
- sentry-pypi: get the commit id, not the tree (#441) by @asottile-sentry
- sentry-pypi: fix trailing whitespace in git output (#440) by @asottile-sentry
- build(deps): bump json5 from 2.1.3 to 2.2.3 (#439) by @dependabot
- add sentry-pypi target (#438) by @asottile-sentry
- Emit dotnet and nuget version info (#437) by @mattjohnsonpint
- Bump symbol collector (#435) by @bruno-garcia
- build(deps-dev): bump simple-git from 3.6.0 to 3.15.0 (#436) by @dependabot
- build(deps): bump decode-uri-component from 0.2.0 to 0.2.2 (#434) by @dependabot
- bump dotnet 7 (#431) by @mattjohnsonpint
- upgrade minimatch (#429) by @asottile-sentry
- ci(volta-cli): Switch to getsentry/action-setup-volta. This will addr⦠(#428) by @mattgauntseo-sentry
- Bump action versions (#426) by @mattgauntseo-sentry
- Update actions/upload-artifact to v3.1.1 (#425) by @mattgauntseo-sentry
- build(deps): bump parse-url from 7.0.2 to 8.1.0 (#416) by @dependabot
- Adding delay between retries for getting artifacts. (#414) by @mattgauntseo-sentry
- Add additional context to error when version has a 'v' prefix (#411) by @mattgauntseo-sentry
- bump dotnet 6 (#408) by @bruno-garcia
- ref: actually upgrade node-fetch (#407) by @asottile-sentry
- ref: upgrade yarn dependencies to resolve github security notices (#406) by @asottile-sentry
- build(deps): bump parse-url from 5.0.3 to 7.0.2 (#403) by @dependabot
- build(deps): bump jsdom from 16.4.0 to 16.7.0 (#402) by @dependabot
- build(deps-dev): bump shell-quote from 1.6.1 to 1.7.3 (#401) by @dependabot
- fix: re-open asset when retrying asset upload (#398) by @asottile-sentry
- ref: Rework how GH artifacts upload retrying works (#397) by @kamilogorek
- ref: Disable Octokit debug logging as its not useful (#397) by @kamilogorek
- ref: Upload GitHub artifacts in parallel (#397) by @kamilogorek
- fix(crates): Resume workspace publish (#392) by @jan-auer
- ref: Allow for all logger levels in Octokit (#390) by @kamilogorek
- ref: Upload GitHub artifacts in series (#389) by @kamilogorek
- ref: Remove spinners from github target artifacts upload (#385) by @kamilogorek
- upgrade(simple-git): Use latest version, 3.6.0 (#381) by @BYK
- feat(changelog): Limit changes to current project folder (#379) by @BYK
- ci(lint): Make lint job work for external contributors (#378) by @BYK
Work on increasing the release safety and reliability.
By: @BYK (#370)
- ci: Use better key for getsentry/action-enforce-license-compliance if available (#377) by @chadwhitacre
- Use a custom action (#375) by @chadwhitacre
- fix: Use
unzipper.Open
to use CentralDirectory instead of local headers (#372) by @kamilogorek
- deps: Update symbol-collector to 1.5.3 (#363) by @kamilogorek
- ref: Use default branch as merge target instead of parent detection (#355) by @kamilogorek
- deps: Roll back to symbol-collector 1.4.2 (#362) by @kamilogorek
- meta(gha): Deploy workflow enforce-license-compliance.yml (#360) by @chadwhitacre
- fix: Make sure dart credentials directory exists before writing (#361) by @kamilogorek
- feat: Remove dependency_overrides entries from pubspec.yaml in dart (#359) by @kamilogorek
- misc: Update PubDev credentials file location in readme (#358) by @kamilogorek
- feat: Adds pub.dev target for Dart and Flutter (#353) by @kamilogorek
- misc: Add explanatory code comments and minor refactor for Maven target (#354) by @kamilogorek
- fix: Correctly set auth header and content-type for Nexus requests (#352) by @kamilogorek
- feat: Publish maven packages without use of Gradle (#351) by @kamilogorek
- fix: Make sure that gradle directory exists before writing to it (#349) by @kamilogorek
Work on increasing the release safety and reliability.
By: @chadwhitacre (#343)
- feat: Unattended GPG signing for Maven target (#346) by @kamilogorek
- Github β GitHub (#347) by @chadwhitacre
- fix(crates): Skip path-only dev-dependencies in dep cycle checking (#341) by @Swatinem
- Limit the number of leftovers listed (#335) by @chadwhitacre
- fix: Remove GitHub asset checksum (#333) by @rhcarvalho
- misc: Update error message to clarify what size refers to what (#332) by @rhcarvalho
- build: Use source map to produce debuggable stack traces (#326) by @rhcarvalho
Work on increasing the release safety and reliability.
By: @iker-barriocanal (#328)
- docs: Fix typos and cleanup some documentation (#325) by @rhcarvalho
- Relax checksum requirement (#323) by @chadwhitacre
- docs: Remove Github Artifact Provider entry in the README (#321) by @kamilogorek
- ci(release): Omit meta version bumps from changelog (#320) by @BYK
- meta: Bump new development version (d0028539)
We recently had an incident where we were uploading broken assets to GitHub releases page. We now verify the uploads to GitHub releases and GCS via hash comparison.
PRs: #318
GitHub automatically generates a "Contributors" section when you mention the contributors on release notes so why not Craft?
PRs: #319
- meta: Bump new development version (6f2538ea)
We recently had an incident where we were uploading broken assets to GitHub releases page. We now verify the uploads to GitHub releases and GCS via hash comparison.
PRs: #317
- meta: Bump new development version (721b750f)
We have fixed some edge cases and a major issue affecting GitHub release logs in our automated changelog generation. These are mostly about how we generated Markdown.
PRs: #316
We recently had an incident where we were uploading broken assets to GitHub releases page. We now verify the uploads to GitHub releases and GCS via hash comparison.
PRs: #315
- fix(release): Fix post release script to commit the new version (#312)
- meta: Bump new development version (896ea585)
We recently had an incident where we were uploading broken assets to GitHub releases page. We now verify the uploads to GitHub releases and GCS via hash comparison.
PRs: #308, #304
- fix(registry): Add missing await to manifest update (#311)
- fix: Only log error on tempdir rm when ther is an error (#309)
- fix: UPM no longer expects exactly 1 artifact (#307)
- fix: github release uploads (#302)
We have fixed some edge cases and a major issue affecting GitHub release logs in our automated changelog generation. These are mostly about how we generated Markdown.
PRs: #301
- docs(changelog): Fix subsections for 0.25.1 (bd1bc975)
We have fixed some edge cases and a major issue affecting GitHub release logs in our automated changelog generation. These are mostly about how we generated Markdown.
PRs: #299, #298, #297, #296, #295
- ci(release): Fetch all commits for prev version determination (eabce5ec)
- upgrade(ansi-regex): Upgrade ansi-regex to 5.0.1 (#300)
We now automatically generate changelog entries for the auto
changelog policy where none provided, instead of saying "No documented changes". The commits/PRs are grouped by their associated GitHub milestones and the milestone title and description are used in the changelog along with a list of related commits/PRs. Any unaccounted changes are grouped under the "Various improvements and fixes" section.
PRs: #291, #290, #289, #287, #285
Added the long-awaited Maven target, full with Android support.
PRs: #271, #275, #276, #270, #258
Added target for our very own symbol-collector to collect and upload all native system symbols with Craft.
PRs: #284, #277, #269, #268, #267, #266
Turns out our Cocoapods target was a bit outdated and broken. We have fixed it in this release! π₯³
PRs: #281, #282
- build: Drop Node 12 support, target Node 14 (#293)
- build(deps): Bump tmpl from 1.0.4 to 1.0.5 (#292)
- ref: Fix TypeScript type warning regarding catch (#288)
- build(deps): Bump set-value from 3.0.2 to 4.1.0 (#286)
- ci: Drop Node 10 support, use Node 14 by default (#283)
- build(deps-dev): Bump tar from 4.4.15 to 4.4.18 (#280)
- build(deps): Bump path-parse from 1.0.6 to 1.0.7 (#274)
- build(deps-dev): Bump tar from 4.4.8 to 4.4.15 (#273)
- docs: Consistent code samples for shell (e84f693f)
- docs: Mention release/** branches on README (#263)
- fix(registry): Fix error w/ simple registry config (#262)
- upgrade(parse-url): Force parse-url>=5.0.3 for security (#261)
- upgrade(js-yaml): Bump to 3.13.1 for security fixes (#260)
- fix(registry): Fix onlyIfPresent config on batch (#259)
- ref(zeus): Remove all Zeus support (#253)
- fix(registry): Fix empty
files
entries (#256)
- fix(git): Ensure origin/HEAD is set (#252)
- feat(publish): Ability to merge to non-default (#245)
- fix(logging): Proper scoping and log levels (#247)
- feat(registry-target): Allow batched updates w/ new config (#249)
- fix(logging): Fix scoped loggers not respecting log level (#236)
- fix(github-artifacts): Fix incorrect artifact resolution (#237)
- fix(cli): Fix global flag parsing interference (#235)
- feat(config): Automatically detect GitHub config when missing (#208)
- feat: Add upm target (#209)
- ci: Fix our build matrix, add Node 14 & 16 (#211)
- build: Fix and simplify jest and TS configs (#210)
- upgrade(ts-jest): Upgrade ts-jest to latest version (#212)
- feat: Add projectPath config option to GitHub (#220)
- feat: Add config CLI command (#221)
- feat(prepare): Add rev option to base a release on (#223)
- ref: Unify global flags (#224)
- fix(github-artifacts): Allow multiple artifacts on the SHA, use latest (#226)
- fix: Upgrade simple-git to latest version (#207)
-
fix: No prod dependencies (#204)
-
build: Move to single-file builds for craft (#203)
-
fix(github): Revert retry on 404s (#199)
-
fix(gcs): Fix GCS artifact provider on Windows (#200)
-
feat(config): Use GitHub as default provider (#202)
Breaking Change: This version changes the default configuration values for
statusProvider
andartifactProvider
togithub
ifminVersion
is greater or equal to0.21.0
. If your craft configuration file does not set these providers explicitly, you can keep the old behavior by modifying your config:minVersion: 0.21.0 artifactProvider: name: zeus statusProvider: name: zeus
Support for Zeus will be dropped in a future release and we highly recommend updating your CI workflows to use GitHub.
- fix(publish): Fix publishing when resuming from a state file (#197)
- ref(logger): Move some extra info to debug level (#198)
- fix(registry): Ensure up-to-date remote before pushing (#186, #188)
- feat(publish): Store and restore publish state (#192)
- feat(cli): Add a new targets command (#193)
- feat(github): Retry on 404s (#177)
- ref(aws-lambda): Catch potential exceptions when publishing AWS Lambda layers to new regions (#178)
- feat(aws-lambda): Add runtime names on commit message (#181)
- feat(registry): Allow colons as separators in canonical names (#183)
- fix(registry):
undefined
handling when there's nochecksums
in.craft.yml
(#175)
- fix(registry): Replace the actual versionFilePath (#174)
- feat(aws-lambda): Update the sentry release registry with AWS Lambda layer versions (#172)
- fix(gcs-target): Fix incorrect upload path to GCS when it has a leading slash (#170)
- feat(aws-lambda): AWS Lambda layer target (#160)
- fix(publish): Fix fail on dry-run w/ github target (#152)
- feat(docker): Support cocoapods in the docker container (#153)
- ref(github): GitHub standardized on GITHUB_TOKEN so let's use that (#154)
- feat(publish): Add support for optional post-release script (#144)
- fix(publish): Fix error when special target 'all' is used (#142)
- fix(publish): Only allow valid target ids for -t (#137)
- fix(changelog): Support subheadings (#139)
- doc(docker): Mention access token instead of password (#140)
- fix: npm package
- fix: npm token usage (#134) kinda reverting (#130)
- feat: Github Artifact Provider (#121)
- feat(docker): Add sourceFormat & targetFormat options (#125)
- feat(targets): Add optional
id
field to target config (#128) - fix(npm): Actually use NPM_TOKEN for publishing (#130)
- fix(gcs): Better error serialization (#120)
- fix(github): Detect skipped status checks and Github actions runs as successful (#124)
- build: Migrate from tslint to eslint (#113)
- fix: Add stronger types for module exports (#114)
- fix(github): Don't fail when there are queued check suites (#117)
- feat: Add support for
gem
target (#119)
- build(ci): Have better defaults for CI environments (#110)
- build(docker): Upgrade cargo to a recent version (#104)
- feat(gha): Add GitHub Action for Craft (#103)
- docs: Fix
changelogPolicy
enum (#102) - build(docker): Add a
craft
binary into the Docker image (#101) - docs: Fix
artifactProvider
example (#100) - feat(crates): Add a
noDevDeps
option (#112) - fix(crates): Detect stale upload caches and retry (#98)
- feat(changelog): Add "auto" changeset policy (#93)
- fix(github): Ignore pending response from legacy commit check API (#94)
- fix(zeus): Don't force ZEUS_API_TOKEN when Zeus is not used (#97)
- feat(target): Add "docker" target (#95)
- fix(logger): Logger should respect log level from env file (#96)
- feat: Add a
releaseBranchPrefix
config attribute (#86)
- feat: Cocoapods Target add
--allow-warnings
by default - fix: Localized git branch checks (#84)
- fix(gcs): Fix content-types issues (#78)
- ref: Remove the need for
COCOAPODS_TRUNK_TOKEN
to be in the environment (#72)
- feat: Artifact provider abstraction (#52, #54)
- feat: Support for custom remote names (#43)
- ref: Create GCS API module (#63)
- ref: Create environment utils module (#60)
- chore: Hard-pin runtime dependencies, remove node-emoji and node-dryrun (#53, #58, #65)
- fix: Default status provider should still be Zeus
- fix: Handling of undefined command line arguments (#40)
- feat: Add new
statusProvider
option - feat: Make artifact check optional (#36)
- gcs: fix shallow copy issue with upload parameters
- github: add missing dry-run check
- registry: add onlyIfPresent attribute
- Limit concurrent downloads for some targets
- Pin octokit dependency
- registry: checksums can be added to registry entries
- Add "requireNames" attribute
- gcs: add charsets to content-type
- Disable advanced ctrl-c behavior by default
- gcs: use explicit content-type for specific file types
- npm: use "next" tag when publishing pre-releases (#20)
- registry: do not update the "latest" symlink if the new version is older
- crates: support submodules when publishing (#18)
- npm: allow using "yarn"
- npm: allow to specify OTP for publishing
- Log errors to Sentry
- github: strip date from release title
- pre-release command: empty string skips the run
- gcs/github: add retries
- Rename "release" step to "prepare"
- Display artifact size before publishing
- Upgrade GCS/GitHub dependencies
- Change prompt type when publishing
- Read environment configuration from the project root, and not from the current directory
- Warn about insecure environment files
- gh-pages: Add version to commit message
- Change minimal supported NPM version to 5.6.0
- Fix artifact sorting
- Read environment from .craft.env
- Show summary of available artifacts before publishing
- Always print Zeus links when publishing
- Add "--no-input" and "--dry-run" as CLI arguments
- Create annotated tags by default
- Require additional ctrl-c when running "publish"
- Checkout master after successfull "craft release"
- Fix "registry" issue with prereleases
- Replace "maxCacheAge" with more generic "metadata" attribute in "gcs" target
- Add "cocoapods" target
- Conditional execution for "registry" targets
- Minor error message fixes
- Add minVersion attribute to the configuration file
- Add Sentry Release Registry ("registry") target
- Change template engine to Mustache
- Add additional polling for unfinished and non-existing builds
- Add GitHub Pages ("gh-pages") target
- Add Google Cloud Storage ("gcs") target
- Add update notifier
- Fix PATH issue with "crates" target
- Add a missing check for
ZEUS_API_TOKEN
- Add "crates" target for publishing Rust packages
- Fix encoding issue for NPM target
- Check for executables when doing "publish"
- Improve support for interactive pre-release scripts
- Basic changelog management
- Basic "release" functionality
- Basic "publish" functionality for GitHub and NPM