You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This library is an SPM-compatible repackaging of the source code from libgeos/geos for use on Apple and Linux systems.
GEOS is a C++ library for performing operations on two-dimensional vector
geometries. It is primarily a port of the JTS Topology
Suite Java library. It provides many of
the algorithms used by PostGIS, the
Shapely package for Python, the
sf package for R, and others.
This package follows SemVer principles and therefore its versions don't map 1:1 with the underlying geos library. When a geos release identifies any changes as breaking, we will release a new major version of this library.
Licensing
The source code contained in this repo is released under a dual license:
The contents of the Sources directory are taken from libgeos/geos and distributed under the LGPL 2.1 license (see COPYING).
The other content of this repo is distributed under the MIT LICENSE.
Releasing a new version
Create a new branch.
Modify update.sh to successfully pull the new version of geos and construct an SPM-compatible Sources directory. This only entails pointing at a new source archive unless geos releases a new version with different build structure (rare).
Run update.sh.
Modify Package.swift if necessary.
Test the supported platforms (Apple Devices/Linux) with both CLI and Xcode.
Update this README.md with any relevant information (e.g. new version numbers).
Commit all modifications and open a PR.
Once merged, release a new version numbered according to SemVer principles. If the underlying geos release contains any breaking changes, increment the major release here. Minor and patch version increments are at your discretion.