Friday, April 21, 2023

The beginning of Trilogy, ChatGPT as a contributor

Posted by Wojtek

Hi. Wojtek here. We had 88 contributors this week including ChatGPT! Let’s explore the changes.

AppSignal is the newest contributing member of The Rails Foundation
It’s the third company to join The Rails Foundation as a contributing member.

Introduce adapter for Trilogy
Trilogy is a client library for MySQL-compatible database servers, designed for performance, flexibility, and ease of embedding. The Trilogy database client and corresponding Active Record adapter were both open sourced by GitHub last year.

Improve password length validation for BCrypt compatibility
Everything in this pull request, including the code, tests, changelog, commit message, pull request title and description were created by ChatGPT with some guidance.

Add ActiveSupport::MessagePack
ActiveSupport::MessagePack is a serializer that integrates with the msgpack gem to serialize a variety of Ruby objects. Compared to JSON and Marshal, AS::MessagePack can provide a performance improvement and message size reduction.

Allow queue adapters to provide a custom name
This gives queue adapters more freedom to name and organize their code.

Adds support USING INDEX for unique constraints in PostgreSQL.
Follow up to a recent feature with PostgreSQL unique constraints Adds :using_index option to use an existing index when defining a unique constraint.

Show reason for foreign key error when loading fixtures
Ease to spot issues with loading fixtures by getting appropriate error message with details.

Reduce captures in ActiveSupport::Inflector#underscore
This pull request changes a gsub! in ActiveSupport::Inflector#underscore to not use captures. This skips creating small strings by $1/$2 and appending an underscore, and instead, excludes the character to be kept from the replacement target.

You can view the whole list of changes here.
We had 88 contributors to the Rails codebase this past week!

Until next time!

Subscribe to get these updates mailed to you.