On Sun, Nov 10, 2024, at 6:40 PM, John Coggeshall wrote: >> And we're in 2024 now and nobody writes PHP code without Composer. Without >> this change, we can't use any composer available library for PHP.NET sites, >> nor even mention it in the documentation. >> That's bonkers. > > 100% agree with you. > >> This is counter productive, because the current rule is: don't use anything, >> or mention anything, third party. > Per the very first line of the RFC... > >> The PHP project has had a long-standing but unwritten, vague, and >> inconsistently-applied proscription against mentioning or using third-party >> PHP projects, on the grounds that it implies some sort of endorsement over >> other third-party projects. > I guess my point here is when I read this RFC it moves the needle from > "unwritten, vague, and inconsistently-applied" to a much more firm > "don't use them, don't talk about them" on frameworks -- which I think > is a mistake. It also seems entirely haphazard in the "what's allowed" > vs. "what's not". in terms of packages based on Larry's (probably > correct) opinion of what's mainstream as a solution for particular > problems.. All of this is wildly inconsistent is my point. Also what > happens if I decide to use a composer package component that's really a > part of Laravel or Symfony or ....? Is that allowed or not? > > I wouldn't have even blinked on a "yes" vote here if the RFC was to > allow composer.. it's this other half-baked stuff that I am balking > at... I'd very much like to see this RFC stripped of those bits if > possible. > > John
Hi John. First off, the obligatory "it was open for discussion for a month, and now you mention this?" Second, I'm not sure I really understand the objection here. This RFC shifts the policy from "You cannot use or mention anything 3rd party at all, especially a framework, except for where you asked forgiveness and not permission already" to "Here's guidelines for when you can use, reference, or use for marketing (3 different things) third party libraries without asking first, and here's a mechanism for if you want to ask for specific exceptions." So if, hypothetically, someone wanted to rebuild bugs.php.net using Symfony (note: Please don't), that wouldn't be allowed by default... but they could post an RFC to ask for an exception. (Whether it would pass is a different question.) If the issue is just a single component... those are fine, and there's even a few Symfony components *already listed* as approved for use (because they're already in use). So if someone wanted to use Symfony/Yaml on the docs site for some reason, they could just do it. > I guess my point here is when I read this RFC it moves the needle from > "unwritten, vague, and inconsistently-applied" to a much more firm > "don't use them, don't talk about them" on frameworks This is... not true. For using, yes, full frameworks are not allowed for the reasons stated. Components are fine, though, and if someone wanted to RFC an exception for Symfony-based bugs.php.net, they can try. That's more permissive than the current policy. For documentation... it's no change from the current status quo. If your concern is "zOMG, why can't we just tell people in the docs to use Symfony?", it's because someone else will immediately respond with "zOMG, why can't we just tell people to use Laravel instead?", and in a year or so someone will probably say "zOMG why can't we just tell people to use Tempest?" And then we'd have to argue if CodeIgnighter is something we want to even acknowledge exists. Full frameworks are a very, very active market, and I *agree* that we should try to avoid putting our thumb on the scales more than is necessary. Though again, there's an RFC process for exceptions. For marketing material, I quote: "The library MAY be a Web Application, provided its mention clearly does not specifically endorse the Application. If many options exist in a space that bears mention, the most common should be given equal exposure." So if, for example, we wanted to put up a "Yay, PHP 8.4" page that says "Laravel, Symfony, and Slim already support it!", *that is explicitly allowed*, as long as we don't play favorites. That's contrary to the status quo, where even mentioning that they exist is disallowed. The guidelines are not "haphazard". They are carefully written to strike a balance, which is a different balance for different use cases. They were adjusted based on feedback from several people, though not as many as I would have liked. They are subject to adjustment over time via RFC, which is something the old policy as mum about (as it wasn't actually written down), so if you want to file an RFC to widen them a bit further, you can do that and let the voters do what they will. So really, contrary to what you're saying, this RFC improves precisely the situation you're talking about in every way. Perhaps not as much as you would like, but it still moves the needle closer to it. I really don't have the stomach at the moment for litigating the "should we just go ahead and endorse some framework" question (I'm on team-no anyway), so I deliberately avoided that question when the main focus is to, as stated, let us mention Composer, PHPUnit, and other staples that have nowhere near the healthy competition that frameworks have. --Larry Garfield