Thx Sven.�� That led me to check the url which worked fine.�� ��
http://catalog.pharo.org/catalog/json

Then I had to close and restart the image and its was working fine.�� So now nothing to examine :(.


Minor side issue that I'm ignoring for now (just reporting for completeness)...��
putting a halt in CatalogProvider>>retrieveProjects and clicking the Catalog <Refresh> button
freezes the UI and ALT-.�� can't break it�� (and neither does CTRL-. )����
The shell console repeatedly cycles following (2 cycles shown),



GLMPanelMorph(Morph)>>submorphsDo:

Halt

CatalogProvider>>retrieveProjects
[ self retrieveProjects
collect: [ :each | CatalogProject fromDictionary: each ] ] in CatalogProvider>>loadProjects in Block: [ self retrieveProjects...
BlockClosure>>on:do:
CatalogProvider>>loadProjects
CatalogProvider>>loadProjectsIfNeeded
CatalogProvider>>projects
[ :thisProvider | thisProvider projects ] in [ :a |��
a list
title: 'Available';
in: [ :this |��
self buildMenuOn: this.
self buildContextMenuOn: this ];
display: [ :thisProvider | thisProvider projects ];
format: [ :project | project name ];
icon: [ :project | self iconFor: project ];
filterOn: [ :text :each | each matches: text ];
tags: [ :project |��
project keywords isNil
ifTrue: [ #() ]
ifFalse: [ project allKeywords sorted ] ] ] in CatalogBrowser>>buildBrowser in Block: [ :thisProvider | thisProvider projects ]
BlockClosure>>glamourValueWithArgs:
BlockClosure(ProtoObject)>>glamourValue:
GLMListPresentation(GLMPresentation)>>displayValue
GLMListPresentation(GLMListingPresentation)>>displayValue
GLMTreeMorphModel>>displayValue
GLMTreeMorphModel>>roots
GLMTreeMorphModel>>rootNodes
GLMPaginatedMorphTreeMorph(MorphTreeMorph)>>getList
GLMPaginatedMorphTreeMorph(MorphTreeMorph)>>nodeList
MorphTreeChunkPager(MorphTreeNavigationBar)>>nodeList
MorphTreeChunkPager>>computedHeight
GLMPaginatedMorphTreeMorph(PaginatedMorphTreeMorph)>>pagerHeight
GLMPaginatedMorphTreeMorph(PaginatedMorphTreeMorph)>>innerBounds
GLMPaginatedMorphTreeMorph(Morph)>>layoutBounds
GLMPaginatedMorphTreeMorph(Morph)>>minExtent
[ :m |��
| extent frame |
"Map the minimal size of the child through the layout frame.
Note: This is done here and not in the child because its specific
for proportional layouts. Perhaps we'll generalize this for table
layouts but I'm not sure how and when."
extent := m minExtent.
frame := m layoutFrame.
frame ifNotNil: [ extent := frame minExtentFrom: extent ].
min := min max: extent ] in ProportionalLayout>>minExtentOf:in: in Block: [ :m | ...
Array(SequenceableCollection)>>do:
GLMPanelMorph(Morph)>>submorphsDo:
ProportionalLayout>>minExtentOf:in:
GLMPanelMorph(Morph)>>minExtent
[ :m |��
| sizeX sizeY |
m disableTableLayout
ifFalse: [ n := n + 1.
size := m minExtent.
sizeX := size x.
sizeY := size y.
sizeX < minX
ifTrue: [ sizeX := minX ]
ifFalse: [ sizeX > maxX
ifTrue: [ sizeX := maxX ] ].
sizeY < minY
ifTrue: [ sizeY := minY ]
ifFalse: [ sizeY > maxY
ifTrue: [ sizeY := maxY ] ].
height := height + sizeY.
sizeX > width
ifTrue: [ width := sizeX ] ] ] in TableLayout>>minExtentVertical: in Block: [ :m | ...
Array(SequenceableCollection)>>do:
GLMPanelMorph(Morph)>>submorphsDo:

Halt

CatalogProvider>>retrieveProjects
[ self retrieveProjects
collect: [ :each | CatalogProject fromDictionary: each ] ] in CatalogProvider>>loadProjects in Block: [ self retrieveProjects...
BlockClosure>>on:do:
CatalogProvider>>loadProjects
CatalogProvider>>loadProjectsIfNeeded
CatalogProvider>>projects
[ :thisProvider | thisProvider projects ] in [ :a |��
a list
title: 'Available';
in: [ :this |��
self buildMenuOn: this.
self buildContextMenuOn: this ];
display: [ :thisProvider | thisProvider projects ];
format: [ :project | project name ];
icon: [ :project | self iconFor: project ];
filterOn: [ :text :each | each matches: text ];
tags: [ :project |��
project keywords isNil
ifTrue: [ #() ]
ifFalse: [ project allKeywords sorted ] ] ] in CatalogBrowser>>buildBrowser in Block: [ :thisProvider | thisProvider projects ]
BlockClosure>>glamourValueWithArgs:
BlockClosure(ProtoObject)>>glamourValue:
GLMListPresentation(GLMPresentation)>>displayValue
GLMListPresentation(GLMListingPresentation)>>displayValue
GLMTreeMorphModel>>displayValue
GLMTreeMorphModel>>roots
GLMTreeMorphModel>>rootNodes
GLMPaginatedMorphTreeMorph(MorphTreeMorph)>>getList
GLMPaginatedMorphTreeMorph(MorphTreeMorph)>>nodeList
MorphTreeChunkPager(MorphTreeNavigationBar)>>nodeList
MorphTreeChunkPager>>computedHeight
GLMPaginatedMorphTreeMorph(PaginatedMorphTreeMorph)>>pagerHeight
GLMPaginatedMorphTreeMorph(PaginatedMorphTreeMorph)>>innerBounds
GLMPaginatedMorphTreeMorph(Morph)>>layoutBounds
GLMPaginatedMorphTreeMorph(Morph)>>minExtent
[ :m |��
| extent frame |
"Map the minimal size of the child through the layout frame.
Note: This is done here and not in the child because its specific
for proportional layouts. Perhaps we'll generalize this for table
layouts but I'm not sure how and when."
extent := m minExtent.
frame := m layoutFrame.
frame ifNotNil: [ extent := frame minExtentFrom: extent ].
min := min max: extent ] in ProportionalLayout>>minExtentOf:in: in Block: [ :m | ...
Array(SequenceableCollection)>>do:
GLMPanelMorph(Morph)>>submorphsDo:
ProportionalLayout>>minExtentOf:in:
GLMPanelMorph(Morph)>>minExtent
[ :m |��
| sizeX sizeY |
m disableTableLayout
ifFalse: [ n := n + 1.
size := m minExtent.
sizeX := size x.
sizeY := size y.
sizeX < minX
ifTrue: [ sizeX := minX ]
ifFalse: [ sizeX > maxX
ifTrue: [ sizeX := maxX ] ].
sizeY < minY
ifTrue: [ sizeY := minY ]
ifFalse: [ sizeY > maxY
ifTrue: [ sizeY := maxY ] ].
height := height + sizeY.
sizeX > width
ifTrue: [ width := sizeX ] ] ] in TableLayout>>minExtentVertical: in Block: [ :m | ...
Array(SequenceableCollection)>>do:
GLMPanelMorph(Morph)>>submorphsDo:

Halt

CatalogProvider>>retrieveProjects


On Fri, Nov 10, 2017 at 8:57 PM, Sven Van Caekenberghe <sven@stfx.eu> wrote:
Check CatalogProvider. It should download the catalog from the cloud and cache it locally. If not you can work from there on to see what is wrong.

> On 10 Nov 2017, at 13:32, Ben Coman <btc@openinworld.com> wrote:
>
> Today I downloaded Pharo and found Catalog to be empty.
> http://files.pharo.org/platform/Pharo6.1-64-linux.zip
>
> cheers -ben
>