>>> gitea: Building community/gitea 1.27.3-r0 (using abuild 3.18.0_rc5-r1) started Sun, 06 Sep 2026 06:38:17 +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/44) Installing git-lfs (3.7.1-r1) Executing git-lfs-3.7.1-r1.post-install * Git LFS initialized. ( 2/44) Installing libgpg-error (1.61-r0) ( 3/44) Installing libassuan (3.0.2-r0) ( 4/44) Installing pinentry (1.3.2-r0) Executing pinentry-1.3.2-r0.post-install ( 5/44) Installing libgcrypt (1.12.3-r0) ( 6/44) Installing gnupg-gpgconf (2.4.9-r1) ( 7/44) Installing nettle (3.10.2-r0) ( 8/44) Installing libffi (3.8.0-r0) ( 9/44) Installing libtasn1 (4.21.0-r0) (10/44) Installing p11-kit (0.26.2-r1) (11/44) Installing gnutls (3.8.13-r0) (12/44) Installing libksba (1.7.0-r0) (13/44) Installing gdbm (1.26-r0) (14/44) Installing libsasl (2.1.28-r9) (15/44) Installing libldap (2.6.14-r0) (16/44) Installing npth (1.8-r0) (17/44) Installing gnupg-dirmngr (2.4.9-r1) (18/44) Installing sqlite-libs (3.53.4-r0) (19/44) Installing gnupg-keyboxd (2.4.9-r1) (20/44) Installing libbz2 (1.0.8-r6) (21/44) Installing gpg (2.4.9-r1) (22/44) Installing gpg-agent (2.4.9-r1) (23/44) Installing gpg-wks-server (2.4.9-r1) (24/44) Installing gpgsm (2.4.9-r1) (25/44) Installing gpgv (2.4.9-r1) (26/44) Installing gnupg-utils (2.4.9-r1) (27/44) Installing gnupg-wks-client (2.4.9-r1) (28/44) Installing gnupg (2.4.9-r1) (29/44) Installing go (1.27.1-r0) (30/44) Installing readline (8.3.3-r1) Installing file to etc/inputrc.apk-new (31/44) Installing bash (5.3.9-r1) Executing bash-5.3.9-r1.post-install (32/44) Installing openssh-sftp-server (10.5_p1-r1) (33/44) Installing openssh (10.5_p1-r1) (34/44) Installing sqlite (3.53.4-r0) (35/44) Installing tzdata (2026c-r0) (36/44) Installing ca-certificates (20260611-r0) (37/44) Installing ada-libs (3.3.0-r1) (38/44) Installing icu-data-full (78.1-r0) (39/44) Installing icu-libs (78.1-r0) (40/44) Installing simdjson (4.6.9-r0) (41/44) Installing simdutf (9.1.0-r0) (42/44) Installing nodejs (24.18.1-r2) (43/44) Installing pnpm (11.25.0-r0) (44/44) Installing .makedepends-gitea (20260906.063818) Executing busybox-1.38.0-r4.trigger Executing ca-certificates-20260611-r0.trigger OK: 763.6 MiB in 153 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 /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 -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/coverage/rtcov internal/byteorder internal/unsafeheader internal/goexperiment internal/profilerecord math/bits internal/godebugs internal/goos internal/msan internal/asan internal/trace/tracev2 internal/runtime/pprof/label unicode crypto/internal/fips140/alias cmp container/list unicode/utf8 unicode/utf16 vendor/golang.org/x/crypto/cryptobyte/asn1 gitea.dev/modules/consts crypto/internal/fips140deps/time google.golang.org/protobuf/internal/flags encoding golang.org/x/crypto/internal/alias golang.org/x/crypto/cryptobyte/asn1 vendor/golang.org/x/crypto/internal/alias github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/encryption database/sql/internal log/internal github.com/lib/pq/internal/pqsql golang.org/x/image/math/f64 github.com/cyphar/filepath-securejoin/internal/consts github.com/lib/pq/oid github.com/ProtonMail/go-crypto/internal/byteutil gitea.dev/modules/commitstatus internal/nettrace golang.org/x/text/encoding/internal/identifier github.com/aws/smithy-go/endpoints/private/bdd golang.org/x/text/internal/utf8internal gitea.dev/modules/cachegroup crypto/internal/constanttime github.com/blevesearch/gtreap github.com/Azure/azure-sdk-for-go/sdk/azcore/to github.com/ulikunitz/xz/internal/hash gitea.dev/modules/packages/container/helm sync/atomic github.com/lib/pq/pqerror gitea.dev/modules/git/internal github.com/bodgit/windows github.com/Azure/azure-sdk-for-go/sdk/azcore/cloud github.com/minio/minlz/internal/race internal/cpu golang.org/x/net/html/atom crypto/internal/boring/sig github.com/pjbgf/sha1cd/ubc github.com/go-git/go-git/v5/plumbing/color gitea.dev/modules/webhook google.golang.org/grpc/serviceconfig internal/abi internal/runtime/syscall/linux github.com/pjbgf/sha1cd/internal github.com/pierrec/lz4/v4/internal/lz4errors golang.org/x/net/internal/iana gitea.dev/modules/packages/pypi github.com/markbates/going/defaults github.com/dsnet/compress/bzip2/internal/sais gitea.dev/modules/indexer github.com/klauspost/compress/internal/race image/color github.com/redis/go-redis/v9/auth log/slog/internal github.com/dsnet/compress/internal internal/runtime/math internal/runtime/gc crypto/internal/fips140deps/byteorder github.com/klauspost/compress/internal/le github.com/golang/groupcache/lru github.com/SaveTheRbtz/zstd-seekable-format-go/pkg/framecache internal/strconv google.golang.org/protobuf/internal/set golang.org/x/image/internal/safemath math crypto/internal/fips140/subtle internal/bytealg internal/chacha8rand internal/runtime/atomic crypto/internal/fips140deps/cpu internal/runtime/sys image/color/palette internal/runtime/gc/scan crypto/subtle internal/runtime/exithook internal/stringslite github.com/blevesearch/go-porterstemmer internal/runtime/cgroup github.com/klauspost/compress internal/race internal/synctest internal/sync internal/runtime/maps runtime iter sync weak runtime/metrics internal/reflectlite slices maps gitea.dev/modules/container errors sort internal/testlog crypto/internal/fips140cache unique internal/singleflight google.golang.org/protobuf/internal/pragma github.com/minio/minio-go/v7/pkg/kvcache go.uber.org/zap/internal/pool github.com/aws/smithy-go/sync github.com/olekukonko/tablewriter/pkg/twcache internal/bisect log/slog/internal/buffer io internal/oserror strconv math/rand/v2 path go.etcd.io/bbolt/errors golang.org/x/crypto/cast5 github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo encoding/json/internal vendor/golang.org/x/net/dns/dnsmessage gitea.dev/modules/auth/pam crypto/internal/entropy/v1.0.0 github.com/go-viper/mapstructure/v2/internal/errors gitea.dev/modules/graceful/releasereopen syscall internal/godebug encoding/json/internal/jsonflags github.com/blevesearch/geo/s1 github.com/x448/float16 golang.org/x/crypto/blowfish reflect net/netip encoding/json/internal/jsonopts crypto/internal/fips140deps/godebug math/rand bytes strings hash crypto/internal/randutil internal/saferio encoding/base64 encoding/base32 golang.org/x/text/internal/tag container/heap github.com/bodgit/plumbing golang.org/x/text/internal/stringset github.com/google/flatbuffers/go github.com/aws/smithy-go/transport/http/internal/io github.com/beorn7/perks/quantile github.com/prometheus/client_golang/prometheus/promhttp/internal crypto hash/fnv hash/crc32 hash/crc64 hash/maphash hash/adler32 github.com/Azure/go-ntlmssp/internal/md4 golang.org/x/crypto/md4 github.com/cloudflare/circl/sign net/http/internal/ascii encoding/json/internal/jsonwire html crypto/internal/impl github.com/dsnet/compress/internal/errors github.com/aws/aws-sdk-go-v2/internal/strings regexp/syntax golang.org/x/mod/semver github.com/huandu/xstrings github.com/munnerz/goautoneg crypto/internal/fips140 github.com/microsoft/go-mssqldb/internal/cp encoding/pem vendor/golang.org/x/text/transform golang.org/x/text/transform github.com/syndtr/goleveldb/leveldb/comparer github.com/kballard/go-shellquote github.com/microsoft/go-mssqldb/internal/querytext github.com/gogs/chardet bufio github.com/42wim/sshsig/pem github.com/aws/smithy-go/io github.com/bodgit/sevenzip/internal/util crypto/internal/fips140/sha256 crypto/internal/fips140/sha3 crypto/internal/fips140/sha512 github.com/couchbase/gomemcached/internal/flatbuffers/systemevents github.com/bodgit/sevenzip/internal/pool encoding/json/jsontext golang.org/x/text/runes golang.org/x/text/width golang.org/x/text/encoding crypto/internal/fips140/hmac crypto/sha3 github.com/emersion/go-imap/utf7 golang.org/x/text/encoding/internal image compress/bzip2 internal/syscall/execenv time github.com/clipperhouse/uax29/v2/graphemes github.com/dsnet/compress internal/syscall/unix github.com/anmitsu/go-shlex crypto/internal/fips140hash golang.org/x/text/encoding/unicode golang.org/x/text/encoding/charmap golang.org/x/text/encoding/simplifiedchinese golang.org/x/text/encoding/japanese golang.org/x/text/encoding/traditionalchinese golang.org/x/text/encoding/korean crypto/internal/fips140/check crypto/internal/fips140/edwards25519/field crypto/internal/fips140/aes crypto/internal/fips140/bigmod crypto/internal/fips140/hkdf crypto/internal/fips140/nistec/fiat crypto/internal/fips140/tls12 crypto/fips140 crypto/internal/fips140/pbkdf2 crypto/tls/internal/fips140tls github.com/clipperhouse/displaywidth crypto/internal/fips140/edwards25519 crypto/internal/fips140/tls13 image/internal/imageutil golang.org/x/image/vp8l golang.org/x/image/vp8 image/draw image/jpeg regexp golang.org/x/image/draw context io/fs internal/poll net/http/internal/httpsfv gitea.dev/modules/tailmsg github.com/klauspost/compress/gzhttp/writer github.com/hashicorp/golang-lru/v2/internal github.com/aws/smithy-go/ptr github.com/Azure/azure-sdk-for-go/sdk/internal/temporal golang.org/x/net/internal/httpsfv github.com/aws/aws-sdk-go-v2/internal/timeconv go.uber.org/zap/buffer github.com/hashicorp/golang-lru/v2/simplelru go.uber.org/zap/internal/bufferpool crypto/internal/fips140/nistec github.com/hashicorp/golang-lru/v2 go.uber.org/zap/internal/stacktrace internal/filepathlite embed github.com/spf13/afero/internal/common github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing golang.org/x/net/context golang.org/x/sync/semaphore github.com/go-redsync/redsync/v4/redis github.com/bohde/codel github.com/aws/aws-sdk-go-v2/internal/sdk github.com/aws/smithy-go/context github.com/jbenet/go-context/io github.com/go-git/go-git/v5/utils/ioutil google.golang.org/protobuf/internal/editiondefaults github.com/microcosm-cc/bluemonday/css github.com/go-enry/go-enry/v2/regex github.com/go-git/go-git/v5/internal/url mvdan.cc/xurls/v2 github.com/go-enry/go-enry/v2/data/rule github.com/go-enry/go-enry/v2/internal/tokenizer os github.com/go-enry/go-enry/v2/data encoding/binary internal/fmtsort modernc.org/libc/uuid/uuid modernc.org/libc/sys/types xorm.io/xorm/names github.com/hashicorp/errwrap github.com/modern-go/reflect2 github.com/blevesearch/bleve/v2/size github.com/goccy/go-json/internal/runtime github.com/cespare/xxhash/v2 golang.org/x/crypto/blake2s filippo.io/edwards25519/field golang.org/x/crypto/internal/poly1305 golang.org/x/crypto/blake2b github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/utils github.com/klauspost/compress/zstd/internal/xxhash github.com/golang/snappy vendor/golang.org/x/crypto/internal/poly1305 github.com/cloudflare/circl/internal/sha3 github.com/klauspost/compress/internal/snapref github.com/pierrec/lz4/v4/internal/xxh32 github.com/RoaringBitmap/roaring/v2/internal github.com/zeebo/blake3/internal/utils github.com/zeebo/xxh3 golang.org/x/image/bmp golang.org/x/sys/unix filippo.io/edwards25519 github.com/redis/go-redis/v9/internal/hashtag golang.org/x/crypto/argon2 crypto/internal/sysrand fmt path/filepath io/ioutil google.golang.org/protobuf/internal/detrand golang.org/x/sys/cpu net os/signal github.com/philhofer/fwd internal/sysinfo github.com/mattn/go-runewidth github.com/go-git/go-billy/v5 github.com/klauspost/compress/internal/godebug gitea.dev/modules/util/filebuffer github.com/prometheus/procfs/internal/util go.uber.org/zap/internal/exit crypto/internal/fips140/drbg golang.org/x/image/riff github.com/ssor/bom github.com/blakesmith/ar github.com/cention-sany/utf7 github.com/klauspost/crc32 golang.org/x/crypto/sha3 golang.org/x/image/webp crypto/internal/fips140only crypto/internal/fips140/aes/gcm crypto/internal/fips140/ecdh crypto/internal/fips140/ecdsa crypto/internal/fips140/ed25519 crypto/internal/fips140/mldsa crypto/internal/fips140/mlkem crypto/internal/fips140/rsa github.com/cyphar/filepath-securejoin os/exec github.com/go-git/go-billy/v5/helper/polyfill github.com/bmatcuk/doublestar/v4 github.com/spf13/afero/mem github.com/go-git/go-billy/v5/util crypto/hkdf crypto/md5 crypto/rc4 crypto/pbkdf2 github.com/olekukonko/tablewriter/pkg/twwidth github.com/go-git/go-billy/v5/helper/chroot golang.org/x/crypto/pbkdf2 crypto/cipher github.com/minio/md5-simd crypto/mlkem crypto/des golang.org/x/crypto/chacha20 github.com/ProtonMail/go-crypto/eax vendor/golang.org/x/crypto/chacha20 crypto/internal/boring crypto/mldsa github.com/olekukonko/tablewriter/pkg/twwarp crypto/internal/rand crypto/hmac crypto/aes crypto/sha256 crypto/sha1 crypto/sha512 github.com/ProtonMail/go-crypto/openpgp/aes/keywrap golang.org/x/crypto/ssh/internal/bcrypt_pbkdf golang.org/x/crypto/hkdf vendor/golang.org/x/crypto/chacha20poly1305 crypto/ecdh golang.org/x/crypto/scrypt gitea.dev/modules/avatar/identicon github.com/mikelolasagasti/xz github.com/xi2/xz golang.org/x/crypto/curve25519 crypto/hpke math/big encoding/hex net/url log encoding/gob compress/flate vendor/golang.org/x/text/unicode/norm mime mime/quotedprintable net/http/internal vendor/golang.org/x/net/http2/hpack google.golang.org/protobuf/internal/errors google.golang.org/protobuf/internal/version text/tabwriter os/user github.com/syndtr/goleveldb/leveldb/storage github.com/golang-sql/civil golang.org/x/text/unicode/norm github.com/boombuler/barcode flag compress/lzw golang.org/x/text/internal/language runtime/debug github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/crypto golang.org/x/net/html github.com/lib/pq/internal/proto go/token golang.org/x/sync/errgroup github.com/syndtr/goleveldb/leveldb/util gopkg.in/ini.v1 github.com/lib/pq/internal/pqtime encoding/xml go.yaml.in/yaml/v3 gitea.dev/modules/templates/vars go.yaml.in/yaml/v4/internal/libyaml github.com/microsoft/go-mssqldb/aecmk text/template/parse github.com/Azure/azure-sdk-for-go/sdk/internal/diag dario.cat/mergo github.com/go-git/go-git/v5/plumbing/filemode github.com/ProtonMail/go-crypto/openpgp/errors github.com/go-git/go-git/v5/internal/revision github.com/nwaples/rardecode/v2 github.com/opencontainers/go-digest github.com/bodgit/sevenzip/internal/bzip2 github.com/andybalholm/brotli/matchfinder github.com/bodgit/sevenzip/internal/bcj2 github.com/bodgit/sevenzip/internal/delta github.com/pierrec/lz4/v4/internal/lz4block github.com/dlclark/regexp2/v2/syntax github.com/bodgit/sevenzip/internal/bra github.com/dsnet/compress/internal/prefix runtime/trace github.com/gorilla/css/scanner github.com/go-git/go-git/v5/plumbing/protocol/packp/capability text/scanner github.com/go-git/go-git/v5/utils/merkletrie/noder github.com/mattn/go-shellwords github.com/ulikunitz/xz/internal/xlog golang.org/x/sys/execabs github.com/hashicorp/go-multierror golang.org/x/net/http2/hpack github.com/Azure/azure-sdk-for-go/sdk/internal/log gopkg.in/warnings.v0 github.com/stangelandcl/ppmd/internal/h7z github.com/aymerick/douceur/css github.com/emirpasic/gods/utils github.com/go-git/go-git/v5/internal/pathutil github.com/klauspost/compress/fse github.com/opencontainers/image-spec/specs-go github.com/go-git/gcfg/token github.com/git-lfs/pktline encoding/csv github.com/go-git/gcfg/types github.com/blevesearch/bleve/v2/numeric google.golang.org/protobuf/encoding/protowire go.etcd.io/bbolt/internal/common image/gif github.com/microsoft/go-mssqldb/internal/github.com/swisscom/mssql-always-encrypted/pkg/keys github.com/blevesearch/geo/r1 github.com/blevesearch/bleve/v2/index/scorch/mergeplan github.com/blevesearch/vellum/utf8 github.com/blevesearch/segment github.com/couchbase/gomemcached github.com/pkg/errors github.com/olekukonko/cat github.com/opencontainers/image-spec/specs-go/v1 github.com/goccy/go-json/internal/errors github.com/olekukonko/ll/lx github.com/go-asn1-ber/asn1-ber github.com/aws/aws-sdk-go-v2/aws/ratelimit github.com/aws/smithy-go/encoding gitea.dev/modules/user github.com/lib/pq/internal/pqutil github.com/boombuler/barcode/utils archive/tar github.com/ProtonMail/go-crypto/openpgp/armor github.com/syndtr/goleveldb/leveldb/cache github.com/syndtr/goleveldb/leveldb/filter github.com/go-git/go-git/v5/internal/path_util github.com/kevinburke/ssh_config golang.org/x/time/rate github.com/jonboulle/clockwork github.com/prometheus/procfs/internal/fs github.com/caddyserver/certmagic/internal/atomicfile github.com/go-git/go-git/v5/utils/merkletrie/internal/frame github.com/libdns/libdns golang.org/x/net/bpf github.com/pierrec/lz4/v4/internal/lz4stream go.uber.org/multierr go.uber.org/zap/internal/color github.com/emirpasic/gods/containers github.com/russross/blackfriday/v2 encoding/json/v2 gitea.dev/modules/git/foreachref github.com/ProtonMail/go-crypto/ocb github.com/davecgh/go-spew/spew google.golang.org/protobuf/reflect/protoreflect github.com/go-git/go-git/v5/utils/merkletrie github.com/minio/minio-go/v7/pkg/singleflight github.com/aws/aws-sdk-go-v2/internal/sync/singleflight github.com/aws/smithy-go/internal/sync/singleflight github.com/bodgit/sevenzip/internal/aes7z testing github.com/klauspost/cpuid/v2 github.com/Azure/azure-sdk-for-go/sdk/azcore/log github.com/ulikunitz/xz/lzma github.com/blevesearch/geo/r2 github.com/blevesearch/vellum/regexp github.com/pquerna/otp/internal github.com/yuin/goldmark/util github.com/sergi/go-diff/diffmatchpatch github.com/google/go-querystring/query github.com/ProtonMail/go-crypto/openpgp/internal/algorithm github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/log github.com/emirpasic/gods/trees github.com/aymerick/douceur/parser go.etcd.io/bbolt/internal/freelist github.com/emirpasic/gods/lists github.com/klauspost/compress/huff0 github.com/pierrec/lz4/v4 github.com/dsnet/compress/bzip2 vendor/golang.org/x/text/unicode/bidi github.com/go-git/go-git/v5/utils/trace github.com/robfig/cron/v3 github.com/modern-go/concurrent golang.org/x/text/unicode/bidi github.com/mschoch/smat github.com/blevesearch/snowballstem github.com/syndtr/goleveldb/leveldb/opt github.com/aws/smithy-go/logging github.com/go-git/gcfg/scanner github.com/boombuler/barcode/qr github.com/aws/smithy-go/middleware golang.org/x/text/internal/language/compact github.com/go-git/go-git/v5/plumbing/format/pktline github.com/blevesearch/snowballstem/english github.com/ProtonMail/go-crypto/openpgp/s2k github.com/andybalholm/brotli/flate golang.org/x/text/language github.com/bodgit/sevenzip/internal/lz4 github.com/pquerna/otp github.com/lib/pq/internal/pgservice github.com/lib/pq/internal/pgpass compress/gzip compress/zlib github.com/klauspost/compress/flate archive/zip github.com/STARRY-S/zip golang.org/x/text/secure/bidirule modernc.org/memory github.com/fsnotify/fsnotify/internal github.com/go-git/go-billy/v5/osfs github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband github.com/sassoftware/go-rpmutils/fileutil github.com/blevesearch/mmap-go github.com/caddyserver/certmagic/internal/filedescriptor github.com/mattn/go-isatty vendor/golang.org/x/text/secure/bidirule github.com/sassoftware/go-rpmutils/cpio github.com/mattn/go-colorable github.com/cpuguy83/go-md2man/v2/md2man github.com/go-git/go-git/v5/utils/diff golang.org/x/text/internal golang.org/x/text/internal/catmsg golang.org/x/text/internal/number golang.org/x/text/internal/format golang.org/x/text/encoding/htmlindex go.etcd.io/bbolt github.com/fsnotify/fsnotify image/png github.com/go-git/go-git/v5/utils/sync github.com/yuin/goldmark/text github.com/google/pprof/profile internal/profile runtime/pprof github.com/jhillyerd/enmime/v2/internal/coding github.com/fatih/color vendor/golang.org/x/net/idna github.com/google/licenseclassifier/v2 github.com/ulikunitz/xz github.com/sorairolake/lzip-go golang.org/x/text/message/catalog github.com/bodgit/sevenzip/internal/lzma github.com/bodgit/sevenzip/internal/lzma2 github.com/yuin/goldmark/ast text/template github.com/aws/aws-sdk-go-v2/internal/context go.yaml.in/yaml/v4 github.com/editorconfig/editorconfig-core-go/v2 github.com/stangelandcl/ppmd github.com/minio/crc64nvme github.com/pjbgf/sha1cd github.com/zeebo/blake3/internal/consts github.com/bodgit/sevenzip/internal/ppmd github.com/syndtr/goleveldb/leveldb/errors github.com/syndtr/goleveldb/leveldb/journal github.com/syndtr/goleveldb/leveldb/iterator github.com/go-git/go-git/v5/plumbing/hash github.com/minio/minio-go/v7/pkg/sse gitea.dev/modules/sitemap github.com/zeebo/blake3/internal/alg/compress/compress_pure google.golang.org/protobuf/internal/descfmt google.golang.org/protobuf/internal/descopts google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/encoding/messageset google.golang.org/protobuf/internal/order google.golang.org/protobuf/internal/genid google.golang.org/protobuf/runtime/protoiface golang.org/x/text/cases golang.org/x/text/internal/colltab golang.org/x/net/idna google.golang.org/protobuf/reflect/protoregistry github.com/go-git/go-git/v5/plumbing golang.org/x/text/feature/plural google.golang.org/protobuf/internal/encoding/text google.golang.org/protobuf/internal/encoding/json google.golang.org/protobuf/internal/protolazy golang.org/x/net/html/charset github.com/microcosm-cc/bluemonday github.com/niklasfasching/go-org/org github.com/zeebo/blake3/internal/alg/compress/compress_sse41 github.com/syndtr/goleveldb/leveldb/memdb github.com/syndtr/goleveldb/leveldb/table github.com/klauspost/compress/gzip github.com/bodgit/sevenzip/internal/deflate github.com/klauspost/compress/zip github.com/klauspost/compress/zlib github.com/klauspost/pgzip net/textproto github.com/redis/go-redis/v9/internal/interfaces log/syslog github.com/google/go-tpm/tpmutil github.com/minio/minio-go/v7/pkg/s3utils github.com/bradfitz/gomemcache/memcache github.com/prometheus/procfs github.com/jhillyerd/enmime/v2/internal/textproto golang.org/x/net/internal/socket golang.org/x/net/internal/socks github.com/blevesearch/bleve_index_api 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 vendor/golang.org/x/net/http/httpproxy github.com/klauspost/compress/gzhttp/writer/gzkp github.com/go-git/go-git/v5/plumbing/format/index golang.org/x/text/message github.com/go-git/go-git/v5/plumbing/format/idxfile golang.org/x/text/number github.com/zeebo/blake3/internal/alg/compress golang.org/x/text/secure/precis gitea.com/go-chi/cache google.golang.org/protobuf/proto golang.org/x/text/collate github.com/zeebo/blake3/internal/alg/hash/hash_pure net/mail vendor/golang.org/x/net/http/httpguts golang.org/x/net/proxy golang.org/x/net/ipv4 golang.org/x/net/ipv6 github.com/zeebo/blake3/internal/alg/hash/hash_avx2 google.golang.org/protobuf/internal/encoding/defval golang.org/x/net/http/httpguts github.com/syndtr/goleveldb/leveldb crypto/elliptic crypto/internal/boring/bbig encoding/asn1 crypto/rand crypto/dsa github.com/dustin/go-humanize github.com/microsoft/go-mssqldb/internal/decimal github.com/remyoudompheng/bigfft github.com/fxamacker/cbor/v2 github.com/ProtonMail/go-crypto/openpgp/internal/encoding github.com/go-webauthn/x/encoding/asn1 github.com/go-git/gcfg github.com/blevesearch/geo/r3 github.com/aws/smithy-go/document github.com/aws/smithy-go/time github.com/go-git/go-git/v5/utils/merkletrie/filesystem github.com/go-git/go-git/v5/utils/merkletrie/index github.com/go-git/go-git/v5/plumbing/storer github.com/dlclark/regexp2/v2/helpers strk.kbt.io/projects/go/libravatar modernc.org/mathutil github.com/jhillyerd/enmime/v2/internal/stringutil github.com/go-git/go-git/v5/plumbing/format/packfile github.com/blevesearch/bleve/v2/analysis github.com/blevesearch/geo/s2 crypto/ed25519 mime/multipart uuid crypto/rsa 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/aws/aws-sdk-go-v2/internal/rand github.com/ProtonMail/go-crypto/openpgp/elgamal github.com/yuin/goldmark/extension/ast github.com/go-redsync/redsync/v4 github.com/aws/smithy-go/rand github.com/yuin/goldmark/renderer github.com/klauspost/compress/zstd github.com/yuin/goldmark/parser github.com/cloudflare/circl/math github.com/zeebo/blake3/internal/alg/hash github.com/jhillyerd/enmime/v2/mediatype github.com/aws/smithy-go github.com/yuin/goldmark/renderer/html github.com/zeebo/blake3/internal/alg github.com/blevesearch/bleve/v2/analysis/tokenizer/character vendor/golang.org/x/crypto/cryptobyte crypto/x509/pkix golang.org/x/crypto/cryptobyte github.com/pquerna/otp/totp database/sql/driver github.com/ProtonMail/go-crypto/bitcurves github.com/ProtonMail/go-crypto/brainpool github.com/dlclark/regexp2/v2 github.com/zeebo/blake3 google.golang.org/protobuf/encoding/prototext google.golang.org/protobuf/encoding/protodelim google.golang.org/protobuf/internal/filedesc github.com/go-git/go-git/v5/plumbing/format/objfile github.com/santhosh-tekuri/jsonschema/v6/kind github.com/go-git/go-git/v5/plumbing/format/config github.com/minio/minio-go/v7/pkg/cors database/sql github.com/hashicorp/go-version github.com/shopspring/decimal github.com/rs/xid 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/aws/smithy-go/auth golang.org/x/crypto/ed25519 github.com/yuin/goldmark github.com/go-git/go-git/v5/config github.com/go-git/go-git/v5/plumbing/format/gitignore gitea.dev/modules/markup/common github.com/yuin/goldmark/extension crypto/ecdsa github.com/cloudflare/circl/internal/conv github.com/go-git/go-git/v5/storage github.com/minio/minio-go/v7/pkg/replication github.com/cloudflare/circl/math/fp448 github.com/cloudflare/circl/math/fp25519 github.com/cloudflare/circl/math/mlsbset github.com/go-git/go-git/v5/storage/filesystem/dotgit github.com/go-git/go-git/v5/storage/memory encoding/json github.com/cloudflare/circl/dh/x25519 github.com/cloudflare/circl/sign/ed25519 github.com/go-git/go-git/v5/plumbing/protocol/packp html/template gitea.dev/modules/json xorm.io/xorm/internal/json github.com/google/uuid github.com/go-viper/mapstructure/v2 go.uber.org/atomic github.com/gorilla/securecookie github.com/goccy/go-json/internal/encoder golang.org/x/oauth2/jws github.com/aws/aws-sdk-go-v2/aws/protocol/restjson github.com/gorilla/feeds github.com/minio/minio-go/v7/pkg/lifecycle github.com/goccy/go-json/internal/decoder github.com/blevesearch/upsidedown_store_api github.com/couchbase/goutils/logging github.com/blevesearch/vellum/levenshtein go.uber.org/zap/zapcore github.com/santhosh-tekuri/jsonschema/v6 github.com/sirupsen/logrus github.com/aws/smithy-go/eventstream github.com/tinylib/msgp/msgp github.com/klauspost/compress/s2 github.com/emirpasic/gods/lists/arraylist github.com/aws/smithy-go/encoding/json log/slog github.com/minio/minio-go/v7/pkg/tags github.com/blevesearch/bleve/v2/util google.golang.org/grpc/grpclog/internal github.com/bits-and-blooms/bitset github.com/emersion/go-sasl github.com/urfave/cli/v3 github.com/klauspost/compress/gzhttp/writer/zstdkp github.com/ProtonMail/go-crypto/openpgp/x25519 github.com/json-iterator/go github.com/bodgit/sevenzip/internal/zstd github.com/rhysd/actionlint github.com/cloudflare/circl/dh/x448 github.com/cloudflare/circl/ecc/goldilocks github.com/ProtonMail/go-crypto/openpgp/ed25519 gitea.dev/modules/optional gitea.dev/modules/structs github.com/go-git/go-git/v5/storage/filesystem github.com/redis/go-redis/v9/internal/util google.golang.org/grpc/grpclog github.com/alecthomas/chroma/v2 github.com/ProtonMail/go-crypto/openpgp/x448 github.com/redis/go-redis/v9/internal github.com/redis/go-redis/v9/internal/hscan github.com/redis/go-redis/v9/internal/proto github.com/redis/go-redis/v9/internal/routing gitea.dev/modules/queue/lqinternal gitea.com/lunny/levelqueue github.com/emirpasic/gods/trees/binaryheap github.com/redis/go-redis/v9/internal/maintnotifications/logs google.golang.org/grpc/connectivity github.com/go-git/go-git/v5/plumbing/transport google.golang.org/grpc/internal github.com/cloudflare/circl/sign/ed448 google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/encoding/protojson github.com/redis/go-redis/v9/push github.com/redis/go-redis/v9/internal/pool gitea.dev/modules/htmlutil gitea.dev/routers/utils github.com/buildkite/terminal-to-html/v3 github.com/go-git/go-git/v5/plumbing/transport/internal/common gitea.dev/modules/templates/scopedtmpl google.golang.org/grpc/codes github.com/SaveTheRbtz/zstd-seekable-format-go/pkg github.com/wneessen/go-mail/log google.golang.org/protobuf/internal/impl github.com/ProtonMail/go-crypto/openpgp/ed448 gitea.dev/modules/markup/internal github.com/google/go-tpm/legacy/tpm2 crypto/x509 github.com/ProtonMail/go-crypto/openpgp/internal/ecc github.com/go-git/go-git/v5/plumbing/transport/git gitea.com/gitea/runner/act/common gitea.dev/modules/zstd github.com/go-co-op/gocron/v2 github.com/ProtonMail/go-crypto/openpgp/ecdh github.com/ProtonMail/go-crypto/openpgp/ecdsa github.com/ProtonMail/go-crypto/openpgp/eddsa github.com/RoaringBitmap/roaring/v2 github.com/blevesearch/vellum modernc.org/libc github.com/alecthomas/chroma/v2/formatters/html github.com/alecthomas/chroma/v2/styles github.com/alecthomas/chroma/v2/lexers github.com/ProtonMail/go-crypto/openpgp/packet github.com/golang-sql/sqlexp modernc.org/sqlite/vtab xorm.io/xorm/contexts xorm.io/builder github.com/redis/go-redis/v9/internal/otel github.com/redis/go-redis/v9/internal/auth/streaming github.com/redis/go-redis/v9/maintnotifications xorm.io/xorm/log go.uber.org/zap/internal github.com/goccy/go-json/internal/encoder/vm_color_indent github.com/tinylib/msgp/msgp/setof xorm.io/xorm/core xorm.io/xorm/internal/utils github.com/blevesearch/geo/geojson xorm.io/xorm/convert xorm.io/xorm/schemas gitea.dev/modules/util github.com/golang-jwt/jwt/v5 crypto/tls golang.org/x/crypto/ocsp github.com/tstranex/u2f github.com/google/go-tpm/tpm2/transport golang.org/x/crypto/ssh github.com/wneessen/go-mail/internal/pkcs7 github.com/ProtonMail/go-crypto/openpgp github.com/google/go-tpm/tpm2 github.com/minio/minio-go/v7/pkg/set xorm.io/xorm/caches xorm.io/xorm/dialects gitea.dev/modules/util/rotatingfilewriter gitea.dev/modules/glob gitea.dev/modules/gtprof gitea.dev/models/perm gitea.dev/modules/templates/eval gitea.dev/modules/markup/markdown/math gitea.dev/modules/packages/cran gitea.dev/modules/paginator gitea.dev/modules/auth/httpauth gitea.dev/modules/packages/goproxy github.com/ProtonMail/go-crypto/openpgp/clearsign github.com/sassoftware/go-rpmutils github.com/go-git/go-git/v5/plumbing/object github.com/minio/minio-go/v7/pkg/notification github.com/blevesearch/bleve/v2/geo gitea.dev/modules/actions/workflowpattern github.com/minio/minlz gitea.dev/modules/process gitea.dev/modules/reqctx gitea.dev/modules/log github.com/blevesearch/bleve/v2/search github.com/blevesearch/bleve/v2/document gitea.dev/modules/tempdir gitea.dev/modules/auth/password/hash gitea.dev/modules/packages/conan gitea.dev/modules/pprof gitea.dev/modules/assetfs gitea.dev/modules/regexplru gitea.dev/modules/setting/config gitea.dev/modules/proxyprotocol gitea.dev/modules/translation/i18n gitea.dev/modules/auth github.com/blevesearch/bleve/v2/search/highlight github.com/blevesearch/bleve/v2/fusion github.com/blevesearch/bleve/v2/search/collector github.com/blevesearch/bleve/v2/search/facet github.com/blevesearch/bleve/v2/search/scorer github.com/go-webauthn/webauthn/protocol/webauthncbor google.golang.org/protobuf/internal/filetype xorm.io/xorm/tags github.com/blevesearch/bleve/v2/registry github.com/go-git/go-git/v5/plumbing/revlist github.com/yuin/goldmark-highlighting/v2 github.com/blevesearch/bleve/v2/search/searcher github.com/go-git/go-git/v5/plumbing/transport/server google.golang.org/protobuf/runtime/protoimpl github.com/blevesearch/bleve/v2/analysis/datetime/timestamp/microseconds github.com/blevesearch/bleve/v2/analysis/datetime/timestamp/seconds gitea.dev/modules/indexer/code/bleve/token/path github.com/blevesearch/bleve/v2/analysis/datetime/timestamp/nanoseconds github.com/blevesearch/bleve/v2/analysis/token/lowercase github.com/blevesearch/bleve/v2/analysis/token/camelcase github.com/blevesearch/bleve/v2/search/highlight/format/html github.com/blevesearch/bleve/v2/search/highlight/highlighter/simple github.com/blevesearch/bleve/v2/analysis/tokenizer/unicode github.com/blevesearch/bleve/v2/analysis/datetime/timestamp/milliseconds github.com/blevesearch/bleve/v2/search/highlight/fragmenter/simple github.com/blevesearch/bleve/v2/index/upsidedown/store/boltdb github.com/blevesearch/bleve/v2/analysis/analyzer/custom github.com/blevesearch/bleve/v2/analysis/tokenizer/single github.com/blevesearch/bleve/v2/analysis/datetime/flexible github.com/blevesearch/bleve/v2/index/upsidedown/store/gtreap github.com/blevesearch/bleve/v2/analysis/token/porter github.com/blevesearch/bleve/v2/analysis/token/unicodenorm github.com/blevesearch/bleve/v2/analysis/token/stop github.com/blevesearch/bleve/v2/analysis/analyzer/keyword github.com/blevesearch/bleve/v2/analysis/lang/en github.com/blevesearch/bleve/v2/analysis/datetime/optional google.golang.org/protobuf/types/known/timestamppb github.com/blevesearch/bleve/v2/index/upsidedown google.golang.org/protobuf/types/known/structpb 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 github.com/blevesearch/bleve/v2/search/highlight/highlighter/html github.com/blevesearch/bleve/v2/analysis/analyzer/standard github.com/go-git/go-git/v5/plumbing/transport/file xorm.io/xorm/internal/statements github.com/blevesearch/scorch_segment_api/v2 github.com/RoaringBitmap/roaring/v2/roaring64 github.com/blevesearch/bleve/v2/mapping github.com/prometheus/client_model/go github.com/blevesearch/zapx/v13 github.com/blevesearch/zapx/v14 github.com/blevesearch/zapx/v11 github.com/blevesearch/zapx/v12 github.com/blevesearch/zapx/v15 connectrpc.com/connect/internal/gen/connectext/grpc/status/v1 google.golang.org/genproto/googleapis/rpc/status google.golang.org/grpc/internal/status gitea.dev/modules/generate golang.org/x/crypto/ssh/knownhosts github.com/gliderlabs/ssh golang.org/x/crypto/ssh/agent google.golang.org/grpc/status github.com/prometheus/common/model github.com/blevesearch/zapx/v17 github.com/blevesearch/zapx/v16 gitea.dev/actions-proto-go/runner/v1 github.com/skeema/knownhosts github.com/xanzy/ssh-agent github.com/42wim/sshsig github.com/blevesearch/bleve/v2/search/query github.com/urfave/cli-docs/v3 github.com/go-git/go-git/v5/plumbing/transport/ssh xorm.io/xorm net/http/httptrace github.com/go-sql-driver/mysql github.com/lib/pq github.com/microsoft/go-mssqldb/msdsn github.com/wneessen/go-mail/smtp net/smtp github.com/redis/go-redis/v9 github.com/emersion/go-imap github.com/miekg/dns github.com/prometheus/client_golang/prometheus/internal net/http/internal/httpcommon golang.org/x/net/internal/httpcommon github.com/wneessen/go-mail github.com/microsoft/go-mssqldb/integratedauth github.com/microsoft/go-mssqldb/integratedauth/ntlm net/http/internal/http2 github.com/microsoft/go-mssqldb github.com/emersion/go-imap/responses github.com/emersion/go-imap/commands github.com/goccy/go-json/internal/encoder/vm_color github.com/emersion/go-imap/client github.com/blevesearch/bleve/v2/index/scorch github.com/go-webauthn/webauthn/protocol/webauthncose net/http github.com/42wim/httpsig golang.org/x/oauth2/internal gitea.dev/modules/hostmatcher github.com/Azure/azure-sdk-for-go/sdk/internal/exported gitea.dev/modules/typesniffer net/http/cookiejar github.com/Azure/go-ntlmssp github.com/gorilla/sessions github.com/go-webauthn/x/revoke gitea.com/go-chi/binding net/http/httputil codeberg.org/gusted/mcaptcha github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared cloud.google.com/go/compute/metadata github.com/yohcop/openid-go github.com/go-chi/cors github.com/aws/smithy-go/endpoints github.com/klauspost/compress/gzhttp net/http/pprof github.com/hashicorp/go-cleanhttp gitea.dev/modules/web/types github.com/unknwon/com github.com/chi-middleware/proxy github.com/minio/minio-go/v7/pkg/signer github.com/aws/smithy-go/encoding/httpbinding github.com/olekukonko/errors github.com/couchbase/goutils/scramsha gitea.dev/modules/uri github.com/charmbracelet/git-lfs-transfer/transfer github.com/mrjones/oauth gitea.com/lunny/dingtalk_webhook github.com/go-chi/chi/v5 github.com/minio/minio-go/v7/pkg/encrypt golang.org/x/net/http2 github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header github.com/caddyserver/zerossl github.com/gorilla/mux go.uber.org/zap connectrpc.com/connect net/http/cgi github.com/prometheus/common/expfmt github.com/mholt/acmez/v3/acme github.com/gogs/go-gogs-client github.com/go-git/go-git/v5/plumbing/transport/http github.com/felixge/fgprof gitea.com/go-chi/session expvar github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil github.com/Azure/azure-sdk-for-go/sdk/internal/poller github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported github.com/hashicorp/go-retryablehttp github.com/andybalholm/brotli golang.org/x/net/publicsuffix github.com/go-webauthn/webauthn/metadata github.com/spf13/afero github.com/google/go-github/v88/github github.com/couchbase/gomemcached/client gitea.com/go-chi/captcha gitea.com/go-chi/cache/memcache gitea.dev/sdk net/http/fcgi golang.org/x/oauth2 github.com/go-git/go-git/v5/plumbing/transport/client go4.org/readerutil github.com/go-chi/chi/v5/middleware github.com/blevesearch/bleve/v2 github.com/go-webauthn/webauthn/protocol github.com/mholt/acmez/v3 github.com/minio/minio-go/v7/pkg/credentials github.com/aws/smithy-go/transport/http github.com/Azure/azure-sdk-for-go/sdk/azcore/streaming github.com/Azure/azure-sdk-for-go/sdk/azcore/policy github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers github.com/go-git/go-git/v5 github.com/markbates/goth github.com/go-ldap/ldap/v3 golang.org/x/oauth2/authhandler golang.org/x/oauth2/google/internal/impersonate golang.org/x/oauth2/google/internal/stsexchange golang.org/x/oauth2/jwt gitlab.com/gitlab-org/api/client-go/v2 gitea.com/go-chi/session/mysql gitea.com/go-chi/session/postgres gitea.com/go-chi/session/memcache golang.org/x/oauth2/google/internal/externalaccountauthorizeduser github.com/markbates/goth/providers/azuread github.com/markbates/goth/providers/azureadv2 github.com/markbates/goth/providers/facebook github.com/markbates/goth/providers/dropbox github.com/markbates/goth/providers/github github.com/markbates/goth/providers/gitea github.com/markbates/goth/providers/bitbucket github.com/markbates/goth/gothic github.com/markbates/goth/providers/discord github.com/markbates/goth/providers/microsoftonline github.com/markbates/goth/providers/twitter github.com/markbates/goth/providers/nextcloud github.com/markbates/goth/providers/openidConnect github.com/markbates/goth/providers/yandex github.com/markbates/goth/providers/mastodon github.com/markbates/goth/providers/gitlab golang.org/x/oauth2/google/externalaccount github.com/minio/minio-go/v7 github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/async 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/prometheus/client_golang/prometheus github.com/couchbase/go-couchbase github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime go.uber.org/zap/exp/zapslog golang.org/x/oauth2/google github.com/caddyserver/certmagic github.com/go-webauthn/webauthn/webauthn gitea.dev/actions-proto-go/ping/v1/pingv1connect gitea.dev/actions-proto-go/runner/v1/runnerv1connect github.com/markbates/goth/providers/google github.com/goccy/go-json/internal/encoder/vm_indent 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/aws/aws-sdk-go-v2/aws gitea.com/gitea/runner/act/common/git gitea.dev/routers/api/actions/ping github.com/Azure/azure-sdk-for-go/sdk/azcore github.com/aws/aws-sdk-go-v2/credentials github.com/aws/aws-sdk-go-v2/internal/configsources github.com/aws/aws-sdk-go-v2/aws/defaults github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4 github.com/aws/aws-sdk-go-v2/aws/middleware github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 github.com/aws/aws-sdk-go-v2/internal/endpoints github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated gitea.com/go-chi/session/couchbase modernc.org/sqlite/lib gitea.com/gitea/runner/act/model github.com/aws/aws-sdk-go-v2/service/codecommit/internal/endpoints github.com/prometheus/client_golang/prometheus/promhttp github.com/aws/aws-sdk-go-v2/aws/signer/v4 github.com/aws/aws-sdk-go-v2/aws/transport/http github.com/aws/aws-sdk-go-v2/aws/retry github.com/aws/aws-sdk-go-v2/internal/auth/smithy gitea.com/gitea/runner/act/exprparser github.com/ethantkoenig/rupture github.com/aws/aws-sdk-go-v2/service/codecommit gitea.dev/modules/actions/jobparser 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/internal/base github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/appendblob github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service 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 github.com/mholt/archives gitea.dev/modules/indexer/internal/meilisearch github.com/go-enry/go-enry/v2 gitea.dev/modules/analyze github.com/goccy/go-json/internal/encoder/vm github.com/go-redsync/redsync/v4/redis/goredis/v9 gitea.dev/modules/nosql gitea.dev/modules/setting gitea.dev/modules/options gitea.dev/models/unit gitea.dev/modules/graceful gitea.dev/modules/avatar gitea.dev/modules/proxy gitea.dev/modules/httpcache gitea.dev/modules/git/gitcmd gitea.dev/modules/auth/password/pwn gitea.dev/modules/markup/mdstripper gitea.dev/modules/hcaptcha gitea.dev/modules/highlight gitea.dev/modules/base gitea.dev/modules/emoji gitea.dev/modules/mcaptcha gitea.dev/modules/globallock gitea.dev/modules/recaptcha gitea.dev/modules/auth/openid gitea.dev/modules/turnstile gitea.dev/modules/translation gitea.dev/modules/label gitea.dev/modules/references gitea.dev/modules/timeutil gitea.dev/modules/charset gitea.dev/models/shared/types gitea.dev/modules/auth/password gitea.dev/modules/dump gitea.dev/modules/cache gitea.dev/modules/web/routing gitea.dev/modules/queue gitea.dev/modules/httplib gitea.dev/modules/git/url gitea.dev/modules/public gitea.dev/modules/testlogger gitea.dev/modules/svg gitea.dev/modules/storage gitea.dev/services/webtheme gitea.dev/modules/markup gitea.dev/modules/git gitea.dev/modules/markup/external gitea.dev/modules/csv gitea.dev/modules/markup/console gitea.dev/modules/markup/orgmode gitea.dev/modules/markup/markdown gitea.dev/modules/packages gitea.dev/modules/markup/csv gitea.dev/modules/markup/jupyter gitea.dev/modules/validation gitea.dev/modules/git/pipeline gitea.dev/modules/migration gitea.dev/modules/git/attribute gitea.dev/modules/gitrepo gitea.dev/modules/issue/template gitea.dev/modules/fileicon gitea.dev/modules/lfs gitea.dev/modules/git/languagestats gitea.dev/modules/packages/alpine gitea.dev/modules/packages/arch gitea.dev/modules/packages/cargo gitea.dev/modules/packages/chef gitea.dev/modules/packages/debian gitea.dev/modules/packages/maven gitea.dev/modules/packages/container gitea.dev/modules/packages/conda gitea.dev/modules/packages/npm gitea.dev/modules/packages/helm gitea.dev/modules/packages/pub gitea.dev/modules/packages/vagrant gitea.dev/modules/packages/composer gitea.dev/modules/packages/rpm gitea.dev/modules/packages/nuget gitea.dev/modules/packages/swift gitea.dev/modules/packages/rubygems 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_7 gitea.dev/modules/indexer/internal gitea.dev/models/system gitea.dev/models/migrations/v1_23 gitea.dev/models/dbfs gitea.dev/routers/web/healthcheck gitea.dev/models/webhook gitea.dev/models/migrations/v1_26 gitea.dev/models/migrations/v1_22 gitea.dev/models/db/install gitea.dev/modules/indexer/internal/bleve gitea.dev/modules/indexer/internal/elasticsearch gitea.dev/modules/indexer/internal/db gitea.dev/modules/indexer/issues/internal gitea.dev/modules/indexer/issues/meilisearch gitea.dev/modules/indexer/issues/bleve gitea.dev/modules/indexer/issues/elasticsearch gitea.dev/models/migrations/v1_11 gitea.dev/models/migrations/v1_16 gitea.dev/models/migrations/v1_20 gitea.dev/models/migrations/v1_15 gitea.dev/models/migrations/v1_25 gitea.dev/models/migrations/v1_27 gitea.dev/models/migrations/v1_8 gitea.dev/models/migrations/v1_6 gitea.dev/models/migrations/v1_13 gitea.dev/models/migrations/v1_14 gitea.dev/models/migrations/v1_24 gitea.dev/modules/system gitea.dev/modules/session gitea.dev/services/auth/source/sspi gitea.dev/models/user gitea.dev/modules/updatechecker gitea.dev/modules/web/middleware gitea.dev/modules/web github.com/goccy/go-json github.com/olekukonko/ll/lh gitea.dev/models/organization gitea.dev/services/mailer/token gitea.dev/modules/auth/webauthn gitea.dev/models/gituser gitea.dev/services/auth/source/smtp gitea.dev/services/auth/source/db gitea.dev/services/auth/source/pam gitea.dev/services/auth/source/oauth2 github.com/olekukonko/ll gitea.dev/services/oauth2_provider gitea.dev/models/repo gitea.dev/routers/web/shared/mention github.com/olekukonko/tablewriter/tw github.com/olekukonko/tablewriter/renderer gitea.dev/models/packages gitea.dev/models/pull gitea.dev/models/actions gitea.dev/models/project gitea.dev/models/migrations/v1_9 gitea.dev/modules/indexer/code/internal gitea.dev/models/admin gitea.dev/models/renderhelper gitea.dev/models/asymkey gitea.dev/models/migrations/v1_21 gitea.dev/modules/indexer/stats gitea.dev/models/migrations/v1_12 gitea.dev/modules/indexer/code/elasticsearch gitea.dev/modules/indexer/code/bleve gitea.dev/modules/indexer/code github.com/olekukonko/tablewriter gitea.dev/models/packages/alpine gitea.dev/models/packages/container gitea.dev/models/packages/arch gitea.dev/models/migrations/v1_17 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/models/packages/rpm gitea.dev/modules/packages/terraform gitea.dev/modules/indexer/code/gitgrep gitea.dev/modules/ssh gitea.dev/models/perm/access gitea.dev/modules/badge gitea.dev/models/git github.com/Necoro/html2text github.com/inbucket/html2text gitea.dev/modules/actions gitea.dev/models/issues gitea.dev/services/mailer/sender github.com/jhillyerd/enmime/v2 gitea.dev/models/secret gitea.dev/services/secrets gitea.dev/modules/repository gitea.dev/models/migrations/v1_18 gitea.dev/models/activities gitea.dev/models gitea.dev/services/gitdiff gitea.dev/services/asymkey gitea.dev/services/automergequeue gitea.dev/services/externalaccount gitea.dev/modules/indexer/issues/db 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/services/repository/commitstatus gitea.dev/services/packages gitea.dev/services/indexer gitea.dev/modules/lfstransfer/backend gitea.dev/modules/lfstransfer gitea.dev/services/issue gitea.dev/services/feed gitea.dev/modules/metrics gitea.dev/modules/templates gitea.dev/services/uinotification gitea.dev/services/packages/alpine gitea.dev/services/packages/container gitea.dev/services/packages/arch gitea.dev/services/packages/terraform gitea.dev/services/packages/rpm gitea.dev/services/packages/debian gitea.dev/services/versioned_migration gitea.dev/services/context gitea.dev/services/pull gitea.dev/services/packages/pkgspec gitea.dev/services/agit gitea.dev/routers/api/v1/activitypub gitea.dev/routers/api/v1/token gitea.dev/services/repository/archiver gitea.dev/routers/api/v1/settings gitea.dev/routers/web/shared/issue gitea.dev/services/context/upload gitea.dev/services/convert gitea.dev/services/markup gitea.dev/routers/api/packages/helper gitea.dev/routers/web/feed gitea.dev/routers/web/shared/project gitea.dev/routers/api/packages/alpine gitea.dev/routers/api/packages/arch gitea.dev/routers/api/packages/conda gitea.dev/routers/api/packages/cran gitea.dev/routers/api/packages/goproxy gitea.dev/routers/api/packages/debian gitea.dev/routers/api/packages/helm gitea.dev/routers/api/packages/maven gitea.dev/routers/api/packages/npm gitea.dev/routers/api/packages/pub gitea.dev/routers/api/packages/pypi gitea.dev/routers/api/packages/rpm gitea.dev/routers/api/packages/rubygems gitea.dev/routers/api/packages/swift gitea.dev/routers/api/packages/terraform gitea.dev/routers/api/packages/vagrant gitea.dev/routers/api/packages/generic gitea.dev/services/attachment gitea.dev/services/release gitea.dev/services/mailer/incoming gitea.dev/modules/eventsource gitea.dev/services/mailer gitea.dev/services/webhook gitea.dev/routers/api/packages/composer gitea.dev/services/lfs gitea.dev/services/actions gitea.dev/routers/api/v1/utils gitea.dev/services/forms gitea.dev/routers/api/v1/notify gitea.dev/routers/api/v1/packages gitea.dev/services/repository/files gitea.dev/routers/api/v1/swagger gitea.dev/routers/web/shared/label gitea.dev/routers/web/shared/secrets gitea.dev/routers/web/user/setting/security gitea.dev/services/repository gitea.dev/routers/api/actions/runner gitea.dev/routers/api/actions gitea.dev/services/packages/cargo gitea.dev/services/automerge gitea.dev/services/org gitea.dev/services/migrations gitea.dev/services/wiki gitea.dev/services/doctor gitea.dev/services/packages/cleanup gitea.dev/routers/api/packages/cargo gitea.dev/routers/web/shared/packages gitea.dev/services/auth/source gitea.dev/services/user gitea.dev/services/auth/source/ldap gitea.dev/routers/api/v1/shared gitea.dev/routers/web/shared/user gitea.dev/routers/web/shared/actions gitea.dev/services/auth gitea.dev/services/mirror gitea.dev/services/task gitea.dev/routers/api/packages/chef gitea.dev/routers/api/packages/conan gitea.dev/routers/api/packages/container gitea.dev/routers/api/packages/nuget gitea.dev/routers/common gitea.dev/routers/web/user/setting gitea.dev/routers/web/auth gitea.dev/routers/api/packages gitea.dev/services/cron gitea.dev/routers/api/v1/repo gitea.dev/routers/web/misc gitea.dev/routers/web/explore gitea.dev/routers/web/repo/actions gitea.dev/routers/api/v1/misc gitea.dev/routers/web/repo gitea.dev/routers/web/org gitea.dev/routers/web/events gitea.dev/routers/install gitea.dev/routers/private 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/api/v1 gitea.dev/routers/web/repo/setting 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.025s 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_artifacts === RUN TestAddLdapBindDn --- PASS: TestAddLdapBindDn (0.00s) === RUN TestAddLdapSimpleAuth --- PASS: TestAddLdapSimpleAuth (0.00s) === RUN TestUpdateLdapBindDn --- PASS: TestUpdateLdapBindDn (0.01s) === RUN TestUpdateLdapSimpleAuth --- PASS: TestUpdateLdapSimpleAuth (0.00s) === 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 'IyrKVAms59Bd' 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.02s) --- PASS: TestChangePasswordCommand/change_password_successfully (0.02s) --- PASS: TestChangePasswordCommand/failure_cases (0.00s) --- 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.00s) --- 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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 'CWeiQyP3Fx6S' New user 'u' has been successfully created! generated random password is '68x9VU8MRIET' 2026/09/06 06:40:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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... 11b7bd642c0f95d7120c8ff7f4413cb6873bec40 2026/09/06 06:40:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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 '7LYojAH6zYpv' New user 'u' has been successfully created! Access token was successfully created... e95e1555e91b5102085afb639cca8018e7e783df 2026/09/06 06:40:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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 'E5cwpEf0BU41' 2026/09/06 06:40:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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 'QWqxx8DAERLu' 2026/09/06 06:40:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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 'G5p94QvoGULU' === RUN TestAdminUserCreate/UserFields 2026/09/06 06:40:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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 'J7qqzi2GrSFa' New user 'u-FullNameWithSpace' has been successfully created! 2026/09/06 06:40:28 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:28 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:28 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:28 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:28 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:28 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:28 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:28 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 'kb6gqukVwame' New user 'u-FullNameEmpty' has been successfully created! --- PASS: TestAdminUserCreate (0.34s) --- PASS: TestAdminUserCreate/MustChangePassword (0.17s) --- PASS: TestAdminUserCreate/UserType (0.00s) --- PASS: TestAdminUserCreate/AccessToken (0.10s) --- PASS: TestAdminUserCreate/UserFields (0.06s) === RUN TestAdminUserDelete === RUN TestAdminUserDelete/delete_user_by_id 2026/09/06 06:40:29 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:29 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:29 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:29 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:29 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:29 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:29 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:29 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 'pVROE2LVV7HY' New user 'testuser' has been successfully created! 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_artifacts === RUN TestAdminUserDelete/delete_user_by_username 2026/09/06 06:40:29 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:29 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:29 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:29 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:29 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:29 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:29 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:29 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 'GvaorVxT0RgT' New user 'testuser' has been successfully created! 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_artifacts === RUN TestAdminUserDelete/delete_user_by_email 2026/09/06 06:40:29 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:29 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:29 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:29 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:29 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:29 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:29 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:29 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 'SqiNdrmP2Z5N' New user 'testuser' has been successfully created! 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_artifacts === RUN TestAdminUserDelete/delete_user_by_all_3_attributes 2026/09/06 06:40:29 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:29 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:29 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:29 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:29 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:29 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:29 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:29 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 't9iEhLAts2GY' New user 'testuser' has been successfully created! 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_artifacts --- PASS: TestAdminUserDelete (0.15s) --- PASS: TestAdminUserDelete/delete_user_by_id (0.05s) --- PASS: TestAdminUserDelete/delete_user_by_username (0.04s) --- PASS: TestAdminUserDelete/delete_user_by_email (0.03s) --- PASS: TestAdminUserDelete/delete_user_by_all_3_attributes (0.03s) === RUN TestAdminUserDeleteFailure === RUN TestAdminUserDeleteFailure/no_user_to_delete 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_artifacts === RUN TestAdminUserDeleteFailure/user_exists_but_provided_username_does_not_match 2026/09/06 06:40:29 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:29 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:29 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:29 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:29 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:29 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:29 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:29 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 'Vu4UpOxqQXxn' New user 'testuser' has been successfully created! 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_artifacts === RUN TestAdminUserDeleteFailure/user_exists_but_provided_id_does_not_match 2026/09/06 06:40:29 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:29 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:29 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:29 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:29 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:29 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:29 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:29 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 'wajKUGvYyFbI' New user 'testuser' has been successfully created! 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1576649608/data/actions_artifacts === RUN TestAdminUserDeleteFailure/no_required_flags_are_provided --- PASS: TestAdminUserDeleteFailure (0.05s) --- PASS: TestAdminUserDeleteFailure/no_user_to_delete (0.00s) --- PASS: TestAdminUserDeleteFailure/user_exists_but_provided_username_does_not_match (0.02s) --- PASS: TestAdminUserDeleteFailure/user_exists_but_provided_id_does_not_match (0.02s) --- PASS: TestAdminUserDeleteFailure/no_required_flags_are_provided (0.00s) === RUN TestMustChangePassword 2026/09/06 06:40:29 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:29 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:29 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:29 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:29 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:29 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:29 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:29 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 'CqUwdOXoXrsv' New user 'testuser' has been successfully created! 2026/09/06 06:40:29 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:29 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:29 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:29 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:29 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:29 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:29 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:29 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 '5cRjvGw24LQh' 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.05s) === RUN TestCertCommand === RUN TestCertCommand/RSA_cert_generation Written cert to /home/buildozer/aports/community/gitea/tmp/TestCertCommandRSA_cert_generation3418210415/001/cert.pem Written key to /home/buildozer/aports/community/gitea/tmp/TestCertCommandRSA_cert_generation3418210415/001/key.pem === RUN TestCertCommand/ECDSA_cert_generation Written cert to /home/buildozer/aports/community/gitea/tmp/TestCertCommandECDSA_cert_generation3427664090/001/cert.pem Written key to /home/buildozer/aports/community/gitea/tmp/TestCertCommandECDSA_cert_generation3427664090/001/key.pem === RUN TestCertCommand/mixed_host,_certificate_authority Written cert to /home/buildozer/aports/community/gitea/tmp/TestCertCommandmixed_host,_certificate_authority1425112512/001/cert.pem Written key to /home/buildozer/aports/community/gitea/tmp/TestCertCommandmixed_host,_certificate_authority1425112512/001/key.pem --- PASS: TestCertCommand (0.47s) --- PASS: TestCertCommand/RSA_cert_generation (0.11s) --- PASS: TestCertCommand/ECDSA_cert_generation (0.00s) --- PASS: TestCertCommand/mixed_host,_certificate_authority (0.36s) === RUN TestCertCommandFailures === RUN TestCertCommandFailures/Start_Date_Parsing_failure === RUN TestCertCommandFailures/Unknown_curve === RUN TestCertCommandFailures/Key_generation_failure === RUN TestCertCommandFailures/Missing_parameters --- PASS: TestCertCommandFailures (0.85s) --- PASS: TestCertCommandFailures/Start_Date_Parsing_failure (0.85s) --- 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.09s) === 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 15.844s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-346212299/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-346212299/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-346212299/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-346212299/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-346212299/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-346212299/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-346212299/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.08s) --- 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.00s) --- PASS: TestCliCmd/./gitea_-c_/dev/null_test-cmd_-h (0.00s) --- PASS: TestCliCmd/./gitea_test-cmd_-c_/dev/null_-h (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd_-h_-c_/dev/null (0.00s) --- PASS: TestCliCmd/./gitea_-c_/dev/null_test-cmd_help (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd_-c_/dev/null_help (0.01s) --- PASS: TestCliCmd/./gitea_test-cmd_help_-c_/dev/null (0.00s) --- PASS: TestCliCmd/./gitea_test-cmd (0.00s) --- PASS: TestCliCmd/./gitea_-c_/tmp/app.ini_test-cmd (0.00s) --- PASS: TestCliCmd/./gitea_test-cmd_-c_/tmp/app.ini (0.00s) --- PASS: TestCliCmd/./gitea_test-cmd#01 (0.00s) --- PASS: TestCliCmd/./gitea_test-cmd_--work-path_/tmp/other (0.00s) --- PASS: TestCliCmd/./gitea_test-cmd_--config_/tmp/app-other.ini (0.00s) === RUN TestCliCmdError --- PASS: TestCliCmdError (0.01s) === RUN TestCliCmdBefore --- PASS: TestCliCmdBefore (0.01s) === RUN TestCliCmdCompletion --- PASS: TestCliCmdCompletion (0.00s) PASS ok gitea.dev/cmd/cmdtest 13.744s 2026/09/06 06:40:21 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1990702889/data/attachments 2026/09/06 06:40:21 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1990702889/data/avatars 2026/09/06 06:40:21 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1990702889/data/repo-avatars 2026/09/06 06:40:21 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1990702889/data/repo-archive 2026/09/06 06:40:21 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1990702889/data/packages 2026/09/06 06:40:21 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1990702889/data/actions_log 2026/09/06 06:40:21 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1990702889/data/actions_artifacts === RUN TestFixturesAreConsistent --- PASS: TestFixturesAreConsistent (0.39s) === RUN TestCheckRepoStats --- PASS: TestCheckRepoStats (0.00s) === RUN TestDoctorUserStarNum --- PASS: TestDoctorUserStarNum (0.00s) === RUN Test_repoStatsCorrectIssueNumComments --- PASS: Test_repoStatsCorrectIssueNumComments (0.00s) PASS ok gitea.dev/models 11.607s 2026/09/06 06:40:22 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3436908593/data/attachments 2026/09/06 06:40:22 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3436908593/data/avatars 2026/09/06 06:40:22 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3436908593/data/repo-avatars 2026/09/06 06:40:22 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3436908593/data/repo-archive 2026/09/06 06:40:22 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3436908593/data/packages 2026/09/06 06:40:22 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3436908593/data/actions_log 2026/09/06 06:40:22 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3436908593/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.08s) --- PASS: TestGetPriorAttemptChildrenByParent/matrix_instances_and_non-matrix_sibling_are_indexed_by_(JobID,_Name) (0.01s) --- PASS: TestGetPriorAttemptChildrenByParent/walkback_past_an_attempt_where_the_caller_had_no_children (0.01s) === 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.00s) --- PASS: TestSettleRunAfterCancel/done_job_on_a_legacy_run_without_attempt (0.00s) --- 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.02s) --- PASS: TestTaskCancellingFinalizesToCancelled/runner_reports_failure (0.02s) === 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.05s) === RUN TestCreateTaskForRunnerPagination --- PASS: TestCreateTaskForRunnerPagination (0.06s) === RUN TestUpdateTaskByStateIsAtomic --- PASS: TestUpdateTaskByStateIsAtomic (0.06s) === 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 12.660s 2026/09/06 06:40:24 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4097154829/data/attachments 2026/09/06 06:40:24 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4097154829/data/avatars 2026/09/06 06:40:24 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4097154829/data/repo-avatars 2026/09/06 06:40:24 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4097154829/data/repo-archive 2026/09/06 06:40:24 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4097154829/data/packages 2026/09/06 06:40:24 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4097154829/data/actions_log 2026/09/06 06:40:24 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4097154829/data/actions_artifacts === RUN TestAction_GetRepoPath --- PASS: TestAction_GetRepoPath (0.16s) === RUN TestAction_GetRepoLink --- PASS: TestAction_GetRepoLink (0.02s) === RUN TestActivityReadable --- PASS: TestActivityReadable (0.00s) === RUN TestConsistencyUpdateAction --- PASS: TestConsistencyUpdateAction (0.02s) === RUN TestDeleteIssueActions --- PASS: TestDeleteIssueActions (0.01s) === RUN TestCreateOrUpdateIssueNotifications --- PASS: TestCreateOrUpdateIssueNotifications (0.03s) === RUN TestNotificationsForUser --- PASS: TestNotificationsForUser (0.01s) === RUN TestNotification_GetRepo --- PASS: TestNotification_GetRepo (0.00s) === RUN TestNotification_GetIssue --- PASS: TestNotification_GetIssue (0.04s) === RUN TestGetNotificationCount --- PASS: TestGetNotificationCount (0.01s) === RUN TestSetNotificationStatus --- PASS: TestSetNotificationStatus (0.01s) === RUN TestUpdateNotificationStatuses --- PASS: TestUpdateNotificationStatuses (0.00s) === RUN TestSetIssueReadBy --- PASS: TestSetIssueReadBy (0.02s) === RUN TestGetUserHeatmapDataByUser --- PASS: TestGetUserHeatmapDataByUser (0.18s) PASS ok gitea.dev/models/activities 13.396s ? gitea.dev/models/admin [no test files] 2026/09/06 06:40:20 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-297748019/data/attachments 2026/09/06 06:40:20 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-297748019/data/avatars 2026/09/06 06:40:20 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-297748019/data/repo-avatars 2026/09/06 06:40:20 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-297748019/data/repo-archive 2026/09/06 06:40:20 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-297748019/data/packages 2026/09/06 06:40:20 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-297748019/data/actions_log 2026/09/06 06:40:20 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-297748019/data/actions_artifacts === RUN TestCheckArmoredGPGKeyString --- PASS: TestCheckArmoredGPGKeyString (0.00s) === RUN TestCheckArmoredbrainpoolP256r1GPGKeyString --- PASS: TestCheckArmoredbrainpoolP256r1GPGKeyString (0.01s) === RUN TestExtractSignature --- PASS: TestExtractSignature (0.00s) === RUN TestCheckGPGUserEmail --- PASS: TestCheckGPGUserEmail (0.06s) === RUN TestCheckGParseGPGExpire --- PASS: TestCheckGParseGPGExpire (0.03s) === RUN TestTryGetKeyIDFromSignature --- PASS: TestTryGetKeyIDFromSignature (0.00s) === RUN TestParseGPGKey --- PASS: TestParseGPGKey (0.65s) === 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/TestFromOpenSSHrsa668871822/001/id /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHrsa668871822/001/data: Signing file /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHrsa668871822/001/data Write signature to /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHrsa668871822/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/TestFromOpenSSHed255194002005654/001/id /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHed255194002005654/001/data: Signing file /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHed255194002005654/001/data Write signature to /home/buildozer/aports/community/gitea/tmp/TestFromOpenSSHed255194002005654/001/data.sig --- PASS: TestFromOpenSSH (0.99s) --- PASS: TestFromOpenSSH/rsa (0.64s) --- PASS: TestFromOpenSSH/ed25519 (0.35s) === RUN TestToOpenSSH === RUN TestToOpenSSH/rsa ssh_key_test.go:366: cmd /usr/bin/ssh-keygen -Y verify -f /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHrsa3106054836/001/allowed_signer -I test@rekor.dev -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHrsa3106054836/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/TestToOpenSSHrsa3106054836/001/allowed_signer -I othertest@rekor.dev -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHrsa3106054836/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/TestToOpenSSHrsa3106054836/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/TestToOpenSSHed255193960082012/001/allowed_signer -I test@rekor.dev -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHed255193960082012/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/TestToOpenSSHed255193960082012/001/allowed_signer -I othertest@rekor.dev -n file -s /home/buildozer/aports/community/gitea/tmp/TestToOpenSSHed255193960082012/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/TestToOpenSSHed255193960082012/001/oursig: Signature verification failed: incorrect signature Could not verify signature. --- PASS: TestToOpenSSH (1.51s) --- PASS: TestToOpenSSH/rsa (0.96s) --- PASS: TestToOpenSSH/ed25519 (0.55s) === RUN TestRoundTrip === RUN TestRoundTrip/rsa === RUN TestRoundTrip/ed25519 --- PASS: TestRoundTrip (0.22s) --- PASS: TestRoundTrip/rsa (0.11s) --- PASS: TestRoundTrip/ed25519 (0.00s) === RUN TestPublicKeysAreExternallyManaged --- PASS: TestPublicKeysAreExternallyManaged (0.00s) === RUN TestCheckPublicKeyStringOversized --- PASS: TestCheckPublicKeyStringOversized (0.00s) PASS ok gitea.dev/models/asymkey 14.070s 2026/09/06 06:40:21 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1051107905/data/attachments 2026/09/06 06:40:21 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1051107905/data/avatars 2026/09/06 06:40:21 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1051107905/data/repo-avatars 2026/09/06 06:40:21 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1051107905/data/repo-archive 2026/09/06 06:40:21 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1051107905/data/packages 2026/09/06 06:40:21 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1051107905/data/actions_log 2026/09/06 06:40:21 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1051107905/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.01s) --- 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.55s) === RUN TestAccessTokenByNameExists --- PASS: TestAccessTokenByNameExists (0.01s) === RUN TestGetAccessTokenBySHA --- PASS: TestGetAccessTokenBySHA (0.01s) === RUN TestListAccessTokens --- PASS: TestListAccessTokens (0.00s) === RUN TestUpdateAccessToken --- PASS: TestUpdateAccessToken (0.02s) === RUN TestDeleteAccessTokenByID --- PASS: TestDeleteAccessTokenByID (0.02s) === 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.20s) === RUN TestGetOAuth2ApplicationByClientID --- PASS: TestGetOAuth2ApplicationByClientID (0.00s) === RUN TestCreateOAuth2Application --- PASS: TestCreateOAuth2Application (0.00s) === RUN TestOAuth2Application_TableName --- PASS: TestOAuth2Application_TableName (0.00s) === RUN TestOAuth2Application_GetGrantByUserID --- PASS: TestOAuth2Application_GetGrantByUserID (0.00s) === RUN TestOAuth2Application_CreateGrant --- PASS: TestOAuth2Application_CreateGrant (0.00s) === RUN TestGetOAuth2GrantByID --- PASS: TestGetOAuth2GrantByID (0.00s) === RUN TestOAuth2Grant_IncreaseCounter --- PASS: TestOAuth2Grant_IncreaseCounter (0.00s) === RUN TestOAuth2Grant_IncreaseCounterRejectsStaleCounter --- PASS: TestOAuth2Grant_IncreaseCounterRejectsStaleCounter (0.00s) === 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.00s) --- 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.00s) === RUN TestTwoFactorValidateAndConsumeTOTP --- PASS: TestTwoFactorValidateAndConsumeTOTP (0.00s) === RUN TestGetWebAuthnCredentialByID --- PASS: TestGetWebAuthnCredentialByID (0.00s) === 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 11.963s 2026/09/06 06:40:21 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1711962257/data/attachments 2026/09/06 06:40:21 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1711962257/data/avatars 2026/09/06 06:40:21 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1711962257/data/repo-avatars 2026/09/06 06:40:21 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1711962257/data/repo-archive 2026/09/06 06:40:21 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1711962257/data/packages 2026/09/06 06:40:21 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1711962257/data/actions_log 2026/09/06 06:40:21 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1711962257/data/actions_artifacts === RUN TestHashEmail --- PASS: TestHashEmail (0.00s) === RUN TestSizedAvatarLink --- PASS: TestSizedAvatarLink (0.00s) PASS ok gitea.dev/models/avatars 12.397s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-397577093/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-397577093/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-397577093/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-397577093/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-397577093/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-397577093/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-397577093/data/actions_artifacts === RUN TestParsePgSQLHostPort === 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 === RUN TestParsePgSQLHostPort/host-port conn_test.go:51: 127.0.0.1:1234 --- PASS: TestParsePgSQLHostPort (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) --- PASS: TestParsePgSQLHostPort/host-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.19s) === RUN TestTxContext --- PASS: TestTxContext (0.00s) === RUN TestContextSafety === RUN TestContextSafety/Show-XORM-Bug === RUN TestContextSafety/DenyBadUsage --- PASS: TestContextSafety (0.00s) --- PASS: TestContextSafety/Show-XORM-Bug (0.00s) --- PASS: TestContextSafety/DenyBadUsage (0.00s) === RUN TestDumpDatabase --- PASS: TestDumpDatabase (0.27s) === RUN TestDeleteOrphanedObjects --- PASS: TestDeleteOrphanedObjects (0.00s) === RUN TestPrimaryKeys --- PASS: TestPrimaryKeys (0.00s) === RUN TestSyncMaxResourceIndex --- PASS: TestSyncMaxResourceIndex (0.00s) === RUN TestGetNextResourceIndex --- PASS: TestGetNextResourceIndex (0.00s) === RUN TestIterate --- PASS: TestIterate (0.01s) === RUN TestFind --- PASS: TestFind (0.00s) PASS ok gitea.dev/models/db 13.988s ? gitea.dev/models/db/install [no test files] 2026/09/06 06:40:16 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:16 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-95728329/data/attachments 2026/09/06 06:40:16 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:16 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-95728329/data/avatars 2026/09/06 06:40:16 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:16 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-95728329/data/repo-avatars 2026/09/06 06:40:16 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:16 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-95728329/data/repo-archive 2026/09/06 06:40:16 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:16 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-95728329/data/packages 2026/09/06 06:40:16 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:16 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-95728329/data/actions_log 2026/09/06 06:40:16 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:16 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-95728329/data/actions_artifacts === RUN TestPaginator --- PASS: TestPaginator (0.00s) PASS ok gitea.dev/models/db/paginator 8.697s 2026/09/06 06:40:17 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:18 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3101115729/data/attachments 2026/09/06 06:40:18 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:18 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3101115729/data/avatars 2026/09/06 06:40:18 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:18 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3101115729/data/repo-avatars 2026/09/06 06:40:18 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:18 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3101115729/data/repo-archive 2026/09/06 06:40:18 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:18 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3101115729/data/packages 2026/09/06 06:40:18 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:18 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3101115729/data/actions_log 2026/09/06 06:40:18 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:18 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3101115729/data/actions_artifacts === RUN TestDbfsBasic === RUN TestDbfsBasic/NonExisting === RUN TestDbfsBasic/Existing --- PASS: TestDbfsBasic (0.02s) --- PASS: TestDbfsBasic/NonExisting (0.00s) --- PASS: TestDbfsBasic/Existing (0.00s) === RUN TestDbfsReadWrite --- PASS: TestDbfsReadWrite (0.00s) === RUN TestDbfsSeekWrite --- PASS: TestDbfsSeekWrite (0.00s) PASS ok gitea.dev/models/dbfs 9.744s 2026/09/06 06:40:20 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-816780990/data/attachments 2026/09/06 06:40:20 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-816780990/data/avatars 2026/09/06 06:40:20 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-816780990/data/repo-avatars 2026/09/06 06:40:20 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-816780990/data/repo-archive 2026/09/06 06:40:20 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-816780990/data/packages 2026/09/06 06:40:20 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-816780990/data/actions_log 2026/09/06 06:40:20 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-816780990/data/actions_artifacts === RUN TestGetLFSLockByIDAndRepo --- PASS: TestGetLFSLockByIDAndRepo (0.34s) === 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.01s) === RUN TestRemoveDeletedBranch --- PASS: TestRemoveDeletedBranch (0.00s) === RUN TestFindRenamedBranch --- PASS: TestFindRenamedBranch (0.00s) === RUN TestRenameBranch --- PASS: TestRenameBranch (0.01s) === RUN TestRenameBranchProtectedRuleConflict --- PASS: TestRenameBranchProtectedRuleConflict (0.01s) === RUN TestOnlyGetDeletedBranchOnCorrectRepo --- PASS: TestOnlyGetDeletedBranchOnCorrectRepo (0.00s) === RUN TestCountBranches --- PASS: TestCountBranches (0.00s) === RUN TestGetCommitStatuses --- PASS: TestGetCommitStatuses (0.03s) === RUN Test_CalcCommitStatus --- PASS: Test_CalcCommitStatus (0.00s) === RUN TestFindRepoRecentCommitStatusContexts --- PASS: TestFindRepoRecentCommitStatusContexts (0.37s) === RUN TestCommitStatusesHideActionsURL --- PASS: TestCommitStatusesHideActionsURL (0.03s) === RUN TestGetCountLatestCommitStatus --- PASS: TestGetCountLatestCommitStatus (0.09s) === 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 11.435s ? gitea.dev/models/gituser [no test files] 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2716998702/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2716998702/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2716998702/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2716998702/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2716998702/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2716998702/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2716998702/data/actions_artifacts === RUN TestUpdateAssignee --- PASS: TestUpdateAssignee (0.16s) === RUN TestMakeIDsFromAPIAssigneesToAdd --- PASS: TestMakeIDsFromAPIAssigneesToAdd (0.01s) === RUN TestCreateComment --- PASS: TestCreateComment (0.01s) === RUN TestLoadAssigneeUserAndTeam_DeletedTeamBecomesGhostTeam --- PASS: TestLoadAssigneeUserAndTeam_DeletedTeamBecomesGhostTeam (0.00s) === RUN Test_UpdateCommentAttachment --- PASS: Test_UpdateCommentAttachment (0.00s) === RUN TestFetchCodeComments --- PASS: TestFetchCodeComments (0.10s) === 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:28.661521 Table user Column name db nullable is false, struct nullable is true --- PASS: TestContentHistory (0.02s) === RUN TestHasIssueContentHistoryForCommentOnly --- PASS: TestHasIssueContentHistoryForCommentOnly (0.01s) === RUN TestCreateIssueDependency --- PASS: TestCreateIssueDependency (0.02s) === RUN TestNewIssueLabelsScope --- PASS: TestNewIssueLabelsScope (0.02s) === RUN TestIssueList_LoadRepositories --- PASS: TestIssueList_LoadRepositories (0.01s) === RUN TestIssueList_LoadIsRead --- PASS: TestIssueList_LoadIsRead (0.00s) === RUN TestIssueList_LoadAttributes --- PASS: TestIssueList_LoadAttributes (0.00s) === RUN TestIssueMultipleProjects === RUN TestIssueMultipleProjects/GeneralTest === RUN TestIssueMultipleProjects/QueryByMultipleProjectIDs --- PASS: TestIssueMultipleProjects (0.03s) --- PASS: TestIssueMultipleProjects/GeneralTest (0.01s) --- PASS: TestIssueMultipleProjects/QueryByMultipleProjectIDs (0.02s) === RUN TestIssue_ReplaceLabels --- PASS: TestIssue_ReplaceLabels (0.03s) === RUN Test_GetIssueIDsByRepoID --- PASS: Test_GetIssueIDsByRepoID (0.00s) === RUN TestIssueAPIURL --- PASS: TestIssueAPIURL (0.01s) === RUN TestGetIssuesByIDs --- PASS: TestGetIssuesByIDs (0.00s) === RUN TestGetParticipantIDsByIssue --- PASS: TestGetParticipantIDsByIssue (0.00s) === RUN TestIssue_ClearLabels --- PASS: TestIssue_ClearLabels (0.03s) === RUN TestUpdateIssueCols --- PASS: TestUpdateIssueCols (0.00s) === RUN TestIssues --- PASS: TestIssues (0.04s) === 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.03s) --- 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.02s) === RUN TestResourceIndex === RUN TestResourceIndex/issue_10 === RUN TestResourceIndex/issue_7 === RUN TestResourceIndex/issue_8 === RUN TestResourceIndex/issue_6 === RUN TestResourceIndex/issue_9 === RUN TestResourceIndex/issue_2 === RUN TestResourceIndex/issue_1 === RUN TestResourceIndex/issue_3 === RUN TestResourceIndex/issue_4 === RUN TestResourceIndex/issue_5 --- PASS: TestResourceIndex (0.16s) --- PASS: TestResourceIndex/issue_7 (0.06s) --- PASS: TestResourceIndex/issue_9 (0.07s) --- PASS: TestResourceIndex/issue_3 (0.08s) --- PASS: TestResourceIndex/issue_5 (0.08s) --- PASS: TestResourceIndex/issue_1 (0.09s) --- PASS: TestResourceIndex/issue_8 (0.10s) --- PASS: TestResourceIndex/issue_2 (0.10s) --- PASS: TestResourceIndex/issue_10 (0.12s) --- PASS: TestResourceIndex/issue_4 (0.12s) --- PASS: TestResourceIndex/issue_6 (0.15s) === 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.16s) --- PASS: TestCorrectIssueStats/Issue_1 (0.00s) --- PASS: TestCorrectIssueStats/Issue_2 (0.00s) --- PASS: TestCorrectIssueStats/Issue_3 (0.00s) --- PASS: TestCorrectIssueStats/Issue_4 (0.00s) --- PASS: TestCorrectIssueStats/Issue_5 (0.00s) --- PASS: TestCorrectIssueStats/Issue_6 (0.00s) --- PASS: TestCorrectIssueStats/Issue_7 (0.00s) --- PASS: TestCorrectIssueStats/Issue_8 (0.00s) --- PASS: TestCorrectIssueStats/Issue_9 (0.00s) --- PASS: TestCorrectIssueStats/Issue_10 (0.00s) --- PASS: TestCorrectIssueStats/Issue_11 (0.00s) --- PASS: TestCorrectIssueStats/Issue_12 (0.00s) --- PASS: TestCorrectIssueStats/Issue_13 (0.00s) --- PASS: TestCorrectIssueStats/Issue_14 (0.00s) --- PASS: TestCorrectIssueStats/Issue_15 (0.00s) --- PASS: TestCorrectIssueStats/Issue_16 (0.00s) --- PASS: TestCorrectIssueStats/Issue_17 (0.00s) --- PASS: TestCorrectIssueStats/Issue_18 (0.01s) --- PASS: TestCorrectIssueStats/Issue_19 (0.01s) --- PASS: TestCorrectIssueStats/Issue_20 (0.01s) --- PASS: TestCorrectIssueStats/Issue_21 (0.00s) --- PASS: TestCorrectIssueStats/Issue_22 (0.00s) --- PASS: TestCorrectIssueStats/Issue_23 (0.00s) --- PASS: TestCorrectIssueStats/Issue_24 (0.00s) --- PASS: TestCorrectIssueStats/Issue_25 (0.00s) --- PASS: TestCorrectIssueStats/Issue_26 (0.00s) --- PASS: TestCorrectIssueStats/Issue_27 (0.00s) --- PASS: TestCorrectIssueStats/Issue_28 (0.00s) --- PASS: TestCorrectIssueStats/Issue_29 (0.00s) --- PASS: TestCorrectIssueStats/Issue_30 (0.00s) --- PASS: TestCorrectIssueStats/Issue_31 (0.00s) --- PASS: TestCorrectIssueStats/Issue_32 (0.00s) --- PASS: TestCorrectIssueStats/Issue_33 (0.00s) --- PASS: TestCorrectIssueStats/Issue_34 (0.00s) --- PASS: TestCorrectIssueStats/Issue_35 (0.00s) === 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.00s) === RUN TestUpdateIssueAttachmentsCrossRepo --- PASS: TestUpdateIssueAttachmentsCrossRepo (0.00s) === RUN Test_NewIssueUsers --- PASS: Test_NewIssueUsers (0.00s) === RUN TestUpdateIssueUserByRead --- PASS: TestUpdateIssueUserByRead (0.00s) === RUN TestUpdateIssueUsersByMentions --- PASS: TestUpdateIssueUsersByMentions (0.00s) === RUN TestCreateOrUpdateIssueWatch --- PASS: TestCreateOrUpdateIssueWatch (0.00s) === RUN TestGetIssueWatch --- PASS: TestGetIssueWatch (0.00s) === RUN TestGetIssueWatchers --- PASS: TestGetIssueWatchers (0.00s) === RUN TestXRef_AddCrossReferences --- PASS: TestXRef_AddCrossReferences (0.05s) === RUN TestXRef_NeuterCrossReferences --- PASS: TestXRef_NeuterCrossReferences (0.02s) === RUN TestXRef_ResolveCrossReferences --- PASS: TestXRef_ResolveCrossReferences (0.04s) === 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.04s) === 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.04s) === RUN TestDeleteLabel --- PASS: TestDeleteLabel (0.07s) === RUN TestHasIssueLabel --- PASS: TestHasIssueLabel (0.00s) === RUN TestNewIssueLabel --- PASS: TestNewIssueLabel (0.01s) === RUN TestNewIssueExclusiveLabel --- PASS: TestNewIssueExclusiveLabel (0.01s) === RUN TestNewIssueLabels --- PASS: TestNewIssueLabels (0.01s) === RUN TestDeleteIssueLabel --- PASS: TestDeleteIssueLabel (0.02s) === RUN TestFixturesAreConsistent --- PASS: TestFixturesAreConsistent (0.01s) === 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.05s) === RUN TestChangeMilestoneStatus --- PASS: TestChangeMilestoneStatus (0.12s) === RUN TestDeleteMilestoneByRepoID --- PASS: TestDeleteMilestoneByRepoID (0.05s) === RUN TestUpdateMilestone --- PASS: TestUpdateMilestone (0.01s) === RUN TestUpdateMilestoneCounters --- PASS: TestUpdateMilestoneCounters (0.00s) === 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.03s) --- PASS: TestPullRequestList/LoadAttributes (0.00s) --- PASS: TestPullRequestList/LoadReviewCommentsCounts (0.00s) --- PASS: TestPullRequestList/LoadReviews (0.00s) --- PASS: TestPullRequestList/CanMaintainerWriteToBranch (0.02s) --- PASS: TestPullRequestList/CanMaintainerWriteToBranch/NoAllowMaintainerEdit (0.00s) --- PASS: TestPullRequestList/CanMaintainerWriteToBranch/WithAllowMaintainerEdit-HeadPosterReader (0.00s) --- 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.36s) --- 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.01s) --- 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.00s) --- PASS: TestPullRequest/CodeOwnerPatternMatchTimeout (0.30s) --- PASS: TestPullRequest/GetApprovers (0.00s) --- PASS: TestPullRequest/GetPullRequestByMergedCommit (0.00s) --- PASS: TestPullRequest/Migrate_InsertPullRequests (0.01s) --- 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.00s) === 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.00s) === RUN TestDismissReview --- PASS: TestDismissReview (0.00s) === RUN TestDeleteReview --- PASS: TestDeleteReview (0.00s) === RUN TestDeleteDismissedReview --- PASS: TestDeleteDismissedReview (0.01s) === RUN TestSubmitReviewClearsStaleReviewRequest --- PASS: TestSubmitReviewClearsStaleReviewRequest (0.01s) === RUN TestAddReviewRequest --- PASS: TestAddReviewRequest (0.01s) === RUN TestRecalculateReviewsOfficial --- PASS: TestRecalculateReviewsOfficial (0.01s) === RUN TestCancelStopwatch --- PASS: TestCancelStopwatch (0.00s) === RUN TestStopwatchExists --- PASS: TestStopwatchExists (0.00s) === RUN TestHasUserStopwatch --- PASS: TestHasUserStopwatch (0.00s) === RUN TestCreateOrStopIssueStopwatch --- PASS: TestCreateOrStopIssueStopwatch (0.01s) === RUN TestAddTime --- PASS: TestAddTime (0.00s) === RUN TestGetTrackedTimes --- PASS: TestGetTrackedTimes (0.00s) === RUN TestTotalTimesForEachUser --- PASS: TestTotalTimesForEachUser (0.00s) === RUN TestGetIssueTotalTrackedTime --- PASS: TestGetIssueTotalTrackedTime (0.00s) PASS ok gitea.dev/models/issues 15.549s 2026/09/06 06:40:20 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-373299403/data/attachments 2026/09/06 06:40:20 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-373299403/data/avatars 2026/09/06 06:40:20 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-373299403/data/repo-avatars 2026/09/06 06:40:20 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-373299403/data/repo-archive 2026/09/06 06:40:20 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-373299403/data/packages 2026/09/06 06:40:20 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-373299403/data/actions_log 2026/09/06 06:40:20 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-373299403/data/actions_artifacts === RUN TestOrgList === RUN TestOrgList/CountOrganizations === RUN TestOrgList/FindOrgs === RUN TestOrgList/GetUserOrgsList === RUN TestOrgList/LoadOrgListTeams === RUN TestOrgList/DoerViewOtherVisibility --- PASS: TestOrgList (0.21s) --- 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 --- PASS: TestUser_IsOwnedBy (0.01s) === RUN TestUser_IsOrgMember --- PASS: TestUser_IsOrgMember (0.01s) === RUN TestUser_GetTeam --- PASS: TestUser_GetTeam (0.01s) === RUN TestUser_GetOwnerTeam --- PASS: TestUser_GetOwnerTeam (0.01s) === RUN TestUser_GetTeams --- PASS: TestUser_GetTeams (0.00s) === RUN TestUser_GetMembers --- PASS: TestUser_GetMembers (0.02s) === RUN TestGetOrgByName --- PASS: TestGetOrgByName (0.00s) === RUN TestIsOrganizationOwner --- PASS: TestIsOrganizationOwner (0.01s) === RUN TestIsOrganizationMember --- PASS: TestIsOrganizationMember (0.00s) === RUN TestIsPublicMembership --- PASS: TestIsPublicMembership (0.00s) === RUN TestRestrictedUserOrgMembers 2026/09/06 06:40:25 .../organization/org_user.go:64:IsOrganizationOwner() [E] Organization does not have owner team: 2 2026/09/06 06:40:25 .../organization/org_user.go:64:IsOrganizationOwner() [E] Organization does not have owner team: 2 2026/09/06 06:40:25 .../organization/org_user.go:64:IsOrganizationOwner() [E] Organization does not have owner team: 9223372036854775807 === 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.05s) --- PASS: TestRestrictedUserOrgMembers/restricted_user_sees_public_members_and_teammates (0.02s) --- 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.01s) --- 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.00s) === RUN TestChangeOrgUserStatus --- PASS: TestChangeOrgUserStatus (0.00s) === RUN TestUser_GetUserTeamIDs --- PASS: TestUser_GetUserTeamIDs (0.00s) === RUN TestAccessibleReposEnv_CountRepos --- PASS: TestAccessibleReposEnv_CountRepos (0.02s) === RUN TestAccessibleReposEnv_RepoIDs --- PASS: TestAccessibleReposEnv_RepoIDs (0.01s) === RUN TestAccessibleReposEnv_MirrorRepos --- PASS: TestAccessibleReposEnv_MirrorRepos (0.02s) === RUN TestHasOrgVisibleTypePublic --- PASS: TestHasOrgVisibleTypePublic (0.01s) === RUN TestHasOrgVisibleTypeLimited --- PASS: TestHasOrgVisibleTypeLimited (0.02s) === RUN TestHasOrgVisibleTypePrivate --- PASS: TestHasOrgVisibleTypePrivate (0.03s) === RUN TestGetUsersWhoCanCreateOrgRepo --- PASS: TestGetUsersWhoCanCreateOrgRepo (0.06s) === RUN TestCanCreateOrgRepoByOwnerTeamWithoutFlag --- PASS: TestCanCreateOrgRepoByOwnerTeamWithoutFlag (0.00s) === RUN TestUser_RemoveOrgRepo --- PASS: TestUser_RemoveOrgRepo (0.39s) === RUN TestCreateOrganization --- PASS: TestCreateOrganization (0.07s) === RUN TestCreateOrganization2 --- PASS: TestCreateOrganization2 (0.06s) === RUN TestCreateOrganization3 --- PASS: TestCreateOrganization3 (0.05s) === RUN TestCreateOrganization4 --- PASS: TestCreateOrganization4 (0.03s) === RUN TestOrAnyRepoUnitPermission --- PASS: TestOrAnyRepoUnitPermission (0.00s) === RUN TestUserIsPublicMember === RUN TestUserIsPublicMember/UserId2IsPublicMemberOf3 === RUN TestUserIsPublicMember/UserId4IsPublicMemberOf3 === RUN TestUserIsPublicMember/UserId5IsPublicMemberOf6 === RUN TestUserIsPublicMember/UserId5IsPublicMemberOf7 --- PASS: TestUserIsPublicMember (0.01s) --- PASS: TestUserIsPublicMember/UserId2IsPublicMemberOf3 (0.01s) --- 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.01s) --- PASS: TestIsUserOrgOwner/UserId2IsOrgOwnerOf3 (0.00s) --- PASS: TestIsUserOrgOwner/UserId4IsOrgOwnerOf3 (0.00s) --- PASS: TestIsUserOrgOwner/UserId5IsOrgOwnerOf6 (0.01s) --- 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.03s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId3 (0.01s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId6 (0.00s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId7 (0.00s) --- PASS: TestUserListIsPublicMember/IsPublicMemberOfOrgId25 (0.01s) --- 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.05s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId3 (0.01s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId6 (0.01s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId7 (0.01s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId25 (0.01s) --- PASS: TestUserListIsUserOrgOwner/IsUserOrgOwnerOfOrgId22 (0.00s) === RUN TestAddOrgUser --- PASS: TestAddOrgUser (0.20s) === 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.00s) === 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.02s) === RUN TestGetTeam --- PASS: TestGetTeam (0.00s) === RUN TestGetTeamByID --- PASS: TestGetTeamByID (0.00s) === RUN TestIsTeamMember --- PASS: TestIsTeamMember (0.00s) === RUN TestGetTeamMembers --- PASS: TestGetTeamMembers (0.01s) === RUN TestGetUserTeams --- PASS: TestGetUserTeams (0.01s) === RUN TestGetUserOrgTeams --- PASS: TestGetUserOrgTeams (0.00s) === 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 12.013s 2026/09/06 06:40:20 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2774098386/data/attachments 2026/09/06 06:40:20 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2774098386/data/avatars 2026/09/06 06:40:20 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2774098386/data/repo-avatars 2026/09/06 06:40:20 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2774098386/data/repo-archive 2026/09/06 06:40:20 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2774098386/data/packages 2026/09/06 06:40:20 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2774098386/data/actions_log 2026/09/06 06:40:20 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2774098386/data/actions_artifacts === RUN TestGetOrInsertBlobConcurrent --- PASS: TestGetOrInsertBlobConcurrent (0.33s) === RUN TestIsBlobAccessibleForRestrictedUser --- PASS: TestIsBlobAccessibleForRestrictedUser (0.01s) === RUN TestHasOwnerPackages --- PASS: TestHasOwnerPackages (0.00s) PASS ok gitea.dev/models/packages 10.435s ? 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.01s) PASS ok gitea.dev/models/perm 1.540s 2026/09/06 06:40:21 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3132017396/data/attachments 2026/09/06 06:40:21 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3132017396/data/avatars 2026/09/06 06:40:21 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3132017396/data/repo-avatars 2026/09/06 06:40:21 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3132017396/data/repo-archive 2026/09/06 06:40:21 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3132017396/data/packages 2026/09/06 06:40:21 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3132017396/data/actions_log 2026/09/06 06:40:21 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3132017396/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.37s) --- PASS: TestGetActionsUserRepoPermission/SameRepo_Public (0.04s) --- PASS: TestGetActionsUserRepoPermission/SameRepo_Private (0.00s) --- PASS: TestGetActionsUserRepoPermission/CrossRepo_Denied_None (0.01s) --- PASS: TestGetActionsUserRepoPermission/ForkPR_NoCrossRepo (0.01s) --- PASS: TestGetActionsUserRepoPermission/CollaborativeOwner_ForkPR_Denied (0.02s) --- PASS: TestGetActionsUserRepoPermission/Inheritance_And_Clamping (0.06s) --- 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.16s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission (0.07s) --- 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.02s) --- PASS: TestGetRepoPermission/GetIndividualUserRepoPermission/DoerWithReadIssueTeamAndWriteCollaboratorOnPrivateRepo (0.03s) --- PASS: TestGetRepoPermission/GetDoerRepoPermission (0.08s) === RUN TestAccess === RUN TestAccess/AccessLevel === RUN TestAccess/HasAccess === RUN TestAccess/RecalculateAccesses === RUN TestAccess/RecalculateAccesses2 === RUN TestAccess/RecalculateAccessesUpdateMode === RUN TestAccess/RecalculateAccessesRemoveAccess --- PASS: TestAccess (0.20s) --- PASS: TestAccess/AccessLevel (0.03s) --- PASS: TestAccess/HasAccess (0.08s) --- PASS: TestAccess/RecalculateAccesses (0.04s) --- PASS: TestAccess/RecalculateAccesses2 (0.00s) --- PASS: TestAccess/RecalculateAccessesUpdateMode (0.02s) --- PASS: TestAccess/RecalculateAccessesRemoveAccess (0.02s) PASS ok gitea.dev/models/perm/access 11.569s 2026/09/06 06:40:20 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2706213211/data/attachments 2026/09/06 06:40:20 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2706213211/data/avatars 2026/09/06 06:40:20 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2706213211/data/repo-avatars 2026/09/06 06:40:20 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2706213211/data/repo-archive 2026/09/06 06:40:20 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2706213211/data/packages 2026/09/06 06:40:20 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2706213211/data/actions_log 2026/09/06 06:40:20 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2706213211/data/actions_artifacts === RUN TestGetDefaultColumn --- PASS: TestGetDefaultColumn (0.07s) === RUN Test_moveIssuesToAnotherColumn --- PASS: Test_moveIssuesToAnotherColumn (0.00s) === RUN Test_MoveColumnsOnProject --- PASS: Test_MoveColumnsOnProject (0.00s) === RUN Test_NewColumn --- PASS: Test_NewColumn (0.01s) === RUN TestIsProjectTypeValid --- PASS: TestIsProjectTypeValid (0.00s) === RUN TestGetProjects --- PASS: TestGetProjects (0.00s) === RUN TestProject --- PASS: TestProject (0.00s) === RUN TestProjectsSort --- PASS: TestProjectsSort (0.01s) PASS ok gitea.dev/models/project 10.758s ? gitea.dev/models/pull [no test files] 2026/09/06 06:40:19 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1489309488/data/attachments 2026/09/06 06:40:19 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1489309488/data/avatars 2026/09/06 06:40:19 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1489309488/data/repo-avatars 2026/09/06 06:40:19 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1489309488/data/repo-archive 2026/09/06 06:40:19 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1489309488/data/packages 2026/09/06 06:40:19 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1489309488/data/actions_log 2026/09/06 06:40:19 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1489309488/data/actions_artifacts === RUN TestRepoComment === RUN TestRepoComment/AutoLink === RUN TestRepoComment/AbsoluteAndRelative === RUN TestRepoComment/WithCurrentRefSubURL === RUN TestRepoComment/NoRepo --- PASS: TestRepoComment (1.18s) --- PASS: TestRepoComment/AutoLink (1.04s) --- 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.22s) --- PASS: TestRepoFile/AutoLink (0.18s) --- 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.23s) --- PASS: TestRepoFileOrgMode/Links (0.09s) --- PASS: TestRepoFileOrgMode/CodeHighlight (0.03s) === RUN TestRepoWiki === RUN TestRepoWiki/AutoLink === RUN TestRepoWiki/AbsoluteAndRelative === RUN TestRepoWiki/PathInTag --- PASS: TestRepoWiki (0.45s) --- PASS: TestRepoWiki/AutoLink (0.21s) --- PASS: TestRepoWiki/AbsoluteAndRelative (0.00s) --- PASS: TestRepoWiki/PathInTag (0.00s) === RUN TestSimpleDocument --- PASS: TestSimpleDocument (0.07s) PASS ok gitea.dev/models/renderhelper 9.629s 2026/09/06 06:40:21 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1644322889/data/attachments 2026/09/06 06:40:21 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1644322889/data/avatars 2026/09/06 06:40:21 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1644322889/data/repo-avatars 2026/09/06 06:40:21 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1644322889/data/repo-archive 2026/09/06 06:40:21 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1644322889/data/packages 2026/09/06 06:40:21 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1644322889/data/actions_log 2026/09/06 06:40:21 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1644322889/data/actions_artifacts === RUN TestArchiveType --- PASS: TestArchiveType (0.00s) === RUN TestRepoAvatarLink --- PASS: TestRepoAvatarLink (0.00s) === RUN TestDefaultTargetBranchSelection --- PASS: TestDefaultTargetBranchSelection (0.21s) === 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.13s) === RUN TestMetas --- PASS: TestMetas (0.02s) === RUN TestGetRepositoryByURL === RUN TestGetRepositoryByURL/InvalidPath === RUN TestGetRepositoryByURL/ValidHttpURL === RUN TestGetRepositoryByURL/ValidGitSshURL === RUN TestGetRepositoryByURL/ValidImplicitSshURL --- PASS: TestGetRepositoryByURL (0.02s) --- 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.00s) === RUN TestGetAttachmentByID --- PASS: TestGetAttachmentByID (0.00s) === 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.03s) === RUN TestRepository_IsCollaborator --- PASS: TestRepository_IsCollaborator (0.01s) === RUN TestRepository_IsOwnerMemberCollaborator --- PASS: TestRepository_IsOwnerMemberCollaborator (0.01s) === RUN TestRepo_GetCollaboration --- PASS: TestRepo_GetCollaboration (0.01s) === RUN TestGetUserFork --- PASS: TestGetUserFork (0.01s) === RUN TestPushMirrorsIterate --- PASS: TestPushMirrorsIterate (0.01s) === RUN TestLookupRedirect --- PASS: TestLookupRedirect (0.00s) === RUN TestNewRedirect --- PASS: TestNewRedirect (0.01s) === RUN TestNewRedirect2 --- PASS: TestNewRedirect2 (0.01s) === 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.68s) --- PASS: TestSearchRepository/SearchRepositoryPublic (0.05s) --- PASS: TestSearchRepository/SearchRepositoryPublicRestricted (0.10s) --- PASS: TestSearchRepository/SearchRepositoryPublicRestricted/RestrictedUser-NoSignInRequirement (0.02s) --- PASS: TestSearchRepository/SearchRepositoryPublicRestricted/NormalUser-RequiredSignIn (0.02s) --- PASS: TestSearchRepository/SearchRepositoryPublicRestricted/RestrictedUser-RequiredSignIn (0.02s) --- PASS: TestSearchRepository/SearchRepositoryPrivate (0.02s) --- PASS: TestSearchRepository/SearchRepositoryNonExistingOwner (0.01s) --- PASS: TestSearchRepository/SearchRepositoryWithInDescription (0.02s) --- PASS: TestSearchRepository/SearchRepositoryNotInDescription (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases (0.46s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesByName (0.03s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesByName (0.04s) --- 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.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser2 (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrg3 (0.00s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUserIncludingCollaborative (0.02s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfUser2IncludingCollaborative (0.02s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfOrg3IncludingCollaborative (0.03s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUserIncludingCollaborative (0.03s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfUser2IncludingCollaborative (0.02s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrg3IncludingCollaborative (0.02s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicRepositoriesOfOrganization (0.02s) --- PASS: TestSearchRepository/SearchRepositoryCases/PublicAndPrivateRepositoriesOfOrganization (0.04s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesByName (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesByName (0.03s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesOfUserIncludingCollaborative (0.03s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborative (0.02s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborativeByName (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicAndPrivateRepositoriesOfUser2IncludingCollaborativeByName (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllPublic/PublicRepositoriesOfOrganization (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/AllTemplates (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/OwnerSlashRepoSearch (0.01s) --- PASS: TestSearchRepository/SearchRepositoryCases/OwnerSlashSearch (0.01s) === 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.09s) --- 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.01s) --- PASS: TestCountRepository/PublicRepositoriesOfUser2IncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicRepositoriesOfOrg3IncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfUserIncludingCollaborative (0.00s) --- PASS: TestCountRepository/PublicAndPrivateRepositoriesOfUser2IncludingCollaborative (0.01s) --- 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.01s) --- PASS: TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborative (0.01s) --- PASS: TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborativeByName (0.01s) --- PASS: TestCountRepository/AllPublic/PublicAndPrivateRepositoriesOfUser2IncludingCollaborativeByName (0.01s) --- 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.03s) --- PASS: TestSearchRepositoryByTopicName/AllPublic/SearchPublicRepositoriesFromTopicAndName (0.01s) --- PASS: TestSearchRepositoryByTopicName/AllPublic/OnlySearchPublicRepositoriesFromTopic (0.01s) --- PASS: TestSearchRepositoryByTopicName/AllPublic/OnlySearchMultipleKeywordPublicRepositoriesFromTopic (0.01s) === RUN TestFindUserActionsAccessibleOwnerRepoIDs --- PASS: TestFindUserActionsAccessibleOwnerRepoIDs (0.01s) === RUN TestUserOrgUnitRepoCondTeamAuthorize --- PASS: TestUserOrgUnitRepoCondTeamAuthorize (0.01s) === RUN TestStarRepo --- PASS: TestStarRepo (0.01s) === 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.01s) === 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.00s) === RUN TestStarredWatchedReposExcludeNonPublicOwners --- PASS: TestStarredWatchedReposExcludeNonPublicOwners (0.01s) === RUN TestIsWatching --- PASS: TestIsWatching (0.00s) === RUN TestGetWatchers --- PASS: TestGetWatchers (0.00s) === 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 13.602s 2026/09/06 06:40:21 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3903334354/data/attachments 2026/09/06 06:40:21 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3903334354/data/avatars 2026/09/06 06:40:21 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3903334354/data/repo-avatars 2026/09/06 06:40:21 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3903334354/data/repo-archive 2026/09/06 06:40:21 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3903334354/data/packages 2026/09/06 06:40:21 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3903334354/data/actions_log 2026/09/06 06:40:21 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3903334354/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.13s) --- PASS: TestGetScopedSecretsForJob/TopLevelJob_ReturnsBaseUnchanged (0.00s) --- PASS: TestGetScopedSecretsForJob/CallerInherit_PassesParentScopeThrough (0.00s) --- PASS: TestGetScopedSecretsForJob/CallerEmptySecrets_ExposesOnlyAutoTokens (0.00s) --- PASS: TestGetScopedSecretsForJob/CallerMapping_OnlyMappedAliasesPlusTokens (0.00s) --- PASS: TestGetScopedSecretsForJob/CallerMapping_CaseInsensitiveSource (0.00s) --- PASS: TestGetScopedSecretsForJob/CallerMapping_UnknownSourceDropsAlias (0.00s) --- PASS: TestGetScopedSecretsForJob/Nested_InheritThenInherit_FullScope (0.00s) --- PASS: TestGetScopedSecretsForJob/Nested_InheritThenMapping_InnerNarrows (0.00s) --- PASS: TestGetScopedSecretsForJob/Nested_MappingThenInherit_OuterNarrows (0.00s) --- PASS: TestGetScopedSecretsForJob/Nested_MappingThenMapping_InnerSourceMustExistInOuterScope (0.00s) PASS ok gitea.dev/models/secret 10.969s ? gitea.dev/models/shared/types [no test files] 2026/09/06 06:40:21 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-81209563/data/attachments 2026/09/06 06:40:21 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-81209563/data/avatars 2026/09/06 06:40:21 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-81209563/data/repo-avatars 2026/09/06 06:40:21 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-81209563/data/repo-archive 2026/09/06 06:40:21 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-81209563/data/packages 2026/09/06 06:40:21 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-81209563/data/actions_log 2026/09/06 06:40:21 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:21 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-81209563/data/actions_artifacts === RUN TestNotice_TrStr --- PASS: TestNotice_TrStr (0.00s) === RUN TestCreateNotice --- PASS: TestCreateNotice (0.21s) === 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 11.620s === RUN TestLoadUnitConfig === RUN TestLoadUnitConfig/regular === RUN TestLoadUnitConfig/invalid 2026/09/06 06:40:16 models/unit/unit.go:164:LoadUnitConfig() [W] Invalid keys in disabled repo units: invalid.1 2026/09/06 06:40:16 models/unit/unit.go:170:LoadUnitConfig() [W] Invalid keys in default repo units: invalid.2 2026/09/06 06:40:16 models/unit/unit.go:179:LoadUnitConfig() [W] Invalid keys in default fork repo units: invalid.3 === RUN TestLoadUnitConfig/duplicate === RUN TestLoadUnitConfig/empty_default --- PASS: TestLoadUnitConfig (0.03s) --- PASS: TestLoadUnitConfig/regular (0.00s) --- PASS: TestLoadUnitConfig/invalid (0.03s) --- PASS: TestLoadUnitConfig/duplicate (0.00s) --- PASS: TestLoadUnitConfig/empty_default (0.00s) PASS ok gitea.dev/models/unit 1.696s === RUN TestFixturesLoader === RUN TestFixturesLoader/Internal === RUN TestFixturesLoader/Vendor fixtures_test.go:89: --- PASS: TestFixturesLoader (3.25s) --- PASS: TestFixturesLoader/Internal (1.61s) --- SKIP: TestFixturesLoader/Vendor (0.01s) PASS ok gitea.dev/models/unittest 6.658s 2026/09/06 06:40:24 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1553184497/data/attachments 2026/09/06 06:40:24 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1553184497/data/avatars 2026/09/06 06:40:24 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1553184497/data/repo-avatars 2026/09/06 06:40:24 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1553184497/data/repo-archive 2026/09/06 06:40:24 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1553184497/data/packages 2026/09/06 06:40:24 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1553184497/data/actions_log 2026/09/06 06:40:24 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:24 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1553184497/data/actions_artifacts === RUN TestUserAvatarLink --- PASS: TestUserAvatarLink (0.00s) === RUN TestUserAvatarGenerate 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /home/buildozer/aports/community/gitea/tmp/TestUserAvatarGenerate3499691771/001 --- PASS: TestUserAvatarGenerate (0.18s) === 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.02s) --- PASS: TestBadge/GetBadgeNotExist (0.00s) --- PASS: TestBadge/CreateBadgeAlreadyExists (0.00s) --- PASS: TestBadge/GetBadgeUsers (0.01s) --- PASS: TestBadge/AddAndRemoveUserBadges (0.00s) --- PASS: TestBadge/SearchBadgesOrderingAndKeyword (0.00s) === 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/132@hotmail.com === RUN TestEmailAddressValidate/first!last@iana.org === RUN TestEmailAddressValidate/first#last@iana.org === RUN TestEmailAddressValidate/%233@qq.com === RUN TestEmailAddressValidate/_233@qq.com === RUN TestEmailAddressValidate/a_123@test.org.cn === 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/1-3-2@test.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/-233@qq.com === RUN TestEmailAddressValidate/Foo_ === 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/|233@qq.com === RUN TestEmailAddressValidate/~233@qq.com === RUN TestEmailAddressValidate/K === 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 === 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//233@qq.com === RUN TestEmailAddressValidate/1.3.2@test.org === RUN TestEmailAddressValidate/;233@qq.com === 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 --- PASS: TestEmailAddressValidate (0.00s) --- PASS: TestEmailAddressValidate/132@hotmail.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/_233@qq.com (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/first/last@iana.org (0.00s) --- PASS: TestEmailAddressValidate/first=last@iana.org (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/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/Foo_ (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/|233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/~233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/K (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) --- 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//233@qq.com (0.00s) --- PASS: TestEmailAddressValidate/1.3.2@test.org (0.00s) --- PASS: TestEmailAddressValidate/;233@qq.com (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) === 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.05s) --- PASS: TestUserEmails/GetUserEmailsByNames (0.01s) --- PASS: TestUserEmails/GetUsersByEmails (0.02s) --- 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.01s) --- 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.02s) --- 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.01s) === RUN TestSearchUsers --- PASS: TestSearchUsers (0.04s) === 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.02s) === RUN TestUnfollowUser --- PASS: TestUnfollowUser (0.02s) === 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 12.965s 2026/09/06 06:40:17 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:17 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1654200229/data/attachments 2026/09/06 06:40:17 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:17 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1654200229/data/avatars 2026/09/06 06:40:17 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:17 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1654200229/data/repo-avatars 2026/09/06 06:40:17 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:17 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1654200229/data/repo-archive 2026/09/06 06:40:17 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:17 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1654200229/data/packages 2026/09/06 06:40:17 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:17 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1654200229/data/actions_log 2026/09/06 06:40:17 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:17 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1654200229/data/actions_artifacts === RUN TestListSystemWebhookOptions --- PASS: TestListSystemWebhookOptions (0.05s) === RUN TestWebHookContentType --- PASS: TestWebHookContentType (0.00s) === RUN TestWebhook_History --- PASS: TestWebhook_History (0.01s) === RUN TestWebhook_UpdateEvent --- PASS: TestWebhook_UpdateEvent (0.10s) === RUN TestWebhook_EventsArray --- PASS: TestWebhook_EventsArray (0.00s) === RUN TestCreateWebhook --- PASS: TestCreateWebhook (0.01s) === RUN TestGetWebhookByRepoID --- PASS: TestGetWebhookByRepoID (0.01s) === RUN TestGetWebhookByOwnerID --- PASS: TestGetWebhookByOwnerID (0.07s) === 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.01s) === RUN TestDeleteWebhookByOwnerID --- PASS: TestDeleteWebhookByOwnerID (0.01s) === RUN TestHookTasks --- PASS: TestHookTasks (0.00s) === RUN TestCreateHookTask --- PASS: TestCreateHookTask (0.01s) === RUN TestUpdateHookTask --- PASS: TestUpdateHookTask (0.00s) === RUN TestCleanupHookTaskTable_PerWebhook_DeletesDelivered --- PASS: TestCleanupHookTaskTable_PerWebhook_DeletesDelivered (0.29s) === RUN TestCleanupHookTaskTable_PerWebhook_LeavesUndelivered --- PASS: TestCleanupHookTaskTable_PerWebhook_LeavesUndelivered (0.01s) === RUN TestCleanupHookTaskTable_PerWebhook_LeavesMostRecentTask --- PASS: TestCleanupHookTaskTable_PerWebhook_LeavesMostRecentTask (0.02s) === 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 9.968s === 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.02s) --- 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.01s) --- 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 6.272s === RUN TestParseResolvesAliases --- PASS: TestParseResolvesAliases (0.04s) === 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.66s) --- PASS: TestParseRejectsAliases/nested_aliases_exceed_the_node_limit (0.57s) --- PASS: TestParseRejectsAliases/anchor_aliased_from_inside_itself (0.08s) --- 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.04s) --- PASS: TestParse/multiple_jobs (0.02s) --- 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.00s) --- 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.13s) --- 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.06s) --- 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.01s) --- 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.01s) --- 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.01s) --- PASS: TestSingleWorkflow_SetJob/erase_needs (0.01s) === RUN TestGetContinueOnError === RUN TestGetContinueOnError/absent === RUN TestGetContinueOnError/static_true === RUN TestGetContinueOnError/static_false === RUN TestGetContinueOnError/matrix_expression --- PASS: TestGetContinueOnError (0.00s) --- 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.01s) --- 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.01s) --- 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.04s) === 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.01s) --- 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 2.440s === RUN TestMatchPattern --- PASS: TestMatchPattern (0.01s) PASS ok gitea.dev/modules/actions/workflowpattern 1.533s === 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.09s) --- PASS: TestIsVendor/cache/ (0.08s) --- 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 2.851s === RUN TestEmbed --- PASS: TestEmbed (0.38s) === RUN TestLayered --- PASS: TestLayered (0.01s) PASS ok gitea.dev/modules/assetfs 1.533s ? gitea.dev/modules/auth [no test files] === RUN TestParseAuthorizationHeader --- PASS: TestParseAuthorizationHeader (0.00s) PASS ok gitea.dev/modules/auth/httpauth 0.662s === RUN TestTimedDiscoveryCache --- PASS: TestTimedDiscoveryCache (0.11s) === RUN TestOpenIDDiscoveryBlocksInternalHost --- PASS: TestOpenIDDiscoveryBlocksInternalHost (0.13s) PASS ok gitea.dev/modules/auth/openid 1.529s ? gitea.dev/modules/auth/pam [no test files] === RUN TestComplexity_IsComplexEnough --- PASS: TestComplexity_IsComplexEnough (0.00s) === RUN TestComplexity_Generate --- PASS: TestComplexity_Generate (0.00s) PASS ok gitea.dev/modules/auth/password 1.077s === 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/pbkdf2$50000$50 === RUN TestParse/pbkdf2$320000$50 === RUN TestParse/argon2$2$65536$8$50 === RUN TestParse/bcrypt$10 === RUN TestParse/scrypt$65536$16$2$50 === RUN TestParse/pbkdf2$10000$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/pbkdf2$50000$50 (0.00s) --- PASS: TestParse/pbkdf2$320000$50 (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) === RUN TestHashing === RUN TestHashing/argon2 === PAUSE TestHashing/argon2 === RUN TestHashing/bcrypt === PAUSE TestHashing/bcrypt === RUN TestHashing/pbkdf2 === PAUSE TestHashing/pbkdf2 === RUN TestHashing/scrypt === PAUSE TestHashing/scrypt === 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/pbkdf2$50000$50 === PAUSE TestHashing/pbkdf2$50000$50 === RUN TestHashing/argon2#01 === PAUSE TestHashing/argon2#01 === 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/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/pbkdf2$50000$50#01 === PAUSE TestHashing/pbkdf2$50000$50#01 === RUN TestHashing/argon2#02 === PAUSE TestHashing/argon2#02 === 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/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 === RUN TestHashing/pbkdf2$50000$50#02 === PAUSE TestHashing/pbkdf2$50000$50#02 === CONT TestHashing/argon2 === CONT TestHashing/argon2$2$65536$8$50#01 === CONT TestHashing/scrypt#02 === CONT TestHashing/pbkdf2$10000$50#01 === CONT TestHashing/scrypt$65536$16$2$50#01 === CONT TestHashing/bcrypt$10#01 === CONT TestHashing/bcrypt#02 === CONT TestHashing/argon2#02 === CONT TestHashing/argon2$2$65536$8$50#02 === CONT TestHashing/scrypt$65536$16$2$50#02 === CONT TestHashing/pbkdf2$10000$50#02 === CONT TestHashing/pbkdf2#02 === CONT TestHashing/bcrypt$10#02 === CONT TestHashing/bcrypt#01 === CONT TestHashing/pbkdf2$320000$50#01 === CONT TestHashing/scrypt$65536$16$2$50 === CONT TestHashing/scrypt === CONT TestHashing/pbkdf2#01 === CONT TestHashing/pbkdf2$50000$50 === CONT TestHashing/argon2#01 === CONT TestHashing/pbkdf2$320000$50#02 === CONT TestHashing/pbkdf2$10000$50 === CONT TestHashing/bcrypt === CONT TestHashing/argon2$2$65536$8$50 === CONT TestHashing/pbkdf2$320000$50 === CONT TestHashing/pbkdf2 === CONT TestHashing/scrypt#01 === CONT TestHashing/bcrypt$10 === CONT TestHashing/pbkdf2$50000$50#01 === CONT TestHashing/pbkdf2$50000$50#02 --- PASS: TestHashing (0.00s) --- PASS: TestHashing/pbkdf2$10000$50#01 (0.05s) --- PASS: TestHashing/bcrypt#02 (0.00s) --- PASS: TestHashing/argon2#02 (0.00s) --- PASS: TestHashing/argon2$2$65536$8$50#02 (0.00s) --- PASS: TestHashing/scrypt$65536$16$2$50#02 (0.00s) --- PASS: TestHashing/pbkdf2$10000$50#02 (0.00s) --- PASS: TestHashing/pbkdf2#02 (0.00s) --- PASS: TestHashing/bcrypt$10#02 (0.00s) --- PASS: TestHashing/scrypt#02 (0.06s) --- PASS: TestHashing/pbkdf2#01 (0.68s) --- PASS: TestHashing/pbkdf2$50000$50 (0.90s) --- PASS: TestHashing/pbkdf2$10000$50 (0.51s) --- PASS: TestHashing/pbkdf2 (0.40s) --- PASS: TestHashing/pbkdf2$50000$50#02 (0.00s) --- PASS: TestHashing/pbkdf2$320000$50#02 (0.00s) --- PASS: TestHashing/bcrypt#01 (1.23s) --- PASS: TestHashing/argon2$2$65536$8$50#01 (1.93s) --- PASS: TestHashing/bcrypt$10 (0.34s) --- PASS: TestHashing/bcrypt (1.03s) --- PASS: TestHashing/pbkdf2$50000$50#01 (0.41s) --- PASS: TestHashing/pbkdf2$320000$50#01 (1.52s) --- PASS: TestHashing/bcrypt$10#01 (2.04s) --- PASS: TestHashing/argon2 (2.29s) --- PASS: TestHashing/argon2$2$65536$8$50 (1.37s) --- PASS: TestHashing/argon2#01 (0.97s) --- PASS: TestHashing/pbkdf2$320000$50 (1.82s) --- PASS: TestHashing/scrypt (3.90s) --- PASS: TestHashing/scrypt#01 (4.14s) --- PASS: TestHashing/scrypt$65536$16$2$50#01 (5.63s) --- PASS: TestHashing/scrypt$65536$16$2$50 (5.90s) === 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/2:_argon2$2$65536$8$50 === CONT TestVectors/7:_pbkdf2$10000$50 === CONT TestVectors/6:_argon2$2$65536$8$50 === CONT TestVectors/7:_pbkdf2 === CONT TestVectors/4:_bcrypt === CONT TestVectors/9:_pbkdf2 === CONT TestVectors/3:_pbkdf2$10000$50 === CONT TestVectors/3:_pbkdf2 === CONT TestVectors/9:_pbkdf2$10000$50 === CONT TestVectors/8:_pbkdf2$320000$50 === CONT TestVectors/1:_scrypt$65536$16$2$50 === CONT TestVectors/6:_argon2 === CONT TestVectors/2:_argon2 === CONT TestVectors/4:_bcrypt$10 === CONT TestVectors/5:_scrypt$65536$16$2$50 === CONT TestVectors/0:_bcrypt$10 === CONT TestVectors/5:_scrypt === CONT TestVectors/1:_scrypt --- PASS: TestVectors (0.00s) --- PASS: TestVectors/9:_pbkdf2 (0.00s) --- PASS: TestVectors/7:_pbkdf2 (0.01s) --- PASS: TestVectors/3:_pbkdf2 (0.01s) --- PASS: TestVectors/3:_pbkdf2$10000$50 (0.03s) --- PASS: TestVectors/7:_pbkdf2$10000$50 (0.04s) --- PASS: TestVectors/9:_pbkdf2$10000$50 (0.08s) --- PASS: TestVectors/2:_argon2$2$65536$8$50 (0.24s) --- PASS: TestVectors/0:_bcrypt (0.31s) --- PASS: TestVectors/4:_bcrypt (0.31s) --- PASS: TestVectors/2:_argon2 (0.28s) --- PASS: TestVectors/6:_argon2 (0.31s) --- PASS: TestVectors/6:_argon2$2$65536$8$50 (0.36s) --- PASS: TestVectors/4:_bcrypt$10 (0.37s) --- PASS: TestVectors/8:_pbkdf2$320000$50 (0.51s) --- PASS: TestVectors/0:_bcrypt$10 (0.44s) --- PASS: TestVectors/1:_scrypt (1.56s) --- PASS: TestVectors/5:_scrypt$65536$16$2$50 (2.04s) --- PASS: TestVectors/1:_scrypt$65536$16$2$50 (3.04s) --- PASS: TestVectors/5:_scrypt (4.54s) === RUN TestCheckSettingPasswordHashAlgorithm === RUN TestCheckSettingPasswordHashAlgorithm/pbkdf2_is_pbkdf2_v2 === 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/argon2=argon2$2$65536$8$50 === RUN TestCheckSettingPasswordHashAlgorithm/bcrypt=bcrypt$10 === 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/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/argon2=argon2$2$65536$8$50 (0.00s) --- PASS: TestCheckSettingPasswordHashAlgorithm/bcrypt=bcrypt$10 (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 12.226s === RUN TestPassword --- PASS: TestPassword (0.00s) PASS ok gitea.dev/modules/auth/password/pwn 0.898s === RUN TestInit --- PASS: TestInit (0.00s) PASS ok gitea.dev/modules/auth/webauthn 3.620s === 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 (1.66s) === RUN Test_HashAvatar --- PASS: Test_HashAvatar (0.00s) PASS ok gitea.dev/modules/avatar 2.442s ? 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.02s) --- 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 1.394s === RUN TestNewContext --- PASS: TestNewContext (0.00s) === RUN TestTest --- PASS: TestTest (0.01s) === 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 2.290s ? 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.01s) === 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.87s) --- PASS: TestEscapeControlReader/ (0.00s) --- PASS: TestEscapeControlReader/single_line_western (0.00s) --- PASS: TestEscapeControlReader/multi_line_western (0.01s) --- 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.85s) --- 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 2.359s ? 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.739s ? 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.753s === RUN TestCreateReader --- PASS: TestCreateReader (0.00s) === RUN TestCreateReaderAndDetermineDelimiter --- PASS: TestCreateReaderAndDetermineDelimiter (0.00s) === RUN TestDetermineDelimiterShortBufferError --- PASS: TestDetermineDelimiterShortBufferError (0.00s) === RUN TestDetermineDelimiter --- PASS: TestDetermineDelimiter (0.01s) === RUN TestRemoveQuotedString --- PASS: TestRemoveQuotedString (0.00s) === RUN TestGuessDelimiter --- PASS: TestGuessDelimiter (0.02s) === RUN TestGuessFromBeforeAfterQuotes --- PASS: TestGuessFromBeforeAfterQuotes (0.00s) === RUN TestFormatError --- PASS: TestFormatError (0.00s) PASS ok gitea.dev/modules/csv 1.311s === RUN TestPrepareFileNameAndType --- PASS: TestPrepareFileNameAndType (0.00s) === RUN TestIsSubDir --- PASS: TestIsSubDir (0.00s) === RUN TestDumperIntegration --- PASS: TestDumperIntegration (0.01s) === 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 1.562s === RUN TestLookup --- PASS: TestLookup (0.63s) === RUN TestReplacers --- PASS: TestReplacers (0.67s) === RUN TestFindEmojiSubmatchIndex --- PASS: TestFindEmojiSubmatchIndex (0.14s) PASS ok gitea.dev/modules/emoji 3.662s === 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 6.756s 2026/09/06 06:40:19 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1045683012/data/attachments 2026/09/06 06:40:19 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1045683012/data/avatars 2026/09/06 06:40:19 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1045683012/data/repo-avatars 2026/09/06 06:40:19 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1045683012/data/repo-archive 2026/09/06 06:40:19 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1045683012/data/packages 2026/09/06 06:40:19 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1045683012/data/actions_log 2026/09/06 06:40:19 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1045683012/data/actions_artifacts === RUN TestFindIconName --- PASS: TestFindIconName (0.07s) === 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 9.245s === RUN TestDecodeJwtSecretBase64 --- PASS: TestDecodeJwtSecretBase64 (0.00s) === RUN TestNewJwtSecretWithBase64 --- PASS: TestNewJwtSecretWithBase64 (0.01s) PASS ok gitea.dev/modules/generate 1.301s === RUN TestBlob_Data --- PASS: TestBlob_Data (0.05s) === RUN TestCatFileBatch === RUN TestCatFileBatch/LegacyCheck === RUN TestCatFileBatch/LegacyCheck/CorruptedGitRepo === RUN TestCatFileBatch/LegacyCheck/QueryTerminated 2026/09/06 06:40:20 .../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:20 .../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:21 .../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:21 .../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 (1.53s) --- PASS: TestCatFileBatch/LegacyCheck (0.99s) --- PASS: TestCatFileBatch/LegacyCheck/CorruptedGitRepo (0.28s) --- PASS: TestCatFileBatch/LegacyCheck/QueryTerminated (0.32s) --- PASS: TestCatFileBatch/LegacyCheck/QueryInfo (0.20s) --- PASS: TestCatFileBatch/LegacyCheck/QueryContent (0.19s) --- PASS: TestCatFileBatch/BatchCommand (0.54s) --- PASS: TestCatFileBatch/BatchCommand/CorruptedGitRepo (0.09s) --- PASS: TestCatFileBatch/BatchCommand/QueryTerminated (0.32s) --- PASS: TestCatFileBatch/BatchCommand/QueryInfo (0.12s) --- PASS: TestCatFileBatch/BatchCommand/QueryContent (0.00s) === RUN TestEntries_GetCommitsInfo_ContextErr --- PASS: TestEntries_GetCommitsInfo_ContextErr (2.64s) === RUN TestEntries_GetCommitsInfo === RUN TestEntries_GetCommitsInfo/NonExistingSubmoduleAsNil --- PASS: TestEntries_GetCommitsInfo (4.50s) --- 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.01s) === 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.01s) === 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.02s) === RUN TestIsStringLikelyCommitID --- PASS: TestIsStringLikelyCommitID (0.00s) === RUN TestConfigSubmodule --- PASS: TestConfigSubmodule (0.00s) === RUN TestGitConfig --- PASS: TestGitConfig (0.06s) === RUN TestSyncGitConfig --- PASS: TestSyncGitConfig (0.09s) === 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.14s) === RUN TestGetNotes --- PASS: TestGetNotes (0.01s) === RUN TestGetNestedNotes --- PASS: TestGetNestedNotes (0.01s) === RUN TestGetNonExistentNotes --- PASS: TestGetNonExistentNotes (0.00s) === 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.01s) === 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.00s) --- PASS: TestRepository_IsObjectExist/empty (0.00s) --- PASS: TestRepository_IsObjectExist/branch (0.00s) --- PASS: TestRepository_IsObjectExist/commit_hash (0.00s) --- PASS: TestRepository_IsObjectExist/short_commit_hash (0.00s) --- PASS: TestRepository_IsObjectExist/blob_hash (0.00s) --- 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.03s) === RUN TestGetTagCommitWithSignature --- PASS: TestGetTagCommitWithSignature (0.01s) === RUN TestGetCommitWithBadCommitID --- PASS: TestGetCommitWithBadCommitID (0.00s) === RUN TestIsCommitInBranch --- PASS: TestIsCommitInBranch (0.01s) === RUN TestRepository_CommitsBetween --- PASS: TestRepository_CommitsBetween (0.01s) === RUN TestGetRefCommitID --- PASS: TestGetRefCommitID (0.01s) === RUN TestCommitsByFileAndRange --- PASS: TestCommitsByFileAndRange (0.03s) === RUN TestGetFormatPatch --- PASS: TestGetFormatPatch (0.02s) === RUN TestReadPatch --- PASS: TestReadPatch (0.00s) === RUN TestReadWritePullHead --- PASS: TestReadWritePullHead (0.03s) === RUN TestGetCommitFilesChanged --- PASS: TestGetCommitFilesChanged (0.01s) === RUN TestRepository_GetRefs --- PASS: TestRepository_GetRefs (0.00s) === RUN TestRepository_GetRefsFiltered --- PASS: TestRepository_GetRefsFiltered (0.00s) === RUN TestRepository_GetCodeActivityStats --- PASS: TestRepository_GetCodeActivityStats (0.01s) === RUN TestRepository_GetTagInfos --- PASS: TestRepository_GetTagInfos (0.00s) === RUN TestRepository_GetTag --- PASS: TestRepository_GetTag (0.05s) === RUN TestRepository_GetAnnotatedTag --- PASS: TestRepository_GetAnnotatedTag (0.04s) === 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.01s) === 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 14.511s === RUN Test_Attribute --- PASS: Test_Attribute (0.00s) === RUN Test_nulSeparatedAttributeWriter_ReadAttribute --- PASS: Test_nulSeparatedAttributeWriter_ReadAttribute (0.25s) === 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 (2.11s) --- PASS: Test_BatchChecker/Create_index_file_to_run_git_check-attr (0.75s) --- PASS: Test_BatchChecker/Run_git_check-attr_on_git_work_tree (1.08s) --- PASS: Test_BatchChecker/Run_git_check-attr_in_bare_repository (0.27s) === 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 (2.20s) --- PASS: Test_Checker/Create_index_file_to_run_git_check-attr (0.73s) --- PASS: Test_Checker/Run_git_check-attr_on_git_work_tree (1.34s) --- PASS: Test_Checker/Run_git_check-attr_in_bare_repository_using_index (0.06s) --- PASS: Test_Checker/Run_git_check-attr_in_bare_repository (0.07s) PASS ok gitea.dev/modules/git/attribute 10.059s === 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.01s) --- 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 1.520s === RUN TestRunWithContextStd 2026/09/06 06:40:18 .../git/gitcmd/command.go:410:(*Command).Start() [E] git command: git, error: broken git command argument "-test" 2026/09/06 06:40:18 .../git/gitcmd/command.go:410:(*Command).Start() [E] git command: git, error: broken git command argument "--test" --- PASS: TestRunWithContextStd (0.94s) === 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.06s) --- PASS: TestRunWithContextTimeout/NoTimeout (0.06s) --- PASS: TestRunWithContextTimeout/WithTimeout (0.01s) === RUN TestIsStderr --- PASS: TestIsStderr (0.00s) PASS ok gitea.dev/modules/git/gitcmd 3.398s ? gitea.dev/modules/git/internal [no test files] === RUN TestRepository_GetLanguageStats --- PASS: TestRepository_GetLanguageStats (1.28s) === RUN TestMergeLanguageStats --- PASS: TestMergeLanguageStats (0.00s) PASS ok gitea.dev/modules/git/languagestats 8.860s === RUN TestFindLFSFile --- PASS: TestFindLFSFile (0.32s) PASS ok gitea.dev/modules/git/pipeline 6.314s === 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.01s) --- 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.03s) --- 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.02s) --- 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.02s) --- 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 2.938s === RUN TestReadingBlameOutputSha256 === RUN TestReadingBlameOutputSha256/Without_.git-blame-ignore-revs === RUN TestReadingBlameOutputSha256/With_.git-blame-ignore-revs --- PASS: TestReadingBlameOutputSha256 (2.51s) --- PASS: TestReadingBlameOutputSha256/Without_.git-blame-ignore-revs (1.06s) --- PASS: TestReadingBlameOutputSha256/With_.git-blame-ignore-revs (1.44s) === RUN TestReadingBlameOutput === RUN TestReadingBlameOutput/Without_.git-blame-ignore-revs === RUN TestReadingBlameOutput/With_.git-blame-ignore-revs --- PASS: TestReadingBlameOutput (1.87s) --- PASS: TestReadingBlameOutput/Without_.git-blame-ignore-revs (0.41s) --- PASS: TestReadingBlameOutput/With_.git-blame-ignore-revs (1.46s) === RUN TestParseCommitFileStatus --- PASS: TestParseCommitFileStatus (0.00s) === RUN TestGetCommitFileStatusMerges --- PASS: TestGetCommitFileStatusMerges (0.06s) === RUN TestGetCommitFileStatusMergesSha256 --- PASS: TestGetCommitFileStatusMergesSha256 (0.12s) === RUN TestCommitsCount --- PASS: TestCommitsCount (0.09s) === 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.45s) --- PASS: TestCommitsCountWithSinceUntil/no_filter (0.15s) --- PASS: TestCommitsCountWithSinceUntil/since_keeps_newer_commits (0.10s) --- PASS: TestCommitsCountWithSinceUntil/until_keeps_older_commits (0.09s) --- PASS: TestCommitsCountWithSinceUntil/since_and_until_bound_the_range (0.11s) === RUN TestCommitsCountWithoutBase --- PASS: TestCommitsCountWithoutBase (0.22s) === RUN TestGetLatestCommitTime --- PASS: TestGetLatestCommitTime (0.07s) === RUN TestMergeBaseNoCommonHistory --- PASS: TestMergeBaseNoCommonHistory (0.32s) === RUN TestRepoGetDivergingCommits --- PASS: TestRepoGetDivergingCommits (0.23s) === RUN TestGetCommitIDsBetweenReverse --- PASS: TestGetCommitIDsBetweenReverse (0.11s) === RUN TestCreateDelegateHooksPermissions --- PASS: TestCreateDelegateHooksPermissions (0.01s) === RUN TestMergeTreeDirectoryRenameConflictWithoutFiles --- PASS: TestMergeTreeDirectoryRenameConflictWithoutFiles (0.04s) PASS ok gitea.dev/modules/gitrepo 13.815s === RUN TestGlob --- PASS: TestGlob (0.04s) === RUN TestQuoteMeta --- PASS: TestQuoteMeta (0.00s) PASS ok gitea.dev/modules/glob 1.732s === RUN TestLockAndDo === RUN TestLockAndDo/redis redis: 2026/09/06 06:40:17 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:17 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:17 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:18 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.93s) --- SKIP: TestLockAndDo/redis (1.92s) --- PASS: TestLockAndDo/memory (0.00s) === RUN TestLocker === RUN TestLocker/redis redis: 2026/09/06 06:40:18 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:19 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:19 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:20 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.85s) --- SKIP: TestLocker/redis (1.74s) --- 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 8.702s ? gitea.dev/modules/graceful [no test files] === RUN TestManager --- PASS: TestManager (0.00s) PASS ok gitea.dev/modules/graceful/releasereopen 2.073s === RUN TestTraceStarter --- PASS: TestTraceStarter (0.00s) PASS ok gitea.dev/modules/gtprof 1.541s === 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 2.132s === 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.08s) --- PASS: TestFile/empty.py (0.03s) --- PASS: TestFile/empty.js (0.00s) --- PASS: TestFile/empty.yaml (0.01s) --- 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.00s) --- PASS: TestFile/empty-line-with-space.py (0.00s) --- PASS: TestFile/test.sql (0.01s) --- PASS: TestFile/test.http (0.01s) === 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 4.068s === RUN TestHostOrIPMatchesList --- PASS: TestHostOrIPMatchesList (0.00s) === RUN TestReservedRanges --- PASS: TestReservedRanges (0.00s) PASS ok gitea.dev/modules/hostmatcher 1.406s === RUN TestHTMLFormat --- PASS: TestHTMLFormat (0.00s) === RUN TestHTMLBuilder --- PASS: TestHTMLBuilder (0.00s) === RUN TestHTMLWriter --- PASS: TestHTMLWriter (0.00s) PASS ok gitea.dev/modules/htmlutil 1.022s === 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.865s === 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.01s) --- 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.01s) --- 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 2.061s ? gitea.dev/modules/indexer [no test files] 2026/09/06 06:40:22 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3512862936/data/attachments 2026/09/06 06:40:22 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3512862936/data/avatars 2026/09/06 06:40:22 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3512862936/data/repo-avatars 2026/09/06 06:40:22 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3512862936/data/repo-archive 2026/09/06 06:40:22 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3512862936/data/packages 2026/09/06 06:40:22 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3512862936/data/actions_log 2026/09/06 06:40:22 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:22 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3512862936/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.72s) --- PASS: TestBleveIndexAndSearch/bleve (0.45s) --- 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.01s) --- 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.01s) --- 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.20s) PASS ok gitea.dev/modules/indexer/code 12.645s === RUN TestBleveIndexerTokenFilter === RUN TestBleveIndexerTokenFilter/12345 === RUN TestBleveIndexerTokenFilter/DNS === RUN TestBleveIndexerTokenFilter/mdns === RUN TestBleveIndexerTokenFilter/port 2026/09/06 06:40:21 .../code/internal/util.go:31:FilenameOfIndexerID() [E] Unexpected ID in repo indexer: 2 2026/09/06 06:40:21 .../code/internal/util.go:31:FilenameOfIndexerID() [E] Unexpected ID in repo indexer: 2 === RUN TestBleveIndexerTokenFilter/port2 2026/09/06 06:40:21 .../code/internal/util.go:31:FilenameOfIndexerID() [E] Unexpected ID in repo indexer: 2 2026/09/06 06:40:21 .../code/internal/util.go:31:FilenameOfIndexerID() [E] Unexpected ID in repo indexer: 2 --- PASS: TestBleveIndexerTokenFilter (0.16s) --- PASS: TestBleveIndexerTokenFilter/12345 (0.01s) --- 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 6.686s === 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 1.469s === RUN TestIndexPos --- PASS: TestIndexPos (0.00s) PASS ok gitea.dev/modules/indexer/code/elasticsearch 3.803s === RUN TestIndexSettingToGitGrepPathspecList --- PASS: TestIndexSettingToGitGrepPathspecList (0.00s) PASS ok gitea.dev/modules/indexer/code/gitgrep 6.018s ? 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 3.902s ? 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.01s) === 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 2.272s ? gitea.dev/modules/indexer/internal/meilisearch [no test files] 2026/09/06 06:40:23 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1449128965/data/attachments 2026/09/06 06:40:23 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1449128965/data/avatars 2026/09/06 06:40:23 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1449128965/data/repo-avatars 2026/09/06 06:40:23 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1449128965/data/repo-archive 2026/09/06 06:40:23 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1449128965/data/packages 2026/09/06 06:40:23 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1449128965/data/actions_log 2026/09/06 06:40:23 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1449128965/data/actions_artifacts === RUN TestDBSearchIssues 2026/09/06 06:40:27 .../indexer/issues/indexer.go:78:InitIssueIndexer.1() [I] PID 1090534: 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.52s) --- PASS: TestDBSearchIssues/search_issues_with_keyword (0.04s) --- PASS: TestDBSearchIssues/search_issues_with_keyword/issue2 (0.01s) --- PASS: TestDBSearchIssues/search_issues_with_keyword/first (0.01s) --- PASS: TestDBSearchIssues/search_issues_with_keyword/for (0.00s) --- PASS: TestDBSearchIssues/search_issues_with_keyword/good (0.02s) --- PASS: TestDBSearchIssues/search_issues_by_index (0.03s) --- PASS: TestDBSearchIssues/search_issues_in_repo (0.01s) --- PASS: TestDBSearchIssues/search_issues_by_ID (0.13s) --- PASS: TestDBSearchIssues/search_issues_is_pr (0.01s) --- PASS: TestDBSearchIssues/search_issues_is_closed (0.00s) --- PASS: TestDBSearchIssues/search_issues_is_archived (0.01s) --- PASS: TestDBSearchIssues/search_issues_by_milestone (0.00s) --- 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.05s) --- PASS: TestDBSearchIssues/search_issues_in_project/no_project_assigned (0.05s) --- PASS: TestDBSearchIssues/search_issues_with_paginator (0.00s) --- PASS: TestDBSearchIssues/search_issues_with_any_assignee (0.00s) PASS ok gitea.dev/modules/indexer/issues 12.550s === 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 (4.86s) --- PASS: TestBleveIndexer/default (0.01s) --- PASS: TestBleveIndexer/empty (0.02s) --- PASS: TestBleveIndexer/with_limit (0.00s) --- PASS: TestBleveIndexer/single-doc_index (0.19s) --- PASS: TestBleveIndexer/Keyword (0.35s) --- PASS: TestBleveIndexer/RepoIDs (0.11s) --- PASS: TestBleveIndexer/RepoIDs_and_AllPublic (0.05s) --- PASS: TestBleveIndexer/issue_only (0.00s) --- PASS: TestBleveIndexer/pull_only (0.00s) --- PASS: TestBleveIndexer/opened_only (0.01s) --- PASS: TestBleveIndexer/closed_only (0.00s) --- PASS: TestBleveIndexer/labels (0.58s) --- PASS: TestBleveIndexer/include_any_labels (0.05s) --- PASS: TestBleveIndexer/MilestoneIDs (0.00s) --- PASS: TestBleveIndexer/no_MilestoneIDs (0.00s) --- PASS: TestBleveIndexer/ProjectIDs (0.00s) --- 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.00s) --- PASS: TestBleveIndexer/ReviewedID (0.00s) --- PASS: TestBleveIndexer/ReviewRequestedID (0.01s) --- PASS: TestBleveIndexer/SubscriberID (0.00s) --- 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.00s) --- 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.06s) --- PASS: TestBleveIndexerTokenFilter/exact_original_case (0.00s) --- 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.01s) --- PASS: TestBleveIndexerTokenFilter/keyword_not_match (0.00s) PASS ok gitea.dev/modules/indexer/issues/bleve 9.407s ? 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.04s) PASS ok gitea.dev/modules/indexer/issues/elasticsearch 2.326s ? 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 2.684s 2026/09/06 06:40:23 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2296540333/data/attachments 2026/09/06 06:40:23 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2296540333/data/avatars 2026/09/06 06:40:23 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2296540333/data/repo-avatars 2026/09/06 06:40:23 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2296540333/data/repo-archive 2026/09/06 06:40:23 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2296540333/data/packages 2026/09/06 06:40:23 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2296540333/data/actions_log 2026/09/06 06:40:23 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2296540333/data/actions_artifacts === RUN TestRepoStatsIndex 2026/09/06 06:40:27 .../indexer/stats/indexer.go:41:populateRepoIndexer() [I] Populating the repo stats indexer with existing repositories 2026/09/06 06:40:27 .../indexer/stats/indexer.go:82:populateRepoIndexer() [E] statsQueue.Push: already in queue 2026/09/06 06:40:27 .../indexer/stats/indexer.go:87:populateRepoIndexer() [I] Done (re)populating the repo stats indexer with existing repositories 2026/09/06 06:40:28 .../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:28 .../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:28 .../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:28 .../catfile_batch_reader.go:62:newCatFileBatch.2() [E] cat-file --batch command failed in repo /tmp/gitea-test/unit-test-dir-2296540333/data/gitea-repositories/user2/repo15.git, error: exit status 128 - fatal: not a git repository (or any parent up to mount point /) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). --- PASS: TestRepoStatsIndex (1.73s) PASS ok gitea.dev/modules/indexer/stats 13.927s === 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.05s) --- PASS: TestValidate/miss_name (0.00s) --- PASS: TestValidate/miss_about (0.00s) --- PASS: TestValidate/miss_body (0.00s) --- PASS: TestValidate/markdown_miss_value (0.01s) --- 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.01s) --- 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.01s) --- 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 4.606s === RUN TestGiteaDBJSONUnmarshal --- PASS: TestGiteaDBJSONUnmarshal (0.00s) === RUN TestIndent --- PASS: TestIndent (0.00s) PASS ok gitea.dev/modules/json 0.657s === RUN TestYamlParser --- PASS: TestYamlParser (0.00s) === RUN TestLegacyParser --- PASS: TestLegacyParser (0.00s) PASS ok gitea.dev/modules/label 0.717s === RUN TestNewClient --- PASS: TestNewClient (0.01s) === RUN TestNewClientFromEndpoint 2026/09/06 06:40:16 modules/lfs/endpoint.go:82:endpointFromURL() [E] lfs.endpointFromUrl: unknown url --- PASS: TestNewClientFromEndpoint (0.00s) === RUN TestDetermineEndpoint --- 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:16 modules/lfs/http_client.go:282:handleErrorResponse() [E] Error decoding json: jsontext: unexpected EOF 2026/09/06 06:40:16 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.03s) --- 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.01s) --- 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:16 modules/lfs/http_client.go:282:handleErrorResponse() [E] Error decoding json: jsontext: unexpected EOF 2026/09/06 06:40:16 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.01s) --- 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 1.436s ? gitea.dev/modules/lfstransfer [no test files] === RUN TestToInternalLFSURL --- PASS: TestToInternalLFSURL (0.06s) === RUN TestIsInternalLFSURL --- PASS: TestIsInternalLFSURL (0.01s) PASS ok gitea.dev/modules/lfstransfer/backend 6.734s === RUN TestItoa --- PASS: TestItoa (0.00s) === RUN TestEventFormatTextMessage --- PASS: TestEventFormatTextMessage (0.00s) === RUN TestConnLogger --- PASS: TestConnLogger (0.02s) === RUN TestFlags --- PASS: TestFlags (0.00s) === RUN TestLevelMarshalUnmarshalJSON --- PASS: TestLevelMarshalUnmarshalJSON (0.00s) === RUN TestLogger --- PASS: TestLogger (0.21s) === RUN TestLoggerPause --- PASS: TestLoggerPause (0.31s) === RUN TestLoggerOutput === RUN TestLoggerOutput/LogString === RUN TestLoggerOutput/Caller --- PASS: TestLoggerOutput (0.05s) --- PASS: TestLoggerOutput/LogString (0.00s) --- PASS: TestLoggerOutput/Caller (0.05s) === RUN TestLoggerExpressionFilter --- PASS: TestLoggerExpressionFilter (0.00s) === RUN TestProtectSensitiveInfo --- PASS: TestProtectSensitiveInfo (0.00s) === RUN TestSharedWorker --- PASS: TestSharedWorker (0.00s) PASS ok gitea.dev/modules/log 1.888s === RUN TestCamoHandleLink --- PASS: TestCamoHandleLink (0.00s) === RUN TestRender_IssueIndexPattern --- PASS: TestRender_IssueIndexPattern (0.00s) === RUN TestRender_IssueIndexPattern2 --- PASS: TestRender_IssueIndexPattern2 (0.17s) === RUN TestRender_IssueIndexPattern3 --- PASS: TestRender_IssueIndexPattern3 (0.01s) === 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.02s) === RUN TestDescriptionSanitizer --- PASS: TestDescriptionSanitizer (0.00s) === RUN TestRenderCodePreview --- PASS: TestRenderCodePreview (0.04s) === 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.02s) --- PASS: TestRender_IssueList/NormalIssueRef (0.01s) --- PASS: TestRender_IssueList/ListIssueRef (0.01s) --- PASS: TestRender_IssueList/ListIssueRefNormal (0.01s) --- PASS: TestRender_IssueList/ListTodoIssueRef (0.00s) --- PASS: TestRender_IssueList/IssueFootnote (0.00s) === RUN TestRender_Commits --- PASS: TestRender_Commits (0.02s) === RUN TestRender_CrossReferences --- PASS: TestRender_CrossReferences (0.00s) === RUN TestRender_links === RUN TestRender_links/LinkEllipsis --- PASS: TestRender_links (0.04s) --- PASS: TestRender_links/LinkEllipsis (0.00s) === RUN TestRender_email --- PASS: TestRender_email (0.02s) === RUN TestRender_emoji --- PASS: TestRender_emoji (2.84s) === 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 6.125s === RUN TestCleanValue --- PASS: TestCleanValue (0.00s) PASS ok gitea.dev/modules/markup/common 0.870s === RUN TestRenderConsole --- PASS: TestRenderConsole (0.21s) PASS ok gitea.dev/modules/markup/console 2.706s === RUN TestRenderCSV --- PASS: TestRenderCSV (0.01s) PASS ok gitea.dev/modules/markup/csv 2.311s === RUN TestPrepareExternalCommand --- PASS: TestPrepareExternalCommand (0.00s) PASS ok gitea.dev/modules/markup/external 2.727s === 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 1.635s === 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.55s) --- PASS: TestRender/Basic_notebook (0.14s) --- PASS: TestRender/Markdown_cell_with_XSS_Protection (0.37s) --- PASS: TestRender/Cell_limit_truncation_guardrail (0.04s) --- 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.01s) PASS ok gitea.dev/modules/markup/jupyter 3.891s === 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.17s) --- PASS: TestMathRender/$a$ (0.15s) --- 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.01s) === 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.01s) === RUN TestRender_StandardLinks --- PASS: TestRender_StandardLinks (0.00s) === RUN TestRender_Images --- PASS: TestRender_Images (0.01s) === RUN TestTotal_RenderString --- PASS: TestTotal_RenderString (0.00s) === RUN TestRender_RenderParagraphs --- PASS: TestRender_RenderParagraphs (0.01s) === RUN TestMarkdownRenderRaw 2026/09/06 06:40:18 .../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:18 .../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:18 .../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.03s) === RUN TestMarkdownFrontmatter === RUN TestMarkdownFrontmatter/MapInFrontmatter === RUN TestMarkdownFrontmatter/ListInFrontmatter === RUN TestMarkdownFrontmatter/StringInFrontmatter === RUN TestMarkdownFrontmatter/ListAfterFrontmatter === RUN TestMarkdownFrontmatter/InvalidFrontmatter --- PASS: TestMarkdownFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/MapInFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/ListInFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/StringInFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/ListAfterFrontmatter (0.00s) --- PASS: TestMarkdownFrontmatter/InvalidFrontmatter (0.00s) === RUN TestRenderLinks === RUN TestRenderLinks/LocalCommitAndCompare --- PASS: TestRenderLinks (0.00s) --- PASS: TestRenderLinks/LocalCommitAndCompare (0.00s) === RUN TestMarkdownLink --- PASS: TestMarkdownLink (0.02s) === RUN TestMarkdownUlDir --- PASS: TestMarkdownUlDir (0.00s) === RUN TestMarkdownCodeBlock --- PASS: TestMarkdownCodeBlock (0.01s) PASS ok gitea.dev/modules/markup/markdown 2.658s ? gitea.dev/modules/markup/markdown/math [no test files] === RUN TestMarkdownStripper --- PASS: TestMarkdownStripper (0.00s) PASS ok gitea.dev/modules/markup/mdstripper 1.281s === RUN TestRender_StandardLinks --- PASS: TestRender_StandardLinks (0.03s) === RUN TestRender_InternalLinks --- PASS: TestRender_InternalLinks (0.00s) === RUN TestRender_Media --- PASS: TestRender_Media (0.01s) === RUN TestRender_Source --- PASS: TestRender_Source (0.11s) === RUN TestRender_IncludeLink --- PASS: TestRender_IncludeLink (0.00s) PASS ok gitea.dev/modules/markup/orgmode 3.354s ? gitea.dev/modules/mcaptcha [no test files] ? gitea.dev/modules/metrics [no test files] === RUN TestMigrationJSON_IssueOK --- PASS: TestMigrationJSON_IssueOK (0.02s) === RUN TestMigrationJSON_IssueFail --- PASS: TestMigrationJSON_IssueFail (0.14s) === RUN TestMigrationJSON_MilestoneOK 2026/09/06 06:40:18 .../migration/file_format.go:86:validate() [E] migration validation with issue.json failed: jsonschema validation failed with 'file:///home/buildozer/aports/community/gitea/src/gitea-src-1.27.3/modules/migration/issue.json#' - at '/0' [S#/items/required]: missing properties 'poster_id', 'poster_name', 'title', 'content', 'state', 'is_locked', 'created', 'updated' --- PASS: TestMigrationJSON_MilestoneOK (0.02s) PASS ok gitea.dev/modules/migration 2.026s === 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 1.158s === 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.00s) --- PASS: TestOptionalFromYaml/empty (0.00s) --- PASS: TestOptionalFromYaml/empty_but_init (0.00s) --- PASS: TestOptionalFromYaml/some (0.00s) PASS ok gitea.dev/modules/optional 1.275s ? 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 1.274s === RUN TestParsePackage === RUN TestParsePackage/MissingPKGINFOFile === RUN TestParsePackage/InvalidPKGINFOFile === RUN TestParsePackage/Valid === RUN TestParsePackage/TooManyDependencyEntries --- PASS: TestParsePackage (0.22s) --- PASS: TestParsePackage/MissingPKGINFOFile (0.04s) --- PASS: TestParsePackage/InvalidPKGINFOFile (0.17s) --- 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 1.858s === 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 (1.04s) --- PASS: TestParsePackage/gz (0.84s) --- PASS: TestParsePackage/gz/MissingPKGINFOFile (0.59s) --- PASS: TestParsePackage/gz/InvalidPKGINFOFile (0.01s) --- PASS: TestParsePackage/gz/Valid (0.24s) --- PASS: TestParsePackage/xz (0.18s) --- PASS: TestParsePackage/xz/MissingPKGINFOFile (0.05s) --- PASS: TestParsePackage/xz/InvalidPKGINFOFile (0.02s) --- PASS: TestParsePackage/xz/Valid (0.10s) --- PASS: TestParsePackage/zst (0.02s) --- PASS: TestParsePackage/zst/MissingPKGINFOFile (0.01s) --- 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 2.391s === RUN TestParsePackage === RUN TestParsePackage/InvalidName === RUN TestParsePackage/InvalidVersion === RUN TestParsePackage/Valid === RUN TestParsePackage/Renamed --- PASS: TestParsePackage (0.01s) --- 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 1.179s === RUN TestParsePackage === RUN TestParsePackage/MissingMetadataFile === RUN TestParsePackage/Valid --- PASS: TestParsePackage (0.20s) --- PASS: TestParsePackage/MissingMetadataFile (0.19s) --- PASS: TestParsePackage/Valid (0.01s) === 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 2.308s === 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.57s) --- PASS: TestParsePackage/MissingComposerFile (0.02s) --- PASS: TestParsePackage/MissingComposerFileInRoot (0.00s) --- PASS: TestParsePackage/InvalidComposerFile (0.00s) --- PASS: TestParsePackage/InvalidPackageName (0.27s) --- PASS: TestParsePackage/InvalidPackageVersion (0.00s) --- PASS: TestParsePackage/InvalidReadmePath (0.00s) --- PASS: TestParsePackage/ValidZip (0.01s) --- PASS: TestParsePackage/ValidTarBz2 (0.22s) --- PASS: TestParsePackage/ValidTarGz (0.05s) PASS ok gitea.dev/modules/packages/composer 1.669s === RUN TestParseConanfile --- PASS: TestParseConanfile (0.00s) === RUN TestParseConaninfo --- PASS: TestParseConaninfo (0.00s) === RUN TestNewRecipeReference --- PASS: TestNewRecipeReference (0.01s) === 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.749s === 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.37s) --- 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.17s) --- PASS: TestParsePackage/.conda (0.19s) PASS ok gitea.dev/modules/packages/conda 2.426s === RUN TestParseImageConfig --- PASS: TestParseImageConfig (0.00s) PASS ok gitea.dev/modules/packages/container 1.369s ? 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.70s) --- PASS: TestParsePackage/.tar.gz (0.69s) --- PASS: TestParsePackage/.tar.gz/MissingDescriptionFile (0.02s) --- PASS: TestParsePackage/.tar.gz/Valid (0.66s) --- 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 1.564s === 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.52s) --- PASS: TestParsePackage/MissingControlFile (0.00s) --- PASS: TestParsePackage/Compression (0.52s) --- PASS: TestParsePackage/Compression/Unsupported (0.00s) --- PASS: TestParsePackage/Compression/#00 (0.01s) --- PASS: TestParsePackage/Compression/#00/TrailingSlash (0.00s) --- PASS: TestParsePackage/Compression/.gz (0.12s) --- PASS: TestParsePackage/Compression/.gz/TrailingSlash (0.00s) --- PASS: TestParsePackage/Compression/.xz (0.36s) --- PASS: TestParsePackage/Compression/.xz/TrailingSlash (0.00s) --- PASS: TestParsePackage/Compression/.zst (0.03s) --- 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 1.678s === RUN TestParsePackage === RUN TestParsePackage/EmptyPackage === RUN TestParsePackage/InvalidNameOrVersionStructure === RUN TestParsePackage/GoModFileInWrongDirectory === RUN TestParsePackage/InvalidVersion === RUN TestParsePackage/Valid --- PASS: TestParsePackage (0.01s) --- PASS: TestParsePackage/EmptyPackage (0.00s) --- PASS: TestParsePackage/InvalidNameOrVersionStructure (0.01s) --- PASS: TestParsePackage/GoModFileInWrongDirectory (0.00s) --- PASS: TestParsePackage/InvalidVersion (0.00s) --- PASS: TestParsePackage/Valid (0.00s) PASS ok gitea.dev/modules/packages/goproxy 1.159s ? 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 1.352s === 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.00s) --- 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 1.228s === 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.21s) --- PASS: TestParsePackageMetaData/MissingNuspecFile (0.03s) --- PASS: TestParsePackageMetaData/MissingNuspecFileInRoot (0.16s) --- PASS: TestParsePackageMetaData/InvalidNuspecFile (0.01s) --- PASS: TestParsePackageMetaData/InvalidPackageId (0.00s) --- PASS: TestParsePackageMetaData/InvalidPackageVersion (0.00s) --- PASS: TestParsePackageMetaData/MissingReadme (0.01s) --- 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 1.323s === RUN TestParsePackage === RUN TestParsePackage/MissingPubspecFile === RUN TestParsePackage/PubspecFileTooLarge === RUN TestParsePackage/InvalidPubspecFile === RUN TestParsePackage/Valid === RUN TestParsePackage/ValidWithReadme --- PASS: TestParsePackage (0.42s) --- PASS: TestParsePackage/MissingPubspecFile (0.02s) --- PASS: TestParsePackage/PubspecFileTooLarge (0.17s) --- PASS: TestParsePackage/InvalidPubspecFile (0.01s) --- PASS: TestParsePackage/Valid (0.18s) --- PASS: TestParsePackage/ValidWithReadme (0.05s) === RUN TestParsePubspecMetadata === RUN TestParsePubspecMetadata/InvalidName === RUN TestParsePubspecMetadata/InvalidVersion === RUN TestParsePubspecMetadata/Valid --- PASS: TestParsePubspecMetadata (0.01s) --- PASS: TestParsePubspecMetadata/InvalidName (0.00s) --- PASS: TestParsePubspecMetadata/InvalidVersion (0.00s) --- PASS: TestParsePubspecMetadata/Valid (0.01s) PASS ok gitea.dev/modules/packages/pub 1.598s ? gitea.dev/modules/packages/pypi [no test files] === RUN TestParsePackage --- PASS: TestParsePackage (0.00s) PASS ok gitea.dev/modules/packages/rpm 1.301s === RUN TestMinimalEncoder --- PASS: TestMinimalEncoder (0.00s) === RUN TestParsePackageMetaData === RUN TestParsePackageMetaData/MissingMetadataFile === RUN TestParsePackageMetaData/Valid === RUN TestParsePackageMetaData/InvalidName --- PASS: TestParsePackageMetaData (0.44s) --- PASS: TestParsePackageMetaData/MissingMetadataFile (0.00s) --- PASS: TestParsePackageMetaData/Valid (0.24s) --- PASS: TestParsePackageMetaData/InvalidName (0.21s) === RUN TestParseMetadataFile --- PASS: TestParseMetadataFile (0.01s) PASS ok gitea.dev/modules/packages/rubygems 1.586s === 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.32s) --- PASS: TestParsePackage/MissingManifestFile (0.03s) --- PASS: TestParsePackage/ManifestFileTooLarge (0.28s) --- 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 1.242s ? gitea.dev/modules/packages/terraform [no test files] === RUN TestParseMetadataFromBox === RUN TestParseMetadataFromBox/MissingInfoFile === RUN TestParseMetadataFromBox/Valid --- PASS: TestParseMetadataFromBox (0.29s) --- PASS: TestParseMetadataFromBox/MissingInfoFile (0.03s) --- PASS: TestParseMetadataFromBox/Valid (0.25s) === 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 1.616s === 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.914s ? 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 4.968s === 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.76s) === RUN TestExecTimeoutAlways --- PASS: TestExecTimeoutAlways (2.20s) PASS ok gitea.dev/modules/process 3.591s ? gitea.dev/modules/proxy [no test files] ? gitea.dev/modules/proxyprotocol [no test files] === RUN TestViteManifest === RUN TestViteManifest/EmptyManifest === RUN TestViteManifest/ParseManifest --- PASS: TestViteManifest (0.03s) --- 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 1.025s === RUN TestBaseChannel === RUN TestBaseChannel/testQueueBasic-baseChannel-unique:false === RUN TestBaseChannel/testQueueBasic-baseChannel-unique:true --- PASS: TestBaseChannel (0.15s) --- PASS: TestBaseChannel/testQueueBasic-baseChannel-unique:false (0.08s) --- PASS: TestBaseChannel/testQueueBasic-baseChannel-unique:true (0.07s) === RUN TestBaseLevelDB === RUN TestBaseLevelDB/testQueueBasic-baseLevelQueue-unique:false === RUN TestBaseLevelDB/testQueueBasic-baseLevelQueueUnique-unique:true --- PASS: TestBaseLevelDB (0.34s) --- PASS: TestBaseLevelDB/testQueueBasic-baseLevelQueue-unique:false (0.26s) --- PASS: TestBaseLevelDB/testQueueBasic-baseLevelQueueUnique-unique:true (0.08s) === RUN TestCorruptedLevelQueue --- PASS: TestCorruptedLevelQueue (0.01s) === RUN TestBaseRedis redis: 2026/09/06 06:40:19 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:20 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:20 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:21 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.75s) === RUN TestBaseDummy --- PASS: TestBaseDummy (0.00s) === RUN TestManager --- PASS: TestManager (0.19s) === RUN TestWorkerPoolQueueUnhandled === RUN TestWorkerPoolQueueUnhandled/1/1 === RUN TestWorkerPoolQueueUnhandled/3/1 === RUN TestWorkerPoolQueueUnhandled/4/5 --- PASS: TestWorkerPoolQueueUnhandled (0.25s) --- PASS: TestWorkerPoolQueueUnhandled/1/1 (0.08s) --- PASS: TestWorkerPoolQueueUnhandled/3/1 (0.08s) --- PASS: TestWorkerPoolQueueUnhandled/4/5 (0.08s) === RUN TestWorkerPoolQueuePersistence === RUN TestWorkerPoolQueuePersistence/1/1 === RUN TestWorkerPoolQueuePersistence/3/1 === RUN TestWorkerPoolQueuePersistence/4/5 --- PASS: TestWorkerPoolQueuePersistence (2.08s) --- PASS: TestWorkerPoolQueuePersistence/1/1 (1.09s) --- PASS: TestWorkerPoolQueuePersistence/3/1 (0.58s) --- PASS: TestWorkerPoolQueuePersistence/4/5 (0.41s) === RUN TestWorkerPoolQueueActiveWorkers --- PASS: TestWorkerPoolQueueActiveWorkers (1.71s) === RUN TestWorkerPoolQueueShutdown 2026/09/06 06:40:25 .../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:25 .../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:25 .../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.50s) === RUN TestWorkerPoolQueueWorkerIdleReset 2026/09/06 06:40:25 .../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.58s) PASS ok gitea.dev/modules/queue 8.802s ? 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.05s) --- 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.42s) === RUN TestParseCloseKeywords 2026/09/06 06:40:19 .../references/references.go:154:parseKeywords() [I] Invalid keyword: 2026/09/06 06:40:19 .../references/references.go:154:parseKeywords() [I] Invalid keyword: 99 2026/09/06 06:40:19 .../references/references.go:154:parseKeywords() [I] Invalid keyword: # 2026/09/06 06:40:19 .../references/references.go:154:parseKeywords() [I] Invalid keyword: 2026/09/06 06:40:19 .../references/references.go:154:parseKeywords() [I] Invalid keyword: this is 2026/09/06 06:40:19 .../references/references.go:154:parseKeywords() [I] Invalid keyword: ,$! --- PASS: TestParseCloseKeywords (0.02s) PASS 2026/09/06 06:40:19 .../references/references.go:154:parseKeywords() [I] Invalid keyword: 1234 ok gitea.dev/modules/references 1.779s === RUN TestRegexpLru --- PASS: TestRegexpLru (0.00s) PASS ok gitea.dev/modules/regexplru 0.859s 2026/09/06 06:40:23 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3256540423/data/attachments 2026/09/06 06:40:23 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3256540423/data/avatars 2026/09/06 06:40:23 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3256540423/data/repo-avatars 2026/09/06 06:40:23 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3256540423/data/repo-archive 2026/09/06 06:40:23 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3256540423/data/packages 2026/09/06 06:40:23 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3256540423/data/actions_log 2026/09/06 06:40:23 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:23 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3256540423/data/actions_artifacts === RUN TestSyncRepoBranches --- PASS: TestSyncRepoBranches (0.93s) === RUN TestPushCommits_ToAPIPayloadCommits --- PASS: TestPushCommits_ToAPIPayloadCommits (0.31s) === 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 10.269s ? gitea.dev/modules/reqctx [no test files] === RUN TestEncryptDecrypt --- PASS: TestEncryptDecrypt (0.00s) PASS ok gitea.dev/modules/secret 0.678s ? gitea.dev/modules/session [no test files] === RUN Test_getStorageInheritNameSectionTypeForActions --- PASS: Test_getStorageInheritNameSectionTypeForActions (0.01s) === 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 === RUN Test_getDefaultActionsURLForActions/custom_urls 2026/09/06 06:40:19 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/invalid 2026/09/06 06:40:19 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" --- 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 --- 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) 2026/09/06 06:40:19 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:19 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 === RUN Test_newIndexerGlobSettings --- PASS: Test_newIndexerGlobSettings (0.00s) === RUN Test_getStorageInheritNameSectionTypeForLFS 2026/09/06 06:40:19 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:19 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.01s) === RUN TestLogConfigDefault --- PASS: TestLogConfigDefault (0.06s) === RUN TestLogConfigDisable --- PASS: TestLogConfigDisable (0.00s) === RUN TestLogConfigLegacyDefault --- PASS: TestLogConfigLegacyDefault (0.12s) === RUN TestLogConfigLegacyMode 2026/09/06 06:40:19 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:19 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 2026/09/06 06:40:19 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:19 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:19 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:19 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: TestLogConfigLegacyModeDisable (0.00s) === RUN TestLogConfigNewConfig --- PASS: TestLogConfigNewConfig (0.00s) === RUN TestLogConfigModeFile --- PASS: TestLogConfigModeFile (0.00s) === RUN Test_loadMailerFrom === RUN Test_loadMailerFrom/smtp.mydomain.test 2026/09/06 06:40:19 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:19 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:19 modules/setting/mailer.go:296:tryResolveAddr() [W] could not look up mailer.SMTP_ADDR: lookup smtp.mydomain.test on 172.16.27.1:53: no such host 2026/09/06 06:40:19 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:19 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:19 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.03s) --- 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 --- 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 2026/09/06 06:40:19 modules/setting/mailer.go:296:tryResolveAddr() [W] could not look up mailer.SMTP_ADDR: lookup smtp.mydomain.test on 172.16.27.1:53: no such host 2026/09/06 06:40:19 modules/setting/mailer.go:234:loadMailerFrom() [E] no mailer.FROM provided, email system may not work. 2026/09/06 06:40:19 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:19 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:19 modules/setting/mailer.go:234:loadMailerFrom() [E] no mailer.FROM provided, email system may not work. --- PASS: TestGetGeneralSigningSecret (0.00s) === RUN TestGetGeneralSigningSecretSave --- PASS: TestGetGeneralSigningSecretSave (0.01s) === 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.03s) === 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:19 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.09s) --- PASS: TestInitWorkPathAndCommonConfig/Default (0.02s) --- PASS: TestInitWorkPathAndCommonConfig/WorkDir(env) (0.00s) --- PASS: TestInitWorkPathAndCommonConfig/WorkDir(env,arg) (0.00s) --- PASS: TestInitWorkPathAndCommonConfig/CustomPath(env) (0.01s) --- PASS: TestInitWorkPathAndCommonConfig/CustomPath(env,arg) (0.01s) --- PASS: TestInitWorkPathAndCommonConfig/CustomConf (0.00s) --- PASS: TestInitWorkPathAndCommonConfig/CustomConfOverrideWorkPath (0.02s) --- PASS: TestInitWorkPathAndCommonConfig/Builtin (0.01s) === 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.00s) --- 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 === 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_ 2026/09/06 06:40:19 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:19 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_=_my_type_ALLOWED_USER_VISIBILITY_MODES_=_limited,private_ === RUN TestLoadServiceVisibilityModes/_[service]_DEFAULT_USER_VISIBILITY_=_public_ALLOWED_USER_VISIBILITY_MODES_=_public,_limit,_privated_ 2026/09/06 06:40:19 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:19 modules/setting/service.go:229:loadServiceFrom() [W] ALLOWED_USER_VISIBILITY_MODES limit is unsupported 2026/09/06 06:40:19 modules/setting/service.go:229:loadServiceFrom() [W] ALLOWED_USER_VISIBILITY_MODES privated is unsupported --- 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.01s) === RUN Test_getStorageMultipleName --- PASS: Test_getStorageMultipleName (0.00s) === RUN Test_getStorageUseOtherNameAsType --- PASS: Test_getStorageUseOtherNameAsType (0.00s) === 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.01s) === 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 1.065s ? 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.93s) --- 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.38s) --- PASS: TestNewSitemap/too_big_file (0.51s) === 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.55s) --- 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.05s) --- PASS: TestNewSitemapIndex/too_big_file (0.49s) PASS ok gitea.dev/modules/sitemap 2.132s === 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 (4.63s) --- PASS: TestGenKeyPair/Generate_gitea.rsa (4.61s) --- PASS: TestGenKeyPair/Generate_gitea.ed25519 (0.01s) --- PASS: TestGenKeyPair/Generate_gitea.ecdsa (0.01s) --- PASS: TestGenKeyPair/Generate_unknown_key_type (0.01s) === RUN TestInitKeys --- PASS: TestInitKeys (9.32s) PASS ok gitea.dev/modules/ssh 16.409s === 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 --- PASS: TestLocalStorageDelete (0.00s) 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /home/buildozer/aports/community/gitea/tmp/TestLocalStorageDelete4156972923/001 === RUN TestLocalStorageIterator 2026/09/06 06:40:19 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /home/buildozer/aports/community/gitea/tmp/TestLocalStorageIterator688888129/001 --- PASS: TestLocalStorageIterator (0.15s) === RUN TestMinioStorage minio_test.go:18: skipping test because minio:9000 is not ready --- SKIP: TestMinioStorage (0.01s) === 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.15s) --- PASS: TestMinioCredentials/Static_Credentials (0.00s) --- PASS: TestMinioCredentials/Chain (0.15s) --- 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.14s) PASS ok gitea.dev/modules/storage 1.845s === RUN TestPullRequestPayloadSynchronizeBeforeAfter --- PASS: TestPullRequestPayloadSynchronizeBeforeAfter (0.01s) === 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.01s) --- PASS: TestIssueTemplateStringSlice_UnmarshalYAML/array (0.01s) --- 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.629s === RUN TestNormalize --- PASS: TestNormalize (0.01s) === RUN TestRenderHTMLCache === RUN TestRenderHTMLCache/CacheWithLimit --- PASS: TestRenderHTMLCache (0.00s) --- PASS: TestRenderHTMLCache/CacheWithLimit (0.00s) PASS ok gitea.dev/modules/svg 0.961s 2026/09/06 06:40:20 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1332220028/data/attachments 2026/09/06 06:40:20 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1332220028/data/avatars 2026/09/06 06:40:20 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1332220028/data/repo-avatars 2026/09/06 06:40:20 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1332220028/data/repo-archive 2026/09/06 06:40:20 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1332220028/data/packages 2026/09/06 06:40:20 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1332220028/data/actions_log 2026/09/06 06:40:20 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:20 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1332220028/data/actions_artifacts === RUN TestAppStateDB --- PASS: TestAppStateDB (0.01s) PASS ok gitea.dev/modules/system 7.809s ? 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.762s === RUN TestSubjectBodySeparator --- PASS: TestSubjectBodySeparator (0.00s) === RUN TestSanitizeHTML --- PASS: TestSanitizeHTML (0.21s) === 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.47s) === RUN TestDateTime --- PASS: TestDateTime (0.00s) === RUN TestTimeSince --- PASS: TestTimeSince (0.00s) === RUN TestCountFmt --- PASS: TestCountFmt (0.00s) === RUN TestRenderTimelineEventComment --- PASS: TestRenderTimelineEventComment (0.23s) === 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 === RUN TestRenderRepoComment/RenderCommitMessage === RUN TestRenderRepoComment/RenderCommitMessageLinkSubject 2026/09/06 06:40:26 .../renderhelper/commit_checker.go:48:(*commitChecker).IsCommitIDExisting() [E] unable to open repository: user13/repo11.git Error: no such file or directory === RUN TestRenderRepoComment/RenderCommitMessageLinkSubjectURLOnly === RUN TestRenderRepoComment/RenderCommitMessageLinkSubjectPartialURL === RUN TestRenderRepoComment/RenderIssueTitle --- PASS: TestRenderRepoComment (0.01s) --- 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 2026/09/06 06:40:26 .../renderhelper/commit_checker.go:48:(*commitChecker).IsCommitIDExisting() [E] unable to open repository: user13/repo11.git Error: no such file or directory --- PASS: TestRenderMarkdownToHtml (0.01s) === 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.12s) === 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 7.967s === RUN TestEval --- PASS: TestEval (0.01s) PASS ok gitea.dev/modules/templates/eval 2.030s === RUN TestScopedTemplateSetFuncMap --- PASS: TestScopedTemplateSetFuncMap (0.53s) === RUN TestScopedTemplateSetEscape --- PASS: TestScopedTemplateSetEscape (0.00s) === RUN TestScopedTemplateSetUnsafe --- PASS: TestScopedTemplateSetUnsafe (0.00s) PASS ok gitea.dev/modules/templates/scopedtmpl 1.339s === 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.611s === RUN TestLogChecker --- PASS: TestLogChecker (0.49s) PASS ok gitea.dev/modules/test 1.064s ? 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 2.286s === RUN TestPrettyNumber --- PASS: TestPrettyNumber (0.00s) PASS ok gitea.dev/modules/translation 1.000s === 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.996s === RUN TestHTTPClientHonorsProxy --- PASS: TestHTTPClientHonorsProxy (0.00s) PASS ok gitea.dev/modules/turnstile 0.930s === 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.741s ? gitea.dev/modules/updatechecker [no test files] === RUN TestReadURI --- PASS: TestReadURI (0.00s) === RUN TestOpenWithClientValidatesRedirectTarget --- PASS: TestOpenWithClientValidatesRedirectTarget (0.01s) PASS ok gitea.dev/modules/uri 1.773s === RUN TestCurrentUsername --- PASS: TestCurrentUsername (0.05s) PASS ok gitea.dev/modules/user 1.112s === 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 (0.56s) === RUN TestSignUsingKeys --- PASS: TestSignUsingKeys (0.78s) === 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.00s) --- 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.00s) === RUN TestOnceValue === RUN TestOnceValue/RepeatCall === RUN TestOnceValue/Panic --- PASS: TestOnceValue (0.00s) --- 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.01s) --- 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.01s) --- 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.21s) === 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.00s) === 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.962s === RUN TestFileBackedBuffer --- PASS: TestFileBackedBuffer (0.01s) PASS ok gitea.dev/modules/util/filebuffer 0.596s === RUN TestCompressOldFile --- PASS: TestCompressOldFile (0.01s) PASS ok gitea.dev/modules/util/rotatingfilewriter 0.497s === 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.01s) --- 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.847s === 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.03s) --- PASS: TestRouter/RootRouter (0.03s) --- 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.01s) === RUN TestPreMiddlewareProvider --- PASS: TestPreMiddlewareProvider (0.00s) PASS ok gitea.dev/modules/web 1.505s === RUN TestParseAcceptLanguage --- PASS: TestParseAcceptLanguage (0.00s) PASS ok gitea.dev/modules/web/middleware 1.546s === 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.848s ? 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.93s) --- PASS: TestWriterReader/regular (0.13s) --- PASS: TestWriterReader/with_options (0.38s) === 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 (1.28s) --- PASS: TestSeekableWriterReader/regular (0.14s) --- PASS: TestSeekableWriterReader/seek_read (0.10s) --- PASS: TestSeekableWriterReader/tidy_data (0.01s) --- PASS: TestSeekableWriterReader/tidy_block (0.72s) --- PASS: TestSeekableWriterReader/compatible_reader (0.22s) --- PASS: TestSeekableWriterReader/wrong_reader (0.03s) PASS ok gitea.dev/modules/zstd 2.961s ? 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.22s) --- PASS: TestService/ping_request (0.19s) PASS ok gitea.dev/routers/api/actions/ping 1.282s === 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 6.058s ? 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 6.645s ? 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 6.596s === RUN TestCreatePackageMetadataResponse --- PASS: TestCreatePackageMetadataResponse (0.00s) PASS ok gitea.dev/routers/api/packages/npm 6.186s ? 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 6.087s ? gitea.dev/routers/api/packages/rpm [no test files] === RUN TestWritePackageVersion --- PASS: TestWritePackageVersion (0.00s) PASS ok gitea.dev/routers/api/packages/rubygems 6.977s ? gitea.dev/routers/api/packages/swift [no test files] === RUN TestValidatePackageName --- PASS: TestValidatePackageName (0.00s) PASS ok gitea.dev/routers/api/packages/terraform 5.982s ? 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.11s) === RUN TestAPI_RenderSimple === RUN TestAPI_RenderSimple/markdown === RUN TestAPI_RenderSimple/markdown-raw --- PASS: TestAPI_RenderSimple (0.00s) --- PASS: TestAPI_RenderSimple/markdown (0.00s) --- PASS: TestAPI_RenderSimple/markdown-raw (0.00s) PASS ok gitea.dev/routers/api/v1/misc 7.130s ? 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:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2457765841/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2457765841/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2457765841/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2457765841/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2457765841/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2457765841/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2457765841/data/actions_artifacts === RUN TestTestHook --- PASS: TestTestHook (0.19s) === RUN TestPushMirrorSync 2026/09/06 06:40:28 .../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:28 .../mirror/mirror_push.go:106:SyncPushMirror() [E] SyncPushMirror [mirror: 1][repo: ]: Unexpected error 2026/09/06 06:40:28 .../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:28 .../mirror/mirror_push.go:106:SyncPushMirror() [E] SyncPushMirror [mirror: 2][repo: ]: Unexpected error --- PASS: TestPushMirrorSync (0.04s) === RUN TestRepoEdit 2026/09/06 06:40:28 .../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:28 .../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:28 .../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:28 .../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:28 .../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.05s) === RUN TestRepoEditNameChange --- PASS: TestRepoEditNameChange (0.05s) PASS ok gitea.dev/routers/api/v1/repo 9.396s ? 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:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-771259181/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-771259181/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-771259181/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-771259181/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-771259181/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-771259181/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-771259181/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.30s) --- PASS: TestTestHookValidation/Test_Validation (0.01s) --- 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 9.198s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2937477902/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2937477902/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2937477902/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2937477902/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2937477902/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2937477902/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2937477902/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:27 routers/common/errpage.go:56:renderPanicErrorPage() [E] PANIC: fake panic error (for test only) /usr/lib/go/src/testing/testing.go:2193 (0x550fc3) tRunner: fn(t) /usr/lib/go/src/runtime/asm_arm64.s:1039 (0x494b33) goexit: MOVD R0, R0 // NOP === RUN TestRenderPanicErrorPage/Plain --- PASS: TestRenderPanicErrorPage (0.31s) --- PASS: TestRenderPanicErrorPage/HTML (0.31s) --- 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.10s) --- 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 8.608s 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1701977622/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1701977622/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1701977622/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1701977622/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1701977622/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1701977622/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1701977622/data/actions_artifacts === RUN TestRoutes --- PASS: TestRoutes (0.20s) PASS ok gitea.dev/routers/install 9.118s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3221469105/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3221469105/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3221469105/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3221469105/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3221469105/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3221469105/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3221469105/data/actions_artifacts === RUN TestHandlePullRequestMerging --- PASS: TestHandlePullRequestMerging (0.09s) === RUN TestPreReceiveCanWriteCodePerBranch --- PASS: TestPreReceiveCanWriteCodePerBranch (0.02s) === RUN TestVerifyCommits 2026/09/06 06:40:28 .../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.10s) PASS 2026/09/06 06:40:28 .../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 Unverified commit: 9ce3f779ae33f31fce17fac3c512047b75d7498b Unverified commit: 9ce3f779ae33f31fce17fac3c512047b75d7498b context canceled ok gitea.dev/routers/private 9.055s === 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 1.111s ? gitea.dev/routers/web [no test files] 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1960259176/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1960259176/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1960259176/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1960259176/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1960259176/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1960259176/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1960259176/data/actions_artifacts === RUN TestSelfCheckPost --- PASS: TestSelfCheckPost (0.00s) === RUN TestNewUserPost_MustChangePassword --- PASS: TestNewUserPost_MustChangePassword (0.15s) === RUN TestNewUserPost_MustChangePasswordFalse --- PASS: TestNewUserPost_MustChangePasswordFalse (0.05s) === RUN TestNewUserPost_InvalidEmail --- PASS: TestNewUserPost_InvalidEmail (0.10s) === RUN TestNewUserPost_VisibilityDefaultPublic --- PASS: TestNewUserPost_VisibilityDefaultPublic (0.08s) === RUN TestNewUserPost_VisibilityPrivate --- PASS: TestNewUserPost_VisibilityPrivate (0.11s) PASS ok gitea.dev/routers/web/admin 9.392s 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1481317699/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1481317699/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1481317699/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1481317699/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1481317699/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1481317699/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1481317699/data/actions_artifacts === RUN TestWebAuthUserLogin --- PASS: TestWebAuthUserLogin (0.00s) === RUN TestWebAuthOAuth2 === RUN TestWebAuthOAuth2/OAuth2MissingField 2026/09/06 06:40:28 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:28 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.16s) === RUN TestNewAccessTokenResponse_OIDCToken --- PASS: TestNewAccessTokenResponse_OIDCToken (0.01s) === 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 9.039s ? 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:25 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2076063116/data/attachments 2026/09/06 06:40:25 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2076063116/data/avatars 2026/09/06 06:40:25 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2076063116/data/repo-avatars 2026/09/06 06:40:25 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2076063116/data/repo-archive 2026/09/06 06:40:25 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2076063116/data/packages 2026/09/06 06:40:25 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2076063116/data/actions_log 2026/09/06 06:40:25 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:25 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2076063116/data/actions_artifacts === RUN TestCheckGetOrgFeedsAsOrgMember === RUN TestCheckGetOrgFeedsAsOrgMember/OrgMember === RUN TestCheckGetOrgFeedsAsOrgMember/NonOrgMember --- PASS: TestCheckGetOrgFeedsAsOrgMember (0.38s) --- PASS: TestCheckGetOrgFeedsAsOrgMember/OrgMember (0.07s) --- PASS: TestCheckGetOrgFeedsAsOrgMember/NonOrgMember (0.03s) PASS ok gitea.dev/routers/web/feed 8.552s ? gitea.dev/routers/web/healthcheck [no test files] ? gitea.dev/routers/web/misc [no test files] 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3936716780/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3936716780/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3936716780/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3936716780/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3936716780/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3936716780/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3936716780/data/actions_artifacts === RUN TestCheckProjectColumnChangePermissions --- PASS: TestCheckProjectColumnChangePermissions (0.15s) === RUN TestChangeProjectStatusRejectsForeignProjects --- PASS: TestChangeProjectStatusRejectsForeignProjects (0.03s) === RUN TestAddColumnToProjectPostRejectsForeignProjects --- PASS: TestAddColumnToProjectPostRejectsForeignProjects (0.05s) PASS ok gitea.dev/routers/web/org 9.081s 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-123077711/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-123077711/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-123077711/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-123077711/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-123077711/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-123077711/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-123077711/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.11s) --- PASS: TestEditorUtils/getUniquePatchBranchName (0.00s) --- PASS: TestEditorUtils/getClosestParentWithFiles (0.00s) === 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.51s) --- PASS: TestIssueLabel/RetrieveLabels (0.01s) --- PASS: TestIssueLabel/NewLabel (0.00s) --- PASS: TestIssueLabel/NewLabelInvalidColor (0.00s) --- PASS: TestIssueLabel/UpdateLabel (0.00s) --- PASS: TestIssueLabel/UpdateLabelInvalidColor (0.00s) --- PASS: TestIssueLabel/UpdateIssueLabelClear (0.04s) --- PASS: TestIssueLabel/UpdateIssueLabelToggle (0.40s) --- PASS: TestIssueLabel/InitializeLabels (0.00s) --- 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.04s) --- PASS: TestDiffViewStyle/AnonymousUser (0.00s) --- PASS: TestDiffViewStyle/SignedInUser (0.00s) === RUN TestCheckProjectColumnChangePermissions --- PASS: TestCheckProjectColumnChangePermissions (0.04s) === 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:29 services/gitdiff/gitdiff.go:1631:CommentMustAsDiff() [W] CommentMustAsDiff: no sections found for comment ID: 18 === RUN TestRenderConversation/timeline_is_not_affected_by_ShowOutdatedComments=false === RUN TestRenderConversation/diff_non-existing_review 2026/09/06 06:40:29 services/gitdiff/gitdiff.go:1631:CommentMustAsDiff() [W] CommentMustAsDiff: no sections found for comment ID: 18 === RUN TestRenderConversation/timeline_non-existing_review --- PASS: TestRenderConversation (0.22s) --- PASS: TestRenderConversation/prepare (0.14s) --- 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 2026/09/06 06:40:29 services/gitdiff/gitdiff.go:1631:CommentMustAsDiff() [W] CommentMustAsDiff: no sections found for comment ID: 18 === 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.12s) --- PASS: TestNewReleasePost/NewReleasePage (0.01s) --- PASS: TestNewReleasePost/NewTagRelease (0.03s) --- PASS: TestNewReleasePost/ReleaseExistsDoUpdate(non-tag) (0.00s) --- PASS: TestNewReleasePost/ReleaseExistsDoUpdate(tag-only) (0.00s) --- PASS: TestNewReleasePost/ReleaseExistsDoUpdate(tag-release) (0.02s) --- PASS: TestNewReleasePost/TagOnly (0.02s) --- PASS: TestNewReleasePost/TagOnlyConflict (0.00s) === RUN TestCalReleaseNumCommitsBehind --- PASS: TestCalReleaseNumCommitsBehind (0.04s) === RUN TestTransformDiffTreeForWeb --- PASS: TestTransformDiffTreeForWeb (0.01s) === RUN TestViewHomeSubmoduleRedirect --- PASS: TestViewHomeSubmoduleRedirect (0.05s) === RUN TestFindReadmeFileInEntriesWithSymlinkInSubfolder === RUN TestFindReadmeFileInEntriesWithSymlinkInSubfolder/.github === RUN TestFindReadmeFileInEntriesWithSymlinkInSubfolder/.gitea === RUN TestFindReadmeFileInEntriesWithSymlinkInSubfolder/docs --- PASS: TestFindReadmeFileInEntriesWithSymlinkInSubfolder (0.05s) --- PASS: TestFindReadmeFileInEntriesWithSymlinkInSubfolder/.github (0.02s) --- PASS: TestFindReadmeFileInEntriesWithSymlinkInSubfolder/.gitea (0.02s) --- PASS: TestFindReadmeFileInEntriesWithSymlinkInSubfolder/docs (0.02s) === 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.05s) === RUN TestWikiPages --- PASS: TestWikiPages (0.05s) === RUN TestNewWiki --- PASS: TestNewWiki (0.05s) === RUN TestNewWikiPost --- PASS: TestNewWikiPost (0.22s) === RUN TestNewWikiPost_ReservedName --- PASS: TestNewWikiPost_ReservedName (0.04s) === RUN TestEditWiki --- PASS: TestEditWiki (0.04s) === RUN TestEditWikiPost --- PASS: TestEditWikiPost (0.22s) === RUN TestDeleteWikiPagePost --- PASS: TestDeleteWikiPagePost (0.09s) === RUN TestWikiRaw --- PASS: TestWikiRaw (0.23s) === RUN TestDefaultWikiBranch --- PASS: TestDefaultWikiBranch (0.05s) PASS ok gitea.dev/routers/web/repo 10.955s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3001734994/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3001734994/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3001734994/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3001734994/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3001734994/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3001734994/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3001734994/data/actions_artifacts === RUN TestReadWorkflow_WorkflowDispatchConfig --- PASS: TestReadWorkflow_WorkflowDispatchConfig (0.00s) === RUN Test_loadIsRefDeleted --- PASS: Test_loadIsRefDeleted (0.19s) === 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 8.710s 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3354585940/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3354585940/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3354585940/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3354585940/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3354585940/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3354585940/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3354585940/data/actions_artifacts === RUN TestAddReadOnlyDeployKey --- PASS: TestAddReadOnlyDeployKey (0.19s) === RUN TestAddReadWriteOnlyDeployKey --- PASS: TestAddReadWriteOnlyDeployKey (0.04s) === RUN TestCollaborationPost --- PASS: TestCollaborationPost (0.04s) === RUN TestCollaborationPost_InactiveUser --- PASS: TestCollaborationPost_InactiveUser (0.05s) === RUN TestCollaborationPost_AddCollaboratorTwice --- PASS: TestCollaborationPost_AddCollaboratorTwice (0.03s) === RUN TestCollaborationPost_NonExistentUser --- PASS: TestCollaborationPost_NonExistentUser (0.03s) === RUN TestAddTeamPost --- PASS: TestAddTeamPost (0.03s) === RUN TestAddTeamPost_NotAllowed --- PASS: TestAddTeamPost_NotAllowed (0.04s) === RUN TestAddTeamPost_AddTeamTwice --- PASS: TestAddTeamPost_AddTeamTwice (0.03s) === RUN TestAddTeamPost_NonExistentTeam --- PASS: TestAddTeamPost_NonExistentTeam (0.03s) === RUN TestDeleteTeam --- PASS: TestDeleteTeam (0.03s) === RUN TestHandleSettingsPostMirrorPreservesExistingUsername --- PASS: TestHandleSettingsPostMirrorPreservesExistingUsername (0.08s) === RUN TestWebhookMatrix --- PASS: TestWebhookMatrix (0.00s) PASS ok gitea.dev/routers/web/repo/setting 9.045s === 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.13s) --- 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.12s) --- PASS: TestDeriveScopedStatusContexts/a_workflow_dispatch-only_workflow_has_no_expected_contexts (0.01s) PASS ok gitea.dev/routers/web/shared/actions 6.894s ? 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 5.330s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1561358107/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1561358107/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1561358107/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1561358107/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1561358107/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1561358107/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1561358107/data/actions_artifacts === RUN TestArchivedIssues --- PASS: TestArchivedIssues (0.08s) === RUN TestIssues --- PASS: TestIssues (0.02s) === RUN TestPulls 2026/09/06 06:40:28 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.01s) === RUN TestMilestonesForSpecificRepo --- PASS: TestMilestonesForSpecificRepo (0.01s) === RUN TestDashboardPagination --- PASS: TestDashboardPagination (0.13s) === RUN TestFilterNotificationsByRepoAccess --- PASS: TestFilterNotificationsByRepoAccess (0.00s) PASS ok gitea.dev/routers/web/user 8.410s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1846133263/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1846133263/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1846133263/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1846133263/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1846133263/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1846133263/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1846133263/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.39s) --- PASS: TestChangePassword/password__Qwerty123456- (0.18s) --- PASS: TestChangePassword/password__12345 (0.04s) --- PASS: TestChangePassword/12334__123456 (0.04s) --- PASS: TestChangePassword/password__123456 (0.03s) --- PASS: TestChangePassword/password__Qwerty (0.03s) --- PASS: TestChangePassword/password__Qwerty#01 (0.04s) --- PASS: TestChangePassword/password__QWERTY (0.03s) PASS ok gitea.dev/routers/web/user/setting 8.361s 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1311523480/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1311523480/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1311523480/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1311523480/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1311523480/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1311523480/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1311523480/data/actions_artifacts === RUN TestDeleteOpenIDReturnsNotFoundForOtherUsersAddress --- PASS: TestDeleteOpenIDReturnsNotFoundForOtherUsersAddress (0.26s) === RUN TestToggleOpenIDVisibilityReturnsNotFoundForOtherUsersAddress --- PASS: TestToggleOpenIDVisibilityReturnsNotFoundForOtherUsersAddress (0.07s) PASS ok gitea.dev/routers/web/user/setting/security 8.440s 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2719120311/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2719120311/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2719120311/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2719120311/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2719120311/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2719120311/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2719120311/data/actions_artifacts === RUN TestApproveRuns === RUN TestApproveRuns/approve_blocked_run 2026/09/06 06:40:28 .../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.08s) --- PASS: TestApproveRuns/approve_blocked_run (0.01s) --- PASS: TestApproveRuns/re-approving_an_approved_run_is_a_no-op (0.00s) === 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.01s) === RUN TestShouldBlockRunByConcurrency_CancellingJobBlocks --- PASS: TestShouldBlockRunByConcurrency_CancellingJobBlocks (0.00s) === RUN TestStopEndlessTasksSkipsCancelling 2026/09/06 06:40:28 .../actions/run_attempt.go:185:UpdateRunAttempt() [W] run 0 cannot be updated by an old attempt 3 2026/09/06 06:40:28 .../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:28 .../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:28 .../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:28 .../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:28 .../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:28 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF 2026/09/06 06:40:28 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF 2026/09/06 06:40:28 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF 2026/09/06 06:40:28 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: GetPushEventPayload: jsontext: unexpected EOF --- PASS: TestStopEndlessTasksSkipsCancelling (0.09s) === RUN TestCommitStatusDescription --- PASS: TestCommitStatusDescription (0.00s) === RUN TestCreateCommitStatus_Dedupe --- PASS: TestCreateCommitStatus_Dedupe (0.04s) === RUN TestGetCommitActionsStatusMap --- PASS: TestGetCommitActionsStatusMap (0.03s) === RUN TestCreateCommitStatus_DistinctWorkflowFilesSameName --- PASS: TestCreateCommitStatus_DistinctWorkflowFilesSameName (0.03s) === RUN TestCreateCommitStatus_LegacyHashRecovery --- PASS: TestCreateCommitStatus_LegacyHashRecovery (0.02s) === RUN TestCreateCommitStatus_LegacyHashExternalNotAdopted --- PASS: TestCreateCommitStatus_LegacyHashExternalNotAdopted (0.01s) === RUN TestCreateCommitStatus_UnnamedWorkflowUsesFileName --- PASS: TestCreateCommitStatus_UnnamedWorkflowUsesFileName (0.02s) === RUN TestCreateCommitStatus_ScopedSourcePrefix --- PASS: TestCreateCommitStatus_ScopedSourcePrefix (0.02s) === RUN TestEvaluateRunConcurrency_RunIDFallback --- PASS: TestEvaluateRunConcurrency_RunIDFallback (0.00s) === RUN TestPrepareRunAndInsert_ExpressionsSeeRunID 2026/09/06 06:40:29 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: head commit is missing in event payload 2026/09/06 06:40:29 .../actions/commit_status.go:39:CreateCommitStatusForRunJobs() [E] GetCommitStatusEventNameAndSHA: head commit is missing in event payload --- PASS: TestPrepareRunAndInsert_ExpressionsSeeRunID (0.01s) === 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.03s) --- 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.00s) --- 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.00s) === RUN TestFindTaskNeeds --- PASS: TestFindTaskNeeds (0.00s) === RUN TestGenerateGiteaContextPullRequestTarget --- PASS: TestGenerateGiteaContextPullRequestTarget (0.00s) === RUN TestGenerateGiteaContext_NilAttempt --- PASS: TestGenerateGiteaContext_NilAttempt (0.00s) === 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:29 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.00s) --- 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.01s) --- 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.00s) === RUN Test_checkJobsOfCurrentRunAttempt_RunLevelConcurrencyKeepsJobsBlocked --- PASS: Test_checkJobsOfCurrentRunAttempt_RunLevelConcurrencyKeepsJobsBlocked (0.00s) === RUN Test_checkJobsOfCurrentRunAttempt_NeedApprovalKeepsJobsBlocked --- PASS: Test_checkJobsOfCurrentRunAttempt_NeedApprovalKeepsJobsBlocked (0.00s) === RUN Test_checkRunConcurrency_HeldGroupDoesNotWake --- PASS: Test_checkRunConcurrency_HeldGroupDoesNotWake (0.00s) === RUN Test_findConcurrencyWaiterToWake --- PASS: Test_findConcurrencyWaiterToWake (0.01s) === 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.01s) --- PASS: TestCheckCallerChain_Cycle/DirectCycle (0.00s) --- PASS: TestCheckCallerChain_Cycle/IndirectCycle (0.00s) --- PASS: TestCheckCallerChain_Cycle/NoCycle (0.00s) === RUN TestCheckCallerChain_DepthLimit === RUN TestCheckCallerChain_DepthLimit/ExactlyAtLimit === RUN TestCheckCallerChain_DepthLimit/OneOverLimit --- PASS: TestCheckCallerChain_DepthLimit (0.02s) --- PASS: TestCheckCallerChain_DepthLimit/ExactlyAtLimit (0.01s) --- PASS: TestCheckCallerChain_DepthLimit/OneOverLimit (0.01s) === 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.00s) === 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:29 .../actions/schedule_tasks.go:166:withScheduleInEventPayload() [E] withScheduleInEventPayload: unmarshal: jsontext: invalid character 'o' in literal null (expecting 'u') after offset 1 --- PASS: TestReleaseTaskForRunnerCleanup (0.02s) === RUN TestCoerceDispatchInputTypes --- PASS: TestCoerceDispatchInputTypes (0.00s) PASS ok gitea.dev/services/actions 8.525s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2600975421/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2600975421/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2600975421/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2600975421/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2600975421/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2600975421/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2600975421/data/actions_artifacts === RUN TestParseAgitPushOptionValue --- PASS: TestParseAgitPushOptionValue (0.00s) === RUN TestGetAgitBranchInfo --- PASS: TestGetAgitBranchInfo (0.23s) PASS ok gitea.dev/services/agit 8.274s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3756392702/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3756392702/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3756392702/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3756392702/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3756392702/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3756392702/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3756392702/data/actions_artifacts === RUN TestParseCommitWithSSHSignature === RUN TestParseCommitWithSSHSignature/UserSSHKey === RUN TestParseCommitWithSSHSignature/TrustedSSHKey --- PASS: TestParseCommitWithSSHSignature (0.14s) --- 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.03s) PASS ok gitea.dev/services/asymkey 7.393s 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3610487475/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3610487475/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3610487475/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3610487475/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3610487475/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3610487475/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3610487475/data/actions_artifacts === RUN TestUploadAttachment --- PASS: TestUploadAttachment (0.18s) PASS ok gitea.dev/services/attachment 7.793s 2026/09/06 06:40:26 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-43726305/data/attachments 2026/09/06 06:40:26 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-43726305/data/avatars 2026/09/06 06:40:26 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-43726305/data/repo-avatars 2026/09/06 06:40:26 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-43726305/data/repo-archive 2026/09/06 06:40:26 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-43726305/data/packages 2026/09/06 06:40:26 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-43726305/data/actions_log 2026/09/06 06:40:26 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:26 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-43726305/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.07s) --- 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 7.569s ? gitea.dev/services/auth/source [no test files] testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/db 6.045s [no tests to run] testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/ldap 6.167s [no tests to run] 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3455603731/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3455603731/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3455603731/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3455603731/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3455603731/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3455603731/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3455603731/data/actions_artifacts === RUN TestSource === RUN TestSource/refresh === RUN TestSource/refresh/valid === RUN TestSource/refresh/expired 2026/09/06 06:40:28 .../oauth2/source_sync.go:76:(*Source).refresh.1() [I] SyncExternalUsers[fake] disabling user 43 --- PASS: TestSource (0.18s) --- PASS: TestSource/refresh (0.00s) --- PASS: TestSource/refresh/valid (0.00s) --- PASS: TestSource/refresh/expired (0.00s) PASS ok gitea.dev/services/auth/source/oauth2 7.507s testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/pam 6.181s [no tests to run] testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/smtp 5.676s [no tests to run] testing: warning: no tests to run PASS ok gitea.dev/services/auth/source/sspi 1.782s [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 5.246s === RUN TestUpload --- PASS: TestUpload (0.00s) PASS ok gitea.dev/services/context/upload 5.256s ? gitea.dev/services/contexttest [no test files] 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3199564974/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3199564974/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3199564974/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3199564974/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3199564974/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3199564974/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3199564974/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.05s) --- 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.01s) --- PASS: TestGetActionWorkflow_FallbackRef/returns_workflow_with_tag_link_when_found_via_tag_ref (0.01s) --- PASS: TestGetActionWorkflow_FallbackRef/returns_error_when_workflow_missing_from_ref (0.00s) === RUN TestToActionWorkflowRun_UsesTriggerEvent --- PASS: TestToActionWorkflowRun_UsesTriggerEvent (0.14s) === 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.01s) --- PASS: TestToTrackedTime/NilIssues (0.00s) --- PASS: TestToTrackedTime/NilRepo (0.00s) --- PASS: TestToTrackedTime/ToRegularUser (0.00s) --- PASS: TestToTrackedTime/ToAdminUser (0.01s) === RUN TestToNotificationThreadIncludesRepoForAccessibleUser --- PASS: TestToNotificationThreadIncludesRepoForAccessibleUser (0.01s) === RUN TestToNotificationThreadOmitsRepoWhenAccessRevoked --- PASS: TestToNotificationThreadOmitsRepoWhenAccessRevoked (0.00s) === 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.01s) --- PASS: TestToNotificationThread/pinned_notification (0.02s) --- PASS: TestToNotificationThread/merged_pull_request_returns_merged_state (0.01s) --- 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.01s) --- 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.06s) === RUN TestRelease_ToRelease --- PASS: TestRelease_ToRelease (0.01s) === RUN TestUser_ToUser --- PASS: TestUser_ToUser (0.01s) === RUN TestToCorrectPageSize --- PASS: TestToCorrectPageSize (0.00s) === RUN TestToGitServiceType --- PASS: TestToGitServiceType (0.00s) PASS ok gitea.dev/services/convert 6.853s === 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 6.064s 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3460512552/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3460512552/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3460512552/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3460512552/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3460512552/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3460512552/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3460512552/data/actions_artifacts === RUN TestConsistencyCheck 2026/09/06 06:40:28 .../doctor/dbconsistency.go:48:(*consistencyCheck).Run() [I] Deleted 1 Orphaned OAuth2Application without existing User --- PASS: TestConsistencyCheck (0.01s) PASS ok gitea.dev/services/doctor 6.047s ? gitea.dev/services/externalaccount [no test files] 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3514977600/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3514977600/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3514977600/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3514977600/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3514977600/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3514977600/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3514977600/data/actions_artifacts === RUN TestGetFeeds --- PASS: TestGetFeeds (0.21s) === RUN TestGetFeedsForRepos --- PASS: TestGetFeedsForRepos (0.05s) === RUN TestGetFeeds2 --- PASS: TestGetFeeds2 (0.02s) === RUN TestGetFeedsCorrupted --- PASS: TestGetFeedsCorrupted (0.01s) === RUN TestRepoActions --- PASS: TestRepoActions (0.01s) === RUN TestNotifyWatchers --- PASS: TestNotifyWatchers (0.01s) === RUN TestRenameRepoAction --- PASS: TestRenameRepoAction (0.01s) PASS ok gitea.dev/services/feed 5.571s === 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 5.024s ? gitea.dev/services/git [no test files] 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-926416828/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-926416828/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-926416828/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-926416828/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-926416828/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-926416828/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-926416828/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.08s) --- PASS: TestGitDiffTree/happy_path (0.02s) --- 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:28 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:28 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.10s) --- PASS: TestGitDiffTreeRespectsDiffOrderFile/NoDiffOrderFile (0.01s) --- PASS: TestGitDiffTreeRespectsDiffOrderFile/GlobalDiffOrderFile (0.09s) === 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.01s) --- PASS: TestGitDiffTreeErrors/head_doesn't_exist (0.00s) --- PASS: TestGitDiffTreeErrors/base_doesn't_exist (0.00s) --- PASS: TestGitDiffTreeErrors/head_not_set (0.00s) === RUN TestBuildBlobExcerptDiffSection --- PASS: TestBuildBlobExcerptDiffSection (0.01s) === 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.08s) === RUN TestDiff_LoadCommentsWithOutdated --- PASS: TestDiff_LoadCommentsWithOutdated (0.00s) === RUN TestDiffLine_CanComment --- PASS: TestDiffLine_CanComment (0.00s) === RUN TestDiffLine_GetCommentSide --- PASS: TestDiffLine_GetCommentSide (0.00s) === RUN TestGetDiffRangeWithWhitespaceBehavior --- PASS: TestGetDiffRangeWithWhitespaceBehavior (0.02s) === RUN TestNoCrashes --- PASS: TestNoCrashes (0.00s) === RUN TestGeneratePatchForUnchangedLineFromReader === RUN TestGeneratePatchForUnchangedLineFromReader/single_line_with_context 2026/09/06 06:40:28 services/gitdiff/gitdiff.go:1233:readFileName() [E] Unable to determine name from reader: reader=&{s: i:1 prevRune:-1} 2026/09/06 06:40:28 services/gitdiff/gitdiff.go:1233:readFileName() [E] Unable to determine name from reader: reader=&{s: i:1 prevRune:-1} 2026/09/06 06:40:28 services/gitdiff/gitdiff.go:1211:readFileName() [E] Reader has no file name: reader=&{s:"0 i:4 prevRune:-1} 2026/09/06 06:40:28 services/gitdiff/gitdiff.go:1233:readFileName() [E] Unable to determine name from reader: reader=&{s:"0 i:3 prevRune:-1} === 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.00s) --- PASS: TestHighlightCodeLines/CharsetDetecting (0.00s) --- PASS: TestHighlightCodeLines/LeftLines (0.00s) --- PASS: TestHighlightCodeLines/CharCR (0.00s) === RUN TestSyncUserSpecificDiff_UpdatedFiles --- PASS: TestSyncUserSpecificDiff_UpdatedFiles (0.03s) === 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 5.429s ? gitea.dev/services/indexer [no test files] 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3920072943/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3920072943/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3920072943/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3920072943/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3920072943/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3920072943/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3920072943/data/actions_artifacts === RUN TestDeleteNotPassedAssignee --- PASS: TestDeleteNotPassedAssignee (0.25s) === RUN TestAddAssigneeIfNotAssignedBlocked --- PASS: TestAddAssigneeIfNotAssignedBlocked (0.01s) === RUN TestAddAssigneesBlockedIsAtomic --- PASS: TestAddAssigneesBlockedIsAtomic (0.01s) === RUN TestUpdateIssuesCommit --- PASS: TestUpdateIssuesCommit (0.05s) === RUN TestUpdateIssuesCommit_Colon --- PASS: TestUpdateIssuesCommit_Colon (0.02s) === RUN TestUpdateIssuesCommit_Issue5957 --- PASS: TestUpdateIssuesCommit_Issue5957 (0.01s) === RUN TestUpdateIssuesCommit_AnotherRepo --- PASS: TestUpdateIssuesCommit_AnotherRepo (0.03s) === RUN TestUpdateIssuesCommit_AnotherRepo_FullAddress --- PASS: TestUpdateIssuesCommit_AnotherRepo_FullAddress (0.02s) === RUN TestUpdateIssuesCommit_AnotherRepoNoPermission --- PASS: TestUpdateIssuesCommit_AnotherRepoNoPermission (0.03s) === RUN TestUpdateIssuesCommit_SelfReference --- PASS: TestUpdateIssuesCommit_SelfReference (0.01s) === RUN TestGetRefEndNamesAndURLs --- PASS: TestGetRefEndNamesAndURLs (0.00s) === RUN TestIssue_DeleteIssue --- PASS: TestIssue_DeleteIssue (0.01s) === RUN TestIssue_AddLabels --- PASS: TestIssue_AddLabels (0.04s) === RUN TestIssue_AddLabel --- PASS: TestIssue_AddLabel (0.03s) === RUN TestChangeMilestoneAssign --- PASS: TestChangeMilestoneAssign (0.02s) === RUN TestIssueAddReaction --- PASS: TestIssueAddReaction (0.01s) === RUN TestIssueAddDuplicateReaction --- PASS: TestIssueAddDuplicateReaction (0.00s) === RUN TestIssueDeleteReaction --- PASS: TestIssueDeleteReaction (0.01s) === RUN TestIssueReactionCount --- PASS: TestIssueReactionCount (0.02s) === RUN TestIssueCommentAddReaction --- PASS: TestIssueCommentAddReaction (0.01s) === RUN TestIssueCommentDeleteReaction --- PASS: TestIssueCommentDeleteReaction (0.02s) === RUN TestIssueCommentReactionCount --- PASS: TestIssueCommentReactionCount (0.00s) === 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 5.581s 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1119842460/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1119842460/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1119842460/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1119842460/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1119842460/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1119842460/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1119842460/data/actions_artifacts === RUN TestAuthenticate === RUN TestAuthenticate/handleLFSToken === RUN TestAuthenticate/authenticate 2026/09/06 06:40:29 services/lfs/server.go:566:authenticate() [W] Authentication failure for provided token with Error: no token 2026/09/06 06:40:29 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.10s) --- 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 4.638s 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1276113615/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1276113615/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1276113615/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1276113615/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1276113615/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1276113615/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1276113615/data/actions_artifacts === RUN TestMailNewReleaseFiltersUnauthorizedWatchers --- PASS: TestMailNewReleaseFiltersUnauthorizedWatchers (0.12s) === RUN TestComposeIssueComment --- PASS: TestComposeIssueComment (0.02s) === RUN TestMailMentionsComment --- PASS: TestMailMentionsComment (0.00s) === RUN TestComposeIssueMessage --- PASS: TestComposeIssueMessage (0.00s) === RUN TestTemplateSelection --- PASS: TestTemplateSelection (0.00s) === RUN TestTemplateServices --- PASS: TestTemplateServices (0.00s) === RUN TestGenerateAdditionalHeadersForIssue --- PASS: TestGenerateAdditionalHeadersForIssue (0.00s) === 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.00s) --- 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.01s) --- PASS: TestEmbedBase64Images/ComposeMessage (0.00s) --- PASS: TestEmbedBase64Images/EmbedInstanceImageSkipExternalImage (0.00s) --- PASS: TestEmbedBase64Images/LimitedEmailBodySize (0.00s) === RUN TestMailPullRequestPush --- PASS: TestMailPullRequestPush (0.00s) PASS ok gitea.dev/services/mailer 4.669s === RUN TestIsAutomaticReply --- PASS: TestIsAutomaticReply (0.01s) === RUN TestSearchTokenInHeadersCaseInsensitive --- PASS: TestSearchTokenInHeadersCaseInsensitive (0.00s) === 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.00s) --- 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 3.884s ? gitea.dev/services/mailer/incoming/payload [no test files] 2026/09/06 06:40:27 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-793588938/data/attachments 2026/09/06 06:40:27 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-793588938/data/avatars 2026/09/06 06:40:27 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-793588938/data/repo-avatars 2026/09/06 06:40:27 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-793588938/data/repo-archive 2026/09/06 06:40:27 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-793588938/data/packages 2026/09/06 06:40:27 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-793588938/data/actions_log 2026/09/06 06:40:27 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:27 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-793588938/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 3.844s ? gitea.dev/services/mailer/token [no test files] 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3382104838/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3382104838/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3382104838/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3382104838/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3382104838/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3382104838/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3382104838/data/actions_artifacts === RUN TestRenderHelperCodePreview --- PASS: TestRenderHelperCodePreview (0.16s) === RUN TestRenderHelperIssueIconTitle === RUN TestRenderHelperIssueIconTitle/RenderInCurrentRepo === RUN TestRenderHelperIssueIconTitle/RenderAcrossRepo --- PASS: TestRenderHelperIssueIconTitle (0.00s) --- PASS: TestRenderHelperIssueIconTitle/RenderInCurrentRepo (0.00s) --- PASS: TestRenderHelperIssueIconTitle/RenderAcrossRepo (0.00s) === RUN TestRenderHelperMention --- PASS: TestRenderHelperMention (0.00s) PASS ok gitea.dev/services/markup 4.146s 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1099510297/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1099510297/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1099510297/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1099510297/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1099510297/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1099510297/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1099510297/data/actions_artifacts === RUN TestCodebaseDownloadRepo 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/test 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/milestones 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/tickets/types 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/tickets 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/tickets/2/notes 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /users 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/tickets/1/notes 2026/09/06 06:40:29 .../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:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/test/merge_requests/100 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /gitea-test/test/commits/readme-mr 2026/09/06 06:40:29 .../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:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/version 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/settings/api 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/gitea/test_repo 2026/09/06 06:40:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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.01s) === RUN TestGiteaUploadRepo gitea_uploader_test.go:29: --- SKIP: TestGiteaUploadRepo (0.00s) === RUN TestGiteaUploadRemapLocalUser --- PASS: TestGiteaUploadRemapLocalUser (0.09s) === RUN TestGiteaUploadRemapExternalUser --- PASS: TestGiteaUploadRemapExternalUser (0.03s) === RUN TestGitHubDownloadRepo 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/rate_limit 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v3/repos/go-gitea/test_repo 2026/09/06 06:40:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:39735 2026/09/06 06:40:29 .../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:39735 2026/09/06 06:40:29 .../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:29 .../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:29 .../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:39735 2026/09/06 06:40:29 .../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:39735 2026/09/06 06:40:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/version 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/gitea%2Ftest_repo 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026 2026/09/06 06:40:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/4 2026/09/06 06:40:29 .../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:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/3 2026/09/06 06:40:29 .../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:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v4/projects/15578026/merge_requests/1/approvals 2026/09/06 06:40:29 .../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.01s) === 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:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/lunnytest/TESTREPO 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/lunnytest/TESTREPO/milestones 2026/09/06 06:40:29 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /api/v1/repos/lunnytest/TESTREPO/labels 2026/09/06 06:40:29 .../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:29 .../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.02s) === RUN TestAllowBlockList --- PASS: TestAllowBlockList (0.00s) === RUN TestOneDevVersionResponseSizeLimit --- PASS: TestOneDevVersionResponseSizeLimit (0.00s) === RUN TestOneDevDownloadRepo 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/version/server 2026/09/06 06:40:30 .../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:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/projects/149/iterations?count=100&offset=0 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/projects/149/iterations?count=100&offset=100 2026/09/06 06:40:30 .../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:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues/398/iterations 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/users/336 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/users/336/email-addresses 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues/397/iterations 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues/398/comments 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/issues/398/changes 2026/09/06 06:40:30 .../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:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/pulls/186/merge-preview 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/pulls/186/reviews 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/users/317 2026/09/06 06:40:30 .../unittest/mock_http.go:67:NewMockWebServer.1() [I] mock server: GET /~api/users/317/email-addresses --- PASS: TestOneDevDownloadRepo (0.00s) === RUN TestRepositoryRestorer_GetReleases_LocalFileInclusion --- PASS: TestRepositoryRestorer_GetReleases_LocalFileInclusion (0.00s) === RUN TestRepositoryRestorer_GetPullRequestsStripsUnsafeCloneURL 2026/09/06 06:40:30 .../migrations/common.go:18:WarnAndNotice() [W] PR #1 in &{{} /home/buildozer/aports/community/gitea/tmp/TestRepositoryRestorer_GetPullRequestsStripsUnsafeCloneURL2885268502/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_GetPullRequestsStripsUnsafeCloneURL2885268502/001 --- PASS: TestRepositoryRestorer_GetPullRequestsStripsUnsafeCloneURL (0.00s) PASS ok gitea.dev/services/migrations 4.730s === RUN Test_checkRecoverableSyncError --- PASS: Test_checkRecoverableSyncError (0.00s) PASS ok gitea.dev/services/mirror 3.441s ? 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.03s) --- 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.08s) --- PASS: TestECDSASigningKeyToJWK/P-256 (0.00s) --- PASS: TestECDSASigningKeyToJWK/P-384 (0.06s) --- PASS: TestECDSASigningKeyToJWK/P-521 (0.02s) PASS ok gitea.dev/services/oauth2_provider 1.415s 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3687443229/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3687443229/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3687443229/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3687443229/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3687443229/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3687443229/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3687443229/data/actions_artifacts === RUN TestOrg === RUN TestOrg/UpdateOrgEmailAddress === RUN TestOrg/DeleteOrganization === RUN TestOrg/ChangeVisibilityWithUserFork === RUN TestOrg/ChangeVisibilityClearsWatchesAndStars 2026/09/06 06:40:29 .../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:29 .../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:29 .../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:29 .../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:29 .../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.11s) --- PASS: TestOrg/UpdateOrgEmailAddress (0.00s) --- PASS: TestOrg/DeleteOrganization (0.02s) --- PASS: TestOrg/ChangeVisibilityWithUserFork (0.01s) --- PASS: TestOrg/ChangeVisibilityClearsWatchesAndStars (0.01s) === RUN TestTeam_AddMember --- PASS: TestTeam_AddMember (0.08s) === RUN TestTeam_RemoveMember --- PASS: TestTeam_RemoveMember (0.02s) === RUN TestRemoveTeamMemberRemovesSubscriptionsAndStopwatches --- PASS: TestRemoveTeamMemberRemovesSubscriptionsAndStopwatches (0.02s) === RUN TestNewTeam --- PASS: TestNewTeam (0.04s) === RUN TestUpdateTeam --- PASS: TestUpdateTeam (0.01s) === RUN TestUpdateTeam2 --- PASS: TestUpdateTeam2 (0.01s) === RUN TestDeleteTeam --- PASS: TestDeleteTeam (0.01s) === RUN TestAddTeamMember --- PASS: TestAddTeamMember (0.06s) === RUN TestRemoveTeamMember --- PASS: TestRemoveTeamMember (0.02s) === RUN TestIncludesAllRepositoriesTeams 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestIncludesAllRepositoriesTeams (0.20s) === RUN TestUser_RemoveMember --- PASS: TestUser_RemoveMember (0.05s) === RUN TestRemoveOrgUser --- PASS: TestRemoveOrgUser (0.04s) PASS ok gitea.dev/services/org 4.264s ? 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 2.991s ? 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:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1913875463/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1913875463/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1913875463/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1913875463/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1913875463/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1913875463/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1913875463/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.16s) --- PASS: Test_Projects/User_projects (0.02s) --- PASS: Test_Projects/User_projects/Authenticated_user (0.01s) --- PASS: Test_Projects/User_projects/Anonymous_user (0.00s) --- PASS: Test_Projects/User_projects/Authenticated_user_with_no_permission_to_the_private_repo (0.01s) --- PASS: Test_Projects/Org_projects (0.03s) --- PASS: Test_Projects/Org_projects/Authenticated_user (0.00s) --- PASS: Test_Projects/Org_projects/Anonymous_user (0.00s) --- PASS: Test_Projects/Org_projects/Authenticated_user_with_no_permission_to_the_private_repo (0.00s) --- PASS: Test_Projects/Org_projects/Org_owner_team_member (0.00s) --- PASS: Test_Projects/Repository_projects (0.02s) --- 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 3.613s 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-549945400/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-549945400/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-549945400/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-549945400/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-549945400/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-549945400/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-549945400/data/actions_artifacts === RUN TestPullRequest_AddToTaskQueue --- PASS: TestPullRequest_AddToTaskQueue (0.24s) === RUN TestCheckSigningRequirementsHeadCommits --- PASS: TestCheckSigningRequirementsHeadCommits (0.02s) === RUN TestMarkPullRequestAsMergeable --- PASS: TestMarkPullRequestAsMergeable (0.01s) === RUN TestCreatePushPullCommentForcePushDeletesOldComments === RUN TestCreatePushPullCommentForcePushDeletesOldComments/base-branch-only === RUN TestCreatePushPullCommentForcePushDeletesOldComments/force-push-ignores-missing-old-commit === RUN TestCreatePushPullCommentForcePushDeletesOldComments/head-vs-base-branch --- PASS: TestCreatePushPullCommentForcePushDeletesOldComments (0.05s) --- PASS: TestCreatePushPullCommentForcePushDeletesOldComments/base-branch-only (0.02s) --- PASS: TestCreatePushPullCommentForcePushDeletesOldComments/force-push-ignores-missing-old-commit (0.02s) --- PASS: TestCreatePushPullCommentForcePushDeletesOldComments/head-vs-base-branch (0.01s) === 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.00s) --- 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.29s) --- PASS: TestPullRequestMergeable/NoConflict-MergeTree (0.02s) --- PASS: TestPullRequestMergeable/NoConflict-TmpRepo (0.07s) --- PASS: TestPullRequestMergeable/Conflict-MergeTree (0.01s) --- PASS: TestPullRequestMergeable/Conflict-TmpRepo (0.07s) --- PASS: TestPullRequestMergeable/Empty-MergeTree (0.01s) --- PASS: TestPullRequestMergeable/Empty-TmpRepo (0.07s) === 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.01s) --- PASS: TestIsUserAllowedToUpdate/ReadOnlyAccessDenied (0.00s) --- PASS: TestIsUserAllowedToUpdate/ProtectedBranchAllowsPushWithoutRebase (0.00s) --- PASS: TestIsUserAllowedToUpdate/MaintainerEditRespectsPosterPermissions (0.00s) --- PASS: TestIsUserAllowedToUpdate/MaintainerEditInheritsPosterPermissions (0.01s) --- PASS: TestIsUserAllowedToUpdate/MaintainerEditInheritsPosterPermissionsRebaseDisabled (0.00s) === RUN TestDismissReview --- PASS: TestDismissReview (0.01s) === RUN TestRepoGetReviewers --- PASS: TestRepoGetReviewers (0.01s) === RUN TestRepoGetReviewerTeams --- PASS: TestRepoGetReviewerTeams (0.00s) PASS ok gitea.dev/services/pull 3.800s 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2070954931/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2070954931/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2070954931/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2070954931/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2070954931/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2070954931/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-2070954931/data/actions_artifacts === RUN TestGenerateReleaseNotes === RUN TestGenerateReleaseNotes/ChangeLogsWithPRs === RUN TestGenerateReleaseNotes/NoPreviousTag === RUN TestGenerateReleaseNotes/EmptyPreviousTagWithExistingTags --- PASS: TestGenerateReleaseNotes (0.16s) --- PASS: TestGenerateReleaseNotes/ChangeLogsWithPRs (0.02s) --- PASS: TestGenerateReleaseNotes/NoPreviousTag (0.04s) --- PASS: TestGenerateReleaseNotes/EmptyPreviousTagWithExistingTags (0.01s) === RUN TestRelease_Create --- PASS: TestRelease_Create (0.08s) === RUN TestRelease_Update --- PASS: TestRelease_Update (0.10s) === RUN TestRelease_createTag --- PASS: TestRelease_createTag (0.04s) === RUN TestCreateNewTag --- PASS: TestCreateNewTag (0.02s) PASS ok gitea.dev/services/release 3.558s 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/actions_artifacts === RUN TestCheckUnadoptedRepositories_Add --- PASS: TestCheckUnadoptedRepositories_Add (0.00s) === RUN TestCheckUnadoptedRepositories --- PASS: TestCheckUnadoptedRepositories (0.07s) === RUN TestListUnadoptedRepositories_ListOptions --- PASS: TestListUnadoptedRepositories_ListOptions (0.03s) === RUN TestAdoptRepository --- PASS: TestAdoptRepository (0.04s) === RUN TestUploadAvatar --- PASS: TestUploadAvatar (0.01s) === 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.18s) === RUN TestRepository_DeleteCollaboration --- PASS: TestRepository_DeleteCollaboration (0.05s) === RUN TestRepository_DeleteCollaborationRemovesSubscriptionsAndStopwatches --- PASS: TestRepository_DeleteCollaborationRemovesSubscriptionsAndStopwatches (0.01s) === RUN TestRepository_ContributorsGraph --- PASS: TestRepository_ContributorsGraph (0.03s) === RUN TestCreateRepositoryDirectly 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 .../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:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestCreateRepositoryDirectly (0.03s) === RUN TestForkRepository --- PASS: TestForkRepository (0.02s) === RUN TestForkRepositoryCleanup 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 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:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestForkRepositoryCleanup (0.07s) === RUN TestGiteaTemplate --- PASS: TestGiteaTemplate (0.00s) === RUN TestFilePathSanitize --- PASS: TestFilePathSanitize (0.00s) === RUN TestProcessGiteaTemplateFileGenerate --- PASS: TestProcessGiteaTemplateFileGenerate (0.00s) === 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.21s) --- 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.01s) --- PASS: Test_detectLicense/single_license_test:_Apache-2.0 (0.00s) --- 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.01s) --- 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.00s) --- PASS: Test_detectLicense/single_license_test:_EPL-2.0 (0.00s) --- PASS: Test_detectLicense/single_license_test:_EUPL-1.2 (0.00s) --- PASS: Test_detectLicense/single_license_test:_GPL-2.0 (0.01s) --- PASS: Test_detectLicense/single_license_test:_GPL-3.0 (0.01s) --- PASS: Test_detectLicense/single_license_test:_ISC (0.00s) --- PASS: Test_detectLicense/single_license_test:_LGPL-2.1 (0.01s) --- PASS: Test_detectLicense/single_license_test:_LGPL-3.0 (0.01s) --- 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.00s) --- 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.16s) === RUN TestAttachLinkedTypeAndRepoID === RUN TestAttachLinkedTypeAndRepoID/LinkedIssue === RUN TestAttachLinkedTypeAndRepoID/LinkedComment === RUN TestAttachLinkedTypeAndRepoID/LinkedRelease === RUN TestAttachLinkedTypeAndRepoID/Notlinked --- PASS: TestAttachLinkedTypeAndRepoID (0.00s) --- 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.00s) === RUN TestRepository_HasWiki --- PASS: TestRepository_HasWiki (0.04s) === RUN TestMakeRepoPrivateClearsWatches 2026/09/06 06:40:30 .../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:30 .../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:30 .../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:30 .../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:30 .../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:30 .../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:30 .../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:30 .../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:30 .../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:30 .../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.01s) === RUN TestTransferOwnership --- PASS: TestTransferOwnership (0.08s) === RUN TestStartRepositoryTransferSetPermission --- PASS: TestStartRepositoryTransferSetPermission (0.08s) === RUN TestRepositoryTransfer --- PASS: TestRepositoryTransfer (0.01s) === RUN TestRepositoryTransferRejection --- PASS: TestRepositoryTransferRejection (0.01s) === RUN TestTeam_HasRepository --- PASS: TestTeam_HasRepository (0.01s) === RUN TestTeam_RemoveRepository --- PASS: TestTeam_RemoveRepository (0.13s) === RUN TestDeleteOwnerRepositoriesDirectly 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [0b/8d/8b5f15046343fd32f451df93acc2bdd9e6373be478b968e4cad6b6647351]: LFS isn't enabled 2026/09/06 06:40:30 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [2e/cc/db43825d2a49d99d542daa20075cff1d97d9d2349a8977efe9c03661737c]: LFS isn't enabled 2026/09/06 06:40:30 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [7b/6b/2c88dba9f760a1a58469b67fee2b698ef7e9399c4ca4f34a14ccbe39f623]: LFS isn't enabled 2026/09/06 06:40:30 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [9d/17/2e5c64b4f0024b9901ec6afe9ea052f3c9b6ff9f4b07956d8c48c86fca82]: LFS isn't enabled 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestDeleteOwnerRepositoriesDirectly (0.13s) === RUN TestDeleteRepositoryDirectlyPurgesRepoScopedRows 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestDeleteRepositoryDirectlyPurgesRepoScopedRows (0.07s) === RUN TestGarbageCollectLFSMetaObjects 2026/09/06 06:40:30 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/attachments 2026/09/06 06:40:30 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/avatars 2026/09/06 06:40:30 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/repo-avatars 2026/09/06 06:40:30 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/lfs 2026/09/06 06:40:30 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/repo-archive 2026/09/06 06:40:30 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/packages 2026/09/06 06:40:30 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/actions_log 2026/09/06 06:40:30 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/actions_artifacts --- PASS: TestGarbageCollectLFSMetaObjects (0.06s) === RUN TestGarbageCollectLFSMetaObjectsForRepoAutoFix 2026/09/06 06:40:30 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/attachments 2026/09/06 06:40:30 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/avatars 2026/09/06 06:40:30 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/repo-avatars 2026/09/06 06:40:30 modules/storage/storage.go:237:initLFS() [I] Initialising LFS storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/lfs 2026/09/06 06:40:30 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/repo-archive 2026/09/06 06:40:30 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/packages 2026/09/06 06:40:30 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/actions_log 2026/09/06 06:40:30 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:30 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-3106845136/data/actions_artifacts --- PASS: TestGarbageCollectLFSMetaObjectsForRepoAutoFix (0.03s) PASS ok gitea.dev/services/repository 4.801s 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-924974754/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-924974754/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-924974754/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-924974754/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-924974754/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-924974754/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-924974754/data/actions_artifacts === RUN TestArchiveQueueItemJSON --- PASS: TestArchiveQueueItemJSON (0.00s) === RUN TestArchive_Basic === RUN TestArchive_Basic/BadPath --- PASS: TestArchive_Basic (2.10s) --- PASS: TestArchive_Basic/BadPath (0.00s) PASS ok gitea.dev/services/repository/archiver 5.164s ? gitea.dev/services/repository/commitstatus [no test files] 2026/09/06 06:40:28 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4148930694/data/attachments 2026/09/06 06:40:28 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4148930694/data/avatars 2026/09/06 06:40:28 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4148930694/data/repo-avatars 2026/09/06 06:40:28 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4148930694/data/repo-archive 2026/09/06 06:40:28 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4148930694/data/packages 2026/09/06 06:40:28 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4148930694/data/actions_log 2026/09/06 06:40:28 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:28 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-4148930694/data/actions_artifacts === RUN TestGetContents === RUN TestGetContents/GetBlobBySHA --- PASS: TestGetContents (0.10s) --- 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.12s) --- PASS: TestGetDiffPreview/Errors (0.03s) --- PASS: TestGetDiffPreview/Errors/empty_repo (0.00s) --- PASS: TestGetDiffPreview/Errors/bad_branch (0.01s) --- PASS: TestGetDiffPreview/Errors/empty_treePath (0.02s) --- PASS: TestGetDiffPreview/with_given_branch (0.03s) --- PASS: TestGetDiffPreview/empty_branch,_same_results (0.02s) === RUN TestCleanUploadFileName --- PASS: TestCleanUploadFileName (0.00s) === RUN TestGitPatchPrepare --- PASS: TestGitPatchPrepare (0.06s) === RUN TestTemporaryUploadRepository === RUN TestTemporaryUploadRepository/sha1 === RUN TestTemporaryUploadRepository/sha256 --- PASS: TestTemporaryUploadRepository (0.04s) --- PASS: TestTemporaryUploadRepository/sha1 (0.02s) --- PASS: TestTemporaryUploadRepository/sha256 (0.02s) === RUN TestGetTreeBySHA --- PASS: TestGetTreeBySHA (0.05s) === RUN TestGetTreeViewNodes --- PASS: TestGetTreeViewNodes (0.04s) PASS ok gitea.dev/services/repository/files 3.422s === 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 2.414s === RUN TestValidateName --- PASS: TestValidateName (0.00s) PASS ok gitea.dev/services/secrets 2.241s ? gitea.dev/services/task [no test files] ? gitea.dev/services/uinotification [no test files] 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1047324928/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1047324928/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1047324928/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1047324928/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1047324928/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1047324928/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1047324928/data/actions_artifacts === RUN TestCanBlockUser --- PASS: TestCanBlockUser (0.06s) === RUN TestCanUnblockUser --- PASS: TestCanUnblockUser (0.00s) === RUN TestUserEmail === RUN TestUserEmail/PrimaryEmailAddress === RUN TestUserEmail/AddEmailAddresses === RUN TestUserEmail/DeleteEmailAddresses --- PASS: TestUserEmail (0.00s) --- 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.00s) === RUN TestUpdateUserVisibility --- PASS: TestUpdateUserVisibility (0.00s) === RUN TestDeleteUser === RUN TestDeleteUser/CleanupOrphanedTables 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [0b/8d/8b5f15046343fd32f451df93acc2bdd9e6373be478b968e4cad6b6647351]: LFS isn't enabled 2026/09/06 06:40:29 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [2e/cc/db43825d2a49d99d542daa20075cff1d97d9d2349a8977efe9c03661737c]: LFS isn't enabled 2026/09/06 06:40:29 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [7b/6b/2c88dba9f760a1a58469b67fee2b698ef7e9399c4ca4f34a14ccbe39f623]: LFS isn't enabled 2026/09/06 06:40:29 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [9d/17/2e5c64b4f0024b9901ec6afe9ea052f3c9b6ff9f4b07956d8c48c86fca82]: LFS isn't enabled 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestDeleteUser (0.32s) --- PASS: TestDeleteUser/CleanupOrphanedTables (0.15s) === RUN TestDeleteUserUnlinkedAttachments === RUN TestDeleteUserUnlinkedAttachments/DeleteExisting === RUN TestDeleteUserUnlinkedAttachments/NoUnlinkedAttachments --- PASS: TestDeleteUserUnlinkedAttachments (0.03s) --- PASS: TestDeleteUserUnlinkedAttachments/DeleteExisting (0.03s) --- PASS: TestDeleteUserUnlinkedAttachments/NoUnlinkedAttachments (0.00s) === RUN TestPurgeUser 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [0b/8d/8b5f15046343fd32f451df93acc2bdd9e6373be478b968e4cad6b6647351]: LFS isn't enabled 2026/09/06 06:40:29 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [2e/cc/db43825d2a49d99d542daa20075cff1d97d9d2349a8977efe9c03661737c]: LFS isn't enabled 2026/09/06 06:40:29 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [7b/6b/2c88dba9f760a1a58469b67fee2b698ef7e9399c4ca4f34a14ccbe39f623]: LFS isn't enabled 2026/09/06 06:40:29 models/system/notice.go:67:RemoveStorageWithNotice() [W] Delete orphaned LFS file [9d/17/2e5c64b4f0024b9901ec6afe9ea052f3c9b6ff9f4b07956d8c48c86fca82]: LFS isn't enabled 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:29 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners 2026/09/06 06:40:30 services/actions/cleanup.go:170:CleanupEphemeralRunnersByPickedTaskOfRepo() [I] Removed 0 runners --- PASS: TestPurgeUser (0.43s) === RUN TestCreateUser --- PASS: TestCreateUser (0.00s) === 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.03s) --- 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 3.964s ? gitea.dev/services/versioned_migration [no test files] 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-767325914/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-767325914/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-767325914/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-767325914/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-767325914/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-767325914/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-767325914/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:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[1]: jsontext: unexpected EOF --- PASS: TestWebhookDeliverAuthorizationHeader (0.08s) === RUN TestWebhookDeliverHookTask === RUN TestWebhookDeliverHookTask/Version_1 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[2]: jsontext: unexpected EOF === RUN TestWebhookDeliverHookTask/Version_2 2026/09/06 06:40:29 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/telegram === PAUSE TestWebhookDeliverSpecificTypes/telegram === RUN TestWebhookDeliverSpecificTypes/matrix === PAUSE TestWebhookDeliverSpecificTypes/matrix === RUN TestWebhookDeliverSpecificTypes/packagist === PAUSE TestWebhookDeliverSpecificTypes/packagist === RUN TestWebhookDeliverSpecificTypes/slack === PAUSE TestWebhookDeliverSpecificTypes/slack === RUN TestWebhookDeliverSpecificTypes/dingtalk === PAUSE TestWebhookDeliverSpecificTypes/dingtalk === RUN TestWebhookDeliverSpecificTypes/msteams === PAUSE TestWebhookDeliverSpecificTypes/msteams === RUN TestWebhookDeliverSpecificTypes/feishu === PAUSE TestWebhookDeliverSpecificTypes/feishu === RUN TestWebhookDeliverSpecificTypes/wechatwork === PAUSE TestWebhookDeliverSpecificTypes/wechatwork === CONT TestWebhookDeliverSpecificTypes/discord === CONT TestWebhookDeliverSpecificTypes/wechatwork === CONT TestWebhookDeliverSpecificTypes/feishu 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[3]: jsontext: unexpected EOF 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[4]: jsontext: unexpected EOF === CONT TestWebhookDeliverSpecificTypes/packagist === CONT TestWebhookDeliverSpecificTypes/msteams === CONT TestWebhookDeliverSpecificTypes/matrix === CONT TestWebhookDeliverSpecificTypes/telegram === CONT TestWebhookDeliverSpecificTypes/dingtalk === CONT TestWebhookDeliverSpecificTypes/slack 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[6]: jsontext: unexpected EOF 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[8]: jsontext: unexpected EOF 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[7]: jsontext: unexpected EOF 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[10]: jsontext: unexpected EOF 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[11]: jsontext: unexpected EOF 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[9]: jsontext: unexpected EOF 2026/09/06 06:40:29 models/webhook/webhook.go:155:(*Webhook).AfterLoad() [E] Unmarshal[5]: jsontext: unexpected EOF --- PASS: TestWebhookDeliverSpecificTypes (0.00s) --- PASS: TestWebhookDeliverSpecificTypes/slack (0.07s) --- PASS: TestWebhookDeliverSpecificTypes/wechatwork (0.07s) --- PASS: TestWebhookDeliverSpecificTypes/telegram (0.07s) --- PASS: TestWebhookDeliverSpecificTypes/feishu (0.08s) --- PASS: TestWebhookDeliverSpecificTypes/msteams (0.08s) --- PASS: TestWebhookDeliverSpecificTypes/discord (0.08s) --- PASS: TestWebhookDeliverSpecificTypes/dingtalk (0.08s) --- PASS: TestWebhookDeliverSpecificTypes/packagist (0.09s) --- PASS: TestWebhookDeliverSpecificTypes/matrix (0.10s) === 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.04s) --- 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 3.059s === RUN TestParseThemeMetaInfo --- PASS: TestParseThemeMetaInfo (0.00s) PASS ok gitea.dev/services/webtheme 0.731s 2026/09/06 06:40:29 modules/storage/storage.go:227:initAttachments() [I] Initialising Attachment storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1733764106/data/attachments 2026/09/06 06:40:29 modules/storage/storage.go:217:initAvatars() [I] Initialising Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1733764106/data/avatars 2026/09/06 06:40:29 modules/storage/storage.go:243:initRepoAvatars() [I] Initialising Repository Avatar storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1733764106/data/repo-avatars 2026/09/06 06:40:29 modules/storage/storage.go:249:initRepoArchives() [I] Initialising Repository Archive storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1733764106/data/repo-archive 2026/09/06 06:40:29 modules/storage/storage.go:259:initPackages() [I] Initialising Packages storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1733764106/data/packages 2026/09/06 06:40:29 modules/storage/storage.go:270:initActions() [I] Initialising Actions storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1733764106/data/actions_log 2026/09/06 06:40:29 modules/storage/storage.go:274:initActions() [I] Initialising ActionsArtifacts storage with type: local 2026/09/06 06:40:29 modules/storage/local.go:48:NewLocalStorage() [I] Creating new Local Storage at /tmp/gitea-test/unit-test-dir-1733764106/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.00s) === RUN TestRepository_InitWiki --- PASS: TestRepository_InitWiki (0.10s) === 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.15s) --- PASS: TestRepository_AddWikiPage/test_wiki_exist:_Another_page (0.07s) --- 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.03s) === RUN TestRepository_EditWikiPage --- PASS: TestRepository_EditWikiPage (0.29s) === RUN TestRepository_DeleteWikiPage --- PASS: TestRepository_DeleteWikiPage (0.09s) === RUN TestPrepareWikiFileName === RUN TestPrepareWikiFileName/add_suffix === RUN TestPrepareWikiFileName/test_special_chars --- PASS: TestPrepareWikiFileName (0.07s) --- PASS: TestPrepareWikiFileName/add_suffix (0.00s) --- PASS: TestPrepareWikiFileName/test_special_chars (0.00s) === RUN TestPrepareWikiFileName_FirstPage --- PASS: TestPrepareWikiFileName_FirstPage (0.04s) === RUN TestWebPathConversion --- PASS: TestWebPathConversion (0.00s) === RUN TestWebPathFromRequest --- PASS: TestWebPathFromRequest (0.00s) PASS ok gitea.dev/services/wiki 3.419s === RUN FuzzMarkdownRenderRaw --- PASS: FuzzMarkdownRenderRaw (0.00s) === RUN FuzzMarkupPostProcess --- PASS: FuzzMarkupPostProcess (0.00s) PASS ok gitea.dev/tests/fuzz 1.585s ? gitea.dev/tools [no test files] >>> gitea: Entering fakeroot... libfakeroot internal error: payload not recognized! >>> gitea-doc*: Running split function doc... libfakeroot internal error: payload not recognized! '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: 145.5 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:38 +0000 elapsed time 0h 2m 21s >>> gitea: Cleaning up srcdir >>> gitea: Cleaning up pkgdir >>> gitea: Cleaning up tmpdir >>> gitea: Uninstalling dependencies... ( 1/44) Purging .makedepends-gitea (20260906.063818) ( 2/44) Purging git-lfs (3.7.1-r1) Executing git-lfs-3.7.1-r1.pre-deinstall * System Git LFS configuration has been removed. ( 3/44) Purging gnupg (2.4.9-r1) ( 4/44) Purging gpg-wks-server (2.4.9-r1) ( 5/44) Purging gpgsm (2.4.9-r1) ( 6/44) Purging gpgv (2.4.9-r1) ( 7/44) Purging gnupg-utils (2.4.9-r1) ( 8/44) Purging gnupg-wks-client (2.4.9-r1) ( 9/44) Purging gpg (2.4.9-r1) (10/44) Purging gnupg-keyboxd (2.4.9-r1) (11/44) Purging gpg-agent (2.4.9-r1) (12/44) Purging gnupg-dirmngr (2.4.9-r1) (13/44) Purging gnupg-gpgconf (2.4.9-r1) (14/44) Purging pinentry (1.3.2-r0) (15/44) Purging go (1.27.1-r0) (16/44) Purging bash (5.3.9-r1) Executing bash-5.3.9-r1.pre-deinstall (17/44) Purging openssh (10.5_p1-r1) (18/44) Purging openssh-sftp-server (10.5_p1-r1) (19/44) Purging sqlite (3.53.4-r0) (20/44) Purging tzdata (2026c-r0) (21/44) Purging pnpm (11.25.0-r0) (22/44) Purging nodejs (24.18.1-r2) (23/44) Purging ca-certificates (20260611-r0) Executing ca-certificates-20260611-r0.post-deinstall (24/44) Purging ada-libs (3.3.0-r1) (25/44) Purging gnutls (3.8.13-r0) (26/44) Purging icu-libs (78.1-r0) (27/44) Purging libassuan (3.0.2-r0) (28/44) Purging libbz2 (1.0.8-r6) (29/44) Purging libgcrypt (1.12.3-r0) (30/44) Purging libksba (1.7.0-r0) (31/44) Purging libldap (2.6.14-r0) (32/44) Purging libsasl (2.1.28-r9) (33/44) Purging nettle (3.10.2-r0) (34/44) Purging npth (1.8-r0) (35/44) Purging p11-kit (0.26.2-r1) (36/44) Purging readline (8.3.3-r1) (37/44) Purging simdjson (4.6.9-r0) (38/44) Purging simdutf (9.1.0-r0) (39/44) Purging sqlite-libs (3.53.4-r0) (40/44) Purging gdbm (1.26-r0) (41/44) Purging icu-data-full (78.1-r0) (42/44) Purging libffi (3.8.0-r0) (43/44) Purging libgpg-error (1.61-r0) (44/44) Purging libtasn1 (4.21.0-r0) Executing busybox-1.38.0-r4.trigger OK: 433.4 MiB in 109 packages >>> gitea: Updating the community/aarch64 repository index... >>> gitea: Signing the index...