Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#37641 closed update (fixed)

couchdb-devel @1.3.0a1177555 Project moved to git

Reported by: jeff-macports@… Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc:
Port: couchdb-devel

Description

CouchDB was moved to Git in Oct 2011. Attached is a patch to make that switch as well as some general cleanup to bring in improvements from the couchdb port and a fix for a bug similar to but not exactly #37629.

Attachments (6)

couchdb-devel-git-migration.patch (4.2 KB) - added by jeff-macports@… 12 years ago.
Missed pkgconfig as a dependency.
couchdb-devel-git-migration.2.patch (4.1 KB) - added by jeff-macports@… 12 years ago.
Patch
couchdb-devel-git-migration.3.patch (5.6 KB) - added by jeff@… 12 years ago.
Updated patch
couchdb-devel.20130218.patch (7.9 KB) - added by jeff@… 12 years ago.
couchdb-devel.20130218v2.patch (7.9 KB) - added by jeff@… 12 years ago.
couchdb-devel.20130227.patch (8.1 KB) - added by jeff@… 12 years ago.

Download all attachments as: .zip

Change History (22)

comment:1 Changed 12 years ago by jeff-macports@…

Ryan, please review and critique if you don't mind. I'm new to a lot of this so I'm sure I'm doing something wrong/unconventional in there. Thanks.

comment:2 Changed 12 years ago by jeff-macports@…

Also, I have only tested this on 10.6 so far. I'm running it through the other releases today.

comment:3 Changed 12 years ago by jeff-macports@…

Tested on 10.7 and 10.8 now, those two starting from zero ports installed. After adding pkgconfig, it all seems happy. Builds, starts, basic and verify install tests pass.

comment:4 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: changed from macports-tickets@… to ryandesign@…
Status: newassigned

Thanks, I'll have a more thorough look at this later. For now:

You mentioned elsewhere wanting to maintain this port. Please feel free to include that in your patch: just change the maintainers line to your email address (in our obfuscated host:user format), optionally in addition to "openmaintainer" if you'd like to leave open the possibility of other committers making changes to the port. Hopefully you'll also want to maintain couchdb.

pkgconfig is almost certainly a build dependency only, as probably are automake, autoconf, help2man, and perhaps libtool. That's something that still needs fixing in couchdb as well.

Including the git branch in the version number is not a great idea since the git branch is essentially a random number, and so it won't always increase, and when it doesn't, we'll have to increase the epoch. Instead, I'd put the date corresponding to that git version into the version number. 1.4.0-20130101 or whatever.

Thanks for bringing back some fixes from the couchdb port. We should strive to make couchdb and couchdb-devel as similar as possible. That includes the whitespace, though whitespace changes should be separate from functional changes. Ideally we'd have both ports using our standard whitespace style of 4 spaces (not tabs) per indent and things aligned into two neat columns.

I see you removed the configure.ac patch. Does the current version of the configure script no longer call out to erlang to see if it has been compiled with ssl support? The reason we were using this patch in couchdb, and I just added it to couchdb-devel, is because apparently for some users that check failed, and the port already checks it so there's no benefit to checking it again in the configure script.

comment:5 Changed 12 years ago by jeff-macports@…

Thanks for the maintainer info. I'll do that for both ports.


Re pkgconfig I had the same thought but didn't bother to look into it. I'll go read up on build vs runtime dependencies and get that sorted out.


Re git version number, I feel kinda dumb about that. I've run into that before myself on other stuff but it just didn't occur to me this time. Thanks for pointing it out.


Re similarities to couchdb, many of the changes in this patch are because I was diffing couchdb-devel/Portfile with couchdb/Portfile and trying to get the diff as short as possible. I'll make the more stylistic changes a separate patch.


Re configure patch, I removed it because it didn't seem to be doing anything useful given the same check was happening in the portfile. Now that I read into it more I see why it was done. #30089 helped me understand that the portfile is run under root but configure and build are run under another.

It seems pretty clear that the bug appeared because $HOME was not changed when dropping from root to the macports user. It was still trying to write into /var/root because that was still the value of $HOME. Given that I still hold that it can be removed, though for different reasons than I thought initially, because the actual underlying issue of the home directory was fixed in the macports release 2.0.4. (#31827)

Changed 12 years ago by jeff-macports@…

Missed pkgconfig as a dependency.

comment:6 Changed 12 years ago by jeff-macports@…

I uploaded a new patch that is only what is really needed to migrate to git and bring this package up to date. Other changes like bringing couchdb and couchdb-devel closer together, making myself maintainer, and cleaning up the formatting I will make more tickets for and do separately.

comment:7 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Thanks, I hadn't remembered that the problem with the erlang ssl check was related to the inaccessible root home directory. I agree then that it's not needed anymore, since MacPorts base now sets HOME to a reasonable directory.

Regarding the new automake 1.13 patch, instead of:

+ACLOCAL=`find_program aclocal-1.13 aclocal-1.11 aclocal-1.10 aclocal-1.9 aclocal` 
...
+AUTOMAKE=`find_program automake-1.13 automake-1.11 automake-1.10 automake-1.9 automake` 

Might we use:

+ACLOCAL=`find_program aclocal` 
...
+AUTOMAKE=`find_program automake` 

comment:8 Changed 12 years ago by jeff@…

I don't particularly care either way, so sure. I'm guessing you're thinking future-proofing for when the next version of automake comes up?

Changed 12 years ago by jeff-macports@…

Patch

comment:9 Changed 12 years ago by jeff@…

Ryan:

Is there something else you're waiting on me for? I've created separate tickets (#37650, #37651, #37702) for each of the topics we discussed here (well, almost, I need to make one for removing the old ssl fix) and narrowed this patch down to just migrating to Git.

I feel like this one is done unless there's something more you want to see. If you're happy with it, could you check it in when you have an opportunity? Thanks.

comment:10 in reply to:  9 Changed 12 years ago by larryv (Lawrence Velázquez)

Replying to jeff@…:

Ryan:

Is there something else you're waiting on me for?

Ryan’s just a busy committer. :P

I don’t know anything about CouchDB, so I’m not at all qualified to vet your patches. If you’d like, you could shoot a quick email over to macports-dev asking someone to take a look.

Changed 12 years ago by jeff@…

Updated patch

Changed 12 years ago by jeff@…

comment:11 Changed 12 years ago by jeff@…

Updated upstream commit id. Rearranged dependencies. Cleaned up spacing. Removed old ssl check.

Changed 12 years ago by jeff@…

comment:12 Changed 12 years ago by jeff@…

Missed a dependency.

Changed 12 years ago by jeff@…

comment:13 Changed 12 years ago by jeff@…

New upstream version.

comment:14 Changed 12 years ago by larryv (Lawrence Velázquez)

Resolution: fixed
Status: assignedclosed
Version: 2.1.2

Committed in r104096. Suggestions for a better commit message would be appreciated.

comment:16 Changed 12 years ago by jeff@…

It appears this was a result of Erlang R16B. https://issues.apache.org/jira/browse/COUCHDB-1696

I'll add a new ticket shortly. I suspect couchdb is also failing though I have not tested it yet.

Note: See TracTickets for help on using tickets.