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/MigrationTo1.2"

Line 1: Line 1:
 
 
== Migrating from EMF-IncQuery 1.1 ==
 
== Migrating from EMF-IncQuery 1.1 ==
  
From version 1.2 EMF-IncQuery is merged into the Viatra project as Viatra-Query. The merger involves the complete removal of org.eclipse.incquery namespace, thus making all code depenent on EMF-IncQuery incompatible with Viatra Query API. To ease the migration process, a migrator tool is included in Viatra 1.2 to reduce manual refactoring as much as possible.
+
From version 1.2 EMF-IncQuery is merged into the Viatra project as Viatra-Query. The merger involves the complete removal of org.eclipse.incquery namespace, thus making all code depending on EMF-IncQuery incompatible with Viatra Query API. Furthermore, during the merging the existing codebase was cleaned up, removing all existing deprecated code, and a few classes were renamed to be consistent with the new naming conventions.
  
 +
==== The migrator tool ====
  
 +
To ease the migration process, a migrator tool is included in Viatra 1.2 to reduce manual refactoring as much as possible.
  
=== Usage ===
+
==== Usage ====
 
The tool can be accessed in the 'Configure' context menu on Java/EMF-IncQuery projects where it is applicable.
 
The tool can be accessed in the 'Configure' context menu on Java/EMF-IncQuery projects where it is applicable.
  
Line 30: Line 31:
 
** ''CRUDActivationStateEnum.APPEARED'' → ''CRUDActivationStateEnum.CREATED''
 
** ''CRUDActivationStateEnum.APPEARED'' → ''CRUDActivationStateEnum.CREATED''
 
** ''CRUDActivationStateEnum.DISAPPEARED'' → ''CRUDActivationStateEnum.DELETED''
 
** ''CRUDActivationStateEnum.DISAPPEARED'' → ''CRUDActivationStateEnum.DELETED''
 +
 +
== A detailed list of changes ==
 +
 +
The changes done during the merging are [https://docs.google.com/spreadsheets/d/1gvu-iWx57z5wCd0HBTdidhuYUmBqfTgEIDIRwuW_vaE/edit?usp=sharing documented in a spreadsheet]
 +
=== Project renaming ===

Revision as of 09:03, 30 March 2016

Migrating from EMF-IncQuery 1.1

From version 1.2 EMF-IncQuery is merged into the Viatra project as Viatra-Query. The merger involves the complete removal of org.eclipse.incquery namespace, thus making all code depending on EMF-IncQuery incompatible with Viatra Query API. Furthermore, during the merging the existing codebase was cleaned up, removing all existing deprecated code, and a few classes were renamed to be consistent with the new naming conventions.

The migrator tool

To ease the migration process, a migrator tool is included in Viatra 1.2 to reduce manual refactoring as much as possible.

Usage

The tool can be accessed in the 'Configure' context menu on Java/EMF-IncQuery projects where it is applicable.

  • Update Query Project: Migration of query projects (EMF-IncQuery 0.8.0-1.1.0)
    • Updates project dependencies
    • Updates query description files
    • Updates query specification extensions
    • Updates IncQuery API usage
    • Important: this item is not available in projects that are already VIATRA Query projects
  • Replace EMF-IncQuery API Usage: Migration of Java and Xtend projects
    • Updates usage of EMF-IncQuery API
    • Safe to be called multiple times

Remaining manual tasks after migration

  • Maven builds are not migrated.
  • Deprecated API [in EMF-IncQuery 1.1.0] are removed in 1.2.0. These API usages have to be migrated manually.
  • Generated plugin extensions other than query specifications are regenerated, but the old ones are not removed. These shall be removed manually.
  • Type of static method calls (e.g. AdvancedIncQueryEngine.createUnmanagedEngine()) shall be renamed manually.
  • Renamed methods and fields are not migrated by the tool
    • Schedulers.getIQEngineSchedulerFactorySchedulers.getQueryEngineSchedulerFactory
    • ExecutionSchemas.createIncQueryExecutionSchemaExecutionSchemas.createViatraQueryExecutionSchema
    • CRUDActivationStateEnum.APPEAREDCRUDActivationStateEnum.CREATED
    • CRUDActivationStateEnum.DISAPPEAREDCRUDActivationStateEnum.DELETED

A detailed list of changes

The changes done during the merging are documented in a spreadsheet

Project renaming

Back to the top