<?xml version="1.0" encoding="UTF-8"?>
<!-- AUTOGENERATED FILE. DO NOT EDIT. -->
<feed xmlns="http://www.w3.org/2005/Atom">
  <id>tag:google.com,2016:gaeflex-ruby-release-notes</id>
  <title>App Engine flexible environment Ruby - Release notes</title>
  <link rel="self" href="https://docs.cloud.google.com/feeds/gaeflex-ruby-release-notes.xml"/>
  <author>
    <name>Google Cloud Platform</name>
  </author>
  <updated>2026-03-17T00:00:00-07:00</updated>

  <entry>
    <title>March 17, 2026</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#March_17_2026</id>
    <updated>2026-03-17T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#March_17_2026"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>Support for <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime">Ruby 4.0 runtime</a> is in <a href="https://cloud.google.com/products/#product-launch-stages">General Availability</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>March 03, 2026</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#March_03_2026</id>
    <updated>2026-03-03T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#March_03_2026"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>Support for <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime">Ruby 4.0 runtime</a> is in <a href="https://cloud.google.com/products/#product-launch-stages">Preview</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>October 20, 2025</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#October_20_2025</id>
    <updated>2025-10-20T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#October_20_2025"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p><a href="https://docs.cloud.google.com/appengine/docs/flexible/secure-minimum-tls">Support for TLS version 1.2 and later</a>,
along with a corresponding secure set of cipher suites, is in General
Availability (GA).</p>
]]>
    </content>
  </entry>

  <entry>
    <title>August 07, 2025</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#August_07_2025</id>
    <updated>2025-08-07T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#August_07_2025"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>To increase security, starting in March 2025, support for Transport Layer Security (TLS) version 1.1 and earlier is deprecated. <a href="https://docs.cloud.google.com/appengine/docs/flexible/secure-minimum-tls">Update your application settings</a> in the App Engine flexible environment to use TLS version 1.2 and later, along with a corresponding secure set of cipher suites (Preview).</p>
]]>
    </content>
  </entry>

  <entry>
    <title>June 17, 2025</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#June_17_2025</id>
    <updated>2025-06-17T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#June_17_2025"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>Support for the <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime">Ruby 3.4 runtime</a> is in <a href="https://cloud.google.com/products/#product-launch-stages">General Availability (GA)</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>May 05, 2025</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#May_05_2025</id>
    <updated>2025-05-05T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#May_05_2025"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>Support for <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime">Ruby 3.4 runtime</a> is in <a href="https://cloud.google.com/products/#product-launch-stages">Preview</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>March 18, 2025</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#March_18_2025</id>
    <updated>2025-03-18T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#March_18_2025"/>
    <content type="html"><![CDATA[<h3>Announcement</h3>
<p>Container Registry is now <a href="https://docs.cloud.google.com/artifact-registry/docs/transition/prepare-gcr-shutdown">shut down</a>. We recommend that you use <a href="https://docs.cloud.google.com/artifact-registry/docs/overview">Artifact Registry</a> for storing and managing container images. By default, new deployments created after March 5, 2025, use Artifact Registry instead of Container Registry for storing application build images. For more information, see <a href="https://docs.cloud.google.com/appengine/migration-center/migrate-to-artifact-registry">Migrate App Engine container images to Artifact Registry</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>July 31, 2024</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#July_31_2024</id>
    <updated>2024-07-31T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#July_31_2024"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p><a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime">Ruby 3.3</a> is now <a href="https://cloud.google.com/products/#product-launch-stages">generally available</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>July 30, 2024</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#July_30_2024</id>
    <updated>2024-07-30T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#July_30_2024"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>In the App Engine page in the Google Cloud console, you can now filter your existing App Engine versions by <a href="https://docs.cloud.google.com/appengine/docs/flexible/lifecycle/runtime-lifecycle">runtime lifecycle stages</a>. After you apply this filter, the console displays a warning icon for App Engine versions that are approaching end of support, have reached end of support, are deprecated, and are decomissioned.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>July 12, 2024</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#July_12_2024</id>
    <updated>2024-07-12T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#July_12_2024"/>
    <content type="html"><![CDATA[<h3>Announcement</h3>
<p>Deployments for new projects might be impacted from the following changes to org
policies:</p>
<ul>
<li>Starting in May 2024, Google Cloud enforces <a href="//resource-manager/docs/secure-by-default-organizations">secure-by-default organization policies</a> for all organization resources. This policy
prevents App Engine from granting the <code>Editor</code> role to the App Engine default
services accounts by default.</li>
<li>Starting in June 2024, Cloud Build has changed the default behavior for how Cloud Build uses service accounts in new projects. This change is detailed in <a href="https://docs.cloud.google.com/build/docs/cloud-build-service-account-updates">Cloud Build Service Account Change</a>.  As a result of this change, new projects deploying versions for the first time may be using the default App Engine service account with <a href="https://docs.cloud.google.com/resource-manager/docs/organization-policy/restricting-service-accounts#disable_service_account_default_grants%22">insufficient permissions</a> for deploying versions. </li>
</ul>
<p>If you are impacted by this change, you can do the following:</p>
<ul>
<li>Review the Cloud Build guidance on changes to the default service account and <a href="https://docs.cloud.google.com/build/docs/cloud-build-service-account-updates#what_do_you_need_to_do">opt out of these changes</a>.</li>
<li>Grant the <a href="https://docs.cloud.google.com/appengine/docs/flexible/roles">Editor</a> role to the App Engine default service account.</li>
</ul>
]]>
    </content>
  </entry>

  <entry>
    <title>July 10, 2024</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#July_10_2024</id>
    <updated>2024-07-10T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#July_10_2024"/>
    <content type="html"><![CDATA[<h3>Announcement</h3>
<p>Ruby version 3.1 and earlier have reached <a href="https://docs.cloud.google.com/appengine/docs/flexible/lifecycle/runtime-lifecycle#end_of_support">end of support</a>. You cannot re-deploy versions that use runtimes <a href="https://docs.cloud.google.com/appengine/docs/flexible/lifecycle/support-schedule#ruby">after their end of support date</a>. We recommend that you upgrade your app to use the <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime#newversions">latest version of Ruby</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>June 18, 2024</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#June_18_2024</id>
    <updated>2024-06-18T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#June_18_2024"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p><a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime">Ruby 3.3</a> is now available <a href="https://cloud.google.com/products/#product-launch-stages">in preview</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>December 21, 2023</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#December_21_2023</id>
    <updated>2023-12-21T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#December_21_2023"/>
    <content type="html"><![CDATA[<h3>Change</h3>
<p>A warning message now appears before you publish a container image to a public repository.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>August 07, 2023</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#August_07_2023</id>
    <updated>2023-08-07T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#August_07_2023"/>
    <content type="html"><![CDATA[<h3>Change</h3>
<p>Accessing a service that's prohibited by the <b>Internal</b> or <b>Internal and Cloud Load Balancing</b> <a href="https://docs.cloud.google.com/appengine/docs/flexible/ingress-settings">ingress setting</a> now results in a <code>404</code> rather than <code>403</code> error code.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>May 11, 2023</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#May_11_2023</id>
    <updated>2023-05-11T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#May_11_2023"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p><a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime">Ruby 3.2</a> is now <a href="https://cloud.google.com/products/#product-launch-stages">generally available</a>. This version requires you to specify an operating system version in your <code>app.yaml</code> file. <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime#newversions">Learn more</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>April 27, 2023</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#April_27_2023</id>
    <updated>2023-04-27T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#April_27_2023"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p><a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime">Ruby 3.2</a> is now available in <a href="https://cloud.google.com/products/#product-launch-stages">preview</a>. This version requires you to specify an operating system version in your <code>app.yaml</code> file. <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/runtime#newversions">Learn more</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>March 24, 2023</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#March_24_2023</id>
    <updated>2023-03-24T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#March_24_2023"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>You can now use <code>ssh</code> to log in to App Engine flexible environment instances that use only <a href="https://docs.cloud.google.com/appengine/docs/flexible/disable-external-ip">internal IP addresses</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>December 13, 2022</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#December_13_2022</id>
    <updated>2022-12-13T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#December_13_2022"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>You can now use any configured <a href="https://docs.cloud.google.com/iam/docs/service-accounts">service account</a> in your Cloud project as the <a href="https://docs.cloud.google.com/appengine/docs/flexible/configure-service-accounts">app-level default service account</a>, while creating and updating your App Engine applications.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>November 09, 2022</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#November_09_2022</id>
    <updated>2022-11-09T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#November_09_2022"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>The option to set <a href="https://cloud.google.com/appengine/docs/flexible/troubleshooter/connectivity-questions#virtual_machines_with_only_internal_ip_addresses_require">IP mode to <code>internal</code></a> for App Engine flexible environment instances is now generally available.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>May 23, 2022</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#May_23_2022</id>
    <updated>2022-05-23T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#May_23_2022"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>You can now disable external ephemeral IP addresses for App Engine Flex services. Read our documentation to <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/disable-external-ip">learn how</a>. This feature is at the <a href="https://cloud.google.com/products/#product-launch-stages">Preview</a> launch stage.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>May 18, 2022</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#May_18_2022</id>
    <updated>2022-05-18T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#May_18_2022"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>Specifying a <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/user-managed-service-accounts">user-managed service account</a> for each App Engine version during deployment is now <a href="https://cloud.google.com/products/#general-availability">generally available</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>July 19, 2021</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#July_19_2021</id>
    <updated>2021-07-19T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#July_19_2021"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>Specifying a <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/user-managed-service-accounts">user-managed service account</a> for each App Engine version during deployment is now available in preview. This feature lets you grant different privileges to each version, based on the specific tasks it performs, and avoid granting more privileges than necessary.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>June 30, 2021</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#June_30_2021</id>
    <updated>2021-06-30T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#June_30_2021"/>
    <content type="html"><![CDATA[<h3>Change</h3>
<p>Requests from internal services to the App Engine flexible environment no longer originate from <code>10.0.0.1</code>. The IP ranges are as follows:</p>
<ul>
<li>Cron requests from newly created or updated App Engine Cron jobs sent to the App Engine flexible environment now come from <code>0.1.0.2</code>. For Cron jobs created with older gcloud versions (earlier than 326.0.0), Cron requests will come from <code>0.1.0.1</code>. Previously, these requests only came from both <code>0.1.0.1</code> and <code>10.0.0.1</code>.</li>
<li>For other Cloud Scheduler jobs and Cloud Tasks queues (including App Engine Task Queues), requests sent to the App Engine flexible environment now only come from <code>0.1.0.2</code>.  Previously, these requests came from both <code>0.1.0.2</code> and <code>10.0.0.1</code>.</li>
<li>For URL Fetch, requests sent to the App Engine flexible environment now only come from <code>0.1.0.40</code>. Previously, these requests came from both <code>0.1.0.40</code> and <code>10.0.0.1</code>.</li>
</ul>
<p>For more information, see <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/understanding-firewalls">Understanding the App Engine firewall</a>.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>June 14, 2021</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#June_14_2021</id>
    <updated>2021-06-14T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#June_14_2021"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>App Engine is now available in the <code>us-west1</code> (Oregon), <code>asia-southeast1</code> (Singapore), and <code>asia-east1</code> (Taiwan) regions.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>April 13, 2021</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#April_13_2021</id>
    <updated>2021-04-13T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#April_13_2021"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>App Engine is now available in the <code>europe-central2</code> region (Warsaw).</p>
]]>
    </content>
  </entry>

  <entry>
    <title>November 12, 2020</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#November_12_2020</id>
    <updated>2020-11-12T00:00:00-08:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#November_12_2020"/>
    <content type="html"><![CDATA[<h3>Change</h3>
<p>You can use <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/application-security#ingress_controls">network ingress controls</a> so your app only receives requests that are sent from your project's VPC or that are routed through the Cloud Load Balancing load balancer. This feature is now generally available.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>September 25, 2020</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#September_25_2020</id>
    <updated>2020-09-25T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#September_25_2020"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>You can use <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/application-security#ingress_controls">network ingress controls</a> so your app only receives requests that are sent from your project's VPC or that are routed through the Cloud Load Balancing load balancer.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>July 08, 2020</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#July_08_2020</id>
    <updated>2020-07-08T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#July_08_2020"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>External HTTP(S) Load Balancing is now supported for App Engine via <a href="//load-balancing/docs/negs/setting-up-serverless-negs">Serverless network endpoint groups</a>. Notably, this feature allows you to use <a href="https://docs.cloud.google.com/cdn">Cloud CDN</a> with App Engine.<br/>
This feature is available in Beta.</p>
]]>
    </content>
  </entry>

  <entry>
    <title>June 08, 2020</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#June_08_2020</id>
    <updated>2020-06-08T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#June_08_2020"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>App Engine is now available in the <code>asia-southeast2</code> region (Jakarta).</p>
]]>
    </content>
  </entry>

  <entry>
    <title>May 14, 2020</title>
    <id>tag:google.com,2016:gaeflex-ruby-release-notes#May_14_2020</id>
    <updated>2020-05-14T00:00:00-07:00</updated>
    <link rel="alternate" href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/release-notes#May_14_2020"/>
    <content type="html"><![CDATA[<h3>Feature</h3>
<p>To get a fine-grained view of billing data for each resource used by your App Engine services, you can apply labels to the services, export your billing data to BigQuery, and run queries. For more information, see <a href="https://docs.cloud.google.com/appengine/docs/flexible/ruby/labeling-resources">Labeling App Engine resources</a>.</p>
]]>
    </content>
  </entry>

</feed>
