Private Issues: Investigate integration tests broken in #168 #420

Closed
opened 2026-02-23 16:23:50 +00:00 by nphilipp · 3 comments
Member

Three integration tests fail with the basic private issue changes applied:

make TAGS="bindata timetzdata sqlite sqlite_unlock_notify" GOTESTFLAGS="-v" test-sqlite\#{TestAdminModerationViewReports,TestLinksLogin,TestNotification}

Investigate why and fix.

TestAdminModerationViewReports
nils@gibbon:~/src/forgejo (forgejo--private-issues)> make TAGS="bindata timetzdata sqlite sqlite_unlock_notify" GOTESTFLAGS="-v" -k test-sqlite\#TestAdminModerationViewReports
/usr/lib/golang/bin/go test -v -c forgejo.org/tests/integration -o integrations.sqlite.test -tags 'sqlite sqlite_unlock_notify'
sed -e 's|{{REPO_TEST_DIR}}||g' \
	-e 's|{{TEST_LOGGER}}|test,file|g' \
	-e 's|{{TEST_TYPE}}|integration|g' \
		tests/sqlite.ini.tmpl > tests/sqlite.ini
GITEA_ROOT="/home/nils/src/forgejo" GITEA_CONF=tests/sqlite.ini  ./integrations.sqlite.test  -test.run TestAdminModerationViewReports
2026/02/24 11:59:47 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local
2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments
2026/02/24 11:59:47 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local
2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars
2026/02/24 11:59:47 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local
2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars
2026/02/24 11:59:47 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local
2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs
2026/02/24 11:59:47 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local
2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive
2026/02/24 11:59:47 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local
2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages
2026/02/24 11:59:47 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local
2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log
2026/02/24 11:59:47 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local
2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts
2026/02/24 11:59:47 modules/git/git.go:129:checkInit() [W] git module has been initialized already, duplicate init may work but it's better to fix it
2026/02/24 11:59:47 routers/init.go:111:InitWebInstalled() [I] Git version: 2.53.0, Wire Protocol Version 2 Enabled (home: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/home)
??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local
??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments
??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local
??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars
??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local
??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars
??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local
??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs
??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local
??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive
??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local
??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages
??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local
??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log
??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local
??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts
??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:131:InitWebInstalled() [I] SQLite3 support is enabled
??? [TestLogger] 2026/02/24 11:59:47 routers/common/db.go:23:InitDBEngine() [I] Beginning ORM engine initialization.
??? [TestLogger] 2026/02/24 11:59:47 routers/common/db.go:30:InitDBEngine() [I] ORM engine initialization attempt #1/10...
??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:137:InitWebInstalled() [I] ORM engine initialization successful!
??? [TestLogger] 2026/02/24 11:59:47 ...er/issues/indexer.go:78:func1() [I] PID 4013593: Initializing Issue Indexer: bleve
??? [TestLogger] 2026/02/24 11:59:47 ...exer/code/indexer.go:168:func3() [I] PID: 4013593 Initializing Repository Indexer at: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/indexers/repos.bleve
??? [TestLogger] 2026/02/24 11:59:47 ...xer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories
??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:84:syncAppConfForGit() [I] AppPath changed from '' to '/home/nils/src/forgejo/gitea'
??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:89:syncAppConfForGit() [I] CustomConf changed from '' to '/home/nils/src/forgejo/tests/sqlite.ini'
??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:95:syncAppConfForGit() [I] re-sync repository hooks ...
??? [TestLogger] 2026/02/24 11:59:47 ...er/issues/indexer.go:155:func2() [I] Issue Indexer Initialization took 5.197825ms
??? [TestLogger] 2026/02/24 11:59:47 ...exer/code/indexer.go:243:func4() [I] Repository Indexer Initialization took 5.11348ms
??? [TestLogger] 2026/02/24 11:59:47 ...exer/code/indexer.go:269:populateRepoIndexer() [I] Populating the repo indexer with existing repositories
??? [TestLogger] 2026/02/24 11:59:47 modules/ssh/ssh.go:332:Listen() [I] Adding SSH host key: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/ssh/gitea.rsa
??? [TestLogger] 2026/02/24 11:59:47 modules/ssh/init.go:30:Init() [I] SSH server started on localhost:2203. Cipher list ([chacha20-poly1305@openssh.com aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com]), key exchange algorithms ([mlkem768x25519-sha256 curve25519-sha256 ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha256 diffie-hellman-group14-sha1]), MACs ([hmac-sha2-256-etm@openssh.com hmac-sha2-256 hmac-sha1])
??? [TestLogger] 2026/02/24 11:59:47 ...s/graceful/server.go:50:NewServer() [I] Starting new SSH server: tcp:localhost:2203 on PID: 4013593
??? [TestLogger] 2026/02/24 11:59:47 ...er/cleanup_sha256.go:27:CleanupSHA256() [I] Start to cleanup dangling images with a sha256:* version
??? [TestLogger] 2026/02/24 11:59:47 ...er/cleanup_sha256.go:106:cleanupSHA256() [I] Nothing to cleanup
??? [TestLogger] 2026/02/24 11:59:47 ...er/cleanup_sha256.go:29:CleanupSHA256() [I] Finished to cleanup dangling images with a sha256:* version
=== TestAdminModerationViewReports (tests/test_utils.go:344)
=== TestAdminModerationViewReports/Moderation_enabled/Anonymous_user (tests/integration/admin_moderation_test.go:66)
=== TestAdminModerationViewReports/Moderation_enabled/Normal_user (tests/integration/admin_moderation_test.go:75)
=== TestAdminModerationViewReports/Moderation_enabled/Admin_user (tests/integration/admin_moderation_test.go:85)
=== TestAdminModerationViewReports/Moderation_enabled/Admin_user/reports_details_page (tests/integration/admin_moderation_test.go:118)
=== TestAdminModerationViewReports/Moderation_disabled/Anonymous_user (tests/integration/admin_moderation_test.go:241)
=== TestAdminModerationViewReports/Moderation_disabled/Normal_user (tests/integration/admin_moderation_test.go:250)
=== TestAdminModerationViewReports/Moderation_disabled/Admin_user (tests/integration/admin_moderation_test.go:260)
--- FAIL: TestAdminModerationViewReports (0.85s)
    test_utils.go:252: PrepareTestEnv:Process "CodeIndexer batch" cancelled
    test_utils.go:252: PrepareTestEnv:Process "Stats.DB Index Repo[39]" cancelled
    test_utils.go:252: PrepareTestEnv:Process "git(dir:/home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/gitea-repositories/user12/repo10.git): /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs.clean= show-ref -s refs/heads/master" cancelled
    testlogger.go:411: 2026/02/24 11:59:47 ...exer/code/indexer.go:321:populateRepoIndexer() [I] Done (re)populating the repo indexer with existing repositories
    test_utils.go:276: PrepareTestEnv: all processes cancelled within 11.261976ms
    testlogger.go:411: 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/gitea-lfs-meta
    --- FAIL: TestAdminModerationViewReports/Moderation_enabled (0.41s)
        --- FAIL: TestAdminModerationViewReports/Moderation_enabled/Admin_user (0.19s)
            testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed POST /user/login for test-mock:12345, 303 See Other in 8.1ms @ auth/auth.go:178(auth.SignInPost)
            testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports for test-mock:12345, 200 OK in 8.4ms @ admin/reports.go:33(admin.AbuseReports)
            --- FAIL: TestAdminModerationViewReports/Moderation_enabled/Admin_user/reports_details_page (0.09s)
                testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/1/id/1002 for test-mock:12345, 200 OK in 1.7ms @ admin/reports.go:62(admin.AbuseReportDetails)
                testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/4/id/1003 for test-mock:12345, 200 OK in 1.4ms @ admin/reports.go:62(admin.AbuseReportDetails)
                testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/4/id/9991 for test-mock:12345, 200 OK in 1.5ms @ admin/reports.go:62(admin.AbuseReportDetails)
                admin_moderation_test.go:166: 
                    	Error Trace:	/home/nils/src/forgejo/tests/integration/admin_moderation_test.go:166
                    	Error:      	Not equal: 
                    	            	expected: 6
                    	            	actual  : 7
                    	Test:       	TestAdminModerationViewReports/Moderation_enabled/Admin_user/reports_details_page
                testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/4/id/9992 for test-mock:12345, 200 OK in 1.4ms @ admin/reports.go:62(admin.AbuseReportDetails)
                admin_moderation_test.go:195: 
                    	Error Trace:	/home/nils/src/forgejo/tests/integration/admin_moderation_test.go:195
                    	Error:      	Not equal: 
                    	            	expected: 6
                    	            	actual  : 7
                    	Test:       	TestAdminModerationViewReports/Moderation_enabled/Admin_user/reports_details_page
                testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/3/id/9991 for test-mock:12345, 200 OK in 1.5ms @ admin/reports.go:62(admin.AbuseReportDetails)
FAIL
make: *** [Makefile:648: test-sqlite#TestAdminModerationViewReports] Error 1
nils@gibbon:~/src/forgejo (forgejo--private-issues)>
TestLinksLogin

nils@gibbon:~/src/forgejo (forgejo--private-issues)> make TAGS="bindata timetzdata sqlite sqlite_unlock_notify" GOTESTFLAGS="-v" -k test-sqlite\#TestLinksLogin
/usr/lib/golang/bin/go test -v -c forgejo.org/tests/integration -o integrations.sqlite.test -tags 'sqlite sqlite_unlock_notify'
sed -e 's|{{REPO_TEST_DIR}}||g' \
	-e 's|{{TEST_LOGGER}}|test,file|g' \
	-e 's|{{TEST_TYPE}}|integration|g' \
		tests/sqlite.ini.tmpl > tests/sqlite.ini
GITEA_ROOT="/home/nils/src/forgejo" GITEA_CONF=tests/sqlite.ini  ./integrations.sqlite.test  -test.run TestLinksLogin
2026/02/24 12:03:13 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local
2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments
2026/02/24 12:03:13 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local
2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars
2026/02/24 12:03:13 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local
2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars
2026/02/24 12:03:13 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local
2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs
2026/02/24 12:03:13 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local
2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive
2026/02/24 12:03:13 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local
2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages
2026/02/24 12:03:13 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local
2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log
2026/02/24 12:03:13 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local
2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts
2026/02/24 12:03:13 modules/git/git.go:129:checkInit() [W] git module has been initialized already, duplicate init may work but it's better to fix it
2026/02/24 12:03:13 routers/init.go:111:InitWebInstalled() [I] Git version: 2.53.0, Wire Protocol Version 2 Enabled (home: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/home)
??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local
??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments
??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local
??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars
??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local
??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars
??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local
??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs
??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local
??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive
??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local
??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages
??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local
??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log
??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local
??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts
??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:131:InitWebInstalled() [I] SQLite3 support is enabled
??? [TestLogger] 2026/02/24 12:03:13 routers/common/db.go:23:InitDBEngine() [I] Beginning ORM engine initialization.
??? [TestLogger] 2026/02/24 12:03:13 routers/common/db.go:30:InitDBEngine() [I] ORM engine initialization attempt #1/10...
??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:137:InitWebInstalled() [I] ORM engine initialization successful!
??? [TestLogger] 2026/02/24 12:03:13 ...er/issues/indexer.go:78:func1() [I] PID 4021207: Initializing Issue Indexer: bleve
??? [TestLogger] 2026/02/24 12:03:13 ...xer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories
??? [TestLogger] 2026/02/24 12:03:13 ...exer/code/indexer.go:168:func3() [I] PID: 4021207 Initializing Repository Indexer at: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/indexers/repos.bleve
??? [TestLogger] 2026/02/24 12:03:13 ...er/issues/indexer.go:155:func2() [I] Issue Indexer Initialization took 3.951985ms
??? [TestLogger] 2026/02/24 12:03:13 ...exer/code/indexer.go:243:func4() [I] Repository Indexer Initialization took 4.189166ms
??? [TestLogger] 2026/02/24 12:03:13 ...exer/code/indexer.go:269:populateRepoIndexer() [I] Populating the repo indexer with existing repositories
??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:84:syncAppConfForGit() [I] AppPath changed from '' to '/home/nils/src/forgejo/gitea'
??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:89:syncAppConfForGit() [I] CustomConf changed from '' to '/home/nils/src/forgejo/tests/sqlite.ini'
??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:95:syncAppConfForGit() [I] re-sync repository hooks ...
??? [TestLogger] 2026/02/24 12:03:13 modules/ssh/ssh.go:332:Listen() [I] Adding SSH host key: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/ssh/gitea.rsa
??? [TestLogger] 2026/02/24 12:03:13 modules/ssh/init.go:30:Init() [I] SSH server started on localhost:2203. Cipher list ([chacha20-poly1305@openssh.com aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com]), key exchange algorithms ([mlkem768x25519-sha256 curve25519-sha256 ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha256 diffie-hellman-group14-sha1]), MACs ([hmac-sha2-256-etm@openssh.com hmac-sha2-256 hmac-sha1])
??? [TestLogger] 2026/02/24 12:03:13 ...s/graceful/server.go:50:NewServer() [I] Starting new SSH server: tcp:localhost:2203 on PID: 4021207
??? [TestLogger] 2026/02/24 12:03:13 ...er/cleanup_sha256.go:27:CleanupSHA256() [I] Start to cleanup dangling images with a sha256:* version
??? [TestLogger] 2026/02/24 12:03:13 ...er/cleanup_sha256.go:106:cleanupSHA256() [I] Nothing to cleanup
??? [TestLogger] 2026/02/24 12:03:13 ...er/cleanup_sha256.go:29:CleanupSHA256() [I] Finished to cleanup dangling images with a sha256:* version
=== TestLinksLogin (tests/test_utils.go:344)
testlogger.go:recordError() FATAL ERROR: log.Error has been called: // TestLinksLogin
	"2026/02/24 12:03:13 ...rs/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: runtime error: invalid memory address or nil pointer dereference\n\t/usr/lib/golang/src/runtime/panic.go:783 (0x483231)\n\t\tgopanic: fn()\n\t/home/nils/src/forgejo/modules/web/routing/logger_manager.go:116 (0x20de9a4)\n\t\t(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr)\n\t/usr/lib/golang/src/runtime/panic.go:783 (0x483231)\n\t\tgopanic: fn()\n\t/usr/lib/golang/src/runtime/panic.go:262 (0x485958)\n\t\tpanicmem: panic(memoryError)\n\t/usr/lib/golang/src/runtime/signal_unix.go:925 (0x485928)\n\t\tsigpanic: panicmem()\n\t/home/nils/src/forgejo/models/activities/notification.go:468 (0x1aa5dea)\n\t\tNotificationList.LoadIssuePullRequests: if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil {\n\t/home/nils/src/forgejo/routers/web/user/notification.go:147 (0x2a2dc24)\n\t\tgetNotifications: if err = notifications.LoadIssuePullRequests(ctx); err != nil {\n\t/home/nils/src/forgejo/routers/web/user/notification.go:63 (0x2a2d4db)\n\t\tNotifications: getNotifications(ctx)\n\t/usr/lib/golang/src/reflect/value.go:581 (0x512e65)\n\t\tValue.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), ®Args)\n\t/usr/lib/golang/src/reflect/value.go:365 (0x511f58)\n\t\tValue.Call: return v.call(\"Call\", in)\n\t/home/nils/src/forgejo/modules/web/handler.go:176 (0x20e8349)\n\t\ttoHandlerProvider.func3.1: ret := fn.Call(argsIn)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/routemock.go:34 (0x20e9242)\n\t\t(*Route).wrapMiddlewareAndHandler.RouteMockPoint.func1.1: next.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/chain.go:31 (0x20df285)\n\t\t(*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/middleware/get_head.go:37 (0x291722a)\n\t\tGetHead.func1: next.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/services/context/context.go:215 (0x215c24e)\n\t\tContexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/code.forgejo.org/go-chi/session/session.go:167 (0x20aac2d)\n\t\tSessioner.func1.1: next.ServeHTTP(w, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/klauspost/compress/gzhttp/compress.go:656 (0x20edbe2)\n\t\tNewWrapper.func1.1: h.ServeHTTP(newNoGzipResponseWriter(w), r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0x20e8651)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:155 (0x20e8640)\n\t\ttoHandlerProvider.func2.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)\n\t\t(*Mux).Mount.func1: handler.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)\n\t\t(*Mux).Mount.func1: handler.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/routing/logger_manager.go:122 (0x20de82e)\n\t\t(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/chi-middleware/proxy/middleware.go:37 (0x24da30f)\n\t\tProtocolMiddlewares.ForwardedHeaders.func3.1: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:51 (0x24db997)\n\t\tProtocolMiddlewares.func2.1: next.ServeHTTP(respWriter, req.WithContext(cache.WithCacheContext(ctx)))\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:38 (0x24db4f5)\n\t\tProtocolMiddlewares.func1.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:106 (0x24da62d)\n\t\tstripSlashesMiddleware.func1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:90 (0x20dfded)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/modules/web/route.go:163 (0x2fa9d15)\n\t\t(*Route).ServeHTTP: r.R.ServeHTTP(w, req)\n\t/home/nils/src/forgejo/tests/integration/integration_test.go:603 (0x2fa9cf2)\n\t\tMakeRequest: testWebRoutes.ServeHTTP(recorder, req)\n\t/home/nils/src/forgejo/tests/integration/integration_test.go:235 (0x2fa53fa)\n\t\t(*TestSession).MakeRequest: resp := MakeRequest(t, rw, expectedStatus)\n\t/home/nils/src/forgejo/tests/integration/links_test.go:131 (0x2fca2b1)\n\t\ttestLinksAsUser: session.MakeRequest(t, req, http.StatusOK)\n\t/home/nils/src/forgejo/tests/integration/links_test.go:174 (0x2fca774)\n\t\tTestLinksLogin: testLinksAsUser(\"user2\", t)\n\t/usr/lib/golang/src/testing/testing.go:1934 (0x5737e9)\n\t\ttRunner: fn(t)\n\t/usr/lib/golang/src/runtime/asm_amd64.s:1693 (0x48c360)\n\t\tgoexit: BYTE\t$0x90\t// NOP",
--- FAIL: TestLinksLogin (2.43s)
    test_utils.go:252: PrepareTestEnv:Process "Stats.DB Index Repo[16]" cancelled
    test_utils.go:252: PrepareTestEnv:Process "/usr/bin/git rev-parse [repo_path: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/gitea-repositories/user2/repo16.git]" cancelled
    test_utils.go:252: PrepareTestEnv:Process "CodeIndexer batch" cancelled
    test_utils.go:252: PrepareTestEnv:Process "git(dir:/home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/gitea-repositories/user2/repo15.git): /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs.clean= show-ref -s refs/heads/master" cancelled
    testlogger.go:411: 2026/02/24 12:03:13 ...exer/code/indexer.go:321:populateRepoIndexer() [I] Done (re)populating the repo indexer with existing repositories
    test_utils.go:276: PrepareTestEnv: all processes cancelled within 17.354578ms
    testlogger.go:411: 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/gitea-lfs-meta
    testlogger.go:411: 2026/02/24 12:03:13 ...xer/stats/indexer.go:87:populateRepoIndexer() [I] Done (re)populating the repo stats indexer with existing repositories
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed POST /user/login for test-mock:12345, 303 See Other in 3.0ms @ auth/auth.go:178(auth.SignInPost)
    testlogger.go:411: 2026/02/24 12:03:13 ...odels/user/avatar.go:59:GenerateRandomAvatar() [I] New random avatar created: 2
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/repos for test-mock:12345, 200 OK in 7.8ms @ explore/repo.go:167(explore.Repos)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/repos?q=test for test-mock:12345, 200 OK in 4.2ms @ explore/repo.go:167(explore.Repos)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/users for test-mock:12345, 200 OK in 2.4ms @ explore/user.go:116(explore.Users)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/users?q=test for test-mock:12345, 200 OK in 1.4ms @ explore/user.go:116(explore.Users)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/organizations for test-mock:12345, 200 OK in 1.6ms @ explore/org.go:16(explore.Organizations)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/organizations?q=test for test-mock:12345, 200 OK in 1.2ms @ explore/org.go:16(explore.Organizations)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET / for test-mock:12345, 200 OK in 3.6ms @ web/home.go:34(web.Home)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/forgot_password for test-mock:12345, 200 OK in 1.2ms @ auth/password.go:35(auth.ForgotPasswd)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /api/swagger for test-mock:12345, 200 OK in 0.4ms @ misc/swagger.go:17(misc.Swagger)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues for test-mock:12345, 200 OK in 4.9ms @ user/home.go:357(user.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=your_repositories&repos=[0]&sort=&state=open for test-mock:12345, 200 OK in 4.4ms @ user/home.go:357(user.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=assigned&repos=[0]&sort=&state=open for test-mock:12345, 200 OK in 3.3ms @ user/home.go:357(user.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=your_repositories&repos=[0]&sort=&state=closed for test-mock:12345, 200 OK in 3.3ms @ user/home.go:357(user.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=assigned&repos=[]&sort=&state=closed for test-mock:12345, 200 OK in 2.3ms @ user/home.go:357(user.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=assigned&sort=&state=open for test-mock:12345, 200 OK in 2.9ms @ user/home.go:357(user.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=created_by&repos=[1,2]&sort=&state=closed for test-mock:12345, 200 OK in 2.9ms @ user/home.go:357(user.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=created_by&repos=[1,2]&sort=&state=open for test-mock:12345, 200 OK in 3.0ms @ user/home.go:357(user.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:805:GetIssuesAllCommitStatus() [E] getAllCommitStatus: can't get commit statuses of pull [6]: object does not exist [id: refs/pull/2/head, rel_path: ]
    testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:797:GetIssuesAllCommitStatus() [E] Cannot open git repository  for issue #1[20]. Error: no such file or directory
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls for test-mock:12345, 200 OK in 11.4ms @ user/home.go:344(user.Pulls)
    testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:805:GetIssuesAllCommitStatus() [E] getAllCommitStatus: can't get commit statuses of pull [6]: object does not exist [id: refs/pull/2/head, rel_path: ]
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=your_repositories&repos=[2]&sort=&state=open for test-mock:12345, 200 OK in 18.0ms @ user/home.go:344(user.Pulls)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=assigned&repos=[]&sort=&state=open for test-mock:12345, 200 OK in 3.1ms @ user/home.go:344(user.Pulls)
    testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:805:GetIssuesAllCommitStatus() [E] getAllCommitStatus: can't get commit statuses of pull [6]: object does not exist [id: refs/pull/2/head, rel_path: ]
    testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:797:GetIssuesAllCommitStatus() [E] Cannot open git repository  for issue #1[20]. Error: no such file or directory
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=created_by&repos=[0]&sort=&state=open for test-mock:12345, 200 OK in 10.3ms @ user/home.go:344(user.Pulls)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=your_repositories&repos=[0]&sort=&state=closed for test-mock:12345, 200 OK in 2.9ms @ user/home.go:344(user.Pulls)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=assigned&repos=[0]&sort=&state=closed for test-mock:12345, 200 OK in 3.1ms @ user/home.go:344(user.Pulls)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=created_by&repos=[0]&sort=&state=closed for test-mock:12345, 200 OK in 3.0ms @ user/home.go:344(user.Pulls)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones for test-mock:12345, 200 OK in 3.7ms @ user/home.go:143(user.Milestones)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?sort=mostcomplete&state=closed for test-mock:12345, 200 OK in 2.3ms @ user/home.go:143(user.Milestones)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?type=your_repositories&sort=mostcomplete&state=closed for test-mock:12345, 200 OK in 2.6ms @ user/home.go:143(user.Milestones)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?sort=&repos=[1]&state=closed for test-mock:12345, 200 OK in 2.4ms @ user/home.go:143(user.Milestones)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?sort=&repos=[1]&state=open for test-mock:12345, 200 OK in 2.5ms @ user/home.go:143(user.Milestones)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?repos=[0]&sort=mostissues&state=open for test-mock:12345, 200 OK in 3.8ms @ user/home.go:143(user.Milestones)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:78:func1() [W] router: failed    GET /notifications for test-mock:12345, panic in 1.2ms @ user/notification.go:62(user.Notifications), err=runtime error: invalid memory address or nil pointer dereference
    testlogger.go:411: 2026/02/24 12:03:13 ...rs/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: runtime error: invalid memory address or nil pointer dereference
        	/usr/lib/golang/src/runtime/panic.go:783 (0x483231)
        		gopanic: fn()
        	/home/nils/src/forgejo/modules/web/routing/logger_manager.go:116 (0x20de9a4)
        		(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr)
        	/usr/lib/golang/src/runtime/panic.go:783 (0x483231)
        		gopanic: fn()
        	/usr/lib/golang/src/runtime/panic.go:262 (0x485958)
        		panicmem: panic(memoryError)
        	/usr/lib/golang/src/runtime/signal_unix.go:925 (0x485928)
        		sigpanic: panicmem()
        	/home/nils/src/forgejo/models/activities/notification.go:468 (0x1aa5dea)
        		NotificationList.LoadIssuePullRequests: if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil {
        	/home/nils/src/forgejo/routers/web/user/notification.go:147 (0x2a2dc24)
        		getNotifications: if err = notifications.LoadIssuePullRequests(ctx); err != nil {
        	/home/nils/src/forgejo/routers/web/user/notification.go:63 (0x2a2d4db)
        		Notifications: getNotifications(ctx)
        	/usr/lib/golang/src/reflect/value.go:581 (0x512e65)
        		Value.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), ®Args)
        	/usr/lib/golang/src/reflect/value.go:365 (0x511f58)
        		Value.Call: return v.call("Call", in)
        	/home/nils/src/forgejo/modules/web/handler.go:176 (0x20e8349)
        		toHandlerProvider.func3.1: ret := fn.Call(argsIn)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/routemock.go:34 (0x20e9242)
        		(*Route).wrapMiddlewareAndHandler.RouteMockPoint.func1.1: next.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/chain.go:31 (0x20df285)
        		(*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)
        		(*Mux).routeHTTP: h.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/middleware/get_head.go:37 (0x291722a)
        		GetHead.func1: next.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/services/context/context.go:215 (0x215c24e)
        		Contexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/code.forgejo.org/go-chi/session/session.go:167 (0x20aac2d)
        		Sessioner.func1.1: next.ServeHTTP(w, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/klauspost/compress/gzhttp/compress.go:656 (0x20edbe2)
        		NewWrapper.func1.1: h.ServeHTTP(newNoGzipResponseWriter(w), r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0x20e8651)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:155 (0x20e8640)
        		toHandlerProvider.func2.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)
        		(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)
        		(*Mux).Mount.func1: handler.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)
        		(*Mux).routeHTTP: h.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)
        		(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)
        		(*Mux).Mount.func1: handler.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)
        		(*Mux).routeHTTP: h.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/routing/logger_manager.go:122 (0x20de82e)
        		(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/chi-middleware/proxy/middleware.go:37 (0x24da30f)
        		ProtocolMiddlewares.ForwardedHeaders.func3.1: h.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/routers/common/middleware.go:51 (0x24db997)
        		ProtocolMiddlewares.func2.1: next.ServeHTTP(respWriter, req.WithContext(cache.WithCacheContext(ctx)))
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/routers/common/middleware.go:38 (0x24db4f5)
        		ProtocolMiddlewares.func1.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/routers/common/middleware.go:106 (0x24da62d)
        		stripSlashesMiddleware.func1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:90 (0x20dfded)
        		(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
        	/home/nils/src/forgejo/modules/web/route.go:163 (0x2fa9d15)
        		(*Route).ServeHTTP: r.R.ServeHTTP(w, req)
        	/home/nils/src/forgejo/tests/integration/integration_test.go:603 (0x2fa9cf2)
        		MakeRequest: testWebRoutes.ServeHTTP(recorder, req)
        	/home/nils/src/forgejo/tests/integration/integration_test.go:235 (0x2fa53fa)
        		(*TestSession).MakeRequest: resp := MakeRequest(t, rw, expectedStatus)
        	/home/nils/src/forgejo/tests/integration/links_test.go:131 (0x2fca2b1)
        		testLinksAsUser: session.MakeRequest(t, req, http.StatusOK)
        	/home/nils/src/forgejo/tests/integration/links_test.go:174 (0x2fca774)
        		TestLinksLogin: testLinksAsUser("user2", t)
        	/usr/lib/golang/src/testing/testing.go:1934 (0x5737e9)
        		tRunner: fn(t)
        	/usr/lib/golang/src/runtime/asm_amd64.s:1693 (0x48c360)
        		goexit: BYTE	$0x90	// NOP
    links_test.go:131: 
        	Error Trace:	/home/nils/src/forgejo/tests/integration/integration_test.go:605
        	            				/home/nils/src/forgejo/tests/integration/integration_test.go:235
        	            				/home/nils/src/forgejo/tests/integration/links_test.go:131
        	            				/home/nils/src/forgejo/tests/integration/links_test.go:174
        	Error:      	Not equal: 
        	            	expected: 200
        	            	actual  : 500
        	Test:       	TestLinksLogin
        	Messages:   	Request: GET /notifications
    links_test.go:131: Response length:  1779
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /repo/create for test-mock:12345, 200 OK in 3.4ms @ repo/repo.go:154(repo.Create)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /repo/migrate for test-mock:12345, 200 OK in 1.5ms @ repo/migrate.go:36(repo.Migrate)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /org/create for test-mock:12345, 200 OK in 1.2ms @ org/org.go:28(org.Create)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2 for test-mock:12345, 200 OK in 4.2ms @ user/home.go:769(user.UsernameSubRoute)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2?tab=stars for test-mock:12345, 200 OK in 2.7ms @ user/home.go:769(user.UsernameSubRoute)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2?tab=activity for test-mock:12345, 200 OK in 3.3ms @ user/home.go:769(user.UsernameSubRoute)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings for test-mock:12345, 200 OK in 1.8ms @ setting/profile.go:67(setting.Profile)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/account for test-mock:12345, 200 OK in 1.5ms @ setting/account.go:36(setting.Account)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/security for test-mock:12345, 200 OK in 2.2ms @ security/security.go:27(security.Security)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/security/two_factor/enroll for test-mock:12345, 200 OK in 8.6ms @ security/2fa.go:161(security.EnrollTwoFactor)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/keys for test-mock:12345, 200 OK in 2.2ms @ setting/keys.go:27(setting.Keys)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/organization for test-mock:12345, 200 OK in 1.5ms @ setting/profile.go:201(setting.Organization)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/repos for test-mock:12345, 200 OK in 1.8ms @ setting/profile.go:232(setting.Repos)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /api/v1/users/user2/repos for test-mock:12345, 200 OK in 2.3ms @ user/repo.go:56(user.ListUserRepos)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1 for test-mock:12345, 200 OK in 17.3ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/issues for test-mock:12345, 200 OK in 18.1ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/pulls for test-mock:12345, 200 OK in 25.8ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/commits/branch/master for test-mock:12345, 200 OK in 27.8ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/graph for test-mock:12345, 200 OK in 40.2ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings for test-mock:12345, 200 OK in 11.3ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings/collaboration for test-mock:12345, 200 OK in 13.3ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings/branches for test-mock:12345, 200 OK in 11.2ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings/hooks for test-mock:12345, 200 OK in 11.9ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings/keys for test-mock:12345, 200 OK in 9.3ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/releases for test-mock:12345, 200 OK in 23.2ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/releases/new for test-mock:12345, 200 OK in 11.6ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/wiki/?action=_new for test-mock:12345, 200 OK in 5.5ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/activity for test-mock:12345, 200 OK in 18.4ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8 for test-mock:12345, 200 OK in 21.4ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/issues for test-mock:12345, 200 OK in 11.9ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/pulls for test-mock:12345, 200 OK in 10.7ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/commits/branch/master for test-mock:12345, 200 OK in 14.0ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/graph for test-mock:12345, 200 OK in 25.7ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings for test-mock:12345, 200 OK in 14.3ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings/collaboration for test-mock:12345, 200 OK in 14.8ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings/branches for test-mock:12345, 200 OK in 21.8ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings/hooks for test-mock:12345, 200 OK in 19.1ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings/keys for test-mock:12345, 200 OK in 11.7ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/releases for test-mock:12345, 200 OK in 9.8ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/releases/new for test-mock:12345, 200 OK in 10.2ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/wiki/?action=_new for test-mock:12345, 200 OK in 5.8ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/activity for test-mock:12345, 200 OK in 16.7ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test for test-mock:12345, 200 OK in 24.8ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/issues for test-mock:12345, 200 OK in 13.5ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/pulls for test-mock:12345, 200 OK in 14.0ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/commits/branch/master for test-mock:12345, 200 OK in 18.3ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/graph for test-mock:12345, 200 OK in 19.9ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings for test-mock:12345, 200 OK in 14.0ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings/collaboration for test-mock:12345, 200 OK in 12.8ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings/branches for test-mock:12345, 200 OK in 11.9ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings/hooks for test-mock:12345, 200 OK in 15.1ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings/keys for test-mock:12345, 200 OK in 14.5ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/releases for test-mock:12345, 200 OK in 11.9ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/releases/new for test-mock:12345, 200 OK in 10.2ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/wiki/?action=_new for test-mock:12345, 200 OK in 5.1ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/activity for test-mock:12345, 200 OK in 14.7ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test for test-mock:12345, 200 OK in 30.7ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/issues for test-mock:12345, 200 OK in 13.4ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/pulls for test-mock:12345, 200 OK in 11.7ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/commits/branch/master for test-mock:12345, 200 OK in 12.7ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/graph for test-mock:12345, 200 OK in 13.8ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings for test-mock:12345, 200 OK in 9.7ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings/collaboration for test-mock:12345, 200 OK in 9.3ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings/branches for test-mock:12345, 200 OK in 10.1ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings/hooks for test-mock:12345, 200 OK in 11.9ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings/keys for test-mock:12345, 200 OK in 12.7ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/releases for test-mock:12345, 200 OK in 12.6ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/releases/new for test-mock:12345, 200 OK in 13.6ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/wiki/?action=_new for test-mock:12345, 200 OK in 7.0ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/activity for test-mock:12345, 200 OK in 20.4ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob for test-mock:12345, 200 OK in 41.6ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/issues for test-mock:12345, 200 OK in 20.7ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/pulls for test-mock:12345, 200 OK in 13.9ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/commits/branch/master for test-mock:12345, 200 OK in 14.5ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/graph for test-mock:12345, 200 OK in 19.1ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings for test-mock:12345, 200 OK in 15.4ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings/collaboration for test-mock:12345, 200 OK in 15.9ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings/branches for test-mock:12345, 200 OK in 14.3ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings/hooks for test-mock:12345, 200 OK in 15.6ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings/keys for test-mock:12345, 200 OK in 13.8ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/releases for test-mock:12345, 200 OK in 13.4ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/releases/new for test-mock:12345, 200 OK in 11.7ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/wiki/?action=_new for test-mock:12345, 200 OK in 6.5ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/activity for test-mock:12345, 200 OK in 19.4ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release for test-mock:12345, 200 OK in 30.5ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/issues for test-mock:12345, 200 OK in 13.9ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/pulls for test-mock:12345, 200 OK in 12.2ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/commits/branch/master for test-mock:12345, 200 OK in 14.7ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/graph for test-mock:12345, 200 OK in 19.7ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings for test-mock:12345, 200 OK in 14.0ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings/collaboration for test-mock:12345, 200 OK in 13.0ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings/branches for test-mock:12345, 200 OK in 13.7ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings/hooks for test-mock:12345, 200 OK in 12.1ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings/keys for test-mock:12345, 200 OK in 10.2ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/releases for test-mock:12345, 200 OK in 37.0ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/releases/new for test-mock:12345, 200 OK in 9.7ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/wiki/?action=_new for test-mock:12345, 200 OK in 5.2ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/activity for test-mock:12345, 200 OK in 15.1ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr for test-mock:12345, 200 OK in 22.5ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/issues for test-mock:12345, 200 OK in 12.3ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/pulls for test-mock:12345, 200 OK in 15.3ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/commits/branch/master for test-mock:12345, 200 OK in 17.1ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/graph for test-mock:12345, 200 OK in 32.0ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings for test-mock:12345, 200 OK in 23.3ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings/collaboration for test-mock:12345, 200 OK in 12.8ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings/branches for test-mock:12345, 200 OK in 14.0ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings/hooks for test-mock:12345, 200 OK in 11.4ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings/keys for test-mock:12345, 200 OK in 12.8ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/releases for test-mock:12345, 200 OK in 14.4ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/releases/new for test-mock:12345, 200 OK in 12.3ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/wiki/?action=_new for test-mock:12345, 200 OK in 7.1ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/activity for test-mock:12345, 200 OK in 16.8ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows for test-mock:12345, 200 OK in 14.6ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/issues for test-mock:12345, 200 OK in 11.7ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/pulls for test-mock:12345, 200 OK in 13.3ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/commits/branch/master for test-mock:12345, 200 OK in 14.9ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/graph for test-mock:12345, 200 OK in 18.1ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings for test-mock:12345, 200 OK in 11.3ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings/collaboration for test-mock:12345, 200 OK in 10.5ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings/branches for test-mock:12345, 200 OK in 9.6ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings/hooks for test-mock:12345, 200 OK in 9.1ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings/keys for test-mock:12345, 200 OK in 9.9ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/releases for test-mock:12345, 200 OK in 9.9ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/releases/new for test-mock:12345, 200 OK in 9.8ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/wiki/?action=_new for test-mock:12345, 200 OK in 5.4ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/activity for test-mock:12345, 200 OK in 16.7ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256 for test-mock:12345, 200 OK in 14.6ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/issues for test-mock:12345, 200 OK in 12.9ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/pulls for test-mock:12345, 200 OK in 14.5ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/commits/branch/master for test-mock:12345, 200 OK in 14.9ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/graph for test-mock:12345, 200 OK in 22.2ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings for test-mock:12345, 200 OK in 13.7ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings/collaboration for test-mock:12345, 200 OK in 10.0ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings/branches for test-mock:12345, 200 OK in 10.3ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings/hooks for test-mock:12345, 200 OK in 10.4ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings/keys for test-mock:12345, 200 OK in 10.5ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/releases for test-mock:12345, 200 OK in 9.9ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/releases/new for test-mock:12345, 200 OK in 10.7ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/wiki/?action=_new for test-mock:12345, 200 OK in 5.7ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/activity for test-mock:12345, 200 OK in 16.9ms @ repo/activity.go:21(repo.Activity)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59 for test-mock:12345, 200 OK in 35.1ms @ repo/view.go:809(repo.Home)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/issues for test-mock:12345, 200 OK in 14.6ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/pulls for test-mock:12345, 200 OK in 19.7ms @ repo/issue.go:515(repo.Issues)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/commits/branch/master for test-mock:12345, 200 OK in 15.8ms @ repo/commit.go:45(repo.RefCommits)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/graph for test-mock:12345, 200 OK in 18.2ms @ repo/commit.go:112(repo.Graph)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings for test-mock:12345, 200 OK in 10.9ms @ setting/setting.go:302(setting.Settings)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings/collaboration for test-mock:12345, 200 OK in 9.9ms @ setting/collaboration.go:27(setting.Collaboration)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings/branches for test-mock:12345, 200 OK in 9.4ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings/hooks for test-mock:12345, 200 OK in 9.8ms @ setting/webhook.go:43(setting.WebhookList)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings/keys for test-mock:12345, 200 OK in 10.2ms @ setting/deploy_key.go:20(setting.DeployKeys)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/releases for test-mock:12345, 200 OK in 21.8ms @ repo/release.go:172(repo.Releases)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/releases/new for test-mock:12345, 200 OK in 12.6ms @ repo/release.go:416(repo.NewRelease)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/wiki/?action=_new for test-mock:12345, 200 OK in 6.0ms @ repo/wiki.go:478(repo.Wiki)
    testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/activity for test-mock:12345, 200 OK in 20.0ms @ repo/activity.go:21(repo.Activity)
FAIL
make: *** [Makefile:648: test-sqlite#TestLinksLogin] Error 1
nils@gibbon:~/src/forgejo (forgejo--private-issues)>
TestNotification

nils@gibbon:~/src/forgejo (forgejo--private-issues)> make TAGS="bindata timetzdata sqlite sqlite_unlock_notify" GOTESTFLAGS="-v" -k test-sqlite\#TestNotification
/usr/lib/golang/bin/go test -v -c forgejo.org/tests/integration -o integrations.sqlite.test -tags 'sqlite sqlite_unlock_notify'
sed -e 's|{{REPO_TEST_DIR}}||g' \
	-e 's|{{TEST_LOGGER}}|test,file|g' \
	-e 's|{{TEST_TYPE}}|integration|g' \
		tests/sqlite.ini.tmpl > tests/sqlite.ini
GITEA_ROOT="/home/nils/src/forgejo" GITEA_CONF=tests/sqlite.ini  ./integrations.sqlite.test  -test.run TestNotification
2026/02/24 12:03:51 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local
2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments
2026/02/24 12:03:51 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local
2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars
2026/02/24 12:03:51 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local
2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars
2026/02/24 12:03:51 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local
2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs
2026/02/24 12:03:51 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local
2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive
2026/02/24 12:03:51 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local
2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages
2026/02/24 12:03:51 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local
2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log
2026/02/24 12:03:51 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local
2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts
2026/02/24 12:03:51 modules/git/git.go:129:checkInit() [W] git module has been initialized already, duplicate init may work but it's better to fix it
2026/02/24 12:03:51 routers/init.go:111:InitWebInstalled() [I] Git version: 2.53.0, Wire Protocol Version 2 Enabled (home: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/home)
??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local
??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments
??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local
??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars
??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local
??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars
??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local
??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs
??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local
??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive
??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local
??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages
??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local
??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log
??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local
??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts
??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:131:InitWebInstalled() [I] SQLite3 support is enabled
??? [TestLogger] 2026/02/24 12:03:52 routers/common/db.go:23:InitDBEngine() [I] Beginning ORM engine initialization.
??? [TestLogger] 2026/02/24 12:03:52 routers/common/db.go:30:InitDBEngine() [I] ORM engine initialization attempt #1/10...
??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:137:InitWebInstalled() [I] ORM engine initialization successful!
??? [TestLogger] 2026/02/24 12:03:52 ...er/issues/indexer.go:78:func1() [I] PID 4024652: Initializing Issue Indexer: bleve
??? [TestLogger] 2026/02/24 12:03:52 ...exer/code/indexer.go:168:func3() [I] PID: 4024652 Initializing Repository Indexer at: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/indexers/repos.bleve
??? [TestLogger] 2026/02/24 12:03:52 ...xer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories
??? [TestLogger] 2026/02/24 12:03:52 ...er/issues/indexer.go:155:func2() [I] Issue Indexer Initialization took 3.653795ms
??? [TestLogger] 2026/02/24 12:03:52 ...exer/code/indexer.go:269:populateRepoIndexer() [I] Populating the repo indexer with existing repositories
??? [TestLogger] 2026/02/24 12:03:52 ...exer/code/indexer.go:243:func4() [I] Repository Indexer Initialization took 3.960382ms
??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:84:syncAppConfForGit() [I] AppPath changed from '' to '/home/nils/src/forgejo/gitea'
??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:89:syncAppConfForGit() [I] CustomConf changed from '' to '/home/nils/src/forgejo/tests/sqlite.ini'
??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:95:syncAppConfForGit() [I] re-sync repository hooks ...
??? [TestLogger] 2026/02/24 12:03:52 modules/ssh/ssh.go:332:Listen() [I] Adding SSH host key: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/ssh/gitea.rsa
??? [TestLogger] 2026/02/24 12:03:52 modules/ssh/init.go:30:Init() [I] SSH server started on localhost:2203. Cipher list ([chacha20-poly1305@openssh.com aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com]), key exchange algorithms ([mlkem768x25519-sha256 curve25519-sha256 ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha256 diffie-hellman-group14-sha1]), MACs ([hmac-sha2-256-etm@openssh.com hmac-sha2-256 hmac-sha1])
??? [TestLogger] 2026/02/24 12:03:52 ...s/graceful/server.go:50:NewServer() [I] Starting new SSH server: tcp:localhost:2203 on PID: 4024652
??? [TestLogger] 2026/02/24 12:03:52 ...er/cleanup_sha256.go:27:CleanupSHA256() [I] Start to cleanup dangling images with a sha256:* version
??? [TestLogger] 2026/02/24 12:03:52 ...er/cleanup_sha256.go:106:cleanupSHA256() [I] Nothing to cleanup
??? [TestLogger] 2026/02/24 12:03:52 ...er/cleanup_sha256.go:29:CleanupSHA256() [I] Finished to cleanup dangling images with a sha256:* version
??? [TestLogger] 2026/02/24 12:03:52 ...exer/code/indexer.go:321:populateRepoIndexer() [I] Done (re)populating the repo indexer with existing repositories
=== TestNotification (tests/test_utils.go:344)
testlogger.go:recordError() FATAL ERROR: log.Error has been called: // TestNotification
	"2026/02/24 12:03:52 ...rs/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: runtime error: invalid memory address or nil pointer dereference\n\t/usr/lib/golang/src/runtime/panic.go:783 (0x483231)\n\t\tgopanic: fn()\n\t/home/nils/src/forgejo/modules/web/routing/logger_manager.go:116 (0x20de9a4)\n\t\t(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr)\n\t/usr/lib/golang/src/runtime/panic.go:783 (0x483231)\n\t\tgopanic: fn()\n\t/usr/lib/golang/src/runtime/panic.go:262 (0x485958)\n\t\tpanicmem: panic(memoryError)\n\t/usr/lib/golang/src/runtime/signal_unix.go:925 (0x485928)\n\t\tsigpanic: panicmem()\n\t/home/nils/src/forgejo/models/activities/notification.go:468 (0x1aa5dea)\n\t\tNotificationList.LoadIssuePullRequests: if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil {\n\t/home/nils/src/forgejo/routers/web/user/notification.go:147 (0x2a2dc24)\n\t\tgetNotifications: if err = notifications.LoadIssuePullRequests(ctx); err != nil {\n\t/home/nils/src/forgejo/routers/web/user/notification.go:63 (0x2a2d4db)\n\t\tNotifications: getNotifications(ctx)\n\t/usr/lib/golang/src/reflect/value.go:581 (0x512e65)\n\t\tValue.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), ®Args)\n\t/usr/lib/golang/src/reflect/value.go:365 (0x511f58)\n\t\tValue.Call: return v.call(\"Call\", in)\n\t/home/nils/src/forgejo/modules/web/handler.go:176 (0x20e8349)\n\t\ttoHandlerProvider.func3.1: ret := fn.Call(argsIn)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/routemock.go:34 (0x20e9242)\n\t\t(*Route).wrapMiddlewareAndHandler.RouteMockPoint.func1.1: next.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/chain.go:31 (0x20df285)\n\t\t(*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/middleware/get_head.go:37 (0x291722a)\n\t\tGetHead.func1: next.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/services/context/context.go:215 (0x215c24e)\n\t\tContexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/code.forgejo.org/go-chi/session/session.go:167 (0x20aac2d)\n\t\tSessioner.func1.1: next.ServeHTTP(w, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/klauspost/compress/gzhttp/compress.go:656 (0x20edbe2)\n\t\tNewWrapper.func1.1: h.ServeHTTP(newNoGzipResponseWriter(w), r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0x20e8651)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:155 (0x20e8640)\n\t\ttoHandlerProvider.func2.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)\n\t\t(*Mux).Mount.func1: handler.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)\n\t\t(*Mux).Mount.func1: handler.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/routing/logger_manager.go:122 (0x20de82e)\n\t\t(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/chi-middleware/proxy/middleware.go:37 (0x24da30f)\n\t\tProtocolMiddlewares.ForwardedHeaders.func3.1: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:51 (0x24db997)\n\t\tProtocolMiddlewares.func2.1: next.ServeHTTP(respWriter, req.WithContext(cache.WithCacheContext(ctx)))\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:38 (0x24db4f5)\n\t\tProtocolMiddlewares.func1.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:106 (0x24da62d)\n\t\tstripSlashesMiddleware.func1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:90 (0x20dfded)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/modules/web/route.go:163 (0x2fa9d15)\n\t\t(*Route).ServeHTTP: r.R.ServeHTTP(w, req)\n\t/home/nils/src/forgejo/tests/integration/integration_test.go:603 (0x2fa9cf2)\n\t\tMakeRequest: testWebRoutes.ServeHTTP(recorder, req)\n\t/home/nils/src/forgejo/tests/integration/integration_test.go:235 (0x2fa53fa)\n\t\t(*TestSession).MakeRequest: resp := MakeRequest(t, rw, expectedStatus)\n\t/home/nils/src/forgejo/tests/integration/notification_test.go:22 (0x2fd2644)\n\t\tTestNotification: resp := session.MakeRequest(t, req, http.StatusOK)\n\t/usr/lib/golang/src/testing/testing.go:1934 (0x5737e9)\n\t\ttRunner: fn(t)\n\t/usr/lib/golang/src/runtime/asm_amd64.s:1693 (0x48c360)\n\t\tgoexit: BYTE\t$0x90\t// NOP",
--- FAIL: TestNotification (0.16s)
    test_utils.go:252: PrepareTestEnv:Process "Stats.DB Index Repo[2]" cancelled
    test_utils.go:252: PrepareTestEnv:Process "/usr/bin/git cat-file --batch-check [repo_path: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/gitea-repositories/user2/repo2.git] (modules/git/repo_base.go:86)" cancelled
    test_utils.go:276: PrepareTestEnv: all processes cancelled within 158.428µs
    testlogger.go:411: 2026/02/24 12:03:52 ...xer/stats/indexer.go:87:populateRepoIndexer() [I] Done (re)populating the repo stats indexer with existing repositories
    testlogger.go:411: 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/gitea-lfs-meta
    testlogger.go:411: 2026/02/24 12:03:52 ...eb/routing/logger.go:102:func1() [I] router: completed POST /user/login for test-mock:12345, 303 See Other in 3.1ms @ auth/auth.go:178(auth.SignInPost)
    testlogger.go:411: 2026/02/24 12:03:52 ...eb/routing/logger.go:78:func1() [W] router: failed    GET /notifications for test-mock:12345, panic in 1.2ms @ user/notification.go:62(user.Notifications), err=runtime error: invalid memory address or nil pointer dereference
    testlogger.go:411: 2026/02/24 12:03:52 ...rs/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: runtime error: invalid memory address or nil pointer dereference
        	/usr/lib/golang/src/runtime/panic.go:783 (0x483231)
        		gopanic: fn()
        	/home/nils/src/forgejo/modules/web/routing/logger_manager.go:116 (0x20de9a4)
        		(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr)
        	/usr/lib/golang/src/runtime/panic.go:783 (0x483231)
        		gopanic: fn()
        	/usr/lib/golang/src/runtime/panic.go:262 (0x485958)
        		panicmem: panic(memoryError)
        	/usr/lib/golang/src/runtime/signal_unix.go:925 (0x485928)
        		sigpanic: panicmem()
        	/home/nils/src/forgejo/models/activities/notification.go:468 (0x1aa5dea)
        		NotificationList.LoadIssuePullRequests: if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil {
        	/home/nils/src/forgejo/routers/web/user/notification.go:147 (0x2a2dc24)
        		getNotifications: if err = notifications.LoadIssuePullRequests(ctx); err != nil {
        	/home/nils/src/forgejo/routers/web/user/notification.go:63 (0x2a2d4db)
        		Notifications: getNotifications(ctx)
        	/usr/lib/golang/src/reflect/value.go:581 (0x512e65)
        		Value.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), ®Args)
        	/usr/lib/golang/src/reflect/value.go:365 (0x511f58)
        		Value.Call: return v.call("Call", in)
        	/home/nils/src/forgejo/modules/web/handler.go:176 (0x20e8349)
        		toHandlerProvider.func3.1: ret := fn.Call(argsIn)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/routemock.go:34 (0x20e9242)
        		(*Route).wrapMiddlewareAndHandler.RouteMockPoint.func1.1: next.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/chain.go:31 (0x20df285)
        		(*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)
        		(*Mux).routeHTTP: h.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/middleware/get_head.go:37 (0x291722a)
        		GetHead.func1: next.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)
        		toHandlerProvider.func3.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/services/context/context.go:215 (0x215c24e)
        		Contexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/code.forgejo.org/go-chi/session/session.go:167 (0x20aac2d)
        		Sessioner.func1.1: next.ServeHTTP(w, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/klauspost/compress/gzhttp/compress.go:656 (0x20edbe2)
        		NewWrapper.func1.1: h.ServeHTTP(newNoGzipResponseWriter(w), r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0x20e8651)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:155 (0x20e8640)
        		toHandlerProvider.func2.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)
        		(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)
        		(*Mux).Mount.func1: handler.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)
        		(*Mux).routeHTTP: h.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)
        		(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)
        		(*Mux).Mount.func1: handler.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)
        		(*Mux).routeHTTP: h.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/routing/logger_manager.go:122 (0x20de82e)
        		(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/chi-middleware/proxy/middleware.go:37 (0x24da30f)
        		ProtocolMiddlewares.ForwardedHeaders.func3.1: h.ServeHTTP(w, r)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/routers/common/middleware.go:51 (0x24db997)
        		ProtocolMiddlewares.func2.1: next.ServeHTTP(respWriter, req.WithContext(cache.WithCacheContext(ctx)))
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/routers/common/middleware.go:38 (0x24db4f5)
        		ProtocolMiddlewares.func1.1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/routers/common/middleware.go:106 (0x24da62d)
        		stripSlashesMiddleware.func1: next.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)
        		toHandlerProvider.func1.1: h.ServeHTTP(resp, req)
        	/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)
        		HandlerFunc.ServeHTTP: f(w, r)
        	/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:90 (0x20dfded)
        		(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)
        	/home/nils/src/forgejo/modules/web/route.go:163 (0x2fa9d15)
        		(*Route).ServeHTTP: r.R.ServeHTTP(w, req)
        	/home/nils/src/forgejo/tests/integration/integration_test.go:603 (0x2fa9cf2)
        		MakeRequest: testWebRoutes.ServeHTTP(recorder, req)
        	/home/nils/src/forgejo/tests/integration/integration_test.go:235 (0x2fa53fa)
        		(*TestSession).MakeRequest: resp := MakeRequest(t, rw, expectedStatus)
        	/home/nils/src/forgejo/tests/integration/notification_test.go:22 (0x2fd2644)
        		TestNotification: resp := session.MakeRequest(t, req, http.StatusOK)
        	/usr/lib/golang/src/testing/testing.go:1934 (0x5737e9)
        		tRunner: fn(t)
        	/usr/lib/golang/src/runtime/asm_amd64.s:1693 (0x48c360)
        		goexit: BYTE	$0x90	// NOP
    notification_test.go:22: 
        	Error Trace:	/home/nils/src/forgejo/tests/integration/integration_test.go:605
        	            				/home/nils/src/forgejo/tests/integration/integration_test.go:235
        	            				/home/nils/src/forgejo/tests/integration/notification_test.go:22
        	Error:      	Not equal: 
        	            	expected: 200
        	            	actual  : 500
        	Test:       	TestNotification
        	Messages:   	Request: GET /notifications
    notification_test.go:22: Response length:  1779
    html_helper.go:122: 
        	Error Trace:	/home/nils/src/forgejo/tests/integration/html_helper.go:122
        	            				/home/nils/src/forgejo/tests/integration/html_helper.go:130
        	            				/home/nils/src/forgejo/tests/integration/notification_test.go:26
        	Error:      	Not equal: 
        	            	expected: 1
        	            	actual  : 0
        	Test:       	TestNotification
    html_helper.go:122: 
        	Error Trace:	/home/nils/src/forgejo/tests/integration/html_helper.go:122
        	            				/home/nils/src/forgejo/tests/integration/html_helper.go:130
        	            				/home/nils/src/forgejo/tests/integration/notification_test.go:27
        	Error:      	Not equal: 
        	            	expected: 1
        	            	actual  : 0
        	Test:       	TestNotification
    html_helper.go:122: 
        	Error Trace:	/home/nils/src/forgejo/tests/integration/html_helper.go:122
        	            				/home/nils/src/forgejo/tests/integration/html_helper.go:130
        	            				/home/nils/src/forgejo/tests/integration/notification_test.go:28
        	Error:      	Not equal: 
        	            	expected: 1
        	            	actual  : 0
        	Test:       	TestNotification
FAIL
make: *** [Makefile:648: test-sqlite#TestNotification] Error 1
nils@gibbon:~/src/forgejo (forgejo--private-issues)>

Acceptance Criteria

  • TestAdminModerationViewReports runs successfully
  • TestLinksLogin runs successfully
  • TestNotification runs successfully
  • The migration script runs successfully when running the integration tests (see at the top) with a DB initialized before the private_issue table was added.
Three integration tests fail with the basic private issue changes applied: ``` make TAGS="bindata timetzdata sqlite sqlite_unlock_notify" GOTESTFLAGS="-v" test-sqlite\#{TestAdminModerationViewReports,TestLinksLogin,TestNotification} ``` Investigate why and fix. <details> <summary>TestAdminModerationViewReports</summary> <pre><code>nils@gibbon:~/src/forgejo (forgejo--private-issues)> make TAGS="bindata timetzdata sqlite sqlite_unlock_notify" GOTESTFLAGS="-v" -k test-sqlite\#TestAdminModerationViewReports /usr/lib/golang/bin/go test -v -c forgejo.org/tests/integration -o integrations.sqlite.test -tags 'sqlite sqlite_unlock_notify' sed -e 's|{{REPO_TEST_DIR}}||g' \ -e 's|{{TEST_LOGGER}}|test,file|g' \ -e 's|{{TEST_TYPE}}|integration|g' \ tests/sqlite.ini.tmpl > tests/sqlite.ini GITEA_ROOT="/home/nils/src/forgejo" GITEA_CONF=tests/sqlite.ini ./integrations.sqlite.test -test.run TestAdminModerationViewReports 2026/02/24 11:59:47 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments 2026/02/24 11:59:47 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars 2026/02/24 11:59:47 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars 2026/02/24 11:59:47 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs 2026/02/24 11:59:47 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive 2026/02/24 11:59:47 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages 2026/02/24 11:59:47 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log 2026/02/24 11:59:47 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts 2026/02/24 11:59:47 modules/git/git.go:129:checkInit() [W] git module has been initialized already, duplicate init may work but it's better to fix it 2026/02/24 11:59:47 routers/init.go:111:InitWebInstalled() [I] Git version: 2.53.0, Wire Protocol Version 2 Enabled (home: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/home) ??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local ??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments ??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local ??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars ??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local ??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars ??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local ??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs ??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local ??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive ??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local ??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages ??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local ??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log ??? [TestLogger] 2026/02/24 11:59:47 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local ??? [TestLogger] 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts ??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:131:InitWebInstalled() [I] SQLite3 support is enabled ??? [TestLogger] 2026/02/24 11:59:47 routers/common/db.go:23:InitDBEngine() [I] Beginning ORM engine initialization. ??? [TestLogger] 2026/02/24 11:59:47 routers/common/db.go:30:InitDBEngine() [I] ORM engine initialization attempt #1/10... ??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:137:InitWebInstalled() [I] ORM engine initialization successful! ??? [TestLogger] 2026/02/24 11:59:47 ...er/issues/indexer.go:78:func1() [I] PID 4013593: Initializing Issue Indexer: bleve ??? [TestLogger] 2026/02/24 11:59:47 ...exer/code/indexer.go:168:func3() [I] PID: 4013593 Initializing Repository Indexer at: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/indexers/repos.bleve ??? [TestLogger] 2026/02/24 11:59:47 ...xer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories ??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:84:syncAppConfForGit() [I] AppPath changed from '' to '/home/nils/src/forgejo/gitea' ??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:89:syncAppConfForGit() [I] CustomConf changed from '' to '/home/nils/src/forgejo/tests/sqlite.ini' ??? [TestLogger] 2026/02/24 11:59:47 routers/init.go:95:syncAppConfForGit() [I] re-sync repository hooks ... ??? [TestLogger] 2026/02/24 11:59:47 ...er/issues/indexer.go:155:func2() [I] Issue Indexer Initialization took 5.197825ms ??? [TestLogger] 2026/02/24 11:59:47 ...exer/code/indexer.go:243:func4() [I] Repository Indexer Initialization took 5.11348ms ??? [TestLogger] 2026/02/24 11:59:47 ...exer/code/indexer.go:269:populateRepoIndexer() [I] Populating the repo indexer with existing repositories ??? [TestLogger] 2026/02/24 11:59:47 modules/ssh/ssh.go:332:Listen() [I] Adding SSH host key: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/ssh/gitea.rsa ??? [TestLogger] 2026/02/24 11:59:47 modules/ssh/init.go:30:Init() [I] SSH server started on localhost:2203. Cipher list ([chacha20-poly1305@openssh.com aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com]), key exchange algorithms ([mlkem768x25519-sha256 curve25519-sha256 ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha256 diffie-hellman-group14-sha1]), MACs ([hmac-sha2-256-etm@openssh.com hmac-sha2-256 hmac-sha1]) ??? [TestLogger] 2026/02/24 11:59:47 ...s/graceful/server.go:50:NewServer() [I] Starting new SSH server: tcp:localhost:2203 on PID: 4013593 ??? [TestLogger] 2026/02/24 11:59:47 ...er/cleanup_sha256.go:27:CleanupSHA256() [I] Start to cleanup dangling images with a sha256:* version ??? [TestLogger] 2026/02/24 11:59:47 ...er/cleanup_sha256.go:106:cleanupSHA256() [I] Nothing to cleanup ??? [TestLogger] 2026/02/24 11:59:47 ...er/cleanup_sha256.go:29:CleanupSHA256() [I] Finished to cleanup dangling images with a sha256:* version === TestAdminModerationViewReports (tests/test_utils.go:344) === TestAdminModerationViewReports/Moderation_enabled/Anonymous_user (tests/integration/admin_moderation_test.go:66) === TestAdminModerationViewReports/Moderation_enabled/Normal_user (tests/integration/admin_moderation_test.go:75) === TestAdminModerationViewReports/Moderation_enabled/Admin_user (tests/integration/admin_moderation_test.go:85) === TestAdminModerationViewReports/Moderation_enabled/Admin_user/reports_details_page (tests/integration/admin_moderation_test.go:118) === TestAdminModerationViewReports/Moderation_disabled/Anonymous_user (tests/integration/admin_moderation_test.go:241) === TestAdminModerationViewReports/Moderation_disabled/Normal_user (tests/integration/admin_moderation_test.go:250) === TestAdminModerationViewReports/Moderation_disabled/Admin_user (tests/integration/admin_moderation_test.go:260) --- FAIL: TestAdminModerationViewReports (0.85s) test_utils.go:252: PrepareTestEnv:Process "CodeIndexer batch" cancelled test_utils.go:252: PrepareTestEnv:Process "Stats.DB Index Repo[39]" cancelled test_utils.go:252: PrepareTestEnv:Process "git(dir:/home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/gitea-repositories/user12/repo10.git): /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs.clean= show-ref -s refs/heads/master" cancelled testlogger.go:411: 2026/02/24 11:59:47 ...exer/code/indexer.go:321:populateRepoIndexer() [I] Done (re)populating the repo indexer with existing repositories test_utils.go:276: PrepareTestEnv: all processes cancelled within 11.261976ms testlogger.go:411: 2026/02/24 11:59:47 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/gitea-lfs-meta --- FAIL: TestAdminModerationViewReports/Moderation_enabled (0.41s) --- FAIL: TestAdminModerationViewReports/Moderation_enabled/Admin_user (0.19s) testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed POST /user/login for test-mock:12345, 303 See Other in 8.1ms @ auth/auth.go:178(auth.SignInPost) testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports for test-mock:12345, 200 OK in 8.4ms @ admin/reports.go:33(admin.AbuseReports) --- FAIL: TestAdminModerationViewReports/Moderation_enabled/Admin_user/reports_details_page (0.09s) testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/1/id/1002 for test-mock:12345, 200 OK in 1.7ms @ admin/reports.go:62(admin.AbuseReportDetails) testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/4/id/1003 for test-mock:12345, 200 OK in 1.4ms @ admin/reports.go:62(admin.AbuseReportDetails) testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/4/id/9991 for test-mock:12345, 200 OK in 1.5ms @ admin/reports.go:62(admin.AbuseReportDetails) admin_moderation_test.go:166: Error Trace: /home/nils/src/forgejo/tests/integration/admin_moderation_test.go:166 Error: Not equal: expected: 6 actual : 7 Test: TestAdminModerationViewReports/Moderation_enabled/Admin_user/reports_details_page testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/4/id/9992 for test-mock:12345, 200 OK in 1.4ms @ admin/reports.go:62(admin.AbuseReportDetails) admin_moderation_test.go:195: Error Trace: /home/nils/src/forgejo/tests/integration/admin_moderation_test.go:195 Error: Not equal: expected: 6 actual : 7 Test: TestAdminModerationViewReports/Moderation_enabled/Admin_user/reports_details_page testlogger.go:411: 2026/02/24 11:59:48 ...eb/routing/logger.go:102:func1() [I] router: completed GET /admin/moderation/reports/type/3/id/9991 for test-mock:12345, 200 OK in 1.5ms @ admin/reports.go:62(admin.AbuseReportDetails) FAIL make: *** [Makefile:648: test-sqlite#TestAdminModerationViewReports] Error 1 nils@gibbon:~/src/forgejo (forgejo--private-issues)> </code></pre> </details> <details> <summary>TestLinksLogin</summary> <pre><code> nils@gibbon:~/src/forgejo (forgejo--private-issues)> make TAGS="bindata timetzdata sqlite sqlite_unlock_notify" GOTESTFLAGS="-v" -k test-sqlite\#TestLinksLogin /usr/lib/golang/bin/go test -v -c forgejo.org/tests/integration -o integrations.sqlite.test -tags 'sqlite sqlite_unlock_notify' sed -e 's|{{REPO_TEST_DIR}}||g' \ -e 's|{{TEST_LOGGER}}|test,file|g' \ -e 's|{{TEST_TYPE}}|integration|g' \ tests/sqlite.ini.tmpl > tests/sqlite.ini GITEA_ROOT="/home/nils/src/forgejo" GITEA_CONF=tests/sqlite.ini ./integrations.sqlite.test -test.run TestLinksLogin 2026/02/24 12:03:13 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments 2026/02/24 12:03:13 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars 2026/02/24 12:03:13 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars 2026/02/24 12:03:13 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs 2026/02/24 12:03:13 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive 2026/02/24 12:03:13 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages 2026/02/24 12:03:13 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log 2026/02/24 12:03:13 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts 2026/02/24 12:03:13 modules/git/git.go:129:checkInit() [W] git module has been initialized already, duplicate init may work but it's better to fix it 2026/02/24 12:03:13 routers/init.go:111:InitWebInstalled() [I] Git version: 2.53.0, Wire Protocol Version 2 Enabled (home: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/home) ??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local ??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments ??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local ??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars ??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local ??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars ??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local ??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs ??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local ??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive ??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local ??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages ??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local ??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log ??? [TestLogger] 2026/02/24 12:03:13 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local ??? [TestLogger] 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts ??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:131:InitWebInstalled() [I] SQLite3 support is enabled ??? [TestLogger] 2026/02/24 12:03:13 routers/common/db.go:23:InitDBEngine() [I] Beginning ORM engine initialization. ??? [TestLogger] 2026/02/24 12:03:13 routers/common/db.go:30:InitDBEngine() [I] ORM engine initialization attempt #1/10... ??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:137:InitWebInstalled() [I] ORM engine initialization successful! ??? [TestLogger] 2026/02/24 12:03:13 ...er/issues/indexer.go:78:func1() [I] PID 4021207: Initializing Issue Indexer: bleve ??? [TestLogger] 2026/02/24 12:03:13 ...xer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories ??? [TestLogger] 2026/02/24 12:03:13 ...exer/code/indexer.go:168:func3() [I] PID: 4021207 Initializing Repository Indexer at: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/indexers/repos.bleve ??? [TestLogger] 2026/02/24 12:03:13 ...er/issues/indexer.go:155:func2() [I] Issue Indexer Initialization took 3.951985ms ??? [TestLogger] 2026/02/24 12:03:13 ...exer/code/indexer.go:243:func4() [I] Repository Indexer Initialization took 4.189166ms ??? [TestLogger] 2026/02/24 12:03:13 ...exer/code/indexer.go:269:populateRepoIndexer() [I] Populating the repo indexer with existing repositories ??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:84:syncAppConfForGit() [I] AppPath changed from '' to '/home/nils/src/forgejo/gitea' ??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:89:syncAppConfForGit() [I] CustomConf changed from '' to '/home/nils/src/forgejo/tests/sqlite.ini' ??? [TestLogger] 2026/02/24 12:03:13 routers/init.go:95:syncAppConfForGit() [I] re-sync repository hooks ... ??? [TestLogger] 2026/02/24 12:03:13 modules/ssh/ssh.go:332:Listen() [I] Adding SSH host key: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/ssh/gitea.rsa ??? [TestLogger] 2026/02/24 12:03:13 modules/ssh/init.go:30:Init() [I] SSH server started on localhost:2203. Cipher list ([chacha20-poly1305@openssh.com aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com]), key exchange algorithms ([mlkem768x25519-sha256 curve25519-sha256 ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha256 diffie-hellman-group14-sha1]), MACs ([hmac-sha2-256-etm@openssh.com hmac-sha2-256 hmac-sha1]) ??? [TestLogger] 2026/02/24 12:03:13 ...s/graceful/server.go:50:NewServer() [I] Starting new SSH server: tcp:localhost:2203 on PID: 4021207 ??? [TestLogger] 2026/02/24 12:03:13 ...er/cleanup_sha256.go:27:CleanupSHA256() [I] Start to cleanup dangling images with a sha256:* version ??? [TestLogger] 2026/02/24 12:03:13 ...er/cleanup_sha256.go:106:cleanupSHA256() [I] Nothing to cleanup ??? [TestLogger] 2026/02/24 12:03:13 ...er/cleanup_sha256.go:29:CleanupSHA256() [I] Finished to cleanup dangling images with a sha256:* version === TestLinksLogin (tests/test_utils.go:344) testlogger.go:recordError() FATAL ERROR: log.Error has been called: // TestLinksLogin "2026/02/24 12:03:13 ...rs/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: runtime error: invalid memory address or nil pointer dereference\n\t/usr/lib/golang/src/runtime/panic.go:783 (0x483231)\n\t\tgopanic: fn()\n\t/home/nils/src/forgejo/modules/web/routing/logger_manager.go:116 (0x20de9a4)\n\t\t(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr)\n\t/usr/lib/golang/src/runtime/panic.go:783 (0x483231)\n\t\tgopanic: fn()\n\t/usr/lib/golang/src/runtime/panic.go:262 (0x485958)\n\t\tpanicmem: panic(memoryError)\n\t/usr/lib/golang/src/runtime/signal_unix.go:925 (0x485928)\n\t\tsigpanic: panicmem()\n\t/home/nils/src/forgejo/models/activities/notification.go:468 (0x1aa5dea)\n\t\tNotificationList.LoadIssuePullRequests: if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil {\n\t/home/nils/src/forgejo/routers/web/user/notification.go:147 (0x2a2dc24)\n\t\tgetNotifications: if err = notifications.LoadIssuePullRequests(ctx); err != nil {\n\t/home/nils/src/forgejo/routers/web/user/notification.go:63 (0x2a2d4db)\n\t\tNotifications: getNotifications(ctx)\n\t/usr/lib/golang/src/reflect/value.go:581 (0x512e65)\n\t\tValue.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), &regArgs)\n\t/usr/lib/golang/src/reflect/value.go:365 (0x511f58)\n\t\tValue.Call: return v.call(\"Call\", in)\n\t/home/nils/src/forgejo/modules/web/handler.go:176 (0x20e8349)\n\t\ttoHandlerProvider.func3.1: ret := fn.Call(argsIn)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/routemock.go:34 (0x20e9242)\n\t\t(*Route).wrapMiddlewareAndHandler.RouteMockPoint.func1.1: next.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/chain.go:31 (0x20df285)\n\t\t(*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/middleware/get_head.go:37 (0x291722a)\n\t\tGetHead.func1: next.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/services/context/context.go:215 (0x215c24e)\n\t\tContexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/code.forgejo.org/go-chi/session/session.go:167 (0x20aac2d)\n\t\tSessioner.func1.1: next.ServeHTTP(w, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/klauspost/compress/gzhttp/compress.go:656 (0x20edbe2)\n\t\tNewWrapper.func1.1: h.ServeHTTP(newNoGzipResponseWriter(w), r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0x20e8651)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:155 (0x20e8640)\n\t\ttoHandlerProvider.func2.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)\n\t\t(*Mux).Mount.func1: handler.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)\n\t\t(*Mux).Mount.func1: handler.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/routing/logger_manager.go:122 (0x20de82e)\n\t\t(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/chi-middleware/proxy/middleware.go:37 (0x24da30f)\n\t\tProtocolMiddlewares.ForwardedHeaders.func3.1: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:51 (0x24db997)\n\t\tProtocolMiddlewares.func2.1: next.ServeHTTP(respWriter, req.WithContext(cache.WithCacheContext(ctx)))\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:38 (0x24db4f5)\n\t\tProtocolMiddlewares.func1.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:106 (0x24da62d)\n\t\tstripSlashesMiddleware.func1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:90 (0x20dfded)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/modules/web/route.go:163 (0x2fa9d15)\n\t\t(*Route).ServeHTTP: r.R.ServeHTTP(w, req)\n\t/home/nils/src/forgejo/tests/integration/integration_test.go:603 (0x2fa9cf2)\n\t\tMakeRequest: testWebRoutes.ServeHTTP(recorder, req)\n\t/home/nils/src/forgejo/tests/integration/integration_test.go:235 (0x2fa53fa)\n\t\t(*TestSession).MakeRequest: resp := MakeRequest(t, rw, expectedStatus)\n\t/home/nils/src/forgejo/tests/integration/links_test.go:131 (0x2fca2b1)\n\t\ttestLinksAsUser: session.MakeRequest(t, req, http.StatusOK)\n\t/home/nils/src/forgejo/tests/integration/links_test.go:174 (0x2fca774)\n\t\tTestLinksLogin: testLinksAsUser(\"user2\", t)\n\t/usr/lib/golang/src/testing/testing.go:1934 (0x5737e9)\n\t\ttRunner: fn(t)\n\t/usr/lib/golang/src/runtime/asm_amd64.s:1693 (0x48c360)\n\t\tgoexit: BYTE\t$0x90\t// NOP", --- FAIL: TestLinksLogin (2.43s) test_utils.go:252: PrepareTestEnv:Process "Stats.DB Index Repo[16]" cancelled test_utils.go:252: PrepareTestEnv:Process "/usr/bin/git rev-parse [repo_path: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/gitea-repositories/user2/repo16.git]" cancelled test_utils.go:252: PrepareTestEnv:Process "CodeIndexer batch" cancelled test_utils.go:252: PrepareTestEnv:Process "git(dir:/home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/gitea-repositories/user2/repo15.git): /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs.clean= show-ref -s refs/heads/master" cancelled testlogger.go:411: 2026/02/24 12:03:13 ...exer/code/indexer.go:321:populateRepoIndexer() [I] Done (re)populating the repo indexer with existing repositories test_utils.go:276: PrepareTestEnv: all processes cancelled within 17.354578ms testlogger.go:411: 2026/02/24 12:03:13 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/gitea-lfs-meta testlogger.go:411: 2026/02/24 12:03:13 ...xer/stats/indexer.go:87:populateRepoIndexer() [I] Done (re)populating the repo stats indexer with existing repositories testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed POST /user/login for test-mock:12345, 303 See Other in 3.0ms @ auth/auth.go:178(auth.SignInPost) testlogger.go:411: 2026/02/24 12:03:13 ...odels/user/avatar.go:59:GenerateRandomAvatar() [I] New random avatar created: 2 testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/repos for test-mock:12345, 200 OK in 7.8ms @ explore/repo.go:167(explore.Repos) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/repos?q=test for test-mock:12345, 200 OK in 4.2ms @ explore/repo.go:167(explore.Repos) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/users for test-mock:12345, 200 OK in 2.4ms @ explore/user.go:116(explore.Users) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/users?q=test for test-mock:12345, 200 OK in 1.4ms @ explore/user.go:116(explore.Users) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/organizations for test-mock:12345, 200 OK in 1.6ms @ explore/org.go:16(explore.Organizations) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /explore/organizations?q=test for test-mock:12345, 200 OK in 1.2ms @ explore/org.go:16(explore.Organizations) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET / for test-mock:12345, 200 OK in 3.6ms @ web/home.go:34(web.Home) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/forgot_password for test-mock:12345, 200 OK in 1.2ms @ auth/password.go:35(auth.ForgotPasswd) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /api/swagger for test-mock:12345, 200 OK in 0.4ms @ misc/swagger.go:17(misc.Swagger) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues for test-mock:12345, 200 OK in 4.9ms @ user/home.go:357(user.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=your_repositories&repos=[0]&sort=&state=open for test-mock:12345, 200 OK in 4.4ms @ user/home.go:357(user.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=assigned&repos=[0]&sort=&state=open for test-mock:12345, 200 OK in 3.3ms @ user/home.go:357(user.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=your_repositories&repos=[0]&sort=&state=closed for test-mock:12345, 200 OK in 3.3ms @ user/home.go:357(user.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=assigned&repos=[]&sort=&state=closed for test-mock:12345, 200 OK in 2.3ms @ user/home.go:357(user.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=assigned&sort=&state=open for test-mock:12345, 200 OK in 2.9ms @ user/home.go:357(user.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=created_by&repos=[1,2]&sort=&state=closed for test-mock:12345, 200 OK in 2.9ms @ user/home.go:357(user.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /issues?type=created_by&repos=[1,2]&sort=&state=open for test-mock:12345, 200 OK in 3.0ms @ user/home.go:357(user.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:805:GetIssuesAllCommitStatus() [E] getAllCommitStatus: can't get commit statuses of pull [6]: object does not exist [id: refs/pull/2/head, rel_path: ] testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:797:GetIssuesAllCommitStatus() [E] Cannot open git repository <Repository 23:org17/big_test_public_4> for issue #1[20]. Error: no such file or directory testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls for test-mock:12345, 200 OK in 11.4ms @ user/home.go:344(user.Pulls) testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:805:GetIssuesAllCommitStatus() [E] getAllCommitStatus: can't get commit statuses of pull [6]: object does not exist [id: refs/pull/2/head, rel_path: ] testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=your_repositories&repos=[2]&sort=&state=open for test-mock:12345, 200 OK in 18.0ms @ user/home.go:344(user.Pulls) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=assigned&repos=[]&sort=&state=open for test-mock:12345, 200 OK in 3.1ms @ user/home.go:344(user.Pulls) testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:805:GetIssuesAllCommitStatus() [E] getAllCommitStatus: can't get commit statuses of pull [6]: object does not exist [id: refs/pull/2/head, rel_path: ] testlogger.go:411: 2026/02/24 12:03:13 ...ervices/pull/pull.go:797:GetIssuesAllCommitStatus() [E] Cannot open git repository <Repository 23:org17/big_test_public_4> for issue #1[20]. Error: no such file or directory testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=created_by&repos=[0]&sort=&state=open for test-mock:12345, 200 OK in 10.3ms @ user/home.go:344(user.Pulls) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=your_repositories&repos=[0]&sort=&state=closed for test-mock:12345, 200 OK in 2.9ms @ user/home.go:344(user.Pulls) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=assigned&repos=[0]&sort=&state=closed for test-mock:12345, 200 OK in 3.1ms @ user/home.go:344(user.Pulls) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /pulls?type=created_by&repos=[0]&sort=&state=closed for test-mock:12345, 200 OK in 3.0ms @ user/home.go:344(user.Pulls) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones for test-mock:12345, 200 OK in 3.7ms @ user/home.go:143(user.Milestones) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?sort=mostcomplete&state=closed for test-mock:12345, 200 OK in 2.3ms @ user/home.go:143(user.Milestones) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?type=your_repositories&sort=mostcomplete&state=closed for test-mock:12345, 200 OK in 2.6ms @ user/home.go:143(user.Milestones) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?sort=&repos=[1]&state=closed for test-mock:12345, 200 OK in 2.4ms @ user/home.go:143(user.Milestones) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?sort=&repos=[1]&state=open for test-mock:12345, 200 OK in 2.5ms @ user/home.go:143(user.Milestones) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /milestones?repos=[0]&sort=mostissues&state=open for test-mock:12345, 200 OK in 3.8ms @ user/home.go:143(user.Milestones) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:78:func1() [W] router: failed GET /notifications for test-mock:12345, panic in 1.2ms @ user/notification.go:62(user.Notifications), err=runtime error: invalid memory address or nil pointer dereference testlogger.go:411: 2026/02/24 12:03:13 ...rs/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: runtime error: invalid memory address or nil pointer dereference /usr/lib/golang/src/runtime/panic.go:783 (0x483231) gopanic: fn() /home/nils/src/forgejo/modules/web/routing/logger_manager.go:116 (0x20de9a4) (*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr) /usr/lib/golang/src/runtime/panic.go:783 (0x483231) gopanic: fn() /usr/lib/golang/src/runtime/panic.go:262 (0x485958) panicmem: panic(memoryError) /usr/lib/golang/src/runtime/signal_unix.go:925 (0x485928) sigpanic: panicmem() /home/nils/src/forgejo/models/activities/notification.go:468 (0x1aa5dea) NotificationList.LoadIssuePullRequests: if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil { /home/nils/src/forgejo/routers/web/user/notification.go:147 (0x2a2dc24) getNotifications: if err = notifications.LoadIssuePullRequests(ctx); err != nil { /home/nils/src/forgejo/routers/web/user/notification.go:63 (0x2a2d4db) Notifications: getNotifications(ctx) /usr/lib/golang/src/reflect/value.go:581 (0x512e65) Value.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), &regArgs) /usr/lib/golang/src/reflect/value.go:365 (0x511f58) Value.Call: return v.call("Call", in) /home/nils/src/forgejo/modules/web/handler.go:176 (0x20e8349) toHandlerProvider.func3.1: ret := fn.Call(argsIn) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/routemock.go:34 (0x20e9242) (*Route).wrapMiddlewareAndHandler.RouteMockPoint.func1.1: next.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/chain.go:31 (0x20df285) (*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e) (*Mux).routeHTTP: h.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/middleware/get_head.go:37 (0x291722a) GetHead.func1: next.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/services/context/context.go:215 (0x215c24e) Contexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/code.forgejo.org/go-chi/session/session.go:167 (0x20aac2d) Sessioner.func1.1: next.ServeHTTP(w, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/klauspost/compress/gzhttp/compress.go:656 (0x20edbe2) NewWrapper.func1.1: h.ServeHTTP(newNoGzipResponseWriter(w), r) /usr/lib/golang/src/net/http/server.go:2322 (0x20e8651) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:155 (0x20e8640) toHandlerProvider.func2.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e) (*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a) (*Mux).Mount.func1: handler.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e) (*Mux).routeHTTP: h.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e) (*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a) (*Mux).Mount.func1: handler.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e) (*Mux).routeHTTP: h.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/routing/logger_manager.go:122 (0x20de82e) (*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/chi-middleware/proxy/middleware.go:37 (0x24da30f) ProtocolMiddlewares.ForwardedHeaders.func3.1: h.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/routers/common/middleware.go:51 (0x24db997) ProtocolMiddlewares.func2.1: next.ServeHTTP(respWriter, req.WithContext(cache.WithCacheContext(ctx))) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/routers/common/middleware.go:38 (0x24db4f5) ProtocolMiddlewares.func1.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/routers/common/middleware.go:106 (0x24da62d) stripSlashesMiddleware.func1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:90 (0x20dfded) (*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r) /home/nils/src/forgejo/modules/web/route.go:163 (0x2fa9d15) (*Route).ServeHTTP: r.R.ServeHTTP(w, req) /home/nils/src/forgejo/tests/integration/integration_test.go:603 (0x2fa9cf2) MakeRequest: testWebRoutes.ServeHTTP(recorder, req) /home/nils/src/forgejo/tests/integration/integration_test.go:235 (0x2fa53fa) (*TestSession).MakeRequest: resp := MakeRequest(t, rw, expectedStatus) /home/nils/src/forgejo/tests/integration/links_test.go:131 (0x2fca2b1) testLinksAsUser: session.MakeRequest(t, req, http.StatusOK) /home/nils/src/forgejo/tests/integration/links_test.go:174 (0x2fca774) TestLinksLogin: testLinksAsUser("user2", t) /usr/lib/golang/src/testing/testing.go:1934 (0x5737e9) tRunner: fn(t) /usr/lib/golang/src/runtime/asm_amd64.s:1693 (0x48c360) goexit: BYTE $0x90 // NOP links_test.go:131: Error Trace: /home/nils/src/forgejo/tests/integration/integration_test.go:605 /home/nils/src/forgejo/tests/integration/integration_test.go:235 /home/nils/src/forgejo/tests/integration/links_test.go:131 /home/nils/src/forgejo/tests/integration/links_test.go:174 Error: Not equal: expected: 200 actual : 500 Test: TestLinksLogin Messages: Request: GET /notifications links_test.go:131: Response length: 1779 testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /repo/create for test-mock:12345, 200 OK in 3.4ms @ repo/repo.go:154(repo.Create) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /repo/migrate for test-mock:12345, 200 OK in 1.5ms @ repo/migrate.go:36(repo.Migrate) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /org/create for test-mock:12345, 200 OK in 1.2ms @ org/org.go:28(org.Create) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2 for test-mock:12345, 200 OK in 4.2ms @ user/home.go:769(user.UsernameSubRoute) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2?tab=stars for test-mock:12345, 200 OK in 2.7ms @ user/home.go:769(user.UsernameSubRoute) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2?tab=activity for test-mock:12345, 200 OK in 3.3ms @ user/home.go:769(user.UsernameSubRoute) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings for test-mock:12345, 200 OK in 1.8ms @ setting/profile.go:67(setting.Profile) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/account for test-mock:12345, 200 OK in 1.5ms @ setting/account.go:36(setting.Account) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/security for test-mock:12345, 200 OK in 2.2ms @ security/security.go:27(security.Security) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/security/two_factor/enroll for test-mock:12345, 200 OK in 8.6ms @ security/2fa.go:161(security.EnrollTwoFactor) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/keys for test-mock:12345, 200 OK in 2.2ms @ setting/keys.go:27(setting.Keys) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/organization for test-mock:12345, 200 OK in 1.5ms @ setting/profile.go:201(setting.Organization) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/settings/repos for test-mock:12345, 200 OK in 1.8ms @ setting/profile.go:232(setting.Repos) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /api/v1/users/user2/repos for test-mock:12345, 200 OK in 2.3ms @ user/repo.go:56(user.ListUserRepos) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1 for test-mock:12345, 200 OK in 17.3ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/issues for test-mock:12345, 200 OK in 18.1ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/pulls for test-mock:12345, 200 OK in 25.8ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/commits/branch/master for test-mock:12345, 200 OK in 27.8ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/graph for test-mock:12345, 200 OK in 40.2ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings for test-mock:12345, 200 OK in 11.3ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings/collaboration for test-mock:12345, 200 OK in 13.3ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings/branches for test-mock:12345, 200 OK in 11.2ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings/hooks for test-mock:12345, 200 OK in 11.9ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/settings/keys for test-mock:12345, 200 OK in 9.3ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/releases for test-mock:12345, 200 OK in 23.2ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/releases/new for test-mock:12345, 200 OK in 11.6ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:13 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/wiki/?action=_new for test-mock:12345, 200 OK in 5.5ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo1/activity for test-mock:12345, 200 OK in 18.4ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8 for test-mock:12345, 200 OK in 21.4ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/issues for test-mock:12345, 200 OK in 11.9ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/pulls for test-mock:12345, 200 OK in 10.7ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/commits/branch/master for test-mock:12345, 200 OK in 14.0ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/graph for test-mock:12345, 200 OK in 25.7ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings for test-mock:12345, 200 OK in 14.3ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings/collaboration for test-mock:12345, 200 OK in 14.8ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings/branches for test-mock:12345, 200 OK in 21.8ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings/hooks for test-mock:12345, 200 OK in 19.1ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/settings/keys for test-mock:12345, 200 OK in 11.7ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/releases for test-mock:12345, 200 OK in 9.8ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/releases/new for test-mock:12345, 200 OK in 10.2ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/wiki/?action=_new for test-mock:12345, 200 OK in 5.8ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/utf8/activity for test-mock:12345, 200 OK in 16.7ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test for test-mock:12345, 200 OK in 24.8ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/issues for test-mock:12345, 200 OK in 13.5ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/pulls for test-mock:12345, 200 OK in 14.0ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/commits/branch/master for test-mock:12345, 200 OK in 18.3ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/graph for test-mock:12345, 200 OK in 19.9ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings for test-mock:12345, 200 OK in 14.0ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings/collaboration for test-mock:12345, 200 OK in 12.8ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings/branches for test-mock:12345, 200 OK in 11.9ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings/hooks for test-mock:12345, 200 OK in 15.1ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/settings/keys for test-mock:12345, 200 OK in 14.5ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/releases for test-mock:12345, 200 OK in 11.9ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/releases/new for test-mock:12345, 200 OK in 10.2ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/wiki/?action=_new for test-mock:12345, 200 OK in 5.1ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commits_search_test/activity for test-mock:12345, 200 OK in 14.7ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test for test-mock:12345, 200 OK in 30.7ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/issues for test-mock:12345, 200 OK in 13.4ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/pulls for test-mock:12345, 200 OK in 11.7ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/commits/branch/master for test-mock:12345, 200 OK in 12.7ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/graph for test-mock:12345, 200 OK in 13.8ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings for test-mock:12345, 200 OK in 9.7ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings/collaboration for test-mock:12345, 200 OK in 9.3ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings/branches for test-mock:12345, 200 OK in 10.1ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings/hooks for test-mock:12345, 200 OK in 11.9ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/settings/keys for test-mock:12345, 200 OK in 12.7ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/releases for test-mock:12345, 200 OK in 12.6ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/releases/new for test-mock:12345, 200 OK in 13.6ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/wiki/?action=_new for test-mock:12345, 200 OK in 7.0ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/git_hooks_test/activity for test-mock:12345, 200 OK in 20.4ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob for test-mock:12345, 200 OK in 41.6ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/issues for test-mock:12345, 200 OK in 20.7ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/pulls for test-mock:12345, 200 OK in 13.9ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/commits/branch/master for test-mock:12345, 200 OK in 14.5ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/graph for test-mock:12345, 200 OK in 19.1ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings for test-mock:12345, 200 OK in 15.4ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings/collaboration for test-mock:12345, 200 OK in 15.9ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings/branches for test-mock:12345, 200 OK in 14.3ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings/hooks for test-mock:12345, 200 OK in 15.6ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/settings/keys for test-mock:12345, 200 OK in 13.8ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/releases for test-mock:12345, 200 OK in 13.4ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/releases/new for test-mock:12345, 200 OK in 11.7ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/wiki/?action=_new for test-mock:12345, 200 OK in 6.5ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/glob/activity for test-mock:12345, 200 OK in 19.4ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release for test-mock:12345, 200 OK in 30.5ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/issues for test-mock:12345, 200 OK in 13.9ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/pulls for test-mock:12345, 200 OK in 12.2ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/commits/branch/master for test-mock:12345, 200 OK in 14.7ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/graph for test-mock:12345, 200 OK in 19.7ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings for test-mock:12345, 200 OK in 14.0ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings/collaboration for test-mock:12345, 200 OK in 13.0ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings/branches for test-mock:12345, 200 OK in 13.7ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings/hooks for test-mock:12345, 200 OK in 12.1ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:14 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/settings/keys for test-mock:12345, 200 OK in 10.2ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/releases for test-mock:12345, 200 OK in 37.0ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/releases/new for test-mock:12345, 200 OK in 9.7ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/wiki/?action=_new for test-mock:12345, 200 OK in 5.2ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo-release/activity for test-mock:12345, 200 OK in 15.1ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr for test-mock:12345, 200 OK in 22.5ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/issues for test-mock:12345, 200 OK in 12.3ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/pulls for test-mock:12345, 200 OK in 15.3ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/commits/branch/master for test-mock:12345, 200 OK in 17.1ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/graph for test-mock:12345, 200 OK in 32.0ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings for test-mock:12345, 200 OK in 23.3ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings/collaboration for test-mock:12345, 200 OK in 12.8ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings/branches for test-mock:12345, 200 OK in 14.0ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings/hooks for test-mock:12345, 200 OK in 11.4ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/settings/keys for test-mock:12345, 200 OK in 12.8ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/releases for test-mock:12345, 200 OK in 14.4ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/releases/new for test-mock:12345, 200 OK in 12.3ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/wiki/?action=_new for test-mock:12345, 200 OK in 7.1ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/commitsonpr/activity for test-mock:12345, 200 OK in 16.8ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows for test-mock:12345, 200 OK in 14.6ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/issues for test-mock:12345, 200 OK in 11.7ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/pulls for test-mock:12345, 200 OK in 13.3ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/commits/branch/master for test-mock:12345, 200 OK in 14.9ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/graph for test-mock:12345, 200 OK in 18.1ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings for test-mock:12345, 200 OK in 11.3ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings/collaboration for test-mock:12345, 200 OK in 10.5ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings/branches for test-mock:12345, 200 OK in 9.6ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings/hooks for test-mock:12345, 200 OK in 9.1ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/settings/keys for test-mock:12345, 200 OK in 9.9ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/releases for test-mock:12345, 200 OK in 9.9ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/releases/new for test-mock:12345, 200 OK in 9.8ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/wiki/?action=_new for test-mock:12345, 200 OK in 5.4ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/test_workflows/activity for test-mock:12345, 200 OK in 16.7ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256 for test-mock:12345, 200 OK in 14.6ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/issues for test-mock:12345, 200 OK in 12.9ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/pulls for test-mock:12345, 200 OK in 14.5ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/commits/branch/master for test-mock:12345, 200 OK in 14.9ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/graph for test-mock:12345, 200 OK in 22.2ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings for test-mock:12345, 200 OK in 13.7ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings/collaboration for test-mock:12345, 200 OK in 10.0ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings/branches for test-mock:12345, 200 OK in 10.3ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings/hooks for test-mock:12345, 200 OK in 10.4ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/settings/keys for test-mock:12345, 200 OK in 10.5ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/releases for test-mock:12345, 200 OK in 9.9ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/releases/new for test-mock:12345, 200 OK in 10.7ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/wiki/?action=_new for test-mock:12345, 200 OK in 5.7ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo256/activity for test-mock:12345, 200 OK in 16.9ms @ repo/activity.go:21(repo.Activity) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59 for test-mock:12345, 200 OK in 35.1ms @ repo/view.go:809(repo.Home) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/issues for test-mock:12345, 200 OK in 14.6ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/pulls for test-mock:12345, 200 OK in 19.7ms @ repo/issue.go:515(repo.Issues) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/commits/branch/master for test-mock:12345, 200 OK in 15.8ms @ repo/commit.go:45(repo.RefCommits) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/graph for test-mock:12345, 200 OK in 18.2ms @ repo/commit.go:112(repo.Graph) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings for test-mock:12345, 200 OK in 10.9ms @ setting/setting.go:302(setting.Settings) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings/collaboration for test-mock:12345, 200 OK in 9.9ms @ setting/collaboration.go:27(setting.Collaboration) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings/branches for test-mock:12345, 200 OK in 9.4ms @ setting/protected_branch.go:34(setting.ProtectedBranchRules) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings/hooks for test-mock:12345, 200 OK in 9.8ms @ setting/webhook.go:43(setting.WebhookList) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/settings/keys for test-mock:12345, 200 OK in 10.2ms @ setting/deploy_key.go:20(setting.DeployKeys) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/releases for test-mock:12345, 200 OK in 21.8ms @ repo/release.go:172(repo.Releases) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/releases/new for test-mock:12345, 200 OK in 12.6ms @ repo/release.go:416(repo.NewRelease) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/wiki/?action=_new for test-mock:12345, 200 OK in 6.0ms @ repo/wiki.go:478(repo.Wiki) testlogger.go:411: 2026/02/24 12:03:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user2/repo59/activity for test-mock:12345, 200 OK in 20.0ms @ repo/activity.go:21(repo.Activity) FAIL make: *** [Makefile:648: test-sqlite#TestLinksLogin] Error 1 nils@gibbon:~/src/forgejo (forgejo--private-issues)> </code></pre> </details> <details> <summary>TestNotification</summary> <pre><code> nils@gibbon:~/src/forgejo (forgejo--private-issues)> make TAGS="bindata timetzdata sqlite sqlite_unlock_notify" GOTESTFLAGS="-v" -k test-sqlite\#TestNotification /usr/lib/golang/bin/go test -v -c forgejo.org/tests/integration -o integrations.sqlite.test -tags 'sqlite sqlite_unlock_notify' sed -e 's|{{REPO_TEST_DIR}}||g' \ -e 's|{{TEST_LOGGER}}|test,file|g' \ -e 's|{{TEST_TYPE}}|integration|g' \ tests/sqlite.ini.tmpl > tests/sqlite.ini GITEA_ROOT="/home/nils/src/forgejo" GITEA_CONF=tests/sqlite.ini ./integrations.sqlite.test -test.run TestNotification 2026/02/24 12:03:51 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local 2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments 2026/02/24 12:03:51 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local 2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars 2026/02/24 12:03:51 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars 2026/02/24 12:03:51 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local 2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs 2026/02/24 12:03:51 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive 2026/02/24 12:03:51 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local 2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages 2026/02/24 12:03:51 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local 2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log 2026/02/24 12:03:51 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/02/24 12:03:51 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts 2026/02/24 12:03:51 modules/git/git.go:129:checkInit() [W] git module has been initialized already, duplicate init may work but it's better to fix it 2026/02/24 12:03:51 routers/init.go:111:InitWebInstalled() [I] Git version: 2.53.0, Wire Protocol Version 2 Enabled (home: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/home) ??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:157:initAttachments() [I] Initialising Attachment storage with type: local ??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/attachments ??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:147:initAvatars() [I] Initialising Avatar storage with type: local ??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/avatars ??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:173:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local ??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/repo-avatars ??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:167:initLFS() [I] Initialising LFS storage with type: local ??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/tests/integration/gitea-integration-sqlite/data/lfs ??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:179:initRepoArchives() [I] Initialising Repository Archive storage with type: local ??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/repo-archive ??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:189:initPackages() [I] Initialising Packages storage with type: local ??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/packages ??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:200:initActions() [I] Initialising Actions storage with type: local ??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_log ??? [TestLogger] 2026/02/24 12:03:52 ...s/storage/storage.go:204:initActions() [I] Initialising ActionsArtifacts storage with type: local ??? [TestLogger] 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/actions_artifacts ??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:131:InitWebInstalled() [I] SQLite3 support is enabled ??? [TestLogger] 2026/02/24 12:03:52 routers/common/db.go:23:InitDBEngine() [I] Beginning ORM engine initialization. ??? [TestLogger] 2026/02/24 12:03:52 routers/common/db.go:30:InitDBEngine() [I] ORM engine initialization attempt #1/10... ??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:137:InitWebInstalled() [I] ORM engine initialization successful! ??? [TestLogger] 2026/02/24 12:03:52 ...er/issues/indexer.go:78:func1() [I] PID 4024652: Initializing Issue Indexer: bleve ??? [TestLogger] 2026/02/24 12:03:52 ...exer/code/indexer.go:168:func3() [I] PID: 4024652 Initializing Repository Indexer at: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/indexers/repos.bleve ??? [TestLogger] 2026/02/24 12:03:52 ...xer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories ??? [TestLogger] 2026/02/24 12:03:52 ...er/issues/indexer.go:155:func2() [I] Issue Indexer Initialization took 3.653795ms ??? [TestLogger] 2026/02/24 12:03:52 ...exer/code/indexer.go:269:populateRepoIndexer() [I] Populating the repo indexer with existing repositories ??? [TestLogger] 2026/02/24 12:03:52 ...exer/code/indexer.go:243:func4() [I] Repository Indexer Initialization took 3.960382ms ??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:84:syncAppConfForGit() [I] AppPath changed from '' to '/home/nils/src/forgejo/gitea' ??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:89:syncAppConfForGit() [I] CustomConf changed from '' to '/home/nils/src/forgejo/tests/sqlite.ini' ??? [TestLogger] 2026/02/24 12:03:52 routers/init.go:95:syncAppConfForGit() [I] re-sync repository hooks ... ??? [TestLogger] 2026/02/24 12:03:52 modules/ssh/ssh.go:332:Listen() [I] Adding SSH host key: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/data/ssh/gitea.rsa ??? [TestLogger] 2026/02/24 12:03:52 modules/ssh/init.go:30:Init() [I] SSH server started on localhost:2203. Cipher list ([chacha20-poly1305@openssh.com aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com]), key exchange algorithms ([mlkem768x25519-sha256 curve25519-sha256 ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha256 diffie-hellman-group14-sha1]), MACs ([hmac-sha2-256-etm@openssh.com hmac-sha2-256 hmac-sha1]) ??? [TestLogger] 2026/02/24 12:03:52 ...s/graceful/server.go:50:NewServer() [I] Starting new SSH server: tcp:localhost:2203 on PID: 4024652 ??? [TestLogger] 2026/02/24 12:03:52 ...er/cleanup_sha256.go:27:CleanupSHA256() [I] Start to cleanup dangling images with a sha256:* version ??? [TestLogger] 2026/02/24 12:03:52 ...er/cleanup_sha256.go:106:cleanupSHA256() [I] Nothing to cleanup ??? [TestLogger] 2026/02/24 12:03:52 ...er/cleanup_sha256.go:29:CleanupSHA256() [I] Finished to cleanup dangling images with a sha256:* version ??? [TestLogger] 2026/02/24 12:03:52 ...exer/code/indexer.go:321:populateRepoIndexer() [I] Done (re)populating the repo indexer with existing repositories === TestNotification (tests/test_utils.go:344) testlogger.go:recordError() FATAL ERROR: log.Error has been called: // TestNotification "2026/02/24 12:03:52 ...rs/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: runtime error: invalid memory address or nil pointer dereference\n\t/usr/lib/golang/src/runtime/panic.go:783 (0x483231)\n\t\tgopanic: fn()\n\t/home/nils/src/forgejo/modules/web/routing/logger_manager.go:116 (0x20de9a4)\n\t\t(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr)\n\t/usr/lib/golang/src/runtime/panic.go:783 (0x483231)\n\t\tgopanic: fn()\n\t/usr/lib/golang/src/runtime/panic.go:262 (0x485958)\n\t\tpanicmem: panic(memoryError)\n\t/usr/lib/golang/src/runtime/signal_unix.go:925 (0x485928)\n\t\tsigpanic: panicmem()\n\t/home/nils/src/forgejo/models/activities/notification.go:468 (0x1aa5dea)\n\t\tNotificationList.LoadIssuePullRequests: if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil {\n\t/home/nils/src/forgejo/routers/web/user/notification.go:147 (0x2a2dc24)\n\t\tgetNotifications: if err = notifications.LoadIssuePullRequests(ctx); err != nil {\n\t/home/nils/src/forgejo/routers/web/user/notification.go:63 (0x2a2d4db)\n\t\tNotifications: getNotifications(ctx)\n\t/usr/lib/golang/src/reflect/value.go:581 (0x512e65)\n\t\tValue.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), &regArgs)\n\t/usr/lib/golang/src/reflect/value.go:365 (0x511f58)\n\t\tValue.Call: return v.call(\"Call\", in)\n\t/home/nils/src/forgejo/modules/web/handler.go:176 (0x20e8349)\n\t\ttoHandlerProvider.func3.1: ret := fn.Call(argsIn)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/routemock.go:34 (0x20e9242)\n\t\t(*Route).wrapMiddlewareAndHandler.RouteMockPoint.func1.1: next.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/chain.go:31 (0x20df285)\n\t\t(*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/middleware/get_head.go:37 (0x291722a)\n\t\tGetHead.func1: next.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1)\n\t\ttoHandlerProvider.func3.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/services/context/context.go:215 (0x215c24e)\n\t\tContexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/code.forgejo.org/go-chi/session/session.go:167 (0x20aac2d)\n\t\tSessioner.func1.1: next.ServeHTTP(w, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/klauspost/compress/gzhttp/compress.go:656 (0x20edbe2)\n\t\tNewWrapper.func1.1: h.ServeHTTP(newNoGzipResponseWriter(w), r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0x20e8651)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:155 (0x20e8640)\n\t\ttoHandlerProvider.func2.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)\n\t\t(*Mux).Mount.func1: handler.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a)\n\t\t(*Mux).Mount.func1: handler.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e)\n\t\t(*Mux).routeHTTP: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/routing/logger_manager.go:122 (0x20de82e)\n\t\t(*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/chi-middleware/proxy/middleware.go:37 (0x24da30f)\n\t\tProtocolMiddlewares.ForwardedHeaders.func3.1: h.ServeHTTP(w, r)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:51 (0x24db997)\n\t\tProtocolMiddlewares.func2.1: next.ServeHTTP(respWriter, req.WithContext(cache.WithCacheContext(ctx)))\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:38 (0x24db4f5)\n\t\tProtocolMiddlewares.func1.1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/routers/common/middleware.go:106 (0x24da62d)\n\t\tstripSlashesMiddleware.func1: next.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3)\n\t\ttoHandlerProvider.func1.1: h.ServeHTTP(resp, req)\n\t/usr/lib/golang/src/net/http/server.go:2322 (0xaa6368)\n\t\tHandlerFunc.ServeHTTP: f(w, r)\n\t/home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:90 (0x20dfded)\n\t\t(*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r)\n\t/home/nils/src/forgejo/modules/web/route.go:163 (0x2fa9d15)\n\t\t(*Route).ServeHTTP: r.R.ServeHTTP(w, req)\n\t/home/nils/src/forgejo/tests/integration/integration_test.go:603 (0x2fa9cf2)\n\t\tMakeRequest: testWebRoutes.ServeHTTP(recorder, req)\n\t/home/nils/src/forgejo/tests/integration/integration_test.go:235 (0x2fa53fa)\n\t\t(*TestSession).MakeRequest: resp := MakeRequest(t, rw, expectedStatus)\n\t/home/nils/src/forgejo/tests/integration/notification_test.go:22 (0x2fd2644)\n\t\tTestNotification: resp := session.MakeRequest(t, req, http.StatusOK)\n\t/usr/lib/golang/src/testing/testing.go:1934 (0x5737e9)\n\t\ttRunner: fn(t)\n\t/usr/lib/golang/src/runtime/asm_amd64.s:1693 (0x48c360)\n\t\tgoexit: BYTE\t$0x90\t// NOP", --- FAIL: TestNotification (0.16s) test_utils.go:252: PrepareTestEnv:Process "Stats.DB Index Repo[2]" cancelled test_utils.go:252: PrepareTestEnv:Process "/usr/bin/git cat-file --batch-check [repo_path: /home/nils/src/forgejo/tests/integration/gitea-integration-sqlite/gitea-repositories/user2/repo2.git] (modules/git/repo_base.go:86)" cancelled test_utils.go:276: PrepareTestEnv: all processes cancelled within 158.428µs testlogger.go:411: 2026/02/24 12:03:52 ...xer/stats/indexer.go:87:populateRepoIndexer() [I] Done (re)populating the repo stats indexer with existing repositories testlogger.go:411: 2026/02/24 12:03:52 ...les/storage/local.go:33:NewLocalStorage() [I] Creating new Local Storage at /home/nils/src/forgejo/tests/gitea-lfs-meta testlogger.go:411: 2026/02/24 12:03:52 ...eb/routing/logger.go:102:func1() [I] router: completed POST /user/login for test-mock:12345, 303 See Other in 3.1ms @ auth/auth.go:178(auth.SignInPost) testlogger.go:411: 2026/02/24 12:03:52 ...eb/routing/logger.go:78:func1() [W] router: failed GET /notifications for test-mock:12345, panic in 1.2ms @ user/notification.go:62(user.Notifications), err=runtime error: invalid memory address or nil pointer dereference testlogger.go:411: 2026/02/24 12:03:52 ...rs/common/errpage.go:25:RenderPanicErrorPage() [E] PANIC: runtime error: invalid memory address or nil pointer dereference /usr/lib/golang/src/runtime/panic.go:783 (0x483231) gopanic: fn() /home/nils/src/forgejo/modules/web/routing/logger_manager.go:116 (0x20de9a4) (*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1.1: panic(localPanicErr) /usr/lib/golang/src/runtime/panic.go:783 (0x483231) gopanic: fn() /usr/lib/golang/src/runtime/panic.go:262 (0x485958) panicmem: panic(memoryError) /usr/lib/golang/src/runtime/signal_unix.go:925 (0x485928) sigpanic: panicmem() /home/nils/src/forgejo/models/activities/notification.go:468 (0x1aa5dea) NotificationList.LoadIssuePullRequests: if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil { /home/nils/src/forgejo/routers/web/user/notification.go:147 (0x2a2dc24) getNotifications: if err = notifications.LoadIssuePullRequests(ctx); err != nil { /home/nils/src/forgejo/routers/web/user/notification.go:63 (0x2a2d4db) Notifications: getNotifications(ctx) /usr/lib/golang/src/reflect/value.go:581 (0x512e65) Value.call: call(frametype, fn, stackArgs, uint32(frametype.Size()), uint32(abid.retOffset), uint32(frameSize), &regArgs) /usr/lib/golang/src/reflect/value.go:365 (0x511f58) Value.Call: return v.call("Call", in) /home/nils/src/forgejo/modules/web/handler.go:176 (0x20e8349) toHandlerProvider.func3.1: ret := fn.Call(argsIn) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/routemock.go:34 (0x20e9242) (*Route).wrapMiddlewareAndHandler.RouteMockPoint.func1.1: next.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/chain.go:31 (0x20df285) (*ChainHandler).ServeHTTP: c.chain.ServeHTTP(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e) (*Mux).routeHTTP: h.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/middleware/get_head.go:37 (0x291722a) GetHead.func1: next.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:186 (0x20e83e1) toHandlerProvider.func3.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/services/context/context.go:215 (0x215c24e) Contexter.func1.1: next.ServeHTTP(ctx.Resp, ctx.Req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/code.forgejo.org/go-chi/session/session.go:167 (0x20aac2d) Sessioner.func1.1: next.ServeHTTP(w, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/klauspost/compress/gzhttp/compress.go:656 (0x20edbe2) NewWrapper.func1.1: h.ServeHTTP(newNoGzipResponseWriter(w), r) /usr/lib/golang/src/net/http/server.go:2322 (0x20e8651) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:155 (0x20e8640) toHandlerProvider.func2.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e) (*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a) (*Mux).Mount.func1: handler.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e) (*Mux).routeHTTP: h.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:73 (0x20dfe2e) (*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:321 (0x20e179a) (*Mux).Mount.func1: handler.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:479 (0x20e258e) (*Mux).routeHTTP: h.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/routing/logger_manager.go:122 (0x20de82e) (*requestRecordsManager).handler-fm.(*requestRecordsManager).handler.func1: next.ServeHTTP(w, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/chi-middleware/proxy/middleware.go:37 (0x24da30f) ProtocolMiddlewares.ForwardedHeaders.func3.1: h.ServeHTTP(w, r) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/routers/common/middleware.go:51 (0x24db997) ProtocolMiddlewares.func2.1: next.ServeHTTP(respWriter, req.WithContext(cache.WithCacheContext(ctx))) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/routers/common/middleware.go:38 (0x24db4f5) ProtocolMiddlewares.func1.1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/routers/common/middleware.go:106 (0x24da62d) stripSlashesMiddleware.func1: next.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/modules/web/handler.go:145 (0x20e87e3) toHandlerProvider.func1.1: h.ServeHTTP(resp, req) /usr/lib/golang/src/net/http/server.go:2322 (0xaa6368) HandlerFunc.ServeHTTP: f(w, r) /home/nils/src/forgejo/vendor/github.com/go-chi/chi/v5/mux.go:90 (0x20dfded) (*Mux).ServeHTTP: mx.handler.ServeHTTP(w, r) /home/nils/src/forgejo/modules/web/route.go:163 (0x2fa9d15) (*Route).ServeHTTP: r.R.ServeHTTP(w, req) /home/nils/src/forgejo/tests/integration/integration_test.go:603 (0x2fa9cf2) MakeRequest: testWebRoutes.ServeHTTP(recorder, req) /home/nils/src/forgejo/tests/integration/integration_test.go:235 (0x2fa53fa) (*TestSession).MakeRequest: resp := MakeRequest(t, rw, expectedStatus) /home/nils/src/forgejo/tests/integration/notification_test.go:22 (0x2fd2644) TestNotification: resp := session.MakeRequest(t, req, http.StatusOK) /usr/lib/golang/src/testing/testing.go:1934 (0x5737e9) tRunner: fn(t) /usr/lib/golang/src/runtime/asm_amd64.s:1693 (0x48c360) goexit: BYTE $0x90 // NOP notification_test.go:22: Error Trace: /home/nils/src/forgejo/tests/integration/integration_test.go:605 /home/nils/src/forgejo/tests/integration/integration_test.go:235 /home/nils/src/forgejo/tests/integration/notification_test.go:22 Error: Not equal: expected: 200 actual : 500 Test: TestNotification Messages: Request: GET /notifications notification_test.go:22: Response length: 1779 html_helper.go:122: Error Trace: /home/nils/src/forgejo/tests/integration/html_helper.go:122 /home/nils/src/forgejo/tests/integration/html_helper.go:130 /home/nils/src/forgejo/tests/integration/notification_test.go:26 Error: Not equal: expected: 1 actual : 0 Test: TestNotification html_helper.go:122: Error Trace: /home/nils/src/forgejo/tests/integration/html_helper.go:122 /home/nils/src/forgejo/tests/integration/html_helper.go:130 /home/nils/src/forgejo/tests/integration/notification_test.go:27 Error: Not equal: expected: 1 actual : 0 Test: TestNotification html_helper.go:122: Error Trace: /home/nils/src/forgejo/tests/integration/html_helper.go:122 /home/nils/src/forgejo/tests/integration/html_helper.go:130 /home/nils/src/forgejo/tests/integration/notification_test.go:28 Error: Not equal: expected: 1 actual : 0 Test: TestNotification FAIL make: *** [Makefile:648: test-sqlite#TestNotification] Error 1 nils@gibbon:~/src/forgejo (forgejo--private-issues)> </code></pre> </details> # Acceptance Criteria - [x] TestAdminModerationViewReports runs successfully - [x] TestLinksLogin runs successfully - [x] TestNotification runs successfully - [x] The migration script runs successfully when running the integration tests (see at the top) with a DB initialized before the `private_issue` table was added.
nphilipp added this to the Sprint 15 project 2026-02-23 16:23:50 +00:00
Author
Member

The errors in TestLinksLogin and TestNotification are the same, attempting to dereference a nil pointer in NotificationList.LoadIssuePullRequests() (models/activities/notification.go:468):

	if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil {
The errors in `TestLinksLogin` and `TestNotification` are the same, attempting to dereference a nil pointer in `NotificationList.LoadIssuePullRequests()` (models/activities/notification.go:468): ``` if issue := issues[issueKey{pull.Issue.ID, pull.Issue.IsPrivate}]; issue != nil { ```
Author
Member

There’s more:

??? [TestLogger] 2026/02/24 15:53:34 routers/common/db.go:36:InitDBEngine() [E] ORM engine initialization attempt #3/10 failed. Error: migrate: migration[v15b_add-private-issue-fields]: add private issue fields to related tables failed: no such table: main.private_issue

Looks like the migration has to explicitly create the private_issue table from a copy of the PrivateIssue struct type.

There’s more: ``` ??? [TestLogger] 2026/02/24 15:53:34 routers/common/db.go:36:InitDBEngine() [E] ORM engine initialization attempt #3/10 failed. Error: migrate: migration[v15b_add-private-issue-fields]: add private issue fields to related tables failed: no such table: main.private_issue ``` Looks like the migration has to explicitly create the `private_issue` table from a copy of the `PrivateIssue` struct type.
Author
Member

Fixed in my feature branch, in “Refactor use of issue IDs in internal APIs” (when looking up PRs which would fix issues, the code missed putting the issues in the PR struct which later was used to look up their IDs) and “feat: Private Issues: Foundational changes” (adding a private issue ID column fuzzed with the number of displayed items when dealing with abuse shadow copies, the migration script must add the private_issue table before it can establish FK relations in other tables).

Fixed in my [feature branch](https://codeberg.org/nilsph/forgejo/src/branch/forgejo--private-issues), in “Refactor use of issue IDs in internal APIs” (when looking up PRs which would fix issues, the code missed putting the issues in the PR struct which later was used to look up their IDs) and “feat: Private Issues: Foundational changes” (adding a private issue ID column fuzzed with the number of displayed items when dealing with abuse shadow copies, the migration script must add the `private_issue` table before it can establish FK relations in other tables).
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Blocks
Reference
forge/forge#420
No description provided.