Releases: eclipse/org.eclipse.emf.diffmerge.core
v0.14.1
v0.14.1-S20230308
v0.14.1-S20221130
v0.14.0
Download
v0.13.1
v0.13.0
It is now possible to compare and merge sets of 'pure' (non-EMF) Java Objects via custom data scopes and data policies. See https://wiki.eclipse.org/EMF_DiffMerge/Programmatic_Usage/Generic_API for more details.
Compatible (at least) with Eclipse 2019-06 and 2020-06
Download
Update site location
Update site (local use with p2)
What's new
API Changes
Main changes
Main APIs are now in plug-in 'org.eclipse.emf.diffmerge.generic'. Java packages follow this change in the sense that all APIs are now in package 'org.eclipse.emf.diffmerge.generic.api'. For example: IComparison, IMatch, IDifference, IMatchPolicy, IDiffPolicy, etc. Imports must thus be updated accordingly.
Most interfaces have a type parameter that represents the type of data elements, e.g., EObject. For example: IComparison<E>, IMatchPolicy<E>.
The application of these 'generic' APIs to EMF is still in plug-in org.eclipse.emf.diffmerge.
The hierarchy of scopes is modified: although IModelScope and sub-interfaces / implementing classes still exist in org.eclipse.emf.diffmerge, they extend 'generic' interfaces from org.eclipse.emf.diffmerge.generic. Those extend IDataScope, and ITreeDataScope is the most useful. In many cases, it is more convenient to use ITreeDataScope<EObject> than IModelScope.
The rules that govern data integrity and consistent manipulations are defined through IDataPolicy.
Notable fine-grained changes
IModelScope::getContents() -> ITreeDataScope<E>::getRoots()
IModelScope::getAllContents() -> ITreeDataScope<E>::iterator()
IModelScope::getAllContentsAsSet() -> IModelScope::getAllContentsAsSet()
IReferenceValuePresence::getFeature() : Object instead of EReference
IAttributeValuePresence::getFeature() : Object instead of EAttribute
IDiffPolicy::coverOutOfScopeValue(...) takes an additional ITreeDataScope arg
IPersistentModelScope::getRawContents() -> IPersistentDataScope::getRawRoots()
IPersistentModelScope::get/setExtrinsicID(...) -> IDataScope::tGetID(...)/tSetID(...)
v0.12.0
Compatible with Eclipse from 4.5 (Mars) to 4.14 (2019-12) and corresponding releases of EGit. Includes support for Sirius 6.3 and greater.
Download
Update site location
Update site (local use with p2)
v0.11.2-2019-06
Part of the Eclipse 2019-06, 2019-09 and 2019-12 release trains
Compatible with Eclipse from 4.5 (Mars) to 4.12 (2019-06) and corresponding releases of EGit. Includes support for Sirius 5.1 and greater
Download
Update site location
Update site (local use with p2)
v0.11.2
Compatible with Eclipse from 4.5 (Mars) to 4.11 (2019-03) and corresponding releases of EGit. Includes support for Sirius 5.1 and greater.
Download
Update site location
Update site (local use with p2)
What's new
v0.11.1
Compatible with Eclipse from 4.5 (Mars) to 4.11 (2019-03) and corresponding releases of EGit. Includes support for Sirius 5.1 and greater
Download
Update site location
Update site (local use with p2)