Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master' into sharelatex
Browse files Browse the repository at this point in the history
* upstream/master: (108 commits)
  Fetcher for IACR eprints (#3473)
  Update internal state of DatabaseChangeMonitor when external changes … (#3503)
  Fixes #3505: Another try to fix the NPE in the search bar (#3512)
  Replace ' with ' so that our HTML preview can handle it correctly
  Added a "Clear text" button in right click menu within the text boxes. (#3475)
  Add reset to English language after a test
  New translations JabRef_en.properties (German)
  Remove ampersand in non-menu localizations
  New translations JabRef_en.properties (German)
  New translations Menu_en.properties (German)
  New translations Menu_en.properties (German)
  New translations JabRef_en.properties (Vietnamese)
  New translations JabRef_en.properties (Italian)
  New translations Menu_en.properties (Italian)
  New translations JabRef_en.properties (Indonesian)
  New translations Menu_en.properties (Indonesian)
  New translations JabRef_en.properties (Greek)
  New translations Menu_en.properties (Greek)
  New translations Menu_en.properties (Japanese)
  New translations JabRef_en.properties (German)
  ...

# Conflicts:
#	build.gradle
  • Loading branch information
Siedlerchr committed Dec 13, 2017
2 parents fac2c3d + c2d0070 commit 74151de
Show file tree
Hide file tree
Showing 176 changed files with 33,052 additions and 31,543 deletions.
4 changes: 4 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,13 @@
Feature requests, questions and general feedback is now handled at http://discourse.jabref.org
Thanks! -->

- [ ] I have tested the latest master version from http://builds.jabref.org/master/ and the problem persists


JabRef version <!-- version as shown in the about box --> on <!-- Windows 10|Ubuntu 14.04|Mac OS X 10.8|... -->
<!-- Hint: If you use a development version (available at http://builds.jabref.org/master/), ensure that you use the latest one. -->


Steps to reproduce:

1. ...
Expand Down
3 changes: 3 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
<!-- describe the changes you have made here: what, why, ... -->


----

- [ ] Change in CHANGELOG.md described
- [ ] Tests created for changes
- [ ] Screenshots added (for bigger UI changes)
Expand Down
14 changes: 8 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,13 @@ env:
- TEST_SUITE=databaseTest
- TEST_SUITE=guiTest
- TEST_SUITE=checkstyle
- TEST_SUITE=codecov

matrix:
fast_finish: true
allow_failures:
- env: TEST_SUITE=fetcherTest
- env: TEST_SUITE=codecov

# JavaFX localization tests need a running X environment
before_install:
Expand All @@ -40,19 +42,19 @@ before_script:
script:
# --scan enables the Gradle build scan, which can be used to investigate the time each action consumes
# For more information see https://gradle.com/scans/get-started
- if [ "$TEST_SUITE" != "guiTest" ] && [ "$TEST_SUITE" != "checkstyle" ]; then ./gradlew $TEST_SUITE $OPTIONS --scan; fi
- if [ "$TEST_SUITE" != "guiTest" ] && [ "$TEST_SUITE" != "checkstyle" ] && [ "$TEST_SUITE" != "codecov" ]; then ./gradlew $TEST_SUITE $OPTIONS --scan; fi
- if [ "$TEST_SUITE" == "checkstyle" ]; then ./gradlew checkstyleMain checkstyleTest checkstyleJmh; fi
- if [ "$TEST_SUITE" == "guiTest" ]; then ./buildres/gui-tests.sh; fi

after_success:
# enable codecov report
- ./gradlew jacocoTestReport
- bash <(curl -s https://codecov.io/bash)
- if [ "$TEST_SUITE" == "codecov" ]; then ./gradlew jacocoJunit5TestReport; bash <(curl -s https://codecov.io/bash); fi

after_failure:
# show test results if build fails
- $TRAVIS_BUILD_DIR/scripts/after-failure.sh

branches:
only:
- master

# cache gradle dependencies
# https://docs.travis-ci.com/user/languages/java#Caching
before_cache:
Expand Down
1 change: 1 addition & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,7 @@ Thomas Arildsen
Thomas Ilsche
Thorsten Dahlheimer
Tim van Rossum
Tim Würtele
Tobias Boceck
Tobias Denkinger
Tobias Diez
Expand Down
19 changes: 18 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,23 @@ We refer to [GitHub issues](https://github.com/JabRef/jabref/issues) by using `#
- Crossreferenced entries are now used when a BibTex key is generated for an entry with empty fields. [#2811](https://github.com/JabRef/jabref/issues/2811)
- We now set the WM_CLASS of the UI to org-jabref-JabRefMain to allow certain Un*x window managers to properly identify its windows
- We changed the default paths for the OpenOffice/LibreOffice binaries to the default path for LibreOffice
- File annotation tab now removes newlines and hyphens before newlines from content and displays an empty String instead of N/A if no contents are found. [#3280](https://github.com/JabRef/jabref/issues/3280)
- We moved the groups field from the "Other fields" tab to "General" (you may have to reset your editor preferences under Options > Set up general fields)
- We no longer create a new entry editor when selecting a new entry to increase performance. [#3187](https://github.com/JabRef/jabref/pull/3187)
- We added the possibility to copy linked files from entries to a single output folder [#2539](https://github.com/JabRef/jabref/pull/2593)
- We increased performance and decreased the memory footprint of the entry editor drastically. [#3331](https://github.com/JabRef/jabref/pull/3331)
- Late initialization of the context menus in the entry editor. This improves performance and memory footprint further [#3340](https://github.com/JabRef/jabref/pull/3340)
- Integrity check "Abbreviation Detection" detects abbreviated names for journals and booktitles based on the internal list instead of only looking for "." signs. Fixes [#3144](https://github.com/JabRef/jabref/issues/3144).
- We added a dialog to show that JabRef is working on checking integrity. [#3358](https://github.com/JabRef/jabref/issues/3358)
- When you click the PDF icon in the file list of the entry editor, then the file is opened. [#3491](https://github.com/JabRef/jabref/issues/3491)
- We added an option to mass append to fields via the Quality -> set/clear/append/rename fields dialog. [#2721](https://github.com/JabRef/jabref/issues/2721)
- We added a check on startup to ensure JabRef is run with an adequate Java version. [3310](https://github.com/JabRef/jabref/issues/3310)
- In the preference, all installed java Look and Feels are now listed and selectable
- We added an ID fetcher for [IACR eprints](https://eprint.iacr.org/). [#3473](https://github.com/JabRef/jabref/pull/3473)
- We added a clear option to the right-click menu of the text field in the entry editor. [koppor#198](https://github.com/koppor/jabref/issues/198)

### Fixed
- We fixed the translation of \textendash in the entry preview [#3307](https://github.com/JabRef/jabref/issues/3307)
- We fixed the translation of \textendash and \textquotesingle in the entry preview [#3307](https://github.com/JabRef/jabref/issues/3307)
- We fixed an issue where JabRef would not terminated after asking to collect anonymous statistics [#2955 comment](https://github.com/JabRef/jabref/issues/2955#issuecomment-334591123)
- We fixed an issue where JabRef would not shut down when started with the '-n' (No GUI) option. [#3247](https://github.com/JabRef/jabref/issues/3247)
- We improved the way metadata is updated in remote databases. [#3235](https://github.com/JabRef/jabref/issues/3235)
Expand All @@ -42,10 +48,21 @@ We refer to [GitHub issues](https://github.com/JabRef/jabref/issues) by using `#
- We no longer allow to add a field multiple times in customized entry types and thereby fix an issue in the entry editor that resulted from having a field multiple times. [#3046](https://github.com/JabRef/jabref/issues/3046)
- We fixed an issue where JabRef would not show the translated content at some points, although there existed a translation
- We fixed an issue where editing in the source tab would override content of other entries [#3352](https://github.com/JabRef/jabref/issues/3352#issue-268580818)
- We fixed an issue where file links created under windows could not be opened on Linux/OSX [#3311](https://github.com/JabRef/jabref/issues/3311)
- We fixed several issues with the automatic linking of files in the entry editor where files were not found or not correctly saved in the bibtex source [#3346](https://github.com/JabRef/jabref/issues/3346)
- We fixed an issue where fetching entries from crossref that had no titles caused an error [#3376](https://github.com/JabRef/jabref/issues/3376)
- We fixed an issue where the same Java Look and Feel would be listed more than once in the Preferences. [#3391](https://github.com/JabRef/jabref/issues/3391)
- We fixed an issue where errors in citation styles triggered an exception when opening the preferences dialog [#3389](https://github.com/JabRef/jabref/issues/3389)
- We fixed an issue where entries were displayed twice after insertion into a shared database. [#3164](https://github.com/JabRef/jabref/issues/3164)
- We fixed an issue where special fields (such as `printed`) could not be cleared when syncing special fields via the keywords [#3432](https://github.com/JabRef/jabref/issues/3432)
- We fixed an issue where the tooltip of the global search bar showed html tags instead of formatting the text [#3381](https://github.com/JabRef/jabref/issues/3381)
- We fixed an issue where timestamps were not updated for changed entries [#2810](https://github.com/JabRef/jabref/issues/2810)
- We fixed an issue where trying to fetch data from Medline/PubMed resulted in an error [#3463](https://github.com/JabRef/jabref/issues/3463)
- We fixed an issue where double clicking on an entry in the integrity check dialog resulted in an exception [#3485](https://github.com/JabRef/jabref/issues/3485)
- We fixed an issue where the entry type could sometimes not be changed when the entry editor was open [#3435](https://github.com/JabRef/jabref/issues/3435)
- We fixed an issue where dropping a pdf on the entry table and renaming it triggered an exception [#3490](https://github.com/JabRef/jabref/issues/3490)
- We fixed an issue where integrating external changes to a bib file caused instability [#3498](https://github.com/JabRef/jabref/issues/3498)
- We fixed an issue where fetched entries from the ACM fetcher could not be imported [#3500](https://github.com/JabRef/jabref/issues/3500)

### Removed

Expand Down
109 changes: 77 additions & 32 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,28 @@ import org.gradle.internal.os.OperatingSystem

// to update the gradle wrapper, execute ./gradlew wrapper --gradle-version 4.0

buildscript {
repositories {
mavenLocal()
jcenter()
maven {
url 'https://oss.sonatype.org/content/groups/public'
}
}
dependencies {
classpath 'org.junit.platform:junit-platform-gradle-plugin:1.0.2'
}
}

plugins {
id 'com.gradle.build-scan' version '1.9'
id 'com.install4j.gradle' version '6.1.5'
id 'com.gradle.build-scan' version '1.10.3'
id 'com.install4j.gradle' version '7.0.3'
id 'com.github.johnrengelman.shadow' version '2.0.1'
id "de.sebastianboegl.shadow.transformer.log4j" version "2.1.1"
id "com.simonharrer.modernizer" version '1.5.0-1'
id 'me.champeau.gradle.jmh' version '0.4.3'
id 'net.ltgt.errorprone' version '0.0.13'
id 'com.github.ben-manes.versions' version '0.17.0'
}

// use the gradle build scan feature: https://scans.gradle.com/get-started
Expand All @@ -25,6 +39,7 @@ apply plugin: 'jacoco'
apply plugin: 'install4j'
apply plugin: 'me.champeau.gradle.jmh'
apply plugin: 'checkstyle'
apply plugin: 'org.junit.platform.gradle.plugin'

apply from: 'eclipse.gradle'
apply from: 'localization.gradle'
Expand All @@ -38,6 +53,10 @@ sourceCompatibility = 1.8
targetCompatibility = 1.8
mainClassName = "org.jabref.JabRefMain"

// These are the Java version requirements we will check on each start of JabRef
ext.minRequiredJavaVersion = "1.8.0_144"
ext.allowJava9 = false

install4j {
installDir = file(project.ext.install4jDir)
}
Expand All @@ -62,10 +81,6 @@ dependencies {
compile 'com.jgoodies:jgoodies-forms:1.9.0'
compile 'com.jgoodies:jgoodies-looks:2.7.0'

// Later versions cannot be used. Tested until 1.6.5-1.
// See https://github.com/JabRef/jabref/issues/271 for details.
compile 'org.swinglabs.swingx:swingx-core:1.6.4'

// update to 2.0.x is not possible - see https://github.com/JabRef/jabref/pull/1096#issuecomment-208857517
compile 'org.apache.pdfbox:pdfbox:1.8.13'
compile 'org.apache.pdfbox:fontbox:1.8.13'
Expand All @@ -82,7 +97,7 @@ dependencies {
compile 'org.openoffice:unoil:4.1.2'

compile 'com.github.bkromhout:java-diff-utils:2.1.1'
compile 'info.debatty:java-string-similarity:1.0.0'
compile 'info.debatty:java-string-similarity:1.0.1'

antlr3 'org.antlr:antlr:3.5.2'
compile 'org.antlr:antlr-runtime:3.5.2'
Expand All @@ -97,7 +112,7 @@ dependencies {

compile 'net.java.dev.glazedlists:glazedlists_java15:1.9.1'

compile 'com.google.guava:guava:23.3-jre'
compile 'com.google.guava:guava:23.5-jre'

// JavaFX stuff
compile 'com.airhacks:afterburner.fx:1.7.0'
Expand All @@ -111,14 +126,13 @@ dependencies {
// Cannot be updated to 9.*.* until Jabref works with Java 9
compile 'org.controlsfx:controlsfx:8.40.14'

compile 'org.jsoup:jsoup:1.10.3'

compile 'org.jsoup:jsoup:1.11.2'
compile 'com.mashape.unirest:unirest-java:1.4.9'

compile 'commons-logging:commons-logging:1.2'
compile 'org.apache.logging.log4j:log4j-jcl:2.9.1'
compile 'org.apache.logging.log4j:log4j-api:2.9.1'
compile 'org.apache.logging.log4j:log4j-core:2.9.1'
compile 'org.apache.logging.log4j:log4j-jcl:2.10.0'
compile 'org.apache.logging.log4j:log4j-api:2.10.0'
compile 'org.apache.logging.log4j:log4j-core:2.10.0'

// need to use snapshots as the stable version is from 2013 and doesn't support v1.0.1 CitationStyles
compile 'org.citationstyles:styles:1.0.1-SNAPSHOT'
Expand All @@ -137,13 +151,20 @@ dependencies {
compile "org.bitbucket.cowwoc:diff-match-patch:1.1"

testCompile 'junit:junit:4.12'
testCompile 'org.mockito:mockito-core:2.11.0'
testCompile 'com.github.tomakehurst:wiremock:2.10.1'
testCompile 'org.junit.jupiter:junit-jupiter-api:5.0.2'
testCompile 'org.junit.jupiter:junit-jupiter-params:5.0.2'
testRuntime 'org.junit.jupiter:junit-jupiter-engine:5.0.2'
testCompile 'org.junit.platform:junit-platform-launcher:1.0.2'
testRuntime 'org.junit.vintage:junit-vintage-engine:4.12.1'
testRuntime 'org.apache.logging.log4j:log4j-core:2.9.1'
testRuntime 'org.apache.logging.log4j:log4j-jul:2.9.1'
testCompile 'org.mockito:mockito-core:2.12.0'
testCompile 'com.github.tomakehurst:wiremock:2.12.0'
testCompile 'org.assertj:assertj-swing-junit:3.8.0'
testCompile 'org.reflections:reflections:0.9.11'
testCompile 'org.xmlunit:xmlunit-core:2.5.0'
testCompile 'org.xmlunit:xmlunit-matchers:2.5.0'
testCompile 'com.tngtech.archunit:archunit-junit:0.4.0'
testCompile 'org.xmlunit:xmlunit-core:2.5.1'
testCompile 'org.xmlunit:xmlunit-matchers:2.5.1'
testCompile 'com.tngtech.archunit:archunit-junit:0.5.0'
testCompile 'org.slf4j:slf4j-jcl:1.7.25' // required by ArchUnit to enable logging over jcl
}

Expand All @@ -167,7 +188,11 @@ processResources {
"year": String.valueOf(Calendar.getInstance().get(Calendar.YEAR)),
"authors": new File('AUTHORS').readLines().findAll { !it.startsWith("#") }.join(", "),
"developers": new File('DEVELOPERS').readLines().findAll { !it.startsWith("#") }.join(", "),
"azureInstrumentationKey": System.getenv('AzureInstrumentationKey'))
"azureInstrumentationKey": System.getenv('AzureInstrumentationKey'),
"minRequiredJavaVersion": minRequiredJavaVersion,
"allowJava9": allowJava9

)
filteringCharset = 'UTF-8'
}

Expand Down Expand Up @@ -244,33 +269,31 @@ javadoc {
}
}

test {
useJUnit {
excludeCategories 'org.jabref.testutils.category.DatabaseTests'
excludeCategories 'org.jabref.testutils.category.FetcherTests'
excludeCategories 'org.jabref.testutils.category.GUITests'
}
testLogging {
events "failed"
exceptionFormat "full"
junitPlatform {
filters {
tags {
exclude 'DatabaseTest', 'org.jabref.testutils.category.FetcherTest', 'org.jabref.testutils.category.GUITest'
}
}

logManager 'org.apache.logging.log4j.jul.LogManager'
}

task databaseTest(type: Test) {
useJUnit {
includeCategories 'org.jabref.testutils.category.DatabaseTests'
includeCategories 'org.jabref.testutils.category.DatabaseTest'
}
}

task fetcherTest(type: Test) {
useJUnit {
includeCategories 'org.jabref.testutils.category.FetcherTests'
includeCategories 'org.jabref.testutils.category.FetcherTest'
}
}

task guiTest(type: Test) {
useJUnit {
includeCategories 'org.jabref.testutils.category.GUITests'
includeCategories 'org.jabref.testutils.category.GUITest'
}
}

Expand All @@ -289,7 +312,8 @@ tasks.withType(Test) {
}

task jacocoMerge(type: JacocoMerge) {
executionData test, databaseTest
executionData file("$buildDir/jacoco/junitPlatformTest.exec"), file("$buildDir/jacoco/databaseTest.exec"), file("$buildDir/jacoco/fetcherTest.exec")
dependsOn junitPlatformTest, databaseTest, fetcherTest
}

jacocoTestReport {
Expand All @@ -302,6 +326,27 @@ jacocoTestReport {
}
}

afterEvaluate {
def junitPlatformTest = tasks.junitPlatformTest

jacoco {
applyTo(junitPlatformTest)
}

task jacocoJunit5TestReport(type: JacocoReport) {
executionData jacocoMerge.destinationFile
dependsOn jacocoMerge
sourceSets sourceSets.main
sourceDirectories = files(sourceSets.main.allSource.srcDirs)
classDirectories = files(sourceSets.main.output)

reports {
xml.enabled true
html.enabled true
}
}
}

shadowJar {
classifier 'fat'
}
Expand Down
1 change: 1 addition & 0 deletions circle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ deployment:
- ./gradlew -Pinstall4jDir="install4j7" clean release --stacktrace
# upload at all circumstances
- scripts/upload-to-builds.jabref.org.sh
- ./gradlew dependencyUpdates -Drevision=release -DoutputFormatter=json -DoutputDir=build/releases
development:
# match all branches; this is executed, if "release" is not matched - see https://circleci.com/docs/configuration/
branch: /.*/
Expand Down
13 changes: 13 additions & 0 deletions crowdin.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
files:
- source: /src/main/resources/l10n/Menu_en.properties
translation: /src/main/resources/l10n/Menu_%two_letters_code%.properties
languages_mapping:
two_letters_code:
pt-BR: pt_BR
id: in
- source: /src/main/resources/l10n/JabRef_en.properties
translation: /src/main/resources/l10n/JabRef_%two_letters_code%.properties
languages_mapping:
two_letters_code:
pt-BR: pt_BR
id: in
5 changes: 0 additions & 5 deletions external-libraries.txt
Original file line number Diff line number Diff line change
Expand Up @@ -235,11 +235,6 @@ Project: OpenOffice.org
URL: http://www.openoffice.org/api/SDK
License: Apache-2.0

Id: org.swinglabs.swingx:swingx-core
Project: SwingX
URL: https://swingx.java.net/
License: LGPL-3.0

Id: org.xmlunit:xmlunit-core
Project: XMLUnit
URL: http://www.xmlunit.org/
Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.3.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-bin.zip
5 changes: 3 additions & 2 deletions jabref.install4j
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<install4j version="7.0.1" transformSequenceNumber="7">
<install4j version="7.0.3" transformSequenceNumber="7">
<directoryPresets config="build/releases/${compiler:buildFileName}" />
<application name="JabRef" distributionSourceDir="" applicationId="0034-7691-1464-4754" mediaDir="build/install4j" mediaFilePattern="${compiler:sys.shortName}_${compiler:sys.platform}_${compiler:sys.version}" compression="6" lzmaCompression="false" pack200Compression="false" excludeSignedFromPacking="true" commonExternalFiles="false" createMd5Sums="true" shrinkRuntime="true" shortName="JabRef" publisher="JabRef Community" publisherWeb="https://www.jabref.org/" version="DEV" allPathsRelative="true" backupOnSave="false" autoSave="true" convertDotsToUnderscores="true" macSignature="????" macVolumeId="780dfea2d33a0244" javaMinVersion="1.8" javaMaxVersion="" allowBetaVM="false" jdkMode="runtimeJre" jdkName="">
<application name="JabRef" distributionSourceDir="" applicationId="0034-7691-1464-4754" mediaDir="build/install4j" mediaFilePattern="${compiler:sys.shortName}_${compiler:sys.platform}_${compiler:sys.version}" compression="6" lzmaCompression="false" pack200Compression="false" excludeSignedFromPacking="true" commonExternalFiles="false" createMd5Sums="true" shrinkRuntime="true" shortName="JabRef" publisher="JabRef Community" publisherWeb="https://www.jabref.org/" version="DEV" allPathsRelative="true" backupOnSave="false" autoSave="true" convertDotsToUnderscores="true" macSignature="????" macVolumeId="780dfea2d33a0244" javaMinVersion="1.8" javaMaxVersion="1.8" allowBetaVM="false" jdkMode="runtimeJre" jdkName="">
<languages skipLanguageSelection="true" languageSelectionInPrincipalLanguage="false">
<principalLanguage id="en" customLocalizationFile="" />
<additionalLanguages>
Expand Down Expand Up @@ -31,6 +31,7 @@
</additionalLanguages>
</languages>
<searchSequence>
<envVar name="PATH" />
<registry />
<envVar name="JAVA_HOME" />
<envVar name="JDK_HOME" />
Expand Down

0 comments on commit 74151de

Please sign in to comment.