Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:114967 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 60830 invoked from network); 18 Jun 2021 22:46:22 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 18 Jun 2021 22:46:22 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 7769A1804CC for ; Fri, 18 Jun 2021 16:03:43 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,NICE_REPLY_A, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-Virus: No X-Envelope-From: Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Fri, 18 Jun 2021 16:03:43 -0700 (PDT) Received: by mail-wr1-f53.google.com with SMTP id r9so12379798wrz.10 for ; Fri, 18 Jun 2021 16:03:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding:content-language; bh=o433ck65upDaRlQ1GE0/KkH6ubalLkoLYfZ70YqlapU=; b=M2qY7JIF5u2eJeEwBgpjINKE9/f7ucfNxSRa2zpLeuzS079mMwnpxYjtjRhyX4Tvg1 YalNI3wMwxo6cOhwPj7Lv32RUbS8z8dI5xbpuaGdjG6lyRd18+8kOcS5CecnsYJ+KRjR 5fEf6fynzOIlkwjejQCxg9swcSLS2tQFsj7Z/Y1+FIZOZgz0XtfXKQflRyNuKbG+Uv7W jkdZ1i30qKywfWsvhUbz3EpBWJi8vcq35qfqwRTfRmbNrhUs9RBYqNMx4NPDqSqvNI1R XzLOSewefkwTKnrUgwUZbKWHTBvQyqk8KDtKwz8uA+ynNL2N1CVv2fvFSK0aKlAIYxc5 2euw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=o433ck65upDaRlQ1GE0/KkH6ubalLkoLYfZ70YqlapU=; b=cVH8U9qfkYFH+TEK4VJAIh7EjhzPFDewYxU0Ci24Ot693mYEVFsqIhiSZPKcxl/SWa UzPaZbLkpwR4tsJoFo3p0XP4j69mH85QnPtyncFF92fOE3xTnLoy4rKiQAKy6XP3WSnx oQetodXANSjYot6A+L6fsOeZTbLbmpWk6ZwT11IPjY9aiumzPBvedNhrU/ZGVvIsspT3 FT0wv+GawsW+0h8jF+1gG7jzU6uP7Bgmr1IaL+gJ17bSL4ebbBo8tcmXi3AJGaa56Ttc W6EhZyUv1JOy10UWk4bxefqRhy60Shn7QIiHqOnwwelmyAASyDH8Agc6CgpjaezF3S2k hhnQ== X-Gm-Message-State: AOAM533eGoE/Iweuv7T8xaE99tTmhs7Tu0QHijYfm6snadyl7K9k6hr3 NFJGw6j7sYgqTf9/SydlbJtKhATSQ6A= X-Google-Smtp-Source: ABdhPJy0oJAw8qUAN6KO0UzJ+XWtzq9Eax6F5+2Dt7hoaVYz+ANMEorpwXTv8hnJBfPDO35hx3Sm+g== X-Received: by 2002:adf:fa08:: with SMTP id m8mr14525345wrr.319.1624057421969; Fri, 18 Jun 2021 16:03:41 -0700 (PDT) Received: from [192.168.0.22] (cpc104104-brig22-2-0-cust548.3-3.cable.virginm.net. [82.10.58.37]) by smtp.googlemail.com with ESMTPSA id z6sm7082341wrl.15.2021.06.18.16.03.41 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 18 Jun 2021 16:03:41 -0700 (PDT) To: internals@lists.php.net References: <4D4B548F-5F51-480B-AECF-FC2DB586F396@php.net> Message-ID: Date: Sat, 19 Jun 2021 00:03:40 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <4D4B548F-5F51-480B-AECF-FC2DB586F396@php.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-GB Subject: Re: [PHP-DEV] Re: [RFC] Deprecations for PHP 8.1 From: rowan.collins@gmail.com (Rowan Tommins) On 18/06/2021 22:16, Derick Rethans wrote: > strftime is infected by thread unsafe locales, which is plenty of reason to deprecate it, with additional pro reasons for doing so being its disparate functionality among different os-es and libc's. > > Deprecation also doesn't mean removal, which won't happen until PHP 9, giving developers plenty of time to move to a saner threadsafe locale API based on intl/icu. I think you're probably right, but I think in general deprecations should be accompanied by much stronger migration instructions than "there's a class over here that probably does what you want if you kick it a bit". Like everything in ext/intl, IntlDateFormatter is rather complex, and the manual relies heavily on links to the ICU documentation, some of which are 404s. If you're saying my 276 uses of strftime() are "wrong", it would be nice to have a clear message of what is "right", and what I should do to "fix" them. If the alternative is definitely there, and the deprecation is accompanied by an effort to document it clearly, then my objection goes away. Regards, -- Rowan Tommins [IMSoP]