Skip to content

Releases: go-kivik/kivik

4.0.0-rc1

26 Sep 20:11
39006eb

Choose a tag to compare

4.0.0-rc1 Pre-release
Pre-release

What's Changed

  • Unpromote iterator methods by @flimzy in #604
  • Update issue template by @flimzy in #605
  • Remove baseRS type by @flimzy in #606
  • Better row-specific error reporting by @flimzy in #607
  • Driver cleanup by @flimzy in #609
  • Fix single-item mode for empty result sets by @flimzy in #610
  • Refactor some tests by @flimzy in #614
  • Refactor TestGet by @flimzy in #615
  • Change client.Close() semantics a bit by @flimzy in #613
  • Remove context argument to Close() methods by @flimzy in #617
  • Change DB.Close() to block until all queries are done by @flimzy in #618
  • Update broken link by @flimzy in #620
  • Defer errors for all iterators by @flimzy in #619
  • Update BulkDocs to no longer return an iterator by @flimzy in #623
  • Pass rev as options to driver instances by @flimzy in #624
  • Don't try to assing rev to nil map by @flimzy in #625
  • Fix GopherJS 1.18 test suite by @flimzy in #626
  • Close pending queries when iterators error immediately by @flimzy in #627
  • Fix BulkGet closing on error by @flimzy in #628
  • Fix Query closing on error by @flimzy in #629
  • Fix closing RevsDiff iterator by @flimzy in #630
  • run tests against CouchDB 3.3.2 by @flimzy in #631
  • Update readme example not to pass context in DB by @kitanoyoru in #634
  • Consume response body from Get() result by @flimzy in #635
  • Update to Go 1.21 and golangci-lint 1.54.0 by @flimzy in #636
  • Convert ResultSet from interface to concrete struct type by @flimzy in #637
  • Remove errRS type, and merge its functionality into the new ResultSet struct by @flimzy in #638
  • Split underlying resultsets into two types: basic and full by @flimzy in #639
  • Update README with *ResultSet changes by @flimzy in #640
  • Remove unused errors package by @flimzy in #641
  • Reintegrate kiviktest package by @flimzy in #643
  • Clean up some debugging output by @flimzy in #649
  • Add support for result-set returning Get() method by @flimzy in #650
  • Extend driver.Rows with Rev and Attachments fields by @flimzy in #651
  • Reintegrate couchdb driver into this repo by @flimzy in #642
  • Use POST for changes feed to support large lists of doc_ids by @flimzy in #663
  • Run GopherJS tests against 1.18 as in the pouchdb repo by @flimzy in #665
  • Reintegrate pouchdb repo into this one by @flimzy in #664
  • Make Security/SetSecurity optional for a backend by @flimzy in #670
  • Remove legacy support for the github.com/pkg/errors.causer interface by @flimzy in #671
  • Mention repo merge in changes section of README by @flimzy in #672
  • Update CouchDB driver to use RowsGetter interface instead of OldGetter by @flimzy in #674
  • Refactor how revisions are parsed for Get() responses by @flimzy in #675
  • Modify ExtractRev to take a general io.ReadCloser, not just a *http.Response by @flimzy in #676
  • Stop using ioutil by @flimzy in #678
  • Reintegrate mock driver by @flimzy in #680
  • Remove some obsolete and unused test suites by @flimzy in #681
  • Update dependencies by @flimzy in #683
  • Bump testy dep by @flimzy in #684
  • Run tests against GopherJS 1.17 by @flimzy in #685
  • Remove some unnecessary blank identifiers by @flimzy in #686
  • Extract doc processing for the Get() method by @flimzy in #689
  • Standardize some variable naming by @flimzy in #688
  • Convert options to function arguments by @flimzy in #679
  • Rename kivik.Options to kivik.Params, and make it a functional option by @flimzy in #690
  • GoDoc updates for top-level package by @flimzy in #691
  • Remove SetTransport auth method by @flimzy in #700
  • Merge driver.DBCloser into driver.DB interface by @flimzy in #702
  • Use empty string to indicate CouchDB 1.x config node by @flimzy in #703
  • Remove unused vendor constants by @flimzy in #704
  • Unexport couchdb.BulkGetError type by @flimzy in #705
  • Add Duration() function to ease handling of duration-based query parameters by @flimzy in #707
  • Convert authentication to options by @flimzy in #708
  • Remove legacy options from mockdb by @flimzy in #710
  • Remove an unused options instance by @flimzy in #712
  • Allow multiple options in mockdb expectations by @flimzy in #711
  • Use Node.js 18 for GopherJS tests by @flimzy in #687
  • Use kivik.Option in kt by @flimzy in #714
  • Add optional fields for Cloudant _security documents by @flimzy in #717
  • Clarify use of some Replication methods by @flimzy in #718
  • Move Error type to internal package by @flimzy in #721
  • Unexport the params type, and add a Params() function by @flimzy in #719
  • Remove curlError type by @flimzy in #722
  • Use io.Seeker method to determine attachment size when possible by @flimzy in #723
  • Fix import ordering by @flimzy in #724
  • Remove unused file by @flimzy in #725
  • Fix timing tests by @flimzy in #727
  • Fix 2 bugs in readRev: by @flimzy in #728
  • Add open_revs support by @flimzy in #677
  • Shuffle tests by @flimzy in #729
  • Switch mock driver to the new Get interface by @flimzy in #732
  • Switch to new Getter for pouchdb driver by @flimzy in #733
  • Complete plumbing of the Cloudant-specific security fields by @flimzy in #734
  • Rename version by @flimzy in #735
  • Auto-create tags and releases when kivik.Version constant is updated by @flimzy in #736
  • Restore attachments iterator support to Get() by @flimzy in #737
  • Don't return invalid attachments iterators by @flimzy in #738
  • Tweak codecov config by @flimzy in #742
  • Reintegrate the fsdb driver by @flimzy in #741
  • Enforce license header with golangci-lint by @flimzy in #747
  • Reintegrate Memorydb driver by @flimzy in #746
  • Bump PouchDB tests to latest CouchDB by @flimzy in #752
  • Integrate xkivik repo into this one by @flimzy in #749
  • Use t.Cleanup in place of a defer by @flimzy in #754
  • Convert replication callback to a functional option by @flimzy in #755
  • Allow rc in Go version for tests by @flimzy in #757
  • golang:rc images are no longer produced, so stop testing them by @flimzy in #758
  • Convert copySecurity to functional option by @flimzy in #759
  • Extract rows type and tests to separate files by @flimzy in #760
  • Make ResultSet.Rev() work on single-results by @flimzy in #761
  • Switch other backends to use new getter interface by @flimzy in #764
  • Add tests for single call to Attachmen...
Read more

v3.2.5

05 May 21:03
87dd72a

Choose a tag to compare

Removes EOQ() method on Changes, BulkResults, and DBUpdates structs. It was never functional there, or even meant to be visible.

Maintenance release

30 Mar 13:21
51b08cd

Choose a tag to compare

Drop ancient versions of Go from the test suite, update dependencies, etc. No functional changes.

Improved `rev` handling for PutAttachment()

02 Dec 10:34
78ed46b

Choose a tag to compare

It is now possible to pass a rev argument to the PutAttachment() method by way of options, instead of the named rev argument, as well. I really really think this is the last one of these 😖

Improved `rev` handling for DeleteAttachment() method

28 Nov 17:02
2d8bc09

Choose a tag to compare

It is now possible to pass a rev argument to the DeleteAttachment() method by way of options, instead of the named rev argument, as well.

Improved `rev` handling for Delete() method

27 Nov 14:03
2a59d96

Choose a tag to compare

It is now possible to pass a rev argument to the Delete() method by way of options, instead of the named rev argument.

Adds the Client.Membership() method

10 Jul 13:40
8c8c61d

Choose a tag to compare

Client.Membership() can be used to query the /_membership endpoint on clusters. See https://docs.couchdb.org/en/latest/api/server/common.html#get--_membership

Documentation updates

02 May 18:13
4d1408f

Choose a tag to compare

This moves most of the examples and documentation from the wiki into the godoc.

No meaningful changes here, I'm only publishing the release so that pkg.go.dev will see the updates.

Fix bad merge

02 May 12:18
3c63a3c

Choose a tag to compare

The merge from master to v3 branch resulted in an accidental v4 import path. This corrects that.

Partitioned queries, and multi-query resultsets

02 May 12:18
1e02806

Choose a tag to compare

This release adds two major features:

  1. Support for partitioned queries, which is now provided by CouchDB 3.x
  2. Support for multiple queries to a view. This support has been around for ages (partial support all the way back to 1.x), but was never supported by Kivik. Now it is!

Breaking changes:

  • The Find, Explain, CreateIndex, GetIndexes, and DeleteIndex methods now take optional (variadic) kivik.Options arguments. This should not break normal usage, but may pose a problem if you depended on the exact function definition (such as in an interface definition) in any code.