diff -pruN 1:43~alpha-1/debian/changelog 1:43~alpha-1ubuntu1/debian/changelog
--- 1:43~alpha-1/debian/changelog	2022-07-30 22:09:36.000000000 +0000
+++ 1:43~alpha-1ubuntu1/debian/changelog	2022-07-30 22:12:22.000000000 +0000
@@ -1,3 +1,12 @@
+gnome-calculator (1:43~alpha-1ubuntu1) kinetic; urgency=medium
+
+  * Merge with Debian, remaining change:
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
+
+ -- Jeremy Bicha <jbicha@ubuntu.com>  Sat, 30 Jul 2022 18:12:22 -0400
+
 gnome-calculator (1:43~alpha-1) unstable; urgency=medium
 
   * New upstream release
@@ -6,18 +15,45 @@ gnome-calculator (1:43~alpha-1) unstable
 
  -- Jeremy Bicha <jbicha@ubuntu.com>  Sat, 30 Jul 2022 18:09:36 -0400
 
+gnome-calculator (1:42.2-1ubuntu1) kinetic; urgency=medium
+
+  * Merge with Debian, remaining change:
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
+
+ -- Nathan Pratta Teodosio <nathan.teodosio@canonical.com>  Tue, 05 Jul 2022 16:08:22 -0300
+
 gnome-calculator (1:42.2-1) unstable; urgency=medium
 
   * New upstream release (LP: #1980744)
 
  -- Nathan Pratta Teodosio <nathan.teodosio@canonical.com>  Mon, 04 Jul 2022 10:56:14 -0300
 
+gnome-calculator (1:42.1-1ubuntu1) kinetic; urgency=medium
+
+  * Merge with Debian, remaining change:
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Fri, 10 Jun 2022 13:50:38 +0200
+
 gnome-calculator (1:42.1-1) unstable; urgency=medium
 
   * New upstream release
 
  -- Nathan Pratta Teodosio <nathan.teodosio@canonical.com>  Wed, 08 Jun 2022 11:27:25 -0300
 
+gnome-calculator (1:42.0-3ubuntu1) kinetic; urgency=medium
+
+  * Merge with Debian, remaining change:
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
+
+ -- Jeremy Bicha <jbicha@ubuntu.com>  Tue, 17 May 2022 08:32:34 -0400
+
 gnome-calculator (1:42.0-3) unstable; urgency=medium
 
   * debian/rules: Fix timeout multiplier flag
@@ -39,6 +75,22 @@ gnome-calculator (1:42.0-1) unstable; ur
 
  -- Jeremy Bicha <jbicha@ubuntu.com>  Mon, 21 Mar 2022 10:30:24 -0400
 
+gnome-calculator (1:41.1-2ubuntu2) jammy; urgency=medium
+
+  * Enable UI tests
+
+ -- Jeremy Bicha <jbicha@ubuntu.com>  Mon, 21 Mar 2022 10:38:39 -0400
+
+gnome-calculator (1:41.1-2ubuntu1) jammy; urgency=medium
+
+  * Merge with debian, remaining changes:
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
+  * Update Ubuntu search provider patch to remove vala casts to void
+
+ -- Jeremy Bicha <jbicha@ubuntu.com>  Thu, 17 Mar 2022 06:21:14 -0400
+
 gnome-calculator (1:41.1-2) unstable; urgency=medium
 
   * Add patch to support GNOME 42 dark theme preference
@@ -46,6 +98,15 @@ gnome-calculator (1:41.1-2) unstable; ur
 
  -- Jeremy Bicha <jeremy.bicha@canonical.com>  Mon, 14 Feb 2022 15:05:12 -0500
 
+gnome-calculator (1:41.1-1ubuntu1) jammy; urgency=medium
+
+  * Merge with debian, remaining changes:
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 11 Jan 2022 10:47:29 +0100
+
 gnome-calculator (1:41.1-1) unstable; urgency=medium
 
   * New upstream release
@@ -101,6 +162,16 @@ gnome-calculator (40~rc-1) experimental;
 
  -- Sebastien Bacher <seb128@ubuntu.com>  Mon, 15 Mar 2021 10:38:13 +0100
 
+gnome-calculator (1:40~beta-2ubuntu1) hirsute; urgency=medium
+
+  * Merge with debian, remaining changes:
+    - Add epoch
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 23 Feb 2021 21:46:48 +0100
+
 gnome-calculator (40~beta-2) experimental; urgency=medium
 
   * debian/patches/disable_tests_online.patch:
@@ -123,17 +194,22 @@ gnome-calculator (3.38.2-1) unstable; ur
 
  -- Laurent Bigonville <bigon@debian.org>  Mon, 07 Dec 2020 14:54:07 +0100
 
-gnome-calculator (3.38.1-1) unstable; urgency=medium
+gnome-calculator (3.38.0-1) unstable; urgency=medium
 
   * New upstream release
 
- -- Sebastien Bacher <seb128@ubuntu.com>  Mon, 05 Oct 2020 10:25:06 +0200
+ -- Marco Trevisan (Treviño) <marco@ubuntu.com>  Tue, 15 Sep 2020 14:39:38 +0200
 
-gnome-calculator (3.38.0-1) unstable; urgency=medium
+gnome-calculator (1:3.37.90-1ubuntu1) groovy; urgency=medium
 
-  * New upstream release
+  * Sync with Debian, upstream version:
+    Remaining changes:
+    - Add epoch
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
 
- -- Marco Trevisan (Treviño) <marco@ubuntu.com>  Tue, 15 Sep 2020 14:39:38 +0200
+ -- Sebastien Bacher <seb128@ubuntu.com>  Fri, 07 Aug 2020 15:38:07 +0200
 
 gnome-calculator (3.37.90-1) experimental; urgency=medium
 
@@ -201,6 +277,17 @@ gnome-calculator (3.32.0-1) experimental
 
  -- Jeremy Bicha <jbicha@debian.org>  Tue, 12 Mar 2019 20:19:54 -0400
 
+gnome-calculator (1:3.31.90-1ubuntu1) disco; urgency=medium
+
+  * Sync with Debian. Remaining changes:
+    - Add epoch
+    - Add ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+      + Use XUbuntuCancel with GNOME Shell search provider to stop
+        expensive processes that might lead to an unresponsive process
+        (LP: #1756826)
+
+ -- Jeremy Bicha <jbicha@ubuntu.com>  Tue, 05 Feb 2019 12:42:20 -0500
+
 gnome-calculator (3.31.90-1) experimental; urgency=medium
 
   * New upstream development release
@@ -219,6 +306,21 @@ gnome-calculator (3.30.1-2) unstable; ur
 
  -- Jeremy Bicha <jbicha@debian.org>  Sun, 23 Dec 2018 10:07:27 -0500
 
+gnome-calculator (1:3.30.1-1ubuntu1) cosmic; urgency=medium
+
+  * New version update (lp: #1795863)
+
+  [ Marco Trevisan (Treviño) ]
+  * debian/control:
+    - Use Ubuntu Vcs-* URIs, and move debian's to XS-Debian-Vcs-*
+  * debian/patches/search-provider-Handle-errors-gracefully.patch:
+    - Add patch to avoid exiting with fatal errors when a spawn error occurred
+      (LP: #1795399)
+  * debian/patches: refreshed mentioning when applied
+  * debian/gbp.conf: add debian default's suggested settings
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Wed, 03 Oct 2018 13:16:10 +0200
+
 gnome-calculator (3.30.1-1) unstable; urgency=medium
 
   * New upstream version
@@ -231,6 +333,42 @@ gnome-calculator (3.30.0-1) unstable; ur
 
  -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 04 Sep 2018 11:08:49 +0200
 
+gnome-calculator (1:3.29.91-1ubuntu3) UNRELEASED; urgency=medium
+
+  * debian/gbp.conf:
+    - Add back debian-tag=ubuntu/%(version)s setting
+
+ -- Marco Trevisan (Treviño) <marco@ubuntu.com>  Mon, 03 Sep 2018 16:46:28 +0200
+
+gnome-calculator (1:3.29.91-1ubuntu2) cosmic; urgency=medium
+
+  * d/p/search-provider-Use-async-calls-cancel-search-on-inactivi.patch,
+    d/p/search-provider-renew-inactivity-timeout-at-each-calculat.patch,
+    d/p/search-provider-Use-lower-inactivity-timeout.patch,
+    d/p/search-provider-simplify-solve_subprocess.patch,
+    d/p/search-provider-cache-equations-avoiding-spawning-calcula.patch,
+    d/p/search-provider-cancel-the-current-process-on-new-calcula.patch,
+    d/p/search-provider-cache-only-a-limited-number-of-equations.patch,
+    d/p/ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch:
+    - Make search provider async and support XUbuntuCancel method to
+      stop expensive operations that might lead to an unresponsive
+      process (LP: #1756826)
+
+ -- Marco Trevisan (Treviño) <marco@ubuntu.com>  Thu, 30 Aug 2018 12:57:51 -0500
+
+gnome-calculator (1:3.29.91-1ubuntu1) cosmic; urgency=medium
+
+  * Sync with Debian (lp: #1785802). Remaining change:
+    - Add epoch
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 14 Aug 2018 17:03:08 +0200
+
+gnome-calculator (3.38.1-1) unstable; urgency=medium
+
+  * New upstream release
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Mon, 05 Oct 2020 10:25:06 +0200
+
 gnome-calculator (3.29.91-1) experimental; urgency=medium
 
   * New upstream version
diff -pruN 1:43~alpha-1/debian/control 1:43~alpha-1ubuntu1/debian/control
--- 1:43~alpha-1/debian/control	2022-07-30 22:09:36.000000000 +0000
+++ 1:43~alpha-1ubuntu1/debian/control	2022-07-30 22:12:22.000000000 +0000
@@ -5,8 +5,9 @@
 Source: gnome-calculator
 Section: math
 Priority: optional
-Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
-Uploaders: Jeremy Bicha <jbicha@ubuntu.com>, Laurent Bigonville <bigon@debian.org>, Michael Biebl <biebl@debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Uploaders: Jeremy Bicha <jbicha@ubuntu.com>, Laurent Bigonville <bigon@debian.org>
 Build-Depends: appstream-util,
                debhelper-compat (= 13),
                dh-sequence-gnome,
@@ -25,8 +26,10 @@ Build-Depends: appstream-util,
                xauth <!nocheck>,
                xvfb <!nocheck>
 Standards-Version: 4.5.1
-Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-calculator
-Vcs-Git: https://salsa.debian.org/gnome-team/gnome-calculator.git
+XS-Debian-Vcs-Git: https://salsa.debian.org/gnome-team/gnome-calculator.git
+XS-Debian-Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-calculator
+Vcs-Git: https://salsa.debian.org/gnome-team/gnome-calculator.git -b ubuntu/master
+Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-calculator/tree/ubuntu/master
 Homepage: https://wiki.gnome.org/Apps/Calculator
 Rules-Requires-Root: no
 
diff -pruN 1:43~alpha-1/debian/control.in 1:43~alpha-1ubuntu1/debian/control.in
--- 1:43~alpha-1/debian/control.in	2022-07-30 22:09:36.000000000 +0000
+++ 1:43~alpha-1ubuntu1/debian/control.in	2022-07-30 22:12:22.000000000 +0000
@@ -1,7 +1,8 @@
 Source: gnome-calculator
 Section: math
 Priority: optional
-Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
 Uploaders: @GNOME_TEAM@
 Build-Depends: appstream-util,
                debhelper-compat (= 13),
@@ -21,8 +22,10 @@ Build-Depends: appstream-util,
                xauth <!nocheck>,
                xvfb <!nocheck>
 Standards-Version: 4.5.1
-Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-calculator
-Vcs-Git: https://salsa.debian.org/gnome-team/gnome-calculator.git
+XS-Debian-Vcs-Git: https://salsa.debian.org/gnome-team/gnome-calculator.git
+XS-Debian-Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-calculator
+Vcs-Git: https://salsa.debian.org/gnome-team/gnome-calculator.git -b ubuntu/master
+Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-calculator/tree/ubuntu/master
 Homepage: https://wiki.gnome.org/Apps/Calculator
 Rules-Requires-Root: no
 
diff -pruN 1:43~alpha-1/debian/gbp.conf 1:43~alpha-1ubuntu1/debian/gbp.conf
--- 1:43~alpha-1/debian/gbp.conf	2022-07-30 22:09:36.000000000 +0000
+++ 1:43~alpha-1ubuntu1/debian/gbp.conf	2022-07-30 22:12:22.000000000 +0000
@@ -1,6 +1,7 @@
 [DEFAULT]
 pristine-tar = True
-debian-branch = debian/master
+debian-branch = ubuntu/master
+debian-tag = ubuntu/%(version)s
 upstream-branch = upstream/latest
 
 [buildpackage]
diff -pruN 1:43~alpha-1/debian/patches/series 1:43~alpha-1ubuntu1/debian/patches/series
--- 1:43~alpha-1/debian/patches/series	2022-07-30 22:09:36.000000000 +0000
+++ 1:43~alpha-1ubuntu1/debian/patches/series	2022-07-30 22:12:22.000000000 +0000
@@ -1 +1,2 @@
 port-to-libsoup-3.0.patch
+ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch
diff -pruN 1:43~alpha-1/debian/patches/ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch 1:43~alpha-1ubuntu1/debian/patches/ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch
--- 1:43~alpha-1/debian/patches/ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1:43~alpha-1ubuntu1/debian/patches/ubuntu/search-provider-Cancel-operations-on-XUbuntuCancel.patch	2022-07-30 22:12:22.000000000 +0000
@@ -0,0 +1,102 @@
+From: =?utf-8?b?Ik1hcmNvIFRyZXZpc2FuIChUcmV2acOxbyki?= <mail@3v1n0.net>
+Date: Tue, 28 Aug 2018 04:12:20 +0200
+Subject: search-provider: Cancel operations on XUbuntuCancel
+
+Stop process and any computation on XUbuntuCancel method, if the caller
+was the same triggering the last operation.
+
+Fixes LP: #1756826
+
+Bug-Ubuntu: https://launchpad.net/bugs/1756826
+Bug-GNOME: https://gitlab.gnome.org/GNOME/gnome-shell/issues/183
+Forwarded: not-needed
+---
+ search-provider/search-provider.vala | 37 +++++++++++++++++++++++++++++++-----
+ 1 file changed, 32 insertions(+), 5 deletions(-)
+
+diff --git a/search-provider/search-provider.vala b/search-provider/search-provider.vala
+index f37d24d..4b47745 100644
+--- a/search-provider/search-provider.vala
++++ b/search-provider/search-provider.vala
+@@ -10,11 +10,33 @@
+  * license.
+  */
+ 
++public class CallerTracker : Object
++{
++    public BusName? bus { get; set; }
++}
++
++public class Caller
++{
++    private CallerTracker caller_tracker;
++
++    public Caller (CallerTracker c, BusName sender)
++    {
++        caller_tracker = c;
++        caller_tracker.bus = sender;
++    }
++
++    ~Caller ()
++    {
++        caller_tracker.bus = null;
++    }
++}
++
+ [DBus (name = "org.gnome.Shell.SearchProvider2")]
+ public class SearchProvider : Object
+ {
+     private unowned SearchProviderApp application;
+     private Cancellable cancellable;
++    private CallerTracker caller_tracker;
+ 
+     private const int MAX_CACHED_EQUATIONS = 10;
+     private Queue<string> queued_equations;
+@@ -26,6 +48,7 @@ public class SearchProvider : Object
+     {
+         application = app;
+ 
++        caller_tracker = new CallerTracker ();
+         queued_equations = new Queue<string> ();
+         cached_equations = new HashTable<string, string> (str_hash, str_equal);
+     }
+@@ -131,8 +154,10 @@ public class SearchProvider : Object
+         return true;
+     }
+ 
+-    private async string[] get_result_identifier (string[] terms) throws Error
++    private async string[] get_result_identifier (string[] terms, GLib.BusName sender) throws Error
+     {
++        var owner = new Caller (caller_tracker, sender);
++
+         /* We have at most one result: the search terms as one string */
+         var equation = terms_to_equation (terms);
+         if (yield solve_equation (equation))
+@@ -141,14 +166,14 @@ public class SearchProvider : Object
+             return new string[0];
+     }
+ 
+-    public async string[] get_initial_result_set (string[] terms) throws Error
++    public async string[] get_initial_result_set (string[] terms, GLib.BusName sender) throws Error
+     {
+-        return yield get_result_identifier (terms);
++        return yield get_result_identifier (terms, sender);
+     }
+ 
+-    public async string[] get_subsearch_result_set (string[] previous_results, string[] terms) throws Error
++    public async string[] get_subsearch_result_set (string[] previous_results, string[] terms, GLib.BusName sender) throws Error
+     {
+-        return yield get_result_identifier (terms);
++        return yield get_result_identifier (terms, sender);
+     }
+ 
+     public async HashTable<string, Variant>[] get_result_metas (string[] results, GLib.BusName sender) throws Error
+@@ -158,6 +183,8 @@ public class SearchProvider : Object
+         string result;
+         uint32 equation_index;
+ 
++        var owner = new Caller (caller_tracker, sender);
++
+         if (results.length == 1 && results[0].has_prefix(COPY_TO_CLIPBOARD_ID))
+             return new HashTable<string, Variant>[0];
+ 
