Kare Morstol
c7338cf9eb
Add ReadableStream.lines() for lazily splitting output into lines.
2015-12-15 23:03:31 +01:00
Kare Morstol
e9c0e849d2
PartialSourceLazySplitSequence v1.
2015-12-14 21:57:40 +01:00
Kare Morstol
d55ddf0fb7
Implement handling of allowEmptySlices, add LazyCollectionType.split .
...
Proper unit tests, also of standard library CollectionType.split, to ensure they do the same.
2015-12-10 03:00:12 +01:00
Kare Morstol
0768a86420
Add CollectionType.splitOnce and LazySplitGenerator.
2015-12-09 02:29:29 +01:00
Kare Morstol
304549cab4
Disable script test for functionality not yet implemented.
2015-12-03 01:29:58 +01:00
Kare Morstol
12fb5b2a5c
Remove errant space.
2015-11-24 21:16:25 +01:00
Kare Morstol
d2064aeef3
Use '+' to append strings to NSUrls instead of '/' .
...
Because it looks much better and makes more sense.
2015-11-20 00:55:41 +01:00
Kare Morstol
8b6e6f1ed6
Exchange main.name with main.path.
2015-11-11 20:38:58 +01:00
Kare Morstol
b5448f485a
Cleanup code with guard.
2015-11-11 03:41:38 +01:00
Kare Morstol
3554bb4ef8
Simplify SwiftShellTests/Scripts/print_linenumbers.swift .
2015-11-10 21:06:47 +01:00
Kare Morstol
a7b7033383
Remove a couple of double spaces.
...
I do not like double spaces.
2015-11-09 23:53:12 +01:00
Kare Morstol
4da7c5b668
Use $SWIFTSHELL_FRAMEWORK_PATH instead of $DYLD_FRAMEWORK_PATH in the swiftshell launcher script.
...
Because of this change in El Capitan:
"Spawning children processes of processes restricted by System Integrity Protection, such as by launching a helper process in a bundle with NSTask or calling the exec(2) command, resets the Mach special ports of that child process. Any dynamic linker (dyld) environment variables, such as DYLD_LIBRARY_PATH, are purged when launching protected processes."
https://developer.apple.com/library/prerelease/mac/documentation/Security/Conceptual/System_Integrity_Protection_Guide/RuntimeProtections/RuntimeProtections.html
2015-11-09 21:45:54 +01:00
Kare Morstol
6065d0226f
Add a trailing / to ‘main.currentdirectory’ too.
...
I should probably be using NSURLs for file paths, but they are just so cumbersome to work with in Swift. Besides many file operations in Foundation require strings, not NSURLs.
2015-10-19 02:24:45 +02:00
Kare Morstol
cab35b4078
Add a trailing / to ‘main.tempdirectory’.
2015-10-18 23:44:22 +02:00
Kare Morstol
70319b54db
Update test scripts for SwiftShell 2.0.
...
Finally.
2015-10-16 03:52:47 +02:00
Kare Morstol
b447059e3e
Add ‘open’ functions for writing to files.
2015-10-16 03:30:44 +02:00
Kare Morstol
1d07e1db41
Add main.tempdirectory .
2015-10-16 02:10:21 +02:00
Kare Morstol
796af16d1a
Add 'open' functions for reading files.
2015-10-15 23:05:20 +02:00
Kare Morstol
2de04312b5
Test using streams with ‘print’.
2015-10-07 20:09:13 +02:00
Kare Morstol
93809fa694
Enable strings to run commands using themselves as standard input.
2015-10-07 18:48:04 +02:00
Kare Morstol
99df0ddf19
Enable ReadableStream to run commands using itself as stdin.
2015-10-07 18:42:19 +02:00
Kare Morstol
2ea2c5ccce
Make shellcontext's stdin and stderror be ReadableStream and WriteableStream.
2015-10-07 16:37:18 +02:00
Kare Morstol
31508d338c
Create ReadableStream and streams() .
2015-10-07 15:33:06 +02:00
Kare Morstol
a521828ddb
Create WriteableStream, make shellcontext.stdout into one.
2015-10-07 15:09:43 +02:00
Kare Morstol
c3484d626f
Test effects of context.currentdirectory on NSURL.baseURL .
2015-10-06 18:59:03 +02:00
Kare Morstol
b7dab5666e
Remove completely unnecessary double spaces.
2015-10-04 20:25:39 +02:00
Kare Morstol
560ea1e8ec
Let 'pathForExecutable' use its context's environment.
2015-10-04 20:22:39 +02:00
Kare Morstol
d4c2bbed89
Add unit tests for running commands from custom context.
2015-10-04 19:22:23 +02:00
Kare Morstol
325af43d42
Include the command when throwing ShellError.ReturnedErrorCode .
2015-09-26 23:46:39 +02:00
Kare Morstol
e13202ad09
runAndPrint throws error when command is inaccessible.
2015-09-25 00:26:09 +02:00
Kare Morstol
a747b13228
Create struct ShellContext:ShellContextType .
2015-09-23 03:33:29 +02:00
Kare Morstol
b253497f07
Let run* commands find path to executable automatically.
2015-09-23 02:27:16 +02:00
Kare Morstol
8c227b8fae
Let run* commands take shell arguments of any type.
2015-09-21 23:21:00 +02:00
Kare Morstol
3f09e7498d
Add [Any].flatten() .
2015-09-20 20:12:42 +02:00
Kare Morstol
d6055c6062
Remove CatchingFire framework and add it as a single file.
...
Carthage 0.9.1 is not compatible with the catching fire framework as it has too many SDKs (5). It seems 2 is the limit. In any case it was a bit too much trouble and overhead just to include the functionality of this one file.
2015-09-19 19:09:30 +02:00
Kare Morstol
a222c4d15a
Implement "NSURL / String" operator.
...
Overriding a standard operator for a completely different use case like this is not normally recommended, but I think it is warranted here. It's certainly a lot better than "URLByAppendingPathComponent".
2015-09-08 23:44:09 +02:00
Kare Morstol
91abb8c47c
Update test scripts.
...
The rest are waiting for reading and writing files to be implemented.
2015-09-08 18:06:49 +02:00
Kare Morstol
2d368bf7d6
Remove old Xcode project and unused files.
2015-09-08 18:04:37 +02:00
Kare Morstol
9cfd7e5c39
Add run*(executable: String, _ args: [String]). Make global versions of main.run* .
...
All unit tests use global functions.
Removed unnecessary testFinishReturnsSelf.
2015-09-07 23:58:50 +02:00
Kare Morstol
93922a4101
Fix main.name .
...
Now prints the script's name instead of its path.
2015-09-07 22:17:37 +02:00
Kare Morstol
bacdbddddc
Implement ShellContextType.runAndPrint .
2015-09-06 20:58:31 +02:00
Kare Morstol
c6975aefd1
Make AsyncShellTask.finish return self.
...
For method chaining.
2015-09-03 18:25:28 +02:00
Kare Morstol
de708331a8
Add 'ShellError', which may be thrown from completed shell commands.
2015-09-03 17:45:28 +02:00
Kare Morstol
10cf827d8b
Add CatchingFire testing framework.
...
For testing error handling.
2015-09-03 17:27:07 +02:00
Kare Morstol
239d32edfd
Rename ‘$’ to ‘run’.
...
Trying to not repeat the mistakes of bash shell scripting here.
2015-09-02 17:34:40 +02:00
Kare Morstol
a8bfc6b1a6
Add 'runAsync' commands for asynchronous shell execution.
2015-09-02 16:55:33 +02:00
Kare Morstol
e868d67050
Fix assert message.
2015-08-13 20:09:57 +02:00
Kare Morstol
b45ccd814c
Add unit tests for everything that doesn't result in printErrorAndExit.
...
As verified by the wonderful new code coverage feature of Xcode.
2015-08-09 23:07:27 +02:00
Kare Morstol
da3a0f5361
Add $(bash:) . Refactor command.swift.
...
Had to add leading spaces (shudder) to the documentation comment to get Xcode to render it properly. Hopefully this is just a temporary fix.
2015-08-06 03:49:57 +02:00
Kare Morstol
60e98f3ba5
Add assertion via shell command to testCurrentDirectory_CanChange.
2015-08-05 21:12:37 +02:00