-
Notifications
You must be signed in to change notification settings - Fork 294
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
PROJ6 and GDAL 2.5 are coming #988
Comments
affecting both sf and rgdal:
|
How do I trigger a test run, from R-Forge? If I commit to R-Forge, can this CI see it? I'll be going with |
That seems like the best short term fix. I used this Dockerfile. I find developing with travis or appveyor as the test platform a pain. |
rgdal committed to R-Forge passing check on PROJ 6.0.0 and GDAL 2.4.0 built against PROJ 6.0.0. sf is stuck for me at:
which may mean that you need to look at how rgdal detects `proj_api.h the clunky way (own code, not autoconf's code) after setting the define. The file is in the declared location, but it barfs if the define is not set:
|
Yes, PR coming I hope, but same list problems as referenced in OSGeo/PROJ#1306. |
I can confirm rgdal now compiles with PROJ6. |
#1000 and r-spatial/lwgeom#41 made. Needed to bootstrap sf without vignettes, install lwgeom, then build sf and re-install. Haven't fixed lwgeom fully, didn't try to install on PROJ < 6, so maybe missed stuff. |
Congrats on hitting #1000! |
Markus Metz reports on https://lists.osgeo.org/pipermail/grass-dev/2019-March/091539.html Regarding parsing the traditional PROJ init files, I looked at pj_init.c in |
now switched on with the -DPROJH flag in src/Makevars.in, no auto-detect
I created a new branch,
indicating that the new PROJ doesn't like the This branch hard-codes
|
Does PostGIS use EPSG codes first, rather than using proj4 strings? Can we learn anything from them or GRASS? |
PostGIS has its own
working with epsg codes through GDAL seems to work, only the I haven't looked into |
... and the GDAL master IIRC uses PROJ6, so I think must have code to bridge files using proj4 strings. The +init=epsg:# must have raised attention, though in doing the listings in rgdal/src/proj_info6.cpp |
Given support for
|
My safety-first approach for rgdal will be to add a configure flag with-proj-api, defaults "yes" if version < 6, but can be "yes" or "no" if major version == 6 to make checking for changes of behaviour easier. sf may be more adventurous ... |
but what will be the default? |
Now, "yes" where it still works in PROJ 6, (proj.h where it doesn't silently, that is as now) with no change to project(), transform(), etc. List someting like: RGDAL_GetProjectionRef(), RGDAL_checkCRSArgs(), ogrP4S(), p4s_to_wkt(), wkt_to_p4s(), ogrAutoIdentifyEPSG(), project_inv(), RGDAL_project(), transform(), ... So default "yes" until we know that we are backward-compatible with "no" in PROJ 6, and at that stage flip the default for PROJ 6? |
Can we tell whether GDAL was built with proj.h from within GDAL? Should we expect both upstream components to use the same headers? |
Not that I know of; I'm not sure why this would be needed. I suppose GDAL 2.5 will be proj.h only. |
Yes, so if need be check across with GDAL version. |
this seems to do the job: * has a --with-proj-api=no default, and --with-proj-api=yes option that only works if PROJ is 6 * still has all the proj_info kludge, now in a separte file * does the conditioning in ./configure
I may be able to help with the API change if you'd like. I'll be at the May OSGeo code sprint with other GDAL, PROJ, and PostGIS devs (others are welcome!) and could devote a day to it then. |
Testing against the master branch of GDAL, I now see (both with rgdal and sf)
which was to be expected, right? ("The dreaded ad hoc CSV databases in PROJ_LIB and GDAL_DATA are frustrating for users, pose challenges for developers, and impede interoperability of definitions.") |
With these changes, sf passes check in GDAL 2.5.0 (dev) and PROJ 6. For rgdal, see ac7e4ad#diff-67e997bcfdac55191033d57a16d1408a and this commit. Checking rgdal (after outcommenting the error msg when pcs.csv is missing) gives this
|
@dbaston that is a generous offer, and very very welcome! We're now clearly in "fixing" mode, but it is of course of high interest how also R should deal with e.g. the axis order (hell, or blessing?), reprojections depending on area, and the option (or need?) to use WKT2 rather than PROJ strings. Aligning this with where PostGIS is going sounds like a good idea. When and where is the code sprint? |
@edzer it's in Minneapolis, USA from May 14-17: https://wiki.osgeo.org/wiki/OSGeo_Community_Sprint_2019 |
I'll get back to this next week; I don't have GDAL master installed. |
@rsbivand did you look at this, or shall I do so? |
Please do it, I'm still butchering spdep. |
Please do it, I'm still butchering spdep. I'm following https://lists.osgeo.org/pipermail/proj/2019-April/008419.html with interest, PROJ 6.1 and |
Changes here: rgdal from r-forge now runs against GDAL 2.5.0 (dev), where pcs.csv is missing, with
|
OK, thanks! |
I ran into this as well, and I can confirm that the configure of the CRAN version (for R 3.5.3) of |
@dbaston are you at the OSGEO sprint? Any concrete plans for working on r-spatial / sf, or any need for inputs? |
Hi @edzer . Yes, I'm at the OSGeo sprint, likely focusing on GEOS for most of the week. Anything you're looking for in sf from the GEOS side? |
Maybe you know, or can ask: we now set |
Do you mean the geometry precision, i.e. as set with |
Yes, that one, except that sf doesn't use the GEOS function but uses its own, when converting R doubles to WKB. What are overlay functions? |
The overlay functions are union / intersection / difference / symdifference. Rounding the inputs can improve robustness, but we don't do it by default because it changes the user's inputs. It's more something that you try if the unrounded operation fails. |
OK, thanks - all clear! |
|
See also #545, the changes this time are much more far reaching, and also involve GDAL interfaces, potentially even axis swapping. This affects both
rgdal
andsf
. @rsbivand and I are pondering about submitting an R Consortium proposal that includes addressing this, and communicating the changes to R users.Links:
The text was updated successfully, but these errors were encountered: