28e0af23fa
feat(ui): replace Monaco with CodeMirror ( #10559 )
...
- Replace the [Monaco Editor](https://microsoft.github.io/monaco-editor/ )
with [CodeMirror 6](https://codemirror.net/ ). This editor is used to
facilitate the 'Add file' and 'Edit file' functionality.
- Rationale:
- Monaco editor is a great and powerful editor, however for Forgejo's
purpose it acts more like a small IDE than a code editor and is doing
too much. In my limited user research the usage of editing files via
the web UI is largely for small changes that does not need the
features that Monaco editor provides.
- Monaco editor has no mobile support, Codemirror is very usable on mobile.
- Monaco editor pulls in large dependencies (for language support) and
by replacing it with Codemirror the amount of time that webpack needs
to build the frontend is reduced by 50% (~30s -> ~15s).
- The binary of Forgejo (build with `bindata` tag) is reduced by 2MiB.
- Codemirror is much more lightweight and should be more usable on
less powerful hardware, most notably the lazy loading is much faster
as codemirror uses less javascript.
- Because Codemirror is modular it is much easier to change the
behavior of the code editor if we wish to.
- Drawbacks:
- Codemirror is quite modular and as seen in `package.json` and in
`codeeditor.ts` we have to supply a lot more of its features to have
feature parity with Monaco editor.
- Monaco editor has great integrated language support (features that
an lsp would provide), Codemirror only has such language support to an
extend.
- Monaco editor has its famous command palette (known by many as its
also available in VSCode), this is not available in code mirror.
- Good to note:
- All features that was added on top of the monaco editor (such as
dynamically changing language support depending on the filename)
still works and the theme is based on the VSCode colors which largely
resembles the monaco editor.
- The code editor is still lazy-loaded (this is painfully clear by
reading how imports are passed around in `codeeditor.ts`).
- This change was privately tested by a few people, a few bugs were
found (and fixed) but no major drawbacks were noted for their usage of
the web editor.
- There's a "search" button in the top bar, so that search can be used
on mobile. It is otherwise only accessible via
<kbd>Ctrl</kbd>+<kbd>f</kbd>.
Co-authored-by: Beowulf <beowulf@beocode.eu >
Co-authored-by: Gusted <postmaster@gusted.xyz >
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/10559
Reviewed-by: Gusted <gusted@noreply.codeberg.org >
Reviewed-by: 0ko <0ko@noreply.codeberg.org >
Co-committed-by: Beowulf <beowulf@beocode.eu >
2026-01-04 23:52:33 +01:00
Gusted and Gusted
b2c1a4067c
Update NPM constraint ( #10096 )
...
Ref: https://codeberg.org/forgejo/forgejo/pulls/10092
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/10096
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Gusted <postmaster@gusted.xyz >
Co-committed-by: Gusted <postmaster@gusted.xyz >
2025-11-12 23:13:29 +01:00
Gusted and Earl Warren
56d9b4b14d
chore: make renovate work on v13 forgejo ( #9679 )
...
v13 is going to be released soon, v12 is EOL in a few days.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/9679
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Gusted <postmaster@gusted.xyz >
Co-committed-by: Gusted <postmaster@gusted.xyz >
2025-10-14 10:43:22 +02:00
Gusted and Gusted
8db9870295
chore: add npm version constraint to renovate ( #9496 )
...
Renovate uses the latest npm version, however this is now causing a
issue where the latest npm version is diverging from the npm version
packaged with node v22 (version the CI uses) in terms of what the
`package-lock.json` should contain (!9477 ) (some `"peer": true` lines).
Constrain renovate to use npm v10 to avoid this mismatch issue.
Thank you @viceice for helping with this patch.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/9496
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Gusted <postmaster@gusted.xyz >
Co-committed-by: Gusted <postmaster@gusted.xyz >
2025-10-01 17:29:56 +02:00
Earl Warren and Earl Warren
36875e1859
chore: fix renovate.json format error ( #9148 )
...
```
INFO: Repository has invalid config (repository=forgejo/forgejo)
"error": {
"validationSource": "renovate.json",
"validationError": "Invalid JSON (parsing failed)",
"validationMessage": "Syntax error near ],\n ",
"message": "config-validation",
"stack": "Error: config-validation\n at checkForRepoConfigError (/usr/local/renovate/lib/workers/repository/init/merge.ts:173:17)\n at mergeRenovateConfig (/usr/local/renovate/lib/workers/repository/init/merge.ts:213:3)\n at getRepoConfig (/usr/local/renovate/lib/workers/repository/init/config.ts:14:12)\n at initRepo (/usr/local/renovate/lib/workers/repository/init/index.ts:58:12)\n at Object.renovateRepository (/usr/local/renovate/lib/workers/repository/index.ts:70:14)\n at attributes.repository (/usr/local/renovate/lib/workers/global/index.ts:184:11)\n at start (/usr/local/renovate/lib/workers/global/index.ts:169:7)\n at /usr/local/renovate/lib/renovate.ts:19:22"
}
```
Refs https://codeberg.org/forgejo/forgejo/actions/runs/100552#jobstep-2-101
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/9148
Co-authored-by: Earl Warren <contact@earl-warren.org >
Co-committed-by: Earl Warren <contact@earl-warren.org >
2025-09-03 21:42:56 +02:00
Earl Warren and Earl Warren
79af994eae
chore: github.com/nektos/act is now at code.forgejo.org/forgejo/runner/v9 ( #8742 )
...
Refs: https://code.forgejo.org/forgejo/runner/releases/tag/v9.0.1
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8742
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Earl Warren <contact@earl-warren.org >
Co-committed-by: Earl Warren <contact@earl-warren.org >
2025-07-31 13:41:59 +02:00
Renovate Bot and Michael Kriese
199d9cf65c
Migrate renovate config ( #8588 )
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8588
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org >
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org >
2025-07-21 12:32:49 +02:00
viceice and Earl Warren
d61bd928a4
chore(renovate): enable v12 branch ( #8525 )
...
We should enable renovate on v12 for easier backports.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8525
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
Co-authored-by: viceice <michael.kriese@gmx.de >
Co-committed-by: viceice <michael.kriese@gmx.de >
2025-07-16 14:21:42 +02:00
Michael Kriese and Michael Kriese
549fcff997
chore: drop unused misspell ( #8058 )
...
Package not used
- closes #8053
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8058
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
Co-authored-by: Michael Kriese <michael.kriese@visualon.de >
Co-committed-by: Michael Kriese <michael.kriese@visualon.de >
2025-06-03 12:03:00 +02:00
Michael Kriese and Earl Warren
240d958c0f
chore(renovate): disable indirect digest updates for stable ( #8055 )
...
We usually don't updates them anyways
---
Please admin merge to not waste ci time
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8055
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
Co-authored-by: Michael Kriese <michael.kriese@visualon.de >
Co-committed-by: Michael Kriese <michael.kriese@visualon.de >
2025-06-03 10:17:48 +02:00
Michael Kriese and Earl Warren
dbbd0de860
chore(renovate): bump to v40.40.0 and disable v7 ( #8050 )
...
- bump renovate to v40.40.0
- remove v7 branch from renovate
- disable transitive updates on stable branches (security updates will /should still open automatically)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8050
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
Co-authored-by: Michael Kriese <michael.kriese@visualon.de >
Co-committed-by: Michael Kriese <michael.kriese@visualon.de >
2025-06-03 08:52:21 +02:00
Michael Kriese and Michael Kriese
43fee56011
chore(renovate): disable indirect major updates for stable branches ( #7914 )
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7914
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
Co-authored-by: Michael Kriese <michael.kriese@visualon.de >
Co-committed-by: Michael Kriese <michael.kriese@visualon.de >
2025-05-20 11:00:56 +02:00
Renovate Bot and Michael Kriese
c0187aa789
Migrate renovate config ( #7877 )
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7877
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org >
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org >
2025-05-20 10:47:08 +02:00
Earl Warren and Earl Warren
c35550f324
chore(release): v10.0 is EOL ( #7555 )
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7555
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Earl Warren <contact@earl-warren.org >
Co-committed-by: Earl Warren <contact@earl-warren.org >
2025-04-16 10:06:26 +00:00
Michael Kriese and Michael Kriese
23360ad415
chore(renovate): fix package name matching for go majors [skip ci] ( #7554 )
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7554
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
Co-authored-by: Michael Kriese <michael.kriese@visualon.de >
Co-committed-by: Michael Kriese <michael.kriese@visualon.de >
2025-04-16 07:47:47 +00:00
Michael Kriese and Michael Kriese
587044cba1
chore(renovate): update settings for latest version ( #7329 )
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7329
Co-authored-by: Michael Kriese <michael.kriese@visualon.de >
Co-committed-by: Michael Kriese <michael.kriese@visualon.de >
2025-03-25 08:39:26 +00:00
viceice and Earl Warren
30b438ff84
chore(renovate): add yamllint to automerge ( #7262 )
...
Only used for linting, so safe for automerge. Also sort list alphabetically.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7262
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
Co-authored-by: viceice <michael.kriese@gmx.de >
Co-committed-by: viceice <michael.kriese@gmx.de >
2025-03-18 07:52:00 +00:00
Gusted and Michael Kriese
2b79c23686
chore: add @vitejs/plugin-vue to renovate automerge ( #7252 )
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7252
Reviewed-by: Michael Kriese <michael.kriese@gmx.de >
Co-authored-by: Gusted <postmaster@gusted.xyz >
Co-committed-by: Gusted <postmaster@gusted.xyz >
2025-03-17 14:52:31 +00:00
Michael Kriese and Michael Kriese
ff3f12a350
chore: consistent docker image and action references ( #6703 )
...
- replace `code.forgejo.org` ->`data.forgejo.org` on docker images
- add `https://data.forgejo.org/ ` to actions where missing
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6703
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
Co-authored-by: Michael Kriese <michael.kriese@visualon.de >
Co-committed-by: Michael Kriese <michael.kriese@visualon.de >
2025-01-28 15:41:11 +00:00
Michael Kriese
f2e63495e7
chore(renovate): fix self-update config [skip-ci]
2025-01-18 15:19:53 +01:00
Earl Warren
72dcf04690
chore(release): v10.0 is cut, v9.0 is soon to be EOL
2024-12-25 12:00:15 +01:00
Earl Warren
68658400be
chore(renovate): throttle down upgrade of linters & test packages
...
Once a month.
* Without throttling multiple test / linter packages are updated every
day and this exceeds the review capacity of Forgejo contributors at
the moment. Some of them even release more than once a day,
apparently on every commit.
* Add @axe-core/playwright
2024-11-13 11:17:57 +01:00
Earl Warren
dd6ea5f3c8
chore(renovate): always set the test/not-needed label
...
Under the assumption that all dependencies have at least some test
coverage. It may not be always true but it is generally true. Ideally
there would be an inventory, a checklist of dependencies that miss
test coverage, but that does not exist.
2024-11-12 12:48:35 +01:00
Michael Kriese
4f336e589d
chore(renovate): group forgejo go-chi packages
2024-11-08 12:17:00 +01:00
Michael Kriese
968ca15f06
chore(renovate): fix regex
2024-11-06 15:58:44 +01:00
Michael Kriese
8bb33b2c4c
chore(renovate): use squash for automerge
...
We don't sign commits, so no benefit for a merge commit.
2024-11-06 15:42:07 +01:00
Michael Kriese
2322fdd7cd
chore(renovate): explicit base branches
...
So we can easier skip versions and renovate requires less runtime.
2024-11-01 13:00:55 +01:00
Gusted
18a959dc8c
chore: remove eslint v9 restriction in renovate
...
This restriction can be removed with 7ad83fce40
2024-10-23 16:02:27 +02:00
Michael Kriese
cfbcd7f60f
chore(renovate): disable renovate self-updates on release branches
2024-09-16 08:39:26 +02:00
Michael Kriese
b54f15cf8d
chore(renovate): fix rule matching
2024-08-29 10:17:53 +02:00
Michael Kriese
9c0c3260ad
chore(renovate): use shared preset
2024-08-23 11:17:36 +02:00
Michael Kriese
d9d7f8dc92
chore(renovate): fix grouping
2024-08-21 11:27:19 +02:00
Michael Kriese
171e4cc3be
chore(renovate): bump go version inside go.mod
2024-08-21 10:10:00 +02:00
Otto
d9ae23188f
Merge pull request 'chore(renovate): F3 is under development, update quarterly' ( #5025 ) from earl-warren/forgejo:wip-f3-renovate into forgejo
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5025
Reviewed-by: Gusted <gusted@noreply.codeberg.org >
2024-08-20 13:52:38 +00:00
Michael Kriese
bf609ce874
chore(renovate): better linter and postcss grouping
2024-08-20 08:14:08 +02:00
Earl Warren
0c2d527aec
chore(renovate): F3 is under development, update quarterly
2024-08-20 08:02:00 +02:00
Earl Warren
5ae1c96893
chore(renovate): bitnami/minio is now docker.io/bitnami/minio
2024-08-18 06:37:45 +02:00
Otto Richter
c3f2b60b3b
chore(renovate): Add mirrored node image to renovate.json
2024-08-12 16:19:20 +02:00
Michael Kriese
62b6e48a9e
chore(renovate): add labels and reviewer to renovate updates
2024-08-08 11:42:32 +02:00
Michael Kriese
707318fcc8
chore(renovate): use mirror image
2024-07-30 09:23:44 +02:00
Renovate Bot
a74f3832a5
Migrate config renovate.json
2024-07-27 06:09:28 +00:00
Michael Kriese
bc259542b5
chore(renovate): fix renovate grouping
2024-07-26 14:07:39 +02:00
Earl Warren
f915532703
chore(renovate): group x/tools/* upgrade
...
Refs: https://codeberg.org/forgejo/forgejo/pulls?q=x%2Ftools&type=all
2024-07-09 07:23:22 +02:00
Michael Kriese
f4a9fb73b4
chore(renovate): remove schedules for stable branches
2024-07-08 09:03:37 +02:00
Michael Kriese
065102c263
chore(renovate): fix base branches regex
2024-07-05 12:10:51 +02:00
Michael Kriese
c38acaff81
chore(renovate): add base branches
2024-07-04 09:43:53 +02:00
Earl Warren
616291485e
Merge pull request 'Update module golang.org/x/tools/gopls to v0.16.0' ( #4242 ) from renovate/golang.org-x-tools-gopls-0.x into forgejo
...
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4242
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org >
2024-06-28 14:10:33 +00:00
Renovate Bot and Earl Warren
6f423143ea
Update module golang.org/x/tools/gopls to v0.16.0
2024-06-28 15:35:02 +02:00
Michael Kriese
35b0181df0
chore(renovate): add shared go preset
2024-06-26 09:24:17 +02:00
Michael Kriese
f84f0df9b5
chore(renovate): set group name for renovate
2024-06-25 16:01:04 +02:00