Releases: couchbase/couchbase-lite-java
2.7.0
1.4.4
As part of this release we had 1 issue closed.
Where to get it
You can download this release from Couchbase.com
1.3.1
As part of this release we had 14 commits which resulted in 1 issue being closed.
Bugs
- #93 CBL Java 1.3.0 does not work with JDK 1.7
Where to get it
You can download this release from Couchbase.com
1.3.0
As part of this release we had 48 commits.
This is a feature release, with a focus on performance. Noteworthy changes:
- Support for OpenID Connect authentication, so you can log into Sync Gateway using a 3rd-party identity like a Google or Yahoo ID.
- Timed expiration of documents can help keep your database from growing indefinitely.
- Better performance with docs that have many revisions. Replication is faster, and older revisions are now automatically cleaned up in SQLite storage.
- Eliminate HttpClient library, and replace with OkHttp
- And of course many smaller optimizations, and lots of bug fixes.
Where to get it
You can download this release from Couchbase.com
1.2.1
As part of this release we had 33 commits.
Couchbase Lite for Java is a patch release.
Where to get it
You can download this release from Couchbase.com
1.2.0
This release features a number of performance improvements, enhancements, and bug fixes, including:
- ForestDB Storage Engine (Developer Preview) - Preview the speed of our new ForestDB storage engine.
- Database Encryption - AES-256 on-disk encryption with your choice of provided storage library: SQLCipher or ForestDB.
- Improved Developer Experience - You no longer need to compile native native code to use Couchbase Lite for Java on Linux, OS X, or Windows.
Performance Improvements
- #704 ForestDB storage Performance improvement
- #749 Slow when creating a BlobStore with a secure random generated key
- #801 Replace JNI-based JSON collation with ICUC
Enhancements
- #68 Integrate with SQLCipher to support database encryption
- #69 Enhance JavaSQLiteStorageEngine
- #321 Test CBForest storage engine
- #417 Add API to tell which documents haven't been pushed to the server
- #435 One shot replicator sends STOPPING state immediately after started replication
- #535 The replicator's setDocIds method doesn't filter the documents to push
- #573 Port Replication.stop() method from iOS
- #576 Changetracker does not automatically login again after expired session
- #628 Catch up latest (v1.1) SQLite table schema and SQL queries
- #644 Implement pluggable storage engine
- #663 Make available on JCenter
- #681 Catch up latest (v1.1) View.updateIndex() implementation
- #682 Add "_conflicts" property to doc in map function when doc is in conflict
- #683 [Request] Make Attachment.getContentURL() api public for android.
- #688 Expose CBLView.totalRows to public
- #691 Add BySequence to AllDocsOptions
- #695 Add replicator support for remote dbs with varying URLs
- #697 Complete CBForest-Java Implmentation and Test
- #702 Add support for SQLCipher
- #703 Implement ForestDB Storage Engine
- #704 ForestDB storage Performance improvement
- #710 Encrypt file attachments
- #719 Support SQLite encryption rekey feature
- #720 Support attachment encryption rekey
- #722 Migrating SQLite db to ForestDB
- #733 Enhance forestdb storage performance
- #736 Add retry queue for failed revisions in a bulk get
- #760 Sync iOS key derivation and encryption algorithm with iOS
- #763 Enable HTTP compression for _changes feed requests (non-continuous)
- #801 Replace JNI-based JSON collation with ICUC
- #804 Add official openDatabase API for encryption/storage options
- #811 Support encryption in ForestDB storage engine
- #812 Support unicode comparison with ICU for java
- #813 Support unicode comparison with ICU for AndroidSQLCipherStorageEngine
- #816 REST API /_changes with include_docs=true option does not handle the conflicted document
- #819 Support multiple sqlite configurations
- #827 Support encryption in ForestDBStore
- #894 Replication.docIds API discrepency
- #939 Optimize first-time sync
Bugs
- #62 IllegalArgumentException: Invalid database name: foward:slash after update to the latest cblite version
- #301 [Memory] compacting large database memory leak
- #643 Add conflict check in
PullerInternal.processChangeTrackerChange()
- #652 Refactor Batcher class (Port latest codes from iOS)
- #655 Unique constraint violation in sqlite
- #661 BasicAuth with empty password causes ArrayIndexOutOfBoundsException
- #664 Creating authenticator with empty password throws ArrayIndexOutOfBoundsException
- #670 LiteServ crashed with Fatal signal 11 (SIGSEGV) when run cbl-large-revisions localy
- #677 Pulling attachments fail if document got a deleted revision in history
- #689 CBL Java build (unit test) failure on Jenkins
- #696 Support for CBLReplication.pendingDocumentIds
- #699 Inserting multiple attachments fails when push replication is active.
- #700 Build failure with CBL Java on jenkins
- #706 ClassCastException if a view uses an array as value
- #707 PullerInternal processInbox Issue
- #709 View update skips winning revisions
- #712 ReplicationTest.testAllLeafRevisionsArePushed() unit test failure with forestdb strage engine
- #713 BatcherTest.testBatcherWaitsForProcessorDelay2() fails
- #717 TestContinuousPushReplicationGoesIdleTooSoon causes native crash if unit test run from command line on OSX
- #718 Android-database-sqlcipher doesn't provide 64 bit binary
- #723 401 status from server not being propagated to CBLReplication.lastError
- #724 Android build on Jenkins fails
- #728 Replicator should not stop by missing revisions
- #729 ApiTest:testViewWithLinkedDocs hangs when running unit tests with couchbase-lite-java
- #731 ForestDB storage cause native crush during push replication performance test with 200 docs
- #735 ApiTest.testConflict() test failure
- #748 Java doesn't support generating 256 bits key
- #749 Slow when creating a BlobStore with a secure random generated key
- #750 ReplicationTest.testPusherBatching() causes native crash with forestdb storage on ARM emulator API 19 (4.4.4)
- [#765](https:/...
1.1.0
Couchbase Lite Android/Java v1.1.0 is major release since v1.0.0 released about a year ago. It has several enhancements including:
- Has significant performance improvement in replication and view indexing.
- Has significant memory usage reduction in processing many documents.
- Contain several bug fixes and enhancements.
As part of this release we had 730 combined commits which resulted in 40 combined issues being closed. This includes totals across couchbase-lite-java, couchbase-lite-android, couchbase-lite-java-core, and couchbase-lite-java-native.
Performance
Enhancements
- #590 Add in replication optimization from iOS version
- #360 REST API need a way to setCookie
- #343 Control EXECUTOR_THREAD_POOL_SIZE
- #328 Excessive checkpointing during push replication
- #81 HttpMime library source code integration in couchbase breaks existing code
Bugs
- #654 "Window is Full" during View.updateIndex()
- #636 Exel: Push replication "losing" documents created when disconnected
- #635 Jackson deserialization exception
- #614 Push a small doc with an attachment failed
- #600 Push replication to rcouch fails on rev with attachments
- #596 Handle SQL 'attach' table incompatibility in CBL 1.1
- #587 Starting an AsyncTask right after Document.putProperties(), does not call the doInBackround() method?
- #585 toLiveQuery() forgets PrefixMatchLevel
- #583 getAllDocumentsQuery() ignores PrefixMatchLevel
- #575 restart of a replication shouldn't hang if the replication is already stopped.
- #563 Updating a document in a transaction block twice using Document.DocumentUpdater results in an infinite loop
- #560 Using deleteIndex() on an unregistered View makes the View unusable
- #497 Crash while building/rebuiding View
- #472 Potenial race condition in Document.update
- #452 Error after close DB client
- #427 P2P - SQLiteReadOnlyDatabaseException error
- #413 NullPointerException in query with setGroupLevel() without reduce function and no data
- #397 PushReplicator tries to push new document even though replicator is offline
- #383 Pull replication not going back into IDLE state
- #371 Android,replication algorithm 1.0.3 stalls before replicating all documents
- #361 RemoteRequestCompletionBlock java.util.ConcurrentModificationException
- #356 Replication restart problem
- #353 Don't persist cookie without max-age or expires property
- #352 Get session and checkpoint when retrying replications
- #342 Changes performed offline don't sync when going online.
- #296 NPE thrown when running ApiTest.testLiveQueryRun
- #285 Null pointer exception because of failing to rebuild view
- #61 Make / db names work in windows
Where to get it
You can download this release from Couchbase.com
Requirements
-
JDK 1.7+
-
Toolchains for compiling native libraries as follows :
Operating System Tool Chain Notes Linux GCC and G++ Mac OSX GCC or Clang Install Command Line Tools for Xcode available at the Apple Developer website. Windows Visual C++ Install Visual Studio 2013 and later.
Support Statement
Couchbase Lite Java Core is not supported standalone. Support is only provided indirectly, via its inclusion into Couchbase Lite for Android and Couchbase Lite for Java.