CINXE.COM
This week in Rails
<!DOCTYPE html style="height: 100%"> <!--[if lt IE 7 ]> <html class="ie6 lt-ie7" lang="en"> <![endif]--> <!--[if IE 7 ]> <html class="ie7 lt-ie8" lang="en"> <![endif]--> <!--[if IE 8 ]> <html class="ie8 lt-ie9" lang="en"> <![endif]--> <!--[if IE 9]> <html class="ie9 lt-ie10" lang="en"> <![endif]--> <!--[if (gt IE 9)|!(IE)]><!--> <html lang="en"> <!--<![endif]--> <!-- Nice to see you took a peek here, hello --> <!-- send us an email at hello at goodbits dot io if you want to talk tech --> <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# business: http://ogp.me/ns/business#"> <meta http-equiv="x-ua-compatible" content="IE=Edge"/> <meta charset="utf-8" /> <title>This week in Rails</title> <meta name="description" content="The newsletter moved to https://world.hey.com/this.week.in.rails Follow the new place for updates. " /> <meta name="author" content="Godfrey Chan"> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta property="og:site_name" content="This week in Rails"> <meta property="og:title" content="This week in Rails"> <meta property="og:description" content="The newsletter moved to https://world.hey.com/this.week.in.rails Follow the new place for updates. "> <meta property="og:type" content="website"> <meta property="business:contact_data:street_address" content="30 N Racine #200" > <meta property="business:contact_data:locality" content="Chicago" > <meta property="business:contact_data:postal_code" content="60607" > <meta property="business:contact_data:country_name" content="US" > <meta name="twitter:title" content="This week in Rails"> <meta name="twitter:description" content="The newsletter moved to https://world.hey.com/this.week.in.rails Follow the new place for updates. "> <link id="feedLink" rel="alternate" type="application/rss+xml" title="RSS" href="/feed"> <link rel="shortcut icon" href="/icons/apple-touch-icon-72x72.png" type="image/x-icon" /> <link rel="apple-touch-icon" href="/icons/apple-touch-icon.png" /> <link rel="apple-touch-icon" sizes="57x57" href="/icons/apple-touch-icon-57x57.png" /> <link rel="apple-touch-icon" sizes="72x72" href="/icons/apple-touch-icon-72x72.png" /> <link rel="apple-touch-icon" sizes="114x114" href="/icons/apple-touch-icon-114x114.png" /> <link rel="apple-touch-icon" sizes="144x144" href="/icons/apple-touch-icon-144x144.png" /> <link rel="apple-touch-icon" sizes="57x57" href="/icons/apple-touch-icon-60x60.png" /> <link rel="apple-touch-icon" sizes="72x72" href="/icons/apple-touch-icon-120x120.png" /> <link rel="apple-touch-icon" sizes="114x114" href="/icons/apple-touch-icon-76x76.png" /> <link rel="apple-touch-icon" sizes="144x144" href="/icons/apple-touch-icon-152x152.png" /> <meta name="msapplication-square70x70logo" content="/icons/smalltile.png" /> <meta name="msapplication-square150x150logo" content="/icons/mediumtile.png" /> <meta name="msapplication-wide310x150logo" content="/icons/widetile.png" /> <meta name="msapplication-square310x310logo" content="/icons/largetile.png" /> <link rel="stylesheet" media="screen" href="/assets/landing-sites-manifest-79383ba516e319cf3d0268f1d3bdb9926247aa0f9df31c59fe21db7a16aac5bc.css" /> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="lEezimSgcrDfT+c95w1UGYj1d986hKCstTjwbRlPyePxiEZBOS9GlHQNKwwmq0ND1zAYRBpFMOlyszKqHr6ntw==" /> <style> .subscribe-form--image-wrapper { background-image: url(''); } .primary-background-color { background-color: #741212 !important; } .primary-text-color { color: #741212 !important; } .primary-border-color { border-color: #741212 !important; } .secondary-background-color { background-color: #f7d6e5 !important; } .secondary-text-color { color: #f7d6e5 !important; } .secondary-border-color { border-color: #f7d6e5 !important; } .subscribe-form--image-wrapper:before { opacity: 1; } </style> </head> <body class="newsletter_landing_site_index newsletter_landing_site index"> <div class="container-fluid"> <div class="top"> <!-- Thin banner --> <div id="subscribe-form" class="row newsletter-header primary-background-color "> <div class="subscribe-form--image-wrapper"> </div> <div class="newsletter-header--content"> <div class="clearfix"> <div class="col-xs-offset-1 col-xs-10 col-sm-offset-1 col-sm-10 col-md-offset-2 col-md-8 col-lg-offset-2 col-lg-8 col-xl-offset-3 col-xl-6 text-center"> <h1 class="newsletter-header--name secondary-text-color"> <a href="/">This week in Rails</a> </h1> <hr> <h2 class="newsletter-header--description secondary-text-color"> <p>The newsletter moved to <a href="https://world.hey.com/this.week.in.rails">https://world.hey.com/this.week.in.rails</a><br> Follow the new place for updates.</p> </h2> </div> </div> </div> </div> <div id="public-issue-reader" class=""> <div class="row"> <div class="col-xs-12 col-sm-offset-1 col-sm-10 col-md-offset-2 col-md-8 col-lg-offset-3 col-lg-6 text-center"> <a rel="prev" class="prev-issue primary-text-color" href="/rails-7-alpha-released">Sep 17</a> <p class="content-title primary-text-color"> <a href="/autumn-is-here-and-so-is-rails-7-alpha-2">Sep 27 2021</a> </p> <h3 class="content-subtitle"> <a href="/autumn-is-here-and-so-is-rails-7-alpha-2">Autumn is here, and so is Rails 7 Alpha 2! 馃崅</a> </h3> <hr class="content-seperator"> </div> </div> <div class="row"> <div class="col-xs-12 col-sm-offset-1 col-sm-10 col-md-offset-2 col-md-8 col-lg-offset-3 col-lg-6 text-center landing-site-email-content"> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt"> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding-top: 10px; padding-bottom: 10px;" align="center"> <img src="https://uploads.goodbits.io/uploads/content_block/image/587427/a84d97aa-e8a4-4c82-95dd-662436c3b2d2.png" border="0" width="100%" class="img-max" style="-ms-interpolation-mode:bicubic;border:0;height:auto;line-height:100%;outline:none;text-decoration:none"> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px 0; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt"> <div style="font-size: 18px; font-family: Georgia, Times, 'Times New Roman', serif; line-height: 1.5; color: #4E4E4E; padding-bottom: 0; margin-bottom: 20px; display: block; "><div>Hey! <a href="https://github.com/zzak" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none" target="_blank">Zzak</a> here with a JAM-PACKED edition of This Week In Rails. 馃崌</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/36289" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Server Timing Middlware for Development</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This PR started nearly 2 and a half years ago, finally made its way into Rails!<br><br>A really neat feature, uses the <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Server-Timing" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none" target="_blank">Server-Timing header</a> to emit durations for all ActiveSupport::Notifications. You can then view these metrics in your browser's Network Inspector.聽</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42234" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Allow link_to helper to infer link name from Model#to_s</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>If your model defines #to_s, you can now take advantage of this feature without having to supply a second argument to link_to.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/41487" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Adds support for deferrable foreign key constraints in PostgreSQL</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>By default, foreign key constraints in PostgreSQL are checked after each statement. This works for most use cases, but becomes a major limitation when creating related records before the parent record is inserted into the database. Check out the PR for some examples and more detail.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43061" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">GitHub Codespaces configuration</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This PR adds support for <a href="https://github.com/features/codespaces" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none" target="_blank">GitHub Codespaces</a>, which allows contributors to easily boot a fully functional environment to create patches and test changes to Rails.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43113" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Close Rails Guides menu dropdown by pressing Escape</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>A welcome UX patch that lets you close the menu dropdown by pressing the Escape key.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43250" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Improve margin styles for Rails Guides</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>We always appreciate when folks help improve our documentation, especially the visual aspect to make reading on multiple devices a pleasure.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42989" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Fix the diff highlight background for Rails Guides dark mode</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>Another great UX patch for Rails Guides that is always appreciated.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43227" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Suggest a CSP that's compatible with Turbo + import map</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>In order for CSP to work with Turbo and an import map, we need nonces to be generated. This PR changes the generated CSP initializer to use per-session nonces instead of per-request nonces which would have negative impact on caching.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43254" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Add Bootstrap and Bulma to the CSS processors' list</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>As support for more CSS processors are added to <a href="https://github.com/rails/cssbundling-rails" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none" target="_blank">cssbundling-rails</a>, we've updated the `rails new --help` text to include currently available options.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43156" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Don't overwrite default opts in rich_text_area_tag</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This PR enables passing in a custom `direct_upload_url` or `blob_url_template` to `rich_text_area_tag`. In the case you want to use your own controller to authenticate requests or perform server-side validations.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43216" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Avoid comment statements in pg:dump</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This PR adds the --no-comment flag to pg_dump to ensure COMMENT statements are omitted from the output when using PostgreSQL >= 11.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43270" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Require latest release candidate for selenium-webdriver in Rails new</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>Since the "rexml" gem was removed from Ruby version >= 3 the selenum-webdriver gem has been waiting for a release that includes their updated dependency on the standard library gem.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42475" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Support clearing acronyms from inflector</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>Previously attempting to clear acronyms in the Inflector breaks would result in a TypeError.<br><br> </div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42501" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Allow permitting numeric params</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>ActionController::Parameters now lets you specify multiple parameters index by a number. This may be necessary if the parameters belong to a numeric key.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43209" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Check basic auth credentials before authenticate</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This PR fixes a bug when sending invalid basic authorization header data when using `http_basic_authentication_with`.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42872" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Render host_authorization debug view only for local requests</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This PR fixes a bug where debugging information was visible in production by restricting access to local requests only.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43276" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Add missing migrate command to Getting Started Rails Guide</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This might seem like a minor patch, but contributions from folks learning Ruby on Rails for the first time is a healthy sign. Changes like these help ease the difficulty of learning and welcomes new contributors to the community.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42227" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Active Storage: deprecate invalid default content types</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>Blobs created with content_type `image/jpg`, `image/pjpeg`, `image/bmp`, `text/javascript` will now produce a deprecation warning, since these are not valid content types.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42840" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Allow configuring PostgreSQL connection password through socket URL</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This PR allows you to specify your password using a socket URL, such as "postgres:///?user=user&password=secret&dbname=app".</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43280" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Add autocomplete="off" to all generated hidden fields</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>Due to a <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=520561" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none" target="_blank">longstanding Firefox bug</a>, this PR ensures hidden fields such as CSRF token and HTTP method fields are not modified without the user's knowledge.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/43037" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Add beginning_of_week option to weekday_options_for_select</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>Now you can specify the beginning of the week to this select field without depending on Date.beginning_of_week.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42970" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Action Mailer email_address_with_name now returns the email if name is blank</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>When sending an email using Action Mailer the object referencing the person you want to send it to may not have a name associated with it. For example, in the case this field is optional for your User record. In this case Action Mailer will now use the target email address.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td align="left" valign="top" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 0; "> <div style="margin-bottom: 15px; padding-top: 0; font-size: 21px; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: bold; word-break: break-word;"><a href="https://github.com/rails/rails/pull/42470" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none;color: #741212;" target="_blank">Add missing DOM ids to rails/mailers/email.html template</a></div> <div style="display: block; font-size: 18px; font-family:Georgia, Times, 'Times New Roman', serif; margin-top: 0; margin-bottom: 15px; line-height: 1.5; color: #4E4E4E; word-break: break-word;"><div>This PR will help folks testing their Mailer Preview actions by using unique identifiers to select the mail data from the DOM instantly.</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" width="100%" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td bgcolor="#ffffff" align="center" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;padding: 15px 15px 0; "> <table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%" class="responsive-table" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt;border-collapse:collapse !important"> <tbody> <tr> <td style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;mso-table-lspace:0pt;mso-table-rspace:0pt"> <div style="font-size: 18px; font-family: Georgia, Times, 'Times New Roman', serif; line-height: 1.5; color: #4E4E4E; padding-bottom: 0; margin-bottom: 20px; display: block; "><div> <a href="https://contributors.rubyonrails.org/contributors/in-time-window/20210917-20210926" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none" target="_blank">35 people</a> contributed (over 120 commits!) to Rails since last time. All the changes can be checked <a href="https://github.com/rails/rails/compare/@%7B2021-09-18%7D...main@%7B2021-09-26%7D" style="-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;color:#741212;text-decoration:none" target="_blank">here</a>. Until next week!</div></div> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </div> </div> </div> <hr /> <div class="infinite-table"> <p class="title">Previous Issues </p> <table> <ul id="archives"> <li class="archive-item"> <span class="issue-date">Sep 27 </span> <a href="/autumn-is-here-and-so-is-rails-7-alpha-2"> <h3>Autumn is here, and so is Rails 7 Alpha 2! 馃崅</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Sep 17 </span> <a href="/rails-7-alpha-released"> <h3>Rails 7 alpha released</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Sep 11 </span> <a href="/bye-bye-byebug-hello-jsbundling-and-cssbundling"> <h3>Bye-bye Byebug, Hello jsbundling and cssbundling!</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Aug 28 </span> <a href="/remove-default-reliance-on-sass-and-more"> <h3> Remove default reliance on Sass and more!</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Aug 21 </span> <a href="/good-bye-classic-mode-skip-puma-skip-gemfile-hello-weekday_options_for_select"> <h3>Good-bye classic mode, --skip-puma, --skip-gemfile.. hello weekday_options_for_select!</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Aug 13 </span> <a href="/esm-importmap-and-marginalia"> <h3>ESM importmap and Marginalia</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Aug 8 </span> <a href="/active-record-goodies-and-more"> <h3>Active Record goodies and more!</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Jul 31 </span> <a href="/favicons-invalidauthenticitytoken-message-gains-journey-optimizations-and-more"> <h3>Favicons, InvalidAuthenticityToken message gains, Journey optimizations and more!</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Jul 23 </span> <a href="/active-record-improvements-and-much-more"> <h3>Active record improvements and much more</h3> </a> </li> <li class="archive-item"> <span class="issue-date">Jul 19 </span> <a href="/performance-and-parallel-testing-improvements-and-more"> <h3>Performance and parallel testing improvements and more!</h3> </a> </li> </ul> </table> <p class="pagination"> <a id="next-page" class="btn primary-text-color" href="/archives?page=2" data-remote="true"> Load More </a> </p> </div> </div> <footer> <div class="row"> <div class="col-xs-offset-1 col-xs-10 col-md-offset-2 col-md-8 text-center"> <p>漏 2014-2025 This week in Rails.</p> <a class="gb-branding" title="Easy, email newsletters in minutes." href="https://goodbits.io?utm_campaign=ogb&utm_term=footer"> <img class="logo" src="/assets/Goodbits-logo-square-wrapper-10c5ca056d1926ed5a5bbfca7674a10d9ddccea3614434653d8742e3b21bcad7.png" alt="Goodbits logo square wrapper" /> Published on Goodbits </a> </div> </div> </footer> </div> <script src="/assets/landing_sites_manifest-16fe67ca7942568247f6ad480c54ad3aee4ffa015158f0c3fddc5b6d2b981c1b.js"></script> </body> </html>