Module changelog
Scriptlike Changelog
The latest version of this changelog
is always available at:
http://semitwist.com/scriptlike/changelog.html
(Dates below are YYYY/MM/DD)
v0.9.0 - 2015/06/27
- Change: Split
scriptlike.file
andscriptlike.path
into the following:
scriptlike.core
scriptlike.file.extras
scriptlike.file.wrappers
scriptlike.path.extras
scriptlike.path.wrappers
package.d
to retain ability to importscriptlike.file
andscriptlike.path
. - Change: Convert
changelog
from markdown to ddox so links are more readable. - Enhancement: Add (opt-in) command echoing to most functions in
scriptlike.file
. - Enhancement: Add
yap
andyapFunc
as improved versions of to-be-deprecatedechoCommand
. - Fixed: Make
escapeShellArg
const-correct. - Fixed: Make
Path.toRawString
andExt.toRawString
both bepure @safe nothrow
.
v0.8.1 - 2015/06/22
- Enhancement: New overload for
userInput
to allow type inference:
void userInput(T=string)(string question, ref T result);
(suggestion from Per Nordlöw).
v0.8.0 - 2015/06/13
- Change: Minimum officially supported DMD increased from v2.064.2 to v2.066.0. Versions below v2.066.0 may still work, but there will now be certain problems when dealing with paths that contain spaces, particularly on Windows.
- Change: Removed unnecessary non-
Path
wrappers aroundstd.file
/std.path
. Things not wrapped (likedirSeparator
andSpanMode
) are now selective public imports instead of aliases. These changes should reduce issues with symbol conflicts. - Change: API reference now built using ddox and uses much improved styling (actually uses a stylesheet now).
- Change: Eliminate remnants of the "planned but never enabled" wstring/dstring
versions of
Path
/Ext
/Args
. There turned out not to be much need for them, and evenstd.file
doesn't support wstring/dstring either. - Change: Put output binaries in "bin" subdirectory, instead of Scriptlike's root.
- Enhancement: Add module
scriptlike.only
to import all of scriptlike, but omit the helper Phobos imports inscriptlike.std
. - Enhancement:
fail
now accepts an arbitrary list of args of any type, just likewriteln
, - Enhancement: Added
failEnforce
, like Phobos'senforce
, but forfail
. - Enhancement: Added
runCollect
andtryRunCollect
, to capture a command's output instead of displaying it. - Enhancement: Added
pause
to pause and prompt the user to press Enter. - Enhancement:
echoCommand
is no longer private. - Enhancement: Added
Path
-based wrappers forstd.file
'sgetcwd
,thisExePath
andtempDir
. - Fixed: No longer uses Phobos's deprecated
system
function.
v0.7.0 - 2015/04/02
- Enhancement: #14: Added
scriptlike.interact
module for easy user-input prompts. (Thanks to Jesse Phillips) - Fixed: Unittest compile failure on DMD v2.067.0.
v0.6.0 - 2014/02/16
- Change:
Path
andExt
are now aliases for the UTF-8 instantiations, and the template structs are now namedPathT
andExtT
. - Change: Removed
path()
andext()
helper functions to free up useful names from the namespace, since they are no longer needed. UsePath()
andExt()
instead. - Change: Internally split into separate modules, but uses
package.d
to preserveimport scriptlike;
. - Change: Rename
escapeShellPath
->escapeShellArg
. - Change: Rename
runShell
->tryRun
. Temporarily keeprunShell
as an alias. - Change: Rename
scriptlikeTraceCommands
->scriptlikeEcho
. Temporarily keepscriptlikeTraceCommands
as an alias. - Enhancement: Added scripts to run unittests and build API docs.
- Enhancement: Added
Path.opCast
andExt.opCast
for converting to bool. - Enhancement:
fail
no longer requires any boilerplate inmain()
. (Newsgroup link) - Enhancement: Added
run
to run a shell command liketryRun
, but automatically throw if the process returns a non-zero error level. - Enhancement: #2: Optional callback sink for command echoing:
scriptlikeCustomEcho
. - Enhancement: #8: Dry run support via bool
scriptlikeDryRun
. - Enhancement: #13: Added
ArgsT
(andArgs
helper alias) to safely build command strings from parts. - Enhancement: Added this
changelog
. - Fixed:
Path
(null) andExt
(null) were automatically changed to empty string. - Fixed: #10: Docs should include all OS-specific functions.
v0.5.0 - 2014/02/11
- Initial release.
Authors
Nick Sabalausky, Jesse Phillips
Copyright
Copyright (C) 2014-2015 Nick Sabalausky. Portions Copyright (C) 2010 Jesse Phillips.
License
zlib/libpng