getting instances of abstract "GitBased" superclass..

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

getting instances of abstract "GitBased" superclass..

Chris Muller-4
In Seaside 3.2 for Squeak there seems to be a problem with one of the Pragma preferences:

a PragmaPreference
        name:     #'GitHub Cache'
        value:     nil
        defaultValue:     nil
        helpString:     ''
        localToProject:     false
        categoryList:     #(#Metacello)
        changeInformee:     nil
        changeSelector:     nil
        type:     #String
        provider:  MCGitBasedNetworkRepository  "<-- lookie here, problem"
        getter:     #cacheDirectoryPath
        setter:     #cacheDirectoryPath:

Somehow, the 'provider' has been initialized to a MCGitBasedNetworkRepository whose #basicDescription is a subclassResponsibility.  So the PragmaPreference is unable to access its #preferenceValue.

I was able to replace it in the debugger with its subclass, MCGitHubRepository, and that fixed the Preferences panel blowing up.  However, I'm not sure how it got initialized to that superclass in the first place..


_______________________________________________
seaside-dev mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
Reply | Threaded
Open this post in threaded view
|

Re: getting instances of abstract "GitBased" superclass..

Tobias Pape

On 20.10.2015, at 21:38, Chris Muller <[hidden email]> wrote:

> In Seaside 3.2 for Squeak there seems to be a problem with one of the Pragma preferences:
>
> a PragmaPreference
>         name:     #'GitHub Cache'
>         value:     nil
>         defaultValue:     nil
>         helpString:     ''
>         localToProject:     false
>         categoryList:     #(#Metacello)
>         changeInformee:     nil
>         changeSelector:     nil
>         type:     #String
>         provider:  MCGitBasedNetworkRepository  "<-- lookie here, problem"
>         getter:     #cacheDirectoryPath
>         setter:     #cacheDirectoryPath:
>
> Somehow, the 'provider' has been initialized to a MCGitBasedNetworkRepository whose #basicDescription is a subclassResponsibility.  So the PragmaPreference is unable to access its #preferenceValue.
>
> I was able to replace it in the debugger with its subclass, MCGitHubRepository, and that fixed the Preferences panel blowing up.  However, I'm not sure how it got initialized to that superclass in the first place..

Thats a Squeak problem which does not notice when a method with a preference
goes away :)

We should look into that over at squeak-dev.

Best regards
        -Tobias

_______________________________________________
seaside-dev mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
Reply | Threaded
Open this post in threaded view
|

Re: getting instances of abstract "GitBased" superclass..

Chris Muller-3
I just noticed it created a really long directory whose name was the
entire error message!

On Tue, Oct 20, 2015 at 3:14 PM, Tobias Pape <[hidden email]> wrote:

>
> On 20.10.2015, at 21:38, Chris Muller <[hidden email]> wrote:
>
>> In Seaside 3.2 for Squeak there seems to be a problem with one of the Pragma preferences:
>>
>> a PragmaPreference
>>         name:     #'GitHub Cache'
>>         value:     nil
>>         defaultValue:     nil
>>         helpString:     ''
>>         localToProject:     false
>>         categoryList:     #(#Metacello)
>>         changeInformee:     nil
>>         changeSelector:     nil
>>         type:     #String
>>         provider:  MCGitBasedNetworkRepository  "<-- lookie here, problem"
>>         getter:     #cacheDirectoryPath
>>         setter:     #cacheDirectoryPath:
>>
>> Somehow, the 'provider' has been initialized to a MCGitBasedNetworkRepository whose #basicDescription is a subclassResponsibility.  So the PragmaPreference is unable to access its #preferenceValue.
>>
>> I was able to replace it in the debugger with its subclass, MCGitHubRepository, and that fixed the Preferences panel blowing up.  However, I'm not sure how it got initialized to that superclass in the first place..
>
> Thats a Squeak problem which does not notice when a method with a preference
> goes away :)
>
> We should look into that over at squeak-dev.
>
> Best regards
>         -Tobias
>
> _______________________________________________
> seaside-dev mailing list
> [hidden email]
> http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
_______________________________________________
seaside-dev mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev