<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <title>forgejo.org</title>
  <subtitle>Browse aymeric&#39;s, an independent, searchable archive of readable snapshots from followed feeds, preserved in Git with aggr.</subtitle>
  <id>https://aggr.aymericbeaumet.com/sources/forgejo.org/</id>
  <link rel="alternate" type="text/html" href="https://aggr.aymericbeaumet.com/sources/forgejo.org/"/>
  <link rel="self" type="application/atom+xml" href="https://aggr.aymericbeaumet.com/sources/forgejo.org/atom.xml"/>
  <updated>2026-10-15T19:43:19+00:00</updated>
  <author>
    <name>aymeric&#39;s</name>
  </author>
  <generator version="2.0.0" uri="https://github.com/aymericbeaumet/aggr">aggr</generator>
  <entry>
    <id>urn:aggr:item:a67de41e2f5ec0916adce8d1e1c72f391c7c831b</id>
    <title type="text">Forgejo v17.0 is available</title>
    <link rel="alternate" type="text/html" href="https://aggr.aymericbeaumet.com/items/lobste-rs/2026-10-15-forgejo-v17-0-is-available/"/>
    <link rel="via" type="text/html" href="https://forgejo.org/2026-10-release-v17-0/"/>
    <published>2026-10-15T19:43:19+00:00</published>
    <updated>2026-10-15T19:43:19+00:00</updated>
    <author>
      <name>forgejo.org via hugoarnal</name>
    </author>
    <category term="news"/>
    <category term="release"/>
    <category term="vcs"/>
    <source>
      <title>Lobsters: Top Stories of the Past Week</title>
    </source>
    <summary type="text">Comments</summary>
    <content type="html">&lt;p&gt;Forgejo &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://forgejo.org/download/&quot;&gt;version 17.0&lt;/a&gt; was released on 15 October 2026. Forgejo is a lightweight, community-developed, self-hosted platform for code collaboration.&lt;/p&gt;
&lt;p&gt;This article contains a selection of the changes that were introduced. A complete list of changes is available &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md&quot;&gt;in the release notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://v17.next.forgejo.org/&quot;&gt;dedicated test instance&lt;/a&gt; is available to try it out. Before upgrading, it is &lt;em&gt;strongly recommended&lt;/em&gt; to make a full backup as explained in the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://forgejo.org/docs/v17.0/admin/upgrade/&quot;&gt;upgrade guide&lt;/a&gt; and carefully read &lt;em&gt;all breaking changes&lt;/em&gt; from the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md&quot;&gt;release notes&lt;/a&gt;. If in doubt, do not hesitate to ask for help &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://matrix.to/#/#forgejo-chat:matrix.org&quot;&gt;in the chat room&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Breaking changes&lt;/h2&gt;
&lt;h3&gt;Absolute links in rendered documents&lt;/h3&gt;
&lt;p&gt;In rendered documents, absolute links to resources inside a repository are now resolved with respect to the root of the repository. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/12939&quot;&gt;!12939&lt;/a&gt;&lt;br /&gt;
This 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. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/13993&quot;&gt;!13993&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This change increases the compatibility with other Git forges and thus, makes migrations to Forgejo even easier.&lt;/p&gt;
&lt;h2&gt;Action required&lt;/h2&gt;
&lt;h3&gt;Deprecation of action run webhook events&lt;/h3&gt;
&lt;p&gt;Action run webhook events are replaced by the more capable and less problematic workflow run events. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/14351&quot;&gt;!14351&lt;/a&gt; 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 (&lt;code&gt;X-*-Event&lt;/code&gt;, &lt;code&gt;X-*-Event-Type&lt;/code&gt;) and the &lt;code&gt;action&lt;/code&gt; key have changed, which might break existing receivers. Furthermore, completion notifications are only emitted after all jobs of a run have terminated. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/12598&quot;&gt;!12598&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Please inspect existing webhooks and manually migrate them to the workflow run events after verifying that the webhook receivers can process them without issues.&lt;/p&gt;
&lt;h2&gt;New features&lt;/h2&gt;
&lt;h3&gt;Support for &lt;code&gt;FUNDING.yml&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;For repositories that contain a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://forgejo.org/docs/v17.0/user/repository/funding/&quot;&gt;&lt;code&gt;FUNDING.yml&lt;/code&gt;&lt;/a&gt; file, Forgejo shows a new “Donate” button which presents a list of donation options when clicked.&lt;/p&gt;
&lt;p&gt;Additionally, for users and organizations that have such file in their &lt;code&gt;.profile&lt;/code&gt; repository, a similar button appears on their profile pages.&lt;/p&gt;
&lt;p&gt;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 &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/issues/14075&quot;&gt;the dedicated issue&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://forgejo.org/_astro/2026-10-funding-yml.2cSfMSPe_ZwIxlL.webp&quot; alt=&quot;When applicable, a new &amp;quot;Donate&amp;quot; button appears in the repository&amp;#39;s button banner, between the existing RSS and Watch buttons. The new button features a pink heart icon.&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h3&gt;Auto-completion for issues and pull requests&lt;/h3&gt;
&lt;p&gt;When authoring an issue, pull request, or comment, Forgejo will offer auto-completion for issues and pull requests. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/8088&quot;&gt;!8088&lt;/a&gt; To activate the auto-completion, type &lt;code&gt;#&lt;/code&gt; for issues or pull requests, or &lt;code&gt;!&lt;/code&gt; for pull requests only. To refine the suggestions, either continue with a search term or an issue or pull request number.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://forgejo.org/_astro/2026-10-issue-pr-autocompletion.BRc5wkLd_Z1zWRP4.webp&quot; alt=&quot;An example auto-completion drop-down, showing suggested issues and pull requests after # is typed in a comment field&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h3&gt;LFS support improvements&lt;/h3&gt;
&lt;p&gt;Forgejo’s &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://git-lfs.com&quot;&gt;Git LFS&lt;/a&gt; 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.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://forgejo.org/_astro/2026-10-lfs-overview.BHGKqn-z_Z21Mh8r.webp&quot; alt=&quot;Web UI-based list of all LFS files associated with a Forgejo repository. On the left side, there is a &amp;quot;Settings&amp;quot; sidebar; the &amp;quot;LFS&amp;quot; section is expanded and shows the options &amp;quot;Overview&amp;quot;, &amp;quot;Locks&amp;quot; and &amp;quot;Pointer files&amp;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: &amp;quot;Find commits&amp;quot; and a &amp;quot;Delete&amp;quot; button.&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h3&gt;Invitations to organizations&lt;/h3&gt;
&lt;p&gt;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 &lt;code&gt;[service].ADD_MEMBERS_BY_INVITATIONS = true&lt;/code&gt; in Forgejo’s &lt;code&gt;app.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Authentication providers are still able to add users to organizations with no action on their part.&lt;/p&gt;
&lt;p&gt;The invitations are visible on the organization profile and are sent out by email. By default they expire after 14 days.&lt;/p&gt;
&lt;p&gt;Work is ongoing to make those invitations visible in the in-app notifications.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://forgejo.org/_astro/2026-10-org-invite.CXPATz7d_64fsY.webp&quot; alt=&quot;Page of organization displaying a banner with text: &amp;quot;You are invited to join team Owners in this organization.&amp;quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h3&gt;Add/invite to multiple teams at once&lt;/h3&gt;
&lt;p&gt;A user can now be added or invited to multiple teams in one go, without going through each needed team individually. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/11848&quot;&gt;!11848&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://forgejo.org/_astro/2026-10-org-add-dialog.ruxIzoxk_ZDsts1.webp&quot; alt=&quot;Modal dialog with options to search for a user to add and checkboxes with corresponding teams to add a user to&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Markdown contents of comments can now be easily copied via the ellipsis menu. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/13083&quot;&gt;!13083&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://forgejo.org/_astro/2026-10-copy-md.B99e4OW5_1QL1nF.webp&quot; alt=&quot;Comment ellipsis menu with highlighted option: Copy comment Markdown&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h3&gt;Forgejo Actions API improvements&lt;/h3&gt;
&lt;p&gt;The Forgejo HTTP API received multiple enhancements related to Forgejo Actions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Entire workflow runs and individual jobs can now be rerun by sending requests to &lt;code&gt;/repos/{owner}/{repo}/actions/runs/{run_id}/rerun&lt;/code&gt; and &lt;code&gt;/repos/{owner}/{repo}/actions/jobs/{job_id}/rerun&lt;/code&gt; respectively. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/13924&quot;&gt;!13924&lt;/a&gt; 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.&lt;/li&gt;
&lt;li&gt;The HTTP endpoints for obtaining job logs gained substring filters &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/12821&quot;&gt;!12821&lt;/a&gt; and the ability to only return the logs of a particular step with &lt;code&gt;/jobs/{job_id}/logs?step=N&lt;/code&gt;. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/12799&quot;&gt;!12799&lt;/a&gt; In addition to plain text, the logs can be requested as NDJSON with &lt;code&gt;?format=ndjson&lt;/code&gt;. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/12820&quot;&gt;!12820&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/repos/{owner}/{repo}/actions/jobs/{job_id}&lt;/code&gt; enables users to get the details of a particular job. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/12799&quot;&gt;!12799&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Forgejo Actions job summaries&lt;/h3&gt;
&lt;p&gt;Forgejo now displays job summaries generated by Forgejo Runner 13.2 or newer. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/14076&quot;&gt;!14076&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;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, &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://mermaid.ai/open-source/intro/syntax-reference.html&quot;&gt;Mermaid&lt;/a&gt; diagrams, and formulas written in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://katex.org/&quot;&gt;KaTeX&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://forgejo.org/_astro/actions-step-summary.BSNwEhUM_ZwxP1i.webp&quot; alt=&quot;A summary of an example job showing TUnit test results and a Mermaid diagram&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;p&gt;Job summaries are assembled from one or more Markdown fragments that are written by a step to the file &lt;code&gt;$FORGEJO_STEP_SUMMARY&lt;/code&gt;. &lt;code&gt;$GITHUB_STEP_SUMMARY&lt;/code&gt; is supported, too, for compatibility with existing actions and easing the transition from GitHub.&lt;/p&gt;
&lt;h3&gt;Allow pushing to AGit refs&lt;/h3&gt;
&lt;p&gt;Maintainers and pull-requests creators can now directly push to the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://forgejo.org/docs/latest/user/git-cli/agit-support/&quot;&gt;AGit&lt;/a&gt; refs:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-sh&quot;&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell&quot;&gt;&lt;span class=&quot;syntax-source syntax-shell syntax-bash&quot;&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-begin syntax-shell&quot;&gt;#&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt; Pull Request Creator&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; checkout&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; -&lt;/span&gt;b&lt;/span&gt; local-branch&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; push origin HEAD:refs/for/main/agit-topic&lt;/span&gt;

&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-begin syntax-shell&quot;&gt;#&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt; Maintainer/Reviewer can pull the code to a local branch&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; fetch origin refs/pull/3/head:local-branch&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; switch local-branch&lt;/span&gt;

&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-begin syntax-shell&quot;&gt;#&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt; Maintainers and Pull Request creator need some further git config&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; config push.default upstream&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; config branch.local-branch.merge refs/pull/3/head&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; config branch.local-branch.remote origin&lt;/span&gt;

&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-begin syntax-shell&quot;&gt;#&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt; NEW: Maintainer and Pull Request creator can now (force) push and pull to this ref&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; push&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; pull&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;Webhook notifications for workflow jobs&lt;/h3&gt;
&lt;p&gt;More events have been added to Forgejo’s webhooks. Webhooks can now be triggered when the status of a Forgejo Actions workflow job changes. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/14334&quot;&gt;!14334&lt;/a&gt; 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.&lt;/p&gt;
&lt;p&gt;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. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/14351&quot;&gt;!14351&lt;/a&gt; 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.&lt;/p&gt;
&lt;h3&gt;Repository migration from Bitbucket Data Center&lt;/h3&gt;
&lt;p&gt;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. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/13288&quot;&gt;!13288&lt;/a&gt; Authentication uses an HTTP access token, and “HTTPS SCM Hosting” must be enabled on Bitbucket as Forgejo migrations clone over HTTPS.&lt;/p&gt;
&lt;p&gt;&lt;picture class=&quot;article-picture article-picture-fallback&quot; style=&quot;--image-ratio:16 / 9&quot;&gt;&lt;img src=&quot;https://forgejo.org/_astro/2026-10-bitbucket-data-center.OTqq5qJB_1qpLOK.webp&quot; alt=&quot;Migration page showing all the platforms repositories can be migrated from, which now includes a &amp;quot;BitbucketDC&amp;quot; entry&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;low&quot; referrerpolicy=&quot;no-referrer&quot; class=&quot;progressive-image&quot;&gt;&lt;/picture&gt;&lt;/p&gt;
&lt;h3&gt;Migration of repository avatars&lt;/h3&gt;
&lt;p&gt;When migrating repositories from Gogs, Gitlab, Gitea, or Forgejo, the repository avatar images are now migrated, too. &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/pulls/12921&quot;&gt;!12921&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Backup documentation&lt;/h3&gt;
&lt;p&gt;A new guide on &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://forgejo.org/docs/latest/admin/setup/backup/&quot;&gt;how to backup and restore&lt;/a&gt; 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.&lt;/p&gt;
&lt;h2&gt;Release schedule and Long Term Support&lt;/h2&gt;
&lt;p&gt;Based on &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://forgejo.org/docs/v17.0/admin/release-schedule/&quot;&gt;the release schedule&lt;/a&gt;, 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 &lt;strong&gt;28 January 2027&lt;/strong&gt;.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Version&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Release date&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;End Of Life&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;15.0 (LTS)&lt;/td&gt;
&lt;td&gt;16 April 2026&lt;/td&gt;
&lt;td&gt;15 July 2027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;16.0&lt;/td&gt;
&lt;td&gt;16 July 2026&lt;/td&gt;
&lt;td&gt;29 October 2026&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;17.0&lt;/td&gt;
&lt;td&gt;15 October 2026&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;28 January 2027&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;18.0&lt;/td&gt;
&lt;td&gt;14 January 2027&lt;/td&gt;
&lt;td&gt;29 April 2027&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;19.0 (LTS)&lt;/td&gt;
&lt;td&gt;15 April 2027&lt;/td&gt;
&lt;td&gt;13 July 2028&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3&gt;17.0-test daily releases&lt;/h3&gt;
&lt;p&gt;Releases are built daily from the latest changes found in the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/src/branch/v17.0/forgejo&quot;&gt;v17.0/forgejo&lt;/a&gt; development branch. They are deployed to the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://v17.next.forgejo.org&quot;&gt;https://v17.next.forgejo.org&lt;/a&gt; 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:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;OCI images: &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo-experimental/-/packages/container/forgejo/17.0-test&quot;&gt;root&lt;/a&gt; and &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo-experimental/-/packages/container/forgejo/17.0-test-rootless&quot;&gt;rootless&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo-experimental/forgejo/releases/tag/v17.0-test&quot;&gt;Binaries&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Their names are staying the same, but they are replaced by new builds every day.&lt;/p&gt;
&lt;h2&gt;Get Forgejo v17.0&lt;/h2&gt;
&lt;p&gt;See the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://forgejo.org/download/&quot;&gt;download page&lt;/a&gt; for instructions on how to install Forgejo.&lt;/p&gt;
&lt;h3&gt;Upgrading&lt;/h3&gt;
&lt;p&gt;Carefully read the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/17.0.0.md&quot;&gt;breaking changes&lt;/a&gt; section of the release notes.&lt;/p&gt;
&lt;p&gt;The actual upgrade process is as simple as replacing the binary or container image with the corresponding &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/releases/tag/v17.0.0&quot;&gt;Forgejo binary&lt;/a&gt; or &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/-/packages/container/forgejo/17.0.0&quot;&gt;container image&lt;/a&gt;. If you’re using the container images, you can use the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/-/packages/container/forgejo/17.0&quot;&gt;&lt;code&gt;17.0&lt;/code&gt; tag&lt;/a&gt; to stay up to date with the latest &lt;code&gt;17.0.Y&lt;/code&gt; patch release automatically.&lt;/p&gt;
&lt;p&gt;Make sure to check the &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://forgejo.org/docs/v17.0/admin/upgrade&quot;&gt;Forgejo upgrade documentation&lt;/a&gt; for recommendations on how to properly back up your instance before the upgrade.&lt;/p&gt;
&lt;h2&gt;Contribute to Forgejo&lt;/h2&gt;
&lt;p&gt;If you have any feedback or suggestions for Forgejo, do not hold back; it is also your project. Open an issue in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/forgejo/issues&quot;&gt;the issue tracker&lt;/a&gt; for feature requests or bug reports, reach out &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://floss.social/@forgejo&quot;&gt;on the Fediverse&lt;/a&gt;, or drop into &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://matrix.to/#/#forgejo:matrix.org&quot;&gt;the Matrix space&lt;/a&gt; (&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://matrix.to/#/#forgejo-chat:matrix.org&quot;&gt;main chat room&lt;/a&gt;) and say hi!&lt;/p&gt;
&lt;h3&gt;Donate&lt;/h3&gt;
&lt;p&gt;Forgejo is proud to be &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/sustainability/&quot;&gt;funded transparently&lt;/a&gt;. Additionally, it accepts donations &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://liberapay.com/forgejo&quot;&gt;through Liberapay&lt;/a&gt;. It is also possible to &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://docs.codeberg.org/improving-codeberg/donate/&quot;&gt;donate to Codeberg e.V.&lt;/a&gt; in case the Liberapay option does not work out for you, and part of the funding is used to &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/sustainability/#forgejo-resources-per-year&quot;&gt;compensate for work on Forgejo&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;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 &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://codeberg.org/forgejo/governance/src/branch/main/TEAMS.md#liberapay-team-members&quot;&gt;transparently controlled using the decision-making process&lt;/a&gt;, and Forgejo contributors are encouraged to consider applying to benefit from this funding opportunity.&lt;/p&gt;
&lt;p&gt;Thank you for using Forgejo and considering a donation, if your financial situation allows.&lt;/p&gt;
</content>
  </entry>
</feed>
