[OSGeo-Announce] PROJ 7.0.0

Jorge Sanz jsanz at osgeo.org
Mon Mar 2 02:21:45 PST 2020

It is my pleasure to announce new releases of PROJ and related packages.

The major feature in PROJ 7 is significantly improved handling of gridded
models. This was implemented in RFC4 [0]. The main features of the RFC4
work is that PROJ now implements a new grid format, Geodetic TIFF grids,
for exchaning gridded transformation models. In addition to the new grid format,
PROJ can now also access grids online using a data store in the cloud.

The grids that was previously available via the proj-datumgrid packages are now
available in two places:

  1. The new PROJ-data package
  2. From the cloud via https://cdn.proj.org

The PROJ-data package includes all grids and other resources previously tracked
by the proj-datumgrid series of packages as well as some new grids.
All grids in the
PROJ-data package have been converted to the new Geodetic Tiff Grid (GTG)
format introduced in PROJ with RFC4. The advantages of the GTG format are

* Grids can contain more metadata than previous formats used by PROJ
* Grids are compressed, taking up significantly less space
* Cloud optimized, for easy on-the-fly access to grids online via
* Advanced gridded models previously consisting of several files can now be
  contained in one file

The data in the PROJ-data package is mirrored on https://cdn.proj.org/. A
network-enabled PROJ build can leverage the CDN and retrieve (parts of) grids as
specific transformations need them on the fly.

PROJ-data can only be used with PROJ 7.0.0 and newer.

Provided with PROJ is a utility called projsync that can be used download grids
from the data store in the cloud.

The use of the new grid format and the data from the cloud requires that
PROJ is build against libtiff and libcurl. Both are optional dependencies
to PROJ but it is highly encouraged that the software is build against both.

PROJ 7.0.0 and the accompanying PROJ-data package can be download here:



In addition the PROJ-data package the old proj-datumgrid series of packages
has also been updated, to extend the life-time of the PROJ 6.x branch a bit
longer. These will be the last updates to the proj-datumgrid packages. The
Updated packages can be downloaded here:




ATTENTION: PROJ 7 will be last major release version that includes the
header. The functionality in proj_api.h is deprecated and only supported in
maintenance mode. It is inferior to the functionality provided by functions
in the proj.h header and all projects still relying on proj_api.h are encouraged
to migrate to the new API in proj.h. See
for more info on how to migrate from the old to the new API.

[0] https://proj.org/community/rfc/rfc-4.html


Release notes

 o Added new file access API to proj.h #866

 o Updated the name of the most recent version of the WKT2 standard from
   WKT2_2018 to WKT2_2019 to reflect the proper name of the standard (#1585)

 o Improvements in transformations from/to WGS 84 (Gxxxx) realizations and
   vertical <--> geog transormations #1608

 o Update to version 1.50 of the geodesic library (#1629)

 o Promote proj_assign_context to proj.h from proj_experimental.h (#1630)

 o Add rotation support to the HEALPix projection (#1638)

 o Add c function proj_crs_create_bound_vertical_crs() (#1689)

 o Use Win32 Unicode APIs and expect all strings to be UTF-8 (#1765)

 o Improved name aliases lookup (#1827)

 o CMake: Employ better use of CTest with the BUILD_TESTING option (#1870)

 o Grid correction: fix handling grids spanning antimeridian (#1882)

 o Remove legacy CMake target name "proj" #1883

 o projinfo: add --searchpaths switch (#1892)

 o Add +proj=set operation to set component(s) of a coordinate to a fixed
   value (#1896)

 o Add EPSG records for 'Geocentric translation by Grid Interpolation (IGN)'
   (gr3df97a.txt) and map them to new +proj=xyzgridshift (#1897)

 o Remove 'null' grid file as it is now a special hardcoded case in grid
   code (#1898)

 o Add projsync utility (#1903)

 o Make PROJ the CMake project name #1910

 o Use relative directory to locate PROJ resource files (#1921)

 Bug fixes

 o Horizontal grid shift: fix failures on points slightly outside a
   subgrid (#209)

 o Fix ASAN issue with SQLite3VFS class (#1902)

 o tests: force use of bash for proj_add_test_script_sh (#1905)

 Breaking changes

 o Reject NTV2 files where GS_TYPE != SECONDS #1294

 o On Windows the name of the library is now fixed to ``proj.lib`` instead
   of encoding the version number in the library name (#1581)

 o Require C99 compiler (#1624)

 o Remove deprecated JNI bindings (#1825)

 o Remove -ld option from proj and cs2cs (#1844)

 o Increase CMake minimum version from 3.5 to 3.9 (#1907)

Kristian Evers

More information about the Announce mailing list