Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
kapil-agnihotri committed Nov 17, 2021
2 parents 95a8ca4 + 2f7d9d5 commit 58ecbb1
Show file tree
Hide file tree
Showing 575 changed files with 6,701 additions and 8,052 deletions.
2 changes: 2 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ jobs:
- sleep 10
- sudo systemctl status docker.service
# Pull Docker images required for integration tests
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
- docker pull kartoza/postgis
- ./build.sh integrationStage
# Killing background sleep loop
Expand All @@ -84,6 +85,7 @@ jobs:
script:
# Output something every minute lest Travis kills the job
- while sleep 1m; do echo "=====[ still running after $SECONDS seconds... ]====="; done &
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
- mkdir -p build/target
- ./build.sh product -a ${ARCH} -o ${PLATFORM} ${ADDITIONAL_FLAGS} ${PRODUCT}
# Killing background sleep loop
Expand Down
39 changes: 39 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,43 @@
All notable changes to this project will be documented in this file.
See the [change log guidelines](http://keepachangelog.com/) for information on how to structure the file.

## [Unreleased]

## [4.1.0]

### Added

- Support for selecting multiple files during schema and the data import
- END-related schemas added in presets
- Support to remove a single schema from the project view
- Support to export the source and the transformed data to Shapefiles using GeoTools
- Support for missing time zone information when parsing timestamps
- Support for creating a spatial index when writing GeoPackage files
- Support for Java 8 date/time classes in Groovy

### Changed

- Activated XML pretty printing by default in the writer settings dialog page when exporting XML/GML

### Removed

- xtraserver plugin

### Fixed

- Fix application not starting on macOS
- Fix duplicate imports of the same schema when the schema locations differ only in the scheme part
- Fix use of IProxyService to apply proxy configuration in the UI
- Fix validity check of the hale»connect export dialog
- Fix loading of projects in case user context is not supported
- Fix ArcString interpolation handling
- Fix handling of HTTPS schema locations in schema resolver
- Fix for failing PostGIS integration tests
- Fix the last modified check when loading Groovy snippet from file
- Fix failing of CRS without remarks for geopackage
- Fix use of correct preferred bundle when loading geometry types
- Fix to not append time zone information when writing xmlDate

## [4.0.0]

### Added
Expand Down Expand Up @@ -360,6 +397,8 @@ See the [change log guidelines](http://keepachangelog.com/) for information on h

Changes so far have been documented in the [hale help](http://hale.igd.fraunhofer.de/2.9.4/help/topic/eu.esdihumboldt.hale.doc.user/html/new/2_9_0.xhtml?cp=2_1_0).

[Unreleased]: https://github.com/halestudio/hale/compare/4.1.0...HEAD
[4.1.0]: https://github.com/halestudio/hale/compare/4.0.0...4.1.0
[4.0.0]: https://github.com/halestudio/hale/compare/3.5.0...4.0.0
[3.5.0]: https://github.com/halestudio/hale/compare/3.4.1...3.5.0
[3.4.1]: https://github.com/halestudio/hale/compare/3.4.0...3.4.1
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ To contribute please check the [contribution guidelines](CONTRIBUTING.md) and re
* [hale Community Forum](http://discuss.wetransform.to)
* [hale Community Blog](https://www.wetransform.to/category/news/)
* [hale Video Tutorial (4 Minutes)](https://www.youtube.com/watch?v=95Krki4thgs)
* [hale in-depth Video Tutorial (37 minutes)](https://www.youtube.com/watch?v=BKNMV-Jp9HM)

## License

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: hale CLI Default Commands
Bundle-SymbolicName: eu.esdihumboldt.hale.app.cli.commands;singleton:=true
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-Vendor: wetransform GmbH
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: eu.esdihumboldt.util.cli;bundle-version="2.9.5",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: hale CLI application
Bundle-SymbolicName: eu.esdihumboldt.hale.app.cli;singleton:=true
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-Vendor: wetransform GmbH
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: eu.esdihumboldt.hale.common.core,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Transformation Application Tests
Bundle-SymbolicName: eu.esdihumboldt.hale.app.transform.test
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-Vendor: data harmonisation panel
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: eu.esdihumboldt.hale.app.transform;bundle-version="2.9.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Application for command line transformation
Bundle-SymbolicName: eu.esdihumboldt.hale.app.transform;singleton:=true
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-Vendor: data harmonisation panel
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: org.eclipse.core.runtime;bundle-version="3.7.0",
Expand Down
19 changes: 10 additions & 9 deletions build/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ ext {
'eu.esdihumboldt.hale.ui.feature.linux': ['linux'],
'eu.esdihumboldt.hale.ui.feature.macosx': ['macosx']
]

/*
* List of bundles that are not platform specific, even if they are detected as such.
*/
Expand All @@ -156,9 +156,8 @@ ext {
]

// URL to the directory containing mirrored artifacts (Maven, JRE, ...)
//artifactsCommit = '6589f561a36b8a6fe4cd6a115fdc892bbf812c68'
//artifactsMirrorUrl = "https://gitlab.wetransform.to/hale/hale-build-support/raw/${artifactsCommit}"
artifactsMirrorUrl = "http://build-artifacts.wetransform.to/hale-build-support-96b81f6"
artifactsCommit = '6431f1d635126138b32611dcc47467a401448c8e'
artifactsMirrorUrl = "https://gitlab.wetransform.to/hale/hale-build-support/raw/${artifactsCommit}"

// Names of zip files containing Java Runtimes (sorted by their respective platform)
jreArtifacts = [
Expand All @@ -172,12 +171,14 @@ ext {
'gtk': [
'x86_64': 'OpenJDK8U-jre_x64_linux_hotspot_8u232b09.tar.gz'
]
]/*, -- not available right now
], //Make sure when `tar.gz` is extracted then the hirarchy should be `<jdk-name>/Contents/...`.
//For e.g. `jdk8u282-b08/Contents/...` becuase during extraction, root folder named `jdk8u282-b08`
//is being stripped and the `Contents` folder is being copied into jre folder.
'macosx': [
'cocoa': [
'x86_64': 'jdk-min-8u91-macosx-x64.tar.gz'
'x86_64': 'OpenJDK8U-jdk_x64_mac_openj9_macosXL_8u282b08_openj9-0.24.0.tar.gz'
]
]*/
]
]

// Names of zip files containing mongodb instances (sorted by their respective platform)
Expand Down Expand Up @@ -239,7 +240,7 @@ configureEnvironment()

def configureEnvironment() {
def wsMap = [win32: 'win32', linux: 'gtk', macosx: 'cocoa']

def current_os = System.getProperty('os.name')
if (current_os.substring(0, 5).equalsIgnoreCase('linux'))
current_os = 'linux'
Expand All @@ -253,7 +254,7 @@ def configureEnvironment() {
current_arch = 'x86'
else if(current_arch == 'amd64')
current_arch = 'x86_64'

if (!ext.properties.containsKey('osgiOS')) {
ext.osgiOS = current_os
}
Expand Down
2 changes: 1 addition & 1 deletion build/config.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
project = {
// version
// major.minor.micro-SNAPSHOT - remove -SNAPSHOT for releases
version = '4.0.0'
version = '4.1.0-SNAPSHOT'

// when increasing the version number, at least the version of the .application bundles
// should be increased so they state an updated application version
Expand Down
54 changes: 51 additions & 3 deletions build/gradle/commitAndProductionStage.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ import java.nio.file.Files;
import java.text.SimpleDateFormat
import org.apache.maven.cli.MavenCli
import org.yaml.snakeyaml.Yaml
import org.apache.tools.ant.taskdefs.condition.Os

/**
* @return the value of the 'productFile' property
Expand Down Expand Up @@ -390,9 +391,15 @@ def includeAdditionalFiles(artifacts, relsrcpath, productOutputPath, reldstpath,
if (!Helper.buildForMac(project)) {
ant.untar(src: artifactZipPath, dest: artifactInstallPath, compression: 'gzip')
} else {
// Use external tar command for OSX build since the jdk to bundle with HALE contains symbolic links
//It is certain that this code will run when creating build for mac.
//Therefore, the jre must be copied into the `Eclipse` folder of the bundled application.
artifactInstallPath = new File(productOutputPath.absolutePath ,"/Eclipse.app/Contents/Eclipse/${reldstpath}")

// Use external tar command for OSX build since the jdk to bundle with HALE, contains symbolic links.
// This does only work on UNIX-based systems with tar installed!
def command = ['tar', '--preserve-permissions','-xzf', artifactZipPath.absolutePath]
//This command during extraction, will strip the root folder from jdk which is usually jdk name and will
//extract the data into root folder starting with `Contents`.
def command = ['tar', '--preserve-permissions','-xzf', artifactZipPath.absolutePath, '--strip-components=1']
artifactInstallPath.mkdir()
try {
// On windows, an IOException will be thrown here
Expand All @@ -407,6 +414,10 @@ def includeAdditionalFiles(artifacts, relsrcpath, productOutputPath, reldstpath,
} catch (ex) {
throw new IllegalStateException("Unable to unpack ${name} - The MacOSX build requires a UNIX-based system with tar installed:\n${ex.toString()}")
}
if (reldstpath.equals("jre")){
//update HALE.ini file with the JRE path bundled in the Eclipse.app.
updateHaleIniFileWithJrePath(productOutputPath.absolutePath + "/Eclipse.app/Contents/Eclipse/HALE.ini")
}
}
}
} else {
Expand Down Expand Up @@ -629,6 +640,11 @@ def packageClient(productOutputPath) {
targetDir.mkdir()
def tarPath = targetDir.absolutePath + '/' + packageName + '.tar.gz';
def packCmd = ['tar', '--preserve-permissions', '-czf', tarPath, '--transform', "s,^\\./,$packageName/,", '.']
//If the build script is run on the OS X then use gtar command.
//Note: gtar must be installed using `brew install gnu-tar`.
if (Os.isFamily(Os.FAMILY_MAC)) {
packCmd = ['gtar', '--preserve-permissions', '-czf', tarPath, '--transform', "s,^\\./,$packageName/,", '.']
}
def packProc = packCmd.execute(null, productOutputPath)
def packBuffer = new StringBuffer()
packProc.consumeProcessErrorStream(packBuffer)
Expand Down Expand Up @@ -664,6 +680,10 @@ def packageClient(productOutputPath) {

// Generate DMG image
def genisoCmd = ['genisoimage', '-V', "${productName} ${bundleVersion}", '-D', '-R', '-apple', '-no-pad', '-o', "${targetDir}/${packageName}.dmg", '.']
//create dmg file if the script is run on mac OS.
if (Os.isFamily(Os.FAMILY_MAC)) {
genisoCmd = "hdiutil create -ov -format UDZO -srcfolder ${productOutputPath.absolutePath} ${targetDir}/${packageName}.dmg"
}
def genisoProc = genisoCmd.execute(null, productOutputPath)
def genisoBuffer = new StringBuffer()
genisoProc.consumeProcessErrorStream(genisoBuffer)
Expand Down Expand Up @@ -826,6 +846,32 @@ def packageServer(productOutputPath) {
}
}

/**
* Method executed only for OS X.
* To run the HALE studio in mac, JRE must be bundled within the HALE studio app
* and its location must be added in the HALE.ini file.
* This method is a work around to modify HALE.ini file.
* This method reads HALE.ini file stored under "~/Eclipse.app/Contents/Eclipse/HALE.ini",
* then appends "-vm" arguments along with the JRE location bundled within the application.
* Finally, the changes are written back to the "HALE.ini" file.
* filepath HALE.ini file path
*/
def updateHaleIniFileWithJrePath(filepath) {

File file = new File(filepath)
def fileContent = file.getText();

def indexOfVmargs = fileContent.indexOf("-vmargs")

def updatedContent = fileContent.substring(0, indexOfVmargs)
.concat("-vm\n")
.concat("../Eclipse/jre/Contents/Home/jre/bin/java\n")
.concat(fileContent.substring(indexOfVmargs, fileContent.length()))

println("HALE.ini file contents changed successfully!!")
file.write(updatedContent)
}

task makeProductFeatureProjectDefinition(type: Copy) {
from Helper.resolveTemplate(project, 'plugin-project.xml')
into new File(buildDir, 'gen.product.feature')
Expand Down Expand Up @@ -945,7 +991,9 @@ task createProductFeature(dependsOn: [ generatePomFiles, makeProductFile, makePr
new File("$productFeaturePath/HALE.p2.inf").text = '''
instructions.configure=\
addRepository(location:http${#58}//hale-geoserver.geo-solutions.it/,type:0,name:GeoServer App-Schema Plug-in for hale studio,enabled:true);\
addRepository(location:http${#58}//hale-geoserver.geo-solutions.it/,type:1,name:GeoServer App-Schema Plug-in for hale studio,enabled:true);
addRepository(location:http${#58}//hale-geoserver.geo-solutions.it/,type:1,name:GeoServer App-Schema Plug-in for hale studio,enabled:true);\
addRepository(location:https${#58}//interactive-instruments.github.io/xtraserver-plugin-for-hale/,type:0,name:XtraServer Plug-in for hale studio,enabled:true);\
addRepository(location:https${#58}//interactive-instruments.github.io/xtraserver-plugin-for-hale/,type:1,name:XtraServer Plug-in for hale studio,enabled:true);
'''

// remove platform-specific fragments from product
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<feature
id="eu.esdihumboldt.hale.common.feature.base"
label="Equinox base feature"
version="4.0.0.qualifier">
version="4.1.0.qualifier">

<license>
Licenses of the individual features and plug-ins apply.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<feature
id="eu.esdihumboldt.hale.common.feature.core"
label="HALE core logic and models"
version="4.0.0.qualifier"
version="4.1.0.qualifier"
provider-name="data harmonisation panel"
plugin="eu.esdihumboldt.hale.ui.application">

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<feature
id="eu.esdihumboldt.hale.common.feature.orient"
label="OrientDB based Instance Database"
version="4.0.0.qualifier"
version="4.1.0.qualifier"
provider-name="data harmonisation panel">

<license>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Alignment Groovy API and Utilities Tests
Bundle-SymbolicName: eu.esdihumboldt.hale.common.align.groovy.test
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: eu.esdihumboldt.hale.common.align.groovy;bundle-version="2.6.0",
eu.esdihumboldt.hale.common.schema.groovy;bundle-version="2.6.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Alignment Groovy API and Utilities
Bundle-SymbolicName: eu.esdihumboldt.hale.common.align.groovy;singleton:=true
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: com.google.common.collect;version="11.0.1",
eu.esdihumboldt.hale.common.align.io.impl.internal.generated;version="2.9.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Alignment Merge Tests
Bundle-SymbolicName: eu.esdihumboldt.hale.common.align.merge.test
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-Vendor: wetransform GmbH
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: groovy;bundle-version="2.3.7",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Alignment Merger
Bundle-SymbolicName: eu.esdihumboldt.hale.common.align.merge;singleton:=true
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-Vendor: wetransform GmbH
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: eu.esdihumboldt.hale.common.align;bundle-version="3.3.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: HALE Alignment API Tests
Bundle-SymbolicName: eu.esdihumboldt.hale.common.align.test;singleton:=true
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: com.google.common.collect;version="11.0.1",
eu.esdihumboldt.hale.common.align.io.impl.internal.generated;version="2.9.5",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Transformation Graph Tests
Bundle-SymbolicName: eu.esdihumboldt.hale.common.align.tgraph.test
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-Vendor: data harmonisation panel
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: com.google.common.collect;version="11.0.1",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: HALE Transformation Graph
Bundle-SymbolicName: eu.esdihumboldt.hale.common.align.tgraph
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-Vendor: data harmonisation panel
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: com.google.common.collect;version="11.0.1",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: HALE Alignment API
Bundle-SymbolicName: eu.esdihumboldt.hale.common.align;singleton:=true
Bundle-Version: 4.0.0.qualifier
Bundle-Version: 4.1.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: com.google.common.base;version="1.6.0",
com.google.common.collect;version="1.6.0",
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 58ecbb1

Please sign in to comment.