Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19
+1 Good call, Jay! On Thu, Dec 20, 2018 at 11:29 AM Alexander Shorin wrote: > On Thu, Dec 20, 2018 at 7:17 PM Joan Touzet wrote > >10:07 * In the 20.x series don't got below 20.3.8.11 There > was a nasty monitor > > related bug in Erlang that davisp fixed > https://github.com/erlang/otp/commit/bb3f1ed6945a8cca2efa1a571f26e831911944a1 > > > > Oh...I missed that. Thanks! Well, let's rise our bets up to 21? (: > Anyway, I'm fine with R19. > > -- > ,,,^..^,,, >
Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19
On Thu, Dec 20, 2018 at 7:17 PM Joan Touzet wrote >10:07 * In the 20.x series don't got below 20.3.8.11 There was > a nasty monitor > related bug in Erlang that davisp fixed > https://github.com/erlang/otp/commit/bb3f1ed6945a8cca2efa1a571f26e831911944a1 > Oh...I missed that. Thanks! Well, let's rise our bets up to 21? (: Anyway, I'm fine with R19. -- ,,,^..^,,,
Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19
+1 And kxepal: 10:07 * In the 20.x series don't got below 20.3.8.11 There was a nasty monitor related bug in Erlang that davisp fixed https://github.com/erlang/otp/commit/bb3f1ed6945a8cca2efa1a571f26e831911944a1 -Joan - Original Message - From: "Alexander Shorin" To: dev@couchdb.apache.org Sent: Thursday, December 20, 2018 11:00:03 AM Subject: Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19 +1 P.S. Though I would raise it even to 20. Move fast with the new features! -- ,,,^..^,,, On Thu, Dec 20, 2018 at 11:55 AM Jay Doane wrote: > > Currently, CouchDB requires at least OTP 17 or later to build and run > [1][2]. However, recent work undertaken to eliminate compiler warnings > [3][4] has highlighted the additional effort needed to continue to support > older Erlang versions. Some of the issues that have come up are: > 1. erlang:now/0 deprecated in OTP 18 [5] > 2. crypto:rand_uniform/2 deprecated in OTP 20 [6], but no rand module > pre-OTP 18 > which both require using rebar platform defines [7] and ifdefs [8] to work > around compiler warnings. > > Joan raised the idea that maybe it's time to move to a more recent minimum > version to simplify the code, and also because there a many compelling new > features in later versions that we currently cannot use: > 1. maps introduced in OTP 17, but only became performant for large number > of entries in OTP 18 [9] > 2. off heap messages introduced in OTP 19 [10] > > Since CouchDB now ships with it's own OTP 19.6.3 Erlang binaries [9], it's > not clear whether we need to continue supporting OTP 17 and 18. As a bonus, > removing those versions will also speed up travis builds. > > Any thoughts either for or against this proposal? > > Best regards, > Jay > > [1] https://github.com/apache/couchdb/blob/master/rebar.config.script#L94 > [2] https://github.com/apache/couchdb/blob/master/.travis.yml#L10 > [3] https://github.com/apache/couchdb-ets-lru/pull/7 > [4] https://github.com/apache/couchdb/pull/1798 > [5] http://erlang.org/doc/apps/erts/time_correction.html > [6] http://erlang.org/pipermail/erlang-questions/2017-May/092435.html > [7] > https://github.com/apache/couchdb/blob/master/src/couch/rebar.config.script#L148-L154 > [8] > https://github.com/apache/couchdb/blob/master/src/couch/src/couch_rand.erl#L22-L57 > [9] http://erlang.org/download/otp_src_18.0.readme > [10] > https://www.erlang-solutions.com/blog/erlang-19-0-garbage-collector.html > [9] https://github.com/apache/couchdb-ci/blob/master/README.md
Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19
+1 P.S. Though I would raise it even to 20. Move fast with the new features! -- ,,,^..^,,, On Thu, Dec 20, 2018 at 11:55 AM Jay Doane wrote: > > Currently, CouchDB requires at least OTP 17 or later to build and run > [1][2]. However, recent work undertaken to eliminate compiler warnings > [3][4] has highlighted the additional effort needed to continue to support > older Erlang versions. Some of the issues that have come up are: > 1. erlang:now/0 deprecated in OTP 18 [5] > 2. crypto:rand_uniform/2 deprecated in OTP 20 [6], but no rand module > pre-OTP 18 > which both require using rebar platform defines [7] and ifdefs [8] to work > around compiler warnings. > > Joan raised the idea that maybe it's time to move to a more recent minimum > version to simplify the code, and also because there a many compelling new > features in later versions that we currently cannot use: > 1. maps introduced in OTP 17, but only became performant for large number > of entries in OTP 18 [9] > 2. off heap messages introduced in OTP 19 [10] > > Since CouchDB now ships with it's own OTP 19.6.3 Erlang binaries [9], it's > not clear whether we need to continue supporting OTP 17 and 18. As a bonus, > removing those versions will also speed up travis builds. > > Any thoughts either for or against this proposal? > > Best regards, > Jay > > [1] https://github.com/apache/couchdb/blob/master/rebar.config.script#L94 > [2] https://github.com/apache/couchdb/blob/master/.travis.yml#L10 > [3] https://github.com/apache/couchdb-ets-lru/pull/7 > [4] https://github.com/apache/couchdb/pull/1798 > [5] http://erlang.org/doc/apps/erts/time_correction.html > [6] http://erlang.org/pipermail/erlang-questions/2017-May/092435.html > [7] > https://github.com/apache/couchdb/blob/master/src/couch/rebar.config.script#L148-L154 > [8] > https://github.com/apache/couchdb/blob/master/src/couch/src/couch_rand.erl#L22-L57 > [9] http://erlang.org/download/otp_src_18.0.readme > [10] > https://www.erlang-solutions.com/blog/erlang-19-0-garbage-collector.html > [9] https://github.com/apache/couchdb-ci/blob/master/README.md
Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19
+1 On Thu, Dec 20, 2018 at 8:15 AM Eiri wrote: > > +1 > > > > On Dec 20, 2018, at 04:55, Jay Doane wrote: > > > > Currently, CouchDB requires at least OTP 17 or later to build and run > > [1][2]. However, recent work undertaken to eliminate compiler warnings > > [3][4] has highlighted the additional effort needed to continue to support > > older Erlang versions. Some of the issues that have come up are: > > 1. erlang:now/0 deprecated in OTP 18 [5] > > 2. crypto:rand_uniform/2 deprecated in OTP 20 [6], but no rand module > > pre-OTP 18 > > which both require using rebar platform defines [7] and ifdefs [8] to work > > around compiler warnings. > > > > Joan raised the idea that maybe it's time to move to a more recent minimum > > version to simplify the code, and also because there a many compelling new > > features in later versions that we currently cannot use: > > 1. maps introduced in OTP 17, but only became performant for large number > > of entries in OTP 18 [9] > > 2. off heap messages introduced in OTP 19 [10] > > > > Since CouchDB now ships with it's own OTP 19.6.3 Erlang binaries [9], it's > > not clear whether we need to continue supporting OTP 17 and 18. As a bonus, > > removing those versions will also speed up travis builds. > > > > Any thoughts either for or against this proposal? > > > > Best regards, > > Jay > > > > [1] https://github.com/apache/couchdb/blob/master/rebar.config.script#L94 > > [2] https://github.com/apache/couchdb/blob/master/.travis.yml#L10 > > [3] https://github.com/apache/couchdb-ets-lru/pull/7 > > [4] https://github.com/apache/couchdb/pull/1798 > > [5] http://erlang.org/doc/apps/erts/time_correction.html > > [6] http://erlang.org/pipermail/erlang-questions/2017-May/092435.html > > [7] > > https://github.com/apache/couchdb/blob/master/src/couch/rebar.config.script#L148-L154 > > [8] > > https://github.com/apache/couchdb/blob/master/src/couch/src/couch_rand.erl#L22-L57 > > [9] http://erlang.org/download/otp_src_18.0.readme > > [10] > > https://www.erlang-solutions.com/blog/erlang-19-0-garbage-collector.html > > [9] https://github.com/apache/couchdb-ci/blob/master/README.md >
Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19
+1 > On Dec 20, 2018, at 04:55, Jay Doane wrote: > > Currently, CouchDB requires at least OTP 17 or later to build and run > [1][2]. However, recent work undertaken to eliminate compiler warnings > [3][4] has highlighted the additional effort needed to continue to support > older Erlang versions. Some of the issues that have come up are: > 1. erlang:now/0 deprecated in OTP 18 [5] > 2. crypto:rand_uniform/2 deprecated in OTP 20 [6], but no rand module > pre-OTP 18 > which both require using rebar platform defines [7] and ifdefs [8] to work > around compiler warnings. > > Joan raised the idea that maybe it's time to move to a more recent minimum > version to simplify the code, and also because there a many compelling new > features in later versions that we currently cannot use: > 1. maps introduced in OTP 17, but only became performant for large number > of entries in OTP 18 [9] > 2. off heap messages introduced in OTP 19 [10] > > Since CouchDB now ships with it's own OTP 19.6.3 Erlang binaries [9], it's > not clear whether we need to continue supporting OTP 17 and 18. As a bonus, > removing those versions will also speed up travis builds. > > Any thoughts either for or against this proposal? > > Best regards, > Jay > > [1] https://github.com/apache/couchdb/blob/master/rebar.config.script#L94 > [2] https://github.com/apache/couchdb/blob/master/.travis.yml#L10 > [3] https://github.com/apache/couchdb-ets-lru/pull/7 > [4] https://github.com/apache/couchdb/pull/1798 > [5] http://erlang.org/doc/apps/erts/time_correction.html > [6] http://erlang.org/pipermail/erlang-questions/2017-May/092435.html > [7] > https://github.com/apache/couchdb/blob/master/src/couch/rebar.config.script#L148-L154 > [8] > https://github.com/apache/couchdb/blob/master/src/couch/src/couch_rand.erl#L22-L57 > [9] http://erlang.org/download/otp_src_18.0.readme > [10] > https://www.erlang-solutions.com/blog/erlang-19-0-garbage-collector.html > [9] https://github.com/apache/couchdb-ci/blob/master/README.md
Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19
Good proposal, thanks Jay! In the past we looked at what distributions had which Erlang version available, but over the years this has become increasingly difficult, as a) distros would do weird things to the OTP distribution and b) would not update quite quickly. With our advent of binary packages for most users, I think we neatly side-step this issue, so we are now in a better position to raise the oldest Erlang version we support. A long way of saying: +1. Best Jan — > On 20. Dec 2018, at 09:55, Jay Doane wrote: > > Currently, CouchDB requires at least OTP 17 or later to build and run > [1][2]. However, recent work undertaken to eliminate compiler warnings > [3][4] has highlighted the additional effort needed to continue to support > older Erlang versions. Some of the issues that have come up are: > 1. erlang:now/0 deprecated in OTP 18 [5] > 2. crypto:rand_uniform/2 deprecated in OTP 20 [6], but no rand module > pre-OTP 18 > which both require using rebar platform defines [7] and ifdefs [8] to work > around compiler warnings. > > Joan raised the idea that maybe it's time to move to a more recent minimum > version to simplify the code, and also because there a many compelling new > features in later versions that we currently cannot use: > 1. maps introduced in OTP 17, but only became performant for large number > of entries in OTP 18 [9] > 2. off heap messages introduced in OTP 19 [10] > > Since CouchDB now ships with it's own OTP 19.6.3 Erlang binaries [9], it's > not clear whether we need to continue supporting OTP 17 and 18. As a bonus, > removing those versions will also speed up travis builds. > > Any thoughts either for or against this proposal? > > Best regards, > Jay > > [1] https://github.com/apache/couchdb/blob/master/rebar.config.script#L94 > [2] https://github.com/apache/couchdb/blob/master/.travis.yml#L10 > [3] https://github.com/apache/couchdb-ets-lru/pull/7 > [4] https://github.com/apache/couchdb/pull/1798 > [5] http://erlang.org/doc/apps/erts/time_correction.html > [6] http://erlang.org/pipermail/erlang-questions/2017-May/092435.html > [7] > https://github.com/apache/couchdb/blob/master/src/couch/rebar.config.script#L148-L154 > [8] > https://github.com/apache/couchdb/blob/master/src/couch/src/couch_rand.erl#L22-L57 > [9] http://erlang.org/download/otp_src_18.0.readme > [10] > https://www.erlang-solutions.com/blog/erlang-19-0-garbage-collector.html > [9] https://github.com/apache/couchdb-ci/blob/master/README.md -- Professional Support for Apache CouchDB: https://neighbourhood.ie/couchdb-support/
Re: [PROPOSAL] Change the minimum supported Erlang version to OTP 19
+1 > On 20 Dec 2018, at 08:55, Jay Doane wrote: > > Currently, CouchDB requires at least OTP 17 or later to build and run > [1][2]. However, recent work undertaken to eliminate compiler warnings > [3][4] has highlighted the additional effort needed to continue to support > older Erlang versions. Some of the issues that have come up are: > 1. erlang:now/0 deprecated in OTP 18 [5] > 2. crypto:rand_uniform/2 deprecated in OTP 20 [6], but no rand module > pre-OTP 18 > which both require using rebar platform defines [7] and ifdefs [8] to work > around compiler warnings. > > Joan raised the idea that maybe it's time to move to a more recent minimum > version to simplify the code, and also because there a many compelling new > features in later versions that we currently cannot use: > 1. maps introduced in OTP 17, but only became performant for large number > of entries in OTP 18 [9] > 2. off heap messages introduced in OTP 19 [10] > > Since CouchDB now ships with it's own OTP 19.6.3 Erlang binaries [9], it's > not clear whether we need to continue supporting OTP 17 and 18. As a bonus, > removing those versions will also speed up travis builds. > > Any thoughts either for or against this proposal? > > Best regards, > Jay > > [1] https://github.com/apache/couchdb/blob/master/rebar.config.script#L94 > [2] https://github.com/apache/couchdb/blob/master/.travis.yml#L10 > [3] https://github.com/apache/couchdb-ets-lru/pull/7 > [4] https://github.com/apache/couchdb/pull/1798 > [5] http://erlang.org/doc/apps/erts/time_correction.html > [6] http://erlang.org/pipermail/erlang-questions/2017-May/092435.html > [7] > https://github.com/apache/couchdb/blob/master/src/couch/rebar.config.script#L148-L154 > [8] > https://github.com/apache/couchdb/blob/master/src/couch/src/couch_rand.erl#L22-L57 > [9] http://erlang.org/download/otp_src_18.0.readme > [10] > https://www.erlang-solutions.com/blog/erlang-19-0-garbage-collector.html > [9] https://github.com/apache/couchdb-ci/blob/master/README.md
[PROPOSAL] Change the minimum supported Erlang version to OTP 19
Currently, CouchDB requires at least OTP 17 or later to build and run [1][2]. However, recent work undertaken to eliminate compiler warnings [3][4] has highlighted the additional effort needed to continue to support older Erlang versions. Some of the issues that have come up are: 1. erlang:now/0 deprecated in OTP 18 [5] 2. crypto:rand_uniform/2 deprecated in OTP 20 [6], but no rand module pre-OTP 18 which both require using rebar platform defines [7] and ifdefs [8] to work around compiler warnings. Joan raised the idea that maybe it's time to move to a more recent minimum version to simplify the code, and also because there a many compelling new features in later versions that we currently cannot use: 1. maps introduced in OTP 17, but only became performant for large number of entries in OTP 18 [9] 2. off heap messages introduced in OTP 19 [10] Since CouchDB now ships with it's own OTP 19.6.3 Erlang binaries [9], it's not clear whether we need to continue supporting OTP 17 and 18. As a bonus, removing those versions will also speed up travis builds. Any thoughts either for or against this proposal? Best regards, Jay [1] https://github.com/apache/couchdb/blob/master/rebar.config.script#L94 [2] https://github.com/apache/couchdb/blob/master/.travis.yml#L10 [3] https://github.com/apache/couchdb-ets-lru/pull/7 [4] https://github.com/apache/couchdb/pull/1798 [5] http://erlang.org/doc/apps/erts/time_correction.html [6] http://erlang.org/pipermail/erlang-questions/2017-May/092435.html [7] https://github.com/apache/couchdb/blob/master/src/couch/rebar.config.script#L148-L154 [8] https://github.com/apache/couchdb/blob/master/src/couch/src/couch_rand.erl#L22-L57 [9] http://erlang.org/download/otp_src_18.0.readme [10] https://www.erlang-solutions.com/blog/erlang-19-0-garbage-collector.html [9] https://github.com/apache/couchdb-ci/blob/master/README.md