Github messages for voidlinux
 help / color / mirror / Atom feed
From: zen0bit <zen0bit@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] geany: update to 2.0.0
Date: Sun, 14 Jan 2024 20:22:58 +0100	[thread overview]
Message-ID: <20240114192258.5A95C2170A@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-46783@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 466 bytes --]

There is an updated pull request by zen0bit against master on the void-packages repository

https://github.com/oSoWoSo/VUR geany
https://github.com/void-linux/void-packages/pull/46783

geany: update to 2.0.0
#### Testing the changes
- I tested the changes in this PR: **briefly**

#### Local build testing
- I built this PR locally for my native architecture, (x64 libc)

A patch file from https://github.com/void-linux/void-packages/pull/46783.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-geany-46783.patch --]
[-- Type: text/x-diff, Size: 12687 bytes --]

From 6ff322f361e305d0d13fa1c3ed3d90d2965c464d Mon Sep 17 00:00:00 2001
From: zenobit <zen@osowoso.xyz>
Date: Thu, 19 Oct 2023 21:54:42 +0200
Subject: [PATCH 1/2] geany: update to 2.0.0

---
 srcpkgs/geany/patches/sidebar.patch | 53 +++++++++++++++++++++++++++++
 srcpkgs/geany/template              | 17 +++++----
 2 files changed, 63 insertions(+), 7 deletions(-)
 create mode 100644 srcpkgs/geany/patches/sidebar.patch

diff --git a/srcpkgs/geany/patches/sidebar.patch b/srcpkgs/geany/patches/sidebar.patch
new file mode 100644
index 0000000000000..d334cfd9d43b0
--- /dev/null
+++ b/srcpkgs/geany/patches/sidebar.patch
@@ -0,0 +1,53 @@
+From a7b4dbb144c8dfa788a087298a0b47183e92a107 Mon Sep 17 00:00:00 2001
+From: 6t8k <58048945+6t8k@users.noreply.github.com>
+Date: Sun, 5 Nov 2023 17:01:31 +0100
+Subject: [PATCH] Skip `tests/test_sidebar` if GTK initialisation fails
+
+This may happen in headless environments.
+
+The return value of `gtk_init_check` was not examined before; according
+to [1], "calling any GTK function or instantiating any GTK type after
+this function returns FALSE results in undefined behavior."
+
+The value 77 can be returned to tell Automake and Meson that the test
+was skipped.[2][3][4]
+
+Fixes #3674
+
+[1] https://docs.gtk.org/gtk3/func.init_check.html
+[2] https://www.gnu.org/software/automake/manual/automake.html#index-Exit-status-77_002c-special-interpretation
+[3] https://docs.gtk.org/glib/func.test_run.html
+[4] https://mesonbuild.com/Unit-tests.html#skipped-tests-and-hard-errors
+---
+ tests/test_sidebar.c | 17 +++++++++++++----
+ 1 file changed, 13 insertions(+), 4 deletions(-)
+
+diff --git a/tests/test_sidebar.c b/tests/test_sidebar.c
+index 9659dc72e7..c03d1aa649 100644
+--- a/tests/test_sidebar.c
++++ b/tests/test_sidebar.c
+@@ -137,12 +137,21 @@ void test_sidebar_openfiles_tree(void)
+ 
+ int main(int argc, char **argv)
+ {
+-	g_test_init(&argc, &argv, NULL);
+-	/* Not sure if we can really continue without DISPLAY. Fake X display perhaps?
++	/* In headless environments that do not provide a virtual display,
++	 * GTK initialisation is expected to fail and gtk_init_check()
++	 * will return FALSE. Calling any GTK function or instantiating
++	 * any GTK type afterwards results in undefined behavior.
+ 	 *
+-	 * This test seems to work, at least.
++	 * By returning 77, we can tell test harnesses compatible with
++	 * the GNU standard approach to regard the test as skipped.
+ 	 */
+-	gtk_init_check(&argc, &argv);
++	if (! gtk_init_check(&argc, &argv))
++	{
++		g_test_message("GTK initialization failed; skipping. Running inside a headless environment?");
++		return 77;
++	}
++
++	g_test_init(&argc, &argv, NULL);
+ 
+ 	main_init_headless();
diff --git a/srcpkgs/geany/template b/srcpkgs/geany/template
index aee031b264141..b0a3497261274 100644
--- a/srcpkgs/geany/template
+++ b/srcpkgs/geany/template
@@ -1,20 +1,23 @@
 # Template file for 'geany'
 pkgname=geany
-version=1.38
+version=2.0.0
 revision=1
 build_style=gnu-configure
-configure_args="--enable-vte --enable-gtk3"
-hostmakedepends="pkg-config libtool intltool"
-makedepends="gtk+3-devel"
+configure_args="--host=${arch}"
+hostmakedepends="pkg-config automake autoconf intltool libtool python3-docutils gettext-devel-tools"
+makedepends="gtk+3-devel libglib-devel"
 depends="hicolor-icon-theme desktop-file-utils"
 short_desc="Fast and lightweight IDE"
 maintainer="Benjamín Albiñana <benalb@gmail.com>"
 license="GPL-2.0-or-later"
 homepage="https://www.geany.org"
 changelog="https://raw.githubusercontent.com/geany/geany/master/NEWS"
-distfiles="https://download.${pkgname}.org/${pkgname}-${version}.tar.bz2"
-checksum=abff176e4d48bea35ee53037c49c82f90b6d4c23e69aed6e4a5ca8ccd3aad546
-python_version=3
+distfiles="https://github.com/geany/geany/archive/refs/tags/${version}.tar.gz"
+checksum=a744ab9ae3e58b371de4b50990c44227c499f82e2a8ee6753307ef107748e4df
+
+pre_configure() {
+	./autogen.sh
+}
 
 geany-devel_package() {
 	depends="libglib-devel gtk+3-devel ${sourcepkg}>=${version}_${revision}"

From d247d1a62a2508199e48e87a81d26abbd57265d9 Mon Sep 17 00:00:00 2001
From: zenobit <zen@osowoso.xyz>
Date: Thu, 19 Oct 2023 21:54:49 +0200
Subject: [PATCH 2/2] geany-plugins: update to 2.0.0

---
 ...ebar-Simplify-libgit2-version-checks.patch |  49 -------
 ...hangebar-Add-support-for-libgit2-1.4.patch | 124 ------------------
 srcpkgs/geany-plugins/template                |   8 +-
 3 files changed, 4 insertions(+), 177 deletions(-)
 delete mode 100644 srcpkgs/geany-plugins/patches/0001-git-changebar-Simplify-libgit2-version-checks.patch
 delete mode 100644 srcpkgs/geany-plugins/patches/0002-git-changebar-Add-support-for-libgit2-1.4.patch

diff --git a/srcpkgs/geany-plugins/patches/0001-git-changebar-Simplify-libgit2-version-checks.patch b/srcpkgs/geany-plugins/patches/0001-git-changebar-Simplify-libgit2-version-checks.patch
deleted file mode 100644
index 29d3ef78fd90f..0000000000000
--- a/srcpkgs/geany-plugins/patches/0001-git-changebar-Simplify-libgit2-version-checks.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 668f5d07eef16e227402eab09141c738b315d94b Mon Sep 17 00:00:00 2001
-From: Colomban Wendling <ban@herbesfolles.org>
-Date: Sun, 5 Jun 2022 23:11:20 +0200
-Subject: [PATCH 1/2] git-changebar: Simplify libgit2 version checks
-
-Introduce a custom macro for libgit2 version checks for them to be both
-easier to read and write.
----
- git-changebar/src/gcb-plugin.c | 14 +++++++++++---
- 1 file changed, 11 insertions(+), 3 deletions(-)
-
-diff --git a/git-changebar/src/gcb-plugin.c b/git-changebar/src/gcb-plugin.c
-index f8ce20cd..bee8c865 100644
---- a/git-changebar/src/gcb-plugin.c
-+++ b/git-changebar/src/gcb-plugin.c
-@@ -32,11 +32,19 @@
- #include <geany.h>
- #include <document.h>
- 
--#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 22) )
-+#ifdef LIBGIT2_VER_MINOR
-+# define CHECK_LIBGIT2_VERSION(MAJOR, MINOR) \
-+  ((LIBGIT2_VER_MAJOR == (MAJOR) && LIBGIT2_VER_MINOR >= (MINOR)) || \
-+   LIBGIT2_VER_MAJOR > (MAJOR))
-+#else /* ! defined(LIBGIT2_VER_MINOR) */
-+# define CHECK_LIBGIT2_VERSION(MAJOR, MINOR) 0
-+#endif
-+
-+#if ! CHECK_LIBGIT2_VERSION(0, 22)
- # define git_libgit2_init     git_threads_init
- # define git_libgit2_shutdown git_threads_shutdown
- #endif
--#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 23) )
-+#if ! CHECK_LIBGIT2_VERSION(0, 23)
- /* 0.23 added @p binary_cb */
- # define git_diff_buffers(old_buffer, old_len, old_as_path, \
-                           new_buffer, new_len, new_as_path, options, \
-@@ -45,7 +53,7 @@
-                     new_buffer, new_len, new_as_path, options, \
-                     file_cb, hunk_cb, line_cb, payload)
- #endif
--#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 28) )
-+#if ! CHECK_LIBGIT2_VERSION(0, 28)
- # define git_buf_dispose  git_buf_free
- # define git_error_last   giterr_last
- #endif
--- 
-2.38.0
-
diff --git a/srcpkgs/geany-plugins/patches/0002-git-changebar-Add-support-for-libgit2-1.4.patch b/srcpkgs/geany-plugins/patches/0002-git-changebar-Add-support-for-libgit2-1.4.patch
deleted file mode 100644
index 3de6e09df7cc3..0000000000000
--- a/srcpkgs/geany-plugins/patches/0002-git-changebar-Add-support-for-libgit2-1.4.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From 5d9f1bc6d010e6b4c6a21af8a39b90922f89a82c Mon Sep 17 00:00:00 2001
-From: Colomban Wendling <ban@herbesfolles.org>
-Date: Sun, 5 Jun 2022 23:22:59 +0200
-Subject: [PATCH 2/2] git-changebar: Add support for libgit2 1.4
-
-The buffer API changed a lot in libgit2 1.4, so compatibility is a bit
-nastier than one could hope for.
-
-Fixes #1164.
----
- git-changebar/src/gcb-plugin.c | 76 ++++++++++++++++++++++++----------
- 1 file changed, 54 insertions(+), 22 deletions(-)
-
-diff --git a/git-changebar/src/gcb-plugin.c b/git-changebar/src/gcb-plugin.c
-index bee8c865..76208cd0 100644
---- a/git-changebar/src/gcb-plugin.c
-+++ b/git-changebar/src/gcb-plugin.c
-@@ -219,30 +219,19 @@ static const struct {
- };
- 
- 
--/* workaround https://github.com/libgit2/libgit2/pull/3187 */
--static int
--gcb_git_buf_grow (git_buf  *buf,
--                  size_t    target_size)
--{
--  if (buf->asize == 0) {
--    if (target_size == 0) {
--      target_size = buf->size;
--    }
--    if ((target_size & 7) == 0) {
--      target_size++;
--    }
--  }
--  return git_buf_grow (buf, target_size);
--}
--#define git_buf_grow gcb_git_buf_grow
--
- static void
- buf_zero (git_buf *buf)
- {
-   if (buf) {
-     buf->ptr = NULL;
-     buf->size = 0;
-+#if ! CHECK_LIBGIT2_VERSION(1, 4)
-     buf->asize = 0;
-+#else
-+    /* we don't really need this field, but the documentation states that all
-+     * fields should be set to 0, so fill it as well */
-+    buf->reserved = 0;
-+#endif
-   }
- }
- 
-@@ -256,6 +245,52 @@ clear_cached_blob_contents (void)
-   G_blob_contents_tag = 0;
- }
- 
-+/* similar to old git_blob_filtered_content() but makes sure the caller owns
-+ * the data in the output buffer -- and uses a boolean return */
-+static gboolean
-+get_blob_contents (git_buf     *out,
-+                   git_blob    *blob,
-+                   const char  *as_path,
-+                   int          check_for_binary_data)
-+{
-+/* libgit2 1.4 changed buffer API quite a bit */
-+#if ! CHECK_LIBGIT2_VERSION(1, 4)
-+  gboolean success = TRUE;
-+
-+  if (git_blob_filtered_content (out, blob, as_path,
-+                                 check_for_binary_data) != 0)
-+    return FALSE;
-+
-+  /* Workaround for https://github.com/libgit2/libgit2/pull/3187
-+   * We want to own the buffer, which git_buf_grow(buf, 0) was supposed to do,
-+   * but there is a corner case where it doesn't do what it should and
-+   * truncates the buffer contents, so we fix this manually. */
-+  if (out->asize == 0) {
-+    size_t target_size = out->size;
-+    if ((target_size & 7) == 0) {
-+      target_size++;
-+    }
-+    success = (git_buf_grow (out, target_size) == 0);
-+  }
-+
-+  return success;
-+#else /* libgit2 >= 1.4 */
-+  /* Here we can assume we will always get a buffer we own (at least as of
-+   * 2022-06-05 it is the case), so there's no need for a pendent to the
-+   * previous git_buf_grow() shenanigans.
-+   * This code path does the same as the older git_blob_filtered_content()
-+   * but with non-deprecated API */
-+  git_blob_filter_options opts = GIT_BLOB_FILTER_OPTIONS_INIT;
-+
-+  if (check_for_binary_data)
-+    opts.flags |= GIT_BLOB_FILTER_CHECK_FOR_BINARY;
-+  else
-+    opts.flags &= ~GIT_BLOB_FILTER_CHECK_FOR_BINARY;
-+
-+  return git_blob_filter(out, blob, as_path, &opts) == 0;
-+#endif
-+}
-+
- /* get the file blob for @relpath at HEAD */
- static gboolean
- repo_get_file_blob_contents (git_repository  *repo,
-@@ -279,11 +314,8 @@ repo_get_file_blob_contents (git_repository  *repo,
-           git_blob *blob;
-           
-           if (git_blob_lookup (&blob, repo, git_tree_entry_id (entry)) == 0) {
--            if (git_blob_filtered_content (contents, blob, relpath,
--                                           check_for_binary_data) == 0 &&
--                git_buf_grow (contents, 0) == 0) {
--              success = TRUE;
--            }
-+            success = get_blob_contents (contents, blob, relpath,
-+                                         check_for_binary_data);
-             git_blob_free (blob);
-           }
-           git_tree_entry_free (entry);
--- 
-2.38.0
-
diff --git a/srcpkgs/geany-plugins/template b/srcpkgs/geany-plugins/template
index f0bb0b04ed80b..480fccc062350 100644
--- a/srcpkgs/geany-plugins/template
+++ b/srcpkgs/geany-plugins/template
@@ -1,12 +1,12 @@
 # Template file for 'geany-plugins'
 pkgname=geany-plugins
-version=1.38.0
-revision=3
+version=2.0.0
+revision=1
 build_style=gnu-configure
 configure_args="--enable-all-plugins --disable-devhelp
  --disable-webhelper --disable-debugger --disable-geanypy --disable-multiterm"
 hostmakedepends="automake gettext-devel intltool libtool pkg-config vala
- glib-devel"
+ glib-devel ncurses-devel"
 makedepends="geany-devel lua51-devel ctpl-devel zlib-devel
  gpgme-devel enchant2-devel libgit2-devel libsoup-devel
  gtkspell-devel webkit2gtk-devel vte3-devel"
@@ -16,7 +16,7 @@ license="GPL-2.0-or-later"
 homepage="http://plugins.geany.org"
 changelog="https://raw.githubusercontent.com/geany/geany-plugins/master/NEWS"
 distfiles="https://github.com/geany/${pkgname}/archive/${version}.tar.gz"
-checksum=86d2fe05290136d020b0d22f849a1aaa74b83cb49b767ae2dc19aaedcdf3d469
+checksum=a706c37cd6441a1418a2538857a503550d70860e913f3aa9a66f9fb1a0b26489
 
 pre_configure() {
 	NOCONFIGURE=1 ./autogen.sh

  parent reply	other threads:[~2024-01-14 19:22 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-19 21:22 [PR PATCH] " zen0bit
2023-11-14  8:28 ` [PR PATCH] [Updated] " zen0bit
2023-11-14  8:33 ` zen0bit
2024-01-10  3:30 ` zen0bit
2024-01-10  8:51 ` zen0bit
2024-01-14 19:22 ` zen0bit [this message]
2024-01-14 19:37 ` [PR PATCH] [Updated] " zen0bit
2024-01-14 21:13 ` zen0bit
2024-01-14 21:13 ` zen0bit
2024-01-14 21:32 ` zen0bit
2024-02-29  0:20 ` [PR PATCH] [Closed]: " oreo639

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240114192258.5A95C2170A@inbox.vuxu.org \
    --to=zen0bit@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).