Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v4.0.0 #252

Merged
merged 32 commits into from
Aug 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
bb07a4f
fix accepting all 200-299 status codes on http responses
frensing Sep 23, 2022
6e8e304
refactoring HttpWorker.processHttpResponse()
bigerl Sep 23, 2022
befe887
Merge pull request #180 from dice-group/fix/175-handle-2XX-responses
frensing Sep 23, 2022
2b59fc4
fix encoding in post request body (#179)
frensing Sep 26, 2022
efd02d5
Rework query handling (#184)
frensing Apr 11, 2023
7b5c607
Make the testing workflow trigger on pull requests (#201)
nck-mlcnv May 15, 2023
803948c
fix testing workflow (actually) (#208)
nck-mlcnv May 17, 2023
13df048
Fix unit tests (#202)
nck-mlcnv Jun 21, 2023
922b103
Refactoring consumption of query sources (#197)
nck-mlcnv Jun 28, 2023
b9a1115
Upgrade to Java 17 (#212)
nck-mlcnv Jun 28, 2023
aa21a04
Upgrade to junit 5 (#213)
nck-mlcnv Jun 29, 2023
5589f44
Change repository structure (#215)
nck-mlcnv Jun 29, 2023
a64b163
add junit 5 back (#216)
nck-mlcnv Jun 29, 2023
f44b101
Rework result processing (#219)
nck-mlcnv Aug 7, 2023
82dd89e
HTTP worker refactoring (#221)
nck-mlcnv Nov 14, 2023
092dad0
Fix schema file reference (#235)
nck-mlcnv Nov 21, 2023
fdbffa4
Fix performance issues (#241)
nck-mlcnv Dec 5, 2023
9c293d6
Properly enforce HTTP 1.1
nck-mlcnv Feb 8, 2024
a92d239
Apache HTTP Client 5 implementation (#243)
nck-mlcnv Feb 23, 2024
6128ddb
Fix request caching (#245)
nck-mlcnv Feb 26, 2024
4a6a146
Fix storage of completion target information (#247)
nck-mlcnv Mar 20, 2024
318b96a
Rewrite documentation (#233)
nck-mlcnv Jun 10, 2024
17800a9
pseudo merge main back into develop
bigerl Jun 10, 2024
85e4e3f
Remove old documentation and replace with new one (#253)
nck-mlcnv Jun 10, 2024
74d004a
Add ResponseBodyProcessor timeout (#250)
nck-mlcnv Jun 13, 2024
93a4d8e
Add missing dataset property to example (#251)
nck-mlcnv Jun 13, 2024
1f4bb16
Add support for ahead-of-time compilation (#248)
nck-mlcnv Jul 25, 2024
f85fe77
Fix GitHub workflow (#257)
nck-mlcnv Jul 26, 2024
695e5e1
Update result data format (#254)
nck-mlcnv Jul 26, 2024
1083cda
Update Documentation Deployment (#256)
nck-mlcnv Aug 7, 2024
f1b2742
Fix satart script (#259)
nck-mlcnv Aug 7, 2024
0141b11
Fix example (#260)
nck-mlcnv Aug 7, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 0 additions & 4 deletions .bettercodehub.yml

This file was deleted.

9 changes: 0 additions & 9 deletions .github/pages/javadoc-latest.html

This file was deleted.

9 changes: 0 additions & 9 deletions .github/pages/latest.html

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
name: lint
# Checks if version number has been updated
name: Version Check
on: pull_request

jobs:
lint:
name: Release Tag existence Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- uses: actions/checkout@v3
- run: .github/scripts/tagcheck.sh v$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
99 changes: 0 additions & 99 deletions .github/workflows/ci.yml

This file was deleted.

174 changes: 174 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
name: Deployment

on:
push:
branches:
- main

jobs:
find_version:
name: Find Release Version
runs-on: ubuntu-latest
outputs:
RELEASE_VERSION: ${{ steps.step_find.outputs.RELEASE_VERSION }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'adopt'
cache: 'maven'
- name: 'Find velease version'
run: echo "RELEASE_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_OUTPUT
id: step_find

deploy_to_maven:
name: Deploy to Maven Repository
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'adopt'
cache: 'maven'
- name: Publish package
run: mvn --batch-mode deploy -Dmaven.test.skip=true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: 'Upload artifact'
uses: actions/upload-artifact@v4
with:
if-no-files-found: error
name: 'iguana-jar'
path: 'target/'


compile_native:
name: Compile Native Executable
runs-on: ubuntu-latest
needs: find_version
steps:
- uses: actions/checkout@v4
- name: Set up GraalVM
uses: graalvm/setup-graalvm@v1
with:
java-version: 22
components: native-image
cache: maven
- name: 'Compile native-binary'
run: 'mvn -Dagent=true -Pnative package'
- name: 'Upload artifact'
uses: actions/upload-artifact@v4
with:
name: 'iguana-native'
path: 'target/iguana'
if-no-files-found: error

deploy_docs:
name: Deploy Documentation
runs-on: ubuntu-latest
needs: find_version
env:
RELEASE_VERSION: ${{ needs.find_version.outputs.RELEASE_VERSION }}
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'adopt'
cache: 'maven'
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: 3.x
- run: pip install mkdocs-material
- run: pip install mkdocs-macros-plugin
- run: sed -i "s/\$RELEASE_VERSION/${{ env.RELEASE_VERSION }}/g" mkdocs.yml

- run: mkdocs build -d site/${{ env.RELEASE_VERSION }}
- run: mvn javadoc:javadoc

- name: Deploy Site
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./site/${{ env.RELEASE_VERSION }}
destination_dir: ./docs/${{ env.RELEASE_VERSION }}
- name: Deploy Site
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./site/${{ env.RELEASE_VERSION }}
destination_dir: ./docs/latest

- name: Deploy Javadoc
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./javadoc/${{ env.RELEASE_VERSION }}/apidocs
destination_dir: ./javadoc/${{ env.RELEASE_VERSION }}
- name: Deploy Javadoc
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./javadoc/${{ env.RELEASE_VERSION }}/apidocs
destination_dir: ./javadoc/latest

- name: Find Ontology Version
run: echo "ONTOLOGY_VERSION=$(grep 'versionIRI' schema/iguana.owx | grep -Po '[0-9]+.[0-9]+.[0-9]+')" >> $GITHUB_OUTPUT
id: find_ontology_version

- name: Fetch Ontologies
run: git fetch && git checkout origin/gh-pages ontology/
- run: mkdir -p ontology/${{ steps.find_ontology_version.outputs.ONTOLOGY_VERSION }}
- run: cp schema/iguana.owx ontology/${{ steps.find_ontology_version.outputs.ONTOLOGY_VERSION }}/iguana.owx
- run: cp schema/iguana.owx ontology/iguana.owx

- name: Deploy Ontology
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./ontology/
destination_dir: ./ontology/


deploy_gh_release:
name: Publish GitHub Release
runs-on: ubuntu-latest
needs: [compile_native, deploy_to_maven, find_version]
env:
RELEASE_VERSION: ${{ needs.find_version.outputs.RELEASE_VERSION }}

steps:
- uses: actions/checkout@v4
- name: Download artifacts from previous jobs
uses: actions/download-artifact@v4
with:
path: artifacts/
merge-multiple: true
- name: Prepare files
run: |
mkdir iguana
cp artifacts/start-iguana.sh iguana/
cp artifacts/iguana.jar iguana/iguana.jar
cp artifacts/iguana iguana/iguana
cp example-suite.yml iguana/
zip -r iguana-${{ env.RELEASE_VERSION }}.zip iguana/
- name: Create Release
uses: softprops/action-gh-release@v2
with:
tag_name: v${{ env.RELEASE_VERSION }}
name: version ${{ env.RELEASE_VERSION }}
draft: false
prerelease: false
body: ""
fail_on_unmatched_files: true
make_latest: true
token: ${{ secrets.GITHUB_TOKEN }}
files: |
iguana-${{ env.RELEASE_VERSION }}.zip
artifacts/iguana.jar
artifacts/iguana
23 changes: 0 additions & 23 deletions .github/workflows/maven.yml

This file was deleted.

55 changes: 55 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Tests

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

on:
push:
branches:
- develop
pull_request:
branches:
- develop
- main

jobs:
tests:
name: Compile and Run Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'adopt'
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Testing the Java code
run: mvn package

# Only run for pull request on main or if pushed to develop
compile_native:
name: Test Native Executable Compilation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up GraalVM
uses: graalvm/setup-graalvm@v1
with:
java-version: 22
components: native-image
cache: maven
- name: 'Compile native-binary and run tests'
run: 'mvn -Pnative -Dagent=true package'
- name: 'Upload artifact'
uses: actions/upload-artifact@v4
with:
name: 'iguana-native'
path: 'target/iguana'
if-no-files-found: error
Loading
Loading