On Sun, Feb 7, 2021 at 4:07 PM Moritz Lennert <mlenn...@club.worldonline.be> wrote: > > > > Am 7. Februar 2021 05:01:38 MEZ schrieb "Anna Petrášová" < kratocha...@gmail.com>: > >On Wed, Feb 3, 2021 at 2:47 PM Anna Petrášová <kratocha...@gmail.com> wrote: > > > >> > >> > >> On Tue, Feb 2, 2021 at 11:20 AM Nicklas Larsson <n_lars...@yahoo.com> > >> wrote: > >> > >>> > >>> > >>> > >>> > >>> > >>> On Friday, 29 January 2021, 18:50:34 CET, Anna Petrášová < > >>> kratocha...@gmail.com> wrote: > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> On Thu, Jan 28, 2021 at 4:28 AM Nicklas Larsson via grass-dev < > >>> grass-dev@lists.osgeo.org> wrote: > >>> > Dear Devs! > >>> > > >>> > As a relatively new member of the GRASS GIS dev community, I have had > >>> to search for information on mailing lists, old trac comments etc. > >>> regarding coding practice and in particular minimum programming language > >>> standard support. Ending up in not entirely conclusive understanding. Up > >>> until now, I have been mostly involved in Python development and I’m still > >>> not absolutely certain, although I assume 3.5 is minimum version. And I’m > >>> not alone, see e.g. [1]. > >>> > > >>> > Now, I’ve encountered a similar dilemma with C standard support, > >>> attempting to address compiler warnings [2], in particular with the PR > >>> #1256 [3]. > >>> > > >>> > I would be great if there were a (one) place where the min support of > >>> Python version, C (C89, C99, C11, C17…) and C++ (C++03, C++11, C++14 …) > >>> standard is stated -- loud and clear. Obviously, there has to be a > >>> consensus in the community on these matters for that to happen. Such a > >>> statement will also have to be revised now and then. (A related question is > >>> also whether or not to support 32 bit, which I know have been raised > >>> recently). > >>> > > >>> > I’d appreciate your opinion is on this issue! > >>> > Let me put up a a suggestion for min. req. for coming GRASS GIS 8 as a > >>> starting point of discussion: > >>> > - Python 3.7 > >>> > - C11 > >>> > - C++11 > >>> > > >>> > > >>> > Best regards, > >>> > Nicklas > >>> > > >>> > >>> Regarding Python, not sure if we shouldn't set 3.6 as minimum for G8, it > >>> is still used e.g. in Ubuntu 18. Any reason to set 3.7 as minimum, some > >>> specific features we would want to use? > >>> > >>> Anna > >>> > >>> > > >>> > > >>> > [1] https://github.com/OSGeo/grass/issues/1241 > >>> > [2] https://github.com/OSGeo/grass/issues/1247 > >>> > [3] https://github.com/OSGeo/grass/pull/1256 > >>> > > >>> > _______________________________________________ > >>> > grass-dev mailing list > >>> > grass-dev@lists.osgeo.org > >>> > https://lists.osgeo.org/mailman/listinfo/grass-dev > >>> > > >>> > > >>> > >>> > >>> > >>> Well, I don’t have a very strong opinion regarding 3.7, but personally > >>> I’d say 3.6 is an absolute minimum. I presume, for example, most of us > >>> would prefer to use f-strings for string formatting. > >>> > >> > >> yes, f-strings are nice although they have limitations for using with > >> translatable strings (Vashek can expand on that) > >> > >>> > >>> > >>> On the other hand, 3.6 will reach end-of-support at the end of this year > >>> right after its 5th birthday party and the support for data classes in 3.7 > >>> may potentially offer intriguing applications in G8. > >>> > >> > >> I noticed the data classes as well. Given 3.6 is reaching end-of-support > >> soon, I agree with 3.7 for G8. I assume grass would be compatible with 3.6 > >> for a while anyway. > >> > >> > >>> Ubuntu 18 has Python 3.6 and Debian 9 has Python 3.5! What will make the > >>> lowest common denominator? Debian 10 and Ubuntu 20 actually supports Python > >>> 3.7 and 3.8 respectively. Forgive me if I’m ignorant, but isn’t it possible > >>> to upgrade Python version on Ubuntu? Or is it just a pain with package > >>> dependencies? Relying on default Python has never/rarely been a luxury for > >>> other platforms. > >>> > >>> That being said, I think the most important part of this is that the > >>> community make a clear decision on min. supported Python version. > >>> > >> > >This GDAL's RFC [1] is helpful in summarizing the issue with Python. > >Looking more into this, I suggest to go have a longer term strategy for > >dropping support for Python versions, which would be relatively simple. > >Basically we would keep the lowest Python version that wouldn't reach end > >of life at the time of a major release of GRASS. E.g. when we release G8 > >this year, 3.6 will be minimum maintained version. Since 3.6 ends Dec 2021, > >we could drop 3.6 support next year. I am not saying we need to be strict > >about that, but might be helpful as a guidance, and it is independent on > >distributions (which is probably both advantage and disadvantage). I am > >unsure how this decision impacts packaging of grass, i.e. once we set 3.7 > >as minimum, would maintainers need to make that Python a dependency of > >GRASS? Anyway, to summarize, I am for Python 3.6 at this point, but we need > >to reevaluate that with each new major GRASS version. I think this is > >conservative enough and perhaps more in line with the C standards > >discussion. > > > > +1 > > Moritz
+1 Markus M
_______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-dev