I have tried contacting the CouchDB (database/couchdb) maintainer via email with an updated port + diffs but have heard nothing back. CouchDB 1.2.0 has been out for ~2 months now and has a number of performance and security enhancements (no security bug fixes, just architectural changes and better practices). Fix: See the attached diff file for the changes to upgrade the port from 1.1.0 to 1.2.0. Basically I got tired of waiting and decided to further clean up the port which had several issues, the most notable being: - local.ini which is where local customizations and administrative account information is contain is erroneously removed on deinstall. I've setup the recommended system of comparing against a local.ini.sample and only removing it if it is identical. Its unfortunate that anyone upgrading will lose their local.ini because of the 1.1.0 port missing this, at least its fixed now. - Shifted the default DB storage location from /var/lib/couchdb to /var/db/couchdb to make it consistent with other DB storage engine ports which use /var/db as their base (ie; mySQL). I tested this out on a clean 9.0-R system build and operational testing showed no problems. Patch attached with submission follows:
Responsible Changed From-To: freebsd-ports-bugs->crees I'll take it.
I've done a bunch more testing and clean up and have a new diff/patch which should be used instead of the one I initially attached to the PR: http://www.ateamsystems.com/software/dist/couchdb-port-1.1.0-to-1.2.0.diff It includes the alert to consult UPDATING and a bunch of other fixes/tweaks. The Makefile needs to have <date> swapped in for the UPDATING dateline. Here is some sample text for the UPDATING entry: 20120613: AFFECTS: users of database/couchdb AUTHOR: adams-ports@ateamsystems.com CouchDB has been updated to 1.2.0. In the previous version of the port (1.1.0) there is an error in the pkg-plist which will cause /usr/local/etc/couchdb/local.ini to be removed. This file contains CouchDB configuration information and admin accounts. To avoid this an interlock was placed when building the 1.2.0 port if local.ini exists and local.ini.sample does not (new in 1.2.0). If you are upgrading from a previous version of the CouchDB port copy your local.ini file to a safe location before uninstalling the old port: # cp /usr/local/etc/couchdb/local.ini /usr/local/etc/couchdb/local.ini.bak Once you have installed the new port copy it back: # cp /usr/local/etc/couchdb/local.ini.bak /usr/local/etc/couchdb/local.ini Additionally the default database directory is now /var/db/couchdb (formerly /var/lib/couchdb), you may need to move your DB files to the new location if you are not manually specifying a location in local.ini. -- Adam Strohl http://www.ateamsystems.com/
Doh. Updated content: changed cp to mv, because otherwise the IGNORE statement in the Makefile will still trigger. Check the example commands and feel free to trim/edit. 20120613: AFFECTS: users of database/couchdb AUTHOR: adams-ports@ateamsystems.com CouchDB has been updated to 1.2.0. In the previous version of the port (1.1.0) there is an error in the pkg-plist which will cause /usr/local/etc/couchdb/local.ini to be removed. This file contains CouchDB configuration information and admin accounts. To avoid this an interlock was placed when building the 1.2.0 port if local.ini exists and local.ini.sample does not (new in 1.2.0). If you are upgrading from a previous version of the CouchDB port move your local.ini file to a safe location before uninstalling the old port: # mv /usr/local/etc/couchdb/local.ini /usr/local/etc/couchdb/local.ini.bak With local.ini out of the way 'make build' will work: # cd /usr/ports/database/couchdb && make build deinstall install Once you have installed the new port move it back: # mv /usr/local/etc/couchdb/local.ini.bak /usr/local/etc/couchdb/local.ini Additionally the default database directory is now /var/db/couchdb (formerly /var/lib/couchdb), you may need to move your DB files to the new location if you are not manually specifying a location in local.ini. -- Adam Strohl http://www.ateamsystems.com/
Maintainer of databases/couchdb, Please note that PR ports/168923 has just been submitted. If it contains a patch for an upgrade, an enhancement or a bug fix you agree on, reply to this email stating that you approve the patch and a committer will take care of it. The full text of the PR can be found at: http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/168923 -- Edwin Groothuis via the GNATS Auto Assign Tool edwin@FreeBSD.org
State Changed From-To: open->feedback Awaiting maintainers feedback (via the GNATS Auto Assign Tool)
I've replaced the IGNORE with a pre-everything target that also checks if an older version is installed; otherwise the IGNORE will be triggered if 1.2.0 is deinstalled (.sample will be removed, .ini will not; ignore triggered false alarm-- I should have thought of that when suggesting it before!). I've also OPTIONSngified it, and fixed a few minor nits, and used pkg-message.in to properly substitute PREFIX for package installation. Great patch to work from though, thanks! Till, is it OK? http://www.bayofrum.net/~crees/patches/couchdb-1.2.0.diff Chris
crees 2012-07-02 21:31:27 UTC FreeBSD ports repository Modified files: databases/couchdb Makefile distinfo pkg-deinstall pkg-install pkg-plist databases/couchdb/files couchdb.in Added files: databases/couchdb/files pkg-message.in Removed files: databases/couchdb pkg-message Log: - Update to 1.2.0 - OPTIONSngify - Error out on build if older version installed with config file present; this must be backed up or it will be lost on deinstall. - Shift default DB storage location from /var/lib/couchdb to /var/db/couchdb to make it consistent with other DB storage engine ports which use /var/db as their base (eg; mySQL). PR: ports/168923 Submitted by: Adam Strohl <adams-ports@ateamsystems.com> Approved by: maintainer timeout (till@php.net, >14 days) Revision Changes Path 1.21 +35 -11 ports/databases/couchdb/Makefile 1.8 +2 -2 ports/databases/couchdb/distinfo 1.11 +3 -1 ports/databases/couchdb/files/couchdb.in 1.1 +30 -0 ports/databases/couchdb/files/pkg-message.in (new) 1.2 +2 -2 ports/databases/couchdb/pkg-deinstall 1.4 +3 -3 ports/databases/couchdb/pkg-install 1.2 +0 -8 ports/databases/couchdb/pkg-message (dead) 1.7 +85 -45 ports/databases/couchdb/pkg-plist _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
crees 2012-07-02 21:36:44 UTC FreeBSD ports repository Modified files: . UPDATING databases/couchdb Makefile Log: Document upgrade procedure for couchdb to avoid loss of local.ini file. Correct date in Makefile's reference to UPDATING entry. PR: ports/168923 Revision Changes Path 1.1261 +13 -1 ports/UPDATING 1.22 +1 -1 ports/databases/couchdb/Makefile _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
State Changed From-To: feedback->closed Committed. Thanks!