Catalog problem

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

Catalog problem

Ben Coman
Today I downloaded Pharo and found Catalog to be empty.

cheers -ben

Reply | Threaded
Open this post in threaded view
|

Re: Catalog problem

Sven Van Caekenberghe-2
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 <[hidden email]> wrote:
>
> Today I downloaded Pharo and found Catalog to be empty.
> http://files.pharo.org/platform/Pharo6.1-64-linux.zip
>
> cheers -ben
>


Reply | Threaded
Open this post in threaded view
|

Re: Catalog problem

Peter Uhnak
Try closing Pharo and opening it again... this is imho due to slow Inria servers and I've encountered it many times.

On Fri, Nov 10, 2017 at 1:57 PM, Sven Van Caekenberghe <[hidden email]> 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 <[hidden email]> wrote:
>
> Today I downloaded Pharo and found Catalog to be empty.
> http://files.pharo.org/platform/Pharo6.1-64-linux.zip
>
> cheers -ben
>



Reply | Threaded
Open this post in threaded view
|

Re: Catalog problem

Ben Coman
In reply to this post by Sven Van Caekenberghe-2
Thx Sven.  That led me to check the url which worked fine.   

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 <[hidden email]> 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 <[hidden email]> wrote:
>
> Today I downloaded Pharo and found Catalog to be empty.
> http://files.pharo.org/platform/Pharo6.1-64-linux.zip
>
> cheers -ben
>