We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
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 ofselenium-webdriver
version 4.20.0 due to the removal ofSelenium::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
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
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
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
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
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
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
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
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
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.