# Deep Connections gramplet enhancement

**URL:** <https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183>\
**Category:** Development\
**Tags:** third-party-addon, performance\
**Created:** [October 8, 2024, 2:42pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183 "2024-10-08T14:42:06Z")\
**Posts on this page:** 10\
**Page:** 2

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [August 29, 2025, 5:00pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/21 "2025-08-29T17:00:28Z")

</div>

> [@New Gramplet: DNA Matches](https://gramps.discourse.group/t/new-gramplet-dna-matches/4313/38):
>
> I never use Deep Connections it is too slow and processor intensive to be worth the effort.

@dsblank [just released a v1.0.47 update, for Gramps 6.0 only](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/9) (on 6 Aug 2025) to improve **Deep Connections** performance. Have you re-evaluated it?

---

<div class="post-metadata">

**Author:** ![comeng](https://avatars.discourse-cdn.com/v4/letter/c/2acd7d/32.png) [@comeng](https://gramps.discourse.group/u/comeng)\
**Post date:** [August 29, 2025, 6:09pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/22 "2025-08-29T18:09:32Z")

</div>

Hi Brian

My base is still 5.2.4 however I have a working version of 6.0.4 with which I am relatively happy but still playing so will try out Deep Connections on that.

Will let you know how I get on  
phil

---

<div class="post-metadata">

**Author:** ![comeng](https://avatars.discourse-cdn.com/v4/letter/c/2acd7d/32.png) [@comeng](https://gramps.discourse.group/u/comeng)\
**Post date:** [August 29, 2025, 8:38pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/23 "2025-08-29T20:38:42Z")

</div>

Hi Brian

First thoughts

1.0.47 (Gramps 6.0.4) appears to be quicker (still slower than without, but usable without causing major irritation) than 1.0.42 (Gramps 5.2.4) both on same Raspberry Pi5 8gb, Bookworm and same database different Schema’s obviously.

For my test I have a DNA match whom I have never managed to establish the paper trail link too.

So in both versions Utilities/Relationship Calculator no connection is found.

However Deep Connections in both versions finds a link most of whom are are not labelled (1st cousin, 2nd cousin etc).

Will try to recreate an image but too many living people shown on my live database.  
I really need to think what is happening here in the real world.

Interesting point here is the match is one of the ones with DNA Association for Segment Map.

Finally this is going up from the home person to the 5th great grandparent before starting down

phil

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [June 29, 2026, 1:13am UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/26 "2026-06-29T01:13:06Z")

</div>

@dsblank

Could you do another minor enhancement to the Deep Connections Gramplet.

A message is appended as the Gramplet pauses between relationships `sentinel = _( "\nPaused.\nPress Continue to search for additional relations.\n`

But Repeated text block ends up obscuring the delineation between found relations. And if you were to copy’p’paste the output into an eMail to a fellow researcher, it has to be manually edited out. Could you tweak the gramplet to flush the `Paused` message when the Continue button is clicked? And to include a line break before each result?

**Anthropic Claude** recommends replacing

> <https://github.com/gramps-project/addons-source/blob/f09506c377d7f74dae4bdebf393425d575594220/DeepConnectionsGramplet/DeepConnectionsGramplet.py#L502-L508>

with :

```python
    def resume_search(self, widget: object) -> None:
        """Resume the search after being paused."""
        if self.search_active:
            self.update_status(_("Resuming search..."))
            self.continue_button.set_sensitive(False)
            self.pause_button.set_sensitive(True)
            self._remove_pause_message()
            self.resume()

    def _remove_pause_message(self) -> None:
        """
        Remove the pause-prompt text from the output buffer.

        Searches the buffer for the sentinel string appended when the
        search pauses, deletes it, and leaves exactly one newline in
        its place so the next "Found relation #" starts on a clean line.
        """
        sentinel = _(
            "\nPaused.\nPress Continue to search for additional relations.\n"
        )
        buf = self.gui.buffer
        start_iter = buf.get_start_iter()
        found = start_iter.forward_search(
            sentinel, 0, buf.get_end_iter()
        )
        if found:
            match_start, match_end = found
            # Replace the sentinel with a single newline to preserve spacing.
            buf.delete(match_start, match_end)
            buf.insert(match_start, "\n")

```

And add a `\n` at the beginning of the string in:

> <https://github.com/gramps-project/addons-source/blob/f09506c377d7f74dae4bdebf393425d575594220/DeepConnectionsGramplet/DeepConnectionsGramplet.py#L423-L425>

This changes the readout to be more readable:

 ![DeepConn2](https://global.discourse-cdn.com/free1/uploads/gramps/original/2X/6/64024717b083dceb63c852e7060c7181038576eb.png) ![image](https://global.discourse-cdn.com/free1/uploads/gramps/original/2X/e/e4c1c2f85a3d7c4a1f4d4bd9f11ef8cca1ffff52.png)

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [June 29, 2026, 1:29pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/27 "2026-06-29T13:29:46Z")

</div>

## Note:

The screenshot was from the successful test (of the _ **Claude Anthropic** suggested changes_) running Gramps 5.2 but based on Deep Connections 1.0.50, manually copied from the 6.1 Addons-source repo. (The repo for Gramps 5.2 was still at 1.0.42)

Could you do updates to the 6.1, 6.0 and 5.2 repos?

---

<div class="post-metadata">

**Author:** ![dsblank](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/dsblank/32/3649_2.png) [@dsblank](https://gramps.discourse.group/u/dsblank)\
**Post date:** [June 29, 2026, 1:50pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/28 "2026-06-29T13:50:25Z")

</div>

Thanks, I’ll take a look.

---

<div class="post-metadata">

**Author:** ![dsblank](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/dsblank/32/3649_2.png) [@dsblank](https://gramps.discourse.group/u/dsblank)\
**Post date:** [June 29, 2026, 1:51pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/29 "2026-06-29T13:51:32Z")

</div>

Do you just want to make a PR?

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [June 29, 2026, 2:04pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/30 "2026-06-29T14:04:00Z")

</div>

I’d rather not. I find the addon-source repositories to be a misery. With over 145 addon folder and active branches for master plus maintenance branches for 5.2, 6.0, 6.1, and (arguably) 4.2, it seems like keeping a clone repo sync’d so you can submit a PR is a full-time job.

I just tried submitting a PR (for the v5.2 Check Association data utility tool) yesterday via the webinterface. But doing a web edit to the `.gpr.py`, the `.py`, and adding a `README.md` created 3 PRs with no apparent way to squash them into a single PR. So that isn’t the answer either.

---

<div class="post-metadata">

**Author:** ![dsblank](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/dsblank/32/3649_2.png) [@dsblank](https://gramps.discourse.group/u/dsblank)\
**Post date:** [June 29, 2026, 2:11pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/31 "2026-06-29T14:11:07Z")

</div>

> [@emyoulation](#):
>
> keeping a clone repo sync’d so you can submit a PR is a full-time job.

You are definitely doing it wrong then. This is what I’ll do:

1. change to `gramps/addons-source` in the console
2. `git checkout maintenance/grampsXX`
3. Copy code changes to the right place; test it
4. Make a PR from current changes
5. Repeat 2 - 4 for all branches

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [June 29, 2026, 2:13pm UTC](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183/32 "2026-06-29T14:13:41Z")

</div>

Ah… I have never used Git from the console. That’s a whole new can of worms. (And I am absolutely flummoxed by the ‘setting up of a Gramps development environment’ in the [Getting started with Gramps Development](https://gramps-project.org/wiki/index.php/Getting_started_with_Gramps_development) wiki page.)

[Previous page](https://gramps.discourse.group/t/deep-connections-gramplet-enhancement/8183.md?page=1)
