forked from sveinbjornt/Platypus
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES.txt
executable file
·438 lines (384 loc) · 25.4 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
For 5.0
TODO: Rethink and redesign the interface. It's a bit cluttered, hasn't changed much for 10 years, and could do with some (Mountain) Lionizing
TODO: Implement automated testing for command line tool and other spec'd program functionality
TODO: Get STDERR output and pid for STPrivilegedTask
TODO: Support for selection in Status Menu output, just like in Tapir. Script called with argument line.
TODO: Create Platypus tutorial videos, make them available online
TODO: AuthorizationExecuteWithPrivileges() used by admin privileged exec, is deprecated in 10.8 Mountain Lion. New method involves using a helper tool.
TODO: Rewrite or at least refactor nasty 10 year old code in STFileList and SuffixList
TODO: Restore "icon from image" functionality in command line tool (window server dependency?)
TODO: Retina size support for icons and images used in user interface
TODO: Fix broken "Select Image file as icon..." functionality
TODO: Fix Edit Drop Settings menu item enabled when Accept dropped files is not checked
For 4.9
TODO: Refactor create: method in app spec class into multiple methods, e.g. infoplist and appsettingsplist getters
TODO: Make generated applications function even if they are moved while running
TODO: Default profile as a preference
TODO: New button-based output mode.
TODO: Build with XCode 5, modernize project
TODO: If I open Platypus, the cursor starts in the script path field. But I've found (on 10.8.4) that the "Create" button will remain grayed-out even though I fill in the path, then click some boxes, then name the app.
For 4.8
* New "Prompt for file on launch" option
* Redesigned, user-friendlier Drop Settings sheet
* Fixed issue where version of generated apps would not appear in Get Info in Finder (missing CFBundleShortVersionString)
* Generated apps have NSHumanReadableCopyright defined again
* Extensive updates to documentation
* "Provide as a Mac OS X Service" no longer enabled by default
* Removed all support for file types. They are ancient crust now mostly ignored by Mac OS X and should no longer be used.
* Improved uninstall script
* Fixed issue where a generated icon file referenced in a Profile could be overwritten
* Documentation files now open in default browser, not in default .html handling app
* Fixed broken nib optimization. Platypus now correctly detects XCode 4 installs.
For 4.7
* New "Uninstall" menu option, which removes all traces of Platypus on a system
* New update mechanism using the Sparkle framework and appcasting
* Command line tool now supports reading script from STDIN
* Command line tool now supports XML plist option
* Migrated away from all deprecated Mac OS X API calls
* Minor interface tweaks
* Fixed bug where script permissions could be erroneously set, resulting in execution failure
* Fixed bug which caused Platypus to crash when creating Droplets
* Fixed bug with icon missing on "New Script" if CLI tool wasn't installed
* Fixed bug with enabled empty menu item when no profiles were in Profiles list
For 4.6
* "Open" and "Save" menu item option for Platypus-created apps
* Applications can now be set as Services for text or file handling via Services menu
* Configurable document icon for Platypus apps
* New option to set custom arguments for script, not just interpreter, under "Args" (previously "Params")
* Command line tool now supports dumping profile property lists to stdout (see man page)
* Additional interpreter presets: zsh and tcsh
* Extended documentation and FAQ
* New "Edit" button and contextual menu item for Bundled Files List.
* New FastDMGMounter example
* Platypus now defaults to using binary-format property lists. This can be set to XML in create panel.
* Status Bar apps now gracefully remove status bar item before exiting
* Removed app path as first arg option, it's unnecessary and confusing. App path == $CWD/../..
* Various interface refinements
* Migrated all images to optimized PNGs for smaller file sizes
* Now using LLVM for builds instead of GCC, which makes for smaller code size
* Changed "New Script" preset contents to be a "Hello, World" example in the selected language
* Fixed bug with script path text field tab autocomplete
* Fixed bug in shell command generator which errenously inversed the logic of the -R flag
* Fixed bug which caused crash when editing file in Bundled Files list using built-in editor.
* Fixed bug where text font settings would not be applied
* Fixed bug with contextual menus in Arguments window
* Fixed bug where custom image data application icons failed to be created
* Fixed bug where "Icon" display mode status item would erroneously display a default title
* "Run in background" applications no longer set themselves as front process with output mode "None"
For 4.5
* Upgraded to XCode 4 for builds. Platypus and generated applications now require Mac OS X 10.5 or later
* Dropped PowerPC support. All binaries are now 32-bit/64-bit Intel only
* New Examples menu with a number example profiles, scripts and presets demonstrating Platypus features
* Support for accepting dragged text snippets as arguments to script
* Platypus now displays a progress bar with status messages while creating applications
* New "Create app on script file change" option, which automatically creates and launches a Platypus application when you save changes to script.
* Due to popular demand, "droppable" apps now run script on launch, not just when files are dropped
* "Open in Editor" option for bundled files
* Interface refactored to be always in what was previously "Advanced mode"
* Better handling of icons for apps
* More accurate estimated final app size
* New "Launch app on creation" option in Platypus, to facilitate development workflow
* "Runs in background" windows now come to the front on launch
* Improved application icon and preset icons (512x512px representations)
* Updated man page for command line tool
* Open Recent menu uses Apple's API
* Main window no longer accepts locally dragged and dropped icon files
* Icon view no longer erroneously recognizes locally originating drags as valid
* Revised and extended documentation
* Fixed a text encoding bug with "Secure" scripts
* Fixed text encoding bug in built-in text editor
* Fixed bug in drag and drop handling in Platypus application
* Removed environment editing and signature settings [redundant and obsolete, respectively]
* Removed English.lproj from created apps. It's not need with current lack of localization support.
* Fixed bug in drag and drop on Web View
* Updated to IconFamily 0.9.4
* New FAQ section in the documentation which addresses common questions and issues
* Fixed a bug where droplet apps would lock up on cancelled authentication
* Fixed bug in command line tool where nib parameter was ignored
* Platypus no longer embeds icon data in profiles, which results in smaller file sizes
* A variety of other small bug fixes all over the codebase
* Platypus now identifies .command files as shell scripts
* Additional interpreter pre-set options (/usr/bin/env and /bin/bash)
* Command line tool now no longer requires destination path parameter, defaulting to [name-of-script].app as destination package
* Platypus now recognises more script type suffix variants (e.g. rbx, objpy, osacript, etc.)
* Command line tool now defaults to compiling nib file (can be disabled with -l flag)
* Command line tool is now more intelligent about automatically detecting script type, interpreter, autogenerating bundle identifier, etc.
Command line tool parameters change from '-c scriptPath [appName]' to 'scriptPath [appName]'
* More intelligent automatic app name generation based on script filename
For 4.4
* New output mode: "Droplet"
* Development mode now also creates symlinks to bundled files, not just the script
* New high-resolution 512x512 icon presets
* New "Default Text Encoding" option in Preferences
* STDOUT and STDERR are no longer captured in output mode "None"
* Platypus apps now use the Apple-recommended, more secure temporary location for secure scripts
* More text encoding options
* Show Shell Command option is now more intelligent about creating a terse, efficient shell command without superfluous parameters
* Various small bug fixes and optimizations in Platypus app binaries
* Updated and improved code for executing script with privileges
* Updated and improved output parsing in Progress Bar output mode
* Fixed documentation so that it uses external images instead of data URLs
* Fixed bug where Platypus would incorrectly claim to be unable to create Platypus application support folder
* Fixed bug where background color from text settings would not be applied to the text view in Progress Bar output mode
* Fixed bug where syntax checking would work incorrectly with Perl scripts
* Fixed bug when interface in a Platypus app would lock up when dropping files in authenticated execution mode
* Fixed various bugs in Progress Bar output mode
* Fixed bug in output mode "None" where app would fail to quit on script termination
* Fixed small memory leak when applications were created
For 4.3
* Platypus text output now defaults to UTF8 instead of ASCII
* Refactored execution code running w. administrator privileges
* Fixed text-encoding bug with secure bundled scripts
* Fixed bug in secure bundled script w. droppable option
* Some changes to the interface of Platypus apps
* Current working directory is now set to .app/Contents/Resources in scripts running with Admin privileges
* Drag and drop now works properly in Web View windows
* Auto-scrolling of output in Web View mode
* Fixed bug where apps would fail to register dropped files on launch
* Fixed bug in command line tool install script
* Fixed bug with suffix and file type validation
* Fixed bug where command-line generated apps would have black background and foreground in text output
* Generated apps now have editable nib files
* Updated to latest IconFamily code (0.9.3)
* Drag and drop works in more places in the Platypus application
* Updated sample scripts
* Updated documentation and command line tool man page
* Better icon handling when creating applications
* New icon presets
* New high resolution app icon and improved document icons
´ * New output mode: Status Menu
* Fixed bug where command-line tool generated apps would default to black background in text output mode
* Fixed bug where apps would default to output mode "None" on invalid output settings
* Now warns when attempting to load a profile generated by an older version of Platypus
* New "Optimize Application" mode which strips/compiles nibs and removes unnecessary files from generated application bundle
* Command line tool has new option to specify alternate nib file
* Fixed some bugs in "Show Shell Command" window
For 4.2
* Droppable Platypus apps can now execute script repeatedly when new files are dropped
* Text settings now available for Progress Bar output mode
' * Command line tool now supports setting text output properties such as font, color and encoding
* Command line tool has achieved feature parity with GUI application
* Command line tool now correctly handles relative paths
* Change in profile format to make it more transparent and human-readable/editable
* "Show Shell Command" now shows all parameters for command line app
* Platypus apps now default to remaining open after execution
* Secure bundled script option now correctly excludes Development Version save option
* Fixed bug from 4.1 where text settings failed to be applied
* Fixed memory leak and bugs in privileged execution mode
* Fixed bug in path text field autocompletion
* Minor interface tweaks and fixes
For 4.1
* New "Development Mode" option makes Platypus create symlink to script instead of copying it to the application bundle
* Platypus now tracks and warns of location change of bundled files and script
* Profiles menu now updates profile list when displayed
* Path autocomplete feature in script path text field
* Now parses entire shebang line for arguments to interpreter
* Script text output is now directed line by line to the status text field in Progress Bar output mode
* Progress Bar output mode now has a little arrow that shows details (i.e. script output) in a text field
* Tooltips for many more controls
* Additional default external editor presets
* Minor user interface tweaks and fixes
* Minor optimizations in app size
* Command line program can now create profiles
* Command line program can now operate in "Force" mode, overwriting files
* Fixed bug where secure bundled scripts failed to work on PowerPC-based machines
* Fixed memory leak in text output
* Fixed bug where command line program failed to create icons from images
* Fixed bug where command line program failed to parse arguments correctly
* Fixed bug where script type was not identified when a script was dropped on Platypus to launch the program
* Fixed bug which prevented File Types and App Role from being set in Info.plist
* Fixed bug where Platypus would insist on at least one File Type being set in file types and suffixes settings
For 4.0
* Now both Platypus and Platypus-generated apps require Mac OS X 10.4 or later.
* Interface streamlined and improved
* Overhauled entire source code backend.
* Optimized binaries of Platypus and Platypus-generated apps. Both are now leaner, meaner and slimmer than ever before.
* New file-based Profiles feature
* New application icon and new icon presets for generated apps
* New Web Output mode. Scripts can generate HTML which is rendered in a WebKit view in the Platypus-generated application
* New option to configure text size, font and color for Text Output mode
* New option to send arguments to script interpreter
* New option to disable passing path to app as first argument to script
* New "Secure script" encryption method
* Command line tool now has complete feature parity with the Platypus app
* Command line tool can now load Platypus profiles
* Command line tool now installed/uninstalled through Platypus Preferences
* New "Estimated final app size" reporting feature
* "Show Shell Command" option now correctly adds icon parameters
* Fixed bug where "Run Script in Terminal" option failed to escape script path
* Fixed bug with reversed LSMinimumSystemVersion property in Info.plist of generated applications
* Fixed bug where the same file could be added multiple times to Bundled Files list
* Fixed memory leak in Platypus-generated apps where a large amount of text output would cause the application to crash
* New and better man page for command line tool
* Updated and improved documentation
* Updated to latest IconFamily class code for icon generation
For 3.4
* Fixed problem where Platypus refused to launch on certain Mac OS X 10.3.x systems
* Platypus-generated apps are now Universal Binaries and require Mac OS X 10.3.9 or later
* Various bug fixes, error checks and minor improvements
For 3.2
* Fixed two memory leaks
* Info.plists now contain LSHasLocalizedDisplayName, NSAppleScriptEnabled,CFBundleDisplayName, NSHumanReadableCopyright
* Property List code is now much cleaner
* Python syntax checking incorporated
* Editing of environmental variables via an interface pane
* English.lproj is en.lproj in accordance with Apple's specifications
* Sliding animation when advanced options are revealed
For 3.1
* New minimal, non-intrusive built-in text editor for those who prefer working in one application
* It is now possible to set app author name manually
* Invalid configuration fields now highlight red as you type
* New Dock menu
* New "Show Shell Command" menu item
* Fixed bug where "Secure" Platypus apps failed to work on read-only volumes
* New option to set default bundle identifier prefix in the preferences
* New option to set default author name in the preferences
* Profiles now correctly register bundle identifier and author name
* "Run script in Terminal" command now brings Terminal.app to the front
* Fixed bug where window title was not restored after a dialog
* Fixed a bug in the command line utility installer
* Updated man page for command line utility
* Updated Help documentation
* More sample scripts
* Platypus apps now register their creator in AppSettings.plist
* Help now opens with default app for http: protocol, not .html suffix
For 3.0
* New "Secure bundled script" option, which checksums, encrypts and hides script
* New "Check Script Syntax" feature for shell, Perl, Ruby and PHP scripts
* New "Edit Profiles" window for easier Profiles management
* New "platypus" command line tool
* Fixed a bug where PkgInfo file would not contain application signature
* Scripts created with the "New" button list bundled file paths in comment
* More complete Info.plist property list in Platypus-generated apps
* Several user interface refinements
* Several minor speed optimizations
* Updated documentation, tutorials, sample scripts and source code comments
For 2.8
* New "Import Custom Icon" menu item
* New contextual menus for app icon and file list
* It is now possible to manually edit an app's bundle signature
* Fixed bug where an authorized Platypus app could cause a logout
* Fixed bug with loading profiles created in older versions of Platypus
For 2.7
* Now possible to create applications that run with privileges *and have Text Output
* Profiles now store custom application icons
* Fixed bug where buttons would not be enabled after a valid profile was loaded
* Custom application icons are now correctly labeled
* There is now a "Select Custom Icon" menu item
* Fixed bug where custom dragged icons would leave the icon image highlighted
* File Types and Suffixes list now displays the appropriate icons for entries
* File Types editor window is now a sheet
* Updated documentation and examples
* Various bug fixes and interface refinements
* All those that made Platypus possible are now rightly credited
For 2.6
* Application configurations can now be saved as "Profiles"
* It is now possible to set application version and 4-character signature
* Updated documentation to reflect the changes introduced in version 2.5
* New "Clear" button for clearing all configuration fields
* New "Run script in Terminal" menu command
* All dialogs in Platypus are now sheets instead of navigation dialogs
* Fixed bug where a non-droppable app's bundle identifier would not be correctly set
* Several minor bugs and inconsistencies fixed
* Several interface tweaks
For 2.5
* This is a major update with many important bug fixes and some powerful new features
* New output type: "Text Window", making it *veryeasy to create tool wrappers
* New application option: "Remain running after completion"
* New "Open Recent" menu
* New text fields that display the application bundle identifier and total number and size of bundled files
* It is now possible to register a droppable application as either an Editor or a Viewer in the Types List
* Platypus apps now have a "PkgInfo" file within the application, in accordance with Apple's guidelines
* Any application can now be selected as external editor
* Platypus now remembers "Show Advanced Options" status between launches
* Fixed a bug which caused Platypus apps to behave oddly with the Dock
* Fixed a silly bug where Platypus apps would sometimes crash on dual-processor machines
* Fixed major memory leak in Platypus apps which had been present from Platypus 2.1
* Fixed a minor memory leak introduced in Platypus 2.3
For 2.3
* New "Runs in background" option, for creating applications that don't show up in the Dock
* Every Platypus app now has a unique bundle identifier (f.e. org.johnsmith.myscriptapp)
* New Edit Types window which allows you to set what kind of files your droppable app accepts
* New Help menu for instant access to Platypus documentation
* Platypus no longer accepts dragged folders as valid scripts
* The Bundled Files list is now drag-n-drop aware
* The same file can no longer be added many times to the Bundled Files list
* Bundled Files list buttons are now auto-enabled/disabled according to selection
* Platypus now prompts whether to overwrite when an app by the same name already exists
For 2.2
* "New Script" button/menu item for creating and opening a script from within Platypus
* "Reveal Script" button/menu item for revealing script in the Finder
* Incorporated menu items (and keyboard shortcuts) for almost all Platypus actions/options
* Buttons and menu items correctly disabled when script path is invalid
* Fixed a bug where the last remaining file in the Bundled Files list could not be removed
* Files in the Bundled Files list now appear with their icon
* Tool Tip labels placed on all interface components
* Droplets now identify themselves as Editors instead of Viewers
* Fixed bug where files with file/creator types could not be dropped on Platypus droplets
* Some minor interface adjustments
For 2.1
* Rewrote from scratch the ScriptExec executable that Platypus bundles into apps
* Fixed the dreaded "Is droppable" bug where Platypus would crash
* Platypus now (again) correctly creates droppable applications
* Scripts now properly receive the application bundle's path as first argument $1
* Droppable apps now also receive application bundle path as first argument
* Dropped files are now passed from $2-$*
* Preferences partially implemented - default editor can be changed to presets
* Apps that require authentication now also receive app bundle path and dropped files
* New menu and menu items for Platypus functions
* Two new icon presets, Platypus Plate and Platypus Droplet
For 2.0
* Entire application rewritten from scratch in Objective C and Cocoa
* Images can now be dragged on "App Icon" to create custom icons for apps
* Added Expect and PHP to list of preset interpreters
* Added "Edit" button, to edit selected script in TextEdit
* An editable file list for bundling files with script into Resources folder of app bundle
* Some settings delegated to "Advanced Options", revealed by expanding window
For 1.8
* Platypus applications that aren't marked 'Is Droppable' now get the path of the app's enclosing folder as first argument ($1, $ARGV[0] etc.). This can be very handy for installers or working with files relative to the app. A sample script that utilises this is included.
For 1.7
* Platypus no longer has problems with spaces in certain paths
* Fixed an interface bug where Platypus window would close after Create, although cancelled
* Platypus apps with progress bar now really do have a functioning "Cancel" button
* Fixed bug where new platypus windows retained former Droppable setting
* Some cool sample scripts bundled with Platypus
For 1.6
* New option to create droppable apps that pass files as arguments to script (like DropScript)
* Fixed a nasty bug where Platypus apps would freeze up after failed authentication
* Platypus apps with progress bar now have a "Cancel" button
* Minor user interface enhancements in both Platypus and Platypus-generated apps
For 1.5
* Platypus apps now remain running while root-privileged scripts finish executing
* Invisible files and folders are now shown in Navigation dialogs
* Navigation dialogs use newer API calls, support app names longer than 31 characters and are non-modal
* Platypus apps can now be set to display a progress bar while running
* Platypus apps are now threaded, which means that the interface is responsive while they're running
* Some interface tweaks and bug fixes
For 1.4
* It is now possible to create script applications that require root privileges
* Optimized performance and improved error handling for apps created with Platypus
* Platypus now launches faster
* Fixed bug where window proxy icon remained unchanged when a custom icon was set
* Fixed bug where apps with spaces in their names failed to function
* Platypus apps now remain running while script is executing
For 1.3
* Script interpreter can now be defined
* Shebang line (#!) is now parsed for interpreter
* "Open" menu item now works
* New windows center correctly on screen
* Code optimized and trimmed
* Minor interface tweaks
For 1.2
* Support for Ruby, AppleScript and Tcl
* Drag'n drop support for script path
* Now gracefully handles files dropped on Platypus application icon
* Better icons - specialized default icons for each script type
* Fixed bug where application placement name in Navigation dialog was ignored when creating app
For 1.1
* Platypus no longer uses huge amounts of CPU power for window redraws
* Text fields are now Unicode and displayed in correct font
* Support for Perl and Python scripts
* Drag'n drop support for script path
* Drag'n drop support for custom app icon
* Scripts can now be dragged on Platypus to automatically create an app in the same directory
* Now warns about inappropriate script suffixes