I have that event filter that crashes, even though it uses a family filter that works.
Events filter error details
User Information:
Crash of an event filter using a functional family filter
Error Details:
25455: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/app/lib/python3.13/site-packages/gramps/gui/filters/sidebar/_sidebarfilter.py”, line 165, in clicked
self.clicked_func()
~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/plugins/gramplet/filter.py”, line 77, in __filter_clicked
self.gui.view.build_tree()
~~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/listview.py”, line 363, in build_tree
self.model.rebuild_data()
~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/treemodels/flatbasemodel.py”, line 629, in _rebuild_filter
dlist = self.search.apply(cdb, allkeys, tupleind=1, user=self.user)
File “/app/lib/python3.13/site-packages/gramps/gen/filters/_genericfilter.py”, line 282, in apply
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_matchesfilterbase.py”, line 78, in prepare
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 95, in prepare
self.events.update([e.ref for e in family.get_event_ref_list()])
^^^^^^^^^^^
AttributeError: ‘IsFamilyFilterMatchEvent’ object has no attribute ‘events’
47800: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 1131, in on_filter_changed
frame2 = self.add_frame_and_filter(
None, self.current_category, filtername, filtername, 0
)
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 1063, in add_frame_and_filter
self.addfilter(grid2, category, filter, level + 1)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 992, in addfilter
entry = self.get_widgets([caption1], filter.get_name())
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 851, in get_widgets
t = v1
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 70, in init
MyFilters.init(self, caller_locals[“filterdb”].get_filters(“Family”))
~~~~~~~~~~~~~^^^^^^^^^^^^
KeyError: “local variable ‘‘filterdb’’ is not defined”
190166: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/app/lib/python3.13/site-packages/gramps/gui/filters/sidebar/_sidebarfilter.py”, line 165, in clicked
self.clicked_func()
~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/plugins/gramplet/filter.py”, line 77, in __filter_clicked
self.gui.view.build_tree()
~~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/listview.py”, line 363, in build_tree
self.model.rebuild_data()
~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/treemodels/flatbasemodel.py”, line 629, in _rebuild_filter
dlist = self.search.apply(cdb, allkeys, tupleind=1, user=self.user)
File “/app/lib/python3.13/site-packages/gramps/gen/filters/_genericfilter.py”, line 282, in apply
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_matchesfilterbase.py”, line 78, in prepare
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 95, in prepare
self.events.update([e.ref for e in family.get_event_ref_list()])
^^^^^^^^^^^
AttributeError: ‘IsFamilyFilterMatchEvent’ object has no attribute ‘events’
207411: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/app/lib/python3.13/site-packages/gramps/gui/filters/sidebar/_sidebarfilter.py”, line 165, in clicked
self.clicked_func()
~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/plugins/gramplet/filter.py”, line 77, in __filter_clicked
self.gui.view.build_tree()
~~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/listview.py”, line 363, in build_tree
self.model.rebuild_data()
~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/treemodels/flatbasemodel.py”, line 629, in _rebuild_filter
dlist = self.search.apply(cdb, allkeys, tupleind=1, user=self.user)
File “/app/lib/python3.13/site-packages/gramps/gen/filters/_genericfilter.py”, line 282, in apply
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_matchesfilterbase.py”, line 78, in prepare
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 95, in prepare
self.events.update([e.ref for e in family.get_event_ref_list()])
^^^^^^^^^^^
AttributeError: ‘IsFamilyFilterMatchEvent’ object has no attribute ‘events’
System Information:
Gramps version: 6.0.8
Python version: 3.13.13
BSDDB version: not found
sqlite version: 3.50.4
orjson version: 3.11.4
LANG: fr_FR.UTF-8
OS: Linux
Distribution: 6.17.0-35-generic
GTK version : 3.24.52
gobject version: 3.54.5
cairo version : (1, 29, 0)
If I try to ask FilterParams to show the event filter, it crashes too.
FilterParams error details
User Information:
FilterParams error details
Error Details:
25455: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/app/lib/python3.13/site-packages/gramps/gui/filters/sidebar/_sidebarfilter.py”, line 165, in clicked
self.clicked_func()
~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/plugins/gramplet/filter.py”, line 77, in __filter_clicked
self.gui.view.build_tree()
~~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/listview.py”, line 363, in build_tree
self.model.rebuild_data()
~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/treemodels/flatbasemodel.py”, line 629, in _rebuild_filter
dlist = self.search.apply(cdb, allkeys, tupleind=1, user=self.user)
File “/app/lib/python3.13/site-packages/gramps/gen/filters/_genericfilter.py”, line 282, in apply
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_matchesfilterbase.py”, line 78, in prepare
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 95, in prepare
self.events.update([e.ref for e in family.get_event_ref_list()])
^^^^^^^^^^^
AttributeError: ‘IsFamilyFilterMatchEvent’ object has no attribute ‘events’
47800: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 1131, in on_filter_changed
frame2 = self.add_frame_and_filter(
None, self.current_category, filtername, filtername, 0
)
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 1063, in add_frame_and_filter
self.addfilter(grid2, category, filter, level + 1)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 992, in addfilter
entry = self.get_widgets([caption1], filter.get_name())
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 851, in get_widgets
t = v1
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 70, in init
MyFilters.init(self, caller_locals[“filterdb”].get_filters(“Family”))
~~~~~~~~~~~~~^^^^^^^^^^^^
KeyError: “local variable ‘‘filterdb’’ is not defined”
190166: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/app/lib/python3.13/site-packages/gramps/gui/filters/sidebar/_sidebarfilter.py”, line 165, in clicked
self.clicked_func()
~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/plugins/gramplet/filter.py”, line 77, in __filter_clicked
self.gui.view.build_tree()
~~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/listview.py”, line 363, in build_tree
self.model.rebuild_data()
~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/treemodels/flatbasemodel.py”, line 629, in _rebuild_filter
dlist = self.search.apply(cdb, allkeys, tupleind=1, user=self.user)
File “/app/lib/python3.13/site-packages/gramps/gen/filters/_genericfilter.py”, line 282, in apply
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_matchesfilterbase.py”, line 78, in prepare
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 95, in prepare
self.events.update([e.ref for e in family.get_event_ref_list()])
^^^^^^^^^^^
AttributeError: ‘IsFamilyFilterMatchEvent’ object has no attribute ‘events’
207411: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/app/lib/python3.13/site-packages/gramps/gui/filters/sidebar/_sidebarfilter.py”, line 165, in clicked
self.clicked_func()
~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/plugins/gramplet/filter.py”, line 77, in __filter_clicked
self.gui.view.build_tree()
~~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/listview.py”, line 363, in build_tree
self.model.rebuild_data()
~~~~~~~~~~~~~~~~~~~~~~~^^
File “/app/lib/python3.13/site-packages/gramps/gui/views/treemodels/flatbasemodel.py”, line 629, in _rebuild_filter
dlist = self.search.apply(cdb, allkeys, tupleind=1, user=self.user)
File “/app/lib/python3.13/site-packages/gramps/gen/filters/_genericfilter.py”, line 282, in apply
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_matchesfilterbase.py”, line 78, in prepare
rule.requestprepare(db, user)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “/app/lib/python3.13/site-packages/gramps/gen/filters/rules/_rule.py”, line 107, in requestprepare
self.prepare(db, user)
~~~~~~~~~~~~^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 95, in prepare
self.events.update([e.ref for e in family.get_event_ref_list()])
^^^^^^^^^^^
AttributeError: ‘IsFamilyFilterMatchEvent’ object has no attribute ‘events’
1048665: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 1131, in on_filter_changed
frame2 = self.add_frame_and_filter(
None, self.current_category, filtername, filtername, 0
)
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 1063, in add_frame_and_filter
self.addfilter(grid2, category, filter, level + 1)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 992, in addfilter
entry = self.get_widgets([caption1], filter.get_name())
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterParams/FilterParams.py”, line 851, in get_widgets
t = v1
File “/home/paps/.var/app/org.gramps_project.Gramps/data/gramps/gramps60/plugins/FilterRules/isfamilyfiltermatchevent.py”, line 70, in init
MyFilters.init(self, caller_locals[“filterdb”].get_filters(“Family”))
~~~~~~~~~~~~~^^^^^^^^^^^^
KeyError: “local variable ‘‘filterdb’’ is not defined”
System Information:
Gramps version: 6.0.8
Python version: 3.13.13
BSDDB version: not found
sqlite version: 3.50.4
orjson version: 3.11.4
LANG: fr_FR.UTF-8
OS: Linux
Distribution: 6.17.0-35-generic
GTK version : 3.24.52
gobject version: 3.54.5
cairo version : (1, 29, 0)
However, the Family filter works very well:
And FiterParams doesn’t crash if I try to show the family filter:
Family filter (XML)
<filters>
<object type="Family">
<filter name="Mes sosas mariés" function="and">
<rule class="HasEvent" use_regex="False" use_case="False">
<arg value="Marriage"/>
<arg value=""/>
<arg value=""/>
<arg value=""/>
<arg value=""/>
</rule>
<rule class="MatchesFilter" use_regex="False" use_case="False">
<arg value="88. Père.Id['^Bk\d\d\d\d\d__$'] & Mère.Id['^Bk\d\d\d\d\d__$'] - 064p"/>
</rule>
</filter>
</object>
<object type="Family">
<filter name="88. Père.Id['^Bk\d\d\d\d\d__$'] & Mère.Id['^Bk\d\d\d\d\d__$'] - 064p" function="and" comment="064p (F88.064p) - Filtre(&) == [F90.062p, F90.063p] - Couple de sosas">
<rule class="MatchesFilter" use_regex="False" use_case="False">
<arg value="90. Mère.Id['^Bk\d\d\d\d\d__$'] - 062p"/>
</rule>
<rule class="MatchesFilter" use_regex="False" use_case="False">
<arg value="90. Père.Id['^Bk\d\d\d\d\d__$'] - 063p"/>
</rule>
</filter>
</object>
<object type="Family">
<filter name="90. Mère.Id['^Bk\d\d\d\d\d__$'] - 062p" function="and" comment="062p (F90.062p)">
<rule class="MotherHasIdOf" use_regex="True" use_case="False">
<arg value="^Bk\d\d\d\d\d__$"/>
</rule>
</filter>
</object>
<object type="Family">
<filter name="90. Père.Id['^Bk\d\d\d\d\d__$'] - 063p" function="and" comment="063p (F90.063p)">
<rule class="FatherHasIdOf" use_regex="True" use_case="False">
<arg value="^Bk\d\d\d\d\d__$"/>
</rule>
</filter>
</object>
</filters>
Any idea what’s going on? It looks like a “local variable ‘‘filterdb’’ is not defined” in both issue. I haven’t created a bug report on Mantis yet.


