summaryrefslogtreecommitdiffstats
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Lock gofumpt to v0.3.0 and run it (#18866)silverwind2022-02-231-2/+2
| | | | | We can't depend on `latest` version of gofumpt because the output will not be stable across versions. Lock it down to the latest version released yesterday and run it again.
* Generate coverage with sqlite. (#18813)KN4CK3R2022-02-191-0/+7
|
* Move editorconfig-checker to lint-backend and remove JS wrapper (#18793)silverwind2022-02-181-2/+8
| | | | | | | | | * Move editorconfig-checker to lint-backend It makes more sense there as templates are considered backend code. * User golang version of the tool * remove dependency
* Increase the size of the webauthn_credential credential_id field (#18739)zeripath2022-02-131-0/+5
| | | | | | | | | | | Unfortunately credentialIDs in u2f are 255 bytes long which with base32 encoding becomes 408 bytes. The default size of a xorm string field is only a VARCHAR(255) This problem is not apparent on SQLite because strings get mapped to TEXT there. Fix #18727 Signed-off-by: Andrew Thornton <art27@cantab.net>
* Reduce CI go module downloads, add make targets (#18708)silverwind2022-02-121-0/+13
| | | | | | | | | | | | | The CI currently downloads all go modules in each pipeline step because go modules reside outside the project directory. Fix this by introducing a volume for the `/go` directory [1] so modules are only downloaded once per pipeline using a new `deps-backend` make target. For completeness, I also included new `deps` and `deps-frontend` targets and the frontend one is also triggered explicitly on CI where needed. [1] https://docs.drone.io/pipeline/kubernetes/examples/language/golang/#dependencies
* Fix `make fmt` and `make fmt-check` (#18633)silverwind2022-02-061-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Run 'make fmt' 'make fmt' currently produces this change, I'm not sure how CI did not fail on it, I made sure I have `mvdan.cc/gofumpt@latest`. * Fix 'make fmt-check' `make fmt-check` did not run all commands that `make fmt` did, resulting in missed diffs. Fix that by just depending on the `fmt` target. Includes: https://github.com/go-gitea/gitea/pull/18633 * Make gitea-fmt work with -l and -d and integrate gofumpt This implements -l, -w and -d with gitea-fmt and merges gofumpt. Signed-off-by: Andrew Thornton <art27@cantab.net> * as per silverwind Signed-off-by: Andrew Thornton <art27@cantab.net> * Apply suggestions from code review * use -l instead of -d for fmt-check Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: Andrew Thornton <art27@cantab.net>
* quote MAKE to prevent path expansion with space error (#18622)Kyle D2022-02-051-1/+1
| | | | | | | | | | | Pretty minor change to prevent error when `$(MAKE)` path is expanded with a space in the path. ```bash $ TAGS="bindata sqlite sqlite_unlock_notify" make build /usr/bin/sh: -c: line 0: syntax error near unexpected token `(' /usr/bin/sh: -c: line 0: `C:/Program Files (x86)/GnuWin32/bin/make -v | head -n 1' ``` I believe Program Files (x86) is the default path for GNU make on windows
* add gitea-fmt back (#18526)65432022-02-011-2/+5
|
* Bump golangci-lint version (#18411)Gusted2022-01-261-1/+1
| | | - Bump golangci-lint version to v1.44.0 (no new linter errors detected)
* format with gofumpt (#18184)65432022-01-201-2/+4
| | | | | | | | | | | * gofumpt -w -l . * gofumpt -w -l -extra . * Add linter * manual fix * change make fmt
* update description about vendoring in CONTRIBUTING.md (#18280)a10121127962022-01-171-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | * update description about vendoring in CONTRIBUTING.md follow #18277 Signed-off-by: a1012112796 <1012112796@qq.com> * Update CONTRIBUTING.md Co-authored-by: wxiaoguang <wxiaoguang@gmail.com> * fix and readd test-vendor step * remove vendor from .gitattributes @silverwind * simplify go mod check Signed-off-by: a1012112796 <1012112796@qq.com> * Revert "remove vendor from .gitattributes @silverwind" This reverts commit 4789e704cb7a2c80934e4a4cd31efb161e6c8666. Co-authored-by: wxiaoguang <wxiaoguang@gmail.com> Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: 6543 <6543@obermui.de>
* Add lockfile-check (#18285)silverwind2022-01-151-1/+12
| | | | | | | * Add lockfile-check This check runs `npm install` which will rewrite the lockfile in case it is inconsistent with package.json. This check detects this and will fail the CI in such a case.
* Remove golang vendored directory (#18277)techknowlogick2022-01-141-18/+18
| | | | | | | * rm go vendor * fix drone yaml * add to gitignore
* Fix documents for development and bug report (#18249)wxiaoguang2022-01-131-2/+2
|
* chore(lint): use golangci-lint to call revive and misspell checker. (#18145)Bo-Yi Wu2022-01-021-27/+2
| | | | | | replace revive and misspell with golangci-lint Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
* Avoid running go vet twice (#18059)Gusted2021-12-211-1/+0
|
* Add new JS linter rules (#17699)silverwind2021-11-221-1/+1
| | | | | | | | | | | | | | | | | | | | * Add new JS linter rules Adds a few useful rules from eslint-plugin-github. Notable changes: - Forbid dataset usage, its camel-casing behaviour makes it hard to grep for attributes. - Forbid .then() and .catch(), we should generally prefer await for new code. For rare cases where they are useful, a eslint-disable-line directive can be set. - Add docs js to linting * also enable github/array-foreach * small tweak Co-authored-by: Andrew Thornton <art27@cantab.net> Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
* A better go code formatter, and now `make fmt` can run in Windows (#17684)wxiaoguang2021-11-171-8/+4
| | | | * go build / format tools * re-format imports
* Update golangci-lint in Makefile (#17647)Gusted2021-11-171-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | * Update golangci-lint in Makefile - Partially resolvess #17596 - Download specific version(v1.43.0) by default. - If current installed version is older than the minium version, it will download the mininium required version. - Update the install script to avoid deprecated error `golangci/golangci-lint err this script is deprecated, please do not use it anymore. check https://github.com/goreleaser/godownloader/issues/207` * Simplify golangci-lint version check * Fix version conversion * Add version that's downloading Co-authored-by: zeripath <art27@cantab.net> * Consistency Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
* Set unit test timeout to 20 minutes (#17664)Lunny Xiao2021-11-161-1/+1
| | | | | | | | | | * Set unit test timeout to 15 minutes * Update Makefile Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
* Rename .air.conf to .air.toml (#17360)silverwind2021-10-201-1/+1
| | | | As of https://github.com/cosmtrek/air/pull/90, the preferred file extension is .toml. The file format was always toml itself.
* Use go1.16+ way of installing binaries (#17342)techknowlogick2021-10-171-6/+6
|
* Workaround coverage bug part 2 (#16906)zeripath2021-08-311-2/+2
| | | | | | | | | | | * Workaround coverage bug part 2 Just grep away bad lines from coverage files. Signed-off-by: Andrew Thornton <art27@cantab.net> * try again Signed-off-by: Andrew Thornton <art27@cantab.net>
* Prevent coverage break (#16887)zeripath2021-08-311-1/+3
| | | | | | | | | | | | | * Prevent coverage break There are repeated failures of our CI due to an intermittent issue with coverage.out finishing with a spurious `0` on a single line. This problem is very annoying and very hard to understand where it is coming from, therefore as the problem appears random and without clear cause we should just strip this line from our coverage. Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: 6543 <6543@obermui.de>
* Remove unused Fomantic sidebar module (#16853)silverwind2021-08-291-0/+1
| | | | | | | | | | | * Remove unused Fomantic sidebar module The [Sidebar](https://fomantic-ui.com/modules/sidebar.html) module seems currently unused (at least I can't find any reference to it in templates or js), so remove it from the Fomantic build. * remove useless minified fomantic build files * mark fomantic build files as being generated
* Enable race detector for CI (#1441)Mura Li2021-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Enable race detector by default Set RACE_ENABLED=0 to disable it when release * Disable race detector for release builds * use `true` * fix * debug issue * fix * verbose * clean * Fix wrong merge * Fix coverage merge Co-authored-by: Mura Li <typeless@users.noreply.github.com> Co-authored-by: 6543 <6543@obermui.de> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
* build with go1.17 (#16707)techknowlogick2021-08-171-1/+1
| | | Co-authored-by: Lauris BH <lauris@nix.lv>
* Restore Accessibility for Dropdown (#16576)zeripath2021-08-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Restore #10096/#8638 and re-fix #15172 This PR restores the vendored and patched dropdow from #8638. It however, abandons the calls to `click()` using instead the default dropdown click calls instead. This prevents the issue of the dropdown grabbing focus permanently however, this may have negative effects on the effect of focus on the dropdowns. Of note, the behaviour of the template selector dropdown on the repo creation page is slightly odd - I don't believe that this odd behaviour is caused by this PR but rather by the feed source for this. I suspect that the dropdown should be adding a delete button to its selection. Fix #15172 References: #7057 Signed-off-by: Andrew Thornton <art27@cantab.net> * leverage fomantic-build instead Signed-off-by: Andrew Thornton <art27@cantab.net> * as per jookia Signed-off-by: Andrew Thornton <art27@cantab.net>
* Upgrade to golang-jwt 3.2.2 (#16590)zeripath2021-08-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Upgrade to golang-jwt 3.2.2 Upgrade to the latest version of golang-jwt Signed-off-by: Andrew Thornton <art27@cantab.net> * Forcibly replace the 3.2.1 version of golang-jwt/jwt and increase minimum Go version Using go.mod we can forcibly replace the 3.2.1 version used by goth to 3.2.2. Further given golang-jwt/jwts stated policy of only supporting supported go versions we should just raise our minimal version of go to 1.16 for 1.16 as by time of release 1.15 will be out of support. Signed-off-by: Andrew Thornton <art27@cantab.net> * update minimal go required Signed-off-by: Andrew Thornton <art27@cantab.net> * update config.yaml Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: 6543 <6543@obermui.de>
* Prevent race in TestPersistableChannelQueue (#16468)zeripath2021-07-171-2/+2
| | | | | | | | | | | | | * Prevent race in TestPersistableChannelQueue A slight race has become apparent in the TestPersistableChannelQueue. This PR simply adds locking to prevent the race. * make print value of "$(GOTESTFLAGS)" on test-backend and unit-test-coverage Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: 6543 <6543@obermui.de>
* Fix source typos (#16374)luzpaz2021-07-081-1/+1
| | | | | | | | | | * Fix source typos Follow up to e0296b6a6 Found via `codespell -q 3 -S ./options/locale,./vendor -L ba,pullrequest,pullrequests,readby` * rm "ignore destory on `make misspell-check`" Co-authored-by: 6543 <6543@obermui.de>
* use "true" for RACE_ENABLED (#15261)65432021-06-021-3/+4
|
* fix get OS on some of the windows computers (#16007)BoYanZh2021-05-291-0/+3
|
* Add jest rootDir and test-frontend dependency (#15860)silverwind2021-05-141-1/+1
| | | | | - Define jest rootDir to limit where it looks for test files - Add missing dependency on test-frontend target so it can be ran from a clean checkout
* Use binary version of revive linter (#15739)silverwind2021-05-091-1/+4
| | | | Use the common `go get` method to install and run the revive linter, removing the useless build/lint.go and related vendor libraries.
* Make let target "clean-all" remove node_modules folder too (#15780)65432021-05-081-1/+1
| | | * Make let target "clean-all" remove node_modules folder too
* update branch in CI and docs (#15631)techknowlogick2021-05-041-1/+1
|
* Output node min version variable (#15562)Kyle D2021-04-211-1/+2
|
* Make build scripts compatible with node 12 (#15479)silverwind2021-04-151-2/+2
| | | | | | | | | | * Make build scripts compatible with node 12 "fs/promises" is not in node 12, use a more compatible way to import it. Also, lock major down versions of the image build dependencies to prevent future surprises. * add node_modules dependency
* Build go-git variants for windows (#15482)zeripath2021-04-151-0/+3
| | | | | | | | | | It appears that there are significant performance problems with the pure git backend on windows. Therefore until we can sort this out - provide go-git backend builds. Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
* Enforce tab indentation in templates (#15289)silverwind2021-04-101-0/+1
| | | | | | | | | | | | | | | | | | * Enforce tab indendation in templates This adds editorconfig-checker [1] to lint the template files so they conform the editorconfig files. I fixed all current identation issues using the fix mode of eclint [2] and some manual corrections. We can extend this linting to other files later, for now I'd like this PR to focus on HTML template files only. [1] https://github.com/editorconfig-checker/editorconfig-checker [2] https://github.com/jedmao/eclint * fix indendation Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
* Stop packaging node_modules in release tarballs (#15273)silverwind2021-04-091-48/+15
| | | | | | | | | | | | | | | | | - Don't package node_modules in tarballs, they are not cross-platform anymore and npm cache should not be messed with directly. Instead, require an internet connection to rebuild the UI, which is not necessary in the general use case because prebuilt UI files are shipped in the public directory. - Simplify the fomantic build and make the target phony. We don't need anything more for something that is rarely ran. - Use regular tar again to build tarballs and add variable for excludes - Disable annoying npm update notifications Fixes: https://github.com/go-gitea/gitea/pull/14578 Fixes: https://github.com/go-gitea/gitea/pull/15256 Fixes: https://github.com/go-gitea/gitea/pull/15262 Co-authored-by: 6543 <6543@obermui.de>
* Add frontend testing, require node 12 (#15315)silverwind2021-04-081-4/+14
| | | | | | | | | | - Add basic frontend unit testing infrastructure using jest in ESM mode - Rename 'make test' to 'make test-backend' - Introduce 'make test-frontend' and 'make test' that runs both - Bump Node.js requirement to v12. v10 will be EOL in less than a month. - Convert all build-related JS files to ESM. I opted to run frontend tests run as part of the compliance pipeline because they complete fast and are not platform-specific like the golang tests.
* Fix release expansion issue (#15251)zeripath2021-04-021-2/+2
| | | | | | | | | | | | | | | | | | | | | * Fix release expansion issue Fix #14578 Signed-off-by: Andrew Thornton <art27@cantab.net> * fix cache statement too Signed-off-by: Andrew Thornton <art27@cantab.net> * and update the npmrcs Signed-off-by: Andrew Thornton <art27@cantab.net> * as per @silverwind Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: silverwind <me@silverwind.io>
* Introduce esbuild on webpack (#14578)Lunny Xiao2021-04-021-12/+43
| | | | | | | | | | | | | | | * Vendor node mods as cache; fix esbuild/fomantic offline build * Fix --exclude; use bsdtar for consistent globbing * Fall back to GNU tar; forward-compatible for APT 2.0 * Avoid having extd. attrs with bsdtar * Dependency and misc. optimizations * Remove extra code after esbuild-loader update Co-authored-by: Mike L <cl.jeremy@qq.com>
* Create Proper Migration Tests (#15116)zeripath2021-03-241-6/+31
| | | | | | | | | | | | | | * Create Proper Migration tests Unfortunately our testing regime has so far meant that migrations do not get proper testing. This PR begins the process of creating migration tests for this. * Add test for v176 * fix mssql drop db Signed-off-by: Andrew Thornton <art27@cantab.net>
* Prevent incorrect HTML escaping in swagger.json (#14957)zeripath2021-03-111-2/+2
| | | | | | | | | | | | | | | | | | * Prevent incorrect HTML escaping in swagger.json Fix #14706 Signed-off-by: Andrew Thornton <art27@cantab.net> * oops add it to the helper Signed-off-by: Andrew Thornton <art27@cantab.net> * try again Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: 6543 <6543@obermui.de> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
* build darwin on arm64 platforms (#14951)techknowlogick2021-03-101-1/+1
| | | fix #14945
* use gomod support w/ xgo (#14836)techknowlogick2021-03-011-6/+6
|
* go1.16 (#14783)techknowlogick2021-02-281-2/+2
|