You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by wo...@apache.org on 2020/01/17 19:53:19 UTC

[couchdb] branch fix/clean-otp-vsn updated (10e7541 -> 0fc6267)

This is an automated email from the ASF dual-hosted git repository.

wohali pushed a change to branch fix/clean-otp-vsn
in repository https://gitbox.apache.org/repos/asf/couchdb.git.


 discard 10e7541  Revert version commits to .app.src files
 discard dadba87  build: stop propagating RC tags into erlang apps
     add b131fd0  dev/run: do not create needless dev/data/ dir
     add 510f267  Use devclean on elixir target for consistency of Makefile (#1785)
     add 36f2e4c  Merge branch 'master' into no-dev-data-dir
     add 9f7724e  Merge pull request #1786 from apache/no-dev-data-dir
     add a2c7f31  Move couch_flags_config tests into its own module
     add fa82105  Fix expected result from test
     add ffd46bb  mock couch_log
     add d90a89d  Merge pull request #1790 from cloudant/move-tests-to-suite
     add ffa443f  Ignore clang compile commands database file
     add 4e66d24  Merge pull request #1797 from apache/ignore-clang-compile-commands-db-file
     add 25e9e77  Filter out empty missing_revs results in mem3_rep
     add 33d4f6d  Format and check all code using python black (#1776)
     add f9354ea  Add Credo to Elixir test suite (#1769)
     add 77eb982  Refactor elixir test suite initialization (#1779)
     add be38d66  Support specifying individual Elixir tests to run
     add 709477d  Add `couch_db:get_design_doc/2`
     add 8077afb  Avoid calls to `fabric:design_docs/1`
     add fcb272e  Fix function_clause error
     add 2ab1e87  Merge pull request #1770 from cloudant/COUCHDB-1384-function-clause-error
     add 594912a  Add moduledoc attribute
     add 445e232  Merge pull request #1802 from van-mronov/moduledoc
     add 3a46fb4  Add elixir helper to restart a node or the whole cluster
     add 5350907  Port delayed_commits test to Elixir
     add b189365  Merge pull request #1796 from cloudant/tests/port-delayed_commits-to-elixir
     add 94eff0d  Support for more than 3 nodes dev cluster
     add ba58d47  Merge pull request #1774 from cloudant/support-more-than-3-nodes
     add 338e21f  Fix haproxy config file location
     add c911f06  Merge pull request #1805 from cloudant/fix-with-haproxy
     add 82c9219  Merge branch 'master' into allow-specifying-individual-elixir-tests
     add 92adefa  Merge pull request #1800 from cloudant/allow-specifying-individual-elixir-tests
     add 11feb2f  Increase timeout on restart in JS/elixir tests to 30s (#1820)
     add f4195a0  Migrate cluster with(out) quorum js tests as elixir tests (#1812)
     add f60f7a1  Suppress credo TODO suggests (#1822)
     add 88dd125  Move fabric streams to a fabric_streams module
     add 632f303  Clean rexi stream workers when coordinator process is killed
     add e97f029  Remove shim couch_replicator_manager module
     add c54bea3  Fix elixir test formatting
     add 90c0a6f  Improve all_docs_test robustness
     add add9fae  Do not automatically fail tests if quorum conditions unmet
     add ea20abc  Merge pull request #1829 from cloudant/elixir-test-improvements
     add cb10e48  Suppress variable exported from 'case' compiler warnings
     add f519b26  Suppress unused variable and type compiler warnings
     add b9b333b  Suppress crypto and random compiler warnings
     add 4cc9565  Suppress unused function compiler warnings
     add f29cdb4  Suppress misc compiler warnings
     add 899b49c  Reduce number of behaviour undefined compiler warnings
     add 4e75964  Suppress export-related compiler warnings
     add 26cee91  Merge pull request #1798 from cloudant/suppress-compiler-warnings
     add 7be0ab8  Remove explicit modules list from .app.src files
     add c347470  Remove obsolete travis files
     add 21359d2  Change minimum supported Erlang version to OTP 19
     add db3b365  Merge pull request #1833 from cloudant/minimum-erlang-otp-19
     add f708c05  happy new year (#1838)
     add d12c22b  Introduce cpse_test_purge_seqs again
     add dc93156  Merge pull request #1831 from apache/intro-cpse_test_purge_seqs
     add c68863a  Update before_doc_update/2 to before_doc_update/3
     add 72b788e  Merge pull request #1808 from apache/before_doc_update
     add 587d674  Fix end_time field in /_replicate response
     add c6b095b  Fix read repair in a mixed cluster environment
     add 38c1ab4  Improve vm.args template comments (#1861)
     add 5269d79  Fix fabric_open_doc_revs
     add 90d5bf6  Support one purge request with more than 100 docid
     add a3f99df  Merge pull request #1865 from apache/purge_request_with_101_docid
     add 1ee35e8  Move Jenkins to use Erlang 19 for initial build step (#1866)
     add 0f833fd  Fix timeout in chttpd_purge_tests
     add 5d219dd  Add PSE API to store opaque properties
     add 24a3698  Improve `couch_db:clustered_db` flexibility
     add 3ff043e  Implement `fabric_util:open_cluster_db`
     add 72eb129  Pass the DB record to index validation functions
     add 7bbe828  Validate design document options more strictly
     add 05678b9  Implement configurable hash functions
     add 25ac408  Implement partitioned dbs
     add 6edb9a5  Implement `couch_db:get_partition_info/2`
     add 3a1dd0a  Implement partitioned views
     add eb1ffcf  Optimize all_docs queries in a single partition
     add dc369e9  Optimize offset/limit for partition queries
     add 47efcbd  Use index names when testing index selection
     add 53d3515  Support partitioned queries in Mango
     add 16e6af4  Add Elixir tests for database partitions
     add aeb1ba4  Use an accumulator when merging revision trees
     add 8d2af71  Enforce partition size limits
     add 6cb0506  Add new /{db}/_sync_shards endpoint (admin-only) (#1811)
     add bfb9810  Fix python2 compatibility for couchup (#1868)
     add c5d9cfe  Add Global timeout for map/reduce queries
     add 33e3625  add default fabric request timeouts
     add 666ae21  Don't crash test on a response without Content-Type
     add 841de8c  Add a test for a doc read with etag
     add 4904e4c  Add ability to feature flag partitioned db's
     add 00ce1c1  default config for partition feature flag
     add a1a1dac  Update to mochiweb 2.19.0
     add feaf3da  Blacklist known bad Erlang releases, fixes #1857 (#1871)
     add 1fdfe46  Make _all_docs and view query limits configurable
     add a1e11ce  Implement customizable chttpd statistics
     add 30d0f7b  Shift to new GH multi-template issue workflow (#1872)
     add 076884f  fix test url to fix test
     add 17f05b7  Update config dependency to 2.1.5
     add edcb372  rename partitions feature to partitioned feature
     add 1353450  restrict _purge to server admin
     add 25838d0  Merge pull request #1877 from apache/restrict-purge-admin
     add f30fca2  Make it possible to override elixir couchdb settings via environmental variables
     add 6d317e1  Fix engine header upgrades
     add aba6633  Merge pull request #1886 from apache/fix-pq-db-header-version
     add 5471694  Compaction: Add snooze_period_ms for finer tuning (#1880)
     add 5be58a6  fix credo and formatting issues of elixir tests
     add 7918fba  Change enviromental variables not to clash with travis
     add a5ead1f  add elixir tests to travis
     add c6cd924  Change elixir test failing on travis
     add 0988616  Add junit formatter
     add f22e71a  format
     add 4127726  add w:3 for lots of docs test (#1893)
     add 9a57335  Import IOQ from Cloudant
     add 20bbfbf  Run each apps test in a separate process
     add 5b2a3f5  increase timeout on test
     add 82162b6  We don't need to verify that erlang:garbage_collect() works
     add 04a8f83  Merge pull request #1889 from apache/import-cloudant-ioq
     add d3618bf  Make from_json_error_cases tests idiomatic
     add 9517b26  Fix from_json_obj_validate crash when provided rev isn't a valid hex
     add fbb5a14  Fix badarg crash on invalid rev for individual doc update
     add 20448c6  Merge pull request #1901 from apache/fix-doc-update-invalid-rev-crash
     add d0ec540  Force mix rebar/hex/deps get on make elixir (#1894)
     add 2eff33f  Import smoosh from Cloudant
     add 815eed9  run formatting check before time-consuming tests
     add 302f9a7  remove elixir tests from 'make check' until they are reliable
     add c54ffcf  Merge pull request #1904 from apache/import-smoosh
     add e702598  fix couchup for python3 (#1905)
     add 7fe8bfb  Add check for repeated `partition` definitions
     add d5ec065  Import ken
     add b46df8c  Merge pull request #1910 from apache/import-cloudant-ken
     add a6c1988  Sync admin password hashes at cluster setup finish
     add e699fe6  Merge pull request #1803 from cloudant/configurable-auth-salt
     add 13bf0eb  Set io_priority for couch_index pids
     add 9b85da8  Merge pull request #1642 from cloudant/91984-set-io_priority-for-couch-index-pids
     add c3d6717  Fix elixir tests and add back to make check (#1918)
     add dbdddb2  Support list for docid when using couch_db:purge_docs/3
     add b7577b2  Merge pull request #1925 from apache/allow-list-for-purge-docid
     add d9d2375  Fix elixir tests on Jenkins (#1931)
     add c4c4fce  Update config dependency to 2.1.6
     add 6d782aa  Merge pull request #1932 from apache/update-config-dep
     add 897e410  Remove compilation warnings
     add 94b9abe  Merge pull request #1933 from cloudant/fix-compilation-warnings
     add a54f420  Send correct 400 for missing partition with _find (#1936)
     add b81ca74  fixes to elixir tests (#1939)
     add ca74d12  Update folsom to support newer erlang
     add c90c453  Merge pull request #1938 from cloudant/update-folsom
     add 13104aa  upgrade ken to 1.0.3
     add a2b88a3  Merge pull request #1941 from apache/upgrade-ken-1.0.3
     add f751dda  Update smoosh to 1.0.1
     add 931d77d  Merge pull request #1942 from cloudant/update-smoosh-1.0.1
     add 6b48a46  Fail make eunit upon eunit app suite failure
     add c39852e  Merge pull request #1951 from apache/fail-make-on-eunit-failure
     add 8d65907  Make PropEr an optional (test) dependency
     add 5765a54  Merge pull request #1955 from apache/optional-proper
     add 92c004b  Warn people to edit both Makefiles. (#1952)
     add d8eec70  Jenkins add attachment test (#1953)
     add 0c7111c  test: port multiple_rows.js to Elixir test suite (#1958)
     add a36ec91  Improve chttpd_socket_buffer_size_test
     add aee2fd9  Add stats in fabric for partition and normal views (#1963)
     add c151a32  Ignore weak ETag part
     add 8ef42f7  Merge pull request #1971 from apache/weak-etag-comparison
     add d98fd88  Added more info for a mango sort error (#1970)
     add f88d35b  Add security item to the RFC template (#1914)
     add 8efe9b2  test: port invalid_docids to Elixir test suite (#1968)
     add 0957f90  Update ioq to 2.1.1
     add 9f924e4  Merge pull request #1981 from cloudant/update/ioq-2.1.1
     add 941578d  Improve elixir test stability
     add cbc0dd4  Merge pull request #1991 from cloudant/improve-elixir-test-stability
     add 9d7a56e  Skip running PropEr's own unit tests
     add 56a9d1b  Use couch_ejson_size for calculation of doc's ejson size
     add 4f31cdc  Reuse pre-calculated external docs' size on compaction
     add 3227e61  Merge pull request #1983 from cloudant/fix-external-docs-size
     add d10b795  Uneven shard copy handling in mem3 and fabric
     add 13db67e  Implement initial shard splitting data copy
     add b7d5b5d  Update internal replicator to handle split shards
     add 9f9a6fc  Shard splitting job implementation
     add bcdd994  Resharding supervisor and job manager
     add a6db7d5  Implement resharding HTTP API
     add 5d19926  Port javascript attachment test suite into elixir (#1999)
     add 52189ee  Port copy doc tests into elixir test suite (#2000)
     add 17bdde4  Promote ibrowse 4.0.1-1
     add 9865932  Merge pull request #2001 from cloudant/promote-ibrowse-4.0.1-1
     add ae261e4  In the resharding API test pick the first live node
     add bb30e98  Fix upgrade clause for mem3_rpc:load_checkpoint/4,5
     add e9fc291  Change _security object for new dbs to admin-only by default
     add 5010b2f  Don't reset_index if read_header fails
     add 91b299d  Merge pull request #2003 from apache/dont-reset-index
     add b1f65df  Expose node name via /_node/_local, closes #2005 (#2006)
     add 3a54280  Allow restricting resharding parameters
     add 85617a7  Increase max number of resharding jobs
     add 3714ff5  Handle database re-creation edge case in internal replicator
     add 762d7a8  Use individual rexi kill messages by default
     add 3c958a9  Fix full ring assertion in fabric stream shard replacements
     add af26397  Jenkins: Add ARM64, drop trusty, improve Jenkinsfile (#2023)
     add a4145c2  Fix epoch mismatch errors (#2027)
     add eee1484  Ignore new subprojects
     add 04c37fc  fix: remove restart handlers for obsolete config settings
     add 57bf82e  feat: move fauxton docroot config to OS env-vars for consistency
     add e2dd274  First public release of Dreyfus
     add 4b90276  Match new couchdb naming convention
     add c729966  properly rename this time
     add d5c5509  Plug into couchdb 2.0 with epi handlers
     add 9c563b5  fix error handling for _search_analyze
     add 0e1f788  Add ejson_body
     add f69a572  Merge pull request #1 from cloudant-labs/50663-add-ejson-body
     add 1cb551a  remove cloudant_util function call
     add 29ba95c  Allow binaries for _search_analyze
     add cee7626  Handle errors when opening an index
     add dd5f000  Merge pull request #3 from cloudant-labs/2-handle-open-errors
     add 80ba863  Use couch_crypto
     add 008051d  Merge pull request #4 from cloudant-labs/52884-use-couch-crypto
     add 574cb44  Update to new couch_epi API
     add 5f11337  Merge pull request #5 from cloudant-labs/simplify_couch_epi
     add d125b71  Add new metric to track the search request time. This metric is different from what we track in clouseau. This basically will track the overall time it took for the search request, where as the one in Clouseau will only track the search latency at the shard level.
     add 95df984  Merge pull request #6 from cloudant-labs/66031-add-metrics-dreyfus-httpd-search
     add dd49ff9  Remove trailing spaces
     add fb8c85f  Make handle_search_req return proper response
     add 6c6d5ab  Merge pull request #7 from cloudant-labs/67924-fix-handlers-response
     add 944389b  Don't crash on invalid ddoc
     add 2356160  Merge pull request #8 from cloudant-labs/69570-fix-invalid-ddoc-crash
     add 4390bb5  Improve search logging
     add a8ea666  Merge pull request #9 from cloudant-labs/75421-improve-search-logging
     add a018d1f  Tolerate open_int failure
     add 9607250  Merge pull request #10 from cloudant-labs/77650-open-int-crash
     add 3c1001d  Fix shard replacement
     add 5fbbe3e  Merge pull request #15 from cloudant-labs/84146_fix_shard_replacement
     add bc2f94b7 Add new end point to get disk size information for search index
     add d838881  Merge pull request #17 from cloudant-labs/87336-add-disk_size-end-point
     add ad3f55a  Remove couch_crypto
     add fb7b680  Merge pull request #20 from cloudant-labs/remove-couch_crypto
     add e29303c  Remove public db record
     add 3f5ba2b  Merge pull request #23 from cloudant-labs/COUCHDB-3288-remove-public-db-record
     add dde3f04  Rename search index directory in place when database is deleted
     add 30b0556  Merge pull request #22 from cloudant-labs/86318-rename-search-indexes-when-dbdeleted
     add 5eef719  Update to use pluggable storage engine APIs
     add df88b1c  Merge pull request #26 from cloudant-labs/COUCHDB-3287-pluggable-storage-engines
     add b9805be  Add ability to black list indexes (#27)
     add a4f3ca3  fix typo to noreply (#29)
     add 2712350  Improve search blacklist
     add 9ab3010  Merge pull request #31 from cloudant-labs/109229-improve-blacklist
     add bf4b2cd  Update to use new purge API
     add 0f1be2f  Merge pull request #14 from cloudant-labs/COUCHDB-3326-clustered-purge
     add 10c1015  use updated_on instead of timestamp_utc in local purge doc
     add 89368b2  Merge pull request #32 from cloudant-labs/COUCHDB-3326-use-updated_on
     add e1730b8  Avoid calls to `fabric:design_docs/1`
     add b755e72  Merge pull request #37 from cloudant-labs/fix-get-minimum-purge-seq
     add 1c18b79  Fix function_clause caused by malformed accumulator
     add 1bdca62  Merge pull request #39 from cloudant-labs/fix-function-clause-load-docs
     add 96877dc  Remove deprecated clauses
     add 092194d  Support partitioned queries
     add 74e246d  Add partition search tests
     add 3893301  Implement separate limits for partitioned queries
     add 0c59190  Merge pull request #34 from cloudant-labs/feature/database-partitions
     add 5c1bb7e  Support search with limit using POST method
     add 0413baa  Merge pull request #40 from cloudant-labs/search-using-limit-with-post
     add 8c7f5f5  Reject multiple conflicting values of `partition`
     add 5b8ecb3  Merge pull request #41 from cloudant-labs/partition-parameters
     add 57ea522  Fixed typo
     add 228ae8a  fix function_clause (#42)
     add 1ba7e98  Always send a binary when calling clouseau_rpc:delete
     add 03d8331  Merge pull request #43 from cloudant-labs/116712-fix-delete
     add 7df7402  Avoid dreyfus_index_manager for _search_disk_size.
     add 33ee6c2  Merge pull request #44 from cloudant-labs/avoid-dreyfus-index-manager-for-disk-size
     add 383c96a  add stats for search
     add 7083d1e  Merge pull request #45 from cloudant-labs/add-pricing-for-pq
     add 75d86c4  Use dedicated search IOQ channel
     add 48edbf3  Add IOQ2 metric for search traffic
     add 2fcfb6b  Merge pull request #46 from cloudant-labs/use-dedicated-search-ioq-channel
     add 996f1cc  adjust metric for io_queue-search
     add 45469b9  Merge pull request #47 from cloudant-labs/adjust-io_queue-search
     add 80e3cd8  Address EPI's startup use of dreyfus_config
     add 6f1b8d3  Add 'src/dreyfus/' from commit '80e3cd8111bda643686d9165ea6afa99d0d33cd4'
     add 8e6fa8b  Add dreyfus.js from cloudant/couchdb@c323f1943
     add b1e0037  Ensure Dreyfus JS code is included in build
     add 1513d48  Add Dreyfus to Erlang release
     add 64eb390  Make mem3_rep:go work when target shards are not yet present in shard map
     add 2650981  Merge branch 'master' into dreyfus-by-default
     add 93275c3  Improve detection of Search subsystem
     add 6f95fb3  Improve error message on Clouseau connection fail
     add 7dbd4d5  Further improve detection of Search system
     add 0d32708  Document config settings related to search system
     add 6e75355  Improve PR template with @kocolosk feedback
     add c517618  Merge branch 'master' into dreyfus-by-default
     add cbf8804  Merge pull request #2037 from kocolosk/dreyfus-by-default
     add 915a6e4  Update ioq to 2.1.2
     add e923840  Merge pull request #2062 from cloudant/update-ioq-2.1.2
     add 9d143ba  Add erlang 22 support
     add 85dc624  Fix max_document_id_length value in default.ini
     add 9d09878  Add missing purge settings to default.ini
     add 3505281  Make sure that fsync errors are raised
     add a6c0da1  Increase timeouts on two slow btree tests
     add ec2a963  Fix flaky mem3_sync_event_listener EUnit test
     add 29d484e  Fix EUnit timeouts (#2087)
     add f33378b  Fix credo complains for dreyfus
     add d584962  Minimal ExUnit setup
     add cf60cff  Move eunit tests into test/eunit directory
     add d0ccfa2  Add chained setups
     add d427f35  Unify runners for unit and integration tests
     add 25ad74a  Update .travis.yml
     add f37e1e7  Merge pull request #2039 from cloudant/exunit-simplified
     add 220462a  Retry EUnit tests on failure
     add e67903b  Fix mem3_sync_event_listener EUnit test
     add 0a5b11f  Remove local replication endpoints in CouchDB 3.x
     add 3e9b3fe  Switch to only using elixir replication integration test
     add d5ae1bf  Fix bash-ism in EUnit retry logic
     add 98a702c  Fix cpse_test_purge_replication eunit test
     add 41e3461  Fix copy/paste errors in platform naming
     add c4125a8  Refactor using sequential stages, in workspace
     add 6b410aa  Capture EUnit and ExUnit test results for Jenkins
     add 7f14495  Avoid shebang length limits on jenkins
     add 2b3e2a0  Configure environment for Elixir on ARM
     add 0bdf74d  Add timeout for couch_db_split_tests
     add aab0c51  Move couch startup to a fixture
     add 608caaf  Increase default HTTP timeouts
     add dcae3e7  Extend timeout for mrview_purge_docs_fabric
     add 721f4fd  fixup for dreyfus_fabric_cleanup:go/1
     add 07600f7  Merge pull request #2109 from apache/fixup-cleanup-go
     add 36fd9da  Fix replication rescheduling Running < MaxJobs corner case
     add 1db0294  Support map childspecs in couch_epi supervisor's children replacement
     add 5dcc162  Merge pull request #2118 from apache/epi-support-map-childspec
     add 69d15cd  Refactor fabric:cleanup_index_files
     add 5a6c944  Merge pull request #2101 from cloudant/refactor-clean_index_files
     add f2724d3  Do not fail 'dev/run' on connection close
     add 18bda46  Merge pull request #2105 from cloudant/improve-admin-part-setup
     add 119ca03  Call :meck.unload() automatically after every test
     add 8fa6ca1  Merge pull request #2122 from cloudant/cleanup-after-meck
     add 54fe952  Ensure EUnit inherits appropriate env vars
     add e17f933  Don't try to publish trusty packages
     add 964afcd  Extend timeouts for couch_bt_engine_upgrade_tests
     add 9ca6ab2  Extend timeouts for chttpd_db_test suite
     add ae62936  Extend timeouts for chttpd_view_test suite
     add 08075fd  Give resharding more time to complete
     add 8b613bb  Bump default timeout for retry_until
     add 6927585  Extend timeout on shard splitting test
     add adc0315  Refactor test to keep setup/teardown out of timer
     add 29b3569  Update httpotion to 3.1.3
     add ac4d4fc  Increase default HTTP timeouts
     add 24e9013  Merge pull request #2126 from cloudant/update-httpotion
     add e5baa1f  Fix _scheduler/docs response for local replication endpoints
     add 258f89e  Send a 500, not a 400, for unknown search errors
     add 2affa90  Merge pull request #2137 from apache/mango-search-error-400-500
     add e9e8ae5  Keep database property after overwriting shard map
     add 4f3e4d0  Merge pull request #2138 from apache/keep-dbprop-after-rewriting-shardmap
     add ea5661d  Fix badmatch in fabric_view_all_docs
     add 063d939  Merge pull request #2153 from apache/fix-all-docs-timeout
     add 59067d5  Skipping CompactTest due to compaction failure
     add 4a15a4c  Merge pull request #2157 from sarveshtamba/master
     add 8a06268  feat: less scary error message
     add b79f197  fixup fabric:cleanup_index_files
     add 7ada304  Merge pull request #2178 from apache/fabric-cleanup-view-files
     add dd5ac13  Support `--extra_args` parameter in `dev/run`
     add e746d90  Merge pull request #2183 from cloudant/add-extra-arguments-to-beam
     add 196532f  Improve credential stripping for replication document reads
     add 3302ffa  Fix typo in couch_mrview comment
     add 6c35acd  Merge pull request #2189 from jamieluckett/master
     add 9da6c7a  Remove deprecated dbinfo fields (#2163)
     add aa311b8  feat: do not run stats aggregations on an interval
     add a5b30e7  Bump to 3.0.0
     add 7196a3c  Remove old multi-query path (#2173)
     add 77f64b4  Include search in the list of advertised features (#2206)
     add dc054e7  Remove delayed commits option
     add 92e00c7  Update fauxton to version 1.1.20
     add 9874762  Merge pull request #2217 from apache/fauxton-1.1.20
     add f4998fb  Update default config settings
     add bd8fe96  Ping clouseau directly
     add 75e4736  Merge pull request #2229 from apache/ping-clouseau-directly
     add 84680cf  Merge branch 'master' into update-couchdb-defaults
     add b5c179b  Merge pull request #2228 from apache/update-couchdb-defaults
     add abe586e  Return headers from _changes feed when there are no changes
     add 6382374  Merge pull request #2240 from cloudant/issue/985-continious-feed-blocking
     add 3c55b95  Remove "externals"
     add 201d593  Update fauxton to version 1.2.0 (#2247)
     add 2f23426  Merge branch 'master' into remove-externals
     add 51cb66e  Merge pull request #2248 from apache/remove-externals
     add 4c66e84  Update Fauxton to 1.2.1
     add e5b5906  Merge pull request #2250 from apache/fauxton-1.2.1
     add 28edf6a  Stop creating node local _replicator db
     add 5a27256  Update Fauxton to 1.2.2
     add 1dd00d6  Merge pull request #2257 from apache/fauxton-1.2.2
     add 0a85b75  export get_servers_from_env/1 for ken
     add 78a7ff2  Merge pull request #2260 from apache/ken-query-servers
     add 110d968  Update ken to 1.0.5
     add a8891d4  Merge pull request #2262 from apache/ken-1.0.5
     add 1f22451  update ken to 1.0.6
     add ae29ffc  Merge pull request #2266 from apache/ken-1.0.6
     add 79cfc1d  Avoid churning replication jobs if there is enough room to run pending jobs
     add a47f0fa  Make changes feed return bad request for invalid heartbeat values
     add be2364d  Merge pull request #2270 from bessbd/changes-feed-input-validation
     add fc6cc98  Remove old clause which is no longer used
     add b99d6e0  Merge pull request #2276 from cloudant/remove-inets-client-remains
     add 053d494  Implement separate source and target replication proxies
     add 692f602  Include proxy host and port in connection pool key
     add 30d4e95  Pass timeout as an error to callback in fabric_view_all_docs
     add 5e3e50f  Merge pull request #2287 from apache/fix-all_docs-timeout-error
     add 18db801  Show source and target proxies in _scheduler/docs output
     add b9aa4e8  Do not mark replication jobs as failed if doc processor crashes
     add 367d17a  close LRU by database path
     add d60551d  Merge pull request #2130 from apache/close-lru
     add ec23c34  Return detailed replication stats for running and pending jobs
     add bd1e8a6  Send only as many bytes as requested by Range hdr (#2310)
     add 081fc1a  Set autoupdate:false during update=false mango test (#2314)
     add 99b9cc3  feat: use more efficient erlang:send_after() function
     add a8f3ad9  feat: simplify code
     add 5ec35a9  Don't require auth on login attempts (#2321)
     add 1bdddbc  Revert "Close LRU by database path for deleted database/index"
     add 0155bd8  Merge pull request #2325 from apache/revert-2130-close-lru
     add cd85523  Initial import
     add 3af4e6c  Update API for handle_config_terminate/3
     add d85183d  Merge pull request #1 from cloudant/update_handle_config_terminate
     add 55bf6a3  Avoid using `erlang:now/0`
     add 8553ee6  Merge pull request #2 from cloudant/fix-compilation-warnings
     add dddaa3c  Support scheduling compactions during time windows
     add 78eba84  Add unit tests for scheduling window logic
     add 37c8ace  Add 'src/smoosh/' from commit '78eba8444c0ba50994c7b686251f3a7c21dc92ce'
     add 02b9f25  Remove smoosh as dependency and add as subdir
     add 8d9f80d  Merge pull request #2326 from apache/smoosh-in-tree
     add 390b919  Import ken
     add 50682f9  Fix compilation errors and use of macro
     add 004881a  Merge pull request #4 from apache/has_have_confusion
     add 7095e0d  Fix compiler warnings
     add 3e47130  Merge pull request #1 from cloudant/fix-compilation-warnings
     add 9837a29  and the -else clauses
     add 2cafa80  Merge pull request #5 from apache/else
     add 950f27c  Get the list of allowed languages from the environment
     add 5161e54  Merge pull request #6 from apache/ken-query-servers
     add 52fbbdf  Always include 'query' as an allowed language
     add 846783b  Merge pull request #7 from apache/ken-query-servers-2
     add c800e4a  Detect dreyfus/hastings correctly
     add 506606f  Merge pull request #8 from apache/ken-dreyfus-hastings
     add 752e8c4  Add 'src/ken/' from commit '506606ff2b29f72fcc9e875f1b9a33c258ad2af1'
     add 56fb786  Remove ken as dependency and add as subdir
     add 4116160  Merge pull request #2328 from apache/ken-in-tree
     add 6d432a9  Return 400 error for missing partition key
     add bcf6881  Update usage of couch_hash:md5_hash shim
     add 2d734f3  Merge pull request #2337 from apache/couch_hash_update
     add 971ae58  Move _node handler to new module
     add 3ccf8d1  Remove global _system handler
     add 312cdee  Move get_stats/0
     add 1f0e8cf  extract get_httpd_handlers function
     add bbd8991  add handle_request/1
     add 12e8878  allow calls to get_httpd_handlers from other applications
     add 65b5076  Mangle request before calling handle_request
     add f8b1b4a  proxy the response from the other node
     add aab05b6  disable port 5986 by default
     add c79d853  enable port 5986 in local.ini for the test suites
     add 7f66662  fix (unrelated, right, am I crazy?) proxyauth.js test
     add ba0c203  install requests module within venv
     add 08a9a5f  Merge pull request #2336 from apache/1523-bye-bye-5986-rnewson-4
     add d3ff408  Remove seq, kseq and log trees from updater, compactor and indexer
     add 2c8966f  Remove view changes interface functions, tests and end-point
     add 6a58d8c  Remove view_changes functionality from couch_changes side
     add a5a0c8d  Modify changes accumulator record
     add ac74330  Remove fast_view filter from fabric
     add 855afac  Remove all view_changes functionality from mrview utils
     add e1c66f2  Modify all mrview records and add according migration functionality
     add 87edbae  Merge pull request #2324 from apache/2167-no-view-changes
     add 4815eeb  Allow all params to be passed via body for POST view
     add 8ac108a  Allow all params to be passed via body for POST _all_docs
     add ff0da20  Add COUCHDB_FAUXTON_DOCROOT comment to couchdb.cmd
     add 71d673f  Remove invalid query server def in local.ini
     add 57fa67f  Port couch_compress_tests to Elixir
     add 4dbd7c1  Big endian support for couch_compress tests
     add 27d4458  Merge pull request #2346 from willholley/couch_compress_tests
     add 63c9da6  Fix timeout case clause in fabric_db_info
     add 897085c  Merge pull request #2351 from apache/2530-all-dbs-timeout
     add cda9430  Fix multidb changes test
     add a66998e  Make sure we fetch test dependencies
     add 1953c33  Integrate excoverals into test stack
     add 0ef71cb  Merge pull request #2353 from cloudant/exunit-cover
     add e37ebde  Enable port 5986 for test suites only
     add ee05af8  Merge pull request #2356 from apache/5986-tests-only
     add ff17772  Switch to UTC
     add c2ff5b7  Suppress exunit compiler warning
     add 18b97f7  Merge pull request #2361 from cloudant/smoosh-utc-fix
     add 5c0cf2e  Block on index available in tests
     add 789ffbc  Merge pull request #2357 from apache/mango_test_fixes
     add 8a914dd  Sanitize `ERL_FLAGS` in remsh
     add df5b311  Remsh: attempt to auto-locate Erlang cookie
     add 4a88f3a  Merge pull request #2352 from apache/remsh
     add 3594f2f  Update warning/error messages for Erlang versions
     add 831f78e  Switch make elixir to use n = 1
     add e384221  Fix exunit compiler warnings
     add 2f75540  Merge pull request #2355 from cloudant/exunit-compiler-warnings
     add de50b07  Disable ken auto-building of this design doc
     add 850a993  Fix use after free of ICU collators
     add 98c4745  Allow override of `-couch_ini` parameter
     add c5d24d8  Warn about orphan .git directories
     add 26221fa  Merge pull request #2359 from cloudant/git-dir-warning
     add 534919d  Remove pause after Erlang version warning
     add 2b33dfb  All databases now admin-only by default
     add a9ce49d  Merge pull request #2339 from apache/admin-only-by-default
     add 0cb01bf  Add show-test-results.py script
     add cef0fa0  Log test failures on Travis
     add 2336964  Add SpiderMonkey version option to configure
     add c38f2c6  Enable multi-version SpiderMonkey support
     add 15a3c17  Import SpiderMonkey 60 based CouchJS sources
     add 227f1d6  Allow configuring the use of SpiderMonkey 60
     add ec416c3  Add Javascript to support Spidermonkey 60
     add 5c8e882  Merge pull request #2345 from apache/sm60-davisp
     add cda1801  Switch replicator "info" error message to be an object
     add 27f7fb1  Silence already started message for crypto
     add 650ceb0  Speedup JavaScript tests
     add 451e720  Disable JavaScript tests ported to Elixir
     add 651e515  Cleanup eunit: couch_peruser_test
     add f13cc35  Speedup eunit: couch_peruser_test
     add 24dc1da  Speedup eunit: couch_multidb_changes
     add 47ea4c9  Speedup eunit: fabric_doc_open_revs
     add 4543275  Speedup eunit: couchdb_file_compression_tests
     add 584dff3  Speedup eunit: chttpd_db_bulk_get_multipart_test
     add 6caca79  Speedup eunit: chttpd_db_bulk_get_test
     add 97c2e85  Speedup eunit: couch_replicator_doc_processor
     add eee00b3  Speedup eunit: chttpd_endpoints_tests
     add 3880c0b  Speedup eunit: couch_replicator_compact_tests
     add dd50fa6  Speedup eunit: chttpd_view
     add 20f6371  Speedup eunit: chttpd_prefer_header_test
     add 009c950  Speedup eunit: chttpd_xframe_test
     add e6b8569  Speedup eunit: couch_db
     add 3a03406  Speedup eunit: couch_httpd
     add e038de4  Speedup eunit: couch_server
     add 8169a33  Speedup eunit: couch_file_tests
     add a252232  Speedup eunit: couch_flags_config_tests
     add fb21409  Speedup eunit: couch_uuids_tests
     add edc2913  Speedup eunit: couchdb_mrview_tests
     add 006b706  Speedup eunit: couch_index
     add 28fd3cd  Speedup eunit: couch_index_compaction_tests
     add cde7149  Speedup eunit: couch_mrview_compactor
     add 23d6739  Speedup eunit: couch_mrview_purge_docs_fabric_tests
     add dc4887e  Speedup eunit: couch_replicator
     add b00ea30  Speedup eunit: couch_replicator_auth_session
     add 40b42af  Speedup eunit: couch_replicator_clustering
     add d23ddc5  Speedup eunit: couch_replicator_scheduler
     add f6654da  Speedup eunit: ddoc_cache_no_cache_test
     add 5ef6264  Speedup eunit: fabric_db_create
     add de41a57  Speedup eunit: fabric_doc_open
     add b217fb4  Speedup eunit: fabric_doc_purge
     add 8fba524  Speedup eunit: fabric_doc_update
     add 50485b3  Speedup eunit: mango_idx_test
     add 47bb9d7  Speedup eunit: mem3_rep
     add 10e9036  Speedup eunit: mem3_shards
     add 2f6de6d  Speedup eunit: mem3_sync_event_listener
     add 19c67e1  Speedup eunit: smoosh_server
     add b9a8281  Fix double "make clean"
     add ab5938d  test: add failing test for _access preparation commit
     add 04aef08  feat: allow special document member _access
     add 8e1165f  feat: add "access-ready" to feature flags in welcome message
     add 0cdd5f0  Refuse startup with no server admin set up (#2389)
     add 571274e  Fix some typos in the bug report issue template (#2233)
     add ee47f93  Port erlang views tests into elixir test suite (#2237)
     add d5568d1  Fixes #2151 - start CouchDB from symlinks (#2152)
     add 3f1f711  Autoupdate false test (#2311)
     add c30ac69  Multi/elixir 3 (#2394)
     add 9eeebab  removed useless configfile section (#1967)
     add 3fc054d  Feature/user db security obj readonly (#2395)
     add 9dedf6a  Blacklist all 21.x releases older than 21.2.3 (#2056)
     add 43fff60  Lock shard splitting targets during the initial copy phase
     add 5ef1880  feat: add metric counter for unindexed mango queries. Closes #1913 (#2390)
     add 3f64ef2  Fix/1977 (#2296)
     add c2ff7da  a systemd-journald compatible log output on stderr (#1912)
     add 0449057  Feat/1752/setup UUID and auth secret (#2398)
     add 36cf893  Simplfiy interleaved message couch_server test
     add 009e4d5  Avoid file_server_2 for existance tests
     add 10670fb  Reduce logging calls in couch_server
     add 6cbe173  Track db open times in the async_open pid
     add b02599e  Move more work out of couch_server's main loop
     add a595401  Set a high priority on couch_server
     add 3e57451  feat: add read-only _metrics role for _stats and _system endpoints (#2392)
     add 05b5d06  Fix SM60 build on Mac (#2401)
     add c8a5757  bump hqueue dep for Windows build
     add 6293a8b  Initial commit
     add 04aea73  new IOQ api
     add c7f9ad1  Fallback to direct I/O if ioq is not running
     add 40d157f  Update state on config changes
     add c552c66  Allow to customize concurrency value
     add 2175035  Handle {gen_event_EXIT,{config_listener,ioq},shutdown} message
     add ad60d32  Update config_listener behaviuor
     add 0ffa7cd  Don't restart event handler on termination
     add c7c75eb  Merge remote-tracking branch 'iilyak/2561-make-config-API-consistent'
     add bdcfe6a  Update handle_config_terminate API
     add 126a849  Fix a typo in a child name
     add ba99ec7  Merge remote branch 'cloudant:3102-fix-config_subscription'
     add 5f5375a  Remove unused code
     add 1d2b149  Merge remote branch 'cloudant:remove-unused-config-subscriber'
     add 345804c  Use couch_rand compatibility module
     add 04bebb3  Merge branch 'use-couch-rand-module'
     add e641a74  Enable users to bypass IOQ for certain IO classes
     add 53d3d8f  Add 'src/ioq/' from commit 'e641a740978447f0b29785580e46d2e30e822001'
     add 2ed9a6c  Configure IOQ defaults
     add 7c12f14  Remove ioq/hqueue dependencies, add ioq as subdir
     add 7b09892  Merge pull request #2408 from apache/ioq-in-tree
     add 0c33ed1  Set `couchTests.elixir = true` to skip ported tests
     add f4a7c24  Remove allowance for unnamed_error
     add 1169c44  Match the OOM beahvior of 1.8.5
     add 1af17e0  Rework CI setup (#2367)
     add c6459fa  Jenkins: Use 'docker' label for dockerised builds (#2418)
     add 2e4f9d3  Set the session correctly
     add 102bcf4  feat: remove couchup (#2399)
     add dbdf195  Remove unused batching code from replicator (#2419)
     add 08d6538  Make the rexi:stream2 interface unacked message limit configurable (#2360)
     add 28dbf7e  Bypass authentication check for /_up (#2411)
     add d6f55ab  Halt on no admin to avoid crash dump (#2417)
     add b54796f  Uncomment COUCHDB_FAUXTON_DOCROOT for couchdb.cmd (#2416)
     add e850895  Jenkins: update binary platform matrix (#2422)
     add 75b6838  Fix missing mango execution stats (part 1)
     add 55ef9f1  Fix missing mango execution stats (part 2)
     add 2dae25e  Log the exit code of couchjs
     add c4d4590  Debug design_docs.js failure
     add 8e89688  fix(#2143): allow env var overrides for js query server config (#2393)
     add fe12bd8  Fix chttpd_purge_tests.erl
     add 628e757  Address flaky test failure on t_invalid_view/1
     add 9fd9d15  Fix missing parentheses in couchdb.in
     add 8dd8988  Add a JUnit report to JavaScript tests
     add b66f6b4  Include JavaScript test results in report
     add 129183b  Generate test results on build failures
     add 91654ae  Include test reports when uploading logs
     add 2f9501a  Prevent the elision of `jenkins` in log URLs
     add 275e10c  Include JavaScript JUnit reports in Jenkins
     add e23f3ef  Use separate requests to write design when replicating
     add 508d149  Remove EUnit retries on failure
     add 24201a3  Remove debug logging from test/javascript/run
     add dd1b281  When shard splitting make sure to reset the targets before any retries
     add 8d92f21  Reset a view shard if the signature is wrong
     add c8a75fa  Debug mem3 eunit error
     add e10498f  Merge pull request #2438 from apache/reset-corrupt-view-index
     add 73d1e3c  Happy New Year 2020! (#2443)
     add efb374a  Improve replicator error reporting
     add de9c683  Eliminate multiple compiler warnings
     add 3593b5a  Disable JIT compiler on SpiderMonkey 60
     add 660889d  Enable arm64v8 builds on Jenkins (#2436)
     add 0a20de6  Properly account for replication stats when splitting bulk docs batches
     add 3573dcc  Preserve replication job stats when jobs are re-created
     add a27713c  mochiweb v2.20
     add d51ace1  Add SameSite support to auth cookie
     add 34bace7  More way to detect presence of hastings for Ken
     add 5b15c14  Merge pull request #2450 from apache/couchdb-ken-hastings
     add 75e3acb  Fix fabric worker failures for partition requests
     add d7188ba  Debug mem3_sync_event_listener flakiness
     add 355803e  Explicitly disallow SM60 on aarch64
     add 018ec6b  fix empty queries (#1783)
     add f86747f  Refactor Mango warning generation
     add b5fe3d6  Add mango.query_invalid_index counter
     add 5d55e28  Warn on mango index scan
     add 1cacc76  Instrument Mango execution stats
     add 39c2b97  Add a few missing settings to the default.ini file
     add 38050b3  build: stop propagating RC tags into erlang apps
     add 0fc6267  Revert version commits to .app.src files

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (10e7541)
            \
             N -- N -- N   refs/heads/fix/clean-otp-vsn (0fc6267)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .credo.exs                                         |  173 +
 .formatter.exs                                     |    9 +
 .github/ISSUE_TEMPLATE.md                          |   32 -
 .github/ISSUE_TEMPLATE/bug_report.md               |   36 +
 .github/ISSUE_TEMPLATE/enhancement.md              |   27 +
 .github/ISSUE_TEMPLATE/rfc.md                      |   85 +
 .github/PULL_REQUEST_TEMPLATE.md                   |    7 +-
 .gitignore                                         |   33 +-
 .travis.yml                                        |   79 -
 INSTALL.Unix.md                                    |    5 +-
 Jenkinsfile                                        |  467 --
 LICENSE                                            |   57 +-
 Makefile                                           |  154 +-
 Makefile.win                                       |   91 +-
 NOTICE                                             |   10 +-
 README.rst                                         |   15 +-
 build-aux/Jenkinsfile.full                         |  680 ++
 build-aux/Jenkinsfile.pr                           |  147 +
 build-aux/README.Jenkins                           |  149 +
 build-aux/logfile-uploader.py                      |  107 +-
 build-aux/show-test-results.py                     |  412 ++
 config/config.exs                                  |   30 +
 config/dev.exs                                     |    1 +
 config/integration.exs                             |   12 +
 config/prod.exs                                    |    1 +
 config/test.exs                                    |   12 +
 configure                                          |   46 +
 configure.ps1                                      |    8 +-
 dev/pbkdf2.py                                      |  103 +-
 dev/run                                            |  635 +-
 mix.exs                                            |  138 +
 mix.lock                                           |   18 +
 rebar.config.script                                |  125 +-
 rel/apps/couch_epi.config                          |    1 +
 rel/files/couchdb.cmd.in                           |    5 +-
 rel/files/couchdb.in                               |   19 +-
 rel/files/eunit.ini                                |    1 +
 rel/haproxy.cfg                                    |    4 +-
 rel/overlay/bin/couchup                            |  508 --
 rel/overlay/bin/remsh                              |   30 +-
 rel/overlay/etc/default.ini                        |  262 +-
 rel/overlay/etc/local.ini                          |    3 -
 rel/overlay/etc/vm.args                            |   15 +-
 rel/reltool.config                                 |    8 +-
 share/server/60/escodegen.js                       |    1 +
 share/server/60/esprima.js                         | 6711 ++++++++++++++++++++
 share/server/60/rewrite_fun.js                     |   56 +
 share/server/dreyfus.js                            |   62 +
 share/server/loop.js                               |    2 +
 .../couch_js/utf8.h => share/server/rewrite_fun.js |   15 +-
 share/server/util.js                               |    5 +-
 share/server/views.js                              |    4 +-
 src/chttpd/.travis.yml                             |   23 -
 src/chttpd/src/chttpd.app.src                      |   13 -
 src/chttpd/src/chttpd.erl                          |   57 +-
 src/chttpd/src/chttpd_auth.erl                     |    3 +
 src/chttpd/src/chttpd_auth_cache.erl               |    3 +
 src/chttpd/src/chttpd_auth_request.erl             |   22 +
 src/chttpd/src/chttpd_db.erl                       |  376 +-
 src/chttpd/src/chttpd_external.erl                 |   36 -
 src/chttpd/src/chttpd_httpd_handlers.erl           |    3 +-
 src/chttpd/src/chttpd_misc.erl                     |  239 +-
 src/chttpd/src/chttpd_node.erl                     |  272 +
 src/chttpd/src/chttpd_show.erl                     |   21 +-
 src/chttpd/src/chttpd_stats.erl                    |  107 +
 src/chttpd/src/chttpd_sup.erl                      |    2 +-
 src/chttpd/src/chttpd_view.erl                     |   93 +-
 src/chttpd/test/{ => eunit}/chttpd_cors_test.erl   |    0
 src/chttpd/test/{ => eunit}/chttpd_csp_tests.erl   |    0
 .../chttpd_db_attachment_size_tests.erl            |    0
 .../chttpd_db_bulk_get_multipart_test.erl          |   94 +-
 .../test/{ => eunit}/chttpd_db_bulk_get_test.erl   |   78 +-
 .../test/{ => eunit}/chttpd_db_doc_size_tests.erl  |    0
 src/chttpd/test/{ => eunit}/chttpd_db_test.erl     |  147 +-
 .../test/{ => eunit}/chttpd_dbs_info_test.erl      |    0
 .../test/{ => eunit}/chttpd_error_info_tests.erl   |    0
 .../test/{ => eunit}/chttpd_handlers_tests.erl     |    0
 .../{ => eunit}/chttpd_open_revs_error_test.erl    |    0
 .../test/{ => eunit}/chttpd_plugin_tests.erl       |    0
 .../test/{ => eunit}/chttpd_prefer_header_test.erl |   47 +-
 src/chttpd/test/{ => eunit}/chttpd_purge_tests.erl |   38 +-
 .../test/{ => eunit}/chttpd_security_tests.erl     |  201 +-
 .../test/eunit/chttpd_socket_buffer_size_test.erl  |  127 +
 src/chttpd/test/{ => eunit}/chttpd_view_test.erl   |   13 +-
 .../test/{ => eunit}/chttpd_welcome_test.erl       |    0
 src/chttpd/test/{ => eunit}/chttpd_xframe_test.erl |   29 +-
 src/couch/.gitignore                               |    1 +
 src/couch/.travis.yml                              |   23 -
 src/couch/include/couch_db.hrl                     |    1 +
 src/couch/include/couch_eunit.hrl                  |    2 +-
 src/couch/include/couch_js_functions.hrl           |   12 +-
 .../priv/couch_ejson_compare/couch_ejson_compare.c |   10 +-
 src/couch/priv/couch_js/{ => 1.8.5}/help.h         |    0
 src/couch/priv/couch_js/{ => 1.8.5}/http.c         |    0
 src/couch/priv/couch_js/{ => 1.8.5}/http.h         |    0
 src/couch/priv/couch_js/{ => 1.8.5}/main.c         |    0
 src/couch/priv/couch_js/{ => 1.8.5}/utf8.c         |    0
 src/couch/priv/couch_js/{ => 1.8.5}/utf8.h         |    0
 src/couch/priv/couch_js/{ => 1.8.5}/util.c         |    0
 src/couch/priv/couch_js/{ => 1.8.5}/util.h         |    0
 src/couch/priv/couch_js/{ => 60}/help.h            |    0
 src/couch/priv/couch_js/{http.c => 60/http.cpp}    |  312 +-
 src/couch/priv/couch_js/{ => 60}/http.h            |   12 +-
 src/couch/priv/couch_js/60/main.cpp                |  495 ++
 src/couch/priv/couch_js/{utf8.c => 60/utf8.cpp}    |   94 +-
 src/couch/priv/couch_js/{ => 60}/utf8.h            |    2 +-
 src/couch/priv/couch_js/{util.c => 60/util.cpp}    |  151 +-
 src/couch/priv/couch_js/{ => 60}/util.h            |   13 +-
 src/couch/priv/stats_descriptions.cfg              |   80 +
 src/couch/rebar.config.script                      |   96 +-
 src/couch/src/couch.app.src                        |    7 +-
 src/couch/src/couch.erl                            |    6 +-
 src/couch/src/couch_bt_engine.erl                  |  150 +-
 src/couch/src/couch_bt_engine.hrl                  |    3 +-
 src/couch/src/couch_bt_engine_compactor.erl        |   20 +-
 src/couch/src/couch_bt_engine_header.erl           |   55 +-
 src/couch/src/couch_btree.erl                      |   13 +-
 src/couch/src/couch_changes.erl                    |  312 +-
 src/couch/src/couch_compaction_daemon.erl          |  600 --
 src/couch/src/couch_db.erl                         |  270 +-
 src/couch/src/couch_db_engine.erl                  |   82 +
 src/couch/src/couch_db_int.hrl                     |    4 +-
 src/couch/src/couch_db_plugin.erl                  |   12 +-
 src/couch/src/couch_db_split.erl                   |  503 ++
 src/couch/src/couch_db_updater.erl                 |  213 +-
 src/couch/src/couch_debug.erl                      |   22 +-
 src/couch/src/couch_doc.erl                        |   26 +-
 src/couch/src/couch_ejson_compare.erl              |    4 +
 src/couch/src/couch_external_manager.erl           |  120 -
 src/couch/src/couch_external_server.erl            |   90 -
 src/couch/src/couch_file.erl                       |   29 +-
 src/couch/src/couch_flags_config.erl               |   96 +-
 src/couch/src/couch_httpd.erl                      |  119 +-
 src/couch/src/couch_httpd_auth.erl                 |   21 +-
 src/couch/src/couch_httpd_db.erl                   |   62 +-
 src/couch/src/couch_httpd_external.erl             |   34 -
 src/couch/src/couch_multidb_changes.erl            |  146 +-
 src/couch/src/couch_partition.erl                  |  164 +
 src/couch/src/couch_proc_manager.erl               |    3 +-
 src/couch/src/couch_rand.erl                       |   30 -
 src/couch/src/couch_secondary_sup.erl              |   16 +-
 src/couch/src/couch_server.erl                     |  328 +-
 src/couch/src/couch_stream.erl                     |    2 +-
 src/couch/src/couch_sup.erl                        |   30 +
 src/couch/src/couch_users_db.erl                   |    4 +-
 src/couch/src/couch_util.erl                       |   29 +-
 src/couch/src/couch_uuids.erl                      |    2 +-
 src/couch/src/test_util.erl                        |   19 +
 src/couch/test/chttpd_endpoints_tests.erl          |  184 -
 .../couch_bt_engine_partition_downgrade_tests.erl  |   86 -
 src/couch/test/couch_compress_tests.erl            |   85 -
 src/couch/test/couch_uuids_tests.erl               |  155 -
 src/couch/test/couchdb_compaction_daemon_tests.erl |  314 -
 src/couch/test/eunit/chttpd_endpoints_tests.erl    |  103 +
 .../test/{ => eunit}/couch_auth_cache_tests.erl    |    9 -
 src/couch/test/{ => eunit}/couch_base32_tests.erl  |    0
 .../couch_bt_engine_compactor_tests.erl            |    3 +-
 .../test/{ => eunit}/couch_bt_engine_tests.erl     |    0
 .../{ => eunit}/couch_bt_engine_upgrade_tests.erl  |   85 +-
 src/couch/test/{ => eunit}/couch_btree_tests.erl   |    9 +-
 src/couch/test/{ => eunit}/couch_changes_tests.erl |  215 +-
 src/couch/test/{ => eunit}/couch_db_doc_tests.erl  |   31 +-
 src/couch/test/{ => eunit}/couch_db_mpr_tests.erl  |    0
 .../test/{ => eunit}/couch_db_plugin_tests.erl     |   17 +-
 .../test/eunit/couch_db_props_upgrade_tests.erl    |   83 +
 src/couch/test/eunit/couch_db_split_tests.erl      |  331 +
 src/couch/test/{ => eunit}/couch_db_tests.erl      |   29 +-
 .../test/{ => eunit}/couch_doc_json_tests.erl      |   24 +-
 src/couch/test/{ => eunit}/couch_doc_tests.erl     |    0
 .../test/{ => eunit}/couch_ejson_size_tests.erl    |    0
 src/couch/test/{ => eunit}/couch_etag_tests.erl    |    0
 src/couch/test/{ => eunit}/couch_file_tests.erl    |  199 +-
 src/couch/test/eunit/couch_flags_config_tests.erl  |  119 +
 src/couch/test/{ => eunit}/couch_flags_tests.erl   |   22 +-
 src/couch/test/{ => eunit}/couch_hotp_tests.erl    |    0
 src/couch/test/eunit/couch_index_tests.erl         |  232 +
 src/couch/test/eunit/couch_js_tests.erl            |   45 +
 .../test/{ => eunit}/couch_key_tree_prop_tests.erl |    1 -
 .../test/{ => eunit}/couch_key_tree_tests.erl      |    0
 .../test/{ => eunit}/couch_passwords_tests.erl     |    2 +-
 .../test/{ => eunit}/couch_query_servers_tests.erl |    0
 src/couch/test/{ => eunit}/couch_server_tests.erl  |   80 +-
 src/couch/test/{ => eunit}/couch_stream_tests.erl  |    0
 .../test/{ => eunit}/couch_task_status_tests.erl   |    0
 src/couch/test/{ => eunit}/couch_totp_tests.erl    |    0
 src/couch/test/{ => eunit}/couch_util_tests.erl    |    2 +-
 src/couch/test/eunit/couch_uuids_tests.erl         |  125 +
 .../test/{ => eunit}/couch_work_queue_tests.erl    |    0
 .../test/{ => eunit}/couchdb_attachments_tests.erl |    0
 src/couch/test/{ => eunit}/couchdb_auth_tests.erl  |   21 +-
 .../{ => eunit}/couchdb_cookie_domain_tests.erl    |    0
 src/couch/test/{ => eunit}/couchdb_cors_tests.erl  |    0
 src/couch/test/{ => eunit}/couchdb_db_tests.erl    |    0
 .../test/{ => eunit}/couchdb_design_doc_tests.erl  |    1 -
 .../{ => eunit}/couchdb_file_compression_tests.erl |  124 +-
 .../{ => eunit}/couchdb_location_header_tests.erl  |    0
 .../test/{ => eunit}/couchdb_mrview_cors_tests.erl |    0
 .../test/{ => eunit}/couchdb_mrview_tests.erl      |   36 +-
 .../test/{ => eunit}/couchdb_os_proc_pool.erl      |    0
 .../{ => eunit}/couchdb_update_conflicts_tests.erl |    5 +-
 .../test/{ => eunit}/couchdb_vhosts_tests.erl      |    5 -
 src/couch/test/{ => eunit}/couchdb_views_tests.erl |   27 +-
 .../6cf2c2f766f87b618edf6630b00f8736.view}         |  Bin 4192 -> 8310 bytes
 .../fixtures/couch_stats_aggregates.cfg            |    0
 .../fixtures/couch_stats_aggregates.ini            |    0
 .../{ => eunit}/fixtures/db_non_partitioned.couch  |  Bin
 .../fixtures/db_v6_with_1_purge_req.couch}         |  Bin
 .../db_v6_with_1_purge_req_for_2_docs.couch}       |  Bin
 .../fixtures/db_v6_with_2_purge_req.couch}         |  Bin
 .../fixtures/db_v6_without_purge_req.couch}        |  Bin
 .../fixtures/db_v7_with_1_purge_req.couch}         |  Bin 16482 -> 16617 bytes
 .../db_v7_with_1_purge_req_for_2_docs.couch}       |  Bin 16557 -> 20705 bytes
 .../fixtures/db_v7_with_2_purge_req.couch}         |  Bin 16566 -> 20713 bytes
 .../fixtures/db_v7_without_purge_req.couch}        |  Bin 61644 -> 65781 bytes
 src/couch/test/{ => eunit}/fixtures/logo.png       |  Bin
 src/couch/test/{ => eunit}/fixtures/multipart.http |    0
 .../{ => eunit}/fixtures/os_daemon_bad_perm.sh     |    0
 .../{ => eunit}/fixtures/os_daemon_can_reboot.sh   |    0
 .../fixtures/os_daemon_configer.escript            |    0
 .../{ => eunit}/fixtures/os_daemon_die_on_boot.sh  |    0
 .../{ => eunit}/fixtures/os_daemon_die_quickly.sh  |    0
 .../{ => eunit}/fixtures/os_daemon_looper.escript  |    0
 src/couch/test/{ => eunit}/fixtures/test.couch     |  Bin 16482 -> 28878 bytes
 .../test/{ => eunit}/global_changes_tests.erl      |    0
 .../test/{ => eunit}/json_stream_parse_tests.erl   |    2 +-
 src/couch/test/{ => eunit}/test_web.erl            |    0
 src/couch/test/exunit/couch_compress_tests.exs     |  113 +
 src/couch/test/exunit/fabric_test.exs              |  101 +
 src/couch/test/exunit/same_site_cookie_tests.exs   |   44 +
 src/couch/test/exunit/test_helper.exs              |    2 +
 src/couch_epi/.travis.yml                          |   34 -
 src/couch_epi/src/couch_epi.erl                    |    3 -
 src/couch_epi/src/couch_epi_sup.erl                |  112 +-
 src/couch_epi/test/eunit/couch_epi_basic_test.erl  |  149 +
 src/couch_epi/test/{ => eunit}/couch_epi_tests.erl |    4 +-
 .../test/{ => eunit}/fixtures/app_data1.cfg        |    0
 .../test/{ => eunit}/fixtures/app_data2.cfg        |    0
 src/couch_index/.travis.yml                        |   43 -
 src/couch_index/src/couch_index.app.src            |    4 -
 src/couch_index/src/couch_index.erl                |   33 +-
 src/couch_index/src/couch_index_compactor.erl      |    2 +
 src/couch_index/src/couch_index_server.erl         |    4 +-
 src/couch_index/src/couch_index_updater.erl        |    2 +
 .../{ => eunit}/couch_index_compaction_tests.erl   |   19 +-
 .../{ => eunit}/couch_index_ddoc_updated_tests.erl |    0
 src/couch_log/.travis.yml                          |   43 -
 src/couch_log/src/couch_log_writer_file.erl        |    4 +-
 src/couch_log/src/couch_log_writer_journald.erl    |   69 +
 src/couch_log/src/couch_log_writer_syslog.erl      |    5 +-
 .../{ => eunit}/couch_log_config_listener_test.erl |    0
 .../test/{ => eunit}/couch_log_config_test.erl     |    0
 .../{ => eunit}/couch_log_error_logger_h_test.erl  |    0
 .../test/{ => eunit}/couch_log_formatter_test.erl  |    0
 .../test/{ => eunit}/couch_log_monitor_test.erl    |    0
 .../test/{ => eunit}/couch_log_server_test.erl     |    0
 src/couch_log/test/{ => eunit}/couch_log_test.erl  |    0
 .../test/{ => eunit}/couch_log_test_util.erl       |   11 +-
 .../{ => eunit}/couch_log_trunc_io_fmt_test.erl    |    0
 .../test/{ => eunit}/couch_log_util_test.erl       |    0
 .../test/{ => eunit}/couch_log_writer_ets.erl      |    0
 .../{ => eunit}/couch_log_writer_file_test.erl     |    0
 .../{ => eunit}/couch_log_writer_stderr_test.erl   |    0
 .../{ => eunit}/couch_log_writer_syslog_test.erl   |    0
 .../test/{ => eunit}/couch_log_writer_test.erl     |    0
 src/couch_mrview/.travis.yml                       |   23 -
 src/couch_mrview/include/couch_mrview.hrl          |   12 +-
 src/couch_mrview/src/couch_mrview.app.src          |   10 -
 src/couch_mrview/src/couch_mrview.erl              |  132 +-
 src/couch_mrview/src/couch_mrview_changes.erl      |   18 -
 src/couch_mrview/src/couch_mrview_compactor.erl    |  121 +-
 src/couch_mrview/src/couch_mrview_http.erl         |   52 +-
 src/couch_mrview/src/couch_mrview_index.erl        |   93 +-
 src/couch_mrview/src/couch_mrview_show.erl         |    5 +-
 src/couch_mrview/src/couch_mrview_test_util.erl    |   25 +-
 src/couch_mrview/src/couch_mrview_updater.erl      |  289 +-
 src/couch_mrview/src/couch_mrview_util.erl         |  520 +-
 .../test/couch_mrview_changes_since_tests.erl      |  210 -
 .../test/couch_mrview_index_changes_tests.erl      |  226 -
 .../{ => eunit}/couch_mrview_all_docs_tests.erl    |    0
 .../{ => eunit}/couch_mrview_collation_tests.erl   |    0
 .../{ => eunit}/couch_mrview_compact_tests.erl     |    0
 .../couch_mrview_ddoc_updated_tests.erl            |    0
 .../couch_mrview_ddoc_validation_tests.erl         |    0
 .../{ => eunit}/couch_mrview_design_docs_tests.erl |    0
 .../test/{ => eunit}/couch_mrview_http_tests.erl   |    0
 .../{ => eunit}/couch_mrview_index_info_tests.erl  |   10 -
 .../{ => eunit}/couch_mrview_local_docs_tests.erl  |    0
 .../{ => eunit}/couch_mrview_map_views_tests.erl   |    0
 .../couch_mrview_purge_docs_fabric_tests.erl       |   28 +-
 .../{ => eunit}/couch_mrview_purge_docs_tests.erl  |   71 +-
 .../{ => eunit}/couch_mrview_red_views_tests.erl   |    0
 .../test/{ => eunit}/couch_mrview_util_tests.erl   |    0
 src/couch_peruser/test/couch_peruser_test.erl      |  519 --
 .../test/eunit/couch_peruser_test.erl              |  538 ++
 src/couch_pse_tests/src/cpse_test_attachments.erl  |    2 +-
 src/couch_pse_tests/src/cpse_test_compaction.erl   |    2 +-
 .../src/cpse_test_copy_purge_infos.erl             |   82 +
 src/couch_pse_tests/src/cpse_test_fold_changes.erl |   17 +-
 src/couch_pse_tests/src/cpse_test_fold_docs.erl    |    1 +
 .../src/cpse_test_fold_purge_infos.erl             |    1 +
 .../src/cpse_test_get_set_props.erl                |    2 +-
 .../src/cpse_test_open_close_delete.erl            |    1 +
 src/couch_pse_tests/src/cpse_test_purge_docs.erl   |    5 +-
 .../src/cpse_test_purge_replication.erl            |   21 +-
 src/couch_pse_tests/src/cpse_test_purge_seqs.erl   |   11 +-
 .../src/cpse_test_read_write_docs.erl              |   11 +-
 src/couch_pse_tests/src/cpse_test_ref_counting.erl |    1 +
 src/couch_pse_tests/src/cpse_util.erl              |    9 +-
 src/couch_replicator/.travis.yml                   |   44 -
 src/couch_replicator/README.md                     |    8 -
 src/couch_replicator/src/couch_replicator.erl      |   40 +-
 .../src/couch_replicator_api_wrap.erl              |  162 +-
 src/couch_replicator/src/couch_replicator_auth.erl |    6 +
 .../src/couch_replicator_auth_session.erl          |   57 +-
 .../src/couch_replicator_clustering.erl            |   39 +-
 .../src/couch_replicator_connection.erl            |   58 +-
 .../src/couch_replicator_doc_processor.erl         |  118 +-
 .../src/couch_replicator_doc_processor_worker.erl  |    6 +-
 src/couch_replicator/src/couch_replicator_docs.erl |   92 +-
 .../src/couch_replicator_fabric.erl                |    4 +-
 .../src/couch_replicator_filters.erl               |   13 +-
 .../src/couch_replicator_httpc.erl                 |    8 +-
 .../src/couch_replicator_httpc_pool.erl            |   17 +-
 src/couch_replicator/src/couch_replicator_ids.erl  |   44 +-
 .../src/couch_replicator_manager.erl               |   29 -
 .../src/couch_replicator_scheduler.erl             |  261 +-
 .../src/couch_replicator_scheduler_job.erl         |  110 +-
 .../src/couch_replicator_stats.erl                 |   70 +-
 src/couch_replicator/src/couch_replicator_sup.erl  |    9 -
 .../src/couch_replicator_utils.erl                 |   73 +-
 .../src/couch_replicator_worker.erl                |  228 +-
 .../test/couch_replicator_modules_load_tests.erl   |   45 -
 ...ch_replicator_retain_stats_between_job_runs.erl |  160 -
 .../couch_replicator_attachments_too_large.erl     |    4 +-
 .../{ => eunit}/couch_replicator_compact_tests.erl |   46 +-
 .../couch_replicator_connection_tests.erl          |    2 +-
 ...replicator_create_target_with_options_tests.erl |    0
 .../couch_replicator_error_reporting_tests.erl     |  271 +
 .../couch_replicator_filtered_tests.erl            |   11 +-
 .../couch_replicator_httpc_pool_tests.erl          |    0
 .../couch_replicator_id_too_long_tests.erl         |    6 +-
 .../couch_replicator_large_atts_tests.erl          |    5 +-
 .../couch_replicator_many_leaves_tests.erl         |   15 +-
 .../couch_replicator_missing_stubs_tests.erl       |    5 +-
 .../{ => eunit}/couch_replicator_proxy_tests.erl   |   49 +-
 .../couch_replicator_rate_limiter_tests.erl        |    0
 ...ch_replicator_retain_stats_between_job_runs.erl |  282 +
 .../couch_replicator_selector_tests.erl            |    6 +-
 ...ch_replicator_small_max_request_size_target.erl |    5 +-
 .../{ => eunit}/couch_replicator_test_helper.erl   |    0
 .../couch_replicator_use_checkpoints_tests.erl     |    5 +-
 src/couch_stats/src/couch_stats_aggregator.erl     |   24 +-
 src/couch_tests/test/couch_tests_app_tests.erl     |    2 +-
 .../test/{ => eunit}/ddoc_cache_basic_test.erl     |    0
 .../test/{ => eunit}/ddoc_cache_coverage_test.erl  |    0
 .../test/{ => eunit}/ddoc_cache_disabled_test.erl  |    0
 .../test/{ => eunit}/ddoc_cache_entry_test.erl     |    0
 src/ddoc_cache/test/{ => eunit}/ddoc_cache_ev.erl  |    0
 .../test/{ => eunit}/ddoc_cache_eviction_test.erl  |    0
 .../test/{ => eunit}/ddoc_cache_lru_test.erl       |   19 +-
 .../test/{ => eunit}/ddoc_cache_no_cache_test.erl  |   76 +-
 .../{ => eunit}/ddoc_cache_open_error_test.erl     |    0
 .../test/{ => eunit}/ddoc_cache_open_test.erl      |    0
 .../test/{ => eunit}/ddoc_cache_opener_test.erl    |    0
 .../test/{ => eunit}/ddoc_cache_refresh_test.erl   |    0
 .../test/{ => eunit}/ddoc_cache_remove_test.erl    |    0
 .../test/{ => eunit}/ddoc_cache_test.hrl           |    0
 .../test/{ => eunit}/ddoc_cache_tutil.erl          |   11 +-
 src/dreyfus/.gitignore                             |    4 +
 src/dreyfus/LICENSE.txt                            |  202 +
 src/dreyfus/README.md                              |   78 +
 src/dreyfus/include/dreyfus.hrl                    |   74 +
 src/dreyfus/priv/stats_descriptions.cfg            |   65 +
 src/dreyfus/src/clouseau_rpc.erl                   |  109 +
 .../mango_idx.hrl => dreyfus/src/dreyfus.app.src}  |   18 +-
 .../mango_idx.hrl => dreyfus/src/dreyfus_app.erl}  |   20 +-
 src/dreyfus/src/dreyfus_bookmark.erl               |   90 +
 src/dreyfus/src/dreyfus_config.erl                 |   15 +
 src/dreyfus/src/dreyfus_epi.erl                    |   46 +
 src/dreyfus/src/dreyfus_fabric.erl                 |  205 +
 src/dreyfus/src/dreyfus_fabric_cleanup.erl         |   74 +
 src/dreyfus/src/dreyfus_fabric_group1.erl          |  129 +
 src/dreyfus/src/dreyfus_fabric_group2.erl          |  158 +
 src/dreyfus/src/dreyfus_fabric_info.erl            |  108 +
 src/dreyfus/src/dreyfus_fabric_search.erl          |  271 +
 src/dreyfus/src/dreyfus_httpd.erl                  |  598 ++
 src/dreyfus/src/dreyfus_httpd_handlers.erl         |   29 +
 src/dreyfus/src/dreyfus_index.erl                  |  367 ++
 src/dreyfus/src/dreyfus_index_manager.erl          |  153 +
 src/dreyfus/src/dreyfus_index_updater.erl          |  181 +
 .../src/dreyfus_plugin_couch_db.erl}               |   13 +-
 src/dreyfus/src/dreyfus_rpc.erl                    |  130 +
 .../mem3_sup.erl => dreyfus/src/dreyfus_sup.erl}   |   22 +-
 src/dreyfus/src/dreyfus_util.erl                   |  441 ++
 src/dreyfus/test/dreyfus_blacklist_await_test.erl  |   76 +
 .../test/dreyfus_blacklist_request_test.erl        |   96 +
 src/dreyfus/test/dreyfus_config_test.erl           |   71 +
 src/dreyfus/test/dreyfus_purge_test.erl            |  867 +++
 src/dreyfus/test/dreyfus_test_util.erl             |   13 +
 {test => src/dreyfus/test}/elixir/mix.exs          |    4 +-
 {test => src/dreyfus/test}/elixir/mix.lock         |    2 +-
 {test => src/dreyfus/test}/elixir/run              |    2 -
 .../test/elixir/test/partition_search_test.exs     |  219 +
 src/dreyfus/test/elixir/test/test_helper.exs       |    4 +
 src/fabric/.travis.yml                             |   23 -
 src/fabric/include/fabric.hrl                      |    4 +-
 src/fabric/src/fabric.app.src                      |   23 -
 src/fabric/src/fabric.erl                          |   90 +-
 src/fabric/src/fabric_db_create.erl                |   46 +-
 src/fabric/src/fabric_db_doc_count.erl             |   51 +-
 src/fabric/src/fabric_db_info.erl                  |  109 +-
 src/fabric/src/fabric_db_meta.erl                  |    4 +-
 src/fabric/src/fabric_db_partition_info.erl        |  155 +
 src/fabric/src/fabric_db_update_listener.erl       |    4 +-
 src/fabric/src/fabric_design_doc_count.erl         |   51 +-
 src/fabric/src/fabric_dict.erl                     |    4 +
 src/fabric/src/fabric_doc_open.erl                 |   69 +-
 src/fabric/src/fabric_doc_open_revs.erl            |  200 +-
 src/fabric/src/fabric_doc_purge.erl                |    5 +-
 src/fabric/src/fabric_doc_update.erl               |   67 +-
 src/fabric/src/fabric_group_info.erl               |   77 +-
 src/fabric/src/fabric_ring.erl                     |  519 ++
 src/fabric/src/fabric_rpc.erl                      |   22 +-
 src/fabric/src/fabric_streams.erl                  |  273 +
 src/fabric/src/fabric_util.erl                     |  159 +-
 src/fabric/src/fabric_view.erl                     |  262 +-
 src/fabric/src/fabric_view_all_docs.erl            |   60 +-
 src/fabric/src/fabric_view_changes.erl             |  446 +-
 src/fabric/src/fabric_view_map.erl                 |   25 +-
 src/fabric/src/fabric_view_reduce.erl              |   19 +-
 .../test/{ => eunit}/fabric_rpc_purge_tests.erl    |    2 +-
 src/global_changes/.travis.yml                     |   23 -
 .../{ => eunit}/global_changes_hooks_tests.erl     |    0
 src/ioq/.gitignore                                 |    2 +
 .../couch_epi.config => src/ioq/src/ioq.app.src    |   16 +-
 src/ioq/src/ioq.erl                                |  189 +
 .../test/ddoc_cache_ev.erl => ioq/src/ioq_app.erl} |   14 +-
 .../ddoc_cache_test.hrl => ioq/src/ioq_sup.erl}    |   20 +-
 src/ken/README.md                                  |   12 +
 .../rebar.config.script}                           |   16 +-
 .../src/ken.app.src.script}                        |   36 +-
 .../couch_bt_engine_tests.erl => ken/src/ken.erl}  |   17 +-
 .../src/ken_app.erl}                               |   16 +-
 src/ken/src/ken_event_handler.erl                  |   56 +
 src/ken/src/ken_server.erl                         |  565 ++
 .../src/setup_sup.erl => ken/src/ken_sup.erl}      |   15 +-
 src/ken/test/config.ini                            |    2 +
 src/ken/test/ken_server_test.erl                   |   97 +
 src/mango/.travis.yml                              |   29 -
 src/mango/src/mango_cursor.erl                     |  139 +-
 src/mango/src/mango_cursor_special.erl             |    7 +-
 src/mango/src/mango_cursor_text.erl                |   22 +-
 src/mango/src/mango_cursor_view.erl                |  113 +-
 src/mango/src/mango_error.erl                      |   25 +-
 src/mango/src/mango_execution_stats.erl            |    9 +-
 src/mango/src/mango_httpd.erl                      |   32 +-
 src/mango/src/mango_idx.erl                        |  143 +-
 src/mango/src/mango_idx.hrl                        |    1 +
 src/mango/src/mango_idx_text.erl                   |   50 +-
 src/mango/src/mango_idx_view.erl                   |    1 +
 src/mango/src/mango_native_proc.erl                |   19 +-
 src/mango/src/mango_opts.erl                       |   30 +
 src/mango/src/mango_selector.erl                   |   30 +-
 src/mango/src/mango_selector_text.erl              |   29 +-
 src/mango/src/mango_util.erl                       |    2 +
 src/mango/test/01-index-crud-test.py               |   83 +-
 src/mango/test/02-basic-find-test.py               |  218 +-
 src/mango/test/03-operator-test.py                 |  216 +-
 src/mango/test/04-key-tests.py                     |   73 +-
 src/mango/test/05-index-selection-test.py          |  252 +-
 src/mango/test/06-basic-text-test.py               |  171 +-
 src/mango/test/06-text-default-field-test.py       |   10 +-
 src/mango/test/07-text-custom-field-list-test.py   |   51 +-
 src/mango/test/08-text-limit-test.py               |   28 +-
 src/mango/test/09-text-sort-test.py                |   40 +-
 .../test/10-disable-array-length-field-test.py     |   28 +-
 src/mango/test/11-ignore-design-docs-test.py       |   20 +-
 src/mango/test/12-use-correct-index-test.py        |   54 +-
 src/mango/test/13-stable-update-test.py            |   12 +-
 src/mango/test/13-users-db-find-test.py            |   15 +-
 src/mango/test/14-json-pagination-test.py          |  271 +-
 src/mango/test/15-execution-stats-test.py          |   29 +-
 src/mango/test/16-index-selectors-test.py          |  229 +-
 src/mango/test/17-multi-type-value-test.py         |   33 +-
 src/mango/test/18-json-sort.py                     |  140 +-
 src/mango/test/19-find-conflicts.py                |   24 +-
 src/mango/test/20-no-timeout-test.py               |   16 +-
 src/mango/test/21-empty-selector-tests.py          |   72 +
 src/mango/test/friend_docs.py                      |  520 +-
 src/mango/test/limit_docs.py                       |  455 +-
 src/mango/test/mango.py                            |  128 +-
 src/mango/test/user_docs.py                        |  330 +-
 src/mem3/README.md                                 |    6 +-
 src/mem3/README_reshard.md                         |   93 +
 src/mem3/include/mem3.hrl                          |    5 +
 src/mem3/src/mem3.app.src                          |   15 +-
 src/mem3/src/mem3.erl                              |   57 +-
 src/mem3/src/mem3_hash.erl                         |   73 +
 src/mem3/src/mem3_httpd.erl                        |   20 +-
 src/mem3/src/mem3_httpd_handlers.erl               |    2 +
 src/mem3/src/mem3_rep.erl                          |  714 ++-
 src/mem3/src/mem3_reshard.erl                      |  918 +++
 src/mem3/src/mem3_reshard.hrl                      |   74 +
 src/mem3/src/mem3_reshard_api.erl                  |  217 +
 src/mem3/src/mem3_reshard_dbdoc.erl                |  275 +
 src/mem3/src/mem3_reshard_httpd.erl                |  317 +
 src/mem3/src/mem3_reshard_index.erl                |  164 +
 src/mem3/src/mem3_reshard_job.erl                  |  716 +++
 .../src/{mem3_sup.erl => mem3_reshard_job_sup.erl} |   51 +-
 src/mem3/src/mem3_reshard_store.erl                |  286 +
 .../src/{mem3_sup.erl => mem3_reshard_sup.erl}     |   43 +-
 src/mem3/src/mem3_reshard_validate.erl             |  126 +
 src/mem3/src/mem3_rpc.erl                          |   53 +-
 src/mem3/src/mem3_shards.erl                       |  101 +-
 src/mem3/src/mem3_sup.erl                          |    6 +-
 src/mem3/src/mem3_sync.erl                         |   11 +-
 src/mem3/src/mem3_sync_event_listener.erl          |   92 +-
 src/mem3/src/mem3_util.erl                         |  317 +-
 src/mem3/test/{ => eunit}/mem3_cluster_test.erl    |    0
 .../test/eunit/mem3_hash_test.erl}                 |   13 +-
 src/mem3/test/eunit/mem3_rep_test.erl              |  321 +
 src/mem3/test/eunit/mem3_reshard_api_test.erl      |  847 +++
 .../test/eunit/mem3_reshard_changes_feed_test.erl  |  389 ++
 src/mem3/test/eunit/mem3_reshard_test.erl          |  834 +++
 src/mem3/test/eunit/mem3_ring_prop_tests.erl       |  144 +
 src/mem3/test/{ => eunit}/mem3_seeds_test.erl      |   13 +-
 src/mem3/test/eunit/mem3_sync_security_test.erl    |   54 +
 src/mem3/test/{ => eunit}/mem3_util_test.erl       |    8 -
 src/mem3/test/mem3_sync_security_test.erl          |   32 -
 src/rexi/src/rexi.app.src                          |   10 -
 src/rexi/src/rexi.erl                              |   31 +-
 src/rexi/src/rexi_server.erl                       |   28 +-
 src/setup/README.md                                |   17 +
 src/setup/src/setup.erl                            |   81 +
 src/setup/src/setup_sup.erl                        |    6 +
 src/setup/test/t-frontend-setup.sh                 |   12 +-
 .../test/t-single-node-auto-setup.sh}              |   21 +-
 src/smoosh/README.md                               |  140 +
 src/smoosh/operator_guide.md                       |  396 ++
 .../src/smoosh.app.src}                            |   31 +-
 src/smoosh/src/smoosh.erl                          |   69 +
 .../src/smoosh_app.erl}                            |   16 +-
 src/smoosh/src/smoosh_channel.erl                  |  306 +
 src/smoosh/src/smoosh_priority_queue.erl           |   86 +
 src/smoosh/src/smoosh_server.erl                   |  606 ++
 .../setup_sup.erl => smoosh/src/smoosh_sup.erl}    |    6 +-
 src/smoosh/src/smoosh_utils.erl                    |   92 +
 src/smoosh/test/exunit/scheduling_window_test.exs  |   79 +
 src/smoosh/test/exunit/test_helper.exs             |    2 +
 support/build_js.escript                           |   77 +-
 test/elixir/.formatter.exs                         |    2 +-
 test/elixir/Makefile                               |    4 +-
 test/elixir/README.md                              |  199 +-
 test/elixir/lib/couch.ex                           |  172 +-
 test/elixir/lib/couch/db_test.ex                   |  473 ++
 test/elixir/lib/ex_unit.ex                         |   48 +
 test/elixir/lib/setup.ex                           |   97 +
 test/elixir/lib/setup/common.ex                    |   27 +
 test/elixir/lib/step.ex                            |   44 +
 test/elixir/lib/step/config.ex                     |   33 +
 test/elixir/lib/step/create_db.ex                  |   53 +
 test/elixir/lib/step/start.ex                      |   85 +
 test/elixir/lib/step/user.ex                       |  103 +
 test/elixir/lib/utils.ex                           |   61 +
 test/elixir/run.cmd                                |    2 +-
 test/elixir/test/all_docs_test.exs                 |  197 +-
 test/elixir/test/attachment_names_test.exs         |   97 +
 test/elixir/test/attachment_paths_test.exs         |  177 +
 test/elixir/test/attachment_ranges_test.exs        |  143 +
 test/elixir/test/attachment_views_test.exs         |  142 +
 test/elixir/test/attachments_multipart_test.exs    |  409 ++
 test/elixir/test/attachments_test.exs              |  482 ++
 test/elixir/test/auth_cache_test.exs               |  212 +
 test/elixir/test/basics_test.exs                   |   34 +-
 test/elixir/test/bulk_docs_test.exs                |   35 +-
 test/elixir/test/changes_test.exs                  |   43 +
 test/elixir/test/cluster_with_quorum_test.exs      |  185 +
 test/elixir/test/cluster_without_quorum_test.exs   |  184 +
 test/elixir/test/coffee_test.exs                   |   17 +-
 test/elixir/test/compact_test.exs                  |   44 +-
 test/elixir/test/config_test.exs                   |   12 +-
 test/elixir/test/conflicts_test.exs                |   23 +-
 test/elixir/test/cookie_auth_test.exs              |  394 ++
 test/elixir/test/copy_doc_test.exs                 |   71 +
 test/elixir/test/design_docs_test.exs              |  108 +
 test/elixir/test/erlang_views_test.exs             |  117 +
 test/elixir/test/invalid_docids_test.exs           |   85 +
 test/elixir/test/local_docs_test.exs               |  110 +
 test/elixir/test/lots_of_docs_test.exs             |   70 +-
 test/elixir/test/multiple_rows_test.exs            |  136 +
 test/elixir/test/partition_all_docs_test.exs       |  204 +
 test/elixir/test/partition_crud_test.exs           |  369 ++
 test/elixir/test/partition_ddoc_test.exs           |  179 +
 test/elixir/test/partition_design_docs_test.exs    |   16 +
 test/elixir/test/partition_helpers.exs             |   76 +
 test/elixir/test/partition_mango_test.exs          |  683 ++
 test/elixir/test/partition_size_limit_test.exs     |  305 +
 test/elixir/test/partition_size_test.exs           |  361 ++
 test/elixir/test/partition_view_test.exs           |  374 ++
 test/elixir/test/partition_view_update_test.exs    |  160 +
 test/elixir/test/reduce_test.exs                   |  159 +-
 test/elixir/test/replication_test.exs              |  233 +-
 test/elixir/test/reshard_all_docs_test.exs         |   79 +
 test/elixir/test/reshard_basic_test.exs            |  174 +
 test/elixir/test/reshard_changes_feed.exs          |   81 +
 test/elixir/test/reshard_helpers.exs               |  114 +
 test/elixir/test/rewrite_test.exs                  |  611 +-
 test/elixir/test/security_validation_test.exs      |   41 +-
 test/elixir/test/support/couch_test_case.ex        |   29 +
 test/elixir/test/test_helper.exs                   |  276 +-
 test/elixir/test/users_db_test.exs                 |  322 +
 test/elixir/test/utf8_test.exs                     |   65 +
 test/elixir/test/view_collation_test.exs           |   28 +-
 test/elixir/test/view_test.exs                     |  143 +
 test/javascript/cli_runner.js                      |    8 +
 test/javascript/run                                |  197 +-
 test/javascript/test_setup.js                      |    4 +-
 .../tests-cluster/with-quorum/attachments.js       |    1 +
 .../with-quorum/attachments_delete.js              |    1 +
 .../attachments_delete_overridden_quorum.js        |    4 +-
 .../with-quorum/attachments_overridden_quorum.js   |    4 +-
 .../tests-cluster/with-quorum/db_creation.js       |    1 +
 .../with-quorum/db_creation_overridden_quorum.js   |    4 +-
 .../tests-cluster/with-quorum/db_deletion.js       |    1 +
 .../with-quorum/db_deletion_overridden_quorum.js   |    1 +
 .../tests-cluster/with-quorum/doc_bulk.js          |    1 +
 .../with-quorum/doc_bulk_overridden_quorum.js      |    1 +
 .../tests-cluster/with-quorum/doc_copy.js          |    1 +
 .../with-quorum/doc_copy_overridden_quorum.js      |    4 +-
 .../tests-cluster/with-quorum/doc_crud.js          |    1 +
 .../with-quorum/doc_crud_overridden_quorum.js      |    1 +
 .../tests-cluster/without-quorum/attachments.js    |    1 +
 .../without-quorum/attachments_delete.js           |    4 +-
 .../attachments_delete_overridden_quorum.js        |    4 +-
 .../attachments_overridden_quorum.js               |    1 +
 .../tests-cluster/without-quorum/db_creation.js    |    1 +
 .../db_creation_overridden_quorum.js               |    4 +-
 .../tests-cluster/without-quorum/db_deletion.js    |    1 +
 .../db_deletion_overridden_quorum.js               |    1 +
 .../tests-cluster/without-quorum/doc_bulk.js       |    1 +
 .../without-quorum/doc_bulk_overridden_quorum.js   |    1 +
 .../tests-cluster/without-quorum/doc_copy.js       |    1 +
 .../without-quorum/doc_copy_overridden_quorum.js   |    4 +-
 .../tests-cluster/without-quorum/doc_crud.js       |    1 +
 .../without-quorum/doc_crud_overridden_quorum.js   |    1 +
 test/javascript/tests/all_docs.js                  |    4 +-
 test/javascript/tests/attachment_names.js          |    2 +
 test/javascript/tests/attachment_paths.js          |    2 +
 test/javascript/tests/attachment_ranges.js         |    4 +-
 test/javascript/tests/attachment_views.js          |    2 +
 test/javascript/tests/attachments.js               |    8 +-
 test/javascript/tests/attachments_multipart.js     |  116 +-
 test/javascript/tests/auth_cache.js                |    1 +
 test/javascript/tests/basics.js                    |    3 +-
 test/javascript/tests/batch_save.js                |   12 +-
 test/javascript/tests/bulk_docs.js                 |    2 +
 test/javascript/tests/coffee.js                    |    2 +
 test/javascript/tests/compact.js                   |   18 +-
 test/javascript/tests/config.js                    |    2 +
 test/javascript/tests/conflicts.js                 |    2 +
 test/javascript/tests/cookie_auth.js               |    1 +
 test/javascript/tests/copy_doc.js                  |    2 +
 test/javascript/tests/delayed_commits.js           |   50 -
 test/javascript/tests/design_docs.js               |   11 +-
 test/javascript/tests/etags_head.js                |    4 +
 test/javascript/tests/etags_views.js               |   27 +-
 test/javascript/tests/invalid_docids.js            |    2 +
 test/javascript/tests/large_docs.js                |    2 +
 test/javascript/tests/lots_of_docs.js              |    2 +
 test/javascript/tests/multiple_rows.js             |    2 +
 test/javascript/tests/proxyauth.js                 |    2 +-
 test/javascript/tests/reader_acl.js                |    2 +-
 test/javascript/tests/reduce.js                    |    2 +
 test/javascript/tests/replication.js               | 1920 ------
 .../tests/replicator_db_compact_rep_db.js          |    3 +-
 test/javascript/tests/replicator_db_continuous.js  |    3 +-
 .../tests/replicator_db_credential_delegation.js   |    3 +-
 .../tests/replicator_db_field_validation.js        |    3 +-
 test/javascript/tests/replicator_db_filtered.js    |    3 +-
 test/javascript/tests/replicator_db_identical.js   |    3 +-
 .../tests/replicator_db_identical_continuous.js    |    3 +-
 .../tests/replicator_db_invalid_filter.js          |    3 +-
 test/javascript/tests/replicator_db_security.js    |    5 +-
 test/javascript/tests/replicator_db_simple.js      |    3 +-
 test/javascript/tests/replicator_db_successive.js  |    3 +-
 test/javascript/tests/replicator_db_survives.js    |    3 +-
 test/javascript/tests/replicator_db_swap_rep_db.js |    3 +-
 .../tests/replicator_db_update_security.js         |    3 +-
 test/javascript/tests/replicator_db_user_ctx.js    |    3 +-
 test/javascript/tests/replicator_db_write_auth.js  |    3 +-
 test/javascript/tests/security_validation.js       |    2 +-
 test/javascript/tests/stats.js                     |   65 +-
 test/javascript/tests/users_db.js                  |    1 +
 test/javascript/tests/users_db_security.js         |   20 +-
 test/javascript/tests/utf8.js                      |    1 +
 test/javascript/tests/uuids.js                     |    4 +-
 test/javascript/tests/view_collation.js            |    6 +-
 test/javascript/tests/view_compaction.js           |   10 +-
 test/javascript/tests/view_update_seq.js           |    1 +
 version.mk                                         |    4 +-
 700 files changed, 47333 insertions(+), 15685 deletions(-)
 create mode 100644 .credo.exs
 create mode 100644 .formatter.exs
 delete mode 100644 .github/ISSUE_TEMPLATE.md
 create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md
 create mode 100644 .github/ISSUE_TEMPLATE/enhancement.md
 create mode 100644 .github/ISSUE_TEMPLATE/rfc.md
 delete mode 100644 .travis.yml
 delete mode 100644 Jenkinsfile
 create mode 100644 build-aux/Jenkinsfile.full
 create mode 100644 build-aux/Jenkinsfile.pr
 create mode 100644 build-aux/README.Jenkins
 create mode 100755 build-aux/show-test-results.py
 create mode 100644 config/config.exs
 create mode 100644 config/dev.exs
 create mode 100644 config/integration.exs
 create mode 100644 config/prod.exs
 create mode 100644 config/test.exs
 create mode 100644 mix.exs
 create mode 100644 mix.lock
 delete mode 100755 rel/overlay/bin/couchup
 create mode 100644 share/server/60/escodegen.js
 create mode 100644 share/server/60/esprima.js
 create mode 100644 share/server/60/rewrite_fun.js
 create mode 100644 share/server/dreyfus.js
 copy src/couch/priv/couch_js/utf8.h => share/server/rewrite_fun.js (73%)
 delete mode 100644 src/chttpd/.travis.yml
 create mode 100644 src/chttpd/src/chttpd_node.erl
 create mode 100644 src/chttpd/src/chttpd_stats.erl
 rename src/chttpd/test/{ => eunit}/chttpd_cors_test.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_csp_tests.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_db_attachment_size_tests.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_db_bulk_get_multipart_test.erl (80%)
 rename src/chttpd/test/{ => eunit}/chttpd_db_bulk_get_test.erl (85%)
 rename src/chttpd/test/{ => eunit}/chttpd_db_doc_size_tests.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_db_test.erl (85%)
 rename src/chttpd/test/{ => eunit}/chttpd_dbs_info_test.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_error_info_tests.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_handlers_tests.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_open_revs_error_test.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_plugin_tests.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_prefer_header_test.erl (82%)
 rename src/chttpd/test/{ => eunit}/chttpd_purge_tests.erl (90%)
 rename src/chttpd/test/{ => eunit}/chttpd_security_tests.erl (51%)
 create mode 100644 src/chttpd/test/eunit/chttpd_socket_buffer_size_test.erl
 rename src/chttpd/test/{ => eunit}/chttpd_view_test.erl (96%)
 rename src/chttpd/test/{ => eunit}/chttpd_welcome_test.erl (100%)
 rename src/chttpd/test/{ => eunit}/chttpd_xframe_test.erl (81%)
 delete mode 100644 src/couch/.travis.yml
 copy src/couch/priv/couch_js/{ => 1.8.5}/help.h (100%)
 copy src/couch/priv/couch_js/{ => 1.8.5}/http.c (100%)
 copy src/couch/priv/couch_js/{ => 1.8.5}/http.h (100%)
 rename src/couch/priv/couch_js/{ => 1.8.5}/main.c (100%)
 copy src/couch/priv/couch_js/{ => 1.8.5}/utf8.c (100%)
 copy src/couch/priv/couch_js/{ => 1.8.5}/utf8.h (100%)
 copy src/couch/priv/couch_js/{ => 1.8.5}/util.c (100%)
 copy src/couch/priv/couch_js/{ => 1.8.5}/util.h (100%)
 rename src/couch/priv/couch_js/{ => 60}/help.h (100%)
 rename src/couch/priv/couch_js/{http.c => 60/http.cpp} (68%)
 rename src/couch/priv/couch_js/{ => 60}/http.h (63%)
 create mode 100644 src/couch/priv/couch_js/60/main.cpp
 rename src/couch/priv/couch_js/{utf8.c => 60/utf8.cpp} (74%)
 rename src/couch/priv/couch_js/{ => 60}/utf8.h (91%)
 rename src/couch/priv/couch_js/{util.c => 60/util.cpp} (65%)
 rename src/couch/priv/couch_js/{ => 60}/util.h (67%)
 delete mode 100644 src/couch/src/couch_compaction_daemon.erl
 create mode 100644 src/couch/src/couch_db_split.erl
 delete mode 100644 src/couch/src/couch_external_manager.erl
 delete mode 100644 src/couch/src/couch_external_server.erl
 create mode 100644 src/couch/src/couch_partition.erl
 delete mode 100644 src/couch/test/chttpd_endpoints_tests.erl
 delete mode 100644 src/couch/test/couch_bt_engine_partition_downgrade_tests.erl
 delete mode 100644 src/couch/test/couch_compress_tests.erl
 delete mode 100644 src/couch/test/couch_uuids_tests.erl
 delete mode 100644 src/couch/test/couchdb_compaction_daemon_tests.erl
 create mode 100644 src/couch/test/eunit/chttpd_endpoints_tests.erl
 rename src/couch/test/{ => eunit}/couch_auth_cache_tests.erl (98%)
 rename src/couch/test/{ => eunit}/couch_base32_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_bt_engine_compactor_tests.erl (96%)
 copy src/couch/test/{ => eunit}/couch_bt_engine_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_bt_engine_upgrade_tests.erl (75%)
 rename src/couch/test/{ => eunit}/couch_btree_tests.erl (98%)
 rename src/couch/test/{ => eunit}/couch_changes_tests.erl (85%)
 rename src/couch/test/{ => eunit}/couch_db_doc_tests.erl (68%)
 rename src/couch/test/{ => eunit}/couch_db_mpr_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_db_plugin_tests.erl (90%)
 create mode 100644 src/couch/test/eunit/couch_db_props_upgrade_tests.erl
 create mode 100644 src/couch/test/eunit/couch_db_split_tests.erl
 rename src/couch/test/{ => eunit}/couch_db_tests.erl (83%)
 rename src/couch/test/{ => eunit}/couch_doc_json_tests.erl (95%)
 rename src/couch/test/{ => eunit}/couch_doc_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_ejson_size_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_etag_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_file_tests.erl (76%)
 create mode 100644 src/couch/test/eunit/couch_flags_config_tests.erl
 rename src/couch/test/{ => eunit}/couch_flags_tests.erl (89%)
 rename src/couch/test/{ => eunit}/couch_hotp_tests.erl (100%)
 create mode 100644 src/couch/test/eunit/couch_index_tests.erl
 create mode 100644 src/couch/test/eunit/couch_js_tests.erl
 rename src/couch/test/{ => eunit}/couch_key_tree_prop_tests.erl (99%)
 rename src/couch/test/{ => eunit}/couch_key_tree_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_passwords_tests.erl (97%)
 rename src/couch/test/{ => eunit}/couch_query_servers_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_server_tests.erl (81%)
 rename src/couch/test/{ => eunit}/couch_stream_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_task_status_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_totp_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couch_util_tests.erl (99%)
 create mode 100644 src/couch/test/eunit/couch_uuids_tests.erl
 rename src/couch/test/{ => eunit}/couch_work_queue_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couchdb_attachments_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couchdb_auth_tests.erl (80%)
 rename src/couch/test/{ => eunit}/couchdb_cookie_domain_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couchdb_cors_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couchdb_db_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couchdb_design_doc_tests.erl (98%)
 rename src/couch/test/{ => eunit}/couchdb_file_compression_tests.erl (73%)
 rename src/couch/test/{ => eunit}/couchdb_location_header_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couchdb_mrview_cors_tests.erl (100%)
 rename src/couch/test/{ => eunit}/couchdb_mrview_tests.erl (93%)
 rename src/couch/test/{ => eunit}/couchdb_os_proc_pool.erl (100%)
 rename src/couch/test/{ => eunit}/couchdb_update_conflicts_tests.erl (98%)
 rename src/couch/test/{ => eunit}/couchdb_vhosts_tests.erl (98%)
 rename src/couch/test/{ => eunit}/couchdb_views_tests.erl (97%)
 rename src/couch/test/{fixtures/3b835456c235b1827e012e25666152f3.view => eunit/fixtures/6cf2c2f766f87b618edf6630b00f8736.view} (50%)
 rename src/couch/test/{ => eunit}/fixtures/couch_stats_aggregates.cfg (100%)
 rename src/couch/test/{ => eunit}/fixtures/couch_stats_aggregates.ini (100%)
 rename src/couch/test/{ => eunit}/fixtures/db_non_partitioned.couch (100%)
 rename src/couch/test/{fixtures/db_with_1_purge_req.couch => eunit/fixtures/db_v6_with_1_purge_req.couch} (100%)
 copy src/couch/test/{fixtures/db_with_1_purge_req_for_2_docs.couch => eunit/fixtures/db_v6_with_1_purge_req_for_2_docs.couch} (100%)
 copy src/couch/test/{fixtures/db_with_2_purge_req.couch => eunit/fixtures/db_v6_with_2_purge_req.couch} (100%)
 copy src/couch/test/{fixtures/db_without_purge_req.couch => eunit/fixtures/db_v6_without_purge_req.couch} (100%)
 copy src/couch/test/{fixtures/test.couch => eunit/fixtures/db_v7_with_1_purge_req.couch} (85%)
 rename src/couch/test/{fixtures/db_with_1_purge_req_for_2_docs.couch => eunit/fixtures/db_v7_with_1_purge_req_for_2_docs.couch} (79%)
 rename src/couch/test/{fixtures/db_with_2_purge_req.couch => eunit/fixtures/db_v7_with_2_purge_req.couch} (79%)
 rename src/couch/test/{fixtures/db_without_purge_req.couch => eunit/fixtures/db_v7_without_purge_req.couch} (93%)
 rename src/couch/test/{ => eunit}/fixtures/logo.png (100%)
 rename src/couch/test/{ => eunit}/fixtures/multipart.http (100%)
 rename src/couch/test/{ => eunit}/fixtures/os_daemon_bad_perm.sh (100%)
 copy src/couch/test/{ => eunit}/fixtures/os_daemon_can_reboot.sh (100%)
 rename src/couch/test/{ => eunit}/fixtures/os_daemon_configer.escript (100%)
 rename src/couch/test/{ => eunit}/fixtures/os_daemon_die_on_boot.sh (100%)
 rename src/couch/test/{ => eunit}/fixtures/os_daemon_die_quickly.sh (100%)
 copy src/couch/test/{ => eunit}/fixtures/os_daemon_looper.escript (100%)
 rename src/couch/test/{ => eunit}/fixtures/test.couch (56%)
 rename src/couch/test/{ => eunit}/global_changes_tests.erl (100%)
 rename src/couch/test/{ => eunit}/json_stream_parse_tests.erl (99%)
 rename src/couch/test/{ => eunit}/test_web.erl (100%)
 create mode 100644 src/couch/test/exunit/couch_compress_tests.exs
 create mode 100644 src/couch/test/exunit/fabric_test.exs
 create mode 100644 src/couch/test/exunit/same_site_cookie_tests.exs
 create mode 100644 src/couch/test/exunit/test_helper.exs
 delete mode 100644 src/couch_epi/.travis.yml
 create mode 100644 src/couch_epi/test/eunit/couch_epi_basic_test.erl
 rename src/couch_epi/test/{ => eunit}/couch_epi_tests.erl (99%)
 rename src/couch_epi/test/{ => eunit}/fixtures/app_data1.cfg (100%)
 rename src/couch_epi/test/{ => eunit}/fixtures/app_data2.cfg (100%)
 delete mode 100644 src/couch_index/.travis.yml
 rename src/couch_index/test/{ => eunit}/couch_index_compaction_tests.erl (90%)
 rename src/couch_index/test/{ => eunit}/couch_index_ddoc_updated_tests.erl (100%)
 delete mode 100644 src/couch_log/.travis.yml
 create mode 100644 src/couch_log/src/couch_log_writer_journald.erl
 rename src/couch_log/test/{ => eunit}/couch_log_config_listener_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_config_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_error_logger_h_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_formatter_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_monitor_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_server_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_test_util.erl (96%)
 rename src/couch_log/test/{ => eunit}/couch_log_trunc_io_fmt_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_util_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_writer_ets.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_writer_file_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_writer_stderr_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_writer_syslog_test.erl (100%)
 rename src/couch_log/test/{ => eunit}/couch_log_writer_test.erl (100%)
 delete mode 100644 src/couch_mrview/.travis.yml
 delete mode 100644 src/couch_mrview/src/couch_mrview_changes.erl
 delete mode 100644 src/couch_mrview/test/couch_mrview_changes_since_tests.erl
 delete mode 100644 src/couch_mrview/test/couch_mrview_index_changes_tests.erl
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_all_docs_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_collation_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_compact_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_ddoc_updated_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_ddoc_validation_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_design_docs_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_http_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_index_info_tests.erl (90%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_local_docs_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_map_views_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_purge_docs_fabric_tests.erl (96%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_purge_docs_tests.erl (86%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_red_views_tests.erl (100%)
 rename src/couch_mrview/test/{ => eunit}/couch_mrview_util_tests.erl (100%)
 delete mode 100644 src/couch_peruser/test/couch_peruser_test.erl
 create mode 100644 src/couch_peruser/test/eunit/couch_peruser_test.erl
 create mode 100644 src/couch_pse_tests/src/cpse_test_copy_purge_infos.erl
 delete mode 100644 src/couch_replicator/.travis.yml
 delete mode 100644 src/couch_replicator/src/couch_replicator_manager.erl
 delete mode 100644 src/couch_replicator/test/couch_replicator_modules_load_tests.erl
 delete mode 100644 src/couch_replicator/test/couch_replicator_retain_stats_between_job_runs.erl
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_attachments_too_large.erl (96%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_compact_tests.erl (93%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_connection_tests.erl (99%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_create_target_with_options_tests.erl (100%)
 create mode 100644 src/couch_replicator/test/eunit/couch_replicator_error_reporting_tests.erl
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_filtered_tests.erl (96%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_httpc_pool_tests.erl (100%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_id_too_long_tests.erl (94%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_large_atts_tests.erl (96%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_many_leaves_tests.erl (95%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_missing_stubs_tests.erl (97%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_proxy_tests.erl (54%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_rate_limiter_tests.erl (100%)
 create mode 100644 src/couch_replicator/test/eunit/couch_replicator_retain_stats_between_job_runs.erl
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_selector_tests.erl (95%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_small_max_request_size_target.erl (98%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_test_helper.erl (100%)
 rename src/couch_replicator/test/{ => eunit}/couch_replicator_use_checkpoints_tests.erl (97%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_basic_test.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_coverage_test.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_disabled_test.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_entry_test.erl (100%)
 copy src/ddoc_cache/test/{ => eunit}/ddoc_cache_ev.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_eviction_test.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_lru_test.erl (95%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_no_cache_test.erl (52%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_open_error_test.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_open_test.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_opener_test.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_refresh_test.erl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_remove_test.erl (100%)
 copy src/ddoc_cache/test/{ => eunit}/ddoc_cache_test.hrl (100%)
 rename src/ddoc_cache/test/{ => eunit}/ddoc_cache_tutil.erl (94%)
 create mode 100644 src/dreyfus/.gitignore
 create mode 100644 src/dreyfus/LICENSE.txt
 create mode 100644 src/dreyfus/README.md
 create mode 100644 src/dreyfus/include/dreyfus.hrl
 create mode 100644 src/dreyfus/priv/stats_descriptions.cfg
 create mode 100644 src/dreyfus/src/clouseau_rpc.erl
 copy src/{mango/src/mango_idx.hrl => dreyfus/src/dreyfus.app.src} (62%)
 copy src/{mango/src/mango_idx.hrl => dreyfus/src/dreyfus_app.erl} (72%)
 create mode 100644 src/dreyfus/src/dreyfus_bookmark.erl
 create mode 100644 src/dreyfus/src/dreyfus_config.erl
 create mode 100644 src/dreyfus/src/dreyfus_epi.erl
 create mode 100644 src/dreyfus/src/dreyfus_fabric.erl
 create mode 100644 src/dreyfus/src/dreyfus_fabric_cleanup.erl
 create mode 100644 src/dreyfus/src/dreyfus_fabric_group1.erl
 create mode 100644 src/dreyfus/src/dreyfus_fabric_group2.erl
 create mode 100644 src/dreyfus/src/dreyfus_fabric_info.erl
 create mode 100644 src/dreyfus/src/dreyfus_fabric_search.erl
 create mode 100644 src/dreyfus/src/dreyfus_httpd.erl
 create mode 100644 src/dreyfus/src/dreyfus_httpd_handlers.erl
 create mode 100644 src/dreyfus/src/dreyfus_index.erl
 create mode 100644 src/dreyfus/src/dreyfus_index_manager.erl
 create mode 100644 src/dreyfus/src/dreyfus_index_updater.erl
 copy src/{ddoc_cache/test/ddoc_cache_ev.erl => dreyfus/src/dreyfus_plugin_couch_db.erl} (68%)
 create mode 100644 src/dreyfus/src/dreyfus_rpc.erl
 copy src/{mem3/src/mem3_sup.erl => dreyfus/src/dreyfus_sup.erl} (59%)
 create mode 100644 src/dreyfus/src/dreyfus_util.erl
 create mode 100644 src/dreyfus/test/dreyfus_blacklist_await_test.erl
 create mode 100644 src/dreyfus/test/dreyfus_blacklist_request_test.erl
 create mode 100644 src/dreyfus/test/dreyfus_config_test.erl
 create mode 100644 src/dreyfus/test/dreyfus_purge_test.erl
 create mode 100644 src/dreyfus/test/dreyfus_test_util.erl
 rename {test => src/dreyfus/test}/elixir/mix.exs (88%)
 rename {test => src/dreyfus/test}/elixir/mix.lock (72%)
 rename {test => src/dreyfus/test}/elixir/run (58%)
 create mode 100644 src/dreyfus/test/elixir/test/partition_search_test.exs
 create mode 100644 src/dreyfus/test/elixir/test/test_helper.exs
 delete mode 100644 src/fabric/.travis.yml
 create mode 100644 src/fabric/src/fabric_db_partition_info.erl
 create mode 100644 src/fabric/src/fabric_ring.erl
 create mode 100644 src/fabric/src/fabric_streams.erl
 rename src/fabric/test/{ => eunit}/fabric_rpc_purge_tests.erl (99%)
 delete mode 100644 src/global_changes/.travis.yml
 rename src/global_changes/test/{ => eunit}/global_changes_hooks_tests.erl (100%)
 create mode 100644 src/ioq/.gitignore
 copy rel/apps/couch_epi.config => src/ioq/src/ioq.app.src (71%)
 create mode 100644 src/ioq/src/ioq.erl
 rename src/{ddoc_cache/test/ddoc_cache_ev.erl => ioq/src/ioq_app.erl} (77%)
 rename src/{ddoc_cache/test/ddoc_cache_test.hrl => ioq/src/ioq_sup.erl} (64%)
 create mode 100644 src/ken/README.md
 copy src/{couch/test/couch_bt_engine_tests.erl => ken/rebar.config.script} (51%)
 copy src/{couch/test/fixtures/os_daemon_looper.escript => ken/src/ken.app.src.script} (51%)
 mode change 100755 => 100644
 copy src/{couch/test/couch_bt_engine_tests.erl => ken/src/ken.erl} (59%)
 copy src/{couch/test/couch_bt_engine_tests.erl => ken/src/ken_app.erl} (61%)
 create mode 100644 src/ken/src/ken_event_handler.erl
 create mode 100644 src/ken/src/ken_server.erl
 copy src/{setup/src/setup_sup.erl => ken/src/ken_sup.erl} (63%)
 create mode 100644 src/ken/test/config.ini
 create mode 100644 src/ken/test/ken_server_test.erl
 delete mode 100644 src/mango/.travis.yml
 create mode 100644 src/mango/test/21-empty-selector-tests.py
 create mode 100644 src/mem3/README_reshard.md
 create mode 100644 src/mem3/src/mem3_hash.erl
 create mode 100644 src/mem3/src/mem3_reshard.erl
 create mode 100644 src/mem3/src/mem3_reshard.hrl
 create mode 100644 src/mem3/src/mem3_reshard_api.erl
 create mode 100644 src/mem3/src/mem3_reshard_dbdoc.erl
 create mode 100644 src/mem3/src/mem3_reshard_httpd.erl
 create mode 100644 src/mem3/src/mem3_reshard_index.erl
 create mode 100644 src/mem3/src/mem3_reshard_job.erl
 copy src/mem3/src/{mem3_sup.erl => mem3_reshard_job_sup.erl} (51%)
 create mode 100644 src/mem3/src/mem3_reshard_store.erl
 copy src/mem3/src/{mem3_sup.erl => mem3_reshard_sup.erl} (51%)
 create mode 100644 src/mem3/src/mem3_reshard_validate.erl
 rename src/mem3/test/{ => eunit}/mem3_cluster_test.erl (100%)
 copy src/{couch/test/couch_bt_engine_tests.erl => mem3/test/eunit/mem3_hash_test.erl} (65%)
 create mode 100644 src/mem3/test/eunit/mem3_rep_test.erl
 create mode 100644 src/mem3/test/eunit/mem3_reshard_api_test.erl
 create mode 100644 src/mem3/test/eunit/mem3_reshard_changes_feed_test.erl
 create mode 100644 src/mem3/test/eunit/mem3_reshard_test.erl
 create mode 100644 src/mem3/test/eunit/mem3_ring_prop_tests.erl
 rename src/mem3/test/{ => eunit}/mem3_seeds_test.erl (88%)
 create mode 100644 src/mem3/test/eunit/mem3_sync_security_test.erl
 rename src/mem3/test/{ => eunit}/mem3_util_test.erl (94%)
 delete mode 100644 src/mem3/test/mem3_sync_security_test.erl
 rename src/{couch/test/fixtures/os_daemon_can_reboot.sh => setup/test/t-single-node-auto-setup.sh} (57%)
 create mode 100644 src/smoosh/README.md
 create mode 100644 src/smoosh/operator_guide.md
 rename src/{couch/test/fixtures/os_daemon_looper.escript => smoosh/src/smoosh.app.src} (58%)
 mode change 100755 => 100644
 create mode 100644 src/smoosh/src/smoosh.erl
 rename src/{couch/test/couch_bt_engine_tests.erl => smoosh/src/smoosh_app.erl} (60%)
 create mode 100644 src/smoosh/src/smoosh_channel.erl
 create mode 100644 src/smoosh/src/smoosh_priority_queue.erl
 create mode 100644 src/smoosh/src/smoosh_server.erl
 copy src/{setup/src/setup_sup.erl => smoosh/src/smoosh_sup.erl} (88%)
 create mode 100644 src/smoosh/src/smoosh_utils.erl
 create mode 100644 src/smoosh/test/exunit/scheduling_window_test.exs
 create mode 100644 src/smoosh/test/exunit/test_helper.exs
 create mode 100644 test/elixir/lib/couch/db_test.ex
 create mode 100644 test/elixir/lib/ex_unit.ex
 create mode 100644 test/elixir/lib/setup.ex
 create mode 100644 test/elixir/lib/setup/common.ex
 create mode 100644 test/elixir/lib/step.ex
 create mode 100644 test/elixir/lib/step/config.ex
 create mode 100644 test/elixir/lib/step/create_db.ex
 create mode 100644 test/elixir/lib/step/start.ex
 create mode 100644 test/elixir/lib/step/user.ex
 create mode 100644 test/elixir/lib/utils.ex
 create mode 100644 test/elixir/test/attachment_names_test.exs
 create mode 100644 test/elixir/test/attachment_paths_test.exs
 create mode 100644 test/elixir/test/attachment_ranges_test.exs
 create mode 100644 test/elixir/test/attachment_views_test.exs
 create mode 100644 test/elixir/test/attachments_multipart_test.exs
 create mode 100644 test/elixir/test/attachments_test.exs
 create mode 100644 test/elixir/test/auth_cache_test.exs
 create mode 100644 test/elixir/test/changes_test.exs
 create mode 100644 test/elixir/test/cluster_with_quorum_test.exs
 create mode 100644 test/elixir/test/cluster_without_quorum_test.exs
 create mode 100644 test/elixir/test/cookie_auth_test.exs
 create mode 100644 test/elixir/test/copy_doc_test.exs
 create mode 100644 test/elixir/test/design_docs_test.exs
 create mode 100644 test/elixir/test/erlang_views_test.exs
 create mode 100644 test/elixir/test/invalid_docids_test.exs
 create mode 100644 test/elixir/test/local_docs_test.exs
 create mode 100644 test/elixir/test/multiple_rows_test.exs
 create mode 100644 test/elixir/test/partition_all_docs_test.exs
 create mode 100644 test/elixir/test/partition_crud_test.exs
 create mode 100644 test/elixir/test/partition_ddoc_test.exs
 create mode 100644 test/elixir/test/partition_design_docs_test.exs
 create mode 100644 test/elixir/test/partition_helpers.exs
 create mode 100644 test/elixir/test/partition_mango_test.exs
 create mode 100644 test/elixir/test/partition_size_limit_test.exs
 create mode 100644 test/elixir/test/partition_size_test.exs
 create mode 100644 test/elixir/test/partition_view_test.exs
 create mode 100644 test/elixir/test/partition_view_update_test.exs
 create mode 100644 test/elixir/test/reshard_all_docs_test.exs
 create mode 100644 test/elixir/test/reshard_basic_test.exs
 create mode 100644 test/elixir/test/reshard_changes_feed.exs
 create mode 100644 test/elixir/test/reshard_helpers.exs
 create mode 100644 test/elixir/test/support/couch_test_case.ex
 create mode 100644 test/elixir/test/users_db_test.exs
 create mode 100644 test/elixir/test/utf8_test.exs
 create mode 100644 test/elixir/test/view_test.exs
 delete mode 100644 test/javascript/tests/delayed_commits.js
 delete mode 100644 test/javascript/tests/replication.js