mirror of
https://github.com/sagiegurari/cargo-make
synced 2026-06-08 17:20:03 +00:00
37 KiB
Executable File
37 KiB
Executable File
CHANGELOG
v0.37.24 (2025-01-18)
- Enhancement: New env_not condition #1187 thanks (@ayodejiige)
- Enhancement: Enable LTO and codegen-units = 1 optimization #1211 (thanks @zamazan4ik)
- Maintenance: upgrade kcov default version to 43
- Maintenance: Remove minimal rust version CI flow
- Maintenance: Replacing unsecure md5 with sha256 (thanks @marxin)
v0.37.23 (2024-10-19)
- Enhancement: support relative keyword for makefile extending to enable easy git/crate/workspace root extending #1175
- Maintenance: critical bug fix upgrade for duckscript
v0.37.22 (2024-10-12)
- Fix: set env CARGO_MAKE_CURRENT_TASK_NAME before condition invocation #1173
v0.37.21 (2024-10-04)
- Fix: Remove RUSTFLAGS from workaround of rustup env issue when setting toolchain #1169
- Maintenance: upgrade duckscript
v0.37.20 (2024-10-03)
- Maintenance: upgrade dependencies
v0.37.19 (2024-10-03)
- Maintenance: upgrade duckscript
v0.37.18 (2024-09-29)
- Enhancement: config to disable all installation steps #1147
v0.37.17 (2024-09-28)
- Fix: support encrypted drives (shorten script file names) #1150
- Fix: setup musl failing on open ssl binary redirects
v0.37.16 (2024-08-30)
- Enhancement: Expand condition_script_runner_args #1132 (thanks @wmmc88)
v0.37.15 (2024-07-29)
- Enhancement: Support env expansion for script runner #1125
- Enhancement: Make LoggerOptions public + add name field #1124 (thanks @SamuelMarks)
v0.37.14 (2024-07-17)
- Fix: fix the --skip-init-end-tasks argument #1108 (thanks @06393993)
- Enhancement: Support using cargo make as library #1112 (thanks @SamuelMarks)
v0.37.13 (2024-07-07)
- Enhancement: New condition_script_runner_args attribute #1081
- Enhancement: Add workspace level package info to global environment variables #1092 (thanks @varphone)
- Enhancement: New condition type: And, Or, GroupOr to enable to fine tune conditions #432
v0.37.12 (2024-05-04)
- Enhancement: support crates with invalid structure (fallback of cargo-metadata) #1076
- Maintenance: disable old legacy migration task #1101
v0.37.11 (2024-04-05)
- Fix: reset CARGO env var to fix wrong CARGO in commands #1060 (thanks @wmmc88)
v0.37.10 (2024-02-23)
- Enhancement: Prevent wasteful busy cpu spinning #1045 (thanks @permosegaard)
- Enhancement: Enable multiple ignored watch patterns #1041 (thanks @Buzzec)
v0.37.9 (2024-02-02)
- Fix: fix rust script invocation as load_script #1035
v0.37.8 (2024-01-24)
- Enhancement: Support script runners and shebang in condition scripts #987
- Enhancement: Support script runner args for rust scripts #1025
- Enhancement: Support condition_script as string and not just vec (similar to script)
v0.37.7 (2024-01-14)
- Fix: Detect crate installation fix for new cargo list format
v0.37.6 (2024-01-13)
- Fix: Detect crate installation fix for new cargo list format
- Enhancement: Add condition support for decode info #1020 (thanks @Bauke)
- Enhancement: Remove format check from static lint checks profile
- Maintenance: Update lint rules
v0.37.5 (2023-12-15)
- Enhancement: Add OS condition #989
- Enhancement: Enable setting default profile by env variable #996 (thanks @Johnabell)
- Documentation: Add Fig Autocompletion to README.md #993 (thanks @beeinger)
- Maintenance: update dependencies and build
- Documentation: Add additional plugin env handling details #978
v0.37.4 (2023-10-31)
- Fix: Enable latest rust-script installation by default #979 (thanks @wmmc88)
v0.37.3 (2023-10-28)
- Fix: Fallback CARGO_MAKE_CRATE_CUSTOM_TRIPLE_TARGET_DIRECTORY to CARGO_MAKE_CRATE_TARGET_DIRECTORY #972
- Enhancement: Improve rust based scripts performance by enabling script caching #968
v0.37.2 (2023-09-27)
- Enhancement: improve support for shebang script file extensions #926
v0.37.1 (2023-09-17)
- Fix: workspace dependencies outside workspace directory should not be detected as members #948
- Enhancement: Move crate_target_dirs from RustInfo to CrateInfo for improved performance #941 (thanks @xxchan)
- Maintenance: upgrade duckscript #945
v0.37.0 (2023-09-08)
- Fix: env vars loading order is not consistent #934
- [backward compatibility break] Maintenance: Upgrade duckscript runtime to 0.8
- Maintenance: Upgrade cargo-watch to 8.4.1
v0.36.13 (2023-08-10)
- Fix: External env vars are detected as cycles #911
- Fix: Auto complete bash script #914 (thanks @gw31415)
- Documentation: Arch Linux installation #880 (thanks @CosminGGeorgescu)
- Documentation: Fix Readme about Binary Release Target #915 (thanks @Azuki-bar)
- Maintenance: Replace unmaintained ansi_term with nu_ansi_term #913
v0.36.12 (2023-07-19)
- Fix: Remove workspace members sorting #897 (thanks @pskrgag)
v0.36.11 (2023-06-15)
- Maintenance: Upgrade dependencies
v0.36.10 (2023-06-10)
- Enhancement: split function now allows to remove empty values via new third argument 'remove-empty' #863
- Enhancement: list-steps command should group aliases with original commands #862 (thanks @xxchan)
v0.36.9 (2023-06-05)
- Fix: '--hide-uninteresting' cli flag #859 (thanks @xxchan)
- Fix: cargo-watch option 'why' should remove '-q' #849
v0.36.8 (2023-05-27)
- Enhancement: New precompiled target: x86_64-unknown-linux-gnu #853 (thanks @steverusso)
- Enhancement: New log level 'off' and cli flag --silent #846
- Enhancement: Upgrade cargo-watch to 8.4.0 and add new 'why' watch option #849
- Enhancement: New cli flag '--hide-uninteresting' for list commands to reduce output and skip hooks #848
v0.36.7 (2023-04-23)
- Fix: Clear did not remove parent task environment variables definitions #816
- Enhancement: Add aarch64-apple-darwin binary release target #812 (thanks @dbanty)
- Documentation: Add documentation link on README for watch attribute #829 (thanks @saona-raimundo)
v0.36.6 (2023-03-01)
- Enhancement: Support environment expansion for files_modified condition #802 (thanks @stormshield-guillaumed)
v0.36.5 (2023-02-18)
- Enhancement: Support workspace.dependencies setup to find workspace members #773
- Enhancement: Performance improvement by reducing cargo-metadata calls #796
- Enhancement: Added additional time summary breakdown for env setup #796
- Documentation: Add documentation on multiple blocking watches #788
- Documentation: Add documentation on cwd #787
- Maintenance: Upgrade dependencies
v0.36.4 (2023-01-22)
- Fix: relative path detection for workspace members defined in dependencies #773
- Maintenance: Bump cargo-watch to 0.8.3 #771
- Maintenance: Bump rust minimal version to 0.65 due to dependencies updates
- Maintenance: Upgrade dependencies
- Documentation: Update skip_core_tasks docs #752
- Documentation: Update parallel attribute docs #751
v0.36.3 (2022-11-15)
- Enhancement: Add new files_modified condition #741
- Enhancement: Enable to set default toolchain for all core cargo tasks #743
- Documentation: Add section on default task definition #745
v0.36.2 (2022-10-18)
- Enhancement: Add env var support in env_files values #723
- Enhancement: Support environment expansion for toolchain attribute
- Fix: support shebang in scripts with spaces before shebang start #718
- Documentation: small edits for spelling, grammar, formatting #721 (thanks @Zearin)
v0.36.1 (2022-09-27)
- Enhancement: Support inherited package info #712
- Enhancement: Add support for install_crate value without args (skipping current installation validation) #725
- Enhancement: Added shell completion files in included crate #565
- Enhancement: Add skipping task message for all actionable tasks that fail condition #708
v0.36.0 (2022-08-30)
- [backward compatibility break] Enhancement: Environment variables now support the default syntax: ${name:default}
- [backward compatibility break] Enhancement: Environment variables definition order is now more flexible to support variable to variable dependency more easily #688 (thanks @indietyp)
- Enhancement: Workaround rustup env issue when setting toolchain #702
v0.35.16 (2022-08-08)
- Enhancement: Create task definition in runtime and invoke it via plugin #677
- Enhancement: Enable to remove force flag for custom install commands #674
- Maintenance: Update dependencies #676
v0.35.15 (2022-07-21)
- Fix: upgrade cliparser to support windows paths
v0.35.14 (2022-07-21)
- Enhancement: CLI parsing now done by the cliparser crate instead of clap due to clap continued backward compatibility issues
- Enhancement: Added support ${@} in Duckscript tasks #667
- Enhancement: Check in Cargo.lock file to support linux package managers #670
- Enhancement: Added new --quiet cli flag #668
- Maintenance: Add scheduled CI github workflow
v0.35.13 (2022-06-11)
- Enhancement: Define CARGO environment variable for tasks with toolchain and script #658
- Enhancement: New CARGO_MAKE_DISABLE_UPDATE_CHECK environment variable to disable update checks #653
- Fix: wrong update check days counting
- Fix: New unstable feature CTRL_C_HANDLING to prevent zombie processes after cargo-make exits #374 (thanks @MartinKavik)
v0.35.12 (2022-05-05)
- Fix: upgrade to cargo-watch 8.1.1 due to 8.1.0 being yanked #652
v0.35.11 (2022-04-22)
- Fix: add workspace root member when both workspace members and package are defined #644
- Fix: support partial semver values in rust version conditions #643
- Enhancement: upgrade regex as per security advisory #638 (thanks @Dylan-DPC)
- Enhancement: support condition in script based env value #648
- Enhancement: enable to mark env files as 'defaults only' #647
v0.35.10 (2022-03-11)
- Fix: detect workspace member for non virtual workspaces #636
- Documentation: added docs for grcov usage #375
v0.35.9 (2022-02-24)
- Fix: clap 3.1 is not backward compatible
v0.35.8 (2022-01-11)
- Enhancement: New plugin system to enable custom task execution logic #620
- Maintenance: upgrade to clap 3
- Enhancement: Support new github auth token for github release task
v0.35.7 (2021-12-11)
- Fix: crate installation version check now also supports running the binary with --version arg #612
- Enhancement: support alternate cargo install commands #608
- Documentation: VS code editor integration #604 (thanks @grbd)
- Fix: Panic during crate installation in case args are empty #615
- Enhancement: New list-category-steps command #603 (thanks @grbd)
- Enhancement: New tls feature so tls can be disabled (by default enabled) #614
- Fix: If rust-script is used and requires installation, install old 0.7.0 version due to rust-script bug
v0.35.6 (2021-11-01)
- Fix: prebuilt binary release task
- Enhancement: Duckscript upgrade
v0.35.5 (2021-10-22)
- Enhancement: Add makers executable to prebuilt binary release #600
v0.35.4 (2021-10-22)
- Fix: github publish flow broken
v0.35.3 (2021-10-22)
- Enhancement: Task cli arguments matching cargo-make cli args can now be passed without -- character. Arguments for cargo-make itself must now be passed in before the task name. #585 (thanks @WorldSEnder)
v0.35.2 (2021-10-16)
- Enhancement: Ability to specify min rust version in tasks via toolchain attribute #594 (thanks @WorldSEnder)
v0.35.1 (2021-10-02)
- Fix: extend attribute didn't extend env variables #579
- Enhancement: Limit search to one result when searching for updates #574 (thanks @jayvdb)
- Fix: CARGO_MAKE_TASK_ARGS not set when using watch mode #586
- Fix: Workspace members glob detection didn't validate Cargo.toml exists #591
- Documentation: improve condition fail message documentation #583
- Upgrade run_script #581
- Add internal steps to time summary
- Adding ability to disable git, rust and crate environment variables to speed up startup time
- Documentation: zsh auto completion instructions for makers #590
- Upgrade cargo-watch to 8.1.0
v0.35.0 (2021-07-10)
- Enhancement: New bash auto completion script for makers #565
- [backward compatibility break] Fix: environment variable typo in CARGO_MAKE_TEST_USE_MULTI_TEST_PHASES #566
v0.34.0 (2021-06-13)
- Fix UNC prefix stripping inconsistency #562 (thanks @WilliamVenner)
v0.33.0 (2021-05-09)
- Enhancement: Run kcov only on test executables #555 (thanks @elonca)
- Enhancement: New CARGO_MAKE_CRATE_CUSTOM_TRIPLE_TARGET_DIRECTORY environment variable #554 (thanks @ark0f)
- Fix: CARGO_MAKE_CRATE_TARGET_DIRECTORY does not respect workspace #557 (thanks @ark0f)
v0.32.17 (2021-04-15)
- Enhancement: Support path glob (with optional gitignore support) environment variables #542
- Enhancement: Support version specific installation for crates #544
- Enhancement: Add CARGO_MAKE_CRATE_TARGET_DIRECTORY environment variable #548 (thanks @ark0f)
- Enhancement: Support custom crate target triple #547 (thanks @ark0f)
- Enhancement: Improve release upload flow with initial support for arm
v0.32.16 (2021-04-03)
- Enable to skip tasks via command line regex flag (--skip-tasks flag) #538
- Deprecate bintray tasks support as bintray is shutting down #539
v0.32.15 (2021-03-29)
- Fix: makers color support on windows #535 (thanks @MartinKavik)
- Enhancement: Allow leading hyphens for task arguments #535 (thanks @MartinKavik)
v0.32.14 (2021-03-10)
- Fix: Keep env order for extended makefiles #523
- Fix: Align new version notification #524 (thanks @gemmaro)
- Upgrade dependencies
v0.32.13 (2021-03-05)
- Enhancement: Support rust-script as an additional rust runner #516
- Fix: cm_run_task now also invokes dependencies of the target task #519
- Fix: Env vars provided on cli are not positioned first when evaluated #520
v0.32.12 (2021-01-29)
- Fix: cli arguments lost when using on_error definition #511
- Build time to be printed in sub second precision #510
v0.32.11 (2021-01-24)
- Validate and warn of unknown keys found in makefiles #506
v0.32.10 (2020-12-20)
- Task dependencies can now point to makefiles in other directories #497 (thanks @arlyon)
- Adding async support for cm_run_task duckscript task #493
- Allow "=" in ENV value from cli #502 (thanks @nacardin)
- Migrate from dirs to dirs_next #491
- Upgrade dependencies (duckscript runtime 0.6, duckscript SDK 0.7, ci_info, ...)
v0.32.9 (2020-11-07)
- Add new toml formatting tasks.
v0.32.8 (2020-11-05)
- Load cargo aliases as tasks #484
- Support script content as a simple string instead of an array.
- Support script content as fielded sections (pre/main/post) to enable sharing of common script content between tasks #473
- The load_script and install_script attribute types supports all script input types (string/vec/file/sections).
- Fixed invocation of cargo commands with flag arguments #476
- Improved error message when failing to parse external descriptor #475 (thanks @mrmanne)
- Fixed git add task description #477 (thanks @knutwalker)
- Improve core task performance #487
- Bump rust minimal version to 0.44 due to dependencies updates
v0.32.7 (2020-10-07)
- Fix passing task args to workspace members #470
- Update script_runner_args related documentation #471
v0.32.6 (2020-10-03)
- New script_runner_args task attribute to enable custom cli arguments before the script file #461
- Fix env_files loading #459 (thanks @wolf4ood)
- Provide more detailed error message when env-script fails #463 (thanks @epontan)
- Add example usage with cirrus CI #260 (thanks @fkorotkov and @mtmn)
- Upgrade duckscript runtime to 0.5.1 and SDK to 0.6.8
v0.32.5 (2020-09-11)
- Allow for explicit workspace flow in sub flows #455 (thanks @epontan)
v0.32.4 (2020-08-28)
- Prevent multiple calls to cleanup task
v0.32.3 (2020-08-27)
- Support cleanup task for forked sub flow #452
- Upgrade duckscript SDK to 0.6.7
v0.32.2 (2020-08-20)
- Fix watch invocation in case makefile file path contains spaces #445
- Clear RUST_RECURSION_COUNT at start of flow #447
- Fix do-copy-apidocs issue with triple folder #444 (thanks @haraldh)
- Fix workspace detection for sub flows
- Add task time summary via new cli flag --time-summary or config time_summary=true #446
- Reduce console output for non CI environment (can be disabled via new reduce_output config attribute)
- Workaround critical bug in rust nightly which breaks shebang based script invocations
- Upgrade duckscript SDK to 0.6.6
v0.32.1 (2020-07-31)
- Support numeric environment variables
- Upgrade duckscript SDK to 0.6.5
v0.32.0 (2020-07-03)
- Upgrade duckscript SDK to 0.6
v0.31.1 (2020-06-26)
- Support CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY in workspace emulation mode #434
- New readme-include-files markdown-include-files tasks to modify markdown files based on content from other files #426
v0.31.0 (2020-06-06)
- Upgrade duckscript to 0.5
- Upgrade cargo-watch to 7.4.1
v0.30.8 (2020-05-25)
- Fix rustfmt nightly installation issue due to rust env issue: rust-lang/rust#72423
v0.30.7 (2020-05-07)
- New cm_run_task duckscript command which enables to run cargo-make tasks from within duckscript #417
- New CARGO_MAKE_GIT_HEAD_LAST_COMMIT_HASH and CARGO_MAKE_GIT_HEAD_LAST_COMMIT_HASH_PREFIX environment variables.
- Bug Fix - no need to define member task names in workspace makefile #420
- rust_info upgrade.
- duckscript 0.4 upgrade.
v0.30.6 (2020-04-24)
- Workspace emulation support #415
- Support array definition of environment variable values.
- New wasm related tasks for built in wasm support.
- Fixed env extension bug when extending a core task.
- Enable adding custom hooks into print-env flow.
v0.30.5 (2020-04-15)
- Fixed default core task init/end task names pickup #407
- New readme-set-crate-version task which modifies README with crate version.
- Enable to provide custom arguments to git-push task #408
- build-publish flow will skip git hooks while publishing #408
- Improve clippy installation flow
v0.30.4 (2020-04-07)
- Added clippy pre/post flow hook tasks.
- Added check format pre/post flow hook tasks.
- clippy and check-format CI flow tasks will only run on nightly linux.
v0.30.3 (2020-04-04)
- Fix linux release build.
v0.30.2 (2020-04-04)
- New getat function #402
- Update openssl version to 1.1.1f
v0.30.1 (2020-03-28)
- New build-file-increment task and flow #399
- Display recursion level like
make(1)#389 (thanks @Ma27) - Document github actions CI instructions.
- Migrate CI to github actions.
v0.30.0 (2020-03-23)
- Ensure that the specified rustup toolchain exists before using it #388 (thanks @Ma27)
- kcov coverage flow support for rustc >= 1.44 #393
- Enable to timeout kcov test execution for each executable via new CARGO_MAKE_KCOV_TEST_TIMEOUT_VALUE environment variable #396
- New multi-phase-tests profile to enable splitting the tests to multiple phases (thread safe, multi threaded, custom).
- Ignoring non actionable tasks #390
- Default build and test tasks support verbose flag on CI environment.
- Pager disabled for diff command.
- Split internal cargo-make tests to thread safe and single threaded to improve testing perf
v0.29.0 (2020-03-19)
- Provide accurate CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY when starting build from member crate #382
- Support locked automatically for all crate installations via CARGO_MAKE_CRATE_INSTALLATION_LOCKED environment variable #381
- Added ability to disable sudo invocation from cargo-make scripts via new environment variable CARGO_MAKE_SUDO_DISABLE #387
- Improve toml loading performance.
- Split core makefiles to multiple files.
- Upgrade duckscript to 0.3
v0.28.0 (2020-02-21)
- Added github hub cli support #376
- Use fsio crate for file system apis.
v0.27.0 (2020-02-07)
- Enable to pipe stdin for scripts #355 (thanks @dakom)
- Upgrade to duckscript 0.2
v0.26.2 (2020-01-24)
- Print duckscript version info env task #371
- Duckscript upgrade
- Migrate several task scripts from shell to duckscript to improve performance
v0.26.1 (2020-01-17)
- Enable custom project binary executable name for binary release zip
- Support kcov mac installation #340 (thanks @bluejekyll)
- Migrate several task scripts from shell to duckscript to improve performance
- duckscript should exit on any error like shell scripts
- Update kcov to version 38 #367
- New wait task to enable sleep as part of the flow
- Add sleep before member publish during workspace publish flow #368
v0.26.0 (2020-01-10)
- New env_scripts to enable custom environment setup #360
- Added new CARGO_MAKE_RUST_TARGET_TRIPLE environment variable #356 (thanks @daxpedda)
- Added new CARGO_MAKE_CRATE_TARGET_TRIPLE environment variable (get default build target including from '.cargo/Config.toml') #357 (thanks @daxpedda)
- Enable custom scripts via shebang line for load and install scripts.
- Enable @script type detection with shebang line #359
- Upgraded duckscript version
- Increased minimum rust version to 1.39.0
- Added condition for build-publish-flow to restrict only to master branch #364
v0.25.1 (2020-01-03)
- Bug Fix - Fixed CARGO_MAKE_PROJECT_VERSION when main_project_member is set
- Ensure cargo-make working directory is not modified after duckscript execution.
v0.25.0 (2020-01-01)
- [backward compatibility break] Ability to set multiple watch paths in watch options #354
v0.24.3 (2019-12-31)
- Add support for duckscript #348
- Add conditional validation support for environment variables #344
- New CARGO_MAKE_PROJECT_NAME and CARGO_MAKE_PROJECT_VERSION environment variables #349
- Ability to set watch path in watch options #350
- New zip-release-ci-flow task to enable zip creation for binary release publishing
- New workspace publish flow #347
- Upgrading run_script crate
v0.24.2 (2019-12-13)
- New env_contains condition #335
- New custom condition failure message attribute: fail_message #332
- New print-env-flow task which prints out entire env info (rust, git, cargo, crate, ci, ...) #333
- New CARGO_MAKE_CI_BRANCH_NAME environment variable #334
- New CARGO_MAKE_CI_VENDOR environment variable #337
- Outdated dependencies validation as part of CI flow to be limited to CI master branch only #323
v0.24.1 (2019-12-06)
- Support invocation of multiple tasks via run_task #324
- Support invocation of multiple tasks in parallel via run_task #321
- New CARGO_MAKE_CURRENT_TASK_NAME, CARGO_MAKE_CURRENT_TASK_INITIAL_MAKEFILE, CARGO_MAKE_CURRENT_TASK_INITIAL_MAKEFILE_DIRECTORY environment variables #322
- Info printout to state if task is running or skipped #326
- New CARGO_MAKE_CARGO_HOME environment variable #331 (thanks @daxpedda)
- Generate task list documentation file via new cli argument (output-file) #325
- Outdated dependencies validation as part of CI flow to be limited to master branch only #323
- Use new git_info crate to fetch git info and setup environment #320
v0.24.0 (2019-11-22)
- Support defining and loading env files in makefile via new env_files attribute #306
- [backward compatibility break] Workspace profile now passed on to members #309 (thanks @daxpedda)
- New CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY environment variable #311 (thanks @daxpedda)
- Fix CARGO_MAKE_TASK_ARGS not being passed down to workspace members #314 (thanks @daxpedda)
- [backward compatibility break] Task cwd attribute supports environment variables expansion #318
- Guard against self-referential aliases #305 (thanks @phi-gamma)
- Migrate to envmnt::expand #308
- New CARGO_MAKE_WORKSPACE_INCLUDE_MEMBERS environment variable #316
v0.23.0 (2019-10-16)
- Enable/Disable color output child process support #299 (thanks @emakryo)
- Main profile should override additional profiles env blocks #300
- Print project name being built #301
v0.22.2 (2019-10-01)
- Ability to unset environment variables #294
- New environment variable to hold current workspace member name #285
- Support script file path for task script attribute #286
- New files_exist and files_not_exist conditions #287
- Added new curl based github release task #293
- Add cargo-udeps task #284
- New CARGO_MAKE_PR environment variable #297
- Add outdated check as part of CI flow
v0.22.1 (2019-08-20)
- Support decoding ability for environment variables initialization #275 #277
- Codecov and tarpaulin integration fix for CI flow #274 #275 (thanks @vtavernier)
- New @@decode function for command arguments #278
- Move link-dead-code definition to coverage task #279
- Enable decode to mirror source value as default value #280
- Add env mapping between cargo make profile and cargo.toml profile #281
v0.22.0 (2019-08-14)
- Specify minimum version for tools/dependencies #265
- Globally disable workspace support via makefile config #264
- Support additional rust script runners #216
- Ability to mark a task deprecated #270
- [backward compatibility break] Use task cwd in condition and installation scripts #259
- Check descriptor min_version before deserializing #268 (thanks @roblabla)
- Profile name passed incorrectly via forked sub tasks #263
- Add support for deleting lock file before publishing
- Add support for dirty cargo publish
v0.21.0 (2019-06-26)
- Add support for multiple test_args when checking for installed crate #252 (thanks @roblabla)
- [backward compatibility break] Upgrade shell2batch for improved windows integration
v0.20.0 (2019-06-16)
- Control kcov installation directory #98
- Caching kcov documentation #238
- Upgrade default kcov version to 36
- [backward compatibility break] Rename KCOV_VERSION to CARGO_MAKE_KCOV_VERSION
v0.19.5 (2019-06-09)
- Specify cargo-make minimal version #243
- Add ability to remove --all-features flag from build/test/bench tasks #248
- Add ability to modify clippy arguments #246
- Documentation - installing
cargo-makewhen cachingcargo#249 (thanks @elpiel)
v0.19.4 (2019-06-01)
- Support additional profiles env blocks #240
- Prevent reinstallation of clippy on nightly #239
- Upgrade cargo-watch #241 (thanks @David-OConnor)
v0.19.3 (2019-05-27)
- Fix clippy installation on nightly #236
v0.19.2 (2019-05-25)
- Allow to modify kcov include pattern #229
- Improve kcov coverage binary filter pattern #230
- Prevent init/end task invocations on forked run tasks #227
- Migrate env file parsing and loading to envmnt
v0.19.1 (2019-05-10)
- Support setting boolean environment variables #223
- Added new env_true/env_false conditions #221
- [backward compatibility break] Normalize boolean env vars #220
v0.18.0 (2019-04-30)
- Allow run_task to invoke the task as a sub process #214
- [backward compatibility break] Upgrade shell2batch to fix path separator issue
v0.17.1 (2019-04-04)
- Fix broken workspace support #210
v0.17.0 (2019-04-03)
- Add extend capability for tasks #206
- Support internal core tasks modifications (private and namespacing) #201
- Support splitting command line argument to multiple arguments using functions #202
- New remove_empty function #205
- New trim function #208
- Add support for namespaces for workspace builds #204
- Add kcov version validation #203
v0.16.10 (2019-03-01)
- Fix docs
v0.16.9 (2019-03-01)
- Colorful output and a new cli argument to disable color (--no-color) #191
- Support multiple extend #192
- Support optional extend #193
- New test-with-args task to enable testing specific tests only
- Support multi line environment variables from script output #196
- Reducing cargo-make info level output #194
- Locking default cargo watch version and supporting user defined version #195
v0.16.8 (2019-02-09)
- Support additional watch options #188
- Support glob paths in CARGO_MAKE_WORKSPACE_SKIP_MEMBERS #187
- Add install-rust-src and install-rls to internal makefile #189
- Renamed task 'force' attribute to 'ignore_errors' #120
- Split CARGO_MAKE_TEST_COVERAGE_BINARY_FILTER to use CARGO_MAKE_TEST_COVERAGE_DEFAULT_BINARY_FILTER for easier customization
v0.16.7 (2019-01-25)
- Shebang line support #130 (thanks @SamuelMarks)
- Prevent multiple calls for init/end #184
- Test internal makefile coverage tasks #183
v0.16.6 (2019-01-21)
- Fix broken coverage task
v0.16.3 (2019-01-21)
- Enable coverage implementation selection via env #180
- Fix on error and watch proxy tasks #179
v0.16.2 (2019-01-20)
- Profile support #174
- Task routing #175
- Set travis deploy overwrite=true
- Fix broken links in documentation
v0.16.1 (2019-01-17)
- Enable coverage for every Linux based CI system
- Support task watch #118
- Command --list-all-steps now supports markdown output format
- New command --diff-steps to enable diff changes to flow based on custom makefile #121
- Document Azure Pipelines config #161
- New diff-files task which enables to diff 2 provided files
v0.16.0 (2019-01-04)
- [backward compatibility break] Should abort on non existent makefile if provided on cli or on extends property #143
- [backward compatibility break] Update format task for stable rust #160
- Add format check and clippy to ci-flow #161 (thanks @D4nte)
- Add new print steps output format 'short-description' #121
- [backward compatibility break] Remove preview from clippy and rustfmt components #162
- Add new CARGO_MAKE_CI environment variable
v0.15.3 (2018-12-07)
- Package additional executable without cargo dependency #69
- Add CircleCI docs #152
- Delete merged branches as part of github release flow #154
- Fixed uploading windows binaries to GitHub releases #157
v0.15.2 (2018-11-28)
- Rustup integration for non-binary/non-cargo dependencies #139
- Rust toolchain support #132
- Add fmt check task #138
- Support absolute path for CARGO_MAKE_WORKING_DIRECTORY on windows #142
v0.15.1 (2018-11-12)
- Fix github release as part of travis build
v0.15.0 (2018-11-12)
- rustup integration #122
- add clippy rustup installation config #119
- prevent script output if log level is error #117
- Support uploading binaries to GitHub releases #127 (thanks @LegNeato)
v0.14.0 (2018-09-05)
- Condition support for rust version (min,max,eq) #110
- Upgrade dependencies with possible backward compatibility break
v0.13.0 (2018-08-10)
- Upgrade rustfmt support
v0.12.1 (2018-08-09)
- Support additional default coverage test patterns #107
v0.12.0 (2018-08-02)
- Defining --no-workspace cli flag via task attribute #99
- Support unsetting task attributes in extended Makefile #100
- Support accepting arguments and passing them to commands and scripts #101
- Follow XDG Base Directory Specification #105
- Doc category for task list #102
v0.11.3 (2018-06-24)
- Fix workspace coverage not being generated #97
v0.11.2 (2018-06-22)
- Fix automatic workspace makefile extending #96
v0.11.1 (2018-06-06)
- Support writing tasks in various scripting languages #90
- Internal private tasks #94
v0.11.0 (2018-05-29)
- Support environment variable substitution in commands and arguments #92
v0.10.8 (2018-05-18)
- Add support for a catch/cleanup task in case of any errors #89
- Load env vars from simple text files #88
- Fix workspace member paths on windows #87
v0.10.7 (2018-05-11)
- Support automatic workspace makefile extend #84
- New task to rebuild lock file with most updated dependencies #83
v0.10.6 (2018-03-20)
- Fix script issues due to file permissions (#81)
v0.10.5 (2018-02-27)
- cargo make audit will only be invoked if a Cargo.lock file exists (#74)
v0.10.4 (2018-02-26)
- Fix composite environment variables resolution order (#78)
v0.10.3 (2018-02-24)
- update_check_minimum_interval default changed be weekly (#76)
- Added test_ files to kcov test coverage invocation
- Update dependencies documentation (#72)
v0.10.2 (2018-02-08)
- Check for update minimum interval definition in global configuration (#68)
v0.10.0 (2018-02-02)
- Search for makefile.toml in parent directories (#65)
- Global configuration file to define default log level, task name (#64)
- Reformat changelog (#66)
v0.9.5 (2018-01-22)
- Fixed critical loading issue due to #56
v0.9.4 (2018-01-19)
- Support new skip_core_tasks config flag (#56)
v0.9.3 (2018-01-05)
- Coverage test files user level pattern (#59 and #60)
v0.9.2 (2017-12-29)
- Coverage will execute all test files without any need for specific naming conventions or configuration (#50 and #51)
v0.9.1 (2017-12-28)
- Bug fixes for git info loading and coverage on workspace level (#49 and #52)
v0.9.0 (2017-12-18)
- Disabled tasks should be skipped including dependencies (#47)
v0.8.0 (2017-12-17)
- Support multiple rustfmt versions (#45)
v0.7.11 (2017-12-14)
- Fixed rustfmt backward compatibility break issue
v0.7.10 (2017-12-06)
- Workspace support fixes for windows
v0.7.5 (2017-12-03)
- Support conditional skipping of workspace members from flow (#42)
v0.7.4 (2017-10-25)
- kcov support for excluding lines/blocks from coverage report
v0.7.2 (2017-10-23)
- Added workspace level coverage task without the need to run full CI flow (workspace-coverage)
v0.7.1 (2017-10-21)
- Added support for cross platform scripts using script runner @shell
v0.7.0 (2017-10-20)
- Refactored how rust code based scripts are defined to enable future expansion of this feature.
v0.6.5 (2017-10-12)
- ci-flow and build-flow will build/run benches and examples based on new environment variables: CARGO_MAKE_BUILD_EXAMPLES, CARGO_MAKE_BUILD_BENCH and CARGO_MAKE_RUN_BENCH
v0.6.1 (2017-10-08)
- Tasks can now run rust code using rust_script attribute and tasks can no longer hold multiple different action definitions.
v0.5.3 (2017-09-29)
- Added support to evaluate env var values from script output and define cwd on task level
v0.5.2 (2017-09-24)
- Added various check and build tasks
v0.5.0 (2017-09-21)
- Disable by default coverage flow on mac
v0.4.1 (2017-09-18)
- Added watch-flow task
v0.3.77 (2017-09-17)
- Automatically define install_crate and enable cargo install arguments via install_crate_args
v0.3.76 (2017-09-16)
- Build failure will not cause panic but will exit
v0.3.75 (2017-09-12)
- By default build and test should work with "--all-features" flag
v0.3.66 (2017-08-23)
- Add support for workspace glob members
v0.3.64 (2017-08-22)
- Cargo.toml parsing fix
v0.3.63 (2017-08-21)
- Add support for Cargo.toml workspace.exclude
v0.3.62 (2017-08-21)
- Add workspace member detection based on dependency paths
v0.3.59 (2017-08-20)
- Support load_script platform overrides
v0.3.58 (2017-08-19)
- Added load_script capability
v0.3.56 (2017-08-18)
- Set environment variables during task invocation
v0.3.53 (2017-08-09)
- Added new condition types: env, env_set and env_not_set
v0.3.51 (2017-08-09)
- Added experimental cli arg to enable access unsupported experimental predefined tasks
v0.3.49 (2017-08-08)
- Added condition attribute
v0.3.46 (2017-08-06)
- Added bintray upload task
v0.3.43 (2017-08-02)
- Added --env/-e cli args to set environment variables via command line
v0.3.41 (2017-08-01)
- Added github-publish task
v0.3.38 (2017-07-28)
- Added run_script which allows executing sub tasks
v0.3.37 (2017-07-25)
- Added condition script capability for tasks
v0.3.36 (2017-07-22)
- Added coverage-lcov task (not fully tested)
v0.3.34 (2017-07-21)
- Added coverage-tarpaulin task
v0.3.33 (2017-07-21)
- Added more environment variables for workspace support
v0.3.32 (2017-07-20)
- Added --list-all-steps cli option
v0.3.28 (2017-07-17)
- workspace level ci flow
v0.3.27 (2017-07-16)
- cargo make ci-flow on travis now automatically runs code coverage and uploads to codecov
v0.3.25 (2017-07-16)
- New --no-workspace cli arg
v0.3.24 (2017-07-15)
- Workspace support
v0.3.23 (2017-07-14)
- Added codecov task in default toml
v0.3.20 (2017-07-14)
- Added coverage task in default toml
v0.3.16 (2017-07-14)
- Added more environment variables based on target environment and rust compiler
v0.3.15 (2017-07-13)
- Added common init and end tasks
v0.3.13 (2017-07-10)
- cargo-make now defines rust version env vars
v0.3.11 (2017-07-09)
- cargo-make now defines env vars based on project git repo information
v0.3.10 (2017-07-06)
- cargo-make now defines env vars based on project Cargo.toml
v0.3.6 (2017-07-05)
- Added --cwd cli arg to enable setting working directory
v0.3.5 (2017-07-04)
- Added clippy task
v0.3.4 (2017-07-03)
- Added --print-steps cli arg
v0.3.1 (2017-07-02)
- Added CARGO_MAKE_TASK env var holding the main task name
v0.3.0 (2017-07-02)
- Renamed few cli options
v0.2.20 (2017-07-02)
- Added -v and --verbose cli arg
v0.2.19 (2017-07-01)
- Added extend config level attribute
v0.2.17 (2017-06-30)
- Added force task attribute
v0.2.12 (2017-06-28)
- Published website
v0.2.8 (2017-06-28)
- Platform specific task override
v0.2.7 (2017-06-26)
- Platform specific alias
v0.2.6 (2017-06-26)
- Enable task attributes override
v0.2.3 (2017-06-25)
- Added disabled task attribute support
v0.2.0 (2017-06-24)
- Internal fixes (renamed dependencies attribute)
v0.1.2 (2017-06-24)
- Print build time, added internal docs, unit tests and coverage
v0.1.1 (2017-06-24)
- Added support for env vars, task alias and crate installation
v0.1.0 (2017-06-23)
- Initial release.