moose meeting at esug
by Tudor Girba
Hi,
I would like to have a meeting with the people that are interested in Moose and are present at ESUG. I propose to have it on Tuesday, at 6:30.
Would anyone else be interested?
Cheers,
Doru
--
www.tudorgirba.com
www.feenk.com
"It's not how it is, it is how we see it."
6 years, 7 months
Analyzing Android app?
by Alexandre Bergel
Hi!
Just wondering, did anyone tried to use the VerveineJ or jdt2Famix on android app?
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
6 years, 7 months
GTPlayground/Inspector print it
by Peter Uhnák
Hi,
does the print-it option always use only asString (or whatever it actually
uses), or can it be modified in some way?
I would like to modify it a bit, because for big numbers the default one is
not easy to read, e.g.
instead, I would like to see this
It gives much better idea of the scale of the number.
Can such thing be modified?
Thanks,
Peter
6 years, 7 months
Fwd: hooking into GTInspector tags
by Peter Uhnák
---------- Forwarded message ----------
From: Peter Uhnak <i.uhnak(a)gmail.com>
Date: Sat, Aug 13, 2016 at 5:29 PM
Subject: hooking into GTInspector tags
To: Pharo-Users List <pharo-users(a)lists.pharo.org>
Hi,
how can one hook into the GTInspector tags that can be filtered?
Apparently I can assign a presentation to a tag with `<gtInspectorTag:
#examples>`,
however this works only if the tag name was already added.
As this was done in GTInspector>>initialize, it makes the whole filtering
idea quite useless (unless I explicitly initialize GTInspector, which is
not the natural approach).
Can't it just collect all the tags from the current presentations?
Or can I somehow access the GTInspector instance from the `composite`
argument?
Thanks,
Peter
6 years, 7 months
[ANN] Release of Agile Visualization
by Alexandre Bergel
Dear Colleagues and Friends,
It is a great pleasure to announce the release of Agile Visualization. Agile Visualization is a book about the Roassal Visualization engine.
Paperback, eBook (PDF), and a free HTML format chapters are available from http://AgileVisualization.com
The book has 235 pages and covers the essential aspects of Roassal. Copies of the book will be sold at ESUG’16.
Screenshots and codes contained in the book were produced on Pharo. However, most of the covered code and topics _equally_run on VisualWorks (from version 7.4 (!)).
We would like to thank all the contributors and users of Roassal who have deeply impacted and shaped Agile Visualization. The book is dedicated to the Smalltalk community at large. Big big thanks to our sponsors, Lam Research, Object Profile, and ESUG.
And thanks to you for being as you are and making Smalltalk such a great platform.
Thanks
Alexandre
6 years, 7 months
Re: Moose-dev Digest, Vol 120, Issue 10
by Meinert Schwartau
Hi Tudor,
>
> Very interesting. This is the first time I heard of lombok, and I would
> have to look into it more closely. What I find strange is that you get to
> visit the method (this is where you get the unresolved method declaration
> from) even if the method does not exist. I am sure I do not understand
> something. Would you like to open an issue for this?
>
>
Actually the lombok issue resolved itself. I found out that lombok provides
a delombok functionality (https://projectlombok.org/features/delombok.html
):
"Delombok [...] allows you to use lombok with these tools by preprocessing
your java code into java code with all of lombok's transformations already
applied. [...] Delombok's standard mode of operation is that it copies an
entire directory into another directory, recursively, skipping class files,
and applying lombok transformations to any java source files it encounters."
So I just have analyse my delomboked source files instead of the original
source files and everything will be fine.
> > The cause of the next problem is that we have multiple smaller
> applications (e.g. backoffice and frontend) which are separate applications
> but share a common db. Some of these services have classes with the same
> class and packagename (e.g. an annotation WebController). This lead to the
> following error message:
> > unresolved annotation type declaration - WebController -
> c:\data\moose\....\WebController.java - line 12
> > I had to start the debugger to find the issue. I found it because
> AnnotationTypeDeclaration.parent.problems = "Pb(323) The type
> WebController is already defined"
> > If the package names are different the problems disappears. Then I only
> get the the lombok errors. As a solution I will create unique base package
> names for my projecfs (which makes sense anyway).
>
> Indeed. The only other solution for this problem is to analyze each
> sub-project separately. Also, perhaps I can manage to create a better log
> statement for this case. Would you like to open an issue on github for this?
>
>
> > Note that you could the following example to you README of jdt2famix to
> show how to download the dependencies for gradle projects:
> >
> > task copyDependencies(type: Copy) {
> > from configurations.compile
> > from configurations.testCompile
> > into 'dependencies’
> > }
>
> Thanks!
>
> Could you also tell me how to actually add this to a gradle script and
> invoke it? I tried a variation of this (without
> configurations.testCompile), but I did not manage to run it. I am likely
> missing something basic here, and perhaps if you would walk me through a
> concrete example, I could make some progress :). For example, what steps
> would you use for downloading the dependencies of
> https://github.com/spring-projects/spring-framework ?
>
> Cheers,
> Doru
>
>
Actually I tested it with the spring gradle file and it worked. The spring
build file is a little bit more complicated, because it is a multimodule
project. Basically an easy way to find the right place is to define it
directly after the dependencies of the java projects. I added it as follows
to the configure (allprojects) section:
configure(allprojects) { project ->
group = "org.springframework"
version = qualifyVersionIfNecessary(version)
// ....
task copyDependencies(type: Copy) {
from configurations.compile
into 'dependencies'
}
}
If you have a simple project (not a multi module one), there won't exist
such a configure method. Then you can define it directly (e.g. after the
dependencies). I attached my spring gradle build file to this mail. In my
company project, which is a multi module project too, I added it to a
configure method which is used for all java projects (we have some non java
projects too). If I added to a configure method which is called for all
projects due to the non java projects I would get an error. So it seems as
if you always have to change you build files and as if there doesn't exist
a general solution (like there exists one for maven). But I'm not a gradle
expert, so there might exist a better solution.
Best regards
Meinert
6 years, 7 months
[ann] moose 6.0
by Tudor Girba
Hello everyone,
We are happy to announce version 6.0 of the Moose Suite, the platform for software and data analysis built in Pharo:
http://moosetechnology.org/#install
Description
---
The key highlights are:
- It is based on Pharo 5.0 including the latest version of the Glamorous Toolkit.
- It includes the SmaCC parsing framework together with parsers and abstract syntax trees for Java, JavaScript and Swift.
- Roassal2 comes with several enhancements.
- Famix features a new and generic query API engine.
- Moose Finder and GTInspector come with more custom presentations and visualizations.
- SmaCC comes with a dedicated debugger.
- The debuggers for Glamour, PetitParser and Announcements received a new update.
- DeepTraverser is an order of magnitude faster.
Extra highlights:
- Roassal2 is documented in a brand new book: http://agilevisualization.com
- jdt2famix is a new open-source importer for Java: https://github.com/girba/jdt2famix
Installation
---
The Moose Suite 6.0 comes for each platform as a separate bundle:
- For Mac: http://moosetechnology.org/res/download/moose_suite_6_0-mac.zip
- For Windows: http://moosetechnology.org/res/download/moose_suite_6_0-win.zip
- For Linux: http://moosetechnology.org/res/download/moose_suite_6_0-linux.zip
The Moose Suite 6.0 can also be loaded in a Pharo 5.0 image either from the Configuration Browser, or by executing the following script:
Metacello new
smalltalkhubUser: 'Moose' project: 'Moose';
configuration: 'Moose';
version: #stable;
load.
Enjoy,
The Moose team
6 years, 7 months