Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
January 2014
- 101 participants
- 1785 messages
Re: [Pharo-dev] Roassal Visualization for control flow graph issues
by Usman Bhatti
Alex,
I remember to have talked to Mathieu about the making layouts ignore some
edges when drawing visualizations and I think he gave it a try as well. I
think that can be helpful in Clement's case (back jumps are ignored in the
layout).
Do you remember to have integrated something in Roassal on these lines from
Mathieu's work?
Usman
On Tue, Jan 14, 2014 at 6:20 PM, Alexandre Bergel
<alexandre.bergel(a)me.com>wrote:
> Hi Clément,
>
> Thanks for your nice words.
> Layouts provided by Roassal are well known generic algorithm. Creating a
> new layout is not complicated at all. Just subclass ROLayout and override
> the hook methods. Creating a layout for your need is not easy. Have you
> tried to google for a layout? If you find one, it should be rather easy to
> implement it.
>
> Alexandre
>
>
> On Jan 14, 2014, at 12:50 PM, Clément Bera <bera.clement(a)gmail.com> wrote:
>
> > Hello Roassal developers,
> >
> > A few time ago Usman Bhatti showed me Roassal. Today I decided to use it
> for my daily work on a project that aims to optimize Pharo's methods.
> >
> > Firstly I am quite impressed by the quality of Roassal, I am currently
> using the Roassal + Mondrian builder and I have a visual representation
> which is very close to what I want after 1 hour of work with the help of
> Usman. Good job guys.
> >
> > Here are 2 examples of what I use:
> >
> > exampleIfTrueIfFalse2
> > | a b |
> > a := true.
> > a
> > ifTrue: [
> > false ifTrue: [ ^ b := 1 ] ifFalse: [ b := 2 ] ]
> > ifFalse: [
> > true ifTrue: [ b := 4 ] ifFalse: [ b := 5 ] ].
> > ^ b
> >
> > <Screen Shot 2014-01-14 at 4.14.49 PM.png>
> >
> > Here there's one rectangle for each basic block, entrance/exits are
> basic blocks with bigger borders, and borders in red represents the "hot
> path", which the path the execution flow most frequently uses (based on
> native code counters added at some spots in the method by Cogit).
> >
> > Another example:
> >
> > exampleToDo
> >
> > 1 to: 10 do: [ :i |
> > self kick: i ]
> >
> > <Screen Shot 2014-01-14 at 4.36.47 PM.png>
> >
> > Now I have a few issues with the layout. I am currently using the
> narrowTreeLayout which seems to be the best for my visualisation.
> >
> > issue 1: When branches merges, which is in a tree when a node has 2 or
> more parents, or when I have a #ifTrue:ifFalse:, the child is not well
> aligned horizontally. Here in the first visualisation I showed, BasicBlock
> 5 is below but not in the middle of Basic block 8,7 and 4 (horizontally). I
> put a minimal width for each basic block to make it better but it's still
> not perfect.
> > issue 2: (most important issue) I cannot display back jumps because then
> all the graph is missdrawn, therefore I need to remember where they are
> instead of visualizing them all the time (I cannot display the back jump
> from basic block 3 to basic block 2 in the second representation. In
> addition, the back jump edge, when well displayed, overlaps the basic
> blocks visualizations.
> >
> > Here is an example of what I would like for the edges and basic block
> positions:
> >
> > <Screen Shot 2014-01-14 at 4.27.32 PM.png>
> >
> > As you can see, here exit is in the middle of B2 and B5 horizontally,
> which is not the case in my roassal visualization.
> > In addition, there's a back jump from B6 to B4 that I cannot display (or
> all the visual representation goes nuts). The edge for the back jump does
> not overlap with the basic blocks. In this graph, arrows follow a grid. I
> don't care that arrows are diagonals instead of a mix of horizontal and
> vertical lines but I would like to be able to see nicely the back jumps as
> in this graph.
> >
> > Do you have an idea on what layout/view options I could use with Roassal
> +Mondrian to have a better result ?
> >
> > I tried to create my own layout but after 2 hours I understood this cost
> too much time for my planning (or perhaps I'm just too dumb to do it fast
> :-( ).
> >
> > Anyway, the representation I have now is good enough for me to use it.
> But a better one would be better, especially for back jumps :-).
> >
> > Thanks for any help.
> >
> > Clement
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
Jan. 15, 2014
Re: [Pharo-dev] [Moose-dev] Re: Feature for request for GraphET?
by Alexandre Bergel
Wow wow!!!!
Beautiful!
Alexandre
On Jan 15, 2014, at 4:12 AM, Tudor Girba <tudor(a)tudorgirba.com> wrote:
> I took a bit of time and added gapFraction support for horizontal bar diagram. It is not quite solid yet (it needs some refactoring), but the core is in place. We have to adapt the vertical bar diagram as well.
>
> There are two tests that fail, but I do not quite understand why:
> https://ci.inria.fr/moose/job/graph-et/307/testReport/junit/
>
> In any case, now if you execute this in the very latest Moose image:
> MessageTally new spyEvery: 1 on: [10000 timesRepeat: [Collection withAllSubclassesDo: #printString]]; yourself.
>
> You get this (I still seem to have problems with the alignment of the inner bars):
>
> <Inspector on a MessageTally (nil(...oIt).png>
>
>
> Doru
>
>
> On Wed, Jan 8, 2014 at 10:44 PM, Tudor Girba <tudor(a)tudorgirba.com> wrote:
> Hi Daniel,
>
> Good work!
>
> But, there is still something I do not quite understand. Take a look at the produced image. Why is it that in the first red bar appears behind the gray one, and the rest appear in front of the corresponding gray bars?
>
> Related to the GapFraction: Could you describe what makes it such an expensive issue to compute the width of the bar with a bit of scaling? I am asking because this particular diagram does not work without it.
>
> Cheers,
> Doru
>
> <Screenshot 2014-01-08 22.40.58.png>
>
>
>
> On Wed, Jan 8, 2014 at 6:50 PM, Daniel Aviv Notario <daniel_avivnotario(a)hotmail.com> wrote:
> So, attending to the request Doru made, here's something similar to the example he provided in EyeSee... All the methods were already implemented but most of them didn't have a clear accesor to modify them.
>
> So, if you just load the last version of GraphET and do this:
>
>
> builder := GETDiagramBuilder new.
> grouped := { #item1->{10 . 12 . 11 . 14 } . #item2-> { 1 . 1 . 20
> }
> . #item3->{ 1 . 1 . 1 . 1 . 1} }.
> diag := (GETVerticalBarDiagram new)
> modelLabels: [:each | each key ];
> y: [:each | each value size];
> yAxisLabel: 'Count';
> valueAxis;
> height:200;
> spacing:20;
> yAxisOnRight;
> color: Color veryLightGray;
> axisColor: Color veryLightGray;
> models: grouped;
> yourself.
> diag2 := (GETVerticalBarDiagram new)
> y: [:each | each value sum];
> regularAxis;
> height: 200;
> spacing:20;
> yAxisLabel: 'Sum';
> color: (Color red);
> axisColor: (Color red);
> models: grouped;
> yourself.
> (builder unionDiagram)
> add: diag;
> add: diag2.
> builder open
>
>
> You'll see it's very similar. There's two things I couldn't replicate so far, one of them is the rotating labels, as Roassal can't rotate labels yet, and the second one was the GapFraction, as axis in GraphET need some work yet, so implementing that kind of thing would be hard. I think I'll dedicate to a proper axis in the next couple of weeks.
>
> Cheers :)!
>
> > > >>> ---------- Forwarded message ----------
> > > >>> From: Tudor Girba <tudor(a)tudorgirba.com>
> > > >>> Date: Sat, Jan 4, 2014 at 10:39 PM
> > > >>> Subject: Re: [Pharo-dev] Feature for request for GraphET?
> > > >>> To: Pharo Development List <pharo-dev(a)lists.pharo.org>
> > > >>>
> > > >>>
> > > >>> Here is one thing I would want: a correspondent Graph-ET
> > > >>> functionality to make something like this EyeSee script work as
> > > >>> in
> > > >>> the first attached picture.
> > > >>>
> > > >>> renderer := ESDiagramRenderer new.
> > > >>> grouped := { #item1->{10 . 12 . 11 . 14 } . #item2-> { 1 . 1 . 20
> > > >>> }
> > > >>> . #item3->{ 1 . 1 . 1 . 1 . 1} }.
> > > >>> diag := (ESVerticalBarDiagram new)
> > > >>> identifier: [:each | each key ];
> > > >>> y: [:each | each value size];
> > > >>> yAxisLabel: 'Count';
> > > >>> valueAxis;
> > > >>> rightYAxis;
> > > >>> defaultColor: Color veryVeryLightGray;
> > > >>> axisColor: Color veryVeryLightGray;
> > > >>> models: grouped;
> > > >>> rotatedLabels: true;
> > > >>> yourself.
> > > >>> diag2 := (ESVerticalBarDiagram new)
> > > >>> y: [:each | each value sum];
> > > >>> regularAxis;
> > > >>> yAxisLabel: 'Sum';
> > > >>> gapFraction: 2 / 3;
> > > >>> defaultColor: (Color red);
> > > >>> axisColor: (Color red);
> > > >>> models: grouped;
> > > >>> yourself.
> > > >>> (renderer compositeDiagram)
> > > >>> add: diag;
> > > >>> add: diag2.
> > > >>> renderer open
> > > >>>
> > > >>>
> > > >>> <Screenshot 2014-01-04 22.31.57.png>
> > > >>>
> > > >>>
> > > >>> The best I could produce with Graph-ET is this (I commented out
> > > >>> the
> > > >>> message to which I did not find a correspondent):
> > > >>>
> > > >>> builder := GETDiagramBuilder new.
> > > >>> grouped := { #item1->{10 . 12 . 11 . 14 } . #item2-> { 1 . 1 . 20
> > > >>> }
> > > >>> . #item3->{ 1 . 1 . 1 . 1 . 1} }.
> > > >>> diag := (GETVerticalBarDiagram new)
> > > >>> "identifier: [:each | each key ];"
> > > >>> y: [:each | each value size];
> > > >>> yAxisLabel: 'Count';
> > > >>> valueAxisLine;
> > > >>> "rightYAxis;"
> > > >>> color: Color veryLightGray;
> > > >>> "axisColor: Color veryLightGray;"
> > > >>> models: grouped;
> > > >>> "rotatedLabels: true;"
> > > >>> yourself.
> > > >>> diag2 := (GETVerticalBarDiagram new)
> > > >>> y: [:each | each value sum];
> > > >>> regularAxis;
> > > >>> yAxisLabel: 'Sum';
> > > >>> "gapFraction: 2 / 3;"
> > > >>> color: (Color red);
> > > >>> "axisColor: (Color red);"
> > > >>> models: grouped;
> > > >>> yourself.
> > > >>> (builder compositeDiagram)
> > > >>> add: diag;
> > > >>> add: diag2.
> > > >>> builder open
> > > >>>
> > > >>> <Screenshot 2014-01-04 22.36.40.png>
> > > >>>
> > > >>> Cheers,
> > > >>> Doru
>
>
>
> --
> www.tudorgirba.com
>
> "Every thing has its own flow"
>
>
>
> --
> www.tudorgirba.com
>
> "Every thing has its own flow"
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Jan. 15, 2014
[pharo-project/pharo-core]
by GitHub
Branch: refs/tags/30697
Home: https://github.com/pharo-project/pharo-core
Jan. 15, 2014
[pharo-project/pharo-core] 7dfa8a: 30697
by GitHub
Branch: refs/heads/3.0
Home: https://github.com/pharo-project/pharo-core
Commit: 7dfa8ad32781e13ff98f8d972d05772fe8ef2a38
https://github.com/pharo-project/pharo-core/commit/7dfa8ad32781e13ff98f8d97…
Author: Jenkins Build Server <board(a)pharo-project.org>
Date: 2014-01-15 (Wed, 15 Jan 2014)
Changed paths:
R Athens-PangoCairo.package/AthensPangoExternalObject.class/README.md
R Athens-PangoCairo.package/AthensPangoExternalObject.class/definition.st
R Athens-PangoCairo.package/AthensPangoExternalObject.class/instance/initialization/initialize.st
R Athens-PangoCairo.package/AthensPangoExternalObject.class/instance/initialization/resourceData.st
R Athens-PangoCairo.package/AthensPangoFontDescription.class/README.md
R Athens-PangoCairo.package/AthensPangoFontDescription.class/class/as yet unclassified/finalizeResourceData_.st
R Athens-PangoCairo.package/AthensPangoFontDescription.class/class/as yet unclassified/fromString_.st
R Athens-PangoCairo.package/AthensPangoFontDescription.class/definition.st
R Athens-PangoCairo.package/AthensPangoFontDescription.class/instance/accessing/asString.st
R Athens-PangoCairo.package/AthensPangoFontDescription.class/instance/accessing/loadOn_.st
R Athens-PangoCairo.package/AthensPangoFontDescription.class/instance/apply primitives/primIsAbsolute.st
R Athens-PangoCairo.package/AthensPangoFontDescription.class/instance/apply primitives/primToString.st
R Athens-PangoCairo.package/AthensPangoFontDescription.class/instance/testing/isAbsolute.st
R Athens-PangoCairo.package/AthensPangoLayout.class/README.md
R Athens-PangoCairo.package/AthensPangoLayout.class/class/as yet unclassified/finalizeResourceData_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/class/as yet unclassified/newIn_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/definition.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/asString.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/cursorPositionsAtIndex_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/fontDescription.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/indexAt_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/iterator.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/lineAndDeltaXAtIndex_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/lineAt_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/linesPerParagraph_wrappedTo_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/markup_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/maximumHeight_wrappedTo_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/nextCursorPositionFrom_forward_advance_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/numberOfLines.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/pangoScale.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/readOnlyLineAt_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/text_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/text_markup_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/accessing/underlineOn_at_extending_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primClearAttributes.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primErrorUnderlineCurrentPathOf_atX_y_width_height_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primGetCursorPosAt_strong_weak_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primGetFontDescription.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primGetHeight.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primGetIterator.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primGetLineCount.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primGetSizeWidth_height_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primGetText.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primGetWidth.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primIndexToPosition_fill_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primIndex_toLine_x_trailing_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primLayoutPath_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primLayoutX_Y_toIndex_trailing_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primMoveCursorVisuallyStrong_from_trailing_towards_storeNextIn_storeNextTrailingIn_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primSetFontDescription_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primSetHeight_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primSetMarkup_length_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primSetText_size_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primSetWidth_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primShowErrorUnderline_atX_y_width_height_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primShowLayout_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/apply primitives/primUpdateLayout_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/fonts/fontDescriptionString.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/fonts/setFontDescriptionFromString_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/fonts/setFontDescription_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/geometry/ellipsizeHeight.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/geometry/ellipsizeHeight_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/geometry/extent.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/geometry/positionAt_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/geometry/wrapWidth.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/geometry/wrapWidth_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/private/toCString_.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/testing/isEllipsized.st
R Athens-PangoCairo.package/AthensPangoLayout.class/instance/testing/isWrapped.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/README.md
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/definition.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/alignment.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/alignment_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/beJustified.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/ellipsize.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/ellipsize_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/indentation.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/indentation_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/justify.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/justify_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/spacing.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/spacing_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/tabs.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/tabs_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/wrap.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/accessing/wrap_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/drawing/loadOn_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/drawing/readFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primGetAlignmentFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primGetEllipsizeFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primGetIndentFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primGetJustifyFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primGetSpacingFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primGetWrapFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primSetAlignment_on_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primSetEllipsize_on_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primSetIndentOn_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primSetJustifyOn_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primSetSpacingOn_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/primSetWrap_on_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/primitives/setTabsOn_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/private/alignmentValue.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/private/alignmentValueFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/private/ellipsizeValue.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/private/ellipsizeValueFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/private/getTabsFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/private/readTabsFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/private/wrapValue.st
R Athens-PangoCairo.package/AthensPangoLayoutDescription.class/instance/private/wrapValueFrom_.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/README.md
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/class/as yet unclassified/at_in_.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/class/as yet unclassified/finalizeResourceData_.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/definition.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/instance/accessing/extent.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/instance/accessing/getExtents.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/instance/accessing/height.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/instance/apply primitives/primGetExtentsInk_logical_.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/instance/apply primitives/primLayoutPath_.st
R Athens-PangoCairo.package/AthensPangoLayoutLine.class/instance/apply primitives/primShowLayout_.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/README.md
R Athens-PangoCairo.package/AthensPangoRectangle.class/definition.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/accessing/asByteArray.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/accessing/extent.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/accessing/height.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/accessing/origin.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/accessing/pangoScale.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/accessing/width.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/accessing/x.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/accessing/y.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/initialization/initialize.st
R Athens-PangoCairo.package/AthensPangoRectangle.class/instance/initialize-release/readFrom_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/README.md
R Athens-PangoCairo.package/AthensPangoTabs.class/class/as yet unclassified/finalizeResourceData_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/class/as yet unclassified/getFrom_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/class/as yet unclassified/primNewSize_pixels_firstAlignment_firstOffset_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/class/as yet unclassified/tabs_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/definition.st
R Athens-PangoCairo.package/AthensPangoTabs.class/instance/accessing/asArray.st
R Athens-PangoCairo.package/AthensPangoTabs.class/instance/accessing/at_put_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/instance/accessing/loadOn_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/instance/apply primitives/primGetTabStopAt_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/instance/apply primitives/primNumberOfStops.st
R Athens-PangoCairo.package/AthensPangoTabs.class/instance/apply primitives/primSetTab_alignment_location_.st
R Athens-PangoCairo.package/AthensPangoTabs.class/instance/apply primitives/primSetTabsOn_.st
R Athens-PangoCairo.package/AthensPangoText.class/README.md
R Athens-PangoCairo.package/AthensPangoText.class/definition.st
R Athens-PangoCairo.package/AthensPangoText.class/instance/drawing/drawOn_.st
R Athens-PangoCairo.package/AthensPangoText.class/instance/drawing/drawOn_fontColor_.st
R Athens-PangoCairo.package/AthensPangoText.class/instance/drawing/olddrawOn_.st
R Athens-PangoCairo.package/PangoCairoLibraryLoader.class/README.md
R Athens-PangoCairo.package/PangoCairoLibraryLoader.class/class/as yet unclassified/getLibraryHandle.st
R Athens-PangoCairo.package/PangoCairoLibraryLoader.class/class/as yet unclassified/getLibraryPath.st
R Athens-PangoCairo.package/PangoCairoLibraryLoader.class/class/as yet unclassified/loadPangoCairoLibrary.st
R Athens-PangoCairo.package/PangoCairoLibraryLoader.class/definition.st
R Athens-PangoCairo.package/PangoConstants.class/README.md
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initialize.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeAlignment.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeDirection.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeEllipsizeMode.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeFontMask.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeGravity.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeScale.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeStretch.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeStyle.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeVariant.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeWeight.st
R Athens-PangoCairo.package/PangoConstants.class/class/as yet unclassified/initializeWrapMode.st
R Athens-PangoCairo.package/PangoConstants.class/definition.st
R Athens-PangoCairo.package/PangoLibraryLoader.class/README.md
R Athens-PangoCairo.package/PangoLibraryLoader.class/class/as yet unclassified/getLibraryHandle.st
R Athens-PangoCairo.package/PangoLibraryLoader.class/class/as yet unclassified/getLibraryPath.st
R Athens-PangoCairo.package/PangoLibraryLoader.class/class/as yet unclassified/loadPangoLibrary.st
R Athens-PangoCairo.package/PangoLibraryLoader.class/definition.st
R Athens-PangoCairo.package/PangoTypes.class/README.md
R Athens-PangoCairo.package/PangoTypes.class/class/as yet unclassified/initialize.st
R Athens-PangoCairo.package/PangoTypes.class/definition.st
R Athens-PangoCairo.package/TPangoCairoLibrary.class/README.md
R Athens-PangoCairo.package/TPangoCairoLibrary.class/class/as yet unclassified/nbLibraryNameOrHandle.st
R Athens-PangoCairo.package/TPangoCairoLibrary.class/class/as yet unclassified/pangoLibraryNameOrHandle.st
R Athens-PangoCairo.package/TPangoCairoLibrary.class/class/as yet unclassified/pangoNbCall_.st
R Athens-PangoCairo.package/TPangoCairoLibrary.class/definition.st
R Athens-PangoCairo.package/TPangoCairoLibrary.class/instance/initialization/nbLibraryNameOrHandle.st
R Athens-PangoCairo.package/TPangoCairoLibrary.class/instance/initialization/pangoLibraryNameOrHandle.st
R Athens-PangoCairo.package/TPangoCairoLibrary.class/instance/initialization/pangoNbCall_.st
M Nautilus.package/NautilusUI.class/instance/accessing/selectedClassWithoutChangingSelection_.st
A Nautilus.package/NautilusUI.class/instance/tests/selectedPackageIncludes_.st
M RPackage-Core.package/RPackageTag.class/instance/file in%2Fout/fileOut.st
A ScriptLoader30.package/ScriptLoader.class/instance/pharo - scripts/script350.st
A ScriptLoader30.package/ScriptLoader.class/instance/pharo - updates/update30697.st
M ScriptLoader30.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
A System-Support.package/MethodClassifier.class/instance/initialization/buildPrefixDictionary.st
R System-Support.package/MethodClassifier.class/instance/initialize-release/buildPrefixDictionary.st
Log Message:
-----------
30697
12589 Nautilus: Package file-outs are empty
https://pharo.fogbugz.com/f/cases/12589
12625 toggling hierarchy/flat shows wrong package and hides selected class
https://pharo.fogbugz.com/f/cases/12625
12645 Remove Athens-PangoCairo from the image
https://pharo.fogbugz.com/f/cases/12645
12652 MethodClassifier wrong values
https://pharo.fogbugz.com/f/cases/12652
http://files.pharo.org/image/30/30697.zip
Jan. 15, 2014
Re: [Pharo-dev] Strange Versionner behavior
by Christophe Demarey
Le 15 janv. 2014 à 10:54, Christophe Demarey a écrit :
>
> Le 14 janv. 2014 à 20:12, Sean P. DeNigris a écrit :
>
>> - Creating a new configuration adds fileSystemLegacy and fuelMetalevel as
>> dependent projects
>
> answered in a previous mail
>
>> - How do you save changes without committing? After adding a dependent
>> project to the baseline, "Update de" (sic, label cut-off)
>
> It works fine on my laptop. Can you send me a screenshot?
>
>> doesn't seem to do
>> anything.
>
> It should. It is the way to save changes.
> Maybe I should rename the button to "Save Changes" and just keep the "release" and "commit" buttons aside.
>
>> Clicking away from the baseline warns me of losing changes but
>> doesn't offer the opportunity to save.
>> - If I select a project in Versionner, and then click the "New prone"
>> button, the title of the window that pops is the name of the previously
>> selected project, not the newly-created one. Where will the changes actually
>> go? i.e. is it just a labeling error, or am I editing the wrong project?
>
> It looks like a Spec problem. It worked well some days ago.
> I will investigate.
I forgot to answer this one:
>> - I reported before, but Versionner needs a standard repositoryChooser that
>> allows to select from known repos or create a new one from a template ( like
>> MC Browser, but hopefully better ;) )
I planned to do that friday.
I extracted the repository chooser from Komitter to share it with Versionner.
Jan. 15, 2014
Re: [Pharo-dev] Strange Versionner behavior
by Christophe Demarey
Hi Norbert,
Le 15 janv. 2014 à 00:38, Norbert Hartl a écrit :
> Am 14.01.2014 um 20:31 schrieb Sean P. DeNigris <sean(a)clipperadams.com>:
>
>> Sean P. DeNigris wrote
>>> - Creating a new configuration adds fileSystemLegacy and fuelMetalevel as
>>> dependent projects
>>
>> Okay, I see that a baseline and version have been created with sample data.
>> I thought Versionner was in a more usable state⦠I will be patient :)
>
> I was asking myself the same. I used it in 2.0 for months but in 3.0 it doesnât seem to work.
I need user feedback so I will be happy to know what does not work for you.
Regards,
Christophe.
Jan. 15, 2014
Re: [Pharo-dev] Strange Versionner behavior
by Christophe Demarey
Le 14 janv. 2014 à 20:12, Sean P. DeNigris a écrit :
> - Creating a new configuration adds fileSystemLegacy and fuelMetalevel as
> dependent projects
answered in a previous mail
> - How do you save changes without committing? After adding a dependent
> project to the baseline, "Update de" (sic, label cut-off)
It works fine on my laptop. Can you send me a screenshot?
> doesn't seem to do
> anything.
It should. It is the way to save changes.
Maybe I should rename the button to "Save Changes" and just keep the "release" and "commit" buttons aside.
> Clicking away from the baseline warns me of losing changes but
> doesn't offer the opportunity to save.
> - If I select a project in Versionner, and then click the "New prone"
> button, the title of the window that pops is the name of the previously
> selected project, not the newly-created one. Where will the changes actually
> go? i.e. is it just a labeling error, or am I editing the wrong project?
> - I reported before, but Versionner needs a standard repositoryChooser that
> allows to select from known repos or create a new one from a template ( like
> MC Browser, but hopefully better ;) )
It looks like a Spec problem. It worked well some days ago.
I will investigate.
Thanks,
Christophe
Jan. 15, 2014
Re: [Pharo-dev] Senders Changing
by Marcus Denker
On 15 Jan 2014, at 10:16, Sven Van Caekenberghe <sven(a)stfx.eu> wrote:
> Hi,
>
> Has anyone seen this: open a senders list, leave it open like a todo, implement another method somewhere, it appears in the senders list even if it does not matchâ¦
>
Nicolai added this:
https://pharo.fogbugz.com/f/cases/12600/MessageBrowser-senders-of-list-adds…
Jan. 15, 2014
Re: [Pharo-dev] Smalltalk Impact
by Marcus Denker
On 15 Jan 2014, at 09:04, Marcus Denker <marcus.denker(a)inria.fr> wrote:
>>
>>
> Etoys should have contributed to Squeak when they had the resources.
> To secure their own future.
>
> âWe are not payed to work on Squeakâ, that is what I got told⦠in a tone as
> if my questions was the dumbest question one could have asked.
>
>
In hindsight, I think that the more aggressive reaction I got, the more it
was a sign of me actually being right, but I did not understand that back thanâ¦
I just slowly and quietly despaired until I could not even sleep anymore at night.
Marcus
Jan. 15, 2014
Re: [Pharo-dev] Strange Versionner behavior
by Christophe Demarey
Hi Sean,
Le 14 janv. 2014 à 20:31, Sean P. DeNigris a écrit :
> Sean P. DeNigris wrote
>> - Creating a new configuration adds fileSystemLegacy and fuelMetalevel as
>> dependent projects
>
> Okay, I see that a baseline and version have been created with sample data.
It is a side effect of this slice: https://pharo.fogbugz.com/f/cases/10578
It is not related to Versionner.
Metacello ToolBox uses this template to create new configurations.
It is wrong to add examples in this class. I will propose a fix.
> I thought Versionner was in a more usable state⦠I will be patient :)
You and I pay the price that Pharo3.0 evolves fast. Versionner is a high level tool and is dependent on tools with a lot of updates (spec, komitter, metacello, etc).
To focus on Versionner, I do not have a lot of users and I need users to improve it. :)
That said, thank you for being a beta-tester ;)
Cheers,
Christophe.
Jan. 15, 2014