Angular
Meet Angular v19 - In the past two years we doubled down on our investment in developer experience and performance — in every single release we’ve been consistently shipping improvements that multiply their impact when combined together. Seeing the positive community response and increased engagement in our developer events is validating that we’ve been moving in the right direction. Today’s release is bringing a series of improvements that will make it even easier for you to deliver fast web apps with confidence.
Laravel
Asymmetric Property Visibility in PHP 8.4 - PHP 8.4 is scheduled to be released tomorrow, and one exciting feature we haven't covered yet isAsymmetric Property Visibility. Starting in PHP 8.4, properties may also have their visibility set asymmetrically with a different scope for reading and writing.
PHP 8.4 is released with Property Hooks, Class Instantiation without extra parenthesis, and more - The PHP team has released PHP 8.4 with new array find functions, property hooks, class instantiation without extra parenthesis, and more: New Array Find Functions in PHP 8.4 (RFC), Property Hooks in PHP 8.4 (RFC), Class instantiation without extra parenthesis in PHP 8.4 (RFC), New mb_trim functions (RFC), New mb_ucfirst() and mb_lcfirst() functions (RFC), Asymmetric Property Visibility in PHP 8.4 (RFC) and more.
Transform Data into Type-safe DTOs with this PHP Package - This PHPData Modelpackage provides a lightweight, non-invasive way to hydrate type-safe PHP objects recursively. It uses reflection and PHP attributes to hydrate objects and instantiate them based on type hints.
Access Laravel Pulse Data as a JSON API - The Pulse API package byRoberto Galleagives you all the data available in Laravel Pulse as a JSON API. This package defines two API endpoints for getting Pulse data. These API endpoints are protected using a configurable Pulse middleware for authorization.
PostgreSQL
PostgreSQL 17.2, 16.6, 15.10, 14.15, 13.18, and 12.22 Released! - The PostgreSQL Global Development Group has released an update to all supported versions of PostgreSQL, including 17.2, 16.6, 15.10, 14.15, and 13.18. Additionally, due to the nature of one of the issues in theprevious update release, the PostgreSQL Global Development Group is also releasing a 12.22 release for PostgreSQL 12. PostgreSQL 12 is now EOL and will not receive more fixes. For the full list of changes, please review therelease notes.
Ruby on Rails
Add Active Support Notifications test helper module
This PR has been created because it’s currently cumbersome to test that a certain code block/action triggers anActiveSupport::Notifications::Eventto be emitted. It would be ideal to have some helpers toassertagainst such event emission. Have heard such helpers could be helpful internal to Rails as well.
Add “affected_rows” to “sql.active_record” event
Therecently addedrow_countvalue is very useful for identifying cases where a query would return a large result set as large results can end up using a lot of memory or even be blocked by databases like Vitess.
However, somewhere thatrow_countfalls short is for queries that do not necessarily return their results back to the client. These queries that affect too many rows can lead to their own set of problems, such as overwhelming replication and causing replication lag.
Allow “hidden_field” tag to accept a custom autocomplete value
In#43280autocomplete="off"was enforced for all hidden inputs generated by Rails to fix afirefox bug. Unfortunately it’s also a legitimate use-case to specify anautocompletewith a value such asusernameand a value on a hidden input. This hints to the browser that (in this example) the username of a password reset form is what we’ve provided as the value and the password manager can store it as such.
Allow to reset cache counters for multiple records
There is often a need to reset counter caches for multiple records. Achieving this before will generate many extra queries.
Parallel tests with :number_of_processors uses cgroups-aware usable processor count
When using parallel tests the default will now try to allocate a worker pool based of the total number of processors available to the system.
Fix Mysql2Adapter support for prepared statements
If you’re using the Mysql2 adapter and rely on prepared statements, you may want to wait for the next bug-fix release before upgrading to Rails 8.0.
SvelteKit
Snippets can now be used to fill slots (5.0.0-next.262,#13427)
hidden until-foundandbeforematchare now available on DOM elements (5.0.0-next.266,MDN Docs,#13612)
Breaking:State mutations are not allowed in logic block expressions (5.0.0-next.269,#13625)
getContext()is now allowed within$derivedrunes (5.1.0,Docs,#13830)