Microfiber 13.11

Milestone information

Project:
Microfiber
Series:
trunk
Version:
13.11
Released:
 
Registrant:
Jason Gerard DeRose
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
No users assigned to blueprints and bugs.
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
No bugs are targeted to this milestone.

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon microfiber-13.11.0.tar.gz (md5, sig) tarball 11
last downloaded 49 weeks ago
Total downloads: 11

Release notes 

Added three new experimental Database methods:

  * `Database.iter_all_docs(chunksize=50)`

  * `Database.iter_view(design, view, key, chunksize=50)`

  * `Database.delete_many(docs)`

Note that none of these methods are API stable yet, so use them at your own risk!

The first two methods address the tricky but important pattern of iterating through a set of docs some number of docs at a time, but without any repeating doc IDs or unexpected doc ID gaps. As currently CouchDB doesn't allow you to specify a non-inclusive *startkey_docid*, iterating this way is rather fragile and is very easy to get wrong (eg, it's easy to produce an infinite loop). Although this approach is difficult to implement correctly, it's far superior to stepping through results using the *skip* query parameter.

The first two methods represent an extremely frequent pattern in Dmedia, so it was time to bite the bullet and add them to Microfiber.

The last method isn't anything special, but it is handy and rounds out our set of `Database.verb_many()` methods. This method would often be helpful in Dmedia unit tests, which is why it was added.

`Database.delete_many()` simply sets `doc['_deleted'] = True` for all docs, and then passes them to `Database.save_many()`.

Changelog 

This release does not have a changelog.

0 blueprints and 0 bugs targeted

There are no feature specifications or bug tasks targeted to this milestone. The project's maintainer, driver, or bug supervisor can target specifications and bug tasks to this milestone to track the things that are expected to be completed for the release.

This milestone contains Public information
Everyone can see this information.