GSoC 2026 Week 2 Report: Implementation of Make Biconnected Planar and Make Maximal Planar Algorithm to pgRouting

Mohit Rawat
Github id: Mohit242-bit

Mentors: @cvvergara, @robe
Organization: OSGeo / pgRouting
OSGeo Profile: OSGeo Profile Link
Project Wiki: Github Wiki Link
Repository: Repo Link

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

Week 2 Report (1 June - 7 June)

What did I get done this week?

This week focused on implementing the core logic for pgr_makeBiconnectedPlanar and pgr_makeMaximalPlanar.

  • Implemented the core algorithm logic using Boost’s make_biconnected_planar and make_maximal_planar algorithms.

  • Built the EdgeIndexMap and planar embedding infrastructure needed by the Boost calls.

  • Implemented planar_visitor to properly map Boost vertex descriptors back to pgRouting IDs and collect the newly added edges.

  • Added comprehensive error handling for graph prerequisites (throwing std::string error messages).

What do I plan on doing next week? (June 8th - June 14th)

  • Discuss and work on Makebiconnected algorithm implementation (disconnected components input case)

  • Edge Cases & Output Mapping - handle already-biconnected (empty return), not-connected error, not-planar error.

  • Write comprehensive pgTap tests: path graphs P3/P4/P5, cycle graphs, tree graphs, disconnected input.

Am I blocked on anything?

No

References:

1] Link to detailed wiki page

2] Link to github repository

3] Link to pull requests : [1] and [2]