Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GEOS 3.12.1 #118

Merged
merged 15 commits into from
Nov 29, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ deps/libnetcdf/netcdf*.tar.gz
lib/binding
lib/index.d.ts
doc
coverage
/coverage
package-lock.json
yarn.lock
Attic
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Added
- GDAL 3.8.0 with new `JSONFG`, `PMTiles` and `S102` drivers
- GEOS 3.12.1
- HDF5 1.14.3
- NetCDF 4.9.2

Expand Down
2 changes: 1 addition & 1 deletion deps/libgeos.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ set -eu
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$DIR/libgeos"

GEOS_VERSION=3.10.2
GEOS_VERSION=3.12.1
dir_geos=./geos

#
Expand Down
22 changes: 13 additions & 9 deletions deps/libgeos/geos/.mailmap
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
Sandro Santilli <[email protected]> <[email protected]>
Mateusz Łoskot <[email protected]>
Martin Davis <[email protected]> <[email protected]>
Martin Davis <[email protected]> mdavis
Raul Marin <[email protected]> <[email protected]>
Paul Ramsey <[email protected]>
Regina Obe <[email protected]>
Brendan Ward <[email protected]>
Casper van der Wel <[email protected]>
Daniel Baston <[email protected]>
Daniel Baston <[email protected]> <[email protected]>
Daniel Baston <[email protected]> dbaston <[email protected]>
Daniel Baston <[email protected]> <[email protected]>
Paul van der Linden <[email protected]>
Howard Butler <[email protected]> <[email protected]>
Martin Davis <[email protected]>
Martin Davis <[email protected]> <[email protected]>
Mateusz Łoskot <[email protected]>
Paul Ramsey <[email protected]>
Paul Ramsey <[email protected]> <[email protected]>
Paul van der Linden <[email protected]> <[email protected]>
Raul Marin <[email protected]> <[email protected]>
Regina Obe <[email protected]>
Sandro Santilli <[email protected]> <[email protected]>
Vicky Vergara <[email protected]>
4 changes: 4 additions & 0 deletions deps/libgeos/geos/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Code of Conduct
===============

See [the GEOS Code of Conduct](https://libgeos.org/project/coc/).
16 changes: 7 additions & 9 deletions deps/libgeos/geos/INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,29 +2,29 @@

### Prerequisites

GEOS has no external library dependencies and can be built with any C++11
GEOS has no external library dependencies and can be built with any C++14
compiler.

### Unix

GEOS can be built on Unix systems using the CMake build system.

#### Using CMake:

To build `GEOS` using CMake, create a build directory and run the `cmake` command
from that location:

mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release ..
```
mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release ..
```

Setting `CMAKE_BUILD_TYPE` to `Release` is necessary to enable compiler
optimizations.

Once the `cmake` tool has run, GEOS can be built by
Once the `cmake` tool has run, GEOS can be built by:

* running `make` and installed by running `make install`, or
* running `cmake --build .` and `cmake --build . --target install`

The entire test suite can be run by
The entire test suite can be run by:

* using `make check`, or
* using `ctest --output-on-failure .`
Expand All @@ -39,11 +39,9 @@ A list of available tests can be obtained using `ctest -N`.
GEOS can be built with Microsoft Visual C++ by opening the `CMakeLists.txt` in
the project root using `File > Open > CMake`.

If you prefer the command-line

#### Build with CMake generator for Ninja (fast)

In the Visual Studio 2019 command prompt, `x64 Native Tools Command Prompt for VS 2019` or `x64_x86 Cross Tools Command Prompt for VS 2019`:
If you prefer the command-line, in the Visual Studio 2019 command prompt, `x64 Native Tools Command Prompt for VS 2019` or `x64_x86 Cross Tools Command Prompt for VS 2019` run:

```
cmake -S . -B _build_vs2019_ninja -G Ninja -DCMAKE_BUILD_TYPE=Release
Expand Down
916 changes: 916 additions & 0 deletions deps/libgeos/geos/NEWS.md

Large diffs are not rendered by default.

76 changes: 34 additions & 42 deletions deps/libgeos/geos/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,28 +12,39 @@ More information is available the [project homepage](https://libgeos.org).

The official Git repository is at [GitHub](https://github.com/libgeos/geos).

## Build status
## Build Status

| CI | 3.10 |
| :---: | :--- |
| GitHub | [![github](https://github.com/libgeos/geos/workflows/CI/badge.svg?branch=3.10)](https://github.com/libgeos/geos/actions?query=workflow%3ACI) |
| Azure | [![Build Status](https://dev.azure.com/libgeos/geos/_apis/build/status/libgeos.geos?branchName=3.10)](https://dev.azure.com/libgeos/geos/_build/latest?definitionId=2&branchName=3.10) |
| GitLab CI | [![gitlab-ci](https://gitlab.com/geos/libgeos/badges/3.10/pipeline.svg)](https://gitlab.com/geos/libgeos/commits/3.10) |
| Debbie | [![debbie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Branch_3.10)](https://debbie.postgis.net/view/GEOS/job/GEOS_Branch_3.10/) |
| Winnie | [![winnie](https://winnie.postgis.net:444/view/GEOS/job/GEOS_Branch_3.10/badge/icon)](https://winnie.postgis.net:444/view/GEOS/job/GEOS_Branch_3.10/) |
| Dronie | [![dronie](https://dronie.osgeo.org/api/badges/geos/geos/status.svg?branch=3.10)](https://dronie.osgeo.org/geos/geos?branch=3.10) |
| AppVeyor | [![appveyor](https://ci.appveyor.com/api/projects/status/62aplwst722b89au/branch/3.10?svg=true)](https://ci.appveyor.com/project/dbaston/geos/branch/3.10) |
| Bessie | [![bessie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=bessie&build=last:${params.reference=refs/heads/3.10})](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=bessie) |
| Bessie32 | [![bessie32](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=bessie32&build=last:${params.reference=refs/heads/3.10})](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=bessie32)
| Berrie64 | [![berrie64](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=berrie64&build=last:${params.reference=refs/heads/3.10})](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=berrie64) |
| Berrie | [![berrie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=berrie&build=last:${params.reference=refs/heads/3.10})](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=berrie) |
| CI | Status | CI | Status | CI | Status |
| :---: | :----- | :---: | :----- | :---: | :----- |
| GitHub | [![github](https://github.com/libgeos/geos/workflows/CI/badge.svg?branch/main)](https://github.com/libgeos/geos/actions?query=workflow:CI+branch:main) | Bessie | [![bessie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=bessie&build=last:${params.reference=refs/heads/main})](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=bessie) | Debbie | [![debbie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Master)](https://debbie.postgis.net/view/GEOS/job/GEOS_Master/) |
| GitLab CI | [![gitlab-ci](https://gitlab.com/geos/libgeos/badges/main/pipeline.svg)](https://gitlab.com/geos/libgeos/commits/main) | Bessie32 | [![bessie32](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=bessie32&build=last:${params.reference=refs/heads/main})](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=bessie32) | Winnie | [![winnie](https://winnie.postgis.net/view/GEOS/job/GEOS_Master/badge/icon)](https://winnie.postgis.net/view/GEOS/job/GEOS_Master/) |
| | | Berrie | [![berrie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=berrie&build=last:${params.reference=refs/heads/main})](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=berrie) | Dronie | [![dronie](https://dronie.osgeo.org/api/badges/geos/geos/status.svg?branch=main)](https://dronie.osgeo.org/geos/geos?branch=master) |
| | | Berrie64 | [![berrie64](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=berrie64&build=last:${params.reference=refs/heads/main})](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=berrie64) |

## Community Resources

## Build/install
* Website: https://libgeos.org
* **git** repository: https://github.com/libgeos/geos
* [**geos-devel** mailing list](https://lists.osgeo.org/mailman/listinfo/geos-devel) and [archive](https://lists.osgeo.org/pipermail/geos-devel/)
* **#geos** chat channel (all bridged):
* Matrix: https://matrix.to/#/#geos:osgeo.org
* IRC: irc://irc.libera.chat/#osgeo-geos (https://kiwiirc.com/nextclient/irc.libera.chat/#osgeo-geos)
* Slack: https://osgeo.slack.com/messages/C07RKJ06B/

See INSTALL file
## Build/Install

## Client applications
See the [INSTALL](INSTALL.md) file.

## Reference Docs

* [C API](https://libgeos.org/doxygen/geos__c_8h.html)
* [C++ API](https://libgeos.org/doxygen/cpp_iface.html)

See also the [C API tutorial](https://libgeos.org/usage/c_api/)
and the [C++ API tutorial](https://libgeos.org/usage/cpp_api/).
There are code [examples](https://github.com/libgeos/geos/tree/main/examples) in the code repository.

## Client Applications

### Using the C interface

Expand Down Expand Up @@ -85,29 +96,12 @@ classes, e.g. `#include <geos/algorithm/distance/DiscreteHausdorffDistance.h>`.

#include <geos.h>

Documentation for the C++ API is available at https://geos.osgeo.org/doxygen/,
and basic C++ usage examples can be found in `doc/example.cpp`.


### Scripting language bindings

#### Ruby
C++ usage examples can be found in [examples](examples/).

Ruby bindings are available via [RGeo](https://github.com/rgeo/rgeo).

#### PHP

PHP bindings for GEOS are available separately from
[php-geos](https://git.osgeo.org/gitea/geos/php-geos).

#### Python

Python bindings are available via:

1. [Shapely](http://pypi.python.org/pypi/Shapely)
2. [PyGEOS](https://github.com/pygeos/pygeos)
3. Calling functions from `libgeos_c` via Python ctypes
### Using other languages

GEOS has bindings in many languages, see the [bindings
page](https://libgeos.org/usage/bindings/).

## Documentation

Expand All @@ -126,10 +120,8 @@ version included in source tree:

## Testing

See documentation [here](tests/README.md).
See documentation in [tests/README.md](tests/README.md).

## Tools

* `geosop` - a CLI for GEOS. Documentation is [here](util/geosop/README.md).


* `geosop` - a CLI for GEOS. Documentation is in [util/geosop/README.md](util/geosop/README.md).
10 changes: 5 additions & 5 deletions deps/libgeos/geos/Version.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@

# GEOS Versions
GEOS_VERSION_MAJOR=3
GEOS_VERSION_MINOR=10
GEOS_VERSION_PATCH=2
GEOS_VERSION_MINOR=12
GEOS_VERSION_PATCH=1

# OPTIONS: "", "dev", "rc1" etc.
GEOS_PATCH_WORD=
Expand All @@ -15,9 +15,9 @@ GEOS_PATCH_WORD=
# - Deleting interfaces / compatibility issues - bump CURRENT, others to zero
# ( THIS MUST BE CAREFULLY AVOIDED )
#
CAPI_INTERFACE_CURRENT=17
CAPI_INTERFACE_REVISION=0
CAPI_INTERFACE_AGE=16
CAPI_INTERFACE_CURRENT=19
CAPI_INTERFACE_REVISION=1
CAPI_INTERFACE_AGE=18

# JTS Port
JTS_PORT=1.18.0
Loading
Loading