[SCM] PostGIS branch master updated. 3.7.0alpha1-637-gda4013969
git at osgeo.org
git at osgeo.org
Sun Jul 19 06:32:49 PDT 2026
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "PostGIS".
The branch, master has been updated
via da401396910c2e24e403eb2c97a2cfac2c6bfbd0 (commit)
via 5961ff4bf78c4d7dc8e453e236941e03942d851f (commit)
via 712e8f58f4a51fa392673733b69869ac74d4df44 (commit)
from c93627be0371a55ef910c96b8417c1b88ce66d3c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit da401396910c2e24e403eb2c97a2cfac2c6bfbd0
Merge: c93627be0 5961ff4bf
Author: Darafei Praliaskouski <komzpa at gmail.com>
Date: Sun Jul 19 06:32:48 2026 -0700
Merge pull request 'doc: fix development guide site navigation' (!399) from Komzpa/postgis:docs/developer-site-navigation into master
Reviewed-on: https://gitea.osgeo.org/postgis/postgis/pulls/399
commit 5961ff4bf78c4d7dc8e453e236941e03942d851f
Author: Darafei Praliaskouski <me at komzpa.net>
Date: Sun Jul 19 16:06:28 2026 +0400
doc: hide development guide from global menu
diff --git a/doc/development/README.md b/doc/development/README.md
index 35aa5dd3f..a28e66fa0 100644
--- a/doc/development/README.md
+++ b/doc/development/README.md
@@ -2,8 +2,7 @@
title: "PostGIS Development Guide"
date: 2026-06-26
weight: 10
-geekdocHidden: false
-geekdocCollapseSection: true
+geekdocHidden: true
---
This directory is the repository home for PostGIS developer documentation.
diff --git a/doc/development/SKILL.md b/doc/development/SKILL.md
index 35aa5dd3f..a28e66fa0 100644
--- a/doc/development/SKILL.md
+++ b/doc/development/SKILL.md
@@ -2,8 +2,7 @@
title: "PostGIS Development Guide"
date: 2026-06-26
weight: 10
-geekdocHidden: false
-geekdocCollapseSection: true
+geekdocHidden: true
---
This directory is the repository home for PostGIS developer documentation.
diff --git a/doc/development/website.md b/doc/development/website.md
index 5285629ef..1a214d55f 100644
--- a/doc/development/website.md
+++ b/doc/development/website.md
@@ -41,13 +41,16 @@ may be copied into `postgis.net` content should include at least `title`,
`date`, `weight`, and `geekdocHidden`. Do not repeat the front-matter title as a
Markdown H1: the Geekdoc page layout renders that title already.
-The publisher maps this directory's `README.md` to the root `_index.md`.
-Nested section landing pages should live at `<section>/_index.md` and set
-`geekdocCollapseSection: true` to keep the file-tree menu compact. Do not use
-`layout: toplevel` for these pages; that layout appends another child-page list
-after the maintained section content. Draft-only migration aids should set
-`draft: true`, `geekdocHidden: true`, and `geekdocHiddenTocTree: false` so
-normal Hugo builds do not publish them accidentally.
+The publisher maps this directory's `README.md` to the root `_index.md`. The
+root sets `geekdocHidden: true` because the website links the guide from its
+`content/documentation/developer_docs.md` hub; hiding the imported root keeps
+the complete subtree out of the global file-tree menu. Nested section landing
+pages should live at `<section>/_index.md` and set
+`geekdocCollapseSection: true`. Do not use `layout: toplevel` for these pages;
+that layout appends another child-page list after the maintained section
+content. Draft-only migration aids should set `draft: true`,
+`geekdocHidden: true`, and `geekdocHiddenTocTree: false` so normal Hugo builds
+do not publish them accidentally.
## Content Areas
@@ -58,7 +61,7 @@ Website source content that overlaps with repository-maintained developer docs:
| `content/development/source_code.md` | [Contributing workflow](contributing.md) and [Pull request and maintainer workflow](maintenance/_index.md) |
| `content/development/getting_involved.md` | [Contributing workflow](contributing.md) |
| `content/development/bug_reporting.md` | [Contributing workflow](contributing.md) |
-| `content/development/developer_docs.md` | [Documentation workflow](manual.md) and this `doc/development/` index |
+| `content/documentation/developer_docs.md` | [Documentation workflow](manual.md) and this `doc/development/` index |
| `content/development/versions_eol.md` | [Release process](release-process.md) and [Release and upgrade rules](release/_index.md) |
| `content/development/rfcs/*.md` | [Governance notes](governance/_index.md) and historical RFC pages |
| New governance pages outside `rfcs/` | [Governance notes](governance/_index.md) and [PostGIS project inventory](governance/project-inventory.md) |
commit 712e8f58f4a51fa392673733b69869ac74d4df44
Author: Darafei Praliaskouski <me at komzpa.net>
Date: Sun Jul 19 02:50:54 2026 +0400
doc: fix development guide site navigation
diff --git a/AGENTS.md b/AGENTS.md
index 16312bcf0..232476da5 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -5,24 +5,24 @@ For build, test, and contributor workflow instructions, use
* [`doc/development/environment/ubuntu.md`](doc/development/environment/ubuntu.md) covers local
dependencies, PostgreSQL setup, build commands, install steps, and cleanup.
-* [`doc/development/testing.md`](doc/development/testing.md) covers regression
+* [`doc/development/testing/_index.md`](doc/development/testing/_index.md) covers regression
commands, CUnit tests, coverage, dependency guards, and backtraces.
* [`doc/development/contributing.md`](doc/development/contributing.md) covers Trac,
code mirrors, mailing lists, and patch submission.
* [`doc/development/style.md`](doc/development/style.md) covers source formatting,
comments, Doxygen comments, and naming conventions.
-* [`doc/development/internals.md`](doc/development/internals.md) covers allocator
+* [`doc/development/internals/_index.md`](doc/development/internals/_index.md) covers allocator
boundaries, PostgreSQL C API macros, detoasting, and geometry serialization
structures.
* [`doc/development/website.md`](doc/development/website.md) covers the `postgis.net`
Hugo repository, website release pointers, and website validation.
-* [`doc/development/maintenance.md`](doc/development/maintenance.md) covers pull
+* [`doc/development/maintenance/_index.md`](doc/development/maintenance/_index.md) covers pull
request landing, tracker trailers, `NEWS`, branch readback, and external
service hygiene.
-* [`doc/development/governance.md`](doc/development/governance.md) covers the
+* [`doc/development/governance/_index.md`](doc/development/governance/_index.md) covers the
current RFC-5 status, umbrella project list, and governance-documentation
consolidation notes.
-* [`doc/development/release.md`](doc/development/release.md) covers SQL/C API
+* [`doc/development/release/_index.md`](doc/development/release/_index.md) covers SQL/C API
compatibility, upgrade scripting, dependency guards, and support-window
changes.
* [`doc/development/release-process.md`](doc/development/release-process.md) covers
diff --git a/doc/developer.md b/doc/developer.md
index 9fa882e90..58b6c901b 100644
--- a/doc/developer.md
+++ b/doc/developer.md
@@ -1,6 +1,6 @@
-# PostGIS Developer Documentation
+# PostGIS Development Guide
Developer documentation has moved to [doc/development/](development/).
Start with [doc/development/README.md](development/README.md). The former
-developer how-to content is now [doc/development/release.md](development/release.md).
+developer how-to content is now [doc/development/release/_index.md](development/release/_index.md).
diff --git a/doc/development/README.md b/doc/development/README.md
index f6a1ec2ac..35aa5dd3f 100644
--- a/doc/development/README.md
+++ b/doc/development/README.md
@@ -1,13 +1,11 @@
---
-title: "PostGIS Developer Documentation"
+title: "PostGIS Development Guide"
date: 2026-06-26
weight: 10
-layout: toplevel
geekdocHidden: false
+geekdocCollapseSection: true
---
-# PostGIS Developer Documentation
-
This directory is the repository home for PostGIS developer documentation.
Trac remains the project issue tracker, but development workflow notes should
live here so they are reviewed with code and branch changes.
@@ -21,26 +19,22 @@ Modules:
* [Contributing workflow](contributing.md) explains Trac tickets, code mirrors,
mailing lists, and patch submission.
-* [Development environments](environment.md) links the Ubuntu, Windows, and Docker
- setup paths.
-* [Ubuntu setup](environment/ubuntu.md) gives a practical package-based setup,
- build commands, installation into a test cluster, and cleanup.
-* [Windows setup](environment/windows.md) records the current MSYS2 and Winnie
- MinGW build surfaces.
-* [Testing and debugging](testing.md) explains SQL regression tests, CUnit,
- dependency guards, and backtraces.
+* [Development environments](environment/_index.md) links the supported local,
+ CI, and container setup paths.
* [Development TODO](todo.md) records high-level future work ideas that are not
accepted designs or release blockers.
+* [Testing and debugging](testing/_index.md) explains SQL regression tests, CUnit,
+ dependency guards, and backtraces.
* [Coding style](style.md) covers C formatting, comments, Doxygen comments, and
source naming conventions.
* [Developer tools](tools.md) covers `logbt`, formatting, coverage, and profiling
entry points.
-* [PostGIS internals](internals.md) covers allocator boundaries, PostgreSQL
+* [PostGIS internals](internals/_index.md) covers allocator boundaries, PostgreSQL
function macros, detoasting, geometry serialization structures, empty
geometry semantics, spatial collections, raster affine georeferencing,
raster physical georeferencing parameters, raster storage/WKB, and
raster/GDAL driver boundaries.
-* [Release and upgrade rules](release.md) indexes SQL/C API compatibility,
+* [Release and upgrade rules](release/_index.md) indexes SQL/C API compatibility,
upgrade scripting, dependency guards, regression roles, and support-window
changes.
* [Release process](release-process.md) covers version numbering, release
@@ -50,17 +44,11 @@ Modules:
translated manuals, images, and Doxygen output.
* [Website maintenance](website.md) covers the `postgis.net` Hugo repository,
public development pages, release pointer updates, and website validation.
-* [Pull request and maintainer workflow](maintenance.md) covers source-of-truth
+* [Pull request and maintainer workflow](maintenance/_index.md) covers source-of-truth
branches, mirror PR handling, tracker trailers, `NEWS`, and public readback.
-* [Pull request metadata](maintenance/pull-request-metadata.md) covers labels,
- milestones, draft state, and mirror metadata for PostGIS pull requests.
-* [Backpatching fixes](maintenance/backpatching.md) covers supported-branch
- fix propagation, commit provenance, `NEWS`, Trac follow-up, and CI readback.
-* [Governance notes](governance.md) records PSC process, core-contributor
+* [Governance notes](governance/_index.md) records PSC process, core-contributor
governance, project/service inventory, and governance-documentation
consolidation notes.
-* [Docker setup](environment/docker.md) summarizes the development container
- options historically documented on the Trac developer wiki.
The generated Doxygen manuals are published at
<https://postgis.net/docs/doxygen/>. User-facing manuals remain at
diff --git a/doc/development/SKILL.md b/doc/development/SKILL.md
index f6a1ec2ac..35aa5dd3f 100644
--- a/doc/development/SKILL.md
+++ b/doc/development/SKILL.md
@@ -1,13 +1,11 @@
---
-title: "PostGIS Developer Documentation"
+title: "PostGIS Development Guide"
date: 2026-06-26
weight: 10
-layout: toplevel
geekdocHidden: false
+geekdocCollapseSection: true
---
-# PostGIS Developer Documentation
-
This directory is the repository home for PostGIS developer documentation.
Trac remains the project issue tracker, but development workflow notes should
live here so they are reviewed with code and branch changes.
@@ -21,26 +19,22 @@ Modules:
* [Contributing workflow](contributing.md) explains Trac tickets, code mirrors,
mailing lists, and patch submission.
-* [Development environments](environment.md) links the Ubuntu, Windows, and Docker
- setup paths.
-* [Ubuntu setup](environment/ubuntu.md) gives a practical package-based setup,
- build commands, installation into a test cluster, and cleanup.
-* [Windows setup](environment/windows.md) records the current MSYS2 and Winnie
- MinGW build surfaces.
-* [Testing and debugging](testing.md) explains SQL regression tests, CUnit,
- dependency guards, and backtraces.
+* [Development environments](environment/_index.md) links the supported local,
+ CI, and container setup paths.
* [Development TODO](todo.md) records high-level future work ideas that are not
accepted designs or release blockers.
+* [Testing and debugging](testing/_index.md) explains SQL regression tests, CUnit,
+ dependency guards, and backtraces.
* [Coding style](style.md) covers C formatting, comments, Doxygen comments, and
source naming conventions.
* [Developer tools](tools.md) covers `logbt`, formatting, coverage, and profiling
entry points.
-* [PostGIS internals](internals.md) covers allocator boundaries, PostgreSQL
+* [PostGIS internals](internals/_index.md) covers allocator boundaries, PostgreSQL
function macros, detoasting, geometry serialization structures, empty
geometry semantics, spatial collections, raster affine georeferencing,
raster physical georeferencing parameters, raster storage/WKB, and
raster/GDAL driver boundaries.
-* [Release and upgrade rules](release.md) indexes SQL/C API compatibility,
+* [Release and upgrade rules](release/_index.md) indexes SQL/C API compatibility,
upgrade scripting, dependency guards, regression roles, and support-window
changes.
* [Release process](release-process.md) covers version numbering, release
@@ -50,17 +44,11 @@ Modules:
translated manuals, images, and Doxygen output.
* [Website maintenance](website.md) covers the `postgis.net` Hugo repository,
public development pages, release pointer updates, and website validation.
-* [Pull request and maintainer workflow](maintenance.md) covers source-of-truth
+* [Pull request and maintainer workflow](maintenance/_index.md) covers source-of-truth
branches, mirror PR handling, tracker trailers, `NEWS`, and public readback.
-* [Pull request metadata](maintenance/pull-request-metadata.md) covers labels,
- milestones, draft state, and mirror metadata for PostGIS pull requests.
-* [Backpatching fixes](maintenance/backpatching.md) covers supported-branch
- fix propagation, commit provenance, `NEWS`, Trac follow-up, and CI readback.
-* [Governance notes](governance.md) records PSC process, core-contributor
+* [Governance notes](governance/_index.md) records PSC process, core-contributor
governance, project/service inventory, and governance-documentation
consolidation notes.
-* [Docker setup](environment/docker.md) summarizes the development container
- options historically documented on the Trac developer wiki.
The generated Doxygen manuals are published at
<https://postgis.net/docs/doxygen/>. User-facing manuals remain at
diff --git a/doc/development/contributing.md b/doc/development/contributing.md
index 0ae130882..9576e24ed 100644
--- a/doc/development/contributing.md
+++ b/doc/development/contributing.md
@@ -5,8 +5,6 @@ weight: 20
geekdocHidden: false
---
-# Contributing Workflow
-
PostGIS development planning happens in the
[PostGIS Trac instance](https://trac.osgeo.org/postgis/). For non-trivial
changes, file or find a Trac ticket and link your patch, pull request, or public
@@ -50,7 +48,7 @@ convenience. Pull requests on a mirror are welcome, but they are easier to miss
unless they also have a matching Trac ticket.
Maintainers landing mirror pull requests should follow the
-[Pull request and maintainer workflow](maintenance.md), including canonical
+[Pull request and maintainer workflow](maintenance/_index.md), including canonical
branch readback, tracker trailers, and `NEWS` conventions.
Subscribe to the
@@ -99,13 +97,13 @@ Patch submission basics:
* Keep each patch focused on one ticket or reviewable topic.
* Add regression or CUnit coverage for behavior changes.
* Run the focused local validation described in [Ubuntu setup](environment/ubuntu.md)
- and [Testing and debugging](testing.md).
+ and [Testing and debugging](testing/_index.md).
* Follow [Coding style](style.md) for C naming, formatting, and Doxygen
comments before writing or submitting source patches.
* Add documentation in the same change when a feature adds or changes SQL
user-visible behavior.
* For SQL API, upgrade, and release-policy changes, read
- [Release and upgrade rules](release.md) before opening a pull request.
+ [Release and upgrade rules](release/_index.md) before opening a pull request.
* Git patches sent by email are also accepted; see
<https://git-send-email.io/> for a practical walkthrough.
diff --git a/doc/development/environment.md b/doc/development/environment.md
deleted file mode 100644
index 84ac1ea1c..000000000
--- a/doc/development/environment.md
+++ /dev/null
@@ -1,22 +0,0 @@
----
-title: "Development Environments"
-date: 2026-06-26
-weight: 30
-geekdocHidden: false
----
-
-# Development Environments
-
-These pages describe repeatable environments for building and testing PostGIS.
-
-* [Ubuntu setup](environment/ubuntu.md) covers a local Ubuntu package-based environment.
-* [macOS setup](environment/macos.md) covers the Homebrew-based GitHub Actions environment.
-* [FreeBSD setup](environment/freebsd.md) covers the FreeBSD VM GitHub Actions environment.
-* [Windows setup](environment/windows.md) covers the current MSYS2 and Winnie MinGW build
- surfaces.
-* [Docker setup](environment/docker.md) covers the OSGeo and `postgis-build-env` container
- workflows.
-
-Keep environment-specific setup here. Put test strategy in [Testing and
-debugging](testing.md), source-formatting rules in [Coding style](style.md),
-and release policy in [Release and upgrade rules](release.md).
diff --git a/doc/development/environment/_index.md b/doc/development/environment/_index.md
new file mode 100644
index 000000000..16e1f508e
--- /dev/null
+++ b/doc/development/environment/_index.md
@@ -0,0 +1,21 @@
+---
+title: "Development Environments"
+date: 2026-06-26
+weight: 30
+geekdocHidden: false
+geekdocCollapseSection: true
+---
+
+These pages describe repeatable environments for building and testing PostGIS.
+
+* [Ubuntu setup](ubuntu.md) covers a local Ubuntu package-based environment.
+* [macOS setup](macos.md) covers the Homebrew-based GitHub Actions environment.
+* [FreeBSD setup](freebsd.md) covers the FreeBSD VM GitHub Actions environment.
+* [Windows setup](windows.md) covers the current MSYS2 and Winnie MinGW build
+ surfaces.
+* [Docker setup](docker.md) covers the OSGeo and `postgis-build-env` container
+ workflows.
+
+Keep environment-specific setup here. Put test strategy in [Testing and
+debugging](../testing/_index.md), source-formatting rules in [Coding style](../style.md),
+and release policy in [Release and upgrade rules](../release/_index.md).
diff --git a/doc/development/environment/docker.md b/doc/development/environment/docker.md
index 480ed33b4..ebbc046ba 100644
--- a/doc/development/environment/docker.md
+++ b/doc/development/environment/docker.md
@@ -5,8 +5,6 @@ weight: 30
geekdocHidden: false
---
-# Docker Development Environment
-
PostGIS has two container families that are useful for development and testing.
Production images are documented separately at
<https://github.com/postgis/docker-postgis> and should not be treated as build
diff --git a/doc/development/environment/freebsd.md b/doc/development/environment/freebsd.md
index cb20e65e4..58ec98895 100644
--- a/doc/development/environment/freebsd.md
+++ b/doc/development/environment/freebsd.md
@@ -5,8 +5,6 @@ weight: 30
geekdocHidden: false
---
-# FreeBSD Development Environment
-
The current FreeBSD pull-request build is defined in
`.github/workflows/ci-freebsd.yml`. Use that workflow as the source of truth
when checking platform-specific dependencies or flags.
diff --git a/doc/development/environment/macos.md b/doc/development/environment/macos.md
index 261b53e9b..ac5319fea 100644
--- a/doc/development/environment/macos.md
+++ b/doc/development/environment/macos.md
@@ -5,8 +5,6 @@ weight: 20
geekdocHidden: false
---
-# macOS Development Environment
-
The current macOS pull-request build is defined in
`.github/workflows/ci-macos.yml`. Use that workflow as the source of truth when
checking platform-specific dependencies or flags.
diff --git a/doc/development/environment/ubuntu.md b/doc/development/environment/ubuntu.md
index e1d1c27de..7ff95ccd6 100644
--- a/doc/development/environment/ubuntu.md
+++ b/doc/development/environment/ubuntu.md
@@ -5,8 +5,6 @@ weight: 10
geekdocHidden: false
---
-# Ubuntu Development Environment
-
This document aims to get an Ubuntu development environment ready quickly so you
can build and test the PostGIS codebase. The package list below targets Ubuntu
24.04.
@@ -137,7 +135,7 @@ PostgreSQL instance:
sudo make install
```
-See [Testing and debugging](../testing.md) for regression commands, CUnit
+See [Testing and debugging](../testing/_index.md) for regression commands, CUnit
tests, coverage, dependency guards, and backtrace capture. Optional tooling such
as `logbt` setup lives in [Developer tools](../tools.md).
@@ -157,4 +155,4 @@ If you created a private cluster instead of using the packaged one, stop it with
Review [Coding style](../style.md) for source-formatting preferences, including
`git clang-format` usage for C and C++ changes. For release policies, upgrade
implications, and naming conventions for new features, read
-[Release and upgrade rules](../release.md).
+[Release and upgrade rules](../release/_index.md).
diff --git a/doc/development/environment/windows.md b/doc/development/environment/windows.md
index cbde8a78f..98471c91f 100644
--- a/doc/development/environment/windows.md
+++ b/doc/development/environment/windows.md
@@ -5,8 +5,6 @@ weight: 20
geekdocHidden: false
---
-# Windows Development Environments
-
PostGIS has two maintained Windows build surfaces:
* The MSYS2 GitHub Actions job in `.github/workflows/msys.yml`.
diff --git a/doc/development/governance.md b/doc/development/governance/_index.md
similarity index 96%
rename from doc/development/governance.md
rename to doc/development/governance/_index.md
index 33cc58e26..a99283482 100644
--- a/doc/development/governance.md
+++ b/doc/development/governance/_index.md
@@ -3,10 +3,9 @@ title: "Governance Notes"
date: 2026-06-26
weight: 120
geekdocHidden: false
+geekdocCollapseSection: true
---
-# Governance Notes
-
This page is the maintained source for current PostGIS governance text in this
repository. Published governance pages on <https://postgis.net/development/>
remain the public reference until the PSC publishes this maintained structure
@@ -77,12 +76,12 @@ historical RFC text.
## Project and Service Inventory
Current umbrella projects, related repositories, and project-operated services
-are tracked in [PostGIS project inventory](governance/project-inventory.md). Keep source
+are tracked in [PostGIS project inventory](project-inventory.md). Keep source
routing and service ownership there, rather than mixing it into the PSC process
or historical RFC notes.
For source-of-truth rules when landing pull requests or routing component work,
-see [Pull request and maintainer workflow](maintenance.md).
+see [Pull request and maintainer workflow](../maintenance/_index.md).
## Related Projects To Check Before Major Releases
diff --git a/doc/development/governance/project-inventory.md b/doc/development/governance/project-inventory.md
index 860354c04..ceec9548f 100644
--- a/doc/development/governance/project-inventory.md
+++ b/doc/development/governance/project-inventory.md
@@ -5,8 +5,6 @@ weight: 10
geekdocHidden: false
---
-# PostGIS Project Inventory
-
This page records the project codebases and services that need governance or
maintainer routing. It is intentionally separate from the PSC process so the
governance notes can describe how decisions are made while this page describes
@@ -29,7 +27,7 @@ explicit in-tree backpatches.
| `postgis_tiger_geocoder` | <https://git.osgeo.org/gitea/postgis/postgis_tiger_geocoder> |
For pull-request routing, source-of-truth branches, and mirror handling, see
-[Pull request and maintainer workflow](../maintenance.md).
+[Pull request and maintainer workflow](../maintenance/_index.md).
## Project Services
@@ -39,7 +37,7 @@ For pull-request routing, source-of-truth branches, and mirror handling, see
| `postgis.net/stuff` | Release tarballs, checksums, and generated documentation artefacts | [Release process](../release-process.md) |
| Debbie build host and build jobs | Release builds, distribution checks, and build-bot jobs referenced during release work | [Release process](../release-process.md) |
| OSGeo Trac | Tickets, legacy wiki, roadmap, reports, and historical project records | [Contributing workflow](../contributing.md) |
-| Weblate | Translation repository maintenance for the PostGIS manual | [Pull request and maintainer workflow](../maintenance.md) and [Manual documentation workflow](../manual.md) |
+| Weblate | Translation repository maintenance for the PostGIS manual | [Pull request and maintainer workflow](../maintenance/_index.md) and [Manual documentation workflow](../manual.md) |
| Mailing lists and chat | Public development discussion, user support, and community coordination | [Contributing workflow](../contributing.md) |
Keep credentials, server-specific secrets, and deployment tokens out of this
diff --git a/doc/development/internals.md b/doc/development/internals/_index.md
similarity index 59%
rename from doc/development/internals.md
rename to doc/development/internals/_index.md
index 2f2270615..afc1e2555 100644
--- a/doc/development/internals.md
+++ b/doc/development/internals/_index.md
@@ -3,51 +3,50 @@ title: "PostGIS Internals"
date: 2026-06-26
weight: 70
geekdocHidden: false
+geekdocCollapseSection: true
---
-# PostGIS Internals
-
These notes cover implementation details that are useful when working inside
PostGIS rather than only using the SQL API.
## Core SQL And Memory
-* [Memory management](internals/memory.md) covers allocator boundaries and ownership rules.
-* [PostgreSQL internals for PostGIS developers](internals/postgresql.md) covers PostgreSQL
+* [Memory management](memory.md) covers allocator boundaries and ownership rules.
+* [PostgreSQL internals for PostGIS developers](postgresql.md) covers PostgreSQL
C function macros, varlena detoasting, serialized geometry handling, and a
typical SQL function flow.
## Geometry And Measurement
-* [Empty geometry semantics](internals/empty-geometry.md) covers how `EMPTY` differs
+* [Empty geometry semantics](empty-geometry.md) covers how `EMPTY` differs
from SQL `NULL`, how empties are serialized and indexed, and how accessors,
measurements, predicates, and collections handle empty inputs.
-* [Spatial collections and raster/vector crossings](internals/spatial-collections.md)
+* [Spatial collections and raster/vector crossings](spatial-collections.md)
covers current geometry collection handling and explains how the retired
raster/vector spatial-collection abstraction relates to current code.
-* [2D and 3D distance internals](internals/distance.md) covers how geometry distance
+* [2D and 3D distance internals](distance.md) covers how geometry distance
functions dispatch 2D and 3D candidate checks, including segment-segment and
surface cases.
-* [Precision and tolerance internals](internals/precision-tolerance.md) maps the current
+* [Precision and tolerance internals](precision-tolerance.md) maps the current
GEOS grid-size, snap-tolerance, topology-precision, and MVT quantization
surfaces.
## Raster Internals
-* [Raster affine georeferencing](internals/raster-affine.md) covers the scale, skew,
+* [Raster affine georeferencing](raster-affine.md) covers the scale, skew,
rotation, and upper-left coefficients used to convert raster cell
coordinates into spatial coordinates.
-* [Raster physical georeferencing parameters](internals/raster-physical-parameters.md)
+* [Raster physical georeferencing parameters](raster-physical-parameters.md)
covers the reverse calculation from stored affine coefficients back to pixel
sizes, rotation, and basis-vector separation.
-* [Raster storage and WKB](internals/raster-storage.md) covers the current
+* [Raster storage and WKB](raster-storage.md) covers the current
PostgreSQL varlena representation, Raster WKB/HexWKB paths, out-db band
storage, and raster catalog contracts.
-* [PostGIS Raster and the GDAL driver](internals/raster-gdal-driver.md) records the
+* [PostGIS Raster and the GDAL driver](raster-gdal-driver.md) records the
boundary between PostGIS-maintained raster storage/catalog behavior and the
external GDAL `PostGISRaster` driver.
## Topology Internals
-* [Topology internals](internals/topology.md) covers internal topology
+* [Topology internals](topology.md) covers internal topology
implementation helpers such as edge end stars.
diff --git a/doc/development/internals/distance.md b/doc/development/internals/distance.md
index c3d30fabe..0c6539ce0 100644
--- a/doc/development/internals/distance.md
+++ b/doc/development/internals/distance.md
@@ -5,8 +5,6 @@ weight: 90
geekdocHidden: false
---
-# 2D and 3D Distance Internals
-
This page is the maintained version of the useful design notes from the Trac
`3DDistancecalc` page, checked against the current distance code in
`liblwgeom/measures.c`, `liblwgeom/measures3d.c`, and the SQL wrappers in
diff --git a/doc/development/internals/empty-geometry.md b/doc/development/internals/empty-geometry.md
index 914efbec3..0903a6745 100644
--- a/doc/development/internals/empty-geometry.md
+++ b/doc/development/internals/empty-geometry.md
@@ -5,8 +5,6 @@ weight: 30
geekdocHidden: false
---
-# Empty geometry semantics
-
Empty geometries are valid geometry values with no coordinates. They are not
SQL `NULL`: `NULL` means an unknown or absent SQL value, while `EMPTY` is a
known geometry value that can be produced by a successful spatial operation.
diff --git a/doc/development/internals/memory.md b/doc/development/internals/memory.md
index cb9774125..999ddd4ff 100644
--- a/doc/development/internals/memory.md
+++ b/doc/development/internals/memory.md
@@ -5,8 +5,6 @@ weight: 10
geekdocHidden: false
---
-# Memory Management
-
Use the allocator that matches the layer you are editing:
| Area | Allocators |
diff --git a/doc/development/internals/postgresql.md b/doc/development/internals/postgresql.md
index 1d9aa917e..c001bbfb7 100644
--- a/doc/development/internals/postgresql.md
+++ b/doc/development/internals/postgresql.md
@@ -5,8 +5,6 @@ weight: 20
geekdocHidden: false
---
-# PostgreSQL Internals for PostGIS Developers
-
This page collects implementation notes for C code that crosses the PostgreSQL
extension boundary. Use [Memory management](memory.md) for allocator ownership
rules.
diff --git a/doc/development/internals/precision-tolerance.md b/doc/development/internals/precision-tolerance.md
index 167545b30..ef0474a43 100644
--- a/doc/development/internals/precision-tolerance.md
+++ b/doc/development/internals/precision-tolerance.md
@@ -5,8 +5,6 @@ weight: 100
geekdocHidden: false
---
-# Precision And Tolerance Internals
-
PostGIS does not have one global tolerance model for all geometry operations.
Precision and tolerance are handled at the API boundary where they affect a
specific algorithm.
diff --git a/doc/development/internals/raster-affine.md b/doc/development/internals/raster-affine.md
index 712b589e6..aaeb17dfa 100644
--- a/doc/development/internals/raster-affine.md
+++ b/doc/development/internals/raster-affine.md
@@ -5,8 +5,6 @@ weight: 50
geekdocHidden: false
---
-# Raster affine georeferencing
-
PostGIS raster stores the relationship between raster cell coordinates
`(i, j)` and spatial coordinates `(x, y)` as the same six-coefficient
geotransform used by GDAL world files:
diff --git a/doc/development/internals/raster-gdal-driver.md b/doc/development/internals/raster-gdal-driver.md
index 7b4acd483..037053ee9 100644
--- a/doc/development/internals/raster-gdal-driver.md
+++ b/doc/development/internals/raster-gdal-driver.md
@@ -5,8 +5,6 @@ weight: 80
geekdocHidden: false
---
-# PostGIS Raster And The GDAL Driver
-
The PostGIS Raster SQL type, loader, catalog views, and server-side GDAL use live
in this repository. The `PostGISRaster` GDAL driver itself lives in GDAL, so
developer documentation here should explain the boundary and the PostGIS-side
diff --git a/doc/development/internals/raster-physical-parameters.md b/doc/development/internals/raster-physical-parameters.md
index d8b069c8f..bea93618d 100644
--- a/doc/development/internals/raster-physical-parameters.md
+++ b/doc/development/internals/raster-physical-parameters.md
@@ -5,8 +5,6 @@ weight: 60
geekdocHidden: false
---
-# Raster physical georeferencing parameters
-
PostGIS raster stores georeferencing as six affine coefficients, but some SQL
and C entry points expose a more physical model:
diff --git a/doc/development/internals/raster-storage.md b/doc/development/internals/raster-storage.md
index a8efafdce..02661e6e8 100644
--- a/doc/development/internals/raster-storage.md
+++ b/doc/development/internals/raster-storage.md
@@ -5,8 +5,6 @@ weight: 70
geekdocHidden: false
---
-# Raster storage and WKB
-
PostGIS Raster has three related representations that are easy to confuse:
* The PostgreSQL `raster` type is a variable-length value declared in
diff --git a/doc/development/internals/spatial-collections.md b/doc/development/internals/spatial-collections.md
index 040e130ac..fe7f5c1ae 100644
--- a/doc/development/internals/spatial-collections.md
+++ b/doc/development/internals/spatial-collections.md
@@ -5,8 +5,6 @@ weight: 40
geekdocHidden: false
---
-# Spatial collections and raster/vector crossings
-
The historical `DevWikiSpatialCollectionTutorial` page described an internal
`SPATIAL_COLLECTION` abstraction intended to erase the difference between
vector geometries and rasters. That abstraction is not present in the current
diff --git a/doc/development/internals/topology.md b/doc/development/internals/topology.md
index 11541b574..53e13500c 100644
--- a/doc/development/internals/topology.md
+++ b/doc/development/internals/topology.md
@@ -5,8 +5,6 @@ weight: 110
geekdocHidden: false
---
-# Topology Internals
-
The topology extension has SQL-facing documentation in the user manual. This
page is for implementation notes that matter when changing the C topology
engine or its PostgreSQL wrappers.
diff --git a/doc/development/maintenance.md b/doc/development/maintenance/_index.md
similarity index 88%
rename from doc/development/maintenance.md
rename to doc/development/maintenance/_index.md
index f20d0a75d..a3a0a9bb1 100644
--- a/doc/development/maintenance.md
+++ b/doc/development/maintenance/_index.md
@@ -3,13 +3,12 @@ title: "Pull Request and Maintainer Workflow"
date: 2026-06-26
weight: 130
geekdocHidden: false
+geekdocCollapseSection: true
---
-# Pull Request and Maintainer Workflow
-
This page collects maintainer-facing workflow notes for landing patches and
pull requests. Contributor-facing setup and submission notes live in
-[Contributing workflow](contributing.md).
+[Contributing workflow](../contributing.md).
## Source of Truth
@@ -50,8 +49,8 @@ design notes, or documentation in that component repository.
RFC-5, published at <https://postgis.net/development/rfcs/rfc05/>, records the
core contributor guideline for commit practice, Trac references, `NEWS`, code
-provenance, and legal review. Use [Governance notes](governance.md) and
-[PostGIS project inventory](governance/project-inventory.md) for current PSC
+provenance, and legal review. Use [Governance notes](../governance/_index.md) and
+[PostGIS project inventory](../governance/project-inventory.md) for current PSC
process, repository routing, and service ownership.
Write access to the canonical repository is granted by the Project Steering
@@ -66,18 +65,18 @@ from other projects, and discuss unusual licensing situations with the PSC or
OSGeo legal counsel before committing.
For the maintained commit-message, branch-target, authorship, and post-push
-rules distilled from RFC-5, see [Commit and branch guidelines](maintenance/commit-guidelines.md).
+rules distilled from RFC-5, see [Commit and branch guidelines](commit-guidelines.md).
For supported-branch fix propagation, provenance, `NEWS`, and Trac follow-up
-rules, see [Backpatching fixes](maintenance/backpatching.md).
+rules, see [Backpatching fixes](backpatching.md).
For labels, milestones, draft state, and mirror metadata on pull requests, see
-[Pull request metadata](maintenance/pull-request-metadata.md).
+[Pull request metadata](pull-request-metadata.md).
## First Pass
Before editing a public branch, public pull request body, or Trac ticket state,
read the current source of truth:
-* `CONTRIBUTING.md`, [Coding style](style.md), and the relevant page under
+* `CONTRIBUTING.md`, [Coding style](../style.md), and the relevant page under
this directory.
* The Trac ticket, including all comments, attachments, and linked context.
* The pull request description, commits, diff, review threads, and CI state.
@@ -94,13 +93,13 @@ When a mirror pull request, mailing-list patch, or Trac ticket needs contributor
follow-up instead of maintainer-side branch repair, point the contributor to the
specific workflow section rather than sending them back to this maintainer page:
-* [Contributing workflow](contributing.md) for Trac tickets, mirror pull
+* [Contributing workflow](../contributing.md) for Trac tickets, mirror pull
requests, mailing lists, chat, and security reports.
-* [First contribution path](contributing.md#first-contribution-path) for a
+* [First contribution path](../contributing.md#first-contribution-path) for a
small-patch checklist from fork through focused validation.
-* [Development environments](environment.md) and
- [Testing and debugging](testing.md) for local build and regression setup.
-* [Release and upgrade rules](release.md) when a proposed change affects SQL
+* [Development environments](../environment/_index.md) and
+ [Testing and debugging](../testing/_index.md) for local build and regression setup.
+* [Release and upgrade rules](../release/_index.md) when a proposed change affects SQL
API compatibility, extension upgrades, dependency policy, or backpatch scope.
## Review and CI Readback
@@ -116,7 +115,7 @@ head commit that produced it, not to a later force-push.
## Commit Messages
The maintained commit-message and branch-target rules live in
-[Commit and branch guidelines](maintenance/commit-guidelines.md). The short summary below is
+[Commit and branch guidelines](commit-guidelines.md). The short summary below is
for common pull request landings.
For a single-commit pull request that can be represented cleanly on the target
@@ -170,7 +169,7 @@ Before backpatching, confirm the target release line is open in `Version.config`
and `NEWS`. Stable branches normally receive bug fixes, not new features. End of
life branches should not receive new work without explicit release-manager
direction.
-Use [Backpatching fixes](maintenance/backpatching.md) for the two-pass branch
+Use [Backpatching fixes](backpatching.md) for the two-pass branch
scan, one-to-one commit provenance, `NEWS` expectations, and per-ticket Trac
follow-up wording.
@@ -197,4 +196,4 @@ work before merge or reset operations, and unlock when the repository is clean.
For website maintenance, use the OSGeo Gitea `postgis/postgis.net` repository.
The site is a Hugo project; update release pointers and news there during
release work, run `make check`, and do not edit the vendored theme. See
-[PostGIS website maintenance](website.md).
+[PostGIS website maintenance](../website.md).
diff --git a/doc/development/maintenance/backpatching.md b/doc/development/maintenance/backpatching.md
index ea6f02952..4531fdc19 100644
--- a/doc/development/maintenance/backpatching.md
+++ b/doc/development/maintenance/backpatching.md
@@ -5,8 +5,6 @@ weight: 20
geekdocHidden: false
---
-# Backpatching Fixes
-
Backpatching keeps supported release lines consistent without turning stable
branches into feature branches. Use this checklist when a bug fix, release-line
CI fix, or security fix may need to move between `master` and supported
diff --git a/doc/development/maintenance/commit-guidelines.md b/doc/development/maintenance/commit-guidelines.md
index fcc5df73f..90497b430 100644
--- a/doc/development/maintenance/commit-guidelines.md
+++ b/doc/development/maintenance/commit-guidelines.md
@@ -5,8 +5,6 @@ weight: 10
geekdocHidden: false
---
-# Commit and Branch Guidelines
-
This page keeps the source-control practices from the historical RFC-5
contributor guideline in a maintained form. Use it together with
[Contributing workflow](../contributing.md), [Coding style](../style.md), and the
diff --git a/doc/development/maintenance/pull-request-metadata.md b/doc/development/maintenance/pull-request-metadata.md
index 0b40da206..cc53221f5 100644
--- a/doc/development/maintenance/pull-request-metadata.md
+++ b/doc/development/maintenance/pull-request-metadata.md
@@ -5,8 +5,6 @@ weight: 30
geekdocHidden: false
---
-# Pull Request Metadata
-
Use labels, milestones, and draft state to make the maintainer queue sortable.
They are triage metadata, not a substitute for reading the pull request body,
the Trac ticket, the diff, current review threads, and CI.
diff --git a/doc/development/manual.md b/doc/development/manual.md
index 6b57059b9..dc902d667 100644
--- a/doc/development/manual.md
+++ b/doc/development/manual.md
@@ -5,8 +5,6 @@ weight: 100
geekdocHidden: false
---
-# Manual Documentation Workflow
-
PostGIS documentation is written in DocBook XML under `doc/`. The root file is
`doc/postgis.xml`, which includes chapter and reference XML files. The same XML
also generates SQL comments for functions.
@@ -81,7 +79,7 @@ pixels are embedded in the generated SVG container rather than checked in as a
manual screenshot.
Garden checks combine documentation examples with behavior validation. Keep the
-command and review guidance in [Testing and debugging](testing.md#garden-checks)
+command and review guidance in [Testing and debugging](testing/_index.md#garden-checks)
and link back here when manual examples need attention.
Generated Doxygen documentation for supported branches is linked from the
diff --git a/doc/development/release-process.md b/doc/development/release-process.md
index d9ea7e381..579e873e1 100644
--- a/doc/development/release-process.md
+++ b/doc/development/release-process.md
@@ -5,8 +5,6 @@ weight: 90
geekdocHidden: false
---
-# Release Process
-
Date: 2022-09-25
## Versioning Scheme
diff --git a/doc/development/release.md b/doc/development/release/_index.md
similarity index 66%
rename from doc/development/release.md
rename to doc/development/release/_index.md
index f1efc1524..e1ed60806 100644
--- a/doc/development/release.md
+++ b/doc/development/release/_index.md
@@ -3,10 +3,9 @@ title: "Release and Upgrade Rules"
date: 2026-06-26
weight: 80
geekdocHidden: false
+geekdocCollapseSection: true
---
-# Release and Upgrade Rules
-
This directory collects release-policy and upgrade-safety rules consolidated
from the former `doc/developer.md` and the developer wiki. Use it when a patch
changes SQL API, C API, extension upgrade behavior, dependency requirements, or
@@ -14,17 +13,17 @@ supported PostgreSQL versions.
## Topics
-* [API compatibility](release/api.md) indexes SQL/C API compatibility rules.
-* [Versioning policy](release/versioning.md) explains version terminology, library naming,
+* [API compatibility](api.md) indexes SQL/C API compatibility rules.
+* [Versioning policy](versioning.md) explains version terminology, library naming,
and release-line compatibility constraints.
-* [Deprecating and removing API](release/deprecation.md) explains SQL-visible object
+* [Deprecating and removing API](deprecation.md) explains SQL-visible object
removals and C API stubs for `pg_upgrade`.
-* [SQL upgrade and deprecation](release/sql-scripting.md) explains `Availability:`,
+* [SQL upgrade and deprecation](sql-scripting.md) explains `Availability:`,
`Changed:`, `Replaces`, before/after upgrade hooks, and parser-sensitive SQL
style.
-* [Dependency and support guards](release/dependencies.md) explains dependency-version
+* [Dependency and support guards](dependencies.md) explains dependency-version
guards and the checklist for dropping PostgreSQL support.
-* [Testing and debugging](testing.md) explains sandboxed regression roles used
+* [Testing and debugging](../testing/_index.md) explains sandboxed regression roles used
by CI and downstream builders.
## Quick Rules
diff --git a/doc/development/release/api.md b/doc/development/release/api.md
index 69116886a..ee984937f 100644
--- a/doc/development/release/api.md
+++ b/doc/development/release/api.md
@@ -5,8 +5,6 @@ weight: 10
geekdocHidden: false
---
-# API Compatibility
-
Use these pages when a patch changes user-visible SQL objects, C symbols,
extension library names, or upgrade-sensitive compatibility rules.
diff --git a/doc/development/release/dependencies.md b/doc/development/release/dependencies.md
index d8ac90df4..9d6c91827 100644
--- a/doc/development/release/dependencies.md
+++ b/doc/development/release/dependencies.md
@@ -5,8 +5,6 @@ weight: 50
geekdocHidden: false
---
-# Dependency and Support Guards
-
This page explains how to guard functionality that depends on newer libraries
and how to remove support for older PostgreSQL versions.
diff --git a/doc/development/release/deprecation.md b/doc/development/release/deprecation.md
index 271a27c5f..918b478b5 100644
--- a/doc/development/release/deprecation.md
+++ b/doc/development/release/deprecation.md
@@ -5,8 +5,6 @@ weight: 30
geekdocHidden: false
---
-# Deprecating and Removing API
-
Several removal types affect user upgrades and must be considered carefully:
* SQL API functions
diff --git a/doc/development/release/sql-scripting.md b/doc/development/release/sql-scripting.md
index 6a5b47e26..77c2ea8ee 100644
--- a/doc/development/release/sql-scripting.md
+++ b/doc/development/release/sql-scripting.md
@@ -5,8 +5,6 @@ weight: 40
geekdocHidden: false
---
-# SQL Upgrade and Deprecation
-
This page covers SQL API changes, upgrade metadata comments, upgrade hooks, and
parser-sensitive SQL style used by PostGIS upgrade-script generators.
diff --git a/doc/development/release/versioning.md b/doc/development/release/versioning.md
index eb4452831..0b81b3172 100644
--- a/doc/development/release/versioning.md
+++ b/doc/development/release/versioning.md
@@ -5,8 +5,6 @@ weight: 20
geekdocHidden: false
---
-# Versioning Policy
-
PostGIS version names use three digits separated by periods:
```text
diff --git a/doc/development/style.md b/doc/development/style.md
index c46faee1e..d075dfee1 100644
--- a/doc/development/style.md
+++ b/doc/development/style.md
@@ -5,13 +5,11 @@ weight: 60
geekdocHidden: false
---
-# Coding Style Guidelines
-
This page covers source formatting, comments, Doxygen comments, and naming
conventions. For broader developer workflow notes, including release policy,
SQL API upgrade rules, and the `Availability:`, `Changed:`, and `Replaces`
comments parsed by the upgrade script generator, see
-[PostGIS Developer Documentation](README.md).
+[PostGIS Development Guide](README.md).
## Preamble
diff --git a/doc/development/testing.md b/doc/development/testing/_index.md
similarity index 97%
rename from doc/development/testing.md
rename to doc/development/testing/_index.md
index 5732963d7..c03319aee 100644
--- a/doc/development/testing.md
+++ b/doc/development/testing/_index.md
@@ -3,10 +3,9 @@ title: "Testing and Debugging"
date: 2026-06-26
weight: 40
geekdocHidden: false
+geekdocCollapseSection: true
---
-# Testing and Debugging
-
PostGIS uses both SQL regression tests and CUnit tests. Choose the lowest layer
that exercises the behavior you changed.
@@ -82,7 +81,7 @@ unprivileged.
## Standard Test Runs
Tests expect PostgreSQL to be running and the current user to be able to create
-databases. The setup in [Building PostGIS](environment/ubuntu.md) configures a packaged
+databases. The setup in [Building PostGIS](../environment/ubuntu.md) configures a packaged
cluster for local testing.
Export connection parameters so every helper uses the same cluster:
@@ -133,7 +132,7 @@ Other useful targets:
is public, use `@handle (GitHub user: partial name)` to credit both forms and
keep all handle-first entries together at the start of the list. Do not infer
a person's name from an email address.
-* [CI inventory standards](testing/ci.md) describe how to keep build-bot and badge
+* [CI inventory standards](ci.md) describe how to keep build-bot and badge
inventories checkable instead of copying stale dashboard markup into
maintained prose.
@@ -193,7 +192,7 @@ Open `coverage-html/index.html` in a browser or upload the report to CI
artifacts to inspect missing lines.
If you rely on the `ci/github/run_*.sh` wrappers, export `PGHOME` and `PGDATA`
-as described in [Building PostGIS](environment/ubuntu.md) and replace
+as described in [Building PostGIS](../environment/ubuntu.md) and replace
`/usr/local/pgsql/bin/pg_ctl` in those scripts with the packaged location or
create a symlink at `/usr/local/pgsql/bin` pointing to `${PGHOME}/bin`.
diff --git a/doc/development/testing/ci.md b/doc/development/testing/ci.md
index 6cfeb9082..bc27ffe0e 100644
--- a/doc/development/testing/ci.md
+++ b/doc/development/testing/ci.md
@@ -5,8 +5,6 @@ weight: 10
geekdocHidden: false
---
-# CI Inventory Standards
-
The old Trac `ContinuousIntegration` page is a useful warning: a build-badge
dashboard combines live service URLs, branch names, CI job names, dependency
versions, and human-readable host notes. That kind of table becomes stale
@@ -87,7 +85,7 @@ readback.
## Relationship To Other Docs
-Use [Testing and debugging](../testing.md) for test commands and local validation
+Use [Testing and debugging](_index.md) for test commands and local validation
workflows. Use [Release process](../release-process.md) for release-manager
greenlight checks, Debbie release jobs, and branch-opening steps. Use
[Website maintenance](../website.md) and the public website compatibility matrix
diff --git a/doc/development/todo.md b/doc/development/todo.md
index 8afc22cbf..8b5a2c183 100644
--- a/doc/development/todo.md
+++ b/doc/development/todo.md
@@ -5,8 +5,6 @@ weight: 35
geekdocHidden: false
---
-# Development TODO
-
This page records high-level development ideas that survived the Trac/wiki
documentation migration but are not accepted designs, release blockers, or
scheduled work. Move an item to a Trac ticket, design document, or pull request
diff --git a/doc/development/tools.md b/doc/development/tools.md
index d7d7bb6bb..e4ff764e3 100644
--- a/doc/development/tools.md
+++ b/doc/development/tools.md
@@ -5,8 +5,6 @@ weight: 50
geekdocHidden: false
---
-# Developer Tools
-
These tools support debugging, formatting, profiling, and coverage work. Install
the relevant packages through your development environment first, then use the
focused workflow for the task at hand.
@@ -26,7 +24,7 @@ ulimit -c unlimited
When running under constrained CI where you cannot change `kernel.core_pattern`,
skip the `logbt` setup and use the manual `gdb` workflow in
-[Testing and debugging](testing.md#backtraces).
+[Testing and debugging](testing/_index.md#backtraces).
## Formatting
@@ -35,7 +33,7 @@ rules.
## Coverage
-Use the coverage workflow in [Testing and debugging](testing.md#coverage).
+Use the coverage workflow in [Testing and debugging](testing/_index.md#coverage).
## Profiling
diff --git a/doc/development/website.md b/doc/development/website.md
index b457ae047..5285629ef 100644
--- a/doc/development/website.md
+++ b/doc/development/website.md
@@ -5,8 +5,6 @@ weight: 110
geekdocHidden: false
---
-# PostGIS Website Maintenance
-
The public website source lives in the OSGeo Gitea repository:
```sh
@@ -40,10 +38,16 @@ uses `tomlq`, `curl`, and `md5sum`.
Website content pages use YAML front matter. Developer documentation pages that
may be copied into `postgis.net` content should include at least `title`,
-`date`, `weight`, and `geekdocHidden`. Section landing pages may also set
-`layout: toplevel`. Draft-only migration aids should set `draft: true`,
-`geekdocHidden: true`, and `geekdocHiddenTocTree: false` so normal Hugo builds
-do not publish them accidentally.
+`date`, `weight`, and `geekdocHidden`. Do not repeat the front-matter title as a
+Markdown H1: the Geekdoc page layout renders that title already.
+
+The publisher maps this directory's `README.md` to the root `_index.md`.
+Nested section landing pages should live at `<section>/_index.md` and set
+`geekdocCollapseSection: true` to keep the file-tree menu compact. Do not use
+`layout: toplevel` for these pages; that layout appends another child-page list
+after the maintained section content. Draft-only migration aids should set
+`draft: true`, `geekdocHidden: true`, and `geekdocHiddenTocTree: false` so
+normal Hugo builds do not publish them accidentally.
## Content Areas
@@ -51,15 +55,15 @@ Website source content that overlaps with repository-maintained developer docs:
| Website source | Repository-maintained destination |
|----------------|-----------------------------------|
-| `content/development/source_code.md` | [Contributing workflow](contributing.md) and [Pull request and maintainer workflow](maintenance.md) |
+| `content/development/source_code.md` | [Contributing workflow](contributing.md) and [Pull request and maintainer workflow](maintenance/_index.md) |
| `content/development/getting_involved.md` | [Contributing workflow](contributing.md) |
| `content/development/bug_reporting.md` | [Contributing workflow](contributing.md) |
| `content/development/developer_docs.md` | [Documentation workflow](manual.md) and this `doc/development/` index |
-| `content/development/versions_eol.md` | [Release process](release-process.md) and [Release and upgrade rules](release.md) |
-| `content/development/rfcs/*.md` | [Governance notes](governance.md) and historical RFC pages |
-| New governance pages outside `rfcs/` | [Governance notes](governance.md) and [PostGIS project inventory](governance/project-inventory.md) |
+| `content/development/versions_eol.md` | [Release process](release-process.md) and [Release and upgrade rules](release/_index.md) |
+| `content/development/rfcs/*.md` | [Governance notes](governance/_index.md) and historical RFC pages |
+| New governance pages outside `rfcs/` | [Governance notes](governance/_index.md) and [PostGIS project inventory](governance/project-inventory.md) |
| `content/community/mailinglists.md` and `content/community/chat.md` | [Contributing workflow](contributing.md) |
-| `content/community/conduct.md` | [Governance notes](governance.md) |
+| `content/community/conduct.md` | [Governance notes](governance/_index.md) |
| `content/documentation/manual.md` | [Documentation workflow](manual.md) |
| `content/documentation/training.md` | Public website; only the workshop repository is an umbrella project |
@@ -75,7 +79,7 @@ keep repository guidance in [Dependency support](release/dependencies.md).
The maintained governance text in this repository should publish to ordinary
website governance pages instead of replacing the old numbered RFC files in
place. Keep `content/development/rfcs/*.md` as historical RFC archives, and use
-the repository [Governance notes](governance.md) plus
+the repository [Governance notes](governance/_index.md) plus
[PostGIS project inventory](governance/project-inventory.md) as the source for
the current PSC process, core-contributor rules, umbrella projects, and project
service inventory.
-----------------------------------------------------------------------
Summary of changes:
AGENTS.md | 10 +++----
doc/developer.md | 4 +--
doc/development/README.md | 33 +++++++---------------
doc/development/SKILL.md | 33 +++++++---------------
doc/development/contributing.md | 8 ++----
doc/development/environment.md | 22 ---------------
doc/development/environment/_index.md | 21 ++++++++++++++
doc/development/environment/docker.md | 2 --
doc/development/environment/freebsd.md | 2 --
doc/development/environment/macos.md | 2 --
doc/development/environment/ubuntu.md | 6 ++--
doc/development/environment/windows.md | 2 --
.../{governance.md => governance/_index.md} | 7 ++---
doc/development/governance/project-inventory.md | 6 ++--
.../{internals.md => internals/_index.md} | 25 ++++++++--------
doc/development/internals/distance.md | 2 --
doc/development/internals/empty-geometry.md | 2 --
doc/development/internals/memory.md | 2 --
doc/development/internals/postgresql.md | 2 --
doc/development/internals/precision-tolerance.md | 2 --
doc/development/internals/raster-affine.md | 2 --
doc/development/internals/raster-gdal-driver.md | 2 --
.../internals/raster-physical-parameters.md | 2 --
doc/development/internals/raster-storage.md | 2 --
doc/development/internals/spatial-collections.md | 2 --
doc/development/internals/topology.md | 2 --
.../{maintenance.md => maintenance/_index.md} | 33 +++++++++++-----------
doc/development/maintenance/backpatching.md | 2 --
doc/development/maintenance/commit-guidelines.md | 2 --
.../maintenance/pull-request-metadata.md | 2 --
doc/development/manual.md | 4 +--
doc/development/release-process.md | 2 --
doc/development/{release.md => release/_index.md} | 15 +++++-----
doc/development/release/api.md | 2 --
doc/development/release/dependencies.md | 2 --
doc/development/release/deprecation.md | 2 --
doc/development/release/sql-scripting.md | 2 --
doc/development/release/versioning.md | 2 --
doc/development/style.md | 4 +--
doc/development/{testing.md => testing/_index.md} | 9 +++---
doc/development/testing/ci.md | 4 +--
doc/development/todo.md | 2 --
doc/development/tools.md | 6 ++--
doc/development/website.md | 29 +++++++++++--------
44 files changed, 120 insertions(+), 209 deletions(-)
delete mode 100644 doc/development/environment.md
create mode 100644 doc/development/environment/_index.md
rename doc/development/{governance.md => governance/_index.md} (96%)
rename doc/development/{internals.md => internals/_index.md} (59%)
rename doc/development/{maintenance.md => maintenance/_index.md} (88%)
rename doc/development/{release.md => release/_index.md} (66%)
rename doc/development/{testing.md => testing/_index.md} (97%)
hooks/post-receive
--
PostGIS
More information about the postgis-tickets
mailing list