Releases: UtrechtUniversity/ricgraph
2.6 - Ricgraph
The following improvements have been made to Ricgraph.
Ricgraph general:
- ricgraph.py in directory ricgraph has been converted to Python package ricgraph in the Python Package Index (PyPI) and can be found at https://pypi.org/project/ricgraph.
- Added a bash script update_version.bash to propagate a new version number to various files that contain a version number (such as Makefile, CITATION.cff, init.py, etc).
Upgrading:
- If you upgrade from any Ricgraph version, you will need to re-install Ricgraph and re-use your previous Ricgraph initialization file. You only need to reharvest your sources if you upgrade from version v2.4 and earlier. It is advisable to remove all of your existing files and directories, except for ricgraph.ini, before you re-install Ricgraph.
2.5 - Ricgraph
The following improvements have been made to Ricgraph.
Ricgraph general:
- Created scripts to import and export nodes and edges from/to csv files.
- The Makefile has been extended and improved. There are more targets and it runs on more Linux editions.
- Created a maintenance_scripts directory.
- Renamed directory export_ricgraph_examples to import_export.
Ricgraph:
- Ricgraph now has a call to merge nodes.
- Renamed confusing function name cypher_merge_edge() to cypher_create_edge_if_not_exists().
- Renamed confusing function name cypher_merge_node() to cypher_update_node_properties().
Harvest scripts:
- For all harvest scripts: modification so the organization abbreviation is always uppercase, regardless of the input of the user.
- Added research output types Model, Registered report and Retraction.
- OpenAlex and Yoda-DataCite harvest scripts: now organizations of every author are added to Ricgraph. If an author works for multiple organizations, all of these are added. For OpenAlex, this might produce erroneous results since for some authors the organizations they are connected to are not always correct.
- Research Software Directory harvest script: now the organization of every author is added to Ricgraph. If this author works for multiple organizations, these will not be added due to the method this is implemented in the RSD REST API output.
- Pure harvest script: now the organization of a person with an endDate at an organization in the future will be added to Ricgraph (up until now it was assumed that in such a case the field 'endDate' would not be present).
- Added a batch script to harvest Delft University of Technology sources, a batch script to harvest Utrecht University sources, and an example batch script that harvest sources (Yoda-DataCite, Research Software Directory) that do not need an API key.
Documentation:
- Added a documentation table of contents and documentation index.
- Extended and clarified documentation.
Upgrading:
- If you upgrade from any Ricgraph version, you will need to re-install Ricgraph, re-use your previous Ricgraph initialization file, and reharvest your sources. This is due to the many changes. It is advisable to remove all of your existing files and directories, except for ricgraph.ini, before you re-install Ricgraph.
2.4 - Ricgraph
The following improvements have been made to Ricgraph.
Structural changes:
- Ricgraph now has a Makefile. A Ricgraph installation involves a number of steps. This Makefile makes installation of (parts of) Ricgraph easier, since it automates a number of these steps.
- Now, you can also use the Nginx webserver for Ricgraph. It was already possible to use the Apache webserver.
Documentation:
- Added Ricgraph presentations: among other things, a general Ricgraph presentation and a presentation about Enriching Pure data (both with DOIs).
- Added Ricgraph newsletters.
- Various clarifications.
Upgrading:
- If you upgrade from Ricgraph v2.3, you do not need to re-install or reharvest.
2.3 - Ricgraph
The following improvements have been made to Ricgraph.
Structural changes:
- Ricgraph now has a REST API. You can use the Ricgraph REST API to get data from Ricgraph, or to execute predefined queries in Ricgraph and Ricgraph Explorer. The advantage of a REST API is that your code is not dependent on any Ricgraph code. Ricgraph Explorer has a button that shows the documentation and allow you to try out REST API calls. Read more about this REST API.
- Ricgraph now uses a different type of index if you use Neo4j as graph database backend. This results in a much faster harvesting process and much faster queries.
- Ricgraph has a main Ricgraph website on www.ricgraph.eu. Alternative sites are www.ricgraph.nl and www.ricgraph.com. The code and the final published website are in a separate GitHub repository Website for Ricgraph - Research in context graph.
- Ricgraph uses a new WSGI/ASGI webserver gunicorn. This is required for the REST API.
Ricgraph Explorer:
- Some pages now show histograms, e.g. of the types of research results to which a person has contributed, or the skills in a (sub-)organization.
- It is possible to adjust the maximum number of results from a query, and the maximum number of rows in a table.
Ricgraph:
- Changes to use the Neo4j elementId() function call instead of deprecated id() in neo4j. However, for memgraph, elementId() does not exist and id() should be used.
Harvest scripts:
- The harvest scripts for Pure and OpenAlex now harvest (as default) the years 2021 - 2024, this used to be 2020 - 2023.
- OpenAlex has defined new research result types. These have been added to the harvest script for OpenAlex.
Documentation:
- Documentation for the REST API, including installation instructions.
- Various clarifications.
Upgrading:
- If you upgrade from any Ricgraph version, you will need to re-install Ricgraph, re-use your previous Ricgraph initialization file, and reharvest your sources. This is due to the many changes. It is advisable to remove all of your existing files and directories, except for ricgraph.ini, before you re-install Ricgraph.
- If you don't use at least Python 3.9, you will need to upgrade to at least this Python version.
2.2 - Ricgraph
This release is the same as Ricgraph v2.1, except for these minor changes:
- Some mentions have been added.
- CITATION.cff is now correctly formatted (as was not the case in v2.1, which confused some metadata harvesters).
Please read the Release notes of Ricgraph v2.1 to read what you have to do when upgrading Ricgraph.
2.1 - Ricgraph
A journal article has been published about Ricgraph. Please read it to get a gentle introduction in Ricgraph. Rik D.T. Janssen (2024). Ricgraph: A flexible and extensible graph to explore research in context from various systems. SoftwareX, 26(101736). https://doi.org/10.1016/j.softx.2024.101736.
The following improvements have been made to Ricgraph.
Structural change:
- As an alternative to Neo4j, you can also use Memgraph. Memgraph is an in memory graph database. You can use Memgraph by modifying some settings in the Ricgraph initialization file. Memgraph with Ricgraph has not been tested extensively, but first tests seem to indicate that Memgraph is much faster than Neo4j, especially for harvesting.
Ricgraph Explorer:
- Improved the speed of finding persons that share research result types with a certain person.
Ricgraph:
- Added a function to get datestamps and timestamps to monitor clock time progress.
- Added counters for the number of accesses to the graph database backend.
Harvest scripts:
- Every harvest script now prints datestamps and timestamps to monitor clock time progress. They also have counters for the number of accesses to the graph database backend. Both can be used to get an idea about the performance of the graph database backend.
Documentation:
- Added documentation how to use Memgraph.
Upgrading:
- If you upgrade from Ricgraph v2.0, you do not need to re-install or reharvest.
- If you upgrade from any Ricgraph version earlier than v2.0, you will need to re-install Ricgraph, re-create your Ricgraph initialization file, and reharvest your sources. This is due to the many changes.
2.0 - Ricgraph
The following improvements have been made to Ricgraph.
Structural change:
- Previously, Ricgraph used the Python module py2neo to connect with the graph database backend Neo4j. This module is end-of-life. Now, Ricgraph uses the Python module neo4j. This required many changes, including explicit Cypher calls in the code. This results in a faster Ricgraph, and it may be possible to use other graph database backends that use the same Python module (such as Memgraph or Avantgraph).
Ricgraph Explorer:
- Added a function that finds with which (sub-)organizations a person collaborates.
- Modifications to make Ricgraph Explorer run in a multi-user environment. This includes an Apache config file, and changes so that Ricgraph Explorer can be run as a Linux service, or using WSGI.
Ricgraph:
- Cleanup and optimization of code.
- Added a script to count the number of organizations that contributed to a category, so that you will be able to see which (sub-)organizations collaborate.
- Modifications to make Ricgraph run in a multi-user environment.
- A call to get_personroot_node() or get_all_personroot_nodes() now returns person-root nodes of any type of node.
- Previously, if a new node had a FULL_NAME that was already in Ricgraph, the new node was joined with the node already present. It appears that in case you harvest multiple source systems, this may not be a good idea: a person named J. Doe from source system 1 may be someone else than person J. Doe from source system 2. Thus, this is not done any more, unless you set RICGRAPH_NODEADD_MODE to something else than 'strict'.
- Modified initialization file by renaming a section, and adding and renaming graph database backend parameters.
- Removed function get_edges().
Harvest scripts:
- Added University Medical Center Utrecht to the list of nodes to rename in the batch harvest script batch_harvest.py.
Documentation:
- Added the reference publication: Rik D.T. Janssen, Ricgraph: A Flexible and Extensible Graph to Explore Research in Context from Various Systems. January 2024. Submitted to SoftwareX. https://doi.org/10.2139/ssrn.4712466.
- Added use cases as in the reference publication.
- Added documentation for Ricgraph Explorer.
- Added documentation how to run Ricgraph and Ricgraph Explorer in a multi-user environment. Please read Ricgraph as a server on Linux.
- Added a Ricgraph presentation and a table where Ricgraph has been used.
- Added an explation how to dump data in Neo4j Desktop and use it in Neo4j Community Edition.
- Reorganized the documentation structure.
- Updated badges in README.md file.
- And many other improvements and clarifications to the documentation.
GitHub:
- The default branch name of Ricgraph in GitHub has been renamed from master to main.
Upgrading:
- If you upgrade from any Ricgraph version, you will need to re-install Ricgraph, re-create your Ricgraph initialization file, and reharvest your sources. This is due to the many changes.
1.14 - Ricgraph
The following improvements have been made to Ricgraph.
Ricgraph Explorer:
- The option to get more information about persons or their results in an organization is much faster.
- The option to find persons that share research output types with another person is faster.
- Removed the option to find overlap in source systems for an organization.
- Added a transparant favicon.
If you upgrade from Ricgraph v1.13, you do not need to reharvest your sources. If you upgrade from Ricgraph v1.11 or earlier, you do need to reharvest your sources.
1.13 - Ricgraph
The following improvements have been made to Ricgraph.
Ricgraph Explorer:
- Full rewrite of the code, to make the structure easier to understand and the code easier to extend.
- User experience improvements, such as a new flow through the application, buttons with predefined search queries, and dropdown lists for various input fields.
- Added a cache for nodes.
- Statistics such as the names of the harvested systems, number of nodes and edges, and use of the node cache.
- Speed improvements.
Ricgraph:
- Minor changes related to the rewrite of Ricgraph Explorer.
If you upgrade from Ricgraph v1.12, you do not need to reharvest your sources. If you upgrade from Ricgraph v1.11 or earlier, you do need to reharvest your sources.
1.12 - Ricgraph
The following improvements have been made to Ricgraph.
Ricgraph Explorer:
- User experience improvements.
- Speed improvements
Ricgraph:
- The FULL_NAME of nodes is cached in the comment field of its person-root node.
- Limit the number of organization nodes to return in filterorganization() for improvement of speed.
- Changed the object identifier of nodes from RCGNode to RicgraphNode.
Harvest scripts:
- In case a person is part of multiple (child) organizations (such as university, faculty, department, unit), this person will be connected to all of these (child) organizations.
- Pure harvesting: more author names will be added to Ricgraph: the not active persons, the external persons and the author collaborations.
- Pure harvesting: projects without identifiers will be harvested.
- Pure harvesting: projects are connected to all of their parent organizations.
Documentation:
- Added Ricgraph abstract, presentation and video at Pure International Conference 2023 in Dubrovik, Croatia.
- Added several badges in README.md.
- Added metadata for the Clariah tools website, and for other sites that obtain their metadata from the Clariah tools website.
If you upgrade from Ricgraph v1.11 or earlier, you need to reharvest your sources.