DIP 1028---Make @safe the Default---Community Review Round 1

Basile B. b2.temp at gmx.com
Thu Jan 2 12:27:30 UTC 2020


On Thursday, 2 January 2020 at 10:41:20 UTC, Basile B. wrote:
> On Thursday, 2 January 2020 at 09:47:48 UTC, Mike Parker wrote:
>> This is the feedback thread for the first round of Community 
>> Review for DIP 1028, "Make @safe the Default":
>>
>> https://github.com/dlang/DIPs/blob/1b705f8d4faa095d6d9e3a1b81d6cfa6d688554b/DIPs/DIP1028.md
>>
>> All review-related feedback on and discussion of the DIP 
>> should occur in this thread. The review period will end at 
>> 11:59 PM ET on January 16, or when I make a post declaring it 
>> complete.
>>
>> At the end of Round 1, if further review is deemed necessary, 
>> the DIP will be scheduled for another round of Community 
>> Review. Otherwise, it will be queued for the Final Review and 
>> Formal Assessment.
>>
>> Anyone intending to post feedback in this thread is expected 
>> to be familiar with the reviewer guidelines:
>>
>> https://github.com/dlang/DIPs/blob/master/docs/guidelines-reviewers.md
>>
>> *Please stay on topic!*
>>
>> Thanks in advance to all who participate.
>
> While I don't disapprove I suggest a very long deprecation 
> phase, based on
>
> 1. a compiler switch for let's say 1 year, allowing to test and 
> prepare
> 2. after that, the real deprecation, following what the 
> official rule for D deprecation imply, and concerning what is 
> not annotated
> 3. after that, non annotated funcs will be @safe.
> 4. Maybe a compiler switch for backward compatibility should be 
> added at the end. This could help in case someone use 
> unmaintained libraries.
>
> Based on this comment, I suggest to amend the DIP to add a 
> **very detailed plan**, a schedule, for how things would 
> append. This is not clear for now.
>
> Finally a more technical remark is that maybe you should 
> mention that annotating a whole module, after the module 
> declaration, `@system:` makes the maintenance easy. For now the 
> DIPS seems to suggest that all funcs should be annotated.

actually dont take in account the final note. It would obviously 
not work for agregates (struct, class) only for module level free 
funcs. Sorry for that.


More information about the Digitalmars-d mailing list