rails changelog


Hey there, fabulous devs! ๐ŸŽ‰ We've got some exciting updates and fixes to share with you. Check out the latest changes below:


New Features

  • Create preview tarball from directory: We now create a preview tarball from a directory, making it super easy to share and preview contents. Plus, we've optimized the process by moving artifacts instead of copying them. Less waste, more efficiency! ๐ŸŒŸ

  • Support hexBinary format in XML: We've added support for the hexBinary format in XML, allowing you to represent binary data in hexadecimal form. This makes working with binary data in XML documents a breeze! ๐Ÿง™โ€โ™‚๏ธโœจ

Improvements

  • Allow assertionless tests to be reported: Assertionless tests will now be included in test reports, giving you a more comprehensive view of your test coverage and results. No test left behind! ๐Ÿš€

  • Rename method to keep it consistent with others parse versions*: We've renamed a method to maintain consistency with other parse* versions. This ensures uniformity and clarity in our codebase. Consistency is key! ๐Ÿ”‘

  • Turn app:update Rake tasks into a Command: The app:update Rake tasks have been refactored into a more organized and modular Command structure. This makes managing and performing updates in your Rails application easier than ever! ๐Ÿ› ๏ธ

Bugfixes

  • Fix Ruby 3.4 internal frame cleaner test: We've fixed an issue with the internal frame cleaner test in Ruby 3.4, ensuring it functions correctly. ๐Ÿ›๐Ÿ”ง

  • Fix Rake :preview_docs tarball: Addressed an issue that caused a circular reference and resulted in a "tar: .: file changed as we read it" error. The tarball now creates successfully without any errors. ๐Ÿ“ฆโœ…

  • Skip selenium-webdriver version 4.20.0: We've skipped the installation of selenium-webdriver version 4.20.0 due to the removal of Selenium::WebDriver::DriverFinder.path. This will be restored once the necessary fix is implemented in a future version. ๐Ÿšซ๐Ÿ•ต๏ธโ€โ™‚๏ธ

Chores

  • Remove outdated comment: Cleaned up the codebase by removing an outdated comment. Keeping things neat and tidy! ๐Ÿงน

Enjoy the new features and improvements, and keep on coding! ๐Ÿš€โœจ

Included Commits

2024-04-22T13:12:51 See commit

This commit adds support for the hexBinary format in XML, allowing users to represent binary data in hexadecimal form within XML documents. This format is commonly used for encoding binary data in a human-readable format, making it easier to work with and understand. The addition of this feature expands the capabilities of XML documents by providing a more versatile way to handle binary data.

The changes made in this commit likely involve updating the XML parser or serializer to recognize and handle hexBinary data appropriately. This enhancement could be beneficial for applications that need to store or transmit binary data within XML documents, as it provides a more efficient and user-friendly way to work with this type of information. Overall, this update improves the functionality and flexibility of XML documents when dealing with binary data.

Files changed

2024-04-23T12:35:23 See commit

This commit involves renaming a method in the active_support/xml_mini.rb file to maintain consistency with other parse* versions. The method originally named parse_hex_binary was changed to _parse_hex_binary to align with the naming convention of similar methods. The changes were made to ensure uniformity and clarity in the codebase.

Additionally, the commit includes modifications to the active_support/test/xml_mini_test.rb file, where references to the renamed method were adjusted accordingly. The test for the hexBinary parsing functionality was updated to reflect the new method name _parse_hex_binary. These changes aim to enhance readability and maintain consistency across the codebase for future development and maintenance efforts.

Files changed

  • activesupport/lib/active_support/xml_mini.rb
  • activesupport/test/xml_mini_test.rb
2024-04-23T14:56:00 See commit

This commit changes the app:update Rake tasks into a Command in the Rails framework. The UpdateCommand class is added to the app/update_command.rb file, which includes methods to update configuration files, executables in the bin directory, and run the active_storage:update command. These methods are invoked from the perform method of the UpdateCommand class, which updates configs and some initially generated files in the application.

Overall, this commit refactors the app:update functionality into a more organized and modular Command structure. The UpdateCommand class now includes separate methods for updating configurations, executables, and active storage, making it easier to manage and perform updates in the Rails application. This change enhances the readability and maintainability of the codebase by encapsulating related update tasks within the UpdateCommand class.

Files changed

  • railties/lib/rails/commands/app/update_command.rb
2024-04-24T01:02:56 See commit

This commit creates a preview tarball from a directory, which allows for easier sharing and previewing of the contents within that directory. Additionally, the commit includes a change to move artifacts instead of copying them, in order to reduce waste and improve efficiency. This change helps to streamline the process of handling artifacts and reduces unnecessary duplication of files. Overall, these changes aim to enhance the handling and sharing of files within the project.

Files changed

2024-04-24T05:49:24 See commit

This commit removes an outdated comment from the codebase. The comment was no longer relevant to the current state of the code and was therefore deemed unnecessary. By removing the outdated comment, the codebase is now cleaner and easier to understand for developers working on the project. This change helps to improve the overall maintainability of the codebase and ensures that future developers are not misled by irrelevant or incorrect information in the comments.

Files changed

2024-04-24T06:59:03 See commit

This commit fixes an issue with the internal frame cleaner test in Ruby 3.4. It is a fixup for a previous commit, c85eca47f0d5845bb23a252748610b6cc618c673. The changes made in this commit address the issues with the internal frame cleaner test and ensure that it functions correctly in Ruby 3.4.

Files changed

2024-04-24T22:32:52 See commit

This commit allows assertionless tests to be reported, meaning that tests that do not contain any assertions will now be included in test reports. This change ensures that all tests, including those without explicit assertions, are accounted for and included in the overall test results. This can help provide a more comprehensive view of the test coverage and results, even for tests that may not have traditional pass/fail outcomes.

By including assertionless tests in the test reports, developers can more easily identify areas of the codebase that may not have sufficient test coverage or may need further testing. This enhancement can help improve the overall quality and reliability of the code by ensuring that all tests, regardless of their specific assertions, are being accounted for and monitored in the testing process.

Files changed

2024-04-25T23:48:30 See commit

This commit addresses the issue of skipping the installation of selenium-webdriver version 4.20.0 due to the removal of Selenium::WebDriver::DriverFinder.path, which was unintentional. The commit ensures that this version is not installed and mentions that the functionality will be restored once a newer version of selenium-webdriver is available that includes the necessary fix for the issue. The fix is related to GitHub issue #51658.

Overall, this commit prevents the installation of a problematic version of selenium-webdriver and acknowledges the issue caused by the removal of a specific functionality. It also highlights the plan to restore the functionality once a fix is implemented in a future version of the software.

Files changed

2024-04-26T07:13:01 See commit

This commit fixes an issue with the Rake :preview_docs tarball that was causing a circular reference and resulting in a "tar: .: file changed as we read it" error message. The fix addresses this issue and ensures that the tarball is created successfully without any errors.

Files changed