>>> gitea: Building community/gitea 1.27.3-r0 (using abuild 3.18.0_rc5-r1) started Sun, 06 Sep 2026 06:37:21 +0000 >>> gitea: Validating /home/buildozer/aports/community/gitea/APKBUILD... >>> gitea: Analyzing dependencies... >>> gitea: Installing for build: build-base git git-lfs gnupg go bash openssh openssh-keygen sqlite tzdata pnpm icu-data-full ( 1/42) Installing git-lfs (3.7.1-r1) Executing git-lfs-3.7.1-r1.post-install * Git LFS initialized. ( 2/42) Installing libgpg-error (1.61-r0) ( 3/42) Installing libassuan (3.0.2-r0) ( 4/42) Installing pinentry (1.3.2-r0) Executing pinentry-1.3.2-r0.post-install ( 5/42) Installing libgcrypt (1.12.3-r0) ( 6/42) Installing gnupg-gpgconf (2.4.9-r1) ( 7/42) Installing nettle (3.10.2-r0) ( 8/42) Installing libffi (3.8.0-r0) ( 9/42) Installing libtasn1 (4.21.0-r0) (10/42) Installing p11-kit (0.26.2-r1) (11/42) Installing gnutls (3.8.13-r0) (12/42) Installing libksba (1.7.0-r0) (13/42) Installing gdbm (1.26-r0) (14/42) Installing libsasl (2.1.28-r9) (15/42) Installing libldap (2.6.14-r0) (16/42) Installing npth (1.8-r0) (17/42) Installing gnupg-dirmngr (2.4.9-r1) (18/42) Installing sqlite-libs (3.53.4-r0) (19/42) Installing gnupg-keyboxd (2.4.9-r1) (20/42) Installing libbz2 (1.0.8-r6) (21/42) Installing gpg (2.4.9-r1) (22/42) Installing gpg-agent (2.4.9-r1) (23/42) Installing gpg-wks-server (2.4.9-r1) (24/42) Installing gpgsm (2.4.9-r1) (25/42) Installing gpgv (2.4.9-r1) (26/42) Installing gnupg-utils (2.4.9-r1) (27/42) Installing gnupg-wks-client (2.4.9-r1) (28/42) Installing gnupg (2.4.9-r1) (29/42) Installing go (1.27.1-r0) (30/42) Installing readline (8.3.3-r1) (31/42) Installing bash (5.3.9-r1) Executing bash-5.3.9-r1.post-install (32/42) Installing sqlite (3.53.4-r0) (33/42) Installing tzdata (2026c-r0) (34/42) Installing ca-certificates (20260611-r0) (35/42) Installing ada-libs (3.3.0-r1) (36/42) Installing icu-data-full (78.1-r0) (37/42) Installing icu-libs (78.1-r0) (38/42) Installing simdjson (4.6.9-r0) (39/42) Installing simdutf (9.1.0-r0) (40/42) Installing nodejs (24.18.1-r2) (41/42) Installing pnpm (11.25.0-r0) (42/42) Installing .makedepends-gitea (20260906.063722) Executing busybox-1.38.0-r4.trigger Executing ca-certificates-20260611-r0.trigger OK: 777.8 MiB in 149 packages >>> gitea: Cleaning up srcdir >>> gitea: Cleaning up pkgdir >>> gitea: Cleaning up tmpdir >>> gitea: Fetching https://distfiles.alpinelinux.org/distfiles/edge/gitea-1.27.3.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) wget: server returned error: HTTP/1.1 404 Not Found >>> gitea: Fetching gitea-1.27.3.tar.gz::https://dl.gitea.com/gitea/1.27.3/gitea-src-1.27.3.tar.gz Connecting to dl.gitea.com (172.67.75.17:443) saving to '/var/cache/distfiles/edge/gitea-1.27.3.tar.gz.part' gitea-1.27.3.tar.gz. 73% |*********************** | 48.6M 0:00:00 ETA gitea-1.27.3.tar.gz. 100% |********************************| 66.6M 0:00:00 ETA '/var/cache/distfiles/edge/gitea-1.27.3.tar.gz.part' saved /var/cache/distfiles/edge/gitea-1.27.3.tar.gz: OK /home/buildozer/aports/community/gitea/gitea.initd: OK /home/buildozer/aports/community/gitea/gitea.ini: OK /home/buildozer/aports/community/gitea/go-1.27-fix-tests.patch: OK >>> gitea: Fetching https://distfiles.alpinelinux.org/distfiles/edge/gitea-1.27.3.tar.gz /var/cache/distfiles/edge/gitea-1.27.3.tar.gz: OK /home/buildozer/aports/community/gitea/gitea.initd: OK /home/buildozer/aports/community/gitea/gitea.ini: OK /home/buildozer/aports/community/gitea/go-1.27-fix-tests.patch: OK >>> gitea: Unpacking /var/cache/distfiles/edge/gitea-1.27.3.tar.gz... >>> gitea: go-1.27-fix-tests.patch patching file modules/avatar/hash_test.go patching file modules/packages/alpine/metadata_test.go patching file Makefile patching file go.mod patching file modules/json/jsonlegacy.go patching file modules/json/jsonv1.go patching file modules/json/jsonv2.go warning: in the working copy of 'options/gitignore/NotepadPP', CRLF will be replaced by LF the next time Git touches it warning: in the working copy of 'tests/gitea-repositories-meta/org26/repo_external_tracker.git/config', CRLF will be replaced by LF the next time Git touches it warning: in the working copy of 'tests/gitea-repositories-meta/org26/repo_external_tracker_alpha.git/config', CRLF will be replaced by LF the next time Git touches it warning: in the working copy of 'tests/gitea-repositories-meta/org26/repo_external_tracker_numeric.git/config', CRLF will be replaced by LF the next time Git touches it Running go generate... main.go build/openapi3gen/convert.go build/openapi3gen/convert_test.go build/openapi3gen/enumscan.go build/openapi3gen/enumscan_test.go cmd/actions.go cmd/admin.go cmd/admin_auth.go cmd/admin_auth_ldap.go cmd/admin_auth_ldap_test.go cmd/admin_auth_oauth.go cmd/admin_auth_oauth_test.go cmd/admin_auth_smtp.go cmd/admin_auth_smtp_test.go cmd/admin_regenerate.go cmd/admin_user.go cmd/admin_user_change_password.go cmd/admin_user_change_password_test.go cmd/admin_user_create.go cmd/admin_user_create_test.go cmd/admin_user_delete.go cmd/admin_user_delete_test.go cmd/admin_user_generate_access_token.go cmd/admin_user_list.go cmd/admin_user_must_change_password.go cmd/admin_user_must_change_password_test.go cmd/cert.go cmd/cert_test.go cmd/config.go cmd/config_test.go cmd/docs.go cmd/doctor.go cmd/doctor_convert.go cmd/doctor_test.go cmd/dump.go cmd/dump_repo.go cmd/embedded.go cmd/generate.go cmd/helper.go cmd/hook.go cmd/hook_test.go cmd/keys.go cmd/mailer.go cmd/main.go cmd/main_test.go cmd/manager.go cmd/manager_logging.go cmd/migrate.go cmd/migrate_storage.go cmd/migrate_storage_test.go cmd/restore_repo.go cmd/serv.go cmd/serv_test.go cmd/web.go cmd/web_acme.go cmd/web_graceful.go cmd/web_https.go cmd/cmdtest/cmd_test.go models/main_test.go models/repo.go models/repo_test.go models/actions/artifact.go models/actions/artifact_test.go models/actions/config.go models/actions/main_test.go models/actions/run.go models/actions/run_attempt.go models/actions/run_attempt_list.go models/actions/run_job.go models/actions/run_job_list.go models/actions/run_job_list_test.go models/actions/run_job_status_test.go models/actions/run_job_summary.go models/actions/run_job_test.go models/actions/run_list.go models/actions/run_list_test.go models/actions/run_test.go models/actions/runner.go models/actions/runner_list.go models/actions/runner_test.go models/actions/runner_token.go models/actions/runner_token_test.go models/actions/schedule.go models/actions/schedule_list.go models/actions/schedule_spec.go models/actions/schedule_spec_list.go models/actions/schedule_spec_test.go models/actions/scoped_workflow.go models/actions/scoped_workflow_test.go models/actions/status.go models/actions/status_test.go models/actions/task.go models/actions/task_list.go models/actions/task_output.go models/actions/task_step.go models/actions/task_test.go models/actions/tasks_version.go models/actions/token_permissions.go models/actions/utils.go models/actions/utils_test.go models/actions/variable.go models/activities/action.go models/activities/action_list.go models/activities/notification.go models/activities/notification_list.go models/activities/repo_activity.go models/activities/statistic.go models/activities/user_heatmap.go models/activities/action_test.go models/activities/main_test.go models/activities/notification_test.go models/activities/user_heatmap_test.go models/admin/task.go models/asymkey/error.go models/asymkey/gpg_key.go models/asymkey/gpg_key_add.go models/asymkey/gpg_key_commit_verification.go models/asymkey/gpg_key_common.go models/asymkey/gpg_key_import.go models/asymkey/gpg_key_list.go models/asymkey/gpg_key_test.go models/asymkey/gpg_key_verify.go models/asymkey/key_display.go models/asymkey/main_test.go models/asymkey/ssh_key.go models/asymkey/ssh_key_authorized_keys.go models/asymkey/ssh_key_authorized_keys_test.go models/asymkey/ssh_key_deploy.go models/asymkey/ssh_key_fingerprint.go models/asymkey/ssh_key_parse.go models/asymkey/ssh_key_principals.go models/asymkey/ssh_key_test.go models/asymkey/ssh_key_verify.go models/auth/access_token.go models/auth/access_token_scope.go models/auth/access_token_scope_test.go models/auth/auth_token.go models/auth/oauth2.go models/auth/oauth2_list.go models/auth/session.go models/auth/source.go models/auth/twofactor.go models/auth/webauthn.go models/auth/access_token_test.go models/auth/main_test.go models/auth/oauth2_test.go models/auth/source_test.go models/auth/twofactor_test.go models/auth/webauthn_test.go models/avatars/avatar.go models/avatars/avatar_test.go models/avatars/main_test.go models/db/collation.go models/db/common.go models/db/conn.go models/db/conn_test.go models/db/consistency.go models/db/context.go models/db/context_committer_test.go models/db/convert.go models/db/driver_postgresschema.go models/db/driver_sqlite_modernc.go models/db/engine.go models/db/engine_dump.go models/db/engine_hook.go models/db/engine_init.go models/db/error.go models/db/index.go models/db/iterate.go models/db/list.go models/db/log.go models/db/name.go models/db/search.go models/db/sequence.go models/db/context_test.go models/db/engine_test.go models/db/index_test.go models/db/iterate_test.go models/db/list_test.go models/db/main_test.go models/db/install/db.go models/db/paginator/main_test.go models/db/paginator/paginator.go models/db/paginator/paginator_test.go models/dbfs/dbfile.go models/dbfs/dbfs.go models/dbfs/dbfs_test.go models/dbfs/main_test.go models/git/branch.go models/git/branch_list.go models/git/commit_status.go models/git/commit_status_summary.go models/git/lfs.go models/git/lfs_lock.go models/git/lfs_lock_list.go models/git/lfs_lock_test.go models/git/protected_branch.go models/git/protected_branch_list.go models/git/protected_branch_list_test.go models/git/protected_branch_test.go models/git/protected_tag.go models/git/branch_test.go models/git/commit_status_test.go models/git/lfs_test.go models/git/main_test.go models/git/protected_tag_test.go models/gituser/avatar_stack.go models/gituser/gituser.go models/issues/assignees.go models/issues/comment.go models/issues/comment_code.go models/issues/comment_list.go models/issues/content_history.go models/issues/dependency.go models/issues/issue.go models/issues/issue_index.go models/issues/issue_label.go models/issues/issue_list.go models/issues/issue_lock.go models/issues/issue_pin.go models/issues/issue_project.go models/issues/issue_search.go models/issues/issue_stats.go models/issues/issue_update.go models/issues/issue_user.go models/issues/issue_watch.go models/issues/issue_xref.go models/issues/label.go models/issues/milestone.go models/issues/milestone_list.go models/issues/pull.go models/issues/pull_list.go models/issues/reaction.go models/issues/review.go models/issues/review_list.go models/issues/stopwatch.go models/issues/tracked_time.go models/issues/assignees_test.go models/issues/comment_test.go models/issues/content_history_test.go models/issues/dependency_test.go models/issues/issue_label_test.go models/issues/issue_list_test.go models/issues/issue_project_multi_test.go models/issues/issue_test.go models/issues/issue_update_test.go models/issues/issue_user_test.go models/issues/issue_watch_test.go models/issues/issue_xref_test.go models/issues/label_test.go models/issues/main_test.go models/issues/milestone_test.go models/issues/pull_list_test.go models/issues/pull_test.go models/issues/review_test.go models/issues/stopwatch_test.go models/issues/tracked_time_test.go models/migrations/migrations.go models/migrations/migrations_test.go models/migrations/base/db.go models/migrations/base/db_test.go models/migrations/base/hash.go models/migrations/migrationtest/tests.go models/migrations/v1_10/v100.go models/migrations/v1_10/v101.go models/migrations/v1_10/v88.go models/migrations/v1_10/v89.go models/migrations/v1_10/v90.go models/migrations/v1_10/v91.go models/migrations/v1_10/v92.go models/migrations/v1_10/v93.go models/migrations/v1_10/v94.go models/migrations/v1_10/v95.go models/migrations/v1_10/v96.go models/migrations/v1_10/v97.go models/migrations/v1_10/v98.go models/migrations/v1_10/v99.go models/migrations/v1_11/v102.go models/migrations/v1_11/v103.go models/migrations/v1_11/v104.go models/migrations/v1_11/v105.go models/migrations/v1_11/v106.go models/migrations/v1_11/v107.go models/migrations/v1_11/v108.go models/migrations/v1_11/v109.go models/migrations/v1_11/v110.go models/migrations/v1_11/v111.go models/migrations/v1_11/v112.go models/migrations/v1_11/v113.go models/migrations/v1_11/v114.go models/migrations/v1_11/v115.go models/migrations/v1_11/v116.go models/migrations/v1_12/v117.go models/migrations/v1_12/v118.go models/migrations/v1_12/v119.go models/migrations/v1_12/v120.go models/migrations/v1_12/v121.go models/migrations/v1_12/v122.go models/migrations/v1_12/v123.go models/migrations/v1_12/v124.go models/migrations/v1_12/v125.go models/migrations/v1_12/v126.go models/migrations/v1_12/v127.go models/migrations/v1_12/v128.go models/migrations/v1_12/v129.go models/migrations/v1_12/v130.go models/migrations/v1_12/v131.go models/migrations/v1_12/v132.go models/migrations/v1_12/v133.go models/migrations/v1_12/v134.go models/migrations/v1_12/v135.go models/migrations/v1_12/v136.go models/migrations/v1_12/v137.go models/migrations/v1_12/v138.go models/migrations/v1_12/v139.go models/migrations/v1_13/v140.go models/migrations/v1_13/v141.go models/migrations/v1_13/v142.go models/migrations/v1_13/v143.go models/migrations/v1_13/v144.go models/migrations/v1_13/v145.go models/migrations/v1_13/v146.go models/migrations/v1_13/v147.go models/migrations/v1_13/v148.go models/migrations/v1_13/v149.go models/migrations/v1_13/v150.go models/migrations/v1_13/v151.go models/migrations/v1_13/v152.go models/migrations/v1_13/v153.go models/migrations/v1_13/v154.go models/migrations/v1_14/main_test.go models/migrations/v1_14/v155.go models/migrations/v1_14/v156.go models/migrations/v1_14/v157.go models/migrations/v1_14/v158.go models/migrations/v1_14/v159.go models/migrations/v1_14/v160.go models/migrations/v1_14/v161.go models/migrations/v1_14/v162.go models/migrations/v1_14/v163.go models/migrations/v1_14/v164.go models/migrations/v1_14/v165.go models/migrations/v1_14/v166.go models/migrations/v1_14/v167.go models/migrations/v1_14/v168.go models/migrations/v1_14/v169.go models/migrations/v1_14/v170.go models/migrations/v1_14/v171.go models/migrations/v1_14/v172.go models/migrations/v1_14/v173.go models/migrations/v1_14/v174.go models/migrations/v1_14/v175.go models/migrations/v1_14/v176.go models/migrations/v1_14/v176_test.go models/migrations/v1_14/v177.go models/migrations/v1_14/v177_test.go models/migrations/v1_15/main_test.go models/migrations/v1_15/v178.go models/migrations/v1_15/v179.go models/migrations/v1_15/v180.go models/migrations/v1_15/v181.go models/migrations/v1_15/v181_test.go models/migrations/v1_15/v182.go models/migrations/v1_15/v182_test.go models/migrations/v1_15/v183.go models/migrations/v1_15/v184.go models/migrations/v1_15/v185.go models/migrations/v1_15/v186.go models/migrations/v1_15/v187.go models/migrations/v1_15/v188.go models/migrations/v1_16/main_test.go models/migrations/v1_16/v189.go models/migrations/v1_16/v189_test.go models/migrations/v1_16/v190.go models/migrations/v1_16/v191.go models/migrations/v1_16/v192.go models/migrations/v1_16/v193.go models/migrations/v1_16/v193_test.go models/migrations/v1_16/v194.go models/migrations/v1_16/v195.go models/migrations/v1_16/v195_test.go models/migrations/v1_16/v196.go models/migrations/v1_16/v197.go models/migrations/v1_16/v198.go models/migrations/v1_16/v199.go models/migrations/v1_16/v200.go models/migrations/v1_16/v201.go models/migrations/v1_16/v202.go models/migrations/v1_16/v203.go models/migrations/v1_16/v204.go models/migrations/v1_16/v205.go models/migrations/v1_16/v206.go models/migrations/v1_16/v207.go models/migrations/v1_16/v208.go models/migrations/v1_16/v209.go models/migrations/v1_16/v210.go models/migrations/v1_16/v210_test.go models/migrations/v1_17/main_test.go models/migrations/v1_17/v211.go models/migrations/v1_17/v212.go models/migrations/v1_17/v213.go models/migrations/v1_17/v214.go models/migrations/v1_17/v215.go models/migrations/v1_17/v216.go models/migrations/v1_17/v217.go models/migrations/v1_17/v218.go models/migrations/v1_17/v219.go models/migrations/v1_17/v220.go models/migrations/v1_17/v221.go models/migrations/v1_17/v221_test.go models/migrations/v1_17/v222.go models/migrations/v1_17/v223.go models/migrations/v1_18/main_test.go models/migrations/v1_18/v224.go models/migrations/v1_18/v225.go models/migrations/v1_18/v226.go models/migrations/v1_18/v227.go models/migrations/v1_18/v228.go models/migrations/v1_18/v229.go models/migrations/v1_18/v229_test.go models/migrations/v1_18/v230.go models/migrations/v1_18/v230_test.go models/migrations/v1_19/main_test.go models/migrations/v1_19/v231.go models/migrations/v1_19/v232.go models/migrations/v1_19/v233.go models/migrations/v1_19/v233_test.go models/migrations/v1_19/v234.go models/migrations/v1_19/v235.go models/migrations/v1_19/v236.go models/migrations/v1_19/v237.go models/migrations/v1_19/v238.go models/migrations/v1_19/v239.go models/migrations/v1_19/v240.go models/migrations/v1_19/v241.go models/migrations/v1_19/v242.go models/migrations/v1_19/v243.go models/migrations/v1_20/main_test.go models/migrations/v1_20/v244.go models/migrations/v1_20/v245.go models/migrations/v1_20/v246.go models/migrations/v1_20/v247.go models/migrations/v1_20/v248.go models/migrations/v1_20/v249.go models/migrations/v1_20/v250.go models/migrations/v1_20/v251.go models/migrations/v1_20/v252.go models/migrations/v1_20/v253.go models/migrations/v1_20/v254.go models/migrations/v1_20/v255.go models/migrations/v1_20/v256.go models/migrations/v1_20/v257.go models/migrations/v1_20/v258.go models/migrations/v1_20/v259.go models/migrations/v1_20/v259_test.go models/migrations/v1_21/main_test.go models/migrations/v1_21/v260.go models/migrations/v1_21/v261.go models/migrations/v1_21/v262.go models/migrations/v1_21/v263.go models/migrations/v1_21/v264.go models/migrations/v1_21/v265.go models/migrations/v1_21/v266.go models/migrations/v1_21/v267.go models/migrations/v1_21/v268.go models/migrations/v1_21/v269.go models/migrations/v1_21/v270.go models/migrations/v1_21/v271.go models/migrations/v1_21/v272.go models/migrations/v1_21/v273.go models/migrations/v1_21/v274.go models/migrations/v1_21/v275.go models/migrations/v1_21/v276.go models/migrations/v1_21/v277.go models/migrations/v1_21/v278.go models/migrations/v1_21/v279.go models/migrations/v1_22/main_test.go models/migrations/v1_22/v280.go models/migrations/v1_22/v281.go models/migrations/v1_22/v282.go models/migrations/v1_22/v283.go models/migrations/v1_22/v283_test.go models/migrations/v1_22/v284.go models/migrations/v1_22/v285.go models/migrations/v1_22/v286.go models/migrations/v1_22/v286_test.go models/migrations/v1_22/v287.go models/migrations/v1_22/v287_test.go models/migrations/v1_22/v288.go models/migrations/v1_22/v289.go models/migrations/v1_22/v290.go models/migrations/v1_22/v291.go models/migrations/v1_22/v292.go models/migrations/v1_22/v293.go models/migrations/v1_22/v293_test.go models/migrations/v1_22/v294.go models/migrations/v1_22/v294_test.go models/migrations/v1_22/v295.go models/migrations/v1_22/v296.go models/migrations/v1_22/v297.go models/migrations/v1_22/v298.go models/migrations/v1_23/main_test.go models/migrations/v1_23/v299.go models/migrations/v1_23/v300.go models/migrations/v1_23/v301.go models/migrations/v1_23/v302.go models/migrations/v1_23/v302_test.go models/migrations/v1_23/v303.go models/migrations/v1_23/v304.go models/migrations/v1_23/v304_test.go models/migrations/v1_23/v305.go models/migrations/v1_23/v306.go models/migrations/v1_23/v307.go models/migrations/v1_23/v308.go models/migrations/v1_23/v309.go models/migrations/v1_23/v310.go models/migrations/v1_23/v311.go models/migrations/v1_24/v312.go models/migrations/v1_24/v313.go models/migrations/v1_24/v314.go models/migrations/v1_24/v315.go models/migrations/v1_24/v316.go models/migrations/v1_24/v317.go models/migrations/v1_24/v318.go models/migrations/v1_24/v319.go models/migrations/v1_24/v320.go models/migrations/v1_25/main_test.go models/migrations/v1_25/v321.go models/migrations/v1_25/v321_test.go models/migrations/v1_25/v322.go models/migrations/v1_25/v322_test.go models/migrations/v1_26/main_test.go models/migrations/v1_26/v323.go models/migrations/v1_26/v324.go models/migrations/v1_26/v325.go models/migrations/v1_26/v325_test.go models/migrations/v1_26/v326.go models/migrations/v1_26/v326_test.go models/migrations/v1_26/v327.go models/migrations/v1_26/v327_test.go models/migrations/v1_26/v328.go models/migrations/v1_26/v329.go models/migrations/v1_26/v329_test.go models/migrations/v1_26/v330.go models/migrations/v1_27/main_test.go models/migrations/v1_27/v331.go models/migrations/v1_27/v331_test.go models/migrations/v1_27/v332.go models/migrations/v1_27/v333.go models/migrations/v1_27/v333_test.go models/migrations/v1_27/v334.go models/migrations/v1_27/v334_test.go models/migrations/v1_27/v335.go models/migrations/v1_27/v336.go models/migrations/v1_27/v337.go models/migrations/v1_27/v338.go models/migrations/v1_27/v338_test.go models/migrations/v1_27/v339.go models/migrations/v1_27/v339_test.go models/migrations/v1_27/v340.go models/migrations/v1_27/v341.go models/migrations/v1_27/v341_test.go models/migrations/v1_27/v342.go models/migrations/v1_6/v70.go models/migrations/v1_6/v71.go models/migrations/v1_6/v72.go models/migrations/v1_7/v73.go models/migrations/v1_7/v74.go models/migrations/v1_7/v75.go models/migrations/v1_8/v76.go models/migrations/v1_8/v77.go models/migrations/v1_8/v78.go models/migrations/v1_8/v79.go models/migrations/v1_8/v80.go models/migrations/v1_8/v81.go models/migrations/v1_9/v82.go models/migrations/v1_9/v83.go models/migrations/v1_9/v84.go models/migrations/v1_9/v85.go models/migrations/v1_9/v86.go models/migrations/v1_9/v87.go models/organization/org.go models/organization/org_list.go models/organization/org_user.go models/organization/org_worktime.go models/organization/team.go models/organization/team_invite.go models/organization/team_list.go models/organization/team_repo.go models/organization/team_unit.go models/organization/team_user.go models/organization/main_test.go models/organization/org_list_test.go models/organization/org_test.go models/organization/org_user_test.go models/organization/team_invite_test.go models/organization/team_list_test.go models/organization/team_repo_test.go models/organization/team_test.go models/packages/descriptor.go models/packages/package.go models/packages/package_blob.go models/packages/package_blob_test.go models/packages/package_blob_upload.go models/packages/package_cleanup_rule.go models/packages/package_file.go models/packages/package_property.go models/packages/package_version.go models/packages/package_test.go models/packages/alpine/search.go models/packages/arch/search.go models/packages/conan/references.go models/packages/conan/search.go models/packages/conda/search.go models/packages/container/search.go models/packages/cran/search.go models/packages/debian/search.go models/packages/nuget/search.go models/packages/rpm/search.go models/perm/access_mode.go models/perm/access_mode_test.go models/perm/access/access.go models/perm/access/actions_repo_permission_test.go models/perm/access/repo_permission.go models/perm/access/repo_permission_test.go models/perm/access/access_test.go models/perm/access/main_test.go models/project/column.go models/project/column_test.go models/project/issue.go models/project/main_test.go models/project/project.go models/project/project_test.go models/project/template.go models/pull/automerge.go models/pull/review_state.go models/renderhelper/commit_checker.go models/renderhelper/main_test.go models/renderhelper/repo_comment.go models/renderhelper/repo_comment_test.go models/renderhelper/repo_file.go models/renderhelper/repo_file_test.go models/renderhelper/repo_wiki.go models/renderhelper/repo_wiki_test.go models/renderhelper/simple_document.go models/renderhelper/simple_document_test.go models/repo/archive_test.go models/repo/archiver.go models/repo/attachment.go models/repo/avatar.go models/repo/avatar_test.go models/repo/collaboration.go models/repo/fork.go models/repo/git.go models/repo/issue.go models/repo/language_stats.go models/repo/license.go models/repo/mirror.go models/repo/org_repo.go models/repo/pull_request_default.go models/repo/pull_request_default_test.go models/repo/pushmirror.go models/repo/redirect.go models/repo/release.go models/repo/release_test.go models/repo/repo.go models/repo/repo_indexer.go models/repo/repo_list.go models/repo/repo_test.go models/repo/repo_unit.go models/repo/repo_unit_actions.go models/repo/repo_unit_actions_test.go models/repo/repo_unit_test.go models/repo/search.go models/repo/star.go models/repo/topic.go models/repo/transfer.go models/repo/update.go models/repo/upload.go models/repo/user_repo.go models/repo/watch.go models/repo/wiki.go models/repo/attachment_test.go models/repo/collaboration_test.go models/repo/fork_test.go models/repo/main_test.go models/repo/pushmirror_test.go models/repo/redirect_test.go models/repo/repo_list_test.go models/repo/star_test.go models/repo/topic_test.go models/repo/user_repo_test.go models/repo/watch_test.go models/repo/wiki_test.go models/secret/main_test.go models/secret/secret.go models/secret/secret_test.go models/shared/types/ownertype.go models/system/appstate.go models/system/notice.go models/system/setting.go models/system/main_test.go models/system/notice_test.go models/system/setting_test.go models/unit/unit.go models/unit/unit_test.go models/unittest/consistency.go models/unittest/fixtures.go models/unittest/fixtures_loader.go models/unittest/fscopy.go models/unittest/mock_http.go models/unittest/reflection.go models/unittest/testdb.go models/unittest/unit_tests.go models/unittest/fixtures_test.go models/user/avatar.go models/user/avatar_test.go models/user/badge.go models/user/block.go models/user/email_address.go models/user/error.go models/user/external_login_user.go models/user/follow.go models/user/list.go models/user/must_change_password.go models/user/openid.go models/user/redirect.go models/user/search.go models/user/setting.go models/user/setting_options.go models/user/user.go models/user/user_list.go models/user/user_system.go models/user/user_system_test.go models/user/user_update.go models/user/badge_test.go models/user/email_address_test.go models/user/follow_test.go models/user/main_test.go models/user/openid_test.go models/user/redirect_test.go models/user/setting_test.go models/user/user_test.go models/webhook/hooktask.go models/webhook/main_test.go models/webhook/webhook.go models/webhook/webhook_system.go models/webhook/webhook_system_test.go models/webhook/webhook_test.go modules/actions/artifacts.go modules/actions/artifacts_test.go modules/actions/commit_status_info.go modules/actions/github.go modules/actions/github_test.go modules/actions/log.go modules/actions/scoped_workflows.go modules/actions/scoped_workflows_test.go modules/actions/task_state.go modules/actions/task_state_test.go modules/actions/workflows.go modules/actions/workflows_test.go modules/actions/jobparser/aliases.go modules/actions/jobparser/aliases_test.go modules/actions/jobparser/evaluator.go modules/actions/jobparser/interpeter.go modules/actions/jobparser/jobparser.go modules/actions/jobparser/jobparser_test.go modules/actions/jobparser/model.go modules/actions/jobparser/model_test.go modules/actions/jobparser/roundtrip_test.go modules/actions/jobparser/testdata_test.go modules/actions/jobparser/uses.go modules/actions/jobparser/uses_test.go modules/actions/jobparser/workflow_call.go modules/actions/jobparser/workflow_call_test.go modules/actions/workflowpattern/workflow_pattern.go modules/actions/workflowpattern/workflow_pattern_test.go modules/analyze/code_language.go modules/analyze/generated.go modules/analyze/vendor.go modules/analyze/vendor_test.go modules/assetfs/embed.go modules/assetfs/embed_test.go modules/assetfs/layered.go modules/assetfs/layered_test.go modules/auth/common.go modules/auth/httpauth/httpauth.go modules/auth/httpauth/httpauth_test.go modules/auth/openid/discovery_cache.go modules/auth/openid/discovery_cache_test.go modules/auth/openid/openid.go modules/auth/openid/openid_test.go modules/auth/pam/pam_stub.go modules/auth/password/password.go modules/auth/password/password_test.go modules/auth/password/pwn.go modules/auth/password/hash/argon2.go modules/auth/password/hash/bcrypt.go modules/auth/password/hash/common.go modules/auth/password/hash/dummy.go modules/auth/password/hash/dummy_test.go modules/auth/password/hash/hash.go modules/auth/password/hash/hash_test.go modules/auth/password/hash/pbkdf2.go modules/auth/password/hash/scrypt.go modules/auth/password/hash/setting.go modules/auth/password/hash/setting_test.go modules/auth/password/pwn/pwn.go modules/auth/password/pwn/pwn_test.go modules/auth/webauthn/webauthn.go modules/auth/webauthn/webauthn_test.go modules/avatar/avatar.go modules/avatar/avatar_test.go modules/avatar/hash.go modules/avatar/hash_test.go modules/avatar/identicon/block.go modules/avatar/identicon/colors.go modules/avatar/identicon/identicon.go modules/avatar/identicon/polygon.go modules/badge/badge.go modules/badge/badge_glyph_width.go modules/base/natural_sort.go modules/base/natural_sort_test.go modules/base/tool.go modules/base/tool_test.go modules/cache/cache.go modules/cache/cache_redis.go modules/cache/cache_test.go modules/cache/cache_twoqueue.go modules/cache/context.go modules/cache/context_test.go modules/cache/ephemeral.go modules/cache/string_cache.go modules/cachegroup/cachegroup.go modules/charset/ambiguous.go modules/charset/ambiguous_gen.go modules/charset/ambiguous_gen_test.go modules/charset/charset.go modules/charset/charset_test.go modules/charset/escape.go modules/charset/escape_status.go modules/charset/escape_stream.go modules/charset/escape_test.go modules/charset/invisible_gen.go modules/charset/generate/generate.go modules/commitstatus/commit_status.go modules/commitstatus/commit_status_test.go modules/consts/asymkey.go modules/container/filter.go modules/container/filter_test.go modules/container/set.go modules/container/set_test.go modules/csv/csv.go modules/csv/csv_test.go modules/dump/dumper.go modules/dump/dumper_test.go modules/emoji/emoji.go modules/emoji/emoji_data.go modules/emoji/emoji_test.go modules/eventsource/event.go modules/eventsource/event_test.go modules/eventsource/manager.go modules/eventsource/manager_run.go modules/eventsource/messenger.go modules/fileicon/basic.go modules/fileicon/entry.go modules/fileicon/material.go modules/fileicon/render.go modules/fileicon/material_test.go modules/fileicon/render_test.go modules/generate/generate.go modules/generate/generate_test.go modules/git/blob.go modules/git/blob_nogogit.go modules/git/blob_test.go modules/git/catfile_batch.go modules/git/catfile_batch_command.go modules/git/catfile_batch_legacy.go modules/git/catfile_batch_reader.go modules/git/catfile_batch_test.go modules/git/cmdverb.go modules/git/commit.go modules/git/commit_info.go modules/git/commit_info_nogogit.go modules/git/commit_info_nogogit_test.go modules/git/commit_info_test.go modules/git/commit_message.go modules/git/commit_message_test.go modules/git/commit_reader.go modules/git/commit_sha256_test.go modules/git/commit_submodule.go modules/git/commit_submodule_file.go modules/git/commit_submodule_file_test.go modules/git/commit_test.go modules/git/config.go modules/git/config_submodule.go modules/git/config_submodule_test.go modules/git/config_test.go modules/git/diff.go modules/git/diff_test.go modules/git/error.go modules/git/git.go modules/git/git_test.go modules/git/gpg.go modules/git/grep.go modules/git/grep_test.go modules/git/hook.go modules/git/key.go modules/git/last_commit_cache.go modules/git/last_commit_cache_nogogit.go modules/git/log_name_status_nogogit.go modules/git/notes.go modules/git/notes_nogogit.go modules/git/notes_test.go modules/git/object_format.go modules/git/object_id.go modules/git/object_id_test.go modules/git/parse.go modules/git/parse_treeentry.go modules/git/parse_treeentry_test.go modules/git/redirection.go modules/git/ref.go modules/git/ref_test.go modules/git/remote.go modules/git/repo.go modules/git/repo_base_nogogit.go modules/git/repo_base_nogogit_test.go modules/git/repo_blob.go modules/git/repo_blob_test.go modules/git/repo_branch.go modules/git/repo_branch_nogogit.go modules/git/repo_branch_test.go modules/git/repo_commit.go modules/git/repo_commit_nogogit.go modules/git/repo_commit_test.go modules/git/repo_commitgraph.go modules/git/repo_compare.go modules/git/repo_compare_test.go modules/git/repo_hook.go modules/git/repo_index.go modules/git/repo_object.go modules/git/repo_ref.go modules/git/repo_ref_nogogit.go modules/git/repo_ref_test.go modules/git/repo_stats.go modules/git/repo_stats_test.go modules/git/repo_tag.go modules/git/repo_tag_nogogit.go modules/git/repo_tag_test.go modules/git/repo_test.go modules/git/repo_tree.go modules/git/repo_tree_nogogit.go modules/git/signature.go modules/git/signature_nogogit.go modules/git/signature_test.go modules/git/submodule.go modules/git/submodule_test.go modules/git/tag.go modules/git/tag_test.go modules/git/tree.go modules/git/tree_blob.go modules/git/tree_blob_nogogit.go modules/git/tree_entry.go modules/git/tree_entry_common_test.go modules/git/tree_entry_mode.go modules/git/tree_entry_nogogit.go modules/git/tree_entry_test.go modules/git/tree_nogogit.go modules/git/tree_test.go modules/git/utils.go modules/git/utils_test.go modules/git/attribute/attribute.go modules/git/attribute/attribute_test.go modules/git/attribute/batch.go modules/git/attribute/batch_test.go modules/git/attribute/checker.go modules/git/attribute/checker_test.go modules/git/attribute/main_test.go modules/git/foreachref/format.go modules/git/foreachref/parser.go modules/git/foreachref/format_test.go modules/git/foreachref/parser_test.go modules/git/gitcmd/command.go modules/git/gitcmd/command_test.go modules/git/gitcmd/context.go modules/git/gitcmd/env.go modules/git/gitcmd/error.go modules/git/gitcmd/error_test.go modules/git/gitcmd/pipe.go modules/git/internal/cmdarg.go modules/git/languagestats/language_stats.go modules/git/languagestats/language_stats_nogogit.go modules/git/languagestats/language_stats_test.go modules/git/languagestats/main_test.go modules/git/pipeline/catfile.go modules/git/pipeline/lfs_common.go modules/git/pipeline/lfs_nogogit.go modules/git/pipeline/lfs_test.go modules/git/pipeline/main_test.go modules/git/pipeline/namerev.go modules/git/pipeline/revlist.go modules/git/url/url.go modules/git/url/url_test.go modules/gitrepo/archive.go modules/gitrepo/blame.go modules/gitrepo/blame_sha256_test.go modules/gitrepo/blame_test.go modules/gitrepo/branch.go modules/gitrepo/cat_file.go modules/gitrepo/clone.go modules/gitrepo/command.go modules/gitrepo/commit.go modules/gitrepo/commit_file.go modules/gitrepo/commit_file_test.go modules/gitrepo/commit_test.go modules/gitrepo/commitgraph.go modules/gitrepo/compare.go modules/gitrepo/compare_test.go modules/gitrepo/config.go modules/gitrepo/diff.go modules/gitrepo/fetch.go modules/gitrepo/fsck.go modules/gitrepo/gitrepo.go modules/gitrepo/hooks.go modules/gitrepo/hooks_test.go modules/gitrepo/main_test.go modules/gitrepo/merge.go modules/gitrepo/merge_tree.go modules/gitrepo/merge_tree_test.go modules/gitrepo/push.go modules/gitrepo/ref.go modules/gitrepo/remote.go modules/gitrepo/repo_lock.go modules/gitrepo/signing.go modules/gitrepo/size.go modules/gitrepo/tag.go modules/gitrepo/url.go modules/gitrepo/walk_nogogit.go modules/glob/glob.go modules/glob/glob_test.go modules/globallock/globallock.go modules/globallock/globallock_test.go modules/globallock/locker.go modules/globallock/locker_test.go modules/globallock/memory_locker.go modules/globallock/redis_locker.go modules/graceful/context.go modules/graceful/manager.go modules/graceful/manager_common.go modules/graceful/manager_unix.go modules/graceful/net_unix.go modules/graceful/restart_unix.go modules/graceful/server.go modules/graceful/server_hooks.go modules/graceful/server_http.go modules/graceful/releasereopen/releasereopen.go modules/graceful/releasereopen/releasereopen_test.go modules/gtprof/event.go modules/gtprof/gtprof.go modules/gtprof/trace.go modules/gtprof/trace_builtin.go modules/gtprof/trace_const.go modules/gtprof/trace_test.go modules/hcaptcha/error.go modules/hcaptcha/hcaptcha.go modules/hcaptcha/hcaptcha_test.go modules/highlight/highlight.go modules/highlight/highlight_test.go modules/highlight/lexerdetect.go modules/highlight/lexerdetect_test.go modules/hostmatcher/hostmatcher.go modules/hostmatcher/hostmatcher_test.go modules/hostmatcher/http.go modules/htmlutil/html.go modules/htmlutil/html_test.go modules/httpcache/httpcache.go modules/httpcache/httpcache_test.go modules/httplib/content_disposition.go modules/httplib/content_disposition_test.go modules/httplib/request.go modules/httplib/serve.go modules/httplib/serve_test.go modules/httplib/url.go modules/httplib/url_test.go modules/indexer/indexer.go modules/indexer/code/git.go modules/indexer/code/indexer.go modules/indexer/code/indexer_test.go modules/indexer/code/search.go modules/indexer/code/bleve/bleve.go modules/indexer/code/bleve/bleve_test.go modules/indexer/code/bleve/code_token.go modules/indexer/code/bleve/token/path/path.go modules/indexer/code/bleve/token/path/path_test.go modules/indexer/code/elasticsearch/elasticsearch.go modules/indexer/code/elasticsearch/elasticsearch_test.go modules/indexer/code/gitgrep/gitgrep.go modules/indexer/code/gitgrep/gitgrep_test.go modules/indexer/code/internal/indexer.go modules/indexer/code/internal/model.go modules/indexer/code/internal/util.go modules/indexer/internal/base32.go modules/indexer/internal/indexer.go modules/indexer/internal/paginator.go modules/indexer/internal/bleve/batch.go modules/indexer/internal/bleve/indexer.go modules/indexer/internal/bleve/query.go modules/indexer/internal/bleve/util.go modules/indexer/internal/bleve/util_test.go modules/indexer/internal/db/indexer.go modules/indexer/internal/elasticsearch/indexer.go modules/indexer/internal/elasticsearch/indexer_test.go modules/indexer/internal/elasticsearch/query.go modules/indexer/internal/elasticsearch/types.go modules/indexer/internal/elasticsearch/util.go modules/indexer/internal/meilisearch/filter.go modules/indexer/internal/meilisearch/indexer.go modules/indexer/internal/meilisearch/util.go modules/indexer/issues/dboptions.go modules/indexer/issues/indexer.go modules/indexer/issues/indexer_test.go modules/indexer/issues/util.go modules/indexer/issues/bleve/bleve.go modules/indexer/issues/bleve/bleve_test.go modules/indexer/issues/bleve/camelcase_keep_whole.go modules/indexer/issues/db/db.go modules/indexer/issues/db/options.go modules/indexer/issues/elasticsearch/elasticsearch.go modules/indexer/issues/elasticsearch/elasticsearch_test.go modules/indexer/issues/internal/indexer.go modules/indexer/issues/internal/model.go modules/indexer/issues/internal/tests/tests.go modules/indexer/issues/meilisearch/meilisearch.go modules/indexer/issues/meilisearch/meilisearch_test.go modules/indexer/stats/db.go modules/indexer/stats/indexer.go modules/indexer/stats/indexer_test.go modules/indexer/stats/queue.go modules/issue/template/template.go modules/issue/template/template_test.go modules/issue/template/unmarshal.go modules/json/json.go modules/json/json_test.go modules/json/jsonv2.go modules/label/label.go modules/label/parser.go modules/label/parser_test.go modules/lfs/client.go modules/lfs/client_test.go modules/lfs/content_store.go modules/lfs/endpoint.go modules/lfs/endpoint_test.go modules/lfs/filesystem_client.go modules/lfs/http_client.go modules/lfs/http_client_test.go modules/lfs/pointer.go modules/lfs/pointer_scanner_nogogit.go modules/lfs/pointer_test.go modules/lfs/shared.go modules/lfs/transferadapter.go modules/lfs/transferadapter_test.go modules/lfstransfer/logger.go modules/lfstransfer/main.go modules/lfstransfer/backend/backend.go modules/lfstransfer/backend/lock.go modules/lfstransfer/backend/util.go modules/lfstransfer/backend/util_test.go modules/log/color.go modules/log/color_console.go modules/log/color_console_other.go modules/log/color_router.go modules/log/event_format.go modules/log/event_format_test.go modules/log/event_writer.go modules/log/event_writer_base.go modules/log/event_writer_conn.go modules/log/event_writer_conn_test.go modules/log/event_writer_console.go modules/log/event_writer_file.go modules/log/flags.go modules/log/flags_test.go modules/log/init.go modules/log/level.go modules/log/level_test.go modules/log/logger.go modules/log/logger_global.go modules/log/logger_impl.go modules/log/logger_test.go modules/log/manager.go modules/log/manager_test.go modules/log/misc.go modules/log/stack.go modules/markup/camo.go modules/markup/camo_test.go modules/markup/html.go modules/markup/html_codepreview.go modules/markup/html_commit.go modules/markup/html_email.go modules/markup/html_emoji.go modules/markup/html_internal_test.go modules/markup/html_issue.go modules/markup/html_link.go modules/markup/html_mention.go modules/markup/html_node.go modules/markup/html_node_test.go modules/markup/render.go modules/markup/render_helper.go modules/markup/render_link.go modules/markup/render_link_test.go modules/markup/render_test.go modules/markup/renderer.go modules/markup/sanitizer.go modules/markup/sanitizer_custom.go modules/markup/sanitizer_default.go modules/markup/sanitizer_default_test.go modules/markup/sanitizer_description.go modules/markup/sanitizer_description_test.go modules/markup/html_codepreview_test.go modules/markup/html_issue_test.go modules/markup/html_test.go modules/markup/html_toc_test.go modules/markup/main_test.go modules/markup/common/footnote.go modules/markup/common/footnote_test.go modules/markup/common/linkify.go modules/markup/console/console.go modules/markup/console/console_test.go modules/markup/csv/csv.go modules/markup/csv/csv_test.go modules/markup/external/external.go modules/markup/external/external_test.go modules/markup/external/frontend.go modules/markup/internal/finalprocessor.go modules/markup/internal/internal_test.go modules/markup/internal/renderinternal.go modules/markup/jupyter/jupyter.go modules/markup/jupyter/jupyter_test.go modules/markup/markdown/ast.go modules/markup/markdown/convertyaml.go modules/markup/markdown/goldmark.go modules/markup/markdown/main_test.go modules/markup/markdown/markdown.go modules/markup/markdown/markdown_math_test.go modules/markup/markdown/meta.go modules/markup/markdown/meta_test.go modules/markup/markdown/renderconfig.go modules/markup/markdown/renderconfig_test.go modules/markup/markdown/transform_blockquote.go modules/markup/markdown/transform_codeblock.go modules/markup/markdown/transform_codespan.go modules/markup/markdown/transform_list.go modules/markup/markdown/markdown_attention_test.go modules/markup/markdown/markdown_benchmark_test.go modules/markup/markdown/markdown_test.go modules/markup/markdown/math/block_node.go modules/markup/markdown/math/block_parser.go modules/markup/markdown/math/block_renderer.go modules/markup/markdown/math/inline_node.go modules/markup/markdown/math/inline_parser.go modules/markup/markdown/math/inline_renderer.go modules/markup/markdown/math/math.go modules/markup/mdstripper/mdstripper.go modules/markup/mdstripper/mdstripper_test.go modules/markup/orgmode/orgmode.go modules/markup/orgmode/orgmode_test.go modules/mcaptcha/mcaptcha.go modules/metrics/collector.go modules/migration/comment.go modules/migration/downloader.go modules/migration/error.go modules/migration/file_format.go modules/migration/file_format_test.go modules/migration/issue.go modules/migration/label.go modules/migration/messenger.go modules/migration/milestone.go modules/migration/null_downloader.go modules/migration/options.go modules/migration/pullrequest.go modules/migration/reaction.go modules/migration/release.go modules/migration/repo.go modules/migration/retry_downloader.go modules/migration/review.go modules/migration/schemas_dynamic.go modules/migration/uploader.go modules/nosql/leveldb.go modules/nosql/manager.go modules/nosql/manager_leveldb.go modules/nosql/manager_redis.go modules/nosql/manager_redis_test.go modules/nosql/redis.go modules/nosql/redis_test.go modules/optional/option.go modules/optional/serialization.go modules/optional/option_test.go modules/optional/serialization_test.go modules/options/base.go modules/options/options_dynamic.go modules/packages/content_store.go modules/packages/filelist.go modules/packages/hashed_buffer.go modules/packages/hashed_buffer_test.go modules/packages/multi_hasher.go modules/packages/multi_hasher_test.go modules/packages/alpine/metadata.go modules/packages/alpine/metadata_test.go modules/packages/arch/metadata.go modules/packages/arch/metadata_test.go modules/packages/cargo/parser.go modules/packages/cargo/parser_test.go modules/packages/chef/metadata.go modules/packages/chef/metadata_test.go modules/packages/composer/metadata.go modules/packages/composer/metadata_test.go modules/packages/conan/conanfile_parser.go modules/packages/conan/conanfile_parser_test.go modules/packages/conan/conaninfo_parser.go modules/packages/conan/conaninfo_parser_test.go modules/packages/conan/metadata.go modules/packages/conan/reference.go modules/packages/conan/reference_test.go modules/packages/conda/metadata.go modules/packages/conda/metadata_test.go modules/packages/container/const.go modules/packages/container/metadata.go modules/packages/container/metadata_test.go modules/packages/container/helm/helm.go modules/packages/cran/metadata.go modules/packages/cran/metadata_test.go modules/packages/debian/metadata.go modules/packages/debian/metadata_test.go modules/packages/goproxy/metadata.go modules/packages/goproxy/metadata_test.go modules/packages/helm/metadata.go modules/packages/maven/metadata.go modules/packages/maven/metadata_test.go modules/packages/npm/creator.go modules/packages/npm/creator_test.go modules/packages/npm/metadata.go modules/packages/nuget/metadata.go modules/packages/nuget/metadata_test.go modules/packages/nuget/symbol_extractor.go modules/packages/nuget/symbol_extractor_test.go modules/packages/pub/metadata.go modules/packages/pub/metadata_test.go modules/packages/pypi/metadata.go modules/packages/rpm/metadata.go modules/packages/rpm/metadata_test.go modules/packages/rubygems/marshal.go modules/packages/rubygems/marshal_test.go modules/packages/rubygems/metadata.go modules/packages/rubygems/metadata_test.go modules/packages/swift/metadata.go modules/packages/swift/metadata_test.go modules/packages/terraform/lock.go modules/packages/terraform/state.go modules/packages/vagrant/metadata.go modules/packages/vagrant/metadata_test.go modules/paginator/paginator.go modules/paginator/paginator_test.go modules/pprof/pprof.go modules/private/actions.go modules/private/hook.go modules/private/internal.go modules/private/internal_test.go modules/private/key.go modules/private/mail.go modules/private/manager.go modules/private/pushoptions.go modules/private/pushoptions_test.go modules/private/request.go modules/private/restore_repo.go modules/private/serv.go modules/process/context.go modules/process/error.go modules/process/manager.go modules/process/manager_exec.go modules/process/manager_stacktraces.go modules/process/manager_test.go modules/process/manager_unix.go modules/process/process.go modules/proxy/proxy.go modules/proxyprotocol/conn.go modules/proxyprotocol/errors.go modules/proxyprotocol/listener.go modules/proxyprotocol/util.go modules/public/manifest.go modules/public/manifest_test.go modules/public/mime_types.go modules/public/public.go modules/public/public_dynamic.go modules/public/public_test.go modules/public/vitedev.go modules/queue/backoff.go modules/queue/base.go modules/queue/base_channel.go modules/queue/base_channel_test.go modules/queue/base_dummy.go modules/queue/base_levelqueue.go modules/queue/base_levelqueue_common.go modules/queue/base_levelqueue_test.go modules/queue/base_levelqueue_unique.go modules/queue/base_redis.go modules/queue/base_redis_test.go modules/queue/base_test.go modules/queue/config.go modules/queue/manager.go modules/queue/manager_test.go modules/queue/queue.go modules/queue/testhelper.go modules/queue/workergroup.go modules/queue/workerqueue.go modules/queue/workerqueue_test.go modules/queue/lqinternal/lqinternal.go modules/recaptcha/recaptcha.go modules/references/references.go modules/references/references_test.go modules/regexplru/regexplru.go modules/regexplru/regexplru_test.go modules/repository/branch.go modules/repository/branch_test.go modules/repository/commits.go modules/repository/commits_test.go modules/repository/create.go modules/repository/create_test.go modules/repository/delete.go modules/repository/env.go modules/repository/fork.go modules/repository/fork_test.go modules/repository/init.go modules/repository/init_test.go modules/repository/license.go modules/repository/license_test.go modules/repository/main_test.go modules/repository/push.go modules/repository/repo.go modules/repository/repo_test.go modules/repository/temp.go modules/reqctx/datastore.go modules/secret/secret.go modules/secret/secret_test.go modules/session/db.go modules/session/key.go modules/session/mem.go modules/session/redis.go modules/session/store.go modules/session/virtual.go modules/setting/actions.go modules/setting/actions_test.go modules/setting/admin.go modules/setting/api.go modules/setting/asset_dynamic.go modules/setting/attachment.go modules/setting/attachment_test.go modules/setting/cache.go modules/setting/camo.go modules/setting/config.go modules/setting/config_env.go modules/setting/config_env_test.go modules/setting/config_option_instance.go modules/setting/config_provider.go modules/setting/config_provider_test.go modules/setting/cors.go modules/setting/cron.go modules/setting/cron_test.go modules/setting/database.go modules/setting/federation.go modules/setting/git.go modules/setting/git_test.go modules/setting/gloabl_lock.go modules/setting/glob.go modules/setting/global.go modules/setting/global_lock_test.go modules/setting/highlight.go modules/setting/i18n.go modules/setting/incoming_email.go modules/setting/indexer.go modules/setting/indexer_test.go modules/setting/lfs.go modules/setting/lfs_test.go modules/setting/log.go modules/setting/log_test.go modules/setting/mailer.go modules/setting/mailer_test.go modules/setting/markup.go modules/setting/markup_test.go modules/setting/metrics.go modules/setting/migrations.go modules/setting/mime_type_map.go modules/setting/mirror.go modules/setting/oauth2.go modules/setting/oauth2_test.go modules/setting/other.go modules/setting/packages.go modules/setting/packages_test.go modules/setting/path.go modules/setting/path_test.go modules/setting/picture.go modules/setting/project.go modules/setting/proxy.go modules/setting/queue.go modules/setting/repository.go modules/setting/repository_archive.go modules/setting/repository_archive_test.go modules/setting/repository_test.go modules/setting/security.go modules/setting/security_test.go modules/setting/server.go modules/setting/service.go modules/setting/service_test.go modules/setting/session.go modules/setting/setting.go modules/setting/ssh.go modules/setting/storage.go modules/setting/storage_test.go modules/setting/task.go modules/setting/testenv.go modules/setting/time.go modules/setting/ui.go modules/setting/webhook.go modules/setting/config/getter.go modules/setting/config/value.go modules/sitemap/sitemap.go modules/sitemap/sitemap_test.go modules/ssh/init.go modules/ssh/ssh.go modules/ssh/ssh_graceful.go modules/ssh/ssh_test.go modules/storage/azureblob.go modules/storage/azureblob_test.go modules/storage/helper.go modules/storage/helper_test.go modules/storage/local.go modules/storage/local_test.go modules/storage/minio.go modules/storage/minio_test.go modules/storage/storage.go modules/storage/storage_test.go modules/structs/activity.go modules/structs/admin_user.go modules/structs/attachment.go modules/structs/cron.go modules/structs/doc.go modules/structs/fork.go modules/structs/git_blob.go modules/structs/git_hook.go modules/structs/hook.go modules/structs/hook_test.go modules/structs/issue.go modules/structs/issue_comment.go modules/structs/issue_label.go modules/structs/issue_milestone.go modules/structs/issue_reaction.go modules/structs/issue_stopwatch.go modules/structs/issue_test.go modules/structs/issue_tracked_time.go modules/structs/lfs_lock.go modules/structs/mirror.go modules/structs/miscellaneous.go modules/structs/nodeinfo.go modules/structs/notifications.go modules/structs/org.go modules/structs/org_member.go modules/structs/org_team.go modules/structs/package.go modules/structs/project.go modules/structs/pull.go modules/structs/pull_review.go modules/structs/release.go modules/structs/repo.go modules/structs/repo_actions.go modules/structs/repo_branch.go modules/structs/repo_collaborator.go modules/structs/repo_commit.go modules/structs/repo_compare.go modules/structs/repo_file.go modules/structs/repo_key.go modules/structs/repo_note.go modules/structs/repo_refs.go modules/structs/repo_tag.go modules/structs/repo_topic.go modules/structs/repo_tree.go modules/structs/repo_watch.go modules/structs/repo_wiki.go modules/structs/secret.go modules/structs/settings.go modules/structs/status.go modules/structs/task.go modules/structs/token.go modules/structs/user.go modules/structs/user_app.go modules/structs/user_email.go modules/structs/user_gpgkey.go modules/structs/user_key.go modules/structs/variable.go modules/structs/visible_type.go modules/svg/processor.go modules/svg/processor_test.go modules/svg/svg.go modules/svg/svg_test.go modules/system/appstate.go modules/system/appstate_test.go modules/system/db.go modules/system/item_runtime.go modules/tailmsg/talimsg.go modules/tempdir/tempdir.go modules/tempdir/tempdir_test.go modules/templates/base.go modules/templates/helper.go modules/templates/helper_test.go modules/templates/htmlrenderer.go modules/templates/htmlrenderer_test.go modules/templates/mail.go modules/templates/page.go modules/templates/templates_dynamic.go modules/templates/util_actions.go modules/templates/util_avatar.go modules/templates/util_date.go modules/templates/util_date_test.go modules/templates/util_dict.go modules/templates/util_format.go modules/templates/util_format_test.go modules/templates/util_json.go modules/templates/util_misc.go modules/templates/util_render.go modules/templates/util_render_comment.go modules/templates/util_render_comment_test.go modules/templates/util_render_test.go modules/templates/util_slice.go modules/templates/util_string.go modules/templates/util_test.go modules/templates/eval/eval.go modules/templates/eval/eval_test.go modules/templates/scopedtmpl/scopedtmpl.go modules/templates/scopedtmpl/scopedtmpl_test.go modules/templates/vars/vars.go modules/templates/vars/vars_test.go modules/test/logchecker.go modules/test/logchecker_test.go modules/test/utils.go modules/testlogger/testlogger.go modules/timeutil/since.go modules/timeutil/since_test.go modules/timeutil/timestamp.go modules/timeutil/timestampnano.go modules/translation/mock.go modules/translation/translation.go modules/translation/translation_test.go modules/translation/i18n/format.go modules/translation/i18n/i18n.go modules/translation/i18n/i18n_test.go modules/translation/i18n/localestore.go modules/turnstile/turnstile.go modules/turnstile/turnstile_test.go modules/typesniffer/typesniffer.go modules/typesniffer/typesniffer_test.go modules/updatechecker/update_checker.go modules/uri/uri.go modules/uri/uri_test.go modules/user/user.go modules/user/user_test.go modules/util/buffer.go modules/util/color.go modules/util/color_test.go modules/util/diff_slice_test.go modules/util/error.go modules/util/error_test.go modules/util/file_unix.go modules/util/file_unix_test.go modules/util/io.go modules/util/io_test.go modules/util/keypair.go modules/util/keypair_test.go modules/util/legacy.go modules/util/legacy_test.go modules/util/map.go modules/util/map_test.go modules/util/pack.go modules/util/pack_test.go modules/util/paginate.go modules/util/paginate_test.go modules/util/path.go modules/util/path_test.go modules/util/remove.go modules/util/runtime.go modules/util/runtime_test.go modules/util/sanitize.go modules/util/sanitize_test.go modules/util/sec_to_time.go modules/util/sec_to_time_test.go modules/util/shellquote.go modules/util/shellquote_test.go modules/util/slice.go modules/util/slice_test.go modules/util/string.go modules/util/string_test.go modules/util/sync.go modules/util/sync_test.go modules/util/time_str.go modules/util/time_str_test.go modules/util/timer.go modules/util/timer_test.go modules/util/truncate.go modules/util/truncate_test.go modules/util/url.go modules/util/util.go modules/util/util_test.go modules/util/filebuffer/file_backed_buffer.go modules/util/filebuffer/file_backed_buffer_test.go modules/util/rotatingfilewriter/writer.go modules/util/rotatingfilewriter/writer_test.go modules/validation/binding.go modules/validation/binding_test.go modules/validation/glob_pattern_test.go modules/validation/helpers.go modules/validation/helpers_test.go modules/validation/refname_test.go modules/validation/regex_pattern_test.go modules/validation/validurl_test.go modules/web/handler.go modules/web/routemock.go modules/web/routemock_test.go modules/web/router.go modules/web/router_combo.go modules/web/router_path.go modules/web/router_test.go modules/web/middleware/binding.go modules/web/middleware/cookie.go modules/web/middleware/data.go modules/web/middleware/flash.go modules/web/middleware/locale.go modules/web/middleware/locale_test.go modules/web/routing/context.go modules/web/routing/funcinfo.go modules/web/routing/funcinfo_test.go modules/web/routing/logger.go modules/web/routing/logger_manager.go modules/web/routing/requestinfo.go modules/web/routing/requestrecord.go modules/web/types/premiddleware.go modules/web/types/response.go modules/webhook/events.go modules/webhook/type.go modules/zstd/option.go modules/zstd/zstd.go modules/zstd/zstd_test.go routers/init.go routers/api/actions/actions.go routers/api/actions/artifact.pb.go routers/api/actions/artifacts.go routers/api/actions/artifacts_chunks.go routers/api/actions/artifacts_utils.go routers/api/actions/artifactsv4.go routers/api/actions/job_summary.go routers/api/actions/ping/ping.go routers/api/actions/ping/ping_test.go routers/api/actions/runner/interceptor.go routers/api/actions/runner/runner.go routers/api/actions/runner/runner_test.go routers/api/packages/api.go routers/api/packages/auth.go routers/api/packages/alpine/alpine.go routers/api/packages/arch/arch.go routers/api/packages/cargo/cargo.go routers/api/packages/chef/auth.go routers/api/packages/chef/chef.go routers/api/packages/composer/api.go routers/api/packages/composer/composer.go routers/api/packages/conan/conan.go routers/api/packages/conan/search.go routers/api/packages/conda/conda.go routers/api/packages/container/blob.go routers/api/packages/container/container.go routers/api/packages/container/errors.go routers/api/packages/container/manifest.go routers/api/packages/cran/cran.go routers/api/packages/debian/debian.go routers/api/packages/generic/generic.go routers/api/packages/generic/generic_test.go routers/api/packages/goproxy/goproxy.go routers/api/packages/helm/helm.go routers/api/packages/helper/helper.go routers/api/packages/maven/api.go routers/api/packages/maven/maven.go routers/api/packages/maven/maven_test.go routers/api/packages/npm/api.go routers/api/packages/npm/api_test.go routers/api/packages/npm/npm.go routers/api/packages/nuget/api_v2.go routers/api/packages/nuget/api_v3.go routers/api/packages/nuget/auth.go routers/api/packages/nuget/links.go routers/api/packages/nuget/nuget.go routers/api/packages/pub/pub.go routers/api/packages/pypi/pypi.go routers/api/packages/pypi/pypi_test.go routers/api/packages/rpm/rpm.go routers/api/packages/rubygems/rubygems.go routers/api/packages/rubygems/rubygems_test.go routers/api/packages/swift/swift.go routers/api/packages/terraform/terraform.go routers/api/packages/terraform/terraform_test.go routers/api/packages/vagrant/vagrant.go routers/api/v1/api.go routers/api/v1/activitypub/person.go routers/api/v1/admin/action.go routers/api/v1/admin/adopt.go routers/api/v1/admin/cron.go routers/api/v1/admin/email.go routers/api/v1/admin/hooks.go routers/api/v1/admin/org.go routers/api/v1/admin/repo.go routers/api/v1/admin/runners.go routers/api/v1/admin/user.go routers/api/v1/admin/user_badge.go routers/api/v1/misc/gitignore.go routers/api/v1/misc/label_templates.go routers/api/v1/misc/licenses.go routers/api/v1/misc/markup.go routers/api/v1/misc/markup_test.go routers/api/v1/misc/signing.go routers/api/v1/misc/version.go routers/api/v1/notify/notifications.go routers/api/v1/notify/repo.go routers/api/v1/notify/threads.go routers/api/v1/notify/user.go routers/api/v1/org/action.go routers/api/v1/org/avatar.go routers/api/v1/org/block.go routers/api/v1/org/hook.go routers/api/v1/org/label.go routers/api/v1/org/member.go routers/api/v1/org/org.go routers/api/v1/org/team.go routers/api/v1/packages/package.go routers/api/v1/repo/action.go routers/api/v1/repo/actions_run.go routers/api/v1/repo/avatar.go routers/api/v1/repo/blob.go routers/api/v1/repo/branch.go routers/api/v1/repo/collaborators.go routers/api/v1/repo/commits.go routers/api/v1/repo/compare.go routers/api/v1/repo/download.go routers/api/v1/repo/file.go routers/api/v1/repo/fork.go routers/api/v1/repo/git_hook.go routers/api/v1/repo/git_ref.go routers/api/v1/repo/hook.go routers/api/v1/repo/hook_test.go routers/api/v1/repo/issue.go routers/api/v1/repo/issue_assignee.go routers/api/v1/repo/issue_attachment.go routers/api/v1/repo/issue_comment.go routers/api/v1/repo/issue_comment_attachment.go routers/api/v1/repo/issue_dependency.go routers/api/v1/repo/issue_label.go routers/api/v1/repo/issue_lock.go routers/api/v1/repo/issue_pin.go routers/api/v1/repo/issue_reaction.go routers/api/v1/repo/issue_stopwatch.go routers/api/v1/repo/issue_subscription.go routers/api/v1/repo/issue_tracked_time.go routers/api/v1/repo/key.go routers/api/v1/repo/label.go routers/api/v1/repo/language.go routers/api/v1/repo/license.go routers/api/v1/repo/main_test.go routers/api/v1/repo/migrate.go routers/api/v1/repo/milestone.go routers/api/v1/repo/mirror.go routers/api/v1/repo/mirror_test.go routers/api/v1/repo/notes.go routers/api/v1/repo/patch.go routers/api/v1/repo/pull.go routers/api/v1/repo/pull_review.go routers/api/v1/repo/release.go routers/api/v1/repo/release_attachment.go routers/api/v1/repo/release_tags.go routers/api/v1/repo/repo.go routers/api/v1/repo/repo_test.go routers/api/v1/repo/star.go routers/api/v1/repo/status.go routers/api/v1/repo/subscriber.go routers/api/v1/repo/tag.go routers/api/v1/repo/teams.go routers/api/v1/repo/topic.go routers/api/v1/repo/transfer.go routers/api/v1/repo/tree.go routers/api/v1/repo/wiki.go routers/api/v1/settings/settings.go routers/api/v1/shared/action.go routers/api/v1/shared/block.go routers/api/v1/shared/runners.go routers/api/v1/swagger/action.go routers/api/v1/swagger/activity.go routers/api/v1/swagger/app.go routers/api/v1/swagger/cron.go routers/api/v1/swagger/issue.go routers/api/v1/swagger/key.go routers/api/v1/swagger/misc.go routers/api/v1/swagger/nodeinfo.go routers/api/v1/swagger/notify.go routers/api/v1/swagger/options.go routers/api/v1/swagger/org.go routers/api/v1/swagger/package.go routers/api/v1/swagger/repo.go routers/api/v1/swagger/settings.go routers/api/v1/swagger/user.go routers/api/v1/token/token.go routers/api/v1/user/action.go routers/api/v1/user/app.go routers/api/v1/user/avatar.go routers/api/v1/user/block.go routers/api/v1/user/email.go routers/api/v1/user/follower.go routers/api/v1/user/gpg_key.go routers/api/v1/user/helper.go routers/api/v1/user/hook.go routers/api/v1/user/key.go routers/api/v1/user/repo.go routers/api/v1/user/runners.go routers/api/v1/user/settings.go routers/api/v1/user/star.go routers/api/v1/user/user.go routers/api/v1/user/watch.go routers/api/v1/utils/git.go routers/api/v1/utils/hook.go routers/api/v1/utils/hook_test.go routers/api/v1/utils/main_test.go routers/api/v1/utils/page.go routers/api/v1/utils/sort.go routers/api/v1/utils/sort_test.go routers/common/actions.go routers/common/auth.go routers/common/blockexpensive.go routers/common/blockexpensive_test.go routers/common/codesearch.go routers/common/compare.go routers/common/compare_test.go routers/common/db.go routers/common/deadline.go routers/common/errpage.go routers/common/errpage_test.go routers/common/issue_filter.go routers/common/issue_filter_test.go routers/common/lfs.go routers/common/maintenancemode.go routers/common/markup.go routers/common/middleware.go routers/common/pagetmpl.go routers/common/qos.go routers/common/qos_test.go routers/common/redirect.go routers/common/redirect_test.go routers/common/serve.go routers/install/install.go routers/install/routes.go routers/install/routes_test.go routers/private/actions.go routers/private/hook_post_receive.go routers/private/hook_post_receive_test.go routers/private/hook_pre_receive.go routers/private/hook_pre_receive_test.go routers/private/hook_proc_receive.go routers/private/hook_verification.go routers/private/hook_verification_test.go routers/private/internal.go routers/private/internal_repo.go routers/private/key.go routers/private/mail.go routers/private/main_test.go routers/private/manager.go routers/private/manager_process.go routers/private/manager_unix.go routers/private/restore_repo.go routers/private/serv.go routers/private/ssh_log.go routers/utils/utils.go routers/utils/utils_test.go routers/web/base.go routers/web/githttp.go routers/web/goget.go routers/web/home.go routers/web/metrics.go routers/web/nodeinfo.go routers/web/passkey.go routers/web/swagger_json.go routers/web/web.go routers/web/webfinger.go routers/web/admin/admin.go routers/web/admin/admin_test.go routers/web/admin/applications.go routers/web/admin/auths.go routers/web/admin/badges.go routers/web/admin/config.go routers/web/admin/diagnosis.go routers/web/admin/emails.go routers/web/admin/hooks.go routers/web/admin/main_test.go routers/web/admin/notice.go routers/web/admin/orgs.go routers/web/admin/packages.go routers/web/admin/perftrace.go routers/web/admin/queue.go routers/web/admin/queue_tester.go routers/web/admin/repos.go routers/web/admin/stacktrace.go routers/web/admin/users.go routers/web/admin/users_test.go routers/web/auth/2fa.go routers/web/auth/auth.go routers/web/auth/auth_test.go routers/web/auth/linkaccount.go routers/web/auth/main_test.go routers/web/auth/oauth.go routers/web/auth/oauth2_provider.go routers/web/auth/oauth_signin_sync.go routers/web/auth/oauth_test.go routers/web/auth/openid.go routers/web/auth/password.go routers/web/auth/webauthn.go routers/web/devtest/devtest.go routers/web/devtest/mail_preview.go routers/web/devtest/mock_actions.go routers/web/events/events.go routers/web/explore/code.go routers/web/explore/org.go routers/web/explore/repo.go routers/web/explore/topic.go routers/web/explore/user.go routers/web/feed/branch.go routers/web/feed/convert.go routers/web/feed/file.go routers/web/feed/profile.go routers/web/feed/release.go routers/web/feed/render.go routers/web/feed/repo.go routers/web/feed/profile_test.go routers/web/healthcheck/check.go routers/web/misc/markup.go routers/web/misc/misc.go routers/web/misc/swagger.go routers/web/misc/webtheme.go routers/web/org/block.go routers/web/org/home.go routers/web/org/members.go routers/web/org/mention.go routers/web/org/org.go routers/web/org/org_labels.go routers/web/org/projects.go routers/web/org/setting.go routers/web/org/setting_oauth2.go routers/web/org/setting_packages.go routers/web/org/teams.go routers/web/org/worktime.go routers/web/org/main_test.go routers/web/org/projects_test.go routers/web/repo/activity.go routers/web/repo/attachment.go routers/web/repo/blame.go routers/web/repo/branch.go routers/web/repo/code_frequency.go routers/web/repo/commit.go routers/web/repo/common_recentbranches.go routers/web/repo/compare.go routers/web/repo/compare_test.go routers/web/repo/contributors.go routers/web/repo/download.go routers/web/repo/editor.go routers/web/repo/editor_apply_patch.go routers/web/repo/editor_cherry_pick.go routers/web/repo/editor_error.go routers/web/repo/editor_fork.go routers/web/repo/editor_preview.go routers/web/repo/editor_test.go routers/web/repo/editor_uploader.go routers/web/repo/editor_util.go routers/web/repo/fork.go routers/web/repo/githttp.go routers/web/repo/githttp_test.go routers/web/repo/helper.go routers/web/repo/issue.go routers/web/repo/issue_comment.go routers/web/repo/issue_content_history.go routers/web/repo/issue_dependency.go routers/web/repo/issue_label.go routers/web/repo/issue_label_test.go routers/web/repo/issue_list.go routers/web/repo/issue_lock.go routers/web/repo/issue_new.go routers/web/repo/issue_page_meta.go routers/web/repo/issue_pin.go routers/web/repo/issue_poster.go routers/web/repo/issue_stopwatch.go routers/web/repo/issue_suggestions.go routers/web/repo/issue_test.go routers/web/repo/issue_timetrack.go routers/web/repo/issue_view.go routers/web/repo/issue_watch.go routers/web/repo/main_test.go routers/web/repo/mention.go routers/web/repo/middlewares.go routers/web/repo/middlewares_test.go routers/web/repo/migrate.go routers/web/repo/milestone.go routers/web/repo/packages.go routers/web/repo/projects.go routers/web/repo/projects_test.go routers/web/repo/pull.go routers/web/repo/pull_merge_box.go routers/web/repo/pull_merge_form.go routers/web/repo/pull_review.go routers/web/repo/pull_review_test.go routers/web/repo/recent_commits.go routers/web/repo/release.go routers/web/repo/release_test.go routers/web/repo/render.go routers/web/repo/repo.go routers/web/repo/search.go routers/web/repo/star.go routers/web/repo/topic.go routers/web/repo/transfer.go routers/web/repo/treelist.go routers/web/repo/treelist_test.go routers/web/repo/view.go routers/web/repo/view_file.go routers/web/repo/view_home.go routers/web/repo/view_home_test.go routers/web/repo/view_readme.go routers/web/repo/view_readme_test.go routers/web/repo/view_test.go routers/web/repo/watch.go routers/web/repo/webgit.go routers/web/repo/wiki.go routers/web/repo/wiki_test.go routers/web/repo/actions/actions.go routers/web/repo/actions/actions_test.go routers/web/repo/actions/badge.go routers/web/repo/actions/main_test.go routers/web/repo/actions/view.go routers/web/repo/actions/view_test.go routers/web/repo/setting/actions.go routers/web/repo/setting/avatar.go routers/web/repo/setting/collaboration.go routers/web/repo/setting/default_branch.go routers/web/repo/setting/deploy_key.go routers/web/repo/setting/git_hooks.go routers/web/repo/setting/lfs.go routers/web/repo/setting/main_test.go routers/web/repo/setting/protected_branch.go routers/web/repo/setting/protected_tag.go routers/web/repo/setting/public_access.go routers/web/repo/setting/secrets.go routers/web/repo/setting/setting.go routers/web/repo/setting/settings_test.go routers/web/repo/setting/webhook.go routers/web/repo/setting/webhook_test.go routers/web/shared/actions/general.go routers/web/shared/actions/runners.go routers/web/shared/actions/scoped_workflows.go routers/web/shared/actions/scoped_workflows_test.go routers/web/shared/actions/variables.go routers/web/shared/issue/issue_label.go routers/web/shared/label/label.go routers/web/shared/mention/mention.go routers/web/shared/packages/packages.go routers/web/shared/project/column.go routers/web/shared/secrets/secrets.go routers/web/shared/user/block.go routers/web/shared/user/header.go routers/web/shared/user/helper.go routers/web/shared/user/helper_test.go routers/web/user/avatar.go routers/web/user/code.go routers/web/user/heatmap.go routers/web/user/home.go routers/web/user/home_test.go routers/web/user/main_test.go routers/web/user/notification.go routers/web/user/notification_test.go routers/web/user/package.go routers/web/user/profile.go routers/web/user/search.go routers/web/user/stop_watch.go routers/web/user/setting/account.go routers/web/user/setting/account_test.go routers/web/user/setting/adopt.go routers/web/user/setting/applications.go routers/web/user/setting/block.go routers/web/user/setting/keys.go routers/web/user/setting/main_test.go routers/web/user/setting/notifications.go routers/web/user/setting/oauth2.go routers/web/user/setting/oauth2_common.go routers/web/user/setting/packages.go routers/web/user/setting/profile.go routers/web/user/setting/settings.go routers/web/user/setting/webhooks.go routers/web/user/setting/security/2fa.go routers/web/user/setting/security/main_test.go routers/web/user/setting/security/openid.go routers/web/user/setting/security/openid_test.go routers/web/user/setting/security/security.go routers/web/user/setting/security/webauthn.go services/actions/approve.go services/actions/approve_test.go services/actions/artifacts.go services/actions/auth.go services/actions/auth_test.go services/actions/cleanup.go services/actions/clear_tasks.go services/actions/clear_tasks_test.go services/actions/commit_status.go services/actions/commit_status_test.go services/actions/concurrency.go services/actions/context.go services/actions/context_test.go services/actions/helper.go services/actions/helper_test.go services/actions/init.go services/actions/init_test.go services/actions/interface.go services/actions/job_emitter.go services/actions/job_emitter_test.go services/actions/notifier.go services/actions/notifier_helper.go services/actions/notifier_helper_test.go services/actions/notify.go services/actions/permission_parser.go services/actions/permission_parser_test.go services/actions/rerun.go services/actions/rerun_test.go services/actions/reusable_workflow.go services/actions/reusable_workflow_test.go services/actions/run.go services/actions/schedule_tasks.go services/actions/schedule_tasks_test.go services/actions/scoped_workflow_cache.go services/actions/task.go services/actions/task_test.go services/actions/variables.go services/actions/workflow.go services/actions/workflow_test.go services/agit/agit.go services/agit/agit_test.go services/asymkey/commit.go services/asymkey/commit_test.go services/asymkey/deploy_key.go services/asymkey/main_test.go services/asymkey/sign.go services/asymkey/sign_test.go services/asymkey/ssh_key.go services/asymkey/ssh_key_authorized_keys.go services/asymkey/ssh_key_authorized_principals.go services/asymkey/ssh_key_principals.go services/asymkey/ssh_key_test.go services/attachment/attachment.go services/attachment/attachment_test.go services/auth/auth.go services/auth/auth_token.go services/auth/auth_token_test.go services/auth/basic.go services/auth/group.go services/auth/httpsign.go services/auth/interface.go services/auth/main_test.go services/auth/oauth2.go services/auth/oauth2_test.go services/auth/reverseproxy.go services/auth/session.go services/auth/signin.go services/auth/source.go services/auth/sspi.go services/auth/sspiauth_posix.go services/auth/sync.go services/auth/source/source_group_sync.go services/auth/source/db/authenticate.go services/auth/source/db/source.go services/auth/source/db/assert_interface_test.go services/auth/source/ldap/security_protocol.go services/auth/source/ldap/source.go services/auth/source/ldap/source_authenticate.go services/auth/source/ldap/source_search.go services/auth/source/ldap/source_sync.go services/auth/source/ldap/util.go services/auth/source/ldap/assert_interface_test.go services/auth/source/oauth2/init.go services/auth/source/oauth2/main_test.go services/auth/source/oauth2/providers.go services/auth/source/oauth2/providers_base.go services/auth/source/oauth2/providers_custom.go services/auth/source/oauth2/providers_openid.go services/auth/source/oauth2/providers_simple.go services/auth/source/oauth2/providers_test.go services/auth/source/oauth2/source.go services/auth/source/oauth2/source_authenticate.go services/auth/source/oauth2/source_callout.go services/auth/source/oauth2/source_name.go services/auth/source/oauth2/source_register.go services/auth/source/oauth2/source_sync.go services/auth/source/oauth2/source_sync_test.go services/auth/source/oauth2/store.go services/auth/source/oauth2/urlmapping.go services/auth/source/oauth2/assert_interface_test.go services/auth/source/pam/source.go services/auth/source/pam/source_authenticate.go services/auth/source/pam/assert_interface_test.go services/auth/source/smtp/auth.go services/auth/source/smtp/source.go services/auth/source/smtp/source_authenticate.go services/auth/source/smtp/assert_interface_test.go services/auth/source/sspi/source.go services/auth/source/sspi/assert_interface_test.go services/automerge/automerge.go services/automerge/notify.go services/automergequeue/automergequeue.go services/context/access_log.go services/context/access_log_test.go services/context/api.go services/context/api_org.go services/context/api_test.go services/context/base.go services/context/base_form.go services/context/base_path.go services/context/base_test.go services/context/captcha.go services/context/context.go services/context/context_cookie.go services/context/context_model.go services/context/context_request.go services/context/context_response.go services/context/context_template.go services/context/context_test.go services/context/org.go services/context/package.go services/context/package_test.go services/context/pagination.go services/context/pagination_test.go services/context/permission.go services/context/private.go services/context/repo.go services/context/repo_test.go services/context/response.go services/context/user.go services/context/utils.go services/context/upload/upload.go services/context/upload/upload_test.go services/contexttest/context_tests.go services/convert/action_test.go services/convert/activity.go services/convert/attachment.go services/convert/convert.go services/convert/git_commit.go services/convert/git_commit_test.go services/convert/issue.go services/convert/issue_comment.go services/convert/issue_test.go services/convert/main_test.go services/convert/mirror.go services/convert/notification.go services/convert/notification_test.go services/convert/package.go services/convert/project.go services/convert/pull.go services/convert/pull_review.go services/convert/pull_review_test.go services/convert/pull_test.go services/convert/release.go services/convert/release_test.go services/convert/repository.go services/convert/status.go services/convert/user.go services/convert/user_test.go services/convert/utils.go services/convert/utils_test.go services/convert/wiki.go services/cron/cron.go services/cron/setting.go services/cron/tasks.go services/cron/tasks_actions.go services/cron/tasks_basic.go services/cron/tasks_extended.go services/cron/tasks_extended_test.go services/cron/tasks_test.go services/doctor/dbconsistency.go services/doctor/dbconsistency_test.go services/doctor/doctor.go services/doctor/lfs.go services/doctor/main_test.go services/doctor/misc.go services/doctor/repository.go services/doctor/storage.go services/externalaccount/user.go services/feed/feed.go services/feed/feed_test.go services/feed/notifier.go services/feed/notifier_test.go services/forms/admin.go services/forms/auth_form.go services/forms/org.go services/forms/package_form.go services/forms/repo_branch_form.go services/forms/repo_form.go services/forms/repo_form_editor.go services/forms/repo_form_test.go services/forms/repo_tag_form.go services/forms/runner.go services/forms/user_form.go services/forms/user_form_auth_openid.go services/forms/user_form_hidden_comments.go services/forms/user_form_test.go services/git/commit.go services/git/compare.go services/gitdiff/csv.go services/gitdiff/csv_test.go services/gitdiff/git_diff_tree.go services/gitdiff/git_diff_tree_test.go services/gitdiff/gitdiff.go services/gitdiff/gitdiff_excerpt.go services/gitdiff/gitdiff_excerpt_test.go services/gitdiff/gitdiff_test.go services/gitdiff/highlightdiff.go services/gitdiff/highlightdiff_test.go services/gitdiff/main_test.go services/gitdiff/submodule.go services/gitdiff/submodule_test.go services/indexer/indexer.go services/indexer/notify.go services/issue/assignee.go services/issue/assignee_test.go services/issue/comments.go services/issue/commit.go services/issue/commit_test.go services/issue/content.go services/issue/issue.go services/issue/issue_test.go services/issue/label.go services/issue/label_test.go services/issue/main_test.go services/issue/milestone.go services/issue/milestone_test.go services/issue/pull.go services/issue/reaction.go services/issue/reaction_test.go services/issue/review_request.go services/issue/status.go services/issue/suggestion.go services/issue/suggestion_test.go services/issue/template.go services/lfs/locks.go services/lfs/server.go services/lfs/server_test.go services/mailer/mail.go services/mailer/mail_comment.go services/mailer/mail_issue.go services/mailer/mail_issue_common.go services/mailer/mail_release.go services/mailer/mail_release_test.go services/mailer/mail_repo.go services/mailer/mail_team_invite.go services/mailer/mail_test.go services/mailer/mail_user.go services/mailer/mail_workflow_run.go services/mailer/mailer.go services/mailer/main_test.go services/mailer/notify.go services/mailer/incoming/incoming.go services/mailer/incoming/incoming_handler.go services/mailer/incoming/incoming_test.go services/mailer/incoming/reply.go services/mailer/incoming/payload/payload.go services/mailer/sender/dummy.go services/mailer/sender/main_test.go services/mailer/sender/message.go services/mailer/sender/message_test.go services/mailer/sender/sender.go services/mailer/sender/sendmail.go services/mailer/sender/smtp.go services/mailer/sender/smtp_auth.go services/mailer/sender/smtp_test.go services/mailer/token/token.go services/markup/main_test.go services/markup/renderhelper.go services/markup/renderhelper_codepreview.go services/markup/renderhelper_codepreview_test.go services/markup/renderhelper_issueicontitle.go services/markup/renderhelper_issueicontitle_test.go services/markup/renderhelper_mention_test.go services/migrations/codebase.go services/migrations/codebase_test.go services/migrations/codecommit.go services/migrations/common.go services/migrations/dump.go services/migrations/error.go services/migrations/git.go services/migrations/gitbucket.go services/migrations/gitea_downloader.go services/migrations/gitea_downloader_test.go services/migrations/gitea_uploader.go services/migrations/gitea_uploader_test.go services/migrations/github.go services/migrations/github_test.go services/migrations/gitlab.go services/migrations/gitlab_test.go services/migrations/gogs.go services/migrations/gogs_test.go services/migrations/http_client.go services/migrations/main_test.go services/migrations/migrate.go services/migrations/migrate_test.go services/migrations/onedev.go services/migrations/onedev_test.go services/migrations/restore.go services/migrations/restore_test.go services/migrations/update.go services/mirror/mirror.go services/mirror/mirror_pull.go services/mirror/mirror_pull_test.go services/mirror/mirror_push.go services/mirror/notifier.go services/mirror/queue.go services/notify/notifier.go services/notify/notify.go services/notify/null.go services/oauth2_provider/access_token.go services/oauth2_provider/additional_scopes_test.go services/oauth2_provider/init.go services/oauth2_provider/jwtsigningkey.go services/oauth2_provider/jwtsigningkey_test.go services/oauth2_provider/token.go services/org/org.go services/org/org_test.go services/org/team.go services/org/team_invite.go services/org/team_test.go services/org/user.go services/org/user_test.go services/packages/auth.go services/packages/package_update.go services/packages/packages.go services/packages/spec.go services/packages/alpine/repository.go services/packages/arch/repository.go services/packages/arch/repository_test.go services/packages/arch/vercmp.go services/packages/arch/vercmp_test.go services/packages/cargo/index.go services/packages/cleanup/cleanup.go services/packages/container/blob_uploader.go services/packages/container/cleanup.go services/packages/container/common.go services/packages/debian/repository.go services/packages/pkgspec/manager.go services/packages/rpm/repository.go services/packages/rpm/sign.go services/packages/terraform/spec.go services/packages/terraform/state.go services/projects/issue.go services/projects/issue_test.go services/projects/main_test.go services/pull/check.go services/pull/check_test.go services/pull/comment.go services/pull/comment_test.go services/pull/commit_status.go services/pull/commit_status_test.go services/pull/edits.go services/pull/lfs.go services/pull/main_test.go services/pull/merge.go services/pull/merge_ff_only.go services/pull/merge_merge.go services/pull/merge_prepare.go services/pull/merge_rebase.go services/pull/merge_squash.go services/pull/merge_test.go services/pull/merge_tree.go services/pull/merge_tree_test.go services/pull/patch.go services/pull/patch_unmerged.go services/pull/protected_branch.go services/pull/pull.go services/pull/pull_test.go services/pull/review.go services/pull/reviewer.go services/pull/temp_repo.go services/pull/update.go services/pull/update_rebase.go services/pull/update_test.go services/pull/review_test.go services/pull/reviewer_test.go services/release/notes.go services/release/notes_test.go services/release/release.go services/release/release_test.go services/release/tag.go services/repository/adopt.go services/repository/adopt_test.go services/repository/avatar.go services/repository/avatar_test.go services/repository/branch.go services/repository/cache.go services/repository/check.go services/repository/collaboration.go services/repository/collaboration_test.go services/repository/commit.go services/repository/contributors_graph.go services/repository/contributors_graph_test.go services/repository/create.go services/repository/create_test.go services/repository/delete.go services/repository/fork.go services/repository/fork_test.go services/repository/generate.go services/repository/generate_test.go services/repository/hooks.go services/repository/init.go services/repository/lfs.go services/repository/license.go services/repository/license_test.go services/repository/main_test.go services/repository/merge_upstream.go services/repository/migrate.go services/repository/push.go services/repository/repo_team.go services/repository/repo_team_test.go services/repository/repository.go services/repository/repository_test.go services/repository/setting.go services/repository/template.go services/repository/transfer.go services/repository/transfer_test.go services/repository/delete_test.go services/repository/lfs_test.go services/repository/archiver/archiver.go services/repository/archiver/archiver_test.go services/repository/commitstatus/commitstatus.go services/repository/files/cherry_pick.go services/repository/files/commit.go services/repository/files/content.go services/repository/files/content_test.go services/repository/files/diff.go services/repository/files/diff_test.go services/repository/files/file.go services/repository/files/file_test.go services/repository/files/patch.go services/repository/files/patch_test.go services/repository/files/temp_repo.go services/repository/files/temp_repo_test.go services/repository/files/tree.go services/repository/files/tree_test.go services/repository/files/update.go services/repository/files/upload.go services/repository/gitgraph/graph.go services/repository/gitgraph/graph_models.go services/repository/gitgraph/graph_test.go services/repository/gitgraph/parser.go services/secrets/secrets.go services/secrets/validation.go services/secrets/validation_test.go services/task/migrate.go services/task/task.go services/uinotification/notify.go services/user/avatar.go services/user/block.go services/user/block_test.go services/user/delete.go services/user/email.go services/user/email_test.go services/user/update.go services/user/update_test.go services/user/user.go services/user/user_test.go services/versioned_migration/migration.go services/webhook/deliver.go services/webhook/deliver_test.go services/webhook/dingtalk.go services/webhook/dingtalk_test.go services/webhook/discord.go services/webhook/discord_test.go services/webhook/feishu.go services/webhook/feishu_test.go services/webhook/general.go services/webhook/general_test.go services/webhook/main_test.go services/webhook/matrix.go services/webhook/matrix_test.go services/webhook/msteams.go services/webhook/msteams_test.go services/webhook/notifier.go services/webhook/packagist.go services/webhook/packagist_test.go services/webhook/payloader.go services/webhook/slack.go services/webhook/slack_test.go services/webhook/telegram.go services/webhook/telegram_test.go services/webhook/webhook.go services/webhook/webhook_test.go services/webhook/wechatwork.go services/webtheme/webtheme.go services/webtheme/webtheme_test.go services/wiki/wiki.go services/wiki/wiki_path.go services/wiki/wiki_test.go tests/test_utils.go tests/fuzz/fuzz_test.go tests/integration/actions_approve_test.go tests/integration/actions_concurrency_test.go tests/integration/actions_concurrent_claim_test.go tests/integration/actions_delete_run_test.go tests/integration/actions_inputs_test.go tests/integration/actions_job_test.go tests/integration/actions_job_token_test.go tests/integration/actions_list_filter_test.go tests/integration/actions_log_finalize_test.go tests/integration/actions_log_test.go tests/integration/actions_rerun_test.go tests/integration/actions_reusable_workflow_test.go tests/integration/actions_route_test.go tests/integration/actions_runner_modify_test.go tests/integration/actions_runner_sort_test.go tests/integration/actions_runner_test.go tests/integration/actions_schedule_test.go tests/integration/actions_scoped_workflow_test.go tests/integration/actions_settings_test.go tests/integration/actions_trigger_test.go tests/integration/actions_variables_test.go tests/integration/admin_config_test.go tests/integration/admin_user_test.go tests/integration/api_actions_artifact_test.go tests/integration/api_actions_artifact_v4_test.go tests/integration/api_actions_permission_test.go tests/integration/api_actions_run_test.go tests/integration/api_actions_runner_test.go tests/integration/api_admin_org_test.go tests/integration/api_admin_test.go tests/integration/api_auth_test.go tests/integration/api_branch_test.go tests/integration/api_comment_attachment_test.go tests/integration/api_comment_test.go tests/integration/api_fork_test.go tests/integration/api_gitignore_templates_test.go tests/integration/api_gpg_keys_test.go tests/integration/api_helper_for_declarative_test.go tests/integration/api_httpsig_test.go tests/integration/api_issue_attachment_test.go tests/integration/api_issue_config_test.go tests/integration/api_issue_dependency_test.go tests/integration/api_issue_label_test.go tests/integration/api_issue_lock_test.go tests/integration/api_issue_milestone_test.go tests/integration/api_issue_pin_test.go tests/integration/api_issue_reaction_test.go tests/integration/api_issue_stopwatch_test.go tests/integration/api_issue_subscription_test.go tests/integration/api_issue_templates_test.go tests/integration/api_issue_test.go tests/integration/api_issue_tracked_time_test.go tests/integration/api_keys_test.go tests/integration/api_label_templates_test.go tests/integration/api_license_templates_test.go tests/integration/api_notification_test.go tests/integration/api_oauth2_apps_test.go tests/integration/api_org_avatar_test.go tests/integration/api_org_test.go tests/integration/api_packages_alpine_test.go tests/integration/api_packages_arch_test.go tests/integration/api_packages_cargo_test.go tests/integration/api_packages_chef_test.go tests/integration/api_packages_composer_test.go tests/integration/api_packages_conan_test.go tests/integration/api_packages_conda_test.go tests/integration/api_packages_container_test.go tests/integration/api_packages_cran_test.go tests/integration/api_packages_debian_test.go tests/integration/api_packages_generic_test.go tests/integration/api_packages_goproxy_test.go tests/integration/api_packages_helm_test.go tests/integration/api_packages_maven_test.go tests/integration/api_packages_npm_test.go tests/integration/api_packages_nuget_test.go tests/integration/api_packages_pub_test.go tests/integration/api_packages_pypi_test.go tests/integration/api_packages_rpm_test.go tests/integration/api_packages_rubygems_test.go tests/integration/api_packages_swift_test.go tests/integration/api_packages_terraform_test.go tests/integration/api_packages_test.go tests/integration/api_packages_vagrant_test.go tests/integration/api_private_serv_test.go tests/integration/api_public_only_test.go tests/integration/api_pull_commits_test.go tests/integration/api_pull_review_test.go tests/integration/api_pull_test.go tests/integration/api_releases_attachment_test.go tests/integration/api_releases_test.go tests/integration/api_repo_archive_test.go tests/integration/api_repo_avatar_test.go tests/integration/api_repo_branch_test.go tests/integration/api_repo_collaborator_test.go tests/integration/api_repo_compare_test.go tests/integration/api_repo_edit_test.go tests/integration/api_repo_file_create_test.go tests/integration/api_repo_file_delete_test.go tests/integration/api_repo_file_diffpatch_test.go tests/integration/api_repo_file_get_test.go tests/integration/api_repo_file_helpers.go tests/integration/api_repo_file_update_test.go tests/integration/api_repo_files_change_test.go tests/integration/api_repo_files_get_test.go tests/integration/api_repo_get_contents_list_test.go tests/integration/api_repo_get_contents_test.go tests/integration/api_repo_git_blobs_test.go tests/integration/api_repo_git_commits_test.go tests/integration/api_repo_git_hook_test.go tests/integration/api_repo_git_notes_test.go tests/integration/api_repo_git_ref_test.go tests/integration/api_repo_git_tags_test.go tests/integration/api_repo_git_trees_test.go tests/integration/api_repo_hook_test.go tests/integration/api_repo_languages_test.go tests/integration/api_repo_lfs_locks_test.go tests/integration/api_repo_lfs_migrate_test.go tests/integration/api_repo_lfs_test.go tests/integration/api_repo_license_test.go tests/integration/api_repo_raw_test.go tests/integration/api_repo_secrets_test.go tests/integration/api_repo_tags_test.go tests/integration/api_repo_teams_test.go tests/integration/api_repo_test.go tests/integration/api_repo_topic_test.go tests/integration/api_repo_variables_test.go tests/integration/api_repository_creation_token_scope_test.go tests/integration/api_settings_test.go tests/integration/api_team_test.go tests/integration/api_team_user_test.go tests/integration/api_token_self_test.go tests/integration/api_token_test.go tests/integration/api_twofa_test.go tests/integration/api_user_avatar_test.go tests/integration/api_user_block_test.go tests/integration/api_user_email_test.go tests/integration/api_user_follow_test.go tests/integration/api_user_heatmap_test.go tests/integration/api_user_info_test.go tests/integration/api_user_org_perm_test.go tests/integration/api_user_orgs_test.go tests/integration/api_user_public_only_test.go tests/integration/api_user_search_test.go tests/integration/api_user_secrets_test.go tests/integration/api_user_star_test.go tests/integration/api_user_update_test.go tests/integration/api_user_variables_test.go tests/integration/api_user_visibility_test.go tests/integration/api_user_watch_test.go tests/integration/api_wiki_test.go tests/integration/attachment_test.go tests/integration/auth_ldap_test.go tests/integration/auth_oauth2_test.go tests/integration/branches_test.go tests/integration/change_default_branch_test.go tests/integration/cmd_keys_test.go tests/integration/compare_test.go tests/integration/config_instance_test.go tests/integration/cors_test.go tests/integration/create_no_session_test.go tests/integration/db_collation_test.go tests/integration/delete_user_test.go tests/integration/download_test.go tests/integration/dump_restore_test.go tests/integration/editor_test.go tests/integration/empty_repo_test.go tests/integration/ephemeral_actions_runner_deletion_test.go tests/integration/eventsource_test.go tests/integration/explore_repos_test.go tests/integration/explore_user_test.go tests/integration/feed_repo_test.go tests/integration/feed_user_test.go tests/integration/git_general_test.go tests/integration/git_helper_for_declarative_test.go tests/integration/git_lfs_ssh_test.go tests/integration/git_misc_test.go tests/integration/git_push_test.go tests/integration/git_smart_http_test.go tests/integration/git_ssh_redirect_test.go tests/integration/goget_test.go tests/integration/gpg_ssh_git_test.go tests/integration/heatmap_test.go tests/integration/html_helper.go tests/integration/incoming_email_test.go tests/integration/integration_test.go tests/integration/issue_label_scope_test.go tests/integration/issue_test.go tests/integration/issue_timetrack_test.go tests/integration/lfs_getobject_test.go tests/integration/lfs_local_endpoint_test.go tests/integration/lfs_view_test.go tests/integration/linguist_test.go tests/integration/links_test.go tests/integration/manual_merge_test.go tests/integration/markup_external_test.go tests/integration/migrate_test.go tests/integration/mirror_pull_test.go tests/integration/mirror_push_test.go tests/integration/nonascii_branches_test.go tests/integration/oauth_avatar_test.go tests/integration/oauth_test.go tests/integration/org_count_test.go tests/integration/org_profile_test.go tests/integration/org_project_test.go tests/integration/org_team_invite_test.go tests/integration/org_test.go tests/integration/packages_service_test.go tests/integration/privateactivity_test.go tests/integration/project_test.go tests/integration/pull_comment_test.go tests/integration/pull_commit_test.go tests/integration/pull_compare_test.go tests/integration/pull_create_test.go tests/integration/pull_diff_test.go tests/integration/pull_merge_test.go tests/integration/pull_review_test.go tests/integration/pull_status_test.go tests/integration/pull_update_test.go tests/integration/release_test.go tests/integration/rename_branch_test.go tests/integration/repo_activity_test.go tests/integration/repo_archive_test.go tests/integration/repo_branch_test.go tests/integration/repo_commits_search_test.go tests/integration/repo_commits_test.go tests/integration/repo_fork_test.go tests/integration/repo_generate_test.go tests/integration/repo_home_token_scope_test.go tests/integration/repo_merge_upstream_test.go tests/integration/repo_migrate_test.go tests/integration/repo_search_test.go tests/integration/repo_tag_test.go tests/integration/repo_test.go tests/integration/repo_topic_test.go tests/integration/repo_visibility_test.go tests/integration/repo_watch_test.go tests/integration/repo_webhook_test.go tests/integration/repofiles_change_test.go tests/integration/session_test.go tests/integration/setting_test.go tests/integration/signin_test.go tests/integration/signout_test.go tests/integration/signup_test.go tests/integration/ssh_key_test.go tests/integration/timetracking_test.go tests/integration/user_avatar_test.go tests/integration/user_settings_test.go tests/integration/user_test.go tests/integration/version_test.go tests/integration/view_test.go tests/integration/webauthn_test.go tests/integration/wiki_test.go tests/integration/workflow_run_api_check_test.go tests/integration/org_worktime_test.go tests/integration/migration-test/migration_test.go tools/lint-go-all.go CGO_ENABLED="0" CGO_CFLAGS="-Os -fstack-clash-protection -Wformat -Werror=format-security -fno-plt -O2 -D_LARGEFILE64_SOURCE" go build -v -buildmode=pie -modcacherw -trimpath -buildvcs=false -tags 'tidb sqlite sqlite_unlock_notify' -ldflags '-s -w -X code.gitea.io/gitea/modules/setting.CustomConf=/etc/gitea/app.ini -X code.gitea.io/gitea/modules/setting.AppWorkPath=/var/lib/gitea/ -X code.gitea.io/gitea/modules/setting.StaticRootPath=/usr/share/webapps/gitea/ -X "main.Version=1.27.3" -X "main.Tags=tidb sqlite sqlite_unlock_notify"' -o gitea internal/goarch internal/unsafeheader internal/byteorder internal/coverage/rtcov internal/godebugs internal/profilerecord internal/asan math/bits internal/msan internal/goos internal/runtime/pprof/label internal/goexperiment internal/trace/tracev2 unicode/utf8 cmp crypto/internal/fips140/alias crypto/internal/constanttime crypto/internal/fips140deps/time unicode/utf16 unicode internal/nettrace encoding log/internal database/sql/internal google.golang.org/protobuf/internal/flags gitea.dev/modules/consts golang.org/x/crypto/cryptobyte/asn1 golang.org/x/crypto/internal/alias gitea.dev/modules/commitstatus github.com/redis/go-redis/v9/auth github.com/lib/pq/pqerror golang.org/x/text/encoding/internal/identifier github.com/lib/pq/oid github.com/lib/pq/internal/pqsql image/color sync/atomic gitea.dev/modules/git/internal golang.org/x/image/math/f64 container/list github.com/klauspost/compress/internal/le vendor/golang.org/x/crypto/internal/alias github.com/Azure/azure-sdk-for-go/sdk/azcore/cloud internal/runtime/atomic internal/runtime/gc internal/abi internal/runtime/math github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/encryption golang.org/x/text/internal/utf8internal vendor/golang.org/x/crypto/cryptobyte/asn1 github.com/klauspost/compress/internal/cpuinfo crypto/internal/fips140deps/byteorder internal/runtime/syscall/linux github.com/Azure/azure-sdk-for-go/sdk/azcore/to golang.org/x/net/html/atom internal/cpu github.com/klauspost/compress/internal/race github.com/ProtonMail/go-crypto/internal/byteutil github.com/cyphar/filepath-securejoin/internal/consts github.com/pjbgf/sha1cd/internal crypto/internal/boring/sig github.com/go-git/go-git/v5/plumbing/color gitea.dev/modules/webhook github.com/pjbgf/sha1cd/ubc gitea.dev/modules/packages/container/helm github.com/pierrec/lz4/v4/internal/lz4errors github.com/bodgit/windows github.com/dsnet/compress/bzip2/internal/sais log/slog/internal github.com/ulikunitz/xz/internal/hash github.com/minio/minlz/internal/race gitea.dev/modules/packages/pypi gitea.dev/modules/cachegroup gitea.dev/modules/indexer github.com/blevesearch/gtreap google.golang.org/grpc/serviceconfig github.com/markbates/going/defaults github.com/aws/smithy-go/endpoints/private/bdd github.com/dsnet/compress/internal golang.org/x/net/internal/iana github.com/zeebo/blake3/internal/alg/hash/hash_avx2 google.golang.org/protobuf/internal/set internal/strconv internal/runtime/sys github.com/zeebo/blake3/internal/alg/compress/compress_sse41 crypto/internal/fips140/subtle golang.org/x/image/internal/safemath github.com/golang/groupcache/lru github.com/SaveTheRbtz/zstd-seekable-format-go/pkg/framecache image/color/palette internal/runtime/exithook crypto/subtle internal/chacha8rand internal/bytealg crypto/internal/fips140deps/cpu internal/runtime/gc/scan math internal/stringslite internal/runtime/cgroup internal/race internal/synctest github.com/blevesearch/go-porterstemmer internal/runtime/maps internal/sync github.com/klauspost/compress runtime iter sync runtime/metrics internal/reflectlite weak maps slices gitea.dev/modules/container errors sort internal/singleflight crypto/internal/fips140cache github.com/minio/minio-go/v7/pkg/kvcache log/slog/internal/buffer github.com/olekukonko/tablewriter/pkg/twcache internal/testlog internal/bisect google.golang.org/protobuf/internal/pragma github.com/aws/smithy-go/sync go.uber.org/zap/internal/pool unique io internal/oserror crypto/internal/entropy/v1.0.0 strconv path encoding/json/internal vendor/golang.org/x/net/dns/dnsmessage gitea.dev/modules/graceful/releasereopen github.com/go-viper/mapstructure/v2/internal/errors math/rand/v2 go.etcd.io/bbolt/errors golang.org/x/crypto/cast5 gitea.dev/modules/auth/pam github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo encoding/json/internal/jsonflags syscall internal/godebug encoding/json/internal/jsonopts container/heap golang.org/x/text/internal/tag github.com/google/flatbuffers/go golang.org/x/text/internal/stringset github.com/beorn7/perks/quantile golang.org/x/crypto/blowfish github.com/x448/float16 github.com/blevesearch/geo/s1 reflect net/netip strings hash bytes crypto/internal/randutil internal/saferio encoding/base64 encoding/base32 github.com/cloudflare/circl/internal/sha3 github.com/aws/smithy-go/transport/http/internal/io github.com/prometheus/client_golang/prometheus/promhttp/internal github.com/bodgit/plumbing hash/crc32 crypto hash/fnv hash/adler32 hash/crc64 hash/maphash github.com/Azure/go-ntlmssp/internal/md4 crypto/internal/fips140deps/godebug math/rand golang.org/x/crypto/md4 github.com/cloudflare/circl/sign github.com/couchbase/gomemcached/internal/flatbuffers/systemevents github.com/microsoft/go-mssqldb/internal/querytext github.com/syndtr/goleveldb/leveldb/comparer golang.org/x/text/transform vendor/golang.org/x/text/transform crypto/internal/impl bufio encoding/pem net/http/internal/ascii html regexp/syntax github.com/gogs/chardet github.com/kballard/go-shellquote github.com/42wim/sshsig/pem github.com/bodgit/sevenzip/internal/util github.com/dsnet/compress/internal/errors golang.org/x/mod/semver encoding/json/internal/jsonwire github.com/aws/smithy-go/io github.com/aws/aws-sdk-go-v2/internal/strings github.com/huandu/xstrings github.com/munnerz/goautoneg crypto/internal/fips140 github.com/microsoft/go-mssqldb/internal/cp github.com/bodgit/sevenzip/internal/pool crypto/internal/fips140/sha3 crypto/internal/fips140/sha512 crypto/internal/fips140/sha256 golang.org/x/text/encoding golang.org/x/text/runes golang.org/x/text/width github.com/dsnet/compress github.com/anmitsu/go-shlex compress/bzip2 image github.com/clipperhouse/uax29/v2/graphemes github.com/emersion/go-imap/utf7 golang.org/x/text/encoding/internal crypto/internal/fips140/hmac crypto/sha3 encoding/json/jsontext golang.org/x/text/encoding/charmap golang.org/x/text/encoding/simplifiedchinese golang.org/x/text/encoding/korean golang.org/x/text/encoding/japanese golang.org/x/text/encoding/unicode golang.org/x/text/encoding/traditionalchinese crypto/internal/fips140/check crypto/internal/fips140hash github.com/clipperhouse/displaywidth internal/syscall/execenv time internal/syscall/unix crypto/internal/fips140/aes crypto/fips140 crypto/internal/fips140/edwards25519/field crypto/internal/fips140/bigmod crypto/internal/fips140/hkdf crypto/internal/fips140/tls12 crypto/internal/fips140/nistec/fiat crypto/internal/fips140/pbkdf2 crypto/internal/fips140/tls13 crypto/tls/internal/fips140tls golang.org/x/image/vp8l golang.org/x/image/vp8 image/internal/imageutil regexp image/jpeg image/draw crypto/internal/fips140/edwards25519 golang.org/x/image/draw context io/fs gitea.dev/modules/tailmsg net/http/internal/httpsfv github.com/klauspost/compress/gzhttp/writer internal/poll github.com/Azure/azure-sdk-for-go/sdk/internal/temporal github.com/aws/smithy-go/ptr github.com/aws/aws-sdk-go-v2/internal/timeconv github.com/hashicorp/golang-lru/v2/internal go.uber.org/zap/buffer golang.org/x/net/internal/httpsfv github.com/go-enry/go-enry/v2/regex mvdan.cc/xurls/v2 github.com/microcosm-cc/bluemonday/css github.com/go-git/go-git/v5/internal/url github.com/hashicorp/golang-lru/v2/simplelru encoding/binary modernc.org/libc/uuid/uuid xorm.io/xorm/names github.com/hashicorp/errwrap go.uber.org/zap/internal/bufferpool internal/fmtsort github.com/goccy/go-json/internal/runtime github.com/modern-go/reflect2 modernc.org/libc/sys/types github.com/blevesearch/bleve/v2/size github.com/go-enry/go-enry/v2/data/rule github.com/go-enry/go-enry/v2/internal/tokenizer go.uber.org/zap/internal/stacktrace github.com/spf13/afero/internal/common internal/filepathlite embed github.com/hashicorp/golang-lru/v2 google.golang.org/protobuf/internal/editiondefaults github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing golang.org/x/net/context github.com/aws/smithy-go/context golang.org/x/sync/semaphore github.com/aws/aws-sdk-go-v2/internal/sdk github.com/go-redsync/redsync/v4/redis github.com/bohde/codel github.com/jbenet/go-context/io crypto/internal/fips140/nistec github.com/go-enry/go-enry/v2/data github.com/go-git/go-git/v5/utils/ioutil os github.com/cespare/xxhash/v2 filippo.io/edwards25519/field github.com/golang/snappy github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/utils github.com/klauspost/compress/internal/snapref vendor/golang.org/x/crypto/internal/poly1305 golang.org/x/crypto/internal/poly1305 github.com/klauspost/compress/zstd/internal/xxhash github.com/zeebo/blake3/internal/utils github.com/pierrec/lz4/v4/internal/xxh32 github.com/RoaringBitmap/roaring/v2/internal golang.org/x/image/bmp golang.org/x/sys/unix github.com/redis/go-redis/v9/internal/hashtag filippo.io/edwards25519 fmt io/ioutil google.golang.org/protobuf/internal/detrand golang.org/x/sys/cpu os/signal github.com/philhofer/fwd internal/sysinfo path/filepath github.com/go-git/go-billy/v5 github.com/klauspost/compress/internal/godebug github.com/mattn/go-runewidth vendor/golang.org/x/sys/cpu go.uber.org/zap/internal/exit github.com/prometheus/procfs/internal/util crypto/internal/sysrand gitea.dev/modules/util/filebuffer net crypto/internal/fips140/drbg github.com/ssor/bom github.com/blakesmith/ar golang.org/x/image/riff github.com/cention-sany/utf7 github.com/klauspost/crc32 golang.org/x/crypto/sha3 golang.org/x/crypto/blake2b golang.org/x/crypto/blake2s golang.org/x/image/webp crypto/internal/fips140only crypto/internal/fips140/aes/gcm crypto/internal/fips140/ecdsa crypto/internal/fips140/ecdh crypto/internal/fips140/mldsa crypto/internal/fips140/ed25519 crypto/internal/fips140/mlkem crypto/internal/fips140/rsa crypto/hkdf crypto/md5 crypto/rc4 crypto/pbkdf2 golang.org/x/crypto/pbkdf2 github.com/cyphar/filepath-securejoin os/exec github.com/go-git/go-billy/v5/helper/polyfill github.com/go-git/go-billy/v5/util github.com/spf13/afero/mem github.com/bmatcuk/doublestar/v4 github.com/olekukonko/tablewriter/pkg/twwidth crypto/cipher github.com/go-git/go-billy/v5/helper/chroot golang.org/x/crypto/argon2 crypto/mlkem crypto/des vendor/golang.org/x/crypto/chacha20 golang.org/x/crypto/chacha20 crypto/internal/boring github.com/ProtonMail/go-crypto/eax crypto/mldsa crypto/internal/rand crypto/sha512 crypto/aes crypto/hmac crypto/sha256 crypto/sha1 net/url log encoding/hex mime math/big vendor/golang.org/x/text/unicode/norm mime/quotedprintable net/http/internal encoding/gob vendor/golang.org/x/net/http2/hpack compress/flate google.golang.org/protobuf/internal/errors go/token google.golang.org/protobuf/internal/version text/tabwriter text/template/parse github.com/syndtr/goleveldb/leveldb/util github.com/syndtr/goleveldb/leveldb/storage github.com/golang-sql/civil github.com/boombuler/barcode gopkg.in/ini.v1 github.com/microsoft/go-mssqldb/aecmk github.com/lib/pq/internal/proto github.com/klauspost/compress/fse github.com/lib/pq/internal/pqtime encoding/xml os/user golang.org/x/text/internal/language golang.org/x/net/html golang.org/x/crypto/scrypt gitea.dev/modules/avatar/identicon runtime/debug runtime/trace flag compress/lzw go.yaml.in/yaml/v4/internal/libyaml golang.org/x/text/unicode/norm github.com/Azure/azure-sdk-for-go/sdk/internal/log github.com/Azure/azure-sdk-for-go/sdk/internal/diag golang.org/x/crypto/ssh/internal/bcrypt_pbkdf github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/crypto google.golang.org/protobuf/encoding/protowire vendor/golang.org/x/crypto/chacha20poly1305 golang.org/x/net/http2/hpack go.yaml.in/yaml/v3 crypto/ecdh gitea.dev/modules/git/foreachref gitea.dev/modules/templates/vars encoding/json/v2 github.com/aymerick/douceur/css github.com/gorilla/css/scanner golang.org/x/sync/errgroup github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/keys dario.cat/mergo github.com/ProtonMail/go-crypto/openpgp/errors github.com/Azure/azure-sdk-for-go/sdk/azcore/log github.com/syndtr/goleveldb/leveldb/cache github.com/syndtr/goleveldb/leveldb/filter github.com/ProtonMail/go-crypto/openpgp/aes/keywrap vendor/golang.org/x/text/unicode/bidi golang.org/x/text/unicode/bidi golang.org/x/crypto/hkdf github.com/boombuler/barcode/utils github.com/ProtonMail/go-crypto/ocb github.com/go-git/go-git/v5/internal/pathutil github.com/go-git/gcfg/token github.com/go-git/gcfg/types github.com/ProtonMail/go-crypto/openpgp/armor gopkg.in/warnings.v0 github.com/aymerick/douceur/parser github.com/go-git/go-git/v5/internal/revision github.com/go-git/go-git/v5/plumbing/filemode golang.org/x/crypto/curve25519 github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/log gitea.dev/modules/user github.com/lib/pq/internal/pqutil image/gif github.com/go-git/go-git/v5/internal/path_util archive/tar github.com/emirpasic/gods/utils github.com/go-git/go-git/v5/utils/merkletrie/noder google.golang.org/protobuf/reflect/protoreflect crypto/hpke github.com/go-git/go-git/v5/utils/trace github.com/go-git/go-git/v5/plumbing/protocol/packp/capability github.com/pquerna/otp/internal github.com/yuin/goldmark/util github.com/ProtonMail/go-crypto/openpgp/internal/algorithm github.com/sergi/go-diff/diffmatchpatch golang.org/x/sys/execabs github.com/kevinburke/ssh_config github.com/lib/pq/internal/pgpass github.com/lib/pq/internal/pgservice github.com/go-git/gcfg/scanner github.com/go-git/go-git/v5/utils/merkletrie/internal/frame github.com/go-git/go-git/v5/plumbing/format/pktline github.com/mattn/go-shellwords github.com/emirpasic/gods/containers github.com/robfig/cron/v3 github.com/boombuler/barcode/qr text/scanner github.com/hashicorp/go-multierror github.com/klauspost/compress/huff0 github.com/ulikunitz/xz/internal/xlog github.com/minio/minio-go/v7/pkg/singleflight github.com/opencontainers/go-digest github.com/go-git/go-git/v5/utils/merkletrie github.com/ProtonMail/go-crypto/openpgp/s2k github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband github.com/opencontainers/image-spec/specs-go github.com/xi2/xz github.com/emirpasic/gods/lists github.com/emirpasic/gods/trees github.com/dlclark/regexp2/v2/syntax github.com/andybalholm/brotli/matchfinder github.com/bodgit/sevenzip/internal/aes7z github.com/bodgit/sevenzip/internal/bcj2 github.com/bodgit/sevenzip/internal/bra github.com/syndtr/goleveldb/leveldb/opt vendor/golang.org/x/text/secure/bidirule github.com/bodgit/sevenzip/internal/bzip2 github.com/bodgit/sevenzip/internal/delta github.com/pierrec/lz4/v4/internal/lz4block github.com/dsnet/compress/internal/prefix github.com/git-lfs/pktline encoding/csv github.com/modern-go/concurrent github.com/blevesearch/geo/r1 github.com/mikelolasagasti/xz github.com/blevesearch/bleve/v2/numeric github.com/mschoch/smat github.com/opencontainers/image-spec/specs-go/v1 github.com/nwaples/rardecode/v2 github.com/stangelandcl/ppmd/internal/h7z go.etcd.io/bbolt/internal/common github.com/blevesearch/bleve/v2/index/scorch/mergeplan github.com/blevesearch/vellum/utf8 testing github.com/klauspost/cpuid/v2 github.com/ulikunitz/xz/lzma github.com/pquerna/otp github.com/blevesearch/snowballstem github.com/couchbase/gomemcached github.com/blevesearch/segment github.com/pkg/errors github.com/davecgh/go-spew/spew github.com/olekukonko/cat github.com/goccy/go-json/internal/errors text/template github.com/blevesearch/snowballstem/english github.com/olekukonko/ll/lx github.com/olekukonko/tablewriter/pkg/twwarp github.com/blevesearch/geo/r2 google.golang.org/protobuf/internal/descopts google.golang.org/protobuf/internal/descfmt google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/encoding/messageset google.golang.org/protobuf/internal/order google.golang.org/protobuf/runtime/protoiface golang.org/x/text/internal/language/compact google.golang.org/protobuf/internal/genid golang.org/x/text/secure/bidirule github.com/pierrec/lz4/v4/internal/lz4stream google.golang.org/protobuf/internal/protolazy github.com/go-git/go-git/v5/utils/diff google.golang.org/protobuf/internal/encoding/text google.golang.org/protobuf/internal/encoding/json github.com/editorconfig/editorconfig-core-go/v2 github.com/blevesearch/vellum/regexp golang.org/x/net/idna github.com/dsnet/compress/bzip2 google.golang.org/protobuf/reflect/protoregistry github.com/go-asn1-ber/asn1-ber github.com/aws/aws-sdk-go-v2/internal/sync/singleflight github.com/aws/smithy-go/internal/sync/singleflight github.com/aws/smithy-go/logging github.com/aws/aws-sdk-go-v2/aws/ratelimit github.com/stangelandcl/ppmd go.etcd.io/bbolt/internal/freelist github.com/andybalholm/brotli/flate github.com/aws/smithy-go/encoding github.com/bodgit/sevenzip/internal/ppmd github.com/aws/smithy-go/middleware github.com/google/go-querystring/query github.com/syndtr/goleveldb/leveldb/errors github.com/google/licenseclassifier/v2 golang.org/x/time/rate github.com/pierrec/lz4/v4 vendor/golang.org/x/net/idna github.com/jonboulle/clockwork github.com/prometheus/procfs/internal/fs go.yaml.in/yaml/v4 github.com/jhillyerd/enmime/v2/internal/coding github.com/caddyserver/certmagic/internal/atomicfile github.com/minio/minio-go/v7/pkg/sse gitea.dev/modules/sitemap github.com/libdns/libdns google.golang.org/protobuf/internal/encoding/defval go.uber.org/multierr github.com/syndtr/goleveldb/leveldb/iterator github.com/syndtr/goleveldb/leveldb/journal golang.org/x/net/bpf go.uber.org/zap/internal/color golang.org/x/text/language github.com/russross/blackfriday/v2 github.com/yuin/goldmark/text google.golang.org/protobuf/proto github.com/bodgit/sevenzip/internal/lz4 github.com/mattn/go-isatty modernc.org/memory github.com/fsnotify/fsnotify/internal github.com/sassoftware/go-rpmutils/fileutil github.com/go-git/go-billy/v5/osfs github.com/blevesearch/mmap-go go.etcd.io/bbolt github.com/caddyserver/certmagic/internal/filedescriptor github.com/yuin/goldmark/ast github.com/niklasfasching/go-org/org github.com/microcosm-cc/bluemonday github.com/sassoftware/go-rpmutils/cpio github.com/mattn/go-colorable compress/zlib github.com/klauspost/compress/flate archive/zip github.com/STARRY-S/zip compress/gzip github.com/aws/aws-sdk-go-v2/internal/context github.com/fsnotify/fsnotify github.com/syndtr/goleveldb/leveldb/memdb github.com/syndtr/goleveldb/leveldb/table github.com/fatih/color github.com/minio/crc64nvme github.com/zeebo/xxh3 github.com/bodgit/sevenzip/internal/lzma github.com/pjbgf/sha1cd github.com/ulikunitz/xz github.com/bodgit/sevenzip/internal/lzma2 github.com/sorairolake/lzip-go github.com/zeebo/blake3/internal/consts github.com/minio/md5-simd github.com/go-git/go-git/v5/utils/sync image/png golang.org/x/text/internal golang.org/x/text/internal/format golang.org/x/text/internal/number golang.org/x/text/encoding/htmlindex golang.org/x/text/internal/colltab github.com/zeebo/blake3/internal/alg/compress/compress_pure golang.org/x/text/internal/catmsg github.com/google/pprof/profile runtime/pprof internal/profile google.golang.org/protobuf/internal/filedesc google.golang.org/protobuf/encoding/prototext gitea.com/go-chi/cache google.golang.org/protobuf/encoding/protodelim golang.org/x/text/cases github.com/syndtr/goleveldb/leveldb golang.org/x/net/html/charset golang.org/x/text/message/catalog github.com/go-git/go-git/v5/plumbing/hash github.com/zeebo/blake3/internal/alg/compress github.com/zeebo/blake3/internal/alg/hash/hash_pure crypto/elliptic crypto/dsa github.com/dustin/go-humanize crypto/internal/boring/bbig github.com/microsoft/go-mssqldb/internal/decimal github.com/remyoudompheng/bigfft github.com/ProtonMail/go-crypto/openpgp/internal/encoding github.com/go-git/go-git/v5/plumbing github.com/go-webauthn/x/encoding/asn1 encoding/asn1 github.com/go-git/gcfg crypto/rand github.com/fxamacker/cbor/v2 golang.org/x/text/collate github.com/blevesearch/geo/r3 github.com/aws/smithy-go/document github.com/aws/smithy-go/time github.com/zeebo/blake3/internal/alg/hash github.com/zeebo/blake3/internal/alg github.com/dlclark/regexp2/v2/helpers github.com/zeebo/blake3 crypto/rsa crypto/ed25519 uuid golang.org/x/crypto/bcrypt github.com/lib/pq/scram github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/algorithms gitea.dev/modules/secret github.com/pquerna/otp/hotp github.com/Azure/azure-sdk-for-go/sdk/internal/uuid github.com/klauspost/compress/zstd github.com/cloudflare/circl/math golang.org/x/text/feature/plural modernc.org/mathutil github.com/ProtonMail/go-crypto/openpgp/elgamal github.com/aws/aws-sdk-go-v2/internal/rand github.com/go-redsync/redsync/v4 github.com/pquerna/otp/totp github.com/aws/smithy-go/rand github.com/cpuguy83/go-md2man/v2/md2man github.com/go-git/go-git/v5/plumbing/format/config golang.org/x/text/secure/precis github.com/ProtonMail/go-crypto/bitcurves github.com/ProtonMail/go-crypto/brainpool github.com/dlclark/regexp2/v2 database/sql/driver github.com/aws/smithy-go github.com/go-git/go-git/v5/plumbing/cache github.com/go-git/go-git/v5/utils/binary github.com/go-git/go-git/v5/plumbing/format/diff golang.org/x/text/message golang.org/x/text/number github.com/blevesearch/geo/s2 github.com/go-git/go-git/v5/plumbing/format/index github.com/go-git/go-git/v5/plumbing/format/idxfile github.com/go-git/go-git/v5/plumbing/format/gitignore github.com/go-git/go-git/v5/config database/sql github.com/shopspring/decimal github.com/hashicorp/go-version github.com/rs/xid github.com/minio/minio-go/v7/pkg/cors golang.org/x/crypto/ed25519 github.com/minio/minio-go/v7/pkg/replication github.com/aws/smithy-go/auth github.com/aws/smithy-go/traits github.com/aws/smithy-go/tracing github.com/aws/smithy-go/metrics github.com/aws/aws-sdk-go-v2/service/codecommit/types github.com/go-git/go-git/v5/utils/merkletrie/filesystem github.com/go-git/go-git/v5/plumbing/storer github.com/go-git/go-git/v5/utils/merkletrie/index github.com/santhosh-tekuri/jsonschema/v6/kind net/textproto vendor/golang.org/x/net/http/httpproxy github.com/redis/go-redis/v9/internal/interfaces log/syslog github.com/minio/minio-go/v7/pkg/s3utils github.com/google/go-tpm/tpmutil github.com/bradfitz/gomemcache/memcache golang.org/x/net/internal/socks golang.org/x/net/internal/socket github.com/blevesearch/bleve_index_api github.com/jhillyerd/enmime/v2/internal/textproto google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/encoding/protojson github.com/prometheus/procfs github.com/go-git/go-git/v5/storage github.com/yuin/goldmark/renderer github.com/yuin/goldmark/extension/ast github.com/yuin/goldmark/parser github.com/go-git/go-git/v5/plumbing/format/packfile github.com/go-git/go-git/v5/storage/memory github.com/yuin/goldmark/renderer/html github.com/klauspost/compress/gzip github.com/klauspost/compress/zip encoding/json github.com/klauspost/compress/zlib github.com/bodgit/sevenzip/internal/deflate github.com/klauspost/pgzip golang.org/x/net/proxy crypto/x509/pkix vendor/golang.org/x/crypto/cryptobyte golang.org/x/crypto/cryptobyte github.com/go-git/go-git/v5/plumbing/protocol/packp github.com/klauspost/compress/gzhttp/writer/gzkp golang.org/x/net/ipv6 golang.org/x/net/ipv4 github.com/blevesearch/bleve/v2/analysis modernc.org/sqlite/vtab github.com/golang-sql/sqlexp xorm.io/xorm/contexts xorm.io/builder github.com/blevesearch/bleve/v2/analysis/tokenizer/character xorm.io/xorm/log net/mail golang.org/x/net/http/httpguts mime/multipart vendor/golang.org/x/net/http/httpguts crypto/ecdsa github.com/cloudflare/circl/internal/conv xorm.io/xorm/core github.com/go-git/go-git/v5/plumbing/transport github.com/cloudflare/circl/math/fp25519 github.com/cloudflare/circl/math/fp448 github.com/cloudflare/circl/math/mlsbset github.com/go-git/go-git/v5/plumbing/format/objfile github.com/go-git/go-git/v5/plumbing/transport/internal/common gitea.dev/modules/json xorm.io/xorm/internal/json github.com/google/uuid github.com/go-viper/mapstructure/v2 github.com/tinylib/msgp/msgp github.com/minio/minio-go/v7/pkg/lifecycle github.com/minio/minio-go/v7/pkg/tags go.uber.org/atomic log/slog github.com/blevesearch/bleve/v2/util github.com/emirpasic/gods/lists/arraylist github.com/blevesearch/upsidedown_store_api github.com/couchbase/goutils/logging google.golang.org/grpc/grpclog/internal github.com/blevesearch/vellum/levenshtein html/template github.com/goccy/go-json/internal/encoder github.com/santhosh-tekuri/jsonschema/v6 github.com/rhysd/actionlint github.com/klauspost/compress/s2 github.com/goccy/go-json/internal/decoder github.com/sirupsen/logrus gitea.dev/modules/optional github.com/cloudflare/circl/dh/x25519 github.com/go-git/go-git/v5/storage/filesystem/dotgit strk.kbt.io/projects/go/libravatar github.com/cloudflare/circl/sign/ed25519 github.com/bits-and-blooms/bitset gitea.dev/modules/structs google.golang.org/protobuf/internal/impl github.com/json-iterator/go github.com/gorilla/securecookie golang.org/x/oauth2/jws github.com/go-git/go-git/v5/plumbing/transport/git github.com/aws/smithy-go/eventstream github.com/aws/aws-sdk-go-v2/aws/protocol/restjson github.com/aws/smithy-go/encoding/json github.com/gorilla/feeds github.com/cloudflare/circl/dh/x448 github.com/cloudflare/circl/ecc/goldilocks github.com/emirpasic/gods/trees/binaryheap google.golang.org/grpc/grpclog github.com/emersion/go-sasl github.com/jhillyerd/enmime/v2/internal/stringutil go.uber.org/zap/zapcore github.com/yuin/goldmark github.com/urfave/cli/v3 github.com/go-co-op/gocron/v2 google.golang.org/grpc/connectivity github.com/ProtonMail/go-crypto/openpgp/x25519 github.com/redis/go-redis/v9/internal/util modernc.org/libc github.com/jhillyerd/enmime/v2/mediatype xorm.io/xorm/internal/utils github.com/yuin/goldmark/extension gitea.dev/modules/markup/common google.golang.org/grpc/internal github.com/cloudflare/circl/sign/ed448 github.com/redis/go-redis/v9/internal github.com/redis/go-redis/v9/internal/proto github.com/redis/go-redis/v9/internal/routing github.com/redis/go-redis/v9/internal/hscan github.com/ProtonMail/go-crypto/openpgp/ed25519 xorm.io/xorm/schemas xorm.io/xorm/convert gitea.dev/modules/htmlutil gitea.dev/modules/templates/scopedtmpl gitea.dev/routers/utils github.com/buildkite/terminal-to-html/v3 github.com/ProtonMail/go-crypto/openpgp/x448 github.com/ProtonMail/go-crypto/openpgp/ed448 gitea.dev/modules/markup/internal github.com/alecthomas/chroma/v2 gitea.com/lunny/levelqueue gitea.dev/modules/queue/lqinternal github.com/redis/go-redis/v9/internal/maintnotifications/logs github.com/go-webauthn/webauthn/protocol/webauthncbor google.golang.org/grpc/codes github.com/ProtonMail/go-crypto/openpgp/internal/ecc github.com/google/go-tpm/legacy/tpm2 crypto/x509 github.com/redis/go-redis/v9/push github.com/redis/go-redis/v9/internal/pool github.com/go-git/go-git/v5/storage/filesystem github.com/ProtonMail/go-crypto/openpgp/eddsa github.com/ProtonMail/go-crypto/openpgp/ecdsa github.com/ProtonMail/go-crypto/openpgp/ecdh gitea.com/gitea/runner/act/common xorm.io/xorm/caches xorm.io/xorm/dialects github.com/ProtonMail/go-crypto/openpgp/packet go.uber.org/zap/internal github.com/wneessen/go-mail/log github.com/SaveTheRbtz/zstd-seekable-format-go/pkg github.com/alecthomas/chroma/v2/formatters/html github.com/alecthomas/chroma/v2/styles github.com/tinylib/msgp/msgp/setof github.com/alecthomas/chroma/v2/lexers github.com/blevesearch/vellum github.com/RoaringBitmap/roaring/v2 github.com/redis/go-redis/v9/maintnotifications github.com/redis/go-redis/v9/internal/otel github.com/redis/go-redis/v9/internal/auth/streaming github.com/goccy/go-json/internal/encoder/vm_color_indent gitea.dev/modules/zstd github.com/bodgit/sevenzip/internal/zstd github.com/klauspost/compress/gzhttp/writer/zstdkp github.com/google/go-tpm/tpm2/transport github.com/google/go-tpm/tpm2 gitea.dev/modules/util github.com/golang-jwt/jwt/v5 golang.org/x/crypto/ssh github.com/tstranex/u2f github.com/minio/minlz golang.org/x/crypto/ocsp github.com/wneessen/go-mail/internal/pkcs7 crypto/tls github.com/minio/minio-go/v7/pkg/set github.com/ProtonMail/go-crypto/openpgp gitea.dev/modules/gtprof gitea.dev/modules/util/rotatingfilewriter gitea.dev/modules/glob gitea.dev/models/perm gitea.dev/modules/packages/cran gitea.dev/modules/templates/eval gitea.dev/modules/auth/httpauth gitea.dev/modules/paginator gitea.dev/modules/packages/goproxy gitea.dev/modules/markup/markdown/math gitea.dev/modules/actions/workflowpattern gitea.dev/modules/process xorm.io/xorm/tags github.com/minio/minio-go/v7/pkg/notification github.com/ProtonMail/go-crypto/openpgp/clearsign github.com/go-git/go-git/v5/plumbing/object github.com/sassoftware/go-rpmutils github.com/blevesearch/geo/geojson gitea.dev/modules/reqctx gitea.dev/modules/log github.com/yuin/goldmark-highlighting/v2 xorm.io/xorm/internal/statements gitea.dev/modules/tempdir gitea.dev/modules/assetfs gitea.dev/modules/proxyprotocol gitea.dev/modules/translation/i18n gitea.dev/modules/packages/conan gitea.dev/modules/regexplru gitea.dev/modules/setting/config gitea.dev/modules/auth gitea.dev/modules/pprof gitea.dev/modules/auth/password/hash github.com/go-git/go-git/v5/plumbing/revlist github.com/go-git/go-git/v5/plumbing/transport/server github.com/blevesearch/bleve/v2/geo github.com/go-git/go-git/v5/plumbing/transport/file github.com/blevesearch/scorch_segment_api/v2 github.com/RoaringBitmap/roaring/v2/roaring64 xorm.io/xorm google.golang.org/protobuf/internal/filetype github.com/blevesearch/bleve/v2/search github.com/blevesearch/bleve/v2/document github.com/blevesearch/zapx/v11 github.com/blevesearch/zapx/v14 github.com/blevesearch/zapx/v15 github.com/blevesearch/zapx/v13 github.com/blevesearch/zapx/v12 google.golang.org/protobuf/runtime/protoimpl google.golang.org/protobuf/types/known/structpb google.golang.org/protobuf/types/known/timestamppb google.golang.org/protobuf/types/known/anypb gitea.dev/actions-proto-go/ping/v1 google.golang.org/protobuf/protoadapt google.golang.org/protobuf/types/known/wrapperspb golang.org/x/crypto/ssh/knownhosts golang.org/x/crypto/ssh/agent github.com/gliderlabs/ssh gitea.dev/modules/generate github.com/blevesearch/zapx/v16 github.com/blevesearch/zapx/v17 connectrpc.com/connect/internal/gen/connectext/grpc/status/v1 google.golang.org/genproto/googleapis/rpc/status github.com/skeema/knownhosts github.com/urfave/cli-docs/v3 github.com/prometheus/client_model/go google.golang.org/grpc/internal/status gitea.dev/actions-proto-go/runner/v1 github.com/blevesearch/bleve/v2/search/highlight github.com/blevesearch/bleve/v2/search/facet github.com/blevesearch/bleve/v2/fusion github.com/blevesearch/bleve/v2/search/scorer github.com/blevesearch/bleve/v2/search/collector github.com/blevesearch/bleve/v2/registry github.com/42wim/sshsig github.com/xanzy/ssh-agent github.com/prometheus/common/model google.golang.org/grpc/status github.com/go-git/go-git/v5/plumbing/transport/ssh github.com/blevesearch/bleve/v2/search/searcher net/http/httptrace net/smtp github.com/microsoft/go-mssqldb/msdsn github.com/wneessen/go-mail/smtp github.com/lib/pq github.com/emersion/go-imap github.com/go-sql-driver/mysql github.com/miekg/dns github.com/redis/go-redis/v9 github.com/blevesearch/bleve/v2/analysis/datetime/flexible github.com/blevesearch/bleve/v2/analysis/datetime/timestamp/microseconds github.com/blevesearch/bleve/v2/analysis/datetime/timestamp/milliseconds gitea.dev/modules/indexer/code/bleve/token/path github.com/blevesearch/bleve/v2/analysis/datetime/timestamp/nanoseconds github.com/blevesearch/bleve/v2/analysis/datetime/timestamp/seconds github.com/blevesearch/bleve/v2/index/upsidedown/store/boltdb github.com/blevesearch/bleve/v2/index/upsidedown/store/gtreap github.com/blevesearch/bleve/v2/index/upsidedown github.com/blevesearch/bleve/v2/analysis/token/lowercase github.com/blevesearch/bleve/v2/analysis/token/stop github.com/blevesearch/bleve/v2/analysis/token/porter github.com/blevesearch/bleve/v2/analysis/tokenizer/unicode github.com/blevesearch/bleve/v2/analysis/tokenizer/single github.com/blevesearch/bleve/v2/search/highlight/format/html github.com/blevesearch/bleve/v2/search/highlight/fragmenter/simple github.com/blevesearch/bleve/v2/analysis/analyzer/custom github.com/blevesearch/bleve/v2/analysis/token/unicodenorm github.com/blevesearch/bleve/v2/analysis/token/camelcase github.com/blevesearch/bleve/v2/search/highlight/highlighter/simple golang.org/x/net/internal/httpcommon net/http/internal/httpcommon github.com/blevesearch/bleve/v2/analysis/analyzer/keyword github.com/blevesearch/bleve/v2/analysis/datetime/optional github.com/blevesearch/bleve/v2/analysis/lang/en github.com/blevesearch/bleve/v2/search/highlight/highlighter/html github.com/microsoft/go-mssqldb/integratedauth github.com/blevesearch/bleve/v2/analysis/analyzer/standard github.com/microsoft/go-mssqldb/integratedauth/ntlm github.com/prometheus/client_golang/prometheus/internal github.com/blevesearch/bleve/v2/mapping net/http/internal/http2 github.com/wneessen/go-mail github.com/microsoft/go-mssqldb github.com/go-webauthn/webauthn/protocol/webauthncose github.com/blevesearch/bleve/v2/index/scorch github.com/emersion/go-imap/responses github.com/emersion/go-imap/commands github.com/blevesearch/bleve/v2/search/query github.com/emersion/go-imap/client github.com/goccy/go-json/internal/encoder/vm_color net/http gitea.com/go-chi/session github.com/go-webauthn/x/revoke golang.org/x/oauth2/internal github.com/42wim/httpsig github.com/unknwon/com gitea.dev/modules/hostmatcher gitea.dev/modules/typesniffer gitea.dev/modules/web/types github.com/klauspost/compress/gzhttp github.com/yohcop/openid-go net/http/httputil github.com/go-chi/cors github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared github.com/Azure/azure-sdk-for-go/sdk/internal/exported golang.org/x/net/http2 net/http/cookiejar github.com/minio/minio-go/v7/pkg/signer gitea.com/go-chi/binding github.com/go-git/go-git/v5/plumbing/transport/http github.com/minio/minio-go/v7/pkg/encrypt expvar codeberg.org/gusted/mcaptcha github.com/spf13/afero github.com/charmbracelet/git-lfs-transfer/transfer github.com/couchbase/goutils/scramsha github.com/Azure/go-ntlmssp github.com/go-chi/chi/v5 gitea.com/lunny/dingtalk_webhook connectrpc.com/connect github.com/olekukonko/errors github.com/gorilla/sessions github.com/gorilla/mux cloud.google.com/go/compute/metadata github.com/chi-middleware/proxy github.com/mrjones/oauth gitea.dev/modules/uri github.com/aws/smithy-go/endpoints github.com/aws/smithy-go/encoding/httpbinding github.com/hashicorp/go-cleanhttp net/http/pprof github.com/gogs/go-gogs-client github.com/prometheus/common/expfmt github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header github.com/Azure/azure-sdk-for-go/sdk/internal/poller github.com/caddyserver/zerossl github.com/andybalholm/brotli go.uber.org/zap github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil github.com/mholt/acmez/v3/acme github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported github.com/google/go-github/v88/github github.com/felixge/fgprof net/http/cgi github.com/hashicorp/go-retryablehttp github.com/couchbase/gomemcached/client github.com/go-webauthn/webauthn/metadata github.com/go-ldap/ldap/v3 golang.org/x/net/publicsuffix golang.org/x/oauth2 gitea.com/go-chi/cache/memcache gitea.com/go-chi/captcha gitea.dev/sdk github.com/go-git/go-git/v5/plumbing/transport/client go4.org/readerutil github.com/blevesearch/bleve/v2 github.com/minio/minio-go/v7/pkg/credentials github.com/go-git/go-git/v5 github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers github.com/Azure/azure-sdk-for-go/sdk/azcore/streaming github.com/Azure/azure-sdk-for-go/sdk/azcore/policy github.com/prometheus/client_golang/prometheus github.com/go-chi/chi/v5/middleware golang.org/x/oauth2/authhandler golang.org/x/oauth2/google/internal/impersonate golang.org/x/oauth2/google/internal/stsexchange golang.org/x/oauth2/jwt github.com/markbates/goth gitea.com/go-chi/session/mysql gitea.com/go-chi/session/postgres gitea.com/go-chi/session/memcache github.com/mholt/acmez/v3 github.com/aws/smithy-go/transport/http net/http/fcgi github.com/go-webauthn/webauthn/protocol golang.org/x/oauth2/google/internal/externalaccountauthorizeduser github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/body github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/fake github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/loc github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/op github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/async golang.org/x/oauth2/google/externalaccount github.com/markbates/goth/gothic github.com/markbates/goth/providers/azuread github.com/markbates/goth/providers/azureadv2 github.com/markbates/goth/providers/bitbucket github.com/markbates/goth/providers/discord github.com/markbates/goth/providers/dropbox github.com/markbates/goth/providers/facebook github.com/markbates/goth/providers/gitea github.com/markbates/goth/providers/github github.com/markbates/goth/providers/gitlab github.com/markbates/goth/providers/mastodon github.com/markbates/goth/providers/microsoftonline github.com/markbates/goth/providers/nextcloud github.com/markbates/goth/providers/openidConnect github.com/markbates/goth/providers/twitter github.com/markbates/goth/providers/yandex gitlab.com/gitlab-org/api/client-go/v2 github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime github.com/minio/minio-go/v7 golang.org/x/oauth2/google github.com/couchbase/go-couchbase go.uber.org/zap/exp/zapslog github.com/caddyserver/certmagic github.com/aws/smithy-go/auth/bearer github.com/aws/aws-sdk-go-v2/internal/auth github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn github.com/aws/smithy-go/endpoints/private/rulesfn github.com/markbates/goth/providers/google github.com/go-webauthn/webauthn/webauthn github.com/Azure/azure-sdk-for-go/sdk/azcore gitea.dev/actions-proto-go/ping/v1/pingv1connect gitea.dev/actions-proto-go/runner/v1/runnerv1connect github.com/aws/aws-sdk-go-v2/aws github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated gitea.com/gitea/runner/act/common/git github.com/prometheus/client_golang/prometheus/promhttp gitea.dev/routers/api/actions/ping github.com/aws/aws-sdk-go-v2/aws/middleware github.com/aws/aws-sdk-go-v2/internal/configsources github.com/aws/aws-sdk-go-v2/internal/endpoints github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4 github.com/aws/aws-sdk-go-v2/aws/defaults github.com/aws/aws-sdk-go-v2/credentials gitea.com/gitea/runner/act/model gitea.com/go-chi/session/couchbase github.com/aws/aws-sdk-go-v2/service/codecommit/internal/endpoints github.com/ethantkoenig/rupture github.com/aws/aws-sdk-go-v2/aws/transport/http github.com/aws/aws-sdk-go-v2/aws/signer/v4 github.com/aws/aws-sdk-go-v2/aws/retry gitea.com/gitea/runner/act/exprparser github.com/aws/aws-sdk-go-v2/internal/auth/smithy github.com/aws/aws-sdk-go-v2/service/codecommit gitea.dev/modules/actions/jobparser github.com/goccy/go-json/internal/encoder/vm_indent github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/bloberror github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/base github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob modernc.org/sqlite/lib github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/appendblob github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container github.com/bodgit/sevenzip/internal/brotli github.com/meilisearch/meilisearch-go github.com/bodgit/sevenzip github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service github.com/Azure/azure-sdk-for-go/sdk/storage/azblob github.com/mholt/archives github.com/go-enry/go-enry/v2 gitea.dev/modules/analyze gitea.dev/modules/indexer/internal/meilisearch github.com/goccy/go-json/internal/encoder/vm gitea.dev/modules/nosql github.com/go-redsync/redsync/v4/redis/goredis/v9 gitea.dev/modules/setting gitea.dev/models/unit gitea.dev/modules/base gitea.dev/modules/options gitea.dev/modules/globallock gitea.dev/modules/graceful gitea.dev/modules/avatar gitea.dev/modules/git/gitcmd gitea.dev/modules/proxy gitea.dev/modules/recaptcha gitea.dev/modules/httpcache gitea.dev/modules/markup/mdstripper gitea.dev/modules/emoji gitea.dev/modules/highlight gitea.dev/modules/auth/password/pwn gitea.dev/modules/hcaptcha gitea.dev/modules/mcaptcha gitea.dev/modules/label gitea.dev/modules/translation gitea.dev/modules/auth/openid gitea.dev/modules/turnstile gitea.dev/modules/references gitea.dev/modules/timeutil gitea.dev/models/shared/types gitea.dev/modules/auth/password gitea.dev/modules/charset gitea.dev/modules/dump gitea.dev/modules/httplib gitea.dev/modules/cache gitea.dev/modules/web/routing gitea.dev/modules/queue gitea.dev/modules/git/url gitea.dev/modules/public gitea.dev/modules/svg gitea.dev/services/webtheme gitea.dev/modules/storage gitea.dev/modules/markup gitea.dev/modules/testlogger gitea.dev/modules/git gitea.dev/modules/csv gitea.dev/modules/markup/external gitea.dev/modules/markup/markdown gitea.dev/modules/markup/console gitea.dev/modules/markup/orgmode gitea.dev/modules/markup/csv gitea.dev/modules/packages gitea.dev/modules/markup/jupyter gitea.dev/modules/git/pipeline gitea.dev/modules/git/attribute gitea.dev/modules/fileicon gitea.dev/modules/gitrepo gitea.dev/modules/migration gitea.dev/modules/validation gitea.dev/modules/issue/template gitea.dev/modules/packages/alpine gitea.dev/modules/packages/arch gitea.dev/modules/packages/cargo gitea.dev/modules/packages/chef gitea.dev/modules/packages/conda gitea.dev/modules/packages/composer gitea.dev/modules/packages/container gitea.dev/modules/packages/debian gitea.dev/modules/packages/helm gitea.dev/modules/packages/maven gitea.dev/modules/packages/npm gitea.dev/modules/packages/pub gitea.dev/modules/packages/nuget gitea.dev/modules/packages/rubygems gitea.dev/modules/packages/rpm gitea.dev/modules/packages/swift gitea.dev/modules/packages/vagrant gitea.dev/modules/lfs gitea.dev/modules/git/languagestats modernc.org/sqlite gitea.dev/models/db gitea.dev/models/avatars gitea.dev/models/auth gitea.dev/models/migrations/v1_10 gitea.dev/models/migrations/base gitea.dev/models/migrations/v1_19 gitea.dev/models/migrations/v1_26 gitea.dev/models/migrations/v1_7 gitea.dev/models/migrations/v1_22 gitea.dev/models/webhook gitea.dev/models/migrations/v1_23 gitea.dev/models/dbfs gitea.dev/modules/indexer/internal gitea.dev/routers/web/healthcheck gitea.dev/models/system gitea.dev/models/db/install gitea.dev/modules/indexer/internal/bleve gitea.dev/modules/indexer/issues/internal gitea.dev/modules/indexer/internal/elasticsearch gitea.dev/modules/indexer/internal/db gitea.dev/modules/indexer/issues/meilisearch gitea.dev/modules/indexer/issues/bleve gitea.dev/modules/indexer/issues/elasticsearch gitea.dev/modules/system gitea.dev/models/migrations/v1_25 gitea.dev/models/migrations/v1_27 gitea.dev/models/migrations/v1_24 gitea.dev/models/migrations/v1_15 gitea.dev/models/migrations/v1_20 gitea.dev/models/migrations/v1_11 gitea.dev/models/migrations/v1_16 gitea.dev/models/migrations/v1_8 gitea.dev/models/migrations/v1_13 gitea.dev/models/migrations/v1_6 gitea.dev/models/migrations/v1_14 gitea.dev/modules/updatechecker github.com/goccy/go-json gitea.dev/services/auth/source/sspi gitea.dev/modules/session gitea.dev/models/user github.com/olekukonko/ll/lh github.com/olekukonko/ll gitea.dev/modules/web/middleware gitea.dev/modules/web github.com/olekukonko/tablewriter/tw gitea.dev/services/auth/source/db gitea.dev/modules/auth/webauthn gitea.dev/models/organization gitea.dev/services/auth/source/pam gitea.dev/services/auth/source/smtp gitea.dev/models/gituser gitea.dev/services/mailer/token gitea.dev/services/auth/source/oauth2 github.com/olekukonko/tablewriter/renderer gitea.dev/services/oauth2_provider gitea.dev/routers/web/shared/mention gitea.dev/models/repo github.com/olekukonko/tablewriter gitea.dev/models/renderhelper gitea.dev/models/project gitea.dev/models/asymkey gitea.dev/models/pull gitea.dev/modules/indexer/code/internal gitea.dev/models/migrations/v1_21 gitea.dev/models/admin gitea.dev/models/migrations/v1_9 gitea.dev/models/packages gitea.dev/models/migrations/v1_12 gitea.dev/modules/indexer/stats gitea.dev/models/actions gitea.dev/modules/indexer/code/bleve gitea.dev/modules/indexer/code/elasticsearch gitea.dev/modules/indexer/code gitea.dev/modules/ssh github.com/inbucket/html2text github.com/Necoro/html2text gitea.dev/modules/indexer/code/gitgrep gitea.dev/models/packages/alpine gitea.dev/models/packages/arch gitea.dev/models/migrations/v1_17 gitea.dev/models/packages/container gitea.dev/models/packages/conan gitea.dev/models/packages/conda gitea.dev/models/packages/cran gitea.dev/models/packages/debian gitea.dev/models/packages/nuget gitea.dev/modules/packages/terraform gitea.dev/models/packages/rpm gitea.dev/services/mailer/sender github.com/jhillyerd/enmime/v2 gitea.dev/modules/badge gitea.dev/models/perm/access gitea.dev/models/git gitea.dev/modules/actions gitea.dev/models/issues gitea.dev/models/secret gitea.dev/services/secrets gitea.dev/services/gitdiff gitea.dev/modules/repository gitea.dev/models/activities gitea.dev/models/migrations/v1_18 gitea.dev/models gitea.dev/services/automergequeue gitea.dev/services/asymkey gitea.dev/modules/indexer/issues/db gitea.dev/services/externalaccount gitea.dev/services/mailer/incoming/payload gitea.dev/services/projects gitea.dev/modules/indexer/issues gitea.dev/models/migrations gitea.dev/services/notify gitea.dev/modules/private gitea.dev/services/git gitea.dev/services/repository/gitgraph gitea.dev/modules/metrics gitea.dev/modules/templates gitea.dev/services/repository/commitstatus gitea.dev/services/issue gitea.dev/services/packages gitea.dev/services/feed gitea.dev/services/indexer gitea.dev/services/uinotification gitea.dev/modules/lfstransfer/backend gitea.dev/modules/lfstransfer gitea.dev/services/packages/alpine gitea.dev/services/packages/debian gitea.dev/services/packages/terraform gitea.dev/services/packages/arch gitea.dev/services/packages/rpm gitea.dev/services/packages/container gitea.dev/services/versioned_migration gitea.dev/services/context gitea.dev/services/pull gitea.dev/services/packages/pkgspec gitea.dev/routers/api/packages/helper gitea.dev/routers/api/v1/activitypub gitea.dev/services/repository/archiver gitea.dev/services/context/upload gitea.dev/routers/api/v1/token gitea.dev/routers/web/shared/issue gitea.dev/routers/web/shared/project gitea.dev/routers/api/v1/settings gitea.dev/routers/web/feed gitea.dev/services/convert gitea.dev/services/markup gitea.dev/services/agit gitea.dev/routers/api/packages/alpine gitea.dev/routers/api/packages/debian gitea.dev/routers/api/packages/npm gitea.dev/routers/api/packages/cran gitea.dev/routers/api/packages/conda gitea.dev/routers/api/packages/arch gitea.dev/routers/api/packages/helm gitea.dev/routers/api/packages/swift gitea.dev/routers/api/packages/goproxy gitea.dev/routers/api/packages/rubygems gitea.dev/routers/api/packages/terraform gitea.dev/routers/api/packages/pub gitea.dev/routers/api/packages/generic gitea.dev/routers/api/packages/pypi gitea.dev/routers/api/packages/maven gitea.dev/routers/api/packages/rpm gitea.dev/routers/api/packages/vagrant gitea.dev/services/release gitea.dev/services/attachment gitea.dev/services/mailer/incoming gitea.dev/modules/eventsource gitea.dev/services/lfs gitea.dev/routers/api/packages/composer gitea.dev/services/webhook gitea.dev/services/actions gitea.dev/services/mailer gitea.dev/routers/api/v1/utils gitea.dev/services/forms gitea.dev/routers/api/actions/runner gitea.dev/services/repository gitea.dev/routers/web/shared/secrets gitea.dev/routers/web/shared/label gitea.dev/routers/web/user/setting/security gitea.dev/routers/api/v1/swagger gitea.dev/routers/api/v1/packages gitea.dev/routers/api/v1/notify gitea.dev/services/repository/files gitea.dev/routers/api/actions gitea.dev/services/packages/cargo gitea.dev/services/org gitea.dev/services/automerge gitea.dev/services/wiki gitea.dev/services/doctor gitea.dev/services/migrations gitea.dev/services/packages/cleanup gitea.dev/routers/web/shared/packages gitea.dev/routers/api/packages/cargo gitea.dev/services/auth/source gitea.dev/services/user gitea.dev/routers/web/shared/user gitea.dev/routers/api/v1/shared gitea.dev/services/auth/source/ldap gitea.dev/routers/web/shared/actions gitea.dev/services/auth gitea.dev/services/task gitea.dev/services/mirror gitea.dev/routers/api/packages/chef gitea.dev/routers/api/packages/conan gitea.dev/routers/api/packages/nuget gitea.dev/routers/api/packages/container gitea.dev/routers/web/user/setting gitea.dev/routers/common gitea.dev/routers/web/auth gitea.dev/services/cron gitea.dev/routers/api/packages gitea.dev/routers/web/misc gitea.dev/routers/web/repo/actions gitea.dev/routers/api/v1/misc gitea.dev/routers/web/explore gitea.dev/routers/web/repo gitea.dev/routers/api/v1/repo gitea.dev/routers/web/org gitea.dev/routers/install gitea.dev/routers/private gitea.dev/routers/web/events gitea.dev/routers/web/admin gitea.dev/routers/web/devtest gitea.dev/routers/web/user gitea.dev/routers/api/v1/user gitea.dev/routers/api/v1/admin gitea.dev/routers/api/v1/org gitea.dev/routers/web/repo/setting gitea.dev/routers/api/v1 gitea.dev/routers/web gitea.dev/routers gitea.dev/cmd gitea.dev Running go test with -timeout 40m -tags 'tidb sqlite sqlite_unlock_notify'... ? gitea.dev [no test files] === RUN TestDeriveEnumName_hit --- PASS: TestDeriveEnumName_hit (0.00s) === RUN TestDeriveEnumName_miss --- PASS: TestDeriveEnumName_miss (0.00s) === RUN TestExtractSharedEnums_usesASTMap --- PASS: TestExtractSharedEnums_usesASTMap (0.00s) === RUN TestFixFileSchemas_recursesIntoNested --- PASS: TestFixFileSchemas_recursesIntoNested (0.00s) === RUN TestExtractEnumTypeName_TeamVisibility --- PASS: TestExtractEnumTypeName_TeamVisibility (0.00s) === RUN TestExtractEnumTypeName_ambiguousPrefixTie --- PASS: TestExtractEnumTypeName_ambiguousPrefixTie (0.00s) === RUN TestExtractEnumTypeName_rejectsIncidentalPrefix --- PASS: TestExtractEnumTypeName_rejectsIncidentalPrefix (0.00s) === RUN TestExtractSharedEnums_missReturnsError --- PASS: TestExtractSharedEnums_missReturnsError (0.00s) === RUN TestEnumKey_sortsAndJoins --- PASS: TestEnumKey_sortsAndJoins (0.00s) === RUN TestEnumKey_handlesNonStringValues --- PASS: TestEnumKey_handlesNonStringValues (0.00s) === RUN TestScanSwaggerEnumTypes_basic --- PASS: TestScanSwaggerEnumTypes_basic (0.00s) === RUN TestScanSwaggerEnumTypes_orphanAnnotation --- PASS: TestScanSwaggerEnumTypes_orphanAnnotation (0.00s) === RUN TestScanSwaggerEnumTypes_collision --- PASS: TestScanSwaggerEnumTypes_collision (0.00s) === RUN TestScanSwaggerEnumTypes_parseFailure --- PASS: TestScanSwaggerEnumTypes_parseFailure (0.00s) === RUN TestScanSwaggerEnumTypes_annotationWithoutConsts --- PASS: TestScanSwaggerEnumTypes_annotationWithoutConsts (0.00s) === RUN TestScanSwaggerEnumTypes_constsAndTypeInDifferentFiles --- PASS: TestScanSwaggerEnumTypes_constsAndTypeInDifferentFiles (0.00s) === RUN TestScanSwaggerEnumTypes_constsBeforeType --- PASS: TestScanSwaggerEnumTypes_constsBeforeType (0.00s) === RUN TestScanSwaggerEnumTypes_groupedTypeDecl --- PASS: TestScanSwaggerEnumTypes_groupedTypeDecl (0.00s) PASS ok gitea.dev/build/openapi3gen 0.017s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_artifacts === RUN TestAddLdapBindDn --- PASS: TestAddLdapBindDn (0.00s) === RUN TestAddLdapSimpleAuth --- PASS: TestAddLdapSimpleAuth (0.00s) === RUN TestUpdateLdapBindDn --- PASS: TestUpdateLdapBindDn (0.02s) === RUN TestUpdateLdapSimpleAuth --- PASS: TestUpdateLdapSimpleAuth (0.01s) === RUN TestAddOauth === RUN TestAddOauth/valid_config === RUN TestAddOauth/valid_config_with_openid_connect === RUN TestAddOauth/valid_config_with_options --- PASS: TestAddOauth (0.00s) --- PASS: TestAddOauth/valid_config (0.00s) --- PASS: TestAddOauth/valid_config_with_openid_connect (0.00s) --- PASS: TestAddOauth/valid_config_with_options (0.00s) === RUN TestUpdateOauth === RUN TestUpdateOauth/missing_id === RUN TestUpdateOauth/valid_config === RUN TestUpdateOauth/valid_config_with_options --- PASS: TestUpdateOauth (0.00s) --- PASS: TestUpdateOauth/missing_id (0.00s) --- PASS: TestUpdateOauth/valid_config (0.00s) --- PASS: TestUpdateOauth/valid_config_with_options (0.00s) === RUN TestAddSMTP === RUN TestAddSMTP/missing_name admin_auth_smtp_test.go:121: [smtp-test --host localhost --port 25] === RUN TestAddSMTP/missing_host admin_auth_smtp_test.go:121: [smtp-test --name test --port 25] === RUN TestAddSMTP/missing_port admin_auth_smtp_test.go:121: [smtp-test --name test --host localhost] === RUN TestAddSMTP/valid_config admin_auth_smtp_test.go:121: [smtp-test --name test --host localhost --port 25] === RUN TestAddSMTP/valid_config_with_options admin_auth_smtp_test.go:121: [smtp-test --name test --host localhost --port 25 --auth-type LOGIN --force-smtps --skip-verify --helo-hostname example.com --disable-helo=true --allowed-domains example.com,example.org --skip-local-2fa --active=false] --- PASS: TestAddSMTP (0.00s) --- PASS: TestAddSMTP/missing_name (0.00s) --- PASS: TestAddSMTP/missing_host (0.00s) --- PASS: TestAddSMTP/missing_port (0.00s) --- PASS: TestAddSMTP/valid_config (0.00s) --- PASS: TestAddSMTP/valid_config_with_options (0.00s) === RUN TestUpdateSMTP === RUN TestUpdateSMTP/missing_id === RUN TestUpdateSMTP/valid_config === RUN TestUpdateSMTP/valid_config_with_options --- PASS: TestUpdateSMTP (0.00s) --- PASS: TestUpdateSMTP/missing_id (0.00s) --- PASS: TestUpdateSMTP/valid_config (0.00s) --- PASS: TestUpdateSMTP/valid_config_with_options (0.00s) === RUN TestChangePasswordCommand === RUN TestChangePasswordCommand/change_password_successfully generated random password is 'y8S6OFZjAKUy' New user 'testuser' has been successfully created! testuser's password has been successfully updated! testuser's password has been successfully updated! testuser's password has been successfully updated! === RUN TestChangePasswordCommand/failure_cases === RUN TestChangePasswordCommand/failure_cases/user_does_not_exist === RUN TestChangePasswordCommand/failure_cases/missing_username === RUN TestChangePasswordCommand/failure_cases/missing_password === RUN TestChangePasswordCommand/failure_cases/too_short_password --- PASS: TestChangePasswordCommand (0.04s) --- PASS: TestChangePasswordCommand/change_password_successfully (0.02s) --- PASS: TestChangePasswordCommand/failure_cases (0.02s) --- PASS: TestChangePasswordCommand/failure_cases/user_does_not_exist (0.00s) --- PASS: TestChangePasswordCommand/failure_cases/missing_username (0.00s) --- PASS: TestChangePasswordCommand/failure_cases/missing_password (0.01s) --- PASS: TestChangePasswordCommand/failure_cases/too_short_password (0.00s) === RUN TestAdminUserCreate === RUN TestAdminUserCreate/MustChangePassword New user 'u' has been successfully created! 2026/09/06 06:40:38 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:38 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:38 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:38 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u' has been successfully created! 2026/09/06 06:40:38 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:38 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:38 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:38 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u' has been successfully created! 2026/09/06 06:40:38 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:38 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:38 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:38 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:38 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u2' has been successfully created! 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u3' has been successfully created! 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u4' has been successfully created! 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u5' has been successfully created! === RUN TestAdminUserCreate/UserType 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u' has been successfully created! === RUN TestAdminUserCreate/AccessToken 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is 'XwD9xa5tLJwk' New user 'u' has been successfully created! 2026/09/06 06:40:39 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:39 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:39 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:39 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is 'NnocrFbVVXxK' New user 'u' has been successfully created! Access token was successfully created... 44aa98fac880ceabfc589c11268dbe118dd5c968 generated random password is 'TI9zOdyty1GE' 2026/09/06 06:40:40 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:40 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u' has been successfully created! Access token was successfully created... f2460b563bf36b5fe38075ab7eb399792a6a4c97 2026/09/06 06:40:40 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 generated random password is 'E9uoDIhX3cl7' 2026/09/06 06:40:40 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:40 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:40 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is 'ZsluEhfQuaiP' 2026/09/06 06:40:40 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:40 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is 'Lwd2UIkmD7Vc' === RUN TestAdminUserCreate/UserFields 2026/09/06 06:40:40 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:40 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is 'XNFTY6yGPR5b' New user 'u-FullNameWithSpace' has been successfully created! generated random password is '3EvWptbV3SE1' 2026/09/06 06:40:40 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:40 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'u-FullNameEmpty' has been successfully created! --- PASS: TestAdminUserCreate (2.40s) --- PASS: TestAdminUserCreate/MustChangePassword (1.34s) --- PASS: TestAdminUserCreate/UserType (0.01s) --- PASS: TestAdminUserCreate/AccessToken (0.79s) --- PASS: TestAdminUserCreate/UserFields (0.26s) === RUN TestAdminUserDelete === RUN TestAdminUserDelete/delete_user_by_id 2026/09/06 06:40:40 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:40 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is 't1V5ohQNH0kI' New user 'testuser' has been successfully created! 2026/09/06 06:40:40 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/attachments 2026/09/06 06:40:40 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/avatars 2026/09/06 06:40:40 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-avatars 2026/09/06 06:40:40 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-archive 2026/09/06 06:40:40 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/packages 2026/09/06 06:40:40 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_log 2026/09/06 06:40:40 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_artifacts === RUN TestAdminUserDelete/delete_user_by_username 2026/09/06 06:40:40 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:40 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:40 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 generated random password is 'w8KkmahwqwNa' 2026/09/06 06:40:40 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:40 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'testuser' has been successfully created! 2026/09/06 06:40:41 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/attachments 2026/09/06 06:40:41 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/avatars 2026/09/06 06:40:41 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-avatars 2026/09/06 06:40:41 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-archive 2026/09/06 06:40:41 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/packages 2026/09/06 06:40:41 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_log 2026/09/06 06:40:41 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_artifacts === RUN TestAdminUserDelete/delete_user_by_email 2026/09/06 06:40:41 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:41 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is '9rruIFmLh21R' New user 'testuser' has been successfully created! 2026/09/06 06:40:41 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/attachments 2026/09/06 06:40:41 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/avatars 2026/09/06 06:40:41 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-avatars 2026/09/06 06:40:41 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-archive 2026/09/06 06:40:41 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/packages 2026/09/06 06:40:41 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_log 2026/09/06 06:40:41 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_artifacts === RUN TestAdminUserDelete/delete_user_by_all_3_attributes generated random password is 'bMEwFFAKmp08' 2026/09/06 06:40:41 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:41 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 New user 'testuser' has been successfully created! 2026/09/06 06:40:41 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/attachments 2026/09/06 06:40:41 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/avatars 2026/09/06 06:40:41 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-avatars 2026/09/06 06:40:41 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-archive 2026/09/06 06:40:41 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/packages 2026/09/06 06:40:41 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_log 2026/09/06 06:40:41 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_artifacts --- PASS: TestAdminUserDelete (0.65s) --- PASS: TestAdminUserDelete/delete_user_by_id (0.18s) --- PASS: TestAdminUserDelete/delete_user_by_username (0.21s) --- PASS: TestAdminUserDelete/delete_user_by_email (0.13s) --- PASS: TestAdminUserDelete/delete_user_by_all_3_attributes (0.13s) === RUN TestAdminUserDeleteFailure === RUN TestAdminUserDeleteFailure/no_user_to_delete 2026/09/06 06:40:41 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/attachments 2026/09/06 06:40:41 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/avatars 2026/09/06 06:40:41 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-avatars 2026/09/06 06:40:41 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-archive 2026/09/06 06:40:41 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/packages 2026/09/06 06:40:41 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_log 2026/09/06 06:40:41 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_artifacts === RUN TestAdminUserDeleteFailure/user_exists_but_provided_username_does_not_match 2026/09/06 06:40:41 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:41 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is 'WLEaV6EULcZ6' New user 'testuser' has been successfully created! 2026/09/06 06:40:41 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/attachments 2026/09/06 06:40:41 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/avatars 2026/09/06 06:40:41 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-avatars 2026/09/06 06:40:41 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-archive 2026/09/06 06:40:41 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/packages 2026/09/06 06:40:41 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_log 2026/09/06 06:40:41 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_artifacts === RUN TestAdminUserDeleteFailure/user_exists_but_provided_id_does_not_match 2026/09/06 06:40:41 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:41 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is '4oLgUG0e3wFq' New user 'testuser' has been successfully created! 2026/09/06 06:40:41 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/attachments 2026/09/06 06:40:41 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/avatars 2026/09/06 06:40:41 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-avatars 2026/09/06 06:40:41 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/repo-archive 2026/09/06 06:40:41 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/packages 2026/09/06 06:40:41 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_log 2026/09/06 06:40:41 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:41 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3706622154/data/actions_artifacts === RUN TestAdminUserDeleteFailure/no_required_flags_are_provided --- PASS: TestAdminUserDeleteFailure (0.24s) --- PASS: TestAdminUserDeleteFailure/no_user_to_delete (0.00s) --- PASS: TestAdminUserDeleteFailure/user_exists_but_provided_username_does_not_match (0.12s) --- PASS: TestAdminUserDeleteFailure/user_exists_but_provided_id_does_not_match (0.12s) --- PASS: TestAdminUserDeleteFailure/no_required_flags_are_provided (0.00s) === RUN TestMustChangePassword 2026/09/06 06:40:41 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:41 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is '4PhtLA4trzh3' New user 'testuser' has been successfully created! 2026/09/06 06:40:41 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/log.go:83:prepareLoggerConfig() [E] Deprecation: config option `[log].XORM` present, please use `[log].logger.xorm.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:41 modules/setting/webhook.go:38:loadWebhookFrom() [E] Deprecation: config option `[webhook].ALLOWED_HOST_LIST` present, please use `[security].ALLOWED_HOST_LIST` instead because this fallback will be/has been removed in v28.0.0 2026/09/06 06:40:41 modules/setting/task.go:13:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_TYPE` present, please use `[queue.task].TYPE` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:14:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_CONN_STR` present, please use `[queue.task].CONN_STR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:41 modules/setting/task.go:15:loadTaskFrom() [E] Deprecation: config option `[task].QUEUE_LENGTH` present, please use `[queue.task].LENGTH` instead because this fallback will be/has been removed in v1.19.0 generated random password is 'ZRblRaTLON7F' New user 'testuserexclude' has been successfully created! Updated 1 users setting MustChangePassword to false Updated 2 users setting MustChangePassword to true Updated 0 users setting MustChangePassword to false Updated 2 users setting MustChangePassword to false Updated 1 users setting MustChangePassword to true Updated 1 users setting MustChangePassword to false --- PASS: TestMustChangePassword (0.25s) === RUN TestCertCommand === RUN TestCertCommand/RSA_cert_generation Written cert to /home/buildozer/aports/community/gitea/tmp/TestCertCommandRSA_cert_generation3842675820/001/cert.pem Written key to /home/buildozer/aports/community/gitea/tmp/TestCertCommandRSA_cert_generation3842675820/001/key.pem === RUN TestCertCommand/ECDSA_cert_generation Written cert to /home/buildozer/aports/community/gitea/tmp/TestCertCommandECDSA_cert_generation3190404220/001/cert.pem Written key to /home/buildozer/aports/community/gitea/tmp/TestCertCommandECDSA_cert_generation3190404220/001/key.pem === RUN TestCertCommand/mixed_host,_certificate_authority Written cert to /home/buildozer/aports/community/gitea/tmp/TestCertCommandmixed_host,_certificate_authority1306521233/001/cert.pem Written key to /home/buildozer/aports/community/gitea/tmp/TestCertCommandmixed_host,_certificate_authority1306521233/001/key.pem --- PASS: TestCertCommand (0.65s) --- PASS: TestCertCommand/RSA_cert_generation (0.25s) --- PASS: TestCertCommand/ECDSA_cert_generation (0.00s) --- PASS: TestCertCommand/mixed_host,_certificate_authority (0.40s) === RUN TestCertCommandFailures === RUN TestCertCommandFailures/Start_Date_Parsing_failure === RUN TestCertCommandFailures/Unknown_curve === RUN TestCertCommandFailures/Key_generation_failure === RUN TestCertCommandFailures/Missing_parameters --- PASS: TestCertCommandFailures (0.74s) --- PASS: TestCertCommandFailures/Start_Date_Parsing_failure (0.73s) --- PASS: TestCertCommandFailures/Unknown_curve (0.00s) --- PASS: TestCertCommandFailures/Key_generation_failure (0.00s) --- PASS: TestCertCommandFailures/Missing_parameters (0.00s) === RUN TestConfigEdit === RUN TestConfigEdit/OutputToNewWithEnv === RUN TestConfigEdit/OutputToExisting(environment-to-ini) --- PASS: TestConfigEdit (0.00s) --- PASS: TestConfigEdit/OutputToNewWithEnv (0.00s) --- PASS: TestConfigEdit/OutputToExisting(environment-to-ini) (0.00s) === RUN TestDoctorRun [1] Test Check OK All done (checks: 1). --- PASS: TestDoctorRun (0.00s) === RUN TestPktLine --- PASS: TestPktLine (0.00s) === RUN TestParseGitHookCommitRefLine --- PASS: TestParseGitHookCommitRefLine (0.00s) === RUN TestDefaultCommand --- PASS: TestDefaultCommand (0.00s) === RUN TestMigratePackages --- PASS: TestMigratePackages (0.12s) === RUN TestGetAccessMode === RUN TestGetAccessMode/git-upload-pack/ === RUN TestGetAccessMode/git-upload-archive/ === RUN TestGetAccessMode/git-receive-pack/ === RUN TestGetAccessMode/git-lfs-authenticate/upload === RUN TestGetAccessMode/git-lfs-authenticate/download === RUN TestGetAccessMode/git-lfs-transfer/upload === RUN TestGetAccessMode/git-lfs-transfer/download --- PASS: TestGetAccessMode (0.00s) --- PASS: TestGetAccessMode/git-upload-pack/ (0.00s) --- PASS: TestGetAccessMode/git-upload-archive/ (0.00s) --- PASS: TestGetAccessMode/git-receive-pack/ (0.00s) --- PASS: TestGetAccessMode/git-lfs-authenticate/upload (0.00s) --- PASS: TestGetAccessMode/git-lfs-authenticate/download (0.00s) --- PASS: TestGetAccessMode/git-lfs-transfer/upload (0.00s) --- PASS: TestGetAccessMode/git-lfs-transfer/download (0.00s) === RUN TestGetAccessModeUnknownVerb === RUN TestGetAccessModeUnknownVerb/git-lfs-authenticate/ === RUN TestGetAccessModeUnknownVerb/git-lfs-authenticate/badverb === RUN TestGetAccessModeUnknownVerb/git-lfs-transfer/badverb === RUN TestGetAccessModeUnknownVerb/git-unknown-verb/ --- PASS: TestGetAccessModeUnknownVerb (0.00s) --- PASS: TestGetAccessModeUnknownVerb/git-lfs-authenticate/ (0.00s) --- PASS: TestGetAccessModeUnknownVerb/git-lfs-authenticate/badverb (0.00s) --- PASS: TestGetAccessModeUnknownVerb/git-lfs-transfer/badverb (0.00s) --- PASS: TestGetAccessModeUnknownVerb/git-unknown-verb/ (0.00s) PASS ok gitea.dev/cmd 6.572s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-859177486/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-859177486/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-859177486/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-859177486/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-859177486/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-859177486/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-859177486/data/actions_artifacts === RUN TestCliCmd === RUN TestCliCmd/./gitea_-h === RUN TestCliCmd/./gitea_help === RUN TestCliCmd/./gitea_-c_/dev/null_-h === RUN TestCliCmd/./gitea_-c_/dev/null_help === RUN TestCliCmd/./gitea_help_-c_/dev/null === RUN TestCliCmd/./gitea_-c_/dev/null_test-cmd_-h === RUN TestCliCmd/./gitea_test-cmd_-c_/dev/null_-h === RUN TestCliCmd/./gitea_test-cmd_-h_-c_/dev/null === RUN TestCliCmd/./gitea_-c_/dev/null_test-cmd_help === RUN TestCliCmd/./gitea_test-cmd_-c_/dev/null_help === RUN TestCliCmd/./gitea_test-cmd_help_-c_/dev/null === RUN TestCliCmd/./gitea_test-cmd === RUN TestCliCmd/./gitea_-c_/tmp/app.ini_test-cmd === RUN TestCliCmd/./gitea_test-cmd_-c_/tmp/app.ini === RUN TestCliCmd/./gitea_test-cmd#01 === RUN TestCliCmd/./gitea_test-cmd_--work-path_/tmp/other === RUN TestCliCmd/./gitea_test-cmd_--config_/tmp/app-other.ini --- PASS: TestCliCmd (0.24s) --- PASS: TestCliCmd/./gitea_-h (0.01s) --- PASS: TestCliCmd/./gitea_help (0.01s) --- PASS: TestCliCmd/./gitea_-c_/dev/null_-h (0.01s) --- PASS: TestCliCmd/./gitea_-c_/dev/null_help (0.00s) --- PASS: TestCliCmd/./gitea_help_-c_/dev/null (0.01s) --- PASS: TestCliCmd/./gitea_-c_/dev/null_test-cmd_-h (0.02s) --- PASS: TestCliCmd/./gitea_test-cmd_-c_/dev/null_-h (0.04s) --- PASS: TestCliCmd/./gitea_test-cmd_-h_-c_/dev/null (0.02s) --- PASS: TestCliCmd/./gitea_-c_/dev/null_test-cmd_help (0.04s) --- PASS: TestCliCmd/./gitea_test-cmd_-c_/dev/null_help (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd_help_-c_/dev/null (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd (0.00s) --- PASS: TestCliCmd/./gitea_-c_/tmp/app.ini_test-cmd (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd_-c_/tmp/app.ini (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd#01 (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd_--work-path_/tmp/other (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd_--config_/tmp/app-other.ini (0.01s) === RUN TestCliCmdError --- PASS: TestCliCmdError (0.02s) === RUN TestCliCmdBefore --- PASS: TestCliCmdBefore (0.00s) === RUN TestCliCmdCompletion --- PASS: TestCliCmdCompletion (0.00s) PASS ok gitea.dev/cmd/cmdtest 1.288s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2685135110/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2685135110/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2685135110/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2685135110/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2685135110/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2685135110/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2685135110/data/actions_artifacts === RUN TestFixturesAreConsistent --- PASS: TestFixturesAreConsistent (0.77s) === RUN TestCheckRepoStats --- PASS: TestCheckRepoStats (0.01s) === RUN TestDoctorUserStarNum --- PASS: TestDoctorUserStarNum (0.01s) === RUN Test_repoStatsCorrectIssueNumComments --- PASS: Test_repoStatsCorrectIssueNumComments (0.01s) PASS ok gitea.dev/models 2.048s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3232677933/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3232677933/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3232677933/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3232677933/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3232677933/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3232677933/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3232677933/data/actions_artifacts === RUN TestKeepLatestAttemptArtifacts --- PASS: TestKeepLatestAttemptArtifacts (0.00s) === RUN TestActionJobList_SortMatrixGroupsByName === RUN TestActionJobList_SortMatrixGroupsByName/matrix_group_sorted_naturally === RUN TestActionJobList_SortMatrixGroupsByName/non-adjacent_same_JobID_stays_in_input_order === RUN TestActionJobList_SortMatrixGroupsByName/groups_stay_in_input_order === RUN TestActionJobList_SortMatrixGroupsByName/empty_and_singleton --- PASS: TestActionJobList_SortMatrixGroupsByName (0.00s) --- PASS: TestActionJobList_SortMatrixGroupsByName/matrix_group_sorted_naturally (0.00s) --- PASS: TestActionJobList_SortMatrixGroupsByName/non-adjacent_same_JobID_stays_in_input_order (0.00s) --- PASS: TestActionJobList_SortMatrixGroupsByName/groups_stay_in_input_order (0.00s) --- PASS: TestActionJobList_SortMatrixGroupsByName/empty_and_singleton (0.00s) === RUN TestAggregateJobStatus --- PASS: TestAggregateJobStatus (0.00s) === RUN TestGetPriorAttemptChildrenByParent === RUN TestGetPriorAttemptChildrenByParent/matrix_instances_and_non-matrix_sibling_are_indexed_by_(JobID,_Name) === RUN TestGetPriorAttemptChildrenByParent/walkback_past_an_attempt_where_the_caller_had_no_children --- PASS: TestGetPriorAttemptChildrenByParent (0.06s) --- PASS: TestGetPriorAttemptChildrenByParent/matrix_instances_and_non-matrix_sibling_are_indexed_by_(JobID,_Name) (0.00s) --- PASS: TestGetPriorAttemptChildrenByParent/walkback_past_an_attempt_where_the_caller_had_no_children (0.00s) === RUN TestCancelJobs_NestedBlockedReusableCaller --- PASS: TestCancelJobs_NestedBlockedReusableCaller (0.02s) === RUN TestSettleRunAfterCancel === RUN TestSettleRunAfterCancel/done_job === RUN TestSettleRunAfterCancel/done_job_on_a_legacy_run_without_attempt === RUN TestSettleRunAfterCancel/no_job_at_all === RUN TestSettleRunAfterCancel/no_job_at_all_on_a_legacy_run_without_attempt --- PASS: TestSettleRunAfterCancel (0.02s) --- PASS: TestSettleRunAfterCancel/done_job (0.01s) --- PASS: TestSettleRunAfterCancel/done_job_on_a_legacy_run_without_attempt (0.01s) --- PASS: TestSettleRunAfterCancel/no_job_at_all (0.00s) --- PASS: TestSettleRunAfterCancel/no_job_at_all_on_a_legacy_run_without_attempt (0.00s) === RUN TestGetRunWorkflowIDs --- PASS: TestGetRunWorkflowIDs (0.00s) === RUN TestGetRepoRunWorkflowIDs --- PASS: TestGetRepoRunWorkflowIDs (0.00s) === RUN TestGetStatusInfoList --- PASS: TestGetStatusInfoList (0.00s) === RUN TestFindRunOptions_WorkflowRepoID --- PASS: TestFindRunOptions_WorkflowRepoID (0.00s) === RUN TestFindRunOptions_IsScopedRun --- PASS: TestFindRunOptions_IsScopedRun (0.00s) === RUN TestUpdateRepoRunsNumbers --- PASS: TestUpdateRepoRunsNumbers (0.00s) === RUN TestActionRun_Duration_NonNegative --- PASS: TestActionRun_Duration_NonNegative (0.00s) === RUN TestActionRun_WorkflowLink --- PASS: TestActionRun_WorkflowLink (0.00s) === RUN TestGetWorkflowLatestRun_RepoLevelOnly --- PASS: TestGetWorkflowLatestRun_RepoLevelOnly (0.01s) === RUN TestShouldPersistLastOnline === RUN TestShouldPersistLastOnline/fresh,_skip_write === RUN TestShouldPersistLastOnline/exactly_at_interval,_write === RUN TestShouldPersistLastOnline/stale,_write === RUN TestShouldPersistLastOnline/zero_(never_seen),_write --- PASS: TestShouldPersistLastOnline (0.00s) --- PASS: TestShouldPersistLastOnline/fresh,_skip_write (0.00s) --- PASS: TestShouldPersistLastOnline/exactly_at_interval,_write (0.00s) --- PASS: TestShouldPersistLastOnline/stale,_write (0.00s) --- PASS: TestShouldPersistLastOnline/zero_(never_seen),_write (0.00s) === RUN TestShouldPersistLastActive === RUN TestShouldPersistLastActive/fresh,_skip_write === RUN TestShouldPersistLastActive/exactly_at_interval,_write === RUN TestShouldPersistLastActive/stale,_write === RUN TestShouldPersistLastActive/zero_(never_seen),_write --- PASS: TestShouldPersistLastActive (0.00s) --- PASS: TestShouldPersistLastActive/fresh,_skip_write (0.00s) --- PASS: TestShouldPersistLastActive/exactly_at_interval,_write (0.00s) --- PASS: TestShouldPersistLastActive/stale,_write (0.00s) --- PASS: TestShouldPersistLastActive/zero_(never_seen),_write (0.00s) === RUN TestGetLatestRunnerToken --- PASS: TestGetLatestRunnerToken (0.00s) === RUN TestNewRunnerToken --- PASS: TestNewRunnerToken (0.00s) === RUN TestUpdateRunnerToken --- PASS: TestUpdateRunnerToken (0.00s) === RUN TestActionScheduleSpec_Parse === RUN TestActionScheduleSpec_Parse/regular === RUN TestActionScheduleSpec_Parse/invalid === RUN TestActionScheduleSpec_Parse/with_timezone === RUN TestActionScheduleSpec_Parse/timezone_irrelevant --- PASS: TestActionScheduleSpec_Parse (0.00s) --- PASS: TestActionScheduleSpec_Parse/regular (0.00s) --- PASS: TestActionScheduleSpec_Parse/invalid (0.00s) --- PASS: TestActionScheduleSpec_Parse/with_timezone (0.00s) --- PASS: TestActionScheduleSpec_Parse/timezone_irrelevant (0.00s) === RUN TestScopedWorkflowSource_IsWorkflowRequired --- PASS: TestScopedWorkflowSource_IsWorkflowRequired (0.00s) === RUN TestIsWorkflowRequiredInSources --- PASS: TestIsWorkflowRequiredInSources (0.00s) === RUN TestGetEffectiveScopedWorkflowSources --- PASS: TestGetEffectiveScopedWorkflowSources (0.00s) === RUN TestScopedWorkflowSourceCRUD --- PASS: TestScopedWorkflowSourceCRUD (0.00s) === RUN TestStatusAsResult --- PASS: TestStatusAsResult (0.00s) === RUN TestStatusFromResult --- PASS: TestStatusFromResult (0.00s) === RUN TestAggregateJobStatusContinueOnError === RUN TestAggregateJobStatusContinueOnError/all_success === RUN TestAggregateJobStatusContinueOnError/one_failure_without_continue-on-error === RUN TestAggregateJobStatusContinueOnError/one_failure_with_continue-on-error === RUN TestAggregateJobStatusContinueOnError/only_continued-failure === RUN TestAggregateJobStatusContinueOnError/continued-failure_plus_real_failure === RUN TestAggregateJobStatusContinueOnError/all_skipped === RUN TestAggregateJobStatusContinueOnError/continued-failure_plus_skipped_counts_as_success --- PASS: TestAggregateJobStatusContinueOnError (0.00s) --- PASS: TestAggregateJobStatusContinueOnError/all_success (0.00s) --- PASS: TestAggregateJobStatusContinueOnError/one_failure_without_continue-on-error (0.00s) --- PASS: TestAggregateJobStatusContinueOnError/one_failure_with_continue-on-error (0.00s) --- PASS: TestAggregateJobStatusContinueOnError/only_continued-failure (0.00s) --- PASS: TestAggregateJobStatusContinueOnError/continued-failure_plus_real_failure (0.00s) --- PASS: TestAggregateJobStatusContinueOnError/all_skipped (0.00s) --- PASS: TestAggregateJobStatusContinueOnError/continued-failure_plus_skipped_counts_as_success (0.00s) === RUN TestActionTask_GetRunJobLink --- PASS: TestActionTask_GetRunJobLink (0.00s) === RUN TestMakeTaskStepDisplayName === RUN TestMakeTaskStepDisplayName/explicit_name === RUN TestMakeTaskStepDisplayName/uses_step === RUN TestMakeTaskStepDisplayName/single-line_run === RUN TestMakeTaskStepDisplayName/multi-line_run_block_scalar === RUN TestMakeTaskStepDisplayName/fallback_to_id === RUN TestMakeTaskStepDisplayName/very_long_name_truncated === RUN TestMakeTaskStepDisplayName/very_long_run_truncated --- PASS: TestMakeTaskStepDisplayName (0.00s) --- PASS: TestMakeTaskStepDisplayName/explicit_name (0.00s) --- PASS: TestMakeTaskStepDisplayName/uses_step (0.00s) --- PASS: TestMakeTaskStepDisplayName/single-line_run (0.00s) --- PASS: TestMakeTaskStepDisplayName/multi-line_run_block_scalar (0.00s) --- PASS: TestMakeTaskStepDisplayName/fallback_to_id (0.00s) --- PASS: TestMakeTaskStepDisplayName/very_long_name_truncated (0.00s) --- PASS: TestMakeTaskStepDisplayName/very_long_run_truncated (0.00s) === RUN TestTaskCancellingFinalizesToCancelled === RUN TestTaskCancellingFinalizesToCancelled/runner_reports_success === RUN TestTaskCancellingFinalizesToCancelled/runner_reports_failure --- PASS: TestTaskCancellingFinalizesToCancelled (0.03s) --- PASS: TestTaskCancellingFinalizesToCancelled/runner_reports_success (0.01s) --- PASS: TestTaskCancellingFinalizesToCancelled/runner_reports_failure (0.01s) === RUN TestStopTaskCancellingFallsBackToCancelled === RUN TestStopTaskCancellingFallsBackToCancelled/legacy_runner === RUN TestStopTaskCancellingFallsBackToCancelled/missing_runner === RUN TestStopTaskCancellingFallsBackToCancelled/silent_runner --- PASS: TestStopTaskCancellingFallsBackToCancelled (0.04s) --- PASS: TestStopTaskCancellingFallsBackToCancelled/legacy_runner (0.01s) --- PASS: TestStopTaskCancellingFallsBackToCancelled/missing_runner (0.01s) --- PASS: TestStopTaskCancellingFallsBackToCancelled/silent_runner (0.01s) === RUN TestStopTaskCancellingKeepsReportTime --- PASS: TestStopTaskCancellingKeepsReportTime (0.01s) === RUN TestReleaseTaskForRunner --- PASS: TestReleaseTaskForRunner (0.06s) === RUN TestCreateTaskForRunnerPagination --- PASS: TestCreateTaskForRunnerPagination (0.06s) === RUN TestUpdateTaskByStateIsAtomic --- PASS: TestUpdateTaskByStateIsAtomic (0.02s) === RUN TestLogIndexes_ToDB === RUN TestLogIndexes_ToDB/#00 --- PASS: TestLogIndexes_ToDB (0.00s) --- PASS: TestLogIndexes_ToDB/#00 (0.00s) === RUN Test_calculateDuration === RUN Test_calculateDuration/unknown === RUN Test_calculateDuration/running === RUN Test_calculateDuration/done === RUN Test_calculateDuration/done_stopped_zero_no_fallback === RUN Test_calculateDuration/done_stopped_zero_uses_fallback === RUN Test_calculateDuration/done_stopped_before_started_no_fallback === RUN Test_calculateDuration/done_stopped_before_started_uses_fallback --- PASS: Test_calculateDuration (0.00s) --- PASS: Test_calculateDuration/unknown (0.00s) --- PASS: Test_calculateDuration/running (0.00s) --- PASS: Test_calculateDuration/done (0.00s) --- PASS: Test_calculateDuration/done_stopped_zero_no_fallback (0.00s) --- PASS: Test_calculateDuration/done_stopped_zero_uses_fallback (0.00s) --- PASS: Test_calculateDuration/done_stopped_before_started_no_fallback (0.00s) --- PASS: Test_calculateDuration/done_stopped_before_started_uses_fallback (0.00s) PASS ok gitea.dev/models/actions 1.351s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2082666826/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2082666826/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2082666826/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2082666826/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2082666826/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2082666826/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2082666826/data/actions_artifacts === RUN TestAction_GetRepoPath --- PASS: TestAction_GetRepoPath (0.26s) === RUN TestAction_GetRepoLink --- PASS: TestAction_GetRepoLink (0.00s) === RUN TestActivityReadable --- PASS: TestActivityReadable (0.00s) === RUN TestConsistencyUpdateAction --- PASS: TestConsistencyUpdateAction (0.01s) === RUN TestDeleteIssueActions --- PASS: TestDeleteIssueActions (0.01s) === RUN TestCreateOrUpdateIssueNotifications --- PASS: TestCreateOrUpdateIssueNotifications (0.02s) === RUN TestNotificationsForUser --- PASS: TestNotificationsForUser (0.00s) === RUN TestNotification_GetRepo --- PASS: TestNotification_GetRepo (0.00s) === RUN TestNotification_GetIssue --- PASS: TestNotification_GetIssue (0.01s) === RUN TestGetNotificationCount --- PASS: TestGetNotificationCount (0.00s) === RUN TestSetNotificationStatus --- PASS: TestSetNotificationStatus (0.00s) === RUN TestUpdateNotificationStatuses --- PASS: TestUpdateNotificationStatuses (0.00s) === RUN TestSetIssueReadBy --- PASS: TestSetIssueReadBy (0.00s) === RUN TestGetUserHeatmapDataByUser --- PASS: TestGetUserHeatmapDataByUser (0.03s) PASS ok gitea.dev/models/activities 1.587s ? gitea.dev/models/admin [no test files] 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2800971945/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2800971945/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2800971945/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2800971945/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2800971945/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2800971945/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2800971945/data/actions_artifacts === RUN TestCheckArmoredGPGKeyString --- PASS: TestCheckArmoredGPGKeyString (0.00s) === RUN TestCheckArmoredbrainpoolP256r1GPGKeyString --- PASS: TestCheckArmoredbrainpoolP256r1GPGKeyString (0.03s) === RUN TestExtractSignature --- PASS: TestExtractSignature (0.00s) === RUN TestCheckGPGUserEmail --- PASS: TestCheckGPGUserEmail (0.03s) === RUN TestCheckGParseGPGExpire --- PASS: TestCheckGParseGPGExpire (0.03s) === RUN TestTryGetKeyIDFromSignature --- PASS: TestTryGetKeyIDFromSignature (0.00s) === RUN TestParseGPGKey --- PASS: TestParseGPGKey (1.03s) === RUN TestWriteAuthorizedStringForKey === RUN TestWriteAuthorizedStringForKey/PublicKey === RUN TestWriteAuthorizedStringForKey/PublicKeyWithNewLine === RUN TestWriteAuthorizedStringForKey/PublicKeyInvalid === RUN TestWriteAuthorizedStringForKey/Principal === RUN TestWriteAuthorizedStringForKey/PrincipalInvalid --- PASS: TestWriteAuthorizedStringForKey (0.00s) --- PASS: TestWriteAuthorizedStringForKey/PublicKey (0.00s) --- PASS: TestWriteAuthorizedStringForKey/PublicKeyWithNewLine (0.00s) --- PASS: TestWriteAuthorizedStringForKey/PublicKeyInvalid (0.00s) --- PASS: TestWriteAuthorizedStringForKey/Principal (0.00s) --- PASS: TestWriteAuthorizedStringForKey/PrincipalInvalid (0.00s) === RUN Test_SSHParsePublicKey === RUN Test_SSHParsePublicKey/rsa-1024 === RUN Test_SSHParsePublicKey/rsa-1024/Native === RUN Test_SSHParsePublicKey/rsa-2048 === RUN Test_SSHParsePublicKey/rsa-2048/Native === RUN Test_SSHParsePublicKey/ecdsa-256 === RUN Test_SSHParsePublicKey/ecdsa-256/Native === RUN Test_SSHParsePublicKey/ecdsa-384 === RUN Test_SSHParsePublicKey/ecdsa-384/Native === RUN Test_SSHParsePublicKey/ecdsa-sk === RUN Test_SSHParsePublicKey/ecdsa-sk/Native === RUN Test_SSHParsePublicKey/ed25519-sk === RUN Test_SSHParsePublicKey/ed25519-sk/Native --- PASS: Test_SSHParsePublicKey (0.00s) --- PASS: Test_SSHParsePublicKey/rsa-1024 (0.00s) --- PASS: Test_SSHParsePublicKey/rsa-1024/Native (0.00s) --- PASS: Test_SSHParsePublicKey/rsa-2048 (0.00s) --- PASS: Test_SSHParsePublicKey/rsa-2048/Native (0.00s) --- PASS: Test_SSHParsePublicKey/ecdsa-256 (0.00s) --- PASS: Test_SSHParsePublicKey/ecdsa-256/Native (0.00s) --- PASS: Test_SSHParsePublicKey/ecdsa-384 (0.00s) --- PASS: Test_SSHParsePublicKey/ecdsa-384/Native (0.00s) --- PASS: Test_SSHParsePublicKey/ecdsa-sk (0.00s) --- PASS: Test_SSHParsePublicKey/ecdsa-sk/Native (0.00s) --- PASS: Test_SSHParsePublicKey/ed25519-sk (0.00s) --- PASS: Test_SSHParsePublicKey/ed25519-sk/Native (0.00s) === RUN Test_CheckPublicKeyString --- PASS: Test_CheckPublicKeyString (0.00s) === RUN Test_calcFingerprint === RUN Test_calcFingerprint/rsa-1024 === RUN Test_calcFingerprint/rsa-1024/Native === RUN Test_calcFingerprint/rsa-2048 === RUN Test_calcFingerprint/rsa-2048/Native === RUN Test_calcFingerprint/ecdsa-256 === RUN Test_calcFingerprint/ecdsa-256/Native === RUN Test_calcFingerprint/ecdsa-384 === RUN Test_calcFingerprint/ecdsa-384/Native === RUN Test_calcFingerprint/ecdsa-sk === RUN Test_calcFingerprint/ecdsa-sk/Native === RUN Test_calcFingerprint/ed25519-sk === RUN Test_calcFingerprint/ed25519-sk/Native --- PASS: Test_calcFingerprint (0.00s) --- PASS: Test_calcFingerprint/rsa-1024 (0.00s) --- PASS: Test_calcFingerprint/rsa-1024/Native (0.00s) --- PASS: Test_calcFingerprint/rsa-2048 (0.00s) --- PASS: Test_calcFingerprint/rsa-2048/Native (0.00s) --- PASS: Test_calcFingerprint/ecdsa-256 (0.00s) --- PASS: Test_calcFingerprint/ecdsa-256/Native (0.00s) --- PASS: Test_calcFingerprint/ecdsa-384 (0.00s) --- PASS: Test_calcFingerprint/ecdsa-384/Native (0.00s) --- PASS: Test_calcFingerprint/ecdsa-sk (0.00s) --- PASS: Test_calcFingerprint/ecdsa-sk/Native (0.00s) --- PASS: Test_calcFingerprint/ed25519-sk (0.00s) --- PASS: Test_calcFingerprint/ed25519-sk/Native (0.00s) === RUN TestFromOpenSSH === RUN TestFromOpenSSH/rsa ssh_key_test.go:302: cmd /usr/bin/ssh-keygen -Y sign -n file -f /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHrsa1728273770/001/id /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHrsa1728273770/001/data: Signing file /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHrsa1728273770/001/data Write signature to /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHrsa1728273770/001/data.sig === RUN TestFromOpenSSH/ed25519 ssh_key_test.go:302: cmd /usr/bin/ssh-keygen -Y sign -n file -f /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHed255191918190663/001/id /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHed255191918190663/001/data: Signing file /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHed255191918190663/001/data Write signature to /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHed255191918190663/001/data.sig --- PASS: TestFromOpenSSH (0.05s) --- PASS: TestFromOpenSSH/rsa (0.02s) --- PASS: TestFromOpenSSH/ed25519 (0.03s) === RUN TestToOpenSSH === RUN TestToOpenSSH/rsa ssh_key_test.go:366: cmd /usr/bin/ssh-keygen -Y verify -f /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHrsa2419918350/001/allowed_signer -I test@rekor.dev -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHrsa2419918350/001/oursig: Good "file" signature for test@rekor.dev with RSA key SHA256:IkDRT/GXJRFrSruMf8F+ilGMaW+kFf2D4quUApK8p6E ssh_key_test.go:370: cmd /usr/bin/ssh-keygen -Y verify -f /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHrsa2419918350/001/allowed_signer -I othertest@rekor.dev -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHrsa2419918350/001/oursig: Could not verify signature. ssh_key_test.go:375: cmd /usr/bin/ssh-keygen -Y check-novalidate -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHrsa2419918350/001/oursig: Signature verification failed: incorrect signature Could not verify signature. === RUN TestToOpenSSH/ed25519 ssh_key_test.go:366: cmd /usr/bin/ssh-keygen -Y verify -f /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHed255193584506869/001/allowed_signer -I test@rekor.dev -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHed255193584506869/001/oursig: Good "file" signature for test@rekor.dev with ED25519 key SHA256:nTfAQgoE0o29gjmx7bF3pSliPLQ/UVdzeK2QFM4qEw4 ssh_key_test.go:370: cmd /usr/bin/ssh-keygen -Y verify -f /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHed255193584506869/001/allowed_signer -I othertest@rekor.dev -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHed255193584506869/001/oursig: Could not verify signature. ssh_key_test.go:375: cmd /usr/bin/ssh-keygen -Y check-novalidate -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHed255193584506869/001/oursig: Signature verification failed: incorrect signature Could not verify signature. --- PASS: TestToOpenSSH (0.24s) --- PASS: TestToOpenSSH/rsa (0.17s) --- PASS: TestToOpenSSH/ed25519 (0.07s) === RUN TestRoundTrip === RUN TestRoundTrip/rsa === RUN TestRoundTrip/ed25519 --- PASS: TestRoundTrip (0.05s) --- PASS: TestRoundTrip/rsa (0.03s) --- PASS: TestRoundTrip/ed25519 (0.00s) === RUN TestPublicKeysAreExternallyManaged --- PASS: TestPublicKeysAreExternallyManaged (0.00s) === RUN TestCheckPublicKeyStringOversized --- PASS: TestCheckPublicKeyStringOversized (0.00s) PASS ok gitea.dev/models/asymkey 2.020s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261897825/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261897825/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261897825/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261897825/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261897825/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261897825/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261897825/data/actions_artifacts === RUN TestAccessTokenScope_Normalize === RUN TestAccessTokenScope_Normalize/#00 === RUN TestAccessTokenScope_Normalize/write:misc,write:notification,read:package,write:notification,public-only === RUN TestAccessTokenScope_Normalize/all === RUN TestAccessTokenScope_Normalize/write:activitypub,write:admin,write:misc,write:notification,write:organization,write:package,write:issue,write:repository,write:user === RUN TestAccessTokenScope_Normalize/write:activitypub,write:admin,write:misc,write:notification,write:organization,write:package,write:issue,write:repository,write:user,public-only === RUN TestAccessTokenScope_Normalize/read:activitypub === RUN TestAccessTokenScope_Normalize/write:activitypub === RUN TestAccessTokenScope_Normalize/write:activitypub,read:activitypub === RUN TestAccessTokenScope_Normalize/read:activitypub,write:activitypub === RUN TestAccessTokenScope_Normalize/read:activitypub,write:activitypub,write:activitypub === RUN TestAccessTokenScope_Normalize/read:admin === RUN TestAccessTokenScope_Normalize/write:admin === RUN TestAccessTokenScope_Normalize/write:admin,read:admin === RUN TestAccessTokenScope_Normalize/read:admin,write:admin === RUN TestAccessTokenScope_Normalize/read:admin,write:admin,write:admin === RUN TestAccessTokenScope_Normalize/read:issue === RUN TestAccessTokenScope_Normalize/write:issue === RUN TestAccessTokenScope_Normalize/write:issue,read:issue === RUN TestAccessTokenScope_Normalize/read:issue,write:issue === RUN TestAccessTokenScope_Normalize/read:issue,write:issue,write:issue === RUN TestAccessTokenScope_Normalize/read:misc === RUN TestAccessTokenScope_Normalize/write:misc === RUN TestAccessTokenScope_Normalize/write:misc,read:misc === RUN TestAccessTokenScope_Normalize/read:misc,write:misc === RUN TestAccessTokenScope_Normalize/read:misc,write:misc,write:misc === RUN TestAccessTokenScope_Normalize/read:notification === RUN TestAccessTokenScope_Normalize/write:notification === RUN TestAccessTokenScope_Normalize/write:notification,read:notification === RUN TestAccessTokenScope_Normalize/read:notification,write:notification === RUN TestAccessTokenScope_Normalize/read:notification,write:notification,write:notification === RUN TestAccessTokenScope_Normalize/read:organization === RUN TestAccessTokenScope_Normalize/write:organization === RUN TestAccessTokenScope_Normalize/write:organization,read:organization === RUN TestAccessTokenScope_Normalize/read:organization,write:organization === RUN TestAccessTokenScope_Normalize/read:organization,write:organization,write:organization === RUN TestAccessTokenScope_Normalize/read:package === RUN TestAccessTokenScope_Normalize/write:package === RUN TestAccessTokenScope_Normalize/write:package,read:package === RUN TestAccessTokenScope_Normalize/read:package,write:package === RUN TestAccessTokenScope_Normalize/read:package,write:package,write:package === RUN TestAccessTokenScope_Normalize/read:repository === RUN TestAccessTokenScope_Normalize/write:repository === RUN TestAccessTokenScope_Normalize/write:repository,read:repository === RUN TestAccessTokenScope_Normalize/read:repository,write:repository === RUN TestAccessTokenScope_Normalize/read:repository,write:repository,write:repository === RUN TestAccessTokenScope_Normalize/read:user === RUN TestAccessTokenScope_Normalize/write:user === RUN TestAccessTokenScope_Normalize/write:user,read:user === RUN TestAccessTokenScope_Normalize/read:user,write:user === RUN TestAccessTokenScope_Normalize/read:user,write:user,write:user --- PASS: TestAccessTokenScope_Normalize (0.00s) --- PASS: TestAccessTokenScope_Normalize/#00 (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:misc,write:notification,read:package,write:notification,public-only (0.00s) --- PASS: TestAccessTokenScope_Normalize/all (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:activitypub,write:admin,write:misc,write:notification,write:organization,write:package,write:issue,write:repository,write:user (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:activitypub,write:admin,write:misc,write:notification,write:organization,write:package,write:issue,write:repository,write:user,public-only (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:activitypub (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:activitypub (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:activitypub,read:activitypub (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:activitypub,write:activitypub (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:activitypub,write:activitypub,write:activitypub (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:admin (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:admin (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:admin,read:admin (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:admin,write:admin (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:admin,write:admin,write:admin (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:issue (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:issue (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:issue,read:issue (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:issue,write:issue (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:issue,write:issue,write:issue (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:misc (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:misc (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:misc,read:misc (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:misc,write:misc (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:misc,write:misc,write:misc (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:notification (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:notification (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:notification,read:notification (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:notification,write:notification (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:notification,write:notification,write:notification (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:organization (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:organization (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:organization,read:organization (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:organization,write:organization (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:organization,write:organization,write:organization (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:package (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:package (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:package,read:package (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:package,write:package (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:package,write:package,write:package (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:repository (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:repository (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:repository,read:repository (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:repository,write:repository (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:repository,write:repository,write:repository (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:user (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:user (0.00s) --- PASS: TestAccessTokenScope_Normalize/write:user,read:user (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:user,write:user (0.00s) --- PASS: TestAccessTokenScope_Normalize/read:user,write:user,write:user (0.00s) === RUN TestAccessTokenScope_HasScope === RUN TestAccessTokenScope_HasScope/read:admin === RUN TestAccessTokenScope_HasScope/all === RUN TestAccessTokenScope_HasScope/write:package === RUN TestAccessTokenScope_HasScope/public-only === RUN TestAccessTokenScope_HasScope/read:activitypub === RUN TestAccessTokenScope_HasScope/write:activitypub === RUN TestAccessTokenScope_HasScope/write:activitypub#01 === RUN TestAccessTokenScope_HasScope/read:activitypub#01 === RUN TestAccessTokenScope_HasScope/read:admin#01 === RUN TestAccessTokenScope_HasScope/write:admin === RUN TestAccessTokenScope_HasScope/write:admin#01 === RUN TestAccessTokenScope_HasScope/read:admin#02 === RUN TestAccessTokenScope_HasScope/read:issue === RUN TestAccessTokenScope_HasScope/write:issue === RUN TestAccessTokenScope_HasScope/write:issue#01 === RUN TestAccessTokenScope_HasScope/read:issue#01 === RUN TestAccessTokenScope_HasScope/read:misc === RUN TestAccessTokenScope_HasScope/write:misc === RUN TestAccessTokenScope_HasScope/write:misc#01 === RUN TestAccessTokenScope_HasScope/read:misc#01 === RUN TestAccessTokenScope_HasScope/read:notification === RUN TestAccessTokenScope_HasScope/write:notification === RUN TestAccessTokenScope_HasScope/write:notification#01 === RUN TestAccessTokenScope_HasScope/read:notification#01 === RUN TestAccessTokenScope_HasScope/read:organization === RUN TestAccessTokenScope_HasScope/write:organization === RUN TestAccessTokenScope_HasScope/write:organization#01 === RUN TestAccessTokenScope_HasScope/read:organization#01 === RUN TestAccessTokenScope_HasScope/read:package === RUN TestAccessTokenScope_HasScope/write:package#01 === RUN TestAccessTokenScope_HasScope/write:package#02 === RUN TestAccessTokenScope_HasScope/read:package#01 === RUN TestAccessTokenScope_HasScope/read:repository === RUN TestAccessTokenScope_HasScope/write:repository === RUN TestAccessTokenScope_HasScope/write:repository#01 === RUN TestAccessTokenScope_HasScope/read:repository#01 === RUN TestAccessTokenScope_HasScope/read:user === RUN TestAccessTokenScope_HasScope/write:user === RUN TestAccessTokenScope_HasScope/write:user#01 === RUN TestAccessTokenScope_HasScope/read:user#01 --- PASS: TestAccessTokenScope_HasScope (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:admin (0.00s) --- PASS: TestAccessTokenScope_HasScope/all (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:package (0.00s) --- PASS: TestAccessTokenScope_HasScope/public-only (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:activitypub (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:activitypub (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:activitypub#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:activitypub#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:admin#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:admin (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:admin#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:admin#02 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:issue (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:issue (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:issue#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:issue#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:misc (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:misc (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:misc#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:misc#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:notification (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:notification (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:notification#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:notification#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:organization (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:organization (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:organization#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:organization#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:package (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:package#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:package#02 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:package#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:repository (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:repository (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:repository#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:repository#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:user (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:user (0.00s) --- PASS: TestAccessTokenScope_HasScope/write:user#01 (0.00s) --- PASS: TestAccessTokenScope_HasScope/read:user#01 (0.00s) === RUN TestAccessTokenScope_EnforcePublicOnlyFrom === RUN TestAccessTokenScope_EnforcePublicOnlyFrom/write:user,public-only->write:user === RUN TestAccessTokenScope_EnforcePublicOnlyFrom/public-only->public-only,read:user === RUN TestAccessTokenScope_EnforcePublicOnlyFrom/write:user->write:user === RUN TestAccessTokenScope_EnforcePublicOnlyFrom/all->all --- PASS: TestAccessTokenScope_EnforcePublicOnlyFrom (0.00s) --- PASS: TestAccessTokenScope_EnforcePublicOnlyFrom/write:user,public-only->write:user (0.00s) --- PASS: TestAccessTokenScope_EnforcePublicOnlyFrom/public-only->public-only,read:user (0.00s) --- PASS: TestAccessTokenScope_EnforcePublicOnlyFrom/write:user->write:user (0.00s) --- PASS: TestAccessTokenScope_EnforcePublicOnlyFrom/all->all (0.00s) === RUN TestNewAccessToken --- PASS: TestNewAccessToken (0.21s) === RUN TestAccessTokenByNameExists --- PASS: TestAccessTokenByNameExists (0.03s) === RUN TestGetAccessTokenBySHA --- PASS: TestGetAccessTokenBySHA (0.02s) === RUN TestListAccessTokens --- PASS: TestListAccessTokens (0.00s) === RUN TestUpdateAccessToken --- PASS: TestUpdateAccessToken (0.02s) === RUN TestDeleteAccessTokenByID --- PASS: TestDeleteAccessTokenByID (0.03s) === RUN TestOAuth2AuthorizationCode === RUN TestOAuth2AuthorizationCode/GenerateSetsValidUntil === RUN TestOAuth2AuthorizationCode/Expired === RUN TestOAuth2AuthorizationCode/Invalidate --- PASS: TestOAuth2AuthorizationCode (0.00s) --- PASS: TestOAuth2AuthorizationCode/GenerateSetsValidUntil (0.00s) --- PASS: TestOAuth2AuthorizationCode/Expired (0.00s) --- PASS: TestOAuth2AuthorizationCode/Invalidate (0.00s) === RUN TestOAuth2Application_GenerateClientSecret --- PASS: TestOAuth2Application_GenerateClientSecret (0.09s) === RUN TestOAuth2Application_ContainsRedirectURI --- PASS: TestOAuth2Application_ContainsRedirectURI (0.00s) === RUN TestOAuth2Application_ContainsRedirectURI_WithPort --- PASS: TestOAuth2Application_ContainsRedirectURI_WithPort (0.00s) === RUN TestOAuth2Application_ContainsRedirect_Slash --- PASS: TestOAuth2Application_ContainsRedirect_Slash (0.00s) === RUN TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization === RUN TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization/exact-match === RUN TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization/ascii-case-insensitive === RUN TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization/non-ascii-not-folded === RUN TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization/loopback-strips-port --- PASS: TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization (0.00s) --- PASS: TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization/exact-match (0.00s) --- PASS: TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization/ascii-case-insensitive (0.00s) --- PASS: TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization/non-ascii-not-folded (0.00s) --- PASS: TestOAuth2Application_ContainsRedirectURI_ASCIIOnlyNormalization/loopback-strips-port (0.00s) === RUN TestOAuth2Application_ValidateClientSecret --- PASS: TestOAuth2Application_ValidateClientSecret (0.62s) === RUN TestGetOAuth2ApplicationByClientID --- PASS: TestGetOAuth2ApplicationByClientID (0.01s) === RUN TestCreateOAuth2Application --- PASS: TestCreateOAuth2Application (0.00s) === RUN TestOAuth2Application_TableName --- PASS: TestOAuth2Application_TableName (0.00s) === RUN TestOAuth2Application_GetGrantByUserID --- PASS: TestOAuth2Application_GetGrantByUserID (0.01s) === RUN TestOAuth2Application_CreateGrant --- PASS: TestOAuth2Application_CreateGrant (0.00s) === RUN TestGetOAuth2GrantByID --- PASS: TestGetOAuth2GrantByID (0.00s) === RUN TestOAuth2Grant_IncreaseCounter --- PASS: TestOAuth2Grant_IncreaseCounter (0.01s) === RUN TestOAuth2Grant_IncreaseCounterRejectsStaleCounter --- PASS: TestOAuth2Grant_IncreaseCounterRejectsStaleCounter (0.01s) === RUN TestOAuth2Grant_ScopeContains --- PASS: TestOAuth2Grant_ScopeContains (0.00s) === RUN TestOAuth2Grant_GenerateNewAuthorizationCode --- PASS: TestOAuth2Grant_GenerateNewAuthorizationCode (0.00s) === RUN TestOAuth2Grant_TableName --- PASS: TestOAuth2Grant_TableName (0.00s) === RUN TestGetOAuth2GrantsByUserID --- PASS: TestGetOAuth2GrantsByUserID (0.00s) === RUN TestRevokeOAuth2Grant --- PASS: TestRevokeOAuth2Grant (0.00s) === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/plain-success === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/plain-failure === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/s256-success === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/s256-failure === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/unsupported-method === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/no-pkce-configured === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/s256-missing-verifier === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/plain-missing-verifier === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/missing-method-with-challenge === RUN TestOAuth2AuthorizationCode_ValidateCodeChallenge/missing-method-rejects-even-matching-verifier --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge (0.01s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/plain-success (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/plain-failure (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/s256-success (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/s256-failure (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/unsupported-method (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/no-pkce-configured (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/s256-missing-verifier (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/plain-missing-verifier (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/missing-method-with-challenge (0.00s) --- PASS: TestOAuth2AuthorizationCode_ValidateCodeChallenge/missing-method-rejects-even-matching-verifier (0.00s) === RUN TestOAuth2AuthorizationCode_GenerateRedirectURI --- PASS: TestOAuth2AuthorizationCode_GenerateRedirectURI (0.00s) === RUN TestOAuth2AuthorizationCode_TableName --- PASS: TestOAuth2AuthorizationCode_TableName (0.00s) === RUN TestDumpAuthSource --- PASS: TestDumpAuthSource (0.01s) === RUN TestTwoFactorValidateAndConsumeTOTP --- PASS: TestTwoFactorValidateAndConsumeTOTP (0.01s) === RUN TestGetWebAuthnCredentialByID --- PASS: TestGetWebAuthnCredentialByID (0.01s) === RUN TestGetWebAuthnCredentialsByUID --- PASS: TestGetWebAuthnCredentialsByUID (0.00s) === RUN TestWebAuthnCredential_TableName --- PASS: TestWebAuthnCredential_TableName (0.00s) === RUN TestWebAuthnCredential_UpdateSignCount --- PASS: TestWebAuthnCredential_UpdateSignCount (0.00s) === RUN TestWebAuthnCredential_UpdateLargeCounter --- PASS: TestWebAuthnCredential_UpdateLargeCounter (0.00s) === RUN TestCreateCredential --- PASS: TestCreateCredential (0.00s) PASS ok gitea.dev/models/auth 2.196s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-184455676/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-184455676/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-184455676/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-184455676/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-184455676/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-184455676/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-184455676/data/actions_artifacts === RUN TestHashEmail --- PASS: TestHashEmail (0.00s) === RUN TestSizedAvatarLink --- PASS: TestSizedAvatarLink (0.01s) PASS ok gitea.dev/models/avatars 1.527s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1837162873/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1837162873/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1837162873/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1837162873/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1837162873/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1837162873/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1837162873/data/actions_artifacts === RUN TestParsePgSQLHostPort === RUN TestParsePgSQLHostPort/host-port conn_test.go:51: 127.0.0.1:1234 === RUN TestParsePgSQLHostPort/no-port conn_test.go:51: 127.0.0.1 === RUN TestParsePgSQLHostPort/ipv6-port conn_test.go:51: [::1]:1234 === RUN TestParsePgSQLHostPort/ipv6-no-port conn_test.go:51: [::1] === RUN TestParsePgSQLHostPort/unix-socket conn_test.go:51: /tmp/pg.sock:1234 === RUN TestParsePgSQLHostPort/unix-socket-no-port conn_test.go:51: /tmp/pg.sock --- PASS: TestParsePgSQLHostPort (0.00s) --- PASS: TestParsePgSQLHostPort/host-port (0.00s) --- PASS: TestParsePgSQLHostPort/no-port (0.00s) --- PASS: TestParsePgSQLHostPort/ipv6-port (0.00s) --- PASS: TestParsePgSQLHostPort/ipv6-no-port (0.00s) --- PASS: TestParsePgSQLHostPort/unix-socket (0.00s) --- PASS: TestParsePgSQLHostPort/unix-socket-no-port (0.00s) === RUN TestMakePgSQLConnStr --- PASS: TestMakePgSQLConnStr (0.00s) === RUN Test_halfCommitter === RUN Test_halfCommitter/commit_and_close === RUN Test_halfCommitter/rollback_and_close === RUN Test_halfCommitter/close_and_commit --- PASS: Test_halfCommitter (0.00s) --- PASS: Test_halfCommitter/commit_and_close (0.00s) --- PASS: Test_halfCommitter/rollback_and_close (0.00s) --- PASS: Test_halfCommitter/close_and_commit (0.00s) === RUN TestInTransaction --- PASS: TestInTransaction (0.13s) === RUN TestTxContext --- PASS: TestTxContext (0.00s) === RUN TestContextSafety === RUN TestContextSafety/Show-XORM-Bug === RUN TestContextSafety/DenyBadUsage --- PASS: TestContextSafety (0.01s) --- PASS: TestContextSafety/Show-XORM-Bug (0.00s) --- PASS: TestContextSafety/DenyBadUsage (0.00s) === RUN TestDumpDatabase --- PASS: TestDumpDatabase (0.76s) === RUN TestDeleteOrphanedObjects --- PASS: TestDeleteOrphanedObjects (0.01s) === RUN TestPrimaryKeys --- PASS: TestPrimaryKeys (0.00s) === RUN TestSyncMaxResourceIndex --- PASS: TestSyncMaxResourceIndex (0.01s) === RUN TestGetNextResourceIndex --- PASS: TestGetNextResourceIndex (0.01s) === RUN TestIterate --- PASS: TestIterate (0.07s) === RUN TestFind --- PASS: TestFind (0.01s) PASS ok gitea.dev/models/db 2.455s ? gitea.dev/models/db/install [no test files] 2026/09/06 06:40:36 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1142037326/data/attachments 2026/09/06 06:40:36 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1142037326/data/avatars 2026/09/06 06:40:36 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1142037326/data/repo-avatars 2026/09/06 06:40:36 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1142037326/data/repo-archive 2026/09/06 06:40:36 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1142037326/data/packages 2026/09/06 06:40:36 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1142037326/data/actions_log 2026/09/06 06:40:36 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1142037326/data/actions_artifacts === RUN TestPaginator --- PASS: TestPaginator (0.00s) PASS ok gitea.dev/models/db/paginator 0.740s 2026/09/06 06:40:36 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2453334721/data/attachments 2026/09/06 06:40:36 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2453334721/data/avatars 2026/09/06 06:40:36 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2453334721/data/repo-avatars 2026/09/06 06:40:36 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2453334721/data/repo-archive 2026/09/06 06:40:36 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2453334721/data/packages 2026/09/06 06:40:36 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2453334721/data/actions_log 2026/09/06 06:40:36 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2453334721/data/actions_artifacts === RUN TestDbfsBasic === RUN TestDbfsBasic/NonExisting === RUN TestDbfsBasic/Existing --- PASS: TestDbfsBasic (0.06s) --- PASS: TestDbfsBasic/NonExisting (0.00s) --- PASS: TestDbfsBasic/Existing (0.01s) === RUN TestDbfsReadWrite --- PASS: TestDbfsReadWrite (0.01s) === RUN TestDbfsSeekWrite --- PASS: TestDbfsSeekWrite (0.01s) PASS ok gitea.dev/models/dbfs 0.865s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-323711888/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-323711888/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-323711888/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-323711888/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-323711888/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-323711888/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-323711888/data/actions_artifacts === RUN TestGetLFSLockByIDAndRepo --- PASS: TestGetLFSLockByIDAndRepo (0.21s) === RUN TestDeleteLFSLockByIDRequiresRepoMatch --- PASS: TestDeleteLFSLockByIDRequiresRepoMatch (0.01s) === RUN TestBranchRuleMatchPriority --- PASS: TestBranchRuleMatchPriority (0.00s) === RUN TestBranchRuleSortLegacy --- PASS: TestBranchRuleSortLegacy (0.00s) === RUN TestBranchRuleSortPriority --- PASS: TestBranchRuleSortPriority (0.00s) === RUN TestBranchRuleMatch --- PASS: TestBranchRuleMatch (0.00s) === RUN TestUpdateProtectBranchPriorities --- PASS: TestUpdateProtectBranchPriorities (0.00s) === RUN TestNewProtectBranchPriority --- PASS: TestNewProtectBranchPriority (0.00s) === RUN TestCanBypassBranchProtection --- PASS: TestCanBypassBranchProtection (0.00s) === RUN TestAddDeletedBranch --- PASS: TestAddDeletedBranch (0.00s) === RUN TestGetDeletedBranches --- PASS: TestGetDeletedBranches (0.00s) === RUN TestGetDeletedBranch --- PASS: TestGetDeletedBranch (0.00s) === RUN TestFindRecentlyPushedNewBranchesUsesPushTime --- PASS: TestFindRecentlyPushedNewBranchesUsesPushTime (0.01s) === RUN TestDeletedBranchLoadUser --- PASS: TestDeletedBranchLoadUser (0.00s) === RUN TestRemoveDeletedBranch --- PASS: TestRemoveDeletedBranch (0.00s) === RUN TestFindRenamedBranch --- PASS: TestFindRenamedBranch (0.00s) === RUN TestRenameBranch --- PASS: TestRenameBranch (0.01s) === RUN TestRenameBranchProtectedRuleConflict --- PASS: TestRenameBranchProtectedRuleConflict (0.02s) === RUN TestOnlyGetDeletedBranchOnCorrectRepo --- PASS: TestOnlyGetDeletedBranchOnCorrectRepo (0.00s) === RUN TestCountBranches --- PASS: TestCountBranches (0.00s) === RUN TestGetCommitStatuses --- PASS: TestGetCommitStatuses (0.01s) === RUN Test_CalcCommitStatus --- PASS: Test_CalcCommitStatus (0.00s) === RUN TestFindRepoRecentCommitStatusContexts --- PASS: TestFindRepoRecentCommitStatusContexts (0.01s) === RUN TestCommitStatusesHideActionsURL --- PASS: TestCommitStatusesHideActionsURL (0.01s) === RUN TestGetCountLatestCommitStatus --- PASS: TestGetCountLatestCommitStatus (0.00s) === RUN TestIterateLFSMetaObjectsForRepoUpdatesDoNotSkip --- PASS: TestIterateLFSMetaObjectsForRepoUpdatesDoNotSkip (0.01s) === RUN TestIsUserAllowed --- PASS: TestIsUserAllowed (0.00s) === RUN TestIsUserAllowedToControlTag === RUN TestIsUserAllowedToControlTag/Glob === RUN TestIsUserAllowedToControlTag/Regex --- PASS: TestIsUserAllowedToControlTag (0.00s) --- PASS: TestIsUserAllowedToControlTag/Glob (0.00s) --- PASS: TestIsUserAllowedToControlTag/Regex (0.00s) PASS ok gitea.dev/models/git 1.546s ? gitea.dev/models/gituser [no test files] 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-179830432/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-179830432/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-179830432/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-179830432/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-179830432/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-179830432/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-179830432/data/actions_artifacts === RUN TestUpdateAssignee --- PASS: TestUpdateAssignee (0.27s) === RUN TestMakeIDsFromAPIAssigneesToAdd --- PASS: TestMakeIDsFromAPIAssigneesToAdd (0.01s) === RUN TestCreateComment --- PASS: TestCreateComment (0.00s) === RUN TestLoadAssigneeUserAndTeam_DeletedTeamBecomesGhostTeam --- PASS: TestLoadAssigneeUserAndTeam_DeletedTeamBecomesGhostTeam (0.00s) === RUN Test_UpdateCommentAttachment --- PASS: Test_UpdateCommentAttachment (0.00s) === RUN TestFetchCodeComments --- PASS: TestFetchCodeComments (0.02s) === RUN TestAsCommentType --- PASS: TestAsCommentType (0.00s) === RUN TestMigrate_InsertIssueComments --- PASS: TestMigrate_InsertIssueComments (0.01s) === RUN Test_UpdateIssueNumComments --- PASS: Test_UpdateIssueNumComments (0.00s) === RUN TestContentHistory [xorm] [warn] 2026/09/06 06:40:38.361090 Table user Column name db nullable is false, struct nullable is true --- PASS: TestContentHistory (0.02s) === RUN TestHasIssueContentHistoryForCommentOnly --- PASS: TestHasIssueContentHistoryForCommentOnly (0.00s) === RUN TestCreateIssueDependency --- PASS: TestCreateIssueDependency (0.01s) === RUN TestNewIssueLabelsScope --- PASS: TestNewIssueLabelsScope (0.08s) === RUN TestIssueList_LoadRepositories --- PASS: TestIssueList_LoadRepositories (0.01s) === RUN TestIssueList_LoadIsRead --- PASS: TestIssueList_LoadIsRead (0.00s) === RUN TestIssueList_LoadAttributes --- PASS: TestIssueList_LoadAttributes (0.01s) === RUN TestIssueMultipleProjects === RUN TestIssueMultipleProjects/GeneralTest === RUN TestIssueMultipleProjects/QueryByMultipleProjectIDs --- PASS: TestIssueMultipleProjects (0.04s) --- PASS: TestIssueMultipleProjects/GeneralTest (0.02s) --- PASS: TestIssueMultipleProjects/QueryByMultipleProjectIDs (0.02s) === RUN TestIssue_ReplaceLabels --- PASS: TestIssue_ReplaceLabels (0.12s) === RUN Test_GetIssueIDsByRepoID --- PASS: Test_GetIssueIDsByRepoID (0.02s) === RUN TestIssueAPIURL --- PASS: TestIssueAPIURL (0.03s) === RUN TestGetIssuesByIDs --- PASS: TestGetIssuesByIDs (0.00s) === RUN TestGetParticipantIDsByIssue --- PASS: TestGetParticipantIDsByIssue (0.00s) === RUN TestIssue_ClearLabels --- PASS: TestIssue_ClearLabels (0.05s) === RUN TestUpdateIssueCols --- PASS: TestUpdateIssueCols (0.00s) === RUN TestIssues --- PASS: TestIssues (0.11s) === RUN TestIssue_loadTotalTimes --- PASS: TestIssue_loadTotalTimes (0.00s) === RUN TestIssue_InsertIssue === RUN TestIssue_InsertIssue/my_issue1 === RUN TestIssue_InsertIssue/my_issue2,_this_is_my_son's_love_\n_\r_\_ --- PASS: TestIssue_InsertIssue (0.04s) --- PASS: TestIssue_InsertIssue/my_issue1 (0.02s) --- PASS: TestIssue_InsertIssue/my_issue2,_this_is_my_son's_love_\n_\r_\_ (0.01s) === RUN TestIssue_ResolveMentions --- PASS: TestIssue_ResolveMentions (0.09s) === RUN TestResourceIndex === RUN TestResourceIndex/issue_10 === RUN TestResourceIndex/issue_5 === RUN TestResourceIndex/issue_1 === RUN TestResourceIndex/issue_2 === RUN TestResourceIndex/issue_3 === RUN TestResourceIndex/issue_4 === RUN TestResourceIndex/issue_7 === RUN TestResourceIndex/issue_6 === RUN TestResourceIndex/issue_8 === RUN TestResourceIndex/issue_9 --- PASS: TestResourceIndex (0.22s) --- PASS: TestResourceIndex/issue_5 (0.07s) --- PASS: TestResourceIndex/issue_6 (0.09s) --- PASS: TestResourceIndex/issue_10 (0.11s) --- PASS: TestResourceIndex/issue_9 (0.11s) --- PASS: TestResourceIndex/issue_7 (0.12s) --- PASS: TestResourceIndex/issue_2 (0.14s) --- PASS: TestResourceIndex/issue_4 (0.14s) --- PASS: TestResourceIndex/issue_8 (0.16s) --- PASS: TestResourceIndex/issue_3 (0.19s) --- PASS: TestResourceIndex/issue_1 (0.22s) === RUN TestCorrectIssueStats === RUN TestCorrectIssueStats/Issue_1 === RUN TestCorrectIssueStats/Issue_2 === RUN TestCorrectIssueStats/Issue_3 === RUN TestCorrectIssueStats/Issue_4 === RUN TestCorrectIssueStats/Issue_5 === RUN TestCorrectIssueStats/Issue_6 === RUN TestCorrectIssueStats/Issue_7 === RUN TestCorrectIssueStats/Issue_8 === RUN TestCorrectIssueStats/Issue_9 === RUN TestCorrectIssueStats/Issue_10 === RUN TestCorrectIssueStats/Issue_11 === RUN TestCorrectIssueStats/Issue_12 === RUN TestCorrectIssueStats/Issue_13 === RUN TestCorrectIssueStats/Issue_14 === RUN TestCorrectIssueStats/Issue_15 === RUN TestCorrectIssueStats/Issue_16 === RUN TestCorrectIssueStats/Issue_17 === RUN TestCorrectIssueStats/Issue_18 === RUN TestCorrectIssueStats/Issue_19 === RUN TestCorrectIssueStats/Issue_20 === RUN TestCorrectIssueStats/Issue_21 === RUN TestCorrectIssueStats/Issue_22 === RUN TestCorrectIssueStats/Issue_23 === RUN TestCorrectIssueStats/Issue_24 === RUN TestCorrectIssueStats/Issue_25 === RUN TestCorrectIssueStats/Issue_26 === RUN TestCorrectIssueStats/Issue_27 === RUN TestCorrectIssueStats/Issue_28 === RUN TestCorrectIssueStats/Issue_29 === RUN TestCorrectIssueStats/Issue_30 === RUN TestCorrectIssueStats/Issue_31 === RUN TestCorrectIssueStats/Issue_32 === RUN TestCorrectIssueStats/Issue_33 === RUN TestCorrectIssueStats/Issue_34 === RUN TestCorrectIssueStats/Issue_35 --- PASS: TestCorrectIssueStats (0.34s) --- PASS: TestCorrectIssueStats/Issue_1 (0.01s) --- PASS: TestCorrectIssueStats/Issue_2 (0.02s) --- PASS: TestCorrectIssueStats/Issue_3 (0.01s) --- PASS: TestCorrectIssueStats/Issue_4 (0.01s) --- PASS: TestCorrectIssueStats/Issue_5 (0.02s) --- PASS: TestCorrectIssueStats/Issue_6 (0.01s) --- PASS: TestCorrectIssueStats/Issue_7 (0.01s) --- PASS: TestCorrectIssueStats/Issue_8 (0.01s) --- PASS: TestCorrectIssueStats/Issue_9 (0.01s) --- PASS: TestCorrectIssueStats/Issue_10 (0.01s) --- PASS: TestCorrectIssueStats/Issue_11 (0.01s) --- PASS: TestCorrectIssueStats/Issue_12 (0.01s) --- PASS: TestCorrectIssueStats/Issue_13 (0.01s) --- PASS: TestCorrectIssueStats/Issue_14 (0.01s) --- PASS: TestCorrectIssueStats/Issue_15 (0.01s) --- PASS: TestCorrectIssueStats/Issue_16 (0.01s) --- PASS: TestCorrectIssueStats/Issue_17 (0.01s) --- PASS: TestCorrectIssueStats/Issue_18 (0.01s) --- PASS: TestCorrectIssueStats/Issue_19 (0.01s) --- PASS: TestCorrectIssueStats/Issue_20 (0.01s) --- PASS: TestCorrectIssueStats/Issue_21 (0.01s) --- PASS: TestCorrectIssueStats/Issue_22 (0.01s) --- PASS: TestCorrectIssueStats/Issue_23 (0.01s) --- PASS: TestCorrectIssueStats/Issue_24 (0.01s) --- PASS: TestCorrectIssueStats/Issue_25 (0.01s) --- PASS: TestCorrectIssueStats/Issue_26 (0.01s) --- PASS: TestCorrectIssueStats/Issue_27 (0.01s) --- PASS: TestCorrectIssueStats/Issue_28 (0.01s) --- PASS: TestCorrectIssueStats/Issue_29 (0.01s) --- PASS: TestCorrectIssueStats/Issue_30 (0.01s) --- PASS: TestCorrectIssueStats/Issue_31 (0.01s) --- PASS: TestCorrectIssueStats/Issue_32 (0.01s) --- PASS: TestCorrectIssueStats/Issue_33 (0.01s) --- PASS: TestCorrectIssueStats/Issue_34 (0.01s) --- PASS: TestCorrectIssueStats/Issue_35 (0.01s) === RUN TestMilestoneList_LoadTotalTrackedTimes --- PASS: TestMilestoneList_LoadTotalTrackedTimes (0.01s) === RUN TestLoadTotalTrackedTime --- PASS: TestLoadTotalTrackedTime (0.00s) === RUN TestCountIssues --- PASS: TestCountIssues (0.00s) === RUN TestIssueLoadAttributes --- PASS: TestIssueLoadAttributes (0.01s) === RUN TestMigrate_CreateIssuesIsPullFalse --- PASS: TestMigrate_CreateIssuesIsPullFalse (0.00s) === RUN TestMigrate_CreateIssuesIsPullTrue --- PASS: TestMigrate_CreateIssuesIsPullTrue (0.01s) === RUN TestUpdateIssueAttachmentsCrossRepo --- PASS: TestUpdateIssueAttachmentsCrossRepo (0.01s) === RUN Test_NewIssueUsers --- PASS: Test_NewIssueUsers (0.00s) === RUN TestUpdateIssueUserByRead --- PASS: TestUpdateIssueUserByRead (0.01s) === RUN TestUpdateIssueUsersByMentions --- PASS: TestUpdateIssueUsersByMentions (0.00s) === RUN TestCreateOrUpdateIssueWatch --- PASS: TestCreateOrUpdateIssueWatch (0.01s) === RUN TestGetIssueWatch --- PASS: TestGetIssueWatch (0.00s) === RUN TestGetIssueWatchers --- PASS: TestGetIssueWatchers (0.00s) === RUN TestXRef_AddCrossReferences --- PASS: TestXRef_AddCrossReferences (0.08s) === RUN TestXRef_NeuterCrossReferences --- PASS: TestXRef_NeuterCrossReferences (0.04s) === RUN TestXRef_ResolveCrossReferences --- PASS: TestXRef_ResolveCrossReferences (0.07s) === RUN TestLabel_CalOpenIssues --- PASS: TestLabel_CalOpenIssues (0.01s) === RUN TestLabel_LoadSelectedLabelsAfterClick --- PASS: TestLabel_LoadSelectedLabelsAfterClick (0.00s) === RUN TestLabel_ExclusiveScope --- PASS: TestLabel_ExclusiveScope (0.00s) === RUN TestSortLabelsForDisplay --- PASS: TestSortLabelsForDisplay (0.00s) === RUN TestNewLabels --- PASS: TestNewLabels (0.09s) === RUN TestGetLabelByID --- PASS: TestGetLabelByID (0.00s) === RUN TestGetLabelInRepoByName --- PASS: TestGetLabelInRepoByName (0.00s) === RUN TestGetLabelInRepoByNames --- PASS: TestGetLabelInRepoByNames (0.00s) === RUN TestGetLabelInRepoByNamesDiscardsNonExistentLabels --- PASS: TestGetLabelInRepoByNamesDiscardsNonExistentLabels (0.00s) === RUN TestGetLabelInRepoByID --- PASS: TestGetLabelInRepoByID (0.00s) === RUN TestGetLabelsInRepoByIDs --- PASS: TestGetLabelsInRepoByIDs (0.00s) === RUN TestGetLabelsByRepoID --- PASS: TestGetLabelsByRepoID (0.00s) === RUN TestGetLabelInOrgByName --- PASS: TestGetLabelInOrgByName (0.00s) === RUN TestGetLabelInOrgByID --- PASS: TestGetLabelInOrgByID (0.00s) === RUN TestGetLabelsInOrgByIDs --- PASS: TestGetLabelsInOrgByIDs (0.00s) === RUN TestGetLabelsByOrgID --- PASS: TestGetLabelsByOrgID (0.00s) === RUN TestGetLabelsByIssueID --- PASS: TestGetLabelsByIssueID (0.00s) === RUN TestUpdateLabel --- PASS: TestUpdateLabel (0.07s) === RUN TestDeleteLabel --- PASS: TestDeleteLabel (0.15s) === RUN TestHasIssueLabel --- PASS: TestHasIssueLabel (0.01s) === RUN TestNewIssueLabel --- PASS: TestNewIssueLabel (0.02s) === RUN TestNewIssueExclusiveLabel --- PASS: TestNewIssueExclusiveLabel (0.03s) === RUN TestNewIssueLabels --- PASS: TestNewIssueLabels (0.03s) === RUN TestDeleteIssueLabel --- PASS: TestDeleteIssueLabel (0.02s) === RUN TestFixturesAreConsistent --- PASS: TestFixturesAreConsistent (0.02s) === RUN TestMilestone_State --- PASS: TestMilestone_State (0.00s) === RUN TestGetMilestoneByRepoID --- PASS: TestGetMilestoneByRepoID (0.00s) === RUN TestGetMilestonesByRepoID --- PASS: TestGetMilestonesByRepoID (0.01s) === RUN TestGetMilestones --- PASS: TestGetMilestones (0.01s) === RUN TestCountRepoMilestones --- PASS: TestCountRepoMilestones (0.00s) === RUN TestCountRepoClosedMilestones --- PASS: TestCountRepoClosedMilestones (0.00s) === RUN TestCountMilestonesByRepoIDs --- PASS: TestCountMilestonesByRepoIDs (0.00s) === RUN TestGetMilestonesByRepoIDs --- PASS: TestGetMilestonesByRepoIDs (0.01s) === RUN TestNewMilestone --- PASS: TestNewMilestone (0.12s) === RUN TestChangeMilestoneStatus --- PASS: TestChangeMilestoneStatus (0.22s) === RUN TestDeleteMilestoneByRepoID --- PASS: TestDeleteMilestoneByRepoID (0.09s) === RUN TestUpdateMilestone --- PASS: TestUpdateMilestone (0.01s) === RUN TestUpdateMilestoneCounters --- PASS: TestUpdateMilestoneCounters (0.01s) === RUN TestMigrate_InsertMilestones --- PASS: TestMigrate_InsertMilestones (0.01s) === RUN TestPullRequestList === RUN TestPullRequestList/LoadAttributes === RUN TestPullRequestList/LoadReviewCommentsCounts === RUN TestPullRequestList/LoadReviews === RUN TestPullRequestList/CanMaintainerWriteToBranch === RUN TestPullRequestList/CanMaintainerWriteToBranch/NoAllowMaintainerEdit === RUN TestPullRequestList/CanMaintainerWriteToBranch/WithAllowMaintainerEdit-HeadPosterReader === RUN TestPullRequestList/CanMaintainerWriteToBranch/WithAllowMaintainerEdit-HeadPosterWriter --- PASS: TestPullRequestList (0.05s) --- PASS: TestPullRequestList/LoadAttributes (0.00s) --- PASS: TestPullRequestList/LoadReviewCommentsCounts (0.00s) --- PASS: TestPullRequestList/LoadReviews (0.00s) --- PASS: TestPullRequestList/CanMaintainerWriteToBranch (0.04s) --- PASS: TestPullRequestList/CanMaintainerWriteToBranch/NoAllowMaintainerEdit (0.00s) --- PASS: TestPullRequestList/CanMaintainerWriteToBranch/WithAllowMaintainerEdit-HeadPosterReader (0.01s) --- PASS: TestPullRequestList/CanMaintainerWriteToBranch/WithAllowMaintainerEdit-HeadPosterWriter (0.01s) === RUN TestPullRequest === RUN TestPullRequest/LoadAttributes === RUN TestPullRequest/LoadIssue === RUN TestPullRequest/LoadBaseRepo === RUN TestPullRequest/LoadHeadRepo === RUN TestPullRequest/PullRequestsNewest === RUN TestPullRequest/PullRequestsOldest === RUN TestPullRequest/GetUnmergedPullRequest === RUN TestPullRequest/HasUnmergedPullRequestsByHeadInfo === RUN TestPullRequest/GetUnmergedPullRequestsByHeadInfo === RUN TestPullRequest/GetUnmergedPullRequestsByBaseInfo === RUN TestPullRequest/GetPullRequestByIndex === RUN TestPullRequest/GetPullRequestByID === RUN TestPullRequest/GetPullRequestByIssueID === RUN TestPullRequest/PullRequest_UpdateCols === RUN TestPullRequest/PullRequest_IsWorkInProgress === RUN TestPullRequest/PullRequest_GetWorkInProgressPrefixWorkInProgress === RUN TestPullRequest/DeleteOrphanedObjects === RUN TestPullRequest/ParseCodeOwnersLine === RUN TestPullRequest/CodeOwnerAbsolutePathPatterns === RUN TestPullRequest/CodeOwnerPatternMatchTimeout === RUN TestPullRequest/GetApprovers === RUN TestPullRequest/GetPullRequestByMergedCommit === RUN TestPullRequest/Migrate_InsertPullRequests === RUN TestPullRequest/PullRequestsClosedRecentSortType === RUN TestPullRequest/PullRequestsClosedRecentSortType/recentupdate === RUN TestPullRequest/PullRequestsClosedRecentSortType/recentclose === RUN TestPullRequest/LoadRequestedReviewers --- PASS: TestPullRequest (0.37s) --- PASS: TestPullRequest/LoadAttributes (0.00s) --- PASS: TestPullRequest/LoadIssue (0.00s) --- PASS: TestPullRequest/LoadBaseRepo (0.00s) --- PASS: TestPullRequest/LoadHeadRepo (0.00s) --- PASS: TestPullRequest/PullRequestsNewest (0.00s) --- PASS: TestPullRequest/PullRequestsOldest (0.00s) --- PASS: TestPullRequest/GetUnmergedPullRequest (0.00s) --- PASS: TestPullRequest/HasUnmergedPullRequestsByHeadInfo (0.00s) --- PASS: TestPullRequest/GetUnmergedPullRequestsByHeadInfo (0.00s) --- PASS: TestPullRequest/GetUnmergedPullRequestsByBaseInfo (0.00s) --- PASS: TestPullRequest/GetPullRequestByIndex (0.00s) --- PASS: TestPullRequest/GetPullRequestByID (0.00s) --- PASS: TestPullRequest/GetPullRequestByIssueID (0.00s) --- PASS: TestPullRequest/PullRequest_UpdateCols (0.00s) --- PASS: TestPullRequest/PullRequest_IsWorkInProgress (0.00s) --- PASS: TestPullRequest/PullRequest_GetWorkInProgressPrefixWorkInProgress (0.00s) --- PASS: TestPullRequest/DeleteOrphanedObjects (0.00s) --- PASS: TestPullRequest/ParseCodeOwnersLine (0.00s) --- PASS: TestPullRequest/CodeOwnerAbsolutePathPatterns (0.01s) --- PASS: TestPullRequest/CodeOwnerPatternMatchTimeout (0.29s) --- PASS: TestPullRequest/GetApprovers (0.00s) --- PASS: TestPullRequest/GetPullRequestByMergedCommit (0.00s) --- PASS: TestPullRequest/Migrate_InsertPullRequests (0.02s) --- PASS: TestPullRequest/PullRequestsClosedRecentSortType (0.00s) --- PASS: TestPullRequest/PullRequestsClosedRecentSortType/recentupdate (0.00s) --- PASS: TestPullRequest/PullRequestsClosedRecentSortType/recentclose (0.00s) --- PASS: TestPullRequest/LoadRequestedReviewers (0.01s) === RUN TestGetReviewByID --- PASS: TestGetReviewByID (0.01s) === RUN TestReview_HTMLURL --- PASS: TestReview_HTMLURL (0.00s) === RUN TestReview_LoadAttributes --- PASS: TestReview_LoadAttributes (0.00s) === RUN TestReview_LoadCodeComments --- PASS: TestReview_LoadCodeComments (0.00s) === RUN TestReviewType_Icon --- PASS: TestReviewType_Icon (0.00s) === RUN TestFindReviews --- PASS: TestFindReviews (0.00s) === RUN TestFindLatestReviews --- PASS: TestFindLatestReviews (0.00s) === RUN TestGetCurrentReview --- PASS: TestGetCurrentReview (0.00s) === RUN TestCreateReview --- PASS: TestCreateReview (0.00s) === RUN TestGetReviewersByIssueID --- PASS: TestGetReviewersByIssueID (0.01s) === RUN TestDismissReview --- PASS: TestDismissReview (0.01s) === RUN TestDeleteReview --- PASS: TestDeleteReview (0.01s) === RUN TestDeleteDismissedReview --- PASS: TestDeleteDismissedReview (0.01s) === RUN TestSubmitReviewClearsStaleReviewRequest --- PASS: TestSubmitReviewClearsStaleReviewRequest (0.02s) === RUN TestAddReviewRequest --- PASS: TestAddReviewRequest (0.02s) === RUN TestRecalculateReviewsOfficial --- PASS: TestRecalculateReviewsOfficial (0.03s) === RUN TestCancelStopwatch --- PASS: TestCancelStopwatch (0.01s) === RUN TestStopwatchExists --- PASS: TestStopwatchExists (0.00s) === RUN TestHasUserStopwatch --- PASS: TestHasUserStopwatch (0.00s) === RUN TestCreateOrStopIssueStopwatch --- PASS: TestCreateOrStopIssueStopwatch (0.02s) === RUN TestAddTime --- PASS: TestAddTime (0.01s) === RUN TestGetTrackedTimes --- PASS: TestGetTrackedTimes (0.01s) === RUN TestTotalTimesForEachUser --- PASS: TestTotalTimesForEachUser (0.00s) === RUN TestGetIssueTotalTrackedTime --- PASS: TestGetIssueTotalTrackedTime (0.00s) PASS ok gitea.dev/models/issues 4.567s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2816102543/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2816102543/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2816102543/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2816102543/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2816102543/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2816102543/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2816102543/data/actions_artifacts === RUN TestOrgList === RUN TestOrgList/CountOrganizations === RUN TestOrgList/FindOrgs === RUN TestOrgList/GetUserOrgsList === RUN TestOrgList/LoadOrgListTeams === RUN TestOrgList/DoerViewOtherVisibility --- PASS: TestOrgList (0.28s) --- PASS: TestOrgList/CountOrganizations (0.00s) --- PASS: TestOrgList/FindOrgs (0.01s) --- PASS: TestOrgList/GetUserOrgsList (0.01s) --- PASS: TestOrgList/LoadOrgListTeams (0.00s) --- PASS: TestOrgList/DoerViewOtherVisibility (0.00s) === RUN TestUser_IsOwnedBy 2026/09/06 06:40:37 .../organization/org_user.go:64:IsOrganizationOwner() [E] Organization does not have owner team: 2 --- PASS: TestUser_IsOwnedBy (0.01s) === RUN TestUser_IsOrgMember 2026/09/06 06:40:37 .../organization/org_user.go:64:IsOrganizationOwner() [E] Organization does not have owner team: 2 --- PASS: TestUser_IsOrgMember (0.01s) === RUN TestUser_GetTeam --- PASS: TestUser_GetTeam (0.01s) === RUN TestUser_GetOwnerTeam --- PASS: TestUser_GetOwnerTeam (0.00s) === RUN TestUser_GetTeams --- PASS: TestUser_GetTeams (0.00s) === RUN TestUser_GetMembers --- PASS: TestUser_GetMembers (0.00s) === RUN TestGetOrgByName --- PASS: TestGetOrgByName (0.00s) === RUN TestIsOrganizationOwner --- PASS: TestIsOrganizationOwner (0.00s) === RUN TestIsOrganizationMember 2026/09/06 06:40:38 .../organization/org_user.go:64:IsOrganizationOwner() [E] Organization does not have owner team: 9223372036854775807 --- PASS: TestIsOrganizationMember (0.00s) === RUN TestIsPublicMembership --- PASS: TestIsPublicMembership (0.00s) === RUN TestRestrictedUserOrgMembers === RUN TestRestrictedUserOrgMembers/restricted_user_sees_public_members_and_teammates === RUN TestRestrictedUserOrgMembers/restricted_user_sees_only_public_members_when_not_member === RUN TestRestrictedUserOrgMembers/non_logged_in_only_shows_public_members === RUN TestRestrictedUserOrgMembers/non_restricted_user_sees_all_members --- PASS: TestRestrictedUserOrgMembers (0.01s) --- PASS: TestRestrictedUserOrgMembers/restricted_user_sees_public_members_and_teammates (0.00s) --- PASS: TestRestrictedUserOrgMembers/restricted_user_sees_only_public_members_when_not_member (0.00s) --- PASS: TestRestrictedUserOrgMembers/non_logged_in_only_shows_public_members (0.00s) --- PASS: TestRestrictedUserOrgMembers/non_restricted_user_sees_all_members (0.00s) === RUN TestGetOrgUsersByOrgID --- PASS: TestGetOrgUsersByOrgID (0.00s) === RUN TestOrgMembersSearch === RUN TestOrgMembersSearch/match_by_username === RUN TestOrgMembersSearch/match_by_full_name === RUN TestOrgMembersSearch/private_email_hidden === RUN TestOrgMembersSearch/admin_can_search_private_email --- PASS: TestOrgMembersSearch (0.02s) --- PASS: TestOrgMembersSearch/match_by_username (0.00s) --- PASS: TestOrgMembersSearch/match_by_full_name (0.00s) --- PASS: TestOrgMembersSearch/private_email_hidden (0.00s) --- PASS: TestOrgMembersSearch/admin_can_search_private_email (0.01s) === RUN TestChangeOrgUserStatus --- PASS: TestChangeOrgUserStatus (0.01s) === RUN TestUser_GetUserTeamIDs --- PASS: TestUser_GetUserTeamIDs (0.01s) === RUN TestAccessibleReposEnv_CountRepos --- PASS: TestAccessibleReposEnv_CountRepos (0.01s) === RUN TestAccessibleReposEnv_RepoIDs --- PASS: TestAccessibleReposEnv_RepoIDs (0.01s) === RUN TestAccessibleReposEnv_MirrorRepos --- PASS: TestAccessibleReposEnv_MirrorRepos (0.01s) === RUN TestHasOrgVisibleTypePublic --- PASS: TestHasOrgVisibleTypePublic (0.02s) === RUN TestHasOrgVisibleTypeLimited --- PASS: TestHasOrgVisibleTypeLimited (0.03s) === RUN TestHasOrgVisibleTypePrivate --- PASS: TestHasOrgVisibleTypePrivate (0.03s) === RUN TestGetUsersWhoCanCreateOrgRepo --- PASS: TestGetUsersWhoCanCreateOrgRepo (0.01s) === RUN TestCanCreateOrgRepoByOwnerTeamWithoutFlag --- PASS: TestCanCreateOrgRepoByOwnerTeamWithoutFlag (0.00s) === RUN TestUser_RemoveOrgRepo --- PASS: TestUser_RemoveOrgRepo (0.18s) === RUN TestCreateOrganization --- PASS: TestCreateOrganization (0.10s) === RUN TestCreateOrganization2 --- PASS: TestCreateOrganization2 (0.19s) === RUN TestCreateOrganization3 --- PASS: TestCreateOrganization3 (0.17s) === RUN TestCreateOrganization4 --- PASS: TestCreateOrganization4 (0.08s) === RUN TestOrAnyRepoUnitPermission --- PASS: TestOrAnyRepoUnitPermission (0.00s) === RUN TestUserIsPublicMember === RUN TestUserIsPublicMember/UserId2IsPublicMemberOf3 === RUN TestUserIsPublicMember/UserId4IsPublicMemberOf3 === RUN TestUserIsPublicMember/UserId5IsPublicMemberOf6 === RUN TestUserIsPublicMember/UserId5IsPublicMemberOf7 --- PASS: TestUserIsPublicMember (0.00s) --- PASS: TestUserIsPublicMember/UserId2IsPublicMemberOf3 (0.00s) --- PASS: TestUserIsPublicMember/UserId4IsPublicMemberOf3 (0.00s) --- PASS: TestUserIsPublicMember/UserId5IsPublicMemberOf6 (0.00s) --- PASS: TestUserIsPublicMember/UserId5IsPublicMemberOf7 (0.00s) === RUN TestIsUserOrgOwner === RUN TestIsUserOrgOwner/UserId2IsOrgOwnerOf3 === RUN TestIsUserOrgOwner/UserId4IsOrgOwnerOf3 === RUN TestIsUserOrgOwner/UserId5IsOrgOwnerOf6 === RUN TestIsUserOrgOwner/UserId5IsOrgOwnerOf7 --- PASS: TestIsUserOrgOwner (0.00s) --- PASS: TestIsUserOrgOwner/UserId2IsOrgOwnerOf3 (0.00s) --- PASS: TestIsUserOrgOwner/UserId4IsOrgOwnerOf3 (0.00s) --- PASS: TestIsUserOrgOwner/UserId5IsOrgOwnerOf6 (0.00s) --- PASS: TestIsUserOrgOwner/UserId5IsOrgOwnerOf7 (0.00s) === RUN TestUserListIsPublicMember === RUN TestUserListIsPublicMember/IsPublicMemberOfOrgId3 === RUN TestUserListIsPublicMember/IsPublicMemberOfOrgId6 === RUN TestUserListIsPublicMember/IsPublicMemberOfOrgId7 === RUN TestUserListIsPublicMember/IsPublicMemberOfOrgId25 === RUN TestUserListIsPublicMember/IsPublicMemberOfOrgId22 --- PASS: TestUserListIsPublicMember (0.01s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId3 (0.00s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId6 (0.00s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId7 (0.00s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId25 (0.00s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId22 (0.00s) === RUN TestUserListIsUserOrgOwner === RUN TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId3 === RUN TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId6 === RUN TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId7 === RUN TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId25 === RUN TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId22 --- PASS: TestUserListIsUserOrgOwner (0.01s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId3 (0.00s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId6 (0.00s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId7 (0.00s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId25 (0.00s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId22 (0.00s) === RUN TestAddOrgUser --- PASS: TestAddOrgUser (0.05s) === RUN TestTeamInvite === RUN TestTeamInvite/MailExistsInTeam === RUN TestTeamInvite/CreateAndRemove --- PASS: TestTeamInvite (0.01s) --- PASS: TestTeamInvite/MailExistsInTeam (0.00s) --- PASS: TestTeamInvite/CreateAndRemove (0.00s) === RUN Test_GetTeamsByIDs --- PASS: Test_GetTeamsByIDs (0.00s) === RUN TestGetTeamsWithAccessToRepoUnit --- PASS: TestGetTeamsWithAccessToRepoUnit (0.01s) === RUN TestTeam_IsOwnerTeam --- PASS: TestTeam_IsOwnerTeam (0.00s) === RUN TestTeam_IsMember --- PASS: TestTeam_IsMember (0.01s) === RUN TestTeam_CanNonMemberReadMeta === RUN TestTeam_CanNonMemberReadMeta/public_team,_public_org,_member === RUN TestTeam_CanNonMemberReadMeta/public_team,_public_org,_outsider === RUN TestTeam_CanNonMemberReadMeta/public_team,_private_org,_org_member === RUN TestTeam_CanNonMemberReadMeta/public_team,_private_org,_outsider === RUN TestTeam_CanNonMemberReadMeta/limited_team,_org_member === RUN TestTeam_CanNonMemberReadMeta/limited_team,_outsider === RUN TestTeam_CanNonMemberReadMeta/private_team,_org_member === RUN TestTeam_CanNonMemberReadMeta/private_team,_outsider --- PASS: TestTeam_CanNonMemberReadMeta (0.01s) --- PASS: TestTeam_CanNonMemberReadMeta/public_team,_public_org,_member (0.00s) --- PASS: TestTeam_CanNonMemberReadMeta/public_team,_public_org,_outsider (0.00s) --- PASS: TestTeam_CanNonMemberReadMeta/public_team,_private_org,_org_member (0.00s) --- PASS: TestTeam_CanNonMemberReadMeta/public_team,_private_org,_outsider (0.00s) --- PASS: TestTeam_CanNonMemberReadMeta/limited_team,_org_member (0.00s) --- PASS: TestTeam_CanNonMemberReadMeta/limited_team,_outsider (0.00s) --- PASS: TestTeam_CanNonMemberReadMeta/private_team,_org_member (0.00s) --- PASS: TestTeam_CanNonMemberReadMeta/private_team,_outsider (0.00s) === RUN TestTeam_GetRepositories --- PASS: TestTeam_GetRepositories (0.01s) === RUN TestTeam_GetMembers --- PASS: TestTeam_GetMembers (0.01s) === RUN TestGetTeam --- PASS: TestGetTeam (0.00s) === RUN TestGetTeamByID --- PASS: TestGetTeamByID (0.00s) === RUN TestIsTeamMember --- PASS: TestIsTeamMember (0.00s) === RUN TestGetTeamMembers --- PASS: TestGetTeamMembers (0.00s) === RUN TestGetUserTeams --- PASS: TestGetUserTeams (0.01s) === RUN TestGetUserOrgTeams --- PASS: TestGetUserOrgTeams (0.01s) === RUN TestSearchTeamIncludeVisible --- PASS: TestSearchTeamIncludeVisible (0.00s) === RUN TestHasTeamRepo --- PASS: TestHasTeamRepo (0.00s) === RUN TestUsersInTeamsCount --- PASS: TestUsersInTeamsCount (0.00s) === RUN TestIsUsableTeamName --- PASS: TestIsUsableTeamName (0.00s) PASS ok gitea.dev/models/organization 2.251s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3874595659/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3874595659/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3874595659/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3874595659/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3874595659/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3874595659/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3874595659/data/actions_artifacts === RUN TestGetOrInsertBlobConcurrent --- PASS: TestGetOrInsertBlobConcurrent (0.63s) === RUN TestIsBlobAccessibleForRestrictedUser --- PASS: TestIsBlobAccessibleForRestrictedUser (0.04s) === RUN TestHasOwnerPackages --- PASS: TestHasOwnerPackages (0.02s) PASS ok gitea.dev/models/packages 1.595s ? gitea.dev/models/packages/alpine [no test files] ? gitea.dev/models/packages/arch [no test files] ? gitea.dev/models/packages/conan [no test files] ? gitea.dev/models/packages/conda [no test files] ? gitea.dev/models/packages/container [no test files] ? gitea.dev/models/packages/cran [no test files] ? gitea.dev/models/packages/debian [no test files] ? gitea.dev/models/packages/nuget [no test files] ? gitea.dev/models/packages/rpm [no test files] === RUN TestAccessMode --- PASS: TestAccessMode (0.00s) PASS ok gitea.dev/models/perm 0.007s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1357942475/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1357942475/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1357942475/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1357942475/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1357942475/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1357942475/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1357942475/data/actions_artifacts === RUN TestGetActionsUserRepoPermission === RUN TestGetActionsUserRepoPermission/SameRepo_Public === RUN TestGetActionsUserRepoPermission/SameRepo_Private === RUN TestGetActionsUserRepoPermission/CrossRepo_Denied_None === RUN TestGetActionsUserRepoPermission/ForkPR_NoCrossRepo === RUN TestGetActionsUserRepoPermission/CollaborativeOwner_ForkPR_Denied === RUN TestGetActionsUserRepoPermission/Inheritance_And_Clamping === RUN TestGetActionsUserRepoPermission/RepoOverride_Clamping --- PASS: TestGetActionsUserRepoPermission (0.35s) --- PASS: TestGetActionsUserRepoPermission/SameRepo_Public (0.00s) --- PASS: TestGetActionsUserRepoPermission/SameRepo_Private (0.00s) --- PASS: TestGetActionsUserRepoPermission/CrossRepo_Denied_None (0.00s) --- PASS: TestGetActionsUserRepoPermission/ForkPR_NoCrossRepo (0.00s) --- PASS: TestGetActionsUserRepoPermission/CollaborativeOwner_ForkPR_Denied (0.01s) --- PASS: TestGetActionsUserRepoPermission/Inheritance_And_Clamping (0.00s) --- PASS: TestGetActionsUserRepoPermission/RepoOverride_Clamping (0.00s) === RUN TestHasAnyUnitAccess --- PASS: TestHasAnyUnitAccess (0.00s) === RUN TestApplyPublicAccessRepoPermission --- PASS: TestApplyPublicAccessRepoPermission (0.00s) === RUN TestUnitAccessMode --- PASS: TestUnitAccessMode (0.00s) === RUN TestGetRepoPermission === RUN TestGetRepoPermission/GetIndividualUserRepoPermission === RUN TestGetRepoPermission/GetIndividualUserRepoPermission/DoerInTeamWithNoRepo === RUN TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithTeamUnitAccessNone === RUN TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithTeamUnitAccessWrite === RUN TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithNoopTeamOnPrivateRepo === RUN TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithReadIssueTeamOnPrivateRepo === RUN TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithReadIssueTeamAndWriteCollaboratorOnPrivateRepo === RUN TestGetRepoPermission/GetDoerRepoPermission --- PASS: TestGetRepoPermission (0.08s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission (0.03s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission/DoerInTeamWithNoRepo (0.00s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithTeamUnitAccessNone (0.00s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithTeamUnitAccessWrite (0.00s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithNoopTeamOnPrivateRepo (0.00s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithReadIssueTeamOnPrivateRepo (0.01s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithReadIssueTeamAndWriteCollaboratorOnPrivateRepo (0.01s) --- PASS: TestGetRepoPermission/GetDoerRepoPermission (0.04s) === RUN TestAccess === RUN TestAccess/AccessLevel === RUN TestAccess/HasAccess === RUN TestAccess/RecalculateAccesses === RUN TestAccess/RecalculateAccesses2 === RUN TestAccess/RecalculateAccessesUpdateMode === RUN TestAccess/RecalculateAccessesRemoveAccess --- PASS: TestAccess (0.05s) --- PASS: TestAccess/AccessLevel (0.01s) --- PASS: TestAccess/HasAccess (0.01s) --- PASS: TestAccess/RecalculateAccesses (0.01s) --- PASS: TestAccess/RecalculateAccesses2 (0.00s) --- PASS: TestAccess/RecalculateAccessesUpdateMode (0.00s) --- PASS: TestAccess/RecalculateAccessesRemoveAccess (0.00s) PASS ok gitea.dev/models/perm/access 1.704s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3664247469/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3664247469/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3664247469/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3664247469/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3664247469/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3664247469/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3664247469/data/actions_artifacts === RUN TestGetDefaultColumn --- PASS: TestGetDefaultColumn (0.16s) === RUN Test_moveIssuesToAnotherColumn --- PASS: Test_moveIssuesToAnotherColumn (0.01s) === RUN Test_MoveColumnsOnProject --- PASS: Test_MoveColumnsOnProject (0.00s) === RUN Test_NewColumn --- PASS: Test_NewColumn (0.06s) === RUN TestIsProjectTypeValid --- PASS: TestIsProjectTypeValid (0.00s) === RUN TestGetProjects --- PASS: TestGetProjects (0.00s) === RUN TestProject --- PASS: TestProject (0.02s) === RUN TestProjectsSort --- PASS: TestProjectsSort (0.05s) PASS ok gitea.dev/models/project 0.986s ? gitea.dev/models/pull [no test files] 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1748977053/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1748977053/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1748977053/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1748977053/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1748977053/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1748977053/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1748977053/data/actions_artifacts === RUN TestRepoComment === RUN TestRepoComment/AutoLink === RUN TestRepoComment/AbsoluteAndRelative === RUN TestRepoComment/WithCurrentRefSubURL === RUN TestRepoComment/NoRepo --- PASS: TestRepoComment (0.20s) --- PASS: TestRepoComment/AutoLink (0.03s) --- PASS: TestRepoComment/AbsoluteAndRelative (0.00s) --- PASS: TestRepoComment/WithCurrentRefSubURL (0.00s) --- PASS: TestRepoComment/NoRepo (0.00s) === RUN TestRepoFile === RUN TestRepoFile/AutoLink === RUN TestRepoFile/AbsoluteAndRelative === RUN TestRepoFile/WithCurrentRefSubURL === RUN TestRepoFile/WithCurrentRefSubURLByTag --- PASS: TestRepoFile (0.07s) --- PASS: TestRepoFile/AutoLink (0.00s) --- PASS: TestRepoFile/AbsoluteAndRelative (0.00s) --- PASS: TestRepoFile/WithCurrentRefSubURL (0.00s) --- PASS: TestRepoFile/WithCurrentRefSubURLByTag (0.00s) === RUN TestRepoFileOrgMode === RUN TestRepoFileOrgMode/Links === RUN TestRepoFileOrgMode/CodeHighlight --- PASS: TestRepoFileOrgMode (0.06s) --- PASS: TestRepoFileOrgMode/Links (0.00s) --- PASS: TestRepoFileOrgMode/CodeHighlight (0.01s) === RUN TestRepoWiki === RUN TestRepoWiki/AutoLink === RUN TestRepoWiki/AbsoluteAndRelative === RUN TestRepoWiki/PathInTag --- PASS: TestRepoWiki (0.08s) --- PASS: TestRepoWiki/AutoLink (0.01s) --- PASS: TestRepoWiki/AbsoluteAndRelative (0.00s) --- PASS: TestRepoWiki/PathInTag (0.00s) === RUN TestSimpleDocument --- PASS: TestSimpleDocument (0.08s) PASS ok gitea.dev/models/renderhelper 1.122s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1444918973/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1444918973/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1444918973/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1444918973/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1444918973/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1444918973/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1444918973/data/actions_artifacts === RUN TestArchiveType --- PASS: TestArchiveType (0.00s) === RUN TestRepoAvatarLink --- PASS: TestRepoAvatarLink (0.00s) === RUN TestDefaultTargetBranchSelection --- PASS: TestDefaultTargetBranchSelection (0.13s) === RUN TestPullRequestConfigFromDB === RUN TestPullRequestConfigFromDB/defaults === RUN TestPullRequestConfigFromDB/legacy_without_new_fields === RUN TestPullRequestConfigFromDB/empty_default_style --- PASS: TestPullRequestConfigFromDB (0.00s) --- PASS: TestPullRequestConfigFromDB/defaults (0.00s) --- PASS: TestPullRequestConfigFromDB/legacy_without_new_fields (0.00s) --- PASS: TestPullRequestConfigFromDB/empty_default_style (0.00s) === RUN TestPullRequestConfigValidateUpdateSettingsInvalidArgument === RUN TestPullRequestConfigValidateUpdateSettingsInvalidArgument/invalid_default_style === RUN TestPullRequestConfigValidateUpdateSettingsInvalidArgument/no_update_style_enabled === RUN TestPullRequestConfigValidateUpdateSettingsInvalidArgument/default_update_style_disabled --- PASS: TestPullRequestConfigValidateUpdateSettingsInvalidArgument (0.00s) --- PASS: TestPullRequestConfigValidateUpdateSettingsInvalidArgument/invalid_default_style (0.00s) --- PASS: TestPullRequestConfigValidateUpdateSettingsInvalidArgument/no_update_style_enabled (0.00s) --- PASS: TestPullRequestConfigValidateUpdateSettingsInvalidArgument/default_update_style_disabled (0.00s) === RUN TestMigrate_InsertReleases --- PASS: TestMigrate_InsertReleases (0.01s) === RUN Test_FindTagsByCommitIDs --- PASS: Test_FindTagsByCommitIDs (0.00s) === RUN TestAddReleaseAttachmentsRejectsDifferentRepo --- PASS: TestAddReleaseAttachmentsRejectsDifferentRepo (0.00s) === RUN TestAddReleaseAttachmentsAllowsLegacyMissingRepoID --- PASS: TestAddReleaseAttachmentsAllowsLegacyMissingRepoID (0.00s) === RUN TestAddReleaseAttachmentsRejectsRecentZeroRepoID --- PASS: TestAddReleaseAttachmentsRejectsRecentZeroRepoID (0.00s) === RUN TestGetRepositoryCount --- PASS: TestGetRepositoryCount (0.00s) === RUN TestGetPublicRepositoryCount --- PASS: TestGetPublicRepositoryCount (0.00s) === RUN TestGetPrivateRepositoryCount --- PASS: TestGetPrivateRepositoryCount (0.00s) === RUN TestRepoAPIURL --- PASS: TestRepoAPIURL (0.00s) === RUN TestWatchRepo --- PASS: TestWatchRepo (0.21s) === RUN TestMetas --- PASS: TestMetas (0.02s) === RUN TestGetRepositoryByURL === RUN TestGetRepositoryByURL/InvalidPath === RUN TestGetRepositoryByURL/ValidHttpURL === RUN TestGetRepositoryByURL/ValidGitSshURL === RUN TestGetRepositoryByURL/ValidImplicitSshURL --- PASS: TestGetRepositoryByURL (0.01s) --- PASS: TestGetRepositoryByURL/InvalidPath (0.00s) --- PASS: TestGetRepositoryByURL/ValidHttpURL (0.00s) --- PASS: TestGetRepositoryByURL/ValidGitSshURL (0.01s) --- PASS: TestGetRepositoryByURL/ValidImplicitSshURL (0.01s) === RUN TestComposeSSHCloneURL --- PASS: TestComposeSSHCloneURL (0.00s) === RUN TestIsUsableRepoName --- PASS: TestIsUsableRepoName (0.00s) === RUN TestIsValidSSHAccessRepoName --- PASS: TestIsValidSSHAccessRepoName (0.00s) === RUN TestActionsConfig_ScopedWorkflowOptOut --- PASS: TestActionsConfig_ScopedWorkflowOptOut (0.00s) === RUN TestActionsConfig_ScopedWorkflowSerialization --- PASS: TestActionsConfig_ScopedWorkflowSerialization (0.00s) === RUN TestActionsConfig --- PASS: TestActionsConfig (0.00s) === RUN TestActionsConfigTokenPermissions === RUN TestActionsConfigTokenPermissions/Default_Permission_Mode === RUN TestActionsConfigTokenPermissions/Explicit_Permission_Mode === RUN TestActionsConfigTokenPermissions/Effective_Permissions_-_Permissive_Mode === RUN TestActionsConfigTokenPermissions/Effective_Permissions_-_Restricted_Mode === RUN TestActionsConfigTokenPermissions/Clamp_Permissions --- PASS: TestActionsConfigTokenPermissions (0.00s) --- PASS: TestActionsConfigTokenPermissions/Default_Permission_Mode (0.00s) --- PASS: TestActionsConfigTokenPermissions/Explicit_Permission_Mode (0.00s) --- PASS: TestActionsConfigTokenPermissions/Effective_Permissions_-_Permissive_Mode (0.00s) --- PASS: TestActionsConfigTokenPermissions/Effective_Permissions_-_Restricted_Mode (0.00s) --- PASS: TestActionsConfigTokenPermissions/Clamp_Permissions (0.00s) === RUN TestIncreaseDownloadCount --- PASS: TestIncreaseDownloadCount (0.00s) === RUN TestGetByCommentOrIssueID --- PASS: TestGetByCommentOrIssueID (0.00s) === RUN TestDeleteAttachments --- PASS: TestDeleteAttachments (0.01s) === RUN TestGetAttachmentByID --- PASS: TestGetAttachmentByID (0.01s) === RUN TestAttachment_DownloadURL --- PASS: TestAttachment_DownloadURL (0.00s) === RUN TestUpdateAttachment --- PASS: TestUpdateAttachment (0.00s) === RUN TestGetAttachmentsByUUIDs --- PASS: TestGetAttachmentsByUUIDs (0.00s) === RUN TestGetUnlinkedAttachmentsByUserID --- PASS: TestGetUnlinkedAttachmentsByUserID (0.00s) === RUN TestRepository_GetCollaborators --- PASS: TestRepository_GetCollaborators (0.01s) === RUN TestRepository_IsCollaborator --- PASS: TestRepository_IsCollaborator (0.01s) === RUN TestRepository_IsOwnerMemberCollaborator --- PASS: TestRepository_IsOwnerMemberCollaborator (0.01s) === RUN TestRepo_GetCollaboration --- PASS: TestRepo_GetCollaboration (0.00s) === RUN TestGetUserFork --- PASS: TestGetUserFork (0.01s) === RUN TestPushMirrorsIterate --- PASS: TestPushMirrorsIterate (0.00s) === RUN TestLookupRedirect --- PASS: TestLookupRedirect (0.00s) === RUN TestNewRedirect --- PASS: TestNewRedirect (0.00s) === RUN TestNewRedirect2 --- PASS: TestNewRedirect2 (0.00s) === RUN TestNewRedirect3 --- PASS: TestNewRedirect3 (0.01s) === RUN TestSearchRepository === RUN TestSearchRepository/SearchRepositoryPublic === RUN TestSearchRepository/SearchRepositoryPublicRestricted === RUN TestSearchRepository/SearchRepositoryPublicRestricted/RestrictedUser-NoSignInRequirement === RUN TestSearchRepository/SearchRepositoryPublicRestricted/NormalUser-RequiredSignIn === RUN TestSearchRepository/SearchRepositoryPublicRestricted/RestrictedUser-RequiredSignIn === RUN TestSearchRepository/SearchRepositoryPrivate === RUN TestSearchRepository/SearchRepositoryNonExistingOwner === RUN TestSearchRepository/SearchRepositoryWithInDescription === RUN TestSearchRepository/SearchRepositoryNotInDescription === RUN TestSearchRepository/SearchRepositoryCases === RUN TestSearchRepository/SearchRepositoryCases/PublicRepositoriesByName === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByName === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByNameWithPagesizeLimitFirstPage === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByNameWithPagesizeLimitSecondPage === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByNameWithPagesizeLimitThirdPage === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByNameWithPagesizeLimitFourthPage === RUN TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUser === RUN TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUser2 === RUN TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfOrg3 === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser2 === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrg3 === RUN TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUserIncludingCollaborative === RUN TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUser2IncludingCollaborative === RUN TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfOrg3IncludingCollaborative === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUserIncludingCollaborative === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser2IncludingCollaborative === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrg3IncludingCollaborative === RUN TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfOrganization === RUN TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrganization === RUN TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesByName === RUN TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesByName === RUN TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesOfUserIncludingCollaborative === RUN TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborative === RUN TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborativeByName === RUN TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUser2IncludingCollaborativeByName === RUN TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesOfOrganization === RUN TestSearchRepository/SearchRepositoryCases/AllTemplates === RUN TestSearchRepository/SearchRepositoryCases/OwnerSlashRepoSearch === RUN TestSearchRepository/SearchRepositoryCases/OwnerSlashSearch --- PASS: TestSearchRepository (0.28s) --- PASS: TestSearchRepository/SearchRepositoryPublic (0.02s) --- PASS: TestSearchRepository/SearchRepositoryPublicRestricted (0.06s) --- PASS: TestSearchRepository/SearchRepositoryPublicRestricted/RestrictedUser-NoSignInRequirement (0.02s) --- PASS: TestSearchRepository/SearchRepositoryPublicRestricted/NormalUser-RequiredSignIn (0.01s) --- PASS: TestSearchRepository/SearchRepositoryPublicRestricted/RestrictedUser-RequiredSignIn (0.00s) --- PASS: TestSearchRepository/SearchRepositoryPrivate (0.02s) --- PASS: TestSearchRepository/SearchRepositoryNonExistingOwner (0.00s) --- PASS: TestSearchRepository/SearchRepositoryWithInDescription (0.01s) --- PASS: TestSearchRepository/SearchRepositoryNotInDescription (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases (0.15s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesByName (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByName (0.02s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByNameWithPagesizeLimitFirstPage (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByNameWithPagesizeLimitSecondPage (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByNameWithPagesizeLimitThirdPage (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByNameWithPagesizeLimitFourthPage (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUser (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUser2 (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfOrg3 (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser2 (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrg3 (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUserIncludingCollaborative (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUser2IncludingCollaborative (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfOrg3IncludingCollaborative (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUserIncludingCollaborative (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser2IncludingCollaborative (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrg3IncludingCollaborative (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfOrganization (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrganization (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesByName (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesByName (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesOfUserIncludingCollaborative (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborative (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborativeByName (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUser2IncludingCollaborativeByName (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesOfOrganization (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllTemplates (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/OwnerSlashRepoSearch (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/OwnerSlashSearch (0.00s) === RUN TestSearchRepositoryExcludesHiddenIndividualOwners --- PASS: TestSearchRepositoryExcludesHiddenIndividualOwners (0.01s) === RUN TestCountRepository === RUN TestCountRepository/PublicRepositoriesByName === RUN TestCountRepository/PublicAndPrivateRepositoriesByName === RUN TestCountRepository/PublicAndPrivateRepositoriesByNameWithPagesizeLimitFirstPage === RUN TestCountRepository/PublicAndPrivateRepositoriesByNameWithPagesizeLimitSecondPage === RUN TestCountRepository/PublicAndPrivateRepositoriesByNameWithPagesizeLimitThirdPage === RUN TestCountRepository/PublicAndPrivateRepositoriesByNameWithPagesizeLimitFourthPage === RUN TestCountRepository/PublicRepositoriesOfUser === RUN TestCountRepository/PublicRepositoriesOfUser2 === RUN TestCountRepository/PublicRepositoriesOfOrg3 === RUN TestCountRepository/PublicAndPrivateRepositoriesOfUser === RUN TestCountRepository/PublicAndPrivateRepositoriesOfUser2 === RUN TestCountRepository/PublicAndPrivateRepositoriesOfOrg3 === RUN TestCountRepository/PublicRepositoriesOfUserIncludingCollaborative === RUN TestCountRepository/PublicRepositoriesOfUser2IncludingCollaborative === RUN TestCountRepository/PublicRepositoriesOfOrg3IncludingCollaborative === RUN TestCountRepository/PublicAndPrivateRepositoriesOfUserIncludingCollaborative === RUN TestCountRepository/PublicAndPrivateRepositoriesOfUser2IncludingCollaborative === RUN TestCountRepository/PublicAndPrivateRepositoriesOfOrg3IncludingCollaborative === RUN TestCountRepository/PublicRepositoriesOfOrganization === RUN TestCountRepository/PublicAndPrivateRepositoriesOfOrganization === RUN TestCountRepository/AllPublic/PublicRepositoriesByName === RUN TestCountRepository/AllPublic/PublicAndPrivateRepositoriesByName === RUN TestCountRepository/AllPublic/PublicRepositoriesOfUserIncludingCollaborative === RUN TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborative === RUN TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborativeByName === RUN TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUser2IncludingCollaborativeByName === RUN TestCountRepository/AllPublic/PublicRepositoriesOfOrganization === RUN TestCountRepository/AllTemplates === RUN TestCountRepository/OwnerSlashRepoSearch === RUN TestCountRepository/OwnerSlashSearch --- PASS: TestCountRepository (0.03s) --- PASS: TestCountRepository/PublicRepositoriesByName (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesByName (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesByNameWithPagesizeLimitFirstPage (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesByNameWithPagesizeLimitSecondPage (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesByNameWithPagesizeLimitThirdPage (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesByNameWithPagesizeLimitFourthPage (0.00s) --- PASS: TestCountRepository/PublicRepositoriesOfUser (0.00s) --- PASS: TestCountRepository/PublicRepositoriesOfUser2 (0.00s) --- PASS: TestCountRepository/PublicRepositoriesOfOrg3 (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfUser (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfUser2 (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfOrg3 (0.00s) --- PASS: TestCountRepository/PublicRepositoriesOfUserIncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicRepositoriesOfUser2IncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicRepositoriesOfOrg3IncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfUserIncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfUser2IncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfOrg3IncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicRepositoriesOfOrganization (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfOrganization (0.00s) --- PASS: TestCountRepository/AllPublic/PublicRepositoriesByName (0.00s) --- PASS: TestCountRepository/AllPublic/PublicAndPrivateRepositoriesByName (0.00s) --- PASS: TestCountRepository/AllPublic/PublicRepositoriesOfUserIncludingCollaborative (0.00s) --- PASS: TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborative (0.00s) --- PASS: TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborativeByName (0.00s) --- PASS: TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUser2IncludingCollaborativeByName (0.00s) --- PASS: TestCountRepository/AllPublic/PublicRepositoriesOfOrganization (0.00s) --- PASS: TestCountRepository/AllTemplates (0.00s) --- PASS: TestCountRepository/OwnerSlashRepoSearch (0.00s) --- PASS: TestCountRepository/OwnerSlashSearch (0.00s) === RUN TestSearchRepositoryByTopicName === RUN TestSearchRepositoryByTopicName/AllPublic/SearchPublicRepositoriesFromTopicAndName === RUN TestSearchRepositoryByTopicName/AllPublic/OnlySearchPublicRepositoriesFromTopic === RUN TestSearchRepositoryByTopicName/AllPublic/OnlySearchMultipleKeywordPublicRepositoriesFromTopic --- PASS: TestSearchRepositoryByTopicName (0.01s) --- PASS: TestSearchRepositoryByTopicName/AllPublic/SearchPublicRepositoriesFromTopicAndName (0.00s) --- PASS: TestSearchRepositoryByTopicName/AllPublic/OnlySearchPublicRepositoriesFromTopic (0.00s) --- PASS: TestSearchRepositoryByTopicName/AllPublic/OnlySearchMultipleKeywordPublicRepositoriesFromTopic (0.00s) === RUN TestFindUserActionsAccessibleOwnerRepoIDs --- PASS: TestFindUserActionsAccessibleOwnerRepoIDs (0.00s) === RUN TestUserOrgUnitRepoCondTeamAuthorize --- PASS: TestUserOrgUnitRepoCondTeamAuthorize (0.00s) === RUN TestStarRepo --- PASS: TestStarRepo (0.00s) === RUN TestIsStaring --- PASS: TestIsStaring (0.01s) === RUN TestRepository_GetStargazers --- PASS: TestRepository_GetStargazers (0.00s) === RUN TestRepository_GetStargazers2 --- PASS: TestRepository_GetStargazers2 (0.00s) === RUN TestClearRepoStars --- PASS: TestClearRepoStars (0.00s) === RUN TestAddTopic --- PASS: TestAddTopic (0.02s) === RUN TestTopicValidator --- PASS: TestTopicValidator (0.00s) === RUN TestUserRepo === RUN TestUserRepo/GetIssuePostersWithSearch === RUN TestUserRepo/Assignees === RUN TestUserRepo/AssigneesNoTeamUnit --- PASS: TestUserRepo (0.02s) --- PASS: TestUserRepo/GetIssuePostersWithSearch (0.00s) --- PASS: TestUserRepo/Assignees (0.01s) --- PASS: TestUserRepo/AssigneesNoTeamUnit (0.01s) === RUN TestStarredWatchedReposExcludeNonPublicOwners --- PASS: TestStarredWatchedReposExcludeNonPublicOwners (0.02s) === RUN TestIsWatching --- PASS: TestIsWatching (0.01s) === RUN TestGetWatchers --- PASS: TestGetWatchers (0.01s) === RUN TestRepository_GetWatchers --- PASS: TestRepository_GetWatchers (0.01s) === RUN TestWatchIfAuto --- PASS: TestWatchIfAuto (0.02s) === RUN TestClearRepoWatches --- PASS: TestClearRepoWatches (0.01s) === RUN TestRepository_WikiCloneLink --- PASS: TestRepository_WikiCloneLink (0.01s) === RUN TestRepository_RelativeWikiPath --- PASS: TestRepository_RelativeWikiPath (0.00s) PASS ok gitea.dev/models/repo 2.511s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2743502433/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2743502433/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2743502433/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2743502433/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2743502433/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2743502433/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2743502433/data/actions_artifacts === RUN TestGetScopedSecretsForJob === RUN TestGetScopedSecretsForJob/TopLevelJob_ReturnsBaseUnchanged === RUN TestGetScopedSecretsForJob/CallerInherit_PassesParentScopeThrough === RUN TestGetScopedSecretsForJob/CallerEmptySecrets_ExposesOnlyAutoTokens === RUN TestGetScopedSecretsForJob/CallerMapping_OnlyMappedAliasesPlusTokens === RUN TestGetScopedSecretsForJob/CallerMapping_CaseInsensitiveSource === RUN TestGetScopedSecretsForJob/CallerMapping_UnknownSourceDropsAlias === RUN TestGetScopedSecretsForJob/Nested_InheritThenInherit_FullScope === RUN TestGetScopedSecretsForJob/Nested_InheritThenMapping_InnerNarrows === RUN TestGetScopedSecretsForJob/Nested_MappingThenInherit_OuterNarrows === RUN TestGetScopedSecretsForJob/Nested_MappingThenMapping_InnerSourceMustExistInOuterScope --- PASS: TestGetScopedSecretsForJob (0.65s) --- PASS: TestGetScopedSecretsForJob/TopLevelJob_ReturnsBaseUnchanged (0.00s) --- PASS: TestGetScopedSecretsForJob/CallerInherit_PassesParentScopeThrough (0.00s) --- PASS: TestGetScopedSecretsForJob/CallerEmptySecrets_ExposesOnlyAutoTokens (0.00s) --- PASS: TestGetScopedSecretsForJob/CallerMapping_OnlyMappedAliasesPlusTokens (0.02s) --- PASS: TestGetScopedSecretsForJob/CallerMapping_CaseInsensitiveSource (0.01s) --- PASS: TestGetScopedSecretsForJob/CallerMapping_UnknownSourceDropsAlias (0.01s) --- PASS: TestGetScopedSecretsForJob/Nested_InheritThenInherit_FullScope (0.02s) --- PASS: TestGetScopedSecretsForJob/Nested_InheritThenMapping_InnerNarrows (0.02s) --- PASS: TestGetScopedSecretsForJob/Nested_MappingThenInherit_OuterNarrows (0.00s) --- PASS: TestGetScopedSecretsForJob/Nested_MappingThenMapping_InnerSourceMustExistInOuterScope (0.02s) PASS ok gitea.dev/models/secret 1.528s ? gitea.dev/models/shared/types [no test files] 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4271065884/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4271065884/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4271065884/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4271065884/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4271065884/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4271065884/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4271065884/data/actions_artifacts === RUN TestNotice_TrStr --- PASS: TestNotice_TrStr (0.00s) === RUN TestCreateNotice --- PASS: TestCreateNotice (0.18s) === RUN TestCreateRepositoryNotice --- PASS: TestCreateRepositoryNotice (0.00s) === RUN TestCountNotices --- PASS: TestCountNotices (0.00s) === RUN TestNotices --- PASS: TestNotices (0.00s) === RUN TestDeleteNotices --- PASS: TestDeleteNotices (0.00s) === RUN TestDeleteNotices2 --- PASS: TestDeleteNotices2 (0.00s) === RUN TestDeleteNoticesByIDs --- PASS: TestDeleteNoticesByIDs (0.00s) === RUN TestSettings --- PASS: TestSettings (0.00s) PASS ok gitea.dev/models/system 1.022s === RUN TestLoadUnitConfig === RUN TestLoadUnitConfig/regular === RUN TestLoadUnitConfig/invalid 2026/09/06 06:40:36 models/unit/unit.go:164:LoadUnitConfig() [W] Invalid keys in disabled repo units: invalid.1 === RUN TestLoadUnitConfig/duplicate 2026/09/06 06:40:36 models/unit/unit.go:170:LoadUnitConfig() [W] Invalid keys in default repo units: invalid.2 2026/09/06 06:40:36 models/unit/unit.go:179:LoadUnitConfig() [W] Invalid keys in default fork repo units: invalid.3 === RUN TestLoadUnitConfig/empty_default --- PASS: TestLoadUnitConfig (0.00s) --- PASS: TestLoadUnitConfig/regular (0.00s) --- PASS: TestLoadUnitConfig/invalid (0.00s) --- PASS: TestLoadUnitConfig/duplicate (0.00s) --- PASS: TestLoadUnitConfig/empty_default (0.00s) PASS ok gitea.dev/models/unit 0.021s === RUN TestFixturesLoader === RUN TestFixturesLoader/Internal === RUN TestFixturesLoader/Vendor fixtures_test.go:89: --- PASS: TestFixturesLoader (0.49s) --- PASS: TestFixturesLoader/Internal (0.20s) --- SKIP: TestFixturesLoader/Vendor (0.00s) PASS ok gitea.dev/models/unittest 0.536s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3420166835/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3420166835/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3420166835/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3420166835/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3420166835/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3420166835/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3420166835/data/actions_artifacts === RUN TestUserAvatarLink --- PASS: TestUserAvatarLink (0.00s) === RUN TestUserAvatarGenerate 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /home/buildozer/aports/community/gitea/tmp/TestUserAvatarGenerate3517282706/001 --- PASS: TestUserAvatarGenerate (0.15s) === RUN TestSystemUser --- PASS: TestSystemUser (0.00s) === RUN TestBadge === RUN TestBadge/GetBadgeNotExist === RUN TestBadge/CreateBadgeAlreadyExists === RUN TestBadge/GetBadgeUsers === RUN TestBadge/AddAndRemoveUserBadges === RUN TestBadge/SearchBadgesOrderingAndKeyword --- PASS: TestBadge (0.03s) --- PASS: TestBadge/GetBadgeNotExist (0.00s) --- PASS: TestBadge/CreateBadgeAlreadyExists (0.00s) --- PASS: TestBadge/GetBadgeUsers (0.01s) --- PASS: TestBadge/AddAndRemoveUserBadges (0.00s) --- PASS: TestBadge/SearchBadgesOrderingAndKeyword (0.01s) === RUN TestGetEmailAddresses --- PASS: TestGetEmailAddresses (0.00s) === RUN TestIsEmailUsed --- PASS: TestIsEmailUsed (0.00s) === RUN TestMakeEmailPrimary --- PASS: TestMakeEmailPrimary (0.00s) === RUN TestActivate --- PASS: TestActivate (0.01s) === RUN TestListEmails --- PASS: TestListEmails (0.01s) === RUN TestEmailAddressValidate === RUN TestEmailAddressValidate/&233@qq.com === RUN TestEmailAddressValidate/?233@qq.com === RUN TestEmailAddressValidate/first;last@iana.org === RUN TestEmailAddressValidate/Foo_ === RUN TestEmailAddressValidate/first$last@iana.org === RUN TestEmailAddressValidate/%233@qq.com === RUN TestEmailAddressValidate/'233@qq.com === RUN TestEmailAddressValidate/*233@qq.com === RUN TestEmailAddressValidate/^233@qq.com === RUN TestEmailAddressValidate/~233@qq.com === RUN TestEmailAddressValidate/first?last@iana.org === RUN TestEmailAddressValidate/_233@qq.com === RUN TestEmailAddressValidate/{233@qq.com === RUN TestEmailAddressValidate/;233@qq.com === RUN TestEmailAddressValidate/first!last@iana.org === RUN TestEmailAddressValidate/first#last@iana.org === RUN TestEmailAddressValidate/first*last@iana.org === RUN TestEmailAddressValidate/first+last@iana.org === RUN TestEmailAddressValidate/first|last@iana.org === RUN TestEmailAddressValidate/$233@qq.com === RUN TestEmailAddressValidate/-233@qq.com === RUN TestEmailAddressValidate/132@hotmail.com === RUN TestEmailAddressValidate/1-3-2@test.org === RUN TestEmailAddressValidate/a_123@test.org.cn === RUN TestEmailAddressValidate/first`last@iana.org === RUN TestEmailAddressValidate/first{last@iana.org === RUN TestEmailAddressValidate//233@qq.com === RUN TestEmailAddressValidate/=233@qq.com === RUN TestEmailAddressValidate/|233@qq.com === RUN TestEmailAddressValidate/first.last@iana.org === RUN TestEmailAddressValidate/first&last@iana.org === RUN TestEmailAddressValidate/!233@qq.com === RUN TestEmailAddressValidate/K === RUN TestEmailAddressValidate/abc@gmail.com === RUN TestEmailAddressValidate/first'last@iana.org === RUN TestEmailAddressValidate/first/last@iana.org === RUN TestEmailAddressValidate/first^last@iana.org === RUN TestEmailAddressValidate/first~last@iana.org === RUN TestEmailAddressValidate/#233@qq.com === RUN TestEmailAddressValidate/+233@qq.com === RUN TestEmailAddressValidate/}233@qq.com === RUN TestEmailAddressValidate/1.3.2@test.org === RUN TestEmailAddressValidate/first%last@iana.org === RUN TestEmailAddressValidate/`233@qq.com === RUN TestEmailAddressValidate/.233@qq.com === RUN TestEmailAddressValidate/first=last@iana.org === RUN TestEmailAddressValidate/first}last@iana.org --- PASS: TestEmailAddressValidate (0.00s) --- PASS: TestEmailAddressValidate/&233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/?233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/first;last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/Foo_ (0.00s) --- PASS: TestEmailAddressValidate/first$last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/%233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/'233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/*233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/^233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/~233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/first?last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/_233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/{233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/;233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/first!last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first#last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first*last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first+last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first|last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/$233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/-233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/132@hotmail.com (0.00s) --- PASS: TestEmailAddressValidate/1-3-2@test.org (0.00s) --- PASS: TestEmailAddressValidate/a_123@test.org.cn (0.00s) --- PASS: TestEmailAddressValidate/first`last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first{last@iana.org (0.00s) --- PASS: TestEmailAddressValidate//233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/=233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/|233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/first.last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first&last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/!233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/K (0.00s) --- PASS: TestEmailAddressValidate/abc@gmail.com (0.00s) --- PASS: TestEmailAddressValidate/first'last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first/last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first^last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first~last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/#233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/+233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/}233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/1.3.2@test.org (0.00s) --- PASS: TestEmailAddressValidate/first%last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/`233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/.233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/first=last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first}last@iana.org (0.00s) === RUN TestIsFollowing --- PASS: TestIsFollowing (0.00s) === RUN TestGetUserOpenIDs --- PASS: TestGetUserOpenIDs (0.00s) === RUN TestToggleUserOpenIDVisibility --- PASS: TestToggleUserOpenIDVisibility (0.00s) === RUN TestToggleUserOpenIDVisibilityRequiresOwnership --- PASS: TestToggleUserOpenIDVisibilityRequiresOwnership (0.00s) === RUN TestLookupUserRedirect --- PASS: TestLookupUserRedirect (0.00s) === RUN TestSettings --- PASS: TestSettings (0.00s) === RUN TestIsUsableUsername --- PASS: TestIsUsableUsername (0.00s) === RUN TestOAuth2Application_LoadUser --- PASS: TestOAuth2Application_LoadUser (0.00s) === RUN TestUserEmails === RUN TestUserEmails/GetUserEmailsByNames === RUN TestUserEmails/GetUsersByEmails === RUN TestUserEmails/GetUsersByEmails/UseR1@example.com === RUN TestUserEmails/GetUsersByEmails/user1-2@example.COM === RUN TestUserEmails/GetUsersByEmails/USER2@NoReply.gitea.internal === RUN TestUserEmails/GetUsersByEmails/2+user2@NoReply.gitea.internal === RUN TestUserEmails/GetUsersByEmails/2+oldUser2UsernameWhichDoesNotMatterForQuery@NoReply.gitea.internal === RUN TestUserEmails/GetUsersByEmails/99999+badUser@NoReply.gitea.internal === RUN TestUserEmails/GetUsersByEmails/user4@example.com === RUN TestUserEmails/GetUsersByEmails/no-such === RUN TestUserEmails/GetUsersByEmails/NoReplyConflict === RUN TestUserEmails/GetUserByEmail === RUN TestUserEmails/GetUserByEmail/UseR1@example.com === RUN TestUserEmails/GetUserByEmail/user1-2@example.COM === RUN TestUserEmails/GetUserByEmail/USER2@NoReply.gitea.internal === RUN TestUserEmails/GetUserByEmail/2+user2@NoReply.gitea.internal === RUN TestUserEmails/GetUserByEmail/2+oldUser2UsernameWhichDoesNotMatterForQuery@NoReply.gitea.internal === RUN TestUserEmails/GetUserByEmail/99999+badUser@NoReply.gitea.internal === RUN TestUserEmails/GetUserByEmail/user4@example.com === RUN TestUserEmails/GetUserByEmail/no-such === RUN TestUserEmails/GetUserByEmail/NoReplyConflict --- PASS: TestUserEmails (0.02s) --- PASS: TestUserEmails/GetUserEmailsByNames (0.00s) --- PASS: TestUserEmails/GetUsersByEmails (0.01s) --- PASS: TestUserEmails/GetUsersByEmails/UseR1@example.com (0.00s) --- PASS: TestUserEmails/GetUsersByEmails/user1-2@example.COM (0.00s) --- PASS: TestUserEmails/GetUsersByEmails/USER2@NoReply.gitea.internal (0.00s) --- PASS: TestUserEmails/GetUsersByEmails/2+user2@NoReply.gitea.internal (0.00s) --- PASS: TestUserEmails/GetUsersByEmails/2+oldUser2UsernameWhichDoesNotMatterForQuery@NoReply.gitea.internal (0.00s) --- PASS: TestUserEmails/GetUsersByEmails/99999+badUser@NoReply.gitea.internal (0.00s) --- PASS: TestUserEmails/GetUsersByEmails/user4@example.com (0.00s) --- PASS: TestUserEmails/GetUsersByEmails/no-such (0.00s) --- PASS: TestUserEmails/GetUsersByEmails/NoReplyConflict (0.00s) --- PASS: TestUserEmails/GetUserByEmail (0.01s) --- PASS: TestUserEmails/GetUserByEmail/UseR1@example.com (0.00s) --- PASS: TestUserEmails/GetUserByEmail/user1-2@example.COM (0.00s) --- PASS: TestUserEmails/GetUserByEmail/USER2@NoReply.gitea.internal (0.00s) --- PASS: TestUserEmails/GetUserByEmail/2+user2@NoReply.gitea.internal (0.00s) --- PASS: TestUserEmails/GetUserByEmail/2+oldUser2UsernameWhichDoesNotMatterForQuery@NoReply.gitea.internal (0.00s) --- PASS: TestUserEmails/GetUserByEmail/99999+badUser@NoReply.gitea.internal (0.00s) --- PASS: TestUserEmails/GetUserByEmail/user4@example.com (0.00s) --- PASS: TestUserEmails/GetUserByEmail/no-such (0.00s) --- PASS: TestUserEmails/GetUserByEmail/NoReplyConflict (0.00s) === RUN TestCanCreateOrganization --- PASS: TestCanCreateOrganization (0.00s) === RUN TestSearchUsers --- PASS: TestSearchUsers (0.02s) === RUN TestEmailNotificationPreferences --- PASS: TestEmailNotificationPreferences (0.01s) === RUN TestHashPasswordDeterministic --- PASS: TestHashPasswordDeterministic (0.00s) === RUN TestNewGitSig --- PASS: TestNewGitSig (0.00s) === RUN TestDisplayName --- PASS: TestDisplayName (0.00s) === RUN TestCreateUserInvalidEmail --- PASS: TestCreateUserInvalidEmail (0.00s) === RUN TestCreateUserEmailAlreadyUsed --- PASS: TestCreateUserEmailAlreadyUsed (0.00s) === RUN TestCreateUserCustomTimestamps --- PASS: TestCreateUserCustomTimestamps (0.00s) === RUN TestCreateUserWithoutCustomTimestamps --- PASS: TestCreateUserWithoutCustomTimestamps (0.01s) === RUN TestGetUserIDsByNames --- PASS: TestGetUserIDsByNames (0.01s) === RUN TestGetMaileableUsersByIDs --- PASS: TestGetMaileableUsersByIDs (0.00s) === RUN TestNewUserRedirect --- PASS: TestNewUserRedirect (0.00s) === RUN TestNewUserRedirect2 --- PASS: TestNewUserRedirect2 (0.00s) === RUN TestNewUserRedirect3 --- PASS: TestNewUserRedirect3 (0.00s) === RUN TestGetUserByOpenID --- PASS: TestGetUserByOpenID (0.00s) === RUN TestFollowUser --- PASS: TestFollowUser (0.05s) === RUN TestUnfollowUser --- PASS: TestUnfollowUser (0.04s) === RUN TestIsUserVisibleToViewer --- PASS: TestIsUserVisibleToViewer (0.01s) === RUN Test_ValidateUser --- PASS: Test_ValidateUser (0.00s) === RUN Test_NormalizeUserFromEmail --- PASS: Test_NormalizeUserFromEmail (0.00s) === RUN TestEmailTo === RUN TestEmailTo/Awareness_Hub_ === RUN TestEmailTo/name@example.com === RUN TestEmailTo/Hi_Its_Mee_ === RUN TestEmailTo/=?utf-8?q?Sin=C3=A9ad.O'Connor?=_ === RUN TestEmailTo/=?utf-8?q?=C3=86sir?=_ === RUN TestEmailTo/=?utf-8?q?new=F0=9F=98=80user?=_ === RUN TestEmailTo/quoted_ --- PASS: TestEmailTo (0.00s) --- PASS: TestEmailTo/Awareness_Hub_ (0.00s) --- PASS: TestEmailTo/name@example.com (0.00s) --- PASS: TestEmailTo/Hi_Its_Mee_ (0.00s) --- PASS: TestEmailTo/=?utf-8?q?Sin=C3=A9ad.O'Connor?=_ (0.00s) --- PASS: TestEmailTo/=?utf-8?q?=C3=86sir?=_ (0.00s) --- PASS: TestEmailTo/=?utf-8?q?new=F0=9F=98=80user?=_ (0.00s) --- PASS: TestEmailTo/quoted_ (0.00s) === RUN TestDisabledUserFeatures --- PASS: TestDisabledUserFeatures (0.00s) === RUN TestGetInactiveUsers --- PASS: TestGetInactiveUsers (0.00s) === RUN TestCanCreateRepo === RUN TestCanCreateRepo/NoGlobalLimit === RUN TestCanCreateRepo/GlobalLimit50 === RUN TestCanCreateRepo/UserBlockedOrgsUnlimited === RUN TestCanCreateRepo/OrgGlobalLimitWithPerOrgOverride --- PASS: TestCanCreateRepo (0.00s) --- PASS: TestCanCreateRepo/NoGlobalLimit (0.00s) --- PASS: TestCanCreateRepo/GlobalLimit50 (0.00s) --- PASS: TestCanCreateRepo/UserBlockedOrgsUnlimited (0.00s) --- PASS: TestCanCreateRepo/OrgGlobalLimitWithPerOrgOverride (0.00s) PASS ok gitea.dev/models/user 1.250s 2026/09/06 06:40:36 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222309217/data/attachments 2026/09/06 06:40:36 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222309217/data/avatars 2026/09/06 06:40:36 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222309217/data/repo-avatars 2026/09/06 06:40:36 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222309217/data/repo-archive 2026/09/06 06:40:36 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222309217/data/packages 2026/09/06 06:40:36 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222309217/data/actions_log 2026/09/06 06:40:36 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222309217/data/actions_artifacts === RUN TestListSystemWebhookOptions --- PASS: TestListSystemWebhookOptions (0.00s) === RUN TestWebHookContentType --- PASS: TestWebHookContentType (0.00s) === RUN TestWebhook_History --- PASS: TestWebhook_History (0.00s) === RUN TestWebhook_UpdateEvent --- PASS: TestWebhook_UpdateEvent (0.01s) === RUN TestWebhook_EventsArray --- PASS: TestWebhook_EventsArray (0.00s) === RUN TestCreateWebhook --- PASS: TestCreateWebhook (0.00s) === RUN TestGetWebhookByRepoID --- PASS: TestGetWebhookByRepoID (0.00s) === RUN TestGetWebhookByOwnerID --- PASS: TestGetWebhookByOwnerID (0.01s) === RUN TestGetActiveWebhooksByRepoID --- PASS: TestGetActiveWebhooksByRepoID (0.01s) === RUN TestGetWebhooksByRepoID --- PASS: TestGetWebhooksByRepoID (0.00s) === RUN TestGetActiveWebhooksByOwnerID --- PASS: TestGetActiveWebhooksByOwnerID (0.00s) === RUN TestGetWebhooksByOwnerID --- PASS: TestGetWebhooksByOwnerID (0.00s) === RUN TestUpdateWebhook --- PASS: TestUpdateWebhook (0.01s) === RUN TestDeleteWebhookByRepoID --- PASS: TestDeleteWebhookByRepoID (0.00s) === RUN TestDeleteWebhookByOwnerID --- PASS: TestDeleteWebhookByOwnerID (0.00s) === RUN TestHookTasks --- PASS: TestHookTasks (0.00s) === RUN TestCreateHookTask --- PASS: TestCreateHookTask (0.00s) === RUN TestUpdateHookTask --- PASS: TestUpdateHookTask (0.00s) === RUN TestCleanupHookTaskTable_PerWebhook_DeletesDelivered --- PASS: TestCleanupHookTaskTable_PerWebhook_DeletesDelivered (0.01s) === RUN TestCleanupHookTaskTable_PerWebhook_LeavesUndelivered --- PASS: TestCleanupHookTaskTable_PerWebhook_LeavesUndelivered (0.01s) === RUN TestCleanupHookTaskTable_PerWebhook_LeavesMostRecentTask --- PASS: TestCleanupHookTaskTable_PerWebhook_LeavesMostRecentTask (0.01s) === RUN TestCleanupHookTaskTable_OlderThan_DeletesDelivered --- PASS: TestCleanupHookTaskTable_OlderThan_DeletesDelivered (0.00s) === RUN TestCleanupHookTaskTable_OlderThan_LeavesUndelivered --- PASS: TestCleanupHookTaskTable_OlderThan_LeavesUndelivered (0.00s) === RUN TestCleanupHookTaskTable_OlderThan_LeavesTaskEarlierThanAgeToDelete --- PASS: TestCleanupHookTaskTable_OlderThan_LeavesTaskEarlierThanAgeToDelete (0.00s) PASS ok gitea.dev/models/webhook 0.410s === RUN TestBuildSignature --- PASS: TestBuildSignature (0.00s) === RUN TestCanGithubEventMatch === RUN TestCanGithubEventMatch/registry_package_matches === RUN TestCanGithubEventMatch/registry_package_cannot_match === RUN TestCanGithubEventMatch/issue_matches === RUN TestCanGithubEventMatch/issue_cannot_match === RUN TestCanGithubEventMatch/issue_comment_matches === RUN TestCanGithubEventMatch/issue_comment_cannot_match === RUN TestCanGithubEventMatch/pull_request_matches === RUN TestCanGithubEventMatch/pull_request_cannot_match === RUN TestCanGithubEventMatch/pull_request_target_matches === RUN TestCanGithubEventMatch/pull_request_target_cannot_match === RUN TestCanGithubEventMatch/pull_request_review_matches === RUN TestCanGithubEventMatch/pull_request_review_cannot_match === RUN TestCanGithubEventMatch/create_event === RUN TestCanGithubEventMatch/create_pull_request_comment --- PASS: TestCanGithubEventMatch (0.00s) --- PASS: TestCanGithubEventMatch/registry_package_matches (0.00s) --- PASS: TestCanGithubEventMatch/registry_package_cannot_match (0.00s) --- PASS: TestCanGithubEventMatch/issue_matches (0.00s) --- PASS: TestCanGithubEventMatch/issue_cannot_match (0.00s) --- PASS: TestCanGithubEventMatch/issue_comment_matches (0.00s) --- PASS: TestCanGithubEventMatch/issue_comment_cannot_match (0.00s) --- PASS: TestCanGithubEventMatch/pull_request_matches (0.00s) --- PASS: TestCanGithubEventMatch/pull_request_cannot_match (0.00s) --- PASS: TestCanGithubEventMatch/pull_request_target_matches (0.00s) --- PASS: TestCanGithubEventMatch/pull_request_target_cannot_match (0.00s) --- PASS: TestCanGithubEventMatch/pull_request_review_matches (0.00s) --- PASS: TestCanGithubEventMatch/pull_request_review_cannot_match (0.00s) --- PASS: TestCanGithubEventMatch/create_event (0.00s) --- PASS: TestCanGithubEventMatch/create_pull_request_comment (0.00s) === RUN TestIsWorkflowInDirs === RUN TestIsWorkflowInDirs/default_scoped_dir_with_yml === RUN TestIsWorkflowInDirs/default_scoped_dir_with_yaml === RUN TestIsWorkflowInDirs/normal_workflow_path_is_not_a_scoped_workflow === RUN TestIsWorkflowInDirs/non-yaml_file === RUN TestIsWorkflowInDirs/feature_disabled_(no_scoped_dirs) === RUN TestIsWorkflowInDirs/directory_boundary --- PASS: TestIsWorkflowInDirs (0.00s) --- PASS: TestIsWorkflowInDirs/default_scoped_dir_with_yml (0.00s) --- PASS: TestIsWorkflowInDirs/default_scoped_dir_with_yaml (0.00s) --- PASS: TestIsWorkflowInDirs/normal_workflow_path_is_not_a_scoped_workflow (0.00s) --- PASS: TestIsWorkflowInDirs/non-yaml_file (0.00s) --- PASS: TestIsWorkflowInDirs/feature_disabled_(no_scoped_dirs) (0.00s) --- PASS: TestIsWorkflowInDirs/directory_boundary (0.00s) === RUN TestFullSteps === RUN TestFullSteps/regular === RUN TestFullSteps/failed_step === RUN TestFullSteps/first_step_is_running === RUN TestFullSteps/first_step_has_canceled === RUN TestFullSteps/empty_steps === RUN TestFullSteps/all_steps_finished_but_task_is_running === RUN TestFullSteps/skipped_task === RUN TestFullSteps/first_step_is_skipped === RUN TestFullSteps/last_step_is_skipped --- PASS: TestFullSteps (0.00s) --- PASS: TestFullSteps/regular (0.00s) --- PASS: TestFullSteps/failed_step (0.00s) --- PASS: TestFullSteps/first_step_is_running (0.00s) --- PASS: TestFullSteps/first_step_has_canceled (0.00s) --- PASS: TestFullSteps/empty_steps (0.00s) --- PASS: TestFullSteps/all_steps_finished_but_task_is_running (0.00s) --- PASS: TestFullSteps/skipped_task (0.00s) --- PASS: TestFullSteps/first_step_is_skipped (0.00s) --- PASS: TestFullSteps/last_step_is_skipped (0.00s) === RUN TestIsWorkflow === RUN TestIsWorkflow/default_with_yml_extension === RUN TestIsWorkflow/default_with_yaml_extension === RUN TestIsWorkflow/only_gitea_configured,_github_path_rejected === RUN TestIsWorkflow/only_github_configured,_gitea_path_rejected === RUN TestIsWorkflow/custom_workflow_dir === RUN TestIsWorkflow/non-workflow_file === RUN TestIsWorkflow/directory_boundary === RUN TestIsWorkflow/unrelated_path --- PASS: TestIsWorkflow (0.00s) --- PASS: TestIsWorkflow/default_with_yml_extension (0.00s) --- PASS: TestIsWorkflow/default_with_yaml_extension (0.00s) --- PASS: TestIsWorkflow/only_gitea_configured,_github_path_rejected (0.00s) --- PASS: TestIsWorkflow/only_github_configured,_gitea_path_rejected (0.00s) --- PASS: TestIsWorkflow/custom_workflow_dir (0.00s) --- PASS: TestIsWorkflow/non-workflow_file (0.00s) --- PASS: TestIsWorkflow/directory_boundary (0.00s) --- PASS: TestIsWorkflow/unrelated_path (0.00s) === RUN TestDetectMatched === RUN TestDetectMatched/HookEventCreate(create)_matches_GithubEventCreate(create) === RUN TestDetectMatched/HookEventIssues(issues)_`opened`_action_matches_GithubEventIssues(issues) === RUN TestDetectMatched/HookEventIssues(issues)_`milestoned`_action_matches_GithubEventIssues(issues) === RUN TestDetectMatched/HookEventPullRequestSync(pull_request_sync)_matches_GithubEventPullRequest(pull_request) === RUN TestDetectMatched/HookEventPullRequest(pull_request)_`label_updated`_action_doesn't_match_GithubEventPullRequest(pull_request)_with_no_activity_type === RUN TestDetectMatched/HookEventPullRequest(pull_request)_`closed`_action_doesn't_match_GithubEventPullRequest(pull_request)_with_no_activity_type === RUN TestDetectMatched/HookEventPullRequest(pull_request)_`closed`_action_doesn't_match_GithubEventPullRequest(pull_request)_with_branches === RUN TestDetectMatched/HookEventPullRequest(pull_request)_`label_updated`_action_matches_GithubEventPullRequest(pull_request)_with_`label`_activity_type === RUN TestDetectMatched/HookEventPullRequestReviewComment(pull_request_review_comment)_matches_GithubEventPullRequestReviewComment(pull_request_review_comment) === RUN TestDetectMatched/HookEventPullRequestReviewRejected(pull_request_review_rejected)_doesn't_match_GithubEventPullRequestReview(pull_request_review)_with_`dismissed`_activity_type_(we_don't_support_`dismissed`_at_present) === RUN TestDetectMatched/HookEventRelease(release)_`published`_action_matches_GithubEventRelease(release)_with_`published`_activity_type === RUN TestDetectMatched/HookEventPackage(package)_`created`_action_doesn't_match_GithubEventRegistryPackage(registry_package)_with_`updated`_activity_type === RUN TestDetectMatched/HookEventWiki(wiki)_matches_GithubEventGollum(gollum) === RUN TestDetectMatched/HookEventSchedule(schedule)_matches_GithubEventSchedule(schedule) === RUN TestDetectMatched/push_to_tag_matches_workflow_with_paths_condition_(should_skip_paths_check) === RUN TestDetectMatched/push_branch_filter_excludes_->_filtered_out --- PASS: TestDetectMatched (0.01s) --- PASS: TestDetectMatched/HookEventCreate(create)_matches_GithubEventCreate(create) (0.00s) --- PASS: TestDetectMatched/HookEventIssues(issues)_`opened`_action_matches_GithubEventIssues(issues) (0.00s) --- PASS: TestDetectMatched/HookEventIssues(issues)_`milestoned`_action_matches_GithubEventIssues(issues) (0.00s) --- PASS: TestDetectMatched/HookEventPullRequestSync(pull_request_sync)_matches_GithubEventPullRequest(pull_request) (0.00s) --- PASS: TestDetectMatched/HookEventPullRequest(pull_request)_`label_updated`_action_doesn't_match_GithubEventPullRequest(pull_request)_with_no_activity_type (0.00s) --- PASS: TestDetectMatched/HookEventPullRequest(pull_request)_`closed`_action_doesn't_match_GithubEventPullRequest(pull_request)_with_no_activity_type (0.00s) --- PASS: TestDetectMatched/HookEventPullRequest(pull_request)_`closed`_action_doesn't_match_GithubEventPullRequest(pull_request)_with_branches (0.00s) --- PASS: TestDetectMatched/HookEventPullRequest(pull_request)_`label_updated`_action_matches_GithubEventPullRequest(pull_request)_with_`label`_activity_type (0.00s) --- PASS: TestDetectMatched/HookEventPullRequestReviewComment(pull_request_review_comment)_matches_GithubEventPullRequestReviewComment(pull_request_review_comment) (0.00s) --- PASS: TestDetectMatched/HookEventPullRequestReviewRejected(pull_request_review_rejected)_doesn't_match_GithubEventPullRequestReview(pull_request_review)_with_`dismissed`_activity_type_(we_don't_support_`dismissed`_at_present) (0.00s) --- PASS: TestDetectMatched/HookEventRelease(release)_`published`_action_matches_GithubEventRelease(release)_with_`published`_activity_type (0.00s) --- PASS: TestDetectMatched/HookEventPackage(package)_`created`_action_doesn't_match_GithubEventRegistryPackage(registry_package)_with_`updated`_activity_type (0.00s) --- PASS: TestDetectMatched/HookEventWiki(wiki)_matches_GithubEventGollum(gollum) (0.00s) --- PASS: TestDetectMatched/HookEventSchedule(schedule)_matches_GithubEventSchedule(schedule) (0.00s) --- PASS: TestDetectMatched/push_to_tag_matches_workflow_with_paths_condition_(should_skip_paths_check) (0.00s) --- PASS: TestDetectMatched/push_branch_filter_excludes_->_filtered_out (0.00s) === RUN TestMatchIssuesEvent === RUN TestMatchIssuesEvent/Label_deletion_should_trigger_unlabeled_event === RUN TestMatchIssuesEvent/Label_deletion_with_existing_labels_should_trigger_unlabeled_event === RUN TestMatchIssuesEvent/Label_addition_should_trigger_labeled_event === RUN TestMatchIssuesEvent/Label_clear_should_trigger_unlabeled_event === RUN TestMatchIssuesEvent/Both_adding_and_removing_labels_should_trigger_labeled_event === RUN TestMatchIssuesEvent/Both_adding_and_removing_labels_should_trigger_unlabeled_event === RUN TestMatchIssuesEvent/Both_adding_and_removing_labels_should_trigger_both_events --- PASS: TestMatchIssuesEvent (0.00s) --- PASS: TestMatchIssuesEvent/Label_deletion_should_trigger_unlabeled_event (0.00s) --- PASS: TestMatchIssuesEvent/Label_deletion_with_existing_labels_should_trigger_unlabeled_event (0.00s) --- PASS: TestMatchIssuesEvent/Label_addition_should_trigger_labeled_event (0.00s) --- PASS: TestMatchIssuesEvent/Label_clear_should_trigger_unlabeled_event (0.00s) --- PASS: TestMatchIssuesEvent/Both_adding_and_removing_labels_should_trigger_labeled_event (0.00s) --- PASS: TestMatchIssuesEvent/Both_adding_and_removing_labels_should_trigger_unlabeled_event (0.00s) --- PASS: TestMatchIssuesEvent/Both_adding_and_removing_labels_should_trigger_both_events (0.00s) PASS ok gitea.dev/modules/actions 0.114s === RUN TestParseResolvesAliases --- PASS: TestParseResolvesAliases (0.00s) === RUN TestParseRejectsAliases === RUN TestParseRejectsAliases/nested_aliases_exceed_the_node_limit === RUN TestParseRejectsAliases/anchor_aliased_from_inside_itself === RUN TestParseRejectsAliases/merge_key === RUN TestParseRejectsAliases/alias_before_its_anchor --- PASS: TestParseRejectsAliases (0.08s) --- PASS: TestParseRejectsAliases/nested_aliases_exceed_the_node_limit (0.03s) --- PASS: TestParseRejectsAliases/anchor_aliased_from_inside_itself (0.04s) --- PASS: TestParseRejectsAliases/merge_key (0.00s) --- PASS: TestParseRejectsAliases/alias_before_its_anchor (0.00s) === RUN TestParse === RUN TestParse/multiple_jobs === RUN TestParse/multiple_matrix === RUN TestParse/has_needs === RUN TestParse/has_with === RUN TestParse/has_secrets === RUN TestParse/empty_step === RUN TestParse/job_name_with_matrix === RUN TestParse/prefixed_newline === RUN TestParse/continue_on_error_expr === RUN TestParse/null_job_implicit === RUN TestParse/null_job_explicit --- PASS: TestParse (0.03s) --- PASS: TestParse/multiple_jobs (0.01s) --- PASS: TestParse/multiple_matrix (0.01s) --- PASS: TestParse/has_needs (0.00s) --- PASS: TestParse/has_with (0.00s) --- PASS: TestParse/has_secrets (0.00s) --- PASS: TestParse/empty_step (0.00s) --- PASS: TestParse/job_name_with_matrix (0.01s) --- PASS: TestParse/prefixed_newline (0.00s) --- PASS: TestParse/continue_on_error_expr (0.00s) --- PASS: TestParse/null_job_implicit (0.00s) --- PASS: TestParse/null_job_explicit (0.00s) === RUN TestParseInterpolatesRunName === RUN TestParseInterpolatesRunName/bool === RUN TestParseInterpolatesRunName/int === RUN TestParseInterpolatesRunName/float === RUN TestParseInterpolatesRunName/null === RUN TestParseInterpolatesRunName/object === RUN TestParseInterpolatesRunName/array === RUN TestParseInterpolatesRunName/context === RUN TestParseInterpolatesRunName/surrounding_literals === RUN TestParseInterpolatesRunName/two_expressions === RUN TestParseInterpolatesRunName/closing_brace_inside_a_string === RUN TestParseInterpolatesRunName/incomplete_expression_stays_literal --- PASS: TestParseInterpolatesRunName (0.01s) --- PASS: TestParseInterpolatesRunName/bool (0.00s) --- PASS: TestParseInterpolatesRunName/int (0.00s) --- PASS: TestParseInterpolatesRunName/float (0.00s) --- PASS: TestParseInterpolatesRunName/null (0.00s) --- PASS: TestParseInterpolatesRunName/object (0.00s) --- PASS: TestParseInterpolatesRunName/array (0.00s) --- PASS: TestParseInterpolatesRunName/context (0.00s) --- PASS: TestParseInterpolatesRunName/surrounding_literals (0.00s) --- PASS: TestParseInterpolatesRunName/two_expressions (0.00s) --- PASS: TestParseInterpolatesRunName/closing_brace_inside_a_string (0.00s) --- PASS: TestParseInterpolatesRunName/incomplete_expression_stays_literal (0.00s) === RUN TestRejectsUnevaluatedMatrixFilters === RUN TestRejectsUnevaluatedMatrixFilters/include_expression === RUN TestRejectsUnevaluatedMatrixFilters/exclude_expression === RUN TestRejectsUnevaluatedMatrixFilters/include_scalar === RUN TestRejectsUnevaluatedMatrixFilters/include_list_of_scalars --- PASS: TestRejectsUnevaluatedMatrixFilters (0.01s) --- PASS: TestRejectsUnevaluatedMatrixFilters/include_expression (0.00s) --- PASS: TestRejectsUnevaluatedMatrixFilters/exclude_expression (0.00s) --- PASS: TestRejectsUnevaluatedMatrixFilters/include_scalar (0.00s) --- PASS: TestRejectsUnevaluatedMatrixFilters/include_list_of_scalars (0.00s) === RUN TestParseRawOn === RUN TestParseRawOn/on:_issue_comment === RUN TestParseRawOn/on:___push === RUN TestParseRawOn/on:___-_push___-_pull_request === RUN TestParseRawOn/on:___push:_____branches:_______-_master === RUN TestParseRawOn/on:___push:_____branches:_main === RUN TestParseRawOn/on:___branch_protection_rule:_____types:_[created,_deleted] === RUN TestParseRawOn/on:___project:_____types:_[created,_deleted]___milestone:_____types:_[opened,_deleted] === RUN TestParseRawOn/on:___pull_request:_____types:_______-_opened_____branches:_______-_'releases/**' === RUN TestParseRawOn/on:___push:_____branches:_______-_main___pull_request:_____types:_______-_opened_____branches:_______-_'**' === RUN TestParseRawOn/on:___push:_____branches:_______-_'main'_______-_'releases/**' === RUN TestParseRawOn/on:___push:_____tags:_______-_v1.** === RUN TestParseRawOn/on:_[pull_request,_workflow_dispatch] === RUN TestParseRawOn/on:___schedule:_____-_cron:_'20_6_*_*_*' === RUN TestParseRawOn/on:___workflow_dispatch:_____inputs:_______logLevel:_________description:_'Log_level'_________required:_true_________default:_'warning'_________type:_choice_________options:_________-_info_________-_warning_________-_debug_______tags:_________description:_'Test_scenario_tags'_________required:_false_________type:_boolean_______environment:_________description:_'Environment_to_run_tests_against'_________type:_environment_________required:_true___push:_ === RUN TestParseRawOn/on:___workflow_call:_____inputs:_______env:_________type:_string_________required:_true_____outputs:_______sha:_________value:_${{_jobs.build.outputs.commit_}}_____secrets:_______DEPLOY_KEY:_________required:_true_ === RUN TestParseRawOn/on:___workflow_call:_____inputs:_______env:_________type:_string___push:_____branches:_[main]_ === RUN TestParseRawOn/on:_workflow_call === RUN TestParseRawOn/on:___-_push___-_workflow_call___-_pull_request --- PASS: TestParseRawOn (0.00s) --- PASS: TestParseRawOn/on:_issue_comment (0.00s) --- PASS: TestParseRawOn/on:___push (0.00s) --- PASS: TestParseRawOn/on:___-_push___-_pull_request (0.00s) --- PASS: TestParseRawOn/on:___push:_____branches:_______-_master (0.00s) --- PASS: TestParseRawOn/on:___push:_____branches:_main (0.00s) --- PASS: TestParseRawOn/on:___branch_protection_rule:_____types:_[created,_deleted] (0.00s) --- PASS: TestParseRawOn/on:___project:_____types:_[created,_deleted]___milestone:_____types:_[opened,_deleted] (0.00s) --- PASS: TestParseRawOn/on:___pull_request:_____types:_______-_opened_____branches:_______-_'releases/**' (0.00s) --- PASS: TestParseRawOn/on:___push:_____branches:_______-_main___pull_request:_____types:_______-_opened_____branches:_______-_'**' (0.00s) --- PASS: TestParseRawOn/on:___push:_____branches:_______-_'main'_______-_'releases/**' (0.00s) --- PASS: TestParseRawOn/on:___push:_____tags:_______-_v1.** (0.00s) --- PASS: TestParseRawOn/on:_[pull_request,_workflow_dispatch] (0.00s) --- PASS: TestParseRawOn/on:___schedule:_____-_cron:_'20_6_*_*_*' (0.00s) --- PASS: TestParseRawOn/on:___workflow_dispatch:_____inputs:_______logLevel:_________description:_'Log_level'_________required:_true_________default:_'warning'_________type:_choice_________options:_________-_info_________-_warning_________-_debug_______tags:_________description:_'Test_scenario_tags'_________required:_false_________type:_boolean_______environment:_________description:_'Environment_to_run_tests_against'_________type:_environment_________required:_true___push:_ (0.00s) --- PASS: TestParseRawOn/on:___workflow_call:_____inputs:_______env:_________type:_string_________required:_true_____outputs:_______sha:_________value:_${{_jobs.build.outputs.commit_}}_____secrets:_______DEPLOY_KEY:_________required:_true_ (0.00s) --- PASS: TestParseRawOn/on:___workflow_call:_____inputs:_______env:_________type:_string___push:_____branches:_[main]_ (0.00s) --- PASS: TestParseRawOn/on:_workflow_call (0.00s) --- PASS: TestParseRawOn/on:___-_push___-_workflow_call___-_pull_request (0.00s) === RUN TestSingleWorkflow_SetJob === RUN TestSingleWorkflow_SetJob/erase_needs --- PASS: TestSingleWorkflow_SetJob (0.00s) --- PASS: TestSingleWorkflow_SetJob/erase_needs (0.00s) === RUN TestGetContinueOnError === RUN TestGetContinueOnError/absent === RUN TestGetContinueOnError/static_true === RUN TestGetContinueOnError/static_false === RUN TestGetContinueOnError/matrix_expression --- PASS: TestGetContinueOnError (0.01s) --- PASS: TestGetContinueOnError/absent (0.00s) --- PASS: TestGetContinueOnError/static_true (0.00s) --- PASS: TestGetContinueOnError/static_false (0.00s) --- PASS: TestGetContinueOnError/matrix_expression (0.00s) === RUN TestParseMappingNode === RUN TestParseMappingNode/on:___push:_____branches:_______-_master === RUN TestParseMappingNode/on:___branch_protection_rule:_____types:_[created,_deleted] === RUN TestParseMappingNode/on:___project:_____types:_[created,_deleted]___milestone:_____types:_[opened,_deleted] === RUN TestParseMappingNode/on:___pull_request:_____types:_______-_opened_____branches:_______-_'releases/**' === RUN TestParseMappingNode/on:___push:_____branches:_______-_main___pull_request:_____types:_______-_opened_____branches:_______-_'**' === RUN TestParseMappingNode/on:___schedule:_____-_cron:_'20_6_*_*_*' --- PASS: TestParseMappingNode (0.00s) --- PASS: TestParseMappingNode/on:___push:_____branches:_______-_master (0.00s) --- PASS: TestParseMappingNode/on:___branch_protection_rule:_____types:_[created,_deleted] (0.00s) --- PASS: TestParseMappingNode/on:___project:_____types:_[created,_deleted]___milestone:_____types:_[opened,_deleted] (0.00s) --- PASS: TestParseMappingNode/on:___pull_request:_____types:_______-_opened_____branches:_______-_'releases/**' (0.00s) --- PASS: TestParseMappingNode/on:___push:_____branches:_______-_main___pull_request:_____types:_______-_opened_____branches:_______-_'**' (0.00s) --- PASS: TestParseMappingNode/on:___schedule:_____-_cron:_'20_6_*_*_*' (0.00s) === RUN TestEvaluateJobIfExpressionMatrix === RUN TestEvaluateJobIfExpressionMatrix/${{_contains(fromJSON('["linux","windows"]'),_matrix.target)_}} === RUN TestEvaluateJobIfExpressionMatrix/${{_contains('["linux","windows"]',_matrix.target)_}} --- PASS: TestEvaluateJobIfExpressionMatrix (0.01s) --- PASS: TestEvaluateJobIfExpressionMatrix/${{_contains(fromJSON('["linux","windows"]'),_matrix.target)_}} (0.00s) --- PASS: TestEvaluateJobIfExpressionMatrix/${{_contains('["linux","windows"]',_matrix.target)_}} (0.00s) === RUN TestEvaluateJobIfExpression === RUN TestEvaluateJobIfExpression/empty_need_success === RUN TestEvaluateJobIfExpression/always === RUN TestEvaluateJobIfExpression/failure_true === RUN TestEvaluateJobIfExpression/failure_false === RUN TestEvaluateJobIfExpression/success_true === RUN TestEvaluateJobIfExpression/cancelled === RUN TestEvaluateJobIfExpression/not_cancelled_or_failure === RUN TestEvaluateJobIfExpression/not_cancelled_or_failure,_need_failed === RUN TestEvaluateJobIfExpression/bare_expression === RUN TestEvaluateJobIfExpression/literal_text_keeps_the_success()_default === RUN TestEvaluateJobIfExpression/literal_text_around_a_status_function_drops_it --- PASS: TestEvaluateJobIfExpression (0.02s) --- PASS: TestEvaluateJobIfExpression/empty_need_success (0.00s) --- PASS: TestEvaluateJobIfExpression/always (0.00s) --- PASS: TestEvaluateJobIfExpression/failure_true (0.00s) --- PASS: TestEvaluateJobIfExpression/failure_false (0.00s) --- PASS: TestEvaluateJobIfExpression/success_true (0.00s) --- PASS: TestEvaluateJobIfExpression/cancelled (0.00s) --- PASS: TestEvaluateJobIfExpression/not_cancelled_or_failure (0.00s) --- PASS: TestEvaluateJobIfExpression/not_cancelled_or_failure,_need_failed (0.00s) --- PASS: TestEvaluateJobIfExpression/bare_expression (0.00s) --- PASS: TestEvaluateJobIfExpression/literal_text_keeps_the_success()_default (0.00s) --- PASS: TestEvaluateJobIfExpression/literal_text_around_a_status_function_drops_it (0.00s) === RUN TestSingleWorkflowRoundTripRunBlockLeadingBlankLines --- PASS: TestSingleWorkflowRoundTripRunBlockLeadingBlankLines (0.00s) === RUN TestSingleWorkflowRoundTripStepContinueOnError --- PASS: TestSingleWorkflowRoundTripStepContinueOnError (0.00s) === RUN TestParseUses === RUN TestParseUses/LocalSameRepo === RUN TestParseUses/LocalSameRepo/gitea_dir,_.yml === RUN TestParseUses/LocalSameRepo/github_dir,_.yml === RUN TestParseUses/LocalSameRepo/gitea_dir,_.yaml === RUN TestParseUses/LocalSameRepo/filename_containing_dots_is_allowed === RUN TestParseUses/LocalSameRepo/nested_subdirectory === RUN TestParseUses/LocalSameRepo/scoped_workflows_dir_parses === RUN TestParseUses/LocalSameRepo/non-default_dir_parses_(allowlist_enforced_downstream) === RUN TestParseUses/LocalSameRepo/leading/trailing_whitespace_is_trimmed === RUN TestParseUses/LocalCrossRepo === RUN TestParseUses/LocalCrossRepo/gitea_dir,_simple_ref === RUN TestParseUses/LocalCrossRepo/github_dir,_branch_ref === RUN TestParseUses/LocalCrossRepo/.yaml_extension === RUN TestParseUses/LocalCrossRepo/ref_with_slashes_(refs/heads/feature) === RUN TestParseUses/LocalCrossRepo/nested_subdirectory_under_workflows === RUN TestParseUses/LocalCrossRepo/scoped_workflows_dir_parses_(allowlist_enforced_by_ResolveUses) === RUN TestParseUses/Errors === RUN TestParseUses/Errors/empty_string === RUN TestParseUses/Errors/whitespace_only === RUN TestParseUses/Errors/same-repo_with_@ref === RUN TestParseUses/Errors/same-repo_wrong_extension === RUN TestParseUses/Errors/same-repo_missing_extension === RUN TestParseUses/Errors/same-repo_absolute_path === RUN TestParseUses/Errors/same-repo_path_traversal === RUN TestParseUses/Errors/same-repo_double_slash === RUN TestParseUses/Errors/same-repo_redundant_./ === RUN TestParseUses/Errors/cross-repo_missing_@ref === RUN TestParseUses/Errors/cross-repo_empty_ref === RUN TestParseUses/Errors/cross-repo_missing_owner === RUN TestParseUses/Errors/cross-repo_missing_repo === RUN TestParseUses/Errors/cross-repo_wrong_extension === RUN TestParseUses/Errors/cross-repo_path_traversal === RUN TestParseUses/Errors/cross-repo_double_slash_in_path === RUN TestParseUses/Errors/cross-repo_owner_with_space === RUN TestParseUses/Errors/cross-repo_repo_with_@ --- PASS: TestParseUses (0.00s) --- PASS: TestParseUses/LocalSameRepo (0.00s) --- PASS: TestParseUses/LocalSameRepo/gitea_dir,_.yml (0.00s) --- PASS: TestParseUses/LocalSameRepo/github_dir,_.yml (0.00s) --- PASS: TestParseUses/LocalSameRepo/gitea_dir,_.yaml (0.00s) --- PASS: TestParseUses/LocalSameRepo/filename_containing_dots_is_allowed (0.00s) --- PASS: TestParseUses/LocalSameRepo/nested_subdirectory (0.00s) --- PASS: TestParseUses/LocalSameRepo/scoped_workflows_dir_parses (0.00s) --- PASS: TestParseUses/LocalSameRepo/non-default_dir_parses_(allowlist_enforced_downstream) (0.00s) --- PASS: TestParseUses/LocalSameRepo/leading/trailing_whitespace_is_trimmed (0.00s) --- PASS: TestParseUses/LocalCrossRepo (0.00s) --- PASS: TestParseUses/LocalCrossRepo/gitea_dir,_simple_ref (0.00s) --- PASS: TestParseUses/LocalCrossRepo/github_dir,_branch_ref (0.00s) --- PASS: TestParseUses/LocalCrossRepo/.yaml_extension (0.00s) --- PASS: TestParseUses/LocalCrossRepo/ref_with_slashes_(refs/heads/feature) (0.00s) --- PASS: TestParseUses/LocalCrossRepo/nested_subdirectory_under_workflows (0.00s) --- PASS: TestParseUses/LocalCrossRepo/scoped_workflows_dir_parses_(allowlist_enforced_by_ResolveUses) (0.00s) --- PASS: TestParseUses/Errors (0.00s) --- PASS: TestParseUses/Errors/empty_string (0.00s) --- PASS: TestParseUses/Errors/whitespace_only (0.00s) --- PASS: TestParseUses/Errors/same-repo_with_@ref (0.00s) --- PASS: TestParseUses/Errors/same-repo_wrong_extension (0.00s) --- PASS: TestParseUses/Errors/same-repo_missing_extension (0.00s) --- PASS: TestParseUses/Errors/same-repo_absolute_path (0.00s) --- PASS: TestParseUses/Errors/same-repo_path_traversal (0.00s) --- PASS: TestParseUses/Errors/same-repo_double_slash (0.00s) --- PASS: TestParseUses/Errors/same-repo_redundant_./ (0.00s) --- PASS: TestParseUses/Errors/cross-repo_missing_@ref (0.00s) --- PASS: TestParseUses/Errors/cross-repo_empty_ref (0.00s) --- PASS: TestParseUses/Errors/cross-repo_missing_owner (0.00s) --- PASS: TestParseUses/Errors/cross-repo_missing_repo (0.00s) --- PASS: TestParseUses/Errors/cross-repo_wrong_extension (0.00s) --- PASS: TestParseUses/Errors/cross-repo_path_traversal (0.00s) --- PASS: TestParseUses/Errors/cross-repo_double_slash_in_path (0.00s) --- PASS: TestParseUses/Errors/cross-repo_owner_with_space (0.00s) --- PASS: TestParseUses/Errors/cross-repo_repo_with_@ (0.00s) === RUN TestParseWorkflowCallSpec === RUN TestParseWorkflowCallSpec/malformed_YAML_surfaces_a_parse_error === RUN TestParseWorkflowCallSpec/workflow_without_on.workflow_call_is_rejected === RUN TestParseWorkflowCallSpec/input_missing_the_required_type_field_is_rejected === RUN TestParseWorkflowCallSpec/inputs/secrets/outputs_are_decoded --- PASS: TestParseWorkflowCallSpec (0.00s) --- PASS: TestParseWorkflowCallSpec/malformed_YAML_surfaces_a_parse_error (0.00s) --- PASS: TestParseWorkflowCallSpec/workflow_without_on.workflow_call_is_rejected (0.00s) --- PASS: TestParseWorkflowCallSpec/input_missing_the_required_type_field_is_rejected (0.00s) --- PASS: TestParseWorkflowCallSpec/inputs/secrets/outputs_are_decoded (0.00s) === RUN TestEvaluateCallerWith === RUN TestEvaluateCallerWith/empty_with:_returns_empty_map === RUN TestEvaluateCallerWith/non-string_raw_values_pass_through_unchanged === RUN TestEvaluateCallerWith/expressions_resolve_against_vars/inputs/results === RUN TestEvaluateCallerWith/matrix.X_resolves_to_this_caller_row's_matrix_instance --- PASS: TestEvaluateCallerWith (0.00s) --- PASS: TestEvaluateCallerWith/empty_with:_returns_empty_map (0.00s) --- PASS: TestEvaluateCallerWith/non-string_raw_values_pass_through_unchanged (0.00s) --- PASS: TestEvaluateCallerWith/expressions_resolve_against_vars/inputs/results (0.00s) --- PASS: TestEvaluateCallerWith/matrix.X_resolves_to_this_caller_row's_matrix_instance (0.00s) === RUN TestMatchCallerInputsAgainstSpec === RUN TestMatchCallerInputsAgainstSpec/default_is_filled_when_caller_does_not_provide_the_input === RUN TestMatchCallerInputsAgainstSpec/caller-provided_value_wins_over_default === RUN TestMatchCallerInputsAgainstSpec/required_input_must_be_provided === RUN TestMatchCallerInputsAgainstSpec/required_input_is_satisfied_by_a_default_value === RUN TestMatchCallerInputsAgainstSpec/boolean_inputs_accept_native_bool_values_and_bool_defaults === RUN TestMatchCallerInputsAgainstSpec/boolean_input_rejects_strings === RUN TestMatchCallerInputsAgainstSpec/number_inputs_accept_native_numeric_values_and_number_defaults === RUN TestMatchCallerInputsAgainstSpec/number_input_rejects_strings === RUN TestMatchCallerInputsAgainstSpec/unknown_caller-with_key_is_silently_dropped --- PASS: TestMatchCallerInputsAgainstSpec (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/default_is_filled_when_caller_does_not_provide_the_input (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/caller-provided_value_wins_over_default (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/required_input_must_be_provided (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/required_input_is_satisfied_by_a_default_value (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/boolean_inputs_accept_native_bool_values_and_bool_defaults (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/boolean_input_rejects_strings (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/number_inputs_accept_native_numeric_values_and_number_defaults (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/number_input_rejects_strings (0.00s) --- PASS: TestMatchCallerInputsAgainstSpec/unknown_caller-with_key_is_silently_dropped (0.00s) === RUN TestParseCallerSecrets === RUN TestParseCallerSecrets/zero_node_returns_no_inherit,_no_mapping === RUN TestParseCallerSecrets/"inherit"_scalar_sets_inherit=true === RUN TestParseCallerSecrets/non-inherit_scalar_is_rejected === RUN TestParseCallerSecrets/mapping_of_secrets-style_references_is_parsed === RUN TestParseCallerSecrets/alias_and_source_names_are_upper-cased === RUN TestParseCallerSecrets/mapping_value_not_in_${{_secrets.NAME_}}_form_is_rejected --- PASS: TestParseCallerSecrets (0.00s) --- PASS: TestParseCallerSecrets/zero_node_returns_no_inherit,_no_mapping (0.00s) --- PASS: TestParseCallerSecrets/"inherit"_scalar_sets_inherit=true (0.00s) --- PASS: TestParseCallerSecrets/non-inherit_scalar_is_rejected (0.00s) --- PASS: TestParseCallerSecrets/mapping_of_secrets-style_references_is_parsed (0.00s) --- PASS: TestParseCallerSecrets/alias_and_source_names_are_upper-cased (0.00s) --- PASS: TestParseCallerSecrets/mapping_value_not_in_${{_secrets.NAME_}}_form_is_rejected (0.00s) === RUN TestValidateCallerSecrets === RUN TestValidateCallerSecrets/explicit_mapping_with_all_required_+_only_declared_aliases_is_accepted === RUN TestValidateCallerSecrets/alias_not_in_callee_schema_is_rejected === RUN TestValidateCallerSecrets/missing_required_secret_is_rejected === RUN TestValidateCallerSecrets/callee_with_no_secrets_schema_accepts_an_empty_mapping === RUN TestValidateCallerSecrets/callee_with_no_secrets_schema_rejects_a_non-empty_mapping === RUN TestValidateCallerSecrets/name_matching_is_case-insensitive === RUN TestValidateCallerSecrets/nil_spec_is_rejected --- PASS: TestValidateCallerSecrets (0.00s) --- PASS: TestValidateCallerSecrets/explicit_mapping_with_all_required_+_only_declared_aliases_is_accepted (0.00s) --- PASS: TestValidateCallerSecrets/alias_not_in_callee_schema_is_rejected (0.00s) --- PASS: TestValidateCallerSecrets/missing_required_secret_is_rejected (0.00s) --- PASS: TestValidateCallerSecrets/callee_with_no_secrets_schema_accepts_an_empty_mapping (0.00s) --- PASS: TestValidateCallerSecrets/callee_with_no_secrets_schema_rejects_a_non-empty_mapping (0.00s) --- PASS: TestValidateCallerSecrets/name_matching_is_case-insensitive (0.00s) --- PASS: TestValidateCallerSecrets/nil_spec_is_rejected (0.00s) === RUN TestEvaluateWorkflowCallOutputs === RUN TestEvaluateWorkflowCallOutputs/nil_spec_returns_empty_map === RUN TestEvaluateWorkflowCallOutputs/spec_with_no_outputs_returns_empty_map === RUN TestEvaluateWorkflowCallOutputs/plain_string_value_passes_through_unchanged === RUN TestEvaluateWorkflowCallOutputs/output_references_jobs..outputs. === RUN TestEvaluateWorkflowCallOutputs/output_references_inputs. === RUN TestEvaluateWorkflowCallOutputs/multiple_outputs_are_all_evaluated === RUN TestEvaluateWorkflowCallOutputs/expression_referencing_an_undefined_symbol_surfaces_an_error --- PASS: TestEvaluateWorkflowCallOutputs (0.00s) --- PASS: TestEvaluateWorkflowCallOutputs/nil_spec_returns_empty_map (0.00s) --- PASS: TestEvaluateWorkflowCallOutputs/spec_with_no_outputs_returns_empty_map (0.00s) --- PASS: TestEvaluateWorkflowCallOutputs/plain_string_value_passes_through_unchanged (0.00s) --- PASS: TestEvaluateWorkflowCallOutputs/output_references_jobs..outputs. (0.00s) --- PASS: TestEvaluateWorkflowCallOutputs/output_references_inputs. (0.00s) --- PASS: TestEvaluateWorkflowCallOutputs/multiple_outputs_are_all_evaluated (0.00s) --- PASS: TestEvaluateWorkflowCallOutputs/expression_referencing_an_undefined_symbol_surfaces_an_error (0.00s) PASS ok gitea.dev/modules/actions/jobparser 0.191s === RUN TestMatchPattern --- PASS: TestMatchPattern (0.00s) PASS ok gitea.dev/modules/actions/workflowpattern 0.011s === RUN TestIsVendor === RUN TestIsVendor/cache/ === RUN TestIsVendor/random/cache/ === RUN TestIsVendor/cache === RUN TestIsVendor/dependencies/ === RUN TestIsVendor/Dependencies/ === RUN TestIsVendor/dependency/ === RUN TestIsVendor/dist/ === RUN TestIsVendor/dist === RUN TestIsVendor/random/dist/ === RUN TestIsVendor/random/dist === RUN TestIsVendor/deps/ === RUN TestIsVendor/configure === RUN TestIsVendor/a/configure === RUN TestIsVendor/config.guess === RUN TestIsVendor/config.guess/ === RUN TestIsVendor/.vscode/ === RUN TestIsVendor/doc/_build/ === RUN TestIsVendor/a/docs/_build/ === RUN TestIsVendor/a/dasdocs/_build-vsdoc.js === RUN TestIsVendor/a/dasdocs/_build-vsdoc.j === RUN TestIsVendor/.gitignore === RUN TestIsVendor/.gitattributes === RUN TestIsVendor/.gitmodules === RUN TestIsVendor/src/.gitignore === RUN TestIsVendor/.github/workflows/ci.yml === RUN TestIsVendor/.gitea/workflows/ci.yml --- PASS: TestIsVendor (0.00s) --- PASS: TestIsVendor/cache/ (0.00s) --- PASS: TestIsVendor/random/cache/ (0.00s) --- PASS: TestIsVendor/cache (0.00s) --- PASS: TestIsVendor/dependencies/ (0.00s) --- PASS: TestIsVendor/Dependencies/ (0.00s) --- PASS: TestIsVendor/dependency/ (0.00s) --- PASS: TestIsVendor/dist/ (0.00s) --- PASS: TestIsVendor/dist (0.00s) --- PASS: TestIsVendor/random/dist/ (0.00s) --- PASS: TestIsVendor/random/dist (0.00s) --- PASS: TestIsVendor/deps/ (0.00s) --- PASS: TestIsVendor/configure (0.00s) --- PASS: TestIsVendor/a/configure (0.00s) --- PASS: TestIsVendor/config.guess (0.00s) --- PASS: TestIsVendor/config.guess/ (0.00s) --- PASS: TestIsVendor/.vscode/ (0.00s) --- PASS: TestIsVendor/doc/_build/ (0.00s) --- PASS: TestIsVendor/a/docs/_build/ (0.00s) --- PASS: TestIsVendor/a/dasdocs/_build-vsdoc.js (0.00s) --- PASS: TestIsVendor/a/dasdocs/_build-vsdoc.j (0.00s) --- PASS: TestIsVendor/.gitignore (0.00s) --- PASS: TestIsVendor/.gitattributes (0.00s) --- PASS: TestIsVendor/.gitmodules (0.00s) --- PASS: TestIsVendor/src/.gitignore (0.00s) --- PASS: TestIsVendor/.github/workflows/ci.yml (0.00s) --- PASS: TestIsVendor/.gitea/workflows/ci.yml (0.00s) PASS ok gitea.dev/modules/analyze 0.216s === RUN TestEmbed --- PASS: TestEmbed (0.06s) === RUN TestLayered --- PASS: TestLayered (0.00s) PASS ok gitea.dev/modules/assetfs 0.082s ? gitea.dev/modules/auth [no test files] === RUN TestParseAuthorizationHeader --- PASS: TestParseAuthorizationHeader (0.00s) PASS ok gitea.dev/modules/auth/httpauth 0.007s === RUN TestTimedDiscoveryCache --- PASS: TestTimedDiscoveryCache (0.08s) === RUN TestOpenIDDiscoveryBlocksInternalHost --- PASS: TestOpenIDDiscoveryBlocksInternalHost (0.00s) PASS ok gitea.dev/modules/auth/openid 0.089s ? gitea.dev/modules/auth/pam [no test files] === RUN TestComplexity_IsComplexEnough --- PASS: TestComplexity_IsComplexEnough (0.00s) === RUN TestComplexity_Generate --- PASS: TestComplexity_Generate (0.01s) PASS ok gitea.dev/modules/auth/password 0.025s === RUN TestDummyHasher --- PASS: TestDummyHasher (0.00s) === RUN Test_registerHasher --- PASS: Test_registerHasher (0.00s) === RUN TestParse === RUN TestParse/argon2 === RUN TestParse/bcrypt === RUN TestParse/pbkdf2 === RUN TestParse/scrypt === RUN TestParse/argon2$2$65536$8$50 === RUN TestParse/bcrypt$10 === RUN TestParse/scrypt$65536$16$2$50 === RUN TestParse/pbkdf2$10000$50 === RUN TestParse/pbkdf2$50000$50 === RUN TestParse/pbkdf2$320000$50 --- PASS: TestParse (0.00s) --- PASS: TestParse/argon2 (0.00s) --- PASS: TestParse/bcrypt (0.00s) --- PASS: TestParse/pbkdf2 (0.00s) --- PASS: TestParse/scrypt (0.00s) --- PASS: TestParse/argon2$2$65536$8$50 (0.00s) --- PASS: TestParse/bcrypt$10 (0.00s) --- PASS: TestParse/scrypt$65536$16$2$50 (0.00s) --- PASS: TestParse/pbkdf2$10000$50 (0.00s) --- PASS: TestParse/pbkdf2$50000$50 (0.00s) --- PASS: TestParse/pbkdf2$320000$50 (0.00s) === RUN TestHashing === RUN TestHashing/bcrypt === PAUSE TestHashing/bcrypt === RUN TestHashing/pbkdf2 === PAUSE TestHashing/pbkdf2 === RUN TestHashing/scrypt === PAUSE TestHashing/scrypt === RUN TestHashing/argon2 === PAUSE TestHashing/argon2 === RUN TestHashing/pbkdf2$50000$50 === PAUSE TestHashing/pbkdf2$50000$50 === RUN TestHashing/pbkdf2$320000$50 === PAUSE TestHashing/pbkdf2$320000$50 === RUN TestHashing/argon2$2$65536$8$50 === PAUSE TestHashing/argon2$2$65536$8$50 === RUN TestHashing/bcrypt$10 === PAUSE TestHashing/bcrypt$10 === RUN TestHashing/scrypt$65536$16$2$50 === PAUSE TestHashing/scrypt$65536$16$2$50 === RUN TestHashing/pbkdf2$10000$50 === PAUSE TestHashing/pbkdf2$10000$50 === RUN TestHashing/bcrypt#01 === PAUSE TestHashing/bcrypt#01 === RUN TestHashing/pbkdf2#01 === PAUSE TestHashing/pbkdf2#01 === RUN TestHashing/scrypt#01 === PAUSE TestHashing/scrypt#01 === RUN TestHashing/argon2#01 === PAUSE TestHashing/argon2#01 === RUN TestHashing/pbkdf2$50000$50#01 === PAUSE TestHashing/pbkdf2$50000$50#01 === RUN TestHashing/pbkdf2$320000$50#01 === PAUSE TestHashing/pbkdf2$320000$50#01 === RUN TestHashing/argon2$2$65536$8$50#01 === PAUSE TestHashing/argon2$2$65536$8$50#01 === RUN TestHashing/bcrypt$10#01 === PAUSE TestHashing/bcrypt$10#01 === RUN TestHashing/scrypt$65536$16$2$50#01 === PAUSE TestHashing/scrypt$65536$16$2$50#01 === RUN TestHashing/pbkdf2$10000$50#01 === PAUSE TestHashing/pbkdf2$10000$50#01 === RUN TestHashing/bcrypt#02 === PAUSE TestHashing/bcrypt#02 === RUN TestHashing/pbkdf2#02 === PAUSE TestHashing/pbkdf2#02 === RUN TestHashing/scrypt#02 === PAUSE TestHashing/scrypt#02 === RUN TestHashing/argon2#02 === PAUSE TestHashing/argon2#02 === RUN TestHashing/pbkdf2$50000$50#02 === PAUSE TestHashing/pbkdf2$50000$50#02 === RUN TestHashing/pbkdf2$320000$50#02 === PAUSE TestHashing/pbkdf2$320000$50#02 === RUN TestHashing/argon2$2$65536$8$50#02 === PAUSE TestHashing/argon2$2$65536$8$50#02 === RUN TestHashing/bcrypt$10#02 === PAUSE TestHashing/bcrypt$10#02 === RUN TestHashing/scrypt$65536$16$2$50#02 === PAUSE TestHashing/scrypt$65536$16$2$50#02 === RUN TestHashing/pbkdf2$10000$50#02 === PAUSE TestHashing/pbkdf2$10000$50#02 === CONT TestHashing/bcrypt === CONT TestHashing/pbkdf2$320000$50#01 === CONT TestHashing/scrypt$65536$16$2$50 === CONT TestHashing/argon2#02 === CONT TestHashing/pbkdf2$10000$50#02 === CONT TestHashing/scrypt$65536$16$2$50#02 === CONT TestHashing/bcrypt$10#02 === CONT TestHashing/argon2$2$65536$8$50#02 === CONT TestHashing/pbkdf2$320000$50#02 === CONT TestHashing/pbkdf2$50000$50#02 === CONT TestHashing/bcrypt#01 === CONT TestHashing/pbkdf2$50000$50#01 === CONT TestHashing/pbkdf2$10000$50#01 === CONT TestHashing/pbkdf2$50000$50 === CONT TestHashing/argon2$2$65536$8$50 === CONT TestHashing/bcrypt$10 === CONT TestHashing/scrypt#01 === CONT TestHashing/pbkdf2$10000$50 === CONT TestHashing/scrypt === CONT TestHashing/scrypt#02 === CONT TestHashing/pbkdf2$320000$50 === CONT TestHashing/bcrypt$10#01 === CONT TestHashing/scrypt$65536$16$2$50#01 === CONT TestHashing/argon2$2$65536$8$50#01 === CONT TestHashing/bcrypt#02 === CONT TestHashing/argon2#01 === CONT TestHashing/argon2 === CONT TestHashing/pbkdf2 === CONT TestHashing/pbkdf2#02 === CONT TestHashing/pbkdf2#01 --- PASS: TestHashing (0.00s) --- PASS: TestHashing/argon2#02 (0.00s) --- PASS: TestHashing/pbkdf2$10000$50#02 (0.00s) --- PASS: TestHashing/scrypt$65536$16$2$50#02 (0.00s) --- PASS: TestHashing/bcrypt$10#02 (0.00s) --- PASS: TestHashing/argon2$2$65536$8$50#02 (0.00s) --- PASS: TestHashing/pbkdf2$320000$50#02 (0.00s) --- PASS: TestHashing/pbkdf2$50000$50#02 (0.00s) --- PASS: TestHashing/scrypt#02 (0.03s) --- PASS: TestHashing/pbkdf2#02 (0.00s) --- PASS: TestHashing/bcrypt#02 (0.00s) --- PASS: TestHashing/pbkdf2$10000$50#01 (0.41s) --- PASS: TestHashing/bcrypt#01 (0.41s) --- PASS: TestHashing/bcrypt$10 (0.45s) --- PASS: TestHashing/pbkdf2$10000$50 (0.45s) --- PASS: TestHashing/pbkdf2 (0.29s) --- PASS: TestHashing/pbkdf2#01 (0.22s) --- PASS: TestHashing/bcrypt (0.54s) --- PASS: TestHashing/bcrypt$10#01 (0.56s) --- PASS: TestHashing/pbkdf2$50000$50#01 (0.70s) --- PASS: TestHashing/argon2$2$65536$8$50 (1.02s) --- PASS: TestHashing/argon2#01 (0.89s) --- PASS: TestHashing/argon2$2$65536$8$50#01 (0.91s) --- PASS: TestHashing/argon2 (0.93s) --- PASS: TestHashing/pbkdf2$50000$50 (1.16s) --- PASS: TestHashing/pbkdf2$320000$50#01 (3.91s) --- PASS: TestHashing/pbkdf2$320000$50 (4.06s) --- PASS: TestHashing/scrypt#01 (5.31s) --- PASS: TestHashing/scrypt$65536$16$2$50#01 (5.37s) --- PASS: TestHashing/scrypt (5.56s) --- PASS: TestHashing/scrypt$65536$16$2$50 (5.67s) === RUN TestVectors === RUN TestVectors/0:_bcrypt === PAUSE TestVectors/0:_bcrypt === RUN TestVectors/0:_bcrypt$10 === PAUSE TestVectors/0:_bcrypt$10 === RUN TestVectors/1:_scrypt === PAUSE TestVectors/1:_scrypt === RUN TestVectors/1:_scrypt$65536$16$2$50 === PAUSE TestVectors/1:_scrypt$65536$16$2$50 === RUN TestVectors/2:_argon2 === PAUSE TestVectors/2:_argon2 === RUN TestVectors/2:_argon2$2$65536$8$50 === PAUSE TestVectors/2:_argon2$2$65536$8$50 === RUN TestVectors/3:_pbkdf2 === PAUSE TestVectors/3:_pbkdf2 === RUN TestVectors/3:_pbkdf2$10000$50 === PAUSE TestVectors/3:_pbkdf2$10000$50 === RUN TestVectors/4:_bcrypt === PAUSE TestVectors/4:_bcrypt === RUN TestVectors/4:_bcrypt$10 === PAUSE TestVectors/4:_bcrypt$10 === RUN TestVectors/5:_scrypt === PAUSE TestVectors/5:_scrypt === RUN TestVectors/5:_scrypt$65536$16$2$50 === PAUSE TestVectors/5:_scrypt$65536$16$2$50 === RUN TestVectors/6:_argon2 === PAUSE TestVectors/6:_argon2 === RUN TestVectors/6:_argon2$2$65536$8$50 === PAUSE TestVectors/6:_argon2$2$65536$8$50 === RUN TestVectors/7:_pbkdf2 === PAUSE TestVectors/7:_pbkdf2 === RUN TestVectors/7:_pbkdf2$10000$50 === PAUSE TestVectors/7:_pbkdf2$10000$50 === RUN TestVectors/8:_pbkdf2$320000$50 === PAUSE TestVectors/8:_pbkdf2$320000$50 === RUN TestVectors/9:_pbkdf2 === PAUSE TestVectors/9:_pbkdf2 === RUN TestVectors/9:_pbkdf2$10000$50 === PAUSE TestVectors/9:_pbkdf2$10000$50 === CONT TestVectors/0:_bcrypt === CONT TestVectors/5:_scrypt === CONT TestVectors/2:_argon2$2$65536$8$50 === CONT TestVectors/0:_bcrypt$10 === CONT TestVectors/4:_bcrypt === CONT TestVectors/7:_pbkdf2$10000$50 === CONT TestVectors/3:_pbkdf2 === CONT TestVectors/3:_pbkdf2$10000$50 === CONT TestVectors/1:_scrypt$65536$16$2$50 === CONT TestVectors/7:_pbkdf2 === CONT TestVectors/9:_pbkdf2$10000$50 === CONT TestVectors/1:_scrypt === CONT TestVectors/4:_bcrypt$10 === CONT TestVectors/5:_scrypt$65536$16$2$50 === CONT TestVectors/6:_argon2$2$65536$8$50 === CONT TestVectors/2:_argon2 === CONT TestVectors/6:_argon2 === CONT TestVectors/8:_pbkdf2$320000$50 === CONT TestVectors/9:_pbkdf2 --- PASS: TestVectors (0.00s) --- PASS: TestVectors/7:_pbkdf2 (0.05s) --- PASS: TestVectors/9:_pbkdf2 (0.05s) --- PASS: TestVectors/3:_pbkdf2 (0.05s) --- PASS: TestVectors/3:_pbkdf2$10000$50 (0.05s) --- PASS: TestVectors/9:_pbkdf2$10000$50 (0.05s) --- PASS: TestVectors/7:_pbkdf2$10000$50 (0.06s) --- PASS: TestVectors/4:_bcrypt (0.14s) --- PASS: TestVectors/4:_bcrypt$10 (0.12s) --- PASS: TestVectors/2:_argon2 (0.13s) --- PASS: TestVectors/2:_argon2$2$65536$8$50 (0.16s) --- PASS: TestVectors/6:_argon2 (0.14s) --- PASS: TestVectors/0:_bcrypt (0.18s) --- PASS: TestVectors/6:_argon2$2$65536$8$50 (0.15s) --- PASS: TestVectors/0:_bcrypt$10 (0.20s) --- PASS: TestVectors/8:_pbkdf2$320000$50 (0.77s) --- PASS: TestVectors/5:_scrypt$65536$16$2$50 (1.45s) --- PASS: TestVectors/5:_scrypt (1.51s) --- PASS: TestVectors/1:_scrypt (1.52s) --- PASS: TestVectors/1:_scrypt$65536$16$2$50 (1.54s) === RUN TestCheckSettingPasswordHashAlgorithm === RUN TestCheckSettingPasswordHashAlgorithm/pbkdf2_is_pbkdf2_v2 === RUN TestCheckSettingPasswordHashAlgorithm/argon2=argon2$2$65536$8$50 === RUN TestCheckSettingPasswordHashAlgorithm/bcrypt=bcrypt$10 === RUN TestCheckSettingPasswordHashAlgorithm/scrypt=scrypt$65536$16$2$50 === RUN TestCheckSettingPasswordHashAlgorithm/pbkdf2=pbkdf2_v2 === RUN TestCheckSettingPasswordHashAlgorithm/pbkdf2_v1=pbkdf2$10000$50 === RUN TestCheckSettingPasswordHashAlgorithm/pbkdf2_v2=pbkdf2$50000$50 === RUN TestCheckSettingPasswordHashAlgorithm/pbkdf2_hi=pbkdf2$320000$50 === RUN TestCheckSettingPasswordHashAlgorithm/pbkdf2_v2_is_the_default_when_default_password_hash_algorithm_is_empty --- PASS: TestCheckSettingPasswordHashAlgorithm (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/pbkdf2_is_pbkdf2_v2 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/argon2=argon2$2$65536$8$50 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/bcrypt=bcrypt$10 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/scrypt=scrypt$65536$16$2$50 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/pbkdf2=pbkdf2_v2 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/pbkdf2_v1=pbkdf2$10000$50 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/pbkdf2_v2=pbkdf2$50000$50 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/pbkdf2_hi=pbkdf2$320000$50 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/pbkdf2_v2_is_the_default_when_default_password_hash_algorithm_is_empty (0.00s) PASS ok gitea.dev/modules/auth/password/hash 7.238s === RUN TestPassword --- PASS: TestPassword (0.00s) PASS ok gitea.dev/modules/auth/password/pwn 0.013s === RUN TestInit --- PASS: TestInit (0.00s) PASS ok gitea.dev/modules/auth/webauthn 0.012s === RUN Test_ProcessAvatarPNG --- PASS: Test_ProcessAvatarPNG (0.00s) === RUN Test_ProcessAvatarJPEG --- PASS: Test_ProcessAvatarJPEG (0.00s) === RUN Test_ProcessAvatarInvalidData --- PASS: Test_ProcessAvatarInvalidData (0.00s) === RUN Test_ProcessAvatarInvalidImageSize --- PASS: Test_ProcessAvatarInvalidImageSize (0.00s) === RUN Test_ProcessAvatarImage --- PASS: Test_ProcessAvatarImage (0.25s) === RUN Test_HashAvatar --- PASS: Test_HashAvatar (0.00s) PASS ok gitea.dev/modules/avatar 0.267s ? gitea.dev/modules/avatar/identicon [no test files] ? gitea.dev/modules/badge [no test files] === RUN TestNaturalSortLess --- PASS: TestNaturalSortLess (0.00s) === RUN TestEncodeSha256 --- PASS: TestEncodeSha256 (0.00s) === RUN TestShortSha --- PASS: TestShortSha (0.00s) === RUN TestVerifyTimeLimitCode === RUN TestVerifyTimeLimitCode/TestGenericParameter === RUN TestVerifyTimeLimitCode/TestInvalidCode === RUN TestVerifyTimeLimitCode/TestCreateAndVerify === RUN TestVerifyTimeLimitCode/TestDifferentSecret --- PASS: TestVerifyTimeLimitCode (0.01s) --- PASS: TestVerifyTimeLimitCode/TestGenericParameter (0.00s) --- PASS: TestVerifyTimeLimitCode/TestInvalidCode (0.00s) --- PASS: TestVerifyTimeLimitCode/TestCreateAndVerify (0.00s) --- PASS: TestVerifyTimeLimitCode/TestDifferentSecret (0.00s) === RUN TestFileSize --- PASS: TestFileSize (0.00s) === RUN TestStringsToInt64s --- PASS: TestStringsToInt64s (0.00s) === RUN TestInt64sToStrings --- PASS: TestInt64sToStrings (0.00s) PASS ok gitea.dev/modules/base 0.024s === RUN TestNewContext --- PASS: TestNewContext (0.00s) === RUN TestTest --- PASS: TestTest (0.00s) === RUN TestGetCache --- PASS: TestGetCache (0.00s) === RUN TestGetString --- PASS: TestGetString (0.00s) === RUN TestGetInt64 --- PASS: TestGetInt64 (0.00s) === RUN TestWithCacheContext --- PASS: TestWithCacheContext (0.00s) PASS ok gitea.dev/modules/cache 0.018s ? gitea.dev/modules/cachegroup [no test files] === RUN TestAmbiguousCharacters --- PASS: TestAmbiguousCharacters (0.00s) === RUN TestMaybeRemoveBOM --- PASS: TestMaybeRemoveBOM (0.00s) === RUN TestToUTF8 --- PASS: TestToUTF8 (0.01s) === RUN TestToUTF8WithFallback --- PASS: TestToUTF8WithFallback (0.00s) === RUN TestToUTF8DropErrors --- PASS: TestToUTF8DropErrors (0.00s) === RUN TestDetectEncoding --- PASS: TestDetectEncoding (0.00s) === RUN TestToUTF8WithFallbackReader --- PASS: TestToUTF8WithFallbackReader (0.00s) === RUN TestEscapeControlReader === RUN TestEscapeControlReader/ === RUN TestEscapeControlReader/single_line_western === RUN TestEscapeControlReader/multi_line_western === RUN TestEscapeControlReader/multi_line_western_non-breaking_space === RUN TestEscapeControlReader/mixed_scripts:_western_+_japanese === RUN TestEscapeControlReader/japanese === RUN TestEscapeControlReader/hebrew === RUN TestEscapeControlReader/more_hebrew === RUN TestEscapeControlReader/Mixed_RTL+LTR === RUN TestEscapeControlReader/Mixed_RTL+LTR+BIDI === RUN TestEscapeControlReader/Accented_characters === RUN TestEscapeControlReader/Program === RUN TestEscapeControlReader/CVE_testcase === RUN TestEscapeControlReader/Mixed_testcase_with_fail === RUN TestEscapeControlReader/UTF_BOM === RUN TestEscapeControlReader/ambiguous --- PASS: TestEscapeControlReader (0.01s) --- PASS: TestEscapeControlReader/ (0.00s) --- PASS: TestEscapeControlReader/single_line_western (0.00s) --- PASS: TestEscapeControlReader/multi_line_western (0.00s) --- PASS: TestEscapeControlReader/multi_line_western_non-breaking_space (0.00s) --- PASS: TestEscapeControlReader/mixed_scripts:_western_+_japanese (0.00s) --- PASS: TestEscapeControlReader/japanese (0.00s) --- PASS: TestEscapeControlReader/hebrew (0.00s) --- PASS: TestEscapeControlReader/more_hebrew (0.00s) --- PASS: TestEscapeControlReader/Mixed_RTL+LTR (0.00s) --- PASS: TestEscapeControlReader/Mixed_RTL+LTR+BIDI (0.00s) --- PASS: TestEscapeControlReader/Accented_characters (0.00s) --- PASS: TestEscapeControlReader/Program (0.00s) --- PASS: TestEscapeControlReader/CVE_testcase (0.00s) --- PASS: TestEscapeControlReader/Mixed_testcase_with_fail (0.00s) --- PASS: TestEscapeControlReader/UTF_BOM (0.00s) --- PASS: TestEscapeControlReader/ambiguous (0.00s) === RUN TestSettingAmbiguousUnicodeDetection --- PASS: TestSettingAmbiguousUnicodeDetection (0.00s) === RUN TestHTMLChunkReader --- PASS: TestHTMLChunkReader (0.00s) PASS ok gitea.dev/modules/charset 0.073s ? gitea.dev/modules/charset/generate [no test files] === RUN TestCombine === RUN TestCombine/empty === RUN TestCombine/pending === RUN TestCombine/success === RUN TestCombine/error === RUN TestCombine/failure === RUN TestCombine/warning === RUN TestCombine/pending_and_success === RUN TestCombine/pending_and_error === RUN TestCombine/pending_and_failure === RUN TestCombine/pending_and_warning === RUN TestCombine/success_and_error === RUN TestCombine/success_and_failure === RUN TestCombine/success_and_warning === RUN TestCombine/error_and_failure === RUN TestCombine/error_and_warning === RUN TestCombine/failure_and_warning === RUN TestCombine/pending,_success_and_warning === RUN TestCombine/pending,_success_and_error === RUN TestCombine/pending,_success_and_failure === RUN TestCombine/pending,_error_and_failure === RUN TestCombine/success,_error_and_warning === RUN TestCombine/success,_failure_and_warning === RUN TestCombine/error,_failure_and_warning === RUN TestCombine/success,_warning_and_skipped === RUN TestCombine/all_success === RUN TestCombine/all_pending === RUN TestCombine/all_skipped === RUN TestCombine/pending,_success,_error_and_warning === RUN TestCombine/pending,_success,_failure_and_warning === RUN TestCombine/pending,_error,_failure_and_warning === RUN TestCombine/success,_error,_failure_and_warning === RUN TestCombine/mixed_states === RUN TestCombine/mixed_states_with_all_success === RUN TestCombine/all_success_with_warning --- PASS: TestCombine (0.00s) --- PASS: TestCombine/empty (0.00s) --- PASS: TestCombine/pending (0.00s) --- PASS: TestCombine/success (0.00s) --- PASS: TestCombine/error (0.00s) --- PASS: TestCombine/failure (0.00s) --- PASS: TestCombine/warning (0.00s) --- PASS: TestCombine/pending_and_success (0.00s) --- PASS: TestCombine/pending_and_error (0.00s) --- PASS: TestCombine/pending_and_failure (0.00s) --- PASS: TestCombine/pending_and_warning (0.00s) --- PASS: TestCombine/success_and_error (0.00s) --- PASS: TestCombine/success_and_failure (0.00s) --- PASS: TestCombine/success_and_warning (0.00s) --- PASS: TestCombine/error_and_failure (0.00s) --- PASS: TestCombine/error_and_warning (0.00s) --- PASS: TestCombine/failure_and_warning (0.00s) --- PASS: TestCombine/pending,_success_and_warning (0.00s) --- PASS: TestCombine/pending,_success_and_error (0.00s) --- PASS: TestCombine/pending,_success_and_failure (0.00s) --- PASS: TestCombine/pending,_error_and_failure (0.00s) --- PASS: TestCombine/success,_error_and_warning (0.00s) --- PASS: TestCombine/success,_failure_and_warning (0.00s) --- PASS: TestCombine/error,_failure_and_warning (0.00s) --- PASS: TestCombine/success,_warning_and_skipped (0.00s) --- PASS: TestCombine/all_success (0.00s) --- PASS: TestCombine/all_pending (0.00s) --- PASS: TestCombine/all_skipped (0.00s) --- PASS: TestCombine/pending,_success,_error_and_warning (0.00s) --- PASS: TestCombine/pending,_success,_failure_and_warning (0.00s) --- PASS: TestCombine/pending,_error,_failure_and_warning (0.00s) --- PASS: TestCombine/success,_error,_failure_and_warning (0.00s) --- PASS: TestCombine/mixed_states (0.00s) --- PASS: TestCombine/mixed_states_with_all_success (0.00s) --- PASS: TestCombine/all_success_with_warning (0.00s) PASS ok gitea.dev/modules/commitstatus 0.012s ? gitea.dev/modules/consts [no test files] === RUN TestFilterMapUnique --- PASS: TestFilterMapUnique (0.00s) === RUN TestSet --- PASS: TestSet (0.00s) PASS ok gitea.dev/modules/container 0.008s === RUN TestCreateReader --- PASS: TestCreateReader (0.00s) === RUN TestCreateReaderAndDetermineDelimiter --- PASS: TestCreateReaderAndDetermineDelimiter (0.00s) === RUN TestDetermineDelimiterShortBufferError --- PASS: TestDetermineDelimiterShortBufferError (0.00s) === RUN TestDetermineDelimiter --- PASS: TestDetermineDelimiter (0.00s) === RUN TestRemoveQuotedString --- PASS: TestRemoveQuotedString (0.00s) === RUN TestGuessDelimiter --- PASS: TestGuessDelimiter (0.01s) === RUN TestGuessFromBeforeAfterQuotes --- PASS: TestGuessFromBeforeAfterQuotes (0.00s) === RUN TestFormatError --- PASS: TestFormatError (0.00s) PASS ok gitea.dev/modules/csv 0.076s === RUN TestPrepareFileNameAndType --- PASS: TestPrepareFileNameAndType (0.00s) === RUN TestIsSubDir --- PASS: TestIsSubDir (0.00s) === RUN TestDumperIntegration --- PASS: TestDumperIntegration (0.00s) === RUN TestDumper === RUN TestDumper/IncludesWithExcludes === RUN TestDumper/IncludesAll --- PASS: TestDumper (0.00s) --- PASS: TestDumper/IncludesWithExcludes (0.00s) --- PASS: TestDumper/IncludesAll (0.00s) PASS ok gitea.dev/modules/dump 0.015s === RUN TestLookup --- PASS: TestLookup (0.02s) === RUN TestReplacers --- PASS: TestReplacers (0.03s) === RUN TestFindEmojiSubmatchIndex --- PASS: TestFindEmojiSubmatchIndex (0.01s) PASS ok gitea.dev/modules/emoji 0.079s === RUN Test_wrapNewlines === RUN Test_wrapNewlines/check_no_new_lines === RUN Test_wrapNewlines/check_simple_newline === RUN Test_wrapNewlines/check_pathological_newlines --- PASS: Test_wrapNewlines (0.00s) --- PASS: Test_wrapNewlines/check_no_new_lines (0.00s) --- PASS: Test_wrapNewlines/check_simple_newline (0.00s) --- PASS: Test_wrapNewlines/check_pathological_newlines (0.00s) PASS ok gitea.dev/modules/eventsource 0.297s 2026/09/06 06:40:36 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-133565451/data/attachments 2026/09/06 06:40:36 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-133565451/data/avatars 2026/09/06 06:40:36 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-133565451/data/repo-avatars 2026/09/06 06:40:36 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-133565451/data/repo-archive 2026/09/06 06:40:36 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-133565451/data/packages 2026/09/06 06:40:36 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-133565451/data/actions_log 2026/09/06 06:40:36 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:36 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-133565451/data/actions_artifacts === RUN TestFindIconName --- PASS: TestFindIconName (0.17s) === RUN TestRenderEntryIconHTML_WithDifferentThemes === RUN TestRenderEntryIconHTML_WithDifferentThemes/FolderUsesBasicTheme === RUN TestRenderEntryIconHTML_WithDifferentThemes/FileUsesMaterialTheme === RUN TestRenderEntryIconHTML_WithDifferentThemes/SymlinkToFolderUsesBasicTheme === RUN TestRenderEntryIconHTML_WithDifferentThemes/BothMaterialTheme --- PASS: TestRenderEntryIconHTML_WithDifferentThemes (0.00s) --- PASS: TestRenderEntryIconHTML_WithDifferentThemes/FolderUsesBasicTheme (0.00s) --- PASS: TestRenderEntryIconHTML_WithDifferentThemes/FileUsesMaterialTheme (0.00s) --- PASS: TestRenderEntryIconHTML_WithDifferentThemes/SymlinkToFolderUsesBasicTheme (0.00s) --- PASS: TestRenderEntryIconHTML_WithDifferentThemes/BothMaterialTheme (0.00s) PASS ok gitea.dev/modules/fileicon 0.459s === RUN TestDecodeJwtSecretBase64 --- PASS: TestDecodeJwtSecretBase64 (0.00s) === RUN TestNewJwtSecretWithBase64 --- PASS: TestNewJwtSecretWithBase64 (0.00s) PASS ok gitea.dev/modules/generate 0.014s === RUN TestBlob_Data --- PASS: TestBlob_Data (0.00s) === RUN TestCatFileBatch === RUN TestCatFileBatch/LegacyCheck === RUN TestCatFileBatch/LegacyCheck/CorruptedGitRepo === RUN TestCatFileBatch/LegacyCheck/QueryTerminated 2026/09/06 06:40:36 .../catfile_batch_reader.go:62:newCatFileBatch.2() [E] cat-file --batch command failed in repo tests/repos/repo1_bare, error: signal: killed - === RUN TestCatFileBatch/LegacyCheck/QueryInfo 2026/09/06 06:40:36 .../catfile_batch_reader.go:62:newCatFileBatch.2() [E] cat-file --batch command failed in repo tests/repos/repo1_bare, error: signal: killed - === RUN TestCatFileBatch/LegacyCheck/QueryContent === RUN TestCatFileBatch/BatchCommand === RUN TestCatFileBatch/BatchCommand/CorruptedGitRepo === RUN TestCatFileBatch/BatchCommand/QueryTerminated 2026/09/06 06:40:36 .../catfile_batch_reader.go:62:newCatFileBatch.2() [E] cat-file --batch command failed in repo tests/repos/repo1_bare, error: signal: killed - === RUN TestCatFileBatch/BatchCommand/QueryInfo 2026/09/06 06:40:36 .../catfile_batch_reader.go:62:newCatFileBatch.2() [E] cat-file --batch command failed in repo tests/repos/repo1_bare, error: signal: killed - === RUN TestCatFileBatch/BatchCommand/QueryContent --- PASS: TestCatFileBatch (0.05s) --- PASS: TestCatFileBatch/LegacyCheck (0.02s) --- PASS: TestCatFileBatch/LegacyCheck/CorruptedGitRepo (0.00s) --- PASS: TestCatFileBatch/LegacyCheck/QueryTerminated (0.01s) --- PASS: TestCatFileBatch/LegacyCheck/QueryInfo (0.00s) --- PASS: TestCatFileBatch/LegacyCheck/QueryContent (0.00s) --- PASS: TestCatFileBatch/BatchCommand (0.03s) --- PASS: TestCatFileBatch/BatchCommand/CorruptedGitRepo (0.01s) --- PASS: TestCatFileBatch/BatchCommand/QueryTerminated (0.01s) --- PASS: TestCatFileBatch/BatchCommand/QueryInfo (0.01s) --- PASS: TestCatFileBatch/BatchCommand/QueryContent (0.00s) === RUN TestEntries_GetCommitsInfo_ContextErr --- PASS: TestEntries_GetCommitsInfo_ContextErr (0.03s) === RUN TestEntries_GetCommitsInfo === RUN TestEntries_GetCommitsInfo/NonExistingSubmoduleAsNil --- PASS: TestEntries_GetCommitsInfo (0.22s) --- PASS: TestEntries_GetCommitsInfo/NonExistingSubmoduleAsNil (0.00s) === RUN TestCommitMessageSanitizesInvalidUTF8 --- PASS: TestCommitMessageSanitizesInvalidUTF8 (0.00s) === RUN TestCommitMessageTrailer --- PASS: TestCommitMessageTrailer (0.00s) === RUN TestCommitMessageParticipants === RUN TestCommitMessageParticipants/AllAuthors === RUN TestCommitMessageParticipants/CoAuthors --- PASS: TestCommitMessageParticipants (0.00s) --- PASS: TestCommitMessageParticipants/AllAuthors (0.00s) --- PASS: TestCommitMessageParticipants/CoAuthors (0.00s) === RUN TestCommitMessageMerge --- PASS: TestCommitMessageMerge (0.00s) === RUN TestGetFullCommitIDSha256 --- PASS: TestGetFullCommitIDSha256 (0.00s) === RUN TestGetFullCommitIDErrorSha256 --- PASS: TestGetFullCommitIDErrorSha256 (0.00s) === RUN TestCommitFromReaderSha256 --- PASS: TestCommitFromReaderSha256 (0.00s) === RUN TestHasPreviousCommitSha256 --- PASS: TestHasPreviousCommitSha256 (0.02s) === RUN TestCommitSubmoduleLink === RUN TestCommitSubmoduleLink/GitHubRepo === RUN TestCommitSubmoduleLink/RelativePath --- PASS: TestCommitSubmoduleLink (0.00s) --- PASS: TestCommitSubmoduleLink/GitHubRepo (0.00s) --- PASS: TestCommitSubmoduleLink/RelativePath (0.00s) === RUN TestGetFullCommitID --- PASS: TestGetFullCommitID (0.00s) === RUN TestGetFullCommitIDError --- PASS: TestGetFullCommitIDError (0.00s) === RUN TestCommitFromReader --- PASS: TestCommitFromReader (0.00s) === RUN TestCommitWithEncodingFromReader --- PASS: TestCommitWithEncodingFromReader (0.00s) === RUN TestHasPreviousCommit --- PASS: TestHasPreviousCommit (0.01s) === RUN Test_GetCommitBranchStart --- PASS: Test_GetCommitBranchStart (0.03s) === RUN TestIsStringLikelyCommitID --- PASS: TestIsStringLikelyCommitID (0.00s) === RUN TestConfigSubmodule --- PASS: TestConfigSubmodule (0.00s) === RUN TestGitConfig --- PASS: TestGitConfig (0.05s) === RUN TestSyncGitConfig --- PASS: TestSyncGitConfig (0.08s) === RUN TestCutDiffAroundLineIssue17875 --- PASS: TestCutDiffAroundLineIssue17875 (0.00s) === RUN TestCutDiffAroundLine --- PASS: TestCutDiffAroundLine (0.00s) === RUN TestParseDiffHunkString --- PASS: TestParseDiffHunkString (0.00s) === RUN TestParseGitVersion --- PASS: TestParseGitVersion (0.00s) === RUN TestCheckGitVersionCompatibility --- PASS: TestCheckGitVersionCompatibility (0.00s) === RUN TestGrepSearch --- PASS: TestGrepSearch (0.09s) === RUN TestGetNotes --- PASS: TestGetNotes (0.01s) === RUN TestGetNestedNotes --- PASS: TestGetNestedNotes (0.02s) === RUN TestGetNonExistentNotes --- PASS: TestGetNonExistentNotes (0.01s) === RUN TestIsValidSHAPattern --- PASS: TestIsValidSHAPattern (0.00s) === RUN TestParseTreeEntriesLong --- PASS: TestParseTreeEntriesLong (0.00s) === RUN TestParseTreeEntriesShort --- PASS: TestParseTreeEntriesShort (0.00s) === RUN TestParseTreeEntriesInvalid --- PASS: TestParseTreeEntriesInvalid (0.00s) === RUN TestParseCatFileTreeLine --- PASS: TestParseCatFileTreeLine (0.00s) === RUN TestRefName --- PASS: TestRefName (0.00s) === RUN TestRefWebLinkPath --- PASS: TestRefWebLinkPath (0.00s) === RUN TestParseRefSuffix --- PASS: TestParseRefSuffix (0.00s) === RUN TestRepoCatFileBatch === RUN TestRepoCatFileBatch/MissingRepoAndClose --- PASS: TestRepoCatFileBatch (0.00s) --- PASS: TestRepoCatFileBatch/MissingRepoAndClose (0.00s) === RUN TestRepository_GetBlob_Found --- PASS: TestRepository_GetBlob_Found (0.00s) === RUN TestRepository_GetBlob_NotExist --- PASS: TestRepository_GetBlob_NotExist (0.00s) === RUN TestRepository_GetBlob_NoId --- PASS: TestRepository_GetBlob_NoId (0.00s) === RUN TestRepository_GetBranches --- PASS: TestRepository_GetBranches (0.01s) === RUN TestGetRefsBySha --- PASS: TestGetRefsBySha (0.02s) === RUN TestRepository_IsObjectExist === RUN TestRepository_IsObjectExist/empty === RUN TestRepository_IsObjectExist/branch === RUN TestRepository_IsObjectExist/commit_hash === RUN TestRepository_IsObjectExist/short_commit_hash === RUN TestRepository_IsObjectExist/blob_hash === RUN TestRepository_IsObjectExist/short_blob_hash --- PASS: TestRepository_IsObjectExist (0.02s) --- PASS: TestRepository_IsObjectExist/empty (0.00s) --- PASS: TestRepository_IsObjectExist/branch (0.01s) --- PASS: TestRepository_IsObjectExist/commit_hash (0.00s) --- PASS: TestRepository_IsObjectExist/short_commit_hash (0.00s) --- PASS: TestRepository_IsObjectExist/blob_hash (0.01s) --- PASS: TestRepository_IsObjectExist/short_blob_hash (0.00s) === RUN TestRepository_IsReferenceExist === RUN TestRepository_IsReferenceExist/empty === RUN TestRepository_IsReferenceExist/branch === RUN TestRepository_IsReferenceExist/commit_hash === RUN TestRepository_IsReferenceExist/short_commit_hash === RUN TestRepository_IsReferenceExist/blob_hash === RUN TestRepository_IsReferenceExist/short_blob_hash --- PASS: TestRepository_IsReferenceExist (0.00s) --- PASS: TestRepository_IsReferenceExist/empty (0.00s) --- PASS: TestRepository_IsReferenceExist/branch (0.00s) --- PASS: TestRepository_IsReferenceExist/commit_hash (0.00s) --- PASS: TestRepository_IsReferenceExist/short_commit_hash (0.00s) --- PASS: TestRepository_IsReferenceExist/blob_hash (0.00s) --- PASS: TestRepository_IsReferenceExist/short_blob_hash (0.00s) === RUN TestRepository_GetCommitBranches --- PASS: TestRepository_GetCommitBranches (0.04s) === RUN TestGetTagCommitWithSignature --- PASS: TestGetTagCommitWithSignature (0.01s) === RUN TestGetCommitWithBadCommitID --- PASS: TestGetCommitWithBadCommitID (0.01s) === RUN TestIsCommitInBranch --- PASS: TestIsCommitInBranch (0.01s) === RUN TestRepository_CommitsBetween --- PASS: TestRepository_CommitsBetween (0.02s) === RUN TestGetRefCommitID --- PASS: TestGetRefCommitID (0.00s) === RUN TestCommitsByFileAndRange --- PASS: TestCommitsByFileAndRange (0.07s) === RUN TestGetFormatPatch --- PASS: TestGetFormatPatch (0.04s) === RUN TestReadPatch --- PASS: TestReadPatch (0.00s) === RUN TestReadWritePullHead --- PASS: TestReadWritePullHead (0.14s) === RUN TestGetCommitFilesChanged --- PASS: TestGetCommitFilesChanged (0.02s) === RUN TestRepository_GetRefs --- PASS: TestRepository_GetRefs (0.00s) === RUN TestRepository_GetRefsFiltered --- PASS: TestRepository_GetRefsFiltered (0.00s) === RUN TestRepository_GetCodeActivityStats --- PASS: TestRepository_GetCodeActivityStats (0.04s) === RUN TestRepository_GetTagInfos --- PASS: TestRepository_GetTagInfos (0.01s) === RUN TestRepository_GetTag --- PASS: TestRepository_GetTag (0.10s) === RUN TestRepository_GetAnnotatedTag --- PASS: TestRepository_GetAnnotatedTag (0.05s) === RUN TestRepository_parseTagRef === RUN TestRepository_parseTagRef/lightweight_tag === RUN TestRepository_parseTagRef/annotated_tag === RUN TestRepository_parseTagRef/annotated_tag_with_signature --- PASS: TestRepository_parseTagRef (0.00s) --- PASS: TestRepository_parseTagRef/lightweight_tag (0.00s) --- PASS: TestRepository_parseTagRef/annotated_tag (0.00s) --- PASS: TestRepository_parseTagRef/annotated_tag_with_signature (0.00s) === RUN TestRepoIsEmpty --- PASS: TestRepoIsEmpty (0.00s) === RUN TestCloneRefusesRedirects repo_test.go:29: FIXME: GIT-CLONE-HTTP-REDIRECT-SSRF: need a complete solution in the future --- SKIP: TestCloneRefusesRedirects (0.00s) === RUN TestParseSignatureFromCommitLine --- PASS: TestParseSignatureFromCommitLine (0.00s) === RUN TestGetTemplateSubmoduleCommits --- PASS: TestGetTemplateSubmoduleCommits (0.00s) === RUN TestAddTemplateSubmoduleIndexes --- PASS: TestAddTemplateSubmoduleIndexes (0.03s) === RUN Test_parseTagData --- PASS: Test_parseTagData (0.00s) === RUN TestFollowLink --- PASS: TestFollowLink (0.01s) === RUN TestEntriesCustomSort --- PASS: TestEntriesCustomSort (0.00s) === RUN TestParseEntryMode --- PASS: TestParseEntryMode (0.00s) === RUN TestSubTree_Issue29101 --- PASS: TestSubTree_Issue29101 (0.01s) === RUN Test_GetTreePathLatestCommit --- PASS: Test_GetTreePathLatestCommit (0.01s) === RUN TestHashFilePathForWebUI --- PASS: TestHashFilePathForWebUI (0.00s) === RUN TestSplitCommitTitleBody --- PASS: TestSplitCommitTitleBody (0.00s) PASS ok gitea.dev/modules/git 1.452s === RUN Test_Attribute --- PASS: Test_Attribute (0.00s) === RUN Test_nulSeparatedAttributeWriter_ReadAttribute --- PASS: Test_nulSeparatedAttributeWriter_ReadAttribute (0.20s) === RUN Test_BatchChecker === RUN Test_BatchChecker/Create_index_file_to_run_git_check-attr === RUN Test_BatchChecker/Run_git_check-attr_on_git_work_tree === RUN Test_BatchChecker/Run_git_check-attr_in_bare_repository --- PASS: Test_BatchChecker (0.05s) --- PASS: Test_BatchChecker/Create_index_file_to_run_git_check-attr (0.01s) --- PASS: Test_BatchChecker/Run_git_check-attr_on_git_work_tree (0.03s) --- PASS: Test_BatchChecker/Run_git_check-attr_in_bare_repository (0.00s) === RUN Test_Checker === RUN Test_Checker/Create_index_file_to_run_git_check-attr === RUN Test_Checker/Run_git_check-attr_on_git_work_tree === RUN Test_Checker/Run_git_check-attr_in_bare_repository_using_index === RUN Test_Checker/Run_git_check-attr_in_bare_repository --- PASS: Test_Checker (0.07s) --- PASS: Test_Checker/Create_index_file_to_run_git_check-attr (0.01s) --- PASS: Test_Checker/Run_git_check-attr_on_git_work_tree (0.03s) --- PASS: Test_Checker/Run_git_check-attr_in_bare_repository_using_index (0.02s) --- PASS: Test_Checker/Run_git_check-attr_in_bare_repository (0.01s) PASS ok gitea.dev/modules/git/attribute 0.427s === RUN TestFormat_Flag === RUN TestFormat_Flag/references_are_delimited_by_dual_null_chars === RUN TestFormat_Flag/a_field_is_a_space-separated_key-value_pair === RUN TestFormat_Flag/fields_are_separated_by_a_null_char_field-delimiter === RUN TestFormat_Flag/multiple_fields --- PASS: TestFormat_Flag (0.00s) --- PASS: TestFormat_Flag/references_are_delimited_by_dual_null_chars (0.00s) --- PASS: TestFormat_Flag/a_field_is_a_space-separated_key-value_pair (0.00s) --- PASS: TestFormat_Flag/fields_are_separated_by_a_null_char_field-delimiter (0.00s) --- PASS: TestFormat_Flag/multiple_fields (0.00s) === RUN TestParser === RUN TestParser/no_references_on_empty_input === RUN TestParser/single_field_requested,_single_reference_in_output === RUN TestParser/single_field_requested,_multiple_references_in_output === RUN TestParser/multiple_fields_requested_for_each_reference === RUN TestParser/must_handle_multi-line_fields_such_as_'content' === RUN TestParser/must_handle_fields_without_values === RUN TestParser/must_fail_when_the_number_of_fields_in_the_input_doesn't_match_expected_format === RUN TestParser/must_fail_input_fields_don't_match_expected_format --- PASS: TestParser (0.00s) --- PASS: TestParser/no_references_on_empty_input (0.00s) --- PASS: TestParser/single_field_requested,_single_reference_in_output (0.00s) --- PASS: TestParser/single_field_requested,_multiple_references_in_output (0.00s) --- PASS: TestParser/multiple_fields_requested_for_each_reference (0.00s) --- PASS: TestParser/must_handle_multi-line_fields_such_as_'content' (0.00s) --- PASS: TestParser/must_handle_fields_without_values (0.00s) --- PASS: TestParser/must_fail_when_the_number_of_fields_in_the_input_doesn't_match_expected_format (0.00s) --- PASS: TestParser/must_fail_input_fields_don't_match_expected_format (0.00s) PASS ok gitea.dev/modules/git/foreachref 0.006s === RUN TestRunWithContextStd 2026/09/06 06:40:36 .../git/gitcmd/command.go:410:(*Command).Start() [E] git command: git, error: broken git command argument "-test" 2026/09/06 06:40:36 .../git/gitcmd/command.go:410:(*Command).Start() [E] git command: git, error: broken git command argument "--test" --- PASS: TestRunWithContextStd (0.02s) === RUN TestGitArgument --- PASS: TestGitArgument (0.00s) === RUN TestCommandString --- PASS: TestCommandString (0.00s) === RUN TestRunStdError --- PASS: TestRunStdError (0.00s) === RUN TestRunWithContextTimeout === RUN TestRunWithContextTimeout/NoTimeout === RUN TestRunWithContextTimeout/WithTimeout --- PASS: TestRunWithContextTimeout (0.01s) --- PASS: TestRunWithContextTimeout/NoTimeout (0.00s) --- PASS: TestRunWithContextTimeout/WithTimeout (0.01s) === RUN TestIsStderr --- PASS: TestIsStderr (0.00s) PASS ok gitea.dev/modules/git/gitcmd 0.085s ? gitea.dev/modules/git/internal [no test files] === RUN TestRepository_GetLanguageStats --- PASS: TestRepository_GetLanguageStats (0.03s) === RUN TestMergeLanguageStats --- PASS: TestMergeLanguageStats (0.00s) PASS ok gitea.dev/modules/git/languagestats 0.244s === RUN TestFindLFSFile --- PASS: TestFindLFSFile (0.01s) PASS ok gitea.dev/modules/git/pipeline 0.180s === RUN TestParseGitURLs === RUN TestParseGitURLs/git@127.0.0.1:go-gitea/gitea.git === RUN TestParseGitURLs/git@[fe80::14fc:cec5:c174:d88%2510]:go-gitea/gitea.git === RUN TestParseGitURLs/git@[::1]:go-gitea/gitea.git === RUN TestParseGitURLs/git@github.com:go-gitea/gitea.git === RUN TestParseGitURLs/ssh://git@github.com/go-gitea/gitea.git === RUN TestParseGitURLs/ssh://git@[::1]/go-gitea/gitea.git === RUN TestParseGitURLs//repositories/go-gitea/gitea.git === RUN TestParseGitURLs/file:///repositories/go-gitea/gitea.git === RUN TestParseGitURLs/https://github.com/go-gitea/gitea.git === RUN TestParseGitURLs/https://git:git@github.com/go-gitea/gitea.git === RUN TestParseGitURLs/https://[fe80::14fc:cec5:c174:d88%2510]:20/go-gitea/gitea.git === RUN TestParseGitURLs/git://github.com/go-gitea/gitea.git --- PASS: TestParseGitURLs (0.00s) --- PASS: TestParseGitURLs/git@127.0.0.1:go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/git@[fe80::14fc:cec5:c174:d88%2510]:go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/git@[::1]:go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/git@github.com:go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/ssh://git@github.com/go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/ssh://git@[::1]/go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs//repositories/go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/file:///repositories/go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/https://github.com/go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/https://git:git@github.com/go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/https://[fe80::14fc:cec5:c174:d88%2510]:20/go-gitea/gitea.git (0.00s) --- PASS: TestParseGitURLs/git://github.com/go-gitea/gitea.git (0.00s) === RUN TestParseRepositoryURL === RUN TestParseRepositoryURL//user/repo === RUN TestParseRepositoryURL/https://localhost:3000/user/repo === RUN TestParseRepositoryURL/https://external:3000/user/repo === RUN TestParseRepositoryURL/https://localhost:3000/user/repo.git/other === RUN TestParseRepositoryURL/https://gitea/user/repo === RUN TestParseRepositoryURL/https://gitea:3333/user/repo === RUN TestParseRepositoryURL/ssh://try.gitea.io:2222/user/repo === RUN TestParseRepositoryURL/ssh://external:2222/user/repo === RUN TestParseRepositoryURL/git+ssh://user@try.gitea.io/user/repo.git === RUN TestParseRepositoryURL/git+ssh://user@external/user/repo.git === RUN TestParseRepositoryURL/root@try.gitea.io:user/repo.git === RUN TestParseRepositoryURL/root@gitea:user/repo.git === RUN TestParseRepositoryURL/root@external:user/repo.git === RUN TestParseRepositoryURL/WithSubpath === RUN TestParseRepositoryURL/WithSubpath/https://localhost:3000/user/repo === RUN TestParseRepositoryURL/WithSubpath/https://localhost:3000/subpath/user/repo.git/other === RUN TestParseRepositoryURL/WithSubpath/ssh://try.gitea.io:2222/user/repo === RUN TestParseRepositoryURL/WithSubpath/ssh://external:2222/user/repo === RUN TestParseRepositoryURL/WithSubpath/git+ssh://user@try.gitea.io/user/repo.git === RUN TestParseRepositoryURL/WithSubpath/git+ssh://user@external/user/repo.git === RUN TestParseRepositoryURL/WithSubpath/root@try.gitea.io:user/repo.git === RUN TestParseRepositoryURL/WithSubpath/root@external:user/repo.git --- PASS: TestParseRepositoryURL (0.00s) --- PASS: TestParseRepositoryURL//user/repo (0.00s) --- PASS: TestParseRepositoryURL/https://localhost:3000/user/repo (0.00s) --- PASS: TestParseRepositoryURL/https://external:3000/user/repo (0.00s) --- PASS: TestParseRepositoryURL/https://localhost:3000/user/repo.git/other (0.00s) --- PASS: TestParseRepositoryURL/https://gitea/user/repo (0.00s) --- PASS: TestParseRepositoryURL/https://gitea:3333/user/repo (0.00s) --- PASS: TestParseRepositoryURL/ssh://try.gitea.io:2222/user/repo (0.00s) --- PASS: TestParseRepositoryURL/ssh://external:2222/user/repo (0.00s) --- PASS: TestParseRepositoryURL/git+ssh://user@try.gitea.io/user/repo.git (0.00s) --- PASS: TestParseRepositoryURL/git+ssh://user@external/user/repo.git (0.00s) --- PASS: TestParseRepositoryURL/root@try.gitea.io:user/repo.git (0.00s) --- PASS: TestParseRepositoryURL/root@gitea:user/repo.git (0.00s) --- PASS: TestParseRepositoryURL/root@external:user/repo.git (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath/https://localhost:3000/user/repo (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath/https://localhost:3000/subpath/user/repo.git/other (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath/ssh://try.gitea.io:2222/user/repo (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath/ssh://external:2222/user/repo (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath/git+ssh://user@try.gitea.io/user/repo.git (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath/git+ssh://user@external/user/repo.git (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath/root@try.gitea.io:user/repo.git (0.00s) --- PASS: TestParseRepositoryURL/WithSubpath/root@external:user/repo.git (0.00s) === RUN TestMakeRepositoryBaseLink --- PASS: TestMakeRepositoryBaseLink (0.00s) PASS ok gitea.dev/modules/git/url 0.052s === RUN TestReadingBlameOutputSha256 === RUN TestReadingBlameOutputSha256/Without_.git-blame-ignore-revs === RUN TestReadingBlameOutputSha256/With_.git-blame-ignore-revs --- PASS: TestReadingBlameOutputSha256 (0.09s) --- PASS: TestReadingBlameOutputSha256/Without_.git-blame-ignore-revs (0.04s) --- PASS: TestReadingBlameOutputSha256/With_.git-blame-ignore-revs (0.05s) === RUN TestReadingBlameOutput === RUN TestReadingBlameOutput/Without_.git-blame-ignore-revs === RUN TestReadingBlameOutput/With_.git-blame-ignore-revs --- PASS: TestReadingBlameOutput (0.10s) --- PASS: TestReadingBlameOutput/Without_.git-blame-ignore-revs (0.03s) --- PASS: TestReadingBlameOutput/With_.git-blame-ignore-revs (0.07s) === RUN TestParseCommitFileStatus --- PASS: TestParseCommitFileStatus (0.00s) === RUN TestGetCommitFileStatusMerges --- PASS: TestGetCommitFileStatusMerges (0.01s) === RUN TestGetCommitFileStatusMergesSha256 --- PASS: TestGetCommitFileStatusMergesSha256 (0.02s) === RUN TestCommitsCount --- PASS: TestCommitsCount (0.01s) === RUN TestCommitsCountWithSinceUntil === RUN TestCommitsCountWithSinceUntil/no_filter === RUN TestCommitsCountWithSinceUntil/since_keeps_newer_commits === RUN TestCommitsCountWithSinceUntil/until_keeps_older_commits === RUN TestCommitsCountWithSinceUntil/since_and_until_bound_the_range --- PASS: TestCommitsCountWithSinceUntil (0.05s) --- PASS: TestCommitsCountWithSinceUntil/no_filter (0.01s) --- PASS: TestCommitsCountWithSinceUntil/since_keeps_newer_commits (0.01s) --- PASS: TestCommitsCountWithSinceUntil/until_keeps_older_commits (0.01s) --- PASS: TestCommitsCountWithSinceUntil/since_and_until_bound_the_range (0.01s) === RUN TestCommitsCountWithoutBase --- PASS: TestCommitsCountWithoutBase (0.01s) === RUN TestGetLatestCommitTime --- PASS: TestGetLatestCommitTime (0.02s) === RUN TestMergeBaseNoCommonHistory --- PASS: TestMergeBaseNoCommonHistory (0.07s) === RUN TestRepoGetDivergingCommits --- PASS: TestRepoGetDivergingCommits (0.06s) === RUN TestGetCommitIDsBetweenReverse --- PASS: TestGetCommitIDsBetweenReverse (0.05s) === RUN TestCreateDelegateHooksPermissions --- PASS: TestCreateDelegateHooksPermissions (0.00s) === RUN TestMergeTreeDirectoryRenameConflictWithoutFiles --- PASS: TestMergeTreeDirectoryRenameConflictWithoutFiles (0.08s) PASS ok gitea.dev/modules/gitrepo 0.762s === RUN TestGlob --- PASS: TestGlob (0.00s) === RUN TestQuoteMeta --- PASS: TestQuoteMeta (0.00s) PASS ok gitea.dev/modules/glob 0.010s === RUN TestLockAndDo === RUN TestLockAndDo/redis redis: 2026/09/06 06:40:37 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:37 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:38 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:38 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused globallock_test.go:17: no redis server for testing, skipped === RUN TestLockAndDo/memory --- PASS: TestLockAndDo (1.74s) --- SKIP: TestLockAndDo/redis (1.74s) --- PASS: TestLockAndDo/memory (0.00s) === RUN TestLocker === RUN TestLocker/redis redis: 2026/09/06 06:40:39 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:39 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:39 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:40 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused locker_test.go:36: no redis server for testing, skipped === RUN TestLocker/memory === RUN TestLocker/memory/lock === RUN TestLocker/memory/try_lock === RUN TestLocker/memory/wait_and_acquired === RUN TestLocker/memory/multiple_release --- PASS: TestLocker (4.79s) --- SKIP: TestLocker/redis (1.69s) --- PASS: TestLocker/memory (3.10s) --- PASS: TestLocker/memory/lock (1.00s) --- PASS: TestLocker/memory/try_lock (0.00s) --- PASS: TestLocker/memory/wait_and_acquired (2.10s) --- PASS: TestLocker/memory/multiple_release (0.00s) PASS ok gitea.dev/modules/globallock 6.541s ? gitea.dev/modules/graceful [no test files] === RUN TestManager --- PASS: TestManager (0.00s) PASS ok gitea.dev/modules/graceful/releasereopen 0.006s === RUN TestTraceStarter --- PASS: TestTraceStarter (0.00s) PASS ok gitea.dev/modules/gtprof 0.022s === RUN TestCaptcha === RUN TestCaptcha/Success === RUN TestCaptcha/Missing_Secret === RUN TestCaptcha/Missing_Token === RUN TestCaptcha/Invalid_Token --- PASS: TestCaptcha (0.00s) --- PASS: TestCaptcha/Success (0.00s) --- PASS: TestCaptcha/Missing_Secret (0.00s) --- PASS: TestCaptcha/Missing_Token (0.00s) --- PASS: TestCaptcha/Invalid_Token (0.00s) PASS ok gitea.dev/modules/hcaptcha 0.021s === RUN TestFile === RUN TestFile/empty.py === RUN TestFile/empty.js === RUN TestFile/empty.yaml === RUN TestFile/tags.txt === RUN TestFile/tags.py === RUN TestFile/eol-no.py === RUN TestFile/eol-newline1.py === RUN TestFile/eol-newline2.py === RUN TestFile/empty-line-with-space.py === RUN TestFile/test.sql === RUN TestFile/test.http --- PASS: TestFile (0.13s) --- PASS: TestFile/empty.py (0.04s) --- PASS: TestFile/empty.js (0.01s) --- PASS: TestFile/empty.yaml (0.00s) --- PASS: TestFile/tags.txt (0.00s) --- PASS: TestFile/tags.py (0.00s) --- PASS: TestFile/eol-no.py (0.00s) --- PASS: TestFile/eol-newline1.py (0.00s) --- PASS: TestFile/eol-newline2.py (0.01s) --- PASS: TestFile/empty-line-with-space.py (0.00s) --- PASS: TestFile/test.sql (0.06s) --- PASS: TestFile/test.http (0.00s) === RUN TestPlainText === RUN TestPlainText/empty.py === RUN TestPlainText/tags.py === RUN TestPlainText/eol-no.py === RUN TestPlainText/eol-newline1.py === RUN TestPlainText/eol-newline2.py === RUN TestPlainText/empty-line-with-space.py --- PASS: TestPlainText (0.00s) --- PASS: TestPlainText/empty.py (0.00s) --- PASS: TestPlainText/tags.py (0.00s) --- PASS: TestPlainText/eol-no.py (0.00s) --- PASS: TestPlainText/eol-newline1.py (0.00s) --- PASS: TestPlainText/eol-newline2.py (0.00s) --- PASS: TestPlainText/empty-line-with-space.py (0.00s) === RUN TestUnsafeSplitHighlightedLines --- PASS: TestUnsafeSplitHighlightedLines (0.00s) === RUN TestDetectChromaLexer --- PASS: TestDetectChromaLexer (0.00s) PASS ok gitea.dev/modules/highlight 0.575s === RUN TestHostOrIPMatchesList --- PASS: TestHostOrIPMatchesList (0.00s) === RUN TestReservedRanges --- PASS: TestReservedRanges (0.00s) PASS ok gitea.dev/modules/hostmatcher 0.020s === RUN TestHTMLFormat --- PASS: TestHTMLFormat (0.00s) === RUN TestHTMLBuilder --- PASS: TestHTMLBuilder (0.00s) === RUN TestHTMLWriter --- PASS: TestHTMLWriter (0.00s) PASS ok gitea.dev/modules/htmlutil 0.015s === RUN TestHandleGenericETagCache === RUN TestHandleGenericETagCache/No_If-None-Match === RUN TestHandleGenericETagCache/Mismatched_If-None-Match === RUN TestHandleGenericETagCache/Matched_If-None-Match === RUN TestHandleGenericETagCache/Multiple_Mismatched_If-None-Match === RUN TestHandleGenericETagCache/Multiple_Matched_If-None-Match --- PASS: TestHandleGenericETagCache (0.00s) --- PASS: TestHandleGenericETagCache/No_If-None-Match (0.00s) --- PASS: TestHandleGenericETagCache/Mismatched_If-None-Match (0.00s) --- PASS: TestHandleGenericETagCache/Matched_If-None-Match (0.00s) --- PASS: TestHandleGenericETagCache/Multiple_Mismatched_If-None-Match (0.00s) --- PASS: TestHandleGenericETagCache/Multiple_Matched_If-None-Match (0.00s) PASS ok gitea.dev/modules/httpcache 0.017s === RUN TestContentDisposition === RUN TestContentDisposition/inline_test.txt === RUN TestContentDisposition/inline_test❌.txt === RUN TestContentDisposition/inline_test_❌.txt === RUN TestContentDisposition/inline_"test.txt === RUN TestContentDisposition/inline_hello_world.txt === RUN TestContentDisposition/attachment_hello_world.txt === RUN TestContentDisposition/attachment_hello_world.txt#01 === RUN TestContentDisposition/attachment_hello_world.txt#02 === RUN TestContentDisposition/inline_hello_world.txt#01 === RUN TestContentDisposition/inline_hello!world.txt === RUN TestContentDisposition/inline_hello"world.txt === RUN TestContentDisposition/inline_hello#world.txt === RUN TestContentDisposition/inline_hello$world.txt === RUN TestContentDisposition/inline_hello%world.txt === RUN TestContentDisposition/inline_hello&world.txt === RUN TestContentDisposition/inline_hello'world.txt === RUN TestContentDisposition/inline_hello(world.txt === RUN TestContentDisposition/inline_hello)world.txt === RUN TestContentDisposition/inline_hello*world.txt === RUN TestContentDisposition/inline_hello+world.txt === RUN TestContentDisposition/inline_hello,world.txt === RUN TestContentDisposition/inline_hello-world.txt === RUN TestContentDisposition/inline_hello.world.txt === RUN TestContentDisposition/inline_hello/world.txt === RUN TestContentDisposition/inline_hello0world.txt === RUN TestContentDisposition/inline_hello1world.txt === RUN TestContentDisposition/inline_hello2world.txt === RUN TestContentDisposition/inline_hello3world.txt === RUN TestContentDisposition/inline_hello4world.txt === RUN TestContentDisposition/inline_hello5world.txt === RUN TestContentDisposition/inline_hello6world.txt === RUN TestContentDisposition/inline_hello7world.txt === RUN TestContentDisposition/inline_hello8world.txt === RUN TestContentDisposition/inline_hello9world.txt === RUN TestContentDisposition/inline_hello:world.txt === RUN TestContentDisposition/inline_hello;world.txt === RUN TestContentDisposition/inline_helloworld.txt === RUN TestContentDisposition/inline_hello?world.txt === RUN TestContentDisposition/inline_hello@world.txt === RUN TestContentDisposition/inline_helloAworld.txt === RUN TestContentDisposition/inline_helloBworld.txt === RUN TestContentDisposition/inline_helloCworld.txt === RUN TestContentDisposition/inline_helloDworld.txt === RUN TestContentDisposition/inline_helloEworld.txt === RUN TestContentDisposition/inline_helloFworld.txt === RUN TestContentDisposition/inline_helloGworld.txt === RUN TestContentDisposition/inline_helloHworld.txt === RUN TestContentDisposition/inline_helloIworld.txt === RUN TestContentDisposition/inline_helloJworld.txt === RUN TestContentDisposition/inline_helloKworld.txt === RUN TestContentDisposition/inline_helloLworld.txt === RUN TestContentDisposition/inline_helloMworld.txt === RUN TestContentDisposition/inline_helloNworld.txt === RUN TestContentDisposition/inline_helloOworld.txt === RUN TestContentDisposition/inline_helloPworld.txt === RUN TestContentDisposition/inline_helloQworld.txt === RUN TestContentDisposition/inline_helloRworld.txt === RUN TestContentDisposition/inline_helloSworld.txt === RUN TestContentDisposition/inline_helloTworld.txt === RUN TestContentDisposition/inline_helloUworld.txt === RUN TestContentDisposition/inline_helloVworld.txt === RUN TestContentDisposition/inline_helloWworld.txt === RUN TestContentDisposition/inline_helloXworld.txt === RUN TestContentDisposition/inline_helloYworld.txt === RUN TestContentDisposition/inline_helloZworld.txt === RUN TestContentDisposition/inline_hello[world.txt === RUN TestContentDisposition/inline_hello\world.txt === RUN TestContentDisposition/inline_hello]world.txt === RUN TestContentDisposition/inline_hello^world.txt === RUN TestContentDisposition/inline_hello_world.txt#02 === RUN TestContentDisposition/inline_hello`world.txt === RUN TestContentDisposition/inline_helloaworld.txt === RUN TestContentDisposition/inline_hellobworld.txt === RUN TestContentDisposition/inline_hellocworld.txt === RUN TestContentDisposition/inline_hellodworld.txt === RUN TestContentDisposition/inline_helloeworld.txt === RUN TestContentDisposition/inline_hellofworld.txt === RUN TestContentDisposition/inline_hellogworld.txt === RUN TestContentDisposition/inline_hellohworld.txt === RUN TestContentDisposition/inline_helloiworld.txt === RUN TestContentDisposition/inline_hellojworld.txt === RUN TestContentDisposition/inline_hellokworld.txt === RUN TestContentDisposition/inline_hellolworld.txt === RUN TestContentDisposition/inline_hellomworld.txt === RUN TestContentDisposition/inline_hellonworld.txt === RUN TestContentDisposition/inline_hellooworld.txt === RUN TestContentDisposition/inline_hellopworld.txt === RUN TestContentDisposition/inline_helloqworld.txt === RUN TestContentDisposition/inline_hellorworld.txt === RUN TestContentDisposition/inline_hellosworld.txt === RUN TestContentDisposition/inline_hellotworld.txt === RUN TestContentDisposition/inline_hellouworld.txt === RUN TestContentDisposition/inline_hellovworld.txt === RUN TestContentDisposition/inline_hellowworld.txt === RUN TestContentDisposition/inline_helloxworld.txt === RUN TestContentDisposition/inline_helloyworld.txt === RUN TestContentDisposition/inline_hellozworld.txt === RUN TestContentDisposition/inline_hello{world.txt === RUN TestContentDisposition/inline_hello|world.txt === RUN TestContentDisposition/inline_hello}world.txt === RUN TestContentDisposition/inline_hello~world.txt --- PASS: TestContentDisposition (0.00s) --- PASS: TestContentDisposition/inline_test.txt (0.00s) --- PASS: TestContentDisposition/inline_test❌.txt (0.00s) --- PASS: TestContentDisposition/inline_test_❌.txt (0.00s) --- PASS: TestContentDisposition/inline_"test.txt (0.00s) --- PASS: TestContentDisposition/inline_hello_world.txt (0.00s) --- PASS: TestContentDisposition/attachment_hello_world.txt (0.00s) --- PASS: TestContentDisposition/attachment_hello_world.txt#01 (0.00s) --- PASS: TestContentDisposition/attachment_hello_world.txt#02 (0.00s) --- PASS: TestContentDisposition/inline_hello_world.txt#01 (0.00s) --- PASS: TestContentDisposition/inline_hello!world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello"world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello#world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello$world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello%world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello&world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello'world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello(world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello)world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello*world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello+world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello,world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello-world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello.world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello/world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello0world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello1world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello2world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello3world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello4world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello5world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello6world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello7world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello8world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello9world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello:world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello;world.txt (0.00s) --- PASS: TestContentDisposition/inline_helloworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hello?world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello@world.txt (0.00s) --- PASS: TestContentDisposition/inline_helloAworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloBworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloCworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloDworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloEworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloFworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloGworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloHworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloIworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloJworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloKworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloLworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloMworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloNworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloOworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloPworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloQworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloRworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloSworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloTworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloUworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloVworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloWworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloXworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloYworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloZworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hello[world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello\world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello]world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello^world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello_world.txt#02 (0.00s) --- PASS: TestContentDisposition/inline_hello`world.txt (0.00s) --- PASS: TestContentDisposition/inline_helloaworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellobworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellocworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellodworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloeworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellofworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellogworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellohworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloiworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellojworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellokworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellolworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellomworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellonworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellooworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellopworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloqworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellorworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellosworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellotworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellouworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellovworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellowworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloxworld.txt (0.00s) --- PASS: TestContentDisposition/inline_helloyworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hellozworld.txt (0.00s) --- PASS: TestContentDisposition/inline_hello{world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello|world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello}world.txt (0.00s) --- PASS: TestContentDisposition/inline_hello~world.txt (0.00s) === RUN TestServeUserContentByReader === RUN TestServeUserContentByReader/_range_ === RUN TestServeUserContentByReader/_range_0- === RUN TestServeUserContentByReader/_range_0-15 === RUN TestServeUserContentByReader/_range_1- === RUN TestServeUserContentByReader/_range_1-3 === RUN TestServeUserContentByReader/_range_16- === RUN TestServeUserContentByReader/_range_1-99999 --- PASS: TestServeUserContentByReader (0.00s) --- PASS: TestServeUserContentByReader/_range_ (0.00s) --- PASS: TestServeUserContentByReader/_range_0- (0.00s) --- PASS: TestServeUserContentByReader/_range_0-15 (0.00s) --- PASS: TestServeUserContentByReader/_range_1- (0.00s) --- PASS: TestServeUserContentByReader/_range_1-3 (0.00s) --- PASS: TestServeUserContentByReader/_range_16- (0.00s) --- PASS: TestServeUserContentByReader/_range_1-99999 (0.00s) === RUN TestServeUserContentByFile === RUN TestServeUserContentByFile/_range_ === RUN TestServeUserContentByFile/_range_0- === RUN TestServeUserContentByFile/_range_0-15 === RUN TestServeUserContentByFile/_range_1- === RUN TestServeUserContentByFile/_range_1-3 === RUN TestServeUserContentByFile/_range_16- === RUN TestServeUserContentByFile/_range_1-99999 --- PASS: TestServeUserContentByFile (0.00s) --- PASS: TestServeUserContentByFile/_range_ (0.00s) --- PASS: TestServeUserContentByFile/_range_0- (0.00s) --- PASS: TestServeUserContentByFile/_range_0-15 (0.00s) --- PASS: TestServeUserContentByFile/_range_1- (0.00s) --- PASS: TestServeUserContentByFile/_range_1-3 (0.00s) --- PASS: TestServeUserContentByFile/_range_16- (0.00s) --- PASS: TestServeUserContentByFile/_range_1-99999 (0.00s) === RUN TestServeSetHeaderContentRelated --- PASS: TestServeSetHeaderContentRelated (0.00s) === RUN TestServeSetHeaders --- PASS: TestServeSetHeaders (0.00s) === RUN TestIsRelativeURL --- PASS: TestIsRelativeURL (0.00s) === RUN TestGuessCurrentHostURL === RUN TestGuessCurrentHostURL/Legacy === RUN TestGuessCurrentHostURL/Auto === RUN TestGuessCurrentHostURL/Never --- PASS: TestGuessCurrentHostURL (0.00s) --- PASS: TestGuessCurrentHostURL/Legacy (0.00s) --- PASS: TestGuessCurrentHostURL/Auto (0.00s) --- PASS: TestGuessCurrentHostURL/Never (0.00s) === RUN TestMakeAbsoluteURL --- PASS: TestMakeAbsoluteURL (0.00s) === RUN TestIsCurrentGiteaSiteURL --- PASS: TestIsCurrentGiteaSiteURL (0.00s) === RUN TestParseGiteaSiteURL --- PASS: TestParseGiteaSiteURL (0.00s) PASS ok gitea.dev/modules/httplib 0.017s ? gitea.dev/modules/indexer [no test files] 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1811400042/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1811400042/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1811400042/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1811400042/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1811400042/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1811400042/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1811400042/data/actions_artifacts === RUN TestBleveIndexAndSearch === RUN TestBleveIndexAndSearch/bleve === RUN TestBleveIndexAndSearch/bleve/Description === RUN TestBleveIndexAndSearch/bleve/Description#01 === RUN TestBleveIndexAndSearch/bleve/repo1 === RUN TestBleveIndexAndSearch/bleve/repo1#01 === RUN TestBleveIndexAndSearch/bleve/non-exist === RUN TestBleveIndexAndSearch/bleve/pineaple === RUN TestBleveIndexAndSearch/bleve/avocado.md === RUN TestBleveIndexAndSearch/bleve/avo === RUN TestBleveIndexAndSearch/bleve/cucumber === RUN TestBleveIndexAndSearch/bleve/ham === RUN TestBleveIndexAndSearch/bleve/This_is_not_cheese === RUN TestBleveIndexAndSearch/bleve/dESCRIPTION === RUN TestBleveIndexAndSearch/bleve/AVOCADO.MD === RUN TestBleveIndexAndSearch/bleve/console.log === RUN TestBleveIndexAndSearch/bleve/log --- PASS: TestBleveIndexAndSearch (0.61s) --- PASS: TestBleveIndexAndSearch/bleve (0.06s) --- PASS: TestBleveIndexAndSearch/bleve/Description (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/Description#01 (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/repo1 (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/repo1#01 (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/non-exist (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/pineaple (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/avocado.md (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/avo (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/cucumber (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/ham (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/This_is_not_cheese (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/dESCRIPTION (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/AVOCADO.MD (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/console.log (0.00s) --- PASS: TestBleveIndexAndSearch/bleve/log (0.00s) === RUN TestESIndexAndSearch --- SKIP: TestESIndexAndSearch (0.10s) PASS ok gitea.dev/modules/indexer/code 2.170s === RUN TestBleveIndexerTokenFilter === RUN TestBleveIndexerTokenFilter/12345 2026/09/06 06:40:37 .../code/internal/util.go:31:FilenameOfIndexerID() [E] Unexpected ID in repo indexer: 2 === RUN TestBleveIndexerTokenFilter/DNS === RUN TestBleveIndexerTokenFilter/mdns 2026/09/06 06:40:37 .../code/internal/util.go:31:FilenameOfIndexerID() [E] Unexpected ID in repo indexer: 2 === RUN TestBleveIndexerTokenFilter/port 2026/09/06 06:40:37 .../code/internal/util.go:31:FilenameOfIndexerID() [E] Unexpected ID in repo indexer: 2 === RUN TestBleveIndexerTokenFilter/port2 2026/09/06 06:40:37 .../code/internal/util.go:31:FilenameOfIndexerID() [E] Unexpected ID in repo indexer: 2 --- PASS: TestBleveIndexerTokenFilter (0.02s) --- PASS: TestBleveIndexerTokenFilter/12345 (0.00s) --- PASS: TestBleveIndexerTokenFilter/DNS (0.00s) --- PASS: TestBleveIndexerTokenFilter/mdns (0.00s) --- PASS: TestBleveIndexerTokenFilter/port (0.00s) --- PASS: TestBleveIndexerTokenFilter/port2 (0.00s) PASS ok gitea.dev/modules/indexer/code/bleve 0.281s === RUN TestTokenFilter === RUN TestTokenFilter/ensure_terms_of_'Dockerfile' === RUN TestTokenFilter/ensure_terms_of_'Dockerfile.rootless' === RUN TestTokenFilter/ensure_terms_of_'a/b/c/Dockerfile.rootless' === RUN TestTokenFilter/ensure_terms_of_'' --- PASS: TestTokenFilter (0.00s) --- PASS: TestTokenFilter/ensure_terms_of_'Dockerfile' (0.00s) --- PASS: TestTokenFilter/ensure_terms_of_'Dockerfile.rootless' (0.00s) --- PASS: TestTokenFilter/ensure_terms_of_'a/b/c/Dockerfile.rootless' (0.00s) --- PASS: TestTokenFilter/ensure_terms_of_'' (0.00s) PASS ok gitea.dev/modules/indexer/code/bleve/token/path 0.031s === RUN TestIndexPos --- PASS: TestIndexPos (0.00s) PASS ok gitea.dev/modules/indexer/code/elasticsearch 0.138s === RUN TestIndexSettingToGitGrepPathspecList --- PASS: TestIndexSettingToGitGrepPathspecList (0.00s) PASS ok gitea.dev/modules/indexer/code/gitgrep 0.480s ? gitea.dev/modules/indexer/code/internal [no test files] ? gitea.dev/modules/indexer/internal [no test files] === RUN TestBleveGuessFuzzinessByKeyword === RUN TestBleveGuessFuzzinessByKeyword/Fuziniess:=0 === RUN TestBleveGuessFuzzinessByKeyword/Fuziniess:Avocado=1 === RUN TestBleveGuessFuzzinessByKeyword/Fuziniess:Geschwindigkeit=2 === RUN TestBleveGuessFuzzinessByKeyword/Fuziniess:non-exist=0 === RUN TestBleveGuessFuzzinessByKeyword/Fuziniess:갃갃갃=0 === RUN TestBleveGuessFuzzinessByKeyword/Fuziniess:repo1=0 === RUN TestBleveGuessFuzzinessByKeyword/Fuziniess:avocado.md=0 --- PASS: TestBleveGuessFuzzinessByKeyword (0.00s) --- PASS: TestBleveGuessFuzzinessByKeyword/Fuziniess:=0 (0.00s) --- PASS: TestBleveGuessFuzzinessByKeyword/Fuziniess:Avocado=1 (0.00s) --- PASS: TestBleveGuessFuzzinessByKeyword/Fuziniess:Geschwindigkeit=2 (0.00s) --- PASS: TestBleveGuessFuzzinessByKeyword/Fuziniess:non-exist=0 (0.00s) --- PASS: TestBleveGuessFuzzinessByKeyword/Fuziniess:갃갃갃=0 (0.00s) --- PASS: TestBleveGuessFuzzinessByKeyword/Fuziniess:repo1=0 (0.00s) --- PASS: TestBleveGuessFuzzinessByKeyword/Fuziniess:avocado.md=0 (0.00s) PASS ok gitea.dev/modules/indexer/internal/bleve 0.041s ? gitea.dev/modules/indexer/internal/db [no test files] === RUN TestPing indexer_test.go:27: skipping test because http://elasticsearch:9200 is not ready --- SKIP: TestPing (0.01s) === RUN TestDeleteSwallows404 indexer_test.go:32: skipping test because http://elasticsearch:9200 is not ready --- SKIP: TestDeleteSwallows404 (0.00s) === RUN TestBulkAcceptsDelete404 indexer_test.go:37: skipping test because http://elasticsearch:9200 is not ready --- SKIP: TestBulkAcceptsDelete404 (0.01s) PASS ok gitea.dev/modules/indexer/internal/elasticsearch 0.030s ? gitea.dev/modules/indexer/internal/meilisearch [no test files] 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2891456911/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2891456911/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2891456911/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2891456911/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2891456911/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2891456911/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2891456911/data/actions_artifacts === RUN TestDBSearchIssues 2026/09/06 06:40:39 .../indexer/issues/indexer.go:78:InitIssueIndexer.1() [I] PID 1667369: Initializing Issue Indexer: db === RUN TestDBSearchIssues/search_issues_with_keyword === RUN TestDBSearchIssues/search_issues_with_keyword/issue2 === RUN TestDBSearchIssues/search_issues_with_keyword/first === RUN TestDBSearchIssues/search_issues_with_keyword/for === RUN TestDBSearchIssues/search_issues_with_keyword/good === RUN TestDBSearchIssues/search_issues_by_index === RUN TestDBSearchIssues/search_issues_in_repo === RUN TestDBSearchIssues/search_issues_by_ID === RUN TestDBSearchIssues/search_issues_is_pr === RUN TestDBSearchIssues/search_issues_is_closed === RUN TestDBSearchIssues/search_issues_is_archived === RUN TestDBSearchIssues/search_issues_by_milestone === RUN TestDBSearchIssues/search_issues_by_label === RUN TestDBSearchIssues/search_issues_by_time === RUN TestDBSearchIssues/search_issues_with_order === RUN TestDBSearchIssues/search_issues_in_project === RUN TestDBSearchIssues/search_issues_in_project/no_project_assigned === RUN TestDBSearchIssues/search_issues_with_paginator === RUN TestDBSearchIssues/search_issues_with_any_assignee --- PASS: TestDBSearchIssues (0.51s) --- PASS: TestDBSearchIssues/search_issues_with_keyword (0.02s) --- PASS: TestDBSearchIssues/search_issues_with_keyword/issue2 (0.01s) --- PASS: TestDBSearchIssues/search_issues_with_keyword/first (0.00s) --- PASS: TestDBSearchIssues/search_issues_with_keyword/for (0.01s) --- PASS: TestDBSearchIssues/search_issues_with_keyword/good (0.00s) --- PASS: TestDBSearchIssues/search_issues_by_index (0.01s) --- PASS: TestDBSearchIssues/search_issues_in_repo (0.01s) --- PASS: TestDBSearchIssues/search_issues_by_ID (0.02s) --- PASS: TestDBSearchIssues/search_issues_is_pr (0.00s) --- PASS: TestDBSearchIssues/search_issues_is_closed (0.00s) --- PASS: TestDBSearchIssues/search_issues_is_archived (0.00s) --- PASS: TestDBSearchIssues/search_issues_by_milestone (0.01s) --- PASS: TestDBSearchIssues/search_issues_by_label (0.01s) --- PASS: TestDBSearchIssues/search_issues_by_time (0.00s) --- PASS: TestDBSearchIssues/search_issues_with_order (0.00s) --- PASS: TestDBSearchIssues/search_issues_in_project (0.13s) --- PASS: TestDBSearchIssues/search_issues_in_project/no_project_assigned (0.13s) --- PASS: TestDBSearchIssues/search_issues_with_paginator (0.00s) --- PASS: TestDBSearchIssues/search_issues_with_any_assignee (0.00s) PASS ok gitea.dev/modules/indexer/issues 2.742s === RUN TestBleveIndexer === RUN TestBleveIndexer/default === RUN TestBleveIndexer/empty === RUN TestBleveIndexer/with_limit === RUN TestBleveIndexer/single-doc_index === RUN TestBleveIndexer/Keyword === RUN TestBleveIndexer/RepoIDs === RUN TestBleveIndexer/RepoIDs_and_AllPublic === RUN TestBleveIndexer/issue_only === RUN TestBleveIndexer/pull_only === RUN TestBleveIndexer/opened_only === RUN TestBleveIndexer/closed_only === RUN TestBleveIndexer/labels === RUN TestBleveIndexer/include_any_labels === RUN TestBleveIndexer/MilestoneIDs === RUN TestBleveIndexer/no_MilestoneIDs === RUN TestBleveIndexer/ProjectIDs === RUN TestBleveIndexer/no_ProjectIDs_(empty_array) === RUN TestBleveIndexer/PosterID === RUN TestBleveIndexer/AssigneeID === RUN TestBleveIndexer/no_AssigneeID === RUN TestBleveIndexer/MentionID === RUN TestBleveIndexer/ReviewedID === RUN TestBleveIndexer/ReviewRequestedID === RUN TestBleveIndexer/SubscriberID === RUN TestBleveIndexer/updated === RUN TestBleveIndexer/SortByCreatedDesc === RUN TestBleveIndexer/SortByUpdatedDesc === RUN TestBleveIndexer/SortByCommentsDesc === RUN TestBleveIndexer/SortByDeadlineDesc === RUN TestBleveIndexer/SortByCreatedAsc === RUN TestBleveIndexer/SortByUpdatedAsc === RUN TestBleveIndexer/SortByCommentsAsc === RUN TestBleveIndexer/SortByDeadlineAsc === RUN TestBleveIndexer/SearchAnyAssignee --- PASS: TestBleveIndexer (1.99s) --- PASS: TestBleveIndexer/default (0.01s) --- PASS: TestBleveIndexer/empty (0.01s) --- PASS: TestBleveIndexer/with_limit (0.00s) --- PASS: TestBleveIndexer/single-doc_index (0.02s) --- PASS: TestBleveIndexer/Keyword (0.05s) --- PASS: TestBleveIndexer/RepoIDs (0.05s) --- PASS: TestBleveIndexer/RepoIDs_and_AllPublic (0.05s) --- PASS: TestBleveIndexer/issue_only (0.00s) --- PASS: TestBleveIndexer/pull_only (0.00s) --- PASS: TestBleveIndexer/opened_only (0.00s) --- PASS: TestBleveIndexer/closed_only (0.00s) --- PASS: TestBleveIndexer/labels (0.05s) --- PASS: TestBleveIndexer/include_any_labels (0.08s) --- PASS: TestBleveIndexer/MilestoneIDs (0.00s) --- PASS: TestBleveIndexer/no_MilestoneIDs (0.01s) --- PASS: TestBleveIndexer/ProjectIDs (0.01s) --- PASS: TestBleveIndexer/no_ProjectIDs_(empty_array) (0.00s) --- PASS: TestBleveIndexer/PosterID (0.00s) --- PASS: TestBleveIndexer/AssigneeID (0.00s) --- PASS: TestBleveIndexer/no_AssigneeID (0.00s) --- PASS: TestBleveIndexer/MentionID (0.01s) --- PASS: TestBleveIndexer/ReviewedID (0.01s) --- PASS: TestBleveIndexer/ReviewRequestedID (0.00s) --- PASS: TestBleveIndexer/SubscriberID (0.01s) --- PASS: TestBleveIndexer/updated (0.00s) --- PASS: TestBleveIndexer/SortByCreatedDesc (0.00s) --- PASS: TestBleveIndexer/SortByUpdatedDesc (0.00s) --- PASS: TestBleveIndexer/SortByCommentsDesc (0.00s) --- PASS: TestBleveIndexer/SortByDeadlineDesc (0.00s) --- PASS: TestBleveIndexer/SortByCreatedAsc (0.00s) --- PASS: TestBleveIndexer/SortByUpdatedAsc (0.01s) --- PASS: TestBleveIndexer/SortByCommentsAsc (0.00s) --- PASS: TestBleveIndexer/SortByDeadlineAsc (0.00s) --- PASS: TestBleveIndexer/SearchAnyAssignee (0.00s) === RUN TestBleveIndexerNoAssignee === RUN TestBleveIndexerNoAssignee/none === RUN TestBleveIndexerNoAssignee/any === RUN TestBleveIndexerNoAssignee/specific === RUN TestBleveIndexerNoAssignee/specific_first_multi-assignee === RUN TestBleveIndexerNoAssignee/specific_second_multi-assignee --- PASS: TestBleveIndexerNoAssignee (0.05s) --- PASS: TestBleveIndexerNoAssignee/none (0.00s) --- PASS: TestBleveIndexerNoAssignee/any (0.00s) --- PASS: TestBleveIndexerNoAssignee/specific (0.00s) --- PASS: TestBleveIndexerNoAssignee/specific_first_multi-assignee (0.00s) --- PASS: TestBleveIndexerNoAssignee/specific_second_multi-assignee (0.00s) === RUN TestBleveIndexerTokenFilter === RUN TestBleveIndexerTokenFilter/exact_original_case === RUN TestBleveIndexerTokenFilter/case_matching_original_transitions === RUN TestBleveIndexerTokenFilter/all_lower_case === RUN TestBleveIndexerTokenFilter/all_upper_case === RUN TestBleveIndexerTokenFilter/number_match === RUN TestBleveIndexerTokenFilter/number_as_part === RUN TestBleveIndexerTokenFilter/sub-word_search_still_works === RUN TestBleveIndexerTokenFilter/sub-word_search,_lower_case === RUN TestBleveIndexerTokenFilter/keyword_is_camel_case === RUN TestBleveIndexerTokenFilter/keyword_not_match --- PASS: TestBleveIndexerTokenFilter (0.09s) --- PASS: TestBleveIndexerTokenFilter/exact_original_case (0.01s) --- PASS: TestBleveIndexerTokenFilter/case_matching_original_transitions (0.00s) --- PASS: TestBleveIndexerTokenFilter/all_lower_case (0.00s) --- PASS: TestBleveIndexerTokenFilter/all_upper_case (0.00s) --- PASS: TestBleveIndexerTokenFilter/number_match (0.00s) --- PASS: TestBleveIndexerTokenFilter/number_as_part (0.00s) --- PASS: TestBleveIndexerTokenFilter/sub-word_search_still_works (0.00s) --- PASS: TestBleveIndexerTokenFilter/sub-word_search,_lower_case (0.00s) --- PASS: TestBleveIndexerTokenFilter/keyword_is_camel_case (0.00s) --- PASS: TestBleveIndexerTokenFilter/keyword_not_match (0.01s) PASS ok gitea.dev/modules/indexer/issues/bleve 2.189s ? gitea.dev/modules/indexer/issues/db [no test files] === RUN TestElasticsearchIndexer elasticsearch_test.go:21: skipping test because http://elastic:changeme@elasticsearch:9200 is not ready --- SKIP: TestElasticsearchIndexer (0.00s) PASS ok gitea.dev/modules/indexer/issues/elasticsearch 0.013s ? gitea.dev/modules/indexer/issues/internal [no test files] ? gitea.dev/modules/indexer/issues/internal/tests [no test files] === RUN TestMeilisearchIndexer meilisearch_test.go:25: skipping test because http://meilisearch:7700 is not ready --- SKIP: TestMeilisearchIndexer (0.01s) === RUN TestConvertHits --- PASS: TestConvertHits (0.00s) === RUN TestDoubleQuoteKeyword --- PASS: TestDoubleQuoteKeyword (0.00s) PASS ok gitea.dev/modules/indexer/issues/meilisearch 0.027s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1450648303/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1450648303/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1450648303/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1450648303/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1450648303/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1450648303/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1450648303/data/actions_artifacts === RUN TestRepoStatsIndex 2026/09/06 06:40:38 .../indexer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories 2026/09/06 06:40:38 .../indexer/stats/indexer.go:87:populateRepoIndexer() [I] Done (re)populating the repo stats indexer with existing repositories 2026/09/06 06:40:38 .../git/attribute/batch.go:82:NewBatchChecker.4() [E] Attribute checker for commit cdaca8cf1d36e1e4e508a940f6e157e239beccfa exits with error: exit status 128 - fatal: this operation must be run in a work tree 2026/09/06 06:40:38 .../git/attribute/batch.go:82:NewBatchChecker.4() [E] Attribute checker for commit cdaca8cf1d36e1e4e508a940f6e157e239beccfa exits with error: exit status 128 - fatal: this operation must be run in a work tree 2026/09/06 06:40:38 .../git/attribute/batch.go:82:NewBatchChecker.4() [E] Attribute checker for commit cdaca8cf1d36e1e4e508a940f6e157e239beccfa exits with error: exit status 128 - fatal: this operation must be run in a work tree --- PASS: TestRepoStatsIndex (0.79s) PASS ok gitea.dev/modules/indexer/stats 2.143s === RUN TestValidate === RUN TestValidate/miss_name === RUN TestValidate/miss_about === RUN TestValidate/miss_body === RUN TestValidate/markdown_miss_value === RUN TestValidate/markdown_invalid_value === RUN TestValidate/markdown_empty_value === RUN TestValidate/textarea_invalid_id === RUN TestValidate/textarea_miss_label === RUN TestValidate/textarea_conflict_id === RUN TestValidate/textarea_invalid_description === RUN TestValidate/textarea_invalid_required === RUN TestValidate/input_invalid_description === RUN TestValidate/input_invalid_is_number === RUN TestValidate/input_invalid_regex === RUN TestValidate/dropdown_invalid_description === RUN TestValidate/dropdown_invalid_multiple === RUN TestValidate/dropdown_invalid_list === RUN TestValidate/checkboxes_invalid_description === RUN TestValidate/invalid_type === RUN TestValidate/dropdown_miss_options === RUN TestValidate/dropdown_invalid_options === RUN TestValidate/checkboxes_invalid_options === RUN TestValidate/checkboxes_option_miss_label === RUN TestValidate/checkboxes_option_invalid_required === RUN TestValidate/field_is_required_but_hidden === RUN TestValidate/checkboxes_is_required_but_hidden === RUN TestValidate/dropdown_default_is_not_an_integer === RUN TestValidate/dropdown_default_is_out_of_range === RUN TestValidate/dropdown_without_default_is_valid === RUN TestValidate/valid === RUN TestValidate/single_label === RUN TestValidate/comma-delimited_labels === RUN TestValidate/empty_string_as_labels === RUN TestValidate/comma_delimited_labels_in_markdown --- PASS: TestValidate (0.02s) --- PASS: TestValidate/miss_name (0.00s) --- PASS: TestValidate/miss_about (0.00s) --- PASS: TestValidate/miss_body (0.00s) --- PASS: TestValidate/markdown_miss_value (0.00s) --- PASS: TestValidate/markdown_invalid_value (0.00s) --- PASS: TestValidate/markdown_empty_value (0.00s) --- PASS: TestValidate/textarea_invalid_id (0.00s) --- PASS: TestValidate/textarea_miss_label (0.00s) --- PASS: TestValidate/textarea_conflict_id (0.00s) --- PASS: TestValidate/textarea_invalid_description (0.00s) --- PASS: TestValidate/textarea_invalid_required (0.00s) --- PASS: TestValidate/input_invalid_description (0.00s) --- PASS: TestValidate/input_invalid_is_number (0.00s) --- PASS: TestValidate/input_invalid_regex (0.00s) --- PASS: TestValidate/dropdown_invalid_description (0.00s) --- PASS: TestValidate/dropdown_invalid_multiple (0.00s) --- PASS: TestValidate/dropdown_invalid_list (0.00s) --- PASS: TestValidate/checkboxes_invalid_description (0.00s) --- PASS: TestValidate/invalid_type (0.00s) --- PASS: TestValidate/dropdown_miss_options (0.00s) --- PASS: TestValidate/dropdown_invalid_options (0.00s) --- PASS: TestValidate/checkboxes_invalid_options (0.00s) --- PASS: TestValidate/checkboxes_option_miss_label (0.00s) --- PASS: TestValidate/checkboxes_option_invalid_required (0.00s) --- PASS: TestValidate/field_is_required_but_hidden (0.00s) --- PASS: TestValidate/checkboxes_is_required_but_hidden (0.00s) --- PASS: TestValidate/dropdown_default_is_not_an_integer (0.00s) --- PASS: TestValidate/dropdown_default_is_out_of_range (0.00s) --- PASS: TestValidate/dropdown_without_default_is_valid (0.00s) --- PASS: TestValidate/valid (0.01s) --- PASS: TestValidate/single_label (0.00s) --- PASS: TestValidate/comma-delimited_labels (0.00s) --- PASS: TestValidate/empty_string_as_labels (0.00s) --- PASS: TestValidate/comma_delimited_labels_in_markdown (0.00s) === RUN TestRenderToMarkdown === RUN TestRenderToMarkdown/normal --- PASS: TestRenderToMarkdown (0.00s) --- PASS: TestRenderToMarkdown/normal (0.00s) === RUN Test_minQuotes === RUN Test_minQuotes/without_quote === RUN Test_minQuotes/with_1_quote === RUN Test_minQuotes/with_3_quotes === RUN Test_minQuotes/with_more_quotes === RUN Test_minQuotes/not_leading_quotes --- PASS: Test_minQuotes (0.00s) --- PASS: Test_minQuotes/without_quote (0.00s) --- PASS: Test_minQuotes/with_1_quote (0.00s) --- PASS: Test_minQuotes/with_3_quotes (0.00s) --- PASS: Test_minQuotes/with_more_quotes (0.00s) --- PASS: Test_minQuotes/not_leading_quotes (0.00s) PASS ok gitea.dev/modules/issue/template 0.099s === RUN TestGiteaDBJSONUnmarshal --- PASS: TestGiteaDBJSONUnmarshal (0.00s) === RUN TestIndent --- PASS: TestIndent (0.00s) PASS ok gitea.dev/modules/json 0.007s === RUN TestYamlParser --- PASS: TestYamlParser (0.00s) === RUN TestLegacyParser --- PASS: TestLegacyParser (0.00s) PASS ok gitea.dev/modules/label 0.009s === RUN TestNewClient --- PASS: TestNewClient (0.00s) === RUN TestNewClientFromEndpoint --- PASS: TestNewClientFromEndpoint (0.00s) === RUN TestDetermineEndpoint 2026/09/06 06:40:37 modules/lfs/endpoint.go:82:endpointFromURL() [E] lfs.endpointFromUrl: unknown url --- PASS: TestDetermineEndpoint (0.00s) === RUN TestHTTPClientDownload === RUN TestHTTPClientDownload/https://status-not-ok.io === RUN TestHTTPClientDownload/https://invalid-json-response.io 2026/09/06 06:40:37 modules/lfs/http_client.go:282:handleErrorResponse() [E] Error decoding json: jsontext: unexpected EOF 2026/09/06 06:40:37 modules/lfs/http_client.go:104:(*HTTPClient).batch() [E] Error decoding json: jsontext: invalid character 'i' at start of value === RUN TestHTTPClientDownload/https://valid-batch-request-download.io === RUN TestHTTPClientDownload/https://response-no-objects.io === RUN TestHTTPClientDownload/https://unknown-transfer-adapter.io === RUN TestHTTPClientDownload/https://error-in-response-objects.io === RUN TestHTTPClientDownload/https://empty-actions-map.io === RUN TestHTTPClientDownload/https://download-actions-map.io === RUN TestHTTPClientDownload/https://upload-actions-map.io === RUN TestHTTPClientDownload/https://verify-actions-map.io === RUN TestHTTPClientDownload/https://unknown-actions-map.io === RUN TestHTTPClientDownload/https://legacy-batch-request-download.io --- PASS: TestHTTPClientDownload (0.00s) --- PASS: TestHTTPClientDownload/https://status-not-ok.io (0.00s) --- PASS: TestHTTPClientDownload/https://invalid-json-response.io (0.00s) --- PASS: TestHTTPClientDownload/https://valid-batch-request-download.io (0.00s) --- PASS: TestHTTPClientDownload/https://response-no-objects.io (0.00s) --- PASS: TestHTTPClientDownload/https://unknown-transfer-adapter.io (0.00s) --- PASS: TestHTTPClientDownload/https://error-in-response-objects.io (0.00s) --- PASS: TestHTTPClientDownload/https://empty-actions-map.io (0.00s) --- PASS: TestHTTPClientDownload/https://download-actions-map.io (0.00s) --- PASS: TestHTTPClientDownload/https://upload-actions-map.io (0.00s) --- PASS: TestHTTPClientDownload/https://verify-actions-map.io (0.00s) --- PASS: TestHTTPClientDownload/https://unknown-actions-map.io (0.00s) --- PASS: TestHTTPClientDownload/https://legacy-batch-request-download.io (0.00s) === RUN TestHTTPClientUpload === RUN TestHTTPClientUpload/https://status-not-ok.io === RUN TestHTTPClientUpload/https://invalid-json-response.io 2026/09/06 06:40:37 modules/lfs/http_client.go:282:handleErrorResponse() [E] Error decoding json: jsontext: unexpected EOF 2026/09/06 06:40:37 modules/lfs/http_client.go:104:(*HTTPClient).batch() [E] Error decoding json: jsontext: invalid character 'i' at start of value === RUN TestHTTPClientUpload/https://valid-batch-request-upload.io === RUN TestHTTPClientUpload/https://response-no-objects.io === RUN TestHTTPClientUpload/https://unknown-transfer-adapter.io === RUN TestHTTPClientUpload/https://error-in-response-objects.io === RUN TestHTTPClientUpload/https://empty-actions-map.io === RUN TestHTTPClientUpload/https://download-actions-map.io === RUN TestHTTPClientUpload/https://upload-actions-map.io === RUN TestHTTPClientUpload/https://verify-actions-map.io === RUN TestHTTPClientUpload/https://unknown-actions-map.io --- PASS: TestHTTPClientUpload (0.00s) --- PASS: TestHTTPClientUpload/https://status-not-ok.io (0.00s) --- PASS: TestHTTPClientUpload/https://invalid-json-response.io (0.00s) --- PASS: TestHTTPClientUpload/https://valid-batch-request-upload.io (0.00s) --- PASS: TestHTTPClientUpload/https://response-no-objects.io (0.00s) --- PASS: TestHTTPClientUpload/https://unknown-transfer-adapter.io (0.00s) --- PASS: TestHTTPClientUpload/https://error-in-response-objects.io (0.00s) --- PASS: TestHTTPClientUpload/https://empty-actions-map.io (0.00s) --- PASS: TestHTTPClientUpload/https://download-actions-map.io (0.00s) --- PASS: TestHTTPClientUpload/https://upload-actions-map.io (0.00s) --- PASS: TestHTTPClientUpload/https://verify-actions-map.io (0.00s) --- PASS: TestHTTPClientUpload/https://unknown-actions-map.io (0.00s) === RUN TestStringContent --- PASS: TestStringContent (0.00s) === RUN TestRelativePath --- PASS: TestRelativePath (0.00s) === RUN TestIsValid --- PASS: TestIsValid (0.00s) === RUN TestGeneratePointer --- PASS: TestGeneratePointer (0.00s) === RUN TestReadPointerFromBuffer --- PASS: TestReadPointerFromBuffer (0.00s) === RUN TestReadPointer --- PASS: TestReadPointer (0.00s) === RUN TestBasicTransferAdapterName --- PASS: TestBasicTransferAdapterName (0.00s) === RUN TestBasicTransferAdapter === RUN TestBasicTransferAdapter/Download === RUN TestBasicTransferAdapter/Upload === RUN TestBasicTransferAdapter/Upload_created === RUN TestBasicTransferAdapter/Verify --- PASS: TestBasicTransferAdapter (0.00s) --- PASS: TestBasicTransferAdapter/Download (0.00s) --- PASS: TestBasicTransferAdapter/Upload (0.00s) --- PASS: TestBasicTransferAdapter/Upload_created (0.00s) --- PASS: TestBasicTransferAdapter/Verify (0.00s) PASS ok gitea.dev/modules/lfs 0.021s ? gitea.dev/modules/lfstransfer [no test files] === RUN TestToInternalLFSURL --- PASS: TestToInternalLFSURL (0.00s) === RUN TestIsInternalLFSURL --- PASS: TestIsInternalLFSURL (0.00s) PASS ok gitea.dev/modules/lfstransfer/backend 0.151s === RUN TestItoa --- PASS: TestItoa (0.00s) === RUN TestEventFormatTextMessage --- PASS: TestEventFormatTextMessage (0.00s) === RUN TestConnLogger --- PASS: TestConnLogger (0.01s) === RUN TestFlags --- PASS: TestFlags (0.00s) === RUN TestLevelMarshalUnmarshalJSON --- PASS: TestLevelMarshalUnmarshalJSON (0.00s) === RUN TestLogger --- PASS: TestLogger (0.20s) === RUN TestLoggerPause --- PASS: TestLoggerPause (0.25s) === RUN TestLoggerOutput === RUN TestLoggerOutput/LogString === RUN TestLoggerOutput/Caller --- PASS: TestLoggerOutput (0.00s) --- PASS: TestLoggerOutput/LogString (0.00s) --- PASS: TestLoggerOutput/Caller (0.00s) === RUN TestLoggerExpressionFilter --- PASS: TestLoggerExpressionFilter (0.00s) === RUN TestProtectSensitiveInfo --- PASS: TestProtectSensitiveInfo (0.00s) === RUN TestSharedWorker --- PASS: TestSharedWorker (0.00s) PASS ok gitea.dev/modules/log 0.477s === RUN TestCamoHandleLink --- PASS: TestCamoHandleLink (0.00s) === RUN TestRender_IssueIndexPattern --- PASS: TestRender_IssueIndexPattern (0.01s) === RUN TestRender_IssueIndexPattern2 --- PASS: TestRender_IssueIndexPattern2 (0.02s) === RUN TestRender_IssueIndexPattern3 --- PASS: TestRender_IssueIndexPattern3 (0.00s) === RUN TestRender_IssueIndexPattern4 --- PASS: TestRender_IssueIndexPattern4 (0.00s) === RUN TestRender_IssueIndexPattern5 --- PASS: TestRender_IssueIndexPattern5 (0.00s) === RUN TestRender_IssueIndexPattern_NoShortPattern --- PASS: TestRender_IssueIndexPattern_NoShortPattern (0.00s) === RUN TestRender_PostProcessIssueTitle --- PASS: TestRender_PostProcessIssueTitle (0.00s) === RUN TestRender_AutoLink --- PASS: TestRender_AutoLink (0.00s) === RUN TestRender_FullIssueURLs --- PASS: TestRender_FullIssueURLs (0.00s) === RUN TestRegExp_sha1CurrentPattern --- PASS: TestRegExp_sha1CurrentPattern (0.00s) === RUN TestRegExp_anySHA1Pattern --- PASS: TestRegExp_anySHA1Pattern (0.00s) === RUN TestRegExp_shortLinkPattern --- PASS: TestRegExp_shortLinkPattern (0.00s) === RUN TestProcessNodeAttrID_HTMLHeadingWithoutID === RUN TestProcessNodeAttrID_HTMLHeadingWithoutID/h1_without_id === RUN TestProcessNodeAttrID_HTMLHeadingWithoutID/h2_without_id === RUN TestProcessNodeAttrID_HTMLHeadingWithoutID/h3_without_id === RUN TestProcessNodeAttrID_HTMLHeadingWithoutID/h1_with_existing_id_should_keep_it === RUN TestProcessNodeAttrID_HTMLHeadingWithoutID/h1_with_user-content_prefix_should_not_double_prefix === RUN TestProcessNodeAttrID_HTMLHeadingWithoutID/heading_with_special_characters === RUN TestProcessNodeAttrID_HTMLHeadingWithoutID/heading_with_nested_elements --- PASS: TestProcessNodeAttrID_HTMLHeadingWithoutID (0.00s) --- PASS: TestProcessNodeAttrID_HTMLHeadingWithoutID/h1_without_id (0.00s) --- PASS: TestProcessNodeAttrID_HTMLHeadingWithoutID/h2_without_id (0.00s) --- PASS: TestProcessNodeAttrID_HTMLHeadingWithoutID/h3_without_id (0.00s) --- PASS: TestProcessNodeAttrID_HTMLHeadingWithoutID/h1_with_existing_id_should_keep_it (0.00s) --- PASS: TestProcessNodeAttrID_HTMLHeadingWithoutID/h1_with_user-content_prefix_should_not_double_prefix (0.00s) --- PASS: TestProcessNodeAttrID_HTMLHeadingWithoutID/heading_with_special_characters (0.00s) --- PASS: TestProcessNodeAttrID_HTMLHeadingWithoutID/heading_with_nested_elements (0.00s) === RUN TestProcessNodeAttrID_SkipHeadingIDForComments === RUN TestProcessNodeAttrID_SkipHeadingIDForComments/h1_without_id_in_comment_context === RUN TestProcessNodeAttrID_SkipHeadingIDForComments/h2_without_id_in_comment_context === RUN TestProcessNodeAttrID_SkipHeadingIDForComments/h1_with_existing_id_should_still_be_prefixed --- PASS: TestProcessNodeAttrID_SkipHeadingIDForComments (0.00s) --- PASS: TestProcessNodeAttrID_SkipHeadingIDForComments/h1_without_id_in_comment_context (0.00s) --- PASS: TestProcessNodeAttrID_SkipHeadingIDForComments/h2_without_id_in_comment_context (0.00s) --- PASS: TestProcessNodeAttrID_SkipHeadingIDForComments/h1_with_existing_id_should_still_be_prefixed (0.00s) === RUN TestResolveLinkRelative --- PASS: TestResolveLinkRelative (0.00s) === RUN TestRenderIFrame --- PASS: TestRenderIFrame (0.00s) === RUN TestSanitizer --- PASS: TestSanitizer (0.01s) === RUN TestDescriptionSanitizer --- PASS: TestDescriptionSanitizer (0.00s) === RUN TestRenderCodePreview --- PASS: TestRenderCodePreview (0.00s) === RUN TestRender_IssueList === RUN TestRender_IssueList/NormalIssueRef === RUN TestRender_IssueList/ListIssueRef === RUN TestRender_IssueList/ListIssueRefNormal === RUN TestRender_IssueList/ListTodoIssueRef === RUN TestRender_IssueList/IssueFootnote --- PASS: TestRender_IssueList (0.01s) --- PASS: TestRender_IssueList/NormalIssueRef (0.00s) --- PASS: TestRender_IssueList/ListIssueRef (0.00s) --- PASS: TestRender_IssueList/ListIssueRefNormal (0.00s) --- PASS: TestRender_IssueList/ListTodoIssueRef (0.00s) --- PASS: TestRender_IssueList/IssueFootnote (0.00s) === RUN TestRender_Commits --- PASS: TestRender_Commits (0.01s) === RUN TestRender_CrossReferences --- PASS: TestRender_CrossReferences (0.00s) === RUN TestRender_links === RUN TestRender_links/LinkEllipsis --- PASS: TestRender_links (0.02s) --- PASS: TestRender_links/LinkEllipsis (0.00s) === RUN TestRender_email --- PASS: TestRender_email (0.01s) === RUN TestRender_emoji --- PASS: TestRender_emoji (3.23s) === RUN TestRender_ShortLinks --- PASS: TestRender_ShortLinks (0.01s) === RUN Test_ParseClusterFuzz --- PASS: Test_ParseClusterFuzz (0.00s) === RUN TestPostProcess --- PASS: TestPostProcess (0.00s) === RUN TestIssue16020 --- PASS: TestIssue16020 (0.00s) === RUN TestFuzz --- PASS: TestFuzz (0.00s) === RUN TestIssue18471 --- PASS: TestIssue18471 (0.00s) === RUN TestIsFullURL --- PASS: TestIsFullURL (0.00s) === RUN TestToCWithHTML --- PASS: TestToCWithHTML (0.00s) PASS ok gitea.dev/modules/markup 3.432s === RUN TestCleanValue --- PASS: TestCleanValue (0.00s) PASS ok gitea.dev/modules/markup/common 0.010s === RUN TestRenderConsole --- PASS: TestRenderConsole (0.00s) PASS ok gitea.dev/modules/markup/console 0.014s === RUN TestRenderCSV --- PASS: TestRenderCSV (0.01s) PASS ok gitea.dev/modules/markup/csv 0.035s === RUN TestPrepareExternalCommand --- PASS: TestPrepareExternalCommand (0.00s) PASS ok gitea.dev/modules/markup/external 0.026s === RUN TestRenderInternalAttrs --- PASS: TestRenderInternalAttrs (0.00s) === RUN TestRenderInternalExtraHead === RUN TestRenderInternalExtraHead/HeadExists === RUN TestRenderInternalExtraHead/HeadNotExists === RUN TestRenderInternalExtraHead/NotHTML --- PASS: TestRenderInternalExtraHead (0.00s) --- PASS: TestRenderInternalExtraHead/HeadExists (0.00s) --- PASS: TestRenderInternalExtraHead/HeadNotExists (0.00s) --- PASS: TestRenderInternalExtraHead/NotHTML (0.00s) PASS ok gitea.dev/modules/markup/internal 0.021s === RUN TestRender === RUN TestRender/Basic_notebook === RUN TestRender/Markdown_cell_with_XSS_Protection === RUN TestRender/Cell_limit_truncation_guardrail === RUN TestRender/Image_output === RUN TestRender/HTML_output_with_style_tag === RUN TestRender/Error_output === RUN TestRender/Old_nbformat_version --- PASS: TestRender (0.13s) --- PASS: TestRender/Basic_notebook (0.03s) --- PASS: TestRender/Markdown_cell_with_XSS_Protection (0.03s) --- PASS: TestRender/Cell_limit_truncation_guardrail (0.06s) --- PASS: TestRender/Image_output (0.00s) --- PASS: TestRender/HTML_output_with_style_tag (0.00s) --- PASS: TestRender/Error_output (0.00s) --- PASS: TestRender/Old_nbformat_version (0.00s) === RUN TestJoinSource === RUN TestJoinSource/String_input === RUN TestJoinSource/Array_input === RUN TestJoinSource/Empty_array === RUN TestJoinSource/Single_element_array --- PASS: TestJoinSource (0.00s) --- PASS: TestJoinSource/String_input (0.00s) --- PASS: TestJoinSource/Array_input (0.00s) --- PASS: TestJoinSource/Empty_array (0.00s) --- PASS: TestJoinSource/Single_element_array (0.00s) === RUN TestIntegrationAndSanitization --- PASS: TestIntegrationAndSanitization (0.00s) PASS ok gitea.dev/modules/markup/jupyter 0.742s === RUN TestMathRender === RUN TestMathRender/$a$ === RUN TestMathRender/$_a_$ === RUN TestMathRender/$a$$b$ === RUN TestMathRender/$a$_$b$ === RUN TestMathRender/\(a\)_\(b\) === RUN TestMathRender/$a$. === RUN TestMathRender/.$a$ === RUN TestMathRender/$a_a$b_b$ === RUN TestMathRender/a_a$b_b === RUN TestMathRender/a$b_$a_a$b_b$ === RUN TestMathRender/a$x$ === RUN TestMathRender/$x$a === RUN TestMathRender/$a$_($b$)_[$c$]_{$d$} === RUN TestMathRender/[$a$](link) === RUN TestMathRender/$$a$$ === RUN TestMathRender/$$a$$_test === RUN TestMathRender/test_$$a$$ === RUN TestMathRender/foo_$x=\$$_bar === RUN TestMathRender/$\text{$b$}$ === RUN TestMathRender/a$`b`$c === RUN TestMathRender/a_$`b`$_c === RUN TestMathRender/a$``b``$c_x$```y```$z --- PASS: TestMathRender (0.07s) --- PASS: TestMathRender/$a$ (0.06s) --- PASS: TestMathRender/$_a_$ (0.00s) --- PASS: TestMathRender/$a$$b$ (0.00s) --- PASS: TestMathRender/$a$_$b$ (0.00s) --- PASS: TestMathRender/\(a\)_\(b\) (0.00s) --- PASS: TestMathRender/$a$. (0.00s) --- PASS: TestMathRender/.$a$ (0.00s) --- PASS: TestMathRender/$a_a$b_b$ (0.00s) --- PASS: TestMathRender/a_a$b_b (0.00s) --- PASS: TestMathRender/a$b_$a_a$b_b$ (0.00s) --- PASS: TestMathRender/a$x$ (0.00s) --- PASS: TestMathRender/$x$a (0.00s) --- PASS: TestMathRender/$a$_($b$)_[$c$]_{$d$} (0.00s) --- PASS: TestMathRender/[$a$](link) (0.00s) --- PASS: TestMathRender/$$a$$ (0.00s) --- PASS: TestMathRender/$$a$$_test (0.00s) --- PASS: TestMathRender/test_$$a$$ (0.00s) --- PASS: TestMathRender/foo_$x=\$$_bar (0.00s) --- PASS: TestMathRender/$\text{$b$}$ (0.00s) --- PASS: TestMathRender/a$`b`$c (0.00s) --- PASS: TestMathRender/a_$`b`$_c (0.00s) --- PASS: TestMathRender/a$``b``$c_x$```y```$z (0.00s) === RUN TestMathRenderBlockIndent === RUN TestMathRenderBlockIndent/indent-0 === RUN TestMathRenderBlockIndent/indent-1 === RUN TestMathRenderBlockIndent/indent-2-mismatch === RUN TestMathRenderBlockIndent/indent-2 === RUN TestMathRenderBlockIndent/indent-0-oneline === RUN TestMathRenderBlockIndent/indent-3-oneline === RUN TestMathRenderBlockIndent/quote-block === RUN TestMathRenderBlockIndent/list-block === RUN TestMathRenderBlockIndent/inline-non-math --- PASS: TestMathRenderBlockIndent (0.00s) --- PASS: TestMathRenderBlockIndent/indent-0 (0.00s) --- PASS: TestMathRenderBlockIndent/indent-1 (0.00s) --- PASS: TestMathRenderBlockIndent/indent-2-mismatch (0.00s) --- PASS: TestMathRenderBlockIndent/indent-2 (0.00s) --- PASS: TestMathRenderBlockIndent/indent-0-oneline (0.00s) --- PASS: TestMathRenderBlockIndent/indent-3-oneline (0.00s) --- PASS: TestMathRenderBlockIndent/quote-block (0.00s) --- PASS: TestMathRenderBlockIndent/list-block (0.00s) --- PASS: TestMathRenderBlockIndent/inline-non-math (0.00s) === RUN TestMathRenderOptions --- PASS: TestMathRenderOptions (0.00s) === RUN TestExtractMetadata === RUN TestExtractMetadata/ValidFrontAndBody === RUN TestExtractMetadata/NoFirstSeparator === RUN TestExtractMetadata/NoLastSeparator === RUN TestExtractMetadata/NoBody --- PASS: TestExtractMetadata (0.00s) --- PASS: TestExtractMetadata/ValidFrontAndBody (0.00s) --- PASS: TestExtractMetadata/NoFirstSeparator (0.00s) --- PASS: TestExtractMetadata/NoLastSeparator (0.00s) --- PASS: TestExtractMetadata/NoBody (0.00s) === RUN TestExtractMetadataBytes === RUN TestExtractMetadataBytes/ValidFrontAndBody === RUN TestExtractMetadataBytes/NoFirstSeparator === RUN TestExtractMetadataBytes/NoLastSeparator === RUN TestExtractMetadataBytes/NoBody --- PASS: TestExtractMetadataBytes (0.00s) --- PASS: TestExtractMetadataBytes/ValidFrontAndBody (0.00s) --- PASS: TestExtractMetadataBytes/NoFirstSeparator (0.00s) --- PASS: TestExtractMetadataBytes/NoLastSeparator (0.00s) --- PASS: TestExtractMetadataBytes/NoBody (0.00s) === RUN TestRenderConfig_UnmarshalYAML === RUN TestRenderConfig_UnmarshalYAML/empty === RUN TestRenderConfig_UnmarshalYAML/lang === RUN TestRenderConfig_UnmarshalYAML/metatable === RUN TestRenderConfig_UnmarshalYAML/metanone === RUN TestRenderConfig_UnmarshalYAML/metadetails === RUN TestRenderConfig_UnmarshalYAML/metawrong === RUN TestRenderConfig_UnmarshalYAML/toc === RUN TestRenderConfig_UnmarshalYAML/tocfalse === RUN TestRenderConfig_UnmarshalYAML/toclang === RUN TestRenderConfig_UnmarshalYAML/complexlang === RUN TestRenderConfig_UnmarshalYAML/complexlang2 === RUN TestRenderConfig_UnmarshalYAML/complexlang#01 === RUN TestRenderConfig_UnmarshalYAML/complex2 --- PASS: TestRenderConfig_UnmarshalYAML (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/empty (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/lang (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/metatable (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/metanone (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/metadetails (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/metawrong (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/toc (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/tocfalse (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/toclang (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/complexlang (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/complexlang2 (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/complexlang#01 (0.00s) --- PASS: TestRenderConfig_UnmarshalYAML/complex2 (0.00s) === RUN TestAttention --- PASS: TestAttention (0.00s) === RUN TestRender_StandardLinks --- PASS: TestRender_StandardLinks (0.00s) === RUN TestRender_Images --- PASS: TestRender_Images (0.00s) === RUN TestTotal_RenderString --- PASS: TestTotal_RenderString (0.02s) === RUN TestRender_RenderParagraphs --- PASS: TestRender_RenderParagraphs (0.00s) === RUN TestMarkdownRenderRaw 2026/09/06 06:40:37 .../markdown/markdown_test.go:307:TestMarkdownRenderRaw() [I] Test markdown render error with fuzzy data: 2a202d0a0920605b0a0920605b, the following errors can be recovered 2026/09/06 06:40:37 .../markdown/markdown_test.go:307:TestMarkdownRenderRaw() [I] Test markdown render error with fuzzy data: 2d202d0d09600d0960, the following errors can be recovered 2026/09/06 06:40:37 .../markdown/markdown_test.go:307:TestMarkdownRenderRaw() [I] Test markdown render error with fuzzy data: 7b636c6173733d357d0a3d, the following errors can be recovered --- PASS: TestMarkdownRenderRaw (0.00s) === RUN TestRenderSiblingImages_Issue12925 --- PASS: TestRenderSiblingImages_Issue12925 (0.00s) === RUN TestRenderEmojiInLinks_Issue12331 --- PASS: TestRenderEmojiInLinks_Issue12331 (0.00s) === RUN TestColorPreview --- PASS: TestColorPreview (0.01s) === RUN TestMarkdownFrontmatter === RUN TestMarkdownFrontmatter/MapInFrontmatter === RUN TestMarkdownFrontmatter/ListInFrontmatter === RUN TestMarkdownFrontmatter/StringInFrontmatter === RUN TestMarkdownFrontmatter/ListAfterFrontmatter === RUN TestMarkdownFrontmatter/InvalidFrontmatter --- PASS: TestMarkdownFrontmatter (0.01s) --- PASS: TestMarkdownFrontmatter/MapInFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/ListInFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/StringInFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/ListAfterFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/InvalidFrontmatter (0.01s) === RUN TestRenderLinks === RUN TestRenderLinks/LocalCommitAndCompare --- PASS: TestRenderLinks (0.01s) --- PASS: TestRenderLinks/LocalCommitAndCompare (0.00s) === RUN TestMarkdownLink --- PASS: TestMarkdownLink (0.00s) === RUN TestMarkdownUlDir --- PASS: TestMarkdownUlDir (0.00s) === RUN TestMarkdownCodeBlock --- PASS: TestMarkdownCodeBlock (0.01s) PASS ok gitea.dev/modules/markup/markdown 0.342s ? gitea.dev/modules/markup/markdown/math [no test files] === RUN TestMarkdownStripper --- PASS: TestMarkdownStripper (0.00s) PASS ok gitea.dev/modules/markup/mdstripper 0.015s === RUN TestRender_StandardLinks --- PASS: TestRender_StandardLinks (0.00s) === RUN TestRender_InternalLinks --- PASS: TestRender_InternalLinks (0.00s) === RUN TestRender_Media --- PASS: TestRender_Media (0.00s) === RUN TestRender_Source --- PASS: TestRender_Source (0.00s) === RUN TestRender_IncludeLink --- PASS: TestRender_IncludeLink (0.00s) PASS ok gitea.dev/modules/markup/orgmode 0.425s ? gitea.dev/modules/mcaptcha [no test files] ? gitea.dev/modules/metrics [no test files] === RUN TestMigrationJSON_IssueOK --- PASS: TestMigrationJSON_IssueOK (0.03s) === RUN TestMigrationJSON_IssueFail --- PASS: TestMigrationJSON_IssueFail (0.00s) === RUN TestMigrationJSON_MilestoneOK --- PASS: TestMigrationJSON_MilestoneOK (0.00s) PASS ok gitea.dev/modules/migration 0.263s === RUN TestRedisUsernameOpt --- PASS: TestRedisUsernameOpt (0.00s) === RUN TestRedisPasswordOpt --- PASS: TestRedisPasswordOpt (0.00s) === RUN TestSkipVerifyOpt --- PASS: TestSkipVerifyOpt (0.00s) === RUN TestInsecureSkipVerifyOpt --- PASS: TestInsecureSkipVerifyOpt (0.00s) === RUN TestRedisSentinelUsernameOpt --- PASS: TestRedisSentinelUsernameOpt (0.00s) === RUN TestRedisSentinelPasswordOpt --- PASS: TestRedisSentinelPasswordOpt (0.00s) === RUN TestRedisDatabaseIndexTcp --- PASS: TestRedisDatabaseIndexTcp (0.00s) === RUN TestRedisDatabaseIndexUnix --- PASS: TestRedisDatabaseIndexUnix (0.00s) === RUN TestToRedisURI === RUN TestToRedisURI/old_default === RUN TestToRedisURI/old_macaron_session_default --- PASS: TestToRedisURI (0.00s) --- PASS: TestToRedisURI/old_default (0.00s) --- PASS: TestToRedisURI/old_macaron_session_default (0.00s) PASS ok gitea.dev/modules/nosql 0.024s === RUN TestOption --- PASS: TestOption (0.00s) === RUN Test_ParseBool --- PASS: Test_ParseBool (0.00s) === RUN TestOptionalToJson === RUN TestOptionalToJson/empty === RUN TestOptionalToJson/some --- PASS: TestOptionalToJson (0.00s) --- PASS: TestOptionalToJson/empty (0.00s) --- PASS: TestOptionalToJson/some (0.00s) === RUN TestOptionalFromJson === RUN TestOptionalFromJson/empty === RUN TestOptionalFromJson/some --- PASS: TestOptionalFromJson (0.00s) --- PASS: TestOptionalFromJson/empty (0.00s) --- PASS: TestOptionalFromJson/some (0.00s) === RUN TestOptionalToYaml === RUN TestOptionalToYaml/empty === RUN TestOptionalToYaml/some --- PASS: TestOptionalToYaml (0.00s) --- PASS: TestOptionalToYaml/empty (0.00s) --- PASS: TestOptionalToYaml/some (0.00s) === RUN TestOptionalFromYaml === RUN TestOptionalFromYaml/empty === RUN TestOptionalFromYaml/empty_but_init === RUN TestOptionalFromYaml/some --- PASS: TestOptionalFromYaml (0.01s) --- PASS: TestOptionalFromYaml/empty (0.00s) --- PASS: TestOptionalFromYaml/empty_but_init (0.00s) --- PASS: TestOptionalFromYaml/some (0.01s) PASS ok gitea.dev/modules/optional 0.022s ? gitea.dev/modules/options [no test files] === RUN TestHashedBuffer --- PASS: TestHashedBuffer (0.01s) === RUN TestMultiHasherSums === RUN TestMultiHasherSums/Sums === RUN TestMultiHasherSums/State --- PASS: TestMultiHasherSums (0.00s) --- PASS: TestMultiHasherSums/Sums (0.00s) --- PASS: TestMultiHasherSums/State (0.00s) PASS ok gitea.dev/modules/packages 0.026s === RUN TestParsePackage === RUN TestParsePackage/MissingPKGINFOFile === RUN TestParsePackage/InvalidPKGINFOFile === RUN TestParsePackage/Valid === RUN TestParsePackage/TooManyDependencyEntries --- PASS: TestParsePackage (0.01s) --- PASS: TestParsePackage/MissingPKGINFOFile (0.00s) --- PASS: TestParsePackage/InvalidPKGINFOFile (0.01s) --- PASS: TestParsePackage/Valid (0.00s) --- PASS: TestParsePackage/TooManyDependencyEntries (0.00s) === RUN TestParsePackageInfo === RUN TestParsePackageInfo/InvalidName === RUN TestParsePackageInfo/InvalidVersion === RUN TestParsePackageInfo/Valid --- PASS: TestParsePackageInfo (0.00s) --- PASS: TestParsePackageInfo/InvalidName (0.00s) --- PASS: TestParsePackageInfo/InvalidVersion (0.00s) --- PASS: TestParsePackageInfo/Valid (0.00s) PASS ok gitea.dev/modules/packages/alpine 0.024s === RUN TestParsePackage === RUN TestParsePackage/gz === RUN TestParsePackage/gz/MissingPKGINFOFile === RUN TestParsePackage/gz/InvalidPKGINFOFile === RUN TestParsePackage/gz/Valid === RUN TestParsePackage/xz === RUN TestParsePackage/xz/MissingPKGINFOFile === RUN TestParsePackage/xz/InvalidPKGINFOFile === RUN TestParsePackage/xz/Valid === RUN TestParsePackage/zst === RUN TestParsePackage/zst/MissingPKGINFOFile === RUN TestParsePackage/zst/InvalidPKGINFOFile === RUN TestParsePackage/zst/Valid --- PASS: TestParsePackage (0.12s) --- PASS: TestParsePackage/gz (0.03s) --- PASS: TestParsePackage/gz/MissingPKGINFOFile (0.02s) --- PASS: TestParsePackage/gz/InvalidPKGINFOFile (0.00s) --- PASS: TestParsePackage/gz/Valid (0.00s) --- PASS: TestParsePackage/xz (0.09s) --- PASS: TestParsePackage/xz/MissingPKGINFOFile (0.03s) --- PASS: TestParsePackage/xz/InvalidPKGINFOFile (0.02s) --- PASS: TestParsePackage/xz/Valid (0.04s) --- PASS: TestParsePackage/zst (0.00s) --- PASS: TestParsePackage/zst/MissingPKGINFOFile (0.00s) --- PASS: TestParsePackage/zst/InvalidPKGINFOFile (0.00s) --- PASS: TestParsePackage/zst/Valid (0.00s) === RUN TestParsePackageInfo === RUN TestParsePackageInfo/InvalidName === RUN TestParsePackageInfo/Regexp === RUN TestParsePackageInfo/InvalidVersion === RUN TestParsePackageInfo/Valid --- PASS: TestParsePackageInfo (0.00s) --- PASS: TestParsePackageInfo/InvalidName (0.00s) --- PASS: TestParsePackageInfo/Regexp (0.00s) --- PASS: TestParsePackageInfo/InvalidVersion (0.00s) --- PASS: TestParsePackageInfo/Valid (0.00s) === RUN TestParsePackageTooManyFiles --- PASS: TestParsePackageTooManyFiles (0.00s) PASS ok gitea.dev/modules/packages/arch 0.146s === RUN TestParsePackage === RUN TestParsePackage/InvalidName === RUN TestParsePackage/InvalidVersion === RUN TestParsePackage/Valid === RUN TestParsePackage/Renamed --- PASS: TestParsePackage (0.00s) --- PASS: TestParsePackage/InvalidName (0.00s) --- PASS: TestParsePackage/InvalidVersion (0.00s) --- PASS: TestParsePackage/Valid (0.00s) --- PASS: TestParsePackage/Renamed (0.00s) PASS ok gitea.dev/modules/packages/cargo 0.014s === RUN TestParsePackage === RUN TestParsePackage/MissingMetadataFile === RUN TestParsePackage/Valid --- PASS: TestParsePackage (0.00s) --- PASS: TestParsePackage/MissingMetadataFile (0.00s) --- PASS: TestParsePackage/Valid (0.00s) === RUN TestParseChefMetadata === RUN TestParseChefMetadata/InvalidName === RUN TestParseChefMetadata/InvalidVersion === RUN TestParseChefMetadata/Valid --- PASS: TestParseChefMetadata (0.00s) --- PASS: TestParseChefMetadata/InvalidName (0.00s) --- PASS: TestParseChefMetadata/InvalidVersion (0.00s) --- PASS: TestParseChefMetadata/Valid (0.00s) PASS ok gitea.dev/modules/packages/chef 0.016s === RUN TestLicenseUnmarshal --- PASS: TestLicenseUnmarshal (0.00s) === RUN TestCommentsUnmarshal --- PASS: TestCommentsUnmarshal (0.00s) === RUN TestParsePackage === RUN TestParsePackage/MissingComposerFile === RUN TestParsePackage/MissingComposerFileInRoot === RUN TestParsePackage/InvalidComposerFile === RUN TestParsePackage/InvalidPackageName === RUN TestParsePackage/InvalidPackageVersion === RUN TestParsePackage/InvalidReadmePath === RUN TestParsePackage/ValidZip === RUN TestParsePackage/ValidTarBz2 === RUN TestParsePackage/ValidTarGz --- PASS: TestParsePackage (0.01s) --- PASS: TestParsePackage/MissingComposerFile (0.00s) --- PASS: TestParsePackage/MissingComposerFileInRoot (0.00s) --- PASS: TestParsePackage/InvalidComposerFile (0.00s) --- PASS: TestParsePackage/InvalidPackageName (0.00s) --- PASS: TestParsePackage/InvalidPackageVersion (0.00s) --- PASS: TestParsePackage/InvalidReadmePath (0.00s) --- PASS: TestParsePackage/ValidZip (0.00s) --- PASS: TestParsePackage/ValidTarBz2 (0.01s) --- PASS: TestParsePackage/ValidTarGz (0.00s) PASS ok gitea.dev/modules/packages/composer 0.021s === RUN TestParseConanfile --- PASS: TestParseConanfile (0.00s) === RUN TestParseConaninfo --- PASS: TestParseConaninfo (0.00s) === RUN TestNewRecipeReference --- PASS: TestNewRecipeReference (0.00s) === RUN TestRecipeReferenceRevisionOrDefault --- PASS: TestRecipeReferenceRevisionOrDefault (0.00s) === RUN TestRecipeReferenceString --- PASS: TestRecipeReferenceString (0.00s) === RUN TestRecipeReferenceLinkName --- PASS: TestRecipeReferenceLinkName (0.00s) === RUN TestNewPackageReference --- PASS: TestNewPackageReference (0.00s) === RUN TestPackageReferenceRevisionOrDefault --- PASS: TestPackageReferenceRevisionOrDefault (0.00s) === RUN TestPackageReferenceLinkName --- PASS: TestPackageReferenceLinkName (0.00s) PASS ok gitea.dev/modules/packages/conan 0.029s === RUN TestParsePackage === RUN TestParsePackage/MissingIndexFile === RUN TestParsePackage/MissingAboutFile === RUN TestParsePackage/InvalidName === RUN TestParsePackage/InvalidVersion === RUN TestParsePackage/Valid === RUN TestParsePackage/.tar.bz2 === RUN TestParsePackage/.conda --- PASS: TestParsePackage (0.01s) --- PASS: TestParsePackage/MissingIndexFile (0.00s) --- PASS: TestParsePackage/MissingAboutFile (0.00s) --- PASS: TestParsePackage/InvalidName (0.00s) --- PASS: TestParsePackage/InvalidVersion (0.00s) --- PASS: TestParsePackage/Valid (0.00s) --- PASS: TestParsePackage/.tar.bz2 (0.01s) --- PASS: TestParsePackage/.conda (0.00s) PASS ok gitea.dev/modules/packages/conda 0.028s === RUN TestParseImageConfig --- PASS: TestParseImageConfig (0.00s) PASS ok gitea.dev/modules/packages/container 0.013s ? gitea.dev/modules/packages/container/helm [no test files] === RUN TestParsePackage === RUN TestParsePackage/.tar.gz === RUN TestParsePackage/.tar.gz/MissingDescriptionFile === RUN TestParsePackage/.tar.gz/Valid === RUN TestParsePackage/.zip === RUN TestParsePackage/.zip/MissingDescriptionFile === RUN TestParsePackage/.zip/Valid --- PASS: TestParsePackage (0.01s) --- PASS: TestParsePackage/.tar.gz (0.00s) --- PASS: TestParsePackage/.tar.gz/MissingDescriptionFile (0.00s) --- PASS: TestParsePackage/.tar.gz/Valid (0.00s) --- PASS: TestParsePackage/.zip (0.01s) --- PASS: TestParsePackage/.zip/MissingDescriptionFile (0.01s) --- PASS: TestParsePackage/.zip/Valid (0.00s) === RUN TestParseDescription === RUN TestParseDescription/InvalidName === RUN TestParseDescription/InvalidVersion === RUN TestParseDescription/ValidVersionManyComponents === RUN TestParseDescription/Valid --- PASS: TestParseDescription (0.00s) --- PASS: TestParseDescription/InvalidName (0.00s) --- PASS: TestParseDescription/InvalidVersion (0.00s) --- PASS: TestParseDescription/ValidVersionManyComponents (0.00s) --- PASS: TestParseDescription/Valid (0.00s) PASS ok gitea.dev/modules/packages/cran 0.018s === RUN TestParsePackage === RUN TestParsePackage/MissingControlFile === RUN TestParsePackage/Compression === RUN TestParsePackage/Compression/Unsupported === RUN TestParsePackage/Compression/#00 === RUN TestParsePackage/Compression/#00/TrailingSlash === RUN TestParsePackage/Compression/.gz === RUN TestParsePackage/Compression/.gz/TrailingSlash === RUN TestParsePackage/Compression/.xz === RUN TestParsePackage/Compression/.xz/TrailingSlash === RUN TestParsePackage/Compression/.zst === RUN TestParsePackage/Compression/.zst/TrailingSlash --- PASS: TestParsePackage (0.03s) --- PASS: TestParsePackage/MissingControlFile (0.00s) --- PASS: TestParsePackage/Compression (0.03s) --- PASS: TestParsePackage/Compression/Unsupported (0.00s) --- PASS: TestParsePackage/Compression/#00 (0.00s) --- PASS: TestParsePackage/Compression/#00/TrailingSlash (0.00s) --- PASS: TestParsePackage/Compression/.gz (0.00s) --- PASS: TestParsePackage/Compression/.gz/TrailingSlash (0.00s) --- PASS: TestParsePackage/Compression/.xz (0.03s) --- PASS: TestParsePackage/Compression/.xz/TrailingSlash (0.00s) --- PASS: TestParsePackage/Compression/.zst (0.00s) --- PASS: TestParsePackage/Compression/.zst/TrailingSlash (0.00s) === RUN TestParseControlFile === RUN TestParseControlFile/InvalidName === RUN TestParseControlFile/InvalidVersion === RUN TestParseControlFile/InvalidArchitecture === RUN TestParseControlFile/Valid === RUN TestParseControlFile/ValidVersions === RUN TestParseControlFile/SingleStanzaOnly --- PASS: TestParseControlFile (0.00s) --- PASS: TestParseControlFile/InvalidName (0.00s) --- PASS: TestParseControlFile/InvalidVersion (0.00s) --- PASS: TestParseControlFile/InvalidArchitecture (0.00s) --- PASS: TestParseControlFile/Valid (0.00s) --- PASS: TestParseControlFile/ValidVersions (0.00s) --- PASS: TestParseControlFile/SingleStanzaOnly (0.00s) === RUN TestValidateDistributionOrComponent --- PASS: TestValidateDistributionOrComponent (0.00s) === RUN TestParseControlFileMultilineDescription --- PASS: TestParseControlFileMultilineDescription (0.00s) PASS ok gitea.dev/modules/packages/debian 0.051s === RUN TestParsePackage === RUN TestParsePackage/EmptyPackage === RUN TestParsePackage/InvalidNameOrVersionStructure === RUN TestParsePackage/GoModFileInWrongDirectory === RUN TestParsePackage/InvalidVersion === RUN TestParsePackage/Valid --- PASS: TestParsePackage (0.00s) --- PASS: TestParsePackage/EmptyPackage (0.00s) --- PASS: TestParsePackage/InvalidNameOrVersionStructure (0.00s) --- PASS: TestParsePackage/GoModFileInWrongDirectory (0.00s) --- PASS: TestParsePackage/InvalidVersion (0.00s) --- PASS: TestParsePackage/Valid (0.00s) PASS ok gitea.dev/modules/packages/goproxy 0.011s ? gitea.dev/modules/packages/helm [no test files] === RUN TestParsePackageMetaData === RUN TestParsePackageMetaData/InvalidFile === RUN TestParsePackageMetaData/Valid === RUN TestParsePackageMetaData/Encoding === RUN TestParsePackageMetaData/ParentInherit === RUN TestParsePackageMetaData/ParentInherit#01 --- PASS: TestParsePackageMetaData (0.00s) --- PASS: TestParsePackageMetaData/InvalidFile (0.00s) --- PASS: TestParsePackageMetaData/Valid (0.00s) --- PASS: TestParsePackageMetaData/Encoding (0.00s) --- PASS: TestParsePackageMetaData/ParentInherit (0.00s) --- PASS: TestParsePackageMetaData/ParentInherit#01 (0.00s) PASS ok gitea.dev/modules/packages/maven 0.023s === RUN TestParsePackage === RUN TestParsePackage/InvalidUpload === RUN TestParsePackage/InvalidUploadNoData === RUN TestParsePackage/InvalidPackageName === RUN TestParsePackage/ValidPackageName === RUN TestParsePackage/InvalidPackageVersion === RUN TestParsePackage/InvalidAttachment === RUN TestParsePackage/InvalidData === RUN TestParsePackage/InvalidIntegrity === RUN TestParsePackage/InvalidIntegrity2 === RUN TestParsePackage/Valid === RUN TestParsePackage/ValidLicenseMap === RUN TestParsePackage/ValidRepositoryAndBinAsString --- PASS: TestParsePackage (0.01s) --- PASS: TestParsePackage/InvalidUpload (0.00s) --- PASS: TestParsePackage/InvalidUploadNoData (0.00s) --- PASS: TestParsePackage/InvalidPackageName (0.00s) --- PASS: TestParsePackage/ValidPackageName (0.01s) --- PASS: TestParsePackage/InvalidPackageVersion (0.00s) --- PASS: TestParsePackage/InvalidAttachment (0.00s) --- PASS: TestParsePackage/InvalidData (0.00s) --- PASS: TestParsePackage/InvalidIntegrity (0.00s) --- PASS: TestParsePackage/InvalidIntegrity2 (0.00s) --- PASS: TestParsePackage/Valid (0.00s) --- PASS: TestParsePackage/ValidLicenseMap (0.00s) --- PASS: TestParsePackage/ValidRepositoryAndBinAsString (0.00s) PASS ok gitea.dev/modules/packages/npm 0.043s === RUN TestParsePackageMetaData === RUN TestParsePackageMetaData/MissingNuspecFile === RUN TestParsePackageMetaData/MissingNuspecFileInRoot === RUN TestParsePackageMetaData/InvalidNuspecFile === RUN TestParsePackageMetaData/InvalidPackageId === RUN TestParsePackageMetaData/InvalidPackageVersion === RUN TestParsePackageMetaData/MissingReadme === RUN TestParsePackageMetaData/Dependency_Package === RUN TestParsePackageMetaData/Dependency_Package/NormalizedVersion === RUN TestParsePackageMetaData/Symbols_Package --- PASS: TestParsePackageMetaData (0.02s) --- PASS: TestParsePackageMetaData/MissingNuspecFile (0.00s) --- PASS: TestParsePackageMetaData/MissingNuspecFileInRoot (0.00s) --- PASS: TestParsePackageMetaData/InvalidNuspecFile (0.00s) --- PASS: TestParsePackageMetaData/InvalidPackageId (0.00s) --- PASS: TestParsePackageMetaData/InvalidPackageVersion (0.01s) --- PASS: TestParsePackageMetaData/MissingReadme (0.00s) --- PASS: TestParsePackageMetaData/Dependency_Package (0.00s) --- PASS: TestParsePackageMetaData/Dependency_Package/NormalizedVersion (0.00s) --- PASS: TestParsePackageMetaData/Symbols_Package (0.00s) === RUN TestExtractPortablePdb === RUN TestExtractPortablePdb/MissingPdbFiles === RUN TestExtractPortablePdb/InvalidFiles === RUN TestExtractPortablePdb/Valid --- PASS: TestExtractPortablePdb (0.00s) --- PASS: TestExtractPortablePdb/MissingPdbFiles (0.00s) --- PASS: TestExtractPortablePdb/InvalidFiles (0.00s) --- PASS: TestExtractPortablePdb/Valid (0.00s) === RUN TestParseDebugHeaderID === RUN TestParseDebugHeaderID/InvalidPdbMagicNumber === RUN TestParseDebugHeaderID/MissingPdbStream === RUN TestParseDebugHeaderID/Valid --- PASS: TestParseDebugHeaderID (0.00s) --- PASS: TestParseDebugHeaderID/InvalidPdbMagicNumber (0.00s) --- PASS: TestParseDebugHeaderID/MissingPdbStream (0.00s) --- PASS: TestParseDebugHeaderID/Valid (0.00s) PASS ok gitea.dev/modules/packages/nuget 0.038s === RUN TestParsePackage === RUN TestParsePackage/MissingPubspecFile === RUN TestParsePackage/PubspecFileTooLarge === RUN TestParsePackage/InvalidPubspecFile === RUN TestParsePackage/Valid === RUN TestParsePackage/ValidWithReadme --- PASS: TestParsePackage (0.02s) --- PASS: TestParsePackage/MissingPubspecFile (0.00s) --- PASS: TestParsePackage/PubspecFileTooLarge (0.01s) --- PASS: TestParsePackage/InvalidPubspecFile (0.00s) --- PASS: TestParsePackage/Valid (0.01s) --- PASS: TestParsePackage/ValidWithReadme (0.00s) === RUN TestParsePubspecMetadata === RUN TestParsePubspecMetadata/InvalidName === RUN TestParsePubspecMetadata/InvalidVersion === RUN TestParsePubspecMetadata/Valid --- PASS: TestParsePubspecMetadata (0.00s) --- PASS: TestParsePubspecMetadata/InvalidName (0.00s) --- PASS: TestParsePubspecMetadata/InvalidVersion (0.00s) --- PASS: TestParsePubspecMetadata/Valid (0.00s) PASS ok gitea.dev/modules/packages/pub 0.053s ? gitea.dev/modules/packages/pypi [no test files] === RUN TestParsePackage --- PASS: TestParsePackage (0.00s) PASS ok gitea.dev/modules/packages/rpm 0.012s === RUN TestMinimalEncoder --- PASS: TestMinimalEncoder (0.00s) === RUN TestParsePackageMetaData === RUN TestParsePackageMetaData/MissingMetadataFile === RUN TestParsePackageMetaData/Valid === RUN TestParsePackageMetaData/InvalidName --- PASS: TestParsePackageMetaData (0.01s) --- PASS: TestParsePackageMetaData/MissingMetadataFile (0.00s) --- PASS: TestParsePackageMetaData/Valid (0.00s) --- PASS: TestParsePackageMetaData/InvalidName (0.01s) === RUN TestParseMetadataFile --- PASS: TestParseMetadataFile (0.01s) PASS ok gitea.dev/modules/packages/rubygems 0.033s === RUN TestParsePackage === RUN TestParsePackage/MissingManifestFile === RUN TestParsePackage/ManifestFileTooLarge === RUN TestParsePackage/TooManyManifestFiles === RUN TestParsePackage/WithoutMetadata === RUN TestParsePackage/IgnoresNestedManifests === RUN TestParsePackage/IgnoresNestedManifestsInPrefixedArchive === RUN TestParsePackage/AltManifestOnlyInRootDirectory === RUN TestParsePackage/ManifestDirectoryTieBreak === RUN TestParsePackage/WithMetadata === RUN TestParsePackage/WithExplicitNameField === RUN TestParsePackage/WithEmptyJSONMetadata === RUN TestParsePackage/NameFieldGeneration --- PASS: TestParsePackage (0.01s) --- PASS: TestParsePackage/MissingManifestFile (0.00s) --- PASS: TestParsePackage/ManifestFileTooLarge (0.00s) --- PASS: TestParsePackage/TooManyManifestFiles (0.00s) --- PASS: TestParsePackage/WithoutMetadata (0.00s) --- PASS: TestParsePackage/IgnoresNestedManifests (0.00s) --- PASS: TestParsePackage/IgnoresNestedManifestsInPrefixedArchive (0.00s) --- PASS: TestParsePackage/AltManifestOnlyInRootDirectory (0.00s) --- PASS: TestParsePackage/ManifestDirectoryTieBreak (0.00s) --- PASS: TestParsePackage/WithMetadata (0.00s) --- PASS: TestParsePackage/WithExplicitNameField (0.00s) --- PASS: TestParsePackage/WithEmptyJSONMetadata (0.00s) --- PASS: TestParsePackage/NameFieldGeneration (0.00s) === RUN TestTrimmedVersionString --- PASS: TestTrimmedVersionString (0.00s) === RUN TestPersonNameString === RUN TestPersonNameString/GivenNameOnly === RUN TestPersonNameString/GivenAndFamily === RUN TestPersonNameString/FullName === RUN TestPersonNameString/MiddleAndFamily === RUN TestPersonNameString/Empty --- PASS: TestPersonNameString (0.00s) --- PASS: TestPersonNameString/GivenNameOnly (0.00s) --- PASS: TestPersonNameString/GivenAndFamily (0.00s) --- PASS: TestPersonNameString/FullName (0.00s) --- PASS: TestPersonNameString/MiddleAndFamily (0.00s) --- PASS: TestPersonNameString/Empty (0.00s) PASS ok gitea.dev/modules/packages/swift 0.031s ? gitea.dev/modules/packages/terraform [no test files] === RUN TestParseMetadataFromBox === RUN TestParseMetadataFromBox/MissingInfoFile === RUN TestParseMetadataFromBox/Valid --- PASS: TestParseMetadataFromBox (0.01s) --- PASS: TestParseMetadataFromBox/MissingInfoFile (0.00s) --- PASS: TestParseMetadataFromBox/Valid (0.01s) === RUN TestParseInfoFile === RUN TestParseInfoFile/UnknownKeys === RUN TestParseInfoFile/Valid --- PASS: TestParseInfoFile (0.00s) --- PASS: TestParseInfoFile/UnknownKeys (0.00s) --- PASS: TestParseInfoFile/Valid (0.00s) PASS ok gitea.dev/modules/packages/vagrant 0.018s === RUN TestPaginator === RUN TestPaginator/Basic_logics === RUN TestPaginator/Generate_pages === RUN TestPaginator/Only_current_page === RUN TestPaginator/Total_page_number_is_less_or_equal === RUN TestPaginator/Has_more_previous_pages_ === RUN TestPaginator/Has_more_next_pages === RUN TestPaginator/Has_both_more_previous_and_next_pages --- PASS: TestPaginator (0.00s) --- PASS: TestPaginator/Basic_logics (0.00s) --- PASS: TestPaginator/Generate_pages (0.00s) --- PASS: TestPaginator/Only_current_page (0.00s) --- PASS: TestPaginator/Total_page_number_is_less_or_equal (0.00s) --- PASS: TestPaginator/Has_more_previous_pages_ (0.00s) --- PASS: TestPaginator/Has_more_next_pages (0.00s) --- PASS: TestPaginator/Has_both_more_previous_and_next_pages (0.00s) PASS ok gitea.dev/modules/paginator 0.010s ? gitea.dev/modules/pprof [no test files] === RUN TestInternalAPIConnectionIsLocal === RUN TestInternalAPIConnectionIsLocal/unix_socket === RUN TestInternalAPIConnectionIsLocal/localhost === RUN TestInternalAPIConnectionIsLocal/loopback_ipv4 === RUN TestInternalAPIConnectionIsLocal/loopback_ipv6 === RUN TestInternalAPIConnectionIsLocal/remote_host === RUN TestInternalAPIConnectionIsLocal/remote_ip === RUN TestInternalAPIConnectionIsLocal/invalid_url --- PASS: TestInternalAPIConnectionIsLocal (0.00s) --- PASS: TestInternalAPIConnectionIsLocal/unix_socket (0.00s) --- PASS: TestInternalAPIConnectionIsLocal/localhost (0.00s) --- PASS: TestInternalAPIConnectionIsLocal/loopback_ipv4 (0.00s) --- PASS: TestInternalAPIConnectionIsLocal/loopback_ipv6 (0.00s) --- PASS: TestInternalAPIConnectionIsLocal/remote_host (0.00s) --- PASS: TestInternalAPIConnectionIsLocal/remote_ip (0.00s) --- PASS: TestInternalAPIConnectionIsLocal/invalid_url (0.00s) === RUN TestGitPushOptions --- PASS: TestGitPushOptions (0.00s) PASS ok gitea.dev/modules/private 0.151s === RUN TestGetManager --- PASS: TestGetManager (0.00s) === RUN TestManager_AddContext --- PASS: TestManager_AddContext (0.00s) === RUN TestManager_Cancel --- PASS: TestManager_Cancel (0.00s) === RUN TestManager_Remove --- PASS: TestManager_Remove (0.00s) === RUN TestExecTimeoutNever --- PASS: TestExecTimeoutNever (0.02s) === RUN TestExecTimeoutAlways --- PASS: TestExecTimeoutAlways (0.21s) PASS ok gitea.dev/modules/process 0.258s ? gitea.dev/modules/proxy [no test files] ? gitea.dev/modules/proxyprotocol [no test files] === RUN TestViteManifest === RUN TestViteManifest/EmptyManifest === RUN TestViteManifest/ParseManifest 2026/09/06 06:40:37 modules/public/manifest.go:45:parseManifest() [E] Failed to parse frontend manifest: jsontext: unexpected EOF --- PASS: TestViteManifest (0.00s) --- PASS: TestViteManifest/EmptyManifest (0.00s) --- PASS: TestViteManifest/ParseManifest (0.00s) === RUN TestParseAcceptEncoding === RUN TestParseAcceptEncoding/deflate,_gzip;q=1.0,_*;q=0.5 === RUN TestParseAcceptEncoding/_gzip,_deflate,_br --- PASS: TestParseAcceptEncoding (0.00s) --- PASS: TestParseAcceptEncoding/deflate,_gzip;q=1.0,_*;q=0.5 (0.00s) --- PASS: TestParseAcceptEncoding/_gzip,_deflate,_br (0.00s) PASS ok gitea.dev/modules/public 0.009s === RUN TestBaseChannel === RUN TestBaseChannel/testQueueBasic-baseChannel-unique:false === RUN TestBaseChannel/testQueueBasic-baseChannel-unique:true --- PASS: TestBaseChannel (0.10s) --- PASS: TestBaseChannel/testQueueBasic-baseChannel-unique:false (0.05s) --- PASS: TestBaseChannel/testQueueBasic-baseChannel-unique:true (0.05s) === RUN TestBaseLevelDB === RUN TestBaseLevelDB/testQueueBasic-baseLevelQueue-unique:false === RUN TestBaseLevelDB/testQueueBasic-baseLevelQueueUnique-unique:true --- PASS: TestBaseLevelDB (0.14s) --- PASS: TestBaseLevelDB/testQueueBasic-baseLevelQueue-unique:false (0.06s) --- PASS: TestBaseLevelDB/testQueueBasic-baseLevelQueueUnique-unique:true (0.08s) === RUN TestCorruptedLevelQueue --- PASS: TestCorruptedLevelQueue (0.03s) === RUN TestBaseRedis redis: 2026/09/06 06:40:37 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:38 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:38 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused redis: 2026/09/06 06:40:39 pool.go:724: redis: connection pool: failed to dial after 5 attempts: dial tcp 127.0.0.1:6379: connect: connection refused base_redis_test.go:62: redis server command not found, skipped --- SKIP: TestBaseRedis (1.74s) === RUN TestBaseDummy --- PASS: TestBaseDummy (0.00s) === RUN TestManager --- PASS: TestManager (0.13s) === RUN TestWorkerPoolQueueUnhandled === RUN TestWorkerPoolQueueUnhandled/1/1 === RUN TestWorkerPoolQueueUnhandled/3/1 === RUN TestWorkerPoolQueueUnhandled/4/5 --- PASS: TestWorkerPoolQueueUnhandled (0.27s) --- PASS: TestWorkerPoolQueueUnhandled/1/1 (0.09s) --- PASS: TestWorkerPoolQueueUnhandled/3/1 (0.09s) --- PASS: TestWorkerPoolQueueUnhandled/4/5 (0.09s) === RUN TestWorkerPoolQueuePersistence === RUN TestWorkerPoolQueuePersistence/1/1 === RUN TestWorkerPoolQueuePersistence/3/1 === RUN TestWorkerPoolQueuePersistence/4/5 --- PASS: TestWorkerPoolQueuePersistence (1.68s) --- PASS: TestWorkerPoolQueuePersistence/1/1 (0.80s) --- PASS: TestWorkerPoolQueuePersistence/3/1 (0.49s) --- PASS: TestWorkerPoolQueuePersistence/4/5 (0.39s) === RUN TestWorkerPoolQueueActiveWorkers --- PASS: TestWorkerPoolQueueActiveWorkers (1.70s) === RUN TestWorkerPoolQueueShutdown 2026/09/06 06:40:43 .../queue/workergroup.go:110:(*WorkerPoolQueue).doWorkerHandle() [E] Queue "test-workpoolqueue" failed to handle batch of 3 items, backoff for a few seconds 2026/09/06 06:40:43 .../queue/workergroup.go:110:(*WorkerPoolQueue).doWorkerHandle() [E] Queue "test-workpoolqueue" failed to handle batch of 3 items, backoff for a few seconds 2026/09/06 06:40:43 .../queue/workergroup.go:110:(*WorkerPoolQueue).doWorkerHandle() [E] Queue "test-workpoolqueue" failed to handle batch of 3 items, backoff for a few seconds --- PASS: TestWorkerPoolQueueShutdown (0.46s) === RUN TestWorkerPoolQueueWorkerIdleReset 2026/09/06 06:40:43 .../queue/workergroup.go:110:(*WorkerPoolQueue).doWorkerHandle() [E] Queue "test-workpoolqueue" failed to handle batch of 3 items, backoff for a few seconds --- PASS: TestWorkerPoolQueueWorkerIdleReset (0.55s) PASS ok gitea.dev/modules/queue 6.819s ? gitea.dev/modules/queue/lqinternal [no test files] ? gitea.dev/modules/recaptcha [no test files] === RUN TestConvertFullHTMLReferencesToShortRefs --- PASS: TestConvertFullHTMLReferencesToShortRefs (0.00s) === RUN TestFindAllIssueReferences === RUN TestFindAllIssueReferences/Fixes_bare_URL === RUN TestFindAllIssueReferences/Fixes_with_colon === RUN TestFindAllIssueReferences/Closes_bare_URL === RUN TestFindAllIssueReferences/Closes_with_colon --- PASS: TestFindAllIssueReferences (0.00s) --- PASS: TestFindAllIssueReferences/Fixes_bare_URL (0.00s) --- PASS: TestFindAllIssueReferences/Fixes_with_colon (0.00s) --- PASS: TestFindAllIssueReferences/Closes_bare_URL (0.00s) --- PASS: TestFindAllIssueReferences/Closes_with_colon (0.00s) === RUN TestFindAllMentions --- PASS: TestFindAllMentions (0.00s) === RUN TestFindRenderizableCommitCrossReference --- PASS: TestFindRenderizableCommitCrossReference (0.00s) === RUN TestRegExp_mentionPattern --- PASS: TestRegExp_mentionPattern (0.00s) === RUN TestRegExp_issueNumericPattern --- PASS: TestRegExp_issueNumericPattern (0.00s) === RUN TestRegExp_issueAlphanumericPattern --- PASS: TestRegExp_issueAlphanumericPattern (0.00s) === RUN TestCustomizeCloseKeywords --- PASS: TestCustomizeCloseKeywords (0.00s) === RUN TestParseCloseKeywords --- PASS: TestParseCloseKeywords (0.02s) PASS ok gitea.dev/modules/references 0.035s === RUN TestRegexpLru --- PASS: TestRegexpLru (0.00s) PASS ok gitea.dev/modules/regexplru 0.020s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-630818507/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-630818507/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-630818507/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-630818507/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-630818507/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-630818507/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-630818507/data/actions_artifacts === RUN TestSyncRepoBranches --- PASS: TestSyncRepoBranches (0.32s) === RUN TestPushCommits_ToAPIPayloadCommits --- PASS: TestPushCommits_ToAPIPayloadCommits (0.03s) === RUN TestCommitToPushCommit --- PASS: TestCommitToPushCommit (0.00s) === RUN TestListToPushCommits --- PASS: TestListToPushCommits (0.00s) === RUN TestGetDirectorySize --- PASS: TestGetDirectorySize (0.00s) === RUN TestCanUserForkBetweenOwners --- PASS: TestCanUserForkBetweenOwners (0.00s) === RUN TestMergeCustomLabels --- PASS: TestMergeCustomLabels (0.00s) === RUN Test_getLicense === RUN Test_getLicense/regular === RUN Test_getLicense/license_not_found --- PASS: Test_getLicense (0.00s) --- PASS: Test_getLicense/regular (0.00s) --- PASS: Test_getLicense/license_not_found (0.00s) === RUN Test_fillLicensePlaceholder === RUN Test_fillLicensePlaceholder/owner === RUN Test_fillLicensePlaceholder/email === RUN Test_fillLicensePlaceholder/repo === RUN Test_fillLicensePlaceholder/year === RUN Test_fillLicensePlaceholder/0BSD --- PASS: Test_fillLicensePlaceholder (0.00s) --- PASS: Test_fillLicensePlaceholder/owner (0.00s) --- PASS: Test_fillLicensePlaceholder/email (0.00s) --- PASS: Test_fillLicensePlaceholder/repo (0.00s) --- PASS: Test_fillLicensePlaceholder/year (0.00s) --- PASS: Test_fillLicensePlaceholder/0BSD (0.00s) === RUN Test_calcSync --- PASS: Test_calcSync (0.00s) PASS ok gitea.dev/modules/repository 0.984s ? gitea.dev/modules/reqctx [no test files] === RUN TestEncryptDecrypt --- PASS: TestEncryptDecrypt (0.00s) PASS ok gitea.dev/modules/secret 0.021s ? gitea.dev/modules/session [no test files] === RUN Test_getStorageInheritNameSectionTypeForActions --- PASS: Test_getStorageInheritNameSectionTypeForActions (0.00s) === RUN Test_WorkflowDirs === RUN Test_WorkflowDirs/default === RUN Test_WorkflowDirs/single_dir === RUN Test_WorkflowDirs/custom_order === RUN Test_WorkflowDirs/whitespace_trimming === RUN Test_WorkflowDirs/trailing_slash_normalization === RUN Test_WorkflowDirs/only_commas_and_whitespace --- PASS: Test_WorkflowDirs (0.00s) --- PASS: Test_WorkflowDirs/default (0.00s) --- PASS: Test_WorkflowDirs/single_dir (0.00s) --- PASS: Test_WorkflowDirs/custom_order (0.00s) --- PASS: Test_WorkflowDirs/whitespace_trimming (0.00s) --- PASS: Test_WorkflowDirs/trailing_slash_normalization (0.00s) --- PASS: Test_WorkflowDirs/only_commas_and_whitespace (0.00s) === RUN Test_getDefaultActionsURLForActions === RUN Test_getDefaultActionsURLForActions/default === RUN Test_getDefaultActionsURLForActions/github === RUN Test_getDefaultActionsURLForActions/self === RUN Test_getDefaultActionsURLForActions/custom_url 2026/09/06 06:40:37 modules/setting/actions.go:98:loadActionsFrom() [E] [actions] DEFAULT_ACTIONS_URL does not support "https://gitea.com" as custom URL any longer, fallback to "github" === RUN Test_getDefaultActionsURLForActions/custom_urls 2026/09/06 06:40:37 modules/setting/actions.go:98:loadActionsFrom() [E] [actions] DEFAULT_ACTIONS_URL does not support "https://gitea.com,https://github.com" as custom URL any longer, fallback to "github" === RUN Test_getDefaultActionsURLForActions/invalid --- PASS: Test_getDefaultActionsURLForActions (0.00s) --- PASS: Test_getDefaultActionsURLForActions/default (0.00s) --- PASS: Test_getDefaultActionsURLForActions/github (0.00s) --- PASS: Test_getDefaultActionsURLForActions/self (0.00s) --- PASS: Test_getDefaultActionsURLForActions/custom_url (0.00s) --- PASS: Test_getDefaultActionsURLForActions/custom_urls (0.00s) --- PASS: Test_getDefaultActionsURLForActions/invalid (0.00s) === RUN Test_ScopedWorkflowDirs === RUN Test_ScopedWorkflowDirs/default === RUN Test_ScopedWorkflowDirs/custom_dir === RUN Test_ScopedWorkflowDirs/empty_disables_the_feature === RUN Test_ScopedWorkflowDirs/overlap_equal_with_workflow_dir === RUN Test_ScopedWorkflowDirs/scoped_dir_nested_under_workflow_dir === RUN Test_ScopedWorkflowDirs/workflow_dir_nested_under_scoped_dir === RUN Test_ScopedWorkflowDirs/no_overlap --- PASS: Test_ScopedWorkflowDirs (0.00s) --- PASS: Test_ScopedWorkflowDirs/default (0.00s) --- PASS: Test_ScopedWorkflowDirs/custom_dir (0.00s) --- PASS: Test_ScopedWorkflowDirs/empty_disables_the_feature (0.00s) --- PASS: Test_ScopedWorkflowDirs/overlap_equal_with_workflow_dir (0.00s) --- PASS: Test_ScopedWorkflowDirs/scoped_dir_nested_under_workflow_dir (0.00s) --- PASS: Test_ScopedWorkflowDirs/workflow_dir_nested_under_scoped_dir (0.00s) --- PASS: Test_ScopedWorkflowDirs/no_overlap (0.00s) === RUN Test_getStorageCustomType --- PASS: Test_getStorageCustomType (0.00s) === RUN Test_getStorageTypeSectionOverridesStorageSection --- PASS: Test_getStorageTypeSectionOverridesStorageSection (0.00s) === RUN Test_getStorageSpecificOverridesStorage --- PASS: Test_getStorageSpecificOverridesStorage (0.00s) === RUN Test_getStorageGetDefaults --- PASS: Test_getStorageGetDefaults (0.00s) === RUN Test_getStorageInheritNameSectionType --- PASS: Test_getStorageInheritNameSectionType (0.00s) === RUN Test_AttachmentStorage --- PASS: Test_AttachmentStorage (0.00s) === RUN Test_AttachmentStorage1 --- PASS: Test_AttachmentStorage1 (0.00s) === RUN TestDecodeEnvSectionKey --- PASS: TestDecodeEnvSectionKey (0.00s) === RUN TestDecodeEnvironmentKey --- PASS: TestDecodeEnvironmentKey (0.00s) === RUN TestEnvironmentToConfig --- PASS: TestEnvironmentToConfig (0.00s) === RUN TestEnvironmentToConfigSubSecKey --- PASS: TestEnvironmentToConfigSubSecKey (0.00s) === RUN TestConfigProviderBehaviors === RUN TestConfigProviderBehaviors/BuggyKeyOverwritten === RUN TestConfigProviderBehaviors/SubsectionSeeParentKeys === RUN TestConfigProviderBehaviors/TrailingSlash --- PASS: TestConfigProviderBehaviors (0.00s) --- PASS: TestConfigProviderBehaviors/BuggyKeyOverwritten (0.00s) --- PASS: TestConfigProviderBehaviors/SubsectionSeeParentKeys (0.00s) --- PASS: TestConfigProviderBehaviors/TrailingSlash (0.00s) === RUN TestConfigProviderHelper --- PASS: TestConfigProviderHelper (0.00s) === RUN TestNewConfigProviderFromFile --- PASS: TestNewConfigProviderFromFile (0.00s) === RUN TestDisableSaving --- PASS: TestDisableSaving (0.00s) === RUN Test_getCronSettings --- PASS: Test_getCronSettings (0.00s) === RUN Test_getCronSettings2 --- PASS: Test_getCronSettings2 (0.00s) === RUN TestGitConfig --- PASS: TestGitConfig (0.00s) === RUN TestGitReflog 2026/09/06 06:40:37 modules/setting/git.go:96:loadGitFrom() [E] Deprecation: config option `[git.reflog].ENABLED` present, please use `[git.config].core.logAllRefUpdates` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:37 modules/setting/git.go:100:loadGitFrom() [E] Deprecation: config option `[git.reflog].EXPIRATION` present, please use `[git.config].core.reflogExpire` instead because this fallback will be/has been removed in 1.21 --- PASS: TestGitReflog (0.00s) === RUN TestLoadGlobalLockConfig === RUN TestLoadGlobalLockConfig/DefaultGlobalLockConfig === RUN TestLoadGlobalLockConfig/RedisGlobalLockConfig --- PASS: TestLoadGlobalLockConfig (0.00s) --- PASS: TestLoadGlobalLockConfig/DefaultGlobalLockConfig (0.00s) --- PASS: TestLoadGlobalLockConfig/RedisGlobalLockConfig (0.00s) === RUN Test_newIndexerGlobSettings --- PASS: Test_newIndexerGlobSettings (0.00s) === RUN Test_getStorageInheritNameSectionTypeForLFS 2026/09/06 06:40:37 modules/setting/lfs.go:46:loadLFSFrom() [E] Deprecation: config option `[server].LFS_CONTENT_PATH` present, please use `[lfs].PATH` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:37 modules/setting/lfs.go:46:loadLFSFrom() [E] Deprecation: config option `[server].LFS_CONTENT_PATH` present, please use `[lfs].PATH` instead because this fallback will be/has been removed in v1.19.0 --- PASS: Test_getStorageInheritNameSectionTypeForLFS (0.00s) === RUN Test_LFSStorage1 --- PASS: Test_LFSStorage1 (0.00s) === RUN Test_LFSClientServerConfigs --- PASS: Test_LFSClientServerConfigs (0.00s) === RUN TestLogConfigDefault --- PASS: TestLogConfigDefault (0.00s) === RUN TestLogConfigDisable --- PASS: TestLogConfigDisable (0.00s) === RUN TestLogConfigLegacyDefault --- PASS: TestLogConfigLegacyDefault (0.00s) === RUN TestLogConfigLegacyMode 2026/09/06 06:40:37 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:37 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 --- PASS: TestLogConfigLegacyMode (0.00s) === RUN TestLogConfigLegacyModeDisable --- PASS: TestLogConfigLegacyModeDisable (0.00s) === RUN TestLogConfigNewConfig 2026/09/06 06:40:37 modules/setting/log.go:62:prepareLoggerConfig() [E] Deprecation: config option `[log].ACCESS` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:37 modules/setting/log.go:63:prepareLoggerConfig() [E] Deprecation: config option `[log].ENABLE_ACCESS_LOG` present, please use `[log].logger.access.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:37 modules/setting/log.go:71:prepareLoggerConfig() [E] Deprecation: config option `[log].ROUTER` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 2026/09/06 06:40:37 modules/setting/log.go:72:prepareLoggerConfig() [E] Deprecation: config option `[log].DISABLE_ROUTER_LOG` present, please use `[log].logger.router.MODE` instead because this fallback will be/has been removed in 1.21 --- PASS: TestLogConfigNewConfig (0.00s) === RUN TestLogConfigModeFile --- PASS: TestLogConfigModeFile (0.01s) === RUN Test_loadMailerFrom === RUN Test_loadMailerFrom/smtp.mydomain.test 2026/09/06 06:40:37 modules/setting/mailer.go:86:loadMailerFrom() [E] Deprecation: config option `[mailer].HOST` present, please use `[mailer].SMTP_ADDR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:37 modules/setting/mailer.go:194:loadMailerFrom() [E] unable to infer unspecified mailer.PROTOCOL from mailer.SMTP_PORT = "", assume using smtps 2026/09/06 06:40:37 modules/setting/mailer.go:296:tryResolveAddr() [W] could not look up mailer.SMTP_ADDR: lookup smtp.mydomain.test on 172.16.32.1:53: no such host 2026/09/06 06:40:37 modules/setting/mailer.go:234:loadMailerFrom() [E] no mailer.FROM provided, email system may not work. === RUN Test_loadMailerFrom/smtp.mydomain.test:123 2026/09/06 06:40:37 modules/setting/mailer.go:86:loadMailerFrom() [E] Deprecation: config option `[mailer].HOST` present, please use `[mailer].SMTP_ADDR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:37 modules/setting/mailer.go:194:loadMailerFrom() [E] unable to infer unspecified mailer.PROTOCOL from mailer.SMTP_PORT = "123", assume using smtps === RUN Test_loadMailerFrom/:123 --- PASS: Test_loadMailerFrom (0.02s) --- PASS: Test_loadMailerFrom/smtp.mydomain.test (0.02s) --- PASS: Test_loadMailerFrom/smtp.mydomain.test:123 (0.01s) --- PASS: Test_loadMailerFrom/:123 (0.00s) === RUN TestLoadSettingsForInstallMailServiceFlags 2026/09/06 06:40:37 modules/setting/mailer.go:296:tryResolveAddr() [W] could not look up mailer.SMTP_ADDR: lookup smtp.mydomain.test on 172.16.32.1:53: no such host 2026/09/06 06:40:37 modules/setting/mailer.go:234:loadMailerFrom() [E] no mailer.FROM provided, email system may not work. 2026/09/06 06:40:37 modules/setting/mailer.go:86:loadMailerFrom() [E] Deprecation: config option `[mailer].HOST` present, please use `[mailer].SMTP_ADDR` instead because this fallback will be/has been removed in v1.19.0 2026/09/06 06:40:37 modules/setting/mailer.go:194:loadMailerFrom() [E] unable to infer unspecified mailer.PROTOCOL from mailer.SMTP_PORT = "123", assume using smtps 2026/09/06 06:40:37 modules/setting/mailer.go:234:loadMailerFrom() [E] no mailer.FROM provided, email system may not work. --- PASS: TestLoadSettingsForInstallMailServiceFlags (0.00s) === RUN TestLoadMarkup === RUN TestLoadMarkup/Math === RUN TestLoadMarkup/Render --- PASS: TestLoadMarkup (0.00s) --- PASS: TestLoadMarkup/Math (0.00s) --- PASS: TestLoadMarkup/Render (0.00s) === RUN TestGetGeneralSigningSecret --- PASS: TestGetGeneralSigningSecret (0.00s) === RUN TestGetGeneralSigningSecretSave --- PASS: TestGetGeneralSigningSecretSave (0.00s) === RUN TestOauth2DefaultApplications --- PASS: TestOauth2DefaultApplications (0.00s) === RUN TestMustBytes --- PASS: TestMustBytes (0.00s) === RUN Test_getStorageInheritNameSectionTypeForPackages --- PASS: Test_getStorageInheritNameSectionTypeForPackages (0.00s) === RUN Test_PackageStorage1 --- PASS: Test_PackageStorage1 (0.00s) === RUN Test_PackageStorage2 --- PASS: Test_PackageStorage2 (0.00s) === RUN Test_PackageStorage3 --- PASS: Test_PackageStorage3 (0.00s) === RUN Test_PackageStorage4 --- PASS: Test_PackageStorage4 (0.00s) === RUN TestInitWorkPathAndCommonConfig === RUN TestInitWorkPathAndCommonConfig/Default === RUN TestInitWorkPathAndCommonConfig/WorkDir(env) === RUN TestInitWorkPathAndCommonConfig/WorkDir(env,arg) === RUN TestInitWorkPathAndCommonConfig/CustomPath(env) === RUN TestInitWorkPathAndCommonConfig/CustomPath(env,arg) 2026/09/06 06:40:37 modules/setting/path.go:152:InitWorkPathAndCfgProvider.3() [E] --custom-path must be absolute path === RUN TestInitWorkPathAndCommonConfig/CustomConf === RUN TestInitWorkPathAndCommonConfig/CustomConfOverrideWorkPath === RUN TestInitWorkPathAndCommonConfig/Builtin --- PASS: TestInitWorkPathAndCommonConfig (0.04s) --- PASS: TestInitWorkPathAndCommonConfig/Default (0.01s) --- PASS: TestInitWorkPathAndCommonConfig/WorkDir(env) (0.00s) --- PASS: TestInitWorkPathAndCommonConfig/WorkDir(env,arg) (0.00s) --- PASS: TestInitWorkPathAndCommonConfig/CustomPath(env) (0.00s) --- PASS: TestInitWorkPathAndCommonConfig/CustomPath(env,arg) (0.00s) --- PASS: TestInitWorkPathAndCommonConfig/CustomConf (0.00s) --- PASS: TestInitWorkPathAndCommonConfig/CustomConfOverrideWorkPath (0.01s) --- PASS: TestInitWorkPathAndCommonConfig/Builtin (0.02s) === RUN Test_getStorageInheritNameSectionTypeForRepoArchive --- PASS: Test_getStorageInheritNameSectionTypeForRepoArchive (0.00s) === RUN Test_RepoArchiveStorage --- PASS: Test_RepoArchiveStorage (0.00s) === RUN TestLoadRepositoryCreationLimits === RUN TestLoadRepositoryCreationLimits/ShortcutPropagatesToBoth === RUN TestLoadRepositoryCreationLimits/PerTypeKeysOverrideShortcut === RUN TestLoadRepositoryCreationLimits/PartialOverrideOtherInheritsShortcut === RUN TestLoadRepositoryCreationLimits/NoKeyDefaultsToNoLimit --- PASS: TestLoadRepositoryCreationLimits (0.01s) --- PASS: TestLoadRepositoryCreationLimits/ShortcutPropagatesToBoth (0.00s) --- PASS: TestLoadRepositoryCreationLimits/PerTypeKeysOverrideShortcut (0.00s) --- PASS: TestLoadRepositoryCreationLimits/PartialOverrideOtherInheritsShortcut (0.00s) --- PASS: TestLoadRepositoryCreationLimits/NoKeyDefaultsToNoLimit (0.00s) === RUN TestLoadSecurityFrom --- PASS: TestLoadSecurityFrom (0.00s) === RUN TestLoadServices --- PASS: TestLoadServices (0.00s) === RUN TestLoadServiceVisibilityModes 2026/09/06 06:40:37 modules/setting/service.go:164:loadServiceFrom() [E] Deprecation: config option `[service].EMAIL_DOMAIN_WHITELIST` present, please use `[service].EMAIL_DOMAIN_ALLOWLIST` instead because this fallback will be/has been removed in 1.21 === RUN TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_public_ALLOWED_USER_VISIBILITY_MODES_=_public,limited,private_ === RUN TestLoadServiceVisibilityModes/___[service]___DEFAULT_USER_VISIBILITY_=_public___ === RUN TestLoadServiceVisibilityModes/___[service]___DEFAULT_USER_VISIBILITY_=_limited___ === RUN TestLoadServiceVisibilityModes/_[service]_ALLOWED_USER_VISIBILITY_MODES_=_public,limited,private_ === RUN TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_public_ALLOWED_USER_VISIBILITY_MODES_=_limited,private_ === RUN TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_my_type_ALLOWED_USER_VISIBILITY_MODES_=_limited,private_ 2026/09/06 06:40:37 modules/setting/service.go:243:loadServiceFrom() [W] DEFAULT_USER_VISIBILITY public is wrong or not in ALLOWED_USER_VISIBILITY_MODES, using first allowed === RUN TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_public_ALLOWED_USER_VISIBILITY_MODES_=_public,_limit,_privated_ --- PASS: TestLoadServiceVisibilityModes (0.00s) --- PASS: TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_public_ALLOWED_USER_VISIBILITY_MODES_=_public,limited,private_ (0.00s) --- PASS: TestLoadServiceVisibilityModes/___[service]___DEFAULT_USER_VISIBILITY_=_public___ (0.00s) --- PASS: TestLoadServiceVisibilityModes/___[service]___DEFAULT_USER_VISIBILITY_=_limited___ (0.00s) --- PASS: TestLoadServiceVisibilityModes/_[service]_ALLOWED_USER_VISIBILITY_MODES_=_public,limited,private_ (0.00s) --- PASS: TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_public_ALLOWED_USER_VISIBILITY_MODES_=_limited,private_ (0.00s) --- PASS: TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_my_type_ALLOWED_USER_VISIBILITY_MODES_=_limited,private_ (0.00s) --- PASS: TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_public_ALLOWED_USER_VISIBILITY_MODES_=_public,_limit,_privated_ (0.00s) === RUN TestLoadServiceRequireSignInView --- PASS: TestLoadServiceRequireSignInView (0.00s) === RUN Test_getStorageMultipleName --- PASS: Test_getStorageMultipleName (0.00s) === RUN Test_getStorageUseOtherNameAsType --- PASS: Test_getStorageUseOtherNameAsType (0.00s) 2026/09/06 06:40:37 modules/setting/service.go:243:loadServiceFrom() [W] DEFAULT_USER_VISIBILITY my_type is wrong or not in ALLOWED_USER_VISIBILITY_MODES, using first allowed 2026/09/06 06:40:37 modules/setting/service.go:229:loadServiceFrom() [W] ALLOWED_USER_VISIBILITY_MODES limit is unsupported 2026/09/06 06:40:37 modules/setting/service.go:229:loadServiceFrom() [W] ALLOWED_USER_VISIBILITY_MODES privated is unsupported === RUN Test_getStorageInheritStorageType --- PASS: Test_getStorageInheritStorageType (0.00s) === RUN Test_getStorageInheritStorageTypeAzureBlob --- PASS: Test_getStorageInheritStorageTypeAzureBlob (0.00s) === RUN Test_getStorageInheritStorageTypeLocal --- PASS: Test_getStorageInheritStorageTypeLocal (0.00s) === RUN Test_getStorageInheritStorageTypeLocalPath --- PASS: Test_getStorageInheritStorageTypeLocalPath (0.00s) === RUN Test_getStorageInheritStorageTypeLocalRelativePath --- PASS: Test_getStorageInheritStorageTypeLocalRelativePath (0.00s) === RUN Test_getStorageInheritStorageTypeLocalPathOverride --- PASS: Test_getStorageInheritStorageTypeLocalPathOverride (0.00s) === RUN Test_getStorageInheritStorageTypeLocalPathOverrideEmpty --- PASS: Test_getStorageInheritStorageTypeLocalPathOverrideEmpty (0.00s) === RUN Test_getStorageInheritStorageTypeLocalRelativePathOverride --- PASS: Test_getStorageInheritStorageTypeLocalRelativePathOverride (0.00s) === RUN Test_getStorageInheritStorageTypeLocalPathOverride3 --- PASS: Test_getStorageInheritStorageTypeLocalPathOverride3 (0.00s) === RUN Test_getStorageInheritStorageTypeLocalPathOverride3_5 --- PASS: Test_getStorageInheritStorageTypeLocalPathOverride3_5 (0.00s) === RUN Test_getStorageInheritStorageTypeLocalPathOverride4 --- PASS: Test_getStorageInheritStorageTypeLocalPathOverride4 (0.00s) === RUN Test_getStorageInheritStorageTypeLocalPathOverride5 --- PASS: Test_getStorageInheritStorageTypeLocalPathOverride5 (0.00s) === RUN Test_getStorageInheritStorageTypeLocalPathOverride72 --- PASS: Test_getStorageInheritStorageTypeLocalPathOverride72 (0.00s) === RUN Test_getStorageConfiguration20 --- PASS: Test_getStorageConfiguration20 (0.00s) === RUN Test_getStorageConfiguration21 --- PASS: Test_getStorageConfiguration21 (0.00s) === RUN Test_getStorageConfiguration22 --- PASS: Test_getStorageConfiguration22 (0.00s) === RUN Test_getStorageConfiguration23 --- PASS: Test_getStorageConfiguration23 (0.00s) === RUN Test_getStorageConfiguration24 --- PASS: Test_getStorageConfiguration24 (0.00s) === RUN Test_getStorageConfiguration25 --- PASS: Test_getStorageConfiguration25 (0.00s) === RUN Test_getStorageConfiguration26 --- PASS: Test_getStorageConfiguration26 (0.00s) === RUN Test_getStorageConfiguration27 --- PASS: Test_getStorageConfiguration27 (0.00s) === RUN Test_getStorageConfiguration28 --- PASS: Test_getStorageConfiguration28 (0.00s) === RUN Test_getStorageConfiguration29 --- PASS: Test_getStorageConfiguration29 (0.00s) === RUN Test_getStorageConfiguration30 --- PASS: Test_getStorageConfiguration30 (0.00s) === RUN Test_getStorageConfiguration31 --- PASS: Test_getStorageConfiguration31 (0.00s) PASS ok gitea.dev/modules/setting 0.129s ? gitea.dev/modules/setting/config [no test files] === RUN TestNewSitemap === RUN TestNewSitemap/empty === RUN TestNewSitemap/regular === RUN TestNewSitemap/without_lastmod === RUN TestNewSitemap/multiple === RUN TestNewSitemap/too_many_urls === RUN TestNewSitemap/too_big_file --- PASS: TestNewSitemap (0.25s) --- PASS: TestNewSitemap/empty (0.00s) --- PASS: TestNewSitemap/regular (0.00s) --- PASS: TestNewSitemap/without_lastmod (0.00s) --- PASS: TestNewSitemap/multiple (0.00s) --- PASS: TestNewSitemap/too_many_urls (0.01s) --- PASS: TestNewSitemap/too_big_file (0.22s) === RUN TestNewSitemapIndex === RUN TestNewSitemapIndex/empty === RUN TestNewSitemapIndex/regular === RUN TestNewSitemapIndex/without_lastmod === RUN TestNewSitemapIndex/multiple === RUN TestNewSitemapIndex/too_many_sitemaps === RUN TestNewSitemapIndex/too_big_file --- PASS: TestNewSitemapIndex (0.27s) --- PASS: TestNewSitemapIndex/empty (0.00s) --- PASS: TestNewSitemapIndex/regular (0.00s) --- PASS: TestNewSitemapIndex/without_lastmod (0.00s) --- PASS: TestNewSitemapIndex/multiple (0.00s) --- PASS: TestNewSitemapIndex/too_many_sitemaps (0.00s) --- PASS: TestNewSitemapIndex/too_big_file (0.25s) PASS ok gitea.dev/modules/sitemap 0.534s === RUN TestGenKeyPair === RUN TestGenKeyPair/Generate_gitea.rsa === RUN TestGenKeyPair/Generate_gitea.ed25519 === RUN TestGenKeyPair/Generate_gitea.ecdsa === RUN TestGenKeyPair/Generate_unknown_key_type --- PASS: TestGenKeyPair (2.71s) --- PASS: TestGenKeyPair/Generate_gitea.rsa (2.70s) --- PASS: TestGenKeyPair/Generate_gitea.ed25519 (0.01s) --- PASS: TestGenKeyPair/Generate_gitea.ecdsa (0.00s) --- PASS: TestGenKeyPair/Generate_unknown_key_type (0.00s) === RUN TestInitKeys --- PASS: TestInitKeys (3.01s) PASS ok gitea.dev/modules/ssh 6.195s === RUN TestAzureBlobStorage azureblob_test.go:18: skipping test because http://devstoreaccount1.azurite.local:10000 is not ready --- SKIP: TestAzureBlobStorage (0.01s) === RUN TestAzureBlobStoragePath --- PASS: TestAzureBlobStoragePath (0.00s) === RUN Test_azureBlobObject azureblob_test.go:69: skipping test because http://devstoreaccount1.azurite.local:10000 is not ready --- SKIP: Test_azureBlobObject (0.00s) === RUN Test_discardStorage === RUN Test_discardStorage/uninitialized_storage === RUN Test_discardStorage/empty --- PASS: Test_discardStorage (0.00s) --- PASS: Test_discardStorage/uninitialized_storage (0.00s) --- PASS: Test_discardStorage/empty (0.00s) === RUN TestBuildLocalPath === RUN TestBuildLocalPath/0/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 === RUN TestBuildLocalPath/../0/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 === RUN TestBuildLocalPath/0\a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 === RUN TestBuildLocalPath/a/../0/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 === RUN TestBuildLocalPath/a\..\0/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 --- PASS: TestBuildLocalPath (0.00s) --- PASS: TestBuildLocalPath/0/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 (0.00s) --- PASS: TestBuildLocalPath/../0/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 (0.00s) --- PASS: TestBuildLocalPath/0\a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 (0.00s) --- PASS: TestBuildLocalPath/a/../0/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 (0.00s) --- PASS: TestBuildLocalPath/a\..\0/a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a14 (0.00s) === RUN TestLocalStorageDelete 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /home/buildozer/aports/community/gitea/tmp/TestLocalStorageDelete3865495044/001 --- PASS: TestLocalStorageDelete (0.00s) === RUN TestLocalStorageIterator 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /home/buildozer/aports/community/gitea/tmp/TestLocalStorageIterator2691213671/001 --- PASS: TestLocalStorageIterator (0.01s) === RUN TestMinioStorage minio_test.go:18: skipping test because minio:9000 is not ready --- SKIP: TestMinioStorage (0.02s) === RUN TestMinioStoragePath --- PASS: TestMinioStoragePath (0.00s) === RUN TestS3StorageBadRequest minio_test.go:84: skipping test because minio:9000 is not ready --- SKIP: TestS3StorageBadRequest (0.00s) === RUN TestMinioCredentials === RUN TestMinioCredentials/Static_Credentials === RUN TestMinioCredentials/Chain === RUN TestMinioCredentials/Chain/EnvMinio === RUN TestMinioCredentials/Chain/EnvAWS === RUN TestMinioCredentials/Chain/FileMinio === RUN TestMinioCredentials/Chain/FileAWS === RUN TestMinioCredentials/Chain/IAM --- PASS: TestMinioCredentials (0.00s) --- PASS: TestMinioCredentials/Static_Credentials (0.00s) --- PASS: TestMinioCredentials/Chain (0.00s) --- PASS: TestMinioCredentials/Chain/EnvMinio (0.00s) --- PASS: TestMinioCredentials/Chain/EnvAWS (0.00s) --- PASS: TestMinioCredentials/Chain/FileMinio (0.00s) --- PASS: TestMinioCredentials/Chain/FileAWS (0.00s) --- PASS: TestMinioCredentials/Chain/IAM (0.00s) PASS ok gitea.dev/modules/storage 0.103s === RUN TestPullRequestPayloadSynchronizeBeforeAfter --- PASS: TestPullRequestPayloadSynchronizeBeforeAfter (0.00s) === RUN TestPullRequestPayloadNonSynchronizeOmitsBeforeAfter --- PASS: TestPullRequestPayloadNonSynchronizeOmitsBeforeAfter (0.00s) === RUN TestIssueTemplate_Type === RUN TestIssueTemplate_Type/.gitea/ISSUE_TEMPLATE/bug_report.yaml === RUN TestIssueTemplate_Type/.gitea/ISSUE_TEMPLATE/bug_report.md === RUN TestIssueTemplate_Type/.gitea/ISSUE_TEMPLATE/bug_report.txt === RUN TestIssueTemplate_Type/.gitea/ISSUE_TEMPLATE/config.yaml --- PASS: TestIssueTemplate_Type (0.00s) --- PASS: TestIssueTemplate_Type/.gitea/ISSUE_TEMPLATE/bug_report.yaml (0.00s) --- PASS: TestIssueTemplate_Type/.gitea/ISSUE_TEMPLATE/bug_report.md (0.00s) --- PASS: TestIssueTemplate_Type/.gitea/ISSUE_TEMPLATE/bug_report.txt (0.00s) --- PASS: TestIssueTemplate_Type/.gitea/ISSUE_TEMPLATE/config.yaml (0.00s) === RUN TestIssueTemplateStringSlice_UnmarshalYAML === RUN TestIssueTemplateStringSlice_UnmarshalYAML/array === RUN TestIssueTemplateStringSlice_UnmarshalYAML/string === RUN TestIssueTemplateStringSlice_UnmarshalYAML/empty === RUN TestIssueTemplateStringSlice_UnmarshalYAML/error --- PASS: TestIssueTemplateStringSlice_UnmarshalYAML (0.00s) --- PASS: TestIssueTemplateStringSlice_UnmarshalYAML/array (0.00s) --- PASS: TestIssueTemplateStringSlice_UnmarshalYAML/string (0.00s) --- PASS: TestIssueTemplateStringSlice_UnmarshalYAML/empty (0.00s) --- PASS: TestIssueTemplateStringSlice_UnmarshalYAML/error (0.00s) PASS ok gitea.dev/modules/structs 0.043s === RUN TestNormalize --- PASS: TestNormalize (0.00s) === RUN TestRenderHTMLCache === RUN TestRenderHTMLCache/CacheWithLimit --- PASS: TestRenderHTMLCache (0.00s) --- PASS: TestRenderHTMLCache/CacheWithLimit (0.00s) PASS ok gitea.dev/modules/svg 0.020s 2026/09/06 06:40:37 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2622513049/data/attachments 2026/09/06 06:40:37 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2622513049/data/avatars 2026/09/06 06:40:37 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2622513049/data/repo-avatars 2026/09/06 06:40:37 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2622513049/data/repo-archive 2026/09/06 06:40:37 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2622513049/data/packages 2026/09/06 06:40:37 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2622513049/data/actions_log 2026/09/06 06:40:37 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:37 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2622513049/data/actions_artifacts === RUN TestAppStateDB --- PASS: TestAppStateDB (0.01s) PASS ok gitea.dev/modules/system 0.701s ? gitea.dev/modules/tailmsg [no test files] === RUN TestTempDir === RUN TestTempDir/Create === RUN TestTempDir/Create/MkdirTempRandom === RUN TestTempDir/Create/CreateTempFileRandom === RUN TestTempDir/Create/RemoveOutDated === RUN TestTempDir/BaseNotExist --- PASS: TestTempDir (0.00s) --- PASS: TestTempDir/Create (0.00s) --- PASS: TestTempDir/Create/MkdirTempRandom (0.00s) --- PASS: TestTempDir/Create/CreateTempFileRandom (0.00s) --- PASS: TestTempDir/Create/RemoveOutDated (0.00s) --- PASS: TestTempDir/BaseNotExist (0.00s) PASS ok gitea.dev/modules/tempdir 0.010s === RUN TestSubjectBodySeparator --- PASS: TestSubjectBodySeparator (0.00s) === RUN TestSanitizeHTML --- PASS: TestSanitizeHTML (0.00s) === RUN TestTemplateIif --- PASS: TestTemplateIif (0.00s) === RUN TestTemplateEscape === RUN TestTemplateEscape/Golang_URL_Escape === RUN TestTemplateEscape/Golang_URL_No-escape === RUN TestTemplateEscape/QueryBuild === RUN TestTemplateEscape/HTMLFormat --- PASS: TestTemplateEscape (0.00s) --- PASS: TestTemplateEscape/Golang_URL_Escape (0.00s) --- PASS: TestTemplateEscape/Golang_URL_No-escape (0.00s) --- PASS: TestTemplateEscape/QueryBuild (0.00s) --- PASS: TestTemplateEscape/HTMLFormat (0.00s) === RUN TestQueryBuild === RUN TestQueryBuild/construct === RUN TestQueryBuild/replace === RUN TestQueryBuild/replace-& === RUN TestQueryBuild/delete === RUN TestQueryBuild/delete-& --- PASS: TestQueryBuild (0.00s) --- PASS: TestQueryBuild/construct (0.00s) --- PASS: TestQueryBuild/replace (0.00s) --- PASS: TestQueryBuild/replace-& (0.00s) --- PASS: TestQueryBuild/delete (0.00s) --- PASS: TestQueryBuild/delete-& (0.00s) === RUN TestQueryEscape --- PASS: TestQueryEscape (0.00s) === RUN TestPathEscape --- PASS: TestPathEscape (0.00s) === RUN TestExtractErrorLine --- PASS: TestExtractErrorLine (0.00s) === RUN TestHandleError --- PASS: TestHandleError (0.00s) === RUN TestDateTime --- PASS: TestDateTime (0.00s) === RUN TestTimeSince --- PASS: TestTimeSince (0.00s) === RUN TestCountFmt --- PASS: TestCountFmt (0.00s) === RUN TestRenderTimelineEventComment --- PASS: TestRenderTimelineEventComment (0.01s) === RUN TestRenderRepoComment === RUN TestRenderRepoComment/RenderCommitBody === RUN TestRenderRepoComment/RenderCommitBody/multiple_lines === RUN TestRenderRepoComment/RenderCommitBody/multiple_lines_with_leading_newlines === RUN TestRenderRepoComment/RenderCommitBody/multiple_lines_with_trailing_newlines 2026/09/06 06:40:37 .../renderhelper/commit_checker.go:48:(*commitChecker).IsCommitIDExisting() [E] unable to open repository: user13/repo11.git Error: no such file or directory === RUN TestRenderRepoComment/RenderCommitMessage === RUN TestRenderRepoComment/RenderCommitMessageLinkSubject === RUN TestRenderRepoComment/RenderCommitMessageLinkSubjectURLOnly === RUN TestRenderRepoComment/RenderCommitMessageLinkSubjectPartialURL === RUN TestRenderRepoComment/RenderIssueTitle 2026/09/06 06:40:37 .../renderhelper/commit_checker.go:48:(*commitChecker).IsCommitIDExisting() [E] unable to open repository: user13/repo11.git Error: no such file or directory --- PASS: TestRenderRepoComment (0.00s) --- PASS: TestRenderRepoComment/RenderCommitBody (0.00s) --- PASS: TestRenderRepoComment/RenderCommitBody/multiple_lines (0.00s) --- PASS: TestRenderRepoComment/RenderCommitBody/multiple_lines_with_leading_newlines (0.00s) --- PASS: TestRenderRepoComment/RenderCommitBody/multiple_lines_with_trailing_newlines (0.00s) --- PASS: TestRenderRepoComment/RenderCommitMessage (0.00s) --- PASS: TestRenderRepoComment/RenderCommitMessageLinkSubject (0.00s) --- PASS: TestRenderRepoComment/RenderCommitMessageLinkSubjectURLOnly (0.00s) --- PASS: TestRenderRepoComment/RenderCommitMessageLinkSubjectPartialURL (0.00s) --- PASS: TestRenderRepoComment/RenderIssueTitle (0.00s) === RUN TestRenderIssueTitleCodeSpan --- PASS: TestRenderIssueTitleCodeSpan (0.00s) === RUN TestRenderMarkdownToHtml --- PASS: TestRenderMarkdownToHtml (0.00s) === RUN TestRenderPackageMarkdown === RUN TestRenderPackageMarkdown/LinkedRepoWithDirectory === RUN TestRenderPackageMarkdown/LinkedRepoWithEmptyDirectory === RUN TestRenderPackageMarkdown/UnlinkedRepo --- PASS: TestRenderPackageMarkdown (0.00s) --- PASS: TestRenderPackageMarkdown/LinkedRepoWithDirectory (0.00s) --- PASS: TestRenderPackageMarkdown/LinkedRepoWithEmptyDirectory (0.00s) --- PASS: TestRenderPackageMarkdown/UnlinkedRepo (0.00s) === RUN TestRenderLabels --- PASS: TestRenderLabels (0.01s) === RUN TestUserMention --- PASS: TestUserMention (0.00s) === RUN TestAvatarStack === RUN TestAvatarStack/lone_author_renders_bare_name,_no_label === RUN TestAvatarStack/two_participants_use_and_label === RUN TestAvatarStack/three_participants_switch_to_N_people_label_with_tippy_popup === RUN TestAvatarStack/overflow_chip_renders_beyond_10_participants --- PASS: TestAvatarStack (0.00s) --- PASS: TestAvatarStack/lone_author_renders_bare_name,_no_label (0.00s) --- PASS: TestAvatarStack/two_participants_use_and_label (0.00s) --- PASS: TestAvatarStack/three_participants_switch_to_N_people_label_with_tippy_popup (0.00s) --- PASS: TestAvatarStack/overflow_chip_renders_beyond_10_participants (0.00s) === RUN TestDict --- PASS: TestDict (0.00s) === RUN TestUtils --- PASS: TestUtils (0.00s) PASS ok gitea.dev/modules/templates 0.195s === RUN TestEval --- PASS: TestEval (0.00s) PASS ok gitea.dev/modules/templates/eval 0.009s === RUN TestScopedTemplateSetFuncMap --- PASS: TestScopedTemplateSetFuncMap (0.40s) === RUN TestScopedTemplateSetEscape --- PASS: TestScopedTemplateSetEscape (0.00s) === RUN TestScopedTemplateSetUnsafe --- PASS: TestScopedTemplateSetUnsafe (0.00s) PASS ok gitea.dev/modules/templates/scopedtmpl 0.455s === RUN TestExpandVars === RUN TestExpandVars/{a} === RUN TestExpandVars/expand_{a},_{b}_and_{c},_with_non-var_{_}_{#} === RUN TestExpandVars/中文内容_{一},_{二}_和_{三}_中文结尾 === RUN TestExpandVars/expand_{{a},_{b}_and_{c} === RUN TestExpandVars/expand_}_{}_and_{ --- PASS: TestExpandVars (0.00s) --- PASS: TestExpandVars/{a} (0.00s) --- PASS: TestExpandVars/expand_{a},_{b}_and_{c},_with_non-var_{_}_{#} (0.00s) --- PASS: TestExpandVars/中文内容_{一},_{二}_和_{三}_中文结尾 (0.00s) --- PASS: TestExpandVars/expand_{{a},_{b}_and_{c} (0.00s) --- PASS: TestExpandVars/expand_}_{}_and_{ (0.00s) PASS ok gitea.dev/modules/templates/vars 0.006s === RUN TestLogChecker --- PASS: TestLogChecker (0.43s) PASS ok gitea.dev/modules/test 0.435s ? gitea.dev/modules/testlogger [no test files] === RUN TestTimeSincePro --- PASS: TestTimeSincePro (0.00s) === RUN TestMinutesToFriendly --- PASS: TestMinutesToFriendly (0.00s) PASS ok gitea.dev/modules/timeutil 0.050s === RUN TestPrettyNumber 2026/09/06 06:40:37 .../translation/translation.go:178:NewLocale() [E] Failed to parse language tag from name "nosuch": language: tag is not well-formed --- PASS: TestPrettyNumber (0.00s) PASS ok gitea.dev/modules/translation 0.017s === RUN TestLocaleStore --- PASS: TestLocaleStore (0.00s) === RUN TestLocaleStoreMoreSource --- PASS: TestLocaleStoreMoreSource (0.00s) === RUN TestLocaleWithTemplate --- PASS: TestLocaleWithTemplate (0.00s) PASS ok gitea.dev/modules/translation/i18n 0.025s === RUN TestHTTPClientHonorsProxy --- PASS: TestHTTPClientHonorsProxy (0.00s) PASS ok gitea.dev/modules/turnstile 0.034s === RUN TestDetectContentTypeLongerThanSniffLen --- PASS: TestDetectContentTypeLongerThanSniffLen (0.00s) === RUN TestIsTextFile --- PASS: TestIsTextFile (0.00s) === RUN TestIsSvgImage --- PASS: TestIsSvgImage (0.00s) === RUN TestIsPDF --- PASS: TestIsPDF (0.00s) === RUN TestIsVideo --- PASS: TestIsVideo (0.00s) === RUN TestIsAudio --- PASS: TestIsAudio (0.00s) === RUN TestDetectContentTypeOgg --- PASS: TestDetectContentTypeOgg (0.00s) === RUN TestDetectFileTypeBox --- PASS: TestDetectFileTypeBox (0.00s) === RUN TestDetectContentTypeAvif --- PASS: TestDetectContentTypeAvif (0.00s) === RUN TestDetectContentTypeIncorrectFont --- PASS: TestDetectContentTypeIncorrectFont (0.00s) PASS ok gitea.dev/modules/typesniffer 0.052s ? gitea.dev/modules/updatechecker [no test files] === RUN TestReadURI --- PASS: TestReadURI (0.00s) === RUN TestOpenWithClientValidatesRedirectTarget --- PASS: TestOpenWithClientValidatesRedirectTarget (0.00s) PASS ok gitea.dev/modules/uri 0.029s === RUN TestCurrentUsername --- PASS: TestCurrentUsername (0.00s) PASS ok gitea.dev/modules/user 0.010s === RUN Test_HexToRBGColor --- PASS: Test_HexToRBGColor (0.00s) === RUN Test_UseLightText --- PASS: Test_UseLightText (0.00s) === RUN TestDiffSliceBasic === RUN TestDiffSliceBasic/additions === RUN TestDiffSliceBasic/removals === RUN TestDiffSliceBasic/no_changes === RUN TestDiffSliceBasic/empty_slices === RUN TestDiffSliceBasic/overlapping_elements --- PASS: TestDiffSliceBasic (0.00s) --- PASS: TestDiffSliceBasic/additions (0.00s) --- PASS: TestDiffSliceBasic/removals (0.00s) --- PASS: TestDiffSliceBasic/no_changes (0.00s) --- PASS: TestDiffSliceBasic/empty_slices (0.00s) --- PASS: TestDiffSliceBasic/overlapping_elements (0.00s) === RUN TestDiffSliceOrderAndDuplicates --- PASS: TestDiffSliceOrderAndDuplicates (0.00s) === RUN TestDiffSliceDeduplicatesOutput === RUN TestDiffSliceDeduplicatesOutput/deduplicates_added === RUN TestDiffSliceDeduplicatesOutput/deduplicates_removed === RUN TestDiffSliceDeduplicatesOutput/deduplicates_both --- PASS: TestDiffSliceDeduplicatesOutput (0.00s) --- PASS: TestDiffSliceDeduplicatesOutput/deduplicates_added (0.00s) --- PASS: TestDiffSliceDeduplicatesOutput/deduplicates_removed (0.00s) --- PASS: TestDiffSliceDeduplicatesOutput/deduplicates_both (0.00s) === RUN TestErrorTranslatable --- PASS: TestErrorTranslatable (0.00s) === RUN TestApplyUmask --- PASS: TestApplyUmask (0.00s) === RUN TestReadWithLimit --- PASS: TestReadWithLimit (0.00s) === RUN TestKeygen --- PASS: TestKeygen (1.07s) === RUN TestSignUsingKeys --- PASS: TestSignUsingKeys (1.01s) === RUN TestCopyFile --- PASS: TestCopyFile (0.00s) === RUN TestAESGCM === PAUSE TestAESGCM === RUN TestGetMapValueOrDefault --- PASS: TestGetMapValueOrDefault (0.00s) === RUN TestPackAndUnpackData --- PASS: TestPackAndUnpackData (0.00s) === RUN TestPaginateSlice --- PASS: TestPaginateSlice (0.00s) === RUN TestFileURLToPath --- PASS: TestFileURLToPath (0.00s) === RUN TestMisc_IsReadmeFileName --- PASS: TestMisc_IsReadmeFileName (0.00s) === RUN TestCleanPath --- PASS: TestCleanPath (0.00s) === RUN TestListDirRecursively --- PASS: TestListDirRecursively (0.00s) === RUN TestReadWriteRegularPathFile === RUN TestReadWriteRegularPathFile/Read === RUN TestReadWriteRegularPathFile/Write --- PASS: TestReadWriteRegularPathFile (0.01s) --- PASS: TestReadWriteRegularPathFile/Read (0.00s) --- PASS: TestReadWriteRegularPathFile/Write (0.00s) === RUN TestCallerFuncName --- PASS: TestCallerFuncName (0.00s) === RUN TestSanitizeErrorCredentialURLs --- PASS: TestSanitizeErrorCredentialURLs (0.00s) === RUN TestSanitizeCredentialURLs --- PASS: TestSanitizeCredentialURLs (0.00s) === RUN TestSecToHours --- PASS: TestSecToHours (0.00s) === RUN TestShellEscape === RUN TestShellEscape/Simplest_case_-_nothing_to_escape === RUN TestShellEscape/Prefixed_tilde_-_with_normal_stuff_-_should_not_escape === RUN TestShellEscape/Typical_windows_path_with_spaces_-_should_get_doublequote_escaped === RUN TestShellEscape/Forward-slashed_windows_path_with_spaces_-_should_get_doublequote_escaped === RUN TestShellEscape/Prefixed_tilde_-_but_then_a_space_filled_path === RUN TestShellEscape/Bangs_are_unfortunately_not_predictable_so_need_to_be_singlequoted === RUN TestShellEscape/Newlines_are_just_irritating === RUN TestShellEscape/Similarly_we_should_nicely_handle_multiple_single_quotes_if_we_have_to_single-quote === RUN TestShellEscape/Double_quote_<_... === RUN TestShellEscape/Double_quote_>_... === RUN TestShellEscape/Double_quote_and_escape_$_... === RUN TestShellEscape/Double_quote_{... === RUN TestShellEscape/Double_quote_}... === RUN TestShellEscape/Double_quote_()... === RUN TestShellEscape/Double_quote_and_escape_`... === RUN TestShellEscape/Double_quotes_can_handle_a_number_of_things_without_having_to_escape_them_but_not_everything_... === RUN TestShellEscape/Single_quotes_don't_need_to_escape_except_for_'... --- PASS: TestShellEscape (0.00s) --- PASS: TestShellEscape/Simplest_case_-_nothing_to_escape (0.00s) --- PASS: TestShellEscape/Prefixed_tilde_-_with_normal_stuff_-_should_not_escape (0.00s) --- PASS: TestShellEscape/Typical_windows_path_with_spaces_-_should_get_doublequote_escaped (0.00s) --- PASS: TestShellEscape/Forward-slashed_windows_path_with_spaces_-_should_get_doublequote_escaped (0.00s) --- PASS: TestShellEscape/Prefixed_tilde_-_but_then_a_space_filled_path (0.00s) --- PASS: TestShellEscape/Bangs_are_unfortunately_not_predictable_so_need_to_be_singlequoted (0.00s) --- PASS: TestShellEscape/Newlines_are_just_irritating (0.00s) --- PASS: TestShellEscape/Similarly_we_should_nicely_handle_multiple_single_quotes_if_we_have_to_single-quote (0.00s) --- PASS: TestShellEscape/Double_quote_<_... (0.00s) --- PASS: TestShellEscape/Double_quote_>_... (0.00s) --- PASS: TestShellEscape/Double_quote_and_escape_$_... (0.00s) --- PASS: TestShellEscape/Double_quote_{... (0.00s) --- PASS: TestShellEscape/Double_quote_}... (0.00s) --- PASS: TestShellEscape/Double_quote_()... (0.00s) --- PASS: TestShellEscape/Double_quote_and_escape_`... (0.00s) --- PASS: TestShellEscape/Double_quotes_can_handle_a_number_of_things_without_having_to_escape_them_but_not_everything_... (0.00s) --- PASS: TestShellEscape/Single_quotes_don't_need_to_escape_except_for_'... (0.00s) === RUN TestSliceContainsString --- PASS: TestSliceContainsString (0.00s) === RUN TestSliceSortedEqual --- PASS: TestSliceSortedEqual (0.00s) === RUN TestSliceRemoveAll --- PASS: TestSliceRemoveAll (0.00s) === RUN TestToSnakeCase --- PASS: TestToSnakeCase (0.00s) === RUN TestSplitTrimSpace --- PASS: TestSplitTrimSpace (0.01s) === RUN TestOnceValue === RUN TestOnceValue/RepeatCall === RUN TestOnceValue/Panic --- PASS: TestOnceValue (0.01s) --- PASS: TestOnceValue/RepeatCall (0.00s) --- PASS: TestOnceValue/Panic (0.00s) === RUN TestTimeStr === RUN TestTimeStr/Parse === RUN TestTimeStr/Parse/1h === RUN TestTimeStr/Parse/1m === RUN TestTimeStr/Parse/1s === RUN TestTimeStr/Parse/1h_1m_1s === RUN TestTimeStr/Parse/1d1x === RUN TestTimeStr/Parse/1h_2x_3m === RUN TestTimeStr/Parse/1h_2m === RUN TestTimeStr/Parse/1h,1m === RUN TestTimeStr/String === RUN TestTimeStr/String/1h === RUN TestTimeStr/String/1m === RUN TestTimeStr/String/1s === RUN TestTimeStr/String/1h_1s --- PASS: TestTimeStr (0.00s) --- PASS: TestTimeStr/Parse (0.00s) --- PASS: TestTimeStr/Parse/1h (0.00s) --- PASS: TestTimeStr/Parse/1m (0.00s) --- PASS: TestTimeStr/Parse/1s (0.00s) --- PASS: TestTimeStr/Parse/1h_1m_1s (0.00s) --- PASS: TestTimeStr/Parse/1d1x (0.00s) --- PASS: TestTimeStr/Parse/1h_2x_3m (0.00s) --- PASS: TestTimeStr/Parse/1h_2m (0.00s) --- PASS: TestTimeStr/Parse/1h,1m (0.00s) --- PASS: TestTimeStr/String (0.00s) --- PASS: TestTimeStr/String/1h (0.00s) --- PASS: TestTimeStr/String/1m (0.00s) --- PASS: TestTimeStr/String/1s (0.00s) --- PASS: TestTimeStr/String/1h_1s (0.00s) === RUN TestDebounce --- PASS: TestDebounce (0.20s) === RUN TestEllipsisGuessDisplayWidth === RUN TestEllipsisGuessDisplayWidth/a === RUN TestEllipsisGuessDisplayWidth/é === RUN TestEllipsisGuessDisplayWidth/测 === RUN TestEllipsisGuessDisplayWidth/⚽ === RUN TestEllipsisGuessDisplayWidth/☁️ === RUN TestEllipsisGuessDisplayWidth/\u200b === RUN TestEllipsisGuessDisplayWidth/_ --- PASS: TestEllipsisGuessDisplayWidth (0.00s) --- PASS: TestEllipsisGuessDisplayWidth/a (0.00s) --- PASS: TestEllipsisGuessDisplayWidth/é (0.00s) --- PASS: TestEllipsisGuessDisplayWidth/测 (0.00s) --- PASS: TestEllipsisGuessDisplayWidth/⚽ (0.00s) --- PASS: TestEllipsisGuessDisplayWidth/☁️ (0.00s) --- PASS: TestEllipsisGuessDisplayWidth/\u200b (0.00s) --- PASS: TestEllipsisGuessDisplayWidth/_ (0.00s) === RUN TestEllipsisString === RUN TestEllipsisString/abcde(0) === RUN TestEllipsisString/abcde(1) === RUN TestEllipsisString/abcde(2) === RUN TestEllipsisString/abcde(3) === RUN TestEllipsisString/abcde(4) === RUN TestEllipsisString/abcde(5) === RUN TestEllipsisString/abcde(6) === RUN TestEllipsisString/abcde(7) === RUN TestEllipsisString/测试文本(0) === RUN TestEllipsisString/测试文本(1) === RUN TestEllipsisString/测试文本(2) === RUN TestEllipsisString/测试文本(3) === RUN TestEllipsisString/测试文本(4) === RUN TestEllipsisString/测试文本(5) === RUN TestEllipsisString/测试文本(6) === RUN TestEllipsisString/测试文本(7) === RUN TestEllipsisString/测试文本(8) === RUN TestEllipsisString/测试文本(9) === RUN TestEllipsisString/测试abc(6) === RUN TestEllipsisString/测试abc(7) === RUN TestEllipsisString/测试abc(8) === RUN TestEllipsisString/测abc试啊(7) === RUN TestEllipsisString/测abc试啊(8) === RUN TestEllipsisString/测abc试啊(9) === RUN TestEllipsisString/测abc试啊(10) === RUN TestEllipsisString/LongInput === RUN TestEllipsisString/InvalidUtf8 === RUN TestEllipsisString/InvalidUtf8/0 === RUN TestEllipsisString/InvalidUtf8/1 === RUN TestEllipsisString/InvalidUtf8/2 === RUN TestEllipsisString/InvalidUtf8/3 === RUN TestEllipsisString/InvalidUtf8/4 === RUN TestEllipsisString/InvalidUtf8/5 === RUN TestEllipsisString/InvalidUtf8/6 === RUN TestEllipsisString/InvalidUtf8/7 === RUN TestEllipsisString/IsLikelyEllipsisLeftPart --- PASS: TestEllipsisString (0.00s) --- PASS: TestEllipsisString/abcde(0) (0.00s) --- PASS: TestEllipsisString/abcde(1) (0.00s) --- PASS: TestEllipsisString/abcde(2) (0.00s) --- PASS: TestEllipsisString/abcde(3) (0.00s) --- PASS: TestEllipsisString/abcde(4) (0.00s) --- PASS: TestEllipsisString/abcde(5) (0.00s) --- PASS: TestEllipsisString/abcde(6) (0.00s) --- PASS: TestEllipsisString/abcde(7) (0.00s) --- PASS: TestEllipsisString/测试文本(0) (0.00s) --- PASS: TestEllipsisString/测试文本(1) (0.00s) --- PASS: TestEllipsisString/测试文本(2) (0.00s) --- PASS: TestEllipsisString/测试文本(3) (0.00s) --- PASS: TestEllipsisString/测试文本(4) (0.00s) --- PASS: TestEllipsisString/测试文本(5) (0.00s) --- PASS: TestEllipsisString/测试文本(6) (0.00s) --- PASS: TestEllipsisString/测试文本(7) (0.00s) --- PASS: TestEllipsisString/测试文本(8) (0.00s) --- PASS: TestEllipsisString/测试文本(9) (0.00s) --- PASS: TestEllipsisString/测试abc(6) (0.00s) --- PASS: TestEllipsisString/测试abc(7) (0.00s) --- PASS: TestEllipsisString/测试abc(8) (0.00s) --- PASS: TestEllipsisString/测abc试啊(7) (0.00s) --- PASS: TestEllipsisString/测abc试啊(8) (0.00s) --- PASS: TestEllipsisString/测abc试啊(9) (0.00s) --- PASS: TestEllipsisString/测abc试啊(10) (0.00s) --- PASS: TestEllipsisString/LongInput (0.00s) --- PASS: TestEllipsisString/InvalidUtf8 (0.00s) --- PASS: TestEllipsisString/InvalidUtf8/0 (0.00s) --- PASS: TestEllipsisString/InvalidUtf8/1 (0.00s) --- PASS: TestEllipsisString/InvalidUtf8/2 (0.00s) --- PASS: TestEllipsisString/InvalidUtf8/3 (0.00s) --- PASS: TestEllipsisString/InvalidUtf8/4 (0.00s) --- PASS: TestEllipsisString/InvalidUtf8/5 (0.00s) --- PASS: TestEllipsisString/InvalidUtf8/6 (0.00s) --- PASS: TestEllipsisString/InvalidUtf8/7 (0.00s) --- PASS: TestEllipsisString/IsLikelyEllipsisLeftPart (0.00s) === RUN TestTruncateRunes --- PASS: TestTruncateRunes (0.00s) === RUN TestIsEmptyString --- PASS: TestIsEmptyString (0.00s) === RUN Test_NormalizeEOL --- PASS: Test_NormalizeEOL (0.00s) === RUN Test_RandomInt --- PASS: Test_RandomInt (0.00s) === RUN Test_RandomString --- PASS: Test_RandomString (0.01s) === RUN Test_RandomBytes --- PASS: Test_RandomBytes (0.00s) === RUN TestToLowerASCII --- PASS: TestToLowerASCII (0.00s) === RUN TestToTitleCase --- PASS: TestToTitleCase (0.00s) === RUN TestNormalizeStringEOL --- PASS: TestNormalizeStringEOL (0.00s) === RUN TestOptionalArg --- PASS: TestOptionalArg (0.00s) === RUN TestPathEscapeSegments --- PASS: TestPathEscapeSegments (0.00s) === CONT TestAESGCM --- PASS: TestAESGCM (0.00s) PASS ok gitea.dev/modules/util 2.343s === RUN TestFileBackedBuffer --- PASS: TestFileBackedBuffer (0.00s) PASS ok gitea.dev/modules/util/filebuffer 0.008s === RUN TestCompressOldFile --- PASS: TestCompressOldFile (0.02s) PASS ok gitea.dev/modules/util/rotatingfilewriter 0.060s === RUN Test_GlobPatternValidation === RUN Test_GlobPatternValidation/Empty_glob_pattern === RUN Test_GlobPatternValidation/Valid_glob === RUN Test_GlobPatternValidation/Invalid_glob --- PASS: Test_GlobPatternValidation (0.00s) --- PASS: Test_GlobPatternValidation/Empty_glob_pattern (0.00s) --- PASS: Test_GlobPatternValidation/Valid_glob (0.00s) --- PASS: Test_GlobPatternValidation/Invalid_glob (0.00s) === RUN Test_IsValidURL === RUN Test_IsValidURL/Empty_URL === RUN Test_IsValidURL/Loopback_IPv4_URL === RUN Test_IsValidURL/Loopback_IPv6_URL === RUN Test_IsValidURL/Missing_semicolon_after_schema --- PASS: Test_IsValidURL (0.00s) --- PASS: Test_IsValidURL/Empty_URL (0.00s) --- PASS: Test_IsValidURL/Loopback_IPv4_URL (0.00s) --- PASS: Test_IsValidURL/Loopback_IPv6_URL (0.00s) --- PASS: Test_IsValidURL/Missing_semicolon_after_schema (0.00s) === RUN Test_IsValidExternalTrackerURLFormat === RUN Test_IsValidExternalTrackerURLFormat/Correct_external_tracker_URL_with_all_placeholders === RUN Test_IsValidExternalTrackerURLFormat/Local_external_tracker_URL_with_all_placeholders === RUN Test_IsValidExternalTrackerURLFormat/External_tracker_URL_with_typo_placeholder === RUN Test_IsValidExternalTrackerURLFormat/External_tracker_URL_with_typo_placeholder#01 === RUN Test_IsValidExternalTrackerURLFormat/External_tracker_URL_with_typo_placeholder#02 === RUN Test_IsValidExternalTrackerURLFormat/External_tracker_URL_missing_optional_placeholder === RUN Test_IsValidExternalTrackerURLFormat/External_tracker_URL_missing_optional_placeholder#01 === RUN Test_IsValidExternalTrackerURLFormat/External_tracker_URL_missing_optional_placeholder#02 === RUN Test_IsValidExternalTrackerURLFormat/External_tracker_URL_missing_optional_placeholder#03 === RUN Test_IsValidExternalTrackerURLFormat/External_tracker_URL_with_similar_placeholder_names_test --- PASS: Test_IsValidExternalTrackerURLFormat (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/Correct_external_tracker_URL_with_all_placeholders (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/Local_external_tracker_URL_with_all_placeholders (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/External_tracker_URL_with_typo_placeholder (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/External_tracker_URL_with_typo_placeholder#01 (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/External_tracker_URL_with_typo_placeholder#02 (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/External_tracker_URL_missing_optional_placeholder (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/External_tracker_URL_missing_optional_placeholder#01 (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/External_tracker_URL_missing_optional_placeholder#02 (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/External_tracker_URL_missing_optional_placeholder#03 (0.00s) --- PASS: Test_IsValidExternalTrackerURLFormat/External_tracker_URL_with_similar_placeholder_names_test (0.00s) === RUN TestIsValidUsername === RUN TestIsValidUsername/a === RUN TestIsValidUsername/abc === RUN TestIsValidUsername/0.b-c === RUN TestIsValidUsername/a.b-c_d === RUN TestIsValidUsername/#00 === RUN TestIsValidUsername/.abc === RUN TestIsValidUsername/abc. === RUN TestIsValidUsername/a..bc === RUN TestIsValidUsername/a...bc === RUN TestIsValidUsername/a.-bc === RUN TestIsValidUsername/a._bc === RUN TestIsValidUsername/a_-bc === RUN TestIsValidUsername/a/bc === RUN TestIsValidUsername/☁️ === RUN TestIsValidUsername/- === RUN TestIsValidUsername/--diff === RUN TestIsValidUsername/-im-here === RUN TestIsValidUsername/a_space --- PASS: TestIsValidUsername (0.00s) --- PASS: TestIsValidUsername/a (0.00s) --- PASS: TestIsValidUsername/abc (0.00s) --- PASS: TestIsValidUsername/0.b-c (0.00s) --- PASS: TestIsValidUsername/a.b-c_d (0.00s) --- PASS: TestIsValidUsername/#00 (0.00s) --- PASS: TestIsValidUsername/.abc (0.00s) --- PASS: TestIsValidUsername/abc. (0.00s) --- PASS: TestIsValidUsername/a..bc (0.00s) --- PASS: TestIsValidUsername/a...bc (0.00s) --- PASS: TestIsValidUsername/a.-bc (0.00s) --- PASS: TestIsValidUsername/a._bc (0.00s) --- PASS: TestIsValidUsername/a_-bc (0.00s) --- PASS: TestIsValidUsername/a/bc (0.00s) --- PASS: TestIsValidUsername/☁️ (0.00s) --- PASS: TestIsValidUsername/- (0.00s) --- PASS: TestIsValidUsername/--diff (0.00s) --- PASS: TestIsValidUsername/-im-here (0.00s) --- PASS: TestIsValidUsername/a_space (0.00s) === RUN TestIsValidBadgeSlug === RUN TestIsValidBadgeSlug/badge-1 === RUN TestIsValidBadgeSlug/badge.slug === RUN TestIsValidBadgeSlug/new === RUN TestIsValidBadgeSlug/Badge_1 === RUN TestIsValidBadgeSlug/a..b === RUN TestIsValidBadgeSlug/a/b === RUN TestIsValidBadgeSlug/Awesome! === RUN TestIsValidBadgeSlug/Emoji_💯 --- PASS: TestIsValidBadgeSlug (0.00s) --- PASS: TestIsValidBadgeSlug/badge-1 (0.00s) --- PASS: TestIsValidBadgeSlug/badge.slug (0.00s) --- PASS: TestIsValidBadgeSlug/new (0.00s) --- PASS: TestIsValidBadgeSlug/Badge_1 (0.00s) --- PASS: TestIsValidBadgeSlug/a..b (0.00s) --- PASS: TestIsValidBadgeSlug/a/b (0.00s) --- PASS: TestIsValidBadgeSlug/Awesome! (0.00s) --- PASS: TestIsValidBadgeSlug/Emoji_💯 (0.00s) === RUN Test_GitRefNameValidation === RUN Test_GitRefNameValidation/Reference_name_contains_only_characters === RUN Test_GitRefNameValidation/Reference_name_contains_single_slash === RUN Test_GitRefNameValidation/Reference_name_has_allowed_special_characters === RUN Test_GitRefNameValidation/Reference_name_contains_backslash === RUN Test_GitRefNameValidation/Reference_name_starts_with_dot === RUN Test_GitRefNameValidation/Reference_name_ends_with_dot === RUN Test_GitRefNameValidation/Reference_name_starts_with_slash === RUN Test_GitRefNameValidation/Reference_name_ends_with_slash === RUN Test_GitRefNameValidation/Reference_name_ends_with_.lock === RUN Test_GitRefNameValidation/Reference_name_contains_multiple_consecutive_dots === RUN Test_GitRefNameValidation/Reference_name_contains_multiple_consecutive_slashes === RUN Test_GitRefNameValidation/Reference_name_is_single_@ === RUN Test_GitRefNameValidation/Reference_name_has_@{ === RUN Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_~ === RUN Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_* === RUN Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_? === RUN Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_^ === RUN Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_: === RUN Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_(whitespace) === RUN Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_[ --- PASS: Test_GitRefNameValidation (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_contains_only_characters (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_contains_single_slash (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_allowed_special_characters (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_contains_backslash (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_starts_with_dot (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_ends_with_dot (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_starts_with_slash (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_ends_with_slash (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_ends_with_.lock (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_contains_multiple_consecutive_dots (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_contains_multiple_consecutive_slashes (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_is_single_@ (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_@{ (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_~ (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_* (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_? (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_^ (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_: (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_(whitespace) (0.00s) --- PASS: Test_GitRefNameValidation/Reference_name_has_unallowed_special_character_[ (0.00s) === RUN Test_RegexPatternValidation === RUN Test_RegexPatternValidation/Empty_regex_pattern === RUN Test_RegexPatternValidation/Valid_regex === RUN Test_RegexPatternValidation/Invalid_regex --- PASS: Test_RegexPatternValidation (0.00s) --- PASS: Test_RegexPatternValidation/Empty_regex_pattern (0.00s) --- PASS: Test_RegexPatternValidation/Valid_regex (0.00s) --- PASS: Test_RegexPatternValidation/Invalid_regex (0.00s) === RUN Test_ValidURLValidation === RUN Test_ValidURLValidation/Empty_URL === RUN Test_ValidURLValidation/URL_without_port === RUN Test_ValidURLValidation/URL_with_port === RUN Test_ValidURLValidation/URL_with_IPv6_address_without_port === RUN Test_ValidURLValidation/URL_with_IPv6_address_with_port === RUN Test_ValidURLValidation/Invalid_URL === RUN Test_ValidURLValidation/Invalid_schema === RUN Test_ValidURLValidation/Invalid_port === RUN Test_ValidURLValidation/Invalid_port_with_IPv6_address --- PASS: Test_ValidURLValidation (0.00s) --- PASS: Test_ValidURLValidation/Empty_URL (0.00s) --- PASS: Test_ValidURLValidation/URL_without_port (0.00s) --- PASS: Test_ValidURLValidation/URL_with_port (0.00s) --- PASS: Test_ValidURLValidation/URL_with_IPv6_address_without_port (0.00s) --- PASS: Test_ValidURLValidation/URL_with_IPv6_address_with_port (0.00s) --- PASS: Test_ValidURLValidation/Invalid_URL (0.00s) --- PASS: Test_ValidURLValidation/Invalid_schema (0.00s) --- PASS: Test_ValidURLValidation/Invalid_port (0.00s) --- PASS: Test_ValidURLValidation/Invalid_port_with_IPv6_address (0.00s) PASS ok gitea.dev/modules/validation 0.059s === RUN TestRouteMock --- PASS: TestRouteMock (0.00s) === RUN TestPathProcessor --- PASS: TestPathProcessor (0.00s) === RUN TestRouter === RUN TestRouter/RootRouter === RUN TestRouter/RootRouter/GET_/the-user/the-repo/other === RUN TestRouter/RootRouter/GET_/the-user/the-repo/pulls === RUN TestRouter/RootRouter/GET_/the-user/the-repo/issues/123 === RUN TestRouter/RootRouter/GET_/the-user/the-repo/issues/123?stop=hijack === RUN TestRouter/RootRouter/POST_/the-user/the-repo/issues/123/update === RUN TestRouter/Sub_Router === RUN TestRouter/Sub_Router/GET_/api/v1/other === RUN TestRouter/Sub_Router/GET_/api/v1/repos/the-user/the-repo/branches === RUN TestRouter/Sub_Router/POST_/api/v1/repos/the-user/the-repo/branches === RUN TestRouter/Sub_Router/GET_/api/v1/repos/the-user/the-repo/branches/master === RUN TestRouter/Sub_Router/PATCH_/api/v1/repos/the-user/the-repo/branches/master === RUN TestRouter/Sub_Router/DELETE_/api/v1/repos/the-user/the-repo/branches/master === RUN TestRouter/MatchPath === RUN TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/fn === RUN TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1%2fd2/fn === RUN TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/000 === RUN TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/fn?stop=s1 === RUN TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/fn?stop=s2 === RUN TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/fn?stop=s3 --- PASS: TestRouter (0.00s) --- PASS: TestRouter/RootRouter (0.00s) --- PASS: TestRouter/RootRouter/GET_/the-user/the-repo/other (0.00s) --- PASS: TestRouter/RootRouter/GET_/the-user/the-repo/pulls (0.00s) --- PASS: TestRouter/RootRouter/GET_/the-user/the-repo/issues/123 (0.00s) --- PASS: TestRouter/RootRouter/GET_/the-user/the-repo/issues/123?stop=hijack (0.00s) --- PASS: TestRouter/RootRouter/POST_/the-user/the-repo/issues/123/update (0.00s) --- PASS: TestRouter/Sub_Router (0.00s) --- PASS: TestRouter/Sub_Router/GET_/api/v1/other (0.00s) --- PASS: TestRouter/Sub_Router/GET_/api/v1/repos/the-user/the-repo/branches (0.00s) --- PASS: TestRouter/Sub_Router/POST_/api/v1/repos/the-user/the-repo/branches (0.00s) --- PASS: TestRouter/Sub_Router/GET_/api/v1/repos/the-user/the-repo/branches/master (0.00s) --- PASS: TestRouter/Sub_Router/PATCH_/api/v1/repos/the-user/the-repo/branches/master (0.00s) --- PASS: TestRouter/Sub_Router/DELETE_/api/v1/repos/the-user/the-repo/branches/master (0.00s) --- PASS: TestRouter/MatchPath (0.00s) --- PASS: TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/fn (0.00s) --- PASS: TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1%2fd2/fn (0.00s) --- PASS: TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/000 (0.00s) --- PASS: TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/fn?stop=s1 (0.00s) --- PASS: TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/fn?stop=s2 (0.00s) --- PASS: TestRouter/MatchPath/GET_/api/v1/repos/the-user/the-repo/branches/d1/d2/fn?stop=s3 (0.00s) === RUN TestRouteNormalizePath --- PASS: TestRouteNormalizePath (0.00s) === RUN TestPreMiddlewareProvider --- PASS: TestPreMiddlewareProvider (0.00s) PASS ok gitea.dev/modules/web 0.044s === RUN TestParseAcceptLanguage --- PASS: TestParseAcceptLanguage (0.00s) PASS ok gitea.dev/modules/web/middleware 0.034s === RUN Test_shortenFilename === RUN Test_shortenFilename/shortenFilename('gitea.dev/routers/common/logger_context.go') === RUN Test_shortenFilename/shortenFilename('common/logger_context.go') === RUN Test_shortenFilename/shortenFilename('logger_context.go') === RUN Test_shortenFilename/shortenFilename('') --- PASS: Test_shortenFilename (0.00s) --- PASS: Test_shortenFilename/shortenFilename('gitea.dev/routers/common/logger_context.go') (0.00s) --- PASS: Test_shortenFilename/shortenFilename('common/logger_context.go') (0.00s) --- PASS: Test_shortenFilename/shortenFilename('logger_context.go') (0.00s) --- PASS: Test_shortenFilename/shortenFilename('') (0.00s) === RUN Test_trimAnonymousFunctionSuffix === RUN Test_trimAnonymousFunctionSuffix/notAnonymous === RUN Test_trimAnonymousFunctionSuffix/anonymous.func1 === RUN Test_trimAnonymousFunctionSuffix/notAnonymous.funca === RUN Test_trimAnonymousFunctionSuffix/anonymous.func100 === RUN Test_trimAnonymousFunctionSuffix/anonymous.func100.func6 --- PASS: Test_trimAnonymousFunctionSuffix (0.00s) --- PASS: Test_trimAnonymousFunctionSuffix/notAnonymous (0.00s) --- PASS: Test_trimAnonymousFunctionSuffix/anonymous.func1 (0.00s) --- PASS: Test_trimAnonymousFunctionSuffix/notAnonymous.funca (0.00s) --- PASS: Test_trimAnonymousFunctionSuffix/anonymous.func100 (0.00s) --- PASS: Test_trimAnonymousFunctionSuffix/anonymous.func100.func6 (0.00s) PASS ok gitea.dev/modules/web/routing 0.009s ? gitea.dev/modules/web/types [no test files] ? gitea.dev/modules/webhook [no test files] === RUN TestWriterReader === RUN TestWriterReader/regular zstd_test.go:32: original size: 1000000, compressed size: 243035, rate: 24.30% === RUN TestWriterReader/with_options zstd_test.go:53: original size: 1000000, compressed size: 213406, rate: 21.34% --- PASS: TestWriterReader (0.81s) --- PASS: TestWriterReader/regular (0.25s) --- PASS: TestWriterReader/with_options (0.50s) === RUN TestSeekableWriterReader === RUN TestSeekableWriterReader/regular zstd_test.go:82: original size: 2000000, compressed size: 481178, rate: 24.06% === RUN TestSeekableWriterReader/seek_read zstd_test.go:105: original size: 2000000, compressed size: 481178, rate: 24.06% === RUN TestSeekableWriterReader/tidy_data zstd_test.go:146: original size: 1000, compressed size: 499, rate: 49.90% === RUN TestSeekableWriterReader/tidy_block zstd_test.go:169: original size: 2000000, compressed size: 2300242, rate: 115.01% === RUN TestSeekableWriterReader/compatible_reader zstd_test.go:195: original size: 2000000, compressed size: 481178, rate: 24.06% === RUN TestSeekableWriterReader/wrong_reader zstd_test.go:219: original size: 2000000, compressed size: 442449, rate: 22.12% --- PASS: TestSeekableWriterReader (2.18s) --- PASS: TestSeekableWriterReader/regular (0.39s) --- PASS: TestSeekableWriterReader/seek_read (0.24s) --- PASS: TestSeekableWriterReader/tidy_data (0.04s) --- PASS: TestSeekableWriterReader/tidy_block (1.14s) --- PASS: TestSeekableWriterReader/compatible_reader (0.19s) --- PASS: TestSeekableWriterReader/wrong_reader (0.07s) PASS ok gitea.dev/modules/zstd 3.016s ? gitea.dev/routers [no test files] ? gitea.dev/routers/api/actions [no test files] === RUN TestService === PAUSE TestService === CONT TestService === RUN TestService/ping_request --- PASS: TestService (0.03s) --- PASS: TestService/ping_request (0.03s) PASS ok gitea.dev/routers/api/actions/ping 0.049s === RUN TestApplyDeclareRequestToRunnerAdvertisedCapabilityEnablesCancelling --- PASS: TestApplyDeclareRequestToRunnerAdvertisedCapabilityEnablesCancelling (0.00s) === RUN TestApplyDeclareRequestToRunnerMissingCapabilityDisablesCancelling --- PASS: TestApplyDeclareRequestToRunnerMissingCapabilityDisablesCancelling (0.00s) === RUN TestApplyDeclareRequestToRunnerUnchangedCapabilityOmitsColumn --- PASS: TestApplyDeclareRequestToRunnerUnchangedCapabilityOmitsColumn (0.00s) PASS ok gitea.dev/routers/api/actions/runner 0.142s ? gitea.dev/routers/api/packages [no test files] ? gitea.dev/routers/api/packages/alpine [no test files] ? gitea.dev/routers/api/packages/arch [no test files] ? gitea.dev/routers/api/packages/cargo [no test files] ? gitea.dev/routers/api/packages/chef [no test files] ? gitea.dev/routers/api/packages/composer [no test files] ? gitea.dev/routers/api/packages/conan [no test files] ? gitea.dev/routers/api/packages/conda [no test files] ? gitea.dev/routers/api/packages/container [no test files] ? gitea.dev/routers/api/packages/cran [no test files] ? gitea.dev/routers/api/packages/debian [no test files] === RUN TestValidatePackageName --- PASS: TestValidatePackageName (0.00s) === RUN TestValidateFileName --- PASS: TestValidateFileName (0.00s) PASS ok gitea.dev/routers/api/packages/generic 0.291s ? gitea.dev/routers/api/packages/goproxy [no test files] ? gitea.dev/routers/api/packages/helm [no test files] ? gitea.dev/routers/api/packages/helper [no test files] === RUN TestChecksumSizeAllowed --- PASS: TestChecksumSizeAllowed (0.00s) PASS ok gitea.dev/routers/api/packages/maven 0.460s === RUN TestCreatePackageMetadataResponse --- PASS: TestCreatePackageMetadataResponse (0.00s) PASS ok gitea.dev/routers/api/packages/npm 0.663s ? gitea.dev/routers/api/packages/nuget [no test files] ? gitea.dev/routers/api/packages/pub [no test files] === RUN TestIsValidNameAndVersion --- PASS: TestIsValidNameAndVersion (0.00s) === RUN TestNormalizeLabel --- PASS: TestNormalizeLabel (0.00s) PASS ok gitea.dev/routers/api/packages/pypi 0.147s ? gitea.dev/routers/api/packages/rpm [no test files] === RUN TestWritePackageVersion --- PASS: TestWritePackageVersion (0.00s) PASS ok gitea.dev/routers/api/packages/rubygems 0.441s ? gitea.dev/routers/api/packages/swift [no test files] === RUN TestValidatePackageName --- PASS: TestValidatePackageName (0.00s) PASS ok gitea.dev/routers/api/packages/terraform 0.163s ? gitea.dev/routers/api/packages/vagrant [no test files] ? gitea.dev/routers/api/v1 [no test files] ? gitea.dev/routers/api/v1/activitypub [no test files] ? gitea.dev/routers/api/v1/admin [no test files] === RUN TestAPI_RenderGFM --- PASS: TestAPI_RenderGFM (0.07s) === RUN TestAPI_RenderSimple === RUN TestAPI_RenderSimple/markdown === RUN TestAPI_RenderSimple/markdown-raw --- PASS: TestAPI_RenderSimple (0.01s) --- PASS: TestAPI_RenderSimple/markdown (0.00s) --- PASS: TestAPI_RenderSimple/markdown-raw (0.01s) PASS ok gitea.dev/routers/api/v1/misc 0.389s ? gitea.dev/routers/api/v1/notify [no test files] ? gitea.dev/routers/api/v1/org [no test files] ? gitea.dev/routers/api/v1/packages [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3081357506/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3081357506/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3081357506/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3081357506/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3081357506/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3081357506/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3081357506/data/actions_artifacts === RUN TestTestHook --- PASS: TestTestHook (0.40s) === RUN TestPushMirrorSync 2026/09/06 06:40:40 .../mirror/mirror_push.go:133:runPushSync.1() [E] GetRemoteURL(user2/repo1.git) Error exit status 2 - error: No such remote 'broken_remote_1' 2026/09/06 06:40:40 .../mirror/mirror_push.go:106:SyncPushMirror() [E] SyncPushMirror [mirror: 1][repo: ]: Unexpected error --- PASS: TestPushMirrorSync (0.08s) === RUN TestRepoEdit 2026/09/06 06:40:40 .../mirror/mirror_push.go:133:runPushSync.1() [E] GetRemoteURL(user2/repo1.git) Error exit status 2 - error: No such remote 'broken_remote_2' 2026/09/06 06:40:40 .../mirror/mirror_push.go:106:SyncPushMirror() [E] SyncPushMirror [mirror: 2][repo: ]: Unexpected error 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:1 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:2 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:3 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:5 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:11 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test --- PASS: TestRepoEdit (0.07s) === RUN TestRepoEditNameChange --- PASS: TestRepoEditNameChange (0.10s) PASS ok gitea.dev/routers/api/v1/repo 2.957s ? gitea.dev/routers/api/v1/settings [no test files] ? gitea.dev/routers/api/v1/shared [no test files] ? gitea.dev/routers/api/v1/swagger [no test files] ? gitea.dev/routers/api/v1/token [no test files] ? gitea.dev/routers/api/v1/user [no test files] 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3015839478/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3015839478/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3015839478/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3015839478/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3015839478/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3015839478/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3015839478/data/actions_artifacts === RUN TestTestHookValidation === RUN TestTestHookValidation/Test_Validation === RUN TestTestHookValidation/Test_Validation_with_invalid_URL === RUN TestTestHookValidation/Test_Validation_with_invalid_webhook_type === RUN TestTestHookValidation/Test_Validation_with_empty_content_type --- PASS: TestTestHookValidation (0.35s) --- PASS: TestTestHookValidation/Test_Validation (0.02s) --- PASS: TestTestHookValidation/Test_Validation_with_invalid_URL (0.01s) --- PASS: TestTestHookValidation/Test_Validation_with_invalid_webhook_type (0.01s) --- PASS: TestTestHookValidation/Test_Validation_with_empty_content_type (0.01s) === RUN TestResolveSortOrder === RUN TestResolveSortOrder/GET_/ === RUN TestResolveSortOrder/GET_/?sort=id === RUN TestResolveSortOrder/GET_/?sort=id&order=desc === RUN TestResolveSortOrder/GET_/?sort=bogus === RUN TestResolveSortOrder/GET_/?sort=id&order=bogus --- PASS: TestResolveSortOrder (0.00s) --- PASS: TestResolveSortOrder/GET_/ (0.00s) --- PASS: TestResolveSortOrder/GET_/?sort=id (0.00s) --- PASS: TestResolveSortOrder/GET_/?sort=id&order=desc (0.00s) --- PASS: TestResolveSortOrder/GET_/?sort=bogus (0.00s) --- PASS: TestResolveSortOrder/GET_/?sort=id&order=bogus (0.00s) PASS ok gitea.dev/routers/api/v1/utils 1.651s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2293041079/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2293041079/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2293041079/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2293041079/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2293041079/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2293041079/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2293041079/data/actions_artifacts === RUN TestBlockExpensive --- PASS: TestBlockExpensive (0.00s) === RUN TestCompareRouterReq --- PASS: TestCompareRouterReq (0.00s) === RUN TestResolveRefWithSuffix --- PASS: TestResolveRefWithSuffix (0.00s) === RUN TestRenderPanicErrorPage === RUN TestRenderPanicErrorPage/HTML 2026/09/06 06:40:38 routers/common/errpage.go:56:renderPanicErrorPage() [E] PANIC: fake panic error (for test only) /usr/lib/go/src/testing/testing.go:2193 (0x56bbe9) tRunner: fn(t) /usr/lib/go/src/runtime/asm_amd64.s:1264 (0x49ba40) goexit: BYTE $0x90 // NOP === RUN TestRenderPanicErrorPage/Plain --- PASS: TestRenderPanicErrorPage (0.40s) --- PASS: TestRenderPanicErrorPage/HTML (0.40s) --- PASS: TestRenderPanicErrorPage/Plain (0.00s) === RUN TestSearchIssuesRepoIDs === RUN TestSearchIssuesRepoIDs/site_admin === RUN TestSearchIssuesRepoIDs/regular_user === RUN TestSearchIssuesRepoIDs/private_org_member === RUN TestSearchIssuesRepoIDs/anonymous === RUN TestSearchIssuesRepoIDs/public-only_token === RUN TestSearchIssuesRepoIDs/owner_filter === RUN TestSearchIssuesRepoIDs/team_without_owner --- PASS: TestSearchIssuesRepoIDs (0.12s) --- PASS: TestSearchIssuesRepoIDs/site_admin (0.00s) --- PASS: TestSearchIssuesRepoIDs/regular_user (0.00s) --- PASS: TestSearchIssuesRepoIDs/private_org_member (0.00s) --- PASS: TestSearchIssuesRepoIDs/anonymous (0.00s) --- PASS: TestSearchIssuesRepoIDs/public-only_token (0.00s) --- PASS: TestSearchIssuesRepoIDs/owner_filter (0.00s) --- PASS: TestSearchIssuesRepoIDs/team_without_owner (0.00s) === RUN TestRequestPriority === RUN TestRequestPriority/Logged_In === RUN TestRequestPriority/Sign_In === RUN TestRequestPriority/Repo_Home === RUN TestRequestPriority/User_Repo --- PASS: TestRequestPriority (0.00s) --- PASS: TestRequestPriority/Logged_In (0.00s) --- PASS: TestRequestPriority/Sign_In (0.00s) --- PASS: TestRequestPriority/Repo_Home (0.00s) --- PASS: TestRequestPriority/User_Repo (0.00s) === RUN TestFetchRedirectDelegate === RUN TestFetchRedirectDelegate/POST_/foo?k=v === RUN TestFetchRedirectDelegate/GET_/foo?k=v === RUN TestFetchRedirectDelegate/POST_\/foo?k=v === RUN TestFetchRedirectDelegate/POST_\\/foo?k=v === RUN TestFetchRedirectDelegate/POST_https://gitea/xxx === RUN TestFetchRedirectDelegate/POST_https://other/xxx --- PASS: TestFetchRedirectDelegate (0.00s) --- PASS: TestFetchRedirectDelegate/POST_/foo?k=v (0.00s) --- PASS: TestFetchRedirectDelegate/GET_/foo?k=v (0.00s) --- PASS: TestFetchRedirectDelegate/POST_\/foo?k=v (0.00s) --- PASS: TestFetchRedirectDelegate/POST_\\/foo?k=v (0.00s) --- PASS: TestFetchRedirectDelegate/POST_https://gitea/xxx (0.00s) --- PASS: TestFetchRedirectDelegate/POST_https://other/xxx (0.00s) PASS ok gitea.dev/routers/common 1.316s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2077219889/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2077219889/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2077219889/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2077219889/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2077219889/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2077219889/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2077219889/data/actions_artifacts === RUN TestRoutes --- PASS: TestRoutes (0.73s) PASS ok gitea.dev/routers/install 1.738s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3886108048/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3886108048/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3886108048/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3886108048/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3886108048/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3886108048/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3886108048/data/actions_artifacts === RUN TestHandlePullRequestMerging --- PASS: TestHandlePullRequestMerging (0.35s) === RUN TestPreReceiveCanWriteCodePerBranch --- PASS: TestPreReceiveCanWriteCodePerBranch (0.03s) === RUN TestVerifyCommits 2026/09/06 06:40:39 .../hook_verification.go:41:verifyCommits() [E] Unable to check commits from 9779d17a04f1e2640583d35703c62460b2d86e0a to 72920278f2f999e3005801e5d5b8ab8139d3641c in /home/buildozer/aports/community/gitea/src/gitea-src-1.27.3/routers/private/tests/repos/repo1_hook_verification: Unverified commit: 72920278f2f999e3005801e5d5b8ab8139d3641c Unverified commit: 72920278f2f999e3005801e5d5b8ab8139d3641c Unverified commit: 72920278f2f999e3005801e5d5b8ab8139d3641c Unverified commit: 72920278f2f999e3005801e5d5b8ab8139d3641c --- PASS: TestVerifyCommits (0.14s) PASS 2026/09/06 06:40:39 .../hook_verification.go:41:verifyCommits() [E] Unable to check commits from 0000000000000000000000000000000000000000 to 9ce3f779ae33f31fce17fac3c512047b75d7498b in /home/buildozer/aports/community/gitea/src/gitea-src-1.27.3/routers/private/tests/repos/repo1_hook_verification: Unverified commit: 9ce3f779ae33f31fce17fac3c512047b75d7498b Unverified commit: 9ce3f779ae33f31fce17fac3c512047b75d7498b context canceled Unverified commit: 9ce3f779ae33f31fce17fac3c512047b75d7498b Unverified commit: 9ce3f779ae33f31fce17fac3c512047b75d7498b context canceled ok gitea.dev/routers/private 1.278s === RUN TestEscapeFlashErrorString === RUN TestEscapeFlashErrorString/no_error === RUN TestEscapeFlashErrorString/normal_error === RUN TestEscapeFlashErrorString/line_break_error --- PASS: TestEscapeFlashErrorString (0.00s) --- PASS: TestEscapeFlashErrorString/no_error (0.00s) --- PASS: TestEscapeFlashErrorString/normal_error (0.00s) --- PASS: TestEscapeFlashErrorString/line_break_error (0.00s) PASS ok gitea.dev/routers/utils 0.012s ? gitea.dev/routers/web [no test files] 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-591495801/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-591495801/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-591495801/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-591495801/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-591495801/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-591495801/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-591495801/data/actions_artifacts === RUN TestSelfCheckPost --- PASS: TestSelfCheckPost (0.00s) === RUN TestNewUserPost_MustChangePassword --- PASS: TestNewUserPost_MustChangePassword (0.28s) === RUN TestNewUserPost_MustChangePasswordFalse --- PASS: TestNewUserPost_MustChangePasswordFalse (0.08s) === RUN TestNewUserPost_InvalidEmail --- PASS: TestNewUserPost_InvalidEmail (0.07s) === RUN TestNewUserPost_VisibilityDefaultPublic --- PASS: TestNewUserPost_VisibilityDefaultPublic (0.11s) === RUN TestNewUserPost_VisibilityPrivate --- PASS: TestNewUserPost_VisibilityPrivate (0.12s) PASS ok gitea.dev/routers/web/admin 1.401s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1122119238/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1122119238/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1122119238/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1122119238/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1122119238/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1122119238/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1122119238/data/actions_artifacts === RUN TestWebAuthUserLogin --- PASS: TestWebAuthUserLogin (0.00s) === RUN TestWebAuthOAuth2 === RUN TestWebAuthOAuth2/OAuth2MissingField 2026/09/06 06:40:38 routers/web/auth/oauth.go:166:SignInOAuthCallback() [E] OAuth2 auto registration (ENABLE_AUTO_REGISTRATION) is enabled but OAuth2 provider "dummy+auth's source" doesn't return required fields: email. Suggest to: disable auto registration, or make OPENID_CONNECT_SCOPES (for OpenIDConnect) / Authentication Source Scopes (for Admin panel) to request all required fields, and the fields shouldn't be empty. === RUN TestWebAuthOAuth2/OAuth2CallbackError === RUN TestWebAuthOAuth2/RedirectSingleProvider 2026/09/06 06:40:38 routers/web/auth/oauth.go:111:SignInOAuthCallback() [I] Failed OAuth callback: (internal) could not find a matching session for this request === RUN TestWebAuthOAuth2/OIDCLogout === RUN TestWebAuthOAuth2/OIDCLogout/OAuth2SignInRedirectsToOIDC === RUN TestWebAuthOAuth2/OIDCLogout/PasswordSignInSkipsOIDC --- PASS: TestWebAuthOAuth2 (0.01s) --- PASS: TestWebAuthOAuth2/OAuth2MissingField (0.00s) --- PASS: TestWebAuthOAuth2/OAuth2CallbackError (0.00s) --- PASS: TestWebAuthOAuth2/RedirectSingleProvider (0.00s) --- PASS: TestWebAuthOAuth2/OIDCLogout (0.00s) --- PASS: TestWebAuthOAuth2/OIDCLogout/OAuth2SignInRedirectsToOIDC (0.00s) --- PASS: TestWebAuthOAuth2/OIDCLogout/PasswordSignInSkipsOIDC (0.00s) === RUN TestOpenIDRequireTwoFactor --- PASS: TestOpenIDRequireTwoFactor (0.14s) === RUN TestNewAccessTokenResponse_OIDCToken --- PASS: TestNewAccessTokenResponse_OIDCToken (0.00s) === RUN TestOAuth2AvatarClientBlocksLoopback --- PASS: TestOAuth2AvatarClientBlocksLoopback (0.00s) === RUN TestOAuth2AvatarAllowListRestricts --- PASS: TestOAuth2AvatarAllowListRestricts (0.00s) === RUN TestOAuth2AvatarClientBlocksCloudMetadata --- PASS: TestOAuth2AvatarClientBlocksCloudMetadata (0.00s) PASS ok gitea.dev/routers/web/auth 0.756s ? gitea.dev/routers/web/devtest [no test files] ? gitea.dev/routers/web/events [no test files] ? gitea.dev/routers/web/explore [no test files] 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222077767/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222077767/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222077767/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222077767/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222077767/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222077767/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2222077767/data/actions_artifacts === RUN TestCheckGetOrgFeedsAsOrgMember === RUN TestCheckGetOrgFeedsAsOrgMember/OrgMember === RUN TestCheckGetOrgFeedsAsOrgMember/NonOrgMember --- PASS: TestCheckGetOrgFeedsAsOrgMember (1.08s) --- PASS: TestCheckGetOrgFeedsAsOrgMember/OrgMember (0.29s) --- PASS: TestCheckGetOrgFeedsAsOrgMember/NonOrgMember (0.02s) PASS ok gitea.dev/routers/web/feed 1.900s ? gitea.dev/routers/web/healthcheck [no test files] ? gitea.dev/routers/web/misc [no test files] 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1881781929/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1881781929/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1881781929/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1881781929/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1881781929/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1881781929/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1881781929/data/actions_artifacts === RUN TestCheckProjectColumnChangePermissions --- PASS: TestCheckProjectColumnChangePermissions (0.34s) === RUN TestChangeProjectStatusRejectsForeignProjects --- PASS: TestChangeProjectStatusRejectsForeignProjects (0.15s) === RUN TestAddColumnToProjectPostRejectsForeignProjects --- PASS: TestAddColumnToProjectPostRejectsForeignProjects (0.18s) PASS ok gitea.dev/routers/web/org 1.739s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-603124410/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-603124410/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-603124410/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-603124410/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-603124410/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-603124410/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-603124410/data/actions_artifacts === RUN TestAttachCommentsToLines --- PASS: TestAttachCommentsToLines (0.00s) === RUN TestNewPullRequestTitleContent --- PASS: TestNewPullRequestTitleContent (0.00s) === RUN TestAutoTitleFromBranchName --- PASS: TestAutoTitleFromBranchName (0.00s) === RUN TestEditorUtils === RUN TestEditorUtils/getUniquePatchBranchName === RUN TestEditorUtils/getClosestParentWithFiles --- PASS: TestEditorUtils (0.47s) --- PASS: TestEditorUtils/getUniquePatchBranchName (0.00s) --- PASS: TestEditorUtils/getClosestParentWithFiles (0.01s) === RUN TestContainsParentDirectorySeparator --- PASS: TestContainsParentDirectorySeparator (0.00s) === RUN TestIssueLabel === RUN TestIssueLabel/RetrieveLabels === RUN TestIssueLabel/NewLabel === RUN TestIssueLabel/NewLabelInvalidColor === RUN TestIssueLabel/UpdateLabel === RUN TestIssueLabel/UpdateLabelInvalidColor === RUN TestIssueLabel/UpdateIssueLabelClear === RUN TestIssueLabel/UpdateIssueLabelToggle === RUN TestIssueLabel/InitializeLabels === RUN TestIssueLabel/DeleteLabel --- PASS: TestIssueLabel (0.87s) --- PASS: TestIssueLabel/RetrieveLabels (0.01s) --- PASS: TestIssueLabel/NewLabel (0.01s) --- PASS: TestIssueLabel/NewLabelInvalidColor (0.01s) --- PASS: TestIssueLabel/UpdateLabel (0.01s) --- PASS: TestIssueLabel/UpdateLabelInvalidColor (0.01s) --- PASS: TestIssueLabel/UpdateIssueLabelClear (0.12s) --- PASS: TestIssueLabel/UpdateIssueLabelToggle (0.58s) --- PASS: TestIssueLabel/InitializeLabels (0.01s) --- PASS: TestIssueLabel/DeleteLabel (0.00s) === RUN TestCombineLabelComments === RUN TestCombineLabelComments/kase_1 === RUN TestCombineLabelComments/kase_2 === RUN TestCombineLabelComments/kase_3 === RUN TestCombineLabelComments/kase_4 === RUN TestCombineLabelComments/kase_5 === RUN TestCombineLabelComments/kase_6 --- PASS: TestCombineLabelComments (0.00s) --- PASS: TestCombineLabelComments/kase_1 (0.00s) --- PASS: TestCombineLabelComments/kase_2 (0.00s) --- PASS: TestCombineLabelComments/kase_3 (0.00s) --- PASS: TestCombineLabelComments/kase_4 (0.00s) --- PASS: TestCombineLabelComments/kase_5 (0.00s) --- PASS: TestCombineLabelComments/kase_6 (0.00s) === RUN TestDiffViewStyle === RUN TestDiffViewStyle/AnonymousUser === RUN TestDiffViewStyle/SignedInUser --- PASS: TestDiffViewStyle (0.15s) --- PASS: TestDiffViewStyle/AnonymousUser (0.00s) --- PASS: TestDiffViewStyle/SignedInUser (0.01s) === RUN TestCheckProjectColumnChangePermissions --- PASS: TestCheckProjectColumnChangePermissions (0.15s) === RUN TestRenderConversation === RUN TestRenderConversation/prepare === RUN TestRenderConversation/diff_with_outdated === RUN TestRenderConversation/diff_without_outdated === RUN TestRenderConversation/timeline_with_outdated 2026/09/06 06:40:40 services/gitdiff/gitdiff.go:1631:CommentMustAsDiff() [W] CommentMustAsDiff: no sections found for comment ID: 18 === RUN TestRenderConversation/timeline_is_not_affected_by_ShowOutdatedComments=false 2026/09/06 06:40:40 services/gitdiff/gitdiff.go:1631:CommentMustAsDiff() [W] CommentMustAsDiff: no sections found for comment ID: 18 === RUN TestRenderConversation/diff_non-existing_review === RUN TestRenderConversation/timeline_non-existing_review 2026/09/06 06:40:40 services/gitdiff/gitdiff.go:1631:CommentMustAsDiff() [W] CommentMustAsDiff: no sections found for comment ID: 18 --- PASS: TestRenderConversation (0.37s) --- PASS: TestRenderConversation/prepare (0.25s) --- PASS: TestRenderConversation/diff_with_outdated (0.01s) --- PASS: TestRenderConversation/diff_without_outdated (0.00s) --- PASS: TestRenderConversation/timeline_with_outdated (0.01s) --- PASS: TestRenderConversation/timeline_is_not_affected_by_ShowOutdatedComments=false (0.01s) --- PASS: TestRenderConversation/diff_non-existing_review (0.01s) --- PASS: TestRenderConversation/timeline_non-existing_review (0.01s) === RUN TestNewReleasePost === RUN TestNewReleasePost/NewReleasePage === RUN TestNewReleasePost/NewTagRelease === RUN TestNewReleasePost/ReleaseExistsDoUpdate(non-tag) === RUN TestNewReleasePost/ReleaseExistsDoUpdate(tag-only) === RUN TestNewReleasePost/ReleaseExistsDoUpdate(tag-release) === RUN TestNewReleasePost/TagOnly === RUN TestNewReleasePost/TagOnlyConflict --- PASS: TestNewReleasePost (0.20s) --- PASS: TestNewReleasePost/NewReleasePage (0.01s) --- PASS: TestNewReleasePost/NewTagRelease (0.04s) --- PASS: TestNewReleasePost/ReleaseExistsDoUpdate(non-tag) (0.00s) --- PASS: TestNewReleasePost/ReleaseExistsDoUpdate(tag-only) (0.00s) --- PASS: TestNewReleasePost/ReleaseExistsDoUpdate(tag-release) (0.04s) --- PASS: TestNewReleasePost/TagOnly (0.03s) --- PASS: TestNewReleasePost/TagOnlyConflict (0.00s) === RUN TestCalReleaseNumCommitsBehind --- PASS: TestCalReleaseNumCommitsBehind (0.08s) === RUN TestTransformDiffTreeForWeb --- PASS: TestTransformDiffTreeForWeb (0.01s) === RUN TestViewHomeSubmoduleRedirect --- PASS: TestViewHomeSubmoduleRedirect (0.06s) === RUN TestFindReadmeFileInEntriesWithSymlinkInSubfolder === RUN TestFindReadmeFileInEntriesWithSymlinkInSubfolder/.github === RUN TestFindReadmeFileInEntriesWithSymlinkInSubfolder/.gitea === RUN TestFindReadmeFileInEntriesWithSymlinkInSubfolder/docs --- PASS: TestFindReadmeFileInEntriesWithSymlinkInSubfolder (0.08s) --- PASS: TestFindReadmeFileInEntriesWithSymlinkInSubfolder/.github (0.02s) --- PASS: TestFindReadmeFileInEntriesWithSymlinkInSubfolder/.gitea (0.03s) --- PASS: TestFindReadmeFileInEntriesWithSymlinkInSubfolder/docs (0.03s) === RUN Test_localizedExtensions === RUN Test_localizedExtensions/empty_language === RUN Test_localizedExtensions/No_region_-_lowercase === RUN Test_localizedExtensions/No_region_-_uppercase === RUN Test_localizedExtensions/With_region_-_lowercase === RUN Test_localizedExtensions/With_region_-_uppercase === RUN Test_localizedExtensions/With_region_-_all_uppercase --- PASS: Test_localizedExtensions (0.00s) --- PASS: Test_localizedExtensions/empty_language (0.00s) --- PASS: Test_localizedExtensions/No_region_-_lowercase (0.00s) --- PASS: Test_localizedExtensions/No_region_-_uppercase (0.00s) --- PASS: Test_localizedExtensions/With_region_-_lowercase (0.00s) --- PASS: Test_localizedExtensions/With_region_-_uppercase (0.00s) --- PASS: Test_localizedExtensions/With_region_-_all_uppercase (0.00s) === RUN TestWiki --- PASS: TestWiki (0.10s) === RUN TestWikiPages --- PASS: TestWikiPages (0.09s) === RUN TestNewWiki --- PASS: TestNewWiki (0.07s) === RUN TestNewWikiPost --- PASS: TestNewWikiPost (0.33s) === RUN TestNewWikiPost_ReservedName --- PASS: TestNewWikiPost_ReservedName (0.07s) === RUN TestEditWiki --- PASS: TestEditWiki (0.08s) === RUN TestEditWikiPost --- PASS: TestEditWikiPost (0.36s) === RUN TestDeleteWikiPagePost --- PASS: TestDeleteWikiPagePost (0.14s) === RUN TestWikiRaw --- PASS: TestWikiRaw (0.46s) === RUN TestDefaultWikiBranch --- PASS: TestDefaultWikiBranch (0.10s) PASS ok gitea.dev/routers/web/repo 4.893s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3424701090/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3424701090/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3424701090/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3424701090/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3424701090/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3424701090/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3424701090/data/actions_artifacts === RUN TestReadWorkflow_WorkflowDispatchConfig --- PASS: TestReadWorkflow_WorkflowDispatchConfig (0.00s) === RUN Test_loadIsRefDeleted --- PASS: Test_loadIsRefDeleted (0.40s) === RUN TestPrepareWorkflowBadgeTemplate === RUN TestPrepareWorkflowBadgeTemplate/no_workflow_selected === RUN TestPrepareWorkflowBadgeTemplate/selected_workflow --- PASS: TestPrepareWorkflowBadgeTemplate (0.00s) --- PASS: TestPrepareWorkflowBadgeTemplate/no_workflow_selected (0.00s) --- PASS: TestPrepareWorkflowBadgeTemplate/selected_workflow (0.00s) === RUN TestViewPullRequestFromRun === RUN TestViewPullRequestFromRun/pull_ref === RUN TestViewPullRequestFromRun/pull_request_event_payload === RUN TestViewPullRequestFromRun/nil_repo --- PASS: TestViewPullRequestFromRun (0.00s) --- PASS: TestViewPullRequestFromRun/pull_ref (0.00s) --- PASS: TestViewPullRequestFromRun/pull_request_event_payload (0.00s) --- PASS: TestViewPullRequestFromRun/nil_repo (0.00s) === RUN TestViewSummaryBranchFromRun === RUN TestViewSummaryBranchFromRun/pull_request_event_same_repo === RUN TestViewSummaryBranchFromRun/pull_request_event_from_fork_prefixes_owner === RUN TestViewSummaryBranchFromRun/push_to_tag_does_not_query_branch --- PASS: TestViewSummaryBranchFromRun (0.00s) --- PASS: TestViewSummaryBranchFromRun/pull_request_event_same_repo (0.00s) --- PASS: TestViewSummaryBranchFromRun/pull_request_event_from_fork_prefixes_owner (0.00s) --- PASS: TestViewSummaryBranchFromRun/push_to_tag_does_not_query_branch (0.00s) === RUN TestConvertToViewModel --- PASS: TestConvertToViewModel (0.00s) === RUN TestConvertToViewModelCancellingTaskDoesNotRenderRunningSteps --- PASS: TestConvertToViewModelCancellingTaskDoesNotRenderRunningSteps (0.00s) === RUN TestPendingNeeds === RUN TestPendingNeeds/all_needs_done === RUN TestPendingNeeds/matrix_expansion_all_required === RUN TestPendingNeeds/unresolved_need_treated_as_pending === RUN TestPendingNeeds/parent_job_scope --- PASS: TestPendingNeeds (0.00s) --- PASS: TestPendingNeeds/all_needs_done (0.00s) --- PASS: TestPendingNeeds/matrix_expansion_all_required (0.00s) --- PASS: TestPendingNeeds/unresolved_need_treated_as_pending (0.00s) --- PASS: TestPendingNeeds/parent_job_scope (0.00s) PASS ok gitea.dev/routers/web/repo/actions 1.039s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3945723275/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3945723275/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3945723275/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3945723275/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3945723275/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3945723275/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3945723275/data/actions_artifacts === RUN TestAddReadOnlyDeployKey --- PASS: TestAddReadOnlyDeployKey (0.22s) === RUN TestAddReadWriteOnlyDeployKey --- PASS: TestAddReadWriteOnlyDeployKey (0.17s) === RUN TestCollaborationPost --- PASS: TestCollaborationPost (0.14s) === RUN TestCollaborationPost_InactiveUser --- PASS: TestCollaborationPost_InactiveUser (0.16s) === RUN TestCollaborationPost_AddCollaboratorTwice --- PASS: TestCollaborationPost_AddCollaboratorTwice (0.12s) === RUN TestCollaborationPost_NonExistentUser --- PASS: TestCollaborationPost_NonExistentUser (0.08s) === RUN TestAddTeamPost --- PASS: TestAddTeamPost (0.12s) === RUN TestAddTeamPost_NotAllowed --- PASS: TestAddTeamPost_NotAllowed (0.10s) === RUN TestAddTeamPost_AddTeamTwice --- PASS: TestAddTeamPost_AddTeamTwice (0.08s) === RUN TestAddTeamPost_NonExistentTeam --- PASS: TestAddTeamPost_NonExistentTeam (0.05s) === RUN TestDeleteTeam --- PASS: TestDeleteTeam (0.07s) === RUN TestHandleSettingsPostMirrorPreservesExistingUsername --- PASS: TestHandleSettingsPostMirrorPreservesExistingUsername (0.11s) === RUN TestWebhookMatrix --- PASS: TestWebhookMatrix (0.00s) PASS ok gitea.dev/routers/web/repo/setting 3.445s === RUN TestDeriveScopedStatusContexts === RUN TestDeriveScopedStatusContexts/jobs_x_events;_job_name_is_its_name:_or_its_id === RUN TestDeriveScopedStatusContexts/only_status-producing_events;_workflow_dispatch/schedule/workflow_call_skipped === RUN TestDeriveScopedStatusContexts/a_workflow_dispatch-only_workflow_has_no_expected_contexts --- PASS: TestDeriveScopedStatusContexts (0.00s) --- PASS: TestDeriveScopedStatusContexts/jobs_x_events;_job_name_is_its_name:_or_its_id (0.00s) --- PASS: TestDeriveScopedStatusContexts/only_status-producing_events;_workflow_dispatch/schedule/workflow_call_skipped (0.00s) --- PASS: TestDeriveScopedStatusContexts/a_workflow_dispatch-only_workflow_has_no_expected_contexts (0.00s) PASS ok gitea.dev/routers/web/shared/actions 0.171s ? gitea.dev/routers/web/shared/issue [no test files] ? gitea.dev/routers/web/shared/label [no test files] ? gitea.dev/routers/web/shared/mention [no test files] ? gitea.dev/routers/web/shared/packages [no test files] ? gitea.dev/routers/web/shared/project [no test files] ? gitea.dev/routers/web/shared/secrets [no test files] === RUN TestMakeSelfOnTop --- PASS: TestMakeSelfOnTop (0.00s) PASS ok gitea.dev/routers/web/shared/user 0.412s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2541546890/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2541546890/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2541546890/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2541546890/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2541546890/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2541546890/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2541546890/data/actions_artifacts === RUN TestArchivedIssues --- PASS: TestArchivedIssues (0.18s) === RUN TestIssues --- PASS: TestIssues (0.03s) === RUN TestPulls 2026/09/06 06:40:39 services/pull/pull.go:973:GetIssuesAllCommitStatus() [E] getAllCommitStatus: cant get commit statuses of pull [6]: object does not exist [id: refs/pull/2/head, rel_path: ] --- PASS: TestPulls (0.04s) === RUN TestMilestones --- PASS: TestMilestones (0.02s) === RUN TestMilestonesForSpecificRepo --- PASS: TestMilestonesForSpecificRepo (0.01s) === RUN TestDashboardPagination --- PASS: TestDashboardPagination (0.25s) === RUN TestFilterNotificationsByRepoAccess --- PASS: TestFilterNotificationsByRepoAccess (0.02s) PASS ok gitea.dev/routers/web/user 1.360s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4059570441/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4059570441/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4059570441/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4059570441/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4059570441/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4059570441/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4059570441/data/actions_artifacts === RUN TestChangePassword === RUN TestChangePassword/password__Qwerty123456- === RUN TestChangePassword/password__12345 === RUN TestChangePassword/12334__123456 === RUN TestChangePassword/password__123456 === RUN TestChangePassword/password__Qwerty === RUN TestChangePassword/password__Qwerty#01 === RUN TestChangePassword/password__QWERTY --- PASS: TestChangePassword (0.99s) --- PASS: TestChangePassword/password__Qwerty123456- (0.47s) --- PASS: TestChangePassword/password__12345 (0.09s) --- PASS: TestChangePassword/12334__123456 (0.07s) --- PASS: TestChangePassword/password__123456 (0.05s) --- PASS: TestChangePassword/password__Qwerty (0.14s) --- PASS: TestChangePassword/password__Qwerty#01 (0.11s) --- PASS: TestChangePassword/password__QWERTY (0.07s) PASS ok gitea.dev/routers/web/user/setting 2.372s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2152132076/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2152132076/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2152132076/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2152132076/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2152132076/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2152132076/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2152132076/data/actions_artifacts === RUN TestDeleteOpenIDReturnsNotFoundForOtherUsersAddress --- PASS: TestDeleteOpenIDReturnsNotFoundForOtherUsersAddress (0.20s) === RUN TestToggleOpenIDVisibilityReturnsNotFoundForOtherUsersAddress --- PASS: TestToggleOpenIDVisibilityReturnsNotFoundForOtherUsersAddress (0.07s) PASS ok gitea.dev/routers/web/user/setting/security 1.396s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2384433687/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2384433687/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2384433687/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2384433687/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2384433687/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2384433687/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2384433687/data/actions_artifacts === RUN TestApproveRuns === RUN TestApproveRuns/approve_blocked_run 2026/09/06 06:40:39 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF === RUN TestApproveRuns/re-approving_an_approved_run_is_a_no-op --- PASS: TestApproveRuns (0.39s) --- PASS: TestApproveRuns/approve_blocked_run (0.02s) --- PASS: TestApproveRuns/re-approving_an_approved_run_is_a_no-op (0.01s) === RUN TestCreateAuthorizationToken --- PASS: TestCreateAuthorizationToken (0.00s) === RUN TestParseAuthorizationToken --- PASS: TestParseAuthorizationToken (0.00s) === RUN TestParseAuthorizationTokenNoAuthHeader --- PASS: TestParseAuthorizationTokenNoAuthHeader (0.00s) === RUN TestShouldBlockJobByConcurrency_CancellingJobBlocks --- PASS: TestShouldBlockJobByConcurrency_CancellingJobBlocks (0.03s) === RUN TestShouldBlockRunByConcurrency_CancellingJobBlocks --- PASS: TestShouldBlockRunByConcurrency_CancellingJobBlocks (0.00s) === RUN TestStopEndlessTasksSkipsCancelling 2026/09/06 06:40:39 .../actions/run_attempt.go:185:UpdateRunAttempt() [W] run 0 cannot be updated by an old attempt 3 2026/09/06 06:40:39 .../actions/clear_tasks.go:157:stopTasks() [W] Cannot transfer logs of task 55: dbfs.Open "actions_log/": file does not exist 2026/09/06 06:40:39 .../actions/clear_tasks.go:157:stopTasks() [W] Cannot transfer logs of task 52: dbfs.Open "actions_log/artifact-test2/2f/47.log": file does not exist 2026/09/06 06:40:39 .../actions/clear_tasks.go:157:stopTasks() [W] Cannot transfer logs of task 51: dbfs.Open "actions_log/artifact-test2/2f/47.log": file does not exist 2026/09/06 06:40:39 .../actions/clear_tasks.go:157:stopTasks() [W] Cannot transfer logs of task 48: dbfs.Open "actions_log/artifact-test2/2f/47.log": file does not exist 2026/09/06 06:40:39 .../actions/clear_tasks.go:157:stopTasks() [W] Cannot transfer logs of task 47: dbfs.Open "actions_log/artifact-test2/2f/47.log": file does not exist 2026/09/06 06:40:39 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF 2026/09/06 06:40:39 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF 2026/09/06 06:40:39 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF 2026/09/06 06:40:39 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF --- PASS: TestStopEndlessTasksSkipsCancelling (0.13s) === RUN TestCommitStatusDescription --- PASS: TestCommitStatusDescription (0.00s) === RUN TestCreateCommitStatus_Dedupe --- PASS: TestCreateCommitStatus_Dedupe (0.08s) === RUN TestGetCommitActionsStatusMap --- PASS: TestGetCommitActionsStatusMap (0.07s) === RUN TestCreateCommitStatus_DistinctWorkflowFilesSameName --- PASS: TestCreateCommitStatus_DistinctWorkflowFilesSameName (0.03s) === RUN TestCreateCommitStatus_LegacyHashRecovery --- PASS: TestCreateCommitStatus_LegacyHashRecovery (0.01s) === RUN TestCreateCommitStatus_LegacyHashExternalNotAdopted --- PASS: TestCreateCommitStatus_LegacyHashExternalNotAdopted (0.02s) === RUN TestCreateCommitStatus_UnnamedWorkflowUsesFileName --- PASS: TestCreateCommitStatus_UnnamedWorkflowUsesFileName (0.04s) === RUN TestCreateCommitStatus_ScopedSourcePrefix --- PASS: TestCreateCommitStatus_ScopedSourcePrefix (0.04s) === RUN TestEvaluateRunConcurrency_RunIDFallback --- PASS: TestEvaluateRunConcurrency_RunIDFallback (0.01s) === RUN TestPrepareRunAndInsert_ExpressionsSeeRunID 2026/09/06 06:40:39 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: head commit is missing in event payload 2026/09/06 06:40:39 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: head commit is missing in event payload --- PASS: TestPrepareRunAndInsert_ExpressionsSeeRunID (0.02s) === RUN TestComputeReusableCallerOutputs === RUN TestComputeReusableCallerOutputs/returns_empty_when_callee_declares_no_outputs === RUN TestComputeReusableCallerOutputs/unexpanded_(skipped)_caller_yields_empty_outputs_without_error === RUN TestComputeReusableCallerOutputs/literal_output_value_passes_through === RUN TestComputeReusableCallerOutputs/output_expression_reads_child_task_outputs === RUN TestComputeReusableCallerOutputs/CallPayload_inputs_reachable_in_output_expression === RUN TestComputeReusableCallerOutputs/nested_caller_outputs_propagate_to_outer === RUN TestComputeReusableCallerOutputs/matrix_children_with_same_JobID_prefer_non-empty_values --- PASS: TestComputeReusableCallerOutputs (0.05s) --- PASS: TestComputeReusableCallerOutputs/returns_empty_when_callee_declares_no_outputs (0.00s) --- PASS: TestComputeReusableCallerOutputs/unexpanded_(skipped)_caller_yields_empty_outputs_without_error (0.00s) --- PASS: TestComputeReusableCallerOutputs/literal_output_value_passes_through (0.00s) --- PASS: TestComputeReusableCallerOutputs/output_expression_reads_child_task_outputs (0.01s) --- PASS: TestComputeReusableCallerOutputs/CallPayload_inputs_reachable_in_output_expression (0.00s) --- PASS: TestComputeReusableCallerOutputs/nested_caller_outputs_propagate_to_outer (0.01s) --- PASS: TestComputeReusableCallerOutputs/matrix_children_with_same_JobID_prefer_non-empty_values (0.01s) === RUN TestFindTaskNeeds --- PASS: TestFindTaskNeeds (0.00s) === RUN TestGenerateGiteaContextPullRequestTarget --- PASS: TestGenerateGiteaContextPullRequestTarget (0.00s) === RUN TestGenerateGiteaContext_NilAttempt --- PASS: TestGenerateGiteaContext_NilAttempt (0.01s) === RUN TestDispatchInputsForRunJobs --- PASS: TestDispatchInputsForRunJobs (0.00s) === RUN TestPullRequestTargetBaseSHA === RUN TestPullRequestTargetBaseSHA/pull_request_target_with_base_SHA === RUN TestPullRequestTargetBaseSHA/non_pull_request_target_trigger === RUN TestPullRequestTargetBaseSHA/missing_base_SHA === RUN TestPullRequestTargetBaseSHA/invalid_payload --- PASS: TestPullRequestTargetBaseSHA (0.00s) --- PASS: TestPullRequestTargetBaseSHA/pull_request_target_with_base_SHA (0.00s) --- PASS: TestPullRequestTargetBaseSHA/non_pull_request_target_trigger (0.00s) --- PASS: TestPullRequestTargetBaseSHA/missing_base_SHA (0.00s) --- PASS: TestPullRequestTargetBaseSHA/invalid_payload (0.00s) === RUN TestInitToken 2026/09/06 06:40:39 services/actions/helper.go:89:pullRequestTargetBaseSHA() [E] run 0: get pull request event payload: jsontext: unexpected EOF after offset 1 === RUN TestInitToken/NoToken === RUN TestInitToken/EnvToken === RUN TestInitToken/EnvFileToken === RUN TestInitToken/InvalidToken --- PASS: TestInitToken (0.01s) --- PASS: TestInitToken/NoToken (0.00s) --- PASS: TestInitToken/EnvToken (0.00s) --- PASS: TestInitToken/EnvFileToken (0.00s) --- PASS: TestInitToken/InvalidToken (0.00s) === RUN Test_jobStatusResolver_Resolve === RUN Test_jobStatusResolver_Resolve/no_blocked === RUN Test_jobStatusResolver_Resolve/single_blocked === RUN Test_jobStatusResolver_Resolve/multiple_blocked === RUN Test_jobStatusResolver_Resolve/chain_blocked === RUN Test_jobStatusResolver_Resolve/loop_need === RUN Test_jobStatusResolver_Resolve/`if`_is_not_empty_and_all_jobs_in_`needs`_completed_successfully === RUN Test_jobStatusResolver_Resolve/`if`_is_not_empty_and_not_all_jobs_in_`needs`_completed_successfully === RUN Test_jobStatusResolver_Resolve/`if`_is_empty_and_not_all_jobs_in_`needs`_completed_successfully === RUN Test_jobStatusResolver_Resolve/`if`_is_empty_and_a_failed_need_has_continue-on-error === RUN Test_jobStatusResolver_Resolve/`if`_compares_a_workflow_dispatch_boolean_input --- PASS: Test_jobStatusResolver_Resolve (0.02s) --- PASS: Test_jobStatusResolver_Resolve/no_blocked (0.00s) --- PASS: Test_jobStatusResolver_Resolve/single_blocked (0.00s) --- PASS: Test_jobStatusResolver_Resolve/multiple_blocked (0.00s) --- PASS: Test_jobStatusResolver_Resolve/chain_blocked (0.00s) --- PASS: Test_jobStatusResolver_Resolve/loop_need (0.00s) --- PASS: Test_jobStatusResolver_Resolve/`if`_is_not_empty_and_all_jobs_in_`needs`_completed_successfully (0.00s) --- PASS: Test_jobStatusResolver_Resolve/`if`_is_not_empty_and_not_all_jobs_in_`needs`_completed_successfully (0.00s) --- PASS: Test_jobStatusResolver_Resolve/`if`_is_empty_and_not_all_jobs_in_`needs`_completed_successfully (0.00s) --- PASS: Test_jobStatusResolver_Resolve/`if`_is_empty_and_a_failed_need_has_continue-on-error (0.00s) --- PASS: Test_jobStatusResolver_Resolve/`if`_compares_a_workflow_dispatch_boolean_input (0.00s) === RUN Test_checkRunConcurrency_NoDuplicateConcurrencyGroupCheck --- PASS: Test_checkRunConcurrency_NoDuplicateConcurrencyGroupCheck (0.01s) === RUN Test_checkJobsOfCurrentRunAttempt_RunLevelConcurrencyKeepsJobsBlocked --- PASS: Test_checkJobsOfCurrentRunAttempt_RunLevelConcurrencyKeepsJobsBlocked (0.01s) === RUN Test_checkJobsOfCurrentRunAttempt_NeedApprovalKeepsJobsBlocked --- PASS: Test_checkJobsOfCurrentRunAttempt_NeedApprovalKeepsJobsBlocked (0.00s) === RUN Test_checkRunConcurrency_HeldGroupDoesNotWake --- PASS: Test_checkRunConcurrency_HeldGroupDoesNotWake (0.03s) === RUN Test_findConcurrencyWaiterToWake --- PASS: Test_findConcurrencyWaiterToWake (0.03s) === RUN TestIfNeedApproval === RUN TestIfNeedApproval/not_a_fork_PR_never_needs_approval === RUN TestIfNeedApproval/pull_request_target_never_needs_approval_even_when_fork === RUN TestIfNeedApproval/restricted_user_always_needs_approval === RUN TestIfNeedApproval/fork_PR_with_write_permission_does_not_need_approval === RUN TestIfNeedApproval/fork_PR_with_merged_PR_but_no_write_permission_does_not_need_approval === RUN TestIfNeedApproval/fork_PR_with_no_write_and_no_merged_PR_needs_approval === RUN TestIfNeedApproval/canWriteActions_error_is_propagated === RUN TestIfNeedApproval/hasMergedPR_error_is_propagated === RUN TestIfNeedApproval/restricted_user_skips_permission_check_entirely --- PASS: TestIfNeedApproval (0.00s) --- PASS: TestIfNeedApproval/not_a_fork_PR_never_needs_approval (0.00s) --- PASS: TestIfNeedApproval/pull_request_target_never_needs_approval_even_when_fork (0.00s) --- PASS: TestIfNeedApproval/restricted_user_always_needs_approval (0.00s) --- PASS: TestIfNeedApproval/fork_PR_with_write_permission_does_not_need_approval (0.00s) --- PASS: TestIfNeedApproval/fork_PR_with_merged_PR_but_no_write_permission_does_not_need_approval (0.00s) --- PASS: TestIfNeedApproval/fork_PR_with_no_write_and_no_merged_PR_needs_approval (0.00s) --- PASS: TestIfNeedApproval/canWriteActions_error_is_propagated (0.00s) --- PASS: TestIfNeedApproval/hasMergedPR_error_is_propagated (0.00s) --- PASS: TestIfNeedApproval/restricted_user_skips_permission_check_entirely (0.00s) === RUN TestFilteredWorkflowCommitStatusForForkPullRequest --- PASS: TestFilteredWorkflowCommitStatusForForkPullRequest (0.00s) === RUN TestParseRawPermissions_ReadAll --- PASS: TestParseRawPermissions_ReadAll (0.00s) === RUN TestParseRawPermissions_GithubScopes --- PASS: TestParseRawPermissions_GithubScopes (0.00s) === RUN TestParseRawPermissions_WriteAll --- PASS: TestParseRawPermissions_WriteAll (0.00s) === RUN TestParseRawPermissions_IndividualScopes --- PASS: TestParseRawPermissions_IndividualScopes (0.00s) === RUN TestParseRawPermissions_Priority === RUN TestParseRawPermissions_Priority/granular-wins-over-contents === RUN TestParseRawPermissions_Priority/contents-applied-first --- PASS: TestParseRawPermissions_Priority (0.00s) --- PASS: TestParseRawPermissions_Priority/granular-wins-over-contents (0.00s) --- PASS: TestParseRawPermissions_Priority/contents-applied-first (0.00s) === RUN TestParseRawPermissions_EmptyNode --- PASS: TestParseRawPermissions_EmptyNode (0.00s) === RUN TestParseRawPermissions_NilNode --- PASS: TestParseRawPermissions_NilNode (0.00s) === RUN TestParseAccessMode === RUN TestParseAccessMode/write === RUN TestParseAccessMode/read === RUN TestParseAccessMode/none === RUN TestParseAccessMode/#00 === RUN TestParseAccessMode/invalid --- PASS: TestParseAccessMode (0.00s) --- PASS: TestParseAccessMode/write (0.00s) --- PASS: TestParseAccessMode/read (0.00s) --- PASS: TestParseAccessMode/none (0.00s) --- PASS: TestParseAccessMode/#00 (0.00s) --- PASS: TestParseAccessMode/invalid (0.00s) === RUN TestExtractJobPermissionsFromWorkflow === RUN TestExtractJobPermissionsFromWorkflow/job-read-only === RUN TestExtractJobPermissionsFromWorkflow/job-none-perms === RUN TestExtractJobPermissionsFromWorkflow/job-override --- PASS: TestExtractJobPermissionsFromWorkflow (0.00s) --- PASS: TestExtractJobPermissionsFromWorkflow/job-read-only (0.00s) --- PASS: TestExtractJobPermissionsFromWorkflow/job-none-perms (0.00s) --- PASS: TestExtractJobPermissionsFromWorkflow/job-override (0.00s) === RUN TestGetFailedJobsForRerun === RUN TestGetFailedJobsForRerun/no_failed_jobs_returns_empty === RUN TestGetFailedJobsForRerun/single_failed_job_with_no_dependents === RUN TestGetFailedJobsForRerun/failed_job_does_not_pull_in_downstream_dependents === RUN TestGetFailedJobsForRerun/multiple_failed_jobs_are_returned_directly === RUN TestGetFailedJobsForRerun/shared_downstream_dependent_is_not_included === RUN TestGetFailedJobsForRerun/successful_downstream_job_of_a_failed_job_is_not_included --- PASS: TestGetFailedJobsForRerun (0.00s) --- PASS: TestGetFailedJobsForRerun/no_failed_jobs_returns_empty (0.00s) --- PASS: TestGetFailedJobsForRerun/single_failed_job_with_no_dependents (0.00s) --- PASS: TestGetFailedJobsForRerun/failed_job_does_not_pull_in_downstream_dependents (0.00s) --- PASS: TestGetFailedJobsForRerun/multiple_failed_jobs_are_returned_directly (0.00s) --- PASS: TestGetFailedJobsForRerun/shared_downstream_dependent_is_not_included (0.00s) --- PASS: TestGetFailedJobsForRerun/successful_downstream_job_of_a_failed_job_is_not_included (0.00s) === RUN TestCloneRunJobForAttempt === RUN TestCloneRunJobForAttempt/preserves_continue-on-error === RUN TestCloneRunJobForAttempt/defaults_to_false_when_template_has_it_unset --- PASS: TestCloneRunJobForAttempt (0.00s) --- PASS: TestCloneRunJobForAttempt/preserves_continue-on-error (0.00s) --- PASS: TestCloneRunJobForAttempt/defaults_to_false_when_template_has_it_unset (0.00s) === RUN TestRerunValidation === RUN TestRerunValidation/RerunWorkflowRunJobs_rejects_a_non-done_run === RUN TestRerunValidation/RerunWorkflowRunJobs_rejects_a_non-done_run_when_failed_jobs_exist --- PASS: TestRerunValidation (0.00s) --- PASS: TestRerunValidation/RerunWorkflowRunJobs_rejects_a_non-done_run (0.00s) --- PASS: TestRerunValidation/RerunWorkflowRunJobs_rejects_a_non-done_run_when_failed_jobs_exist (0.00s) === RUN TestRerunPlan === RUN TestRerunPlan/ExpandRerunJobIDs === RUN TestRerunPlan/ExpandRerunJobIDs/empty_jobsToRerun_reruns_every_template_job,_no_ancestors === RUN TestRerunPlan/ExpandRerunJobIDs/same-scope_downstream_BFS_pulls_in_dependents === RUN TestRerunPlan/ExpandRerunJobIDs/rerun_a_deep_child_escalates_across_reusable_scopes === RUN TestRerunPlan/ExpandRerunJobIDs/rerun_a_top-level_caller_resets_only_itself_and_same-scope_dependents === RUN TestRerunPlan/ExpandRerunJobIDs/rerun_a_nested_caller_escalates_one_level === RUN TestRerunPlan/ExpandRerunJobIDs/selecting_one_same-name_job_leaves_the_other-scope_same-name_job_alone === RUN TestRerunPlan/ExpandRerunJobIDs/a_caller_is_rerun_when_a_sibling_it_needs_is_selected === RUN TestRerunPlan/ExpandRerunJobIDs/multiple_selections_converge === RUN TestRerunPlan/CollectResetCallerDescendants === RUN TestRerunPlan/CollectResetCallerDescendants/non-caller_in_reset_set_is_ignored === RUN TestRerunPlan/CollectResetCallerDescendants/caller_in_reset_set_returns_transitive_descendants === RUN TestRerunPlan/CollectResetCallerDescendants/multiple_reset_callers_union_their_descendants === RUN TestRerunPlan/CollectResetCallerDescendants/nested-only_reset_returns_just_the_nested_subtree === RUN TestRerunPlan/HasRerunDependency === RUN TestRerunPlan/HasRerunDependency/no_needs_returns_false === RUN TestRerunPlan/HasRerunDependency/dependency_in_rerun_set_returns_true === RUN TestRerunPlan/HasRerunDependency/dependency_in_ancestor_set_returns_true === RUN TestRerunPlan/HasRerunDependency/dependency_on_unrelated_sibling_returns_false === RUN TestRerunPlan/HasRerunDependency/scope-bound:_same_JobID_in_another_scope_does_not_match --- PASS: TestRerunPlan (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs/empty_jobsToRerun_reruns_every_template_job,_no_ancestors (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs/same-scope_downstream_BFS_pulls_in_dependents (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs/rerun_a_deep_child_escalates_across_reusable_scopes (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs/rerun_a_top-level_caller_resets_only_itself_and_same-scope_dependents (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs/rerun_a_nested_caller_escalates_one_level (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs/selecting_one_same-name_job_leaves_the_other-scope_same-name_job_alone (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs/a_caller_is_rerun_when_a_sibling_it_needs_is_selected (0.00s) --- PASS: TestRerunPlan/ExpandRerunJobIDs/multiple_selections_converge (0.00s) --- PASS: TestRerunPlan/CollectResetCallerDescendants (0.00s) --- PASS: TestRerunPlan/CollectResetCallerDescendants/non-caller_in_reset_set_is_ignored (0.00s) --- PASS: TestRerunPlan/CollectResetCallerDescendants/caller_in_reset_set_returns_transitive_descendants (0.00s) --- PASS: TestRerunPlan/CollectResetCallerDescendants/multiple_reset_callers_union_their_descendants (0.00s) --- PASS: TestRerunPlan/CollectResetCallerDescendants/nested-only_reset_returns_just_the_nested_subtree (0.00s) --- PASS: TestRerunPlan/HasRerunDependency (0.00s) --- PASS: TestRerunPlan/HasRerunDependency/no_needs_returns_false (0.00s) --- PASS: TestRerunPlan/HasRerunDependency/dependency_in_rerun_set_returns_true (0.00s) --- PASS: TestRerunPlan/HasRerunDependency/dependency_in_ancestor_set_returns_true (0.00s) --- PASS: TestRerunPlan/HasRerunDependency/dependency_on_unrelated_sibling_returns_false (0.00s) --- PASS: TestRerunPlan/HasRerunDependency/scope-bound:_same_JobID_in_another_scope_does_not_match (0.00s) === RUN TestCheckCallerChain_Cycle === RUN TestCheckCallerChain_Cycle/DirectCycle === RUN TestCheckCallerChain_Cycle/IndirectCycle === RUN TestCheckCallerChain_Cycle/NoCycle --- PASS: TestCheckCallerChain_Cycle (0.02s) --- PASS: TestCheckCallerChain_Cycle/DirectCycle (0.01s) --- PASS: TestCheckCallerChain_Cycle/IndirectCycle (0.01s) --- PASS: TestCheckCallerChain_Cycle/NoCycle (0.01s) === RUN TestCheckCallerChain_DepthLimit === RUN TestCheckCallerChain_DepthLimit/ExactlyAtLimit === RUN TestCheckCallerChain_DepthLimit/OneOverLimit --- PASS: TestCheckCallerChain_DepthLimit (0.05s) --- PASS: TestCheckCallerChain_DepthLimit/ExactlyAtLimit (0.02s) --- PASS: TestCheckCallerChain_DepthLimit/OneOverLimit (0.03s) === RUN TestResolveUses === RUN TestResolveUses/LocalForms === RUN TestResolveUses/DirectoryAllowlist === RUN TestResolveUses/ConfigurableWorkflowDirs === RUN TestResolveUses/LocalInstanceURL === RUN TestResolveUses/InvalidSyntax === RUN TestResolveUses/ForeignURL --- PASS: TestResolveUses (0.00s) --- PASS: TestResolveUses/LocalForms (0.00s) --- PASS: TestResolveUses/DirectoryAllowlist (0.00s) --- PASS: TestResolveUses/ConfigurableWorkflowDirs (0.00s) --- PASS: TestResolveUses/LocalInstanceURL (0.00s) --- PASS: TestResolveUses/InvalidSyntax (0.00s) --- PASS: TestResolveUses/ForeignURL (0.00s) === RUN TestCheckRunJobLimit --- PASS: TestCheckRunJobLimit (0.01s) === RUN TestUndoExpansion --- PASS: TestUndoExpansion (0.01s) === RUN TestResolveSameRepoWorkflowSourceCommit === RUN TestResolveSameRepoWorkflowSourceCommit/pull_request_target_pins_to_base_commit === RUN TestResolveSameRepoWorkflowSourceCommit/legacy_nested_caller_(with_head-sha)_pins_to_base_commit === RUN TestResolveSameRepoWorkflowSourceCommit/pull_request_target_keeps_stored_SHA_when_already_base === RUN TestResolveSameRepoWorkflowSourceCommit/non_pull_request_target_keeps_stored_SHA === RUN TestResolveSameRepoWorkflowSourceCommit/scoped_run_keeps_stored_SHA === RUN TestResolveSameRepoWorkflowSourceCommit/cross-repo_caller_keeps_stored_SHA === RUN TestResolveSameRepoWorkflowSourceCommit/caller_resolved_from_a_uses:_ref_keeps_its_own_SHA --- PASS: TestResolveSameRepoWorkflowSourceCommit (0.00s) --- PASS: TestResolveSameRepoWorkflowSourceCommit/pull_request_target_pins_to_base_commit (0.00s) --- PASS: TestResolveSameRepoWorkflowSourceCommit/legacy_nested_caller_(with_head-sha)_pins_to_base_commit (0.00s) --- PASS: TestResolveSameRepoWorkflowSourceCommit/pull_request_target_keeps_stored_SHA_when_already_base (0.00s) --- PASS: TestResolveSameRepoWorkflowSourceCommit/non_pull_request_target_keeps_stored_SHA (0.00s) --- PASS: TestResolveSameRepoWorkflowSourceCommit/scoped_run_keeps_stored_SHA (0.00s) --- PASS: TestResolveSameRepoWorkflowSourceCommit/cross-repo_caller_keeps_stored_SHA (0.00s) --- PASS: TestResolveSameRepoWorkflowSourceCommit/caller_resolved_from_a_uses:_ref_keeps_its_own_SHA (0.00s) === RUN TestWithScheduleInEventPayload === RUN TestWithScheduleInEventPayload/adds_schedule_to_existing_payload === RUN TestWithScheduleInEventPayload/adds_schedule_to_null_payload === RUN TestWithScheduleInEventPayload/adds_schedule_to_empty_payload === RUN TestWithScheduleInEventPayload/adds_schedule_with_repository,_sender,_organization === RUN TestWithScheduleInEventPayload/keeps_payload_when_schedule_empty === RUN TestWithScheduleInEventPayload/keeps_payload_when_malformed_JSON --- PASS: TestWithScheduleInEventPayload (0.00s) --- PASS: TestWithScheduleInEventPayload/adds_schedule_to_existing_payload (0.00s) --- PASS: TestWithScheduleInEventPayload/adds_schedule_to_null_payload (0.00s) --- PASS: TestWithScheduleInEventPayload/adds_schedule_to_empty_payload (0.00s) --- PASS: TestWithScheduleInEventPayload/adds_schedule_with_repository,_sender,_organization (0.00s) --- PASS: TestWithScheduleInEventPayload/keeps_payload_when_schedule_empty (0.00s) --- PASS: TestWithScheduleInEventPayload/keeps_payload_when_malformed_JSON (0.00s) === RUN TestTryPickTaskThrottled --- PASS: TestTryPickTaskThrottled (0.00s) === RUN TestReleaseTaskForRunnerCleanup 2026/09/06 06:40:40 .../actions/schedule_tasks.go:166:withScheduleInEventPayload() [E] withScheduleInEventPayload: unmarshal: jsontext: invalid character 'o' in literal null (expecting 'u') after offset 1 --- PASS: TestReleaseTaskForRunnerCleanup (0.08s) === RUN TestCoerceDispatchInputTypes --- PASS: TestCoerceDispatchInputTypes (0.00s) PASS ok gitea.dev/services/actions 2.055s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2777915583/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2777915583/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2777915583/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2777915583/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2777915583/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2777915583/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2777915583/data/actions_artifacts === RUN TestParseAgitPushOptionValue --- PASS: TestParseAgitPushOptionValue (0.00s) === RUN TestGetAgitBranchInfo --- PASS: TestGetAgitBranchInfo (0.24s) PASS ok gitea.dev/services/agit 1.199s 2026/09/06 06:40:38 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2855464328/data/attachments 2026/09/06 06:40:38 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2855464328/data/avatars 2026/09/06 06:40:38 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2855464328/data/repo-avatars 2026/09/06 06:40:38 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2855464328/data/repo-archive 2026/09/06 06:40:38 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2855464328/data/packages 2026/09/06 06:40:38 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2855464328/data/actions_log 2026/09/06 06:40:38 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:38 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2855464328/data/actions_artifacts === RUN TestParseCommitWithSSHSignature === RUN TestParseCommitWithSSHSignature/UserSSHKey === RUN TestParseCommitWithSSHSignature/TrustedSSHKey --- PASS: TestParseCommitWithSSHSignature (0.13s) --- PASS: TestParseCommitWithSSHSignature/UserSSHKey (0.00s) --- PASS: TestParseCommitWithSSHSignature/TrustedSSHKey (0.00s) === RUN TestUserHasPubkeys === RUN TestUserHasPubkeys/AllowUserWithGPGKey === RUN TestUserHasPubkeys/AllowUserWithSSHKey === RUN TestUserHasPubkeys/DenyUserWithNoKeys --- PASS: TestUserHasPubkeys (0.00s) --- PASS: TestUserHasPubkeys/AllowUserWithGPGKey (0.00s) --- PASS: TestUserHasPubkeys/AllowUserWithSSHKey (0.00s) --- PASS: TestUserHasPubkeys/DenyUserWithNoKeys (0.00s) === RUN TestAddLdapSSHPublicKeys --- PASS: TestAddLdapSSHPublicKeys (0.02s) PASS ok gitea.dev/services/asymkey 0.987s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1599592097/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1599592097/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1599592097/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1599592097/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1599592097/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1599592097/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1599592097/data/actions_artifacts === RUN TestUploadAttachment --- PASS: TestUploadAttachment (0.14s) PASS ok gitea.dev/services/attachment 2.037s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2431531358/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2431531358/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2431531358/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2431531358/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2431531358/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2431531358/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2431531358/data/actions_artifacts === RUN TestCheckAuthToken === RUN TestCheckAuthToken/Empty === RUN TestCheckAuthToken/InvalidFormat === RUN TestCheckAuthToken/NotFound === RUN TestCheckAuthToken/Expired === RUN TestCheckAuthToken/InvalidHash === RUN TestCheckAuthToken/Valid --- PASS: TestCheckAuthToken (0.32s) --- PASS: TestCheckAuthToken/Empty (0.00s) --- PASS: TestCheckAuthToken/InvalidFormat (0.00s) --- PASS: TestCheckAuthToken/NotFound (0.00s) --- PASS: TestCheckAuthToken/Expired (0.00s) --- PASS: TestCheckAuthToken/InvalidHash (0.00s) --- PASS: TestCheckAuthToken/Valid (0.00s) === RUN TestRegenerateAuthToken --- PASS: TestRegenerateAuthToken (0.00s) === RUN TestUserIDFromToken === RUN TestUserIDFromToken/Actions_JWT --- PASS: TestUserIDFromToken (0.00s) --- PASS: TestUserIDFromToken/Actions_JWT (0.00s) === RUN TestCheckTaskIsRunning === RUN TestCheckTaskIsRunning/Running === RUN TestCheckTaskIsRunning/Missing === RUN TestCheckTaskIsRunning/Cancelled --- PASS: TestCheckTaskIsRunning (0.00s) --- PASS: TestCheckTaskIsRunning/Running (0.00s) --- PASS: TestCheckTaskIsRunning/Missing (0.00s) --- PASS: TestCheckTaskIsRunning/Cancelled (0.00s) PASS ok gitea.dev/services/auth 1.892s ? gitea.dev/services/auth/source [no test files] testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/db 0.383s [no tests to run] testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/ldap 0.304s [no tests to run] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2801633611/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2801633611/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2801633611/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2801633611/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2801633611/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2801633611/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2801633611/data/actions_artifacts === RUN TestSource === RUN TestSource/refresh === RUN TestSource/refresh/valid === RUN TestSource/refresh/expired 2026/09/06 06:40:39 .../oauth2/source_sync.go:76:(*Source).refresh.1() [I] SyncExternalUsers[fake] disabling user 43 --- PASS: TestSource (0.21s) --- PASS: TestSource/refresh (0.01s) --- PASS: TestSource/refresh/valid (0.00s) --- PASS: TestSource/refresh/expired (0.00s) PASS ok gitea.dev/services/auth/source/oauth2 1.160s testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/pam 0.640s [no tests to run] testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/smtp 0.452s [no tests to run] testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/sspi 0.029s [no tests to run] ? gitea.dev/services/automerge [no test files] ? gitea.dev/services/automergequeue [no test files] === RUN TestAccessLogger --- PASS: TestAccessLogger (0.00s) === RUN TestAccessLoggerRequestID --- PASS: TestAccessLoggerRequestID (0.00s) === RUN TestGenAPILinks --- PASS: TestGenAPILinks (0.00s) === RUN TestRedirect --- PASS: TestRedirect (0.00s) === RUN TestRemoveSessionCookieHeader --- PASS: TestRemoveSessionCookieHeader (0.00s) === RUN TestRedirectToCurrentSite === RUN TestRedirectToCurrentSite// === RUN TestRedirectToCurrentSite/http://localhost:3000/sub?k=v === RUN TestRedirectToCurrentSite/http://other --- PASS: TestRedirectToCurrentSite (0.00s) --- PASS: TestRedirectToCurrentSite// (0.00s) --- PASS: TestRedirectToCurrentSite/http://localhost:3000/sub?k=v (0.00s) --- PASS: TestRedirectToCurrentSite/http://other (0.00s) === RUN TestAppFullLink --- PASS: TestAppFullLink (0.00s) === RUN TestDeterminePackageAccessModeForLimitedOwner --- PASS: TestDeterminePackageAccessModeForLimitedOwner (0.00s) === RUN TestPagination --- PASS: TestPagination (0.00s) === RUN TestCompareHeadRef --- PASS: TestCompareHeadRef (0.00s) PASS ok gitea.dev/services/context 0.298s === RUN TestUpload --- PASS: TestUpload (0.01s) PASS 2026/09/06 06:40:38 .../context/upload/upload.go:84:Verify() [I] Attachment with type text/plain; charset=utf-8 blocked from upload 2026/09/06 06:40:38 .../context/upload/upload.go:84:Verify() [I] Attachment with type text/plain; charset=utf-8 blocked from upload 2026/09/06 06:40:38 .../context/upload/upload.go:84:Verify() [I] Attachment with type text/plain; charset=utf-8 blocked from upload 2026/09/06 06:40:38 .../context/upload/upload.go:84:Verify() [I] Attachment with type text/plain; charset=utf-8 blocked from upload 2026/09/06 06:40:38 .../context/upload/upload.go:84:Verify() [I] Attachment with type text/plain; charset=utf-8 blocked from upload ok gitea.dev/services/context/upload 0.351s ? gitea.dev/services/contexttest [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3563779627/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3563779627/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3563779627/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3563779627/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3563779627/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3563779627/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3563779627/data/actions_artifacts === RUN TestGetActionWorkflow_FallbackRef === RUN TestGetActionWorkflow_FallbackRef/returns_error_when_workflow_only_on_non-default_branch === RUN TestGetActionWorkflow_FallbackRef/returns_workflow_when_found_via_ref === RUN TestGetActionWorkflow_FallbackRef/returns_workflow_when_found_via_pull_ref === RUN TestGetActionWorkflow_FallbackRef/returns_workflow_with_tag_link_when_found_via_tag_ref === RUN TestGetActionWorkflow_FallbackRef/returns_error_when_workflow_missing_from_ref --- PASS: TestGetActionWorkflow_FallbackRef (0.08s) --- PASS: TestGetActionWorkflow_FallbackRef/returns_error_when_workflow_only_on_non-default_branch (0.01s) --- PASS: TestGetActionWorkflow_FallbackRef/returns_workflow_when_found_via_ref (0.01s) --- PASS: TestGetActionWorkflow_FallbackRef/returns_workflow_when_found_via_pull_ref (0.00s) --- PASS: TestGetActionWorkflow_FallbackRef/returns_workflow_with_tag_link_when_found_via_tag_ref (0.00s) --- PASS: TestGetActionWorkflow_FallbackRef/returns_error_when_workflow_missing_from_ref (0.00s) === RUN TestToActionWorkflowRun_UsesTriggerEvent --- PASS: TestToActionWorkflowRun_UsesTriggerEvent (0.17s) === RUN TestToActionWorkflowJob_StepStatusIsIndependentOfJobStatus --- PASS: TestToActionWorkflowJob_StepStatusIsIndependentOfJobStatus (0.01s) === RUN TestToActionsStatus_Cancelling --- PASS: TestToActionsStatus_Cancelling (0.00s) === RUN TestToWorkflowRunAction_Cancelling --- PASS: TestToWorkflowRunAction_Cancelling (0.00s) === RUN TestToCommitMeta --- PASS: TestToCommitMeta (0.00s) === RUN TestLabel_ToLabel --- PASS: TestLabel_ToLabel (0.00s) === RUN TestMilestone_APIFormat --- PASS: TestMilestone_APIFormat (0.00s) === RUN TestToStopWatchesRespectsPermissions --- PASS: TestToStopWatchesRespectsPermissions (0.01s) === RUN TestToTrackedTime === RUN TestToTrackedTime/NilIssues === RUN TestToTrackedTime/NilRepo === RUN TestToTrackedTime/ToRegularUser === RUN TestToTrackedTime/ToAdminUser --- PASS: TestToTrackedTime (0.04s) --- PASS: TestToTrackedTime/NilIssues (0.00s) --- PASS: TestToTrackedTime/NilRepo (0.00s) --- PASS: TestToTrackedTime/ToRegularUser (0.01s) --- PASS: TestToTrackedTime/ToAdminUser (0.02s) === RUN TestToNotificationThreadIncludesRepoForAccessibleUser --- PASS: TestToNotificationThreadIncludesRepoForAccessibleUser (0.01s) === RUN TestToNotificationThreadOmitsRepoWhenAccessRevoked --- PASS: TestToNotificationThreadOmitsRepoWhenAccessRevoked (0.01s) === RUN TestToNotificationThreadOmitsSubjectWhenAccessRevoked --- PASS: TestToNotificationThreadOmitsSubjectWhenAccessRevoked (0.00s) === RUN TestToNotificationThread === RUN TestToNotificationThread/issue_notification === RUN TestToNotificationThread/pinned_notification === RUN TestToNotificationThread/merged_pull_request_returns_merged_state === RUN TestToNotificationThread/open_pull_request_returns_open_state --- PASS: TestToNotificationThread (0.04s) --- PASS: TestToNotificationThread/issue_notification (0.02s) --- PASS: TestToNotificationThread/pinned_notification (0.01s) --- PASS: TestToNotificationThread/merged_pull_request_returns_merged_state (0.00s) --- PASS: TestToNotificationThread/open_pull_request_returns_open_state (0.00s) === RUN Test_ToPullReview === RUN Test_ToPullReview/Anonymous_User === RUN Test_ToPullReview/Reviewer_Himself === RUN Test_ToPullReview/Other_User === RUN Test_ToPullReview/Admin_User --- PASS: Test_ToPullReview (0.02s) --- PASS: Test_ToPullReview/Anonymous_User (0.00s) --- PASS: Test_ToPullReview/Reviewer_Himself (0.01s) --- PASS: Test_ToPullReview/Other_User (0.00s) --- PASS: Test_ToPullReview/Admin_User (0.00s) === RUN TestPullRequest_APIFormat --- PASS: TestPullRequest_APIFormat (0.14s) === RUN TestRelease_ToRelease --- PASS: TestRelease_ToRelease (0.02s) === RUN TestUser_ToUser --- PASS: TestUser_ToUser (0.02s) === RUN TestToCorrectPageSize --- PASS: TestToCorrectPageSize (0.00s) === RUN TestToGitServiceType --- PASS: TestToGitServiceType (0.00s) PASS ok gitea.dev/services/convert 1.259s === RUN Test_GCLFSConfig --- PASS: Test_GCLFSConfig (0.00s) === RUN TestAddTaskToScheduler --- PASS: TestAddTaskToScheduler (0.00s) === RUN TestScheduleHasSeconds === RUN TestScheduleHasSeconds/0 === RUN TestScheduleHasSeconds/1 === RUN TestScheduleHasSeconds/2 === RUN TestScheduleHasSeconds/3 === RUN TestScheduleHasSeconds/4 === RUN TestScheduleHasSeconds/5 === RUN TestScheduleHasSeconds/6 --- PASS: TestScheduleHasSeconds (0.00s) --- PASS: TestScheduleHasSeconds/0 (0.00s) --- PASS: TestScheduleHasSeconds/1 (0.00s) --- PASS: TestScheduleHasSeconds/2 (0.00s) --- PASS: TestScheduleHasSeconds/3 (0.00s) --- PASS: TestScheduleHasSeconds/4 (0.00s) --- PASS: TestScheduleHasSeconds/5 (0.00s) --- PASS: TestScheduleHasSeconds/6 (0.00s) PASS ok gitea.dev/services/cron 0.181s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261900684/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261900684/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261900684/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261900684/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261900684/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261900684/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3261900684/data/actions_artifacts === RUN TestConsistencyCheck 2026/09/06 06:40:39 .../doctor/dbconsistency.go:48:(*consistencyCheck).Run() [I] Deleted 1 Orphaned OAuth2Application without existing User --- PASS: TestConsistencyCheck (0.01s) PASS ok gitea.dev/services/doctor 1.223s ? gitea.dev/services/externalaccount [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-822438622/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-822438622/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-822438622/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-822438622/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-822438622/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-822438622/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-822438622/data/actions_artifacts === RUN TestGetFeeds --- PASS: TestGetFeeds (0.42s) === RUN TestGetFeedsForRepos --- PASS: TestGetFeedsForRepos (0.06s) === RUN TestGetFeeds2 --- PASS: TestGetFeeds2 (0.02s) === RUN TestGetFeedsCorrupted --- PASS: TestGetFeedsCorrupted (0.00s) === RUN TestRepoActions --- PASS: TestRepoActions (0.01s) === RUN TestNotifyWatchers --- PASS: TestNotifyWatchers (0.01s) === RUN TestRenameRepoAction --- PASS: TestRenameRepoAction (0.03s) PASS ok gitea.dev/services/feed 1.223s === RUN TestSubmitReviewForm_IsEmpty --- PASS: TestSubmitReviewForm_IsEmpty (0.00s) === RUN TestMergePullRequestForm === RUN TestMergePullRequestForm/NewFields === RUN TestMergePullRequestForm/OldFields --- PASS: TestMergePullRequestForm (0.00s) --- PASS: TestMergePullRequestForm/NewFields (0.00s) --- PASS: TestMergePullRequestForm/OldFields (0.00s) === RUN TestRegisterForm_IsDomainAllowed_Empty --- PASS: TestRegisterForm_IsDomainAllowed_Empty (0.00s) === RUN TestRegisterForm_IsDomainAllowed_InvalidEmail --- PASS: TestRegisterForm_IsDomainAllowed_InvalidEmail (0.00s) === RUN TestRegisterForm_IsDomainAllowed_AllowedEmail --- PASS: TestRegisterForm_IsDomainAllowed_AllowedEmail (0.00s) === RUN TestRegisterForm_IsDomainAllowed_BlockedEmail --- PASS: TestRegisterForm_IsDomainAllowed_BlockedEmail (0.00s) === RUN TestDetectInvalidOAuth2ApplicationRedirectURI --- PASS: TestDetectInvalidOAuth2ApplicationRedirectURI (0.00s) PASS ok gitea.dev/services/forms 0.239s ? gitea.dev/services/git [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3665894207/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3665894207/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3665894207/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3665894207/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3665894207/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3665894207/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3665894207/data/actions_artifacts === RUN TestCSVDiff --- PASS: TestCSVDiff (0.00s) === RUN TestGitDiffTree === RUN TestGitDiffTree/happy_path === RUN TestGitDiffTree/first_commit_(no_parent) === RUN TestGitDiffTree/first_commit_(no_parent),_merge_base_=_true === RUN TestGitDiffTree/base_and_head_same === RUN TestGitDiffTree/useMergeBase_false === RUN TestGitDiffTree/useMergeBase_true === RUN TestGitDiffTree/no_base_set --- PASS: TestGitDiffTree (0.10s) --- PASS: TestGitDiffTree/happy_path (0.03s) --- PASS: TestGitDiffTree/first_commit_(no_parent) (0.01s) --- PASS: TestGitDiffTree/first_commit_(no_parent),_merge_base_=_true (0.01s) --- PASS: TestGitDiffTree/base_and_head_same (0.01s) --- PASS: TestGitDiffTree/useMergeBase_false (0.01s) --- PASS: TestGitDiffTree/useMergeBase_true (0.01s) --- PASS: TestGitDiffTree/no_base_set (0.01s) === RUN TestGitDiffTreeRespectsDiffOrderFile === RUN TestGitDiffTreeRespectsDiffOrderFile/NoDiffOrderFile === RUN TestGitDiffTreeRespectsDiffOrderFile/GlobalDiffOrderFile 2026/09/06 06:40:39 modules/git/git.go:154:InitSimple() [W] git module has been initialized already, duplicate init may work but it's better to fix it 2026/09/06 06:40:39 modules/git/git.go:154:InitSimple() [W] git module has been initialized already, duplicate init may work but it's better to fix it --- PASS: TestGitDiffTreeRespectsDiffOrderFile (0.15s) --- PASS: TestGitDiffTreeRespectsDiffOrderFile/NoDiffOrderFile (0.02s) --- PASS: TestGitDiffTreeRespectsDiffOrderFile/GlobalDiffOrderFile (0.13s) === RUN TestParseGitDiffTree === RUN TestParseGitDiffTree/file_change === RUN TestParseGitDiffTree/file_added === RUN TestParseGitDiffTree/file_deleted === RUN TestParseGitDiffTree/file_renamed === RUN TestParseGitDiffTree/no_changes === RUN TestParseGitDiffTree/multiple_changes === RUN TestParseGitDiffTree/spaces_in_file_path === RUN TestParseGitDiffTree/file_type_changed --- PASS: TestParseGitDiffTree (0.00s) --- PASS: TestParseGitDiffTree/file_change (0.00s) --- PASS: TestParseGitDiffTree/file_added (0.00s) --- PASS: TestParseGitDiffTree/file_deleted (0.00s) --- PASS: TestParseGitDiffTree/file_renamed (0.00s) --- PASS: TestParseGitDiffTree/no_changes (0.00s) --- PASS: TestParseGitDiffTree/multiple_changes (0.00s) --- PASS: TestParseGitDiffTree/spaces_in_file_path (0.00s) --- PASS: TestParseGitDiffTree/file_type_changed (0.00s) === RUN TestGitDiffTreeErrors === RUN TestGitDiffTreeErrors/head_doesn't_exist === RUN TestGitDiffTreeErrors/base_doesn't_exist === RUN TestGitDiffTreeErrors/head_not_set --- PASS: TestGitDiffTreeErrors (0.02s) --- PASS: TestGitDiffTreeErrors/head_doesn't_exist (0.01s) --- PASS: TestGitDiffTreeErrors/base_doesn't_exist (0.01s) --- PASS: TestGitDiffTreeErrors/head_not_set (0.00s) === RUN TestBuildBlobExcerptDiffSection --- PASS: TestBuildBlobExcerptDiffSection (0.02s) === RUN TestParsePatch_skipTo === RUN TestParsePatch_skipTo/readme.md2readme.md === RUN TestParsePatch_skipTo/A_\_B === RUN TestParsePatch_skipTo/A_\_B#01 === RUN TestParsePatch_skipTo/readme.md2readme.md#01 --- PASS: TestParsePatch_skipTo (0.00s) --- PASS: TestParsePatch_skipTo/readme.md2readme.md (0.00s) --- PASS: TestParsePatch_skipTo/A_\_B (0.00s) --- PASS: TestParsePatch_skipTo/A_\_B#01 (0.00s) --- PASS: TestParsePatch_skipTo/readme.md2readme.md#01 (0.00s) === RUN TestParsePatch_singlefile === RUN TestParsePatch_singlefile/readme.md2readme.md === RUN TestParsePatch_singlefile/A_\_B === RUN TestParsePatch_singlefile/really_weird_filename === RUN TestParsePatch_singlefile/delete_file_with_blanks === RUN TestParsePatch_singlefile/rename_a—as === RUN TestParsePatch_singlefile/rename_with_spaces === RUN TestParsePatch_singlefile/ambiguous_deleted === RUN TestParsePatch_singlefile/ambiguous_addition === RUN TestParsePatch_singlefile/rename === RUN TestParsePatch_singlefile/ambiguous_1 === RUN TestParsePatch_singlefile/ambiguous_2 === RUN TestParsePatch_singlefile/minuses-and-pluses --- PASS: TestParsePatch_singlefile (0.00s) --- PASS: TestParsePatch_singlefile/readme.md2readme.md (0.00s) --- PASS: TestParsePatch_singlefile/A_\_B (0.00s) --- PASS: TestParsePatch_singlefile/really_weird_filename (0.00s) --- PASS: TestParsePatch_singlefile/delete_file_with_blanks (0.00s) --- PASS: TestParsePatch_singlefile/rename_a—as (0.00s) --- PASS: TestParsePatch_singlefile/rename_with_spaces (0.00s) --- PASS: TestParsePatch_singlefile/ambiguous_deleted (0.00s) --- PASS: TestParsePatch_singlefile/ambiguous_addition (0.00s) --- PASS: TestParsePatch_singlefile/rename (0.00s) --- PASS: TestParsePatch_singlefile/ambiguous_1 (0.00s) --- PASS: TestParsePatch_singlefile/ambiguous_2 (0.00s) --- PASS: TestParsePatch_singlefile/minuses-and-pluses (0.00s) === RUN TestDiff_LoadCommentsNoOutdated --- PASS: TestDiff_LoadCommentsNoOutdated (0.45s) === RUN TestDiff_LoadCommentsWithOutdated --- PASS: TestDiff_LoadCommentsWithOutdated (0.01s) === RUN TestDiffLine_CanComment --- PASS: TestDiffLine_CanComment (0.00s) === RUN TestDiffLine_GetCommentSide --- PASS: TestDiffLine_GetCommentSide (0.00s) === RUN TestGetDiffRangeWithWhitespaceBehavior --- PASS: TestGetDiffRangeWithWhitespaceBehavior (0.03s) === RUN TestNoCrashes 2026/09/06 06:40:40 services/gitdiff/gitdiff.go:1233:readFileName() [E] Unable to determine name from reader: reader=&{s: i:1 prevRune:-1} 2026/09/06 06:40:40 services/gitdiff/gitdiff.go:1233:readFileName() [E] Unable to determine name from reader: reader=&{s: i:1 prevRune:-1} 2026/09/06 06:40:40 services/gitdiff/gitdiff.go:1211:readFileName() [E] Reader has no file name: reader=&{s:"0 i:4 prevRune:-1} 2026/09/06 06:40:40 services/gitdiff/gitdiff.go:1233:readFileName() [E] Unable to determine name from reader: reader=&{s:"0 i:3 prevRune:-1} --- PASS: TestNoCrashes (0.00s) === RUN TestGeneratePatchForUnchangedLineFromReader === RUN TestGeneratePatchForUnchangedLineFromReader/single_line_with_context === RUN TestGeneratePatchForUnchangedLineFromReader/negative_line_number_(left_side) === RUN TestGeneratePatchForUnchangedLineFromReader/line_near_start_of_file === RUN TestGeneratePatchForUnchangedLineFromReader/first_line_with_context === RUN TestGeneratePatchForUnchangedLineFromReader/zero_context_lines === RUN TestGeneratePatchForUnchangedLineFromReader/multi-line_context === RUN TestGeneratePatchForUnchangedLineFromReader/empty_file --- PASS: TestGeneratePatchForUnchangedLineFromReader (0.00s) --- PASS: TestGeneratePatchForUnchangedLineFromReader/single_line_with_context (0.00s) --- PASS: TestGeneratePatchForUnchangedLineFromReader/negative_line_number_(left_side) (0.00s) --- PASS: TestGeneratePatchForUnchangedLineFromReader/line_near_start_of_file (0.00s) --- PASS: TestGeneratePatchForUnchangedLineFromReader/first_line_with_context (0.00s) --- PASS: TestGeneratePatchForUnchangedLineFromReader/zero_context_lines (0.00s) --- PASS: TestGeneratePatchForUnchangedLineFromReader/multi-line_context (0.00s) --- PASS: TestGeneratePatchForUnchangedLineFromReader/empty_file (0.00s) === RUN TestCalculateHiddenCommentIDsForLine === RUN TestCalculateHiddenCommentIDsForLine/comments_in_hidden_range === RUN TestCalculateHiddenCommentIDsForLine/comments_outside_hidden_range === RUN TestCalculateHiddenCommentIDsForLine/negative_line_numbers_(left_side) === RUN TestCalculateHiddenCommentIDsForLine/boundary_conditions_-_normal_expansion_(both_boundaries_exclusive) === RUN TestCalculateHiddenCommentIDsForLine/boundary_conditions_-_end_of_file_expansion_(RightIdx_inclusive) === RUN TestCalculateHiddenCommentIDsForLine/real-world_scenario_-_start_of_file_with_hunk --- PASS: TestCalculateHiddenCommentIDsForLine (0.00s) --- PASS: TestCalculateHiddenCommentIDsForLine/comments_in_hidden_range (0.00s) --- PASS: TestCalculateHiddenCommentIDsForLine/comments_outside_hidden_range (0.00s) --- PASS: TestCalculateHiddenCommentIDsForLine/negative_line_numbers_(left_side) (0.00s) --- PASS: TestCalculateHiddenCommentIDsForLine/boundary_conditions_-_normal_expansion_(both_boundaries_exclusive) (0.00s) --- PASS: TestCalculateHiddenCommentIDsForLine/boundary_conditions_-_end_of_file_expansion_(RightIdx_inclusive) (0.00s) --- PASS: TestCalculateHiddenCommentIDsForLine/real-world_scenario_-_start_of_file_with_hunk (0.00s) === RUN TestDiffLine_RenderBlobExcerptButtons === RUN TestDiffLine_RenderBlobExcerptButtons/expand_up_button_with_hidden_comments === RUN TestDiffLine_RenderBlobExcerptButtons/expand_up_and_down_buttons_with_pull_request === RUN TestDiffLine_RenderBlobExcerptButtons/no_hidden_comments --- PASS: TestDiffLine_RenderBlobExcerptButtons (0.00s) --- PASS: TestDiffLine_RenderBlobExcerptButtons/expand_up_button_with_hidden_comments (0.00s) --- PASS: TestDiffLine_RenderBlobExcerptButtons/expand_up_and_down_buttons_with_pull_request (0.00s) --- PASS: TestDiffLine_RenderBlobExcerptButtons/no_hidden_comments (0.00s) === RUN TestDiffLine_GetExpandDirection --- PASS: TestDiffLine_GetExpandDirection (0.00s) === RUN TestHighlightCodeLines === RUN TestHighlightCodeLines/CharsetDetecting === RUN TestHighlightCodeLines/LeftLines === RUN TestHighlightCodeLines/CharCR --- PASS: TestHighlightCodeLines (0.01s) --- PASS: TestHighlightCodeLines/CharsetDetecting (0.00s) --- PASS: TestHighlightCodeLines/LeftLines (0.00s) --- PASS: TestHighlightCodeLines/CharCR (0.00s) === RUN TestSyncUserSpecificDiff_UpdatedFiles --- PASS: TestSyncUserSpecificDiff_UpdatedFiles (0.05s) === RUN TestDiffWithHighlight === RUN TestDiffWithHighlight/DiffLineAddDel === RUN TestDiffWithHighlight/DiffLineAddDel/WithDiffTags === RUN TestDiffWithHighlight/DiffLineAddDel/NoRedundantTags === RUN TestDiffWithHighlight/CleanUp === RUN TestDiffWithHighlight/OpenCloseTags === RUN TestDiffWithHighlight/ComplexDiff1 === RUN TestDiffWithHighlight/ComplexDiff2 --- PASS: TestDiffWithHighlight (0.00s) --- PASS: TestDiffWithHighlight/DiffLineAddDel (0.00s) --- PASS: TestDiffWithHighlight/DiffLineAddDel/WithDiffTags (0.00s) --- PASS: TestDiffWithHighlight/DiffLineAddDel/NoRedundantTags (0.00s) --- PASS: TestDiffWithHighlight/CleanUp (0.00s) --- PASS: TestDiffWithHighlight/OpenCloseTags (0.00s) --- PASS: TestDiffWithHighlight/ComplexDiff1 (0.00s) --- PASS: TestDiffWithHighlight/ComplexDiff2 (0.00s) === RUN TestDiffWithHighlightPlaceholder --- PASS: TestDiffWithHighlightPlaceholder (0.00s) === RUN TestDiffWithHighlightPlaceholderExhausted --- PASS: TestDiffWithHighlightPlaceholderExhausted (0.00s) === RUN TestDiffWithHighlightTagMatch === RUN TestDiffWithHighlightTagMatch/DiffLineAdd === RUN TestDiffWithHighlightTagMatch/DiffLineDel --- PASS: TestDiffWithHighlightTagMatch (0.00s) --- PASS: TestDiffWithHighlightTagMatch/DiffLineAdd (0.00s) --- PASS: TestDiffWithHighlightTagMatch/DiffLineDel (0.00s) === RUN TestParseSubmoduleInfo === RUN TestParseSubmoduleInfo/added === RUN TestParseSubmoduleInfo/updated === RUN TestParseSubmoduleInfo/rename === RUN TestParseSubmoduleInfo/deleted === RUN TestParseSubmoduleInfo/moved_and_updated === RUN TestParseSubmoduleInfo/converted_to_file === RUN TestParseSubmoduleInfo/converted_to_submodule --- PASS: TestParseSubmoduleInfo (0.00s) --- PASS: TestParseSubmoduleInfo/added (0.00s) --- PASS: TestParseSubmoduleInfo/updated (0.00s) --- PASS: TestParseSubmoduleInfo/rename (0.00s) --- PASS: TestParseSubmoduleInfo/deleted (0.00s) --- PASS: TestParseSubmoduleInfo/moved_and_updated (0.00s) --- PASS: TestParseSubmoduleInfo/converted_to_file (0.00s) --- PASS: TestParseSubmoduleInfo/converted_to_submodule (0.00s) === RUN TestSubmoduleInfo --- PASS: TestSubmoduleInfo (0.00s) PASS ok gitea.dev/services/gitdiff 1.433s ? gitea.dev/services/indexer [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2747137329/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2747137329/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2747137329/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2747137329/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2747137329/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2747137329/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2747137329/data/actions_artifacts === RUN TestDeleteNotPassedAssignee --- PASS: TestDeleteNotPassedAssignee (0.35s) === RUN TestAddAssigneeIfNotAssignedBlocked --- PASS: TestAddAssigneeIfNotAssignedBlocked (0.01s) === RUN TestAddAssigneesBlockedIsAtomic --- PASS: TestAddAssigneesBlockedIsAtomic (0.07s) === RUN TestUpdateIssuesCommit --- PASS: TestUpdateIssuesCommit (0.08s) === RUN TestUpdateIssuesCommit_Colon --- PASS: TestUpdateIssuesCommit_Colon (0.06s) === RUN TestUpdateIssuesCommit_Issue5957 --- PASS: TestUpdateIssuesCommit_Issue5957 (0.03s) === RUN TestUpdateIssuesCommit_AnotherRepo --- PASS: TestUpdateIssuesCommit_AnotherRepo (0.04s) === RUN TestUpdateIssuesCommit_AnotherRepo_FullAddress --- PASS: TestUpdateIssuesCommit_AnotherRepo_FullAddress (0.05s) === RUN TestUpdateIssuesCommit_AnotherRepoNoPermission --- PASS: TestUpdateIssuesCommit_AnotherRepoNoPermission (0.05s) === RUN TestUpdateIssuesCommit_SelfReference --- PASS: TestUpdateIssuesCommit_SelfReference (0.04s) === RUN TestGetRefEndNamesAndURLs --- PASS: TestGetRefEndNamesAndURLs (0.00s) === RUN TestIssue_DeleteIssue --- PASS: TestIssue_DeleteIssue (0.03s) === RUN TestIssue_AddLabels --- PASS: TestIssue_AddLabels (0.04s) === RUN TestIssue_AddLabel --- PASS: TestIssue_AddLabel (0.02s) === RUN TestChangeMilestoneAssign --- PASS: TestChangeMilestoneAssign (0.02s) === RUN TestIssueAddReaction --- PASS: TestIssueAddReaction (0.01s) === RUN TestIssueAddDuplicateReaction --- PASS: TestIssueAddDuplicateReaction (0.00s) === RUN TestIssueDeleteReaction --- PASS: TestIssueDeleteReaction (0.00s) === RUN TestIssueReactionCount --- PASS: TestIssueReactionCount (0.02s) === RUN TestIssueCommentAddReaction --- PASS: TestIssueCommentAddReaction (0.00s) === RUN TestIssueCommentDeleteReaction --- PASS: TestIssueCommentDeleteReaction (0.01s) === RUN TestIssueCommentReactionCount --- PASS: TestIssueCommentReactionCount (0.01s) === RUN Test_Suggestion === RUN Test_Suggestion/#00 === RUN Test_Suggestion/1 === RUN Test_Suggestion/issue === RUN Test_Suggestion/pull --- PASS: Test_Suggestion (0.01s) --- PASS: Test_Suggestion/#00 (0.00s) --- PASS: Test_Suggestion/1 (0.00s) --- PASS: Test_Suggestion/issue (0.00s) --- PASS: Test_Suggestion/pull (0.00s) PASS ok gitea.dev/services/issue 2.047s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-49660755/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-49660755/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-49660755/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-49660755/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-49660755/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-49660755/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-49660755/data/actions_artifacts === RUN TestAuthenticate === RUN TestAuthenticate/handleLFSToken === RUN TestAuthenticate/authenticate 2026/09/06 06:40:39 services/lfs/server.go:566:authenticate() [W] Authentication failure for provided token with Error: no token 2026/09/06 06:40:39 services/lfs/server.go:566:authenticate() [W] Authentication failure for provided token with Error: invalid token === RUN TestAuthenticate/handleLFSToken_blocks_prohibited_users === RUN TestAuthenticate/handleLFSToken_blocks_users_without_repo_access === RUN TestAuthenticate/handleLFSToken_requires_write_access_for_uploads === RUN TestAuthenticate/handleLFSToken_allows_writes_for_authorized_users --- PASS: TestAuthenticate (0.14s) --- PASS: TestAuthenticate/handleLFSToken (0.00s) --- PASS: TestAuthenticate/authenticate (0.00s) --- PASS: TestAuthenticate/handleLFSToken_blocks_prohibited_users (0.00s) --- PASS: TestAuthenticate/handleLFSToken_blocks_users_without_repo_access (0.00s) --- PASS: TestAuthenticate/handleLFSToken_requires_write_access_for_uploads (0.00s) --- PASS: TestAuthenticate/handleLFSToken_allows_writes_for_authorized_users (0.00s) PASS ok gitea.dev/services/lfs 0.770s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3519854681/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3519854681/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3519854681/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3519854681/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3519854681/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3519854681/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3519854681/data/actions_artifacts === RUN TestMailNewReleaseFiltersUnauthorizedWatchers --- PASS: TestMailNewReleaseFiltersUnauthorizedWatchers (0.35s) === RUN TestComposeIssueComment --- PASS: TestComposeIssueComment (0.04s) === RUN TestMailMentionsComment --- PASS: TestMailMentionsComment (0.01s) === RUN TestComposeIssueMessage --- PASS: TestComposeIssueMessage (0.02s) === RUN TestTemplateSelection --- PASS: TestTemplateSelection (0.02s) === RUN TestTemplateServices --- PASS: TestTemplateServices (0.01s) === RUN TestGenerateAdditionalHeadersForIssue --- PASS: TestGenerateAdditionalHeadersForIssue (0.01s) === RUN TestGenerateMessageIDForIssue === RUN TestGenerateMessageIDForIssue/Open_Issue === RUN TestGenerateMessageIDForIssue/Open_Pull === RUN TestGenerateMessageIDForIssue/Comment_Issue === RUN TestGenerateMessageIDForIssue/Comment_Pull === RUN TestGenerateMessageIDForIssue/Close_Issue === RUN TestGenerateMessageIDForIssue/Close_Pull === RUN TestGenerateMessageIDForIssue/Reopen_Issue === RUN TestGenerateMessageIDForIssue/Reopen_Pull === RUN TestGenerateMessageIDForIssue/Merge_Pull === RUN TestGenerateMessageIDForIssue/Ready_Pull --- PASS: TestGenerateMessageIDForIssue (0.02s) --- PASS: TestGenerateMessageIDForIssue/Open_Issue (0.00s) --- PASS: TestGenerateMessageIDForIssue/Open_Pull (0.00s) --- PASS: TestGenerateMessageIDForIssue/Comment_Issue (0.00s) --- PASS: TestGenerateMessageIDForIssue/Comment_Pull (0.00s) --- PASS: TestGenerateMessageIDForIssue/Close_Issue (0.00s) --- PASS: TestGenerateMessageIDForIssue/Close_Pull (0.00s) --- PASS: TestGenerateMessageIDForIssue/Reopen_Issue (0.00s) --- PASS: TestGenerateMessageIDForIssue/Reopen_Pull (0.00s) --- PASS: TestGenerateMessageIDForIssue/Merge_Pull (0.00s) --- PASS: TestGenerateMessageIDForIssue/Ready_Pull (0.00s) === RUN TestGenerateMessageIDForRelease --- PASS: TestGenerateMessageIDForRelease (0.00s) === RUN TestGenerateMessageIDForActionsWorkflowRunStatusEmail --- PASS: TestGenerateMessageIDForActionsWorkflowRunStatusEmail (0.00s) === RUN TestFromDisplayName === RUN TestFromDisplayName/test === RUN TestFromDisplayName/Hi_Its_ === RUN TestFromDisplayName/Æsir === RUN TestFromDisplayName/new😀user === RUN TestFromDisplayName/template_with_all_available_vars --- PASS: TestFromDisplayName (0.00s) --- PASS: TestFromDisplayName/test (0.00s) --- PASS: TestFromDisplayName/Hi_Its_ (0.00s) --- PASS: TestFromDisplayName/Æsir (0.00s) --- PASS: TestFromDisplayName/new😀user (0.00s) --- PASS: TestFromDisplayName/template_with_all_available_vars (0.00s) === RUN TestEmbedBase64Images === RUN TestEmbedBase64Images/ComposeMessage === RUN TestEmbedBase64Images/EmbedInstanceImageSkipExternalImage === RUN TestEmbedBase64Images/LimitedEmailBodySize --- PASS: TestEmbedBase64Images (0.02s) --- PASS: TestEmbedBase64Images/ComposeMessage (0.01s) --- PASS: TestEmbedBase64Images/EmbedInstanceImageSkipExternalImage (0.00s) --- PASS: TestEmbedBase64Images/LimitedEmailBodySize (0.00s) === RUN TestMailPullRequestPush --- PASS: TestMailPullRequestPush (0.02s) PASS ok gitea.dev/services/mailer 1.378s === RUN TestIsAutomaticReply --- PASS: TestIsAutomaticReply (0.00s) === RUN TestSearchTokenInHeadersCaseInsensitive --- PASS: TestSearchTokenInHeadersCaseInsensitive (0.01s) === RUN TestGetContentFromMailReader --- PASS: TestGetContentFromMailReader (0.00s) === RUN TestExtractReply === RUN TestExtractReply/plain_text === RUN TestExtractReply/crlf_normalized === RUN TestExtractReply/trim_blank_lines === RUN TestExtractReply/signature_delimiter === RUN TestExtractReply/rfc_signature_delimiter === RUN TestExtractReply/mobile_signature === RUN TestExtractReply/quote_only_kept === RUN TestExtractReply/leading_quote_kept === RUN TestExtractReply/trailing_quote_stripped === RUN TestExtractReply/attribution_and_quote === RUN TestExtractReply/attribution_without_quote_marks === RUN TestExtractReply/original_message_separator === RUN TestExtractReply/outlook_header_block === RUN TestExtractReply/french_attribution === RUN TestExtractReply/german_attribution === RUN TestExtractReply/cyrillic_wrote_verb === RUN TestExtractReply/localized_signature === RUN TestExtractReply/swedish_header_block === RUN TestExtractReply/attribution_only_is_empty === RUN TestExtractReply/prose_ending_in_wrote_kept === RUN TestExtractReply/on_with_year_and_no_time_kept === RUN TestExtractReply/date_prose_kept === RUN TestExtractReply/header_needs_from_first === RUN TestExtractReply/indented_header_block === RUN TestExtractReply/chinese_signature === RUN TestExtractReply/japanese_signature === RUN TestExtractReply/chinese_header_block === RUN TestExtractReply/japanese_header_block === RUN TestExtractReply/name-first_attribution === RUN TestExtractReply/chinese_attribution === RUN TestExtractReply/japanese_attribution === RUN TestExtractReply/korean_attribution === RUN TestExtractReply/email_mention_kept === RUN TestExtractReply/trailing_mailbox_glyph === RUN TestExtractReply/on_with_year_and_time_prose_kept === RUN TestExtractReply/spanish_year_and_time_prose_kept === RUN TestExtractReply/chinese_prose_kept === RUN TestExtractReply/korean_prose_kept === RUN TestExtractReply/japanese_prose_kept --- PASS: TestExtractReply (0.01s) --- PASS: TestExtractReply/plain_text (0.00s) --- PASS: TestExtractReply/crlf_normalized (0.00s) --- PASS: TestExtractReply/trim_blank_lines (0.00s) --- PASS: TestExtractReply/signature_delimiter (0.00s) --- PASS: TestExtractReply/rfc_signature_delimiter (0.00s) --- PASS: TestExtractReply/mobile_signature (0.00s) --- PASS: TestExtractReply/quote_only_kept (0.00s) --- PASS: TestExtractReply/leading_quote_kept (0.00s) --- PASS: TestExtractReply/trailing_quote_stripped (0.00s) --- PASS: TestExtractReply/attribution_and_quote (0.00s) --- PASS: TestExtractReply/attribution_without_quote_marks (0.00s) --- PASS: TestExtractReply/original_message_separator (0.00s) --- PASS: TestExtractReply/outlook_header_block (0.00s) --- PASS: TestExtractReply/french_attribution (0.00s) --- PASS: TestExtractReply/german_attribution (0.00s) --- PASS: TestExtractReply/cyrillic_wrote_verb (0.00s) --- PASS: TestExtractReply/localized_signature (0.00s) --- PASS: TestExtractReply/swedish_header_block (0.00s) --- PASS: TestExtractReply/attribution_only_is_empty (0.00s) --- PASS: TestExtractReply/prose_ending_in_wrote_kept (0.00s) --- PASS: TestExtractReply/on_with_year_and_no_time_kept (0.00s) --- PASS: TestExtractReply/date_prose_kept (0.00s) --- PASS: TestExtractReply/header_needs_from_first (0.00s) --- PASS: TestExtractReply/indented_header_block (0.00s) --- PASS: TestExtractReply/chinese_signature (0.00s) --- PASS: TestExtractReply/japanese_signature (0.00s) --- PASS: TestExtractReply/chinese_header_block (0.00s) --- PASS: TestExtractReply/japanese_header_block (0.00s) --- PASS: TestExtractReply/name-first_attribution (0.00s) --- PASS: TestExtractReply/chinese_attribution (0.00s) --- PASS: TestExtractReply/japanese_attribution (0.00s) --- PASS: TestExtractReply/korean_attribution (0.00s) --- PASS: TestExtractReply/email_mention_kept (0.00s) --- PASS: TestExtractReply/trailing_mailbox_glyph (0.00s) --- PASS: TestExtractReply/on_with_year_and_time_prose_kept (0.00s) --- PASS: TestExtractReply/spanish_year_and_time_prose_kept (0.00s) --- PASS: TestExtractReply/chinese_prose_kept (0.00s) --- PASS: TestExtractReply/korean_prose_kept (0.00s) --- PASS: TestExtractReply/japanese_prose_kept (0.00s) PASS ok gitea.dev/services/mailer/incoming 0.260s ? gitea.dev/services/mailer/incoming/payload [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2511361524/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2511361524/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2511361524/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2511361524/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2511361524/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2511361524/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2511361524/data/actions_artifacts === RUN TestGenerateMessageID --- PASS: TestGenerateMessageID (0.00s) === RUN TestToMessage --- PASS: TestToMessage (0.00s) === RUN TestSanitizeEmailAddress --- PASS: TestSanitizeEmailAddress (0.00s) PASS ok gitea.dev/services/mailer/sender 0.524s ? gitea.dev/services/mailer/token [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3798043205/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3798043205/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3798043205/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3798043205/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3798043205/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3798043205/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3798043205/data/actions_artifacts === RUN TestRenderHelperCodePreview --- PASS: TestRenderHelperCodePreview (0.41s) === RUN TestRenderHelperIssueIconTitle === RUN TestRenderHelperIssueIconTitle/RenderInCurrentRepo === RUN TestRenderHelperIssueIconTitle/RenderAcrossRepo --- PASS: TestRenderHelperIssueIconTitle (0.01s) --- PASS: TestRenderHelperIssueIconTitle/RenderInCurrentRepo (0.01s) --- PASS: TestRenderHelperIssueIconTitle/RenderAcrossRepo (0.01s) === RUN TestRenderHelperMention --- PASS: TestRenderHelperMention (0.01s) PASS ok gitea.dev/services/markup 1.403s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1280397171/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1280397171/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1280397171/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1280397171/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1280397171/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1280397171/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1280397171/data/actions_artifacts === RUN TestCodebaseDownloadRepo 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/test 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/milestones 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/tickets/types 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/tickets 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/tickets/2/notes 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /users 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/tickets/1/notes 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/test/merge_requests?count=1&offset=0&query=%22Target+Project%22+is+%22test%22 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/test/merge_requests/100 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/test/commits/readme-mr 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/test/commits/master --- PASS: TestCodebaseDownloadRepo (0.00s) === RUN TestGiteaDownloadRepo 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/version 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/settings/api 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/topics?limit=0&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/labels?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/milestones?limit=50&page=1&state=all 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/releases?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues?limit=50&page=1&state=all&type=issues 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/10/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/9/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/6/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/5/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/4/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/2/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/1/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues?limit=2&page=3&state=all&type=issues 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/4/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/2/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/4/comments?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/comments/116550/reactions 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/comments/116552/reactions 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/pulls?limit=50&page=1&state=all 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/13/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/12/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/11/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/8/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/7/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/3/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/pulls?limit=3&page=1&state=all 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/13/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/12/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/issues/11/reactions?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/pulls/7/reviews?limit=50&page=1 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/pulls/7/reviews/1770/comments 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/pulls/7/reviews/1771/comments 2026/09/06 06:40:39 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo/pulls/7/reviews/1772/comments --- PASS: TestGiteaDownloadRepo (0.02s) === RUN TestGiteaUploadRepo gitea_uploader_test.go:29: --- SKIP: TestGiteaUploadRepo (0.00s) === RUN TestGiteaUploadRemapLocalUser --- PASS: TestGiteaUploadRemapLocalUser (0.32s) === RUN TestGiteaUploadRemapExternalUser --- PASS: TestGiteaUploadRemapExternalUser (0.13s) === RUN TestGitHubDownloadRepo 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/rate_limit 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/milestones?page=1&per_page=100&state=all 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/labels?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/releases?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues?direction=asc&page=1&per_page=2&sort=created&state=all 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/1/reactions?page=1&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/1/reactions?page=2&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/2/reactions?page=1&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/2/reactions?page=2&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/2/reactions?page=3&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/2/reactions?page=4&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/2/comments?direction=asc&per_page=100&sort=created 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/comments/553111966/reactions?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/comments/553111966/reactions?page=2&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/comments/553138856/reactions?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls?direction=asc&page=1&per_page=2&sort=created&state=all 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/3/reactions?page=1&per_page=2 2026/09/06 06:40:40 .../migrations/common.go:18:WarnAndNotice() [W] PR #3 in has invalid PatchURL: https://github.com/go-gitea/test_repo/pull/3.patch baseURL: http://127.0.0.1:45649 2026/09/06 06:40:40 .../migrations/common.go:18:WarnAndNotice() [W] PR #3 in has invalid HeadCloneURL: https://github.com/mrsdizzie/test_repo.git baseURL: http://127.0.0.1:45649 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/4/reactions?page=1&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/issues/4/reactions?page=2&per_page=2 2026/09/06 06:40:40 .../migrations/common.go:18:WarnAndNotice() [W] PR #4 in has invalid PatchURL: https://github.com/go-gitea/test_repo/pull/4.patch baseURL: http://127.0.0.1:45649 2026/09/06 06:40:40 .../migrations/common.go:18:WarnAndNotice() [W] PR #4 in has invalid HeadCloneURL: https://github.com/mrsdizzie/test_repo.git baseURL: http://127.0.0.1:45649 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/3/reviews?per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/3/reviews/315859956/comments?per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/3/reviews/315860062/comments?per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/3/reviews/315861440/comments?per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/3/requested_reviewers 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/4/reviews?per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/4/reviews/338338740/comments?per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/comments/363017488/reactions?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/4/reviews/338339651/comments?per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/4/reviews/338349019/comments?per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/comments/363029944/reactions?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo/pulls/4/requested_reviewers --- PASS: TestGitHubDownloadRepo (0.02s) === RUN TestGithubMultiToken === RUN TestGithubMultiToken/Single_Token === RUN TestGithubMultiToken/Multi_Token --- PASS: TestGithubMultiToken (0.00s) --- PASS: TestGithubMultiToken/Single_Token (0.00s) --- PASS: TestGithubMultiToken/Multi_Token (0.00s) === RUN TestGithubMultiTokenClientSelection --- PASS: TestGithubMultiTokenClientSelection (0.00s) === RUN TestGitlabDownloadRepo 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/version 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/gitea%2Ftest_repo 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/milestones?page=1&per_page=100&state=all 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/labels?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/releases?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues?page=1&per_page=2&sort=asc&state=all 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues/1/award_emoji?page=1&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues/1/award_emoji?page=2&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues/2/award_emoji?page=1&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues/2/award_emoji?page=2&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues/2/award_emoji?page=3&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues/2/award_emoji?page=4&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues/2/discussions?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/issues/2/resource_state_events?page=1&per_page=100 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests?page=1&per_page=2&view=simple 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/4 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/4/award_emoji?page=1&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/3 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/3/award_emoji?page=1&per_page=2 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/1/approvals 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/2/approvals --- PASS: TestGitlabDownloadRepo (0.55s) === RUN TestGitlabVersionProbeUsesMigrationContext --- PASS: TestGitlabVersionProbeUsesMigrationContext (0.00s) === RUN TestGitlabGetReviews --- PASS: TestGitlabGetReviews (0.00s) === RUN TestAwardsToReactions --- PASS: TestAwardsToReactions (0.00s) === RUN TestNoteToComment --- PASS: TestNoteToComment (0.00s) === RUN TestGitlabIIDResolver --- PASS: TestGitlabIIDResolver (0.00s) === RUN TestGogsDownloadRepo 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/lunnytest/TESTREPO 2026/09/06 06:40:40 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/lunnytest/TESTREPO/milestones 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/lunnytest/TESTREPO/labels 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/lunnytest/TESTREPO/issues?page=1&state=open 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/lunnytest/TESTREPO/issues/1/comments --- PASS: TestGogsDownloadRepo (0.01s) === RUN TestMigrateWhiteBlocklist --- PASS: TestMigrateWhiteBlocklist (0.04s) === RUN TestAllowBlockList --- PASS: TestAllowBlockList (0.00s) === RUN TestOneDevVersionResponseSizeLimit --- PASS: TestOneDevVersionResponseSizeLimit (0.00s) === RUN TestOneDevDownloadRepo 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/version/server 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/projects?count=1&offset=0&query=%22Path%22+is+%22go-gitea-test_repo%22 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/projects/149/iterations?count=100&offset=0 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/projects/149/iterations?count=100&offset=100 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues?count=2&offset=0&query=%22Project%22+is+%22go-gitea-test_repo%22&withFields=true 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues/398/iterations 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/users/336 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/users/336/email-addresses 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues/397/iterations 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues/398/comments 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues/398/changes 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/pulls?count=1&offset=0&query=%22Target+Project%22+is+%22go-gitea-test_repo%22 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/pulls/186/merge-preview 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/pulls/186/reviews 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/users/317 2026/09/06 06:40:41 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/users/317/email-addresses --- PASS: TestOneDevDownloadRepo (0.01s) === RUN TestRepositoryRestorer_GetReleases_LocalFileInclusion --- PASS: TestRepositoryRestorer_GetReleases_LocalFileInclusion (0.00s) === RUN TestRepositoryRestorer_GetPullRequestsStripsUnsafeCloneURL --- PASS: TestRepositoryRestorer_GetPullRequestsStripsUnsafeCloneURL (0.00s) 2026/09/06 06:40:41 .../migrations/common.go:18:WarnAndNotice() [W] PR #1 in &{{} /home/buildozer/aports/community/gitea/tmp/TestRepositoryRestorer_GetPullRequestsStripsUnsafeCloneURL3253389871/001 owner repo %!s(bool=false)} has invalid HeadCloneURL: http://127.0.0.1/private.git baseURL: file:///home/buildozer/aports/community/gitea/tmp/TestRepositoryRestorer_GetPullRequestsStripsUnsafeCloneURL3253389871/001 PASS ok gitea.dev/services/migrations 1.947s === RUN Test_checkRecoverableSyncError --- PASS: Test_checkRecoverableSyncError (0.00s) PASS ok gitea.dev/services/mirror 0.487s ? gitea.dev/services/notify [no test files] === RUN TestGrantAdditionalScopes === RUN TestGrantAdditionalScopes/scope: === RUN TestGrantAdditionalScopes/scope:openid_profile_email === RUN TestGrantAdditionalScopes/scope:openid_profile_email_groups === RUN TestGrantAdditionalScopes/scope:openid_profile_email_all === RUN TestGrantAdditionalScopes/scope:openid_profile_email_read:user_all === RUN TestGrantAdditionalScopes/scope:openid_profile_email_groups_read:user === RUN TestGrantAdditionalScopes/scope:read:user_read:repository === RUN TestGrantAdditionalScopes/scope:read:user_write:issue_public-only === RUN TestGrantAdditionalScopes/scope:openid_profile_email_read:user === RUN TestGrantAdditionalScopes/scope:read:invalid_scope === RUN TestGrantAdditionalScopes/scope:read:invalid_scope,write:scope_invalid,just-plain-wrong --- PASS: TestGrantAdditionalScopes (0.00s) --- PASS: TestGrantAdditionalScopes/scope: (0.00s) --- PASS: TestGrantAdditionalScopes/scope:openid_profile_email (0.00s) --- PASS: TestGrantAdditionalScopes/scope:openid_profile_email_groups (0.00s) --- PASS: TestGrantAdditionalScopes/scope:openid_profile_email_all (0.00s) --- PASS: TestGrantAdditionalScopes/scope:openid_profile_email_read:user_all (0.00s) --- PASS: TestGrantAdditionalScopes/scope:openid_profile_email_groups_read:user (0.00s) --- PASS: TestGrantAdditionalScopes/scope:read:user_read:repository (0.00s) --- PASS: TestGrantAdditionalScopes/scope:read:user_write:issue_public-only (0.00s) --- PASS: TestGrantAdditionalScopes/scope:openid_profile_email_read:user (0.00s) --- PASS: TestGrantAdditionalScopes/scope:read:invalid_scope (0.00s) --- PASS: TestGrantAdditionalScopes/scope:read:invalid_scope,write:scope_invalid,just-plain-wrong (0.00s) === RUN TestECDSASigningKeyToJWK === RUN TestECDSASigningKeyToJWK/P-256 === RUN TestECDSASigningKeyToJWK/P-384 === RUN TestECDSASigningKeyToJWK/P-521 --- PASS: TestECDSASigningKeyToJWK (0.03s) --- PASS: TestECDSASigningKeyToJWK/P-256 (0.00s) --- PASS: TestECDSASigningKeyToJWK/P-384 (0.01s) --- PASS: TestECDSASigningKeyToJWK/P-521 (0.02s) PASS ok gitea.dev/services/oauth2_provider 0.052s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-180536354/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-180536354/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-180536354/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-180536354/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-180536354/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-180536354/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-180536354/data/actions_artifacts === RUN TestOrg === RUN TestOrg/UpdateOrgEmailAddress === RUN TestOrg/DeleteOrganization === RUN TestOrg/ChangeVisibilityWithUserFork === RUN TestOrg/ChangeVisibilityClearsWatchesAndStars 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:6 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:12 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:15 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:16 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:40 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:17 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test --- PASS: TestOrg (0.24s) --- PASS: TestOrg/UpdateOrgEmailAddress (0.00s) --- PASS: TestOrg/DeleteOrganization (0.08s) --- PASS: TestOrg/ChangeVisibilityWithUserFork (0.01s) --- PASS: TestOrg/ChangeVisibilityClearsWatchesAndStars (0.02s) === RUN TestTeam_AddMember --- PASS: TestTeam_AddMember (0.18s) === RUN TestTeam_RemoveMember --- PASS: TestTeam_RemoveMember (0.04s) === RUN TestRemoveTeamMemberRemovesSubscriptionsAndStopwatches --- PASS: TestRemoveTeamMemberRemovesSubscriptionsAndStopwatches (0.02s) === RUN TestNewTeam --- PASS: TestNewTeam (0.06s) === RUN TestUpdateTeam --- PASS: TestUpdateTeam (0.02s) === RUN TestUpdateTeam2 --- PASS: TestUpdateTeam2 (0.01s) === RUN TestDeleteTeam --- PASS: TestDeleteTeam (0.03s) === RUN TestAddTeamMember --- PASS: TestAddTeamMember (0.18s) === RUN TestRemoveTeamMember --- PASS: TestRemoveTeamMember (0.04s) === RUN TestIncludesAllRepositoriesTeams 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestIncludesAllRepositoriesTeams (0.27s) === RUN TestUser_RemoveMember --- PASS: TestUser_RemoveMember (0.13s) === RUN TestRemoveOrgUser --- PASS: TestRemoveOrgUser (0.08s) PASS ok gitea.dev/services/org 2.162s ? gitea.dev/services/packages [no test files] ? gitea.dev/services/packages/alpine [no test files] === RUN TestJoinFields --- PASS: TestJoinFields (0.00s) === RUN TestCompareVersions --- PASS: TestCompareVersions (0.00s) PASS ok gitea.dev/services/packages/arch 0.178s ? gitea.dev/services/packages/cargo [no test files] ? gitea.dev/services/packages/cleanup [no test files] ? gitea.dev/services/packages/container [no test files] ? gitea.dev/services/packages/debian [no test files] ? gitea.dev/services/packages/pkgspec [no test files] ? gitea.dev/services/packages/rpm [no test files] ? gitea.dev/services/packages/terraform [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3767762736/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3767762736/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3767762736/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3767762736/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3767762736/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3767762736/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3767762736/data/actions_artifacts === RUN Test_Projects === RUN Test_Projects/User_projects === RUN Test_Projects/User_projects/Authenticated_user === RUN Test_Projects/User_projects/Anonymous_user === RUN Test_Projects/User_projects/Authenticated_user_with_no_permission_to_the_private_repo === RUN Test_Projects/Org_projects === RUN Test_Projects/Org_projects/Authenticated_user === RUN Test_Projects/Org_projects/Anonymous_user === RUN Test_Projects/Org_projects/Authenticated_user_with_no_permission_to_the_private_repo === RUN Test_Projects/Org_projects/Org_owner_team_member === RUN Test_Projects/Repository_projects === RUN Test_Projects/Repository_projects/Authenticated_user === RUN Test_Projects/Repository_projects/Anonymous_user === RUN Test_Projects/Repository_projects/Authenticated_user_with_no_permission_to_the_private_repo --- PASS: Test_Projects (0.38s) --- PASS: Test_Projects/User_projects (0.03s) --- PASS: Test_Projects/User_projects/Authenticated_user (0.02s) --- PASS: Test_Projects/User_projects/Anonymous_user (0.01s) --- PASS: Test_Projects/User_projects/Authenticated_user_with_no_permission_to_the_private_repo (0.01s) --- PASS: Test_Projects/Org_projects (0.10s) --- PASS: Test_Projects/Org_projects/Authenticated_user (0.03s) --- PASS: Test_Projects/Org_projects/Anonymous_user (0.02s) --- PASS: Test_Projects/Org_projects/Authenticated_user_with_no_permission_to_the_private_repo (0.01s) --- PASS: Test_Projects/Org_projects/Org_owner_team_member (0.01s) --- PASS: Test_Projects/Repository_projects (0.03s) --- PASS: Test_Projects/Repository_projects/Authenticated_user (0.01s) --- PASS: Test_Projects/Repository_projects/Anonymous_user (0.01s) --- PASS: Test_Projects/Repository_projects/Authenticated_user_with_no_permission_to_the_private_repo (0.01s) PASS ok gitea.dev/services/projects 1.170s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2637724662/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2637724662/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2637724662/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2637724662/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2637724662/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2637724662/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2637724662/data/actions_artifacts === RUN TestPullRequest_AddToTaskQueue --- PASS: TestPullRequest_AddToTaskQueue (0.29s) === RUN TestCheckSigningRequirementsHeadCommits --- PASS: TestCheckSigningRequirementsHeadCommits (0.03s) === RUN TestMarkPullRequestAsMergeable --- PASS: TestMarkPullRequestAsMergeable (0.02s) === RUN TestCreatePushPullCommentForcePushDeletesOldComments === RUN TestCreatePushPullCommentForcePushDeletesOldComments/base-branch-only === RUN TestCreatePushPullCommentForcePushDeletesOldComments/force-push-ignores-missing-old-commit === RUN TestCreatePushPullCommentForcePushDeletesOldComments/head-vs-base-branch --- PASS: TestCreatePushPullCommentForcePushDeletesOldComments (0.09s) --- PASS: TestCreatePushPullCommentForcePushDeletesOldComments/base-branch-only (0.04s) --- PASS: TestCreatePushPullCommentForcePushDeletesOldComments/force-push-ignores-missing-old-commit (0.03s) --- PASS: TestCreatePushPullCommentForcePushDeletesOldComments/head-vs-base-branch (0.02s) === RUN TestMergeRequiredContextsCommitStatus --- PASS: TestMergeRequiredContextsCommitStatus (0.00s) === RUN TestEffectiveRequiredContexts === RUN TestEffectiveRequiredContexts/nil_protected_branch:_nil === RUN TestEffectiveRequiredContexts/status_checks_disabled,_no_required_scoped:_nothing_required === RUN TestEffectiveRequiredContexts/owner_with_no_scoped_sources:_configured_contexts_unchanged === RUN TestEffectiveRequiredContexts/required_workflow_patterns_appended === RUN TestEffectiveRequiredContexts/status_checks_disabled,_with_required_scoped:_only_the_scoped_patterns_gate === RUN TestEffectiveRequiredContexts/several_rules_union_their_enabled_contexts,_deduplicated;_a_disabled_rule_contributes_none --- PASS: TestEffectiveRequiredContexts (0.01s) --- PASS: TestEffectiveRequiredContexts/nil_protected_branch:_nil (0.00s) --- PASS: TestEffectiveRequiredContexts/status_checks_disabled,_no_required_scoped:_nothing_required (0.00s) --- PASS: TestEffectiveRequiredContexts/owner_with_no_scoped_sources:_configured_contexts_unchanged (0.00s) --- PASS: TestEffectiveRequiredContexts/required_workflow_patterns_appended (0.00s) --- PASS: TestEffectiveRequiredContexts/status_checks_disabled,_with_required_scoped:_only_the_scoped_patterns_gate (0.00s) --- PASS: TestEffectiveRequiredContexts/several_rules_union_their_enabled_contexts,_deduplicated;_a_disabled_rule_contributes_none (0.00s) === RUN Test_expandDefaultMergeMessage === RUN Test_expandDefaultMergeMessage/single_line === RUN Test_expandDefaultMergeMessage/multiple_lines === RUN Test_expandDefaultMergeMessage/leading_newlines --- PASS: Test_expandDefaultMergeMessage (0.00s) --- PASS: Test_expandDefaultMergeMessage/single_line (0.00s) --- PASS: Test_expandDefaultMergeMessage/multiple_lines (0.00s) --- PASS: Test_expandDefaultMergeMessage/leading_newlines (0.00s) === RUN TestAddCommitMessageTailer --- PASS: TestAddCommitMessageTailer (0.00s) === RUN TestPullRequestMergeable === RUN TestPullRequestMergeable/NoConflict-MergeTree === RUN TestPullRequestMergeable/NoConflict-TmpRepo === RUN TestPullRequestMergeable/Conflict-MergeTree === RUN TestPullRequestMergeable/Conflict-TmpRepo === RUN TestPullRequestMergeable/Empty-MergeTree === RUN TestPullRequestMergeable/Empty-TmpRepo --- PASS: TestPullRequestMergeable (0.41s) --- PASS: TestPullRequestMergeable/NoConflict-MergeTree (0.02s) --- PASS: TestPullRequestMergeable/NoConflict-TmpRepo (0.11s) --- PASS: TestPullRequestMergeable/Conflict-MergeTree (0.02s) --- PASS: TestPullRequestMergeable/Conflict-TmpRepo (0.12s) --- PASS: TestPullRequestMergeable/Empty-MergeTree (0.02s) --- PASS: TestPullRequestMergeable/Empty-TmpRepo (0.11s) === RUN TestPullRequest_FormatSquashMergeCommitMessages --- PASS: TestPullRequest_FormatSquashMergeCommitMessages (0.00s) === RUN TestPullRequest_GetDefaultMergeMessage_InternalTracker --- PASS: TestPullRequest_GetDefaultMergeMessage_InternalTracker (0.00s) === RUN TestPullRequest_GetDefaultMergeMessage_ExternalTracker --- PASS: TestPullRequest_GetDefaultMergeMessage_ExternalTracker (0.00s) === RUN TestBuildSquashMergeCommitMessages --- PASS: TestBuildSquashMergeCommitMessages (0.00s) === RUN TestIsUserAllowedToUpdate === RUN TestIsUserAllowedToUpdate/RespectsProtectedBranch === RUN TestIsUserAllowedToUpdate/DisallowRebaseWhenConfigDisabled === RUN TestIsUserAllowedToUpdate/DisallowMergeWhenConfigDisabled === RUN TestIsUserAllowedToUpdate/ReadOnlyAccessDenied === RUN TestIsUserAllowedToUpdate/ProtectedBranchAllowsPushWithoutRebase === RUN TestIsUserAllowedToUpdate/MaintainerEditRespectsPosterPermissions === RUN TestIsUserAllowedToUpdate/MaintainerEditInheritsPosterPermissions === RUN TestIsUserAllowedToUpdate/MaintainerEditInheritsPosterPermissionsRebaseDisabled --- PASS: TestIsUserAllowedToUpdate (0.04s) --- PASS: TestIsUserAllowedToUpdate/RespectsProtectedBranch (0.00s) --- PASS: TestIsUserAllowedToUpdate/DisallowRebaseWhenConfigDisabled (0.00s) --- PASS: TestIsUserAllowedToUpdate/DisallowMergeWhenConfigDisabled (0.00s) --- PASS: TestIsUserAllowedToUpdate/ReadOnlyAccessDenied (0.00s) --- PASS: TestIsUserAllowedToUpdate/ProtectedBranchAllowsPushWithoutRebase (0.00s) --- PASS: TestIsUserAllowedToUpdate/MaintainerEditRespectsPosterPermissions (0.01s) --- PASS: TestIsUserAllowedToUpdate/MaintainerEditInheritsPosterPermissions (0.01s) --- PASS: TestIsUserAllowedToUpdate/MaintainerEditInheritsPosterPermissionsRebaseDisabled (0.01s) === RUN TestDismissReview --- PASS: TestDismissReview (0.02s) === RUN TestRepoGetReviewers --- PASS: TestRepoGetReviewers (0.01s) === RUN TestRepoGetReviewerTeams --- PASS: TestRepoGetReviewerTeams (0.00s) PASS ok gitea.dev/services/pull 1.866s 2026/09/06 06:40:40 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3939615860/data/attachments 2026/09/06 06:40:40 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3939615860/data/avatars 2026/09/06 06:40:40 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3939615860/data/repo-avatars 2026/09/06 06:40:40 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3939615860/data/repo-archive 2026/09/06 06:40:40 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3939615860/data/packages 2026/09/06 06:40:40 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3939615860/data/actions_log 2026/09/06 06:40:40 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3939615860/data/actions_artifacts === RUN TestGenerateReleaseNotes === RUN TestGenerateReleaseNotes/ChangeLogsWithPRs === RUN TestGenerateReleaseNotes/NoPreviousTag === RUN TestGenerateReleaseNotes/EmptyPreviousTagWithExistingTags --- PASS: TestGenerateReleaseNotes (0.28s) --- PASS: TestGenerateReleaseNotes/ChangeLogsWithPRs (0.03s) --- PASS: TestGenerateReleaseNotes/NoPreviousTag (0.06s) --- PASS: TestGenerateReleaseNotes/EmptyPreviousTagWithExistingTags (0.01s) === RUN TestRelease_Create --- PASS: TestRelease_Create (0.10s) === RUN TestRelease_Update --- PASS: TestRelease_Update (0.13s) === RUN TestRelease_createTag --- PASS: TestRelease_createTag (0.07s) === RUN TestCreateNewTag --- PASS: TestCreateNewTag (0.02s) PASS ok gitea.dev/services/release 1.859s 2026/09/06 06:40:40 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/attachments 2026/09/06 06:40:40 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/avatars 2026/09/06 06:40:40 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/repo-avatars 2026/09/06 06:40:40 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/repo-archive 2026/09/06 06:40:40 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/packages 2026/09/06 06:40:40 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/actions_log 2026/09/06 06:40:40 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/actions_artifacts === RUN TestCheckUnadoptedRepositories_Add --- PASS: TestCheckUnadoptedRepositories_Add (0.00s) === RUN TestCheckUnadoptedRepositories --- PASS: TestCheckUnadoptedRepositories (0.14s) === RUN TestListUnadoptedRepositories_ListOptions --- PASS: TestListUnadoptedRepositories_ListOptions (0.04s) === RUN TestAdoptRepository --- PASS: TestAdoptRepository (0.05s) === RUN TestUploadAvatar --- PASS: TestUploadAvatar (0.02s) === RUN TestUploadBigAvatar --- PASS: TestUploadBigAvatar (0.01s) === RUN TestDeleteAvatar --- PASS: TestDeleteAvatar (0.00s) === RUN TestGenerateAvatar --- PASS: TestGenerateAvatar (0.00s) === RUN TestRepository_AddCollaborator --- PASS: TestRepository_AddCollaborator (0.52s) === RUN TestRepository_DeleteCollaboration --- PASS: TestRepository_DeleteCollaboration (0.11s) === RUN TestRepository_DeleteCollaborationRemovesSubscriptionsAndStopwatches --- PASS: TestRepository_DeleteCollaborationRemovesSubscriptionsAndStopwatches (0.02s) === RUN TestRepository_ContributorsGraph --- PASS: TestRepository_ContributorsGraph (0.03s) === RUN TestCreateRepositoryDirectly 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 .../repository/create.go:285:CreateRepositoryDirectly() [E] Files already exist in user2/created-repo and we are not going to adopt or delete. 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestCreateRepositoryDirectly (0.07s) === RUN TestForkRepository --- PASS: TestForkRepository (0.05s) === RUN TestForkRepositoryCleanup 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/repository/fork.go:139:ForkRepository() [E] Files already exist in user2/test and we are not going to adopt or delete. 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestForkRepositoryCleanup (0.06s) === RUN TestGiteaTemplate --- PASS: TestGiteaTemplate (0.00s) === RUN TestFilePathSanitize --- PASS: TestFilePathSanitize (0.00s) === RUN TestProcessGiteaTemplateFileGenerate --- PASS: TestProcessGiteaTemplateFileGenerate (0.01s) === RUN TestProcessGiteaTemplateFileRead --- PASS: TestProcessGiteaTemplateFileRead (0.00s) === RUN TestTransformers --- PASS: TestTransformers (0.00s) === RUN Test_detectLicense === RUN Test_detectLicense/empty === RUN Test_detectLicense/no_detected_license === RUN Test_detectLicense/single_license_test:_0BSD === RUN Test_detectLicense/single_license_test:_AGPL-3.0 === RUN Test_detectLicense/single_license_test:_Apache-2.0 === RUN Test_detectLicense/single_license_test:_BSD-2-Clause === RUN Test_detectLicense/single_license_test:_BSD-3-Clause === RUN Test_detectLicense/single_license_test:_BSD-3-Clause-Clear === RUN Test_detectLicense/single_license_test:_BSL-1.0 === RUN Test_detectLicense/single_license_test:_CC-BY-4.0 === RUN Test_detectLicense/single_license_test:_CC-BY-SA-4.0 === RUN Test_detectLicense/single_license_test:_CC0-1.0 === RUN Test_detectLicense/single_license_test:_EPL-1.0 === RUN Test_detectLicense/single_license_test:_EPL-2.0 === RUN Test_detectLicense/single_license_test:_EUPL-1.2 === RUN Test_detectLicense/single_license_test:_GPL-2.0 === RUN Test_detectLicense/single_license_test:_GPL-3.0 === RUN Test_detectLicense/single_license_test:_ISC === RUN Test_detectLicense/single_license_test:_LGPL-2.1 === RUN Test_detectLicense/single_license_test:_LGPL-3.0 === RUN Test_detectLicense/single_license_test:_MIT === RUN Test_detectLicense/single_license_test:_MIT-0 === RUN Test_detectLicense/single_license_test:_MPL-2.0 === RUN Test_detectLicense/single_license_test:_MulanPSL-2.0 === RUN Test_detectLicense/single_license_test:_OFL-1.1 === RUN Test_detectLicense/single_license_test:_OSL-3.0 === RUN Test_detectLicense/single_license_test:_UPL-1.0 === RUN Test_detectLicense/single_license_test:_Unlicense === RUN Test_detectLicense/single_license_test:_WTFPL === RUN Test_detectLicense/single_license_test:_Zlib === RUN Test_detectLicense/multiple_licenses_test --- PASS: Test_detectLicense (0.42s) --- PASS: Test_detectLicense/empty (0.00s) --- PASS: Test_detectLicense/no_detected_license (0.00s) --- PASS: Test_detectLicense/single_license_test:_0BSD (0.00s) --- PASS: Test_detectLicense/single_license_test:_AGPL-3.0 (0.02s) --- PASS: Test_detectLicense/single_license_test:_Apache-2.0 (0.01s) --- PASS: Test_detectLicense/single_license_test:_BSD-2-Clause (0.00s) --- PASS: Test_detectLicense/single_license_test:_BSD-3-Clause (0.00s) --- PASS: Test_detectLicense/single_license_test:_BSD-3-Clause-Clear (0.00s) --- PASS: Test_detectLicense/single_license_test:_BSL-1.0 (0.00s) --- PASS: Test_detectLicense/single_license_test:_CC-BY-4.0 (0.02s) --- PASS: Test_detectLicense/single_license_test:_CC-BY-SA-4.0 (0.01s) --- PASS: Test_detectLicense/single_license_test:_CC0-1.0 (0.00s) --- PASS: Test_detectLicense/single_license_test:_EPL-1.0 (0.01s) --- PASS: Test_detectLicense/single_license_test:_EPL-2.0 (0.01s) --- PASS: Test_detectLicense/single_license_test:_EUPL-1.2 (0.01s) --- PASS: Test_detectLicense/single_license_test:_GPL-2.0 (0.02s) --- PASS: Test_detectLicense/single_license_test:_GPL-3.0 (0.03s) --- PASS: Test_detectLicense/single_license_test:_ISC (0.00s) --- PASS: Test_detectLicense/single_license_test:_LGPL-2.1 (0.02s) --- PASS: Test_detectLicense/single_license_test:_LGPL-3.0 (0.05s) --- PASS: Test_detectLicense/single_license_test:_MIT (0.00s) --- PASS: Test_detectLicense/single_license_test:_MIT-0 (0.00s) --- PASS: Test_detectLicense/single_license_test:_MPL-2.0 (0.01s) --- PASS: Test_detectLicense/single_license_test:_MulanPSL-2.0 (0.00s) --- PASS: Test_detectLicense/single_license_test:_OFL-1.1 (0.00s) --- PASS: Test_detectLicense/single_license_test:_OSL-3.0 (0.01s) --- PASS: Test_detectLicense/single_license_test:_UPL-1.0 (0.00s) --- PASS: Test_detectLicense/single_license_test:_Unlicense (0.00s) --- PASS: Test_detectLicense/single_license_test:_WTFPL (0.00s) --- PASS: Test_detectLicense/single_license_test:_Zlib (0.00s) --- PASS: Test_detectLicense/multiple_licenses_test (0.00s) === RUN TestTeam_AddRepository --- PASS: TestTeam_AddRepository (0.28s) === RUN TestAttachLinkedTypeAndRepoID === RUN TestAttachLinkedTypeAndRepoID/LinkedIssue === RUN TestAttachLinkedTypeAndRepoID/LinkedComment === RUN TestAttachLinkedTypeAndRepoID/LinkedRelease === RUN TestAttachLinkedTypeAndRepoID/Notlinked --- PASS: TestAttachLinkedTypeAndRepoID (0.01s) --- PASS: TestAttachLinkedTypeAndRepoID/LinkedIssue (0.00s) --- PASS: TestAttachLinkedTypeAndRepoID/LinkedComment (0.00s) --- PASS: TestAttachLinkedTypeAndRepoID/LinkedRelease (0.00s) --- PASS: TestAttachLinkedTypeAndRepoID/Notlinked (0.00s) === RUN TestUpdateRepositoryVisibilityChanged --- PASS: TestUpdateRepositoryVisibilityChanged (0.01s) === RUN TestRepository_HasWiki --- PASS: TestRepository_HasWiki (0.07s) === RUN TestMakeRepoPrivateClearsWatches 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:1 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:2 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:3 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:5 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:11 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test --- PASS: TestMakeRepoPrivateClearsWatches (0.00s) === RUN TestUpdateRepositoryClearsWatchesOnVisibilityChange 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:1 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:2 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:3 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:5 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test 2026/09/06 06:40:42 .../indexer/issues/util.go:178:pushIssueIndexerQueue() [W] Trying to push &{ID:11 IsDelete:false IDs:[]} to issue indexer queue, but the queue is not initialized, it's OK if it's a unit test --- PASS: TestUpdateRepositoryClearsWatchesOnVisibilityChange (0.02s) === RUN TestTransferOwnership --- PASS: TestTransferOwnership (0.16s) === RUN TestStartRepositoryTransferSetPermission --- PASS: TestStartRepositoryTransferSetPermission (0.19s) === RUN TestRepositoryTransfer --- PASS: TestRepositoryTransfer (0.03s) === RUN TestRepositoryTransferRejection --- PASS: TestRepositoryTransferRejection (0.02s) === RUN TestTeam_HasRepository --- PASS: TestTeam_HasRepository (0.03s) === RUN TestTeam_RemoveRepository --- PASS: TestTeam_RemoveRepository (0.27s) === RUN TestDeleteOwnerRepositoriesDirectly 2026/09/06 06:40:42 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [0b/8d/8b5f15046343fd32f451df93acc2bdd9e6373be478b968e4cad6b6647351]: LFS isn't enabled 2026/09/06 06:40:43 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [2e/cc/db43825d2a49d99d542daa20075cff1d97d9d2349a8977efe9c03661737c]: LFS isn't enabled 2026/09/06 06:40:43 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [7b/6b/2c88dba9f760a1a58469b67fee2b698ef7e9399c4ca4f34a14ccbe39f623]: LFS isn't enabled 2026/09/06 06:40:43 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [9d/17/2e5c64b4f0024b9901ec6afe9ea052f3c9b6ff9f4b07956d8c48c86fca82]: LFS isn't enabled 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestDeleteOwnerRepositoriesDirectly (0.21s) === RUN TestDeleteRepositoryDirectlyPurgesRepoScopedRows 2026/09/06 06:40:43 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestDeleteRepositoryDirectlyPurgesRepoScopedRows (0.15s) === RUN TestGarbageCollectLFSMetaObjects 2026/09/06 06:40:43 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/attachments 2026/09/06 06:40:43 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/avatars 2026/09/06 06:40:43 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/repo-avatars 2026/09/06 06:40:43 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/lfs 2026/09/06 06:40:43 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/repo-archive 2026/09/06 06:40:43 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/packages 2026/09/06 06:40:43 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/actions_log 2026/09/06 06:40:43 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/actions_artifacts --- PASS: TestGarbageCollectLFSMetaObjects (0.11s) === RUN TestGarbageCollectLFSMetaObjectsForRepoAutoFix 2026/09/06 06:40:43 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/attachments 2026/09/06 06:40:43 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/avatars 2026/09/06 06:40:43 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/repo-avatars 2026/09/06 06:40:43 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/lfs 2026/09/06 06:40:43 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/repo-archive 2026/09/06 06:40:43 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/packages 2026/09/06 06:40:43 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/actions_log 2026/09/06 06:40:43 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:43 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3864207123/data/actions_artifacts --- PASS: TestGarbageCollectLFSMetaObjectsForRepoAutoFix (0.06s) PASS ok gitea.dev/services/repository 4.084s 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-853439289/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-853439289/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-853439289/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-853439289/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-853439289/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-853439289/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-853439289/data/actions_artifacts === RUN TestArchiveQueueItemJSON --- PASS: TestArchiveQueueItemJSON (0.00s) === RUN TestArchive_Basic === RUN TestArchive_Basic/BadPath --- PASS: TestArchive_Basic (2.21s) --- PASS: TestArchive_Basic/BadPath (0.01s) PASS ok gitea.dev/services/repository/archiver 2.968s ? gitea.dev/services/repository/commitstatus [no test files] 2026/09/06 06:40:39 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2909432861/data/attachments 2026/09/06 06:40:39 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2909432861/data/avatars 2026/09/06 06:40:39 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2909432861/data/repo-avatars 2026/09/06 06:40:39 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2909432861/data/repo-archive 2026/09/06 06:40:39 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2909432861/data/packages 2026/09/06 06:40:39 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2909432861/data/actions_log 2026/09/06 06:40:39 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:39 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2909432861/data/actions_artifacts === RUN TestGetContents === RUN TestGetContents/GetBlobBySHA --- PASS: TestGetContents (0.20s) --- PASS: TestGetContents/GetBlobBySHA (0.00s) === RUN TestGetDiffPreview === RUN TestGetDiffPreview/Errors === RUN TestGetDiffPreview/Errors/empty_repo === RUN TestGetDiffPreview/Errors/bad_branch === RUN TestGetDiffPreview/Errors/empty_treePath === RUN TestGetDiffPreview/with_given_branch === RUN TestGetDiffPreview/empty_branch,_same_results --- PASS: TestGetDiffPreview (0.22s) --- PASS: TestGetDiffPreview/Errors (0.05s) --- PASS: TestGetDiffPreview/Errors/empty_repo (0.00s) --- PASS: TestGetDiffPreview/Errors/bad_branch (0.02s) --- PASS: TestGetDiffPreview/Errors/empty_treePath (0.03s) --- PASS: TestGetDiffPreview/with_given_branch (0.05s) --- PASS: TestGetDiffPreview/empty_branch,_same_results (0.04s) === RUN TestCleanUploadFileName --- PASS: TestCleanUploadFileName (0.00s) === RUN TestGitPatchPrepare --- PASS: TestGitPatchPrepare (0.09s) === RUN TestTemporaryUploadRepository === RUN TestTemporaryUploadRepository/sha1 === RUN TestTemporaryUploadRepository/sha256 --- PASS: TestTemporaryUploadRepository (0.05s) --- PASS: TestTemporaryUploadRepository/sha1 (0.02s) --- PASS: TestTemporaryUploadRepository/sha256 (0.03s) === RUN TestGetTreeBySHA --- PASS: TestGetTreeBySHA (0.09s) === RUN TestGetTreeViewNodes --- PASS: TestGetTreeViewNodes (0.08s) PASS ok gitea.dev/services/repository/files 1.482s === RUN TestReleaseUnusedColors --- PASS: TestReleaseUnusedColors (0.00s) === RUN TestParseGlyphs --- PASS: TestParseGlyphs (0.00s) === RUN TestCommitStringParsing === RUN TestCommitStringParsing/normal === RUN TestCommitStringParsing/extra_pipe === RUN TestCommitStringParsing/extra_'Data:' --- PASS: TestCommitStringParsing (0.00s) --- PASS: TestCommitStringParsing/normal (0.00s) --- PASS: TestCommitStringParsing/extra_pipe (0.00s) --- PASS: TestCommitStringParsing/extra_'Data:' (0.00s) PASS ok gitea.dev/services/repository/gitgraph 0.236s === RUN TestValidateName --- PASS: TestValidateName (0.00s) PASS ok gitea.dev/services/secrets 0.099s ? gitea.dev/services/task [no test files] ? gitea.dev/services/uinotification [no test files] 2026/09/06 06:40:40 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3589396001/data/attachments 2026/09/06 06:40:40 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3589396001/data/avatars 2026/09/06 06:40:40 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3589396001/data/repo-avatars 2026/09/06 06:40:40 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3589396001/data/repo-archive 2026/09/06 06:40:40 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3589396001/data/packages 2026/09/06 06:40:40 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3589396001/data/actions_log 2026/09/06 06:40:40 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3589396001/data/actions_artifacts === RUN TestCanBlockUser --- PASS: TestCanBlockUser (0.22s) === RUN TestCanUnblockUser --- PASS: TestCanUnblockUser (0.01s) === RUN TestUserEmail === RUN TestUserEmail/PrimaryEmailAddress === RUN TestUserEmail/AddEmailAddresses === RUN TestUserEmail/DeleteEmailAddresses --- PASS: TestUserEmail (0.01s) --- PASS: TestUserEmail/PrimaryEmailAddress (0.00s) --- PASS: TestUserEmail/AddEmailAddresses (0.00s) --- PASS: TestUserEmail/DeleteEmailAddresses (0.00s) === RUN TestUpdateUser --- PASS: TestUpdateUser (0.01s) === RUN TestUpdateAuth --- PASS: TestUpdateAuth (0.01s) === RUN TestUpdateUserVisibility --- PASS: TestUpdateUserVisibility (0.01s) === RUN TestDeleteUser === RUN TestDeleteUser/CleanupOrphanedTables 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:40 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [0b/8d/8b5f15046343fd32f451df93acc2bdd9e6373be478b968e4cad6b6647351]: LFS isn't enabled 2026/09/06 06:40:41 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [2e/cc/db43825d2a49d99d542daa20075cff1d97d9d2349a8977efe9c03661737c]: LFS isn't enabled 2026/09/06 06:40:41 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [7b/6b/2c88dba9f760a1a58469b67fee2b698ef7e9399c4ca4f34a14ccbe39f623]: LFS isn't enabled 2026/09/06 06:40:41 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [9d/17/2e5c64b4f0024b9901ec6afe9ea052f3c9b6ff9f4b07956d8c48c86fca82]: LFS isn't enabled 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestDeleteUser (0.68s) --- PASS: TestDeleteUser/CleanupOrphanedTables (0.30s) === RUN TestDeleteUserUnlinkedAttachments === RUN TestDeleteUserUnlinkedAttachments/DeleteExisting === RUN TestDeleteUserUnlinkedAttachments/NoUnlinkedAttachments --- PASS: TestDeleteUserUnlinkedAttachments (0.05s) --- PASS: TestDeleteUserUnlinkedAttachments/DeleteExisting (0.05s) --- PASS: TestDeleteUserUnlinkedAttachments/NoUnlinkedAttachments (0.00s) === RUN TestPurgeUser 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [0b/8d/8b5f15046343fd32f451df93acc2bdd9e6373be478b968e4cad6b6647351]: LFS isn't enabled 2026/09/06 06:40:41 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [2e/cc/db43825d2a49d99d542daa20075cff1d97d9d2349a8977efe9c03661737c]: LFS isn't enabled 2026/09/06 06:40:41 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [7b/6b/2c88dba9f760a1a58469b67fee2b698ef7e9399c4ca4f34a14ccbe39f623]: LFS isn't enabled 2026/09/06 06:40:41 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [9d/17/2e5c64b4f0024b9901ec6afe9ea052f3c9b6ff9f4b07956d8c48c86fca82]: LFS isn't enabled 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:41 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestPurgeUser (0.93s) === RUN TestCreateUser --- PASS: TestCreateUser (0.01s) === RUN TestRenameUser === RUN TestRenameUser/External_user === RUN TestRenameUser/Same_username === RUN TestRenameUser/Non_usable_username === RUN TestRenameUser/Only_capitalization === RUN TestRenameUser/Already_exists === RUN TestRenameUser/Normal --- PASS: TestRenameUser (0.06s) --- PASS: TestRenameUser/External_user (0.00s) --- PASS: TestRenameUser/Same_username (0.00s) --- PASS: TestRenameUser/Non_usable_username (0.00s) --- PASS: TestRenameUser/Only_capitalization (0.00s) --- PASS: TestRenameUser/Already_exists (0.00s) --- PASS: TestRenameUser/Normal (0.00s) === RUN TestCreateUser_Issue5882 --- PASS: TestCreateUser_Issue5882 (0.01s) === RUN TestDeleteInactiveUsers --- PASS: TestDeleteInactiveUsers (0.02s) PASS ok gitea.dev/services/user 2.689s ? gitea.dev/services/versioned_migration [no test files] 2026/09/06 06:40:40 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3016971741/data/attachments 2026/09/06 06:40:40 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3016971741/data/avatars 2026/09/06 06:40:40 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3016971741/data/repo-avatars 2026/09/06 06:40:40 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3016971741/data/repo-archive 2026/09/06 06:40:40 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3016971741/data/packages 2026/09/06 06:40:40 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3016971741/data/actions_log 2026/09/06 06:40:40 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3016971741/data/actions_artifacts === RUN TestWebhookProxy === RUN TestWebhookProxy/https://discordapp.com/api/webhooks/xxxxxxxxx/xxxxxxxxxxxxxxxxxxx === RUN TestWebhookProxy/http://s.discordapp.com/assets/xxxxxx === RUN TestWebhookProxy/http://github.com/a/b === RUN TestWebhookProxy/http://www.discordapp.com/assets/xxxxxx --- PASS: TestWebhookProxy (0.00s) --- PASS: TestWebhookProxy/https://discordapp.com/api/webhooks/xxxxxxxxx/xxxxxxxxxxxxxxxxxxx (0.00s) --- PASS: TestWebhookProxy/http://s.discordapp.com/assets/xxxxxx (0.00s) --- PASS: TestWebhookProxy/http://github.com/a/b (0.00s) --- PASS: TestWebhookProxy/http://www.discordapp.com/assets/xxxxxx (0.00s) === RUN TestWebhookDeliverAuthorizationHeader 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[1]: jsontext: unexpected EOF --- PASS: TestWebhookDeliverAuthorizationHeader (0.13s) === RUN TestWebhookDeliverHookTask === RUN TestWebhookDeliverHookTask/Version_1 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[2]: jsontext: unexpected EOF === RUN TestWebhookDeliverHookTask/Version_2 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[2]: jsontext: unexpected EOF --- PASS: TestWebhookDeliverHookTask (0.01s) --- PASS: TestWebhookDeliverHookTask/Version_1 (0.00s) --- PASS: TestWebhookDeliverHookTask/Version_2 (0.00s) === RUN TestWebhookDeliverSpecificTypes === RUN TestWebhookDeliverSpecificTypes/discord === PAUSE TestWebhookDeliverSpecificTypes/discord === RUN TestWebhookDeliverSpecificTypes/dingtalk === PAUSE TestWebhookDeliverSpecificTypes/dingtalk === RUN TestWebhookDeliverSpecificTypes/msteams === PAUSE TestWebhookDeliverSpecificTypes/msteams === RUN TestWebhookDeliverSpecificTypes/packagist === PAUSE TestWebhookDeliverSpecificTypes/packagist === RUN TestWebhookDeliverSpecificTypes/slack === PAUSE TestWebhookDeliverSpecificTypes/slack === RUN TestWebhookDeliverSpecificTypes/telegram === PAUSE TestWebhookDeliverSpecificTypes/telegram === RUN TestWebhookDeliverSpecificTypes/feishu === PAUSE TestWebhookDeliverSpecificTypes/feishu === RUN TestWebhookDeliverSpecificTypes/matrix === PAUSE TestWebhookDeliverSpecificTypes/matrix === RUN TestWebhookDeliverSpecificTypes/wechatwork === PAUSE TestWebhookDeliverSpecificTypes/wechatwork === CONT TestWebhookDeliverSpecificTypes/discord === CONT TestWebhookDeliverSpecificTypes/slack === CONT TestWebhookDeliverSpecificTypes/msteams === CONT TestWebhookDeliverSpecificTypes/dingtalk === CONT TestWebhookDeliverSpecificTypes/matrix === CONT TestWebhookDeliverSpecificTypes/wechatwork === CONT TestWebhookDeliverSpecificTypes/feishu === CONT TestWebhookDeliverSpecificTypes/packagist === CONT TestWebhookDeliverSpecificTypes/telegram 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[3]: jsontext: unexpected EOF 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[4]: jsontext: unexpected EOF 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[5]: jsontext: unexpected EOF 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[6]: jsontext: unexpected EOF 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[7]: jsontext: unexpected EOF 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[8]: jsontext: unexpected EOF 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[9]: jsontext: unexpected EOF 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[10]: jsontext: unexpected EOF 2026/09/06 06:40:40 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[11]: jsontext: unexpected EOF --- PASS: TestWebhookDeliverSpecificTypes (0.00s) --- PASS: TestWebhookDeliverSpecificTypes/slack (0.07s) --- PASS: TestWebhookDeliverSpecificTypes/discord (0.08s) --- PASS: TestWebhookDeliverSpecificTypes/wechatwork (0.08s) --- PASS: TestWebhookDeliverSpecificTypes/packagist (0.09s) --- PASS: TestWebhookDeliverSpecificTypes/msteams (0.13s) --- PASS: TestWebhookDeliverSpecificTypes/matrix (0.13s) --- PASS: TestWebhookDeliverSpecificTypes/telegram (0.13s) --- PASS: TestWebhookDeliverSpecificTypes/dingtalk (0.15s) --- PASS: TestWebhookDeliverSpecificTypes/feishu (0.18s) === RUN TestDingTalkPayload === RUN TestDingTalkPayload/Create === RUN TestDingTalkPayload/Delete === RUN TestDingTalkPayload/Fork === RUN TestDingTalkPayload/Push === RUN TestDingTalkPayload/Issue === RUN TestDingTalkPayload/IssueComment === RUN TestDingTalkPayload/PullRequest === RUN TestDingTalkPayload/PullRequestComment === RUN TestDingTalkPayload/Review === RUN TestDingTalkPayload/Repository === RUN TestDingTalkPayload/Package === RUN TestDingTalkPayload/Wiki === RUN TestDingTalkPayload/Release --- PASS: TestDingTalkPayload (0.00s) --- PASS: TestDingTalkPayload/Create (0.00s) --- PASS: TestDingTalkPayload/Delete (0.00s) --- PASS: TestDingTalkPayload/Fork (0.00s) --- PASS: TestDingTalkPayload/Push (0.00s) --- PASS: TestDingTalkPayload/Issue (0.00s) --- PASS: TestDingTalkPayload/IssueComment (0.00s) --- PASS: TestDingTalkPayload/PullRequest (0.00s) --- PASS: TestDingTalkPayload/PullRequestComment (0.00s) --- PASS: TestDingTalkPayload/Review (0.00s) --- PASS: TestDingTalkPayload/Repository (0.00s) --- PASS: TestDingTalkPayload/Package (0.00s) --- PASS: TestDingTalkPayload/Wiki (0.00s) --- PASS: TestDingTalkPayload/Release (0.00s) === RUN TestDingTalkJSONPayload --- PASS: TestDingTalkJSONPayload (0.00s) === RUN TestDiscordPayload === RUN TestDiscordPayload/Create === RUN TestDiscordPayload/Delete === RUN TestDiscordPayload/Fork === RUN TestDiscordPayload/Push === RUN TestDiscordPayload/PushWithMultilineCommitMessage === RUN TestDiscordPayload/PushWithLongCommitSummary === RUN TestDiscordPayload/Issue === RUN TestDiscordPayload/IssueComment === RUN TestDiscordPayload/PullRequest === RUN TestDiscordPayload/PullRequestComment === RUN TestDiscordPayload/Review === RUN TestDiscordPayload/Repository === RUN TestDiscordPayload/Package === RUN TestDiscordPayload/Wiki === RUN TestDiscordPayload/Release --- PASS: TestDiscordPayload (0.00s) --- PASS: TestDiscordPayload/Create (0.00s) --- PASS: TestDiscordPayload/Delete (0.00s) --- PASS: TestDiscordPayload/Fork (0.00s) --- PASS: TestDiscordPayload/Push (0.00s) --- PASS: TestDiscordPayload/PushWithMultilineCommitMessage (0.00s) --- PASS: TestDiscordPayload/PushWithLongCommitSummary (0.00s) --- PASS: TestDiscordPayload/Issue (0.00s) --- PASS: TestDiscordPayload/IssueComment (0.00s) --- PASS: TestDiscordPayload/PullRequest (0.00s) --- PASS: TestDiscordPayload/PullRequestComment (0.00s) --- PASS: TestDiscordPayload/Review (0.00s) --- PASS: TestDiscordPayload/Repository (0.00s) --- PASS: TestDiscordPayload/Package (0.00s) --- PASS: TestDiscordPayload/Wiki (0.00s) --- PASS: TestDiscordPayload/Release (0.00s) === RUN TestDiscordJSONPayload --- PASS: TestDiscordJSONPayload (0.00s) === RUN TestFeishuPayload === RUN TestFeishuPayload/Create === RUN TestFeishuPayload/Delete === RUN TestFeishuPayload/Fork === RUN TestFeishuPayload/Push === RUN TestFeishuPayload/Issue === RUN TestFeishuPayload/IssueComment === RUN TestFeishuPayload/PullRequest === RUN TestFeishuPayload/PullRequestComment === RUN TestFeishuPayload/Review === RUN TestFeishuPayload/Repository === RUN TestFeishuPayload/Package === RUN TestFeishuPayload/Wiki === RUN TestFeishuPayload/Release --- PASS: TestFeishuPayload (0.00s) --- PASS: TestFeishuPayload/Create (0.00s) --- PASS: TestFeishuPayload/Delete (0.00s) --- PASS: TestFeishuPayload/Fork (0.00s) --- PASS: TestFeishuPayload/Push (0.00s) --- PASS: TestFeishuPayload/Issue (0.00s) --- PASS: TestFeishuPayload/IssueComment (0.00s) --- PASS: TestFeishuPayload/PullRequest (0.00s) --- PASS: TestFeishuPayload/PullRequestComment (0.00s) --- PASS: TestFeishuPayload/Review (0.00s) --- PASS: TestFeishuPayload/Repository (0.00s) --- PASS: TestFeishuPayload/Package (0.00s) --- PASS: TestFeishuPayload/Wiki (0.00s) --- PASS: TestFeishuPayload/Release (0.00s) === RUN TestFeishuJSONPayload --- PASS: TestFeishuJSONPayload (0.00s) === RUN TestGetIssuesPayloadInfo --- PASS: TestGetIssuesPayloadInfo (0.00s) === RUN TestGetPullRequestPayloadInfo --- PASS: TestGetPullRequestPayloadInfo (0.00s) === RUN TestGetWikiPayloadInfo --- PASS: TestGetWikiPayloadInfo (0.00s) === RUN TestGetReleasePayloadInfo --- PASS: TestGetReleasePayloadInfo (0.00s) === RUN TestGetIssueCommentPayloadInfo --- PASS: TestGetIssueCommentPayloadInfo (0.00s) === RUN TestMatrixPayload === RUN TestMatrixPayload/Create === RUN TestMatrixPayload/Delete === RUN TestMatrixPayload/Fork === RUN TestMatrixPayload/Push === RUN TestMatrixPayload/Issue === RUN TestMatrixPayload/IssueComment === RUN TestMatrixPayload/PullRequest === RUN TestMatrixPayload/PullRequestComment === RUN TestMatrixPayload/Review === RUN TestMatrixPayload/Repository === RUN TestMatrixPayload/Package === RUN TestMatrixPayload/Wiki === RUN TestMatrixPayload/Release --- PASS: TestMatrixPayload (0.00s) --- PASS: TestMatrixPayload/Create (0.00s) --- PASS: TestMatrixPayload/Delete (0.00s) --- PASS: TestMatrixPayload/Fork (0.00s) --- PASS: TestMatrixPayload/Push (0.00s) --- PASS: TestMatrixPayload/Issue (0.00s) --- PASS: TestMatrixPayload/IssueComment (0.00s) --- PASS: TestMatrixPayload/PullRequest (0.00s) --- PASS: TestMatrixPayload/PullRequestComment (0.00s) --- PASS: TestMatrixPayload/Review (0.00s) --- PASS: TestMatrixPayload/Repository (0.00s) --- PASS: TestMatrixPayload/Package (0.00s) --- PASS: TestMatrixPayload/Wiki (0.00s) --- PASS: TestMatrixPayload/Release (0.00s) === RUN TestMatrixJSONPayload --- PASS: TestMatrixJSONPayload (0.00s) === RUN Test_getTxnID === RUN Test_getTxnID/dummy_payload --- PASS: Test_getTxnID (0.00s) --- PASS: Test_getTxnID/dummy_payload (0.00s) === RUN TestMSTeamsPayload === RUN TestMSTeamsPayload/Create === RUN TestMSTeamsPayload/Delete === RUN TestMSTeamsPayload/Fork === RUN TestMSTeamsPayload/Push === RUN TestMSTeamsPayload/Issue === RUN TestMSTeamsPayload/IssueComment === RUN TestMSTeamsPayload/PullRequest === RUN TestMSTeamsPayload/PullRequestComment === RUN TestMSTeamsPayload/Review === RUN TestMSTeamsPayload/Repository === RUN TestMSTeamsPayload/Package === RUN TestMSTeamsPayload/Wiki === RUN TestMSTeamsPayload/Release --- PASS: TestMSTeamsPayload (0.00s) --- PASS: TestMSTeamsPayload/Create (0.00s) --- PASS: TestMSTeamsPayload/Delete (0.00s) --- PASS: TestMSTeamsPayload/Fork (0.00s) --- PASS: TestMSTeamsPayload/Push (0.00s) --- PASS: TestMSTeamsPayload/Issue (0.00s) --- PASS: TestMSTeamsPayload/IssueComment (0.00s) --- PASS: TestMSTeamsPayload/PullRequest (0.00s) --- PASS: TestMSTeamsPayload/PullRequestComment (0.00s) --- PASS: TestMSTeamsPayload/Review (0.00s) --- PASS: TestMSTeamsPayload/Repository (0.00s) --- PASS: TestMSTeamsPayload/Package (0.00s) --- PASS: TestMSTeamsPayload/Wiki (0.00s) --- PASS: TestMSTeamsPayload/Release (0.00s) === RUN TestMSTeamsJSONPayload --- PASS: TestMSTeamsJSONPayload (0.00s) === RUN TestPackagistPayload === RUN TestPackagistPayload/Create === RUN TestPackagistPayload/Delete === RUN TestPackagistPayload/Fork === RUN TestPackagistPayload/Push === RUN TestPackagistPayload/Issue === RUN TestPackagistPayload/IssueComment === RUN TestPackagistPayload/PullRequest === RUN TestPackagistPayload/PullRequestComment === RUN TestPackagistPayload/Review === RUN TestPackagistPayload/Repository === RUN TestPackagistPayload/Package === RUN TestPackagistPayload/Wiki === RUN TestPackagistPayload/Release --- PASS: TestPackagistPayload (0.00s) --- PASS: TestPackagistPayload/Create (0.00s) --- PASS: TestPackagistPayload/Delete (0.00s) --- PASS: TestPackagistPayload/Fork (0.00s) --- PASS: TestPackagistPayload/Push (0.00s) --- PASS: TestPackagistPayload/Issue (0.00s) --- PASS: TestPackagistPayload/IssueComment (0.00s) --- PASS: TestPackagistPayload/PullRequest (0.00s) --- PASS: TestPackagistPayload/PullRequestComment (0.00s) --- PASS: TestPackagistPayload/Review (0.00s) --- PASS: TestPackagistPayload/Repository (0.00s) --- PASS: TestPackagistPayload/Package (0.00s) --- PASS: TestPackagistPayload/Wiki (0.00s) --- PASS: TestPackagistPayload/Release (0.00s) === RUN TestPackagistJSONPayload --- PASS: TestPackagistJSONPayload (0.00s) === RUN TestPackagistEmptyPayload --- PASS: TestPackagistEmptyPayload (0.00s) === RUN TestSlackPayload === RUN TestSlackPayload/Create === RUN TestSlackPayload/Delete === RUN TestSlackPayload/Fork === RUN TestSlackPayload/Push === RUN TestSlackPayload/Issue === RUN TestSlackPayload/IssueComment === RUN TestSlackPayload/PullRequest === RUN TestSlackPayload/PullRequestComment === RUN TestSlackPayload/Review === RUN TestSlackPayload/Repository === RUN TestSlackPayload/Package === RUN TestSlackPayload/Wiki === RUN TestSlackPayload/Release --- PASS: TestSlackPayload (0.00s) --- PASS: TestSlackPayload/Create (0.00s) --- PASS: TestSlackPayload/Delete (0.00s) --- PASS: TestSlackPayload/Fork (0.00s) --- PASS: TestSlackPayload/Push (0.00s) --- PASS: TestSlackPayload/Issue (0.00s) --- PASS: TestSlackPayload/IssueComment (0.00s) --- PASS: TestSlackPayload/PullRequest (0.00s) --- PASS: TestSlackPayload/PullRequestComment (0.00s) --- PASS: TestSlackPayload/Review (0.00s) --- PASS: TestSlackPayload/Repository (0.00s) --- PASS: TestSlackPayload/Package (0.00s) --- PASS: TestSlackPayload/Wiki (0.00s) --- PASS: TestSlackPayload/Release (0.00s) === RUN TestSlackJSONPayload --- PASS: TestSlackJSONPayload (0.00s) === RUN TestTelegramPayload === RUN TestTelegramPayload/Correct_webhook_params === RUN TestTelegramPayload/Create === RUN TestTelegramPayload/Delete === RUN TestTelegramPayload/Fork === RUN TestTelegramPayload/Push === RUN TestTelegramPayload/Issue === RUN TestTelegramPayload/IssueComment === RUN TestTelegramPayload/PullRequest === RUN TestTelegramPayload/PullRequestComment === RUN TestTelegramPayload/Review === RUN TestTelegramPayload/Repository === RUN TestTelegramPayload/Package === RUN TestTelegramPayload/Wiki === RUN TestTelegramPayload/Release --- PASS: TestTelegramPayload (0.00s) --- PASS: TestTelegramPayload/Correct_webhook_params (0.00s) --- PASS: TestTelegramPayload/Create (0.00s) --- PASS: TestTelegramPayload/Delete (0.00s) --- PASS: TestTelegramPayload/Fork (0.00s) --- PASS: TestTelegramPayload/Push (0.00s) --- PASS: TestTelegramPayload/Issue (0.00s) --- PASS: TestTelegramPayload/IssueComment (0.00s) --- PASS: TestTelegramPayload/PullRequest (0.00s) --- PASS: TestTelegramPayload/PullRequestComment (0.00s) --- PASS: TestTelegramPayload/Review (0.00s) --- PASS: TestTelegramPayload/Repository (0.00s) --- PASS: TestTelegramPayload/Package (0.00s) --- PASS: TestTelegramPayload/Wiki (0.00s) --- PASS: TestTelegramPayload/Release (0.00s) === RUN TestTelegramJSONPayload --- PASS: TestTelegramJSONPayload (0.00s) === RUN TestWebhookService === RUN TestWebhookService/GetSlackHook === RUN TestWebhookService/PrepareWebhooks === RUN TestWebhookService/PrepareBranchFilterMatch === RUN TestWebhookService/PrepareBranchFilterNoMatch === RUN TestWebhookService/WebhookUserMail === RUN TestWebhookService/CheckBranchFilter === RUN TestWebhookService/PrepareTestWebhookIgnoresGates --- PASS: TestWebhookService (0.07s) --- PASS: TestWebhookService/GetSlackHook (0.00s) --- PASS: TestWebhookService/PrepareWebhooks (0.00s) --- PASS: TestWebhookService/PrepareBranchFilterMatch (0.00s) --- PASS: TestWebhookService/PrepareBranchFilterNoMatch (0.00s) --- PASS: TestWebhookService/WebhookUserMail (0.00s) --- PASS: TestWebhookService/CheckBranchFilter (0.00s) --- PASS: TestWebhookService/PrepareTestWebhookIgnoresGates (0.00s) PASS ok gitea.dev/services/webhook 1.156s === RUN TestParseThemeMetaInfo --- PASS: TestParseThemeMetaInfo (0.00s) PASS ok gitea.dev/services/webtheme 0.009s 2026/09/06 06:40:40 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-933292848/data/attachments 2026/09/06 06:40:40 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-933292848/data/avatars 2026/09/06 06:40:40 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-933292848/data/repo-avatars 2026/09/06 06:40:40 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-933292848/data/repo-archive 2026/09/06 06:40:40 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-933292848/data/packages 2026/09/06 06:40:40 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-933292848/data/actions_log 2026/09/06 06:40:40 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:40 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-933292848/data/actions_artifacts === RUN TestWebPathSegments --- PASS: TestWebPathSegments (0.00s) === RUN TestUserTitleToWebPath --- PASS: TestUserTitleToWebPath (0.00s) === RUN TestWebPathToDisplayName --- PASS: TestWebPathToDisplayName (0.00s) === RUN TestWebPathToGitPath --- PASS: TestWebPathToGitPath (0.00s) === RUN TestGitPathToWebPath --- PASS: TestGitPathToWebPath (0.00s) === RUN TestUserWebGitPathConsistency --- PASS: TestUserWebGitPathConsistency (0.01s) === RUN TestRepository_InitWiki --- PASS: TestRepository_InitWiki (0.19s) === RUN TestRepository_AddWikiPage === RUN TestRepository_AddWikiPage/test_wiki_exist:_Another_page === RUN TestRepository_AddWikiPage/test_wiki_exist:_Here's_a__and_a/slash === RUN TestRepository_AddWikiPage/check_wiki_already_exist === PAUSE TestRepository_AddWikiPage/check_wiki_already_exist === RUN TestRepository_AddWikiPage/check_wiki_reserved_name === PAUSE TestRepository_AddWikiPage/check_wiki_reserved_name === CONT TestRepository_AddWikiPage/check_wiki_already_exist === CONT TestRepository_AddWikiPage/check_wiki_reserved_name --- PASS: TestRepository_AddWikiPage (0.20s) --- PASS: TestRepository_AddWikiPage/test_wiki_exist:_Another_page (0.11s) --- PASS: TestRepository_AddWikiPage/test_wiki_exist:_Here's_a__and_a/slash (0.08s) --- PASS: TestRepository_AddWikiPage/check_wiki_reserved_name (0.00s) --- PASS: TestRepository_AddWikiPage/check_wiki_already_exist (0.04s) === RUN TestRepository_EditWikiPage --- PASS: TestRepository_EditWikiPage (0.47s) === RUN TestRepository_DeleteWikiPage --- PASS: TestRepository_DeleteWikiPage (0.12s) === RUN TestPrepareWikiFileName === RUN TestPrepareWikiFileName/add_suffix === RUN TestPrepareWikiFileName/test_special_chars --- PASS: TestPrepareWikiFileName (0.06s) --- PASS: TestPrepareWikiFileName/add_suffix (0.01s) --- PASS: TestPrepareWikiFileName/test_special_chars (0.00s) === RUN TestPrepareWikiFileName_FirstPage --- PASS: TestPrepareWikiFileName_FirstPage (0.07s) === RUN TestWebPathConversion --- PASS: TestWebPathConversion (0.00s) === RUN TestWebPathFromRequest --- PASS: TestWebPathFromRequest (0.00s) PASS ok gitea.dev/services/wiki 2.305s === RUN FuzzMarkdownRenderRaw --- PASS: FuzzMarkdownRenderRaw (0.00s) === RUN FuzzMarkupPostProcess --- PASS: FuzzMarkupPostProcess (0.00s) PASS ok gitea.dev/tests/fuzz 0.061s ? gitea.dev/tools [no test files] >>> gitea: Entering fakeroot... >>> gitea-doc*: Running split function doc... 'usr/share/licenses' -> '/home/buildozer/aports/community/gitea/pkg/gitea-doc/usr/share/licenses' >>> gitea-doc*: Preparing subpackage gitea-doc... >>> gitea-doc*: Running postcheck for gitea-doc >>> gitea-openrc*: Running split function openrc... 'etc/init.d' -> '/home/buildozer/aports/community/gitea/pkg/gitea-openrc/etc/init.d' >>> gitea-openrc*: Preparing subpackage gitea-openrc... >>> gitea-openrc*: Running postcheck for gitea-openrc >>> gitea*: Running postcheck for gitea >>> gitea*: Preparing package gitea... >>> gitea*: Stripping binaries >>> gitea*: Script found. /bin/sh added as a dependency >>> gitea*: Adding .pre-install >>> gitea*: Scanning shared objects >>> gitea*: Tracing dependencies... git git-lfs gnupg /bin/sh >>> gitea*: Package size: 153.8 MB >>> gitea*: Compressing data... >>> gitea*: Create checksum... >>> gitea*: Create gitea-1.27.3-r0.apk >>> gitea-doc*: Tracing dependencies... >>> gitea-doc*: Package size: 1.1 KB >>> gitea-doc*: Compressing data... >>> gitea-doc*: Create checksum... >>> gitea-doc*: Create gitea-doc-1.27.3-r0.apk >>> gitea-openrc*: Tracing dependencies... >>> gitea-openrc*: Package size: 911.0 B >>> gitea-openrc*: Compressing data... >>> gitea-openrc*: Create checksum... >>> gitea-openrc*: Create gitea-openrc-1.27.3-r0.apk >>> gitea: Build complete at Sun, 06 Sep 2026 06:40:55 +0000 elapsed time 0h 3m 34s >>> gitea: Cleaning up srcdir >>> gitea: Cleaning up pkgdir >>> gitea: Cleaning up tmpdir >>> gitea: Uninstalling dependencies... ( 1/42) Purging .makedepends-gitea (20260906.063722) ( 2/42) Purging git-lfs (3.7.1-r1) Executing git-lfs-3.7.1-r1.pre-deinstall * System Git LFS configuration has been removed. ( 3/42) Purging gnupg (2.4.9-r1) ( 4/42) Purging gpg-wks-server (2.4.9-r1) ( 5/42) Purging gpgsm (2.4.9-r1) ( 6/42) Purging gpgv (2.4.9-r1) ( 7/42) Purging gnupg-utils (2.4.9-r1) ( 8/42) Purging gnupg-wks-client (2.4.9-r1) ( 9/42) Purging gpg (2.4.9-r1) (10/42) Purging gnupg-keyboxd (2.4.9-r1) (11/42) Purging gpg-agent (2.4.9-r1) (12/42) Purging gnupg-dirmngr (2.4.9-r1) (13/42) Purging gnupg-gpgconf (2.4.9-r1) (14/42) Purging pinentry (1.3.2-r0) (15/42) Purging go (1.27.1-r0) (16/42) Purging bash (5.3.9-r1) Executing bash-5.3.9-r1.pre-deinstall (17/42) Purging sqlite (3.53.4-r0) (18/42) Purging tzdata (2026c-r0) (19/42) Purging pnpm (11.25.0-r0) (20/42) Purging nodejs (24.18.1-r2) (21/42) Purging ca-certificates (20260611-r0) Executing ca-certificates-20260611-r0.post-deinstall (22/42) Purging ada-libs (3.3.0-r1) (23/42) Purging gnutls (3.8.13-r0) (24/42) Purging icu-libs (78.1-r0) (25/42) Purging libassuan (3.0.2-r0) (26/42) Purging libbz2 (1.0.8-r6) (27/42) Purging libgcrypt (1.12.3-r0) (28/42) Purging libksba (1.7.0-r0) (29/42) Purging libldap (2.6.14-r0) (30/42) Purging libsasl (2.1.28-r9) (31/42) Purging nettle (3.10.2-r0) (32/42) Purging npth (1.8-r0) (33/42) Purging p11-kit (0.26.2-r1) (34/42) Purging readline (8.3.3-r1) (35/42) Purging simdjson (4.6.9-r0) (36/42) Purging simdutf (9.1.0-r0) (37/42) Purging sqlite-libs (3.53.4-r0) (38/42) Purging gdbm (1.26-r0) (39/42) Purging icu-data-full (78.1-r0) (40/42) Purging libffi (3.8.0-r0) (41/42) Purging libgpg-error (1.61-r0) (42/42) Purging libtasn1 (4.21.0-r0) Executing busybox-1.38.0-r4.trigger OK: 441.8 MiB in 107 packages >>> gitea: Updating the community/x86_64 repository index... >>> gitea: Signing the index...