Dryad2dataverse changelog¶
Perfection on the first attempt is rare.
v0.6.1 - 11 May 2023¶
dryad2dataverse.constants
- Eliminated deprecated parameter in call to
urllib3.util.Retryas per https://github.com/urllib3/urllib3/issues/2092
v0.6.0 - 2 May 2023¶
- Updated to current Python packaging standards
- Installation can now be done straight from
pipwithout resorting togit+http. . . - Test framework now
unittest - Documentation updated
dryad2dataverse.constants
constants.dvurlnow defaults to https://borealisdata.capathlibinstead ofos.pathfor greater cross-platform compatibility.
v0.5.8 - 10 February 2023¶
- Good lord I misspelled “February” initially
- certifi requirements updated
- somewhat better error logging for odd requests failures
- Dataverse JSON change to be in compliance with new standards for v5.12+
Note that binaries will no longer be produced for dryad2dataverse. If you want one, you can either contact me and I will create one and add it to the release, or you can make one yourself using PyInstaller or Nuitka. The effort of making them vs the lack of downloads has led to this decision. If this is a problem please create an issue for discussion.
v0.5.0 - 7 December 2022¶
dataverse.handlers
- New handler component
- Custom SSL log handler
SSLSMTPHandleradded which reduces frequency of email problems
dryadd.py
- Mail formatting changed to ensure lines are less than 1000 characters in length to adhere to [RFC 2825 4.5.3.5] (https://www.rfc-editor.org/rfc/rfc2821#section-4.5.3.1).
- Logging messages contain more information
- Default mail service changed to Yahoo mail
- Default dataverse server destination changed to
https://borealisdata.ca - Help text cleanup
v0.3.1 - 4 February 2022¶
Changes to the Dryad API sparked a few changes to dryad2dataverse and dryadd.py. More specifically, the Dryad /search API endpoint can produce false positive results, which can result in bulk study replacement when none is required. Additionally, as file IDs are not unique in Dryad (contrary to the documentation), files are no longer identified on the basis of Dryad file ID.
dryad2dataverse.serializer
Serial.filesoutput now includes explicit hash type
dryad2dataverse.monitor
Monitor.status()now returns values ofnew, unchanged, updated, filesonly- Monitor.status() now includes
noteskey - Monitor.diff_files() now outputs a list of files for new studies using the
addkey instead of producing an empty dict. - Monitor.diff_files() outputs of
hash_changekey listing files whose names and sizes are identical but have either a changed hash or a new one.. Note that this does not necessarily indicate a changed file as hashes have been added to existing files. - Monitor.get_dv_fid() now explicitly selects highest ROWID when returning a Dryad UID as UIDs are not considered persistent identifiers (as per email from Dryad January 2022)
dryadd.py
- Dates are now filtered by metadata
lastModificationDateas Dryad search API endpoint does not respect date parameter (as per Dryad email, January 2022). - Databases are now backed up with suffix of
.YYYY-MM-DD-HHMMinstead of generic.bak - Number of backups can be specified as a parameter
- Switch added to halt process on excessive number of study updates
- Study threshold added to specify what is considered “excessive”
- Recipients are emailed on halt due to excessive updates
- Verbosity increased
- Output now explicity includes lists of new files instead of empty dict
- Updates now skipped on report of
unchangedorlastmodsame; ie. metadata is identical or the lastModificationDate field in the Dryad JSON unchanged.
Other
- Binary files are now only included as part of a Github release
- Binary release now includes linux x86-64
- Dataverse utilities scripts removed; use dataverse_utils instead.
v0.1.4 - 22 Sept 2021¶
requirements.txt
- Updated version requirements for
urllib3andrequeststo plug dependabot alert hole.
dryadd.py
- Updated associated
dryadd.pybinaries to use newer versions ofrequestsandurllib3
v0.1.3 - 10 August 2021¶
setup.py
- Enhanced information
dryadd.py
- Script repair for better functioning on Windows platforms
v0.1.2 - 4 May 2021¶
- fixed error in
setup.py - added binaries of
dryaddfor Windows and Mac
v0.1.1 - 30 April 2021¶
dryad2dataverse
- improved versioning system
dryad2dataverse.serializer
- Fixed bug where keywords were only serialized when grants were present
dryad2dataverse.transfer
- Added better defaults for
transfer.set_correct_date
dryad2dataverse.monitor
- Added meaningless change to
monitor.updatefor internal consistency
scripts/dryadd.py
- Show version option added
transfer.set_correct_date()added to set citation to match Dryad citation.
v0.1.0 - 08 April 2021¶
- Initial release