1 /++
2 Scriptlike_Changelog:
3 
4 The latest version of this changelog is always available at:$(BR)
5 $(LINK http://semitwist.com/scriptlike/changelog.html)
6 
7 (Dates below are YYYY/MM/DD)
8 
9 $(H2 v0.9.4 - 2015/09/22)
10 
11 $(UL
12 	$(FIXED
13 		Previous release broke the `unittest` script when `dub test` support was added.
14 	)
15 	$(FIXED
16 		In echo mode, several functions would echo the wrong "try*" or
17 		non-"try*" version. Ex: $(API_PROCESS run) echoed $(API_PROCESS tryRun),
18 		and $(API_FILE_EXTR tryRename) echoed $(API_FILE_WRAP rename).
19 	)
20 	$(FIXED
21 		$(API_PATH_EXTR Path) and $(API_PATH_EXTR buildNormalizedPathFixed) now
22 		convert back/forward slashes to native on BOTH Windows and Posix, not
23 		just on Windows.
24 	)
25 	$(FIXED
26 		Some links within changelog and API reference were pointing to the
27 		reference docs for Scriptlike's latest version, instead of staying
28 		within the same documentation version. This made 
29 		$(LINK2 http://semitwist.com/scriptlike-docs/, archived docs for previous versions)
30 		difficult to navigate.
31 	)
32 	$(ENHANCE
33 		$(ISSUE 17),$(ISSUE 20): Added usage examples to readme.
34 	)
35 	$(ENHANCE
36 		Add $(API_CORE interp) for interpolated strings:$(BR)
37 		`string s = mixin( interp!"Value is ${variableOrExpression}" )`
38 	)
39 	$(ENHANCE
40 		Add $(API_FILE_EXTR removePath)/$(API_FILE_EXTR tryRemovePath) for
41 		deleting a path regardless of whether it's a file or directory. (Calls
42 		$(API_FILE_WRAP remove) for files and $(API_FILE_WRAP rmdirRecurse) for
43 		directories.)
44 	)
45 	$(ENHANCE
46 		Add a Path-accepting overload of $(API_PATH_EXTR escapeShellArg) for
47 		the sake of generic code.
48 	)
49 	$(ENHANCE
50 		When $(API_PROCESS runCollect) throws, the $(API_PROCESS ErrorLevelException)
51 		now includes and displays the command's output (otherwise there'd be no
52 		way to inspect the command's output for diagnostic purposes).
53 	)
54 	$(ENHANCE
55 		Greatly extended and improved set of tests.
56 	)
57 )
58 
59 $(H2 v0.9.3 - 2015/08/19)
60 
61 $(UL
62 	$(FIXED
63 		$(ISSUE 16): Access to standard Phobos function hampered.
64 	)
65 	$(ENHANCE
66 		Support running unittests through DUB: `dub test`
67 	)
68 	$(ENHANCE
69 		Uses $(LINK2 https://travis-ci.org, travis-ci.org) for continuous integration testing.
70 	)
71 )
72 
73 $(H2 v0.9.2 - 2015/07/10)
74 
75 $(UL
76 	$(FIXED
77 		Properly flush all command echoing output
78 		(ie, in $(API_CORE yap) and $(API_CORE yapFunc)).
79 	)
80 	$(ENHANCE
81 		Add a "no-build" configuration for projects that need to import/depend
82 		on Scriptlike through DUB, but use their own buildsystem.
83 	)
84 )
85 
86 $(H2 v0.9.1 - 2015/06/28)
87 
88 $(UL
89 	$(FIXED Fails to compile unless the `makedocs` script has been run.)
90 )
91 
92 $(H2 v0.9.0 - 2015/06/27)
93 
94 $(UL
95 	$(CHANGE Split $(MODULE_FILE) and $(MODULE_PATH) into the following:$(BR)
96 		$(UL
97 			$(LI $(MODULE_CORE) )
98 			$(LI $(MODULE_FILE_EXTR) )
99 			$(LI $(MODULE_FILE_WRAP) )
100 			$(LI $(MODULE_PATH_EXTR) )
101 			$(LI $(MODULE_PATH_WRAP) )
102 		)
103 		Utilizes `package.d` to retain ability to import $(MODULE_FILE) and $(MODULE_PATH).
104 	)
105 	$(CHANGE Convert changelog from markdown to $(DDOX) so links are more readable. )
106 	$(ENHANCE Add (opt-in) command echoing to most functions in $(MODULE_FILE). )
107 	$(ENHANCE
108 		Add $(API_CORE yap) and $(API_CORE yapFunc) as improved versions
109 		of to-be-deprecated $(API_CORE echoCommand).
110 	)
111 	$(FIXED Make $(API_PATH_EXTR escapeShellArg) const-correct. )
112 	$(FIXED
113 		Make $(API_PATH_EXTR Path.toRawString) and $(API_PATH_EXTR Ext.toRawString)
114 		both be `pure @safe nothrow`.
115 	)
116 )
117 
118 $(H2 v0.8.1 - 2015/06/22)
119 
120 $(UL
121 	$(ENHANCE
122 		New overload for $(API_INTERACT userInput) to allow type inference:$(BR)
123 		`void userInput(T=string)(string question, ref T result);`
124 		(suggestion from
125 		$(LINK2 http://forum.dlang.org/post/povoxkcogcmbvhwlxqbc@forum.dlang.org, Per Nordlöw)).
126 	)
127 )
128 
129 $(H2 v0.8.0 - 2015/06/13)
130 
131 $(UL
132 	$(CHANGE
133 		Minimum officially supported $(DMD) increased from v2.064.2 to v2.066.0.
134 		Versions below v2.066.0 may still work, but there will now be certain
135 		problems when dealing with paths that contain spaces, particularly
136 		on Windows.
137 	)
138 	$(CHANGE
139 		Removed unnecessary non-$(API_PATH_EXTR Path) wrappers around $(MODULE_STD_FILE)/$(MODULE_STD_PATH).
140 		Things not wrapped (like $(STD_PATH dirSeparator) and $(STD_FILE SpanMode))
141 		are now selective public imports instead of aliases. These changes should
142 		reduce issues with symbol conflicts.
143 	)
144 	$(CHANGE
145 		$(LINK2 http://semitwist.com/scriptlike/, API reference) now built
146 		using $(DDOX) and uses much improved styling (actually uses a stylesheet now).
147 	)
148 	$(CHANGE
149 		Eliminate remnants of the "planned but never enabled" wstring/dstring
150 		versions of $(API_PATH_EXTR Path)/$(API_PATH_EXTR Ext)/$(API_PROCESS Args). There
151 		turned out not to be much need for them, and even $(MODULE_STD_FILE)
152 		doesn't support wstring/dstring either.
153 	)
154 	$(CHANGE Put output binaries in "bin" subdirectory, instead of Scriptlike's root. )
155 	$(ENHANCE
156 		Add module scriptlike.only to import all of scriptlike, but omit the
157 		helper Phobos imports in scriptlike.std.
158 	)
159 	$(ENHANCE
160 		$(API_FAIL fail) now accepts an arbitrary list of args of any type,
161 		just like $(STD_STDIO writeln),
162 	)
163 	$(ENHANCE
164 		Added $(API_FAIL failEnforce), like Phobos's $(STD_EXCEPTION enforce),
165 		but for $(API_FAIL fail).
166 	)
167 	$(ENHANCE
168 		Added $(API_PROCESS runCollect) and $(API_PROCESS tryRunCollect), to
169 		capture a command's output instead of displaying it.
170 	)
171 	$(ENHANCE Added $(API_INTERACT pause) to pause and prompt the user to press Enter. )
172 	$(ENHANCE $(API_CORE echoCommand) is no longer private. )
173 	$(ENHANCE
174 		Added $(API_PATH_EXTR Path)-based wrappers for $(MODULE_STD_FILE)'s 
175 		$(STD_FILE getcwd), $(STD_FILE thisExePath) and $(STD_FILE tempDir).
176 	)
177 	$(FIXED No longer uses Phobos's deprecated $(STD_PROCESS system) function.)
178 )
179 
180 $(H2 v0.7.0 - 2015/04/02)
181 
182 $(UL
183 	$(ENHANCE
184 		$(ISSUE 14): Added scriptlike.interact module for easy user-input prompts.
185 		(Thanks to $(LINK2 https://github.com/JesseKPhillips, Jesse Phillips))
186 	)
187 	$(FIXED Unittest compile failure on $(DMD) v2.067.0. )
188 )
189 
190 $(H2 v0.6.0 - 2014/02/16)
191 
192 $(UL
193 	$(CHANGE
194 		$(API_PATH_EXTR Path) and $(API_PATH_EXTR Ext) are now aliases for the UTF-8
195 		instantiations, and the template structs are now named `PathT` and `ExtT`.
196 	)
197 	$(CHANGE
198 		Removed `path()` and `ext()` helper functions to free up useful names
199 		from the namespace, since they are no longer needed. Use `Path()` and
200 		`Ext()` instead.
201 	)
202 	$(CHANGE
203 		Internally split into separate modules, but uses `package.d` to
204 		preserve `import scriptlike;`.
205 	)
206 	$(CHANGE Rename `escapeShellPath` -> $(API_PATH_EXTR escapeShellArg). )
207 	$(CHANGE
208 		Rename $(API_PROCESS runShell) -> $(API_PROCESS tryRun). Temporarily keep
209 		$(API_PROCESS runShell) as an alias.
210 	)
211 	$(CHANGE
212 		Rename $(API_CORE scriptlikeTraceCommands) -> $(API_CORE scriptlikeEcho).
213 		Temporarily keep $(API_CORE scriptlikeTraceCommands) as an alias.
214 	)
215 	$(ENHANCE Added scripts to run unittests and build API docs. )
216 	$(ENHANCE
217 		Added $(API_PATH_EXTR Path.opCast) and $(API_PATH_EXTR Ext.opCast) for
218 		converting to bool.
219 	)
220 	$(ENHANCE
221 		$(API_FAIL fail) no longer requires any boilerplate in `main()`.
222 		($(LINK2 http://forum.dlang.org/thread/ldc6qt$(DOLLAR)22tv$(DOLLAR)1@digitalmars.com, Newsgroup link))
223 	)
224 	$(ENHANCE
225 		Added $(API_PROCESS run) to run a shell command like $(API_PROCESS tryRun),
226 		but automatically throw if the process returns a non-zero error level.
227 	)
228 	$(ENHANCE $(ISSUE 2): Optional callback sink for command echoing: $(API_CORE scriptlikeCustomEcho). )
229 	$(ENHANCE $(ISSUE 8): Dry run support via bool $(API_CORE scriptlikeDryRun). )
230 	$(ENHANCE
231 		$(ISSUE 13): Added `ArgsT` (and $(API_PROCESS Args) helper alias)
232 		to safely build command strings from parts.
233 	)
234 	$(ENHANCE Added this changelog. )
235 	$(FIXED
236 		$(API_PATH_EXTR Path)(null) and $(API_PATH_EXTR Ext)(null) were automatically
237 		changed to empty string.
238 	)
239 	$(FIXED $(ISSUE 10): Docs should include all OS-specific functions. )
240 )
241 
242 $(H2 v0.5.0 - 2014/02/11)
243 
244 $(UL
245 	$(LI Initial release. )
246 )
247 
248 Copyright:
249 Copyright (C) 2014-2015 Nick Sabalausky.
250 Portions Copyright (C) 2010 Jesse Phillips.
251 
252 License: zlib/libpng
253 Authors: Nick Sabalausky, Jesse Phillips
254 +/
255 module changelog;