From 26814fe199985887690ecec9c49c8e895d462563 Mon Sep 17 00:00:00 2001 From: Christoph Date: Sun, 17 Jan 2021 22:28:37 +0100 Subject: [PATCH 01/16] Export full month name instead of number in ms office (#7358) Follow up fix from #7354 --- CHANGELOG.md | 1 + src/main/java/org/jabref/logic/msbib/MSBibEntry.java | 2 +- .../org/jabref/logic/exporter/MsBibExportFormatTest1.xml | 2 +- .../jabref/logic/exporter/MsBibExportFormatTestDateAcessed.xml | 2 +- src/test/resources/org/jabref/logic/exporter/MsBibUrlDate.xml | 2 +- 5 files changed, 5 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a0cf3a2d6d..b4a9c21d2ba 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve ### Changed - The content of the field `timestamp` is migrated to `creationdate`. In case one configured "udpate timestampe", it is migrated to `modificationdate`. [koppor#130](https://github.com/koppor/jabref/issues/130) +- The export to MS Office XML now uses the month name for the field `MonthAcessed` instead of the two digit number [#7354](https://github.com/JabRef/jabref/issues/7354) ### Fixed diff --git a/src/main/java/org/jabref/logic/msbib/MSBibEntry.java b/src/main/java/org/jabref/logic/msbib/MSBibEntry.java index 43e7435896d..5a39832fa49 100644 --- a/src/main/java/org/jabref/logic/msbib/MSBibEntry.java +++ b/src/main/java/org/jabref/logic/msbib/MSBibEntry.java @@ -344,7 +344,7 @@ private void addDateAcessedFields(Document document, Element rootNode) { }); parsedDateAcesseField.flatMap(Date::getMonth) - .map(Month::getTwoDigitNumber).ifPresent(monthAcessed -> { + .map(Month::getFullName).ifPresent(monthAcessed -> { addField(document, rootNode, "Month" + "Accessed", monthAcessed); }); parsedDateAcesseField.flatMap(Date::getDay).map(Object::toString).ifPresent(dayAccessed -> { diff --git a/src/test/resources/org/jabref/logic/exporter/MsBibExportFormatTest1.xml b/src/test/resources/org/jabref/logic/exporter/MsBibExportFormatTest1.xml index 0f6ca092a58..76236c5ac9c 100644 --- a/src/test/resources/org/jabref/logic/exporter/MsBibExportFormatTest1.xml +++ b/src/test/resources/org/jabref/logic/exporter/MsBibExportFormatTest1.xml @@ -26,7 +26,7 @@ 5 1000 2015 - 10 + October 12 unpublished diff --git a/src/test/resources/org/jabref/logic/exporter/MsBibExportFormatTestDateAcessed.xml b/src/test/resources/org/jabref/logic/exporter/MsBibExportFormatTestDateAcessed.xml index d77676b0654..4db29dcbe3d 100644 --- a/src/test/resources/org/jabref/logic/exporter/MsBibExportFormatTestDateAcessed.xml +++ b/src/test/resources/org/jabref/logic/exporter/MsBibExportFormatTestDateAcessed.xml @@ -8,7 +8,7 @@ Test Testa 2015 - 12 + December 12 diff --git a/src/test/resources/org/jabref/logic/exporter/MsBibUrlDate.xml b/src/test/resources/org/jabref/logic/exporter/MsBibUrlDate.xml index 0ccc4234dd0..4333908bb80 100644 --- a/src/test/resources/org/jabref/logic/exporter/MsBibUrlDate.xml +++ b/src/test/resources/org/jabref/logic/exporter/MsBibUrlDate.xml @@ -11,7 +11,7 @@ CEUR-WS.org http://ceur-ws.org/Vol-438 2021 - 01 + January 4 From 4489bb6fbbe82fa9351c597a334419a12657389c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Jan 2021 07:42:35 +0100 Subject: [PATCH 02/16] Bump libreoffice from 7.0.3 to 7.0.4 (#7362) Bumps libreoffice from 7.0.3 to 7.0.4. Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index b72b14d1e16..d4ffade4c9b 100644 --- a/build.gradle +++ b/build.gradle @@ -114,7 +114,7 @@ dependencies { implementation 'commons-cli:commons-cli:1.4' - implementation 'org.libreoffice:libreoffice:7.0.3' + implementation 'org.libreoffice:libreoffice:7.0.4' implementation 'org.libreoffice:unoloader:7.0.4' implementation 'io.github.java-diff-utils:java-diff-utils:4.9' From 20def207991f02ca2d29cd5dd1be1681308e571f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Jan 2021 07:43:39 +0100 Subject: [PATCH 03/16] Bump org.beryx.jlink from 2.23.1 to 2.23.2 (#7361) Bumps org.beryx.jlink from 2.23.1 to 2.23.2. Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index d4ffade4c9b..f27ea39ad7b 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ plugins { id 'com.github.ben-manes.versions' version '0.36.0' id 'org.javamodularity.moduleplugin' version '1.7.0' id 'org.openjfx.javafxplugin' version '0.0.9' - id 'org.beryx.jlink' version '2.23.1' + id 'org.beryx.jlink' version '2.23.2' // nicer test outputs during running and completion // Homepage: https://github.com/radarsh/gradle-test-logger-plugin id 'com.adarshr.test-logger' version '2.1.1' From 64d9cce333c7b18908af17a679980aaa3d8efa52 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Jan 2021 07:44:23 +0100 Subject: [PATCH 04/16] Bump mockito-core from 3.7.0 to 3.7.7 (#7360) Bumps [mockito-core](https://github.com/mockito/mockito) from 3.7.0 to 3.7.7. - [Release notes](https://github.com/mockito/mockito/releases) - [Commits](https://github.com/mockito/mockito/compare/v3.7.0...v3.7.7) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index f27ea39ad7b..c5b94b555dc 100644 --- a/build.gradle +++ b/build.gradle @@ -198,7 +198,7 @@ dependencies { testImplementation 'net.bytebuddy:byte-buddy-parent:1.10.19' testRuntime group: 'org.apache.logging.log4j', name: 'log4j-core', version: '3.0.0-SNAPSHOT' testRuntime group: 'org.apache.logging.log4j', name: 'log4j-jul', version: '3.0.0-SNAPSHOT' - testImplementation 'org.mockito:mockito-core:3.7.0' + testImplementation 'org.mockito:mockito-core:3.7.7' testImplementation 'org.xmlunit:xmlunit-core:2.8.2' testImplementation 'org.xmlunit:xmlunit-matchers:2.8.2' testRuntime 'com.tngtech.archunit:archunit-junit5-engine:0.15.0' From 46c5d735a77fd2d8ef806324e0e09d720ed2124d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Jan 2021 07:45:05 +0100 Subject: [PATCH 05/16] Bump styfle/cancel-workflow-action from 0.6.0 to 0.7.0 (#7363) Bumps [styfle/cancel-workflow-action](https://github.com/styfle/cancel-workflow-action) from 0.6.0 to 0.7.0. - [Release notes](https://github.com/styfle/cancel-workflow-action/releases) - [Commits](https://github.com/styfle/cancel-workflow-action/compare/0.6.0...d7e57e26a6f753933f8ef746a37097a61375236b) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/deployment.yml | 2 +- .github/workflows/tests.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml index 8e290670309..38b01adb35e 100644 --- a/.github/workflows/deployment.yml +++ b/.github/workflows/deployment.yml @@ -42,7 +42,7 @@ jobs: name: Create installer and portable version for ${{ matrix.displayName }} steps: - name: Cancel Previous Runs - uses: styfle/cancel-workflow-action@0.6.0 + uses: styfle/cancel-workflow-action@0.7.0 with: access_token: ${{ github.token }} - name: Fetch all history for all tags and branches diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index f154c5386c3..655c92ef490 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -18,7 +18,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Cancel Previous Runs - uses: styfle/cancel-workflow-action@0.6.0 + uses: styfle/cancel-workflow-action@0.7.0 with: access_token: ${{ github.token }} - name: Checkout source From deda8a2f4dfd815e8e3d95bebd867c03b6ac1419 Mon Sep 17 00:00:00 2001 From: Christoph Date: Mon, 18 Jan 2021 18:27:57 +0100 Subject: [PATCH 06/16] Fix harvard exporter by changing AuthorsFormatter (#7355) * fix harvard exporter extension * Fix Harvard Exporter by changing AuthorsFormatter * add changelog * Update harvard.layout fix missing space * Update harvard.mastersthesis.layout fix missing space * Update harvard.phdthesis.layout fix missing space * Update harvard.article.layout add missing space * Update harvard.book.layout add missing space * Update harvard.inbook.layout add missing space * Update harvard.incollection.layout add missing space * Update harvard.inproceedings.layout add missing year * Update harvard.inproceedings.layout fix braces * Update harvard.proceedings.layout add missing space * Update harvard.inproceedings.layout add missing comma * Update harvard.layout remove extra brace --- CHANGELOG.md | 2 ++ src/main/java/org/jabref/logic/exporter/ExporterFactory.java | 2 +- .../resources/resource/layout/harvard/harvard.article.layout | 2 +- .../resources/resource/layout/harvard/harvard.book.layout | 4 ++-- .../resources/resource/layout/harvard/harvard.inbook.layout | 4 ++-- .../resource/layout/harvard/harvard.incollection.layout | 4 ++-- .../resource/layout/harvard/harvard.inproceedings.layout | 4 ++-- src/main/resources/resource/layout/harvard/harvard.layout | 4 ++-- .../resource/layout/harvard/harvard.mastersthesis.layout | 2 +- .../resource/layout/harvard/harvard.phdthesis.layout | 2 +- .../resource/layout/harvard/harvard.proceedings.layout | 4 ++-- 11 files changed, 18 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4a9c21d2ba..d676057f908 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,6 +29,8 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve - We fixed an issue where the option "Move file to file directory" was disabled in the entry editor for all files [#7194](https://github.com/JabRef/jabref/issues/7194) - We fixed an issue where application dialogs were opening in the wrong display when using multiple screens [#7273](https://github.com/JabRef/jabref/pull/7273) - We fixed an issue where an exception would be displayed for previewing and preferences when a custom theme has been configured but is missing [#7177](https://github.com/JabRef/jabref/issues/7177) +- We fixed an issue where the Harvard RTF exporter used the wrong default file extension. [4508](https://github.com/JabRef/jabref/issues/4508) +- We fixed an issue where the Harvard RTF exporter did not use the new authors formatter and therefore did not export "organization" authors correctly. [4508](https://github.com/JabRef/jabref/issues/4508) - We fixed an issue where the field `urldate` was not exported to the corresponding fields `YearAccessed`, `MonthAccessed`, `DayAccessed` in MS Office XML [#7354](https://github.com/JabRef/jabref/issues/7354) ### Removed diff --git a/src/main/java/org/jabref/logic/exporter/ExporterFactory.java b/src/main/java/org/jabref/logic/exporter/ExporterFactory.java index 082e284a245..281a032ed24 100644 --- a/src/main/java/org/jabref/logic/exporter/ExporterFactory.java +++ b/src/main/java/org/jabref/logic/exporter/ExporterFactory.java @@ -44,7 +44,7 @@ public static ExporterFactory create(List customFormats, exporters.add(new TemplateExporter(Localization.lang("HTML table"), "tablerefs", "tablerefs", "tablerefs", StandardFileType.HTML, layoutPreferences, savePreferences)); exporters.add(new TemplateExporter(Localization.lang("HTML list"), "listrefs", "listrefs", "listrefs", StandardFileType.HTML, layoutPreferences, savePreferences)); exporters.add(new TemplateExporter(Localization.lang("HTML table (with Abstract & BibTeX)"), "tablerefsabsbib", "tablerefsabsbib", "tablerefsabsbib", StandardFileType.HTML, layoutPreferences, savePreferences)); - exporters.add(new TemplateExporter("Harvard RTF", "harvard", "harvard", "harvard", StandardFileType.RDF, layoutPreferences, savePreferences)); + exporters.add(new TemplateExporter("Harvard RTF", "harvard", "harvard", "harvard", StandardFileType.RTF, layoutPreferences, savePreferences)); exporters.add(new TemplateExporter("ISO 690 RTF", "iso690rtf", "iso690RTF", "iso690rtf", StandardFileType.RTF, layoutPreferences, savePreferences)); exporters.add(new TemplateExporter("ISO 690", "iso690txt", "iso690", "iso690txt", StandardFileType.TXT, layoutPreferences, savePreferences)); exporters.add(new TemplateExporter("Endnote", "endnote", "EndNote", "endnote", StandardFileType.TXT, layoutPreferences, savePreferences)); diff --git a/src/main/resources/resource/layout/harvard/harvard.article.layout b/src/main/resources/resource/layout/harvard/harvard.article.layout index 16ba02ff191..1e3b8975c35 100644 --- a/src/main/resources/resource/layout/harvard/harvard.article.layout +++ b/src/main/resources/resource/layout/harvard/harvard.article.layout @@ -1,4 +1,4 @@ -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\author} (\year), +\format[Authors(LastFirst,Initials,FullPunc,Comma,And),RTFChars]{\author} (\year), '\format[RTFChars]{\title}', }{\\i \format[RTFChars]{\journal}}{ \begin{volume} }{\\b \volume}{ diff --git a/src/main/resources/resource/layout/harvard/harvard.book.layout b/src/main/resources/resource/layout/harvard/harvard.book.layout index 78748e9607c..0a8f8a3eea5 100644 --- a/src/main/resources/resource/layout/harvard/harvard.book.layout +++ b/src/main/resources/resource/layout/harvard/harvard.book.layout @@ -1,8 +1,8 @@ \begin{author} -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\author} +\format[Authors(LastFirst,Initials,FullPunc,Comma,And,inf),RTFChars]{\author} \end{author} \begin{editor} -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\editor}, ed. \end{editor} +\format[FirstFirst,FullName,NoPunc,And,RTFChars]{\editor}, ed., \end{editor} (\year), }{\\i \format[RTFChars]{\title}}{ \begin{volume} diff --git a/src/main/resources/resource/layout/harvard/harvard.inbook.layout b/src/main/resources/resource/layout/harvard/harvard.inbook.layout index 5a6c54927d2..0debd14c93d 100644 --- a/src/main/resources/resource/layout/harvard/harvard.inbook.layout +++ b/src/main/resources/resource/layout/harvard/harvard.inbook.layout @@ -1,8 +1,8 @@ \begin{author} -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\author} +\format[Authors(LastFirst,Initials,FullPunc,Comma,And,inf),RTFChars]{\author} \end{author} \begin{editor} -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\editor}, ed., \end{editor} +\format[Authors(FirstFirst,FullName,NoPunc,And),RTFChars]{\editor}, ed., \end{editor} (\year), }{\\i \format[RTFChars]{\title}}{ \begin{publisher} diff --git a/src/main/resources/resource/layout/harvard/harvard.incollection.layout b/src/main/resources/resource/layout/harvard/harvard.incollection.layout index 239241dff56..17f953b8932 100644 --- a/src/main/resources/resource/layout/harvard/harvard.incollection.layout +++ b/src/main/resources/resource/layout/harvard/harvard.incollection.layout @@ -1,7 +1,7 @@ -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\author} (\year), +\format[Authors(LastFirst,Initials,FullPunc,Comma,And,inf),RTFChars]{\author} (\year), }{\format[RTFChars]{\title}}{ \begin{editor} -, }{\\i in }{\format[RTFChars,AuthorFirstFirst,AuthorAndsReplacer]{\editor}, ed., \end{editor} +, }{\\i in }{\format[Authors(FirstFirst,FullName,NoPunc,And),RTFChars]{\editor}, ed., \end{editor} \begin{booktitle} '\format[RTFChars]{\booktitle}' \end{booktitle} diff --git a/src/main/resources/resource/layout/harvard/harvard.inproceedings.layout b/src/main/resources/resource/layout/harvard/harvard.inproceedings.layout index d76fcf017b7..f10e49cd3dd 100644 --- a/src/main/resources/resource/layout/harvard/harvard.inproceedings.layout +++ b/src/main/resources/resource/layout/harvard/harvard.inproceedings.layout @@ -1,8 +1,8 @@ -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\author} (\year), +\format[Authors(LastFirst,Initials,FullPunc,Comma,And,inf),RTFChars]{\author} (\year), \format[RTFChars]{\title} , }{\\i in }{ \begin{editor} -\format[RTFChars,AuthorFirstFirst,AuthorAndsReplacer]{\editor}, ed., \end{editor} +\format[Authors(FirstFirst,FullName,NoPunc,And),RTFChars]{\editor}, ed., \end{editor} \begin{booktitle} '\format[RTFChars]{\booktitle}' \end{booktitle} diff --git a/src/main/resources/resource/layout/harvard/harvard.layout b/src/main/resources/resource/layout/harvard/harvard.layout index 8362549268c..4668a9dd259 100644 --- a/src/main/resources/resource/layout/harvard/harvard.layout +++ b/src/main/resources/resource/layout/harvard/harvard.layout @@ -1,4 +1,4 @@ -\format[AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer,RTFChars]{\author} (\year), +\format[Authors(LastFirst,Initials,FullPunc,Comma,And,inf),RTFChars]{\author} (\year), '\format[RTFChars]{\title}' \begin{journal} , }{\\i \format[RTFChars]{\journal}} {\\b \volume}{ @@ -7,7 +7,7 @@ (\number) \end{number} \begin{editor} -, }{\\i in }{\format[AuthorFirstFirst,AuthorAndsReplacer,RTFChars]{\editor}, ed., \end{editor} +, }{\\i in }{\format[Authors(FirstFirst,FullName,NoPunc,And),RTFChars]{\editor}, ed., \end{editor} \begin{booktitle} '\format[RTFChars]{\booktitle}' \end{booktitle} diff --git a/src/main/resources/resource/layout/harvard/harvard.mastersthesis.layout b/src/main/resources/resource/layout/harvard/harvard.mastersthesis.layout index c0fc134156b..7eb6a9d7d50 100644 --- a/src/main/resources/resource/layout/harvard/harvard.mastersthesis.layout +++ b/src/main/resources/resource/layout/harvard/harvard.mastersthesis.layout @@ -1,4 +1,4 @@ -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\author} (\year), +\format[Authors(LastFirst,Initials,FullPunc,Comma,And,inf),RTFChars]{\author} (\year), '\format[RTFChars]{\title}' \begin{school} , Master's thesis, \format[RTFChars]{\school} diff --git a/src/main/resources/resource/layout/harvard/harvard.phdthesis.layout b/src/main/resources/resource/layout/harvard/harvard.phdthesis.layout index d45be87ef41..2332efea479 100644 --- a/src/main/resources/resource/layout/harvard/harvard.phdthesis.layout +++ b/src/main/resources/resource/layout/harvard/harvard.phdthesis.layout @@ -1,4 +1,4 @@ -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\author} (\year), +\format[Authors(LastFirst,Initials,FullPunc,Comma,And,inf),RTFChars]{\author} (\year), '\format[RTFChars]{\title}' \begin{school} , PhD thesis, \format[RTFChars]{\school} diff --git a/src/main/resources/resource/layout/harvard/harvard.proceedings.layout b/src/main/resources/resource/layout/harvard/harvard.proceedings.layout index 34768d36046..b5f518ba6ff 100644 --- a/src/main/resources/resource/layout/harvard/harvard.proceedings.layout +++ b/src/main/resources/resource/layout/harvard/harvard.proceedings.layout @@ -1,8 +1,8 @@ \begin{author} -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\author} +\format[Authors(LastFirst,Initials,FullPunc,Comma,And,inf),RTFChars]{\author} \end{author} \begin{editor} -\format[RTFChars,AuthorLastFirst,AuthorAbbreviator,AuthorAndsReplacer]{\editor}, ed., \end{editor} +\format[Authors(FirstFirst,FullName,NoPunc,And),RTFChars]{\editor}, ed., \end{editor} (\year), }{\\i \format[RTFChars]{\title}}{ \begin{volume} From 1d783b429f0429cd6f283c83390dda0383289212 Mon Sep 17 00:00:00 2001 From: bazingaJojo Date: Mon, 18 Jan 2021 20:34:29 +0100 Subject: [PATCH 07/16] Fix an issue where the password for a shared SQL database was only remembered if it was the same as the username (#7364) --- CHANGELOG.md | 1 + .../jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d676057f908..1ed034b4b7f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,6 +32,7 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve - We fixed an issue where the Harvard RTF exporter used the wrong default file extension. [4508](https://github.com/JabRef/jabref/issues/4508) - We fixed an issue where the Harvard RTF exporter did not use the new authors formatter and therefore did not export "organization" authors correctly. [4508](https://github.com/JabRef/jabref/issues/4508) - We fixed an issue where the field `urldate` was not exported to the corresponding fields `YearAccessed`, `MonthAccessed`, `DayAccessed` in MS Office XML [#7354](https://github.com/JabRef/jabref/issues/7354) +- We fixed an issue where the password for a shared SQL database was only remembered if it was the same as the username [#6869](https://github.com/JabRef/jabref/issues/6869) ### Removed diff --git a/src/main/java/org/jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java b/src/main/java/org/jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java index bf6033e80a6..eed130a2f35 100644 --- a/src/main/java/org/jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java +++ b/src/main/java/org/jabref/gui/shared/SharedDatabaseLoginDialogViewModel.java @@ -203,7 +203,7 @@ private void setPreferences() { if (rememberPassword.get()) { try { - prefs.setPassword(new Password(password.getValue(), password.getValue()).encrypt()); + prefs.setPassword(new Password(password.getValue(), user.getValue()).encrypt()); } catch (GeneralSecurityException | UnsupportedEncodingException e) { LOGGER.error("Could not store the password due to encryption problems.", e); } From 31ced14ef8411cc092a812c843cc08ba8d0eec93 Mon Sep 17 00:00:00 2001 From: Jonatan Asketorp <2598631+k3KAW8Pnf7mkmdSMPHz27@users.noreply.github.com> Date: Mon, 18 Jan 2021 14:48:12 -0500 Subject: [PATCH 08/16] Fixes miss-parsed names in `AutomaticPersonsGroup` (#7228) --- CHANGELOG.md | 1 + .../java/org/jabref/model/entry/Author.java | 101 +++++++----------- .../model/groups/AutomaticPersonsGroup.java | 21 ++-- .../org/jabref/model/groups/KeywordGroup.java | 22 ++++ .../jabref/model/groups/LastNameGroup.java | 41 +++++++ .../groups/AutomaticPersonsGroupTest.java | 56 ++++++++++ 6 files changed, 167 insertions(+), 75 deletions(-) create mode 100644 src/main/java/org/jabref/model/groups/LastNameGroup.java create mode 100644 src/test/java/org/jabref/model/groups/AutomaticPersonsGroupTest.java diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ed034b4b7f..59ab7e13f0e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve ### Changed - The content of the field `timestamp` is migrated to `creationdate`. In case one configured "udpate timestampe", it is migrated to `modificationdate`. [koppor#130](https://github.com/koppor/jabref/issues/130) +- We fixed an issue where groups generated from authors' last names did not include all entries of the authors' [#5833](https://github.com/JabRef/jabref/issues/5833) - The export to MS Office XML now uses the month name for the field `MonthAcessed` instead of the two digit number [#7354](https://github.com/JabRef/jabref/issues/7354) ### Fixed diff --git a/src/main/java/org/jabref/model/entry/Author.java b/src/main/java/org/jabref/model/entry/Author.java index b325a3fa92f..ab94d260c43 100644 --- a/src/main/java/org/jabref/model/entry/Author.java +++ b/src/main/java/org/jabref/model/entry/Author.java @@ -3,49 +3,31 @@ import java.util.Objects; import java.util.Optional; +import org.jabref.model.strings.LatexToUnicodeAdapter; import org.jabref.model.strings.StringUtil; /** - * This is an immutable class that keeps information regarding single - * author. It is just a container for the information, with very simple - * methods to access it. + * This is an immutable class that keeps information regarding single author. It is just a container for the information, with very simple methods to access it. *

- * Current usage: only methods getLastOnly, - * getFirstLast, and getLastFirst are used; - * all other methods are provided for completeness. + * Current usage: only methods getLastOnly, getFirstLast, and getLastFirst are used; all other methods are provided for completeness. */ public class Author { private final String firstPart; - private final String firstAbbr; - private final String vonPart; - private final String lastPart; - private final String jrPart; + private String latexFreeLastPart; /** - * Creates the Author object. If any part of the name is absent, null - * must be passed; otherwise other methods may return erroneous results. + * Creates the Author object. If any part of the name is absent, null must be passed; otherwise other methods may return erroneous results. * - * @param first the first name of the author (may consist of several - * tokens, like "Charles Louis Xavier Joseph" in "Charles - * Louis Xavier Joseph de la Vall{\'e}e Poussin") - * @param firstabbr the abbreviated first name of the author (may consist of - * several tokens, like "C. L. X. J." in "Charles Louis - * Xavier Joseph de la Vall{\'e}e Poussin"). It is a - * responsibility of the caller to create a reasonable - * abbreviation of the first name. - * @param von the von part of the author's name (may consist of several - * tokens, like "de la" in "Charles Louis Xavier Joseph de la - * Vall{\'e}e Poussin") - * @param last the last name of the author (may consist of several - * tokens, like "Vall{\'e}e Poussin" in "Charles Louis Xavier - * Joseph de la Vall{\'e}e Poussin") - * @param jr the junior part of the author's name (may consist of - * several tokens, like "Jr. III" in "Smith, Jr. III, John") + * @param first the first name of the author (may consist of several tokens, like "Charles Louis Xavier Joseph" in "Charles Louis Xavier Joseph de la Vall{\'e}e Poussin") + * @param firstabbr the abbreviated first name of the author (may consist of several tokens, like "C. L. X. J." in "Charles Louis Xavier Joseph de la Vall{\'e}e Poussin"). It is a responsibility of the caller to create a reasonable abbreviation of the first name. + * @param von the von part of the author's name (may consist of several tokens, like "de la" in "Charles Louis Xavier Joseph de la Vall{\'e}e Poussin") + * @param last the last name of the author (may consist of several tokens, like "Vall{\'e}e Poussin" in "Charles Louis Xavier Joseph de la Vall{\'e}e Poussin") + * @param jr the junior part of the author's name (may consist of several tokens, like "Jr. III" in "Smith, Jr. III, John") */ public Author(String first, String firstabbr, String von, String last, String jr) { firstPart = addDotIfAbbreviation(removeStartAndEndBraces(first)); @@ -198,9 +180,11 @@ private boolean properBrackets(String s) { * Removes start and end brace at a string *

* E.g., - * * {Vall{\'e}e Poussin} -> Vall{\'e}e Poussin - * * {Vall{\'e}e} {Poussin} -> Vall{\'e}e Poussin - * * Vall{\'e}e Poussin -> Vall{\'e}e Poussin + *

    + *
  • {Vall{\'e}e Poussin} -> Vall{\'e}e Poussin
  • + *
  • {Vall{\'e}e} {Poussin} -> Vall{\'e}e Poussin
  • + *
  • Vall{\'e}e Poussin -> Vall{\'e}e Poussin
  • + *
*/ private String removeStartAndEndBraces(String name) { if (StringUtil.isBlank(name)) { @@ -263,19 +247,16 @@ public Optional getFirst() { } /** - * Returns the abbreviated first name of the author stored in this - * object ("F."). + * Returns the abbreviated first name of the author stored in this object ("F."). * - * @return abbreviated first name of the author (may consist of several - * tokens) + * @return abbreviated first name of the author (may consist of several tokens) */ public Optional getFirstAbbr() { return Optional.ofNullable(firstAbbr); } /** - * Returns the von part of the author's name stored in this object - * ("von"). + * Returns the von part of the author's name stored in this object ("von"). * * @return von part of the author's name (may consist of several tokens) */ @@ -293,20 +274,28 @@ public Optional getLast() { } /** - * Returns the junior part of the author's name stored in this object - * ("Jr"). + * Returns the last name of the author stored in this object with resolved latex. + * + * @return last name of the author (may consist of several tokens) + */ + public Optional getLastLatexFree() { + if (latexFreeLastPart == null && lastPart != null) { + latexFreeLastPart = LatexToUnicodeAdapter.format(lastPart); + } + return Optional.ofNullable(latexFreeLastPart); + } + + /** + * Returns the junior part of the author's name stored in this object ("Jr"). * - * @return junior part of the author's name (may consist of several - * tokens) or null if the author does not have a Jr. Part + * @return junior part of the author's name (may consist of several tokens) or null if the author does not have a Jr. Part */ public Optional getJr() { return Optional.ofNullable(jrPart); } /** - * Returns von-part followed by last name ("von Last"). If both fields - * were specified as null, the empty string "" - * is returned. + * Returns von-part followed by last name ("von Last"). If both fields were specified as null, the empty string "" is returned. * * @return 'von Last' */ @@ -319,13 +308,10 @@ public String getLastOnly() { } /** - * Returns the author's name in form 'von Last, Jr., First' with the - * first name full or abbreviated depending on parameter. + * Returns the author's name in form 'von Last, Jr., First' with the first name full or abbreviated depending on parameter. * - * @param abbr true - abbreviate first name, false - - * do not abbreviate - * @return 'von Last, Jr., First' (if abbr==false) or - * 'von Last, Jr., F.' (if abbr==true) + * @param abbr true - abbreviate first name, false - do not abbreviate + * @return 'von Last, Jr., First' (if abbr==false) or 'von Last, Jr., F.' (if abbr==true) */ public String getLastFirst(boolean abbr) { StringBuilder res = new StringBuilder(getLastOnly()); @@ -339,13 +325,10 @@ public String getLastFirst(boolean abbr) { } /** - * Returns the author's name in form 'First von Last, Jr.' with the - * first name full or abbreviated depending on parameter. + * Returns the author's name in form 'First von Last, Jr.' with the first name full or abbreviated depending on parameter. * - * @param abbr true - abbreviate first name, false - - * do not abbreviate - * @return 'First von Last, Jr.' (if abbr==false) or 'F. - * von Last, Jr.' (if abbr==true) + * @param abbr true - abbreviate first name, false - do not abbreviate + * @return 'First von Last, Jr.' (if abbr==false) or 'F. von Last, Jr.' (if abbr==true) */ public String getFirstLast(boolean abbr) { StringBuilder res = new StringBuilder(); @@ -372,11 +355,9 @@ public String toString() { } /** - * Returns the name as "Last, Jr, F." omitting the von-part and removing - * starting braces. + * Returns the name as "Last, Jr, F." omitting the von-part and removing starting braces. * - * @return "Last, Jr, F." as described above or "" if all these parts - * are empty. + * @return "Last, Jr, F." as described above or "" if all these parts are empty. */ public String getNameForAlphabetization() { StringBuilder res = new StringBuilder(); diff --git a/src/main/java/org/jabref/model/groups/AutomaticPersonsGroup.java b/src/main/java/org/jabref/model/groups/AutomaticPersonsGroup.java index f113ed38ad8..bd31c03a674 100644 --- a/src/main/java/org/jabref/model/groups/AutomaticPersonsGroup.java +++ b/src/main/java/org/jabref/model/groups/AutomaticPersonsGroup.java @@ -1,19 +1,15 @@ package org.jabref.model.groups; import java.util.Objects; -import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; -import org.jabref.model.entry.Author; -import org.jabref.model.entry.AuthorList; import org.jabref.model.entry.BibEntry; import org.jabref.model.entry.field.Field; -import org.jabref.model.util.OptionalUtil; public class AutomaticPersonsGroup extends AutomaticGroup { - private Field field; + private final Field field; public AutomaticPersonsGroup(String name, GroupHierarchyType context, Field field) { super(name, context); @@ -44,16 +40,11 @@ public AbstractGroup deepCopy() { @Override public Set createSubgroups(BibEntry entry) { - Optional authorList = entry.getLatexFreeField(field) - .map(AuthorList::parse); - return OptionalUtil.flatMap(authorList, AuthorList::getAuthors) - .map(Author::getLast) - .filter(Optional::isPresent) - .map(Optional::get) - .filter(lastName -> !lastName.isEmpty()) - .map(lastName -> new WordKeywordGroup(lastName, GroupHierarchyType.INDEPENDENT, field, lastName, true, ' ', true)) - .map(GroupTreeNode::new) - .collect(Collectors.toSet()); + return LastNameGroup.getAsLastNamesLatexFree(field, entry) + .stream() + .map(lastName -> new LastNameGroup(lastName, GroupHierarchyType.INDEPENDENT, field, lastName)) + .map(GroupTreeNode::new) + .collect(Collectors.toSet()); } public Field getField() { diff --git a/src/main/java/org/jabref/model/groups/KeywordGroup.java b/src/main/java/org/jabref/model/groups/KeywordGroup.java index e0018f4f32e..22511e2e049 100644 --- a/src/main/java/org/jabref/model/groups/KeywordGroup.java +++ b/src/main/java/org/jabref/model/groups/KeywordGroup.java @@ -1,5 +1,7 @@ package org.jabref.model.groups; +import java.util.Objects; + import org.jabref.model.entry.field.Field; /** @@ -33,4 +35,24 @@ public Field getSearchField() { public boolean isDynamic() { return true; } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + if (!super.equals(o)) { + return false; + } + KeywordGroup that = (KeywordGroup) o; + return isCaseSensitive() == that.isCaseSensitive() && Objects.equals(getSearchField(), that.getSearchField()) && Objects.equals(getSearchExpression(), that.getSearchExpression()); + } + + @Override + public int hashCode() { + return Objects.hash(super.hashCode(), getSearchField(), getSearchExpression(), isCaseSensitive()); + } } diff --git a/src/main/java/org/jabref/model/groups/LastNameGroup.java b/src/main/java/org/jabref/model/groups/LastNameGroup.java new file mode 100644 index 00000000000..f2d771bbb8f --- /dev/null +++ b/src/main/java/org/jabref/model/groups/LastNameGroup.java @@ -0,0 +1,41 @@ +package org.jabref.model.groups; + +import java.util.Collection; +import java.util.List; +import java.util.Optional; +import java.util.stream.Collectors; + +import org.jabref.model.entry.Author; +import org.jabref.model.entry.AuthorList; +import org.jabref.model.entry.BibEntry; +import org.jabref.model.entry.field.Field; +import org.jabref.model.strings.LatexToUnicodeAdapter; + +/** + * Matches based on a latex free last name in a specified field. The field is parsed as an author list and the last names are resolved of latex. + */ +public class LastNameGroup extends KeywordGroup { + public LastNameGroup(String groupName, GroupHierarchyType context, Field searchField, String lastName) { + super(groupName, context, searchField, LatexToUnicodeAdapter.format(lastName), true); + } + + static List getAsLastNamesLatexFree(Field field, BibEntry bibEntry) { + return bibEntry.getField(field).stream() + .map(AuthorList::parse) + .map(AuthorList::getAuthors) + .flatMap(Collection::stream) + .map(Author::getLastLatexFree) + .flatMap(Optional::stream) + .collect(Collectors.toList()); + } + + @Override + public boolean contains(BibEntry entry) { + return getAsLastNamesLatexFree(getSearchField(), entry).stream().anyMatch(name -> name.equals(getSearchExpression())); + } + + @Override + public AbstractGroup deepCopy() { + return new LastNameGroup(getName(), getHierarchicalContext(), getSearchField(), getSearchExpression()); + } +} diff --git a/src/test/java/org/jabref/model/groups/AutomaticPersonsGroupTest.java b/src/test/java/org/jabref/model/groups/AutomaticPersonsGroupTest.java new file mode 100644 index 00000000000..6bceb4625d7 --- /dev/null +++ b/src/test/java/org/jabref/model/groups/AutomaticPersonsGroupTest.java @@ -0,0 +1,56 @@ +package org.jabref.model.groups; + +import java.util.Arrays; +import java.util.stream.Collectors; + +import org.jabref.model.entry.BibEntry; +import org.jabref.model.entry.field.StandardField; + +import org.junit.jupiter.api.Test; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.contains; +import static org.hamcrest.Matchers.containsInAnyOrder; + +class AutomaticPersonsGroupTest { + private static GroupTreeNode[] createPersonSubGroupFrom(String... lastNames) { + return Arrays.stream(lastNames) + .map(lastName -> + new LastNameGroup(lastName, GroupHierarchyType.INDEPENDENT, StandardField.AUTHOR, lastName)) + .map(GroupTreeNode::new) + .collect(Collectors.toList()) + .toArray(GroupTreeNode[]::new); + } + + @Test + void createSubgroupsFromCommaSeparatedLastNames() { + BibEntry bibEntry = new BibEntry().withField(StandardField.AUTHOR, "Turing, Alan and Hopper, Grace"); + var subgroups = new AutomaticPersonsGroup("", GroupHierarchyType.INDEPENDENT, StandardField.AUTHOR).createSubgroups(bibEntry); + var expectedSubgroups = createPersonSubGroupFrom("Turing", "Hopper"); + assertThat(subgroups, containsInAnyOrder(expectedSubgroups)); + } + + @Test + void createSubgroupsContainingSpaceSeparatedNames() { + BibEntry bibEntry = new BibEntry().withField(StandardField.AUTHOR, "Alan Turing and Grace Hopper"); + var subgroups = new AutomaticPersonsGroup("", GroupHierarchyType.INDEPENDENT, StandardField.AUTHOR).createSubgroups(bibEntry); + var expectedSubgroups = createPersonSubGroupFrom("Turing", "Hopper"); + assertThat(subgroups, containsInAnyOrder(expectedSubgroups)); + } + + @Test + void createSubgroupFromLatex() { + BibEntry bibEntry = new BibEntry().withField(StandardField.AUTHOR, "Kurt G{\\\"{o}}del"); + var subgroup = new AutomaticPersonsGroup("", GroupHierarchyType.INDEPENDENT, StandardField.AUTHOR).createSubgroups(bibEntry); + var expectedSubgroup = createPersonSubGroupFrom("Gödel"); + assertThat(subgroup, contains(expectedSubgroup)); + } + + @Test + void createSubgroupFromUnicode() { + BibEntry bibEntry = new BibEntry().withField(StandardField.AUTHOR, "Kurt Gödel"); + var subgroup = new AutomaticPersonsGroup("", GroupHierarchyType.INDEPENDENT, StandardField.AUTHOR).createSubgroups(bibEntry); + var expectedSubgroup = createPersonSubGroupFrom("Gödel"); + assertThat(subgroup, contains(expectedSubgroup)); + } +} From ee2e2dba313c070c491ad75f545536d870743231 Mon Sep 17 00:00:00 2001 From: JofielB <32725639+JofielB@users.noreply.github.com> Date: Mon, 18 Jan 2021 12:51:47 -0700 Subject: [PATCH 09/16] Modify message at the duplicates found dialog (#7231) Co-authored-by: Carl Christian Snethlage <50491877+calixtus@users.noreply.github.com> --- src/main/java/org/jabref/gui/LibraryTab.java | 2 +- .../gui/citationkeypattern/GenerateCitationKeyAction.java | 2 +- src/main/java/org/jabref/gui/cleanup/CleanupAction.java | 2 +- .../java/org/jabref/gui/importer/ImportEntriesViewModel.java | 4 ++-- src/main/resources/l10n/JabRef_en.properties | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/jabref/gui/LibraryTab.java b/src/main/java/org/jabref/gui/LibraryTab.java index eb2706ad36c..0aec18fde81 100644 --- a/src/main/java/org/jabref/gui/LibraryTab.java +++ b/src/main/java/org/jabref/gui/LibraryTab.java @@ -664,7 +664,7 @@ private boolean showDeleteConfirmationDialog(int numberOfEntries) { message, okButton, cancelButton, - Localization.lang("Disable this confirmation dialog"), + Localization.lang("Do not ask again"), optOut -> preferencesService.storeGeneralPreferences( preferencesService.getGeneralPreferences().withConfirmDelete(!optOut))); } else { diff --git a/src/main/java/org/jabref/gui/citationkeypattern/GenerateCitationKeyAction.java b/src/main/java/org/jabref/gui/citationkeypattern/GenerateCitationKeyAction.java index f1d53b19015..0c52d0374df 100644 --- a/src/main/java/org/jabref/gui/citationkeypattern/GenerateCitationKeyAction.java +++ b/src/main/java/org/jabref/gui/citationkeypattern/GenerateCitationKeyAction.java @@ -56,7 +56,7 @@ public static boolean confirmOverwriteKeys(DialogService dialogService) { Localization.lang("One or more keys will be overwritten. Continue?"), Localization.lang("Overwrite keys"), Localization.lang("Cancel"), - Localization.lang("Disable this confirmation dialog"), + Localization.lang("Do not ask again"), optOut -> Globals.prefs.storeCitationKeyPatternPreferences( Globals.prefs.getCitationKeyPatternPreferences().withWarnBeforeOverwriteCiteKey(!optOut))); } else { diff --git a/src/main/java/org/jabref/gui/cleanup/CleanupAction.java b/src/main/java/org/jabref/gui/cleanup/CleanupAction.java index 17fc4d39db0..982cffb2eb3 100644 --- a/src/main/java/org/jabref/gui/cleanup/CleanupAction.java +++ b/src/main/java/org/jabref/gui/cleanup/CleanupAction.java @@ -70,7 +70,7 @@ public void execute() { Localization.lang("Auto-generating PDF-Names does not support undo. Continue?"), Localization.lang("Autogenerate PDF Names"), Localization.lang("Cancel"), - Localization.lang("Disable this confirmation dialog"), + Localization.lang("Do not ask again"), optOut -> preferences.storeAutoLinkPreferences(preferences.getAutoLinkPreferences() .withAskAutoNamingPdfs(!optOut))); if (!confirmed) { diff --git a/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java b/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java index 79b50f958d2..c77950c5d49 100644 --- a/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java +++ b/src/main/java/org/jabref/gui/importer/ImportEntriesViewModel.java @@ -119,10 +119,10 @@ public void importEntries(List entriesToImport, boolean shouldDownload .anyMatch(this::hasDuplicate)).onSuccess(duplicateFound -> { if (duplicateFound) { boolean continueImport = dialogService.showConfirmationDialogWithOptOutAndWait(Localization.lang("Duplicates found"), - Localization.lang("There are possible duplicates (marked with an icon) that haven't been resolved. Continue?"), + Localization.lang("There are possible duplicates that haven't been resolved. Continue?"), Localization.lang("Continue with import"), Localization.lang("Cancel import"), - Localization.lang("Disable this confirmation dialog"), + Localization.lang("Do not ask again"), optOut -> preferences.setShouldWarnAboutDuplicatesForImport(!optOut)); if (!continueImport) { diff --git a/src/main/resources/l10n/JabRef_en.properties b/src/main/resources/l10n/JabRef_en.properties index 5d5afe7f2a0..442885150c7 100644 --- a/src/main/resources/l10n/JabRef_en.properties +++ b/src/main/resources/l10n/JabRef_en.properties @@ -229,7 +229,7 @@ Descending=Descending Description=Description -Disable\ this\ confirmation\ dialog=Disable this confirmation dialog +Do\ not\ ask\ again=Do not ask again Display\ all\ entries\ belonging\ to\ one\ or\ more\ of\ the\ selected\ groups=Display all entries belonging to one or more of the selected groups @@ -834,7 +834,7 @@ The\ search\ is\ case\ insensitive.=The search is case insensitive. The\ search\ is\ case\ sensitive.=The search is case sensitive. -There\ are\ possible\ duplicates\ (marked\ with\ an\ icon)\ that\ haven't\ been\ resolved.\ Continue?=There are possible duplicates (marked with an icon) that haven't been resolved. Continue? +There\ are\ possible\ duplicates\ that\ haven't\ been\ resolved.\ Continue?=There are possible duplicates that haven't been resolved. Continue? This\ operation\ requires\ all\ selected\ entries\ to\ have\ citation\ keys\ defined.=This operation requires all selected entries to have citation keys defined. From bb863cb7c3c29606b65a15d40d809884bd237bd9 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Tue, 19 Jan 2021 21:32:22 +0000 Subject: [PATCH 10/16] GitBook: [master] 5 pages and 29 assets modified --- ...tribution-process-reviews (2) (2) (1).svg} | 0 ...tribution-process-reviews (2) (2) (2).svg} | 0 ...views-with-instructor (1) (2) (2) (1).svg} | 0 ...views-with-instructor (1) (2) (2) (2).svg} | 0 ...pse-create-run-config (1) (3) (3) (1).png} | Bin ...pse-create-run-config (1) (3) (3) (2).png} | Bin ...pse-create-run-config (1) (3) (3) (3).png} | Bin ...ipse-create-run-config (1) (3) (3) (4).png | Bin 0 -> 102768 bytes ...onfig-ignore-buildSrc (2) (2) (2) (1).png} | Bin ...onfig-ignore-buildSrc (2) (2) (2) (2).png} | Bin ...config-ignore-buildSrc (2) (2) (2) (3).png | Bin 0 -> 27104 bytes ...llij-wrap-at-right-margin (4) (4) (1).png} | Bin ...llij-wrap-at-right-margin (4) (4) (2).png} | Bin ...llij-wrap-at-right-margin (4) (4) (3).png} | Bin ...llij-wrap-at-right-margin (4) (4) (4).png} | Bin ...ellij-wrap-at-right-margin (4) (4) (5).png | Bin 0 -> 310110 bytes docs/SUMMARY.md | 2 +- docs/advanced-reading/fetchers.md | 44 +++++------ docs/contributing.md | 74 ++++++------------ ...elines-for-setting-up-a-local-workspace.md | 8 +- docs/teaching.md | 40 +++++++--- 21 files changed, 79 insertions(+), 89 deletions(-) rename docs/.gitbook/assets/{contribution-process-reviews (2) (1).svg => contribution-process-reviews (2) (2) (1).svg} (100%) rename docs/.gitbook/assets/{contribution-process-reviews (2).svg => contribution-process-reviews (2) (2) (2).svg} (100%) rename docs/.gitbook/assets/{contribution-process-reviews-with-instructor (1) (2) (1).svg => contribution-process-reviews-with-instructor (1) (2) (2) (1).svg} (100%) rename docs/.gitbook/assets/{contribution-process-reviews-with-instructor (1) (2).svg => contribution-process-reviews-with-instructor (1) (2) (2) (2).svg} (100%) rename docs/.gitbook/assets/{eclipse-create-run-config (1) (3) (1).png => eclipse-create-run-config (1) (3) (3) (1).png} (100%) rename docs/.gitbook/assets/{eclipse-create-run-config (1) (3) (2).png => eclipse-create-run-config (1) (3) (3) (2).png} (100%) rename docs/.gitbook/assets/{eclipse-create-run-config (1) (3).png => eclipse-create-run-config (1) (3) (3) (3).png} (100%) create mode 100644 docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4).png rename docs/.gitbook/assets/{intellij-gradle-config-ignore-buildSrc (2) (2) (1).png => intellij-gradle-config-ignore-buildSrc (2) (2) (2) (1).png} (100%) rename docs/.gitbook/assets/{intellij-gradle-config-ignore-buildSrc (2) (2).png => intellij-gradle-config-ignore-buildSrc (2) (2) (2) (2).png} (100%) create mode 100644 docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3).png rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4) (1).png => intellij-wrap-at-right-margin (4) (4) (1).png} (100%) rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4) (2).png => intellij-wrap-at-right-margin (4) (4) (2).png} (100%) rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4) (3).png => intellij-wrap-at-right-margin (4) (4) (3).png} (100%) rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4).png => intellij-wrap-at-right-margin (4) (4) (4).png} (100%) create mode 100644 docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (5).png diff --git a/docs/.gitbook/assets/contribution-process-reviews (2) (1).svg b/docs/.gitbook/assets/contribution-process-reviews (2) (2) (1).svg similarity index 100% rename from docs/.gitbook/assets/contribution-process-reviews (2) (1).svg rename to docs/.gitbook/assets/contribution-process-reviews (2) (2) (1).svg diff --git a/docs/.gitbook/assets/contribution-process-reviews (2).svg b/docs/.gitbook/assets/contribution-process-reviews (2) (2) (2).svg similarity index 100% rename from docs/.gitbook/assets/contribution-process-reviews (2).svg rename to docs/.gitbook/assets/contribution-process-reviews (2) (2) (2).svg diff --git a/docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (1).svg b/docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (1).svg similarity index 100% rename from docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (1).svg rename to docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (1).svg diff --git a/docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2).svg b/docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (2).svg similarity index 100% rename from docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2).svg rename to docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (2).svg diff --git a/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (1).png b/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (1).png similarity index 100% rename from docs/.gitbook/assets/eclipse-create-run-config (1) (3) (1).png rename to docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (1).png diff --git a/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (2).png b/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (2).png similarity index 100% rename from docs/.gitbook/assets/eclipse-create-run-config (1) (3) (2).png rename to docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (2).png diff --git a/docs/.gitbook/assets/eclipse-create-run-config (1) (3).png b/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (3).png similarity index 100% rename from docs/.gitbook/assets/eclipse-create-run-config (1) (3).png rename to docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (3).png diff --git a/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4).png b/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4).png new file mode 100644 index 0000000000000000000000000000000000000000..1412291a55af3fab85dd1830d9fe23e88d636372 GIT binary patch literal 102768 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 Lsa$;3Jm`M_YN^F3 literal 0 HcmV?d00001 diff --git a/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (1).png b/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (1).png similarity index 100% rename from docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (1).png rename to docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (1).png diff --git a/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2).png b/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (2).png similarity index 100% rename from docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2).png rename to docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (2).png diff --git a/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3).png b/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3).png new file mode 100644 index 0000000000000000000000000000000000000000..203ad5ad207d6989d0c8bba3752bf0cbb9d843b1 GIT binary patch literal 27104 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�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 E7nNMT+5i9m literal 0 HcmV?d00001 diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (1).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (1).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (1).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (1).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (2).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (2).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (2).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (2).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (3).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (3).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (3).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (3).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (5).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (5).png new file mode 100644 index 0000000000000000000000000000000000000000..c3b7615fdda830917cefcc427dd18f2d3d8d9898 GIT binary patch literal 310110 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

f`-N$&I9G>z>P(8+nB;9*fZ$e^Dy1r^uMdlx#& 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�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 z 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 Bra%Ay literal 0 HcmV?d00001 diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index a9d5917e5e9..f66102da3a8 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -15,7 +15,7 @@ * [Custom SVG icons](advanced-reading/custom-svg-icons.md) * [Working on fetchers](advanced-reading/fetchers.md) * [Creating a binary and debug it](advanced-reading/jpackage.md) -* [JabRef and Software Engineering](teaching.md) +* [JabRef and Software Engineering Training](teaching.md) * [Readings on Coding](readings-on-coding/README.md) * [Readings on JavaFX](readings-on-coding/javafx.md) * [Useful development tooling](readings-on-coding/tools.md) diff --git a/docs/advanced-reading/fetchers.md b/docs/advanced-reading/fetchers.md index a669b85a6e0..3903cb2d4e7 100644 --- a/docs/advanced-reading/fetchers.md +++ b/docs/advanced-reading/fetchers.md @@ -1,4 +1,4 @@ -# Information about Fetchers +# Working on fetchers Fetchers are the implementation of the [search using online services](https://docs.jabref.org/collect/import-using-online-bibliographic-database). Some fetchers require API keys to get them working. To get the fetchers running in a JabRef development setup, the keys need to be placed in the respective environment variable. The following table lists the respective fetchers, where to get the key from and the environment variable where the key has to be placed. @@ -16,39 +16,37 @@ On Windows, you have to log-off and log-on to let IntelliJ know about the enviro ## Fulltext Fetchers -- all fulltext fetchers run in parallel -- the result with the highest priority wins -- `InterruptedException` | `ExecutionException` | `CancellationException` are ignored +* all fulltext fetchers run in parallel +* the result with the highest priority wins +* `InterruptedException` \| `ExecutionException` \| `CancellationException` are ignored ### Trust Levels -- SOURCE (highest): definitive URL for a particular paper -- PUBLISHER: any publisher library -- PREPRINT: any preprint library that might include non final publications of a paper -- META_SEARCH: meta search engines -- UNKNOWN (lowest): anything else not fitting the above categories +* SOURCE \(highest\): definitive URL for a particular paper +* PUBLISHER: any publisher library +* PREPRINT: any preprint library that might include non final publications of a paper +* META\_SEARCH: meta search engines +* UNKNOWN \(lowest\): anything else not fitting the above categories ### Current trust levels -All fetchers are contained in the package `org.jabref.logic.importer.fetcher`. -Here we list the trust levels of some of them: +All fetchers are contained in the package `org.jabref.logic.importer.fetcher`. Here we list the trust levels of some of them: -- DOI: SOURCE, as the DOI is always forwarded to the correct publisher page for the paper -- ScienceDirect: Publisher -- Springer: Publisher -- ACS: Publisher -- IEEE: Publisher -- Google Scholar: META_SEARCH, because it is a search engine -- Arxiv: PREPRINT, because preprints are published there -- OpenAccessDOI: META_SEARCH +* DOI: SOURCE, as the DOI is always forwarded to the correct publisher page for the paper +* ScienceDirect: Publisher +* Springer: Publisher +* ACS: Publisher +* IEEE: Publisher +* Google Scholar: META\_SEARCH, because it is a search engine +* Arxiv: PREPRINT, because preprints are published there +* OpenAccessDOI: META\_SEARCH Reasoning: -- A DOI uniquely identifies a paper. Per definition, a DOI leads to the right paper. Everything else is good guessing. -- We assume the DOI resolution surely points to the correct paper and that publisher fetches may have errors: For instance, a title of a paper may lead to different publications of it. One the conference version, the other the journal version. --> the PDF could be chosen randomly +* A DOI uniquely identifies a paper. Per definition, a DOI leads to the right paper. Everything else is good guessing. +* We assume the DOI resolution surely points to the correct paper and that publisher fetches may have errors: For instance, a title of a paper may lead to different publications of it. One the conference version, the other the journal version. --> the PDF could be chosen randomly - -Code was first introduced at [PR#3882](https://github.com/JabRef/jabref/pull/3882). +Code was first introduced at [PR\#3882](https://github.com/JabRef/jabref/pull/3882). ## Background on embedding the keys in JabRef diff --git a/docs/contributing.md b/docs/contributing.md index 66084cdb692..3d1bfc8291d 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -1,10 +1,10 @@ -# Contributing Guide +# Contributing After reading through this guide, check out some good first issues to contribute to by clicking here: [Good First Issues](https://github.com/JabRef/jabref/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) In case you are aiming to contribute other improvements, please head over to our general [JabRef contribution page](https://docs.jabref.org/faqcontributing). -In case you are an instructor and want to use **JabRef as software engineering example**, please head to . +In case you are an instructor and want to use **JabRef as software engineering example**, please head to [https://devdocs.jabref.org/teaching](https://devdocs.jabref.org/teaching). ## Contribute code @@ -13,15 +13,14 @@ In case you are an instructor and want to use **JabRef as software engineering e We welcome contributions to JabRef and encourage you to follow the GitHub workflow specified below. If you are not familiar with this type of workflow, take a look at GitHub's excellent overview on the [GitHub flow](https://guides.github.com/introduction/flow/index.html) and the explanation of [Feature Branch Workflow](https://atlassian.com/git/tutorials/comparing-workflows#feature-branch-workflow) for the idea behind this kind of development. 1. Get the JabRef code on your local machine. Detailed instructions about this step can be found in our [guidelines for setting up a local workspace](https://devdocs.jabref.org/getting-into-the-code/guidelines-for-setting-up-a-local-workspace). - 1. Fork the JabRef into your GitHub account. - 2. Clone your forked repository on your local machine. -2. **Create a new branch** (such as `fix-for-issue-121`). Be sure to create a **separate branch** for each improvement you implement. + 1. Fork the JabRef into your GitHub account. + 2. Clone your forked repository on your local machine. +2. **Create a new branch** \(such as `fix-for-issue-121`\). Be sure to create a **separate branch** for each improvement you implement. 3. Do your work on the **new branch - not the master branch.** Refer to our [code howtos](https://devdocs.jabref.org/getting-into-the-code/code-howtos) if you have questions about your implementation. 4. Create a pull request. For an overview of pull requests, take a look at GitHub's [pull request help documentation](https://help.github.com/articles/about-pull-requests/). 5. In case your pull request is not yet complete or not yet ready for review, consider creating a [draft pull request](https://github.blog/2019-02-14-introducing-draft-pull-requests/) instead. -In case you have any questions, do not hesitate to write one of our [JabRef developers](https://github.com/orgs/JabRef/teams/developers) an email. -We should also be online at [gitter](https://gitter.im/JabRef/jabref). +In case you have any questions, do not hesitate to write one of our [JabRef developers](https://github.com/orgs/JabRef/teams/developers) an email. We should also be online at [gitter](https://gitter.im/JabRef/jabref). ### Formal requirements for a pull request @@ -29,46 +28,38 @@ The main goal of the formal requirements is to provide credit to you and to be a #### Add your change to `CHANGELOG.md` -You should edit the [`CHANGELOG.md`](https://github.com/JabRef/jabref/blob/master/CHANGELOG.md#changelog) file located in the root directory of the JabRef source. -Add a line with your changes in the appropriate section. +You should edit the [`CHANGELOG.md`](https://github.com/JabRef/jabref/blob/master/CHANGELOG.md#changelog) file located in the root directory of the JabRef source. Add a line with your changes in the appropriate section. -If you did internal refactorings or improvements not visible to the user (e.g., UI, .bib file), then you don't need to put an entry there. +If you did internal refactorings or improvements not visible to the user \(e.g., UI, .bib file\), then you don't need to put an entry there. -##### Format of keyboard shortcuts +**Format of keyboard shortcuts** Example: `Ctrl + Enter` In case you add keys to the changelog, please follow these rules: -- `` tag for each key -- First letter of key capitalized -- Combined keys separated by `+` -- Spaces before and after separator `+` +* `` tag for each key +* First letter of key capitalized +* Combined keys separated by `+` +* Spaces before and after separator `+` #### Author credits -Please, **do not add yourself at JavaDoc's `@authors`**. -The contribution information is tracked via the version control system and shown at . -We also link to the contributors page in our about dialog. +Please, **do not add yourself at JavaDoc's `@authors`**. The contribution information is tracked via the version control system and shown at [https://github.com/JabRef/jabref/graphs/contributors](https://github.com/JabRef/jabref/graphs/contributors). We also link to the contributors page in our about dialog. Your contribution is considered being made under [MIT license](https://tldrlegal.com/license/mit-license). #### Write a good commit message -See [good commit message] or [commit guidelines section of Pro Git]. -The first line of your commit message is automatically taken as the title for the pull-request. -All other lines make up the body of the pull request. Add the words `fixes #xxx` to your PR to auto-close the corresponding issue. +See [good commit message](https://github.com/joelparkerhenderson/git_commit_message) or [commit guidelines section of Pro Git](http://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project#Commit-Guidelines). The first line of your commit message is automatically taken as the title for the pull-request. All other lines make up the body of the pull request. Add the words `fixes #xxx` to your PR to auto-close the corresponding issue. #### Test your code -We know that writing test cases takes a lot of time. -Nevertheless, we rely on our test cases to ensure that a bug fix or a feature implementation doesn't break anything. -In case you do not have time to add a test case, we nevertheless ask you to at least run `gradlew check` to ensure that your change doesn't break anything else. +We know that writing test cases takes a lot of time. Nevertheless, we rely on our test cases to ensure that a bug fix or a feature implementation doesn't break anything. In case you do not have time to add a test case, we nevertheless ask you to at least run `gradlew check` to ensure that your change doesn't break anything else. #### When adding a new `Localization.lang` entry -Add new `Localization.lang("KEY")` to a Java file. -The tests will fail. In the test output a snippet is generated, which must be added to the English translation file. +Add new `Localization.lang("KEY")` to a Java file. The tests will fail. In the test output a snippet is generated, which must be added to the English translation file. Example: @@ -82,30 +73,21 @@ Expected :[] Actual :[Opens\ JabRef's\ Twitter\ page (src\main\java\org\jabref\gui\JabRefFrame.java LANG)] ``` -Add the above snippet to the English translation file located at `src/main/resources/l10n/JabRef_en.properties`. -[Crowdin](https://crowdin.com/project/jabref) will automatically pick up the new string and add it to the other translations. +Add the above snippet to the English translation file located at `src/main/resources/l10n/JabRef_en.properties`. [Crowdin](https://crowdin.com/project/jabref) will automatically pick up the new string and add it to the other translations. -You can also directly run the specific test in your IDE. -The test "LocalizationConsistencyTest" is placed under `src/test/java/net.sf.jabref.logic.l10n/LocalizationConsistencyTest.java` -Find more information in the [JabRef developer docs](https://devdocs.jabref.org/getting-into-the-code/code-howtos#using-localization-correctly). +You can also directly run the specific test in your IDE. The test "LocalizationConsistencyTest" is placed under `src/test/java/net.sf.jabref.logic.l10n/LocalizationConsistencyTest.java` Find more information in the [JabRef developer docs](https://devdocs.jabref.org/getting-into-the-code/code-howtos#using-localization-correctly). #### When adding a library -Please try to use a version available at JCenter and add it to `build.gradle`. -In any case, describe the library at [`external-libraries.md`](https://github.com/JabRef/jabref/blob/master/external-libraries.md#external-libraries). -We need that information for our package maintainers (e.g., those of the [debian package](https://tracker.debian.org/pkg/jabref)). -Also add a txt file stating the license in `libraries/`. -It is used at `gradlew processResources` to generate the About.html files. -You can see the result in `build\resources\main\help\en\About.html` or when clicking Help -> About. +Please try to use a version available at JCenter and add it to `build.gradle`. In any case, describe the library at [`external-libraries.md`](https://github.com/JabRef/jabref/blob/master/external-libraries.md#external-libraries). We need that information for our package maintainers \(e.g., those of the [debian package](https://tracker.debian.org/pkg/jabref)\). Also add a txt file stating the license in `libraries/`. It is used at `gradlew processResources` to generate the About.html files. You can see the result in `build\resources\main\help\en\About.html` or when clicking Help -> About. #### When making an architectural decision -In case you add a library or do major code rewrites, we ask you to document your decision. -Recommended reading: . +In case you add a library or do major code rewrites, we ask you to document your decision. Recommended reading: [https://adr.github.io/](https://adr.github.io/). -We simply ask to create a new markdown file in `docs/adr` following the template presented at . +We simply ask to create a new markdown file in `docs/adr` following the template presented at [https://adr.github.io/madr/](https://adr.github.io/madr/). -In case you want to directly add a comment to a class, simply use following template (based on [sustainable architectural decisions](https://www.infoq.com/articles/sustainable-architectural-design-decisions)): +In case you want to directly add a comment to a class, simply use following template \(based on [sustainable architectural decisions](https://www.infoq.com/articles/sustainable-architectural-design-decisions)\): ```text In the context of , @@ -119,14 +101,9 @@ because . ### Create a pull request -Create a pull request on GitHub following GitHub's guide "[Creating a pull request from a fork](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request-from-a-fork)". -For text inspirations, consider [How to write the perfect pull request](https://github.com/blog/1943-how-to-write-the-perfect-pull-request). +Create a pull request on GitHub following GitHub's guide "[Creating a pull request from a fork](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request-from-a-fork)". For text inspirations, consider [How to write the perfect pull request](https://github.com/blog/1943-how-to-write-the-perfect-pull-request). -If you want to indicate that a pull request is not yet complete **before** creating the pull request, you may consider creating a [draft pull request](https://github.blog/2019-02-14-introducing-draft-pull-requests/). -Alternatively, once the PR has been created, you can add the prefix `[WIP]` (which stands for "Work in Progress") to indicate that the pull request is not yet complete, but you want to discuss something or inform about the current state of affairs. - -[commit guidelines section of Pro Git]: http://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project#Commit-Guidelines -[good commit message]: https://github.com/joelparkerhenderson/git_commit_message +If you want to indicate that a pull request is not yet complete **before** creating the pull request, you may consider creating a [draft pull request](https://github.blog/2019-02-14-introducing-draft-pull-requests/). Alternatively, once the PR has been created, you can add the prefix `[WIP]` \(which stands for "Work in Progress"\) to indicate that the pull request is not yet complete, but you want to discuss something or inform about the current state of affairs. ## How to improve the developer's documentation @@ -139,3 +116,4 @@ In case you use some gitbook special features and you want to test them, checkou 3. `gitbook serve` Then, you can see a near-to-reality rendering of the development documentation at [http://localhost:4000](http://localhost:4000). + diff --git a/docs/getting-into-the-code/guidelines-for-setting-up-a-local-workspace.md b/docs/getting-into-the-code/guidelines-for-setting-up-a-local-workspace.md index d4c2c4df660..0fc4bb18e43 100644 --- a/docs/getting-into-the-code/guidelines-for-setting-up-a-local-workspace.md +++ b/docs/getting-into-the-code/guidelines-for-setting-up-a-local-workspace.md @@ -127,7 +127,7 @@ To prepare IntelliJ's build system two additional steps are required: To have autoformat working properly in the context of line wrapping, "Wrap at right margin" has to be disabled as shown below. Details are found in [IntelliJ issue 240517](https://youtrack.jetbrains.com/issue/IDEA-240517). -![Disable wrapping at right margin to prevent JavaDoc to be wrapped](../.gitbook/assets/intellij-wrap-at-right-margin%20%284%29%20%281%29.png) +![Disable wrapping at right margin to prevent JavaDoc to be wrapped](../.gitbook/assets/intellij-wrap-at-right-margin%20%284%29%20%284%29.png) #### Using Gradle from within IntelliJ IDEA @@ -155,7 +155,7 @@ To use IntelliJ IDEA's internal build system when you build JabRef through **Bui * In **File \| Settings \| Build, Execution, Deployment \| Build Tools \| Gradle** the setting "Build and run using" and "Test using" is set to "IntelliJ IDEA". * Ignore the Gradle project "buildSrc" by clicking the button **Select Project Data To Import** in the Gradle Tool Window and unchecking the folder "buildSrc". - ![Ignore the Gradle project "buildSrc"](../.gitbook/assets/intellij-gradle-config-ignore-buildSrc%20%282%29%20%282%29.png) + ![Ignore the Gradle project "buildSrc"](../.gitbook/assets/intellij-gradle-config-ignore-buildSrc%20%282%29%20%282%29%20%282%29.png) * Delete `org.jabref.gui.logging.plugins.Log4jPlugins` \(location: `generated\org\jabref\gui\logging\plugins\Log4jPlugins.java`\). Otherwise, you will see following error: @@ -195,7 +195,7 @@ Finally, ensure that the checkstyle configuration file is in place: 7. Ensure that the [latest CheckStyle version](https://checkstyle.org/releasenotes.html) is selected \(8.36 or higher\). 8.36 is required for Java 15. 8. Set the "Scan Scope" to "Only Java sources \(including tests\) 9. Save settings by clicking "OK" -10. Your configuration should now look like this: +10. Your configuration should now look like this: ![checkstyle settings](../.gitbook/assets/intellij-checkstyle-settings.png) @@ -214,7 +214,7 @@ Make sure your Eclipse installation us up to date. 4. Create a run/debug configuration for the main class `org.jabref.gui.JabRefLauncher` and/or for `org.jabref.gui.JabRefMain` \(both can be used equivalently\) * Remark: The run/debug configuration needs to be added by right clicking the class \(e.g. JabRefLauncher or JabRefMain\) otherwise it will not work. - ![Creating the run/debug configuration by right clicking on the class](../.gitbook/assets/eclipse-create-run-config%20%281%29%20%283%29.png) + ![Creating the run/debug configuration by right clicking on the class](../.gitbook/assets/eclipse-create-run-config%20%281%29%20%283%29%20%283%29%20%284%29.png) * In the tab "Arguments" of the run/debug configuration, enter the following runtime VM arguments: diff --git a/docs/teaching.md b/docs/teaching.md index 24c3bfd4f91..fced5df154a 100644 --- a/docs/teaching.md +++ b/docs/teaching.md @@ -1,17 +1,19 @@ -# JabRef and Software Engineering +# JabRef and Software Engineering Training -With JabRef students can level-up their coding and GitHub skills. When taking part in JabRef development, one will learn modern Java coding practices, how code reviews work and how to properly address reviewing feedback. +By using JabRef as training object in exercises and labs, students can level-up their coding and project management skills. When taking part in JabRef development, one will learn modern Java coding practices, how code reviews work and how to properly address reviewing feedback. -JabRef tries to achieve high code quality. This ultimately leads to improved software engineering knowledge of contributors. After contributing for JabRef, both coding and general software engineering skills will have increased. Our [development strategy](getting-into-the-code/development-strategy.md) provides more details. +## Why university instructors should cooperate with us? -We recommend to start early and constantly, since students working earlier and more often produce projects that are more correct and completed earlier at the same overall invested time [1](teaching.md#Ayaankazerouni). +* No need to think about software engineering excersies any more: JabRef has them. +* No need to provision infra structure +* High-quality student educuation due to real-world tooling and real-world code base +* Sustainability of student works: No more thrown-away solved excercises: They now are incorparted in a real-world product +* Visibility of your research groups -## Notes for instructors +## How to integrate JabRef in your class -1. Be aware that JabRef is run by volunteers. This implies that the development team cannot ensure to provide feedback on code within hours. -2. Be aware that from the first pull request to the final acceptance the typical time needed is two weeks. -3. Be aware that JabRef tries to achieve high code quality. This leads to code reviews requiring actions from the contributors. This also applies for code of students. Read on at our [Development Strategy](getting-into-the-code/development-strategy.md) for more details. -4. Choose tasks from one of the following boards. Write a comment on each issue so that it can be reserved for your course. +1. Get in touch with the JabRef team to discuss details. We offer email, skype, [gitter.im](https://gitter.im/JabRef/jabref), discord. Get in touch with [@koppor](https://github.com/koppor/) to find the right channel and to start forming the success of your course. +2. Choose tasks from one of the following boards. Write a comment on each issue so that it can be reserved for your course. * Candidates for university projects: [https://github.com/JabRef/jabref/projects/9](https://github.com/JabRef/jabref/projects/9) * This board categorizes in small, medium, and large features * Feature Board: [https://github.com/JabRef/jabref/projects/7](https://github.com/JabRef/jabref/projects/7) @@ -19,8 +21,12 @@ We recommend to start early and constantly, since students working earlier and m * Bug Board: [https://github.com/JabRef/jabref/projects/5](https://github.com/JabRef/jabref/projects/5) * This is an excellent board to find issues training the maintenance knowledge which is essential for industry work * General "good first issues". The JabRef team tags issues as [good first issues](https://github.com/jabref/jabref/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) to indicate open tasks offering a good start into the JabRef code. These issues are more a list of random bugs and features. For a more structured comparison of the opened tasks, we recommend the project boards listed above. -5. Be aware that the difficulty of bugs and feature vary. A task should be chosen with care. The JabRef team can help here: The majority of the team has experiences in teaching -6. Get in touch with the JabRef team to discuss details. We offer email, skype, [gitter.im](https://gitter.im/JabRef/jabref), discord. Get in touch with [@koppor](https://github.com/koppor/) to find the right channel and to start forming the success of your course. + * Be aware that the difficulty of bugs and feature vary. A task should be chosen with care. The JabRef team can help here: The majority of the team has experiences in teaching +3. Schedule tasks with students +4. Code reviews by JabRef maintainers +5. Students address feedback and learn more about good coding practices by incoporating feedback +6. Students update their pull request +7. Pull request is merged For a near-to-perfect preparation and effect of the course, we ask you to get in touch with us **four weeks** in advance. Then, the JabRef team can a\) learn about the starting skill level of the students, b\) the aimed skill level at the end of the course, c\) the amount of time the students are given to learn about and contribute to JabRef, d\) check the [feature board](https://github.com/JabRef/jabref/projects/7) for appropriate tasks \(and fill it as needed\), e\) recommend appropriate features. @@ -34,7 +40,7 @@ There is no special process for student contributions. We want to discuss it nev The process for accepting contributions is as below. The syntax is [BPMN](https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation) modeled using [bpmn.io](https://bpmn.io/). -[![process](.gitbook/assets/contribution-process-reviews%20%282%29%20%281%29.svg)](https://github.com/JabRef/jabref/tree/ed275b62fe7dac57a086e43802e36deb93c63e31/docs/images/contribution-process-reviews.svg) +[![process](.gitbook/assets/contribution-process-reviews%20%282%29%20%282%29%20%281%29.svg)](https://github.com/JabRef/jabref/tree/ed275b62fe7dac57a086e43802e36deb93c63e31/docs/images/contribution-process-reviews.svg) In short, the contribution is **reviewed by two JabRef developers**. Typically, they have constructive feedback on their contribution. This means, that the contributors get comments on their contribution enabling them to level-up their coding skill. Incorporating improvements takes time, too. The benefit is two-fold: a\) contributors improve their coding skills and b\) JabRef's code quality improves. All in all, we ask to respect the aims of the JabRef team and to reserve time to incorporate the reviewer's comments. @@ -46,7 +52,7 @@ GitHub describes that in their page [Understanding the GitHub flow](https://guid Newcomers contributing in the context of a university teaching experience are invited to follow the process described above. In case the capacity of the instructing university allows, we propose a three-step approach. First, the contributors prepare their contribution as usual. Then, they submit the pull request _to a separate repository_. There, the instructor reviews the pull request and provides feedback. This happens in a loop until the instructor shows the green light. Then, the pull request can be submitted to the main JabRef repository. This will help to reduce the load on the JabRef team and improve the quality of the initial pull request. -[![process with instructor](.gitbook/assets/contribution-process-reviews-with-instructor%20%281%29%20%282%29.svg)](https://github.com/JabRef/jabref/tree/ed275b62fe7dac57a086e43802e36deb93c63e31/docs/images/contribution-process-reviews-with-instructor.svg) +[![process with instructor](.gitbook/assets/contribution-process-reviews-with-instructor%20%281%29%20%282%29%20%282%29.svg)](https://github.com/JabRef/jabref/tree/ed275b62fe7dac57a086e43802e36deb93c63e31/docs/images/contribution-process-reviews-with-instructor.svg) ## Past courses @@ -116,6 +122,14 @@ Course [Open Source Software](https://github.com/igorsteinmacher/DSL-UTFPR) * Summary: Students are requested to contribute to an Open Source project to learn about the maintenance and evolution of software projects. This project is the predecessor of NAU's CS499. * Course offered from 2013 to 2016 with different names +## Notes + +1. JabRef tries to achieve high code quality. This ultimately leads to improved software engineering knowledge of contributors. After contributing for JabRef, both coding and general software engineering skills will have increased. Our [development strategy](getting-into-the-code/development-strategy.md) provides more details. +2. We recommend to start early and constantly, since students working earlier and more often produce projects that are more correct and completed earlier at the same overall invested time [1](teaching.md#Ayaankazerouni). +3. Be aware that JabRef is run by volunteers. This implies that the development team cannot ensure to provide feedback on code within hours. +4. Be aware that from the first pull request to the final acceptance the typical time needed is two weeks. +5. Be aware that JabRef tries to achieve high code quality. This leads to code reviews requiring actions from the contributors. This also applies for code of students. Read on at our [Development Strategy](getting-into-the-code/development-strategy.md) for more details. + ## References [1](teaching.md#a1): [@ayaankazerouni](https://github.com/ayaankazerouni): [Developing Procrastination Feedback for Student Software Developers](https://medium.com/@ayaankazerouni/developing-procrastination-feedback-for-student-software-developers-1652de60db7f) [2](teaching.md#a2): Lientz B., Swanson E., 1980: Software Maintenance Management. Addison Wesley, Reading, MA. From e656635d8262bac56540ee80eab365fc9ee469f4 Mon Sep 17 00:00:00 2001 From: Dominik Voigt Date: Tue, 19 Jan 2021 23:07:17 +0100 Subject: [PATCH 11/16] Add migration to special field (#7368) --- CHANGELOG.md | 1 + .../gui/edit/ManageKeywordsViewModel.java | 9 -- .../gui/specialfields/SpecialFieldAction.java | 15 +-- .../specialfields/SpecialFieldViewModel.java | 17 +-- .../jabref/logic/importer/OpenDatabase.java | 17 +-- .../specialfields/SpecialFieldsUtils.java | 121 ------------------ .../SpecialFieldsToSeparateFields.java | 73 +++++++++++ .../specialfields/SpecialFieldsUtilsTest.java | 91 ------------- .../SpecialFieldsToSeparateFieldsTest.java | 92 +++++++++++++ 9 files changed, 180 insertions(+), 256 deletions(-) delete mode 100644 src/main/java/org/jabref/logic/specialfields/SpecialFieldsUtils.java create mode 100644 src/main/java/org/jabref/migrations/SpecialFieldsToSeparateFields.java delete mode 100644 src/test/java/org/jabref/logic/specialfields/SpecialFieldsUtilsTest.java create mode 100644 src/test/java/org/jabref/migrations/SpecialFieldsToSeparateFieldsTest.java diff --git a/CHANGELOG.md b/CHANGELOG.md index 59ab7e13f0e..93d09b0cbbc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve ### Changed - The content of the field `timestamp` is migrated to `creationdate`. In case one configured "udpate timestampe", it is migrated to `modificationdate`. [koppor#130](https://github.com/koppor/jabref/issues/130) +- The JabRef specific meta-data content in the main field such as priorities (prio1, prio2, ...) are migrated to their respective fields. They are removed from the keywords. [#6840](https://github.com/jabref/jabref/issues/6840) - We fixed an issue where groups generated from authors' last names did not include all entries of the authors' [#5833](https://github.com/JabRef/jabref/issues/5833) - The export to MS Office XML now uses the month name for the field `MonthAcessed` instead of the two digit number [#7354](https://github.com/JabRef/jabref/issues/7354) diff --git a/src/main/java/org/jabref/gui/edit/ManageKeywordsViewModel.java b/src/main/java/org/jabref/gui/edit/ManageKeywordsViewModel.java index 7c2809813d7..867eeccea47 100644 --- a/src/main/java/org/jabref/gui/edit/ManageKeywordsViewModel.java +++ b/src/main/java/org/jabref/gui/edit/ManageKeywordsViewModel.java @@ -11,7 +11,6 @@ import org.jabref.gui.undo.NamedCompound; import org.jabref.gui.undo.UndoableFieldChange; import org.jabref.logic.l10n.Localization; -import org.jabref.logic.specialfields.SpecialFieldsUtils; import org.jabref.model.FieldChange; import org.jabref.model.entry.BibEntry; import org.jabref.model.entry.Keyword; @@ -105,10 +104,6 @@ public void saveChanges() { return; } - if (preferences.getSpecialFieldsPreferences().isKeywordSyncEnabled() && !keywordsToAdd.isEmpty()) { - SpecialFieldsUtils.synchronizeSpecialFields(keywordsToAdd, keywordsToRemove); - } - NamedCompound ce = updateKeywords(entries, keywordsToAdd, keywordsToRemove); // TODO: bp.getUndoManager().addEdit(ce); } @@ -126,10 +121,6 @@ private NamedCompound updateKeywords(List entries, KeywordList keyword // put keywords back Optional change = entry.putKeywords(keywords, preferences.getKeywordDelimiter()); change.ifPresent(fieldChange -> ce.addEdit(new UndoableFieldChange(fieldChange))); - - if (preferences.getSpecialFieldsPreferences().isKeywordSyncEnabled()) { - SpecialFieldsUtils.syncSpecialFieldsFromKeywords(entry, preferences.getKeywordDelimiter()); - } } ce.end(); return ce; diff --git a/src/main/java/org/jabref/gui/specialfields/SpecialFieldAction.java b/src/main/java/org/jabref/gui/specialfields/SpecialFieldAction.java index 17b04069192..130bf0e3b68 100644 --- a/src/main/java/org/jabref/gui/specialfields/SpecialFieldAction.java +++ b/src/main/java/org/jabref/gui/specialfields/SpecialFieldAction.java @@ -2,6 +2,7 @@ import java.util.List; import java.util.Objects; +import java.util.Optional; import javax.swing.undo.UndoManager; @@ -13,7 +14,7 @@ import org.jabref.gui.undo.NamedCompound; import org.jabref.gui.undo.UndoableFieldChange; import org.jabref.logic.l10n.Localization; -import org.jabref.logic.specialfields.SpecialFieldsUtils; +import org.jabref.logic.util.UpdateField; import org.jabref.model.FieldChange; import org.jabref.model.entry.BibEntry; import org.jabref.model.entry.field.SpecialField; @@ -70,17 +71,9 @@ public void execute() { NamedCompound ce = new NamedCompound(undoText); for (BibEntry bibEntry : bes) { // if (value==null) and then call nullField has been omitted as updatefield also handles value==null - List changes = SpecialFieldsUtils.updateField( - specialField, - value, - bibEntry, - nullFieldIfValueIsTheSame, - preferencesService.getSpecialFieldsPreferences().isKeywordSyncEnabled(), - preferencesService.getKeywordDelimiter()); + Optional change = UpdateField.updateField(bibEntry, specialField, value, nullFieldIfValueIsTheSame); - for (FieldChange change : changes) { - ce.addEdit(new UndoableFieldChange(change)); - } + change.ifPresent(fieldChange -> ce.addEdit(new UndoableFieldChange(fieldChange))); } ce.end(); if (ce.hasEdits()) { diff --git a/src/main/java/org/jabref/gui/specialfields/SpecialFieldViewModel.java b/src/main/java/org/jabref/gui/specialfields/SpecialFieldViewModel.java index a60f1621bff..596b1848a5a 100644 --- a/src/main/java/org/jabref/gui/specialfields/SpecialFieldViewModel.java +++ b/src/main/java/org/jabref/gui/specialfields/SpecialFieldViewModel.java @@ -2,6 +2,7 @@ import java.util.List; import java.util.Objects; +import java.util.Optional; import java.util.stream.Collectors; import javax.swing.undo.UndoManager; @@ -13,7 +14,7 @@ import org.jabref.gui.actions.StandardActions; import org.jabref.gui.icon.JabRefIcon; import org.jabref.gui.undo.UndoableFieldChange; -import org.jabref.logic.specialfields.SpecialFieldsUtils; +import org.jabref.logic.util.UpdateField; import org.jabref.model.FieldChange; import org.jabref.model.entry.BibEntry; import org.jabref.model.entry.field.SpecialField; @@ -83,17 +84,9 @@ public List getValues() { } public void setSpecialFieldValue(BibEntry bibEntry, SpecialFieldValue value) { - List changes = SpecialFieldsUtils.updateField( - getField(), - value.getFieldValue().orElse(null), - bibEntry, - getField().isSingleValueField(), - preferencesService.getSpecialFieldsPreferences().isKeywordSyncEnabled(), - preferencesService.getKeywordDelimiter()); - - for (FieldChange change : changes) { - undoManager.addEdit(new UndoableFieldChange(change)); - } + Optional change = UpdateField.updateField(bibEntry, getField(), value.getFieldValue().orElse(null), getField().isSingleValueField()); + + change.ifPresent(fieldChange -> undoManager.addEdit(new UndoableFieldChange(fieldChange))); } public void toggle(BibEntry entry) { diff --git a/src/main/java/org/jabref/logic/importer/OpenDatabase.java b/src/main/java/org/jabref/logic/importer/OpenDatabase.java index 3da89f9a5aa..8fec03796a9 100644 --- a/src/main/java/org/jabref/logic/importer/OpenDatabase.java +++ b/src/main/java/org/jabref/logic/importer/OpenDatabase.java @@ -9,12 +9,11 @@ import org.jabref.logic.importer.fileformat.BibtexImporter; import org.jabref.logic.l10n.Localization; import org.jabref.logic.preferences.TimestampPreferences; -import org.jabref.logic.specialfields.SpecialFieldsUtils; import org.jabref.migrations.ConvertLegacyExplicitGroups; import org.jabref.migrations.ConvertMarkingToGroups; import org.jabref.migrations.PostOpenMigration; +import org.jabref.migrations.SpecialFieldsToSeparateFields; import org.jabref.migrations.TimeStampToDateAddAndModify; -import org.jabref.model.entry.BibEntry; import org.jabref.model.util.FileUpdateMonitor; import org.slf4j.Logger; @@ -65,23 +64,17 @@ public static ParserResult loadDatabase(Path fileToOpen, ImportFormatPreferences ParserResult result = new BibtexImporter(importFormatPreferences, fileMonitor).importDatabase(fileToOpen, importFormatPreferences.getEncoding()); - if (importFormatPreferences.isKeywordSyncEnabled()) { - for (BibEntry entry : result.getDatabase().getEntries()) { - SpecialFieldsUtils.syncSpecialFieldsFromKeywords(entry, importFormatPreferences.getKeywordSeparator()); - } - LOGGER.debug("Synchronized special fields based on keywords"); - } - - performLoadDatabaseMigrations(result, timestampPreferences); + performLoadDatabaseMigrations(result, timestampPreferences, importFormatPreferences.getKeywordSeparator()); return result; } - private static void performLoadDatabaseMigrations(ParserResult parserResult, TimestampPreferences timestampPreferences) { + private static void performLoadDatabaseMigrations(ParserResult parserResult, TimestampPreferences timestampPreferences, Character keywordDelimited) { List postOpenMigrations = Arrays.asList( new ConvertLegacyExplicitGroups(), new ConvertMarkingToGroups(), - new TimeStampToDateAddAndModify(timestampPreferences) + new TimeStampToDateAddAndModify(timestampPreferences), + new SpecialFieldsToSeparateFields(keywordDelimited) ); for (PostOpenMigration migration : postOpenMigrations) { diff --git a/src/main/java/org/jabref/logic/specialfields/SpecialFieldsUtils.java b/src/main/java/org/jabref/logic/specialfields/SpecialFieldsUtils.java deleted file mode 100644 index d0df2d63e9d..00000000000 --- a/src/main/java/org/jabref/logic/specialfields/SpecialFieldsUtils.java +++ /dev/null @@ -1,121 +0,0 @@ -package org.jabref.logic.specialfields; - -import java.util.ArrayList; -import java.util.List; -import java.util.Optional; - -import org.jabref.logic.util.UpdateField; -import org.jabref.model.FieldChange; -import org.jabref.model.entry.BibEntry; -import org.jabref.model.entry.Keyword; -import org.jabref.model.entry.KeywordList; -import org.jabref.model.entry.field.SpecialField; -import org.jabref.model.entry.field.StandardField; - -/** - * @deprecated the class should be refactored and partly integrated into BibEntry - * instead of synchronizing special fields with the keyword field, the BibEntry class should have a method - * setSpecialField(field, newValue, syncToKeyword) which directly performs the correct action - * i.e.sets the field to newValue(in the case syncToKeyword=false)or adds newValue to keywords(sync=true) - */ - -@Deprecated -public class SpecialFieldsUtils { - - /** - * @param field - Field to be handled - * @param value - may be null to state that field should be emptied - * @param entry - BibTeXEntry to be handled - * @param nullFieldIfValueIsTheSame - true: field is nulled if value is the same than the current value in be - */ - public static List updateField(SpecialField field, String value, BibEntry entry, boolean nullFieldIfValueIsTheSame, boolean isKeywordSyncEnabled, Character keywordDelimiter) { - List fieldChanges = new ArrayList<>(); - - UpdateField.updateField(entry, field, value, nullFieldIfValueIsTheSame) - .ifPresent(fieldChanges::add); - // we cannot use "value" here as updateField has side effects: "nullFieldIfValueIsTheSame" nulls the field if value is the same - if (isKeywordSyncEnabled) { - fieldChanges.addAll(SpecialFieldsUtils.exportFieldToKeywords(field, entry, keywordDelimiter)); - } - - return fieldChanges; - } - - private static List exportFieldToKeywords(SpecialField specialField, BibEntry entry, Character keywordDelimiter) { - List fieldChanges = new ArrayList<>(); - - KeywordList keyWords = specialField.getKeyWords(); - Optional newValue = entry.getField(specialField).map(Keyword::new); - newValue.map(value -> entry.replaceKeywords(keyWords, newValue.get(), keywordDelimiter)) - .orElseGet(() -> entry.removeKeywords(keyWords, keywordDelimiter)) - .ifPresent(changeValue -> fieldChanges.add(changeValue)); - - return fieldChanges; - } - - /** - * Update keywords according to values of special fields - */ - public static List syncKeywordsFromSpecialFields(BibEntry entry, Character keywordDelimiter) { - List fieldChanges = new ArrayList<>(); - - for (SpecialField field : SpecialField.values()) { - fieldChanges.addAll(SpecialFieldsUtils.exportFieldToKeywords(field, entry, keywordDelimiter)); - } - - return fieldChanges; - } - - private static List importKeywordsForField(KeywordList keywordList, SpecialField field, BibEntry entry) { - List fieldChanges = new ArrayList<>(); - - KeywordList values = field.getKeyWords(); - Optional newValue = Optional.empty(); - for (Keyword keyword : values) { - if (keywordList.contains(keyword)) { - newValue = Optional.of(keyword); - break; - } - } - - UpdateField.updateNonDisplayableField(entry, field, newValue.map(Keyword::toString).orElse(null)) - .ifPresent(fieldChanges::add); - return fieldChanges; - } - - /** - * Updates special field values according to keywords - */ - public static List syncSpecialFieldsFromKeywords(BibEntry entry, Character keywordDelimiter) { - List fieldChanges = new ArrayList<>(); - if (!entry.hasField(StandardField.KEYWORDS)) { - return fieldChanges; - } - - KeywordList keywordList = entry.getKeywords(keywordDelimiter); - - for (SpecialField field : SpecialField.values()) { - fieldChanges.addAll(SpecialFieldsUtils.importKeywordsForField(keywordList, field, entry)); - } - - return fieldChanges; - } - - public static void synchronizeSpecialFields(KeywordList keywordsToAdd, KeywordList keywordsToRemove) { - // we need to check whether a special field is added - // for each field: - // check if something is added - // if yes, add all keywords of that special fields to the keywords to be removed - - KeywordList clone; - - // Priority - clone = keywordsToAdd.createClone(); - for (SpecialField field : SpecialField.values()) { - clone.retainAll(field.getKeyWords()); - if (!clone.isEmpty()) { - keywordsToRemove.addAll(field.getKeyWords()); - } - } - } -} diff --git a/src/main/java/org/jabref/migrations/SpecialFieldsToSeparateFields.java b/src/main/java/org/jabref/migrations/SpecialFieldsToSeparateFields.java new file mode 100644 index 00000000000..06f18823e22 --- /dev/null +++ b/src/main/java/org/jabref/migrations/SpecialFieldsToSeparateFields.java @@ -0,0 +1,73 @@ +package org.jabref.migrations; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.stream.Collectors; + +import org.jabref.logic.importer.ParserResult; +import org.jabref.model.entry.BibEntry; +import org.jabref.model.entry.Keyword; +import org.jabref.model.entry.KeywordList; +import org.jabref.model.entry.field.SpecialField; +import org.jabref.model.entry.field.SpecialFieldValue; + +public class SpecialFieldsToSeparateFields implements PostOpenMigration { + private final KeywordList possibleKeywordsToMigrate; + private final Character keywordDelimiter; + private final Map migrationTable = getMigrationTable(); + + public SpecialFieldsToSeparateFields(Character keywordDelimiter) { + List specialFieldValues = Arrays.asList(SpecialFieldValue.values()); + possibleKeywordsToMigrate = new KeywordList(specialFieldValues.stream() + .map(SpecialFieldValue::getKeyword) + .filter(Optional::isPresent) + .map(Optional::get) + .collect(Collectors.toList())); + this.keywordDelimiter = keywordDelimiter; + } + + @Override + public void performMigration(ParserResult parserResult) { + parserResult.getDatabase().getEntries().forEach(this::migrateEntry); + } + + private void migrateEntry(BibEntry entry) { + for (Keyword keyword : possibleKeywordsToMigrate) { + if (entry.getKeywords(keywordDelimiter).contains(keyword) && migrationTable.containsKey(keyword.get())) { + entry.setField(migrationTable.get(keyword.get()), keyword.get()); + } + } + + entry.removeKeywords(possibleKeywordsToMigrate, keywordDelimiter); + } + + /** + * Mapping of special field values (contained in the keywords) to their corresponding special field + */ + private Map getMigrationTable() { + Map map = new HashMap<>(); + map.put("printed", SpecialField.PRINTED); + + map.put("prio1", SpecialField.PRIORITY); + map.put("prio2", SpecialField.PRIORITY); + map.put("prio3", SpecialField.PRIORITY); + + map.put("qualityAssured", SpecialField.QUALITY); + + map.put("rank1", SpecialField.RANKING); + map.put("rank2", SpecialField.RANKING); + map.put("rank3", SpecialField.RANKING); + map.put("rank4", SpecialField.RANKING); + map.put("rank5", SpecialField.RANKING); + + map.put("read", SpecialField.READ_STATUS); + map.put("skimmed", SpecialField.READ_STATUS); + + map.put("relevant", SpecialField.RELEVANCE); + + return map; + } +} diff --git a/src/test/java/org/jabref/logic/specialfields/SpecialFieldsUtilsTest.java b/src/test/java/org/jabref/logic/specialfields/SpecialFieldsUtilsTest.java deleted file mode 100644 index 354d49a235e..00000000000 --- a/src/test/java/org/jabref/logic/specialfields/SpecialFieldsUtilsTest.java +++ /dev/null @@ -1,91 +0,0 @@ -package org.jabref.logic.specialfields; - -import java.util.Arrays; -import java.util.List; -import java.util.Optional; - -import org.jabref.model.FieldChange; -import org.jabref.model.entry.BibEntry; -import org.jabref.model.entry.Keyword; -import org.jabref.model.entry.KeywordList; -import org.jabref.model.entry.field.SpecialField; -import org.jabref.model.entry.field.StandardField; - -import org.junit.jupiter.api.Test; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; - -public class SpecialFieldsUtilsTest { - - @Test - public void syncKeywordsFromSpecialFieldsWritesToKeywords() { - BibEntry entry = new BibEntry(); - entry.setField(SpecialField.RANKING, "rank2"); - SpecialFieldsUtils.syncKeywordsFromSpecialFields(entry, ','); - assertEquals(Optional.of("rank2"), entry.getField(StandardField.KEYWORDS)); - } - - @Test - public void syncKeywordsFromSpecialFieldsCausesChange() { - BibEntry entry = new BibEntry(); - entry.setField(SpecialField.RANKING, "rank2"); - List changes = SpecialFieldsUtils.syncKeywordsFromSpecialFields(entry, ','); - assertTrue(changes.size() > 0); - } - - @Test - public void syncKeywordsFromSpecialFieldsOverwritesKeywords() { - BibEntry entry = new BibEntry(); - entry.setField(SpecialField.RANKING, "rank2"); - entry.setField(StandardField.KEYWORDS, "rank3"); - SpecialFieldsUtils.syncKeywordsFromSpecialFields(entry, ','); - assertEquals(Optional.of("rank2"), entry.getField(StandardField.KEYWORDS)); - } - - @Test - public void syncKeywordsFromSpecialFieldsForEmptyFieldCausesNoChange() { - BibEntry entry = new BibEntry(); - List changes = SpecialFieldsUtils.syncKeywordsFromSpecialFields(entry, ','); - assertFalse(changes.size() > 0); - } - - @Test - public void syncSpecialFieldsFromKeywordWritesToSpecialField() { - BibEntry entry = new BibEntry(); - entry.setField(StandardField.KEYWORDS, "rank2"); - SpecialFieldsUtils.syncSpecialFieldsFromKeywords(entry, ','); - assertEquals(Optional.of("rank2"), entry.getField(SpecialField.RANKING)); - } - - @Test - public void syncSpecialFieldsFromKeywordCausesChange() { - BibEntry entry = new BibEntry(); - entry.setField(StandardField.KEYWORDS, "rank2"); - List changes = SpecialFieldsUtils.syncSpecialFieldsFromKeywords(entry, ','); - assertTrue(changes.size() > 0); - } - - @Test - public void syncSpecialFieldsFromKeywordCausesNoChangeWhenKeywordsAreEmpty() { - BibEntry entry = new BibEntry(); - List changes = SpecialFieldsUtils.syncSpecialFieldsFromKeywords(entry, ','); - assertFalse(changes.size() > 0); - } - - @Test - public void updateFieldRemovesSpecialFieldKeywordWhenKeywordSyncIsUsed() { - BibEntry entry = new BibEntry(); - SpecialField specialField = SpecialField.PRINTED; - Keyword specialFieldKeyword = specialField.getKeyWords().get(0); - // Add the special field - SpecialFieldsUtils.updateField(specialField, specialFieldKeyword.get(), entry, true, true, ','); - // Remove it - List changes = SpecialFieldsUtils.updateField(specialField, specialFieldKeyword.get(), entry, true, true, ','); - assertEquals(Arrays.asList(new FieldChange(entry, specialField, specialFieldKeyword.get(), null), - new FieldChange(entry, StandardField.KEYWORDS, specialFieldKeyword.get(), null)), changes); - KeywordList remainingKeywords = entry.getKeywords(','); - assertFalse(remainingKeywords.contains(specialFieldKeyword)); - } -} diff --git a/src/test/java/org/jabref/migrations/SpecialFieldsToSeparateFieldsTest.java b/src/test/java/org/jabref/migrations/SpecialFieldsToSeparateFieldsTest.java new file mode 100644 index 00000000000..b1f64b2ca99 --- /dev/null +++ b/src/test/java/org/jabref/migrations/SpecialFieldsToSeparateFieldsTest.java @@ -0,0 +1,92 @@ +package org.jabref.migrations; + +import java.util.List; +import java.util.stream.Stream; + +import org.jabref.logic.importer.ParserResult; +import org.jabref.model.entry.BibEntry; +import org.jabref.model.entry.field.SpecialField; +import org.jabref.model.entry.field.StandardField; + +import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class SpecialFieldsToSeparateFieldsTest { + + @ParameterizedTest + @MethodSource("provideKeywordFieldPairs") + public void migrateToCorrectField(SpecialField field, String fieldInKeyword, BibEntry expected) { + BibEntry entry = new BibEntry().withField(StandardField.KEYWORDS, fieldInKeyword); + + new SpecialFieldsToSeparateFields(',').performMigration(new ParserResult(List.of(entry))); + + assertEquals(expected, entry); + } + + @Test + public void noKewordToMigrate() { + BibEntry entry = new BibEntry().withField(StandardField.AUTHOR, "JabRef") + .withField(StandardField.KEYWORDS, "tdd"); + BibEntry expected = new BibEntry().withField(StandardField.AUTHOR, "JabRef") + .withField(StandardField.KEYWORDS, "tdd"); + + new SpecialFieldsToSeparateFields(',').performMigration(new ParserResult(List.of(entry))); + + assertEquals(expected, entry); + } + + @Test + public void migrateMultipleSpecialFields() { + BibEntry entry = new BibEntry().withField(StandardField.AUTHOR, "JabRef") + .withField(StandardField.KEYWORDS, "printed, prio1"); + BibEntry expected = new BibEntry().withField(StandardField.AUTHOR, "JabRef") + .withField(SpecialField.PRINTED, "printed") + .withField(SpecialField.PRIORITY, "prio1"); + + new SpecialFieldsToSeparateFields(',').performMigration(new ParserResult(List.of(entry))); + + assertEquals(expected, entry); + } + + @Test + public void migrateSpecialFieldsMixedWithKeyword() { + BibEntry entry = new BibEntry().withField(StandardField.AUTHOR, "JabRef") + .withField(StandardField.KEYWORDS, "tdd, prio1, SE"); + + BibEntry expected = new BibEntry().withField(StandardField.AUTHOR, "JabRef") + .withField(StandardField.KEYWORDS, "tdd, SE") + .withField(SpecialField.PRIORITY, "prio1"); + + new SpecialFieldsToSeparateFields(',').performMigration(new ParserResult(List.of(entry))); + + assertEquals(expected, entry); + } + + private static Stream provideKeywordFieldPairs() { + return Stream.of( + Arguments.of( + SpecialField.PRINTED, "printed", new BibEntry().withField(SpecialField.PRINTED, "printed") + ), + Arguments.of( + SpecialField.PRIORITY, "prio1", new BibEntry().withField(SpecialField.PRIORITY, "prio1") + ), + Arguments.of( + SpecialField.QUALITY, "qualityAssured", new BibEntry().withField(SpecialField.QUALITY, "qualityAssured") + ), + Arguments.of( + SpecialField.RANKING, "rank2", new BibEntry().withField(SpecialField.RANKING, "rank2") + ), + Arguments.of( + SpecialField.READ_STATUS, "skimmed", new BibEntry().withField(SpecialField.READ_STATUS, "skimmed") + ), + Arguments.of( + SpecialField.RELEVANCE, "relevant", new BibEntry().withField(SpecialField.RELEVANCE, "relevant") + ) + ); + } +} + From e6f9337abca5dad3c9c35554bc8842dfcc6debd0 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Tue, 19 Jan 2021 22:47:32 +0000 Subject: [PATCH 12/16] GitBook: [master] 3 pages and 32 assets modified --- ...ontribution-process-reviews (2) (2) (2) (1).svg} | 0 ...ontribution-process-reviews (2) (2) (2) (2).svg} | 0 ...reviews-with-instructor (1) (2) (2) (2) (1).svg} | 0 ...reviews-with-instructor (1) (2) (2) (2) (2).svg} | 0 ...lipse-create-run-config (1) (3) (3) (4) (1).png} | Bin ...lipse-create-run-config (1) (3) (3) (4) (2).png} | Bin ...lipse-create-run-config (1) (3) (3) (4) (3).png} | Bin ...lipse-create-run-config (1) (3) (3) (4) (4).png} | Bin ...-config-ignore-buildSrc (2) (2) (2) (3) (1).png} | Bin ...-config-ignore-buildSrc (2) (2) (2) (3) (2).png} | Bin ...-config-ignore-buildSrc (2) (2) (2) (3) (3).png} | Bin ...tellij-wrap-at-right-margin (4) (4) (4) (1).png} | Bin ...tellij-wrap-at-right-margin (4) (4) (4) (2).png} | Bin ...tellij-wrap-at-right-margin (4) (4) (4) (3).png} | Bin ...tellij-wrap-at-right-margin (4) (4) (4) (4).png} | Bin ...tellij-wrap-at-right-margin (4) (4) (4) (5).png} | Bin .../guidelines-for-setting-up-a-local-workspace.md | 6 +++--- docs/readings-on-coding/tools.md | 2 +- docs/teaching.md | 4 ++-- 19 files changed, 6 insertions(+), 6 deletions(-) rename docs/.gitbook/assets/{contribution-process-reviews (2) (2) (1).svg => contribution-process-reviews (2) (2) (2) (1).svg} (100%) rename docs/.gitbook/assets/{contribution-process-reviews (2) (2).svg => contribution-process-reviews (2) (2) (2) (2).svg} (100%) rename docs/.gitbook/assets/{contribution-process-reviews-with-instructor (1) (2) (2) (1).svg => contribution-process-reviews-with-instructor (1) (2) (2) (2) (1).svg} (100%) rename docs/.gitbook/assets/{contribution-process-reviews-with-instructor (1) (2) (2).svg => contribution-process-reviews-with-instructor (1) (2) (2) (2) (2).svg} (100%) rename docs/.gitbook/assets/{eclipse-create-run-config (1) (3) (3) (1).png => eclipse-create-run-config (1) (3) (3) (4) (1).png} (100%) rename docs/.gitbook/assets/{eclipse-create-run-config (1) (3) (3) (2).png => eclipse-create-run-config (1) (3) (3) (4) (2).png} (100%) rename docs/.gitbook/assets/{eclipse-create-run-config (1) (3) (3) (3).png => eclipse-create-run-config (1) (3) (3) (4) (3).png} (100%) rename docs/.gitbook/assets/{eclipse-create-run-config (1) (3) (3).png => eclipse-create-run-config (1) (3) (3) (4) (4).png} (100%) rename docs/.gitbook/assets/{intellij-gradle-config-ignore-buildSrc (2) (2) (2) (1).png => intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (1).png} (100%) rename docs/.gitbook/assets/{intellij-gradle-config-ignore-buildSrc (2) (2) (2) (2).png => intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (2).png} (100%) rename docs/.gitbook/assets/{intellij-gradle-config-ignore-buildSrc (2) (2) (2).png => intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (3).png} (100%) rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4) (4) (1).png => intellij-wrap-at-right-margin (4) (4) (4) (1).png} (100%) rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4) (4) (2).png => intellij-wrap-at-right-margin (4) (4) (4) (2).png} (100%) rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4) (4) (3).png => intellij-wrap-at-right-margin (4) (4) (4) (3).png} (100%) rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4) (4) (5).png => intellij-wrap-at-right-margin (4) (4) (4) (4).png} (100%) rename docs/.gitbook/assets/{intellij-wrap-at-right-margin (4) (4).png => intellij-wrap-at-right-margin (4) (4) (4) (5).png} (100%) diff --git a/docs/.gitbook/assets/contribution-process-reviews (2) (2) (1).svg b/docs/.gitbook/assets/contribution-process-reviews (2) (2) (2) (1).svg similarity index 100% rename from docs/.gitbook/assets/contribution-process-reviews (2) (2) (1).svg rename to docs/.gitbook/assets/contribution-process-reviews (2) (2) (2) (1).svg diff --git a/docs/.gitbook/assets/contribution-process-reviews (2) (2).svg b/docs/.gitbook/assets/contribution-process-reviews (2) (2) (2) (2).svg similarity index 100% rename from docs/.gitbook/assets/contribution-process-reviews (2) (2).svg rename to docs/.gitbook/assets/contribution-process-reviews (2) (2) (2) (2).svg diff --git a/docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (1).svg b/docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (2) (1).svg similarity index 100% rename from docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (1).svg rename to docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (2) (1).svg diff --git a/docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2).svg b/docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (2) (2).svg similarity index 100% rename from docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2).svg rename to docs/.gitbook/assets/contribution-process-reviews-with-instructor (1) (2) (2) (2) (2).svg diff --git a/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (1).png b/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4) (1).png similarity index 100% rename from docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (1).png rename to docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4) (1).png diff --git a/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (2).png b/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4) (2).png similarity index 100% rename from docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (2).png rename to docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4) (2).png diff --git a/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (3).png b/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4) (3).png similarity index 100% rename from docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (3).png rename to docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4) (3).png diff --git a/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3).png b/docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4) (4).png similarity index 100% rename from docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3).png rename to docs/.gitbook/assets/eclipse-create-run-config (1) (3) (3) (4) (4).png diff --git a/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (1).png b/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (1).png similarity index 100% rename from docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (1).png rename to docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (1).png diff --git a/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (2).png b/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (2).png similarity index 100% rename from docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (2).png rename to docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (2).png diff --git a/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2).png b/docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (3).png similarity index 100% rename from docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2).png rename to docs/.gitbook/assets/intellij-gradle-config-ignore-buildSrc (2) (2) (2) (3) (3).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (1).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (1).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (1).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (1).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (2).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (2).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (2).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (2).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (3).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (3).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (3).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (3).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (5).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (4).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (5).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (4).png diff --git a/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4).png b/docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (5).png similarity index 100% rename from docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4).png rename to docs/.gitbook/assets/intellij-wrap-at-right-margin (4) (4) (4) (5).png diff --git a/docs/getting-into-the-code/guidelines-for-setting-up-a-local-workspace.md b/docs/getting-into-the-code/guidelines-for-setting-up-a-local-workspace.md index 0fc4bb18e43..658642cffe0 100644 --- a/docs/getting-into-the-code/guidelines-for-setting-up-a-local-workspace.md +++ b/docs/getting-into-the-code/guidelines-for-setting-up-a-local-workspace.md @@ -127,7 +127,7 @@ To prepare IntelliJ's build system two additional steps are required: To have autoformat working properly in the context of line wrapping, "Wrap at right margin" has to be disabled as shown below. Details are found in [IntelliJ issue 240517](https://youtrack.jetbrains.com/issue/IDEA-240517). -![Disable wrapping at right margin to prevent JavaDoc to be wrapped](../.gitbook/assets/intellij-wrap-at-right-margin%20%284%29%20%284%29.png) +![Disable wrapping at right margin to prevent JavaDoc to be wrapped](../.gitbook/assets/intellij-wrap-at-right-margin%20%284%29%20%284%29%20%284%29.png) #### Using Gradle from within IntelliJ IDEA @@ -155,7 +155,7 @@ To use IntelliJ IDEA's internal build system when you build JabRef through **Bui * In **File \| Settings \| Build, Execution, Deployment \| Build Tools \| Gradle** the setting "Build and run using" and "Test using" is set to "IntelliJ IDEA". * Ignore the Gradle project "buildSrc" by clicking the button **Select Project Data To Import** in the Gradle Tool Window and unchecking the folder "buildSrc". - ![Ignore the Gradle project "buildSrc"](../.gitbook/assets/intellij-gradle-config-ignore-buildSrc%20%282%29%20%282%29%20%282%29.png) + ![Ignore the Gradle project "buildSrc"](../.gitbook/assets/intellij-gradle-config-ignore-buildSrc%20%282%29%20%282%29%20%282%29%20%283%29.png) * Delete `org.jabref.gui.logging.plugins.Log4jPlugins` \(location: `generated\org\jabref\gui\logging\plugins\Log4jPlugins.java`\). Otherwise, you will see following error: @@ -214,7 +214,7 @@ Make sure your Eclipse installation us up to date. 4. Create a run/debug configuration for the main class `org.jabref.gui.JabRefLauncher` and/or for `org.jabref.gui.JabRefMain` \(both can be used equivalently\) * Remark: The run/debug configuration needs to be added by right clicking the class \(e.g. JabRefLauncher or JabRefMain\) otherwise it will not work. - ![Creating the run/debug configuration by right clicking on the class](../.gitbook/assets/eclipse-create-run-config%20%281%29%20%283%29%20%283%29%20%284%29.png) + ![Creating the run/debug configuration by right clicking on the class](../.gitbook/assets/eclipse-create-run-config%20%281%29%20%283%29%20%283%29%20%284%29%20%284%29.png) * In the tab "Arguments" of the run/debug configuration, enter the following runtime VM arguments: diff --git a/docs/readings-on-coding/tools.md b/docs/readings-on-coding/tools.md index 08d98cf1b99..bdc13f73cce 100644 --- a/docs/readings-on-coding/tools.md +++ b/docs/readings-on-coding/tools.md @@ -66,7 +66,7 @@ Then, each weak do `choco upgrade all` to ensure all tooling is uptodate. ### Tools for working with XMP -* Validate XMP: [http://www.pdflib.com/knowledge-base/xmp-metadata/free-xmp-validator/](http://www.pdflib.com/knowledge-base/xmp-metadata/free-xmp-validator/) +* Validate XMP: [https://www.pdflib.com/pdf-knowledge-base/xmp/free-xmp-validator/](https://www.pdflib.com/pdf-knowledge-base/xmp/free-xmp-validator/) ### Some useful keyboard shortcuts diff --git a/docs/teaching.md b/docs/teaching.md index fced5df154a..495ada1db25 100644 --- a/docs/teaching.md +++ b/docs/teaching.md @@ -40,7 +40,7 @@ There is no special process for student contributions. We want to discuss it nev The process for accepting contributions is as below. The syntax is [BPMN](https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation) modeled using [bpmn.io](https://bpmn.io/). -[![process](.gitbook/assets/contribution-process-reviews%20%282%29%20%282%29%20%281%29.svg)](https://github.com/JabRef/jabref/tree/ed275b62fe7dac57a086e43802e36deb93c63e31/docs/images/contribution-process-reviews.svg) +[![process](.gitbook/assets/contribution-process-reviews%20%282%29%20%282%29%20%282%29%20%281%29.svg)](https://github.com/JabRef/jabref/tree/ed275b62fe7dac57a086e43802e36deb93c63e31/docs/images/contribution-process-reviews.svg) In short, the contribution is **reviewed by two JabRef developers**. Typically, they have constructive feedback on their contribution. This means, that the contributors get comments on their contribution enabling them to level-up their coding skill. Incorporating improvements takes time, too. The benefit is two-fold: a\) contributors improve their coding skills and b\) JabRef's code quality improves. All in all, we ask to respect the aims of the JabRef team and to reserve time to incorporate the reviewer's comments. @@ -52,7 +52,7 @@ GitHub describes that in their page [Understanding the GitHub flow](https://guid Newcomers contributing in the context of a university teaching experience are invited to follow the process described above. In case the capacity of the instructing university allows, we propose a three-step approach. First, the contributors prepare their contribution as usual. Then, they submit the pull request _to a separate repository_. There, the instructor reviews the pull request and provides feedback. This happens in a loop until the instructor shows the green light. Then, the pull request can be submitted to the main JabRef repository. This will help to reduce the load on the JabRef team and improve the quality of the initial pull request. -[![process with instructor](.gitbook/assets/contribution-process-reviews-with-instructor%20%281%29%20%282%29%20%282%29.svg)](https://github.com/JabRef/jabref/tree/ed275b62fe7dac57a086e43802e36deb93c63e31/docs/images/contribution-process-reviews-with-instructor.svg) +[![process with instructor](.gitbook/assets/contribution-process-reviews-with-instructor%20%281%29%20%282%29%20%282%29%20%282%29.svg)](https://github.com/JabRef/jabref/tree/ed275b62fe7dac57a086e43802e36deb93c63e31/docs/images/contribution-process-reviews-with-instructor.svg) ## Past courses From 35a91a5a00137961f06d5e6eb25ac1e9eb58d365 Mon Sep 17 00:00:00 2001 From: Siedlerchr Date: Wed, 20 Jan 2021 20:28:23 +0100 Subject: [PATCH 13/16] Fix checkstyle and adjust language --- docs/contributing.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/contributing.md b/docs/contributing.md index 3d1bfc8291d..8272e3e6bab 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -4,7 +4,7 @@ After reading through this guide, check out some good first issues to contribute In case you are aiming to contribute other improvements, please head over to our general [JabRef contribution page](https://docs.jabref.org/faqcontributing). -In case you are an instructor and want to use **JabRef as software engineering example**, please head to [https://devdocs.jabref.org/teaching](https://devdocs.jabref.org/teaching). +In case you are an instructor and want to use **JabRef as a software engineering example**, please head to [https://devdocs.jabref.org/teaching](https://devdocs.jabref.org/teaching). ## Contribute code @@ -16,7 +16,7 @@ We welcome contributions to JabRef and encourage you to follow the GitHub workfl 1. Fork the JabRef into your GitHub account. 2. Clone your forked repository on your local machine. 2. **Create a new branch** \(such as `fix-for-issue-121`\). Be sure to create a **separate branch** for each improvement you implement. -3. Do your work on the **new branch - not the master branch.** Refer to our [code howtos](https://devdocs.jabref.org/getting-into-the-code/code-howtos) if you have questions about your implementation. +3. Do your work on the **new branch — not the master branch.** Refer to our [code how-tos](https://devdocs.jabref.org/getting-into-the-code/code-howtos) if you have questions about your implementation. 4. Create a pull request. For an overview of pull requests, take a look at GitHub's [pull request help documentation](https://help.github.com/articles/about-pull-requests/). 5. In case your pull request is not yet complete or not yet ready for review, consider creating a [draft pull request](https://github.blog/2019-02-14-introducing-draft-pull-requests/) instead. @@ -32,7 +32,7 @@ You should edit the [`CHANGELOG.md`](https://github.com/JabRef/jabref/blob/maste If you did internal refactorings or improvements not visible to the user \(e.g., UI, .bib file\), then you don't need to put an entry there. -**Format of keyboard shortcuts** +#### **Format of keyboard shortcuts** Example: `Ctrl + Enter` @@ -75,7 +75,7 @@ Actual :[Opens\ JabRef's\ Twitter\ page (src\main\java\org\jabref\gui\JabRefFr Add the above snippet to the English translation file located at `src/main/resources/l10n/JabRef_en.properties`. [Crowdin](https://crowdin.com/project/jabref) will automatically pick up the new string and add it to the other translations. -You can also directly run the specific test in your IDE. The test "LocalizationConsistencyTest" is placed under `src/test/java/net.sf.jabref.logic.l10n/LocalizationConsistencyTest.java` Find more information in the [JabRef developer docs](https://devdocs.jabref.org/getting-into-the-code/code-howtos#using-localization-correctly). +You can also directly run the specific test in your IDE. The test "LocalizationConsistencyTest" is placed under `src/test/java/net.sf.jabref.logic.l10n/LocalizationConsistencyTest.java`. Find more information in the [JabRef developer docs](https://devdocs.jabref.org/getting-into-the-code/code-howtos#using-localization-correctly). #### When adding a library @@ -87,7 +87,7 @@ In case you add a library or do major code rewrites, we ask you to document your We simply ask to create a new markdown file in `docs/adr` following the template presented at [https://adr.github.io/madr/](https://adr.github.io/madr/). -In case you want to directly add a comment to a class, simply use following template \(based on [sustainable architectural decisions](https://www.infoq.com/articles/sustainable-architectural-design-decisions)\): +In case you want to directly add a comment to a class, simply use the following template \(based on [sustainable architectural decisions](https://www.infoq.com/articles/sustainable-architectural-design-decisions)\): ```text In the context of , @@ -109,7 +109,7 @@ If you want to indicate that a pull request is not yet complete **before** creat For improving developer's documentation, go on at the [docs/ subdirectory of JabRef's code](https://github.com/JabRef/jabref/tree/master/docs) and edit the file. GitHub offers a good guide at [Editing files in another user's repository](https://help.github.com/en/github/managing-files-in-a-repository/editing-files-in-another-users-repository). -In case you use some gitbook special features and you want to test them, checkout JabRef's code locally, and execute following steps: +In case you use some gitbook special features, and you want to test them, checkout JabRef's code locally, and execute following steps: 1. `npm install -g gitbook` 2. `cd docs` From ab9143e5b511a6f96e827b1715eb75c6dfbd3a01 Mon Sep 17 00:00:00 2001 From: Christoph Date: Wed, 20 Jan 2021 21:37:40 +0100 Subject: [PATCH 14/16] Update snapcraft source url (#7372) --- snap/snapcraft.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 9e73b004280..5be2049eed6 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -52,7 +52,7 @@ environment: parts: jabref: plugin: dump - source: https://builds.jabref.org/master/JabRef-5.2-portable_linux.tar.gz + source: https://builds.jabref.org/master/JabRef-5.3-portable_linux.tar.gz stage-packages: - x11-utils override-build: | From 1be95fcb1687b0d102dbd40d083e9306646ceea7 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Thu, 21 Jan 2021 09:19:18 +0100 Subject: [PATCH 15/16] Fix Exception if no AzureInstrumentationKey is available (#7373) --- src/main/java/org/jabref/gui/Globals.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/jabref/gui/Globals.java b/src/main/java/org/jabref/gui/Globals.java index 017611aa349..b99f4a842d3 100644 --- a/src/main/java/org/jabref/gui/Globals.java +++ b/src/main/java/org/jabref/gui/Globals.java @@ -19,6 +19,7 @@ import org.jabref.logic.remote.server.RemoteListenerServerLifecycle; import org.jabref.logic.util.BuildInfo; import org.jabref.model.entry.BibEntryTypesManager; +import org.jabref.model.strings.StringUtil; import org.jabref.model.util.FileUpdateMonitor; import org.jabref.preferences.JabRefPreferences; @@ -119,7 +120,9 @@ private static void stopTelemetryClient() { private static void startTelemetryClient() { TelemetryConfiguration telemetryConfiguration = TelemetryConfiguration.getActive(); - telemetryConfiguration.setInstrumentationKey(Globals.BUILD_INFO.azureInstrumentationKey); + if (!StringUtil.isNullOrEmpty(Globals.BUILD_INFO.azureInstrumentationKey)) { + telemetryConfiguration.setInstrumentationKey(Globals.BUILD_INFO.azureInstrumentationKey); + } telemetryConfiguration.setTrackingIsDisabled(!Globals.prefs.getTelemetryPreferences().shouldCollectTelemetry()); telemetryClient = new TelemetryClient(telemetryConfiguration); telemetryClient.getContext().getProperties().put("JabRef version", Globals.BUILD_INFO.version.toString()); From 94f4c1ebba44e0bfceb6867938b116f0cadbbcce Mon Sep 17 00:00:00 2001 From: Christoph Date: Fri, 22 Jan 2021 00:16:04 +0100 Subject: [PATCH 16/16] Upgrade citeproc to 3.x snapshot without graal (#7370) --- build.gradle | 63 +++++++++---------- eclipse.gradle | 5 -- src/main/java/module-info.java | 5 -- .../gui/maintable/MainTableDataModel.java | 1 + .../logic/citationstyle/CSLAdapter.java | 2 +- 5 files changed, 30 insertions(+), 46 deletions(-) diff --git a/build.gradle b/build.gradle index c5b94b555dc..cd75b24eef4 100644 --- a/build.gradle +++ b/build.gradle @@ -171,7 +171,7 @@ dependencies { implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '3.0.0-SNAPSHOT' annotationProcessor group: 'org.apache.logging.log4j', name: 'log4j-core', version: '3.0.0-SNAPSHOT' - implementation 'de.undercouch:citeproc-java:2.1.0-SNAPSHOT' + implementation 'de.undercouch:citeproc-java:3.0.0-SNAPSHOT' implementation group: 'jakarta.activation', name: 'jakarta.activation-api', version: '1.2.1' implementation group: 'jakarta.xml.bind', name: 'jakarta.xml.bind-api', version: '2.3.2' @@ -390,7 +390,6 @@ run { 'org.controlsfx.controls/impl.org.controlsfx.skin' : 'org.jabref', 'javafx.controls/com.sun.javafx.scene.control.behavior' : 'com.jfoenix', - 'com.oracle.truffle.regex/com.oracle.truffle.regex' : 'org.graalvm.truffle', // Not sure why we need to restate the controlfx exports // Taken from here: https://github.com/controlsfx/controlsfx/blob/9.0.0/build.gradle#L1 @@ -567,56 +566,51 @@ jlink { // The module descriptor automatically generated by the plugin for the merged module contained some invalid entries. // Execute ./gradlew suggestMergedModuleInfo and include the suggested directives here. mergedModule { - requires 'java.xml' - requires 'com.sun.xml.txw2' - requires 'java.desktop' - requires 'org.objectweb.asm' - requires 'jdk.jfr' - requires 'jdk.unsupported' - requires 'com.google.gson' - requires 'java.management' - requires 'java.naming' - requires 'java.security.sasl' - requires 'jdk.security.jgss' - requires 'java.logging' - requires 'jdk.xml.dom' - requires 'java.sql' - requires 'java.rmi' - requires 'java.security.jgss' - requires 'com.oracle.truffle.regex' - requires 'jdk.jsobject' - requires 'jdk.management' - requires 'jdk.unsupported.desktop' - requires 'org.objectweb.asm.util' - requires 'java.scripting' - requires 'org.objectweb.asm.commons' - requires 'org.graalvm.truffle' - requires 'java.datatransfer' - requires 'java.compiler' - requires 'java.sql.rowset' - requires 'java.transaction.xa' - requires 'org.graalvm.sdk' + requires 'java.compiler'; + requires 'java.datatransfer'; + requires 'java.desktop'; + requires 'java.logging'; + requires 'java.management'; + requires 'java.naming'; + requires 'java.net.http'; + requires 'java.scripting'; + requires 'java.security.jgss'; + requires 'java.security.sasl'; + requires 'java.sql'; + requires 'java.sql.rowset'; + requires 'java.transaction.xa'; + requires 'java.rmi'; + requires 'java.xml'; + requires 'jdk.jfr'; + requires 'jdk.jsobject'; + requires 'jdk.unsupported'; + requires 'jdk.unsupported.desktop'; + requires 'jdk.security.jgss'; + requires 'jdk.xml.dom'; + requires 'com.google.gson'; + requires 'com.sun.xml.fastinfoset'; + requires 'com.sun.xml.txw2'; requires 'org.slf4j' uses 'org.apache.logging.log4j.util.PropertySource' uses 'org.apache.logging.log4j.core.util.WatchEventService' uses 'org.apache.logging.log4j.plugins.processor.PluginService' uses 'org.controlsfx.glyphfont.GlyphFont' uses 'com.airhacks.afterburner.views.ResourceLocator' - uses 'com.oracle.truffle.js.runtime.Evaluator' uses 'org.apache.logging.log4j.message.ThreadDumpMessage.ThreadInfoFactory' uses 'com.airhacks.afterburner.injection.PresenterFactory' - uses 'com.oracle.truffle.js.runtime.builtins.JSFunctionLookup' uses 'org.apache.logging.log4j.spi.Provider' uses 'org.mariadb.jdbc.credential.CredentialPlugin' uses 'org.mariadb.jdbc.tls.TlsSocketPlugin' uses 'org.mariadb.jdbc.LocalInfileInterceptor' + uses 'org.eclipse.jgit.transport.SshSessionFactory'; + uses 'org.eclipse.jgit.lib.GpgSigner'; uses 'javax.xml.bind.JAXBContextFactory' + provides 'org.apache.lucene.codecs.DocValuesFormat' with 'org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat'; provides 'javax.annotation.processing.Processor' with 'org.apache.logging.log4j.plugins.processor.PluginProcessor' provides 'org.controlsfx.glyphfont.GlyphFont' with 'org.controlsfx.glyphfont.FontAwesome' provides 'org.apache.logging.log4j.message.ThreadDumpMessage.ThreadInfoFactory' with 'org.apache.logging.log4j.core.message.ExtendedThreadInfoFactory' provides 'org.mariadb.jdbc.tls.TlsSocketPlugin' with 'org.mariadb.jdbc.internal.protocol.tls.DefaultTlsSocketPlugin' provides 'com.microsoft.applicationinsights.core.dependencies.io.grpc.ServerProvider' with 'com.microsoft.applicationinsights.core.dependencies.io.grpc.netty.shaded.io.grpc.netty.NettyServerProvider' - provides 'com.oracle.truffle.js.runtime.Evaluator' with 'com.oracle.truffle.js.parser.GraalJSEvaluator' provides 'com.microsoft.applicationinsights.core.dependencies.io.grpc.NameResolverProvider' with 'com.microsoft.applicationinsights.core.dependencies.io.grpc.internal.DnsNameResolverProvider' provides 'org.apache.logging.log4j.util.PropertySource' with 'org.apache.logging.log4j.util.EnvironmentPropertySource', 'org.apache.logging.log4j.util.SystemPropertiesPropertySource' @@ -639,7 +633,6 @@ jlink { provides 'java.security.Provider' with 'org.bouncycastle.jce.provider.BouncyCastleProvider', 'org.bouncycastle.pqc.jcajce.provider.BouncyCastlePQCProvider' provides 'com.microsoft.applicationinsights.core.dependencies.io.grpc.ManagedChannelProvider' with 'com.microsoft.applicationinsights.core.dependencies.io.grpc.netty.shaded.io.grpc.netty.NettyChannelProvider' - provides 'com.oracle.truffle.js.runtime.builtins.JSFunctionLookup' with 'com.oracle.truffle.js.builtins.JSDefaultBuiltinLookup' } jpackage { diff --git a/eclipse.gradle b/eclipse.gradle index 25948d44d7b..2d15b750dcb 100644 --- a/eclipse.gradle +++ b/eclipse.gradle @@ -34,9 +34,6 @@ eclipse { def javafxfxml = entries.find { isJavafxFXML(it) }; javafxfxml.entryAttributes['add-opens'] = 'javafx.fxml/javafx.fxml=org.jabref'; - def graaltruffle = entries.find{ isTruffleGraal(it) } ; - graaltruffle.entryAttributes['add-exports'] = 'com.oracle.truffle.regex/com.oracle.truffle.regex=org.graalvm.truffle'; - entries.findAll { isLibrary(it) && isTestScope(it) }.each { //mark test source files it.entryAttributes['test'] = 'true' } @@ -66,8 +63,6 @@ boolean isJavafxGraphics(entry) { return entry.properties.path.contains('javafx- boolean isJavafxFXML(entry) { return entry.properties.path.contains('javafx-fxml'); } -boolean isTruffleGraal(entry) {return entry.properties.path.contains('org.graalvm.regex'); } - // add formatter and cleanup settings to Eclipse settings // see http://stackoverflow.com/a/27461890/873282 diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java index cf4223b686d..0bee3c9dfd2 100644 --- a/src/main/java/module-info.java +++ b/src/main/java/module-info.java @@ -61,11 +61,6 @@ requires jbibtex; requires citeproc.java; requires antlr.runtime; - requires org.graalvm.truffle; - requires org.graalvm.sdk; - requires transitive org.graalvm.js; - requires java.scripting; - requires jdk.internal.vm.compiler; requires org.apache.xmpbox; requires de.saxsys.mvvmfx.validation; requires com.google.gson; diff --git a/src/main/java/org/jabref/gui/maintable/MainTableDataModel.java b/src/main/java/org/jabref/gui/maintable/MainTableDataModel.java index 2a7e6f176c8..bf335b05194 100644 --- a/src/main/java/org/jabref/gui/maintable/MainTableDataModel.java +++ b/src/main/java/org/jabref/gui/maintable/MainTableDataModel.java @@ -54,6 +54,7 @@ public MainTableDataModel(BibDatabaseContext context, PreferencesService prefere // We need to wrap the list since otherwise sorting in the table does not work entriesSorted = new SortedList<>(entriesFiltered); groupViewMode = preferencesService.getGroupViewMode(); + } private boolean isMatched(ObservableList groups, Optional query, BibEntryTableViewModel entry) { diff --git a/src/main/java/org/jabref/logic/citationstyle/CSLAdapter.java b/src/main/java/org/jabref/logic/citationstyle/CSLAdapter.java index 9c17c6b00db..abc5dd93c21 100644 --- a/src/main/java/org/jabref/logic/citationstyle/CSLAdapter.java +++ b/src/main/java/org/jabref/logic/citationstyle/CSLAdapter.java @@ -68,7 +68,7 @@ private void initialize(String newStyle, CitationStyleOutputFormat newFormat) th if ((cslInstance == null) || !Objects.equals(newStyle, style)) { // lang and forceLang are set to the default values of other CSL constructors cslInstance = new CSL(dataProvider, new JabRefLocaleProvider(), - new DefaultAbbreviationProvider(), null, newStyle, "en-US", false, true); + new DefaultAbbreviationProvider(), null, newStyle, "en-US"); style = newStyle; }