Subject: Developers of Sympa
List archive
- From: Soji Ikeda <address@concealed>
- To: Marc Chantreux <address@concealed>
- Cc: address@concealed
- Subject: Re: [sympa-developpers] RFC sympatic
- Date: Fri, 9 Mar 2018 23:53:37 +0900
Marc, at first, would you please compile summary of irc talk?
Please refrain from mixing other discussions and/or your personal thought.
Thanks.
— Soji
2018/03/09 23:34、Marc Chantreux <address@concealed>のメール:
> Those are the decisions to do about sympatic
>
> A. Add Path::Tiny to Sympatic
> B. Moo imported by default in sympatic
> C. minimal version of perl
> D. autodie
>
> decisions A and B will be adopted if there is no more comment.
>
> A. Add Path::Tiny to Sympatic
>
> This was a proposal made by eiro on the list but wasn't really debated.
>
> * eiro thinks we can replace a lot of homebrew code just using
> methods of Path::Tiny
> * racke thinks we should not provide default unicode policy while using
> file and we should use Path::Tiny methods instead
> * no one provided negative comments on this proposal.
>
> i think this should be added as dependency of Sympatic and path() should
> be exported by default.
>
> B. Moo imported by default in sympatic
>
> racke proposed to import the moo stuff by default and it makes sense as
> most of the files we have to write are Moo classes. the proposal i made
> (uncommented for the moment) is
>
> After Before
>
> use Sympatic -oo; use Sympatic;
> use Sympatic; use Sympatic -noo;
>
> will be applied unless extra comments.
>
> D. Unicode policy
>
> this is still an open topic but some things seems to be clear:
>
> * there is no good reason to load charnames by default and the memory
> should be used for more interesting things
> * the default policy of the open pragma which implies use
> PerlIO::utf8_strict is too intrusive.
>
> so utf8:all will not be used and we should define our own policy. things
> we have to decide (the way i understand,) are:
>
> * should @ARGV be encoded by default ? which layer to use ?
> * should open use an encoding by default ? which layer to use ?
> * should stdios use an encoding by default ? which layer to use ?
> * should the Sympa code be written in utf8 ?
> * should the features fc and unicode_strings be loaded ?
>
> my answer is: as long as utf8 became the expected format for almost
> everything nowadays, we should expect it as default and using the
> recommendations of the perl pumpkin on it
> (which are described there with a very interesting overview of how
> perl actually handle strings: https://www.youtube.com/watch?v=TmTeXcEixEg).
>
> so the code and the files should be utf-8 by default:
>
> use utf8;
> use open qw< encoding(utf-8) :std >;
>
> also @ARGV should be encoded and we should use fc and unicode_strings.
>
> the last opinion i undestand from Soji is:
>
> * we should use charnames import
> * we should use :bytes as default open layer
>
> and i think racke worried about the filehandles but frankly: i really
> think everyone uses utf8 by default nowadays and the other situations
> should be wrap into functions. for example: opening a pipe to sendmail
> by default shouldn't be required from the sympa code as the PEP (perl
> email project) provide modules to do that.
>
> D. autodie
>
> the idea was to have a defensive default behavior. it seems a bad idea
> for everyone.
>
> * no one wants to use a lexical 'no autodie'
> * everyone is pretty sure we will always test every function call that
> can rise $ERRNO
> * the $ERRNO seems to have a very tight scope so for example: if you
> try to open a file in an eval block, you loose $ERRNO while leaving
> the eval block. the consequence is $ERRNO can't be used in a
> try/catch.
>
> try { open $fh,'>','/O B V I O U S - FAIL' }
> catch {
> say $ERRNO; # $ERRNO is empty there :(
> }
>
>
-
[sympa-developpers] RFC sympatic,
Marc Chantreux, 03/09/2018
-
Re: [sympa-developpers] RFC sympatic,
Soji Ikeda, 03/09/2018
- Re: [sympa-developpers] RFC sympatic, Marc Chantreux, 03/09/2018
-
Re: [sympa-developpers] RFC sympatic,
Soji Ikeda, 03/09/2018
Archive powered by MHonArc 2.6.19+.