Skip to content

Integrate with Gramps' APIs instead of parsing Gramps XML#2444

Draft
bartfeenstra wants to merge 4 commits into0.5.xfrom
gramps-api
Draft

Integrate with Gramps' APIs instead of parsing Gramps XML#2444
bartfeenstra wants to merge 4 commits into0.5.xfrom
gramps-api

Conversation

@bartfeenstra
Copy link
Copy Markdown
Owner

@bartfeenstra bartfeenstra commented Mar 14, 2025

This fixes #1147 and this fixes #696 and this fixes #417

Blocked by

To do

To do before merge

  • Set the Gramps dependency to a stable version
  • Ensure GrampsApiLoader.load_xml() is marked internal
  • remove the lxml, pycairo, and pygobject dependencies
  • remove the newly added temporary base classes and the old loader
  • Undo the changes to test.yml
  • make the new loader public (not internal)

@bartfeenstra bartfeenstra added enhancement New feature or request python Pull requests that update Python code labels Mar 14, 2025
@bartfeenstra bartfeenstra force-pushed the gramps-api branch 10 times, most recently from f7cbc5e to b2fb1bd Compare March 19, 2025 21:56
Comment thread betty/gramps/loader.py Outdated
Comment thread betty/gramps/loader.py Outdated
Comment thread betty/gramps/loader.py Outdated
pass

@abstractmethod
async def load_xml(self, xml: str) -> None:
Copy link
Copy Markdown
Owner Author

@bartfeenstra bartfeenstra Mar 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove this before merging

Comment thread betty/gramps/loader.py Outdated
@bartfeenstra bartfeenstra force-pushed the gramps-api branch 6 times, most recently from 143d927 to b1a77db Compare March 20, 2025 01:31
Comment thread betty/gramps/loader.py Outdated
Comment thread betty/gramps/loader.py Outdated
Comment thread betty/gramps/loader.py Outdated
Comment thread betty/gramps/loader.py Outdated
@bartfeenstra bartfeenstra force-pushed the gramps-api branch 3 times, most recently from 88a2ede to 591b8f0 Compare March 20, 2025 15:24
Comment thread betty/ancestry/event.py Outdated
@bartfeenstra bartfeenstra force-pushed the gramps-api branch 6 times, most recently from bda0a87 to fc80e16 Compare March 22, 2025 09:17
@bartfeenstra bartfeenstra self-assigned this Mar 23, 2025
@bartfeenstra bartfeenstra force-pushed the gramps-api branch 5 times, most recently from 1ce081e to 07e977e Compare March 24, 2025 13:40
@bartfeenstra bartfeenstra force-pushed the gramps-api branch 2 times, most recently from 9dfdc28 to 2fc5e92 Compare April 7, 2025 22:17
@bartfeenstra bartfeenstra force-pushed the gramps-api branch 3 times, most recently from a81f2b9 to 40272f9 Compare April 14, 2025 14:59
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 14, 2025

Codecov Report

Attention: Patch coverage is 98.02632% with 12 lines in your changes missing coverage. Please review.

Project coverage is 21.12%. Comparing base (6684977) to head (6928aa8).

Files with missing lines Patch % Lines
betty/gramps/loader/_loader.py 97.36% 9 Missing and 2 partials ⚠️
betty/gramps/loader/__init__.py 98.76% 0 Missing and 1 partial ⚠️

❗ There is a different number of reports uploaded between BASE (6684977) and HEAD (6928aa8). Click for more details.

HEAD has 14 uploads less than BASE
Flag BASE (6684977) HEAD (6928aa8)
19 5
Additional details and impacted files
@@             Coverage Diff             @@
##            0.4.x    #2444       +/-   ##
===========================================
- Coverage   98.44%   21.12%   -77.32%     
===========================================
  Files         440      384       -56     
  Lines       26264    24414     -1850     
  Branches     1161     1130       -31     
===========================================
- Hits        25855     5158    -20697     
- Misses        257    19181    +18924     
+ Partials      152       75       -77     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Use Gramps APIs instead of parsing XML directly Validate Gramps XML Add a GEDCOM parser

1 participant