- Enhancement: support relative keyword for makefile extending to enable easy git/crate/workspace root extending #1175
- Maintenance: critical bug fix upgrade for duckscript
- Fix: set env CARGO_MAKE_CURRENT_TASK_NAME before condition invocation #1173
- Fix: Remove RUSTFLAGS from workaround of rustup env issue when setting toolchain #1169
- Maintenance: upgrade duckscript
- Maintenance: upgrade dependencies
- Maintenance: upgrade duckscript
- Enhancement: config to disable all installation steps #1147
- Fix: support encrypted drives (shorten script file names) #1150
- Fix: setup musl failing on open ssl binary redirects
- Enhancement: Expand condition_script_runner_args #1132 (thanks @wmmc88)
- Enhancement: Support env expansion for script runner #1125
- Enhancement: Make LoggerOptions public + add name field #1124 (thanks @SamuelMarks)
- Fix: fix the --skip-init-end-tasks argument #1108 (thanks @06393993)
- Enhancement: Support using cargo make as library #1112 (thanks @SamuelMarks)
- 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
- Enhancement: support crates with invalid structure (fallback of cargo-metadata) #1076
- Maintenance: disable old legacy migration task #1101
- Fix: reset CARGO env var to fix wrong CARGO in commands #1060 (thanks @wmmc88)
- Enhancement: Prevent wasteful busy cpu spinning #1045 (thanks @permosegaard)
- Enhancement: Enable multiple ignored watch patterns #1041 (thanks @Buzzec)
- Fix: fix rust script invocation as load_script #1035
- 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)
- Fix: Detect crate installation fix for new cargo list format
- 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
- 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
- Fix: Enable latest rust-script installation by default #979 (thanks @wmmc88)
- 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
- Enhancement: improve support for shebang script file extensions #926
- 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
- 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
- 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
- Fix: Remove workspace members sorting #897 (thanks @pskrgag)
- Maintenance: Upgrade dependencies
- 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)
- Fix: '--hide-uninteresting' cli flag #859 (thanks @xxchan)
- Fix: cargo-watch option 'why' should remove '-q' #849
- 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
- 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)
- Enhancement: Support environment expansion for files_modified condition #802 (thanks @stormshield-guillaumed)
- 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
- 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
- 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
- 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)
- 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
- [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
- 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
- Fix: upgrade cliparser to support windows paths
- 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
- 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)
- Fix: upgrade to cargo-watch 8.1.1 due to 8.1.0 being yanked #652
- 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
- Fix: detect workspace member for non virtual workspaces #636
- Documentation: added docs for grcov usage #375
- Fix: clap 3.1 is not backward compatible
- 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
- 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
- Fix: prebuilt binary release task
- Enhancement: Duckscript upgrade
- Enhancement: Add makers executable to prebuilt binary release #600
- Fix: github publish flow broken
- 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)
- Enhancement: Ability to specify min rust version in tasks via toolchain attribute #594 (thanks @WorldSEnder)
- 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
- 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
- Fix UNC prefix stripping inconsistency #562 (thanks @WilliamVenner)
- 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)
- 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
- Enable to skip tasks via command line regex flag (--skip-tasks flag) #538
- Deprecate bintray tasks support as bintray is shutting down #539
- Fix: makers color support on windows #535 (thanks @MartinKavik)
- Enhancement: Allow leading hyphens for task arguments #535 (thanks @MartinKavik)
- Fix: Keep env order for extended makefiles #523
- Fix: Align new version notification #524 (thanks @gemmaro)
- Upgrade dependencies
- 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
- Fix: cli arguments lost when using on_error definition #511
- Build time to be printed in sub second precision #510
- Validate and warn of unknown keys found in makefiles #506
- 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, ...)
- Add new toml formatting tasks.
- 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
- Fix passing task args to workspace members #470
- Update script_runner_args related documentation #471
- 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
- Allow for explicit workspace flow in sub flows #455 (thanks @epontan)
- Prevent multiple calls to cleanup task
- Support cleanup task for forked sub flow #452
- Upgrade duckscript SDK to 0.6.7
- 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
- Support numeric environment variables
- Upgrade duckscript SDK to 0.6.5
- Upgrade duckscript SDK to 0.6
- 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
- Upgrade duckscript to 0.5
- Upgrade cargo-watch to 7.4.1
- Fix rustfmt nightly installation issue due to rust env issue: rust-lang/rust#72423
- 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.
- 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.
- 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
- 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.
- Fix linux release build.
- New getat function #402
- Update openssl version to 1.1.1f
- 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.
- 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
- 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
- Added github hub cli support #376
- Use fsio crate for file system apis.
- Enable to pipe stdin for scripts #355 (thanks @dakom)
- Upgrade to duckscript 0.2
- Print duckscript version info env task #371
- Duckscript upgrade
- Migrate several task scripts from shell to duckscript to improve performance
- 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
- 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
- Bug Fix - Fixed CARGO_MAKE_PROJECT_VERSION when main_project_member is set
- Ensure cargo-make working directory is not modified after duckscript execution.
- [backward compatibility break] Ability to set multiple watch paths in watch options #354
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- Add support for multiple test_args when checking for installed crate #252 (thanks @roblabla)
- [backward compatibility break] Upgrade shell2batch for improved windows integration
- 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
- 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-make
when cachingcargo
#249 (thanks @elpiel)
- Support additional profiles env blocks #240
- Prevent reinstallation of clippy on nightly #239
- Upgrade cargo-watch #241 (thanks @David-OConnor)
- Fix clippy installation on nightly #236
- 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
- Support setting boolean environment variables #223
- Added new env_true/env_false conditions #221
- [backward compatibility break] Normalize boolean env vars #220
- Allow run_task to invoke the task as a sub process #214
- [backward compatibility break] Upgrade shell2batch to fix path separator issue
- Fix broken workspace support #210
- 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
- Fix docs
- 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
- 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
- Shebang line support #130 (thanks @SamuelMarks)
- Prevent multiple calls for init/end #184
- Test internal makefile coverage tasks #183
- Fix broken coverage task
- Enable coverage implementation selection via env #180
- Fix on error and watch proxy tasks #179
- Profile support #174
- Task routing #175
- Set travis deploy overwrite=true
- Fix broken links in documentation
- 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
- [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
- 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
- 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
- Fix github release as part of travis build
- 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)
- Condition support for rust version (min,max,eq) #110
- Upgrade dependencies with possible backward compatibility break
- Upgrade rustfmt support
- Support additional default coverage test patterns #107
- 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
- Fix workspace coverage not being generated #97
- Fix automatic workspace makefile extending #96
- Support writing tasks in various scripting languages #90
- Internal private tasks #94
- Support environment variable substitution in commands and arguments #92
- 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
- Support automatic workspace makefile extend #84
- New task to rebuild lock file with most updated dependencies #83
- Fix script issues due to file permissions (#81)
- cargo make audit will only be invoked if a Cargo.lock file exists (#74)
- Fix composite environment variables resolution order (#78)
- update_check_minimum_interval default changed be weekly (#76)
- Added test_ files to kcov test coverage invocation
- Update dependencies documentation (#72)
- Check for update minimum interval definition in global configuration (#68)
- Search for makefile.toml in parent directories (#65)
- Global configuration file to define default log level, task name (#64)
- Reformat changelog (#66)
- Fixed critical loading issue due to #56
- Support new skip_core_tasks config flag (#56)
- Coverage test files user level pattern (#59 and #60)
- Coverage will execute all test files without any need for specific naming conventions or configuration (#50 and #51)
- Bug fixes for git info loading and coverage on workspace level (#49 and #52)
- Disabled tasks should be skipped including dependencies (#47)
- Support multiple rustfmt versions (#45)
- Fixed rustfmt backward compatibility break issue
- Workspace support fixes for windows
- Support conditional skipping of workspace members from flow (#42)
- kcov support for excluding lines/blocks from coverage report
- Added workspace level coverage task without the need to run full CI flow (workspace-coverage)
- Added support for cross platform scripts using script runner @shell
- Refactored how rust code based scripts are defined to enable future expansion of this feature.
- 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
- Tasks can now run rust code using rust_script attribute and tasks can no longer hold multiple different action definitions.
- Added support to evaluate env var values from script output and define cwd on task level
- Added various check and build tasks
- Disable by default coverage flow on mac
- Added watch-flow task
- Automatically define install_crate and enable cargo install arguments via install_crate_args
- Build failure will not cause panic but will exit
- By default build and test should work with "--all-features" flag
- Add support for workspace glob members
- Cargo.toml parsing fix
- Add support for Cargo.toml workspace.exclude
- Add workspace member detection based on dependency paths
- Support load_script platform overrides
- Added load_script capability
- Set environment variables during task invocation
- Added new condition types: env, env_set and env_not_set
- Added experimental cli arg to enable access unsupported experimental predefined tasks
- Added condition attribute
- Added bintray upload task
- Added --env/-e cli args to set environment variables via command line
- Added github-publish task
- Added run_script which allows executing sub tasks
- Added condition script capability for tasks
- Added coverage-lcov task (not fully tested)
- Added coverage-tarpaulin task
- Added more environment variables for workspace support
- Added --list-all-steps cli option
- workspace level ci flow
- cargo make ci-flow on travis now automatically runs code coverage and uploads to codecov
- New --no-workspace cli arg
- Workspace support
- Added codecov task in default toml
- Added coverage task in default toml
- Added more environment variables based on target environment and rust compiler
- Added common init and end tasks
- cargo-make now defines rust version env vars
- cargo-make now defines env vars based on project git repo information
- cargo-make now defines env vars based on project Cargo.toml
- Added --cwd cli arg to enable setting working directory
- Added clippy task
- Added --print-steps cli arg
- Added CARGO_MAKE_TASK env var holding the main task name
- Renamed few cli options
- Added -v and --verbose cli arg
- Added extend config level attribute
- Added force task attribute
- Published website
- Platform specific task override
- Platform specific alias
- Enable task attributes override
- Added disabled task attribute support
- Internal fixes (renamed dependencies attribute)
- Print build time, added internal docs, unit tests and coverage
- Added support for env vars, task alias and crate installation
- Initial release.