Tag: PHP
-
Horde 6: Return of the Git Tree
Over the last few weekends, Horde 6 code has been merged back from the Maintaina fork and from separate contributions to the former Horde development version, “master”. It was time to upgrade the development tool chain. Back in the Horde 5 days, there was a utility called git-tools developed by Michael Rubinsky. It would checkout…
-
Maintaina’s Horde 6 goes upstream
Horde 6 alpha versions with composer 2 support are coming to the upstream repos and packagist.org composer create-project horde/bundle .
-
Satis is now a Composer Plugin.
Satis is the lightweight, static repository generator for the composer package manager. It enables admins to provide PHP software packages inside airgapped CIs, OS packaging environments and restricted data centers. Back in August I added a plugin mode to satis to make it work as a regular composer plugin. While working on it, I also…
-
Horde on PHP 8.1 and Composer: Update
Regular readers of this blog and many other are aware that PHP 7.4 will stop receiving security updates when PHP 8.2 comes out in November. This has made many horde admins question if they can continue to run Horde. Some events in life have made progress slower than originally planned. So where are we? Confirmed…
-
Modernizing horde/text_diff
If you ever read a github pull request or similar extension proposal, you will likely have seen side by side comparisons of the original and the changed file. You may also have seen some text format that highlights only differences and a little context but hides the unchanged rest of the file. Both of these…
-
Tools to build better Tools faster
Behind every lofty architecture mantra there is mundane execution. This is best left to tools and I don’t mean anybody in particular but programs that help us make better programs. It basically goes like this: Build tool. Use tool. Build better tool. Build tool to build better tool. Build better tool to build better tool…
-
Why you should develop for latest, greatest
Developers sometimes choose not to use the latest available language features that would be appropriate to tackle a problem for fear of alienating users and collaborators. This is a bad habit and we should stop doing that. Part of the solution are transpilers. What are transpilers, where are they used and what is the benefit?…
-
Horde/Yaml: Graceful degradation
Tonight’s work was polishing maintaina’s version of horde/yaml. The test suite and the CI jobs now run successfully both on PHP 7.4 and PHP 8.1. The usual bits of upgrading, you might say. However, I had my eye on horde/yaml for a reason. I wanted to use it as part of my improvements to the…
-
PHP: Tentative Return Types
PHP 8.1 has introduced tentative return types. This can make older code spit out warnings like mad. Let’s examine what it means and how to deal with it.
-
Horde Installer: Recent Changes
Major codebase change. Now triggers on autoload-dump rather than earlier in the install phase. Outputs info to console, new comments in autogenerated files.