GSoC 2026 Week 7 Report: Implementation of Planar Face Extraction and K-Core Decomposition Algorithms to pgRouting

Md Sakir Ahmed
Github id: sakirr05
Mentors: @cvvergara, @robe
Organization: OSGeo / pgRouting
OSGeo Profile: OSGeo Profile Link
Project Wiki: Github Wiki Link
Repository: Repo Link

Hello everyone,

This is my seventh weekly report of Official coding period for GSoC 2026

Week 7 Report (6 July ~ 12 July)

What did I get done this week?

This week focused on CI fixes, release infrastructure, and expanding pgTap coverage for both functions bringing them closer to the official promotion bar.

pgr_planarFaces - PR #595:

  • Created new planar-family.rst family page with .. official-start / .. experimental-start sections listing pgr_isPlanar and pgr_planarFaces; wired it into experimental.rst via include directives replacing direct doc links
  • Extended pgtap/planar/planarFaces/edge_cases.pg from 6 to 8 plans with 2 new edge case tests; updated NEWS.md, page_history.js, and release_notes.rst with include directives for automated release note generation

pgr_coreNumbers - PR #596:

  • Fixed Availability block formatting in pgr_coreNumbers.rst (same .. rubric:: pattern fix); updated NEWS.md, page_history.js, and release_notes.rst with include directive
  • Extended pgtap/metrics/coreNumbers/edge_cases.pg from 9 to 13 plans — added 4 new tests covering id < 3 (3-node chain) and id < 8 (8-edge subgraph) to improve subgraph boundary coverage
  • Extended no_crash_test.pg from 5 to 8 plans added null_ret / null_ret_arr prepared statements and throw_on_empty_edges_sql test for empty-SQL error path
  • Added COST ${COST_HIGH} ROWS ${ROWS_HIGH} planner hints to _pgr_coreNumbers SQL wrapper; fixed sort comparator in coreNumbers.cpp to pass II_t_rt by const& instead of by value

Am I blocked on anything?

No

References:

1] Link to wiki page:
wiki page

2] Link to github repository:
github repository

3] Link to pull requests:
- PR #595 planarFaces (Week 7)
- PR #596 coreNumbers (Week 7)