Created attachment 150830 [details] Proposed patch (since 369517 revision) Patch to update devel/libgit2 port from 0.21.1 to 0.21.3 version. - Added LICENSE_FILE - Added THREADSAFE option to build libgit2 as threadsafe
Auto-assigned to maintainer wg@FreeBSD.org
Created attachment 150831 [details] The poudriere testport log (FreeBSD 10 amd64)
Created attachment 151669 [details] Proposed patch (since 377075 revision) Looks like someone didn't use search before PR submit on 196662. Update the patch for changes after 377075 revision. Actually, there is new 0.22.0 version, but it requires more changes.
Since the THREADSAFE (named as THREADS) option was implemented, the port doesn't block devel/gitg update.
Created attachment 151681 [details] Patch for 0.22.0 version (since 377075 revision) The patch for 0.22.0 version is here. But new version breaks building of current (v0.0.24) devel/libgit2-glib port. Therefore not recommended. Additional changes for 0.22.0 version: - Add patch for ${WRKSRC}/src/openssl_stream.c, for correct build on FreeBSD - Add sed patch to return FIND_PACKAGE for LIBSSH2 - Adapt pkg-plist for new version
Created attachment 151682 [details] The poudriere testport log (FreeBSD 10 amd64) for 0.22.0 version
Created attachment 151683 [details] Proposed patch (since 377075 revision) The valid version to update is 0.21.4, before devel/libgit2-glib new version, which fixes issues for 0.22.0 version. Look following link for changes: https://github.com/libgit2/libgit2/compare/v0.21.1...v0.21.4
Created attachment 151684 [details] The poudriere testport log (FreeBSD 10 amd64)
Created attachment 152066 [details] Proposed patch (since 377075 revision) There is new 0.21.5 maintenance release: https://github.com/libgit2/libgit2/releases/tag/v0.21.5 It is possible to build devel/libgit2-glib (0.0.24) and devel/gitg (3.14.1) with it. The proposed patch attached. Also, there is new 0.22.1 maintenance release: https://github.com/libgit2/libgit2/releases/tag/v0.22.1 Which corresponds to new devel/libgit2-glib 0.22.0 version: https://git.gnome.org/browse/libgit2-glib/commit/?id=6adb228 But there are no release version for devel/gitg with fixes for API breaks of devel/libgit2-glib 0.22.0 version: https://git.gnome.org/browse/gitg/commit/?id=ece73d4 https://git.gnome.org/browse/gitg/commit/?id=a1f43c1 Therefore, in case of new devel/gitg version (other than 3.14.1, which is already proposed on PR 196178), it might be possible to update libgit2 to 0.22.x, libgit2-glib to 0.22.x. While 0.21.5 version is valid for current update of devel/libgit2, which doesn't break mentioned port's release builds. The patch for 0.22.0 version is obsolete, but could be used as reference, when needed.
Created attachment 152067 [details] The poudriere testport log (FreeBSD 10 amd64)
Created attachment 152084 [details] Update of libgit2 to 0.22.1. patch-src__openssl_stream.c - Fix compile patch-CMakeLists.txt - libgit2 switched to pkg-config for libssh2 detection (and probably others) but it has a typo in the pkg-config --cflags passings to cmake and doesn't have anything for pkg-config --libs.
Created attachment 152085 [details] Companion update of libgit2-glib to 0.22.0.
I can't get gitg to build with the new libgit2/libgit2-glib 0.22.x versions, even with the 3.14.1 update from: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196178
Hello, Koop Mast. (In reply to comment #13) > I can't get gitg to build with the new libgit2/libgit2-glib 0.22.x versions, > even with the 3.14.1 update from: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196178 Yes, I explained this in comment #9. The valid version is 0.21.5, not 0.22.x. For 0.22.x version there is a need for new devel/gitg release version, other than 3.14.1 (or conversion to USE_GITHUB and pointing to some commit, which has fixes). Your fixes for 0.22.1 version is also mentioned in comment #5, with different approach of fixes.
(In reply to comment #14) What it looks in my case: % pkg info gitg libgit2-glib libgit2 gitg-3.14.1 libgit2-glib-0.0.24_1 libgit2-0.21.5
(In reply to comment #15) The PORTREVISION of devel/libgit2-glib port should be bumped, of course. I manually rebuild/reinstalled all dependent ports.
(In reply to comment #14) > or conversion to USE_GITHUB and pointing to some commit I meant similar approach, e.g. MASTER_SITES= http://git.gnome.org/browse/{GH_ACCOUNT}/snapshot/{GH_PROJECT}-${GH_TAGNAME}${EXTRACT_SUFX}?dummy=/ USES+= tar:xz WRKSRC= ${WRKDIR}/${GH_PROJECT}-${GH_TAGNAME} GH_ACCOUNT= ${PORTNAME} GH_PROJECT= ${PORTNAME} GH_COMMIT= bb7e974 GH_TAGNAME= ${GH_COMMIT} It might download following commit: https://git.gnome.org/browse/gitg/commit/?id=bb7e974
I need the 0.22.x version of libgit2-glib for at least one port in the GNOME 3.15.x series, this is development so there is not a real big rush. But yes all ports should build with the new version.
(In reply to comment #18) The main point of my proposed PRs (196176, 196177, 196178) was to update devel/gitg port, where devel/libgit2 needed THREADSAFE CMake's option enabled and devel/libgit2-glib was broken. Now, these issues are resolved and it is possible to update devel/gitg to 3.14.1 version, which depends from maintainers/commiters. Returning to devel/libgit2 discussion, based on developer(s) updates, they commited critical fixes to 0.21.x and 0.22.x at the same time: https://github.com/libgit2/libgit2/releases/tag/v0.21.5 https://github.com/libgit2/libgit2/releases/tag/v0.22.1 So, they aware about dependent software. The logical step is to create devel/libgit for 0.21.x and 0.22.x versions, but this might require to do the same for devel/libgit2-glib port, while resolving a conflicts and other issues. And this is because of API breaks between versions. I didn't propose this. Seems like, the maintainers consider to wait, which might work also, when it will resolve by itself. While timely updates of current opened PRs may lose its value over time and they might need to do updates by yourself. As off-topic, there is the same situation for x11/nvidia (-driver, -settings, -xconfig) ports, where it's cheap to create own -devel versions of ports, than wait different maintainers to "catch up" with the same version, while NVidia ('s release manager(s)) releases them in the same time. On the other hand, I don't want to say something wrong about these maintainers. These situations just arise, and the cause is not a maintainer, but different responsibilities and interests, which not synchronized to do a resonance effect, as a whole.
Created attachment 152135 [details] Proposed patch (since 377075 revision) Changed PORTVERSION option sub to SHLIB_VER2, which could be adapted from Makefile. Removed related sed patch.
Created attachment 152136 [details] The poudriere testport log (FreeBSD 10 amd64)
Created attachment 152137 [details] Patch for 0.22.1 version (since 377075 revision) And there is a patch for 0.22.1 update, from my point of view.
Created attachment 152138 [details] The poudriere testport log (FreeBSD 10 amd64) for 0.22.1 version
(In reply to comment #20) > Changed PORTVERSION option sub to SHLIB_VER2 I meant name of variable for PLIST_SUB. This allows to use SHLIB_VER2 along with SHLIB_VER, without changing the pkg-plist file. The PORTVERSION is not right name for it, because SHLIB_VER2 changes from version to version, but not equal to PORTVERSION value sometimes.
Created attachment 152294 [details] Patch for v0.21.5 with dynamic plist (since 377075 revision) Not sure, if somebody will be interested, but there is a version without pkg-plist, GH_COMMIT and PLIST_SUB. This is how maintainership-less port might look like. In a next update, just change the PORTVERSION, do "make makesum" and create patches for build, when needed. Check the plist with "make check-plist". Get the files list with following commands: after stage: % make -V TMPPLIST | xargs sort after install: % pkg info -l libgit2 for package with concrete version: tar --include=/usr -tf libgit2-0.21.5.txz This is possible because of current release method on GitHub and stage capabilities for ports.
Created attachment 152295 [details] The poudriere testport log (FreeBSD 10 amd64) for v0.21.5 with dynamic plist
I have just tested this and have managed to get it working with the following combination: libgit2-0.22.2 libgit2-glib-0.22.4 gitg-3.16.0 Apart from upgrading the PORTVERSION, distinfo and pkg-plist, the only changes required were: * add USES=pkgconfig to devel/libgit2 (as mentioned by Koop) * delete devel/libgit2-glib/files/patch-libgit2-glib__ggit-types.h To avoid confusion from too many attachments, I have not attached my patches. Please let me know if you would like me to.
(In reply to comment #27) I think, the problem here is not about patches. The patches were up to date at the time of creation. The problem is no attention from maintainer and/or interested committer. The mentioned program and libraries continues its development. There is no surprise, that new patches might be created. Actually, this PR is only one remained. Other PRs (bug 196177 and bug 196178) were committed. They were interconnected. I guess, you could create new PRs with your proposed changes, if you want to try to update devel/gitg port.
Created attachment 155312 [details] Proposed patch (since 377075 revision) Adapted to new USE_GITHUB.
Created attachment 155313 [details] The poudriere testport log (FreeBSD 10 amd64)
Created attachment 155353 [details] Proposed patch (since 377075 revision) Removed GH_ACCOUNT, which defined to the same value inside of Mk/bsd.sites.mk file. Added '.ssl' file extension for OpenSSL patch, which allows to see differences between changed and original CMakeLists.txt file.
Created attachment 155354 [details] The poudriere testport log (FreeBSD 10 amd64)
Created attachment 155355 [details] Patch for 0.22.2 version (since 377075 revision) Added patch for 0.22.2 version, in case of devel/gitg update to 3.16.0 (or greater) version. Otherwise, the 0.21.5 version (in attachment 155353 [details]) is still valid for current devel/gitg 3.14.1 version.
Created attachment 155356 [details] The poudriere testport log (FreeBSD 10 amd64) for 0.22.2 version
Created attachment 155463 [details] Proposed patch (since 377075 revision) Changed PORTVERSION to DISTVERSIONFULL for DISTNAME, which allows more flexible changes, if needed.
Created attachment 155464 [details] Patch for 0.22.2 version (since 377075 revision)
Created attachment 155469 [details] Patch for devel/libgit2 port from 0.21.5 to 0.22.2 version To Ben Woods: If you don't mind, I could create PR for new (v3.16.0) devel/gitg port. I already have complete patch and poudriere testport log. To Koop Mast: Do you still need 0.22.x version of devel/libgit2 port for your mentioned other port? I think, that you can process this PR, because of maintainer time-out. Also I think, that better approach is to update to 0.21.5 (maintenance release) and then 0.22.2, with using the same PR. What do you think?
Created attachment 155470 [details] Patch for devel/libgit2-glib port from 0.0.24 to 0.22.4 version The devel/libgit2-glib port already mentioned here, therefore I just updated it to new 0.22.4 version: https://git.gnome.org/browse/libgit2-glib/diff/?id=v0.22.4&id2=v0.0.24
Created attachment 155471 [details] The poudriere testport log (FreeBSD 10 amd64): devel/libgit2-glib v0.22.4
Created attachment 155472 [details] Patch for devel/libgit2-glib port from 0.0.24 to 0.22.4 version Added DOCS option for devel/libgit2-glib port.
Created attachment 155473 [details] The poudriere testport log (FreeBSD 10 amd64): devel/libgit2-glib v0.22.4
Created attachment 155557 [details] Patch for devel/libgit2-glib port from 0.0.24 to 0.22.4 version Adapt patch in files directory for devel/libgit2-glib port, after ports r383894 changes for ports-mgmt/portlint v2.16.3.
Created attachment 155560 [details] Patch for devel/gitg port from 3.14.1 to 3.16.0 version Added companion update for devel/gitg port from 3.14.1 to 3.16.0 version. The Ben Woods might review it, if needed. The patch is trivial and for completion.
Created attachment 155561 [details] The poudriere testport log (FreeBSD 10 amd64): devel/gitg v3.16.0
Actually, Koop has just recently taken maintainership of devel/gitg, so should probably be the one to review/approve your patch for it. lightside: it looks like you are doing good work here. Hang in there, and I'm sure a committer will pick it up soon enough.
Created attachment 156038 [details] Patch for devel/libgit2-glib port from 0.0.24 to 0.22.6 version Updated devel/libgit2-glib port to 0.22.6 version: https://git.gnome.org/browse/libgit2-glib/diff/?id=v0.22.6&id2=v0.0.24 Changes to previous update: https://git.gnome.org/browse/libgit2-glib/diff/?id=v0.22.6&id2=v0.22.4
Created attachment 156039 [details] The poudriere testport log (FreeBSD 10 amd64): devel/libgit2-glib v0.22.6
take with wg@'s blessings via IRC
kwm is working on it in https://reviews.freebsd.org/D2468
Hello, Michael Moll. (In reply to comment #49) > kwm is working on it in https://reviews.freebsd.org/D2468 Ok, but what is done in this PR is not reflected in the mentioned review (to this time). I see a different approach for some moments. But may be this is ok, if maintainer agree about these changes and not what in this PR. Nevertheless, this PR is still valid for 0.21.5 (maintenance release) version of devel/libgit2 port, before API/ABI changes in newer versions. The proposed (timely) updates for 0.22.x version was related to development of this library and dependent software, which required it. Thanks for your attention and Koop Mast to take care about updates for 0.22.x version.
Created attachment 156453 [details] Proposed patch (since 385521 revision) Updated patch(es) for devel/libgit2 port after ports r385521 changes (while GH_ACCOUNT define is not necessary in it: https://svnweb.freebsd.org/ports/head/Mk/bsd.sites.mk?revision=385521&view=markup#l540).
Created attachment 156454 [details] Patch for 0.22.2 version (since 385521 revision)
Created attachment 156455 [details] Patch for devel/libgit2 port from 0.21.5 to 0.22.2 version
A commit references this bug: Author: kwm Date: Mon May 11 20:56:05 UTC 2015 New revision: 386103 URL: https://svnweb.freebsd.org/changeset/ports/386103 Log: Update libgit2 to 0.22.1. [1] Update libgit2-glib to 0.22.8. Update gitg to 3.16.1. Update py-pygit2 to 0.22.0. [1][3] Update rubygem-rugged to 0.22.1b1. [2] This is done in one commit due to API/ABI breakage in libgit2. PR: 196176 (based on) Differential Revision: https://reviews.freebsd.org/D2468 Submitted by: lightside@gmx.com Approved by: maintainer (wg@ blanked) [1], ruby (swills@)[2] Reviewed by: koobs@ [3] Changes: head/devel/gitg/Makefile head/devel/gitg/distinfo head/devel/gitg/pkg-plist head/devel/libgit2/Makefile head/devel/libgit2/distinfo head/devel/libgit2/pkg-plist head/devel/libgit2-glib/Makefile head/devel/libgit2-glib/distinfo head/devel/libgit2-glib/files/patch-libgit2-glib__ggit-types.h head/devel/libgit2-glib/pkg-plist head/devel/py-pygit2/Makefile head/devel/py-pygit2/distinfo head/devel/rubygem-rugged/Makefile head/devel/rubygem-rugged/distinfo
Committed thanks for keeping the patches uptodate.