pharo-project / pharo

Pharo is a dynamic reflective pure object-oriented language supporting live programming inspired by Smalltalk.
http://pharo.org
Other
1.21k stars 356 forks source link

Pharo build is broken #17332

Closed Ducasse closed 2 weeks ago

Ducasse commented 3 weeks ago

Apparently the build is broken. Now I do not understand why because I did not change anything in the pharo13 branch of Microdown.

NewUndeclaredWarning: Microdown class>>asRichText: (MicRichTextComposer is Undeclared)
NewUndeclaredWarning: MicElement>>propertyAt: (MicPropertyError is Undeclared)
NewUndeclaredWarning: MicElement>>removeProperty: (MicPropertyError is Undeclared)
NewUndeclaredWarning: MicFigureBlock>>hasCaption (captionElements is Undeclared)
MetacelloNotification: Loaded -> Microdown --- github://pillar-markup/Microdown:Pharo13/src(e390aeb)
MetacelloNotification: Loaded -> Microdown-Tests --- github://pillar-markup/Microdown:Pharo13/src(e390aeb)
MetacelloNotification: Loaded -> Microdown-RichTextComposer --- github://pillar-markup/Microdown:Pharo13/src(e390aeb)
 postload UndeclaredVariableRead: Attempt to read undeclared variable IceRepository
UndeclaredVariable>>runtimeUndeclaredReadInContext:
BaselineOfMicrodown>>postload:package:
[ :aLoader :pkgSpec | self project configuration perform: selector with: aLoader with: pkgSpec ] in MetacelloVersionSpec(MetacelloSpec)>>doItBlock: in Block: [ :aLoader :pkgSpec | self project configurati[..]
FullBlockClosure(BlockClosure)>>valueWithPossibleArgs:
MetacelloLoadTarget>>visitPostLoadDirective:
MetacelloPostLoadDirective>>acceptVisitor:
[ :dir |
        dir acceptVisitor: self ] in MetacelloLoadTarget>>visitLinearLoadDirective: in Block: [ :dir |...
OrderedCollection>>do:
MetacelloLoadTarget>>visitLinearLoadDirective:
MetacelloLinearLoadDirective>>acceptVisitor:
MetacelloVersion>>loadRequiredFromArray:withEngine:
[
Ducasse commented 3 weeks ago

So apparently this is not in the microdown baseline in Pharo but in the baseline in the microdown repo.

Ducasse commented 3 weeks ago

I do not get why Attempt to read undeclared variable IceRepository

BaselineOfMicrodown >> postload: loader package: packageSpec

    | p |
    self class name, ' postload ' traceCr. 

    p := (IceRepository repositoryNamed: 'microdown').
    p ifNil: [ p :=  (IceRepository repositoryNamed: 'Microdown') ].
    [ 
    (p ifNotNil: [ :p2 | (p2 packageNamed: 'BaselineOfMicrodown') reload ]) 
    ] 
        on: MCMergeOrLoadWarning 
        do: [ :ex | ex load ]
hernanmd commented 3 weeks ago

Something like this?

postload: loader package: packageSpec

    | repo |
    self class name, ' postload ' traceCr. 
    repo := (self class environment classNamed: #IceRepository)
                ifNotNil: [ :iceberg |
                    iceberg registry
                        detect: [ :each | each name = 'Microdown' ]
                        ifNone: [ nil ] ].

    [ repo ifNotNil: [ :p2 | (p2 packageNamed: 'BaselineOfMicrodown') reload ] ] 
    on: MCMergeOrLoadWarning 
    do: [ :ex | ex load ]
jecisc commented 3 weeks ago

I did a PR to fix this: https://github.com/pillar-markup/Microdown/pull/909

hernanmd commented 2 weeks ago

Fixed, although some problems persists: #17348