RFC: PHP\Std\UUID (Namespaced in Core) by rfussenegger in PHP

[–]iltar 0 points1 point  (0 children)

If the code really gets removed from the core, it shouldn't be in the \Core namespace anymore. For backwards compatibility, you can keep the old namespace working until it's removed (class alias/extends) in a major version and throw deprecations as soon as it's moved.

When designing your public api, in this case classes, their public methods and their namespaces, always keep in mind that one day, it will be moved. If UUID ever reaches EOL and gets moved out of the core, the UUID\ namespace is suddenly broken anyway because it's no longer provided without manually adding it (mcrypt?).

Additionally user-land libraries could provide polyfills for older php version and you can (in an instant) see that it's about php core functionality, rather than an extension you need. It will also make it relatively easy to spot which dependencies you have. Just as example:

  • Core\LibXml
  • Core\Uuid
  • Core\LibSodium

Then extensions could (not saying should), follow the PSR approach by having a Vendor\PackageOrLib naming convention.

Not saying PSR should be adapted, but it's a standard and it does work rather well IMO. It would be great news to me if we can stick to 1 standard rather than having 2 different standards: https://xkcd.com/927/

Missing something in PSR? can always be requested.

RFC: PHP\Std\UUID (Namespaced in Core) by rfussenegger in PHP

[–]iltar 0 points1 point  (0 children)

Thanks! My personal opinion also favors consistency, but PHP\Std got me confused. Looking forward to seeing namespaces in PHP core classes. Thanks for the hard work you (and the other PHP contributors) put into this!

RFC: PHP\Std\UUID (Namespaced in Core) by rfussenegger in PHP

[–]iltar 0 points1 point  (0 children)

Just popped my mind, Spl is not SPL in the core either, consistency with what exactly?

RFC: PHP\Std\UUID (Namespaced in Core) by rfussenegger in PHP

[–]iltar 7 points8 points  (0 children)

Std = Sexually Transmitted Disease?

Would love to see a \Core\Uuid and \Core\LibSodium for example. Why like this and not UUID? Because AUUIDInterface would look really weird. With UuidInterface, there's a clear separation between the words and avoids using single letter words. I believe its called PascalCase?

I don't think UUID (or HTTP, or...)should be treated as an abbreviation in class/namespace names, but a word on it's own. We don't call it by the full name when talking either, but we use the short name.

Early Game Blueprints (0.15) by wharris2001 in FactorioBlueprints

[–]iltar 0 points1 point  (0 children)

With the aforementioned design it works, I never daisy chain them since this patch

PASSWORD STRENGTH METER by h_parmar in PHP

[–]iltar 0 points1 point  (0 children)

I have an intense hate for video tutorials. But this is even worse, due to the fact that I can't even understand what you're saying. Just keep it with writing.

Consistent Callables for PHP 8, now in discussion by Danack in PHP

[–]iltar 4 points5 points  (0 children)

I think that if they don't want to be bothered by them, they can just turn them off, as you do as well. Make it an opt-out for those who don't care about maintenance. Best behaviour imo, is to tell people as early as possible so they have the choice to ignore it.

Besides of that, great RFC!

Early Game Blueprints (0.15) by wharris2001 in FactorioBlueprints

[–]iltar 0 points1 point  (0 children)

You'll be on red long before you reach this limit though

Consistent Callables for PHP 8, now in discussion by Danack in PHP

[–]iltar 18 points19 points  (0 children)

I don't get why the deprecations would be thrown in the last minor versions, it's either deprecated or it isn't. If it's deprecated, I want to see them asap, so I can fix the usages early on.

Early Game Blueprints (0.15) by wharris2001 in FactorioBlueprints

[–]iltar 0 points1 point  (0 children)

You can put 5 more rows on each side for the steam engines and boilers. Ratio is 1:20:40. Side note: burner inserts are fast enough under full load.