diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index 7e2294c1e6df..9e290fb6a51f 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -1,6 +1,6 @@
{
"name": "Gitea DevContainer",
- "image": "mcr.microsoft.com/devcontainers/go:1.20-bullseye",
+ "image": "mcr.microsoft.com/devcontainers/go:1.21-bullseye",
"features": {
// installs nodejs into container
"ghcr.io/devcontainers/features/node:1": {
diff --git a/.drone.yml b/.drone.yml
index 5d4e13038ba3..d05a96ce6497 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -41,11 +41,10 @@ steps:
path: /go
- name: static
- image: techknowlogick/xgo:go-1.20.x
+ image: techknowlogick/xgo:go-1.21.x
pull: always
commands:
- # Upgrade to node 20 once https://github.com/techknowlogick/xgo/issues/163 is resolved
- - curl -sL https://deb.nodesource.com/setup_16.x | bash - && apt-get -qqy install nodejs
+ - curl -sL https://deb.nodesource.com/setup_20.x | bash - && apt-get -qqy install nodejs
- export PATH=$PATH:$GOPATH/bin
- make release
environment:
diff --git a/.github/workflows/files-changed.yml b/.github/workflows/files-changed.yml
index 0c382567cca7..f9156d668d5c 100644
--- a/.github/workflows/files-changed.yml
+++ b/.github/workflows/files-changed.yml
@@ -71,3 +71,4 @@ jobs:
swagger:
- "templates/swagger/v1_json.tmpl"
+ - "Makefile"
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 85ad622f7e7a..0b4f17b65867 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,13 +4,25 @@ This changelog goes through all the changes that have been made in each release
without substantial changes to our git log; to see the highlights of what has
been added to each release, please refer to the [blog](https://blog.gitea.com).
-## [1.20.3](https://github.com/go-gitea/gitea/releases/tag/v1.20.3) - 2023-08-07
+## [1.20.3](https://github.com/go-gitea/gitea/releases/tag/v1.20.3) - 2023-08-20
* BREAKING
* Fix the wrong derive path (#26271) (#26318)
* SECURITY
* Fix API leaking Usermail if not logged in (#25097) (#26350)
+* FEATURES
+ * Add ThreadID parameter for Telegram webhooks (#25996) (#26480)
* ENHANCEMENTS
+ * Add minimum polyfill to support "relative-time-element" in PaleMoon (#26575) (#26578)
+ * Fix dark theme highlight for "NameNamespace" (#26519) (#26527)
+ * Detect ogg mime-type as audio or video (#26494) (#26505)
+ * Use `object-fit: contain` for oauth2 custom icons (#26493) (#26498)
+ * Move dropzone progress bar to bottom to show filename when uploading (#26492) (#26497)
+ * Remove last newline from config file (#26468) (#26471)
+ * Minio: add missing region on client initialization (#26412) (#26438)
+ * Add pull request review request webhook event (#26401) (#26407)
+ * Fix text truncate (#26354) (#26384)
+ * Fix incorrect color of selected assignees when create issue (#26324) (#26372)
* Display human-readable text instead of cryptic filemodes (#26352) (#26358)
* Hide `last indexed SHA` when a repo could not be indexed yet (#26340) (#26345)
* Fix the topic validation rule and suport dots (#26286) (#26303)
@@ -19,6 +31,23 @@ been added to each release, please refer to the [blog](https://blog.gitea.com).
* Fix commit compare style (#26209) (#26226)
* Warn instead of reporting an error when a webhook cannot be found (#26039) (#26211)
* BUGFIXES
+ * Use "input" event instead of "keyup" event for migration form (#26602) (#26605)
+ * Do not use deprecated log config options by default (#26592) (#26600)
+ * Fix "issueReposQueryPattern does not match query" (#26556) (#26564)
+ * Sync repo's IsEmpty status correctly (#26517) (#26560)
+ * Fix project filter bugs (#26490) (#26558)
+ * Use `hidden` over `clip` for text truncation (#26520) (#26522)
+ * Set "type=button" for editor's toolbar buttons (#26510) (#26518)
+ * Fix NuGet search endpoints (#25613) (#26499)
+ * Fix storage path logic especially for relative paths (#26441) (#26481)
+ * Close stdout correctly for "git blame" (#26470) (#26473)
+ * Check first if minio bucket exists before trying to create it (#26420) (#26465)
+ * Avoiding accessing undefined tributeValues #26461 (#26462)
+ * Call git.InitSimple for runRepoSyncReleases (#26396) (#26450)
+ * Add transaction when creating pull request created dirty data (#26259) (#26437)
+ * Fix wrong middleware sequence (#26428) (#26436)
+ * Fix admin queue page title and fix CI failures (#26409) (#26421)
+ * Introduce ctx.PathParamRaw to avoid incorrect unescaping (#26392) (#26405)
* Bypass MariaDB performance bug of the "IN" sub-query, fix incorrect IssueIndex (#26279) (#26368)
* Fix incorrect CLI exit code and duplicate error message (#26346) (#26347)
* Prevent newline errors with Debian packages (#26332) (#26342)
@@ -31,6 +60,8 @@ been added to each release, please refer to the [blog](https://blog.gitea.com).
* Fix attachment clipboard copy on insecure origin (#26224) (#26231)
* Fix access check for org-level project (#26182) (#26223)
* MISC
+ * Improve profile readme rendering (#25988) (#26453)
+ * [docs] Add missing backtick in quickstart.zh-cn.md (#26349) (#26357)
* Upgrade x/net to 0.13.0 (#26301)
## [1.20.2](https://github.com/go-gitea/gitea/releases/tag/v1.20.2) - 2023-07-29
diff --git a/Dockerfile b/Dockerfile
index 06481cdf5aac..b42b4daa5fae 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,5 +1,5 @@
#Build stage
-FROM docker.io/library/golang:1.20-alpine3.18 AS build-env
+FROM docker.io/library/golang:1.21-alpine3.18 AS build-env
ARG GOPROXY
ENV GOPROXY ${GOPROXY:-direct}
diff --git a/Dockerfile.rootless b/Dockerfile.rootless
index aa74d3598750..449e630fadb4 100644
--- a/Dockerfile.rootless
+++ b/Dockerfile.rootless
@@ -1,5 +1,5 @@
#Build stage
-FROM docker.io/library/golang:1.20-alpine3.18 AS build-env
+FROM docker.io/library/golang:1.21-alpine3.18 AS build-env
ARG GOPROXY
ENV GOPROXY ${GOPROXY:-direct}
diff --git a/Makefile b/Makefile
index 167f56c6b926..908ee7a3374d 100644
--- a/Makefile
+++ b/Makefile
@@ -23,18 +23,18 @@ SHASUM ?= shasum -a 256
HAS_GO := $(shell hash $(GO) > /dev/null 2>&1 && echo yes)
COMMA := ,
-XGO_VERSION := go-1.20.x
+XGO_VERSION := go-1.21.x
AIR_PACKAGE ?= github.com/cosmtrek/air@v1.44.0
EDITORCONFIG_CHECKER_PACKAGE ?= github.com/editorconfig-checker/editorconfig-checker/cmd/editorconfig-checker@2.7.0
GOFUMPT_PACKAGE ?= mvdan.cc/gofumpt@v0.5.0
-GOLANGCI_LINT_PACKAGE ?= github.com/golangci/golangci-lint/cmd/golangci-lint@v1.53.3
+GOLANGCI_LINT_PACKAGE ?= github.com/golangci/golangci-lint/cmd/golangci-lint@v1.54.1
GXZ_PACKAGE ?= github.com/ulikunitz/xz/cmd/gxz@v0.5.11
MISSPELL_PACKAGE ?= github.com/client9/misspell/cmd/misspell@v0.3.4
SWAGGER_PACKAGE ?= github.com/go-swagger/go-swagger/cmd/swagger@v0.30.5
XGO_PACKAGE ?= src.techknowlogick.com/xgo@latest
GO_LICENSES_PACKAGE ?= github.com/google/go-licenses@v1.6.0
-GOVULNCHECK_PACKAGE ?= golang.org/x/vuln/cmd/govulncheck@v1.0.0
+GOVULNCHECK_PACKAGE ?= golang.org/x/vuln/cmd/govulncheck@v1.0.1
ACTIONLINT_PACKAGE ?= github.com/rhysd/actionlint/cmd/actionlint@v1.6.25
DOCKER_IMAGE ?= gitea/gitea
diff --git a/README.md b/README.md
index ef743780acf8..ea4bb787c7e3 100644
--- a/README.md
+++ b/README.md
@@ -110,13 +110,13 @@ Translations are done through Crowdin. If you want to translate to a new languag
You can also just create an issue for adding a language or ask on discord on the #translation channel. If you need context or find some translation issues, you can leave a comment on the string or ask on Discord. For general translation questions there is a section in the docs. Currently a bit empty but we hope to fill it as questions pop up.
-https://docs.gitea.io/en-us/contributing/translation-guidelines/
+https://docs.gitea.com/contributing/localization
[![Crowdin](https://badges.crowdin.net/gitea/localized.svg)](https://crowdin.com/project/gitea)
## Further information
-For more information and instructions about how to install Gitea, please look at our [documentation](https://docs.gitea.io/en-us/).
+For more information and instructions about how to install Gitea, please look at our [documentation](https://docs.gitea.com/).
If you have questions that are not covered by the documentation, you can get in contact with us on our [Discord server](https://discord.gg/Gitea) or create a post in the [discourse forum](https://discourse.gitea.io/).
We maintain a list of Gitea-related projects at [gitea/awesome-gitea](https://gitea.com/gitea/awesome-gitea).
@@ -151,7 +151,6 @@ Support this project by becoming a sponsor. Your logo will show up here with a l
-
## FAQ
diff --git a/custom/conf/app.example.ini b/custom/conf/app.example.ini
index cfaf91cddb7f..a3d24b1961fa 100644
--- a/custom/conf/app.example.ini
+++ b/custom/conf/app.example.ini
@@ -4,7 +4,7 @@
;; Do not copy the whole file as-is, as it contains some invalid sections for illustrative purposes.
;; If you don't know what a setting is you should not set it.
;;
-;; see https://docs.gitea.io/en-us/config-cheat-sheet/ for additional documentation.
+;; see https://docs.gitea.com/administration/config-cheat-sheet for additional documentation.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -454,7 +454,7 @@ INTERNAL_TOKEN=
;REVERSE_PROXY_TRUSTED_PROXIES = 127.0.0.0/8,::1/128
;;
;; The minimum password length for new Users
-;MIN_PASSWORD_LENGTH = 6
+;MIN_PASSWORD_LENGTH = 8
;;
;; Set to true to allow users to import local server paths
;IMPORT_LOCAL_PATHS = false
diff --git a/docker/root/etc/templates/app.ini b/docker/root/etc/templates/app.ini
index 7e8aa0bd0a62..01fb407f4951 100644
--- a/docker/root/etc/templates/app.ini
+++ b/docker/root/etc/templates/app.ini
@@ -46,7 +46,6 @@ PATH = /data/gitea/attachments
[log]
MODE = console
LEVEL = info
-ROUTER = console
ROOT_PATH = /data/gitea/log
[security]
diff --git a/docs/content/administration/config-cheat-sheet.en-us.md b/docs/content/administration/config-cheat-sheet.en-us.md
index 71ae4f2e30bd..968b47c2302e 100644
--- a/docs/content/administration/config-cheat-sheet.en-us.md
+++ b/docs/content/administration/config-cheat-sheet.en-us.md
@@ -559,7 +559,7 @@ And the following unique queues:
- `scrypt`: `scrypt$65536$16$2$50`
- Adjusting the algorithm parameters using this functionality is done at your own risk.
- `CSRF_COOKIE_HTTP_ONLY`: **true**: Set false to allow JavaScript to read CSRF cookie.
-- `MIN_PASSWORD_LENGTH`: **6**: Minimum password length for new users.
+- `MIN_PASSWORD_LENGTH`: **8**: Minimum password length for new users.
- `PASSWORD_COMPLEXITY`: **off**: Comma separated list of character classes required to pass minimum complexity. If left empty or no valid values are specified, checking is disabled (off):
- lower - use one or more lower latin characters
- upper - use one or more upper latin characters
diff --git a/docs/content/administration/customizing-gitea.en-us.md b/docs/content/administration/customizing-gitea.en-us.md
index 38bf00bfd60c..8be9d8ef6361 100644
--- a/docs/content/administration/customizing-gitea.en-us.md
+++ b/docs/content/administration/customizing-gitea.en-us.md
@@ -126,7 +126,17 @@ Apart from `extra_links.tmpl` and `extra_tabs.tmpl`, there are other useful temp
- `body_outer_post.tmpl`, before the bottom `