NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #1302 most downloaded on pub.dev
A collection of functions that allow you to interact with the file system and OS environment from any platform that supports dart:io. Copy, move, delete files and directory trees, search for files, create temp files and directories.
Last release 12 days ago
26 Sep 2026
Release timing varies
gaps range from 2 weeks to 4 months
Most releases are documented
notes for 40 of the last 60 stable releases
4 versions withdrawn
withdrawn after publishing
5 years old
164 releases · first in 2021
Add packed compilation and chunked resources
Add native library bundling to dcli compile
One column per quarter.
Upgrade pubspec_manager to 4.0.0
fixed a time out in the compile test.
added the observe() method to NamedLock so you can see if a lock is being held and by who.
Removed deprecated public APIs and deprecated entry-point libraries.
removed the publish_to which was pushing it to onepub.
Change the script runner to use the --resident flag to improve startup times for dart scripts (from 5sec down to 1).
no using the document_throws package to document all exceptions.
DCLi functions which execute process have assumed that data is ascii which is incorrect as most cli system utilise utf-8. This updates changes the def
start() now take an 'encoding' parameter which is used if no Progress is passed to the method. If you pass in
a Progress then the encoding of that Progress is used.
This is a re-release of 7.2 with the correct version number reflecting that breaking change.
Fixes #260 - thanks to @passy for the suggested fix.
Nothing published for this version
updated the pubspec description to better describe the packages funtionality.
updated to code to conform to the lates lint_hard lints. Work on the 'pack' command to ensure it generates code that conforms with the latest lint rul
Merge pull request #255 from davidmartos96/archive_v4 - thanks for the patch
deprecated symlink in favour of createSymLink
6.1.1. released failed so here we are again.
Added new method withPrivilegesAsync
upgraded to archive 3.6.1 to overcome dart 3.5 compatibility issue.
upgraded to archive 3.6.1 to overcome dart 3.5 compatibility issue. upgraded all packaages to scope 5.x upgraded all packages to lint_hard 5.x
Upgraded to win32 v5 to fix an issue with a deprecated api for dart 3.5.
Breaking
The AskValidator now takes an additional argument 'customErrorMessage'. This will only affect
users that have built custom ask validators.
change String validate(String line) to String validate(String line, {String? customErrorMessage})
and then return the customErrorMessage rather than you usual error message if the customErrorMessage is not null.
When outputing an error from you validator you should use customErrorMessage??'my original error'
Thanks to Emad Beltaje for the contribution!
Upgraded to win32 v5 to fix an issue with a deprecated api for dart 3.5.
We have left stub methods for the old withXXX form that are marked as deprecated and will throw an UnsupportedError if you call them.
We have left stub methods for the old withXXX form that are marked as deprecated and will throw an UnsupportedError if you call them.
-- withTempDir replaced by withTempDirAsync -- withTempFile replaced by withTempFileAsync -- withFileProtection replaced by withFileProtectionAsync
Removed a number of redundant methods from the dcli package that were just pass throughs to the dcli_core package. As the dcli barrel file now exports the dcli_core functions for these methods there should be no noticiable difference in the API.
Added new method PubCache::pathToGlobalPackage
Fixed a bug in NamedLock which was causing a dead lock if the an existing lock file was found but the owning process was no longer runnimg.
upgraded to settings_yaml 8.2.0
removed the DCLIFunction wrapper for a number of functions as it serves no purpose.
removed move_tree as it was just a wrapper for dcli_core method of the same name.
moved the move and moveDir wrapper functions and exposed the dcli_core versions.
replaced all occurances of withTempFile with withTempFileAsync
move to using native_sychronisation_temp until the official release.
change the stream type to Stream for the findAsync method to match how find returns files.
Added findAsync to the public api.
and found and fixed additional null check exceptions.
Fixed a null check operator in the find function.
fix ProgressMixin.firstLine throwing if there are no lines - contributed by @sstasi95
Added a sync test for exitCode.
added back in the missing nothrow arg to start method.
Most unit tests are now working and most of the common process execution paths appear to be working.
down graded max win32 version to 5.3 to avoid deprecation notices.
fetch/fetchMulti are now async.
Still a chunk more to do but the core 'good' paths seem to be mostly working when running processes. Optimistically this will get most people over the hump whilst we clean up the few remaining problems.
There are still some concerns around running a process in 'terminal' or 'detached' mode and I've not done any testing (and there is a path missing) of getting stdin attached to the process. This is probably the remaining 'big' issue but I think I can see a path through this.
Take it for a spin and let us know how you go. I will try to priorities the issues that are burning people the most.
merged #234 from tsavo-at-pieces which provides windows support for synchronous process calls. Big thanks for the work on this Tsavo!!!
Nothing published for this version
added method withEnvironment - this may be problematic as it easy to use with an async callback which will end in tears.
fixed the sdk range for dcli_common
- upgrade settings_yaml version.
failed released - so did it again
upgraded to latest version of pubspec_manager.
Nothing published for this version
Fixed the move function as well. It now also falls back to copy/delete on any error.
Began the process of removing calls to the deprecated waitFor. This will be a bit of a drawn out process due to my limited time.
BREAKING - Moved a number of functions from being async to sync as part of the process of removing waitFor in the main dcli library. These changes lar
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →