59 Commits

Author SHA1 Message Date
ᴜɴᴋɴᴡᴏɴ
4ecd588776
db: fix wrong column type of login_source (#6283) 2020-08-27 14:29:03 +08:00
Kosadchiy
a02b3e1258
issue: fix timestamp updating (#6210)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-08-24 19:06:29 +08:00
ᴜɴᴋɴᴡᴏɴ
3ed8c292c2
migrations: remove old migrations before 0.12.0 (#6270) 2020-08-23 12:51:55 +08:00
ᴜɴᴋɴᴡᴏɴ
f3993b9cdb
organization: limit showing at most 12 members in profile page (#6254) 2020-08-17 21:09:22 +08:00
ᴜɴᴋɴᴡᴏɴ
a961afe52b
db: fix update team panic (#6253)
* db: fix update team panic

* Update CHANGELOG
2020-08-16 21:31:08 +08:00
ᴜɴᴋɴᴡᴏɴ
9fd4f5562d
all: use semver to compare versions (#6147) 2020-05-04 18:48:23 +08:00
ᴜɴᴋɴᴡᴏɴ
9bb218734c
db: use GORM to backup and restore non-legacy tables (#6142) 2020-05-04 16:25:57 +08:00
Kousik Mitra
5a52ee75e3
db: remove db.User.LoginType field (#6122) 2020-04-19 04:32:53 +08:00
ᴜɴᴋɴᴡᴏɴ
c0fd6042fd
test: remove the use of goconvey (#6123) 2020-04-19 04:24:08 +08:00
ᴜɴᴋɴᴡᴏɴ
9d64d222a8
db: add tests for users (#6116)
* Add new methods

* Use Users.Create to replace previous hack

* Reduce side effect

* Do not clear tables when test failed

* test_users_Authenticate

* Rename constant

* test_users_Create

* test_users_GetByEmail

* test_users_GetByID

* test_users_GetByUsername
2020-04-18 12:07:30 +08:00
ᴜɴᴋɴᴡᴏɴ
fa497b1633
db: add tests for repos (#6112)
* Add Repos.create method

* Fix repo name error handling

* Fix all compile errors

* Update github.com/go-macaron/captcha to fix http issue

* Add repos tests
2020-04-17 10:14:18 +08:00
ᴜɴᴋɴᴡᴏɴ
cdafe21661
db: add tests for loginSourceFiles (#6102) 2020-04-15 05:52:30 +08:00
ᴜɴᴋɴᴡᴏɴ
844d2f49ce
db: use GORM bulk insert helper (#6100)
* Bulk insert permissions

* Bulk insert recovery codes

* Remove unnecessary import rename
2020-04-14 10:03:30 +08:00
ᴜɴᴋɴᴡᴏɴ
cb439a126a
db: add tests for two factors (#6099)
* Rename to TwoFactors.Create

* Use GORM to execute queries

* TwoFactor.GetByUserID

* Add tests

* Fix failing tests

* Add MD5 tests

* Add tests for RandomChars
2020-04-14 09:41:54 +08:00
ᴜɴᴋɴᴡᴏɴ
ae107b2e6e
db: only use AutoMigrate to create new tables (#6092)
* Only use AutoMigrate to create new tables

* Revert models.go
2020-04-11 23:45:06 +08:00
ᴜɴᴋɴᴡᴏɴ
41f56ad05d
login_source: migrate to GORM and add tests (#6090)
* Use GORM in all write paths

* Migrate to GORM

* Fix lint errors

* Use GORM  to init table

* dbutil: make writer detect error

* Add more tests

* Rename to clearTables

* db: finish adding tests

* osutil: add tests

* Fix load source files path
2020-04-11 20:18:05 +08:00
ᴜɴᴋɴᴡᴏɴ
76bb647d24
db: add tests for permissions (#6088)
* Add flag to print SQLs

* Add tests for perms

* Make results stable

* codecov: only show diff

* Once again, stable find results
2020-04-11 05:39:45 +08:00
ᴜɴᴋɴᴡᴏɴ
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
☃ 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
ᴜɴᴋɴᴡᴏɴ
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
ᴜɴᴋɴᴡᴏɴ
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
Philidor Green
470274204e
api: support get releases endpoint (#6026) 2020-03-28 21:56:11 +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
ᴜɴᴋɴᴡᴏɴ
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
ᴜɴᴋɴᴡᴏɴ
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
ᴜɴᴋɴᴡᴏɴ
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
ᴜɴᴋɴᴡᴏɴ
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
ᴜɴᴋɴᴡᴏɴ
047bf94908
ci: enable go vet check (#5981)
* ci: enable go vet check

* Improve .travis.yml
2020-03-11 00:30:51 +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
ᴜɴᴋɴᴡᴏɴ
f04b2d4350
lint: fix some Golang CI lint issues (#5955) 2020-03-01 14:55:03 +08:00
ᴜɴᴋɴᴡᴏɴ
18e45aab98
template: improve admin config page 2020-03-01 03:21:13 +08:00
ᴜɴᴋɴᴡᴏɴ
17ae0ed3ee
conf: overhaul settings (#5953)
* Overhaul cache settings

* Overhaul HTTP settings

* conf: overhaul more settings

* log: make LGTM happy

* travis: upload report to Codecov

* Add codecov.yml
2020-02-29 16:29:17 +08:00
ᴜɴᴋɴᴡᴏɴ
7950f2d17d
conf: overhaul auth and user settings (#5942)
* conf: overhaul auth and user settings

* ci: update travis Go versions
2020-02-27 18:06:38 +08:00
ᴜɴᴋɴᴡᴏɴ
52ffb67b33
conf: overhaul email settings (#5940) 2020-02-25 00:35:35 +08:00
ᴜɴᴋɴᴡᴏɴ
286fbc07e9
conf: overhaul security settings 2020-02-22 20:46:16 +08:00
ᴜɴᴋɴᴡᴏɴ
5efbde4fe9
conf: overhaul database settings 2020-02-22 18:58:16 +08:00
ᴜɴᴋɴᴡᴏɴ
c4a0a40473
conf: overhaul repository settings (#5932) 2020-02-22 15:22:32 +08:00
ᴜɴᴋɴᴡᴏɴ
648d9e253c
conf: overhaul server settings (#5928)
* conf: rename package

* Requires Go 1.12

* Fix lint

* Fix lint

* Overhaul

* db: fix tests

* Save my work

* Fix tests

* Server.UnixSocketPermission

* Server.LocalRootURL

* SSH settings

* Server.OfflineMode

* Save my work

* App.Version

* Remove [server] STATIC_ROOT_PATH

* Server.LandingURL
2020-02-22 09:05:26 +08:00
ᴜɴᴋɴᴡᴏɴ
1c09373b4f
log: migrate to unknwon.dev/clog/v2 (#5927)
* Add unknwon.dev/clog/v2

* Update all places
2020-02-20 02:25:02 +08:00
ᴜɴᴋɴᴡᴏɴ
e82c96dab1
log: use trace level for some logs 2020-02-19 17:33:45 +08:00