Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:121956 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 54971 invoked from network); 8 Dec 2023 08:43:57 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 8 Dec 2023 08:43:57 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id C7705180051 for ; Fri, 8 Dec 2023 00:44:09 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-3.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mail-ed1-f51.google.com (mail-ed1-f51.google.com [209.85.208.51]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Fri, 8 Dec 2023 00:44:09 -0800 (PST) Received: by mail-ed1-f51.google.com with SMTP id 4fb4d7f45d1cf-54cd8f5bb5cso2435833a12.1 for ; Fri, 08 Dec 2023 00:43:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702025034; x=1702629834; darn=lists.php.net; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=+B2A/pv6akZCzr27V+99ODcl0aEnselEcDtg484iB30=; b=C5JimX+WhWdjTJVftPpFKKZFAiMykH1AsdcnbDCqzzrYH+ciK6D+jSPUrUCZywHmF2 fidT6Q2fH1LV57O0hdsKJQDHoCSyNleUVOnwAF36iwrLiDW/eHqCft+nbmAjd4givR3F FrlTbw7hRqjzISueOCSJLp+04nmuDRQkFF9wHcKmUKUyBHtpCLV3djTERj9QdNhF2GHW b0oNuijgLltNc8tCh/XUb0V/KoVRhrNxbkgoWf30W62a5EgQ1pgUd4Wu8+U11Uy7fwTL GNOuq2bHWNODVL67FCvocPHUcbdf+TXjhMH5cFYv3eOkJc08L5s29ILRdsoffouDc50c 58TQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702025034; x=1702629834; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=+B2A/pv6akZCzr27V+99ODcl0aEnselEcDtg484iB30=; b=cBBZXJIYFi0s5+mvWmXx05oVkaxxrp0bJD0yUJGqtcCt5KZLaBwZaFwo13aMSOiiwb Jzl7yMSlsrAamBqrJAzo9wROBTdO9zBgXnclbAdife8uPSZEOxBV3P0iI+3qYnW6XUnK I4BKSsG7qtxPtYku1dR/U79EEvwy9pYdc23VfErCBL/8AhLErUxEWXztUO6XO0NWa8kq gqf/H/noOqC8ZyV4Gd/mecZxHckGqe7wmLmPhq3dX9BSH24t+i6UZ1ALuQ0MzedICCsV 7dshw9j1NHxw3bNsJjHV8/Nnv3pP2yeuWH5m0GTe8swz/54519aGlOoJhyIB543/qShn fx5w== X-Gm-Message-State: AOJu0YzGalTk7rRoJwmcD2gZAao7wgVzpcHT2YBKKXtxpLt/kFBe5xKV AnD9qVZAQHWVSzKgYfRKKzBNuSlifGKQUM4CJe8= X-Google-Smtp-Source: AGHT+IFs1HX32bUtOGLnhK30IZurweC1CzM0kZMwHHPiTS2BwppDWx3Jp/nKy3nhMJlP+IFfqtQORXlhVJMMk8tTqzM= X-Received: by 2002:a17:906:20dd:b0:a1e:437c:6a6a with SMTP id c29-20020a17090620dd00b00a1e437c6a6amr1516329ejc.78.1702025034090; Fri, 08 Dec 2023 00:43:54 -0800 (PST) MIME-Version: 1.0 References: <8f4e3274-6489-4378-82db-fb4829770196@gmail.com> In-Reply-To: <8f4e3274-6489-4378-82db-fb4829770196@gmail.com> Date: Fri, 8 Dec 2023 11:43:43 +0300 Message-ID: To: Niels Dossche Cc: PHP internals Content-Type: multipart/alternative; boundary="0000000000008e4e2a060bfb9579" Subject: Re: [PHP-DEV] Filesystem path APIs From: maxsem.wiki@gmail.com (Max Semenik) --0000000000008e4e2a060bfb9579 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Dec 6, 2023 at 10:20=E2=80=AFPM Niels Dossche wrote: > Hi internals > > I'd like to start a pre-RFC discussion about filesystem path APIs in PHP. > The reason I bring this up is because of this recent feature request: > https://github.com/php/php-src/issues/11258 > > The feature request is about the following: > We already have some functions to work with paths in PHP, e.g. basename, > dirname, realpath. > We do not have some common path APIs that you can find in other languages > like: path_join to join paths and path_normalize to normalize paths. > We have a lot of commonly used functionality that's successfully fulfilled by Composer packages - does this really have to be core functionality? I understand the argument about batteries included, but across mainstream languages you can always find examples of something that sounds like it should really be there, but it isn't. --=20 Best regards, Max Semenik --0000000000008e4e2a060bfb9579--