[squeak-dev] ScriptManager that works in Squeak4.4-12327
Ken G. Brown
kbrown at mac.com
Tue Jan 8 16:53:53 UTC 2013
Is that download file supposed to be the Install.st file created from the Release Editor or is it something else?
Do I need to upload it somehow or does the Release Editor do it? If the Release Editor is supposed to do it, I never could get the Release Editor save to work because of the error.
Ken
2013-01-08, at 1:34 AM, Frank Shearar wrote:
> It's because of the "Download: nil" you can see here:
> http://map.squeak.org/package/3cd57503-15f5-4b95-9fa9-266ef80cab6b/autoversion/1
>
> I think the solution is to edit the release in the Release Editor and
> redo the install script.
>
> (Re Hannes' point about ScriptManager being a single .cs - maybe, but
> if it's in ss3 it's under version control.)
>
> frank
>
> On 7 January 2013 22:30, Ken G. Brown <kbrown at mac.com> wrote:
>> I did as you suggested and have successfully created the new ScriptManager package on SqueakMap.
>> However, I'm wondering if I am missing something, or if this is related to not being able to Edit Releases from the web browser access to SqueakMap. Tips appreciated.
>> When I attempt to save the contents of the SMReleaseBrowser, I get the following:
>>
>> UndefinedObject(Object)>>doesNotUnderstand: #isEmpty
>>
>> 7 January 2013 3:22:04.457 pm
>>
>> VM: Mac OS - Smalltalk
>> Image: Squeak4.4 [latest update: #12327]
>>
>> SecurityManager state:
>> Restricted: false
>> FileAccess: true
>> SocketAccess: true
>> Working Dir /myStuff/mySmalltalkStuff/Sqkb/<Sqkb4.x/Sqkb4.4/Squeak4.4-12327 Release
>> Trusted Dir /foobar/tooBar/forSqueak/bogus/
>> Untrusted Dir /Users/kbrownht/Library/Preferences/Croquet/Internet/Untrusted
>>
>> UndefinedObject(Object)>>doesNotUnderstand: #isEmpty
>> Receiver: nil
>> Arguments and temporary variables:
>> aMessage: isEmpty
>> exception: MessageNotUnderstood: UndefinedObject>>isEmpty
>> resumeValue: nil
>> Receiver's instance variables:
>> nil
>>
>> SMPackageRelease>>downloadFileName
>> Receiver: SMPackageRelease[ScriptManager 1-(head)]
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> id: an UUID('28a27de1-fe3e-4f49-9ef8-f3ac14fd2914')
>> map: a SMSqueakMap
>> created: 3535024662
>> updated: 3535024662
>> name: ''
>> summary: ''
>> url: ''
>> categories: an OrderedCollection(SMCategory: Community Supported SMCategory: MI...etc...
>> resources: nil
>> publisher: nil
>> automaticVersion: '1' asVersion
>> version: '(head)'
>> note: a Text for 'A version of ScriptManager that runs in Squeak, forked about ...etc...
>> downloadUrl: nil
>> package: SMPackage[ScriptManager]
>> repository: nil
>> sha1sum: nil
>>
>> SMReleaseBrowser>>loadScript
>> Receiver: a SMReleaseBrowser
>> Arguments and temporary variables:
>> scriptName: nil
>> Receiver's instance variables:
>> dependents: a DependentsArray(a PluggableSystemWindow(2947) a PluggableTextMorp...etc...
>> contents: ''
>> currentCompiledMethod: nil
>> contentsSymbol: #source
>> multiWindowState: nil
>> release: SMPackageRelease[ScriptManager 1-(head)]
>> loadScript: nil
>> smClient: a SMClient
>>
>> [] in [] in SMReleaseBrowser>>save
>> Receiver: a SMReleaseBrowser
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> dependents: a DependentsArray(a PluggableSystemWindow(2947) a PluggableTextMorp...etc...
>> contents: ''
>> currentCompiledMethod: nil
>> contentsSymbol: #source
>> multiWindowState: nil
>> release: SMPackageRelease[ScriptManager 1-(head)]
>> loadScript: nil
>> smClient: a SMClient
>>
>> BlockClosure>>ensure:
>> Receiver: [closure] in [] in SMReleaseBrowser>>save
>> Arguments and temporary variables:
>> aBlock: [closure] in [] in SMReleaseBrowser>>save
>> complete: nil
>> returnValue: nil
>> Receiver's instance variables:
>> outerContext: [] in SMReleaseBrowser>>save
>> startpc: 145
>> numArgs: 0
>>
>> [] in SMReleaseBrowser>>save
>> Receiver: a SMReleaseBrowser
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> dependents: a DependentsArray(a PluggableSystemWindow(2947) a PluggableTextMorp...etc...
>> contents: ''
>> currentCompiledMethod: nil
>> contentsSymbol: #source
>> multiWindowState: nil
>> release: SMPackageRelease[ScriptManager 1-(head)]
>> loadScript: nil
>> smClient: a SMClient
>>
>> BlockClosure>>ensure:
>> Receiver: [closure] in SMReleaseBrowser>>save
>> Arguments and temporary variables:
>> aBlock: [closure] in CursorWithMask(Cursor)>>showWhile:
>> complete: nil
>> returnValue: nil
>> Receiver's instance variables:
>> outerContext: SMReleaseBrowser>>save
>> startpc: 107
>> numArgs: 0
>>
>> CursorWithMask(Cursor)>>showWhile:
>> Receiver: ((CursorWithMask
>> extent: 16 at 16
>> depth: 1
>> fromArray: #(
>> 2r0
>> 2r11111111111111000000000...etc...
>> Arguments and temporary variables:
>> aBlock: [closure] in SMReleaseBrowser>>save
>> oldcursor: ((CursorWithMask
>> extent: 16 at 16
>> depth: 1
>> fromArray: #(
>> 2r0
>> 2r1...etc...
>> Receiver's instance variables:
>> bits: a Bitmap of length 16
>> width: 16
>> height: 16
>> depth: 1
>> offset: -1@ -1
>> maskForm: Form(16x16x1)
>>
>> SMReleaseBrowser>>save
>> Receiver: a SMReleaseBrowser
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> dependents: a DependentsArray(a PluggableSystemWindow(2947) a PluggableTextMorp...etc...
>> contents: ''
>> currentCompiledMethod: nil
>> contentsSymbol: #source
>> multiWindowState: nil
>> release: SMPackageRelease[ScriptManager 1-(head)]
>> loadScript: nil
>> smClient: a SMClient
>>
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
>> Receiver: a PluggableButtonMorphPlus(543)
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> bounds: 566 at 264 corner: 629 at 279
>> owner: a PluggablePanelMorph(2328)
>> submorphs: {an AlignmentMorph(2777)}
>> fullBounds: 566 at 264 corner: 629 at 279
>> color: Color white
>> extension: a MorphExtension (612) [balloonText] [other: (layoutFrame -> a Lay...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a SMReleaseBrowser
>> label: 'Save'
>> getStateSelector: nil
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(543)}
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: nil
>> updateMap: nil
>>
>> PluggableButtonMorphPlus>>performAction
>> Receiver: a PluggableButtonMorphPlus(543)
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> bounds: 566 at 264 corner: 629 at 279
>> owner: a PluggablePanelMorph(2328)
>> submorphs: {an AlignmentMorph(2777)}
>> fullBounds: 566 at 264 corner: 629 at 279
>> color: Color white
>> extension: a MorphExtension (612) [balloonText] [other: (layoutFrame -> a Lay...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a SMReleaseBrowser
>> label: 'Save'
>> getStateSelector: nil
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(543)}
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: nil
>> updateMap: nil
>>
>> [] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> Receiver: a PluggableButtonMorphPlus(543)
>> Arguments and temporary variables:
>> evt: a PluggableButtonMorphPlus(543)
>> m: [591 at 271 mouseUp 22595056]
>> Receiver's instance variables:
>> bounds: 566 at 264 corner: 629 at 279
>> owner: a PluggablePanelMorph(2328)
>> submorphs: {an AlignmentMorph(2777)}
>> fullBounds: 566 at 264 corner: 629 at 279
>> color: Color white
>> extension: a MorphExtension (612) [balloonText] [other: (layoutFrame -> a Lay...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a SMReleaseBrowser
>> label: 'Save'
>> getStateSelector: nil
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(543)}
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: nil
>> updateMap: nil
>>
>> Array(SequenceableCollection)>>do:
>> Receiver: {a PluggableButtonMorphPlus(543)}
>> Arguments and temporary variables:
>> aBlock: [closure] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> index: 1
>> indexLimiT: 1
>> Receiver's instance variables:
>> {a PluggableButtonMorphPlus(543)}
>>
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> Receiver: a PluggableButtonMorphPlus(543)
>> Arguments and temporary variables:
>> evt: [591 at 271 mouseUp 22595056]
>> Receiver's instance variables:
>> bounds: 566 at 264 corner: 629 at 279
>> owner: a PluggablePanelMorph(2328)
>> submorphs: {an AlignmentMorph(2777)}
>> fullBounds: 566 at 264 corner: 629 at 279
>> color: Color white
>> extension: a MorphExtension (612) [balloonText] [other: (layoutFrame -> a Lay...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a SMReleaseBrowser
>> label: 'Save'
>> getStateSelector: nil
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(543)}
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: nil
>> updateMap: nil
>>
>> PluggableButtonMorphPlus>>mouseUp:
>> Receiver: a PluggableButtonMorphPlus(543)
>> Arguments and temporary variables:
>> evt: [591 at 271 mouseUp 22595056]
>> Receiver's instance variables:
>> bounds: 566 at 264 corner: 629 at 279
>> owner: a PluggablePanelMorph(2328)
>> submorphs: {an AlignmentMorph(2777)}
>> fullBounds: 566 at 264 corner: 629 at 279
>> color: Color white
>> extension: a MorphExtension (612) [balloonText] [other: (layoutFrame -> a Lay...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a SMReleaseBrowser
>> label: 'Save'
>> getStateSelector: nil
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(543)}
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: nil
>> updateMap: nil
>>
>> PluggableButtonMorphPlus(Morph)>>handleMouseUp:
>> Receiver: a PluggableButtonMorphPlus(543)
>> Arguments and temporary variables:
>> anEvent: [591 at 271 mouseUp 22595056]
>> Receiver's instance variables:
>> bounds: 566 at 264 corner: 629 at 279
>> owner: a PluggablePanelMorph(2328)
>> submorphs: {an AlignmentMorph(2777)}
>> fullBounds: 566 at 264 corner: 629 at 279
>> color: Color white
>> extension: a MorphExtension (612) [balloonText] [other: (layoutFrame -> a Lay...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a SMReleaseBrowser
>> label: 'Save'
>> getStateSelector: nil
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(543)}
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: nil
>> updateMap: nil
>>
>> MouseButtonEvent>>sentTo:
>> Receiver: [591 at 271 mouseUp 22595056]
>> Arguments and temporary variables:
>> anObject: a PluggableButtonMorphPlus(543)
>> Receiver's instance variables:
>> timeStamp: 22595056
>> source: a HandMorph(3216)
>> type: #mouseUp
>> buttons: 0
>> position: 591 at 271
>> handler: nil
>> wasHandled: true
>> whichButton: 4
>>
>> PluggableButtonMorphPlus(Morph)>>handleEvent:
>> Receiver: a PluggableButtonMorphPlus(543)
>> Arguments and temporary variables:
>> anEvent: [591 at 271 mouseUp 22595056]
>> Receiver's instance variables:
>> bounds: 566 at 264 corner: 629 at 279
>> owner: a PluggablePanelMorph(2328)
>> submorphs: {an AlignmentMorph(2777)}
>> fullBounds: 566 at 264 corner: 629 at 279
>> color: Color white
>> extension: a MorphExtension (612) [balloonText] [other: (layoutFrame -> a Lay...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a SMReleaseBrowser
>> label: 'Save'
>> getStateSelector: nil
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(543)}
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: nil
>> updateMap: nil
>>
>> PluggableButtonMorphPlus(Morph)>>handleFocusEvent:
>> Receiver: a PluggableButtonMorphPlus(543)
>> Arguments and temporary variables:
>> anEvent: [591 at 271 mouseUp 22595056]
>> Receiver's instance variables:
>> bounds: 566 at 264 corner: 629 at 279
>> owner: a PluggablePanelMorph(2328)
>> submorphs: {an AlignmentMorph(2777)}
>> fullBounds: 566 at 264 corner: 629 at 279
>> color: Color white
>> extension: a MorphExtension (612) [balloonText] [other: (layoutFrame -> a Lay...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a SMReleaseBrowser
>> label: 'Save'
>> getStateSelector: nil
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(543)}
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: nil
>> updateMap: nil
>>
>>
>> --- The full stack ---
>> UndefinedObject(Object)>>doesNotUnderstand: #isEmpty
>> SMPackageRelease>>downloadFileName
>> SMReleaseBrowser>>loadScript
>> [] in [] in SMReleaseBrowser>>save
>> BlockClosure>>ensure:
>> [] in SMReleaseBrowser>>save
>> BlockClosure>>ensure:
>> CursorWithMask(Cursor)>>showWhile:
>> SMReleaseBrowser>>save
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
>> PluggableButtonMorphPlus>>performAction
>> [] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> Array(SequenceableCollection)>>do:
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> PluggableButtonMorphPlus>>mouseUp:
>> PluggableButtonMorphPlus(Morph)>>handleMouseUp:
>> MouseButtonEvent>>sentTo:
>> PluggableButtonMorphPlus(Morph)>>handleEvent:
>> PluggableButtonMorphPlus(Morph)>>handleFocusEvent:
>> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>> [] in HandMorph>>sendFocusEvent:to:clear:
>> BlockClosure>>on:do:
>> PasteUpMorph>>becomeActiveDuring:
>> HandMorph>>sendFocusEvent:to:clear:
>> HandMorph>>sendEvent:focus:clear:
>> HandMorph>>sendMouseEvent:
>> HandMorph>>handleEvent:
>> HandMorph>>processEvents
>> [] in WorldState>>doOneCycleNowFor:
>> Array(SequenceableCollection)>>do:
>> WorldState>>handsDo:
>> WorldState>>doOneCycleNowFor:
>> WorldState>>doOneCycleFor:
>> PasteUpMorph>>doOneCycle
>> [] in Project class>>spawnNewProcess
>> [] in BlockClosure>>newProcess
>>
>>
>> Ken G. Brown
>>
>>
>> On 2013-01-07, at 2:44 AM, Frank Shearar wrote:
>>
>>> On 7 January 2013 02:44, Ken G. Brown <kbrown at mac.com> wrote:
>>>> I've uploaded a version of ScriptManager that works in Squeak4.4-12327, to ss3 at <http://ss3.gemstone.com/ss/ScriptManager.html>.
>>>> It was forked from the one at <http://www.squeaksource.com/ScriptManager.html>around version 13 just before they switched to using Fuel for serialization. I added syntax highlighting for the workspaces.
>>>>
>>>> Installer ss3
>>>> project: 'ScriptManager';
>>>> install: 'ScriptManager-Core-kgb.14';
>>>> install: 'ScriptManager-Help-kgb.2'.
>>>>
>>>> ScriptManager open.
>>>>
>>>> I would like to add this to SqueakMap if someone could quickstep me through the process.
>>>
>>> * Get a SqueakMap account if you don't already have one:
>>> http://map.squeak.org/newaccount
>>> * Once logged in, add the package: http://map.squeak.org/account/newpackage
>>> * Fill in the metadata.
>>> * In your image, open the SqueakMap Catalog
>>> * Update the SM list
>>> * "Right-click" in the package list
>>> * Uncheck the "New safely-available packages" checkbox
>>> * You should now be able to search for your package.
>>> * Select the package, "right-click", "Create new Release". That gives
>>> you an SMReleaseBrowser.
>>> * The lower code pane will take the Installer script you give above.
>>> I'd leave out the "ScriptManager open" though, but mention it in the
>>> release notes or the package's description.
>>> * Each of the release browser's fields have hot-tip speech bubbles
>>> explaining the different fields. They're all required, as far as I
>>> know.
>>>
>>> And that should be it!
>>>
>>> frank
>>>
>>>> Thx,
>>>> Ken G. Brown
>>>>
>>>
>>
>>
>
More information about the Squeak-dev
mailing list
|