What's new in Eclipse IDE and the ecosystem around it
Sopot Cela Mickael Istria
The plan● High-level introduction about IDE architecture (IDE = Sum of components)● Talk about (and show) new and cool stuff in Eclipse Neon (the IDE)● Showcase some new technical approaches of the platform project (SWT on
the web, SWT css etc.)● Discuss high-level initiatives/decisions with considerable impact on the future
of eclipse (drop release naming, additional SR etc.)
Eclipse IDEs maze (trimmed from 82 to 9)Oomph Install
JEE IDE C++ IDEJS IDE
Web Tools
Java Tools
Java EE Web Tools
Dali (JPA)
Java EE Tools (eg jax-rs)
SQL/Data Tools
Linux Tools
TraceCompass
Marketplace Client
Eclipse SDK
Eclipse Platform
EGit
JSDT
SimRel repo|
akahttp://download.eclipse.org/releases/neon
Simultaneous Release and IDE production
Platform Build
CDT Build
EGit Build
79 other builds
Platform p2 repo
CDT p2 repo
EGit p2 repo
79 other p2 repos
SimRel aggregation
EPP Build
...Packages
IDE Product p2 definitionsinjected into
Oomph installer
IDE product definitions
Platform
Nicer welcome page
Dark theme improvements- Previously un-stylable items are now stylable (windows and linux*)
Windows 7
Fedora 24
Ability to disable theming engine- Dislike themings? Prefer native?
Quick Access (Ctrl + 3) improvements- Usability improvements to one of the most useful shortcuts of Eclipse
- e.g. searching by category, Views: Error Log etc.
Word wrap
Autosave of editors- Now you can stop worrying about saving editors, they will autosave
Better functionality in the Workspace Launcher- Remembers recent workspaces- Click to open
Ability to zoom in or out in the editors- Browser-style zooming in and out now available (Ctrl +/-)
The new Import Wizard- You focus on WHAT to import, it takes care
of HOW- File > Open Projects from Filesystem...
Java Development Tools
Java substring code completion- Now you have to type only part of the method name- The match is highlighted
Assign all parameters to new fields
Multiple selection method-reference calls
Java 9See also Sasikanth’s talk: Java 9 support in Eclipse, tomorrow 16h, Cassiopee
C/C++ Development Tools- Editor improvements: parameters guessing, Format save actions- Show local variables and registers in traditional memory renderer- Support for hardware reverse engineering- ...
See more during Jonah’s talk: CDT: Latest & Greatest Tooling for C/C++ in Spot, tomorrow, 12h
JavaScript Development Tools- ECMAScript 2015- Node.js, NPM, Bower, Grunt, Gulp- Debug Node.js apps- ...
See more during Ilya’s talk: JSDT 2.0 in Spot, today, 16h45
PHP Development Tools- Full PHP 7 Support- 3x performance boost with the new Lucene-based indexer- PHP Editor with tons of improvements- Better debugging experience - for both Xdebug and Zend Debugger- …
See more during Kaloyan’s talk Eclipse speaks PHP, today, Argos, 11:00
Docker Tools- Dockerfile editor- Manage Docker images
See more during Roland’s talk The State of Docker and Vagrant Tooling in Eclipse, today, Spot, 11:00.
Marketplace search for unknown file extension- Unrecognized file type (extension)? Marketplace to the rescue!
Packaging
JavaScript and Android package
Flat package structure
Mars(hierarchical)
Neon(flat)
Allows incremental updates of individual components
On Marketplace● JavaScript inference, AngularJS, TypeScript● Scala, Groovy, Ceylon, Kotlin● JBoss Tools, Spring Tool Suite, Vaadin, Liferay● Erlang● Yaml● Latex● ...
Other news- Additional release
- Neon.1: September 2016- Neon.2: December 2016- Neon.3: March 2017
The future?
New technical ideas- GTK on the web -> SWT on the Web -> Eclipse on the Web, unmodified
- using broadway GDK backend- short demo
- SWT level styling- exploiting native styling capabilities of GTK- Widget.setData("org.eclipse.swt.internal.gtk.css",css_below)- you get : https://akurtakov.fedorapeople.org/econfr.webm
button { border-style: solid; border-radius: 5px;}button:hover { transition: width 2s, height 2s, background-color 2s, transform 2s; border-radius: 50px;}
Text Editor and Languages ServicesContribute to default Text Editor rather than extending it:
● Coloration (much already done in Platform UI)● Completion (much already done in JFace)● Contextual documentation/Hover● Navigation/hyperlinks● Validation Done with builders/markers
More talks about Eclipse IDEUnconference, Friday @ENSEEIHT https://wiki.eclipse.org/Eclipse_Unconference_France_2016#Eclipse_IDE