Issue 178 in metacello: Configurations with common base loaded incorrectly

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

Issue 178 in metacello: Configurations with common base loaded incorrectly

metacello
Status: Accepted
Owner: [hidden email]
Labels: Type-Defect Priority-Medium Product-Core Milestone-1.0-beta.31.1.1

New issue 178 by [hidden email]: Configurations with common base  
loaded incorrectly
http://code.google.com/p/metacello/issues/detail?id=178

see  
http://groups.google.com/group/metacello/browse_thread/thread/d9a2819134ea18e0

I also saw this while loading the Moose configuration

Reply | Threaded
Open this post in threaded view
|

Re: Issue 178 in metacello: Configurations with common base loaded incorrectly

metacello

Comment #1 on issue 178 by [hidden email]: Configurations with  
common base loaded incorrectly
http://code.google.com/p/metacello/issues/detail?id=178

Here's the source for MetacelloGoferPackage>>matches: that looks like it  
fixes Mariano's ConfigurationOfNautilus problem and the Moose  
ConfigurationOfGlamour issue that I ran into (in retrospect, it looks like  
the Moose bug was a consequence of some additional changes I had made to  
the system for 1.0-beta.32...):

matches: aLoadableReference
        "does Monticello-style #versionInfoFromVersionNamed: matching"

        | pFilename refName char |
        ((pFilename := self packageFilename) == nil or: [ self name = self  
packageFilename ])
                ifTrue: [ ^ super matches: aLoadableReference ].
        aLoadableReference name = pFilename
                ifTrue: [ ^ true ].
        (aLoadableReference name beginsWith: pFilename)
                ifFalse: [ ^ false ].
        refName := aLoadableReference packageName.
        refName = pFilename
                ifTrue: [ ^ true ].
        pFilename size < refName size
                ifTrue: [
                        (refName beginsWith: pFilename)
                                ifFalse: [ ^ false ].
                        (char := pFilename at: pFilename size) ~= $-
                                ifTrue: [ char := refName at: pFilename size + 1 ] ]
                ifFalse: [
                        (pFilename beginsWith: refName)
                                ifFalse: [ ^ false ].
                        (char := refName at: refName size) ~= $-
                                ifTrue: [ char := pFilename at: refName size + 1 ] ].
        ^ char = $. or: [ char = $- ]

The Metacello tests all pass (they didn't with the earlier patch), so this  
one should be safe to use ... I'll be working this into a release in the  
next day or so ...

Reply | Threaded
Open this post in threaded view
|

Re: Issue 178 in metacello: Configurations with common base loaded incorrectly

metacello

Comment #2 on issue 178 by [hidden email]: Configurations with  
common base loaded incorrectly
http://code.google.com/p/metacello/issues/detail?id=178

The fix plus additional tests committed to an "issue178 branch":

   Metacello-MC.issue178-dkh.549
   Metacello-TestsMC.issue178-dkh.170

in http://seaside.gemstone.com/ss/metacello

Reply | Threaded
Open this post in threaded view
|

Re: Issue 178 in metacello: Configurations with common base loaded incorrectly

metacello
Updates:
        Labels: -Milestone-1.0-beta.31.1.1 Milestone-1.0-beta.31.2

Comment #3 on issue 178 by [hidden email]: Configurations with  
common base loaded incorrectly
http://code.google.com/p/metacello/issues/detail?id=178

(No comment was entered for this change.)