<div dir="ltr"><div dir="ltr">Hi Even,<div><br></div><div>Oh, I know nothing is super-easy and it takes non-trivial time to make these changes. And (I looked) there doesn't seem to be a good pending-deprecation/defaults-to-change list ready to go either, which is why those 3x were off the top of my head.</div><div><br></div><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I'd like GDAL 3.0 to be out soon. Most Linux distros can't ship PROJ 6 until <br>GDAL 3.0 is released, since PROJ 6 + libgeotiff 1.5 + GDAL 3.0 are kind of a <br>combo.</blockquote><br></div><div>Understood, makes sense. </div><div><br></div><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Nothing prevents us from deciding that 3.1dev will be released as 4.0</blockquote></div><div><br></div><div>User attention is finite though — see my reply to Jukka.</div><div><br></div><div>Anyway, I thought  it was worth bringing up :)</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I bet upgrading autotest for that will be painful (unless we use DontUseExceptions()). There might be impacts on GDAL python utilities that can recover from some errors by testing for None (I wouldn't necessarily trust autotest to uncover all those. Careful code review will be needed)</blockquote><div><br></div><div>Feels to me like for things we know are deprecated (ie. everyone should be using UseExceptions()) that the GDAL codebase + tests should use the common behaviour and only test the old way strictly for compatibility (not functionality).</div><div><br></div><div>Thanks,</div><div><br></div><div>Rob :)</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 8 May 2019 at 11:36, Even Rouault <<a href="mailto:even.rouault@spatialys.com">even.rouault@spatialys.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Robert,<br>
<br>
> 2. If we're bumping a major version, shouldn't we take that opportunity to<br>
> swap some other backwards-incompatible defaults rather than wait for<br>
> several more years to do it? Off the top of my head I'm thinking things<br>
> like:<br>
> <br>
>    - Python's UseExceptions() defaulting to true<br>
<br>
I bet upgrading autotest for that will be painful (unless we use <br>
DontUseExceptions()). There might be impacts on GDAL python utilities that can <br>
recover from some errors by testing for None (I wouldn't necessarily trust <br>
autotest to uncover all those. Careful code review will be needed)<br>
<br>
>    - Python's object lifecycle management (I guess in theory this can be<br>
>    fixed in a compatible way?)<br>
<br>
Unfortunately no. From my memories from many years ago when I looked at that <br>
(there must a patch attached to some Trac ticket), if you do currently<br>
<br>
ds = gdal.Create(filename, ..)<br>
band = ds.GetRasterBand(1)<br>
ds = None<br>
os.unlink(filename)<br>
<br>
that will succeed on Windows. If we fix reference counting, then the band <br>
object will still maintain the C++ GDALDataset object opened, and the unlink() <br>
will fail. This is/was a common pattern in autotest.<br>
<br>
>    - GeoJSON defaulting to 2008 instead of RFC7946<br>
>    - I'm sure there's a pile of others.<br>
> <br>
> Feels like 3.0 has been chosen for good reasons, but without stepping back<br>
> to go "what other longstanding warts do we want to address at 3.0?". I<br>
> don't know if there's a major rush on to get a release out in time for some<br>
> cutoff date? Otherwise I suggest we take an opportunity to step back and<br>
> swap some odd defaults that have been hanging around for years for<br>
> compatibility.<br>
<br>
I'd like GDAL 3.0 to be out soon. Most Linux distros can't ship PROJ 6 until <br>
GDAL 3.0 is released, since PROJ 6 + libgeotiff 1.5 + GDAL 3.0 are kind of a <br>
combo.<br>
<br>
Nothing prevents us from deciding that 3.1dev will be released as 4.0<br>
<br>
Even<br>
<br>
-- <br>
Spatialys - Geospatial professional services<br>
<a href="http://www.spatialys.com" rel="noreferrer" target="_blank">http://www.spatialys.com</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><span><font size="2" face="arial narrow, sans-serif"><p dir="ltr" style="line-height:1.38;margin-top:8pt;margin-bottom:0pt"><span style="color:rgb(51,51,51);white-space:pre-wrap;line-height:1.38">Chief Technology Officer
</span><span style="color:rgb(51,51,51);white-space:pre-wrap;line-height:1.38">Koordinates</span></p><p dir="ltr" style="line-height:1.38;margin-top:8pt;margin-bottom:0pt"><span style="color:rgb(51,51,51);vertical-align:baseline;white-space:pre-wrap"><a href="tel:+44%20759%209873480" target="_blank">+44 759 987 3480</a> / </span><a href="http://koordinates.com/" style="text-decoration:none" target="_blank"><span style="color:rgb(17,85,204);text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">koordinates.com</span></a><span style="color:rgb(51,51,51);vertical-align:baseline;white-space:pre-wrap"> / </span><a href="https://twitter.com/koordinates" style="text-decoration:none" target="_blank"><span style="color:rgb(17,85,204);text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">@koordinates</span></a><span style="color:rgb(51,51,51);vertical-align:baseline;white-space:pre-wrap"> </span></p></font></span></div></div></div></div></div></div></div>