{"article":{"slug":"forgejo-v17-0-is-available","title":"Forgejo v17.0 is available","subtitle":null,"summary":"Forgejo announces version 17.0 of the community-driven Git forge, covering notable changes, upgrade notes and release artifacts for self-hosted teams that want an open alternative to proprietary code hosts.","content_type":"changelog","language":"en","canonical_url":"https://forgejo.org/2026-10-release-v17-0/","author":{"name":null,"url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"Forgejo","url":"https://forgejo.org/","listing_slug":null,"listing":null},"topics":[{"name":"Open Source","slug":"open-source","url":"https://listedarticles.com/topics/open-source"},{"name":"Developer Tools","slug":"developer-tools","url":"https://listedarticles.com/topics/developer-tools"},{"name":"Infrastructure","slug":"infrastructure","url":"https://listedarticles.com/topics/infrastructure"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":1863,"reading_minutes":8,"published_at":"2026-10-15T00:00:00.000Z","added_at":"2026-10-15T23:14:20.533Z","updated_at":"2026-10-15T23:14:20.533Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/forgejo-v17-0-is-available","markdown_url":"https://listedarticles.com/articles/forgejo-v17-0-is-available.md","example":false,"citation":"Forgejo. \"Forgejo v17.0 is available.\" 15 Oct 2026. https://forgejo.org/2026-10-release-v17-0/ (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://forgejo.org/2026-10-release-v17-0/"},"body_markdown":"15 October 2026\n\n- [releases](https://forgejo.org/tag/releases/)\n\n# Forgejo v17.0 is available\n\n \n\nForgejo [version 17.0](https://forgejo.org/download/) was released on 15 October 2026. Forgejo is a lightweight, community-developed, self-hosted platform for code collaboration.\n\nThis article contains a selection of the changes that were introduced. A complete list of changes is available [in the release notes](https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md).\n\nA [dedicated test instance](https://v17.next.forgejo.org/) is available to try it out. Before upgrading, it is *strongly recommended* to make a full backup as explained in the [upgrade guide](https://forgejo.org/docs/v17.0/admin/upgrade/) and carefully read *all breaking changes* from the [release notes](https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md).\nIf in doubt, do not hesitate to ask for help [in the chat room](https://matrix.to/#/#forgejo-chat:matrix.org).\n\n## Breaking changes\n\n### Absolute links in rendered documents\n\nIn rendered documents, absolute links to resources inside a repository are now resolved with respect to the root of the repository. [!12939](https://codeberg.org/forgejo/forgejo/pulls/12939)  \nThis is a breaking change from the previous behaviour when these links were rendered using the root of the instance. Absolute links in issue and pull request descriptions and comments remain rendered with respect to the instance’s root. [!13993](https://codeberg.org/forgejo/forgejo/pulls/13993)\n\nThis change increases the compatibility with other Git forges and thus, makes migrations to Forgejo even easier.\n\n## Action required\n\n### Deprecation of action run webhook events\n\nAction run webhook events are replaced by the more capable and less problematic workflow run events. [!14351](https://codeberg.org/forgejo/forgejo/pulls/14351) The action run events have been deprecated for removal in a future Forgejo version. Unfortunately, it is not possible to migrate existing webhooks to the new events automatically because some headers (`X-*-Event`, `X-*-Event-Type`) and the `action` key have changed, which might break existing receivers. Furthermore, completion notifications are only emitted after all jobs of a run have terminated. [!12598](https://codeberg.org/forgejo/forgejo/pulls/12598)\n\nPlease inspect existing webhooks and manually migrate them to the workflow run events after verifying that the webhook receivers can process them without issues.\n\n## New features\n\n### Support for `FUNDING.yml`\n\nFor repositories that contain a [`FUNDING.yml`](https://forgejo.org/docs/v17.0/user/repository/funding/) file, Forgejo shows a new “Donate” button which presents a list of donation options when clicked.\n\nAdditionally, for users and organizations that have such file in their `.profile` repository, a similar button appears on their profile pages.\n\nThis feature currently exists only in the web interface, but we are considering to implement an API surface for it. If you have a use cases for such API feature, please help shape it by sharing your feedback in [the dedicated issue](https://codeberg.org/forgejo/forgejo/issues/14075).\n\n![When applicable, a new \"Donate\" button appears in the repository's button banner, between the existing RSS and Watch buttons. The new button features a pink heart icon.](https://forgejo.org/_astro/2026-10-funding-yml.2cSfMSPe_ZwIxlL.webp)\n\n### Auto-completion for issues and pull requests\n\nWhen authoring an issue, pull request, or comment, Forgejo will offer auto-completion for issues and pull requests. [!8088](https://codeberg.org/forgejo/forgejo/pulls/8088) To activate the auto-completion, type `#` for issues or pull requests, or `!` for pull requests only. To refine the suggestions, either continue with a search term or an issue or pull request number.\n\n![An example auto-completion drop-down, showing suggested issues and pull requests after # is typed in a comment field](https://forgejo.org/_astro/2026-10-issue-pr-autocompletion.BRc5wkLd_Z1zWRP4.webp)\n\n### LFS support improvements\n\nForgejo’s [Git LFS](https://git-lfs.com) support is being overhauled. While most changes are under the hood, a string of smaller improvements are visible to users. Those include navigation and overview improvements in the LFS settings, new views to discover the commits that refer to a given LFS file, and better handling of pointers.\n\n![Web UI-based list of all LFS files associated with a Forgejo repository. On the left side, there is a \"Settings\" sidebar; the \"LFS\" section is expanded and shows the options \"Overview\", \"Locks\" and \"Pointer files\". Next to the sidebar, there is a table with 4 table rows; one for each LFS file present. Each row contains the OID of the LFS file, its size, when it was last updated, as well as two buttons: \"Find commits\" and a \"Delete\" button.](https://forgejo.org/_astro/2026-10-lfs-overview.BHGKqn-z_Z21Mh8r.webp)\n\n### Invitations to organizations\n\nForgejo can be configured so that when adding a user to an organization, they are not added to the organization instantly but instead receive an invitation that can be accepted or declined. This behavior can be enabled by setting `[service].ADD_MEMBERS_BY_INVITATIONS = true` in Forgejo’s `app.ini`.\n\nAuthentication providers are still able to add users to organizations with no action on their part.\n\nThe invitations are visible on the organization profile and are sent out by email. By default they expire after 14 days.\n\nWork is ongoing to make those invitations visible in the in-app notifications.\n\n![Page of organization displaying a banner with text: \"You are invited to join team Owners in this organization.\"](https://forgejo.org/_astro/2026-10-org-invite.CXPATz7d_64fsY.webp)\n\n### Add/invite to multiple teams at once\n\nA user can now be added or invited to multiple teams in one go, without going through each needed team individually. [!11848](https://codeberg.org/forgejo/forgejo/pulls/11848)\n\n![Modal dialog with options to search for a user to add and checkboxes with corresponding teams to add a user to](https://forgejo.org/_astro/2026-10-org-add-dialog.ruxIzoxk_ZDsts1.webp)\n\n### Copy comment Markdown\n\nMarkdown contents of comments can now be easily copied via the ellipsis menu. [!13083](https://codeberg.org/forgejo/forgejo/pulls/13083)\n\n![Comment ellipsis menu with highlighted option: Copy comment Markdown](https://forgejo.org/_astro/2026-10-copy-md.B99e4OW5_1QL1nF.webp)\n\n### Forgejo Actions API improvements\n\nThe Forgejo HTTP API received multiple enhancements related to Forgejo Actions:\n\n- Entire workflow runs and individual jobs can now be rerun by sending requests to `/repos/{owner}/{repo}/actions/runs/{run_id}/rerun` and `/repos/{owner}/{repo}/actions/jobs/{job_id}/rerun` respectively. [!13924](https://codeberg.org/forgejo/forgejo/pulls/13924) The workflow runs or jobs must have completed. Otherwise, they cannot be rerun. However, individual completed jobs can be rerun while the workflow run is still being executed.\n- The HTTP endpoints for obtaining job logs gained substring filters [!12821](https://codeberg.org/forgejo/forgejo/pulls/12821) and the ability to only return the logs of a particular step with `/jobs/{job_id}/logs?step=N`. [!12799](https://codeberg.org/forgejo/forgejo/pulls/12799) In addition to plain text, the logs can be requested as NDJSON with `?format=ndjson`. [!12820](https://codeberg.org/forgejo/forgejo/pulls/12820)\n- `/repos/{owner}/{repo}/actions/jobs/{job_id}` enables users to get the details of a particular job. [!12799](https://codeberg.org/forgejo/forgejo/pulls/12799)\n\n### Forgejo Actions job summaries\n\nForgejo now displays job summaries generated by Forgejo Runner 13.2 or newer. [!14076](https://codeberg.org/forgejo/forgejo/pulls/14076)\n\nJob summaries are Markdown documents that belong to a particular Forgejo Actions job. They are displayed above the logs. All Markdown features supported by Forgejo can be used — including tables, [Mermaid](https://mermaid.ai/open-source/intro/syntax-reference.html) diagrams, and formulas written in [KaTeX](https://katex.org/).\n\n![A summary of an example job showing TUnit test results and a Mermaid diagram](https://forgejo.org/_astro/actions-step-summary.BSNwEhUM_ZwxP1i.webp)\n\nJob summaries are assembled from one or more Markdown fragments that are written by a step to the file `$FORGEJO_STEP_SUMMARY`. `$GITHUB_STEP_SUMMARY` is supported, too, for compatibility with existing actions and easing the transition from GitHub.\n\n### Allow pushing to AGit refs\n\nMaintainers and pull-requests creators can now directly push to the [AGit](https://forgejo.org/docs/latest/user/git-cli/agit-support/) refs:\n\n```\n# Pull Request Creator\ngit checkout -b local-branch\ngit push origin HEAD:refs/for/main/agit-topic\n\n# Maintainer/Reviewer can pull the code to a local branch\ngit fetch origin refs/pull/3/head:local-branch\ngit switch local-branch\n\n# Maintainers and Pull Request creator need some further git config\ngit config push.default upstream\ngit config branch.local-branch.merge refs/pull/3/head\ngit config branch.local-branch.remote origin\n\n# NEW: Maintainer and Pull Request creator can now (force) push and pull to this ref\ngit push\ngit pull\n```\n\n### Webhook notifications for workflow jobs\n\nMore events have been added to Forgejo’s webhooks. Webhooks can now be triggered when the status of a Forgejo Actions workflow job changes. [!14334](https://codeberg.org/forgejo/forgejo/pulls/14334) As usual, it is possible to receive notifications in various chat applications like Discord or Matrix. Alternatively, Forgejo is able to notify a remote server using an HTTP request. Users have the possibility to select which statuses, like “waiting” or “cancelled,” they want to receive notifications for.\n\nWhile prior versions of Forgejo could already trigger notifications for “action runs,” that capability was limited to completion events. It has been enhanced to match the capabilities of workflow job events. [!14351](https://codeberg.org/forgejo/forgejo/pulls/14351) Users can now select which statuses they want to receive notifications for. The old “action runs” events have been deprecated and will be removed in a future Forgejo version.\n\n### Repository migration from Bitbucket Data Center\n\nForgejo can now migrate repositories from Bitbucket Data center (formerly Bitbucket Server). Pull requests, reviews, comments (including multi-line comments), threads and replies can also be imported during the process. [!13288](https://codeberg.org/forgejo/forgejo/pulls/13288)\nAuthentication uses an HTTP access token, and “HTTPS SCM Hosting” must be enabled on Bitbucket as Forgejo migrations clone over HTTPS.\n\n![Migration page showing all the platforms repositories can be migrated from, which now includes a \"BitbucketDC\" entry](https://forgejo.org/_astro/2026-10-bitbucket-data-center.OTqq5qJB_1qpLOK.webp)\n\n### Migration of repository avatars\n\nWhen migrating repositories from Gogs, Gitlab, Gitea, or Forgejo, the repository avatar images are now migrated, too. [!12921](https://codeberg.org/forgejo/forgejo/pulls/12921)\n\n### Backup documentation\n\nA new guide on [how to backup and restore](https://forgejo.org/docs/latest/admin/setup/backup/) a Forgejo instance has been added to Forgejo’s documentation. In particular, it points out the most important secrets that need to be backed up for proper instance restoration.\n\n## Release schedule and Long Term Support\n\nBased on [the release schedule](https://forgejo.org/docs/v17.0/admin/release-schedule/), major releases are published every three months. Patch releases are published more frequently, depending on the severity of the bug or security fixes they contain. Forgejo v17.0 is a non-LTS release. It will be supported until **28 January 2027**.\n\n| **Version** | **Release date** | **End Of Life** |\n| --- | --- | --- |\n| 15.0 (LTS) | 16 April 2026 | 15 July 2027 |\n| 16.0 | 16 July 2026 | 29 October 2026 |\n| 17.0 | 15 October 2026 | **28 January 2027** |\n| 18.0 | 14 January 2027 | 29 April 2027 |\n| 19.0 (LTS) | 15 April 2027 | 13 July 2028 |\n\n### 17.0-test daily releases\n\nReleases are built daily from the latest changes found in the [v17.0/forgejo](https://codeberg.org/forgejo/forgejo/src/branch/v17.0/forgejo) development branch. They are deployed to the <https://v17.next.forgejo.org> instance for manual verification in case a bug fix is of particular interest ahead of the next patch release. It can also be installed locally with:\n\n- OCI images: [root](https://codeberg.org/forgejo-experimental/-/packages/container/forgejo/17.0-test) and [rootless](https://codeberg.org/forgejo-experimental/-/packages/container/forgejo/17.0-test-rootless)\n- [Binaries](https://codeberg.org/forgejo-experimental/forgejo/releases/tag/v17.0-test)\n\nTheir names are staying the same, but they are replaced by new builds every day.\n\n## Get Forgejo v17.0\n\nSee the [download page](https://forgejo.org/download/) for instructions on how to install Forgejo.\n\n### Upgrading\n\nCarefully read the [breaking changes](https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md)\nsection of the release notes.\n\nThe actual upgrade process is as simple as replacing the binary or container image\nwith the corresponding [Forgejo binary](https://codeberg.org/forgejo/forgejo/releases/tag/v17.0.0)\nor [container image](https://codeberg.org/forgejo/-/packages/container/forgejo/17.0.0).\nIf you’re using the container images, you can use the\n[`17.0` tag](https://codeberg.org/forgejo/-/packages/container/forgejo/17.0)\nto stay up to date with the latest `17.0.Y` patch release automatically.\n\nMake sure to check the [Forgejo upgrade documentation](https://forgejo.org/docs/v17.0/admin/upgrade)\nfor recommendations on how to properly back up your instance before the upgrade.\n\n## Contribute to Forgejo\n\nIf you have any feedback or suggestions for Forgejo, do not hold back; it is also your project.\nOpen an issue in [the issue tracker](https://codeberg.org/forgejo/forgejo/issues)\nfor feature requests or bug reports, reach out [on the Fediverse](https://floss.social/@forgejo),\nor drop into [the Matrix space](https://matrix.to/#/#forgejo:matrix.org)\n([main chat room](https://matrix.to/#/#forgejo-chat:matrix.org)) and say hi!\n\n### Donate\n\nForgejo is proud to be [funded transparently](https://codeberg.org/forgejo/sustainability/). Additionally, it accepts donations [through Liberapay](https://liberapay.com/forgejo). It is also possible to [donate to Codeberg e.V.](https://docs.codeberg.org/improving-codeberg/donate/) in case the Liberapay option does not work out for you, and part of the funding is used to [compensate for work on Forgejo](https://codeberg.org/forgejo/sustainability/#forgejo-resources-per-year).\n\nHowever, the Liberapay team allows for money to go directly to developers without a round-trip to Codeberg. Additionally, Liberapay allows for a steady and reliable funding stream next to other options, a crucial aspect for the project. The distribution of funds through Liberapay is [transparently controlled using the decision-making process](https://codeberg.org/forgejo/governance/src/branch/main/TEAMS.md#liberapay-team-members), and Forgejo contributors are encouraged to consider applying to benefit from this funding opportunity.\n\nThank you for using Forgejo and considering a donation, if your financial situation allows.\n","body_html":"<p>15 October 2026</p>\n<ul><li><a href=\"https://forgejo.org/tag/releases/\" rel=\"nofollow ugc noopener\">releases</a></li></ul>\n<h1 id=\"forgejo-v17-0-is-available\">Forgejo v17.0 is available</h1>\n<p>Forgejo <a href=\"https://forgejo.org/download/\" rel=\"nofollow ugc noopener\">version 17.0</a> was released on 15 October 2026. Forgejo is a lightweight, community-developed, self-hosted platform for code collaboration.</p>\n<p>This article contains a selection of the changes that were introduced. A complete list of changes is available <a href=\"https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md\" rel=\"nofollow ugc noopener\">in the release notes</a>.</p>\n<p>A <a href=\"https://v17.next.forgejo.org/\" rel=\"nofollow ugc noopener\">dedicated test instance</a> is available to try it out. Before upgrading, it is <em>strongly recommended</em> to make a full backup as explained in the <a href=\"https://forgejo.org/docs/v17.0/admin/upgrade/\" rel=\"nofollow ugc noopener\">upgrade guide</a> and carefully read <em>all breaking changes</em> from the <a href=\"https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md\" rel=\"nofollow ugc noopener\">release notes</a>.\nIf in doubt, do not hesitate to ask for help <a href=\"https://matrix.to/#/#forgejo-chat:matrix.org\" rel=\"nofollow ugc noopener\">in the chat room</a>.</p>\n<h2 id=\"breaking-changes\">Breaking changes</h2>\n<h3 id=\"absolute-links-in-rendered-documents\">Absolute links in rendered documents</h3>\n<p>In rendered documents, absolute links to resources inside a repository are now resolved with respect to the root of the repository. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/12939\" rel=\"nofollow ugc noopener\">!12939</a><br />\nThis is a breaking change from the previous behaviour when these links were rendered using the root of the instance. Absolute links in issue and pull request descriptions and comments remain rendered with respect to the instance’s root. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/13993\" rel=\"nofollow ugc noopener\">!13993</a></p>\n<p>This change increases the compatibility with other Git forges and thus, makes migrations to Forgejo even easier.</p>\n<h2 id=\"action-required\">Action required</h2>\n<h3 id=\"deprecation-of-action-run-webhook-events\">Deprecation of action run webhook events</h3>\n<p>Action run webhook events are replaced by the more capable and less problematic workflow run events. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/14351\" rel=\"nofollow ugc noopener\">!14351</a> The action run events have been deprecated for removal in a future Forgejo version. Unfortunately, it is not possible to migrate existing webhooks to the new events automatically because some headers (<code>X-*-Event</code>, <code>X-*-Event-Type</code>) and the <code>action</code> key have changed, which might break existing receivers. Furthermore, completion notifications are only emitted after all jobs of a run have terminated. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/12598\" rel=\"nofollow ugc noopener\">!12598</a></p>\n<p>Please inspect existing webhooks and manually migrate them to the workflow run events after verifying that the webhook receivers can process them without issues.</p>\n<h2 id=\"new-features\">New features</h2>\n<h3 id=\"support-for-funding-yml\">Support for <code>FUNDING.yml</code></h3>\n<p>For repositories that contain a <a href=\"https://forgejo.org/docs/v17.0/user/repository/funding/\" rel=\"nofollow ugc noopener\"><code>FUNDING.yml</code></a> file, Forgejo shows a new “Donate” button which presents a list of donation options when clicked.</p>\n<p>Additionally, for users and organizations that have such file in their <code>.profile</code> repository, a similar button appears on their profile pages.</p>\n<p>This feature currently exists only in the web interface, but we are considering to implement an API surface for it. If you have a use cases for such API feature, please help shape it by sharing your feedback in <a href=\"https://codeberg.org/forgejo/forgejo/issues/14075\" rel=\"nofollow ugc noopener\">the dedicated issue</a>.</p>\n<figure><img src=\"https://forgejo.org/_astro/2026-10-funding-yml.2cSfMSPe_ZwIxlL.webp\" alt=\"When applicable, a new &quot;Donate&quot; button appears in the repository&#39;s button banner, between the existing RSS and Watch buttons. The new button features a pink heart icon.\" loading=\"lazy\" decoding=\"async\" referrerpolicy=\"no-referrer\" /></figure>\n<h3 id=\"auto-completion-for-issues-and-pull-requests\">Auto-completion for issues and pull requests</h3>\n<p>When authoring an issue, pull request, or comment, Forgejo will offer auto-completion for issues and pull requests. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/8088\" rel=\"nofollow ugc noopener\">!8088</a> To activate the auto-completion, type <code>#</code> for issues or pull requests, or <code>!</code> for pull requests only. To refine the suggestions, either continue with a search term or an issue or pull request number.</p>\n<figure><img src=\"https://forgejo.org/_astro/2026-10-issue-pr-autocompletion.BRc5wkLd_Z1zWRP4.webp\" alt=\"An example auto-completion drop-down, showing suggested issues and pull requests after # is typed in a comment field\" loading=\"lazy\" decoding=\"async\" referrerpolicy=\"no-referrer\" /></figure>\n<h3 id=\"lfs-support-improvements\">LFS support improvements</h3>\n<p>Forgejo’s <a href=\"https://git-lfs.com\" rel=\"nofollow ugc noopener\">Git LFS</a> support is being overhauled. While most changes are under the hood, a string of smaller improvements are visible to users. Those include navigation and overview improvements in the LFS settings, new views to discover the commits that refer to a given LFS file, and better handling of pointers.</p>\n<figure><img src=\"https://forgejo.org/_astro/2026-10-lfs-overview.BHGKqn-z_Z21Mh8r.webp\" alt=\"Web UI-based list of all LFS files associated with a Forgejo repository. On the left side, there is a &quot;Settings&quot; sidebar; the &quot;LFS&quot; section is expanded and shows the options &quot;Overview&quot;, &quot;Locks&quot; and &quot;Pointer files&quot;. Next to the sidebar, there is a table with 4 table rows; one for each LFS file present. Each row contains the OID of the LFS file, its size, when it was last updated, as well as two buttons: &quot;Find commits&quot; and a &quot;Delete&quot; button.\" loading=\"lazy\" decoding=\"async\" referrerpolicy=\"no-referrer\" /></figure>\n<h3 id=\"invitations-to-organizations\">Invitations to organizations</h3>\n<p>Forgejo can be configured so that when adding a user to an organization, they are not added to the organization instantly but instead receive an invitation that can be accepted or declined. This behavior can be enabled by setting <code>[service].ADD_MEMBERS_BY_INVITATIONS = true</code> in Forgejo’s <code>app.ini</code>.</p>\n<p>Authentication providers are still able to add users to organizations with no action on their part.</p>\n<p>The invitations are visible on the organization profile and are sent out by email. By default they expire after 14 days.</p>\n<p>Work is ongoing to make those invitations visible in the in-app notifications.</p>\n<figure><img src=\"https://forgejo.org/_astro/2026-10-org-invite.CXPATz7d_64fsY.webp\" alt=\"Page of organization displaying a banner with text: &quot;You are invited to join team Owners in this organization.&quot;\" loading=\"lazy\" decoding=\"async\" referrerpolicy=\"no-referrer\" /></figure>\n<h3 id=\"add-invite-to-multiple-teams-at-once\">Add/invite to multiple teams at once</h3>\n<p>A user can now be added or invited to multiple teams in one go, without going through each needed team individually. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/11848\" rel=\"nofollow ugc noopener\">!11848</a></p>\n<figure><img src=\"https://forgejo.org/_astro/2026-10-org-add-dialog.ruxIzoxk_ZDsts1.webp\" alt=\"Modal dialog with options to search for a user to add and checkboxes with corresponding teams to add a user to\" loading=\"lazy\" decoding=\"async\" referrerpolicy=\"no-referrer\" /></figure>\n<h3 id=\"copy-comment-markdown\">Copy comment Markdown</h3>\n<p>Markdown contents of comments can now be easily copied via the ellipsis menu. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/13083\" rel=\"nofollow ugc noopener\">!13083</a></p>\n<figure><img src=\"https://forgejo.org/_astro/2026-10-copy-md.B99e4OW5_1QL1nF.webp\" alt=\"Comment ellipsis menu with highlighted option: Copy comment Markdown\" loading=\"lazy\" decoding=\"async\" referrerpolicy=\"no-referrer\" /></figure>\n<h3 id=\"forgejo-actions-api-improvements\">Forgejo Actions API improvements</h3>\n<p>The Forgejo HTTP API received multiple enhancements related to Forgejo Actions:</p>\n<ul><li>Entire workflow runs and individual jobs can now be rerun by sending requests to <code>/repos/{owner}/{repo}/actions/runs/{run_id}/rerun</code> and <code>/repos/{owner}/{repo}/actions/jobs/{job_id}/rerun</code> respectively. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/13924\" rel=\"nofollow ugc noopener\">!13924</a> The workflow runs or jobs must have completed. Otherwise, they cannot be rerun. However, individual completed jobs can be rerun while the workflow run is still being executed.</li><li>The HTTP endpoints for obtaining job logs gained substring filters <a href=\"https://codeberg.org/forgejo/forgejo/pulls/12821\" rel=\"nofollow ugc noopener\">!12821</a> and the ability to only return the logs of a particular step with <code>/jobs/{job_id}/logs?step=N</code>. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/12799\" rel=\"nofollow ugc noopener\">!12799</a> In addition to plain text, the logs can be requested as NDJSON with <code>?format=ndjson</code>. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/12820\" rel=\"nofollow ugc noopener\">!12820</a></li><li><code>/repos/{owner}/{repo}/actions/jobs/{job_id}</code> enables users to get the details of a particular job. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/12799\" rel=\"nofollow ugc noopener\">!12799</a></li></ul>\n<h3 id=\"forgejo-actions-job-summaries\">Forgejo Actions job summaries</h3>\n<p>Forgejo now displays job summaries generated by Forgejo Runner 13.2 or newer. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/14076\" rel=\"nofollow ugc noopener\">!14076</a></p>\n<p>Job summaries are Markdown documents that belong to a particular Forgejo Actions job. They are displayed above the logs. All Markdown features supported by Forgejo can be used — including tables, <a href=\"https://mermaid.ai/open-source/intro/syntax-reference.html\" rel=\"nofollow ugc noopener\">Mermaid</a> diagrams, and formulas written in <a href=\"https://katex.org/\" rel=\"nofollow ugc noopener\">KaTeX</a>.</p>\n<figure><img src=\"https://forgejo.org/_astro/actions-step-summary.BSNwEhUM_ZwxP1i.webp\" alt=\"A summary of an example job showing TUnit test results and a Mermaid diagram\" loading=\"lazy\" decoding=\"async\" referrerpolicy=\"no-referrer\" /></figure>\n<p>Job summaries are assembled from one or more Markdown fragments that are written by a step to the file <code>$FORGEJO_STEP_SUMMARY</code>. <code>$GITHUB_STEP_SUMMARY</code> is supported, too, for compatibility with existing actions and easing the transition from GitHub.</p>\n<h3 id=\"allow-pushing-to-agit-refs\">Allow pushing to AGit refs</h3>\n<p>Maintainers and pull-requests creators can now directly push to the <a href=\"https://forgejo.org/docs/latest/user/git-cli/agit-support/\" rel=\"nofollow ugc noopener\">AGit</a> refs:</p>\n<pre><code># Pull Request Creator\ngit checkout -b local-branch\ngit push origin HEAD:refs/for/main/agit-topic\n\n# Maintainer/Reviewer can pull the code to a local branch\ngit fetch origin refs/pull/3/head:local-branch\ngit switch local-branch\n\n# Maintainers and Pull Request creator need some further git config\ngit config push.default upstream\ngit config branch.local-branch.merge refs/pull/3/head\ngit config branch.local-branch.remote origin\n\n# NEW: Maintainer and Pull Request creator can now (force) push and pull to this ref\ngit push\ngit pull</code></pre>\n<h3 id=\"webhook-notifications-for-workflow-jobs\">Webhook notifications for workflow jobs</h3>\n<p>More events have been added to Forgejo’s webhooks. Webhooks can now be triggered when the status of a Forgejo Actions workflow job changes. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/14334\" rel=\"nofollow ugc noopener\">!14334</a> As usual, it is possible to receive notifications in various chat applications like Discord or Matrix. Alternatively, Forgejo is able to notify a remote server using an HTTP request. Users have the possibility to select which statuses, like “waiting” or “cancelled,” they want to receive notifications for.</p>\n<p>While prior versions of Forgejo could already trigger notifications for “action runs,” that capability was limited to completion events. It has been enhanced to match the capabilities of workflow job events. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/14351\" rel=\"nofollow ugc noopener\">!14351</a> Users can now select which statuses they want to receive notifications for. The old “action runs” events have been deprecated and will be removed in a future Forgejo version.</p>\n<h3 id=\"repository-migration-from-bitbucket-data-center\">Repository migration from Bitbucket Data Center</h3>\n<p>Forgejo can now migrate repositories from Bitbucket Data center (formerly Bitbucket Server). Pull requests, reviews, comments (including multi-line comments), threads and replies can also be imported during the process. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/13288\" rel=\"nofollow ugc noopener\">!13288</a>\nAuthentication uses an HTTP access token, and “HTTPS SCM Hosting” must be enabled on Bitbucket as Forgejo migrations clone over HTTPS.</p>\n<figure><img src=\"https://forgejo.org/_astro/2026-10-bitbucket-data-center.OTqq5qJB_1qpLOK.webp\" alt=\"Migration page showing all the platforms repositories can be migrated from, which now includes a &quot;BitbucketDC&quot; entry\" loading=\"lazy\" decoding=\"async\" referrerpolicy=\"no-referrer\" /></figure>\n<h3 id=\"migration-of-repository-avatars\">Migration of repository avatars</h3>\n<p>When migrating repositories from Gogs, Gitlab, Gitea, or Forgejo, the repository avatar images are now migrated, too. <a href=\"https://codeberg.org/forgejo/forgejo/pulls/12921\" rel=\"nofollow ugc noopener\">!12921</a></p>\n<h3 id=\"backup-documentation\">Backup documentation</h3>\n<p>A new guide on <a href=\"https://forgejo.org/docs/latest/admin/setup/backup/\" rel=\"nofollow ugc noopener\">how to backup and restore</a> a Forgejo instance has been added to Forgejo’s documentation. In particular, it points out the most important secrets that need to be backed up for proper instance restoration.</p>\n<h2 id=\"release-schedule-and-long-term-support\">Release schedule and Long Term Support</h2>\n<p>Based on <a href=\"https://forgejo.org/docs/v17.0/admin/release-schedule/\" rel=\"nofollow ugc noopener\">the release schedule</a>, major releases are published every three months. Patch releases are published more frequently, depending on the severity of the bug or security fixes they contain. Forgejo v17.0 is a non-LTS release. It will be supported until <strong>28 January 2027</strong>.</p>\n<div class=\"table-wrap\"><table><thead><tr><th><strong>Version</strong></th><th><strong>Release date</strong></th><th><strong>End Of Life</strong></th></tr></thead><tbody><tr><td>15.0 (LTS)</td><td>16 April 2026</td><td>15 July 2027</td></tr><tr><td>16.0</td><td>16 July 2026</td><td>29 October 2026</td></tr><tr><td>17.0</td><td>15 October 2026</td><td><strong>28 January 2027</strong></td></tr><tr><td>18.0</td><td>14 January 2027</td><td>29 April 2027</td></tr><tr><td>19.0 (LTS)</td><td>15 April 2027</td><td>13 July 2028</td></tr></tbody></table></div>\n<h3 id=\"17-0-test-daily-releases\">17.0-test daily releases</h3>\n<p>Releases are built daily from the latest changes found in the <a href=\"https://codeberg.org/forgejo/forgejo/src/branch/v17.0/forgejo\" rel=\"nofollow ugc noopener\">v17.0/forgejo</a> development branch. They are deployed to the <a href=\"https://v17.next.forgejo.org\" rel=\"nofollow ugc noopener\">https://v17.next.forgejo.org</a> instance for manual verification in case a bug fix is of particular interest ahead of the next patch release. It can also be installed locally with:</p>\n<ul><li>OCI images: <a href=\"https://codeberg.org/forgejo-experimental/-/packages/container/forgejo/17.0-test\" rel=\"nofollow ugc noopener\">root</a> and <a href=\"https://codeberg.org/forgejo-experimental/-/packages/container/forgejo/17.0-test-rootless\" rel=\"nofollow ugc noopener\">rootless</a></li><li><a href=\"https://codeberg.org/forgejo-experimental/forgejo/releases/tag/v17.0-test\" rel=\"nofollow ugc noopener\">Binaries</a></li></ul>\n<p>Their names are staying the same, but they are replaced by new builds every day.</p>\n<h2 id=\"get-forgejo-v17-0\">Get Forgejo v17.0</h2>\n<p>See the <a href=\"https://forgejo.org/download/\" rel=\"nofollow ugc noopener\">download page</a> for instructions on how to install Forgejo.</p>\n<h3 id=\"upgrading\">Upgrading</h3>\n<p>Carefully read the <a href=\"https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md\" rel=\"nofollow ugc noopener\">breaking changes</a>\nsection of the release notes.</p>\n<p>The actual upgrade process is as simple as replacing the binary or container image\nwith the corresponding <a href=\"https://codeberg.org/forgejo/forgejo/releases/tag/v17.0.0\" rel=\"nofollow ugc noopener\">Forgejo binary</a>\nor <a href=\"https://codeberg.org/forgejo/-/packages/container/forgejo/17.0.0\" rel=\"nofollow ugc noopener\">container image</a>.\nIf you’re using the container images, you can use the\n<a href=\"https://codeberg.org/forgejo/-/packages/container/forgejo/17.0\" rel=\"nofollow ugc noopener\"><code>17.0</code> tag</a>\nto stay up to date with the latest <code>17.0.Y</code> patch release automatically.</p>\n<p>Make sure to check the <a href=\"https://forgejo.org/docs/v17.0/admin/upgrade\" rel=\"nofollow ugc noopener\">Forgejo upgrade documentation</a>\nfor recommendations on how to properly back up your instance before the upgrade.</p>\n<h2 id=\"contribute-to-forgejo\">Contribute to Forgejo</h2>\n<p>If you have any feedback or suggestions for Forgejo, do not hold back; it is also your project.\nOpen an issue in <a href=\"https://codeberg.org/forgejo/forgejo/issues\" rel=\"nofollow ugc noopener\">the issue tracker</a>\nfor feature requests or bug reports, reach out <a href=\"https://floss.social/@forgejo\" rel=\"nofollow ugc noopener\">on the Fediverse</a>,\nor drop into <a href=\"https://matrix.to/#/#forgejo:matrix.org\" rel=\"nofollow ugc noopener\">the Matrix space</a>\n(<a href=\"https://matrix.to/#/#forgejo-chat:matrix.org\" rel=\"nofollow ugc noopener\">main chat room</a>) and say hi!</p>\n<h3 id=\"donate\">Donate</h3>\n<p>Forgejo is proud to be <a href=\"https://codeberg.org/forgejo/sustainability/\" rel=\"nofollow ugc noopener\">funded transparently</a>. Additionally, it accepts donations <a href=\"https://liberapay.com/forgejo\" rel=\"nofollow ugc noopener\">through Liberapay</a>. It is also possible to <a href=\"https://docs.codeberg.org/improving-codeberg/donate/\" rel=\"nofollow ugc noopener\">donate to Codeberg e.V.</a> in case the Liberapay option does not work out for you, and part of the funding is used to <a href=\"https://codeberg.org/forgejo/sustainability/#forgejo-resources-per-year\" rel=\"nofollow ugc noopener\">compensate for work on Forgejo</a>.</p>\n<p>However, the Liberapay team allows for money to go directly to developers without a round-trip to Codeberg. Additionally, Liberapay allows for a steady and reliable funding stream next to other options, a crucial aspect for the project. The distribution of funds through Liberapay is <a href=\"https://codeberg.org/forgejo/governance/src/branch/main/TEAMS.md#liberapay-team-members\" rel=\"nofollow ugc noopener\">transparently controlled using the decision-making process</a>, and Forgejo contributors are encouraged to consider applying to benefit from this funding opportunity.</p>\n<p>Thank you for using Forgejo and considering a donation, if your financial situation allows.</p>","headings":[{"level":1,"text":"Forgejo v17.0 is available","id":"forgejo-v17-0-is-available"},{"level":2,"text":"Breaking changes","id":"breaking-changes"},{"level":3,"text":"Absolute links in rendered documents","id":"absolute-links-in-rendered-documents"},{"level":2,"text":"Action required","id":"action-required"},{"level":3,"text":"Deprecation of action run webhook events","id":"deprecation-of-action-run-webhook-events"},{"level":2,"text":"New features","id":"new-features"},{"level":3,"text":"Support for FUNDING.yml","id":"support-for-funding-yml"},{"level":3,"text":"Auto-completion for issues and pull requests","id":"auto-completion-for-issues-and-pull-requests"},{"level":3,"text":"LFS support improvements","id":"lfs-support-improvements"},{"level":3,"text":"Invitations to organizations","id":"invitations-to-organizations"},{"level":3,"text":"Add/invite to multiple teams at once","id":"add-invite-to-multiple-teams-at-once"},{"level":3,"text":"Copy comment Markdown","id":"copy-comment-markdown"},{"level":3,"text":"Forgejo Actions API improvements","id":"forgejo-actions-api-improvements"},{"level":3,"text":"Forgejo Actions job summaries","id":"forgejo-actions-job-summaries"},{"level":3,"text":"Allow pushing to AGit refs","id":"allow-pushing-to-agit-refs"},{"level":3,"text":"Webhook notifications for workflow jobs","id":"webhook-notifications-for-workflow-jobs"},{"level":3,"text":"Repository migration from Bitbucket Data Center","id":"repository-migration-from-bitbucket-data-center"},{"level":3,"text":"Migration of repository avatars","id":"migration-of-repository-avatars"},{"level":3,"text":"Backup documentation","id":"backup-documentation"},{"level":2,"text":"Release schedule and Long Term Support","id":"release-schedule-and-long-term-support"},{"level":3,"text":"17.0-test daily releases","id":"17-0-test-daily-releases"},{"level":2,"text":"Get Forgejo v17.0","id":"get-forgejo-v17-0"},{"level":3,"text":"Upgrading","id":"upgrading"},{"level":2,"text":"Contribute to Forgejo","id":"contribute-to-forgejo"},{"level":3,"text":"Donate","id":"donate"}]}}