This is an automated email from the ASF dual-hosted git repository.
ronny pushed a change to branch fix/readme-dev-mac
in repository https://gitbox.apache.org/repos/asf/couchdb.git
omit bf8a3a065 chore(readme): update mac dev install instructions
add aff7a6e71 docs(mango): match description of `$mod` with reality
add bcfaa82c3 Merge pull request #4379 from pgj/mango-doc-fix
add deb8ef271 Adding build-report makefile target on Windows (#4384)
add 4b2d3dc62 Bump recon to 2.5.3
add 3b6ebdeb3 ci(mac): re-enable mac CI for the full build
add 5f2d5b135 Show mango_selector:match/2 call using test
add 00e24b0df Push down field projection in mango to shard
add 3181d928e Allow to run only specific EUnit tests on Windows (#4399)
add 262e4d161 Enforce docs ids _changes filter optimization limit
add e5f6c581b Docs: Fix example code in Partitioned Databases
add f11491568 return 503 immediately if search is not available
add 88ebc65c0 Merge pull request #4404 from
apache/503-if-search-not-available
add 9536b9796 chore(configure): be more defensive about SpiderMonkey
location
add 576ab21c6 Unify style of `if` blocks
add 23efd8e5b Port the SpiderMonkey check to Windows
add a7551aac2 docs(INSTALL.Unix): update instructions
add 832f58a7a Employ `make python-black-update`
add 1eef73952 Remove json2 JS script and the try except around seal
add 80b68a053 Use pip3 instead of pip in docs setup
add 0fa595531 Allow _local doc writes to the replicator dbs
add bf0903087 Remove all javascript tests
add 0a49ffcda Convert ExUnit tests back to EUnit
add a73388452 Disable execution of ExUnit tests
add c79d82f10 Fix Dreyfus Elixir test suite
add 4185bc094 Document the `dreyfus-test` `make` target
add 8bc485d9b Improve directory structure for Dreyfus EUnit tests
add f4311014f Stop citing the JavaScript integration tests
add 8a6c3bce2 Update the list of the available test suite types
add 0867d1b21 Reorder top-level smoosh-settings to the correct section
(#4420)
add d3b0bcbf3 Test the update_docs=true case in replicator scheduler docs
test
add 58e5825c6 mango: Remove unused imports
add b08dc7ac7 mango: Remove unused parameter from the JSON index selection
add 1c90b504a mango: Add type specification for the JSON index selection
add a650b4461 mango: Cover JSON index selection with unit tests
add 3fa8f72ac mango: Match comments with implementation for JSON index
selection
add 97fdac3af mango: Fix specification of `choose_best_index/1`
add 395c08302 Move elixir search tests to be with other elixir tests
add 50dd63176 Chase rename of `dreyfus-test` to `elixir-search` in
documentation
add df0699a60 Clean up `make help` output
add 065b86fab Remove the inactive uploader action from `build-report`
add 0feedb66f Fix the `list-eunit-apps` target
add 9b86e7130 Overhaul the Windows Makefile
add 645912d0c Fix typo
add 9f8cf48e9 docs/api: use {params} consistently in titles (#4426)
add b38885114 Allow definition of JWT roles claim as comma-seperated list
(#4431)
add c866b488d Unifying the notation of dynamic parameters in the docs
(#4436)
add f7cafa30a Fix typo in "feature_flags" section comment (#4433)
add b3890b5d3 Fix and extend developer instructions
add 9cde18150 mango: skip the `$keymapMatch` test for text indexes
add 1278cf19f mango: switch to UTF-8 encoding for every test
add 187d9337e Consolidate Mango integration tests
add ae3d2971e Upgrade hash algorithm for proxy auth (#4438)
add 9c1278dbc Show ini code-block correctly (#4440)
add cc674a85e Unifying the notation of dynamic parameters in the docs 2
(#4441)
add 301797c56 Update Erlang 24 for CI
add 7a2705ac6 hide shard-sync and purge documents from `_local_docs`
add b702a5edf inspect the document more precisely to avoid skipping user
docs
add 8f519ba04 add tests to cover hiding resp showing system docs
add ac600d1bb add a notice that purge documents are only visible with
`include_system=true`
add 4df37bc8c Update last_check in file logger record
add f677dd5e8 Use persistent terms for features
add 54879f9a5 This enables configuring FIPS mode at runtime without the
need for a custom build.
add c0b8839bf Only allow POST request for /{db}/_view_cleanup (#4449)
add b8abb4aad Fix bad prometheus section name
add 7ec5f645f Fix flaky LRU test
add 6e9834564 Fix flaky elixir users_db_tests
add 5aed161e9 Remove duplicate parts of doc note (#4455)
add 0db915475 Documentation: Add `adm:pass` to replication endpoint URL
(#4457)
add 0c49292a8 Improve documentation of source code format checks
add edded9618 Tweak formatting and style of `_find` API documentation
(#4460)
add 774acb85d Fix erlfmt-format on Windows (#4463)
add 8ec7b5788 Bump snappy to CouchDB-1.0.9 (#4464)
add f40147b26 mango: correct text index selection for queries with
`$regex` (#4458)
add bd1d8dc8b Modify conflict ruby example
add 5b5a1c2de Remove stale links from documentation comments
add dff01446c Prepare for Erlang OTP/26 (#4465)
add 138163147 fix: remove duplicate couchdb_erlang* from _prometheus
add 6d7cfe892 Avoid re-compiling filter view functions
add 5cdc0aa1b Fix list ordering and indentation in "Search" docs (#4476)
add 0aedd9384 fix: prometheus counter metric naming (#4474)
add b9762479f Improve couch_js_tests
add a25336f91 Migrate configure settings to Windows (#4479)
add bb0f37bf0 feat: add type and descriptions to prometheus output (#4475)
add 8c0a177c7 docs(typo): Fix server name duplicate (#4484)
add 937ccb6ef catch and log any error from mem3:local_shards
add 2c129d167 Merge pull request #4485 from apache/couch_index_crashes
add 1df0f4f40 Bump Erlang 24 and 25 in CI
add 189db657f fix(doc): reverse definition of `all_nodes` and
`cluster_nodes` to match reality
add 65ad03c0f Revert "catch and log any error from mem3:local_shards"
add 451d4bdd6 log the original stack trace if Mod:Func throws
add f82d96173 don't crash in handle_db_event
add 224d6764e track index pids during open and don't crash if they do
add 0073e764b Merge pull request #4491 from apache/couch_index_fixes
add 09dca4e5b Suppress sasl_error_logger output on Windows (#4492)
add 27af79c4a Add log directory to eunit setup template (#4493)
add 07c1433d3 eunit test to assert ddoc_updated clause doesn't throw
add 3f0d86f99 Increase index crash test cover a bit
add 35b1adc48 Merge pull request #4495 from apache/add_db_event_crash_test
add 467e14ef1 docs(_find): catch up with the implementation and further
fixes
add 25d6e7dfc add error_info clause for 410 Gone
add 75ee0f0fb Merge pull request #4503 from apache/410-gone
add cd77b07cf Treat javascript internal errors as fatal
add d1412552f docs(hosts): Remove misleading /etc/hosts info (#4506)
add bef20f357 feat (prometheus): metrics for individual message queues
add f4fd6b5d3 feat (prometheus): internal_replication_jobs metric
add ee11952c8 feat (prometheus): membership metric
add 8c1ef5bfe fix (prometheus): gauge types for metrics that can be
decremented
add a9bce2f59 Merge pull request #4507 from apache/prometheus_metrics
add 23f4e628d treat single-element keys as the key for `_view`
add 31e3f64e6 Merge pull request #4494 from jiahuili430/treat-key-as-keys
add 5c99df170 allow configurable timeouts for _view and _search
add 762277f3d Merge pull request #4513 from apache/configurable-timeouts
add f4d7d19de docs(_find): Remove redundancy from sample `_explain`
response
add db38da4af Add s390x back into the CI matrix
add 1432717b1 docs: Fixed `_compact/{ddoc}` and `_shards/{docid}` examples
add e32cfd63d Improve compression eunit test suite
add a6ab75b43 Querying `_all_docs` with non-string `key` should return an
empty list
add e755e2352 Make remsh work with quoted cookie
add 865d5f898 Bind python-black to specific version (#4528)
add b7686a9da feat (prometheus): include aggregated couch/index message
queues
add bb3314262 feat (prometheus): couch_db_updater and couch_file queue
stats
add 16a350b97 feat (prometheus): add Erlang distribution stats
add daecd3f50 fix (prometheus): do not emit ophaned HELP/TYPE lines
add 98a356c32 Merge pull request #4525 from apache/prometheus_erlang_dist
add 4b8b7ec9f Improve couch_proc_manager
add c5a7809f0 Remove limit parameter from ken
add 1ed0519a1 Remove explicit import
add c83b5ccb6 mango: introduce support for covering indexes
add 42deb8471 mango: add type information for better self-documentation
add 3351a2647 mango: increase coverage of the `choose_best_index/1` test
add 313b74e92 mango: add eunit tests
add e6af4924c _find: mention the `covered` attribute in the `_explain`
response
add f5371aab7 mango: add integration tests for keys-only covering indexes
add cc500adc1 mango: mark fields with the `$exists` operator indexable
add 8b1e1837d mango: enhance compositionality of
`consider_index_coverage/3`
add 28480f9a4 mango: fix definition of index coverage
add df52be577 mango: refactor
add c1195e43c fix(mango): GET invalid path under `_index` should not cause
500
add a28b75a9d Import nouveau (#4291)
add 4c741a94d put lucene 9 indexes in subdir
add 6f568480c Merge pull request #4539 from apache/nouveau-lucene9-subdir
add 3c90100de remove unused facet property
add ac300497b Merge pull request #4540 from
apache/nouveau-remove-facet-field
add be07ff799 simplify analyzer factory
add e956ce523 Merge pull request #4541 from
apache/nouveau-simplify-analyzer-factory
add 3f0ed0c9a doc(cve): add 2023-26268 placeholder
add 2ee4f659f doc(cve): add 2023-26268 placeholder & backport release notes
add eeca93c94 declare dependency on nouveau
add e4bc2b51c Merge pull request #4550 from apache/mango-nouveau-dep
add e6dcf443f Noticed the new internal error couchjs test was flaky
add 0d1175a4f Another flaky couch_js fix
add 5096243ff enable nouveau tests in CI
add 3ea049d64 allow PUT to existing index if definition identical
add 57fc9047a OTP 23 support
add f240adc8a Add log dumping to build-report make target
add f4f04e092 enhance out of order message
add 6f39ae734 mango end-to-end tests for nouveau
add 210e80e03 enhance test diagnostics
add 5df9dbe8c capture warn/error in entirety
add 2e4563115 disable ken
add 67e17afd9 maven batch mode
add 307450c3c cache (immutable) maven artifacts
add 8e03f9766 Merge pull request #4543 from
apache/jenkins-enable-nouveau-ci
add 23dfab503 fix race condition when creating indexes
add 6f4711fe7 Merge pull request #4555 from
apache/nouveau-race-condition-creating-index
add 07546f506 remove afterburner
add 82aa1625c Merge pull request #4556 from
apache/nouveau-remove-afterburner
add d5c78e6be finish partitioned support for nouveau
add aa8eb076c Merge pull request #4557 from
apache/nouveau-partition-support
add fe445bb95 Make Erlang 24 the minimum version
add a9831a676 fix ken_server:nouveau_updated
add 3044528d5 Merge pull request #4559 from apache/fix-ken-server-nouveau
add 2430728f5 Clarify encoding length in performance.rst
add e659a971c CVE-2023-2626 details doc update
add 17a99712e Nouveau doc fixes (#4572)
add f1ab0cabf Add report logging (#4483)
add 4083f7b1b mention flag and new dependencies
add bb633a712 Import xxHash
add bc49cef4b Encapsulate MD5 file checksums bits in couch_file
add 1a59e5d70 Remove duplicate etag generation function
add 92c338a3a Add new configure option and restore --dev behavior (#4582)
add 039da4a8b remove Content-MD5 header support
add 4a8c8b52f Merge pull request #4574 from
apache/remove-content-md5-header
add 6371cd0a0 Revert "fix(mango): GET invalid path under `_index` should
not cause 500"
add 2543590f3 Merge pull request #4584 from apache/revert-invalid-path-fix
add 9b3fbf4c3 Remove extra unused variable (#4577)
add 6bb4fbd78 upgrade nouveau to lucene 9.6.0
add 67c7f6025 Merge pull request #4585 from apache/nouveau-lucene-9.6.0
add bc3eb6717 switch to Gradle
add 9851bb396 Merge pull request #4587 from apache/nouveau-gradle
add 51267a5fd Improve nouveau mango integration
add f5935c65d Merge pull request #4589 from
apache/nouveau-mango-string-text
add a9d8cda2b Merge changes from 3.3.x into main
add 8600e46f2 mango: extend execution statistics with keys examined (#4569)
add 4c80583e3 fix dreyfus after 'Improve nouveau mango integration'
add abd129fac Merge pull request #4595 from apache/dreyfus-default-field
add 75316aedb add test and code quality plugins
add 80b8f24e6 apply spotless changes
add 98fc76d67 Merge pull request #4596 from apache/nouveau-quality-plugins
add a854625d7 fix(mango): covering indexes for partitioned databases
add 85e1fa791 Speed up internal replicator
add 54b8c7322 add nouveau and java tools to dev container
add 6ddeac80a Merge pull request #4599 from apache/nouveau-dev-container
add f74572775 add tests for QueryDeserializer
add a58684f42 Merge pull request #4600 from
apache/nouveau-query-deserializer-tests
add dcf57c710 Add a simple fabric benchmark
add b195f3734 mango: address missing parts of the `_index` API
add 6b4cbaa72 Update default vm.args settings
add ba54c635b Optimize mem3:dbname/1 function
add 68ef23311 Fix rebar3 version to 3.21.0
add e6939557b ARM64 worker went away.
add 116c5b0a9 Revert "ARM64 worker went away."
add 951f1b946 Add a few more commit and query engine metrics
add 834a2d31e Add missing stats description for Mango keys examined
add 751c14dc3 mango: fix the faulty `index_array_length` tests
add 649f47310 mango: remove redundant text service checks from the tests
add 3ff87fafc optionally suppress version info in server response header
add 2bbc89ce1 Use milliseconds for fsync time histogram
add a4bad8d8e Bump requests from 2.27.1 to 2.31.0 in /src/mango
add 1f363b764 Improve fsync metrics time calculation
add 0748a1e7a Use a faster sets implementation available since OTP 24
add 79b2b7c11 Revert "Bump requests from 2.27.1 to 2.31.0 in /src/mango"
add 4cfdf3062 Fix warning: variable bound multiple times
add 6194cfc68 Git ignore mango .hypothesis directory
add a4bbb87d1 Remove excl_archive_filters
add b7de21f46 Support OTP 26 base64 decode error
add 7f13f640c Sort lists from maps
add 453c698a5 Convert `term_to_binary` to `?term_to_bin`
add bf5868890 Merge pull request #4581 from apache/otp-26-compat
add f7db54c41 Rename NonRep -> Local and merge_conflicts ->
replicated_changes
add 0bc0839ac Add OTP 26 to pull request CI list
add c75c31d38 Handle replicator instance start time during upgrades better
add 1a45bc211 Use xxHash for couch_file document and attachment summary
checksums
add c742d9c7c Fix purge infos replicating to the wrong shards during shard
splitting.
add 8b6b3e9b3 Fix typo POST -> PUT
add 0fa9a07f0 Add extra assert in flaky couch_file test
add e996fa07b Fix prometheus to survive mem3_sync termination
add 416c1cd8d TLS: add `{verify, verify_peer}` to enable verification
add eb6a74d56 mango: revisit test database recreation logic
add 604526f5f Add optional logging of security issues when replicating
(#4625)
add bb1216593 clarify default quorum calculation
add 38b00c900 Merge pull request #4636 from apache/clarify-quorum
add bca3ab09f Clean up fabric_bench_test databases
add 3690f9e24 Improve emitted change feed sequence after a split
add be2eeccdc docs: update sphinx resource hyperlink
add 290ea87b8 docs: add `adm:pass` to URL examples
add fafa982c5 Fix the ability to use ; in config values
add d9b4c199e upgrade nouveau to lucene 9.7.0
add 16f47d758 Merge pull request #4654 from apache/lucene-9.7.0
add f5897635e mango: replace `foldl` with a `map`
add 8dbb021aa Fix undefined range in mem3_rep purge replication logic
add e3eb6dfca upgrde to dropwizard 4.0.1
add c892a2619 Merge pull request #4664 from apache/dropwizard-4.0.1
add d7a082af2 mango: chase changes in `mango_idx_text`
add 2d0e6a585 Merge pull request #4660 from pgj/fix/mango_idx_nouveau-regex
add 4a68234e7 mango: simplify implementation of empty selector tests
add fca1969ae split all
add 05df4bb41 Merge pull request #4669 from apache/replicator-split-all
add ac8cb3779 Fix updating values via the Server Configuration API
add 882e7161a allow setting of some ibrowse options
add e7f67c846 Merge pull request #4670 from
apache/replicator-ibrowse-options
add 890c26d5c deps: upgrade proper (#4671)
add 5df7fee19 Conditionally exclude nouveau from elixir make target
add 377e71304 Merge pull request #4674 from
apache/nouveau-elixir-conditional
add e89219848 Fix multipart parser "attachment longer than expected" error
add d4d49077d Crash replication jobs on unexpected 4xx errors
add 3e8155e6c Replace Folsom and improve performance
add c3e67eec8 Fix: `_design_docs/queries` with `keys` should only return
design docs
add 29f79d5ab docs: `_design_docs/queries` and `_local_docs/queries`
add a19d8a9ea allow locale setting for number detection
add 63672afb4 Merge pull request #4685 from apache/nouveau-locale
add b7ca600e8 run haproxy and nouveau without shell
add 36cb5f06e Merge pull request #4689 from apache/dev-run-no-shell
add 4df0dc45e docs: add Centos/RHEL9+, thanks for nothing RedHat
add d2edfd9a3 feat: allow restarting of failed jobs
add 480d3a3cb feat: make rexi timeouts and replication batches for shard
split topoff configurable
add 795d37afe set nouveau minimum java version
add 48338247b Merge pull request #4692 from
apache/nouveau-minimum-java-version
add cfee5236b send cookie on successful basic auth
add e35fb2032 Merge pull request #4687 from apache/preemptive-cookie
add ea737d908 Revert "send cookie on successful basic auth"
add d609a9f32 Merge pull request #4694 from apache/revert-preemptive-cookie
add 1c9dbdb14 Build Nouveau on Windows (#4678)
add 3a4c2606a Add "CouchDB-Replicator/..." user agent to replicator
/_session requests
add 2df79d0f3 Try to fix the full CI checkout
add ff2fea6c8 Read the Docs configuration file (#4233)
add bd5781dfd Update docs badge icon (#4699)
add 50c69a0c6 send a session cookie after successful basic auth
add 9d44e311e Merge pull request #4702 from apache/basic-auth-to-session
add 42142f895 mango: remove duplicate elements from `indexable_fields/1`
results
add 526e203d3 dreyfus: make faceting produce maps on empty results
add 5e5ac9edd mango: tweak the formatting of option r in the _explain
output
add 3294a72ac test(make): remove `elixir` target, rename `elixir-suite` to
`elixir`
add 7313c4aa7 dreyfus: amend the fix for faceting on zero values
add aef083c59 Merge pull request #4707 from
pgj/fix/dreyfus-faceting-on-zero-part-deux
add 1f2994e7c ci(freebsd): re-enable full platform ci on FreeBSD
add 64af302f6 Handle invalid field errors in Mango
add 6b9e5bfee feat(build): fail build if xref complains
add f9d4dccfa Introduce optional countermeasures as we run out of disk
space
add 14a8d5c1c Merge pull request #4681 from apache/out-of-disk-handler
add a1ca6d75d Upgrade sphinx-rtd-theme
add 5f26ab1c1 docs: fix markdown for Mango configuration options
add 996e257ee docs: correct the order of fields in the sample _explain
output
add 64faef7a5 Fix pending count for the reverse changes feed
add 259e64173 support clustered purge in nouveau
add 954b57356 Merge pull request #4717 from apache/nouveau-purge
add 42a62b235 Update README.md
add 55589b7d3 Merge pull request #4721 from apache/rnewson-patch-1
add 33235273f Fix badmatch error when purge requests time out
add e69178d3f More Makefile.win adjustments to match Makefile (#4731)
add e60e27554 Unlock build using Elixir 1.15 (#4726)
add c32ceea43 Try to fix deb package builds in the main CI
add 1b09a3b3a Use GNU make vars for paths (#4732)
add d5701f437 Stop client process and clean up if client disconnects
add 9a6bba88e Ban the last monster (#4743)
new a51250c20 chore(readme): update mac dev install instructions
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 (bf8a3a065)
\
N -- N -- N refs/heads/fix/readme-dev-mac (a51250c20)
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.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.asf.yaml | 6 +
.devcontainer/devcontainer.json | 13 +-
.gitignore | 7 +-
.readthedocs.yaml | 37 +
INSTALL.Unix.md | 38 +-
LICENSE | 41 +
Makefile | 159 +-
Makefile.win | 196 +-
README-DEV.rst | 141 +-
README.rst | 4 +-
build-aux/Jenkinsfile.full | 74 +-
build-aux/Jenkinsfile.pr | 8 +-
build-aux/print-committerlist.sh | 2 +-
build-aux/show-test-results.py | 4 +-
build-aux/xref-helper.sh | 24 +
configure | 74 +-
configure.ps1 | 29 +-
dev/format_lib.py | 4 +-
dev/remsh-tls | 8 +-
dev/run | 84 +-
mix.exs | 6 +-
nouveau/.gitattributes | 1 +
nouveau/.gitignore | 8 +
nouveau/LICENSE | 201 +
nouveau/README.md | 118 +
nouveau/TODO | 8 +
nouveau/build.gradle | 91 +
nouveau/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 62076 bytes
nouveau/gradle/wrapper/gradle-wrapper.properties | 6 +
nouveau/gradlew | 245 +
nouveau/gradlew.bat | 92 +
nouveau/nouveau.yaml | 27 +
nouveau/settings.gradle | 5 +
.../apache/couchdb/nouveau/NouveauApplication.java | 80 +
.../nouveau/NouveauApplicationConfiguration.java | 71 +
.../apache/couchdb/nouveau/api/AnalyzeRequest.java | 48 +
.../couchdb/nouveau/api/AnalyzeResponse.java | 41 +
.../couchdb/nouveau/api/DocumentDeleteRequest.java | 55 +
.../couchdb/nouveau/api/DocumentUpdateRequest.java | 69 +
.../apache/couchdb/nouveau/api/DoubleField.java | 52 +
.../apache/couchdb/nouveau/api/DoubleRange.java | 27 +
.../java/org/apache/couchdb/nouveau/api/Field.java | 44 +
.../couchdb/nouveau/api/IndexDefinition.java | 89 +
.../org/apache/couchdb/nouveau/api/IndexInfo.java | 68 +
.../couchdb/nouveau/api/IndexInfoRequest.java | 45 +
.../java/org/apache/couchdb/nouveau/api/Range.java | 130 +
.../org/apache/couchdb/nouveau/api/SearchHit.java | 60 +
.../apache/couchdb/nouveau/api/SearchRequest.java | 160 +
.../apache/couchdb/nouveau/api/SearchResults.java | 92 +
.../apache/couchdb/nouveau/api/StoredField.java | 45 +
.../apache/couchdb/nouveau/api/StringField.java | 53 +
.../org/apache/couchdb/nouveau/api/TextField.java | 53 +
.../org/apache/couchdb/nouveau/core/IOUtils.java | 63 +
.../org/apache/couchdb/nouveau/core/Index.java | 217 +
.../apache/couchdb/nouveau/core/IndexFunction.java | 22 +
.../apache/couchdb/nouveau/core/IndexLoader.java | 24 +
.../apache/couchdb/nouveau/core/IndexManager.java | 338 ++
.../apache/couchdb/nouveau/core/StripedLock.java | 42 +
.../nouveau/core/UpdatesOutOfOrderException.java | 28 +
.../couchdb/nouveau/core/ser/ByteArrayWrapper.java | 23 +
.../couchdb/nouveau/core/ser/DoubleWrapper.java | 23 +
.../couchdb/nouveau/core/ser/FloatWrapper.java | 23 +
.../couchdb/nouveau/core/ser/IntWrapper.java | 23 +
.../couchdb/nouveau/core/ser/LongWrapper.java | 23 +
.../couchdb/nouveau/core/ser/PrimitiveWrapper.java | 45 +
.../couchdb/nouveau/core/ser/StringWrapper.java | 23 +
.../couchdb/nouveau/health/AnalyzeHealthCheck.java | 43 +
.../couchdb/nouveau/health/IndexHealthCheck.java | 60 +
.../nouveau/lucene9/Lucene9AnalyzerFactory.java | 139 +
.../couchdb/nouveau/lucene9/Lucene9Index.java | 513 ++
.../couchdb/nouveau/lucene9/Lucene9Module.java | 29 +
.../nouveau/lucene9/NouveauQueryParser.java | 184 +
.../nouveau/lucene9/ParallelSearcherFactory.java | 34 +
.../couchdb/nouveau/lucene9/QueryDeserializer.java | 134 +
.../couchdb/nouveau/lucene9/QuerySerializer.java | 168 +
.../lucene9/SimpleAsciiFoldingAnalyzer.java | 37 +
.../couchdb/nouveau/resources/AnalyzeResource.java | 69 +
.../couchdb/nouveau/resources/IndexResource.java | 163 +
.../couchdb/nouveau/tasks/CloseAllIndexesTask.java | 35 +
nouveau/src/main/resources/banner.txt | 7 +
nouveau/src/main/resources/openapi.yaml | 9 +
.../couchdb/nouveau/api/SearchRequestTest.java | 57 +
.../nouveau/health/AnalyzeHealthCheckTest.java | 29 +
.../nouveau/health/IndexHealthCheckTest.java | 48 +
.../lucene9/Lucene9AnalyzerFactoryTest.java | 281 +
.../couchdb/nouveau/lucene9/Lucene9IndexTest.java | 246 +
.../nouveau/lucene9/NouveauQueryParserTest.java | 116 +
.../nouveau/lucene9/QuerySerializationTest.java | 106 +
.../resources/fixtures/DocumentUpdateRequest.json | 22 +
.../src/test/resources/fixtures/SearchRequest.json | 17 +
rebar.config.script | 11 +-
rel/apps/couch_epi.config | 1 +
rel/files/eunit.ini | 4 +-
rel/overlay/bin/remsh | 21 +-
rel/overlay/etc/default.ini | 73 +-
rel/overlay/etc/vm.args | 35 +
rel/plugins/eunit_plugin.erl | 4 +-
rel/reltool.config | 13 +-
setup_eunit.template | 3 +-
share/server/filter.js | 5 -
share/server/json2.js | 482 --
share/server/loop.js | 29 +-
share/server/nouveau.js | 108 +
share/server/state.js | 12 +-
share/server/util.js | 12 +-
share/server/views.js | 2 +
src/chttpd/priv/stats_descriptions.cfg | 4 +
src/chttpd/src/chttpd.erl | 49 +-
src/chttpd/src/chttpd_db.erl | 49 +-
src/chttpd/src/chttpd_misc.erl | 15 +-
src/chttpd/src/chttpd_node.erl | 79 +-
src/chttpd/src/chttpd_show.erl | 5 +-
src/chttpd/src/chttpd_util.erl | 125 +-
src/chttpd/test/eunit/chttpd_auth_tests.erl | 87 +
src/chttpd/test/eunit/chttpd_changes_test.erl | 656 ++
src/chttpd/test/eunit/chttpd_db_test.erl | 939 +--
src/chttpd/test/eunit/chttpd_local_docs_tests.erl | 198 +
src/chttpd/test/eunit/chttpd_util_test.erl | 89 +
src/chttpd/test/eunit/chttpd_view_test.erl | 473 +-
src/config/src/config.erl | 82 +-
src/config/test/config_tests.erl | 6 +
src/couch/include/couch_db.hrl | 11 +-
src/couch/priv/stats_descriptions.cfg | 56 +
src/couch/rebar.config.script | 3 +
src/couch/src/couch.app.src | 3 +-
src/couch/src/couch_att.erl | 10 +-
src/couch/src/couch_bt_engine.erl | 4 +-
src/couch/src/couch_changes.erl | 22 +-
src/couch/src/couch_db.erl | 60 +-
src/couch/src/couch_db_split.erl | 47 +-
src/couch/src/couch_db_updater.erl | 44 +-
src/couch/src/couch_disk_monitor.erl | 241 +
src/couch/src/couch_doc.erl | 10 +-
src/couch/src/couch_file.erl | 150 +-
src/couch/src/couch_hash.erl | 30 +-
src/couch/src/couch_httpd.erl | 19 +-
src/couch/src/couch_httpd_auth.erl | 99 +-
src/couch/src/couch_httpd_db.erl | 31 +-
src/couch/src/couch_httpd_multipart.erl | 2 +-
.../src/couch_lists.erl} | 40 +-
src/couch/src/couch_native_process.erl | 4 +-
src/couch/src/couch_os_process.erl | 9 +-
src/couch/src/couch_proc_manager.erl | 664 +-
src/couch/src/couch_query_servers.erl | 108 +-
src/couch/src/couch_secondary_sup.erl | 3 +-
src/couch/src/couch_server.erl | 8 -
src/couch/src/couch_util.erl | 5 +-
src/couch/src/test_util.erl | 6 +
src/couch/test/eunit/couch_auth_cache_tests.erl | 3 +-
src/couch/test/eunit/couch_compress_tests.erl | 128 +
src/couch/test/eunit/couch_etag_tests.erl | 4 +-
src/couch/test/eunit/couch_file_tests.erl | 297 +-
src/couch/test/eunit/couch_flags_config_tests.erl | 2 +-
src/couch/test/eunit/couch_hash_test.erl | 52 +
src/couch/test/eunit/couch_js_tests.erl | 219 +-
.../test/eunit/couch_lists_tests.erl} | 25 +-
src/couch/test/eunit/couch_query_servers_tests.erl | 2 +-
src/couch/test/eunit/couch_totp_tests.erl | 37 +-
src/couch/test/eunit/couchdb_attachments_tests.erl | 30 +-
.../test/eunit/couchdb_file_compression_tests.erl | 116 +-
src/couch/test/eunit/couchdb_os_proc_pool.erl | 796 ++-
src/couch/test/eunit/same_site_cookie_tests.erl | 88 +
src/couch/test/exunit/couch_compress_tests.exs | 113 -
src/couch/test/exunit/same_site_cookie_tests.exs | 44 -
src/couch/test/exunit/test_helper.exs | 2 -
src/couch_dist/.gitignore | 4 +
src/couch_dist/README.md | 162 +
src/couch_dist/certs/certs | 11 +
src/couch_dist/certs/certs.exs | 209 +
src/couch_dist/certs/parse_cert.escript | 8 +
src/couch_dist/gen_certs | 43 +
src/couch_epi/src/couch_epi.hrl | 3 +
src/couch_epi/src/couch_epi_util.erl | 4 +-
src/couch_event/src/couch_event_listener_mfa.erl | 25 +-
src/couch_index/src/couch_index_server.erl | 150 +-
.../test/eunit/couch_index_crash_tests.erl | 233 +
.../test/eunit/couch_index_ddoc_updated_tests.erl | 3 +-
src/couch_log/include/couch_log.hrl | 3 +-
src/couch_log/priv/stats_descriptions.cfg | 8 +
src/couch_log/src/couch_log.erl | 14 +-
src/couch_log/src/couch_log_config.erl | 3 +
src/couch_log/src/couch_log_config_dyn.erl | 1 +
src/couch_log/src/couch_log_formatter.erl | 65 +
src/couch_log/src/couch_log_sup.erl | 2 +
src/couch_log/src/couch_log_trunc_io.erl | 2 +-
src/couch_log/src/couch_log_util.erl | 13 +-
src/couch_log/src/couch_log_writer_file.erl | 9 +-
src/couch_log/src/couch_log_writer_stderr.erl | 4 +-
src/couch_log/src/couch_log_writer_syslog.erl | 28 +-
src/couch_log/test/eunit/couch_log_config_test.erl | 18 +
.../test/eunit/couch_log_formatter_test.erl | 17 +
src/couch_log/test/eunit/couch_log_writer_ets.erl | 7 +-
.../test/eunit/couch_log_writer_syslog_test.erl | 40 +
src/couch_mrview/src/couch_mrview.erl | 94 +-
src/couch_mrview/src/couch_mrview_http.erl | 37 +-
src/couch_mrview/src/couch_mrview_show.erl | 5 +-
src/couch_mrview/src/couch_mrview_util.erl | 38 +-
.../test/eunit/couch_mrview_all_docs_tests.erl | 39 +
.../test/eunit/couch_mrview_http_tests.erl | 29 +
src/couch_prometheus/src/couch_prometheus.app.src | 2 +-
src/couch_prometheus/src/couch_prometheus.erl | 362 ++
src/couch_prometheus/src/couch_prometheus_http.erl | 5 +-
.../src/couch_prometheus_server.erl | 236 -
src/couch_prometheus/src/couch_prometheus_sup.erl | 4 +-
src/couch_prometheus/src/couch_prometheus_util.erl | 185 +-
.../test/eunit/couch_prometheus_e2e_tests.erl | 63 +-
.../test/eunit/couch_prometheus_util_tests.erl | 70 -
.../src/cpse_test_read_write_docs.erl | 5 +-
src/couch_pse_tests/src/cpse_util.erl | 4 +-
.../include/couch_replicator_api_wrap.hrl | 3 +-
src/couch_replicator/src/couch_replicator.erl | 1 +
.../src/couch_replicator_api_wrap.erl | 30 +-
.../src/couch_replicator_auth_session.erl | 20 +-
.../src/couch_replicator_doc_processor.erl | 1 +
src/couch_replicator/src/couch_replicator_docs.erl | 2 +
src/couch_replicator/src/couch_replicator_ids.erl | 2 +-
.../src/couch_replicator_parse.erl | 89 +-
.../src/couch_replicator_scheduler_job.erl | 26 +-
.../src/couch_replicator_utils.erl | 111 +-
.../src/couch_replicator_worker.erl | 104 +-
.../test/eunit/couch_replicator_doc_ids_tests.erl | 82 +
.../couch_replicator_error_reporting_tests.erl | 204 +-
.../couch_replicator_scheduler_docs_tests.erl | 262 +-
.../test/eunit/couch_replicator_test_helper.erl | 12 +-
src/couch_stats/README.md | 21 +-
src/couch_stats/src/couch_stats.app.src | 2 +-
src/couch_stats/src/couch_stats.erl | 209 +-
src/couch_stats/src/couch_stats.hrl | 14 -
src/couch_stats/src/couch_stats_aggregator.erl | 162 -
src/couch_stats/src/couch_stats_counter.erl | 67 +
src/couch_stats/src/couch_stats_gauge.erl | 54 +
src/couch_stats/src/couch_stats_histogram.erl | 457 ++
src/couch_stats/src/couch_stats_httpd.erl | 9 -
src/couch_stats/src/couch_stats_math.erl | 406 ++
src/couch_stats/src/couch_stats_server.erl | 250 +
src/couch_stats/src/couch_stats_sup.erl | 2 +-
src/couch_stats/src/couch_stats_util.erl | 190 +
.../src/ddoc_cache_entry_validation_funs.erl | 2 +-
src/ddoc_cache/src/ddoc_cache_value.erl | 4 +-
src/docs/README.md | 4 +-
src/docs/ext/configdomain.py | 2 -
src/docs/requirements.txt | 2 +-
src/docs/setup.sh | 4 +-
src/docs/src/api/database/bulk-api.rst | 108 +-
src/docs/src/api/database/changes.rst | 6 +-
src/docs/src/api/database/common.rst | 6 +-
src/docs/src/api/database/compact.rst | 28 +-
src/docs/src/api/database/find.rst | 326 +-
src/docs/src/api/database/index.rst | 4 +-
src/docs/src/api/database/misc.rst | 26 +-
src/docs/src/api/database/security.rst | 8 +-
src/docs/src/api/database/shard.rst | 23 +-
src/docs/src/api/ddoc/common.rst | 18 +-
src/docs/src/api/ddoc/index.rst | 1 +
src/docs/src/api/ddoc/nouveau.rst | 145 +
src/docs/src/api/ddoc/render.rst | 38 +-
src/docs/src/api/ddoc/rewrites.rst | 2 +-
src/docs/src/api/ddoc/search.rst | 12 +-
src/docs/src/api/ddoc/views.rst | 91 +-
src/docs/src/api/document/attachments.rst | 14 +-
src/docs/src/api/document/common.rst | 6 +-
src/docs/src/api/local.rst | 165 +-
src/docs/src/api/partitioned-dbs.rst | 28 +-
src/docs/src/api/server/authn.rst | 50 +-
src/docs/src/api/server/common.rst | 53 +-
src/docs/src/best-practices/forms.rst | 6 +-
src/docs/src/best-practices/iso-date.rst | 4 +-
src/docs/src/best-practices/reverse-proxies.rst | 2 +-
src/docs/src/cluster/purging.rst | 8 +-
src/docs/src/cluster/sharding.rst | 15 +-
src/docs/src/cluster/tls_erlang_distribution.rst | 53 +-
src/docs/src/config/auth.rst | 20 +-
src/docs/src/config/compaction.rst | 2 +-
src/docs/src/config/couch-peruser.rst | 2 +-
src/docs/src/config/couchdb.rst | 17 +
src/docs/src/config/disk-monitor.rst | 76 +
src/docs/src/config/http.rst | 32 +
src/docs/src/config/index.rst | 1 +
src/docs/src/config/intro.rst | 6 +-
src/docs/src/config/query-servers.rst | 37 +-
src/docs/src/config/replicator.rst | 65 +-
src/docs/src/cve/2023-26268.rst | 61 +
src/docs/src/ddocs/index.rst | 1 +
src/docs/src/ddocs/nouveau.rst | 692 +++
src/docs/src/ddocs/search.rst | 90 +-
src/docs/src/ddocs/views/collation.rst | 2 +-
src/docs/src/ddocs/views/pagination.rst | 4 +-
src/docs/src/experimental.rst | 10 +
src/docs/src/install/index.rst | 1 +
src/docs/src/install/nouveau.rst | 69 +
src/docs/src/install/search.rst | 2 +-
src/docs/src/install/unix.rst | 21 +-
src/docs/src/intro/api.rst | 43 +-
src/docs/src/intro/curl.rst | 19 +-
src/docs/src/intro/security.rst | 8 +-
src/docs/src/maintenance/compaction.rst | 29 +-
src/docs/src/maintenance/performance.rst | 4 +-
src/docs/src/partitioned-dbs/index.rst | 22 +-
src/docs/src/replication/conflicts.rst | 107 +-
src/docs/src/replication/replicator.rst | 70 +-
src/docs/src/setup/cluster.rst | 6 +-
src/docs/src/setup/single-node.rst | 6 +-
src/docs/src/whatsnew/0.11.rst | 2 +-
src/docs/src/whatsnew/2.3.rst | 4 +-
src/docs/src/whatsnew/3.2.rst | 18 +-
src/docs/src/whatsnew/3.3.rst | 56 +-
src/dreyfus/src/dreyfus_fabric_search.erl | 4 +-
src/dreyfus/src/dreyfus_httpd.erl | 20 +-
src/dreyfus/src/dreyfus_index.erl | 6 +-
src/dreyfus/test/elixir/mix.exs | 30 -
src/dreyfus/test/elixir/mix.lock | 5 -
src/dreyfus/test/elixir/run | 4 -
src/dreyfus/test/elixir/test/test_helper.exs | 4 -
.../{ => eunit}/dreyfus_blacklist_await_test.erl | 0
.../{ => eunit}/dreyfus_blacklist_request_test.erl | 0
.../test/{ => eunit}/dreyfus_config_test.erl | 0
.../test/{ => eunit}/dreyfus_purge_test.erl | 0
src/dreyfus/test/{ => eunit}/dreyfus_test_util.erl | 0
src/ets_lru/test/ets_lru_test.erl | 6 +
src/exxhash/.gitignore | 7 +
src/{b64url => exxhash}/Makefile | 0
src/exxhash/README.md | 27 +
src/exxhash/c_src/exxhash.c | 31 +
src/exxhash/c_src/xxhash.c | 43 +
src/exxhash/c_src/xxhash.h | 6415 ++++++++++++++++++++
src/exxhash/rebar.config | 32 +
.../couch_epi.hrl => exxhash/src/exxhash.app.src} | 9 +-
src/exxhash/src/exxhash.erl | 55 +
src/exxhash/test/exxhash_tests.erl | 54 +
src/fabric/src/fabric.erl | 7 +-
src/fabric/src/fabric_bench.erl | 371 ++
src/fabric/src/fabric_db_create.erl | 3 +-
src/fabric/src/fabric_db_update_listener.erl | 16 +-
src/fabric/src/fabric_doc_purge.erl | 591 +-
src/fabric/src/fabric_rpc.erl | 60 +-
src/fabric/src/fabric_streams.erl | 225 +-
src/fabric/src/fabric_util.erl | 2 +-
src/fabric/src/fabric_view.erl | 17 +-
src/fabric/src/fabric_view_all_docs.erl | 44 +-
src/fabric/src/fabric_view_changes.erl | 42 +-
src/fabric/src/fabric_view_map.erl | 8 +-
src/fabric/src/fabric_view_reduce.erl | 6 +-
src/fabric/test/eunit/fabric_bench_test.erl | 91 +
src/global_changes/src/global_changes_listener.erl | 6 +-
src/global_changes/src/global_changes_server.erl | 6 +-
src/ken/src/ken_server.erl | 71 +-
src/ken/test/ken_server_test.erl | 10 +-
src/mango/README.md | 2 +-
src/mango/requirements.txt | 3 +-
src/mango/src/mango.app.src | 3 +-
src/mango/src/mango.hrl | 30 +
src/mango/src/mango_cursor.erl | 14 +-
...go_cursor_text.erl => mango_cursor_nouveau.erl} | 139 +-
src/mango/src/mango_cursor_special.erl | 4 +-
src/mango/src/mango_cursor_text.erl | 8 +-
src/mango/src/mango_cursor_view.erl | 1452 ++++-
src/mango/src/mango_error.erl | 37 +
src/mango/src/mango_execution_stats.erl | 78 +-
src/mango/src/mango_httpd.erl | 49 +-
src/mango/src/mango_idx.erl | 36 +-
.../{mango_idx_text.erl => mango_idx_nouveau.erl} | 26 +-
src/mango/src/mango_idx_text.erl | 150 +-
src/mango/src/mango_idx_view.erl | 137 +-
src/mango/src/mango_native_proc.erl | 119 +-
src/mango/src/mango_selector.erl | 74 +-
src/mango/src/mango_selector_text.erl | 435 +-
src/mango/test/01-index-crud-test.py | 51 +
src/mango/test/02-basic-find-test.py | 19 +-
src/mango/test/03-operator-test.py | 4 +
src/mango/test/04-key-tests.py | 4 +-
src/mango/test/05-index-selection-test.py | 33 +-
src/mango/test/06-basic-text-test.py | 3 +-
src/mango/test/06-text-default-field-test.py | 3 -
src/mango/test/07-text-custom-field-list-test.py | 2 -
.../test/10-disable-array-length-field-test.py | 5 +-
src/mango/test/13-users-db-find-test.py | 1 -
src/mango/test/15-execution-stats-test.py | 17 +-
src/mango/test/16-index-selectors-test.py | 59 +-
src/mango/test/21-empty-selector-tests.py | 129 +-
src/mango/test/22-covering-index-test.py | 183 +
src/mango/test/README.md | 29 -
src/mango/test/mango.py | 97 +-
src/mango/test/user_docs.py | 18 +-
src/mem3/src/mem3.erl | 53 +-
src/mem3/src/mem3_hash.erl | 3 +-
src/mem3/src/mem3_rep.erl | 156 +-
src/mem3/src/mem3_reshard.erl | 2 +-
src/mem3/src/mem3_reshard_index.erl | 44 +-
src/mem3/src/mem3_reshard_job.erl | 26 +-
src/mem3/src/mem3_rpc.erl | 3 +
src/mem3/src/mem3_sync.erl | 15 +-
src/mem3/src/mem3_sync_event_listener.erl | 6 +-
src/mem3/src/mem3_util.erl | 2 +-
src/mem3/test/eunit/mem3_rep_test.erl | 229 +-
src/mem3/test/eunit/mem3_reshard_api_test.erl | 32 +
src/mem3/test/eunit/mem3_reshard_test.erl | 108 +-
src/nouveau/include/nouveau.hrl | 23 +
.../priv/stats_descriptions.cfg | 17 +-
src/nouveau/src/nouveau.app.src | 29 +
.../src/nouveau.erl} | 11 +-
src/nouveau/src/nouveau_api.erl | 257 +
src/nouveau/src/nouveau_app.erl | 30 +
src/nouveau/src/nouveau_bookmark.erl | 68 +
src/nouveau/src/nouveau_epi.erl | 52 +
src/nouveau/src/nouveau_fabric.erl | 36 +
src/nouveau/src/nouveau_fabric_cleanup.erl | 43 +
src/nouveau/src/nouveau_fabric_info.erl | 99 +
src/nouveau/src/nouveau_fabric_search.erl | 227 +
src/nouveau/src/nouveau_httpd.erl | 288 +
src/nouveau/src/nouveau_httpd_handlers.erl | 35 +
src/nouveau/src/nouveau_index_manager.erl | 161 +
src/nouveau/src/nouveau_index_updater.erl | 213 +
.../src/nouveau_plugin_couch_db.erl} | 14 +-
src/nouveau/src/nouveau_rpc.erl | 57 +
src/nouveau/src/nouveau_sup.erl | 31 +
src/nouveau/src/nouveau_util.erl | 198 +
src/smoosh/operator_guide.md | 4 +-
src/smoosh/src/smoosh_persist.erl | 14 +-
support/build_js.escript | 4 +-
test/elixir/lib/couch.ex | 25 +-
test/elixir/test/attachments_test.exs | 23 -
test/elixir/test/config/nouveau.elixir | 29 +
test/elixir/test/config/search.elixir | 36 +
test/elixir/test/config/suite.elixir | 8 +-
test/elixir/test/config/test-config.ini | 9 +
test/elixir/test/config_test.exs | 12 +
test/elixir/test/cookie_auth_test.exs | 42 +
test/elixir/test/disk_monitor.exs | 55 +
test/elixir/test/jwt_roles_claim_test.exs | 40 +-
test/elixir/test/nouveau_test.exs | 599 ++
.../elixir/test/partition_search_test.exs | 0
.../test => test}/elixir/test/search_test.exs | 77 +-
test/elixir/test/users_db_test.exs | 8 +-
test/fixtures/allowed-xref.txt | 2 +
test/javascript/tests/list_views.js | 502 --
test/javascript/tests/proxyauth.js | 137 -
test/javascript/tests/replicator_db_bad_rep_id.js | 103 -
test/javascript/tests/replicator_db_by_doc_id.js | 128 -
test/javascript/tests/rewrite.js | 513 --
test/javascript/tests/rewrite_js.js | 366 --
test/javascript/tests/security_validation.js | 330 -
test/javascript/tests/show_documents.js | 376 --
test/javascript/tests/users_db_security.js | 418 --
version.mk | 2 +-
444 files changed, 31772 insertions(+), 8191 deletions(-)
create mode 100644 .readthedocs.yaml
create mode 100755 build-aux/xref-helper.sh
create mode 100644 nouveau/.gitattributes
create mode 100644 nouveau/.gitignore
create mode 100644 nouveau/LICENSE
create mode 100644 nouveau/README.md
create mode 100644 nouveau/TODO
create mode 100644 nouveau/build.gradle
create mode 100644 nouveau/gradle/wrapper/gradle-wrapper.jar
create mode 100644 nouveau/gradle/wrapper/gradle-wrapper.properties
create mode 100755 nouveau/gradlew
create mode 100644 nouveau/gradlew.bat
create mode 100644 nouveau/nouveau.yaml
create mode 100644 nouveau/settings.gradle
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/NouveauApplication.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/NouveauApplicationConfiguration.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeResponse.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/DocumentDeleteRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/DocumentUpdateRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/DoubleField.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/DoubleRange.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/Field.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexDefinition.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexInfo.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexInfoRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/Range.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/SearchHit.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/SearchRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/SearchResults.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/StoredField.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/StringField.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/TextField.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/IOUtils.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/Index.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexFunction.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexLoader.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexManager.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/StripedLock.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/UpdatesOutOfOrderException.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/ByteArrayWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/DoubleWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/FloatWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/IntWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/LongWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/PrimitiveWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/StringWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/health/AnalyzeHealthCheck.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/health/IndexHealthCheck.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/Lucene9AnalyzerFactory.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/Lucene9Index.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/Lucene9Module.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/NouveauQueryParser.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/ParallelSearcherFactory.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/QueryDeserializer.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/QuerySerializer.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/SimpleAsciiFoldingAnalyzer.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/resources/AnalyzeResource.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/resources/IndexResource.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/tasks/CloseAllIndexesTask.java
create mode 100644 nouveau/src/main/resources/banner.txt
create mode 100644 nouveau/src/main/resources/openapi.yaml
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/api/SearchRequestTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/health/AnalyzeHealthCheckTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/health/IndexHealthCheckTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/lucene9/Lucene9AnalyzerFactoryTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/lucene9/Lucene9IndexTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/lucene9/NouveauQueryParserTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/lucene9/QuerySerializationTest.java
create mode 100644
nouveau/src/test/resources/fixtures/DocumentUpdateRequest.json
create mode 100644 nouveau/src/test/resources/fixtures/SearchRequest.json
delete mode 100644 share/server/json2.js
create mode 100644 share/server/nouveau.js
create mode 100644 src/chttpd/test/eunit/chttpd_changes_test.erl
create mode 100644 src/chttpd/test/eunit/chttpd_local_docs_tests.erl
create mode 100644 src/couch/src/couch_disk_monitor.erl
copy src/{couch_stats/src/couch_stats_sup.erl => couch/src/couch_lists.erl}
(52%)
create mode 100644 src/couch/test/eunit/couch_compress_tests.erl
create mode 100644 src/couch/test/eunit/couch_hash_test.erl
copy src/{couch_mrview/test/eunit/couch_mrview_http_tests.erl =>
couch/test/eunit/couch_lists_tests.erl} (55%)
create mode 100644 src/couch/test/eunit/same_site_cookie_tests.erl
delete mode 100644 src/couch/test/exunit/couch_compress_tests.exs
delete mode 100644 src/couch/test/exunit/same_site_cookie_tests.exs
delete mode 100644 src/couch/test/exunit/test_helper.exs
create mode 100644 src/couch_dist/.gitignore
create mode 100644 src/couch_dist/README.md
create mode 100755 src/couch_dist/certs/certs
create mode 100644 src/couch_dist/certs/certs.exs
create mode 100755 src/couch_dist/certs/parse_cert.escript
create mode 100755 src/couch_dist/gen_certs
create mode 100644 src/couch_index/test/eunit/couch_index_crash_tests.erl
create mode 100644 src/couch_prometheus/src/couch_prometheus.erl
delete mode 100644 src/couch_prometheus/src/couch_prometheus_server.erl
delete mode 100644
src/couch_prometheus/test/eunit/couch_prometheus_util_tests.erl
create mode 100644
src/couch_replicator/test/eunit/couch_replicator_doc_ids_tests.erl
delete mode 100644 src/couch_stats/src/couch_stats.hrl
delete mode 100644 src/couch_stats/src/couch_stats_aggregator.erl
create mode 100644 src/couch_stats/src/couch_stats_counter.erl
create mode 100644 src/couch_stats/src/couch_stats_gauge.erl
create mode 100644 src/couch_stats/src/couch_stats_histogram.erl
create mode 100644 src/couch_stats/src/couch_stats_math.erl
create mode 100644 src/couch_stats/src/couch_stats_server.erl
create mode 100644 src/couch_stats/src/couch_stats_util.erl
create mode 100644 src/docs/src/api/ddoc/nouveau.rst
create mode 100644 src/docs/src/config/disk-monitor.rst
create mode 100644 src/docs/src/cve/2023-26268.rst
create mode 100644 src/docs/src/ddocs/nouveau.rst
create mode 100644 src/docs/src/install/nouveau.rst
delete mode 100644 src/dreyfus/test/elixir/mix.exs
delete mode 100644 src/dreyfus/test/elixir/mix.lock
delete mode 100755 src/dreyfus/test/elixir/run
delete mode 100644 src/dreyfus/test/elixir/test/test_helper.exs
rename src/dreyfus/test/{ => eunit}/dreyfus_blacklist_await_test.erl (100%)
rename src/dreyfus/test/{ => eunit}/dreyfus_blacklist_request_test.erl (100%)
rename src/dreyfus/test/{ => eunit}/dreyfus_config_test.erl (100%)
rename src/dreyfus/test/{ => eunit}/dreyfus_purge_test.erl (100%)
rename src/dreyfus/test/{ => eunit}/dreyfus_test_util.erl (100%)
create mode 100644 src/exxhash/.gitignore
copy src/{b64url => exxhash}/Makefile (100%)
create mode 100644 src/exxhash/README.md
create mode 100644 src/exxhash/c_src/exxhash.c
create mode 100644 src/exxhash/c_src/xxhash.c
create mode 100644 src/exxhash/c_src/xxhash.h
create mode 100644 src/exxhash/rebar.config
copy src/{couch_epi/src/couch_epi.hrl => exxhash/src/exxhash.app.src} (76%)
create mode 100644 src/exxhash/src/exxhash.erl
create mode 100644 src/exxhash/test/exxhash_tests.erl
create mode 100644 src/fabric/src/fabric_bench.erl
create mode 100644 src/fabric/test/eunit/fabric_bench_test.erl
copy src/mango/src/{mango_cursor_text.erl => mango_cursor_nouveau.erl} (68%)
copy src/mango/src/{mango_idx_text.erl => mango_idx_nouveau.erl} (94%)
create mode 100644 src/mango/test/22-covering-index-test.py
delete mode 100644 src/mango/test/README.md
create mode 100644 src/nouveau/include/nouveau.hrl
copy src/{chttpd => nouveau}/priv/stats_descriptions.cfg (64%)
create mode 100644 src/nouveau/src/nouveau.app.src
rename src/{couch_prometheus/src/couch_prometheus.hrl =>
nouveau/src/nouveau.erl} (70%)
create mode 100644 src/nouveau/src/nouveau_api.erl
create mode 100644 src/nouveau/src/nouveau_app.erl
create mode 100644 src/nouveau/src/nouveau_bookmark.erl
create mode 100644 src/nouveau/src/nouveau_epi.erl
create mode 100644 src/nouveau/src/nouveau_fabric.erl
create mode 100644 src/nouveau/src/nouveau_fabric_cleanup.erl
create mode 100644 src/nouveau/src/nouveau_fabric_info.erl
create mode 100644 src/nouveau/src/nouveau_fabric_search.erl
create mode 100644 src/nouveau/src/nouveau_httpd.erl
create mode 100644 src/nouveau/src/nouveau_httpd_handlers.erl
create mode 100644 src/nouveau/src/nouveau_index_manager.erl
create mode 100644 src/nouveau/src/nouveau_index_updater.erl
copy src/{ddoc_cache/src/ddoc_cache_value.erl =>
nouveau/src/nouveau_plugin_couch_db.erl} (68%)
create mode 100644 src/nouveau/src/nouveau_rpc.erl
create mode 100644 src/nouveau/src/nouveau_sup.erl
create mode 100644 src/nouveau/src/nouveau_util.erl
create mode 100644 test/elixir/test/config/nouveau.elixir
create mode 100644 test/elixir/test/config/search.elixir
create mode 100644 test/elixir/test/disk_monitor.exs
create mode 100644 test/elixir/test/nouveau_test.exs
rename {src/dreyfus/test => test}/elixir/test/partition_search_test.exs (100%)
rename {src/dreyfus/test => test}/elixir/test/search_test.exs (75%)
create mode 100644 test/fixtures/allowed-xref.txt
delete mode 100644 test/javascript/tests/list_views.js
delete mode 100644 test/javascript/tests/proxyauth.js
delete mode 100644 test/javascript/tests/replicator_db_bad_rep_id.js
delete mode 100644 test/javascript/tests/replicator_db_by_doc_id.js
delete mode 100644 test/javascript/tests/rewrite.js
delete mode 100644 test/javascript/tests/rewrite_js.js
delete mode 100644 test/javascript/tests/security_validation.js
delete mode 100644 test/javascript/tests/show_documents.js
delete mode 100644 test/javascript/tests/users_db_security.js