Monthly Archiv: February, 2021

Sirenade PHP Template Compiler

Package:
Sirenade PHP Template Compiler
Summary:
Compile templates to PHP and caches the results
Groups:
Cache, Code Generation, PHP 7, Templates
Author:
wim niemans
Description:
This package can compile templates to PHP and caches the results...

Read more at https://www.phpclasses.org/package/11965-PHP-Compile-templates-to-PHP-and-caches-the-results.html#2021-02-05-03:51:23

PHP Convert UTF8 to Latin1 UTF8 Encoded

Package:
PHP Convert UTF8 to Latin1 UTF8 Encoded
Summary:
Convert latin characters that were double-encoded
Groups:
PHP 5, Text processing
Author:
Hassane Moussa
Description:
This class can convert latin characters that were double-encoded...

Read more at https://www.phpclasses.org/package/11967-PHP-Convert-latin-characters-that-were-double-encoded.html#2021-02-05-00:30:21

PHP Sanitization Functions

Package:
PHP Sanitization Functions
Summary:
Verify and clean values to assure they are valid
Groups:
PHP 5, Security
Author:
Faris AL-Otaibi
Description:
This is a simple class that can verify and clean values to assure they are valid...

Read more at https://www.phpclasses.org/package/11941-PHP-Verify-and-clean-values-to-assure-they-are-valid.html#2021-02-04-19:42:02

PHP Sanitization Functions

Package:
PHP Sanitization Functions
Summary:
Verify and clean values to assure they are valid
Groups:
PHP 5, Security
Author:
Faris AL-Otaibi
Description:
This is a simple class that can verify and clean values to assure they are valid...

Read more at https://www.phpclasses.org/package/11941-PHP-Verify-and-clean-values-to-assure-they-are-valid.html#2021-02-04-16:01:38

Sirenade PHP Template Compiler

Package:
Sirenade PHP Template Compiler
Summary:
Compile templates to PHP and caches the results
Groups:
Cache, Code Generation, PHP 7, Templates
Author:
wim niemans
Description:
This package can compile templates to PHP and caches the results...

Read more at https://www.phpclasses.org/package/11965-PHP-Compile-templates-to-PHP-and-caches-the-results.html#2021-02-04-08:13:46

PHP Internals News: Episode 74: Fibers

PHP Internals News: Episode 74: Fibers

In this episode of "PHP Internals News" I talk with Aaron Piotrowski (Twitter, Website, GitHub) about an RFC that he is proposing to add Fibers to PHP.

The RSS feed for this podcast is https://derickrethans.nl/feed-phpinternalsnews.xml, you can download this episode's MP3 file, and it's available on Spotify and iTunes. There is a dedicated website: https://phpinternals.news

Transcript

Derick Rethans 0:14

Hi I'm Derick. Welcome to PHP internals news, the podcast dedicated to explaining the latest developments in the PHP language. This is Episode 74. Today I'm talking with Aaron Piotrowski about a Fiber RFC, that he's working on together with Nicolas Keller. Aaron, would you please introduce yourself.

Aaron Piotrowski 0:33

Hi everyone I'm Aaron Piotrowski, I started programming with PHP back in 1998 with PHP three, so I've just dated myself there but, but I've worked with a lot of different languages over the last few decades but PHP is always continually remaining, one of my favourite and I'm always drawn back to it. I've gotten a lot more involved with the PHP projects since PHP seven. The Fiber RFC is my first major contribution I have attempted though. In the past I did the RFC for the throwable exception hierarchy. And the Iterable pseudo type in PHP 7.1.

Derick Rethans 1:12

Yeah, these things are both before I started doing the podcast so hence we haven't spoken yet, at least on here. We've actually met at some point in the past. I've had a read through the Fiber RFC this morning, but I'm still fairly baffled. Could you perhaps explain in short what Fibers are where the idea comes from. And what's your specific interest is in adding them to PHP?

Aaron Piotrowski 1:35

A few other languages already have Fibers like Ruby, and they're sort of similar to threads in that they contain a separate call stack, and a separate memory stack, but they differ from threads in that they exist only within a single process, and that they have to be switched to cooperatively by that process rather than actively by the OS like threads. So sometimes they're called Green threads, and the generators that are in PHP already are actually somewhat similar to Fibers; but generators differ in that they're stack less. And so what that means is that generator function can only be interrupted at one layer. Whereas a Fiber can be interrupted anywhere in the call stack. So like it'd be imagine if you had a generator where yield could be very deep in a function call. Rather than at the top level. Like, how generators can be used to make interruptible functions, Fibers can also be used to create similarly interruptible functions, but with again without having to know exactly when it's going to be interrupted not at the top level but at any point in the call stack. And so the main motivation behind wanting to add this feature is to make asynchronous programming in PHP much easier and eliminate the distinction that usually exists between async code that has used promises and synchronous code that we're all used to.

Derick Rethans 3:09

So what specifically are you proposing to ask to PHP here then?

Aaron Piotrowski 3:12

Specifically I'm looking at adding a low level Fiber API, that's really aimed specifically at async framework authors to create their own more opinionated API's on top of that low level API. So adds just a couple of classes: Fiber, and a FiberScheduler on within a couple of exception classes and reflection classes for inspecting Fibers. When a Fiber is suspended to the execution switch is to FiberScheduler, which is then a special Fiber, that's able to start and resume, regular user Fibers. So a Fiber scheduler is general

Truncated by Planet PHP, read more at the original (another 18886 bytes)

WordPress 5.6.1 Maintenance Release

WordPress 5.6.1 is now available!

This maintenance release features 20 bug fixes as well as 7 issues fixed for the block editor. These bugs affect WordPress version 5.6, so you’ll want to upgrade.

You can download WordPress 5.6.1 directly, or visit the Dashboard → Updates screen and click Update Now. If your sites support automatic background updates, they’ve already started the update process.

WordPress 5.6.1 is a short-cycle maintenance release. The next major release will be version 5.7.

To see a full list of changes, you can browse the list on Trac, read the 5.6.1 RC1 post, or visit the 5.6.1 documentation page.

Thanks and props!

The 5.6.1 release was led by @audrasjb, @desrosj, @sergeybiryukov and @whyisjake. Thanks to @metalandcoffee and @hellofromtonya for running bug scrubs, @planningwrite and @davidbaumwald for their help on the release post.

Props to everyone who helped make WordPress 5.6.1 happen:

aaribaud, Aaron D. Campbell, Ahmed Saeed, Andrew Ozz, Anthony Burchell, archon810, Ari Stathopoulos, Ayesh Karunaratne, basscan, carloscastilloadhoc, Carolina Nymark, celendesign, Christopher Finke, Copons, Dan Farrow, Daniel Richards, david.binda, Denis Yanchevskiy, Dilip Bheda, Dominik Schilling, Ebonie Butler, Felix Arntz, Florian TIAR, Garrett Hyder, gKibria, Greg Ziółkowski, Helen Hou-Sandi, Ian Dunn, ifnoob, Isabel Brison, Ismail El Korchi, Jake Spurlock, James Huff, Jason LeMahieu (MadtownLems), Jb Audras, John Blackbourn, Jonathan Desrosiers, Jonathan Stegall, Jorge Costa, Josepha, Justin Ahinon, Kai Hao, Kelly Choyce-Dwan, Kjell Reigstad, Konstantinos Xenos, litemotiv, lucasbustamante, Mahdi Akrami, majhajob, Manzur Ahammed, Marius L. J., Matt Wiebe, Maxime Pertici, Mel Choyce-Dwan, Michael Babker, Mukesh Panchal, NicolasKulka, Nik Tsekouras, oakesjosh, Peter Wilson, Prem Tiwari, Riad Benguella, Richard Tape, Robert Anderson, Rodrigo Primo, SeBsZ, Sergey Biryukov, Slava Abakumov, Stephen Bernhardt, t-p, Takashi Kitajima, Tanvirul Haque, thorlentz, Timothy Jacobs, Toni Viemerö, Tony A, Tonya Mork, transl8or, and Vlad T.

Powered by Gewgley