April 21, 2015
Gendoc is a template based technology allowing generation of OpenXML (Word) and Open Document (OpenOffice, LibreOffice) documents from EMF Models/XML using Acceleo language. Gendoc is currently industrially used in several critical systems company (space, avionics).
To start working with Gendoc and Luna please find update site in downloads section : http://www.eclipse.org/gendoc/downloads/download.php
Documentation and tutorials are available here : http://www.eclipse.org/gendoc/documentation/documentation.php
For any information or questions feel free to use links referenced on community section.
April 20, 2015
I typed up a comprehensive guide on SWT Development (Gtk side).
– SWT Develeper Setup.
– Navigating SWT code base.
– Building SO images to run latest master.
– Adding functions to OS.java.
– Compining and testing various Gtk Versions.
– Diagrams for complex workflows and detailed explanations.
Please feel free to post questions & feedback into comments.
To make it simpler for you to follow our blog posts from EclipseSource Munich we will now use a joint blog for all topics related to our work in Munich. This means there will be less posts that appear on my blog since I will post many things on the new Blog. All posts on the new blog are announced on the Twitter Account and Google+ page, see details below:
See you on the new blog!
Leave a Comment. Tagged with emf, modeling, Munich, emf, modeling, Munich
Android development using eclipse has taken a step forward today. The first stable milestone release is ready for you, the user community to kick the tires, and start to use for your development. Full details can be found in the New and Noteworthy section for the release notes.
There is a p2 site for your installation needs, and it is recommended that you not install both Android Developer Tools and Andmore into the same IDE.
Add the above url to your available software sites.
Andmore contains all the functionality and features of Android Developer Tools, plus a lot more. Also, thanks to Ricardo Gladwell for updating the m2e-android plugin to support Andmore. This means that if you are using maven already, you can continue to do so with Andmore to continue developing Android applications and manage your dependencies. The p2 site for maven support is:
So what about Gradel support and the the android gradle plugin? Right now this is targeted for 0.5-M2. There is a lot of stuff that needs to occur in order for this to happen. For one thing, AAR support is necessary. We also need to look into what extension points that the Buildship project will offer. Will Andmore need to provide any extension points to allow Maven and Gradel to have more control over the build process?
Limitations with the current Andmore release:
- No AAR support
- No Gradel support
- Android API 22 has limited support. The only piece that may give you an error message is the GUI Layout editor. If this happens change the API level in the editor from 22 to 21 or lower.
There is plenty to do yet, and the project is very open to contributions from the community. If you would like to help out with any of the remaining work, do not hesitate to fork the repo on Github, and submit a pull request. Andmore will be what the community makes it. Bugs and Feature requests can be opened at:
I’ve already been asked “An IoT breakfast? What’s that!?” – well, think of it as your regular meetup, only we’re doing it in the morning rather than in the late afternoon
The agenda will be as follows:
- What’s new about Eclipse: the IDE and beyond! by Gaël Blondelle, Director of European Ecosystem Development at the Eclipse Foundation.
- Open Source for the Internet of Things by Benjamin Cabé, IoT Evangelist at the Eclipse Foundation
- Testing the IoT. Challenges, Approaches and Tools by Itziar Ormaetxea, SQS TestLab Manager
The event is free but you need to register. We have limited space so please don’t wait. I hope to see you there!
April 17, 2015
As part of our growth at Tasktop, it has been critical that we add in key leaders to sustain and facilitate that growth into the future. I’m thrilled to be talking about the new group of sales leaders we have at Tasktop and feel privileged to be working with this outstanding group. Tasktop now has new sales leaders for Americas West, East, Central as well as a new leader for pre-sales.
Jamie Wetzel has been promoted from an individual contributor role to lead Americas West. I think I am most proud of this as I love when we promote from within. Now in his 5th year with the company, Jamie has proven throughout his years at Tasktop that he’s been management material by embodying our culture and frankly being a leader before ever being given the title. I think Jamie has single-handedly attempted to enable every person who comes to Tasktop, and I am glad that we are able to reward Jamie with this promotion. Truth be told, I think the company is getting the larger reward.
We recently hired John Kapral to lead our Americas East and Central regions. I love Kap’s experience, having started his career in inside sales and working his way up into sales management in a diverse enterprise software career that has spanned such stalwarts (and in some cases Tasktop partners) as Splunk, CA, Symantec, BMC and CSC. In just over 2 quarters at Tasktop, I am already finding that I am relying on Kap’s experience and expertise with sales management and can see marked improvements in Tasktop’s Go to Market process and sales execution.
I am also thrilled that this past summer, we hired Maury Cupitt to lead our pre-sales engineers. Maury has been involved with pre-sales engineering for much of his career, which included working for Netscape, AvantGo, Wily, CA, and Blue Stripe. One of my favorite things about Maury is that he has brought back and instituted the ALM Architecture diagrams to be part of our pre-sales and post-sales processes – something that was so critical in our early days, helping us plot and flow our customers’ ALM tools and the information that needed to be passed between them.
Lance Knight has been given the tremendous responsibility of managing our post-sales activities as VP of Customer Success. His team is responsible for getting our customers deployed, delivering product-related services for customers, providing post-sales support, conducting customer health checks, teaching our customers through our extremely well-reviewed training courses, and driving our knowledge management assets. Like everything Lance touches, he has embraced the role of Customer Success. Lance likes to remind us that his job title is a bit of a misnomer since we all are responsible for Customer Success. Regardless, I feel very fortunate to have Lance leading this team as Tasktop continues to grow.
Yes, we have great innovative products. But working for a company is about the people. And I am proud to be working at Tasktop because we have an outstanding staff of intelligent, hardworking, self-motivated team members who love to win. If you read this and are excited by what you are hearing and are interested in exploring career options at Tasktop, check out our careers pages or contact us.
Gradleware decided to implement their own tooling solution for building project within the Eclipse IDE and the Buildship project was born.
Since march there are currently 123 commits on the master branch of the GitHub project, which can be found here: https://github.com/eclipse/buildship
We from the vogella company will be working together with Gradleware and hopefully many other contributors as well.
Therefore we started a new tutorial concerning the Buildship project, which will be constantly updated, when new features will be available. See http://www.vogella.com/tutorials/EclipseGradle/article.html
Detailed information can also be found on GitHub: https://github.com/eclipse/buildship
Here is a little impression for you:
As I already “println” in the build script, please help us by contributing to the Buildship project. So make your hands dirty, read the tutorial and give the Buildship project a try.
I’d also like to quote Wayne Beaton (Blog entry concerning Buildship):
Great Fixes for Buildship will qualify for the Great Fixes for Mars Skills Competition!
JBoss Tools Integration Stack - Luna integration tooling for BRMS/BPMS, Data Virt, SOA 5.x + Early Access Fuse and SwitchYard
The Luna tooling train continues! - Adding JBoss Business Process and Rules development tooling to JBoss Data Virtualization and the SOA 5.x suite plus updates to the early access components.
JBoss Tools Integration Stack 4.2.1.Final / JBoss Developer Studio Integration Stack 8.0.1.GA
The Integration Stack for JBoss Tools Developer Studio is a set of plugins for Eclipse that provides integration tooling for the following frameworks.
BPEL Designer - Orchestrating your business processes.
BPMN2 Modeler - A graphical modeling tool which allows creation and editing of Business Process Modeling Notation diagrams using graphiti.
Drools - A Business Logic integration Platform which provides a unified and integrated platform for Rules, Workflow and Event Processing.
jBPM - A flexible Business Process Management (BPM) suite.
Modeshape - A distributed, hierarchical, transactional and consistent data store with support for queries, full-text search, events, versioning, references, and flexible and dynamic schemas. It is very fast, highly available, extremely scalable, and it is 100% open source.
Teiid Designer - A visual tool that enables rapid, model-driven definition, integration, management and testing of data services without programming using the Teiid runtime framework.
Note - the SOA Development tooling category has both released and early access components. Consequently, you will see it in both the release install dialog and the early access install dialog.
All of the Business Process and Rules Development plugins, plus…
Fuse Apache Camel Tooling - A graphical tool for integrating software components that works with Apache ServiceMix, Apache ActiveMQ, Apache Camel and the FuseSource distributions.
SwitchYard - A lightweight service delivery framework providing full lifecycle support for developing, deploying, and managing service-oriented applications.
All of these components have been verified to work with the same dependencies as JBoss Tools 4.2 and Developer Studio 8.
Updates have been made to the Business Process tooling (BPMN2 Modeler), Fuse Tooling and SwitchYard. See the JBDSIS 8.0.1 Release Notes
FUSETOOLS-1285: Broken parsing and missing configuration of exchange pattern for ToDefiniton endpoint
FUSETOOLS-1271: adding component connectors via context menu broken
FUSETOOLS-1269: Node Context Menu>Add option does not include the Components drawer items
FUSETOOLS-1268: Cannot view or edit file node in Properties editor after dragging a Filesystem component onto the canvas
FUSETOOLS-1267: Properties editor for File endpoint converts relative paths to absolute paths so files are not read
FUSETOOLS-1264: JMX Node in servers view doesn’t work if server has secured JMX access via credentials
FUSETOOLS-1261: Move connection between components cause problem
FUSETOOLS-1260: Cannot run Fuse server with alternate JRE
FUSETOOLS-1250: The IDE slows down when a fuse project is deployed
FUSETOOLS-1248: Debugger step over resets changed variable value and continues along original path
FUSETOOLS-1246: New Server Wizard bug with JMX Bundles plugin only
FUSETOOLS-1218: Cryptic error message displayed when trying to connect to Fuse 6.2 server
FUSETOOLS-1214: Run Configurations dialog shows launch config types for server adapters for Karaf, SMX, Fuse and Fabric8 which partially don’t work
FUSETOOLS-1211: Adding another route to a Fuse Project doesn’t work properly
FUSETOOLS-1173: Servers have too many jars on launching classpath
FUSETOOLS-1158: fix ugly title when debugging
FUSETOOLS-1148: Exception when browsing a BrokerNode in JMX View
FUSETOOLS-1138: NPE in karaf server core support after removing a deployed project
FUSETOOLS-1123: context id is removed on save
FUSETOOLS-1100: New Fuse project does not have properly set-up build-path
FUSETOOLS-1085: An endpoint is lost after saving
FUSETOOLS-1076: New Server Runtime Wizard - Finish button error
Also see Lars Heinemann’s Blog for more Fuse Tooling insights.
SWITCHYARD-2591: Cannot set options for SwitchYard Service Task in BPMN2 editor
SWITCHYARD-2518: Cannot remove output/fault type from ESB interface
SWITCHYARD-2515: [Eclipse] Deadlock in UI, eclipse frozen
SWITCHYARD-2514: Deployment issues with JBoss Tools 4.2.2.Final
SWITCHYARD-2508: New SwitchYard Project - update values
SWITCHYARD-2502: Various icons when deploying a project
SWITCHYARD-2501: Cannot edit delay between polls in camel-rss-binding
SWITCHYARD-2491: Cannot set java operation selector using browse button
SWITCHYARD-2436: Unable to change SwitchYard project settings in property sheet
SWITCHYARD-2424: Debugger does not work on Luna (JBDS 8)
SWITCHYARD-2296: WSDL import not recognised when selecting contract interface in SY tooling
SWITCHYARD-2273: Cannot deploy switchyard project to Fuse server from IDE
SWITCHYARD-1869: Editor doesn’t check if defined classes exist
Don’t miss the Features tab for up to date information on your favorite Integration Stack components.
Simply start jbdevstudio or eclipse-with-jbds, then:
Select Help > Check for Updates
Select the components you’d like to install from the available updates.
To install the Integration Stack tools, first install JBoss Developer Studio from the all-in-one installer, bundled and configured out of the box with everything you need to get started. Alternatively, if you already have eclipse-jee-luna installed, you can install JBoss Developer Studio or JBoss Tools from the Eclipse Marketplace via Help > Eclipse Marketplace…
Once Developer Studio is installed, restart Eclipse and select the Software/Update tab in the JBoss Central view. The current 8.0.1.GA integration stack is available automatically with the released JBoss Data Virtualization Development tooling. The remainder of the integration tooling is available as Early Access so you must check the Enable Early Access checkbox in the installer window in order to install.
The standard p2 installer is available for JBoss Developer Studio Integration Stack. Simply start jbdevstudio or eclipse-with-jbds, then:
Help > Install New Software... Add... - use this for &aposLocation:&apos for the production integration stack: https://devstudio.redhat.com/updates/8.0/integration-stack/ - use this for &aposLocation:&apos for the early-access-components integration stack: https://devstudio.redhat.com/updates/8.0/integration-stack/earlyaccess/
The community JBoss Tools Integration Stack installation is easy as well. If you already have eclipse-jee-luna installed, install JBoss Tools from the Eclipse Marketplace via Help > Eclipse Marketplace…
Once JBoss Tools is installed, restart Eclipse and select the Software/Update tab in the JBoss Central view. The current 4.2.1.Final integration stack is available automatically with the released tooling. In a manner similar to devstudio, the remainder of the integration tooling is available as "Early Access" so you must check the "Enable Early Access" checkbox in the installer window in order to install.
Select the items you’d like to install:
The standard p2 installer is available for JBoss Tools Integration Stack. Simply start eclipse-with-jbt, then:
Help > Install New Software... Add... - use this for &aposLocation:&apos for the released-components integration stack: https://devstudio.redhat.com/updates/8.0/integration-stack/ - use this for &aposLocation:&apos for the early access integration stack: https://devstudio.redhat.com/updates/8.0/integration-stack/earlyaccess/
Note: If you installed into your own Eclipse you should bump up the launch resource parameters:
--launcher.XXMaxPermSize 256m --launcher.appendVmargs -vmargs -Dosgi.requiredJavaVersion=1.6 -XX:MaxPermSize=256m -Xms512m -Xmx1024m
Give it a try!
April 16, 2015
At EclipseCon 2015, I spoke with Alex Blewitt from InfoQ, and gave an update on the cool stuff happening at Eclipse IoT. It is hard to believe that it is only two years since my last interview with Alex – so many new projects and companies involved today!
Check out the interview here.
Release Candidate 2 is available for smoke testing. This is mainly some spit and polish to remove the Andmore name from the menus and views, and replace them with more generic labels where it makes sense.
Just add the above to your Install Software, and select the Andmore features to install. Note that if you have existing ADT projects that you want to work with Andmore, you will need to Configure those to work with the new tooling. To do so select a project, Configure->Convert ADT project.
If no new big show stoppers are reported by next week, we will do a formal 0.5-M1 announcement with complete change log.
April 15, 2015
Wiki’s and Readme files are the most common ways to document a build. While documenting a build is better than not documenting it, Wikis and Readme files have two flaws when used to describe a process: 1) they require humans to read them, and 2) they evolve.
Of course the fact that Wikis evolve is often seen as their biggest strength. However, when trying to reproduce an out-of-date process, up-to-date Wikis are of little help. For example, building J2V8 first requires V8 binaries, and not just any version of V8 either. J2V8 requires V8 version 3.26. Building V8 has changed significantly since 3.26 and the documentation has evolved over time. Finding an accurate set of build instructions — and all the dependencies for V8 3.26 – is a challenge even Stack Overflow can’t help with. Sometimes the documentation was tagged with the release, but setting up a system as it was last year is no easy task. Luckily when we first started this, we recorded the V8 build instructions as a Dockerfile.
By recording a build as a Dockerfile anyone can build your software with a single command. By checking the Dockerfile into your git repository, the build steps for a particular version can be archived forever.
A Dockerfile not only describes the build steps, but also describes the system image required to build the software. This includes toolchain & their versions, libraries, environment variables and even the disk layout.
To experiment with this, clone the J2v8 repository from github and execute docker build from within the v8build directory:
% git clone https://github.com/eclipsesource/J2V8.git % docker build --rm=true --no-cache -t "eclipsesource/v8-build" .
To make this even easier, the docker build was wrapped in a script that also copies the artifacts from the docker container once the build is completed using the docker cp command:
% docker cp v8build:/data/v8_3_26/out .
The J2V8 Dockerfile
Let’s review the Dockerfile:
FROM ubuntu:14.04 MAINTAINER EclipseSource
The first line instructs Docker to use Ubuntu:14.04. While V8 may build fine on newer versions of Ubuntu, the key to these instructions is reproducibility, and we’ve done our testing on Ubuntu 14.04. Unless an explicit decision has been made to upgrade the OS, we will stick with this — feature for feature, bug for bug.
# update and upgrade RUN apt-get update && apt-get upgrade -y && apt-get clean # install standard toolset RUN apt-get install -q -y git subversion make gcc bzip2 python g++ libc6-dev-i386 g++-multilib openjdk-7-jdk
A set of system dependencies are then installed — this includes svn (V8 now uses git, but we are building from their historic repo using their old SVN tags). The -y is used so the system doesn’t prompt us during the build.
ADD http://dl.google.com/android/ndk/android-ndk-r10d-linux-x86_64.bin ./ RUN chmod a+x android-ndk-r10d-linux-x86_64.bin RUN ./android-ndk-r10d-linux-x86_64.bin ENV ANDROID_NDK_ROOT /android-ndk-r10d
The Android NDK is then fetched, extracted and an environment variable is set.
RUN mkdir /data RUN cd /data && svn checkout http://v8.googlecode.com/svn/branches/3.26 v8_3_26 ENV CCFLAGS -fPIC ENV CXXFLAGS -fPIC
The build directory is created and V8 3.26 is cloned. A few GCC flags are then set as environment variables.
# Build RUN cd /data/v8_3_26 && make dependencies RUN cd /data/v8_3_26 && make native i18nsupport=off RUN cd /data/v8_3_26 && make android_arm.release i18nsupport=off RUN cd /data/v8_3_26 && make android_ia32.release i18nsupport=off
Finally the build is performed. Newer versions of V8 don’t use this approach as a new build tool is now used. However, 3.26 built the dependencies as part of make dependencies target. This build will result in linux bits as well as Android ARM and Android x86.
Go ahead and give it a try. You can even build this on MacOS or Windows by first installing boot2docker. If you run the v8Build.sh script, the results will be copied from the container afterwards. Next I’ll document how I do the J2V8 build.
5 Comments. Tagged with docker, j2v8, v8, docker, j2v8, v8
The number of pushes increased from those recorded in the previous month with a total of 10943.
- 10943 pushes
- 353 pushes/day (average)
- Highest number of pushes/day: 579 pushes on Mar 11, 2015
- 23.18 pushes/hour (highest average)
- Try keeps on having around 49% of all the pushes
- The three integration repositories (fx-team, mozilla-inbound and b2g-inbound) account around 26% of all the pushes.
- August 2014 was the month with most pushes (13090 pushes)
- August 2014 had the highest pushes/day average with 422 pushes/day
- July 2014 had the highest average of "pushes-per-hour" with 23.51 pushes/hour
- October 8, 2014 had the highest number of pushes in one day with 715 pushes
The main highlights for this release are: Nim, Go and Jinja2 are now supported.
Multi-page editors (such as the plugins manifest editor) now also have multiple cursors and vertical indent guides support.
From this release onwards, besides providing standalone binaries and a downloadable update site, LiClipse provides an actual online update site: http://update.liclipse.com/latest -- note that I still recommend users to use the standalone as it's easier to get started and it also provides updates to the underlying eclipse SDK, but the update site is now available if you have a working Eclipse version which you don't want to change.
This was also the first time where I transferred some technology from LiClipse to Eclipse (to make improvements so that the trees in the dark theme in Eclipse on Windows actually have arrows you can work with: https://bugs.eclipse.org/bugs/show_bug.cgi?id=434201 -- and hopefully I'll still be able to make time to integrate another one to improve the selections on trees/tables for the next Eclipse release: https://bugs.eclipse.org/bugs/show_bug.cgi?id=434309).
Today we will present how diagrams can be refined to display information using interpolated colors.
Diagrams with meaningful colors
In your Viewpoint Specification Model (VSM), the specifier is not limited to use the provided colors but can define a palette with custom colors. A color can be defined using a RGB code (Red/Green/Blue).
However, using this new color in a mapping will paint every mapping candidates to this color. As our goal is giving colors a meaning, it needs to be defined by an expression. Sirius provides two solutions:
Computed Colors and
Note that RGB codes are defined with three integer values between 0 and 255. If the value is over 255, Sirius will use it as a 255 value.
Diagrams with computed colors
On this sample the color is computed depending on the depth of the package to represent. As this information is far from a RGB value transposition, the expressions are unfortunately not really natural to write. The
Interpolated Colors will offer a more natural conversion.
Diagrams with interpolated colors
Interpolated Color is defined by an expression and several
Color Steps. The expression should return an integer value. Here is an example where the expression calculate the depth of the current element using the ancestors() service.
Color Step is the association of a color and an integer value. Note that the color selection is not limited by the provided color, but can also be a custom color. In this sample, the selected colors are
Depending on the return value of the expression, a color will be created between the defined
Color Steps. As close the return value is of a
Color Step, as close the result color will be to this
On the previous example, the interpolated was used in order to display EPackage element with a graduation of color depending on the depth because both steps where different tint of a similar color. Of course, the
Color Steps can be of different colors and the number of steps is not limited.
On the next example, we want to present the EPackage again but this time the yellow color graduation will depend on the number of contained EClasses. Moreover, we decide that for future refactoring/cleaning purpose, the empty EPackage should be white. Furthermore, the recommended EPackage size is between one and eight EClasses and should be displayed yellow with a tint darker the more contained EClasses there are. Twelve or more EClasses is seen as too many and should be displayed as red. To represent this as an
Interpolated Color we have:
- An expression computing the contained Eclasses number:
- A first color step defined as white for value 0;
- A second color step defined as light yellow for value 1;
- A third color step defined as dark yellow for value 8;
- A fourth color step defined as red for value 12.
On this sample:
- p1121 and p1123 are empty and displayed as white;
- p112 has 1 EClass and is displayed as light yellow;
- p1 has 3 EClasses and is displayed as a slightly darker yellow;
- p111 has 8 EClasses and is displayed as dark yellow;
- p1122 has 10 EClasses and is displayed some kind of orange/brown as a result of beeing a mix of dark yellow and red;
- p12 has 16 EClasses and is displayed as red.
Interpolated colors are an easy way to display meaningful information and an alternative from text display. Furthermore it can produce beautiful diagrams using nice colors that can be created using simple tools like www.colourlovers.com or colourco.de.
The sample code from this example is available on github: https://github.com/mbats/sirius-blog/tree/master/interpolated-colors
April 14, 2015
Last week I gave a presentation at Devoxx and shared the floor with my esteemed colleague Wayne Beaton. While he covered some of the very cool feature being baked into the Eclipse IDE for the upcoming Mars release, I did talk about the Eclipse IoT technology portfolio, in particular what is available for Java Developers.
Check out the slides below, and expect the video recording to be made available shortly on Parleys, too.
April 13, 2015
You can edit Markdown, along with other types of wiki markup, directly in Eclipse. Here’s a screenshot of the Markdown editor in action:
Note the “Preview” tab which will show you what the page looks when rendered.
This support is provided by the Mylyn Docs project’s WikiText component. You can also edit Confluence, MediaWiki, Textile, TracWiki, and TWiki formats. There’s a patch in the works to add AsciiDoc support as well.
WikiText is included in the Eclipse IDE for Java Developers and other packages.
The collaborative modeling initiative is a joint effort in providing a high-quality, open-source tool that supports efficient collaboration and teamwork on EMF-based and Papyrus UML models. To achieve this we will leverage model comparison as well as merge functionality based on EMF Compare and distributed model versioning support based on EGit.
Important questions in this regard are, of course, how does a simple workflow of collaborative modeling look and how does it work in the actual tools? We try to answer these questions in a video tutorial including explanations of basic git concepts that are important for the workflow.
Leave a Comment. Tagged with egit, emf, EMF Compare, Papyrus, egit, emf, EMF Compare, Papyrus