Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "VIATRA/Releases/NewAndNoteworthy1.4"

(Query development environment improvements)
(Query development environment improvements)
Line 20: Line 20:
 
We have graduated the completely new query development views that replace the Query Explorer. These views were introduced as part of VIATRA 1.3 ([http://viatra.net/news/2016/7/viatra-13-released blog post with video]) together with the Transformation Development perspective. For this release, we aimed to include all important features in the new views that were only available through the Query Explorer before ({{bug|499995}} lists the relevant issues). If you already have the perspective opened, we recommend resetting it (right click on the perspective icon and select "Reset") as we have moved the views around to make more sense.
 
We have graduated the completely new query development views that replace the Query Explorer. These views were introduced as part of VIATRA 1.3 ([http://viatra.net/news/2016/7/viatra-13-released blog post with video]) together with the Transformation Development perspective. For this release, we aimed to include all important features in the new views that were only available through the Query Explorer before ({{bug|499995}} lists the relevant issues). If you already have the perspective opened, we recommend resetting it (right click on the perspective icon and select "Reset") as we have moved the views around to make more sense.
  
Some mentionable new features in the UI:
+
=== Some mentionable new features in the UI ===
 +
 
 
* Show location works for queries, matchers, matches and parameter values
 
* Show location works for queries, matchers, matches and parameter values
 
* Improved labeling in the tree (reuse domain specific icons for EMF model elements)
 
* Improved labeling in the tree (reuse domain specific icons for EMF model elements)
Line 30: Line 31:
 
* Remove individual matchers from Query Results
 
* Remove individual matchers from Query Results
  
'''TODO''' screenshots
+
=== Screenshots of the new UI ===
 +
 
 +
Transformation development perspective default layout:
 +
 
 +
[[File:VIATRA-Query-UI-Registry-Results-Model-Engine_details.png]]
 +
 
 +
Filtering matches from the Matcher properties:
 +
 
 +
[[File:VIATRA-Query-UI-Matcher_filter.png]]
 +
 
 +
Open managed engines into Query Results:
 +
 
 +
[[File:VIATRA-Query-UI-Open_managed_engine.png]]
 +
 
 +
Details of managed engines to help selection:
 +
 
 +
[[File:VIATRA-Query-UI-Managed_engine_selection.png]]
  
 
== Base indexer enhancements ==
 
== Base indexer enhancements ==

Revision as of 05:28, 23 September 2016

VIATRA 1.4 - New and Noteworthy

Local search support

  • Planner and runtime
  • Runtime configuration using hints

Query language improvements

In addition to the previously supported count keyword, there are now several new aggregators available (including sum, min and max, as well as an API for user-defined aggregators) to compute an aggregated value from matches of a called pattern. Usage basics are explained in the query language syntax guide.

The query language now allows Java type constraints, both as parameter types and as variable type constraints in pattern bodies. The recommended use case is that query parameters that are a result of (a) an eval() or (b) aggregation expression should be annotated with their Java types (note that in this case using an EDatatype would be incorrect, since these values are not EMF attribute values from the model). Java type names can be referenced by prefixing them with the keyword java, and of course namespace imports are available. So, for example, a query parameter may be typed as follows: prettyPrinted: java String. Java classes outside the java.lang package can be used with the appropriate import statement; e.g. product: java BigInteger also works after putting import java ^java.math.BigInteger into the query file header. Usage basics are explained in the query language syntax guide.

  • Parameter direction support
  • Search engine declaration
  • Group header ?

Query development environment improvements

We have graduated the completely new query development views that replace the Query Explorer. These views were introduced as part of VIATRA 1.3 (blog post with video) together with the Transformation Development perspective. For this release, we aimed to include all important features in the new views that were only available through the Query Explorer before (bug 499995 lists the relevant issues). If you already have the perspective opened, we recommend resetting it (right click on the perspective icon and select "Reset") as we have moved the views around to make more sense.

Some mentionable new features in the UI

  • Show location works for queries, matchers, matches and parameter values
  • Improved labeling in the tree (reuse domain specific icons for EMF model elements)
  • Tree view for engine details including the model, engine options, base index options
  • Match set filtering is possible through the Properties view
  • Drag-and-drop and double click for loading from Query Registry into Query Results
  • HiDPI icons for high-resolution, scaled displays.
  • Load existing managed query engines into the Query Results view
  • Remove individual matchers from Query Results

Screenshots of the new UI

Transformation development perspective default layout:

VIATRA-Query-UI-Registry-Results-Model-Engine details.png

Filtering matches from the Matcher properties:

VIATRA-Query-UI-Matcher filter.png

Open managed engines into Query Results:

VIATRA-Query-UI-Open managed engine.png

Details of managed engines to help selection:

VIATRA-Query-UI-Managed engine selection.png

Base indexer enhancements

* Wildcard mode can be set up later than construction
* Statistical indexing


Design Space Explorer enhancements

  • Method for setting the logging level: OFF, WARN, BASIC, VERBOSE_STRATEGY and VERBOSE_FULL
  • If the exploration is started asynchronously, it can be stopped by these methods: stopExploration(), stopExplorationAsync(), waitForTerminaition().
  • The evolutionary exploration strategy now can run on with multiple threads.
  • Depth first search strategy can continue exploration from a solution.
  • Minor performance enhancements.
  • Updated documentation on the wiki and also in the code: https://wiki.eclipse.org/VIATRA/DSE/UserGuide/API

Other issues

Version 1.4 also features a large number of under-the-hood changes, the most important is an updated hint system to enable fine-grained parametrization of the query engines. Usually, this change should be invisible for existing users; for possible migration issues see the Migration Guide.

In total more, than 70 issues were fixed in this release, see https://projects.eclipse.org/projects/modeling.viatra/releases/1.4.0/bugs for details.

Back to the top