Skip to content

Commit 3b4c02e

Browse files
committed
Add change log for 2.4.2
1 parent b926015 commit 3b4c02e

File tree

1 file changed

+104
-89
lines changed

1 file changed

+104
-89
lines changed

CHANGELOG.md

+104-89
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,35 @@
11
# Change Log
22

3+
## [2.4.2](https://github.com/DataONEorg/d1_python/tree/2.4.2) (2018-02-15)
4+
[Full Changelog](https://github.com/DataONEorg/d1_python/compare/2.4.1...2.4.2)
5+
6+
* DataONE Generic Member Node (GMN)
7+
* Add SysMeta XML doc to each object returned in BagIt from getPackage()
8+
* Fix configuration checks performed at startup and improve messages
9+
* Add option to limit number of objects to import in bulk importer
10+
* Add tests for settings check performed at GMN startup
11+
12+
* DataONE Client Library
13+
* Move updateSystemMetadata() to baseclient to make it availble for CN calls
14+
15+
* DataONE Common Library
16+
* Update dependencies to current as of 2018-02-15
17+
* Improve StringIterator to allow for more general usage
18+
19+
* Tests and test framework
20+
* Add memory_limit context manager and associated test
21+
* Provides ability to fail unit tests that exceed a given memory usage target
22+
* Based on psutil, which is added as a new dependency
23+
* Add workaround for MultipartEncoder bug in Django test client
24+
* Improve performance in instance generator
25+
* Skip generating PyXB objects that will not be used in the final SysMeta object
26+
* Ensure unique media types in test objects
27+
* Check that dateSysMetadataModified of object obsoleted by update() is set to the GMN server's current datetime
28+
329
## [2.4.1](https://github.com/DataONEorg/d1_python/tree/2.4.1) (2017-12-14)
430
[Full Changelog](https://github.com/DataONEorg/d1_python/compare/2.4.0...2.4.1)
531

6-
* GMN
32+
* DataONE Generic Member Node (GMN)
733
* Add XML Schema (XSD) validation of incoming Science Metadata documents
834
* Applies to calls to MNStorage.create() and MNStorage.update()
935
* Controlled by new SCIMETA_VALIDATION_* settings
@@ -12,7 +38,7 @@
1238
* Fix bug that prevented process_refresh_queue from running
1339
* Improve error handling and logging in bulk importer
1440

15-
* d1_common
41+
* DataONE Common Library
1642
* Add new package for validating Science Metadata
1743
* The required schemas are included in the package
1844
* Improve error handling in multiprocessed iterators
@@ -29,7 +55,7 @@
2955
## [2.4.0](https://github.com/DataONEorg/d1_python/tree/2.4.0) (2017-11-16)
3056
[Full Changelog](https://github.com/DataONEorg/d1_python/compare/2.3.8...2.4.0)
3157

32-
* GMN
58+
* DataONE Generic Member Node (GMN)
3359
* Fix ServiceFailure caused by some `listObjects()` and `getLogRecords()` slice requests
3460
* Fix datetimes in DataONE types sometimes returned as naive instead of in the UTC timezone
3561
* Add support for returning BagIt zip archives from `getPackage()`
@@ -53,7 +79,7 @@
5379
* identifier related functionality
5480
* Misc
5581

56-
* d1_common
82+
* DataONE Common Library
5783
* Add AccessPolicyWrapper, a wrapper for the AccessPolicy DataONE type adds type specific and intuitive methods directly on the object
5884
* Add SimpleXMLWrapper, similar functionality for XML
5985
* These abstract away the details of the types and provide for concise and intuitive code
@@ -66,10 +92,11 @@
6692
* Improve utilities for comparing and normalizing XML
6793
* New date-time functions to better handle timezones
6894

69-
* d1_client
95+
* DataONE Client Library
7096
* Improve error handling in multiprocessed iterators
7197

72-
* Test framework
98+
* Tests and test framework
99+
* Add around 300 tests since 2.3.8.
73100
* Add support for running tests in parallel with `pytest.xdist`
74101
* Run of test set, currently around 1100 tests, reduced from 7 to 2 min on dev machine
75102
* Each worker runs against a separate copy of the GMN database, instantiated from shared template
@@ -87,17 +114,13 @@
87114
* Misc other smaller test framework improvements
88115

89116
* Misc
90-
* Add around 300 tests since 2.3.8.
91117
* Update dependencies to current as of 2017-11-16
92-
* Refactoring:
93-
* Better timezone support throughout d1_python
94-
* Misc
118+
* Better timezone support throughout d1_python
95119

96120
## [2.3.8](https://github.com/DataONEorg/d1_python/tree/2.3.8) (2017-10-20)
97121
[Full Changelog](https://github.com/DataONEorg/d1_python/compare/2.3.6...2.3.8)
98122

99-
* Update all dependencies to current versions as of 2017-10-20
100-
* GMN:
123+
* DataONE Generic Member Node (GMN)
101124
* Add support for storing partial and out-of-order revision chains
102125
* Automatically combine chain fragments that are found to be part of the
103126
same chain
@@ -108,17 +131,24 @@
108131
* Add support for general migrations to bulk importer
109132
* Remove old migrate_v1_to_v2 command
110133
* Update database test fixtures and sample docs
111-
* Add misc methods, docstrings and tests to d1_common access_policy module
112-
* Update PyXB bindings to PyXB 1.2.6 and update generator script
113-
* Add multiprocessed log record iterator
114-
* Refactor multiprocessed iterators to improve reliability
115-
* Add API v1.2 MN method wrappers (view and package methods)
134+
135+
* DataONE Client Library
136+
* Add multiprocessed log record iterator
137+
* Refactor multiprocessed iterators to improve reliability
138+
* Add API v1.2 MN method wrappers (view and package methods)
139+
140+
* DataONE Common Library
141+
* Add misc methods, docstrings and tests to access_policy module
142+
* Update PyXB bindings to PyXB 1.2.6 and update generator script
143+
144+
* Misc
145+
* Update dependencies to current as of 2017-10-20
146+
116147

117148
## [2.3.6](https://github.com/DataONEorg/d1_python/tree/2.3.6) (2017-08-24)
118149
[Full Changelog](https://github.com/DataONEorg/d1_python/compare/2.3.5...2.3.6)
119150

120-
* Update all dependencies to current versions as of 2017-08-24
121-
* GMN:
151+
* DataONE Generic Member Node (GMN)
122152
* Add extended listObjects() API
123153
* Fast method for retrieving large number of selected sysmeta values
124154
* Returns JSON
@@ -135,87 +165,72 @@
135165
* Keep track of ownership and versioning of sciobj filesystem store
136166
* Check every minute instead of every hour for new replication and sysmeta refresh tasks
137167
* Ongoing refactoring of diagnostics
138-
* Other:
139-
* Add support for disabling timeout in d1_client by passing timeout=None, 0 or 0.0
140-
* Testing:
168+
169+
* DataONE Client Library
170+
* Add support for disabling timeout by passing timeout=None, 0 or 0.0
171+
172+
* Tests and test framework
141173
* Add various small unit test improvements
142174
* Add automatic migration of test database
143175
* Update samples
144176
* Ensure that files deleted after previous build are not included in later releases
145177

178+
* Misc
179+
* Update dependencies to current as of 2017-08-24
146180

147181
## [2.3.5](https://github.com/DataONEorg/d1_python/tree/2.3.5) (2017-08-08)
148182
[Full Changelog](https://github.com/DataONEorg/d1_python/compare/2.3.4...2.3.5)
149183

150-
* Update all dependencies to current versions as of 2017-08-07
151-
152-
* Add general bulk importer management command
153-
* Allows upgrading from any earlier version of GMN or other MN stack
154-
155-
* Add shared module for handling obsolescence chains / revisions
156-
* `d1_common/revision.py`
157-
158-
* Rename methods for creating missing directory names
159-
* `d1_common/util.py`
160-
161-
* Add default page size of 100 records for getLogRecords()
162-
* `d1_common/const.py`
163-
164-
* Expose a ".total" attribute in iterators
165-
* Clients can read the value from .total to keep track of progress. Earlier, clients had to perform a separate query using filter parameters matching those used by the iterator. There was also a potential race, in that the total could change between query by the iterator and by the client.
166-
167-
* Change iterator arguments:
168-
* ObjectListIterator: listObjects_args_dict -> list_objects_args
169-
* LogRecordIterator: getLogRecords_dict -> get_log_records_arg_dict
170-
171-
* Add get_and_save() wrapper for MNRead.get()
172-
* This is a convenience method added because correctly saving the result
173-
from get() to a file is a bit tricky, while it is also the most common
174-
use of get().
175-
* Add option to create missing directories for MNRead.get_and_save()
176-
177-
* Add section in README.md about db fixtures for GMN, how they're used, how to generate them
178-
* Improve procedure for regenerating db fixture
179-
180-
* Add mock API handlers
181-
* MNCore.getCapabilities()
182-
* CNCore.listNodes()
183-
184-
* Fix bug: SID did not resolve correctly
185-
* Add tests for SID resolve
186-
187-
* Update default User-Agent to DataONE_Python/x.y.z +http://dataone.org/
188-
189-
* Add misc type related utilities to d1_common
190-
* `d1_common/type_conversions.py`, etc.
191-
192-
* Add support for v2 CNRead.synchronize()
193-
194-
* Add description on how to use stream=True with MNRead.get()
195-
196-
* Add handling of db where migrations are out of sync in fixture generator
197-
198-
* Add cleardb diag management command
184+
* DataONE Generic Member Node (GMN)
185+
* Add general bulk importer management command
186+
* Allows upgrading from any earlier version of GMN or other MN stack
187+
* Add cleardb diag management command
199188
* Remove cleardb from the diags page
200189
* Start code for other "diag" management commands
201-
202-
* Improve the way that chains are represented in the db
190+
* Improve the way that chains are represented in the db
203191
* Less code and faster SID related queries
192+
* Update revision change related model name
193+
* After earlier modifications in how the chains are represented, the old names were misleading
194+
* Add SID filtering support
195+
* Add support for passing SID as the getLogRecords() idFilter and listObjects() identifier args
196+
* Note: We don't resolve SIDs for v1, so the v1 pidFilter argument cannot take a SID.
197+
* Add tests for SID filtering
198+
* Fix bug: Unable to run management commands
199+
* Update node registration doc to reflects updated manage.py commands
200+
201+
* DataONE Client Library
202+
* Add support for v2 CNRead.synchronize()
203+
* Expose a ".total" attribute in iterators
204+
* Clients can read the value from .total to keep track of progress. Earlier, clients had to perform a separate query using filter parameters matching those used by the iterator. There was also a potential race, in that the total could change between query by the iterator and by the client.
205+
* Change iterator arguments:
206+
* ObjectListIterator: listObjects_args_dict -> list_objects_args
207+
* LogRecordIterator: getLogRecords_dict -> get_log_records_arg_dict
208+
* Add get_and_save() wrapper for MNRead.get()
209+
* This is a convenience method added because correctly saving the result from get() to a file is a bit tricky, while it is also the most common use of get().
210+
* Add option to create missing directories for MNRead.get_and_save()
211+
* Add description on how to use stream=True with MNRead.get()
212+
213+
* DataONE Common Library
214+
* Add module for handling obsolescence chains / revisions
215+
* `d1_common/revision.py`
216+
* Rename methods for creating missing directory names
217+
* `d1_common/util.py`
218+
* Add default page size of 100 records for getLogRecords()
219+
* `d1_common/const.py`
220+
* Update default User-Agent to DataONE_Python/x.y.z +http://dataone.org/
221+
* Add misc type related utilities to d1_common
222+
* `d1_common/type_conversions.py`, etc.
204223

205-
* Update revision change related model name
206-
After earlier modifications in how the chains are represented, the old
207-
names were misleading.
208-
209-
* Add SID filtering support
210-
* Add support for passing SID as the getLogRecords() idFilter and listObjects() identifier args.
211-
* Note: We don't resolve SIDs for v1, so the v1 pidFilter argument cannot take a
212-
SID.
213-
* Add tests for SID filtering
214-
215-
* Fix bug: Unable to run management commands
216-
217-
* Update node registration doc to reflects updated manage.py commands
218-
219-
* Add script that checks scimeta indexing
224+
* Tests and test framework
225+
* Add section in README.md about db fixtures for GMN, how they're used, how to generate them
226+
* Improve procedure for regenerating db fixture
227+
* Add mock API handlers
228+
* MNCore.getCapabilities()
229+
* CNCore.listNodes()
230+
* Fix bug: SID did not resolve correctly
231+
* Add tests for SID resolve
232+
* Add handling of db where migrations are out of sync in fixture generator
233+
* Add script that checks scimeta indexing
220234

221-
* Misc refactoring and internal improvements
235+
* Misc
236+
* Update dependencies to current as of 2017-08-07

0 commit comments

Comments
 (0)