Here are the slides I presented at the AFUP Day Lille 2023 and the companion Pull Request on Composer: Abstract When you install a JavaScript library, it usually comes with hundreds of transitive dependencies, i.e. libraries that are installed as a side effect because they are essential to the operation of the library you want…
Tag: PHP
Symfony ImportMaps: Manage Your JavaScript Dependencies Without Node
View the recording of this talk (in French) View the Pull Request Yarn, NPM, pnpm, Babel, SWC, Webpack, TurboPack, Rollup, Parcel… Is it really necessary to introduce so much complexity to create a beautiful and interactive website? The Symfony UX initiative greatly simplified how to build frontend applications with Symfony by going back to the…
Securely Access Private Git Repositories and Composer Packages in Docker Builds
When working on enterprise projects, it’s common to have to download private dependencies that require authentication to be installed (usually, internal or paid packages). In modern setups, you’ll most likely use Docker to package your application (or service) and all its dependencies into a standalone image. Typically, building the Docker image is automated through a…
Goroutines, threads, and thread IDs
If you attended AFUP Day 2022, you might know that I am currently working on a PHP module for web servers written in Go. While testing my upcoming library, I encountered strange memory access issues related to the threads created by the Go runtime (you know, cgo…). By default, the Go scheduler runs many goroutines…
JSON Columns and Doctrine DBAL 3 Upgrade
Version 3 of the popular Doctrine DBAL library has been released at the end of 2020, almost 10 years after the initial release of version 2. In September 2021, Doctrine ORM 2.10 added support for DBAL 3, while still supporting DBAL 2 at the same time. Versions prior to 2.10 aren’t compatible with DBAL 3….
Schema Generator 3: A Step Towards Redecentralizing the Web!
I just released API Platform Schema Generator version 3! It’s a command-line tool, part of the API Platform framework, that instantly generates a complete PHP data model (classes, enumerations, ORM mapping, validation rules, web API definitions, PHPDoc…) from RDF vocabularies and ontologies. RDF vocabularies are commonly used to define web-scale (Schema.org), industry-wide (The NASA Air…
API Platform 2.6: PHP 8 support, Next.js and Nuxt.js app generator, Caddy server, ActivityPub and much more!
During my talk at SymfonyWorld, I announced the immediate availability of API Platform 2.6! Try it now! Version 2.6 is the result of more than one year of work and hundreds of commits. It contains a huge list of new features, checkout the change logs (core library, distribution) for the full list. In this blog…
Mercure – Real-Time for PHP Made Easy (Forum PHP)
Yesterday at Forum PHP 2019 I presented how easy it is to create real-time apps using PHP (among other languages) and the Mercure protocol. I also introduced the shiny and new Mercure website (designed by Laury S.)! A special thanks to Eric Comellas who jumped on stage to explain how iGraal uses Mercure on a…
API Platform 2.5: revamped Admin, new API testing tool, Next.js and Quasar app generators, PATCH and JSON Schema support, improved OpenAPI and GraphQL support
I’m very excited to announce the immediate availability of API Platform 2.5! API Platform is a set of standalone server and client components for building and consuming REST (JSON-LD, Hydra, JSON:API…) and GraphQL APIs. The server components use PHP and Symfony while the client-side components (which support any Hydra-enabled web API, even the ones not…
Upcoming conferences: AFUP Day, Web2Day, API Platform Meetup and more!
During the spring I’ll speak at several tech events about my projects Mercure (Go), API Platform (PHP, server-side and JS, client-side) and Symfony Panther (PHP/WebDriver): AFUP Day, May 17th in Lille Discover Symfony Panther, a brand new end-to-end testing tool using real web browsers for Symfony and PHP. API Platform pre-Web2day meetup, June 3th in…