[Git][debian-gis-team/pdal][upstream] New upstream version 1.9.0+ds

Bas Couwenberg gitlab at salsa.debian.org
Tue Apr 9 18:18:47 BST 2019



Bas Couwenberg pushed to branch upstream at Debian GIS Project / pdal


Commits:
4dc2836b by Bas Couwenberg at 2019-04-09T16:08:05Z
New upstream version 1.9.0+ds
- - - - -


10 changed files:

- .travis.yml
- RELEASENOTES.txt
- doc/development/compilation/dependencies.rst
- doc/development/compilation/index.rst
- doc/development/compilation/unix.rst
- doc/development/metadata.rst
- doc/development/release-notes/1.9.0.md
- doc/download.rst
- pdal/GDALUtils.hpp
- scripts/conda/osx.sh


Changes:

=====================================
.travis.yml
=====================================
@@ -15,7 +15,7 @@ script:
 
 after_success: |
   if [[ "$TRAVIS_SECURE_ENV_VARS" == "true" &&
-        "$TRAVIS_BRANCH" == "1.8-maintenance" &&
+        "$TRAVIS_BRANCH" == "1.9-maintenance" &&
         -n "$encrypted_6a5172b96922_key" ]]
   then
       cd scripts/ci


=====================================
RELEASENOTES.txt
=====================================
@@ -33,6 +33,46 @@ Enhancements
    ``spatialreference`` option. ``default_srs`` applies only if no
    spatial reference exists in the source file. (#2194, #2195)
 -  Added some dimension detection capability to ``readers.pts``. (#2317)
+-  Hardened API use of LASzip in ``writers.las`` for points with data
+   format 6 and above and set the extended_point_type variable. (#2320,
+   #2329)
+-  .. rubric:: Changes of Note
+      :name: changes-of-note-1
+
+-  PDAL now requires at least version 2.2 of GDAL.
+-  Pipelines can optionally be specified as an array of stages (without
+   an encapsulating “pipeline” object).
+-  The location of installed cmake files has been changed to match the
+   cmake convention.
+-  ``filters.delaunay`` now uses the delaunator library instead of
+   geogram.
+-  PDAL no longer depends on the GEOS library. However, some polygon
+   functions will not work if PDAL isn’t built with a version of the
+   GDAL library that has GEOS support.
+-  PDAL now uses the standard cmake script to locate the necessary GDAL
+   files when building.
+-  ``readers.sbet`` now reads angles as degrees rather than radians.
+   (#2354)
+-  The ``tindex`` command now requires one of the subcommands ``create``
+   or ``merge``. It no longer accepts the ``merge`` option, which has
+   been replaced by the ``merge`` subcommand.
+-  The argument for the function ``PipelineManager::executeStream`` is
+   now of type ``StreamPointTable&`` instead of ``FixedPointTable&``.
+
+.. _enhancements-1:
+
+Enhancements
+============
+
+-  All readers now accept the ``default_srs`` and ``override_srs``
+   options. ``override_srs`` is an alias for the existing
+   ``spatialreference`` option. ``default_srs`` applies only if no
+   spatial reference exists in the source file. (#2194, #2195)
+-  Added some dimension detection capability to ``readers.pts``. (#2317)
+-  The build system now has enhanced conflict detection of mixed python
+   2/3 installations. Make sure that you have header
+   files/libraries/interpreter/numpy support for either python 2 or
+   python 3.
 -  Hardened API use of LASzip in ``writers.las`` for points with data
    format 6 and above and set the extended_point_type variable. (#2320,
    #2329)
@@ -91,7 +131,69 @@ Bug fixes
    a crash in some circumstances.
 -  Generalized the python library re-loaded by PDAL when being used as a
    python extension. This is only relevant on some Unix distributions.
+-  Support the ``libgeotiff`` path suffix when searching for the geotiff
+   library with cmake.
+-  Added a ``resolution`` option to ``readers.ept`` to limit the number
+   of points read. (#2331)
+-  ``readers.rxp`` now supports stream mode.
+-  Added the ``invert`` option to ``filters.head`` and ``filters.tail``.
+-  Added support for subcommands in kernels. (#2293)
+-  Fixed a bug in ``writers.gdal`` that might access invalid memory in
+   some situations. (#2448)
+
+.. _new-stages-1:
+
+New stages
+==========
+
+-  ``filters.mongo`` - Filtering of points using the mongo expression
+   language.
+-  ``readers.tiledb`` - Reads points from the tileDB database.
+-  ``writers.tiledb`` - Writes points to the tileDB database.
+-  ``writers.ept_addon`` - Adds sidecar data to an existing EPT dataset.
+
+.. _deprecated-stages-1:
 
+Deprecated stages
+=================
+
+-  ``filters.kdistance`` - Replaced by ``filters.nndistance``.
+   ``filters.kdistance`` will be removed in the next PDAL release.
+-  ``filters.mongus`` - Replaces by ``filters.pmf`` and ``filters.smrf``
+
+.. _bug-fixes-1:
+
+Bug fixes
+=========
+
+-  The tindex command now uses sufficient precision when using the
+   ``fast_boundary`` option (#2271)
+-  ``filters.smrf`` and ``filters.pmf`` now process all points if the
+   ``NumberOfReturns`` or ``ReturnNumber`` dimension is missing. This
+   fixes a regression introduced with PDAL 1.8. (#2275)
+-  The density command is now found by pdal. This fixes a regression
+   introduced with PDAL 1.8. (#2378)
+-  The ``scale=auto`` and ``offset=auto`` options now work with
+   ``writers.bpf`` in stream mode. (#1983)
+-  Pipelines with diamond shapes now properly re-execute ancestor
+   stages. This fixes a regression introduced with PDAL 1.8. (#2290)
+-  ``filters.crop`` now uses the correct logic when the ``outside``
+   option is used in standard mode. (#2305)
+-  A bug in ``writers.gdal`` with streaming mode that caused an improper
+   location shift in some instances has been fixed. (#2292)
+-  Added an explicit dependency on the arbiter library for curl. This
+   fixes build issues on some Unix platforms. (#1822)
+-  Fixed a bug in ``filters.icp`` introduced by a change in PCL (see:
+   https://github.com/PointCloudLibrary/pcl/issues/2724) that improperly
+   removed a function call. (#2319)
+-  ``readers.tindex`` now provides a default of “EPSG:4326” for the
+   ``filter_srs`` option. (#2316)
+-  Points in buffer corners are now properly placed in tiles in
+   ``filters.splitter``. (#2372)
+-  Fixed reference counting in ``filters.python`` that might have caused
+   a crash in some circumstances.
+-  Generalized the python library re-loaded by PDAL when being used as a
+   python extension. This is only relevant on some Unix distributions.
 ================================================================================
 1.8.0
 ================================================================================


=====================================
doc/development/compilation/dependencies.rst
=====================================
@@ -4,43 +4,38 @@
 Dependencies
 ==============================================================================
 
-:Author: Howard Butler
-:Contact: howard at hobu.co
-:Date: 11/03/2015
-
-PDAL explicitly stands on the shoulders of giants that have come before it.
-Specifically, PDAL depends on a number of libraries to do its work. Most are
-not required. For optional dependencies, PDAL utilizes a dynamically-linked
-plugin architecture that loads them at runtime.
+PDAL depends on a number of libraries to do its work.  You should make sure
+those dependencies are installed on your system before installing PDAL
+or use a packaging system that will automatically ensure that prerequisites
+are satisified.  Packaging system such as `apt`_ or `Conda`_ can
+be used to install dependencies on your system.
 
+.. _`apt`: https://help.ubuntu.com/lts/serverguide/apt.html
+.. _`Conda`: https://conda.io/en/latest/
 
 Required Dependencies
 ------------------------------------------------------------------------------
 
-GDAL
+GDAL (2.2+)
 ..............................................................................
 
 PDAL uses GDAL for spatial reference system description manipulation, and image
 reading supporting for the NITF driver, and :ref:`writers.oci` support. In
 conjunction with GeoTIFF_, GDAL is used to convert GeoTIFF keys and OGC WKT SRS
-description strings into formats required by specific drivers. While PDAL can
-be built without GDAL support, if you want SRS manipulation and description
-ability, you must have GDAL (and GeoTIFF_) linked in at compile time.
-
-Obtain `GDAL`_ via whatever method is convenient.  Linux platforms such as
-`Debian`_ have `DebianGIS`_, Mac OS X has the `KyngChaos`_ software frameworks,
-and Windows has the `Conda Forge`_ platform.
-
-* GDAL 2.2+ is required.
+description strings into formats required by specific drivers.  ::
 
+    Source: https://github.com/OSGeo/gdal
+    Conda: https://anaconda.org/conda-forge/gdal
 
-GeoTIFF
+GeoTIFF (1.3+)
 ..............................................................................
 
 PDAL uses GeoTIFF in conjunction with GDAL for GeoTIFF key support in the
-LAS driver.  Obtain `GeoTIFF`_ from the same place you got `GDAL`_.
+LAS driver.  GeoTIFF is typically a dependency of GDAL, so installing GDAL
+from a package will generally install GeoTIFF as well. ::
 
-* libgeotiff 1.3.0+ is required
+    Source: https://github.com/OSGeo/libgeotiff
+    Conda: https://anaconda.org/conda-forge/geotiff
 
 .. note::
     `GDAL` surreptitiously embeds a copy of `GeoTIFF`_ in its library build
@@ -53,33 +48,49 @@ LAS driver.  Obtain `GeoTIFF`_ from the same place you got `GDAL`_.
     those using that platform to link and build PDAL themselves, do
     not need to worry about this issue.
 
-Proj.4
+Optional Dependencies
+------------------------------------------------------------------------------
+
+LASzip (Latest package/source recommended)
 ..............................................................................
 
-Proj.4_ is the projection engine that PDAL uses for the
-:ref:`filters.reprojection` filter. It is used by GDAL.
+`LASzip`_ is a library with a `CMake`-based build system that
+provides periodic compression of `ASPRS LAS`_ data. It is used by the
+:ref:`writers.las` and :ref:`readers.las` to provide
+compressed LAS support.::
 
-.. note::
+    Source: https://github.com/LASzip/LASzip
+    Conda: https://anaconda.org/conda-forge/laszip
 
-    Proj.4 4.9.0+ is required if you need vertical datum
-    transformation support. Otherwise, older versions should be
-    sufficient.
+laz-perf (Latest package/source recommended)
+..............................................................................
 
-Optional Dependencies
-------------------------------------------------------------------------------
+laz-perf provides an alternative LAS compression/decompression engine that
+may be slightly faster in some circumstances.  laz-perf supports fewer LAS
+point types and versions than does LASzip.  It is also used as a
+compression type for :ref:`writers.oci` and :ref:`writers.sqlite`::
 
-libxml2
+    Source: https://github.com/verma/laz-perf/
+    Conda: https://anaconda.org/conda-forge/laz-perf
+
+libxml2  (2.7+)
 ..............................................................................
 
 libxml2_ is used to serialize PDAL dimension descriptions into XML for the
 database drivers such as :ref:`writers.oci`, :ref:`readers.sqlite`, or
-:ref:`readers.pgpointcloud`
+:ref:`readers.pgpointcloud`.::
 
-.. note::
+    Source: http://www.xmlsoft.org/
+    Conda: https://anaconda.org/conda-forge/libxml2
 
-    libxml 2.7.0+ is required. Older versions may also work but are untested.
+Plugin Dependencies
+------------------------------------------------------------------------------
+
+PDAL comes with optional plugin stages that require other libraries in order
+to run.  Many of these libraries are licensed in a way incompatible with
+the PDAL license or they may be commercial products that require purchase.
 
-`OCI`_
+OCI (10g+)
 ..............................................................................
 
 Obtain the `Oracle Instant Client`_ and install in a location on your system.
@@ -87,82 +98,41 @@ Be sure to install both the "Basic" and the "SDK" modules. Set your
 ``ORACLE_HOME`` environment variable system- or user-wide to point to this
 location so the CMake configuration can find your install. OCI is used by
 both :ref:`writers.oci` and :ref:`readers.oci` for Oracle
-Point Cloud read/write support.
-
-.. warning::
-    `OCI`_'s libraries are inconsistently named.  You may need to create
-    symbolic links for some library names in order for the `CMake`_ to find
-    them::
-
-        cd $ORACLE_HOME
-        ln -s libocci.so.11.1 libocci.so
-        ln -s libclntsh.so.11.1 libclntsh.so
-        ln -s libociei.so.11.1 libociei.so
+Point Cloud read/write support.  In order to obtain the OCI libraries
+you must register with Oracle.::
 
-* OCI 10g+ is required.
+    Libraries: https://www.oracle.com/technetwork/database/database-technologies/instant-client/downloads/index.html
 
-.. note::
-    MSVC should only require the oci.lib and oci.dll library and dlls.
-
-Nitro
+Nitro (Requires specific source package)
 ..............................................................................
 
 Nitro is a library that provides `NITF`_ support for PDAL to write LAS-in-NITF
-files for :ref:`writers.nitf`. PDAL can only use a fork of Nitro located at
-http://github.com/hobu/nitro instead of the mainline tree for two reasons:
-
-1) The fork contains a simple `CMake`-based build system
-2) The fork properly dynamically links on Windows to maintain LGPL compliance.
-
-It is expected that the fork will go away once these items are incorporated into
-the main source tree.
-
-
-LASzip
-..............................................................................
-
-`LASzip`_ is a library with a simple `CMake`-based build system that
-provides periodic compression of `ASPRS LAS`_ data. It is used by the
-:ref:`writers.las` and :ref:`readers.las` to provide
-compressed LAS support.
-
-laz-perf
-..............................................................................
+files for :ref:`writers.nitf`.  You must use the specific version of Nitro
+referenced below for licensing and compatibility reasons.::
 
-In addition to `LASzip`_, you can use the alternative `laz-perf`_ library.
-`laz-perf`_ provides slightly faster decompression capability for typical
-LAS files. It is also used as a compression type for :ref:`writers.oci` and
-:ref:`writers.sqlite`
+    Source: http://github.com/hobu/nitro
 
-.. _`laz-perf`: https://github.com/verma/laz-perf/
-
-PCL
+PCL  (1.7.2+)
 ..............................................................................
 
 The `Point Cloud Library (PCL)`_ is used by the :ref:`pcl_command`,
 :ref:`writers.pcd`, :ref:`readers.pcd`, and :ref:`filters.pclblock` to provide
-support for various PCL-related operations.
+support for various PCL-related operations.::
 
-PCL must be 1.7.2+. We do our best to keep this up-to-date with PCL master.
+    Source: https://github.com/PointCloudLibrary/pcl
+    Conda: https://anaconda.org/conda-forge/pcl
 
-.. note::
-    `Homebrew`_-based OSX builds use PCL 1.7.2, but you may need to switch
-    off `VTK`_ support depending on the configuration.
-
-TileDB
+TileDB  (1.4.1+)
 ..............................................................................
 
 `TileDB`_ is an efficient multi-dimensional array management system which
 introduces a novel on-disk format that can effectively store dense and sparse
 array data with support for fast updates and reads. It features excellent
 compression, and an efficient parallel I/O system with high scalability. It is
-used by :ref:`writers.tiledb` and :ref:`readers.tiledb`.
-
-.. note::
-    `TileDB`_ must be 1.4.1+.
+used by :ref:`writers.tiledb` and :ref:`readers.tiledb`.::
 
-.. _`Homebrew`: http://brew.sh
-.. _`VTK`: http://vtk.org
+    Source: https://github.com/TileDB-Inc/TileDB
+    Conda: https://anaconda.org/conda-forge/tiledb
 
 .. _`ASPRS LAS`: http://www.asprs.org/Committee-General/LASer-LAS-File-Format-Exchange-Activities.html
 .. _`LASzip`: http://laszip.org
@@ -174,15 +144,11 @@ used by :ref:`writers.tiledb` and :ref:`readers.tiledb`.
 .. _`Oracle Point Cloud`: http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28400/sdo_pc_pkg_ref.htm
 .. _`DebianGIS`: http://wiki.debian.org/DebianGis
 .. _`Debian`: http://www.debian.org
-.. _`KyngChaos`: http://www.kyngchaos.com/software/unixport
 .. _`Conda Forge`: https://anaconda.org/conda-forge/pdal
 
 .. _GDAL: http://www.gdal.org
-.. _Proj.4: http://trac.osgeo.org/proj
 .. _GeoTIFF: http://trac.osgeo.org/geotiff
 .. _libxml2: http://xmlsoft.org
 .. _CMake: http://www.cmake.org
-.. _`libpq`: http://www.postgresql.org/docs/9.3/static/libpq.html
-
 .. _`Point Cloud Library (PCL)`: http://pointclouds.org
 .. _`TileDB`: https://www.tiledb.io


=====================================
doc/development/compilation/index.rst
=====================================
@@ -4,9 +4,8 @@
 Compilation
 ******************************************************************************
 
-This section describes how to build and install PDAL under Windows, Linux, and Mac.
-PDAL's numerous :ref:`dependencies` can make it a challenge to build a fully-featured
-build.
+This section describes how to build and install PDAL under Windows, Linux,
+and Mac.
 
 .. seealso::
     :ref:`download` contains links to installable binaries for Windows, OSX, and


=====================================
doc/development/compilation/unix.rst
=====================================
@@ -4,308 +4,204 @@
 Unix Compilation
 ******************************************************************************
 
-:Author: Howard Butler
-:Contact: howard at hobu.co
-:Date: 10/27/2015
-
-`CMake`_ 2.8.11+ is the prescribed tool for building from source, with `CMake`_
-3.0+ being desired. `CMake`_ is a cross-platform build system that provides a
-number of benefits, and its usage ensures a single, up-to-date build system for
-all PDAL-supported operating systems and compiler platforms.
-
-Like a combination of autoconf/autotools, except that it works on Windows with
-minimal eye-stabbing pain, `CMake`_ is somewhat of a meta-building tool. It can
-be used to generate MSVC project files, GNU Makefiles, NMake files for MSVC,
-XCode projects on Mac OS X, and Eclipse projects (as well as many others).
-This functionality allows the PDAL project to avoid maintaining these build
-options by hand and target a single configuration and build platform.
-
-This tutorial will describe how to build PDAL using CMake on a Unix platform.
-PDAL is known to compile on Linux 2.6's of various flavors and OSX with XCode.
-
-.. note::
-
-    :ref:`dependencies` contains more information about specific library
-    version requirements and notes about building or acquiring them.
-
-Using "Unix Makefiles" on Linux
-..............................................................................
-
-Get the source code
+PDAL comes with support for building with `CMake`_.  PDAL requires at
+least version 3.5 of CMake.
+CMake is a cross-platform meta-build system that provides a unified system
+for building applications on multiple platforms with various build tools.
+CMake has `generators`_ for many build tools, though PDAL has been tested
+only with `Ninja`_ and `GNU Makefiles`_ on Unix/OSX.  Ninja builds PDAL faster,
+so the following instructions use that build tool, though building with
+GNU Makefiles works similarly (simply replace "ninja" with "make" when
+running the build tool).
+
+.. _`generators`: https://cmake.org/cmake/help/v3.5/manual/cmake-generators.7.html
+.. _`Ninja`: https://ninja-build.org/
+.. _`GNU Makefiles`: https://www.gnu.org/software/make/manual/make.html
+
+Dependencies
 ------------------------------------------------------------------------------
 
-See :ref:`source` for how to obtain the latest development version or visit
-:ref:`download` to get the latest released version.
-
-Prepare a build directory
-------------------------------------------------------------------------------
-
-CMake allows you to generate different builders for a project, and in this
-example, we are going to generate a "Unix Makefiles" builder
-for PDAL on Mac OS X.
+Building PDAL successfully depends on having other libraries configured
+and installed.  These :ref:`dependencies <dependencies>` can be built
+from source or
+can be installed via a packaging system (`apt`_ works well on Ubuntu and
+Debian-based Linux systems. `Conda`_ works well on most systems.  Some have
+had success with `brew`_ on OSX systems.)
+Often, the only package that
+needs to be installed prior to building PDAL is GDAL.  Installing a GDAL
+package will normally install other PDAL dependencies automatically.
 
 ::
 
-    $ cd PDAL
-    $ mkdir makefiles
-    $ cd makefiles
+    $ apt install libgdal-dev
 
-Configure base library
-------------------------------------------------------------------------------
+    OR
 
-Configure the basic core library for the "Unix Makefiles" target:
+    $ conda install gdal
 
-::
-
-    $ cmake -G "Unix Makefiles" ../
-    -- The C compiler identification is GNU
-    -- The CXX compiler identification is GNU
-    -- Checking whether C compiler has -isysroot
-    -- Checking whether C compiler has -isysroot - yes
-    -- Check for working C compiler: /usr/bin/gcc
-    -- Check for working C compiler: /usr/bin/gcc -- works
-    -- Detecting C compiler ABI info
-    -- Detecting C compiler ABI info - done
-    -- Checking whether CXX compiler has -isysroot
-    -- Checking whether CXX compiler has -isysroot - yes
-    -- Check for working CXX compiler: /usr/bin/c++
-    -- Check for working CXX compiler: /usr/bin/c++ -- works
-    -- Detecting CXX compiler ABI info
-    -- Detecting CXX compiler ABI info - done
-    -- Enable PDAL utilities to build - done
-    -- Configuring done
-    -- Generating done
-    -- Build files have been written to: /Users/hobu/dev/git/PDAL-cmake/makefiles
+    OR
 
+    $ brew install gdal
 
-.. note::
+.. _`apt`: https://help.ubuntu.com/lts/serverguide/apt.html
+.. _`Conda`: https://conda.io/en/latest/
+.. _`brew`: https://brew.sh/
 
-    The ``./cmake/examples/hobu-config.sh`` shell script contains a number of common
-    settings that I use to configure my `Homebrew`-based Macintosh
-    system.
-
-.. _`Homebrew`: http://brew.sh/
-
-Issue the `make` command
-------------------------------------------------------------------------------
-
-This will build a base build of the library, with no extra libraries being
-configured.
-
-
-.. _make_install:
-
-Run ``make install`` and test your installation with a :ref:`pdal_test` command
--------------------------------------------------------------------------------
-
-``make install`` will install the :ref:`utilities <apps>` in the location that
-was specified for 'CMAKE_INSTALL_PREFIX'.  Once installed, ensure that you can
-run `pdal info`.
-
-
-.. _configure_optional_libraries:
-
-Configure your :ref:`Optional Libraries <dependencies>`.
+Using Ninja on Linux or OSX
 ------------------------------------------------------------------------------
 
-By checking the "on" button for each, CMake may find your installations of
-these libraries, but in case it does not, set the following variables,
-substituting accordingly, to values that match your system layout.
-
-.. csv-table::
-
-    "`GDAL`_","GDAL_CONFIG", "/usr/local/bin/gdal-config"
-    "","GDAL_INCLUDE_DIR", "/usr/local/include"
-    "","GDAL_LIBRARY", "/usr/local/lib/libgdal.so"
-    "`GeoTIFF`_","GEOTIFF_INCLUDE_DIR","/usr/local/include"
-    "","GEOTIFF_LIBRARY","/usr/local/lib/libgeotiff.so"
-    "`OCI`_","ORACLE_INCLUDE_DIR","/home/oracle/sdk/include"
-    "","ORACLE_NNZ_LIBRARY","/home/oracle/libnnz10.so"
-    "","ORACLE_OCCI_LIBRARY","/home/oracle/libocci.so"
-    "","ORACLE_OCIEI_LIBRARY","/home/oracle/libociei.so"
-    "","ORACLE_OCI_LIBRARY","/home/oracle/libclntsh.so"
-
-.. _GDAL: http://www.gdal.org
-.. _Proj.4: http://trac.osgeo.org/proj
-.. _GeoTIFF: http://trac.osgeo.org/geotiff
-.. _libxml2: http://xmlsoft.org
-.. _`OCI`: http://www.oracle.com/technology/tech/oci/index.html
-.. _`Oracle Instant Client`: http://www.oracle.com/technology/tech/oci/instantclient/index.html
-.. _`Oracle Point Cloud`: http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28400/sdo_pc_pkg_ref.htm
-.. _`DebianGIS`: http://wiki.debian.org/DebianGis
-.. _`Debian`: http://www.debian.org
-.. _`KyngChaos`: http://www.kyngchaos.com/software/unixport
-
-
-CCMake and cmake-gui
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. warning::
-
-    The following was just swiped from the libLAS compilation document
-    and it has not been updated for PDAL. The basics should be the same, however.
-    Please ask on the :ref:`mailing list<community>` if you run into any issues.
-
-While `CMake`_ can be run from the command-line, and this is the preferred
-way for many individuals, it can be much easier to run CMake from a GUI.
-Now that we have a basic library building, we will use CMake's GUIs to
-help us configure the rest of the optional components of the library. Run
-``ccmake ../`` for the `Curses`_ interface or ``cmake-gui ../`` for a GUI
-version.
-
-
-.. figure:: media/ccmake-osx-start.png
-    :alt: Running CCMake in OS X
-
-    Running the `Curses`_ `CMake`_ interface.  This interface is available to
-    all unix-like operating systems.
-
-.. note::
-
-    If your arrow keys are not working with in CCMake, use CTRL-N and
-    CTRL-P to move back and forth between the options.
-
-.. figure:: media/cmake-gui-osx-start.png
-    :alt: Running cmake-gui in OS X
+Get the source code
+..............................................................................
 
-    Running the cmake-gui `CMake`_ interface.  This interface is available
-    on Linux, Windows, and Mac OS X.
+PDAL can be cloned from :ref:`GitHub <source>` or you can download a
+:ref:`release bundle <download>`
 
-Build and install
-------------------------------------------------------------------------------
-
-Once you have configured your additional libraries, you can install the
-software.  The main pieces that will be installed are:
+Prepare a build directory
+..............................................................................
 
-* PDAL headers (typically in a location ./include/pdal/...)
-* PDAL C++ (PDAL.a or PDAL.so) library
-* PDAL C (PDAL_c.a or PDAL_c.so) library
-* :ref:`Utility <apps>` programs
+CMake allows you to generate different builders for a project.  Here we're
+using Mac OSX, but the procedure and output are nearly identical on Linux
+distributions.
 
 ::
 
-    make install
+    $ cd PDAL
+    $ mkdir build
+    $ cd build
 
-Using "XCode" on OS X
+Run CMake
 ..............................................................................
 
+Running CMake uses the specified generator to create
+an environment suitable for building PDAL with the requested tool.
+(Ninja in this case).
 
-Get the source code
-------------------------------------------------------------------------------
+::
 
-See :ref:`source` for how to obtain the latest development version or visit
-:ref:`download` to get the latest released version.
+    $ cmake -G Ninja ..
+    -- Could NOT find JSONCPP (missing: JSONCPP_LIBRARY JSONCPP_INCLUDE_DIR) (Required is at least version "1.6.2")
+    -- Numpy output: /usr/lib/python2.7/dist-packages/numpy/core/include
+    1.13.3
 
-Prepare a build directory
-------------------------------------------------------------------------------
+    -- Could NOT find LIBEXECINFO (missing: LIBEXECINFO_LIBRARY)
+    -- Could NOT find LIBUNWIND (missing: LIBUNWIND_LIBRARY LIBUNWIND_INCLUDE_DIR)
+    -- The following features have been enabled:
 
-CMake allows you to generate different builders for a project, and in this
-example, we are going to generate an "Xcode" builder for PDAL on Mac OS X.
-Additionally, we're going to use an alternative compiler -- `LLVM`_ -- which
-under certain situations can produce much faster code on Mac OS X.
+     * PostgreSQL PointCloud plugin, read/write PostgreSQL PointCloud objects
+     * Python plugin, add features that depend on python
+     * Unit tests, PDAL unit tests
 
-::
+    -- The following OPTIONAL packages have been found:
 
-    $ export CC=/usr/bin/llvm-gcc
-    $ export CXX=/usr/bin/llvm-g++
-    $ cd PDAL
-    $ mkdir xcode
-    $ cd xcode/
+     * PkgConfig
+     * LibXml2
+     * Curl
 
-Configure base library
-------------------------------------------------------------------------------
+    -- The following REQUIRED packages have been found:
 
-Configure the basic core library for the Xcode build:
+     * GDAL (required version >= 2.2.0)
+       Provides general purpose raster, vector, and reference system support
+    ...
+    -- The following RECOMMENDED packages have not been found:
 
-::
+     * LASzip (required version >= 3.1)
+       Provides LASzip compression
 
-    $ cmake -G "Xcode" ..
-    -- The C compiler identification is GNU
-    -- The CXX compiler identification is GNU
-    -- Checking whether C compiler has -isysroot
-    -- Checking whether C compiler has -isysroot - yes
-    -- Check for working C compiler: /usr/bin/llvm-gcc
-    -- Check for working C compiler: /usr/bin/llvm-gcc -- works
-    -- Detecting C compiler ABI info
-    -- Detecting C compiler ABI info - done
-    -- Checking whether CXX compiler has -isysroot
-    -- Checking whether CXX compiler has -isysroot - yes
-    -- Check for working CXX compiler: /usr/bin/llvm-g++
-    -- Check for working CXX compiler: /usr/bin/llvm-g++ -- works
-    -- Detecting CXX compiler ABI info
-    -- Detecting CXX compiler ABI info - done
-    -- Enable PDAL utilities to build - done
-    -- Enable PDAL unit tests to build - done
     -- Configuring done
     -- Generating done
-    -- Build files have been written to: /Users/hobu/hg/PDAL-cmake/xcode
+    -- Build files have been written to: /home/foo/pdal/build
 
+Issue the `ninja` command
+..............................................................................
 
-Alternatively, if you have `KyngChaos`_ frameworks for `GDAL`_ and `GeoTIFF`_
-installed, you can provide locations for those as part of your ``cmake``
-invocation:
+If cmake runs to completion (reports that build files have been written),
+you can run Ninja to build PDAL.
 
 ::
 
-    $ cmake -G "Xcode" \
-      -D GDAL_CONFIG=/Library/Frameworks/GDAL.framework/Programs/gdal-config \
-      -D GEOTIFF_INCLUDE_DIR=/Library/Frameworks/UnixImageIO.framework/unix/include \
-      -D GEOTIFF_LIBRARY=/Library/Frameworks/UnixImageIO.framework/unix/lib/libgeotiff.dylib \
-      ..
+    $ ninja
 
-.. note::
-
-    I recommend that you use in `Homebrew`_ for `GDAL`_ and friends. Its configuration
-    is featureful and up-to-date.
+If no errors are reported, Ninja will have created the ``pdal`` program
+in the ``bin`` directory.  A set of necessary support libraries will have
+been created in the ``lib`` directory.
 
 ::
 
-    $ open PDAL.xcodeproj/
-
-.. figure:: media/xcode-start.png
-    :alt: Building PDAL using the XCode project
-
-Set default command for XCode
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Set the default executable for the project to be ``lasinfo`` by opening the
-"Executables" tree, choosing "lasinfo," and clicking the bubble next to
-the "Executable name" in the right-hand panel.
+    $ ls bin/pdal
+    bin/pdal
 
-.. figure:: media/xcode-set-default-executable.png
-    :alt: Setting the default executable
-
-Set arguments for :ref:`pdal_test`
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Set the arguments for :ref:`pdal_test` so it can be run from within XCode. We
-use the ${PROJECT_DIR} environment variable to be able to tell pdal_test the
-location of our test file. This is similar to the :ref:`same command
-<make_install>` above in the "Unix Makefiles" section.
-
-.. figure:: media/xcode-lasinfo-arguments.png
-    :alt: Setting the arguments for lasinfo
+    $ ls lib/libpdalcpp*
+    lib/libpdalcpp.8.dylib
+    lib/libpdalcpp.dylib
+    lib/libpdalcpp.9.0.0.dylib
 
+Checking the build and running PDAL tests
+..............................................................................
 
+You can quickly check that PDAL has built properly by running the `pdal info`
+command.
 
-Configure :ref:`Optional Libraries <dependencies>`
-------------------------------------------------------------------------------
+::
 
-As :ref:`before <configure_optional_libraries>`, use ``ccmake ../`` or ``cmake-gui ../`` to
-configure your :ref:`dependencies`.
+    $ bin/pdal info ../test/data/las/autzen_trim.las
+    {
+      "filename": "../test/data/las/autzen_trim.las",
+      "pdal_version": "1.8.0 (git-version: c39e62)",
+      "stats":
+      {
+        "bbox":
+        {
+          "EPSG:4326":
+          {
+            "bbox":
+            {
+              "maxx": -123.0689038,
+              "maxy": 44.0515451,
+              "maxz": 158.651448,
+              "minx": -123.0734481,
+              "miny": 44.04990077,
+              "minz": 123.828048
+            },
+    ...
+
+CMake will normally build a set of tests that can be used to verify that PDAL
+executes most functions properly.  You can run these tests yourself if
+desired, though it's not typically necessary.
 
+::
 
-.. figure:: media/cmake-gui-osx-configured.png
-    :alt: Configuring optional libraries with CMake GUI
+    $ ctest
+    Test project /Users/foo/pdal.master/build
+          Start  1: pdal_filters_pcl_block_test
+     1/97 Test  #1: pdal_filters_pcl_block_test ............   Passed    0.23 sec
+          Start  2: pdal_filters_icp_test
+     2/97 Test  #2: pdal_filters_icp_test ..................   Passed    0.12 sec
+          Start  3: pdal_filters_python_test
+     3/97 Test  #3: pdal_filters_python_test ...............   Passed    3.52 sec
+          Start  4: pdal_io_numpy_test
+     4/97 Test  #4: pdal_io_numpy_test .....................   Passed    0.31 sec
+      ...
+    93/96 Test #93: pdal_io_ilvis2_metadata_test ...........   Passed    0.03 sec
+          Start 94: pdal_io_ilvis2_reader_metadata_test
+    94/96 Test #94: pdal_io_ilvis2_reader_metadata_test ....   Passed    0.05 sec
+          Start 95: xml_schema_test
+    95/96 Test #95: xml_schema_test ........................   Passed    0.04 sec
+          Start 96: pdal_io_ilvis2_test
+    96/96 Test #96: pdal_io_ilvis2_test ....................   Passed    0.04 sec
+
+    100% tests passed, 0 tests failed out of 96
+
+    Total Test time (real) =  39.54 sec
+
+Failed tests may not indicate problems other than a lack of support for some
+feature on your system.  For example, tests for database drivers will fail if
+the database isn't installed or configured properly.
+
+Install PDAL
+..............................................................................
 
+PDAL can be installed to the default location (usually subdirectories of
+/usr/local) using Ninja.
 
-.. _`CMake`: http://www.cmake.org/
-.. _`CTest`: http://cmake.org/cmake/help/ctest-2-8-docs.html
-.. _`CMake 2.8.0+`: http://www.cmake.org/cmake/help/cmake-2-8-docs.html
-.. _`CDash`: http://www.cdash.org/
-.. _`continuous integration`: http://en.wikipedia.org/wiki/Continuous_integration
-.. _`PDAL CDash`: http://my.cdash.org/index.php?project=PDAL
-.. _`Curses`: http://en.wikipedia.org/wiki/Curses_%28programming_library%29
-.. _`Autoconf`: http://www.gnu.org/software/autoconf/
-.. _`LLVM`: http://llvm.org/
+::
 


=====================================
doc/development/metadata.rst
=====================================
@@ -19,7 +19,7 @@ the JSON-formatted metadata created by PDAL to be written to a file.
 Metadata Nodes
 ------------------------------------------------------------------------------
 
-Each item of metadata is stored in an object known as a MetadataNode.
+Each item of metadata is stored in an object known as a ``MetadataNode``.
 Metadata nodes are reference types that can be copied cheaply.  Metadata nodes
 are annotated with the original data type to allow better interpretation of
 the data.


=====================================
doc/development/release-notes/1.9.0.md
=====================================
@@ -1,4 +1,21 @@
+# Changes of Note
+
+- PDAL now requires at least version 2.2 of GDAL.
+- Pipelines can optionally be specified as an array of stages (without an encapsulating "pipeline" object).
+- The location of installed cmake files has been changed to match the cmake convention.
+- `filters.delaunay` now uses the delaunator library instead of geogram.
+- PDAL no longer depends on the GEOS library. However, some polygon functions will not work if PDAL isn't built with a version of the GDAL library that has GEOS support.
+- PDAL now uses the standard cmake script to locate the necessary GDAL files when building.
+- `readers.sbet` now reads angles as degrees rather than radians. (#2354)
+- The `tindex` command now requires one of the subcommands `create` or `merge`.  It no longer accepts the `merge` option, which has been replaced by the `merge` subcommand.
+- The argument for the function `PipelineManager::executeStream` is now of type `StreamPointTable&` instead of `FixedPointTable&`.
+
+# Enhancements
 
+- All readers now accept the `default_srs` and `override_srs` options.  `override_srs` is an alias for the existing `spatialreference` option.  `default_srs` applies only if no spatial reference exists in the source file. (#2194, #2195)
+- Added some dimension detection capability to `readers.pts`. (#2317)
+- Hardened API use of LASzip in `writers.las` for points with data format 6 and above and set the extended_point_type variable. (#2320, #2329)
+-
 # Changes of Note
 
 - PDAL now requires at least version 2.2 of GDAL.
@@ -15,6 +32,7 @@
 
 - All readers now accept the `default_srs` and `override_srs` options.  `override_srs` is an alias for the existing `spatialreference` option.  `default_srs` applies only if no spatial reference exists in the source file. (#2194, #2195)
 - Added some dimension detection capability to `readers.pts`. (#2317)
+- The build system now has enhanced conflict detection of mixed python 2/3 installations.  Make sure that you have header files/libraries/interpreter/numpy support for either python 2 or python 3.
 - Hardened API use of LASzip in `writers.las` for points with data format 6 and above and set the extended_point_type variable. (#2320, #2329)
 - Support the `libgeotiff` path suffix when searching for the geotiff library with cmake.
 - Added a `resolution` option to `readers.ept` to limit the number of points read. (#2331)
@@ -49,3 +67,37 @@
 - Points in buffer corners are now properly placed in tiles in `filters.splitter`. (#2372)
 - Fixed reference counting in `filters.python` that might have caused a crash in some circumstances.
 - Generalized the python library re-loaded by PDAL when being used as a python extension.  This is only relevant on some Unix distributions.
+- Support the `libgeotiff` path suffix when searching for the geotiff library with cmake.
+- Added a `resolution` option to `readers.ept` to limit the number of points read. (#2331)
+- `readers.rxp` now supports stream mode.
+- Added the `invert` option to `filters.head` and `filters.tail`.
+- Added support for subcommands in kernels. (#2293)
+- Fixed a bug in `writers.gdal` that might access invalid memory in some situations. (#2448)
+
+# New stages
+
+- `filters.mongo` - Filtering of points using the mongo expression language.
+- `readers.tiledb` - Reads points from the tileDB database.
+- `writers.tiledb` - Writes points to the tileDB database.
+- `writers.ept_addon` - Adds sidecar data to an existing EPT dataset.
+
+# Deprecated stages
+
+- `filters.kdistance` - Replaced by `filters.nndistance`.  `filters.kdistance` will be removed in the next PDAL release.
+- `filters.mongus` - Replaces by `filters.pmf` and `filters.smrf`
+
+# Bug fixes
+
+- The tindex command now uses sufficient precision when using the `fast_boundary` option (#2271)
+- `filters.smrf` and `filters.pmf` now process all points if the `NumberOfReturns` or `ReturnNumber` dimension is missing.  This fixes a regression introduced with PDAL 1.8. (#2275)
+- The density command is now found by pdal.  This fixes a regression introduced with PDAL 1.8. (#2378)
+- The `scale=auto` and `offset=auto` options now work with `writers.bpf` in stream mode. (#1983)
+- Pipelines with diamond shapes now properly re-execute ancestor stages.  This fixes a regression introduced with PDAL 1.8. (#2290)
+- `filters.crop` now uses the correct logic when the `outside` option is used in standard mode. (#2305)
+- A bug in `writers.gdal` with streaming mode that caused an improper location shift in some instances has been fixed. (#2292)
+- Added an explicit dependency on the arbiter library for curl.  This fixes build issues on some Unix platforms. (#1822)
+- Fixed a bug in `filters.icp` introduced by a change in PCL (see: https://github.com/PointCloudLibrary/pcl/issues/2724) that improperly removed a function call. (#2319)
+- `readers.tindex` now provides a default of "EPSG:4326" for the `filter_srs` option.  (#2316)
+- Points in buffer corners are now properly placed in tiles in `filters.splitter`. (#2372)
+- Fixed reference counting in `filters.python` that might have caused a crash in some circumstances.
+- Generalized the python library re-loaded by PDAL when being used as a python extension.  This is only relevant on some Unix distributions.


=====================================
doc/download.rst
=====================================
@@ -48,7 +48,7 @@ command
 
 ::
 
-    git clone https://github.com/PDAL/PDAL.git pdal
+    git clone https://github.com/PDAL/PDAL.git
 
 
 Binaries


=====================================
pdal/GDALUtils.hpp
=====================================
@@ -487,7 +487,7 @@ private:
             int partialRowElts = m_xBlockSize * x;
 
             auto si = sourceBegin + (wholeRowElts + partialRowElts);
-            std::transform(si, si + m_xBlockSize, di,
+            std::transform(si, si + xWidth, di,
                 [srcNoData, dstNoData](ITER_VAL<SOURCE_ITER> s){
                     T t;
 


=====================================
scripts/conda/osx.sh
=====================================
@@ -50,6 +50,8 @@ cd $BUILDDIR
 CC=$CC CXX=$CXX cmake   -G "$CONFIG"  \
         -DCMAKE_LIBRARY_PATH:FILEPATH="$CONDA_PREFIX/lib" \
         -DCMAKE_INCLUDE_PATH:FILEPATH="$CONDA_PREFIX/include" \
+        -DPython3_ROOT_DIR:FILEPATH="$CONDA_PREFIX" \
+        -DCMAKE_FIND_FRAMEWORK="NEVER" \
         -DCMAKE_BUILD_TYPE=Debug \
         -DCMAKE_INSTALL_PREFIX=${CONDA_PREFIX} \
         -DBUILD_PLUGIN_SQLITE=ON \



View it on GitLab: https://salsa.debian.org/debian-gis-team/pdal/commit/4dc2836bf5461d665e4547d6eddb710c3614c5ca

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/pdal/commit/4dc2836bf5461d665e4547d6eddb710c3614c5ca
You're receiving this email because of your account on salsa.debian.org.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20190409/10859ed6/attachment-0001.html>


More information about the Pkg-grass-devel mailing list