From dda749bccac87e7b5b771680951d75d192a73948 Mon Sep 17 00:00:00 2001
From: Freddy Heppell
Date: Fri, 12 Jan 2024 12:25:28 +0000
Subject: [PATCH 1/7] Update citation to demo paper and zenodo reference
---
CITATION.cff | 41 +++++++++++++++++++++++++++++++++++-
README.md | 5 +++--
docs/docs/README.md | 6 +++---
frontend/src/views/About.vue | 11 +++++++---
4 files changed, 54 insertions(+), 9 deletions(-)
diff --git a/CITATION.cff b/CITATION.cff
index f7c191ed..1b30d037 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -1,6 +1,6 @@
abstract: A web application for collaborative document annotation. GATE teamware provides
a flexible web app platform for managing classification of documents by human annotators.
-authors:
+authors:
- affiliation: The University of Sheffield
email: t.karmakharm@sheffield.ac.uk
family-names: Karmakharm
@@ -38,3 +38,42 @@ title: GATE Teamware
type: software
url: https://gatenlp.github.io/gate-teamware/
version: 2.1.1
+preferred-citation:
+ type: conference-paper
+ authors:
+ - affiliation: The University of Sheffield
+ email: d.wilby@sheffield.ac.uk
+ family-names: Wilby
+ given-names: David
+ orcid: https://orcid.org/0000-0002-6553-8739
+ - affiliation: The University of Sheffield
+ email: t.karmakharm@sheffield.ac.uk
+ family-names: Karmakharm
+ given-names: Twin
+ orcid: https://orcid.org/0000-0002-1888-7098
+ - affiliation: The University of Sheffield
+ email: i.roberts@sheffield.ac.uk
+ family-names: Roberts
+ given-names: Ian
+ orcid: https://orcid.org/0000-0002-7296-5851
+ - affiliation: The University of Sheffield
+ email: x.song@sheffield.ac.uk
+ family-names: Song
+ given-names: Xingyi
+ orcid: https://orcid.org/0000-0002-4188-6974
+ - affiliation: The University of Sheffield
+ email: k.bontcheva@sheffield.ac.uk
+ family-names: Bontcheva
+ given-names: Kalina
+ orcid: https://orcid.org/0000-0001-6152-9600
+ doi: 10.18653/v1/2023.eacl-demo.17
+ title: "GATE Teamware 2: An open-source tool for collaborative document classification annotation"
+ collection-title: "Proceedings of the 17th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations"
+ year: 2023
+ month: 5
+ start: 145
+ end: 151
+ publisher:
+ name: Association for Computational Linguistics
+ conference:
+ location: Dubrovnik, Croatia
\ No newline at end of file
diff --git a/README.md b/README.md
index 34cfc267..3ad1140a 100644
--- a/README.md
+++ b/README.md
@@ -71,12 +71,13 @@ We welcome contributions to this open source project. Please [create a fork](htt
Teamware is developed by the [GATE](https://gate.ac.uk) team, an academic research group at The University of Sheffield. As a result, future funding relies on evidence of the impact that the software provides. If you use Teamware, please let us know using the contact form at [gate.ac.uk](https://gate.ac.uk/g8/contact). Please include details on grants, publications, commercial products etc. Any information that can help us to secure future funding for our work is greatly appreciated.
## Citation
-For published work that has used Teamware, please cite this repository. One way is to include a citation such as:
+For published work that has used Teamware, please cite the [EACL23 demo paper](https://aclanthology.org/2023.eacl-demo.17/). One way is to include a citation such as:
-> Karmakharm, T., Wilby, D., Roberts, I., & Bontcheva, K. (2022). GATE Teamware (Version 2.1.1) [Computer software]. https://github.com/GateNLP/gate-teamware
+> Wilby, D., Karmakharm, T., Roberts, I., Song, X. & Bontcheva, K. (2023). GATE Teamware 2: An open-source tool for collaborative document classification annotation. In Proceedings of the 17th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations, pages 145–151, Dubrovnik, Croatia. Association for Computational Linguistics. https://aclanthology.org/2023.eacl-demo.17/
Please use the `Cite this repository` button at the top of the [project's GitHub repository](https://github.com/GATENLP/gate-teamware) to get an up to date citation.
+Permanent references to each version of the software are available from [Zenodo](https://doi.org/10.5281/zenodo.7899193).
[docs]: https://gatenlp.github.io/gate-teamware/
[dev-docs]: https://gatenlp.github.io/gate-teamware/development/developerguide/
diff --git a/docs/docs/README.md b/docs/docs/README.md
index 3586c291..d12b9b88 100644
--- a/docs/docs/README.md
+++ b/docs/docs/README.md
@@ -129,10 +129,10 @@ Please make bug reports and feature requests as Issues on the [GATE Teamware Git
Teamware is developed by the [GATE](https://gate.ac.uk) team, an academic research group at The University of Sheffield. As a result, future funding relies on evidence of the impact that the software provides. If you use Teamware, please let us know using the contact form at [gate.ac.uk](https://gate.ac.uk/g8/contact). Please include details on grants, publications, commercial products etc. Any information that can help us to secure future funding for our work is greatly appreciated.
## Citation
-For published work that has used Teamware, please cite this repository. One way is to include a citation such as:
+For published work that has used Teamware, please cite the [EACL23 demo paper](https://aclanthology.org/2023.eacl-demo.17/). One way is to include a citation such as:
-> Karmakharm, T., Wilby, D., Roberts, I., & Bontcheva, K. (2022). GATE Teamware (Version 0.1.4) [Computer software]. https://github.com/GateNLP/gate-teamware
+> Wilby, D., Karmakharm, T., Roberts, I., Song, X. & Bontcheva, K. (2023). GATE Teamware 2: An open-source tool for collaborative document classification annotation. In Proceedings of the 17th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations, pages 145–151, Dubrovnik, Croatia. Association for Computational Linguistics. https://aclanthology.org/2023.eacl-demo.17/
Please use the `Cite this repository` button at the top of the [project's GitHub repository](https://github.com/GATENLP/gate-teamware) to get an up to date citation.
-The Teamware version can be found on the 'About' page of your Teamware instance.
+Permanent references to each version of the software are available from [Zenodo](https://doi.org/10.5281/zenodo.7899193). The Teamware version can be found on the 'About' page of your Teamware instance.
diff --git a/frontend/src/views/About.vue b/frontend/src/views/About.vue
index d5d6283f..5dbb94b0 100644
--- a/frontend/src/views/About.vue
+++ b/frontend/src/views/About.vue
@@ -12,16 +12,21 @@
Citation
- For published work that has used Teamware, please cite the project's GitHub repository. One way is to include a citation such as:
+ For published work that has used Teamware, please cite the EACL23 demo paper. One way is to include a citation such as:
- Karmakharm, T., Wilby, D., Roberts, I., & Bontcheva, K. (2022). GATE Teamware (Version {{ appVersion }}) [Computer software]. https://github.com/GateNLP/gate-teamware
+ Wilby, D., Karmakharm, T., Roberts, I., Song, X. & Bontcheva, K. (2023). GATE Teamware 2: An open-source tool for collaborative document classification annotation. In Proceedings of the 17th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations, pages 145–151, Dubrovnik, Croatia. Association for Computational Linguistics. https://aclanthology.org/2023.eacl-demo.17/
- Please use the Cite this repository button at the top of the project's GitHub repository to get an up to date citation.
+
+ Please use the Cite this repository button at the top of the project's GitHub repository to get an up to date citation.
+
+
+ Permanent references to each version of the software are available from Zenodo.
+
Version
From 8bd287a4a8af0bd40b563e41eb8a5ea127885f7a Mon Sep 17 00:00:00 2001
From: Freddy Heppell
Date: Fri, 12 Jan 2024 12:29:06 +0000
Subject: [PATCH 2/7] attempt to get conference location in bibtex
---
CITATION.cff | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CITATION.cff b/CITATION.cff
index 1b30d037..9acddba1 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -76,4 +76,4 @@ preferred-citation:
publisher:
name: Association for Computational Linguistics
conference:
- location: Dubrovnik, Croatia
\ No newline at end of file
+ address: Dubrovnik, Croatia
\ No newline at end of file
From bb885f625518fa54a1e359f024621aca28e4e721 Mon Sep 17 00:00:00 2001
From: Freddy Heppell
Date: Fri, 12 Jan 2024 12:32:38 +0000
Subject: [PATCH 3/7] add required conference fields
---
CITATION.cff | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/CITATION.cff b/CITATION.cff
index 9acddba1..903ef613 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -74,6 +74,4 @@ preferred-citation:
start: 145
end: 151
publisher:
- name: Association for Computational Linguistics
- conference:
- address: Dubrovnik, Croatia
\ No newline at end of file
+ name: Association for Computational Linguistics
\ No newline at end of file
From 6021c2d2c4f23bad8129c03052feec0b56f8f76c Mon Sep 17 00:00:00 2001
From: Freddy Heppell
Date: Fri, 12 Jan 2024 12:50:25 +0000
Subject: [PATCH 4/7] try setting top-level location
---
CITATION.cff | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/CITATION.cff b/CITATION.cff
index 903ef613..fa61f6a0 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -69,9 +69,13 @@ preferred-citation:
doi: 10.18653/v1/2023.eacl-demo.17
title: "GATE Teamware 2: An open-source tool for collaborative document classification annotation"
collection-title: "Proceedings of the 17th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations"
+ location: Dubrovnik, Croatia
year: 2023
month: 5
start: 145
end: 151
publisher:
- name: Association for Computational Linguistics
\ No newline at end of file
+ name: Association for Computational Linguistics
+ conference:
+ name: 17th Conference of the European Chapter of the Association for Computational Linguistics
+ year: 2023
\ No newline at end of file
From e00dd0a5f9d642c6fcab846b1be210315c51d5a1 Mon Sep 17 00:00:00 2001
From: Freddy Heppell
Date: Fri, 12 Jan 2024 12:53:35 +0000
Subject: [PATCH 5/7] try publisher address
---
CITATION.cff | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/CITATION.cff b/CITATION.cff
index fa61f6a0..c92a2caa 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -76,6 +76,4 @@ preferred-citation:
end: 151
publisher:
name: Association for Computational Linguistics
- conference:
- name: 17th Conference of the European Chapter of the Association for Computational Linguistics
- year: 2023
\ No newline at end of file
+ address: Dubrovnik, Croatia
\ No newline at end of file
From ed2b942bd8c6ddef54f5654a2149b79a3ece6e98 Mon Sep 17 00:00:00 2001
From: Freddy Heppell
Date: Fri, 12 Jan 2024 12:55:11 +0000
Subject: [PATCH 6/7] fix top-level location
---
CITATION.cff | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/CITATION.cff b/CITATION.cff
index c92a2caa..4d5aa1c2 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -69,11 +69,11 @@ preferred-citation:
doi: 10.18653/v1/2023.eacl-demo.17
title: "GATE Teamware 2: An open-source tool for collaborative document classification annotation"
collection-title: "Proceedings of the 17th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations"
- location: Dubrovnik, Croatia
+ location:
+ name: Dubrovnik, Croatia
year: 2023
month: 5
start: 145
end: 151
publisher:
name: Association for Computational Linguistics
- address: Dubrovnik, Croatia
\ No newline at end of file
From e1849540e32df104697d8b518316775e0f5d638c Mon Sep 17 00:00:00 2001
From: Freddy Heppell
Date: Fri, 12 Jan 2024 13:14:27 +0000
Subject: [PATCH 7/7] Remove README version check and update
---
version.py | 37 +------------------------------------
1 file changed, 1 insertion(+), 36 deletions(-)
diff --git a/version.py b/version.py
index 51faf08f..0eeb1825 100644
--- a/version.py
+++ b/version.py
@@ -8,8 +8,6 @@
DOCS_PACKAGE_JSON_FILE_PATH = "docs/package.json"
CITATION_FILE_PATH = "CITATION.cff"
MASTER_VERSION_FILE = "VERSION"
-README_FILE_PATH = "README.md"
-README_VERSION_REGEX = r"\(Version ([^)]*)\)"
def check():
"""
@@ -30,13 +28,10 @@ def check():
citation_version = citation_file['version']
print(f"{CITATION_FILE_PATH} version is {citation_version}")
- readme_version = get_readme_version(README_FILE_PATH)
- print(f"{README_FILE_PATH} version is {readme_version}")
-
master_version = get_master_version()
print(f"VERSION file version is {master_version}")
- if js_version != master_version or docs_js_version != master_version or citation_version != master_version or readme_version != master_version:
+ if js_version != master_version or docs_js_version != master_version or citation_version != master_version:
print("One or more versions does not match")
sys.exit(1)
else:
@@ -49,21 +44,6 @@ def get_package_json_version(file_path: str) -> str:
js_version = package_json['version']
return js_version
-def get_readme_version(file_path: str) -> str:
- with open(file_path, 'r') as f:
- readme_text = f.read()
-
- match = re.search(README_VERSION_REGEX, readme_text)
-
- if match is None:
- print(f"No version found in {README_FILE_PATH}.")
- return
- elif len(match.groups()) > 1:
- print(f"{len(match.groups())} matches found in {README_FILE_PATH}, expected 1.")
- return
- else:
- return match.groups(1)[0]
-
def get_master_version():
with open(MASTER_VERSION_FILE, "r") as f:
master_version = f.readline().strip()
@@ -83,8 +63,6 @@ def update(master_version:str = None):
update_package_json_version(DOCS_PACKAGE_JSON_FILE_PATH, master_version)
- update_readme_version(README_FILE_PATH, master_version)
-
with open(CITATION_FILE_PATH, "r") as f:
citation_file = yaml.safe_load(f)
print(f"Writing master version {master_version} to {CITATION_FILE_PATH}")
@@ -102,19 +80,6 @@ def update_package_json_version(file_path:str, version_no:str):
package_json['version'] = version_no
json.dump(package_json, f, indent=2)
-def update_readme_version(file_path:str, version_no:str):
- with open(file_path, 'r') as f:
- readme_text = f.read()
-
- readme_text = re.sub(
- README_VERSION_REGEX,
- f'(Version {version_no})',
- readme_text
- )
-
- with open(file_path, 'w') as f:
- f.write(readme_text)
-
if __name__ == "__main__":
if sys.argv[1] == 'check':