Apache CouchDB lets you access your data where you need it by defining the
Couch Replication Protocol that is implemented by a variety of projects and
products that span every imaginable computing environment from globally
distributed server-clusters, over mobile phones to web browsers.
===> The following configuration options are available for couchdb3-3.5.3:
DOCS=on: Build and/or install documentation
===> Use 'make config' to modify these settings
Reason:
Users who installed or upgraded to CouchDB 3.3.3 *after* 2024-09-30, and
who are also running 14.1-RELEASE or newer, will hit a nasty corruption bug,
causing all CPUs to lock up, possibly crashing, and generating a lot of
errors in log files.
This bug is caused by corrupt docs after decompression, due to a clash
between improved compiler optimisations in clang18, and a bug in snappy
itself. Given the above symptoms, all affected users will have noticed.
Upgrade to 3.4.2 in ports, to resolve this issue.
Please read more about this issue here:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282217
Port Moves
port moved here from databases/couchdb2 on 2021-04-07 REASON: No longer supported upstream, uses spidermonkey68 & python2; move to databases/couchdb3
databases/couchdb3: Resolve bundled OTP versions dynamically in PLIST_SUB
The release bundles erts and 13 OTP applications from
lang/erlang-runtime28, and pkg-plist pinned each of their versioned
directory names. Six of the last eight plist commits were pure OTP
rename churn, the largest touching 610 lines, while the 3.5.2 update
itself touched 23.
Derive the versions from the installed runtime at plist-generation time
instead. The package file list is unchanged: resolving the tokenized
plist with the versions this build staged reproduces the previous
pkg-plist byte for byte, so no PORTREVISION bump is needed.
An erlang-runtime28 update now needs only a PORTREVISION bump. Note
this reads ${LOCALBASE}/lib/erlang28 rather than the staged release,
because generate-plist runs before do-install; it holds as long as the
release copies erts and the OTP applications unmodified.
CouchDB's own rebar dependencies stay pinned deliberately - they move
only on a CouchDB update, where the change is worth seeing in review.
Approved by: dch (maintainer)
Differential Revision: https://reviews.freebsd.org/D59185
databases/couchdb3: move to spidermonkey128
so we can remove spidermonkey102, couchdb3 is its last user.
Approved by: maintainer timeout (dch@, 15 days)
PR: 291086
databases/couchdb3: add lost executable permissions
The last port bump switched from handcrafted pkg-plist, to generated
ones. The exec flag was lost on some key files, so add them back.
Fixes: 96a3008ae80c databases/couchdb3: update to 3.4.3
Sponsored by: SkunkWerks, GmbH
databases/couchdb3: update to 3.4.2, resolve PR282217
- include QuickJS engine
- support xxHash for data integrity checksums
- improved mango keys-only indexes
- https://blog.couchdb.org/2024/10/22/3-4-2/
- https://docs.couchdb.org/en/stable/whatsnew/3.4.html
- ensure snappy NIF is compiled without optimisations to avoid
corrupted documents under newer clang versions, used in
in 14.1-RELEASE (see PR282217 for details)
Sponsored by: SkunkWerks, GmbH
PR: 282217
databases/couchdb3: update to 3.3.2
And fix a long-standing error in rc.d script that affects new installs.
PR: 271177
Reported by: Jose Jachuf <jjachuf@gmail.com>
Sponsored by: SkunkWerks, GmbH
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
databases/couchdb3: depend on devel/icu
While CouchDB 3.2.1 switches a large portion of comparison functionality
to internal erlang code, this is still required as a dependency for
ejson_compare. devel/icu is an indirect dependency of spidermonkey
but we should be specific and require it also.
pet with portfmt while here.
Mark ports recursively depending on Python 2.7 for expiration on June 23.
For ports optionally dependending on Python 2.7, just mark those options
as expired. Remove konquerer from the x11/kde-baseapps metaport and bump
its PORTREVISION.
Submitted by: rene
Reviewed by: portmgr, adridg, ehaupt, lme, madpilot, pizzamig, se, sunpoet, yuri
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D28665
Multiple ports: improve regex compliance (part 2)
This is again a part of the project to stop extraneous escaping of
ordinary characters and redefine some ordinary escapes as special
behavior.
Most of these ports are pushed over to use textproc/gsed because they
want to use GNU extensions. Others are fixed to either escape appropriately
(e.g. $$ rather than \$ in Makefiles!) or just remove redundant escapes
(e.g. backtick in single quotes doesn't need escaped).
PR: 229925
MFH: no (invasive risk)
databases/couchdb3: re-enable web UI
over-zealous PORTNAME replacement breaks the environment vars that
tell CouchDB where to serve files for the administrator portal.
Sponsored by: SkunkWerks, GmbH
databases/couchdb3: new port from databases/couchdb2
- upstream supports both 2.x and 3.x series
- this will also support any platform that has a functioning
SpiderMonkey 60 port as well as Erlang/OTP, such as armv8 & ppc64
Sponsored by: SkunkWerks, GmbH
Differential Revision: https://reviews.freebsd.org/D24616