Before providing an API to a 3rd party: - Test your endpoints : Make sure it doesn't return 500 errors on the first request you try. - Provide clear documentation that covers the actual payload to be sent / received. Why is this so hard ?! 😓
VeeWee
@veewee.bsky.social
I'm an enthusiastic web developer from Belgium, interested in all new internet technologies and tricks.
In our #Symfony projects, we prefer working with DBAL instead of ORM. To make the setup a no-brainer, we provide a package that contains some handy DBAL related tools, configurations and much more: 🌎 github.com/phpro/dbal-t... 🏷️ #php #symfony #doctrine #dbal
GitHub - phpro/dbal-tools: Tools for working with DBAL in Symfony applications
Tools for working with DBAL in Symfony applications - phpro/dbal-tools
github.com
You can now browse through your WSDL metadata with a single terminal command! github.com/php-soap/wsd... #php #soap
We’ve just launched a quick online Playground so you can try Mago’s linter and formatter right in your browser. 🦀🐘 Check it out: playground.carthage.software #php
Mago: The Oxidized PHP Toolchain
Mago is a toolchain for PHP that aims to provide a set of tools to help developers write better code.
playground.carthage.software
Woo, Psalm v6 dropped! https://github.com/vimeo/psalm/releases/tag/6.0.0 Thanks @danog et al!
Release Psalm v6 · vimeo/psalm
This is the first release of Psalm v6! Users are encouraged to switch to Psalm v6 right away, as v5 is not supported anymore. Also announcing Psalm's new support model: you can support Psalm develo...
github.com
From now on, reflecta will tell you in advance when you try to get or set an unknown property through your static analyzer. github.com/veewee/refle...
Create an expression langauge in #php or another #programming language in one our or more (or read in 5 minutes or less) with my patented* expression langauge recipe (blog post) with added Godzilla: www.dantleech.com/blog/2025/01...
The One Hour Expression Language
This blog post is based on a talk I did entitled The One Hour Expression Language and aims to provide a review of both the concepts and the code in that talk1. An expression language2 in our sense is ...
dantleech.com
I might have seen a bit too much XML this week... github.com/phpro/soap-c... Have a nice weekend !
Release Version 4.1.0 · phpro/soap-client
What's Changed Mark non-intersecting types as nullable by @veewee in #562 Add property defaults assembler by @veewee in #564 Full Changelog: 4.0.0...4.1.0
github.com
Released soap-client v4 github.com/phpro/soap-c... Features: dropped the need for PHP ext-soap, improved configurability of code generation, backed enum generation, a flexible encoding system, ... Special thanks to buhta.com for making this possible! #soap #php
Release 4.0.0 · phpro/soap-client
This release adds support for long standing encoding issues. In order to solve these issues, this package uses a new encoding package. Starting from this release, you don't need PHP's ext-soap anym...
github.com
You can now send and receive multipart attachments with your beloved SOAP-client! github.com/php-soap/psr... #PHP #SOAP
GitHub - php-soap/psr18-attachments-middleware: Add SWA / MTOM attachments to your SOAP client
Add SWA / MTOM attachments to your SOAP client. Contribute to php-soap/psr18-attachments-middleware development by creating an account on GitHub.
github.com
#PHP, DTOs, C-DTO, and You 🫵 a mildly opinionated blog post www.dantleech.com/blog/2024/12...
PHP, DTOs, C-DTO and You 🫵
In my previous post I talked about Value Objects in this post I will talk about DTOs - Data Transfer Objects. As a disclaimer the contents of this blog post represents my current opinion and any abuse...
dantleech.com
🚀 Mago 0.0.16 is here! - Deterministic formatter testing ensures stability. - `mago lint --semantics-only` for quick checks. - New linter rules: `analysis/inheritance` & `analysis/instantiation`. 📖 Official docs launched: mago.carthage.software 🔗 github.com/carthage-sof...
Mago by Carthage Software
Mago - A comprehensive suite of PHP tooling inspired by Rust’s approach, providing parsing, linting, formatting, and more through a unified CLI and library interface.
mago.carthage.software
Talked about layers, variables, hit boxes, variables, loops and event systems with my kid without using any technical word. Scratch is awesome!
Spent the day generating backed enums. github.com/phpro/soap-c... #soap #php
Generate backed enums from XSD by veewee · Pull Request #561 · phpro/soap-client
This PR will generate PHP backed enum types for XSD enumerations: <simpleType name="PhoneTypeEnum"> <annotation> <documentation xml:lang="en">All p...
github.com
#Symfony 7.3 comes with a new JSON encoder component that is super efficient (10 times faster than the Serializer component with 2 times less memory). Great way to stream JSON payloads when combined with StreamedResponse. Component: https://buff.ly/3ZMQEgh Related PRs: https://buff.ly/3Zu2IBC
GitHub - symfony/json-encoder
Contribute to symfony/json-encoder development by creating an account on GitHub.
buff.ly
This is awesome work, all the slides and links of the SymfonyCon 2024 : github.com/SymfonyCon/2...
GitHub - SymfonyCon/2024-talks
Contribute to SymfonyCon/2024-talks development by creating an account on GitHub.
github.com
Just released Mago (formerly "Fennec") v0.0.1! 🎉 This early, non-production preview of our PHP toolchain comes with: - `mago lint `for linting - `mago fmt` for formatting (Prettier.js-style) - `mago ast` for AST insights Try it now and share your feedback! github.com/carthage-sof...
Release Mago 0.0.1 · carthage-software/mago
We are thrilled to share this early snapshot of Mago, a PHP toolchain inspired by the Rust ecosystem’s ergonomics, reliability, and developer experience. However, please note that this is a non-pro...
github.com
Mago ( previous fennec ), has been published in crates.io 🎉 🦀🐘🦊 crates.io/crates/mago
crates.io: Rust Package Registry
crates.io
Fennec Formatter is finally merged! 🎉 After weeks of work, I'm thrilled to announce that the Fennec Formatter is now part of the main branch! 🦀🦊🐘 While there's still room for improvement, it's in a solid state and ready for use. Stay tuned for more updates in the coming weeks! 😁
feat: formatter by azjezz · Pull Request #10 · carthage-software/fennec
This PR introduces our code formatter, built to provide a highly customizable and efficient solution for styling your PHP code. The formatter is inspired by the implementation of Prettier in Rust f...
github.com
You can now run #PHP code examples directly on the website thanks to #WASM! It's a first iteration, let me know if you think we can improve that! www.php.net/array-slice#...
PHP: Hypertext Preprocessor
PHP is a popular general-purpose scripting language that powers everything from your blog to the most popular websites in the world.
php.net
That's a lot of releases: Anyway, @roave /better-reflection 6.44.0 brings in #php 8.4 support (yes, including all the new stuff). https://github.com/Roave/BetterReflection/releases/tag/6.44.0
At its core, I see #EventSourcing as a transformation of a command and past events to a list of new events. The command is an intent to perform an action. Events capture decisions made. We can also get an error back if the command cannot be executed.
Sometimes a judicious xdebug_break() is the quickest and easiest way to start step-debugging.
I've been playing with postgres common table expressions in combination with json_agg and json_build_object functions for the whole week. It's amazing how much related nested data you can collect with only **one** (huge) SQL query 😲
#Symfony 7.2 has just been released. Here is a list of curated features symfony.com/blog/symfony... Big thanks to all the contributors!
Symfony 7.2 curated new features (Symfony Blog)
Symfony 7.2 curated new features
symfony.com
Here’s a blog post with more words on this approach: brm.us/auto-transit...
Experiment: Automatically triggered View Transitions with MutationObserver
A MutationObserver and document.startViewTransition love story.
brm.us