GSoC 2026 Week 5 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 fifth weekly report of Official coding period for GSoC 2026

Week 5 Report (22 June ~ 28 June)

What did I get done this week?

Created Week 5 branches and pull requests following the weekly PR workflow (week5-planarFaces - PR #578, week5-coreNumbers - PR #579), both targeting their respective Week 4 bases.

pgr_planarFaces - PR #578:

  • Week 4 had already delivered the main documentation and examples; Week 5 focused on documentation polish and clarity
  • Refined the Explanation section in pgr_planarFaces.rst: clarified that face extraction succeeds without error on planar input, noted the unbounded exterior face, and described counterclockwise traversal for side = 'l' / 'r'
  • Corrected the row-count wording in the Description section (2|E| rows when the graph has |E| edges)
  • No new algorithm or test changes this week; existing docqueries and pgtap tests from Week 3-4 remain passing

pgr_coreNumbers - PR #579
:

  • Expanded pgr_coreNumbers.rst documentation: added k-core definition, algorithm context, Batagelj-Zaversnik reference, and Boost Graph Inside marker
  • Fixed Availability section formatting to match pgRouting RST conventions
  • Added inner_query.pg pgtap test using the standard style_dijkstra pattern (54 inner-query style checks)
  • Added edge_cases.pg pgtap test covering subgraphs (id < 2, id < 4, id < 5, id < 10) and empty-graph input; all tests passing
  • Updated See Also links (pgr_betweennessCentrality, metrics-family)

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 #578 planarFaces (Week 5)
- PR #579 coreNumbers (Week 5)