Bug 75981 is fixed!

February 05, 2016 11:00 PM

Like many of my Eclipse stories, it starts during a coffee break.

  • Have you seen the new TODO template I have configured for our project?

  • Yes. It is nice…​

2016-02-06_todo-template-old

  • But I hate having to set the date manually.

  • I know but it is not possible with Eclipse.

  • …​

A quick search on Google pointed me to Bug 75981. I was not the only one looking for a solution to this issue:

By analyzing the Bugzilla history I have noticed that already 2 contributors have started to work on this (a long time ago) and the feedback to the latest patch never got any answers. I reworked the last proposal…​ and…​

I am happy tell you that you can now do the following:

2016-02-06_templates-preferences

Short description of the possibilities:

  • As before you can use the date variable with no argument. Example: ${date}

  • You can use the variable with additional arguments. In this case you will need to name the variable (since you are not reusing the date somewhere else, the name of the variable doesn’t matter). Example: ${mydate:date}

    • The first parameter is the date format. Example: ${d:date('yyyy-MM-dd')}

    • The second parameter is the locale. Example: ${maDate:date('EEEE dd MMMM yyyy HH:mm:ss Z', 'fr')}

Back to our use case, it now works as expected:

2016-02-06_todo-template-new

Do not hesitate to try the feature and to report any issue you can find. The fix is implemented with the M5 milestone release of Eclipse Neon. You can download this version now here:

This experiment was also a great opportunity for me to measure how the development process at Eclipse has been improved:

  • With Eclipse Oomph (a.k.a Eclipse Installer) it is possible setup the Workspace to work on "Platform Text" very quickly

  • With Gerrit it is much easier for me (a simple contributor) to work with the commiters of the project (propose a patch, discuss each line, push a new version, rebase on top of HEAD…​)

  • With the Maven Build, the build is reproducible (I never tried to build the platform with the old PDE Build, but I believe that this was not possible for somebody like me)

Where I spend most of the time:

  • Analysis of the proposed patches and existing feedbacks in Bugzilla

  • Figure out how I could add some unit tests (for the existing behaviour and for the new use cases).

This was a great experience for me and I am really happy to have contributed this fix.


February 05, 2016 11:00 PM

Presentation: Developing Cloud-native Applications with the Spring Tool Suite

by Kris De Volder, Martin Lippert at February 04, 2016 10:30 PM

Kris De Volder and Martin Lippert show how to work effectively with Spring projects in Eclipse and the Spring Tool Suite (STS). They demo all the latest enhancements in the tools including features like much smarter property file editing, as well as new features in the Eclipse 4.5 (Mars) platform.

By Kris De Volder, Martin Lippert

by Kris De Volder, Martin Lippert at February 04, 2016 10:30 PM

New in the RAP Incubator: Charts with d3 and nvd3

by Ralf Sternberg at February 04, 2016 11:57 AM

Some time ago we’ve created a draft for a Chart widget for RAP, based on the famous D3.js. Together with one of our partners, we decided to carry this work forward and make it available in the RAP Incubator.

Charts Examples

D3 is a very flexible framework to turn data into dynamic charts. Looking at their examples, it’s amazing how many different types of charts there are. Whatever diagram you can think of, it can probably be done with d3.

Such great freedom comes at the price of some complexity. When all you need is a simple bar chart with two axis, you may not want to dive into the theory of scales, domains, layouts, and selections first. D3 offers a lot of tools, but no ready-to-use chart types. Happily, there are charting libraries built on top of d3. In fact, there are dozens of them.

We’ve decided to implement some basic chart widgets for the most common chart types based on nvd3, a library that provides good-looking charts for most of the common needs. Currently, there is a PieChart, a BarChart, and a LineChart widget with a basic set of properties, that is going to be extended. But we also kept the base classes, Chart and NvChart extensible to allow you to implement your own chart widgets for other d3 or nvd3 chart types with very little effort.

On the application side, creating a simple bar chart is fairly simple:

BarChart barChart = new BarChart( parent, SWT.NONE );
barChart.setItems(
  new BarItem( 759.3, "Chrome", blue ),
  new BarItem( 633.5, "Firefox", orange ),
  new BarItem( 384.6, "Edge", green )
);

To keep things lightweight, the Items are just data objects, not widgets. Colors can be specified as RGB objects. Since it’s in incubation, the API may still change slightly while we (and you) gather more insight.

The widget is now available in the RAP Incubator, it works with RAP 3.0 and 3.1. We hope you like it and we’re happy to hear what you think.


TwitterGoogle+LinkedInFacebook

Leave a Comment. Tagged with eclipse, incubator, new and noteworthy, rap, eclipse, incubator, new and noteworthy, rap


by Ralf Sternberg at February 04, 2016 11:57 AM

Eclipse Community Awards | Vote for a Deserving Project or Individual

February 03, 2016 09:32 AM

The Eclipse Community Awards voting deadline is Monday, February 8. Vote now!

February 03, 2016 09:32 AM

Beta2 for Eclipse Mars.2

by akazakov at February 02, 2016 04:51 PM

The second Beta of JBoss Tools 4.3.1 and JBoss Developer Studio 9.1.0 for our maintenance Mars release is available.

jbosstools jbdevstudio blog header
Remember that since JBoss Tools 4.3.0 we require Java 8 for installing and using of JBoss Tools. We still support developing and running applications using older Java runtimes. See more in Beta1 blog.

What is New?

Full info is at this page. Some highlights are below.

Eclipse Mars.2

JBoss Tools and JBoss Developer Studio are now targeting the latest Eclipse Mars.2 as a running platform with many issues fixed comparing to the previous Mars.1 release.

OpenShift 3

More than 60 issues targeting OpenShift 3 support have been fixed in this release. The OpenShift 3 integration was introduced as a technology preview feature in JBDS 9.0.0.GA but will graduate to a supported feature in the upcoming JBDS 9.1.0.GA release.

Incremental publishing

The OpenShift 3 server adapter now respects the auto-publish settings as declared in the server editor, giving the user the option to automatically publish on workspace changes, build events, or only when the user requests it. The server adapter is also able to incrementally deploy the server’s associated project with a quick call to rsync, ensuring minimal over-the-wire transfers and a fast turnaround for testing your project.

Support for Java EE projects

Experimental support for Java EE projects (Web and EAR) is now available. When the workspace project associated with the OpenShift 3 server is a Dynamic or Enterprise Application project, the server adapter builds an exploded version of the archive to a temporary local directory and replaces the version deployed on the remote OpenShift pod. That Pod Deployment Path, is now inferred automatically from the image stream tags on the remote Pod. A .dodeploy marker file is created for the remote server to redeploy the module if necessary (for EAP/WildFly servers supporting it).

Support for LiveReload

The new tooling includes LiveReload support for OpenShift 3 server adapters. This is accessible from the Show In > Web Browser via LiveReload Server menu. When a file is published to the server adapter, the Browser connected to the LiveReload server instance will automatically refresh.

openshift3-livereload-menu

This is particularly effective in conjunction with the Auto Publish mode for the OpenShift 3 server adapters, as all it takes to reload a web resource is saving the file under edition (Ctrl+S, or Cmd+S on Mac).

Simplified OpenShift Explorer view

Previously, the OpenShift 3 resources representation exposed a large amount of unnecessary information about OpenShift. The explorer view is now simplified and specific (and made much more robust) and focuses on an application-centric view.

simplified-openshift3-view

Everything that is no longer displayed directly under the OpenShift Explorer is accessible in the Properties view.

Red Hat Container Development Kit server adapter

The Red Hat Container Development Kit (CDK) server adapter now provides menus to quickly access the Docker Explorer and the OpenShift Explorer. Right-click on a running CDK server adapter and select an option in the Show In menu:

cdk-server-show-in-menus

Forge Tools

Forge Runtime updated to 3.0.0.Beta3

The included Forge runtime is now 3.0.0.Beta3. Read the official announcement here.

Stack support

Forge now supports choosing a technology stack when creating a project:

stack-new-project

In addition to setting up your project, choosing a stack automatically hides some input fields in the existing wizards, such as the JPA Version in the JPA: Setup wizard:

What is Next

We are approaching the final release for our first maintenance update for Eclipse Mars.2. It’s time to polish things up and prepare a release candidate.

Enjoy!

Alexey Kazakov


by akazakov at February 02, 2016 04:51 PM

EclipseCon France 2016 | Call for Papers

February 02, 2016 07:15 AM

Submit your talk for EclipseCon France taking place in Toulouse on June 7-9, 2016.

February 02, 2016 07:15 AM

ANCIT's Upcoming Classes in February 2016

by Its_Me_Malai (noreply@blogger.com) at February 02, 2016 02:02 AM

This February its Modeling Month @ ANCIT. We are offering series of public classrooms for advanced 1 day workshops on various Eclipse Topics.


These classes are open for registration and available for non Bangalore associates thru Online Training. Interested in our classes. Please feel free to contact on training@ancitconsulting.com

by Its_Me_Malai (noreply@blogger.com) at February 02, 2016 02:02 AM

Swing by to Talk about SWT and JavaFX

by waynebeaton at February 01, 2016 06:27 PM

Eclipse SWT support for GTK3 has improved dramatically since the Eclipse Mars release: the latest milestone and nightly builds work and look great on my Fedora 22 box. There’s still some work to do, but the progress since Mars is impressive. Fixing SWT/GTK issues requires a special set of skills: if you have those skills, you might find our work item to Improve GTK 3 Support interesting.

Or, if you just want to see how you can help, drop by the EclipseCon 2016 Hackathon and we can try and hammer out a fix or two together. A few actual Eclipse Platform committers will be at the conference, so I’m using “we” in the royal sense.

If JavaFX is more to your tastes, consider attending the two EclipseCon sessions being lead by the Eclipse community’s JavaFX expert and Eclipse e(fx)clipse open source project lead, Tom Schindl: Develop Slick Rich Client Applications with Eclipse 4 on JavaFX, and Smart, slim and good looking – Building Smart Editors with Eclipse and JavaFX.

emf_treeview_dnd

EMF Edit UI for JavaFX allows you to view your EMF models in JavaFX TextFields, ListViews, TreeViews and TableViews with only a few lines of code.
(from the project website)

Tom can help you get started building JavaFX applications using Eclipse; he’s also the best person to help you build Eclipse Rich Client Platform applications, editors, and IDEs with JavaFX as a base.

You can also learn about some fascinating work being done in the Eclipse Integrated Computational Environment (ICE) project in the form of Adventures in 3D with Eclipse ICE and JavaFX (ICE leverages the JavaFX/SWT integration layer, FXCanvas). Speakers Tom McCrary and Robert Smith, as members of our Science Working Group, are involved in some very cool new work being done at the Eclipse Foundation.

2015-p03234

Alex McCaskey and project lead Jay Billings running ICE on ORNL’s EVEREST Powerwall
(from Jay’s post from July of last year).

See you at EclipseCon!


EclipseCon NA 2016



by waynebeaton at February 01, 2016 06:27 PM

Eclipse Foundation Announces Ericsson as a Strategic Member

February 01, 2016 04:38 PM

We're pleased to announce that Ericsson has become a strategic member of the Eclipse Foundation.

February 01, 2016 04:38 PM

Filling up the Dance Card – EclipseCon 2016 Reston VA

by Doug Schaefer at February 01, 2016 04:23 PM

I can tell EclipseCon is getting close by the level of my panic. Five weeks to go. And it’s getting pretty tight.

I have a whole bunch of things I want to demo and hopefully get the community excited about. The Preview of the Arduino C++ IDE, a showcase for the new build and launch systems I’ve been working on, is nearing it’s end on the Mars stream and it’s time to get it working on Neon. I have a talk on that on the Tuesday entitled “Build Arduino Apps like a Pro”. It is a really cool application of all the great work we’ve done on the CDT over the years and I have some cool places I want to take it.

I also have a very ambitious talk on Thursday called simply “Eclipse, the IDE for IoT”. In that talk I will demo and describe all the Eclipse IDE plug-ins you can use to build an IoT system, from an Arduino to the cloud services that analyze the data coming from that Arduino, to the Web and Android clients you use to view the results of that analysis. This is what has always driven my work and passion for the Eclipse IDE. It’s a truly Integrated development environment with a capital ‘I’ that can do everything I need to build systems. And I’m proud to show that off to anyone who wants to see it.

Aside from my talks it’s going to be a very busy week. On Monday, we have the CDT Summit where anyone who has interest can join as we talk about CDT issues of the day and work on plans for the future. We’re such a diverse group and have built up a family of contributors, not only working on the CDT project itself, but on our siblings in Linux Tools and Parallel Tools and the occasion discussion about Target Management. I have a good start on my ideas for a new CDT build system that I’ll talk about and how it’s used for Qt, CMake and Arduino. And we have a Hackathon schedule Tuesday night where we should be able to get deep and dirty into the code.

For me, I have interest in the Internet of Things Summit on Tuesday and Wednesday. I work for an RTOS company so, of course, we have interest in IoT since our customers do. Actually we have customers who have done IoT for years and we now have a label for what they’ve been doing. But I’m interested to hear what kind of things people are building that fit the IoT label and what kind of open platforms they are using to build those things that are on the Internet. There’s been a lot of hype over IoT and we need to filter that and see what people are really doing with it.

Thursday is Eclipse Council day. I am a member of both the Architecture Council and the Planning Council. It’s a tricky job these councils are. You have a grand title, but you don’t really have much power over what projects do. We’re really here to help projects and much of the discussion we’ll have will be on how to help them better and to really help them make Eclipse better. Our reputation is based on the technology they produce and we really need to find ways to make sure the quality of that technology is world class.

But the highlight of every EclipseCon isn’t just the sessions and summits. It’s the people. It’s the chance to talk about things you care about with other people who also care about those things. It’s a chance to put faces on the the e-mail addresses you see on the mailing lists and bugzillas. It’s a chance to feel part of the bigger team that is the Eclipse community. We are a friendly bunch, often found at the bar in the evenings, well, OK, always found at the bar in the evenings. If you get a chance, please come down and please stop me or anyone else you know in the group and say Hi and join in and be a part of our great community.


by Doug Schaefer at February 01, 2016 04:23 PM

Future trends for IoT, Open Source and Eclipse IoT

by Ian Skerrett at January 29, 2016 09:01 PM

The Eclipse IoT community had great momentum in 2015. Benjamin has done a nice summary of 2015. However, I often get asked where I see IoT and open source going into the future. Below are some of the trends I’d like to see within the Eclipse IoT community for 2016. 

1. More Open Standards and Open Source Implementation

Eclipse IoT has been very successful providing implementations of IoT standards. Eclipse Paho and Eclipse Mosquitto are the de facto implementations for MQTT. Eclipse Leshan is building an amazing community around its LWM2M implementation. The IoT industry is embracing open standards and open source implementations.

In 2016, I’d like to see more implementations of IoT standards hosted at Eclipse IoT. Implementations of standards like OPC-UA or LoRaWAN would be a prefect addition for our community.

2. IoT Server Platform for Cloud-scale

For the most part, Eclipse IoT has been focused on the technology to connect and manager devices at the edge. The new Eclipse Hono project is going to expand the technology to the IoT Server. Having companies like Bosch and Red Hat be the project leaders is certainly a great combination for building the IoT server platform that integrates IoT into the enterprise and at cloud-scale.

3. Better tools for IoT developers

Building IoT solutions is not easy. We need to start working on better tools for developers. I’d love to see projects that focus on hardware simulation, testing tools, deployment tools, etc. Eclipse is known for providing IDEs and tools for developers. How about IDEs and tools for IoT developers?

4. IoT is polygot

The language of implementation for IoT solutions is not going to be dominated by one particular language. IoT is going to be polygot so it would be nice to see at Eclipse IoT more language implementations of IoT standards. How about a Go implementation of LWM2M, a Python MQTT broker, more language implementations of CoAP. Eclipse Kura is a fantastic Java-based IoT gateway but what about a gateway written in C or Python?

5. IoT Solutions for Industries

IoT is about deploying solutions for specifc industries. Eclipse IoT has open source projects for the SCADA and home automation industry. I’d like to see more industries represented in the Eclipse IoT community. A project focused on Smarter Cities or Connected Cars would be great open source projects.

Our goal for Eclipse IoT is to be the open source community for IoT developers. We want to provide the core building blocks that power IoT solutions. 2016 is going to be an exciting year.

If you would like to learn more about the future of Eclipse IoT, plan to attend the IoT Summit, March 8-9 in Reston VA.

iot20logo20smaller_0

Enter a caption



by Ian Skerrett at January 29, 2016 09:01 PM

Obeo Turns 10

by Cédric Brun (cedric.brun@obeo.fr) at January 29, 2016 12:00 AM

Obeo celebrated its 10th birthday a few days ago. If you rank numbers by their symbolic power the number 10 is probably pretty high on the list. It should at the very least makes you look back to what you achieved. In our case it also made us re-design our logo.

Brand new logo for Obeo !

Oh, what a ride it has been so far.

I actually had my first day of work at Obeo on the 1st of February 2006. Freshman getting out of school with both a Master and Engineering degree, already quite involved in Open Source and highly interested in Model Driven Engineering and Domain Specific Tooling.

At that time Obeo was 3 guys in a small room with an impressive weekly comsumption of brioche and Nutella. I joined them and made sure to increase the Nutella consumption rate!

Product-wise Acceleo 1.0 was ready to take over the world as an open-source code generator, but we also had model to model transformation, highly flexible reverse engineering, the capability to bring all of this together building workflows and complete traceability information in between all of these operations: from text, to model, to model, to text. Exciting stuff !

At that time we were consumers of Eclipse Modeling but were largely operating outside of it. Then we moved closer to Eclipse – the community – and started working directly on Eclipse projects. In 2007 I was sent alone in California for EclipseCon 2007, we couldn’t afford much more than that back then and my friend Mehdi was kind enough to accomodate me.

EclipseCon circa 2008

This was a great opportunity to meet the Eclipse community. I also gave my first talk in an international event (oh my !) as Obeo and Intalio were announcing the creation of the EMF Compare project. For the record, here is my blog post relating the event.

Since then our involvement in Eclipse grew as the company grew, we became Strategic member in 2008 next to IBM or Oracle! We had this unusual propulsion system enabling us to publish our work as open-source products we would maintain and evolve over time.

We went from consumer to creator of Eclipse Modeling technologies: Acceleo, EMF Compare, Extended Editing Framework, Modeling Amalgamation, Ecore Tools and of course Sirius (and I’m only mentioning Modeling !).

An unusual propulsion system, just like OSS is for us

I gave talks about 3 every year and each one was a cause for taking a step back, extracting insights, sharing them and meeting new people.

We built a business model where the success of our open-source products and our capacity to work within this community is a key factor in the success of our commercial products.

I realize how crazy it might sound but that’s genuinely what makes it interesting.

A company growing from 4 to more than 50 people evolves by starting from the founding values (I’m looking at you, chocolate!). It is also shaped by the people forming it and if there is one thing which has been pervasive at Obeo in the last 10 years it is the will to improve, constantly. Improving how we develop, how we design, how we think. This was a powerful driver making us experiment and I learnt a lot in every aspect along the way thanks to this.

Looking back what strikes me is that the most vivid satisfaction I get from this journey truly is about the people. It might be that building open-source products attracts awesome people, it might be pure luck, it might even be that the world is in fact filled with awesome people but either way when I look back and ask myself: “What was the most important thing in these 10 years” my answer is “Getting to know so many awesome people”.

Celebrating the 10 years

Peoples we could not fit in a single room, sometime people just too far away to come to Nantes for the celebration so I’ll start the 2016 year with the following resolution: if you are awesome and we cross path this year, let’s have a beer and celebrate together!

Obeo Turns 10 was originally published by Cédric Brun at CTO @ Obeo on January 29, 2016.


by Cédric Brun (cedric.brun@obeo.fr) at January 29, 2016 12:00 AM

Eclipse freezes on save

by vzurczak at January 28, 2016 03:27 PM

The symptoms: I use Eclipse Luna on Ubuntu 14.04.
My workspace is quite old and contains many projects. At some moment, I could not save any file anymore. When clicking Ctrl + S, Eclipse was freezing forever.

The cure: I deleted the projects I was not working on anymore. Reducing the number of files managed in my workspace solved the problem.

Notice this could also be due to an OS limit.
Or it could be due to the number of files managed by the workspace. In any case, clean it up. Save actions should work again.



by vzurczak at January 28, 2016 03:27 PM

Connect with Eike Stepper at EclipseCon 2016

by waynebeaton at January 27, 2016 08:59 PM

If you need to get a development environment configured just right and share that configuration with your team, you need to connect with Eike Stepper, the project lead and resident expert on our awesome (Oomph-some?) Eclipse Installer technology.

OomphAdvancedMode

The Eclipse Installer technology, based on Oomph, excels at doing very simple sorts of installations, like pulling together and assembling the pieces of the Eclipse IDE for Java Developers. But that only scratches the surface: you can build and share a script that realizes a complete development environment that includes extra plug-ins, clones of your Git repositories, tasks from your issue tracker, specific workspace preferences configurations, and more. The Eclipse Oomph Installer Technology can get your developers up and running in a matter of minutes.

Eike will cover Oomph topics during the conference: he’s hosting a tutorial and a talk with Ed Merks. Frankly, I can’t say enough good things about Ed and Eike: just spending a few minutes in their proximity will make you smarter. Eike is also presenting some exciting updates to the very cool Eclipse Connected Data Objects (CDO) technology.

You’ll have a chance to work directly with Eike at the EclipseCon 2016 Hackathon on Wednesday, March 9 from 11:15 to 11:50 am.

EclipseCon NA 2016



by waynebeaton at January 27, 2016 08:59 PM

New Support for ARIA Content Assist in Orion

by Carolyn MacLeod at January 27, 2016 03:22 PM

Orion’s HTML Content Assist now supports WAI-ARIA attributes and their values.

For example, when typing attributes into the start tag of a div, you can type Ctrl+Space to pop up a list of all attributes that div supports, including ARIA attributes. Use the up or down arrow keys or type the initial character(s) of an attribute name to select it in the list and read its documentation. Type Enter to have the selected attribute inserted into your file at the caret location.

The screen snapshot below shows the aria-atomic attribute selected in the pop-up list of proposals, with its documentation from the W3 WAI-ARIA 1.0 Specification alongside.

Content Assist popup list showing ARIA attributes, with aria-atomic selected

If you resize the proposals list, you can see all of the ARIA attributes that the current HTML element supports (div supports all 36 of the ARIA 1.0 attributes). The snapshot below shows the full list with role selected. The documentation for the role attribute lists 61 possible values!

Content assist proposal list with role selected

Typing the initial characters of an attribute filters the list to make it easier to scan. The typed characters are also inserted into the file. The screen snapshot below shows only attributes that begin with “aria”.

Content assist proposal list showing only aria attributes, with aria-activedescendant selected

If you type the first few characters of an attribute name before typing Ctrl+Space, the list will be filtered when it is opened. If enough characters are typed to uniquely identify an attribute, then the list is not opened; instead, the completed attribute is inserted into the file immediately. Attributes are assigned the empty string when inserted, and the caret is placed between the quotes of the empty string, which is conveniently where it needs to be for you to type the attribute’s value. For example, role is the only attribute that starts with ‘r’, and it will be inserted as role="".

Typing r and invoking content assist inserts role="" into the text

If you need help remembering an attribute’s possible values, there’s Content Assist for that, too. Type Ctrl+Space while the caret is between the attribute value’s quotes, and a list of value choices will pop up. Alternatively, start typing a character or two of the value you want, and type Ctrl+Space to get a reduced list. This comes in handy with attributes like role, where typing a ‘t’ will reduce the list to “only” 10 values instead of 61!

Content assist proposal list showing role attribute values starting with 't', with tab selected

In the same way that attribute Content Assist provides documentation for the selected attribute, value Content Assist provides documentation for the selected value, complete with a link to the value’s description in the WAI-ARIA 1.0 spec.

Orion is an “Authoring Tool” according to the definition in the W3 ATAG Specification:

Authoring Tool: Any web-based or non-web-based application(s) that can be used by authors (alone or collaboratively) to create or modify web content for use by other people (other authors or end users).

One of the goals of an Authoring Tool is to:

…ensure that all authors are enabled, supported, and guided by the authoring tools that they use toward producing accessible web content (WCAG).

Orion’s new ARIA Content Assist is a step toward achieving that goal.


by Carolyn MacLeod at January 27, 2016 03:22 PM

@EclipseFdn Neon+1 Name: Oxygen

by Chris Aniszczyk at January 26, 2016 03:17 PM

Oxygen (a pretty important element for life) is now the name of the Eclipse Foundation Neon+1 release:

oxygen

See bug 485861 for more details.


by Chris Aniszczyk at January 26, 2016 03:17 PM

Introducing Project January

by Tracy M at January 26, 2016 10:16 AM

A new project proposal from the Eclipse Science Working Group (SWG) goes live. Project January aims to provide a set of standardized Java-based numerical data structures for scientific computing. Scientific tools are rapidly scaling to meet the increasing demands of the user both in sheer volumes of data as well as complexity. Back at a site meeting in Trondheim, the SWG members agreed a generic dataset that would promote tool integration was one of the key priorities of the group. In the short-term, this looks a lot like “numpy for Java”. That in itself is a pretty big deal, but the future plans are equally exciting, check out the proposal here.

As for the name, project January works on many levels. Besides being the month the project proposal goes live, it is also an acronym: JAva NUmerical ARraYs :-). The month January is named after the Roman god Janus, god of new beginnings and doorways. Project January is a foundational building block of scientific computing and certainly a doorway to greater collaboration and tool integration within the Eclipse community and beyond.



by Tracy M at January 26, 2016 10:16 AM

JSDT Development

by psuzzi at January 26, 2016 06:22 AM

This post is about my experience in setting up a JSDT development environment. (see also wiki.eclipse.org/JSDT/Development)

Setting up JSDT

There are several ways to setup JSDT development environment. A good one is having an Eclipse Installation for development (IDE) and an Eclipse Installation as Target Platform (TP) .

  • IDE : PDE, GIT, XML and all tools for development
  • TP : all WebTools Platform plugins, needed to run JSDT

In this post I show a simple setup using eclipse-rcp-mars-1 as IDE and eclipse-jee-mars-1 as TP.

Installations

We start downloading Eclipse IDE and Target Platform. In our case

Then we unpack the two installations on two different folders on the system. We don’t need to run the TP Eclipse, but we need to take note of its location.

IDE Setup

Launch the IDE, set the target platform and the api baseline then launch the product based on the Target Platform

Set Target Platform

open preferences via menu : Window > Preferences,; select Target Platform and add the location of the TP Instance.

Then add a new Target, via Directory (add Directory in the local filesystem).

Select the base folder of the Target Platform installation, and complete the procedure.

At the end,  you will see the target is available

Set Api Baseline

Add an API Baseline based on the TP

Launch the Target Platform from IDE

Create a new launch configuration, based on plugins contained in the target platform,.

img_56a71e9f984a2

Then Run the launch configuration. You will see a new Inner Eclipse popping up. This is the Eclipse instance you’re going to develop against.

Get the JSDT source

You can find the URLs to source repositories in webtools.jsdt/developer (and platform.ui/developer) project pages. In this case I cloned all the repositories using Gerrit URLs.

To start working on JSDT you will need the three below projects from the https://git.eclipse.org/r/p/jsdt/webtools.jsdt git repository.

org.eclipse.wst.jsdt.core
org.eclipse.wst.jsdt.manipulation
org.eclipse.wst.jsdt.ui

Plus, you might need to import an extra project from the https://git.eclipse.org/r/p/platform/eclipse.platform.runtime git repository.

org.eclipse.core.expressions

After cloning and importing the needed projects, the workspace is as simple as you can see below

Here you find the project set to start with JSDT development: jsdtSimpleProjectSet.psf .

You can import the project set via menu: File > Import, then select Git > Projects from Git.

Fix Source Issues

To work on the source code you need some tweaks. As example, you need to set the API Baseline,  and you might need to add additional Java JDKs, and additional projects.

As example, if you see an error like the one in the image below, you will need to get the source code for the org.eclipse.core.expressions project (as described above).

Launching the TP with your source Code onboard

Ok, cool. You fixed an Eclipse bug, or you just edited the JSDT source code; and now you want to see the edit “at work”!

This is simple: assuming your edit is contained in the plugins you have in the workspace, you just need to edit the launch configuration; make sure your Workspace plugins are included in the launch configuration, and the correspondant “original” plugins are not selected among the target platform bundles.

Now Run the launch configuration, and you’ll see your application running / so you can test your change.

 


by psuzzi at January 26, 2016 06:22 AM

A Help Command for Gonsole

by Rüdiger Herrmann at January 25, 2016 08:00 AM

Written by Rüdiger Herrmann

We took the 4.2 release of JGit as an opportunity to not only include the new JGit version but also spend some time on Gonsole itself. The result are some bug fixes and smaller enhancements.

Most notably there is now a help command. When entered as-is, a list of known commands is printed

Some More Enhancements for Gonsole

When the name of a command is appended, like help commit for example, the usage information for that command is shown. Note that you can obtain the same information with the content assist. However the help command is probably easier to discover in a console setting.

In addition some more usability issues haven been addressed:

  • Due to a change in JGit that went unrecognized, the help option (-h|--help) was broken. This option is now available again for all commands.
  • Entering an unknown command now leads to a clear error message in all situations
  • And if a Git command is entered that requires a repository but no repository is in use, a message is shown with a hint to change the repository.

With the change to JGit 4.2 you have access to some new and enhanced JGit commands, namely:

  • the git rev-parse command now has a --verify option
  • there is now a remote command to list and manage the tracked repositories
  • and the reset command supports -- <paths> parameters

For a complete list of changes, please See the JGit release notes. If you are curious to which version of JGit the commands you enter are actually delegated to, then type version and the current of JGit version will be printed out.

The new Gonsole version is labelled 1.3 and can be obtained from the Eclipse Marketplace or from the software repository:

http://rherrmann.github.io/gonsole/repository/

The post A Help Command for Gonsole appeared first on Code Affine.


by Rüdiger Herrmann at January 25, 2016 08:00 AM

Intro to Vert.x Shell

by vietj at January 25, 2016 12:00 AM

Vert.x Shell provides an extensible command line for Vert.x, accessible via SSH, Telnet or a nice Web interface. Vert.x Shell comes out of the box with plenty of commands for Vert.x which makes it very handy for doing simple management operations like deploying a Verticle or getting the list of deployed Verticles. One power feature of Vert.x Shell is its extensibility: one can easily augment Vert.x Shell with its own commands. Let’s build an http-client in JavaScript!

Booting the Shell

Vert.x Shell can be started in a couple of lines depending on the connectors you configure. The documentation provides several examples showing the Shell Service configuration. For testing our command, we will use the Telnet protocol because it is easy to configure and use, so we just need to copy the corresponding section in vertx-http-client.js:

var ShellService = require("vertx-shell-js/shell_service");
var service = ShellService.create(vertx, {
  "telnetOptions" : {
    "host" : "localhost",
    "port" : 4000
  }
});
service.start();

We can run it:

Juliens-MacBook-Pro:java julien$ vertx run vertx-http-client.js
Succeeded in deploying verticle

And connect to the shell:

Juliens-MacBook-Pro:~ julien$ telnet localhost 5000
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
__      __ ______  _____  _______  __   __
\ \    / /|  ____||  _  \|__   __| \ \ / /
 \ \  / / | |____ | :_) |   | |     \   /
  \ \/ /  |  ____||   __/   | |      > /
   \  /   | |____ | |\ \    | |     / //\
    \/    |______||_| \_\   |_| o  /_/ \_\


%

You can now already use the shell, the help command lists the available commands.

Creating a command

For the sake of simplicity we will write a single script that starts the Shell service and deploys our command. In the real world you would probably have the command in one file and the deployment in another.

The documentation explains how to add a new command to Vert.x shell, we can just copy this section and append it to the vertx-http-client.js script:

var CommandBuilder = require("vertx-shell-js/command_builder");
var CommandRegistry = require("vertx-shell-js/command_registry");

var builder = CommandBuilder.command("http-client");
builder.processHandler(function (process) {

  // Write a message to the console
  process.write("Implement the client\n");

  // End the process
  process.end();
});

// Register the command
var registry = CommandRegistry.getShared(vertx);
registry.registerCommand(builder.build(vertx));

Now you can use the command just to see it in action:

% http-client
Implement the client
%

Checking arguments

The http-client requires an url argument, an argument check is performed at the beginning of the process handler:

// Check the url argument
if (process.args().length < 1) {
  process.write("Missing URL\n").end();
  return;
}
var url = process.args()[0];

Implementing the command

The final step of this tutorial is the actual implementation of the client logic based on Vert.x HttpClient:

// Create the client request
var request = client.getAbs(url, function(response) {

  // Print the response in the shell console
  response.handler(function(buffer) {
    process.write(buffer.toString("UTF-8"));
  });

  // End the command when the response ends
  response.endHandler(function() {
    process.end();
  });
});

// Set a request handler to end the command with error
request.exceptionHandler(function(err) {
  process.write("Error: " + err.getMessage());
  process.end();
});

// End the http request
request.end();

And we can test the command in the shell:

% http-client http://vertx.io
http-client http://vertx.io
Vert.x...
...
/javascripts/sticky_header.js>


by vietj at January 25, 2016 12:00 AM