= Welcome to the Developers PostGIS Wiki! = [[Image(wiki:WikiStart:OSGeo_project.png)]] Everybody is welcome to contribute to this wiki. This wiki is designed for individuals who want to contribute to PostGIS by developing patches or testing out changes. There will be some sections that are of equal value to both PostGIS users and Developers such as compiling source etc. Feel free to contribute to this and make any corrections you see fit. * You must login to create new pages and modify existing ones. You can create your own [https://www.osgeo.org/cgi-bin/ldap_create_user.py OSGEO Userid] or use your existing one or you can use the generic one (login:wiki;password:wiki). * Please prefix every new page names in this section with "!DevWiki" in order to easily distinguish them from other Wiki Trac pages. * For a quick overview of how to format page's content [wiki:WikiFormatting see this page]. == Useful Links == * [https://postgis.net/development/rfcs/rfc05/ Core Contributor Guidelines] * [wiki:DevWikiRFC PostGIS RFCs for Past Change Proposals] * [wiki:DevWikiDockerTesting Docker Testing] == Debugging Guides == * Directions for [wiki:DevWikiGettingABackTrace getting a backtrace] if your query crashes PostGIS. == PostGIS Work Branches == * [https://postgis.net/development/source_code/ Source Tarballs and Git Mirrors] == Doxygen Autogenerated Developer Documentation == * [http://postgis.net/docs/doxygen/3.5/ PostGIS Doxygen 3.5] * [http://postgis.net/docs/doxygen/3.4/ PostGIS Doxygen 3.4] * [http://postgis.net/docs/doxygen/3.3/ PostGIS Doxygen 3.3] * [http://postgis.net/docs/doxygen/3.2/ PostGIS Doxygen 3.2] * [http://postgis.net/docs/doxygen/3.1/ PostGIS Doxygen 3.1] * [http://postgis.net/docs/doxygen/3.0/ PostGIS Doxygen 3.0] == Other stuff == * [https://git.osgeo.org/gitea/postgis/postgis/src/branch/master/STYLE PostGIS coding Style Guide] * [wiki:DevWikiEvent Code Sprints] * [wiki:DevWikiEmptyGeometry Semantics of EMPTY geometries] * [wiki:NewDistCalc Description of new distance calculation] * [wiki:DevWikiAffineParameters How to calculate parameters for affine transformation] * [wiki:DevWikiRealParameters How to calculate "real" parameters from an affine transformation] * [wiki:DevWikiSpatialCollectionTutorial Spatial Collection Tutorial] * [wiki:DevelopmentDiscussion Topics for discussion on PostGIS 2.0] * [wiki:DevWikiISO19125 Comments/Questions related to ISO19125] * [wiki:DevWikiPostGISCoding Notes on memory management and code structures in PostGIS] * [wiki:DevWikiProvenanceReview Code Provenance Review] * [wiki:DevFOSS4GCodeSprintNotes FOSS4G2011 Code Sprint Notes] * [wiki:DevGUC Grand Unified Configuration Notes] * [wiki:ToleranceDiscussion What functions need a tolerance/precision and how should it be implemented] * [wiki:DevClusteringFunctions Proposal/discussion for clustering functions] == Compilation and Installation Guides == * [wiki:UsersWikiPostgreSQLPostGIS PostgreSQL/PostGIS version support matrix] * [wiki:UsersWikiInstall More comprehensive list of OS specific install guides] * Directions for [wiki:UsersWikiPostgisRpmInstallation PostGIS RPM Installation]. * Directions for [wiki:UsersWikiPostgisOnUbuntu PostGIS on Ubuntu]. * Directions for [wiki:UsersWikiWinCompile Compiling in Windows]. * [wiki:UsersWikiWinCompileInitdb Initializing PostgreSQL Data Cluster for testing] * Directions for [wiki:DevWikiWinNSIS Creating PostGIS setup.exe for Windows using NSIS]. * [wiki:UsersWikiMakeCheckConsiderations Make Check Gotchas]. == Patch Submission Guidelines == General model Major.Minor.Micro (1.3.6, 1.4.0,1.5.0SVN) Basic Steps noted [https://postgis.net/development here] We do not release additional functions to micro (aka Patch) releases. Micro releases will be focused primarily on bug fixes and secondly speed enhancements to existing functions. PostGIS 3.1 and below will be critical bug and security fixes. This means that only currently documented functions for PostGIS 3.2 are all you will see in 3.2.1 Bug fixes to existing functions go into latest micro release. New functions submitted will have to go into the next release (always master branch). New functions/features that require on disk structural changes will go into next major release. * [wiki:DevWikiPGRegress Preparing PostgreSQL Specific Regress Tests] * [wiki:DevWikiCUnit Preparing CUnit Tests] * [wiki:DevWikiDocNewFeature Preparing Documentation Patches for new features] * [wiki:DevWikiPatch Preparing code and other patches] * [wiki:DevWikiMain/DevForDummy A step by step guide to contributing to postgis] == Additional Testing == * [wiki:DevWikiGardenTest Building and Running Garden (Torture) Tests]