mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
gnome-extra/gnome-contacts: drop 45.1
Signed-off-by: Pacho Ramos <pacho@gentoo.org>
This commit is contained in:
@@ -1,3 +1,2 @@
|
||||
DIST gnome-contacts-45.1.tar.xz 402748 BLAKE2B 02cb3fd3ebcfd4e33add4706b1746940a14d680697ddaf54f9e006a14c15e7a11f791af2704b40573b59c6348ba3f1e1e216b514b1bc5fed990f0e8eaf1dc45b SHA512 87fc5b235e955ca347950306d37d0d8aea71dbcdb0f8d5c45d96da3a316f5e40da6004d6c5ab3674acdf7237f81bd508486c90130d01b045ee0c0582b04ba8aa
|
||||
DIST gnome-contacts-46.0.tar.xz 410040 BLAKE2B bff36046bf6a37d5550458d55078ec2dfc0704c31365e925788ed64cf03af88ae73be45e256c770fdbc43e65dba5487812fafe169168c2ef625853eaeff17e90 SHA512 adadbb4038053e402f131f530b61fa1c33008eac819d2c03e0a024080bc7e5e24b022a0e9d773ffa03e20324296338d1c3115d25a39f6a3fddd4480de3c8980e
|
||||
DIST gnome-contacts-47.1.1.tar.xz 423676 BLAKE2B 49e43b2bb634e1158799056797e55ae6248fe0518dcdd1d5975810f278b149db75469d48e1f0c02b39e8bfe918b5b0578956149180c1665b323325d6eede55aa SHA512 e03588a82a6ce12d81cb7e346dee59a8e6b56365425c6ff172d4f4ce0b08cfae521dd279aca299d0c9938a832bfbe631a87e83d4a83daff8c5464d6173ae7ea3
|
||||
|
||||
@@ -1,228 +0,0 @@
|
||||
From a6ad56a6151f29ceaf6fda3c547c143645e1060f Mon Sep 17 00:00:00 2001
|
||||
From: Niels De Graef <nielsdegraef@gmail.com>
|
||||
Date: Sun, 18 Feb 2024 11:49:32 +0100
|
||||
Subject: [PATCH] Avoid using return*_if_fail/reached() macros in Vala
|
||||
|
||||
`g_return_if_fail()`, `g_return_val_if_fail()` (and similarly
|
||||
`g_return_if_reached()` are often used in GLib C to denote a
|
||||
precondition or soft assertion for a specific place in the code, often
|
||||
pointing to a programmer error if the condition fails.
|
||||
|
||||
Vala also binds to these methods, but unfortunately, they're a bit less
|
||||
useful: the error message it prints only shows the "compiled" temporary
|
||||
variable (e.g. `_tmp4_ != NULL`) rather than the actual value, and more
|
||||
importantly, it skips some type strictness checks when compiling to C
|
||||
(for example, allowing to return nothing in a function that expects a
|
||||
boolean return value).
|
||||
|
||||
This commit avoids those macros in several ways:
|
||||
- Throwing an error for unsupported code paths
|
||||
- Using the `requires()` construct in Vala, which is a similar construct
|
||||
to that of GLib, but specific to Vala (but can only be used at the
|
||||
function signature level)
|
||||
- For other points in the code, we fall back to `warn_if_fail()`, which
|
||||
still suffers from the problem of printing temporary variables, but at
|
||||
least doesn't fail any type checks.
|
||||
|
||||
Fixes: https://gitlab.gnome.org/GNOME/gnome-contacts/-/issues/340
|
||||
---
|
||||
src/contacts-contact-editor.vala | 4 ++--
|
||||
src/contacts-contact-sheet.vala | 6 +++---
|
||||
src/contacts-import-operation.vala | 2 +-
|
||||
src/contacts-main-window.vala | 19 +++++++++----------
|
||||
src/contacts-persona-filter.vala | 6 +++---
|
||||
src/contacts-query-filter.vala | 6 +++---
|
||||
src/core/contacts-bin-chunk.vala | 2 +-
|
||||
src/core/contacts-chunk.vala | 3 +--
|
||||
src/io/contacts-io-parse-operation.vala | 2 +-
|
||||
9 files changed, 24 insertions(+), 26 deletions(-)
|
||||
|
||||
diff --git a/src/contacts-contact-editor.vala b/src/contacts-contact-editor.vala
|
||||
index 195eaa0e..5ac9b3d7 100644
|
||||
--- a/src/contacts-contact-editor.vala
|
||||
+++ b/src/contacts-contact-editor.vala
|
||||
@@ -126,7 +126,7 @@ public class Contacts.PersonaEditor : Gtk.Widget {
|
||||
return ((Chunk) item).persona == this.persona;
|
||||
});
|
||||
var persona_model = new Gtk.FilterListModel (this.contact, (owned) persona_filter);
|
||||
- return_if_fail (persona_model.get_n_items () > 0);
|
||||
+ warn_if_fail (persona_model.get_n_items () > 0);
|
||||
|
||||
// Show all properties that we either ...
|
||||
var filter = new Gtk.AnyFilter ();
|
||||
@@ -208,7 +208,7 @@ public class Contacts.PersonaEditor : Gtk.Widget {
|
||||
while (current_position < position) {
|
||||
child = child.get_next_sibling ();
|
||||
// If this fails, we somehow have less widgets than items in our model
|
||||
- return_if_fail (child != null);
|
||||
+ warn_if_fail (child != null);
|
||||
current_position++;
|
||||
}
|
||||
|
||||
diff --git a/src/contacts-contact-sheet.vala b/src/contacts-contact-sheet.vala
|
||||
index 2c49bb66..092466ab 100644
|
||||
--- a/src/contacts-contact-sheet.vala
|
||||
+++ b/src/contacts-contact-sheet.vala
|
||||
@@ -49,13 +49,13 @@ public class Contacts.ContactSheet : Gtk.Widget {
|
||||
// Get the widget where we'll have to append the item at "position". Note
|
||||
// that we need to take care of the header and the persona store titles
|
||||
unowned var child = get_first_child ();
|
||||
- return_if_fail (child != null); // Header is always available
|
||||
+ warn_if_fail (child != null); // Header is always available
|
||||
|
||||
uint current_position = 0;
|
||||
while (current_position < position) {
|
||||
child = child.get_next_sibling ();
|
||||
// If this fails, we somehow have less widgets than items in our model
|
||||
- return_if_fail (child != null);
|
||||
+ warn_if_fail (child != null);
|
||||
|
||||
// Ignore persona store labels
|
||||
if (child is Gtk.Label)
|
||||
@@ -67,7 +67,7 @@ public class Contacts.ContactSheet : Gtk.Widget {
|
||||
// First, remove the ones that were removed from the model too
|
||||
while (removed != 0) {
|
||||
unowned var to_remove = child.get_next_sibling ();
|
||||
- return_if_fail (to_remove != null); // if this happens we're out of sync
|
||||
+ warn_if_fail (to_remove != null); // if this happens we're out of sync
|
||||
to_remove.unparent ();
|
||||
removed--;
|
||||
}
|
||||
diff --git a/src/contacts-import-operation.vala b/src/contacts-import-operation.vala
|
||||
index bf8032da..54a29a3d 100644
|
||||
--- a/src/contacts-import-operation.vala
|
||||
+++ b/src/contacts-import-operation.vala
|
||||
@@ -56,6 +56,6 @@ public class Contacts.ImportOperation : Operation {
|
||||
}
|
||||
|
||||
public override async void _undo () throws GLib.Error {
|
||||
- return_if_reached ();
|
||||
+ throw new IOError.NOT_SUPPORTED ("Undoing an import operation is not supported");
|
||||
}
|
||||
}
|
||||
diff --git a/src/contacts-main-window.vala b/src/contacts-main-window.vala
|
||||
index 42c51e65..d8ddda2b 100644
|
||||
--- a/src/contacts-main-window.vala
|
||||
+++ b/src/contacts-main-window.vala
|
||||
@@ -233,12 +233,11 @@ public class Contacts.MainWindow : Adw.ApplicationWindow {
|
||||
this.actions_bar.reveal_child = (this.state == UiState.SELECTING);
|
||||
}
|
||||
|
||||
- private void edit_contact (GLib.SimpleAction action, GLib.Variant? parameter) {
|
||||
- unowned var selected = get_selected_individual ();
|
||||
- return_if_fail (selected != null);
|
||||
+ private void edit_contact (GLib.SimpleAction action, GLib.Variant? parameter)
|
||||
+ requires (get_selected_individual () != null) {
|
||||
|
||||
+ unowned var selected = get_selected_individual ();
|
||||
this.state = UiState.UPDATING;
|
||||
-
|
||||
var title = _("Editing %s").printf (selected.display_name);
|
||||
this.contact_pane_page.title = title;
|
||||
this.contact_pane.edit_contact ();
|
||||
@@ -258,10 +257,10 @@ public class Contacts.MainWindow : Adw.ApplicationWindow {
|
||||
unmark_action.set_enabled (favorite);
|
||||
}
|
||||
|
||||
- private void set_selection_is_favorite (bool favorite) {
|
||||
- unowned var selected = get_selected_individual ();
|
||||
- return_if_fail (selected != null);
|
||||
+ private void set_selection_is_favorite (bool favorite)
|
||||
+ requires (get_selected_individual () != null) {
|
||||
|
||||
+ unowned var selected = get_selected_individual ();
|
||||
selected.is_favourite = favorite;
|
||||
|
||||
update_favorite_actions (favorite);
|
||||
@@ -282,10 +281,10 @@ public class Contacts.MainWindow : Adw.ApplicationWindow {
|
||||
this.list_pane_page.title = left_title;
|
||||
}
|
||||
|
||||
- private void unlink_contact (GLib.SimpleAction action, GLib.Variant? parameter) {
|
||||
- unowned Individual? selected = get_selected_individual ();
|
||||
- return_if_fail (selected != null);
|
||||
+ private void unlink_contact (GLib.SimpleAction action, GLib.Variant? parameter)
|
||||
+ requires (get_selected_individual () != null) {
|
||||
|
||||
+ unowned var selected = get_selected_individual ();
|
||||
this.selection_model.selected.unselect_all ();
|
||||
this.state = UiState.NORMAL;
|
||||
|
||||
diff --git a/src/contacts-persona-filter.vala b/src/contacts-persona-filter.vala
|
||||
index 274f4179..9bf5f913 100644
|
||||
--- a/src/contacts-persona-filter.vala
|
||||
+++ b/src/contacts-persona-filter.vala
|
||||
@@ -24,10 +24,10 @@ public class Contacts.PersonaFilter : Gtk.Filter {
|
||||
}
|
||||
private string[] _ignored_store_types = { "key-file", };
|
||||
|
||||
- public override bool match (GLib.Object? item) {
|
||||
- unowned var persona = item as Persona;
|
||||
- return_val_if_fail (persona != null, false);
|
||||
+ public override bool match (GLib.Object? item)
|
||||
+ requires (item is Persona) {
|
||||
|
||||
+ unowned var persona = item as Persona;
|
||||
return match_persona_store_type (persona);
|
||||
}
|
||||
|
||||
diff --git a/src/contacts-query-filter.vala b/src/contacts-query-filter.vala
|
||||
index ed46f7c5..c1846e05 100644
|
||||
--- a/src/contacts-query-filter.vala
|
||||
+++ b/src/contacts-query-filter.vala
|
||||
@@ -69,10 +69,10 @@ public class Contacts.QueryFilter : Gtk.Filter {
|
||||
this.changed (Gtk.FilterChange.DIFFERENT);
|
||||
}
|
||||
|
||||
- public override bool match (GLib.Object? item) {
|
||||
- unowned var individual = item as Individual;
|
||||
- return_val_if_fail (individual != null, false);
|
||||
+ public override bool match (GLib.Object? item)
|
||||
+ requires (item is Individual) {
|
||||
|
||||
+ unowned var individual = item as Individual;
|
||||
return this.query.is_match (individual) > this.min_strength;
|
||||
}
|
||||
|
||||
diff --git a/src/core/contacts-bin-chunk.vala b/src/core/contacts-bin-chunk.vala
|
||||
index 4a63072e..96bf5de3 100644
|
||||
--- a/src/core/contacts-bin-chunk.vala
|
||||
+++ b/src/core/contacts-bin-chunk.vala
|
||||
@@ -38,7 +38,7 @@ public abstract class Contacts.BinChunk : Chunk, GLib.ListModel {
|
||||
public override bool dirty {
|
||||
get {
|
||||
// If we're hitting this, a subclass forgot to set the field
|
||||
- return_val_if_fail (this.original_elements_set, false);
|
||||
+ warn_if_fail (this.original_elements_set);
|
||||
|
||||
var non_empty_count = nr_nonempty_children ();
|
||||
if (this.original_elements.length != non_empty_count)
|
||||
diff --git a/src/core/contacts-chunk.vala b/src/core/contacts-chunk.vala
|
||||
index ba346db5..fdfa8da1 100644
|
||||
--- a/src/core/contacts-chunk.vala
|
||||
+++ b/src/core/contacts-chunk.vala
|
||||
@@ -58,8 +58,7 @@ public abstract class Contacts.Chunk : GLib.Object {
|
||||
/**
|
||||
* Calls the appropriate API to save to the persona.
|
||||
*/
|
||||
- public abstract async void save_to_persona () throws GLib.Error
|
||||
- requires (this.persona != null);
|
||||
+ public abstract async void save_to_persona () throws GLib.Error;
|
||||
|
||||
/**
|
||||
* Serializes this chunk into a {@link GLib.Variant} accordding to an
|
||||
diff --git a/src/io/contacts-io-parse-operation.vala b/src/io/contacts-io-parse-operation.vala
|
||||
index 0e74c144..cfb98a74 100644
|
||||
--- a/src/io/contacts-io-parse-operation.vala
|
||||
+++ b/src/io/contacts-io-parse-operation.vala
|
||||
@@ -82,6 +82,6 @@ public class Contacts.Io.ParseOperation : Operation {
|
||||
}
|
||||
|
||||
public override async void _undo () throws GLib.Error {
|
||||
- return_if_reached ();
|
||||
+ throw new IOError.NOT_SUPPORTED ("Undoing a parsing operation is not supported");
|
||||
}
|
||||
}
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -1,77 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit gnome.org gnome2-utils meson python-any-r1 vala xdg
|
||||
|
||||
DESCRIPTION="GNOME contact management application"
|
||||
HOMEPAGE="https://wiki.gnome.org/Design/Apps/Contacts"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86"
|
||||
IUSE="+gnome-online-accounts"
|
||||
|
||||
VALA_DEPEND="
|
||||
$(vala_depend)
|
||||
>=dev-libs/gobject-introspection-1.54
|
||||
dev-libs/folks[vala(+)]
|
||||
gnome-online-accounts? ( net-libs/gnome-online-accounts[vala] )
|
||||
gnome-extra/evolution-data-server[gtk,vala]
|
||||
>=dev-libs/libportal-0.6:=[gtk,vala]
|
||||
"
|
||||
RDEPEND="
|
||||
>=dev-libs/folks-0.14.0:=[eds]
|
||||
>=dev-libs/libgee-0.10:0.8=
|
||||
>=dev-libs/glib-2.64:2
|
||||
>=gui-libs/gtk-4.12:4
|
||||
>=gui-libs/libadwaita-1.4_alpha:1
|
||||
>=gnome-extra/evolution-data-server-3.42:=[gnome-online-accounts?]
|
||||
>=dev-libs/libportal-0.6:=
|
||||
>=media-gfx/qrencode-4.1.1:=
|
||||
gnome-online-accounts? ( net-libs/gnome-online-accounts:= )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
${VALA_DEPEND}
|
||||
app-text/docbook-xml-dtd:4.2
|
||||
app-text/docbook-xsl-stylesheets
|
||||
dev-libs/appstream-glib
|
||||
dev-libs/libxml2:2
|
||||
dev-libs/libxslt
|
||||
>=sys-devel/gettext-0.19.8
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PV}-clang.patch # Upstream commit a6ad56a6151f29
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
vala_setup
|
||||
xdg_environment_reset
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local emesonargs=(
|
||||
-Dcamera=true # Ignored
|
||||
-Dmanpage=true
|
||||
-Ddocs=false
|
||||
$(meson_use gnome-online-accounts goa)
|
||||
)
|
||||
meson_src_configure
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
gnome2_schemas_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_pkg_postrm
|
||||
gnome2_schemas_update
|
||||
}
|
||||
Reference in New Issue
Block a user