Commit Graph

115 Commits

Author SHA1 Message Date
ᴜɴᴋɴᴡᴏɴ
e077ecdd9d db: add tests for LFS (#6087)
* Improve DB test setup

* Discard GORM logs in non-verbose mode

* Add tests to lfs

* Fix data race
2020-04-11 02:56:37 +08:00
ᴜɴᴋɴᴡᴏɴ
62dda96159 access_token: migrate to GORM and add tests (#6086)
* access_token: migrate to GORM

* Add tests

* Fix tests

* Fix test clock
2020-04-11 01:25:19 +08:00
ᴜɴᴋɴᴡᴏɴ
e186a3d2c9 db: add tests for helper functions (#6084) 2020-04-10 22:51:24 +08:00
ᴜɴᴋɴᴡᴏɴ
9a5b227f3e lfsutil: add Storager interface and local storage (#6083)
* Add Storager interface

* Add tests

* Add back note

* Add tests for basic protocol routes

* Fix lint errors
2020-04-10 22:13:42 +08:00
alpencrossi
3e055e329c repo: disable public access option when using external wiki and issue tracker (#6081) 2020-04-09 04:13:50 +08:00
ᴜɴᴋɴᴡᴏɴ
e79aebb3e1 route: bypass require signin check for trigger repo tasks (#6079)
* route: bypass require signin check for trigger repo tasks

* CHANGELOG

* Fix lint errors
2020-04-08 20:55:15 +08:00
☃ Stephen Shkardoon ☃
4ebdcb719a db: include the Team ID in the error message (#6056)
This means that when using the API to create a new team, the output
contains the existing team ID, not just the name.
While there may be the thought that this reveals sensitive
information, it is never the case that a user can create or update
a team without permission to view the teams in the first place.
2020-04-07 03:03:22 +08:00
ᴜɴᴋɴᴡᴏɴ
571be84e26 db: handle JSON conversion for LoginSource (#6075) 2020-04-07 00:29:27 +08:00
ᴜɴᴋɴᴡᴏɴ
2b3655fa11 lfs: add tests to batch endpoint (#6073) 2020-04-06 23:53:55 +08:00
ᴜɴᴋɴᴡᴏɴ
ca2f7a7e16 repo: delete rows in lfs_object table when delete repo (#6072) 2020-04-06 18:44:06 +08:00
ᴜɴᴋɴᴡᴏɴ
ee0ea2c5fc lfs: add unit test for middleware (#6070)
* Add unit test for `authenticate` middleware

* Add more cases

* Add tests for verifyOID and internalServerError

* Add tests for verifyHeader

* Add tests for authroize
2020-04-06 18:35:10 +08:00
ᴜɴᴋɴᴡᴏɴ
4d7db6e1c1 locale: sync from Crowdin (#6071) 2020-04-06 16:23:46 +08:00
ᴜɴᴋɴᴡᴏɴ
559af54e66 build: require Go 1.14 for using t.Cleanup (#6069) 2020-04-06 15:15:03 +08:00
alpencrossi
083ecb7244 conf: clearer doc comments for mirror config options (#6058)
* conf: clearer doc comments for mirror config options

* conf: apply suggestions from code review

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* conf: clearer doc comments for mirror config options - added bindata

Co-authored-by: Gogs <gogs@fake.local>
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
Co-authored-by: gkuehn001 <gkuehn@gmail.com>
2020-04-06 14:48:25 +08:00
ᴜɴᴋɴᴡᴏɴ
07818d5fa5 route: no session for routes without UI (#6066)
Not all routes need session, register session and CSRF middleware as global is a waste of resource, and creating a lot one-time off yet never used session records.
2020-04-05 06:36:08 +08:00
ᴜɴᴋɴᴡᴏɴ
bae1d6ccd8 lfs: only remove file on io error (#6062) 2020-04-05 01:29:51 +08:00
ᴜɴᴋɴᴡᴏɴ
3a5c93eeff db: use gorm function to check ErrRecordNotFound (#6060) 2020-04-05 00:56:31 +08:00
ᴜɴᴋɴᴡᴏɴ
4aff4d66ec lfs: support upload retry (#6061) 2020-04-05 00:45:08 +08:00
ᴜɴᴋɴᴡᴏɴ
53b91ef306 lfs: run e2e and fix minor issues (#6059) 2020-04-05 00:14:22 +08:00
ᴜɴᴋɴᴡᴏɴ
34145c990d lfs: implement HTTP routes (#6035)
* Bootstrap with GORM

* Fix lint error

* Set conn max lifetime to one minute

* Fallback to use gorm v1

* Define HTTP routes

* Finish authentication

* Save token updated

* Add docstring

* Finish authorization

* serveBatch rundown

* Define types in lfsutil

* Finish Batch

* authutil

* Finish basic

* Formalize response error

* Fix lint errors

* authutil: add tests

* dbutil: add tests

* lfsutil: add tests

* strutil: add tests

* Formalize 401 response
2020-04-04 21:14:15 +08:00
ᴜɴᴋɴᴡᴏɴ
72111e698e template: better diff handling of rename and deleted files (#6048)
* dep: bump github.com/gogs/git-module from 1.0.2 to 1.1.0

* template: better diff handling or rename and deleted files
2020-03-31 04:50:59 +08:00
ᴜɴᴋɴᴡᴏɴ
dce70fe6d1 locale: sync from Crowdin (#6046) 2020-03-30 01:14:18 +08:00
ᴜɴᴋɴᴡᴏɴ
4cbb43b860 gitutil: simplify mock with t.Cleanup (#6033)
* gitutil: simplify mock with t.Cleanup

* Scope mock to tests only
2020-03-29 20:15:42 +08:00
ᴜɴᴋɴᴡᴏɴ
933206f1fe gitutil: refactor the way to mock (#6032)
* Refactor the mock module store

* Only test on 1.14.x
2020-03-29 19:37:28 +08:00
ᴜɴᴋɴᴡᴏɴ
a0651b62a7 dep: bump github.com/gogs/git-module from 1.0.1 to 1.0.2 (#6030) 2020-03-29 15:24:10 +08:00
Philidor Green
470274204e api: support get releases endpoint (#6026) 2020-03-28 21:56:11 +08:00
ᴜɴᴋɴᴡᴏɴ
af0cfe112b web: rename CSRF header (#6027) 2020-03-28 19:17:15 +08:00
ᴜɴᴋɴᴡᴏɴ
a9dcf4ce74 github: use Actions for CI (#6022)
* Update golint.yml

* Update README.md

* Update README.md

* Update golint.yml

* Update golint.yml

* Rename golint.yml to go.yml

* Update go.yml

* Update go.yml

* Update go.yml

* Improve tests on Windows

* Delete files
2020-03-27 22:06:29 +08:00
ᴜɴᴋɴᴡᴏɴ
14cd16f1f8 csrf: set cookie HttpOnly and Secure (#6013) 2020-03-27 00:08:46 +08:00
Philidor Green
87053c5369 cmd: backup support exclude mirror repositories (#6003)
* cmd: backup support exclude mirror repositories

* Apply suggestions from code review

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-03-24 22:03:05 +08:00
ᴜɴᴋɴᴡᴏɴ
e14b6abf9d http: always set header X-Content-Type-Options to nosniff (#6008) 2020-03-23 22:18:05 +08:00
ᴜɴᴋɴᴡᴏɴ
740f814ce0 locale: sync from Crowdin (#6006) 2020-03-23 02:13:05 +08:00
ᴜɴᴋɴᴡᴏɴ
22717a1c06 webhook: overhaul route handlers (#6002)
* Overual route handlers and fixes #5366

* Merge routes for repo and org

* Inject OrgRepoContext

* DRY validateWebhook

* DRY c.HasError

* Add tests

* Update CHANGELOG
2020-03-22 22:07:22 +08:00
ᴜɴᴋɴᴡᴏɴ
82e511ddb1 cmd: init logging before SetEngine (#6001) 2020-03-22 14:11:52 +08:00
ᴜɴᴋɴᴡᴏɴ
5843038a08 workflows: enable golangci-lint (#5998)
* Create golint.yml

* Update golint.yml

* Update golint.yml

* Fix errcheck

* Fix gosimple

* Fix staticcheck
2020-03-21 13:39:32 +08:00
ᴜɴᴋɴᴡᴏɴ
958d8b6bb4 admin: use POST to run operations (#5997)
* admin: use POST to run operations

Fixed CSRF reported by Wenxu Wu of Tencent's Xuanwu Lab.

* Update CHANGELOG
2020-03-21 11:47:42 +08:00
ᴜɴᴋɴᴡᴏɴ
a43fc9ad17 ipynb: sanitize rendered HTML (#5996)
* ipynb: sanitize rendered HTML

Fixes #5170

* Remove hardcode URL

* Add tests
2020-03-21 00:12:38 +08:00
ᴜɴᴋɴᴡᴏɴ
c69a38652d locale: sync from Crowdin (#5991) 2020-03-16 13:57:46 +08:00
ᴜɴᴋɴᴡᴏɴ
a4de85dc80 util: add tests (#5989) 2020-03-16 01:54:08 +08:00
ᴜɴᴋɴᴡᴏɴ
9e9ca66467 refactor: unify error handling in routing layer 2020-03-16 01:22:27 +08:00
ᴜɴᴋɴᴡᴏɴ
82ff0c5852 email: check the owner when set as primary (#5988)
* email: check the owner when set as primary

Fixes a security issue reported by muxishuihan.

* Update CHANGELOG
2020-03-15 18:58:56 +08:00
ᴜɴᴋɴᴡᴏɴ
328c23c5d4 public: make lessc compile minimize CSS (#5987) 2020-03-15 03:47:07 +08:00
Bharat Nallan
268c692efd api: group "/contents" with "" and "/*" #5985 (#5986)
This PR groups the contents api endpoint with both `""` and `/*` as
valid URL patterns.

When `""` is the URL pattern, this means that no repo path has'nt been
provided, in which case the path would be the default repo path.

When  `"/*"` is the URL pattern, then this would return the contents at
the specified path if it's valid.

Github API v3 is conformant to this behavior and have verified it
locally.
2020-03-13 22:37:42 +08:00
ᴜɴᴋɴᴡᴏɴ
927ffef864 api: minor changes to /repo/owner/repo/git/trees (#5982) 2020-03-11 01:28:26 +08:00
ᴜɴᴋɴᴡᴏɴ
047bf94908 ci: enable go vet check (#5981)
* ci: enable go vet check

* Improve .travis.yml
2020-03-11 00:30:51 +08:00
ᴜɴᴋɴᴡᴏɴ
880d0ec19f api: overhaul /repos/owner/repos/contents (#5980)
* Fix import path renaming

* api: overhaul /repos/owner/repos/contents
2020-03-10 22:15:55 +08:00
ᴜɴᴋɴᴡᴏɴ
2430612ad4 templates: fix not able to upload issue attachments (#5978) 2020-03-10 01:33:16 +08:00
ᴜɴᴋɴᴡᴏɴ
e87f1107ca commit: fix unexpected truncation in title
The commit message should not be treated as locale at all.
2020-03-09 02:08:53 +08:00
ᴜɴᴋɴᴡᴏɴ
bebaf4c112 diff: remove misaligned space 2020-03-09 02:06:45 +08:00
ᴜɴᴋɴᴡᴏɴ
6437d0180b git: migrate to github.com/gogs/git-module@v1.0.0 (#5958)
* WIP

* Finish `internal/db/git_diff.go`

* FInish internal/db/mirror.go

* Finish internal/db/pull.go

* Finish internal/db/release.go

* Finish internal/db/repo.go

* Finish internal/db/repo_branch.go

* Finish internal/db/repo_editor.go

* Finish internal/db/update.go

* Save my work

* Add license header

* Compile!

* Merge master

* Finish internal/cmd/hook.go

* Finish internal/conf/static.go

* Finish internal/context/repo.go

* Finish internal/db/action.go

* Finish internal/db/git_diff.go

* Fix submodule URL inferring

* Finish internal/db/mirror.go

* Updat to beta.4

* css: update fonts

* Finish internal/db/pull.go

* Finish internal/db/release.go

* Finish internal/db/repo_branch.go

* Finish internal/db/wiki.go

* gitutil: enhance infer submodule UR

* Finish internal/route/api/v1/repo/commits.go

* mirror: only collect branch commits after sync

* mirror: fix tag support

* Finish internal/db/repo.go

* Finish internal/db/repo_editor.go

* Finish internal/db/update.go

* Finish internal/gitutil/pull_request.go

* Make it compile

* Finish internal/route/repo/setting.go

* Finish internal/route/repo/branch.go

* Finish internal/route/api/v1/repo/file.go

* Finish internal/route/repo/download.go

* Finish internal/route/repo/editor.go

* Use helper

* Finish internal/route/repo/issue.go

* Finish internal/route/repo/pull.go

* Finish internal/route/repo/release.go

* Finish internal/route/repo/repo.go

* Finish internal/route/repo/wiki.go

* Finish internal/route/repo/commit.go

* Finish internal/route/repo/view.go

* Finish internal/gitutil/tag.go

* go.sum
2020-03-08 19:09:31 +08:00