Skip to content
This repository has been archived by the owner on Sep 16, 2022. It is now read-only.

Releases: CSCfi/metax-api

Release Candidate v0.9.0-rc4

15 Oct 11:35
f1efb35
Compare
Choose a tag to compare
Pre-release
  • [ADD] Improve docs: Clarify reference data section. Add stuff to datasets page: terminology
  • [ADD] Docs: High level view image

Release Candidate v0.9.0-rc3

09 Oct 10:33
fbfb07c
Compare
Choose a tag to compare
Pre-release
  • Update reference datas
  • Bug fixes
  • Improve logging
  • Refactor code
  • Data model change related to restriction_grounds cardinality

Release Candidate v0.9.0-rc2

28 Sep 12:41
e7ddb80
Compare
Choose a tag to compare
Pre-release

Contributor roles and contributor types
Resource type reference data updated to better support related entity type
Outcome description added for provenance object
Migration override allows not giving pref id (metax creates it)
Urn export only records meant to be urn exported. Export also deleted records
Agent type no longer in att and ida dataset schemas
Setting deprecated flag value now disallowed
Remote resource checksum algorithms removed from reference data, now directly enumerated in dataset json schema
Access_url associations removed from File and Directory objects in dataset json schema
.....

Release Candidate v0.9.0-rc1

22 Aug 07:49
e69c944
Compare
Choose a tag to compare
Pre-release
Merge pull request #321 from CSCfi/CSCMETAX-463-add-outcome-description

Cscmetax 463 add outcome description

Release v0.2.0

16 Aug 08:08
76f26d2
Compare
Choose a tag to compare
Merge stable to master: v0.2.0-rc1 (#319)

* Merge test to stable: v0.1.6-rc1 (#315)

* CSCMETAX-428: [ADD] File api: Add api POST /files/restore to restore files from state removed=True to removed=False

* CSCMETAX-61: [ADD] Improve logging when calculating project directory byte sizes and file counts (log totals once succesfully finished)

* CSCMETAX-61: [FIX] File api: Improve dispatch() method to only execute a request without a transaction when using POST to create files. Used to catch all POST requests to /files

* CSCMETAX-61: [ADD|REF] Improve logging in some file operations. Save date_modified timestamp to files when deleting

* CSCMETAX-428: [ADD] When restoring files using /files/restore, also restore missing directories, when necessary. Improve logging

* CSCMETAX-420: [ADD] Log basic request info middleware before, and after a request

* CSCMETAX-424:[FIX] contributors content and kernel version.

* CSCMETAX-61: [REF] Update requirements.txt

* CSCMETAX-430: [REF] research_dataset.access_rights is now compulsory in att and ida dataset schemas. Updated test data accordingly.

* CSCMETAX-248: [ADD] License information

* CSCMETAX-61: [FIX] Fix broken resumption token logic.

* CSCMETAX-434: [FIX] Don't strip whitespace from file or directory paths

* CSCMETAX-438: [ADD] Store also information about Internal Server Errors (HTTP 500), and return error_identifier to users

* CSCMETAX-442: [FIX|REF] Fix datacite convert errors. Convert metax datasets to datacite xml using 'datacite' library

Previous implemenetation of datacite conversion relied on xml transformation, which used our custom 'metax dataset
xml' as a starting point, and contained no xml schema validation at the end of it. The end result currently is quite
far from the schema, and the xslt is very difficult to get right.

As an alternative solution, use python 'datacite' library, which sports a datacite json-schema, and offers conversion
from that json to xml representation. The json-way is easier to validate (there is a all-in-one json schema available),
and easier to modify (just python code to create datacite json from metax dataset, instead of screwing around with
xslt files). Just to be sure, the produced xml was manually tested to validate agains the datacite xml.

The 'datacite' library conveniently also includes wrappers for DOI-related api's.

* CSCMETAX-61: [FIX] Unhandled exception handling in handle_exception(). If an exception is not converted to framework-recognized exception earlier, rollback is not executed

* CSCMETAX-388: [ADD] Better way to execute code at the very end of a request.

During a request, enables any code, anywhere to append callable objects to a list
of callables that will get executed in order of adding, at the end of the request.
No need to deliver data or parameters from some code deepdown all the way to the
out-most region in the code, where the request is almost finished, since the
callables contain all the information the need, and are self-contained.

If needed tho, it would be very easy to pass additional parameters to the callable,
such as the request- or the response-object.

* CSCMETAX-388: [REF] Publish dataset updates to rabbitmq using the new method of executing code at the end of the request

* CSCMETAX-388: [ADD] Stub implementation of REMS connection

* CSCMETAX-449: [ADD] Datacite conversion: If publisher is omitted from metax dataset, use first creator

* CSCMETAX-437: [FIX] RequestLogging: If no useragent is set, print (no useragent) instead of crashing and burning

* CSCMETAX-61: [FIX] When deleting datasets, only publish 'delete' to rabbitmq

Before the recent refactoring of publishing to rabbitmq, when deleting a dataset,
only 'delete' was published. Now, after the refactoring, it was discovered that
when deleting a dataset, what happens is that actually the CR.save() method is
executed as well, by the superclass. Previously, it did not cause a rabbitmq
publish due to it being done in a different place. This is now fixed by having
the superclass (model Common) only save the value of field 'removed', and calling
its superclass (not CR.save(), and not common.save())

* CSCMETAX-450: [REF] If restriction grounds are not of open type (codes 1 and 2), then access type code must not be open_access OR If restriction grounds are of open type, then access type code must be open_access

* CSCMETAX-61: [REF] Update requirements.txt

* CSCMETAX-132: [REF] Do not publish messages or init exchanges if connection to RabbitMQ is not ok. Catch exceptions on publishing messages. On initializing RabbitMQ class, i.e. while connecting to RabbitMQ, increase robustness by 1) retrying connection 15 times waiting 2 seconds in between attempts before failing and 2) choosing random ip address from a list of rabbitmq cluster hosts.

* CSCMETAX-61: [REF] Redis config key updates

* CSCMETAX-61: [REF] access_type is again compulsory in harvester dataset schema.

* CSCMETAX-455: [REF] Add additionalproperties to schemas. Fix some found problems in test data and app code. Note: test data fetch_and_update does not work in this commit.

* CSCMETAX-455: [REF] Change some of the additionalProperties: false flags to true since some objects do have properties that are not visible in the json schema. Fix api code reference data autopopulation for the parts that were actually not properly done before.

* CSCMETAX-455: [REF] Fix tests

* CSCMETAX-455: [REF] Fix tests

* Merge test to stable: v0.2.0-rc1 (#318)

* CSCMETAX-428: [ADD] File api: Add api POST /files/restore to restore files from state removed=True to removed=False

* CSCMETAX-61: [ADD] Improve logging when calculating project directory byte sizes and file counts (log totals once succesfully finished)

* CSCMETAX-61: [FIX] File api: Improve dispatch() method to only execute a request without a transaction when using POST to create files. Used to catch all POST requests to /files

* CSCMETAX-61: [ADD|REF] Improve logging in some file operations. Save date_modified timestamp to files when deleting

* CSCMETAX-428: [ADD] When restoring files using /files/restore, also restore missing directories, when necessary. Improve logging

* CSCMETAX-420: [ADD] Log basic request info middleware before, and after a request

* CSCMETAX-424:[FIX] contributors content and kernel version.

* CSCMETAX-61: [REF] Update requirements.txt

* CSCMETAX-430: [REF] research_dataset.access_rights is now compulsory in att and ida dataset schemas. Updated test data accordingly.

* CSCMETAX-248: [ADD] License information

* CSCMETAX-61: [FIX] Fix broken resumption token logic.

* CSCMETAX-434: [FIX] Don't strip whitespace from file or directory paths

* CSCMETAX-438: [ADD] Store also information about Internal Server Errors (HTTP 500), and return error_identifier to users

* CSCMETAX-442: [FIX|REF] Fix datacite convert errors. Convert metax datasets to datacite xml using 'datacite' library

Previous implemenetation of datacite conversion relied on xml transformation, which used our custom 'metax dataset
xml' as a starting point, and contained no xml schema validation at the end of it. The end result currently is quite
far from the schema, and the xslt is very difficult to get right.

As an alternative solution, use python 'datacite' library, which sports a datacite json-schema, and offers conversion
from that json to xml representation. The json-way is easier to validate (there is a all-in-one json schema available),
and easier to modify (just python code to create datacite json from metax dataset, instead of screwing around with
xslt files). Just to be sure, the produced xml was manually tested to validate agains the datacite xml.

The 'datacite' library conveniently also includes wrappers for DOI-related api's.

* CSCMETAX-61: [FIX] Unhandled exception handling in handle_exception(). If an exception is not converted to framework-recognized exception earlier, rollback is not executed

* CSCMETAX-388: [ADD] Better way to execute code at the very end of a request.

During a request, enables any code, anywhere to append callable objects to a list
of callables that will get executed in order of adding, at the end of the request.
No need to deliver data or parameters from some code deepdown all the way to the
out-most region in the code, where the request is almost finished, since the
callables contain all the information the need, and are self-contained.

If needed tho, it would be very easy to pass additional parameters to the callable,
such as the request- or the response-object.

* CSCMETAX-388: [REF] Publish dataset updates to rabbitmq using the new method of executing code at the end of the request

* CSCMETAX-388: [ADD] Stub implementation of REMS connection

* CSCMETAX-449: [ADD] Datacite conversion: If publisher is omitted from metax dataset, use first creator

* CSCMETAX-437: [FIX] RequestLogging: If no useragent is set, print (no useragent) instead of crashing and burning

* CSCMETAX-61: [FIX] When deleting datasets, only publish 'delete' to rabbitmq

Before the recent refactoring of publishing to rabbitmq, when deleting a dataset,
only 'delete' was published. Now, after the refactoring, it was discovered that
when deleting a dataset, what happens is that actually the CR.save() method is
executed as well, by the superclass. Previously, it did not cause a rabbitmq
publish due to it being done in a different place. This is now fixed by having
the superclass (model Common) only save the value of field 'removed', and calling
its superclass (not CR.save(), and not common.save())

* CSCMETAX-450: [REF] If restriction grounds are not of open type (codes 1 and 2), then access type code must not be open_access OR If restriction grounds are of open type, then access type code must be open_access

* CSCMETAX-61: [REF] Update requirements.txt

* CSCMETAX-132: [REF] Do not publish messages or init exchanges if connection to RabbitMQ is not ok. Catch exceptions on publishing messages. On initializing RabbitMQ class, i.e. while connecting to RabbitMQ, increase robustness by 1) retrying connection 15 times waiting 2 seconds in between attempts before failing and 2) choosing random ip address from a list of rabbitmq cluster hosts.

* CSCMETAX-61: [REF] Redis config key updates

* CSCMETAX-61: [REF] access_type is again compulsory in harvester dataset schema.

* CSCMETAX-455: [REF] Add additionalproperties to schemas. Fix some found problems in test data and app code. Note: test data fetch_and_update does not work in this commit.

* CSCMETAX-455: [REF] Change some of the additionalProperties: false flags to true since some objects do have properties that are not visible in the json schema. Fix api code reference data autopopulation for the parts that were actually not properly done before.

* CSCMETAX-455: [REF] Fix tests

* CSCMETAX-455: [REF] Fix tests

* CSCMETAX-413: [ADD] event_outcome to dataset schemas, full test datas. Add autopopulating event_outcome reference data and tests for it.

* CSCMETAX-61: [ADD] homepage association for agent object in dataset schemas.

Release Candidate v0.2.0-rc1

16 Aug 06:31
7f53d99
Compare
Choose a tag to compare
Pre-release
Merge pull request #317 from CSCfi/CSCMETAX-61-add-homepage-to-agent

CSCMETAX-61: [ADD] homepage association for agent object in dataset s…

Release Candidate v0.1.6-rc1

01 Aug 09:56
0d0ac82
Compare
Choose a tag to compare
Pre-release
Merge pull request #314 from CSCfi/CSCETSIN-61-refactor-redis-config

Cscetsin 61 refactor redis config

Release v0.1.5

20 Jun 10:32
44e355e
Compare
Choose a tag to compare
Merge pull request #294 from CSCfi/stable

Merge stable to master

Release v0.1.4

14 Jun 12:42
083fe47
Compare
Choose a tag to compare
Merge pull request #287 from CSCfi/stable

Merge stable to master: v0.1.4-rc2

Release Candidate v0.1.4-rc2

14 Jun 12:08
b976c61
Compare
Choose a tag to compare
Pre-release
Merge pull request #285 from CSCfi/CSCMETAX-419-add-inscheme-to-refdata

Cscmetax 419 add inscheme to refdata