mirror of
1
Fork 0
Beyond coding. We forge.
Go to file
Otto Richter 40551de313 tests(e2e): Refactor various tests
Goals:

- speedup
- less flakiness
- best practices and more use
- documentation

config:
- sync ports in Makefile and playwright config
  (otherwise, some tests fail locally because they assert the full URL including the (wrong) port)
- even more generous timeouts
- limit workers to one again (because I finally understand how
  Playwright works)
- allow nested functions to group them together with the related test

all:

- deprecate waitForLoadState('networkidle')
  - it is discouraged as per https://playwright.dev/docs/api/class-page#page-wait-for-load-state
  - I could not find a usage that seems to require it actually (see
    added documentation in README)
  - adding an exception should be made explicitly
  - it does not do what you might expect anyway in most cases
- only log in when necessary

webauthn:

- verify that login is possible after disabling key
- otherwise, the cleanup was not necessary after the previous refactor to create a fresh user each

issue-sidebar / WIP toggle:

- split into smaller chunks
- restore original state first
- add missed assertion to fix race condition (not waiting
  before state was reached)
- explicitly toggle the state to detect mismatch earlier

issue-sidebar / labels:

- restore original state first
- better waiting for background request
2024-11-13 13:15:37 +01:00
.devcontainer Update ghcr.io/devcontainers/features/git-lfs Docker tag to v1.2.3 2024-10-01 10:02:11 +00:00
.forgejo Update renovate to v39.9.0 (forgejo) (#5907) 2024-11-11 05:57:44 +00:00
assets [CHORE] Use forked `binding` library 2024-11-05 22:47:34 +01:00
build refactor: remove redundant err declarations (#32381) 2024-11-05 09:33:15 +01:00
cmd fix(tests): Fix TestMigrateActionsArtifacts() 2024-11-05 09:39:24 +01:00
contrib chore: set recommend vscode settings for golangci-lint 2024-11-11 10:53:47 +01:00
custom/conf [skip ci] Merge pull request 'document sqlite3 as suggested database' (#5415) from Dirk/forgejo:forgejo into forgejo 2024-11-10 23:53:35 +00:00
docker fix(Dockerfile.rootless): revert to default path for `app.ini` 2024-04-26 21:30:10 +02:00
models Merge pull request 'fix: Proper parsing of date for git commits' (#5892) from gusted/forgejo-port-32409 into forgejo 2024-11-11 14:22:32 +00:00
modules Merge pull request 'fix: Proper parsing of date for git commits' (#5892) from gusted/forgejo-port-32409 into forgejo 2024-11-11 14:22:32 +00:00
options Merge pull request 'enh(issue search): sort by score and term based query for fuzzy search' (#5819) from snematoda/enh-issue-search into forgejo 2024-11-10 12:51:55 +00:00
public Merge pull request 'Do not change stroke size in the loading animation' (#5506) from kytta/forgejo:forgejo-loading-stroke into forgejo 2024-10-25 17:24:16 +00:00
release-notes Merge pull request '[gitea] week 2024-45 cherry pick (gitea/main -> forgejo)' (#5789) from algernon/wcp/2024-45 into forgejo 2024-11-06 08:57:43 +00:00
releases/images [DOCS] RELEASE-NOTES.md 2024-02-05 14:44:32 +01:00
routers [PORT] Refactor DateUtils and merge TimeSince (gitea#32409) 2024-11-10 22:23:27 +01:00
services Merge pull request 'fix: Proper parsing of date for git commits' (#5892) from gusted/forgejo-port-32409 into forgejo 2024-11-11 14:22:32 +00:00
templates Merge pull request 'fix: Proper parsing of date for git commits' (#5892) from gusted/forgejo-port-32409 into forgejo 2024-11-11 14:22:32 +00:00
tests tests(e2e): Refactor various tests 2024-11-13 13:15:37 +01:00
tools chore: move to Eslint flat config 2024-10-23 15:28:43 +02:00
web_src Remove unused css class "form-field-content-aside-label" 2024-11-09 22:59:50 +00:00
.air.toml Reduce `air` verbosity (#31417) 2024-06-23 12:30:09 +02:00
.deadcode-out [PORT] Refactor tests to prevent from unnecessary preparations (gitea#32398) 2024-11-07 23:02:10 +01:00
.dockerignore Add `/public/assets/img/webpack` to ignore files again (#30451) 2024-04-15 20:01:36 +02:00
.editorconfig fixed indentation style in editorconfig for go.mod 2024-05-14 00:24:18 +02:00
.envrc.example Make direnv optional to let developers use their own direnv configuration 2024-11-06 20:34:49 +01:00
.gitattributes Add `interface{}` to `any` replacement to `make fmt`, exclude `*.pb.go` (#30461) 2024-04-15 20:01:36 +02:00
.gitignore Make direnv optional to let developers use their own direnv configuration 2024-11-06 20:34:49 +01:00
.gitmodules cleanup(tests): remove manual testing submodule 2024-04-21 10:13:51 +02:00
.gitpod.yml Remove sqlite-viewer and using database client (#31223) 2024-06-09 11:13:39 +02:00
.golangci.yml Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v1.62.0 (forgejo) (#5911) 2024-11-11 13:02:01 +00:00
.ignore Add `/options/license` and `/options/gitignore` to `.ignore` (#30219) 2024-04-07 15:40:31 +02:00
.mailmap Add .mailmap with aliases for Unknwon (github.com/Unknwon) 2024-08-14 08:26:16 -04:00
.markdownlint.yaml Update JS dependencies (#28537) 2023-12-30 05:29:03 +00:00
.npmrc Upgrade to npm lockfile v3 and explicitely set it (#23561) 2023-03-18 19:38:10 +01:00
.release-notes-assistant.yaml chore(release-notes): no need to specify they are draft 2024-10-22 06:54:27 +02:00
.spectral.yaml Add spectral linter for Swagger (#20321) 2022-07-11 18:07:16 -05:00
.yamllint.yaml fully replace drone with actions (#27556) 2023-10-11 06:39:32 +00:00
BSDmakefile Fix build errors on BSD (in BSDMakefile) (#27594) 2023-10-13 15:38:27 +00:00
CODEOWNERS docs(e2e): Update e2e test instructions for changed file patterns 2024-10-04 15:15:10 +02:00
CONTRIBUTING.md docs: replace Developer Guide link with the new Contributor Guide one. 2024-08-26 13:22:39 +03:00
DCO Remove address from DCO (#22595) 2023-01-24 18:52:38 +00:00
Dockerfile Dockerfile: use alpine:3.20 instead of golang:1.23-alpine3.20 2024-10-16 22:04:26 +02:00
Dockerfile.rootless Dockerfile: use alpine:3.20 instead of golang:1.23-alpine3.20 2024-10-16 22:04:26 +02:00
LICENSE Forgejo v9.0 is GPLv3+ 2024-08-22 09:09:29 +02:00
Makefile tests(e2e): Refactor various tests 2024-11-13 13:15:37 +01:00
README.md start of the v10.0 development branch 2024-09-25 11:11:41 +02:00
RELEASE-NOTES.md docs: add links to the v7.0.10 & v9.0.1 release notes 2024-10-28 09:08:48 +01:00
build.go User/Org Feed render description as per web (#23887) 2023-04-04 04:39:47 +01:00
eslint.config.mjs tests(e2e): Refactor various tests 2024-11-13 13:15:37 +01:00
flake.lock Fix update flake (#31626) 2024-07-14 11:35:15 +02:00
flake.nix Fix update flake (#31626) 2024-07-14 11:35:15 +02:00
go.mod Merge pull request 'Update module golang.org/x/net to v0.31.0 (forgejo)' (#5890) from renovate/forgejo-golang.org-x-net-0.x into forgejo 2024-11-10 03:49:16 +00:00
go.sum Merge pull request 'Update module golang.org/x/net to v0.31.0 (forgejo)' (#5890) from renovate/forgejo-golang.org-x-net-0.x into forgejo 2024-11-10 03:49:16 +00:00
main.go [RELEASE] decouple the release name from the version number 2024-02-17 15:27:35 +01:00
package-lock.json Merge pull request 'Update dependency postcss to v8.4.49 (forgejo)' (#5921) from renovate/forgejo-postcss into forgejo 2024-11-12 16:21:16 +00:00
package.json Merge pull request 'Update dependency postcss to v8.4.49 (forgejo)' (#5921) from renovate/forgejo-postcss into forgejo 2024-11-12 16:21:16 +00:00
playwright.config.ts tests(e2e): Refactor various tests 2024-11-13 13:15:37 +01:00
poetry.lock Update dependency djlint to v1.36.0 2024-11-06 00:03:27 +00:00
poetry.toml Clean up pyproject.toml and package.json, fix poetry options (#25327) 2023-06-18 18:13:08 +00:00
pyproject.toml Update dependency djlint to v1.36.0 2024-11-06 00:03:27 +00:00
release-notes-assistant.sh chore(release-notes-assistant): update internationalization label (#5698) 2024-10-25 14:36:22 +00:00
renovate.json chore(renovate): always set the test/not-needed label 2024-11-12 12:48:35 +01:00
stylelint.config.js Merge pull request 'Port "Enable `declaration-block-no-redundant-longhand-properties` (#30950)' (#3769) from beowulf/gitea-port-pull-30950 into forgejo 2024-05-14 22:23:54 +00:00
tailwind.config.js fix: Do not scan all Go files for tailwind classes 2024-08-24 15:45:50 +02:00
tsconfig.json Add typescript 2024-10-29 18:15:09 +01:00
vitest.config.ts Add typescript 2024-10-29 18:15:09 +01:00
webpack.config.js Add typescript 2024-10-29 18:15:09 +01:00

README.md

Welcome to Forgejo

Hi there! Tired of big platforms playing monopoly? Providing Git hosting for your project, friends, company or community? Forgejo (/for'd͡ʒe.jo/ inspired by forĝejo the Esperanto word for forge) has you covered with its intuitive interface, light and easy hosting and a lot of builtin functionality.

Forgejo was created in 2022 because we think that the project should be owned by an independent community. If you second that, then Forgejo is for you! Our promise: Independent Free/Libre Software forever!

What does Forgejo offer?

If you like any of the following, Forgejo is literally meant for you:

  • Lightweight: Forgejo can easily be hosted on nearly every machine. Running on a Raspberry? Small cloud instance? No problem!
  • Project management: Besides Git hosting, Forgejo offers issues, pull requests, wikis, kanban boards and much more to coordinate with your team.
  • Publishing: Have something to share? Use releases to host your software for download, or use the package registry to publish it for docker, npm and many other package managers.
  • Customizable: Want to change your look? Change some settings? There are many config switches to make Forgejo work exactly like you want.
  • Powerful: Organizations & team permissions, CI integration, Code Search, LDAP, OAuth and much more. If you have advanced needs, Forgejo has you covered.
  • Privacy: From update checker to default settings: Forgejo is built to be privacy first for you and your crew.
  • Federation: (WIP) We are actively working to connect software forges with each other through ActivityPub, and create a collaborative network of personal instances.

Learn more

Dive into the documentation, subscribe to releases and blog post on our website, find us on the Fediverse or hop into our Matrix room if you have any questions or want to get involved.

License

Forgejo is distributed under the terms of the GPL version 3.0 or any later version.

The agreement for this license was documented in June 2023 and implemented during the development of Forgejo v9.0. All Forgejo versions before v9.0 are distributed under the MIT license.

Get involved

If you are interested in making Forgejo better, either by reporting a bug or by changing the governance, please take a look at the contribution guide.