forked from emory-libraries/eulfedora
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
142 lines (112 loc) · 5.45 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
Change & Version Information
============================
The following is a summary of changes and improvements to
:mod:`eulfedora`. New features in each version should be listed, with
any necessary information about installation or upgrade notes.
0.20
----
* Development requirements can now be installed as an optional requirement
of the eulfedora package (``pip install "eulfedora[dev]"``).
* Unit tests have been updated to use :mod:`nose`
* Provides a nose plugin to set up and tear down for a test Fedora Commons
repository instance for tests, as an alternative to the custom test runners.
0.19.2
------
* Bugfix: don't auto-create an XML datastream at ingest when the xml content
is empty (i.e., content consists of bootstrapped :class:`xmlmap.XmlObject` only)
0.19.1
------
* Bugfix: handle Fedora restriction of ownerId field length to 64 characters.
When setting :attr:`~eulfedora.models.DigitalObject.owner`, will now warn
and truncate the value to allow the object to be saved.
0.19.0
------
* New command-line script ``fedora-checksums`` for datastream
checksums validation and repair. See :doc:`scripts` for more
details.
* :class:`~eulfedora.models.DigitalObject` now provides access to the
Fedora built-in audit trail; see
:attr:`~eulfedora.models.DigitalObject.audit_trail`. Also provides:
* :meth:`eulfedora.views.raw_audit_trail`: Django view to serve out
audit trail XML, comparable to
:meth:`eulfedora.views.raw_datastream`.
* :class:`~eulfedora.models.DigitalObject` attribute
:attr:`~eulfedora.models.DigitalObject.audit_trail_users`: set of
all usernames listed in the audit trail (i.e., any users who have
modified the object)
* :class:`~eulfedora.models.DigitalObject` attribute
:attr:`~eulfedora.models.DigitalObject.ingest_user`: username
responsible for ingesting the object into Fedora if ingest is
listed in the audit trail
* :class:`~eulfedora.models.Relation` now supports recursive relations
via the option ``type="self"``.
* API wrappers have been updated to take advantage of all methods
available in the REST API as of Fedora 3.4 which were unavailable in
3.2. This removes the need for any SOAP-based APIs and the
dependency on :mod:`soaplib`.
* Minor API / unit test updates to support Fedora 3.5 in addition to
3.4.x.
0.18.1
------
* Bugfix: Default checksum type for
:class:`~eulfedora.models.DatastreamObject` was previously ignored
when creating a new datastream from scratch (e.g., when ingesting a
new object). In certain versions of Fedora, this could result in
datastreams with missing checksums (checksum type of 'DISABLED',
checksum value of 'none').
0.18.0
------
* Exposed RIsearch ``count`` return option via
:meth:`eulfedora.api.ResourceIndex.count_statements`
* :class:`~eulfedora.models.DatastreamObject` now supports setting
datastream content by URI through the new
:attr:`~eulfedora.models.DatastreamObject.ds_location` attribute
(this is in addition to the previously-available
:attr:`~eulfedora.models.DatastreamObject.content` attribute).
0.17.0
------
* Previously, several of the REST API calls in
:class:`eulfedora.api.REST_API` suppressed errors and only returned
True or False for success or failure; this made it difficult to
determine what went wrong when an API call fails. This version of
:mod:`eulfedora` revises that logic so that all methods in
:class:`eulfedora.api.REST_API` will raise exceptions when an
exception-worthy error occurs (e.g., permission denied, object not
found, etc. - anything that returns a 40x or 500 HTTP error response
from Fedora). The affected REST methods are:
* :meth:`~eulfedora.api.REST_API.addDatastream`
* :meth:`~eulfedora.api.REST_API.modifyDatastream`
* :meth:`~eulfedora.api.REST_API.purgeDatastream`
* :meth:`~eulfedora.api.REST_API.modifyObject`
* :meth:`~eulfedora.api.REST_API.purgeObject`
* :meth:`~eulfedora.api.REST_API.setDatastreamState`
* :meth:`~eulfedora.api.REST_API.setDatastreamVersionable`
* New custom Exception :class:`eulfedora.util.ChecksumMismatch`, which
is a subclass of :class:`eulfedora.util.RequestFailed`. This
exception will be raised if
:meth:`~eulfedora.api.REST_API.addDatastream` or
:meth:`~eulfedora.api.REST_API.modifyDatastream` is called with a
checksum value that Fedora determines to be invalid.
.. note::
If :meth:`~eulfedora.api.REST_API.addDatastream` is called with a
checksum value but no checksum type, current versions of Fedora
ignore the checksum value entirely; in particular, an invalid
checksum with no type does not result in a
:class:`~eulfedora.util.ChecksumMismatch` exception being raised.
You should see a warning if your code attempts to do this.
* Added read-only access to :class:`~eulfedora.models.DigitalObject`
owners as a list; changed default
:meth:`eulfedora.models.DigitalObject.index_data` to make owner
field a list.
* Modified default :meth:`eulfedora.models.DigitalObject.index_data`
and sample Solr schema to include a new field (dsids) with a list of
datastream IDs available on the indexed object.
0.16.0 - Indexing Support
-------------------------
* Addition of :mod:`eulfedora.indexdata` to act as a generic
webservice that can be used for the creation and updating of indexes
such as SOLR; intended to be used with :mod:`eulindexer`.
0.15.0 - Initial Release
------------------------
* Split out fedora-specific components from :mod:`eulcore`; now
depends on :mod:`eulxml`.