Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master' into addInfoPlist
Browse files Browse the repository at this point in the history
* upstream/master: (287 commits)
  Bump junit-vintage-engine from 5.6.1 to 5.6.2 (#6276)
  Number of items found in ImportEntriesDialog (#6248)
  Fix dependency label
  Bump flexmark-ext-gfm-strikethrough from 0.61.0 to 0.61.6 (#6273)
  Bump unirest-java from 3.7.01 to 3.7.02 (#6275)
  Bump junit-platform-launcher from 1.6.1 to 1.6.2 (#6279)
  Bump flexmark-ext-gfm-tasklist from 0.61.0 to 0.61.6 (#6278)
  Bump junit-jupiter from 5.6.1 to 5.6.2 (#6274)
  Bump flexmark from 0.61.0 to 0.61.6 (#6280)
  Bump classgraph from 4.8.68 to 4.8.69 (#6277)
  Bump org.beryx.jlink from 2.17.4 to 2.17.5 (#6281)
  Improve performance (#6270)
  Improve calculation of matched entries upon change (#6268)
  Fix sort by priority (#6222) (#6265)
  Squashed 'src/main/resources/csl-styles/' changes from 88726cb..db54e56
  Use https everywhere
  Entry editor: Add more tooltips and wrap tooltips if necessary (#6239)
  JDK14 switch - and checkstyle skipping (#6250)
  Bump postgresql from 42.2.11 to 42.2.12 (#6254)
  Bump unirest-java from 3.7.00 to 3.7.01 (#6253)
  ...
  • Loading branch information
Siedlerchr committed Apr 13, 2020
2 parents b24a3a0 + 67b1203 commit 30fec30
Show file tree
Hide file tree
Showing 568 changed files with 29,471 additions and 8,042 deletions.
2 changes: 1 addition & 1 deletion .dependabot/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ update_configs:
directory: "/"
update_schedule: "weekly"
default_labels:
- "dependencies"
- "t: dependencies"
automerged_updates:
- match:
dependency_type: "all"
Expand Down
13 changes: 6 additions & 7 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,18 @@
<!--
Describe the changes you have made here: what, why, ...
Link issues by using the following pattern: #333.
If you fixed a koppor issue, link it with following pattern: [koppor#47](https://github.com/koppor/jabref/issues/47).
Link issues that are fixed, e.g. "Fixes #333".
If you fixed a koppor issue, link it, e.g. "Fixes https://github.com/koppor/jabref/issues/47".
The title of the PR must not reference an issue, because GitHub does not support autolinking there.
-->


<!--
- All items with `[ ]` are still a TODO.
- All items checked with `[x]` are done.
- Remove items not applicable
- Go through the list below. If a task has been completed, mark it done by using `[x]`.
- Please don't remove any items, just leave them unchecked if they are not applicable.
-->

- [ ] Change in CHANGELOG.md described (if applicable)
- [ ] Tests created for changes (if applicable)
- [ ] Manually tested changed features in running JabRef (always required)
- [ ] Screenshots added in PR description (for bigger UI changes)
- [ ] [Checked documentation](https://docs.jabref.org/): Is the information available and up to date? If not: Issue created at <https://github.com/JabRef/user-documentation/issues>.
- [ ] Screenshots added in PR description (for UI changes)
- [ ] [Checked documentation](https://docs.jabref.org/): Is the information available and up to date? If not created an issue at <https://github.com/JabRef/user-documentation/issues> or, even better, submitted a pull request to the documentation repository.
35 changes: 16 additions & 19 deletions .github/workflows/check-outdated-dependencies.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: Check dependencies

on:
on:
schedule:
- cron: '0 0 * * TUE' # Run every Tuesday (after dependabot, which runs Monday)

Expand All @@ -9,21 +9,18 @@ jobs:
name: Check dependencies
runs-on: ubuntu-latest
steps:
- name: Checkout source
uses: actions/checkout@v1
with:
depth: 1
submodules: false
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 13.0.2
- name: Look for outdated dependencies
run: ./gradlew -q checkOutdatedDependencies
- name: Report issues
if: failure()
uses: JasonEtco/create-an-issue@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
filename: .github/outdatedDependencies.md
- name: Checkout source
uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 14
- name: Look for outdated dependencies
run: ./gradlew -q checkOutdatedDependencies
- name: Report issues
if: failure()
uses: JasonEtco/create-an-issue@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
filename: .github/outdatedDependencies.md
37 changes: 25 additions & 12 deletions .github/workflows/cleanup_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,28 @@ jobs:
runs-on: ubuntu-latest

steps:
- name: Extract branch name
id: extract_branch
run: |
echo "##[set-output name=branch;]$(echo ${{ github.event.pull_request.head.ref }})"
- name: Delete folder on builds.jabref.org
uses: appleboy/ssh-action@v0.0.6
with:
script: rm -rf /var/www/builds.jabref.org/www/${{ steps.extract_branch.outputs.branch }}
host: build-upload.jabref.org
port: 9922
username: jrrsync
key: ${{ secrets.buildJabRefPrivateKey }}
- name: Check secrets presence
id: checksecrets
shell: bash
run: |
if [ "$BUILDJABREFPRIVATEKEY" == "" ]; then
echo ::set-output name=secretspresent::false
else
echo ::set-output name=secretspresent::true
fi
env:
BUILDJABREFPRIVATEKEY: ${{ secrets.buildJabRefPrivateKey }}
- name: Extract branch name
id: extract_branch
if: ${{ steps.checksecrets.outputs.secretspresent }}
run: |
echo "##[set-output name=branch;]$(echo ${{ github.event.pull_request.head.ref }})"
- name: Delete folder on builds.jabref.org
if: ${{ steps.checksecrets.outputs.secretspresent }}
uses: appleboy/ssh-action@v0.0.6
with:
script: rm -rf /var/www/builds.jabref.org/www/${{ steps.extract_branch.outputs.branch }} || true
host: build-upload.jabref.org
port: 9922
username: jrrsync
key: ${{ secrets.buildJabRefPrivateKey }}
148 changes: 54 additions & 94 deletions .github/workflows/deployment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches:
- master
- master-release
paths-ignore:
- 'docs/**'
- 'src/test/**'
Expand All @@ -14,123 +15,77 @@ on:
- 'src/test/**'
- 'README.md'

env:
SpringerNatureAPIKey: ${{ secrets.SpringerNatureAPIKey }}

jobs:
build:
strategy:
fail-fast: true
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
include:
- os: ubuntu-latest
displayName: linux
jpackageDownload: https://download.java.net/java/early_access/jdk14/34/GPL/openjdk-14-ea+34_linux-x64_bin.tar.gz
jdk14Path: /jdk-14
archivePortable: tar -c -C build/distribution JabRef | pigz --rsyncable > build/distribution/JabRef-portable_linux.tar.gz && rm -R build/distribution/JabRef
- os: windows-latest
displayName: windows
jpackageDownload: https://download.java.net/java/early_access/jdk14/34/GPL/openjdk-14-ea+34_windows-x64_bin.zip
jdk14Path: /jdk-14
archivePortable: 7z a -r build/distribution/JabRef-portable_windows.zip ./build/distribution/JabRef && rm -R build/distribution/JabRef
- os: macOS-latest
displayName: macOS
jpackageDownload: https://download.java.net/java/early_access/jdk14/34/GPL/openjdk-14-ea+34_osx-x64_bin.tar.gz
jdk14Path: /jdk-14.jdk/Contents/Home
archivePortable: brew install pigz && tar -c -C build/distribution JabRef.app | pigz --rsyncable > build/distribution/JabRef-portable_macos.tar.gz && rm -R build/distribution/JabRef.app
- os: ubuntu-latest
displayName: linux
archivePortable: tar -c -C build/distribution JabRef | pigz --rsyncable > build/distribution/JabRef-portable_linux.tar.gz && rm -R build/distribution/JabRef
- os: windows-latest
displayName: windows
archivePortable: 7z a -r build/distribution/JabRef-portable_windows.zip ./build/distribution/JabRef && rm -R build/distribution/JabRef
- os: macOS-latest
displayName: macOS
archivePortable: brew install pigz && tar -c -C build/distribution JabRef.app | pigz --rsyncable > build/distribution/JabRef-portable_macos.tar.gz && rm -R build/distribution/JabRef.app

runs-on: ${{ matrix.os }}
name: Create installer and portable version for ${{ matrix.displayName }}

steps:
- name: Checkout source
uses: actions/checkout@v2-beta
with:
fetch-depth: 0
- name: Fetch tags and master for GitVersion
run: |
git fetch --tags origin
git rev-parse --verify master
if (-not $?) {
git branch --force --create-reflog master origin/master
}
shell: pwsh
uses: actions/checkout@v2
- name: Fetch all history for all tags and branches
run: git fetch --prune --unshallow
- name: Install GitVersion
uses: gittools/actions/setup-gitversion@v0.3
uses: gittools/actions/gitversion/setup@v0.9.2
with:
versionSpec: '5.1.2'
versionSpec: '5.2.x'
- name: Run GitVersion
id: gitversion
uses: gittools/actions/execute-gitversion@v0.3
uses: gittools/actions/gitversion/execute@v0.9.2
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 13.0.2
# configuration based on https://github.com/actions/cache/blob/master/examples.md#java---gradle
java-version: 14
- uses: actions/cache@v1
name: Restore gradle cache
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
key: ${{ runner.os }}-gradle-cache-${{ hashFiles('**/*.gradle') }}
# in case there is no cache for the current OS, fall back to any other OS
restore-keys: |
${{ runner.OS }}-gradle-${{ env.cache-name }}-
${{ runner.OS }}-gradle-
${{ runner.OS }}-
${{ runner.os }}-gradle-cache-
Linux-gradle-cache-${{ hashFiles('**/*.gradle') }}
Windows-gradle-cache-${{ hashFiles('**/*.gradle') }}
macOS-gradle-cache-${{ hashFiles('**/*.gradle') }}
- uses: actions/cache@v1
name: Cache gradle wrapper
# cache at Mac OS X is 2 GB (too large)
if: matrix.displayName == 'linux' || matrix.displayName == 'windows'
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }}
- name: Download jpackage
# We need to download jpackage from https://jdk.java.net/jpackage/
run: |
import tarfile
import zipfile
import sys
if sys.version_info[0] >= 3:
from urllib.request import urlretrieve
else:
from urllib import urlretrieve
url = "${{ matrix.jpackageDownload }}"
tmpfile, headers = urlretrieve(url)
if (url.endswith("tar.gz")):
tar = tarfile.open(tmpfile)
tar.extractall()
tar.close()
elif (url.endswith("zip")):
zip = zipfile.ZipFile(tmpfile)
zip.extractall()
zip.close()
shell: python
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }}
# in case there is no cache for the current OS, fall back to any other OS
restore-keys: |
Linux-gradle-wrapper-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }}
Windows-gradle-wrapper-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }}
macOS-gradle-wrapper-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }}
- name: Build runtime image
run: ./gradlew -PprojVersion="${{ steps.gitversion.outputs.AssemblySemVer }}" -PprojVersionInfo="${{ steps.gitversion.outputs.InformationalVersion }}" jlinkZip
- name: Build installer
run: |
export BADASS_JLINK_JPACKAGE_HOME="${GITHUB_WORKSPACE}${{ matrix.jdk14Path }}"
./gradlew -PprojVersion="${{ steps.gitversion.outputs.AssemblySemVer }}" -PprojVersionInfo="${{ steps.gitversion.outputs.InformationalVersion }}" jpackage
run: ./gradlew -PprojVersion="${{ steps.gitversion.outputs.AssemblySemVer }}" -PprojVersionInfo="${{ steps.gitversion.outputs.InformationalVersion }}" jpackage
shell: bash
- name: Package application image
run: ${{ matrix.archivePortable }}
shell: bash
- name: Build snap (1) Setup snapcraft
uses: jhenstridge/snapcraft-build-action@v1
id: snapcraft
if: matrix.displayName == 'linux'
- name: Build snap (2) Run build
run: |
mv ${{ steps.snapcraft.outputs.snap }} build/distribution/
if: matrix.displayName == 'linux'
- name: Build snap (3) Upload snap
if: matrix.displayName == 'linux' && github.ref == 'refs/heads/master'
env:
SNAPCRAFT_LOGIN_FILE: ${{ secrets.SNAPCRAFT_LOGIN_FILE }}
run: |
mkdir .snapcraft && echo ${SNAPCRAFT_LOGIN_FILE} | base64 --decode --ignore-garbage > .snapcraft/snapcraft.cfg
snapcraft push build/distribution/jabref*.snap --release edge || true
shell: bash
- name: Rename files
run: |
get-childitem -Path build/distribution/*
get-childitem -Path build/distribution/* | rename-item -NewName {$_.name -replace "${{ steps.gitversion.outputs.AssemblySemVer }}","${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}"}
get-childitem -Path build/distribution/* | rename-item -NewName {$_.name -replace "portable","${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}-portable"}
shell: pwsh
Expand All @@ -144,25 +99,28 @@ jobs:
runs-on: ubuntu-latest
needs: [build]
steps:
- name: Checkout source
uses: actions/checkout@v2-beta
with:
fetch-depth: 0
- name: Fetch tags and master for GitVersion
- name: Check secrets presence
id: checksecrets
shell: bash
run: |
git fetch --tags origin
git rev-parse --verify master
if (-not $?) {
git branch --force --create-reflog master origin/master
}
shell: pwsh
if [ "$BUILDJABREFPRIVATEKEY" == "" ]; then
echo ::set-output name=secretspresent::false
else
echo ::set-output name=secretspresent::true
fi
env:
BUILDJABREFPRIVATEKEY: ${{ secrets.buildJabRefPrivateKey }}
- name: Checkout source
uses: actions/checkout@v2
- name: Fetch all history for all tags and branches
run: git fetch --prune --unshallow
- name: Install GitVersion
uses: gittools/actions/setup-gitversion@v0.3
uses: gittools/actions/gitversion/setup@v0.9.2
with:
versionSpec: '5.1.2'
versionSpec: '5.2.x'
- name: Run GitVersion
id: gitversion
uses: gittools/actions/execute-gitversion@v0.3
uses: gittools/actions/gitversion/execute@v0.9.2
- name: Get linux binaries
uses: actions/download-artifact@master
with:
Expand All @@ -180,6 +138,7 @@ jobs:
path: build/distribution/
- name: Deploy to builds.jabref.org
id: deploy
if: ${{ steps.checksecrets.outputs.secretspresent }}
uses: Pendect/action-rsyncer@v1.1.0
env:
DEPLOY_KEY: ${{ secrets.buildJabRefPrivateKey }}
Expand All @@ -190,3 +149,4 @@ jobs:
ssh_options: '-p 9922'
src: 'build/distribution/'
dest: jrrsync@build-upload.jabref.org:/var/www/builds.jabref.org/www/${{ steps.gitversion.outputs.branchName }}/

14 changes: 0 additions & 14 deletions .github/workflows/gradle-wrapper-validation.yml

This file was deleted.

41 changes: 41 additions & 0 deletions .github/workflows/snap.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Snap

on:
push:
branches:
- snapcraft
schedule:
# run on each day
- cron: '33 4 * * *'

jobs:
build:
runs-on: ubuntu-latest
name: Create snapcraft image

steps:
- name: Check secrets presence
id: checksecrets
shell: bash
run: |
if [ "SNAPCRAFT_LOGIN_FILE" == "" ]; then
echo ::set-output name=secretspresent::false
else
echo ::set-output name=secretspresent::true
fi
env:
SNAPCRAFT_LOGIN_FILE: ${{ secrets.SNAPCRAFT_LOGIN_FILE }}
- name: Checkout source
uses: actions/checkout@v2
# The image relies on https://builds.jabref.org/master/JabRef-5.0-portable_linux.tar.gz^
# See snap/snapcraft.yml for details
- name: Build snap (1) Run build
uses: jhenstridge/snapcraft-build-action@v1
id: snapcraft
- name: Build snap (2) Upload snap
if: ${{ steps.checksecrets.outputs.secretspresent }}
uses: jhenstridge/snapcraft-publish-action@v1
with:
store_login: ${{ secrets.SNAPCRAFT_LOGIN_FILE }}
snap: ${{ steps.snapcraft.outputs.snap }}
release: edge
Loading

0 comments on commit 30fec30

Please sign in to comment.