Compare commits

..

902 Commits

Author SHA1 Message Date
9619ccf0e5 Changelog for 1.10.0 (#8978)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-11-14 00:09:58 -05:00
023ae3c48c Hotfix for review actions and notifications (#8965) 2019-11-14 00:38:12 +00:00
3227a11f71 Backport 1.9.6 (#8969)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-11-13 21:31:27 +00:00
3497efac4a Add Close() method to gogitRepository (#8901) (#8956)
Backport #8901 

In investigating #7947 it has become clear that the storage component of go-git repositories needs closing.

This PR adds this Close function and adds the Close functions as necessary.

In TransferOwnership the ctx.Repo.GitRepo is closed if it is open to help prevent the risk of multiple open files.

Fixes #7947
2019-11-13 13:54:04 +00:00
43fc99a7ed Update Github Migration Tests (#8938) (#8945)
Update all Github migration tests to use a new repo created just for
these tests that won't accidentially be modified by regular users
interacting with issues.

Fixes #8895
2019-11-13 00:15:57 -05:00
8693e54426 Backport: Enable punctuations ending mentions (#8889) (#8894)
* Enable punctuations ending mentions

* Improve tests
2019-11-09 20:24:59 -05:00
b27cac021f Fix issue with user.fullname (#8903) 2019-11-10 00:06:38 +00:00
ca69ded83e Update Github migration test (#8896)
Earlier today #716 was reopened which updated the modification time for
an old milestone (1.6.0) that we use in testing with the assumption that
it is old and won't change. This breaks all builds now, so remove this
test since we have others that test the same code and this milestone
will likely be updated again as that issue changes etc...
2019-11-09 15:15:36 -05:00
fbcf235633 Backport: Fix password complexity check on registration (#8887) (#8888)
* Fix registration password complexity

* Fix integration to use a complex password ;)
2019-11-09 11:52:54 +00:00
1275c88589 Backport: Fix require external registration password (#8885) (#8890)
* Fix require external registration password

* Fix ctx on error condition by @jolheiser
2019-11-09 08:30:24 +00:00
42d0efd1f3 Fix edit content button on migrated issue content (#8877) (#8884)
Typo on a closing span tag caused edit button not to work properly on
the original issue content for a migrated issue.

Fixes #8876
2019-11-08 23:43:51 +08:00
68b7f9f3f7 Fix to close opened io resources as soon as not needed (#8839) (#8846)
* Fix to close opened io resources as soon as not needed

* Remove unneeded err checks
2019-11-05 22:14:56 +02:00
26457782c1 Fix new user form for non-local users (#8826) (#8828) 2019-11-05 08:19:32 +08:00
1c65ecc1c6 Fix commit expand button to not go to commit link (#8745) (#8825)
* Fix commit expand button to not go to commit link

* Fix message rendering to have correct HTML in result

* Fix check for empty commit message

* Code optimization
2019-11-04 20:59:17 +02:00
c5e5063ec9 Fix SSH2 conditonal in key parsing code (#8806) (#8810)
Avoid out of bounds error by using strings.HasPrefix to check for
starting SSH2 text rather than assuming user input has at least 31
characters.

Add tests for bad input as well.

Fixes #8800
2019-11-03 22:51:32 +08:00
b040a87665 add missing "d" (#8801) 2019-11-03 11:13:38 +08:00
2236375d66 fix 500 when edit hook (#8782) (#8789) 2019-11-02 18:41:06 +02:00
646fd8b570 On windows set core.longpaths true (#8776) (#8786) 2019-11-02 12:25:13 +01:00
4dac8b2389 Allow to merge if file path contains " or \ (#8629) (#8771)
* if a filename in a repository contains " or \ the owner can't merge pull request with this files
because "git diff-tree" adds double quotes to that filepath
example: filepath is ab"cd but "git diff-tree" returns "ab\"cd"

now, when the owner click "Merge Pull Request" button the server returns 500
this commit fix it

Signed-off-by: Ilya Pavlov <ilux@cpan.org>

* add -z option to getDiffTree
escape spec symbols for sparse-checkout

Signed-off-by: Ilya Pavlov <ilux@cpan.org>

* go fmt

Signed-off-by: Ilya Pavlov <ilux@cpan.org>

* typo

Signed-off-by: Ilya Pavlov <ilux@cpan.org>

* escape '\'
escape all spaces and '!'

* use regexp.ReplaceAllString()

Signed-off-by: Ilya Pavlov <ilux@cpan.org>

* strings.ReplaceAll was added in go 1.12

Signed-off-by: Ilya Pavlov <ilux@cpan.org>

* add '\' to regexp.MustCompile

Signed-off-by: Ilya Pavlov <ilux@cpan.org>
2019-11-01 13:50:59 -04:00
3341aaf3f0 Changelog 1.9.5 (#8753) (#8756)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-10-30 20:34:13 +00:00
e766f11bd3 Changelog 1.10.0-rc2 (#8750)
* 1.10.0-rc2

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Wording

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Update CHANGELOG.md

Co-Authored-By: jaqra <48099350+jaqra@users.noreply.github.com>
2019-10-30 19:27:52 +02:00
432f9dd1a3 [Fix] milestone close timestamp (#8728) (#8730)
* BugFix: Update closed_date_unix colum on milestone table on close

* go fmt
2019-10-29 03:11:24 +00:00
8caf05989f Fix deadline on update issue or PR via API (#8698) 2019-10-28 01:36:59 +02:00
9bde52ffc1 Fix 500 when getting user as unauthenticated user (#8653) (#8663)
Backport #8653

When doing GET /api/v1/users/{user} as an unauthenticated user,
gitea throws a 500 because it's trying to dereference elements
from the context user. It wants to do this to see whether to
show the primary email and will do that if the logged in user
is admin or the user in question. However, if ctx.User is nil there is a panic
2019-10-25 13:09:15 +01:00
fa03af8456 make call createMilestoneComment on newIssue func (#8678) (#8681)
* make call createMilestoneComment on newIssue func

* make OldMilestoneID 0 instead of -1
2019-10-25 11:09:19 +01:00
14ebda6fd5 Hide some user information via API if user have no enough permission (#8655) (#8657)
* Hide some user information via API if user have no enough permission

* fix test
2019-10-24 08:59:53 +03:00
1d10747514 Use AppSubUrl for more redirections (#8647) (#8651)
Partial backport without changes to locale files.

Fix #8461 - fix misspelling of {{AppSubUrl}} and other misspelling in template
Fixes /explore and organisation redirection
2019-10-23 18:27:10 -04:00
83c90e9ba0 Add SubURL to redirect path (#8632) (#8634)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-10-22 22:16:20 +01:00
2fbd5ae2e5 Fix template error on account page (#8562) (#8622) 2019-10-22 10:08:59 +01:00
0032278a46 Allow externalID to be UUID (#8551) (#8624)
Signed-off-by: Wenxuan Zhao <viz@linux.com>
2019-10-22 09:12:10 +01:00
ccf5298a2c Prevent .code-view from overriding font on icon fonts (#8614) (#8627) 2019-10-22 14:39:40 +08:00
ece768ab6e Expose db.SetMaxOpenConns and allow non MySQL dbs to set conn pool params (#8528) (#8618)
* Expose db.SetMaxOpenConns and allow other dbs to set their connection params
* Add note about port exhaustion

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>
2019-10-22 07:00:37 +01:00
bac9424a62 fix emoji panel be removed bug in issue page, when the sub issue summit the duplicate emoji (#8609) (#8623) 2019-10-22 02:17:25 +03:00
afeab941b3 Update heatmap fixtures to restore tests (#8615) (#8616)
* Update heatmap fixtures to restore tests
* Add hint to check the fixture age on fail
2019-10-21 22:15:55 +01:00
cf35355db8 Ensure that diff stats can scroll independently of the diff (#8581) (#8611)
This PR ensures that once opened the diff stats detail box can be scrolled independently of the diff on the compare page.

Fixes #5532 

Details:

* make diff-detail-box the main container
* move file diff at the same level as diff-stats
* make diff-view options sticy again
* make diff-stats scroll if to mouch
* rm useless css info
* less: mv diff-stats to own class
* use new css class
* cleanup less file
* diff-counter: margin-right: 15px;
* make CI work
* make numbers colorful
* add sign (-/+) to numbers
2019-10-21 16:53:34 +08:00
8e9265c402 webhook: set Content-Type for application/x-www-form-urlencoded (#8600)
This header is missing since switching http client from GiteaServer (`code.gitea.io/gitea/modules/httplib`) to Go-http-client/1.1 (`net.http`). The header [was added by default](https://github.com/go-gitea/gitea/blob/release/v1.8/modules/httplib/httplib.go#L301) by the former, but this is no longer true with `net.http`, so it needs to be done explicitly.

Closes: #7700
2019-10-20 18:18:05 +01:00
435ce92935 Fix #8582 by handling empty repos (#8587) (#8594)
* Fix #8582 by handling empty repos

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Fix tests

Signed-off-by: Jonas Franz <info@jonasfranz.software>
2019-10-19 21:35:22 +01:00
22cea96c18 Fix bug on pull requests when transfer head repository (#8564) (#8569)
* fix bug on pull requests when transfer head repository

* add migration and fix lint

* fix tests and add a cache check on LoadBaseRepo
2019-10-19 08:29:35 +01:00
7565ac02c2 Allow more than 255 characters for tokens in external_login_user tabl… (#8585)
* Allow more than 255 characters for tokens in external_login_user table (#8554)

Signed-off-by: Wenxuan Zhao <viz@linux.com>

* use old xorm repo
2019-10-19 12:54:09 +08:00
4e85c8e0d8 Add missed close in ServeBlobLFS (#8527) (#8542) 2019-10-16 20:32:15 +01:00
34b8becef0 Ensure that GitRepo is set on Empty repositories (#8539) (#8541)
Both issues/new and settings/hooks/git expect `ctx.Repo.GitRepo` to be set.
This PR changes the context code to open the GitRepo.

Fixes #8538
2019-10-17 00:03:25 +08:00
0752a3895a Fix migrate mirror 500 bug (#8526) (#8530)
* fix migrate mirror 500 bug

* update backport
2019-10-16 10:48:45 +01:00
595033f78e Fix password complexity regex for special characters (backport for v1.10.0) (#8524)
* Fix extra space

* Fix regular expression

* Fix error template name

* Simplify check code, fix default values, add test

* Fix router tests

* Fix fmt

* Fix setting and lint

* Move cleaning up code to test, improve comments

* Tidy up variable declaration
2019-10-16 11:09:27 +08:00
db0d4ffdc7 Changelog for 1.10.0-RC1 (#8510)
* Changelog for 1.10.0
* clean up | remove TESTING and DOCS sction | short BUILD section

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>
Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>
Co-Authored-By: zeripath <art27@cantab.net>
2019-10-14 20:34:21 +01:00
366806db32 Fix errors in create org UI regarding team access permission. (#8506) 2019-10-14 19:20:42 +01:00
54c137b373 [skip ci] Updated translations via Crowdin 2019-10-14 17:46:01 +00:00
eb8975dcce Add nofollow to sign in links (#8509) 2019-10-14 18:43:48 +01:00
8c8a93c025 [skip ci] Updated translations via Crowdin 2019-10-14 15:45:33 +00:00
db657192d0 Password Complexity Checks (#6230)
Add password complexity checks. The default settings require a lowercase, uppercase, number and a special character within passwords.

Co-Authored-By: T-M-A <maxim.tkachenko@gmail.com>
Co-Authored-By: Lanre Adelowo <adelowomailbox@gmail.com>
Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>
Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-10-14 16:24:26 +01:00
f9aba9ba0f fix bug on FindExternalUsersByProvider (#8504) 2019-10-14 08:22:46 +01:00
e3e44a59d0 Update migrated repositories' issues/comments/prs poster id if user has a github external user saved (#7751)
* update migrated issues/comments when login as github

* add get userid when migrating or login with github oauth2

* fix lint

* add migrations for repository service type

* fix build

* remove unnecessary dependencies on migrations

* add cron task to update migrations poster ids and fix posterid when migrating

* fix lint

* fix lint

* improve code

* fix lint

* improve code

* replace releases publish id to actual author id

* fix import

* fix bug

* fix lint

* fix rawdata definition

* fix some bugs

* fix error message
2019-10-14 09:10:42 +03:00
ba201aaa44 vendor: update mvdan.cc/xurls/v2 to v2.1.0 (#8495) 2019-10-14 08:38:15 +08:00
15809d81f7 Rewrite reference processing code in preparation for opening/closing from comment references (#8261)
* Add a markdown stripper for mentions and xrefs

* Improve comments

* Small code simplification

* Move reference code to modules/references

* Fix typo

* Make MarkdownStripper return [][]byte

* Implement preliminary keywords parsing

* Add FIXME comment

* Fix comment

* make fmt

* Fix permissions check

* Fix text assumptions

* Fix imports

* Fix lint, fmt

* Fix unused import

* Add missing export comment

* Bypass revive on implemented interface

* Move mdstripper into its own package

* Support alphanumeric patterns

* Refactor FindAllMentions

* Move mentions test to references

* Parse mentions from reference package

* Refactor code to implement renderizable references

* Fix typo

* Move patterns and tests to the references package

* Fix nil reference

* Preliminary rendering attempt of closing keywords

* Normalize names, comments, general tidy-up

* Add CSS style for action keywords

* Fix permission for admin and owner

* Fix golangci-lint

* Fix golangci-lint
2019-10-13 23:29:10 +01:00
6e3f51098b Update seek-help.zh-cn.md (#8488)
Update link to Mandarin help forum
2019-10-13 22:36:09 +01:00
0c680f337d [skip ci] Updated translations via Crowdin 2019-10-13 20:23:11 +00:00
ba716705b5 Update seek-help.en-us.md (#8487)
Update link to Mandarin help
2019-10-13 21:07:30 +01:00
c23cf4c97c [skip ci] Updated translations via Crowdin 2019-10-13 16:31:19 +00:00
c888ebfba7 IsBranchExist: return false if provided name is empty (#8485)
* IsBranchExist: return false if provided name is empty

* Ensure that the reference returned is actually of a valid type
2019-10-13 19:29:08 +03:00
f858b89b13 [skip ci] Updated translations via Crowdin 2019-10-13 14:37:37 +00:00
300d9a1c70 Fixes #8369: Create .ssh dir as necessary (#8486)
* Ensure .ssh dir exists before rewriting public keys

* Ensure .ssh dir exists before appending to authorized_keys

* Log the error because it would be useful to know where it is trying to MkdirAll

* Only try to create RootPath if it's not empty
2019-10-13 17:35:19 +03:00
f2a3abc683 Move migrating repository from frontend to backend (#6200)
* move migrating to backend

* add loading image when migrating and fix tests

* fix format

* fix lint

* add redis task queue support and improve docs

* add redis vendor

* fix vet

* add database migrations and fix app.ini sample

* add comments for task section on app.ini.sample

* Update models/migrations/v84.go

Co-Authored-By: lunny <xiaolunwen@gmail.com>

* Update models/repo.go

Co-Authored-By: lunny <xiaolunwen@gmail.com>

* move migrating to backend

* add loading image when migrating and fix tests

* fix fmt

* add redis task queue support and improve docs

* fix fixtures

* fix fixtures

* fix duplicate function on index.js

* fix tests

* rename repository statuses

* check if repository is being create when SSH request

* fix lint

* fix template

* some improvements

* fix template

* unified migrate options

* fix lint

* fix loading page

* refactor

* When gitea restart, don't restart the running tasks because we may have servel gitea instances, that may break the migration

* fix js

* Update models/repo.go

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>

* Update docs/content/doc/advanced/config-cheat-sheet.en-us.md

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>

* fix tests

* rename ErrTaskIsNotExist to ErrTaskDoesNotExist

* delete release after add one on tests to make it run happy

* fix tests

* fix tests

* improve codes

* fix lint

* fix lint

* fix migrations
2019-10-13 21:23:14 +08:00
0a96e59884 Fix #8453 by making openssh listen on SSH_LISTEN_PORT not SSH_PORT (#8477) 2019-10-12 23:45:00 +08:00
f1fdd782d5 Add check for empty set when dropping indexes during migration (#8471)
* Add check for empty set when dropping indexes during migration
2019-10-12 05:55:07 +01:00
5e759b60cc Restore functionality for early gits (#7775)
* Change tests to make it possible to run TestGit with 1.7.2

* Make merge run on 1.7.2

* Fix tracking and staging branch name problem

* Ensure that git 1.7.2 works on tests

* ensure that there is no chance for conflicts

* Fix-up missing merge issues

* Final rm

* Ensure LFS filters run on the tests

* Do not sign commits from temp repo

* Restore tracking fetch change

* Apply suggestions from code review

* Update modules/repofiles/temp_repo.go
2019-10-12 08:13:27 +08:00
ac3613b791 [skip ci] Updated translations via Crowdin 2019-10-11 21:34:17 +00:00
772241b324 Latvian translation for home page (#8468) 2019-10-11 22:32:52 +01:00
633cd7f473 Add home template italian translation (#8352)
It was just missing
2019-10-11 13:04:59 -04:00
46a12f196b Move change issue title from models to issue service package (#8456)
* move change issue title from models to issue service package

* make the change less

* fix typo
2019-10-11 14:44:43 +08:00
9ff9f5ad1d Ensure that LFS files are relative to the LFS content path (#8455) 2019-10-10 17:08:33 -04:00
6551a9d6ca Ensure Request Body Readers are closed in LFS server (#8454) 2019-10-10 18:42:28 +01:00
df2c11a878 Ignore mentions for users with no access (#8395)
* Draft for ResolveMentionsByVisibility()

* Correct typo

* Resolve teams instead of orgs for mentions

* Create test for ResolveMentionsByVisibility

* Fix check for individual users and doer

* Test and fix team mentions

* Run all mentions through visibility filter

* Fix error check

* Simplify code, fix doer included in teams

* Simplify team id list build
2019-10-10 19:45:11 +03:00
57b0d9a38b Add @yasarciv67 to TRANSLATORS file (#8451) 2019-10-10 15:47:38 +02:00
7c1ddd5692 [skip ci] Updated translations via Crowdin 2019-10-10 12:44:06 +00:00
eac5a8be75 DOCS: add mention of swagger api reference (#8452)
It's(swagger api link) mentioned vaguely in the FAQ but IMHO missing from API usage page.
2019-10-10 08:42:01 -04:00
1fe81bc22e add crowdin badge (#8447) 2019-10-09 22:16:58 -04:00
628f9da0de Doc recommend to use reverse proxy if Apache/nginx is also running on… (#8384)
* Doc recommend to use reverse proxy if Apache/nginx is also running on server

* Update docs/content/doc/usage/https-support.md

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>
2019-10-10 00:11:25 +01:00
e270896a83 Doc updated list of supported webhooks and added example (#8388)
* Doc updated list of supported webhooks and added example

* Replaced webhook password verification by signature verification
2019-10-09 23:33:03 +01:00
5109d18b29 [skip ci] Updated translations via Crowdin 2019-10-09 19:02:21 +00:00
b6616591d1 Check for either escaped or unescaped wiki filenames (#8408)
* Check for either escaped or unescaped wiki filenames

+ Gitea currently saves wiki pages with escaped filenames.
+ Wikis mirrored from other places like Github use unescaped filenames.
+ We need to be checking for filenames in either format to increase compatibility.

* Better logic for escaped and unescaped wiki filenames

Co-Authored-By: null <guillep2k@users.noreply.github.com>
2019-10-09 21:49:37 +03:00
7ad46cc116 fix template bug on mirror repository setting page (#8438) 2019-10-09 21:09:02 +08:00
dd611c9a86 Fix migration v96 to keep issue attachments (#8435)
* Fix migration v96 to keep issue attachments

* Fix == operator
2019-10-09 17:36:53 +08:00
3810fa48ac [skip ci] Updated translations via Crowdin 2019-10-09 01:29:16 +00:00
a3612f9d35 Changelog for v1.9.4 (#8422) (#8433)
* changelog

* Update CHANGELOG.md

We ned to revert this then ...

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-10-09 03:27:45 +02:00
7408942c80 Update golangci to v1.20 (#8432)
* Update golangci to v1.20

Signed-off-by: kolaente <k@knt.li>

* Use the timeout flag instead of deadline, move it to config

Signed-off-by: kolaente <k@knt.li>
2019-10-08 16:42:30 -04:00
f05a3353f4 Update strk.kbt.io/projects/go/libravatar to latest; closes #7860 (#8429) 2019-10-08 15:48:57 -04:00
4fe04f1adc [skip ci] Updated translations via Crowdin 2019-10-08 19:20:34 +00:00
4843723d00 Allow users with explicit read access to give approvals (#8382) 2019-10-08 15:18:17 -04:00
736ad8f091 [skip ci] Updated translations via Crowdin 2019-10-08 18:23:11 +00:00
170743c8a0 Revert "Fix issues/pr list broken when there are many repositories (#8409)" (#8427)
This reverts commit 78438d310be42f9c5e0e2937ee54e6050cc8f381.
2019-10-08 20:55:16 +03:00
78438d310b Fix issues/pr list broken when there are many repositories (#8409)
* fix issues/pr list broken when there are many repositories

* remove unused codes

* fix counting error on issues/prs

* keep the old logic

* fix panic

* fix tests
2019-10-08 10:57:41 +08:00
1a269f7ef8 add 6543 to maintainers (#8417) 2019-10-07 22:03:44 -04:00
28d5347cf3 Singular form for files that has only one line (#8416) 2019-10-07 19:38:41 -04:00
662a40ea29 Update milestone issues numbers when save milestone and other code improvements (#8411)
* update milestone issues numbers when save milestone and other code improvements

* fix tests

* extract duplicate codes as a new function
2019-10-08 00:44:58 +03:00
1b96c4a471 Fix backers badge (#8399) 2019-10-07 22:51:54 +03:00
af6cc5b9d8 [skip ci] Updated translations via Crowdin 2019-10-07 17:24:26 +00:00
249dbbe0bc Update golangci to v1.19.1 (#8414)
Signed-off-by: kolaente <k@knt.li>
2019-10-07 13:22:35 -04:00
356e1a70ea Reduce test sensibility (#8393) 2019-10-07 01:49:14 -04:00
08896cd9f6 add file line count info on UI (#8396)
Also reworked the header to remove the filename (which is redundant with
the file path above) and made the header a flexbox with a monospace
font.

Fixes: https://github.com/go-gitea/gitea/issues/8170
2019-10-07 00:59:17 -04:00
51fade4c44 Fix milestone num_issues (#8221)
* fix milestone num_issues

* update missing completeness

* only update milestone closed number when closed issue is assigned a new milestone or clear milestone

* fix tests

* fix update milestone num

* fix completeness calculate

* make completeness calucation more clear
2019-10-06 17:26:19 -04:00
bc5a479fef Add unix socket help (#8377)
When using unix socket as listener (`HTTP_ADDR = /run/gitea/gitea.socket`) then it's required to have the folder `/run/gitea` with appropriate owner/group. Manual creation leads to vanishing after reboot. This directive enables Systemd to handle this.
2019-10-06 14:32:23 -04:00
93e2ce699b Doc added instructions for Git LFS support (#8391) 2019-10-06 12:38:09 +08:00
8a828500e6 Doc config file should not be readable by others as it contains sensitive info (#8385) 2019-10-05 17:16:30 +03:00
bd41a04a56 Add extra user information when migrating release (#8331)
* add extra user information when migrating release

* add migrations

* fix tests
2019-10-05 14:09:27 +03:00
fb7c23f911 Fix editor commit to new branch if PR disabled (#8375) 2019-10-05 10:09:19 +08:00
f92a0b68fe Bugfix for image compare and minor improvements to image compare (#8289)
* Resolve error when comparing images

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Check blob existence instead of git-ls when checking if file exists

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Show file metadata also when a file was newly added

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Fixes error in commit view

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Excludes assigning path and image infos for compare routers to service package

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Removes nil default and fixes import order

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adds missing comments

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Moves methods for assigning compare data to context into repo router package

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Show image compare for deleted images as well. Simplify check if image should be displayed

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>
2019-10-04 15:58:54 -04:00
Km
de8a0a3938 Add buildbot CI (#8378)
Buildbot can work with Gitea
2019-10-04 19:30:05 +02:00
ae939652ea [skip ci] Updated translations via Crowdin 2019-10-04 07:22:20 +00:00
1a2d7207ea Make 100% width issues page left menu and add reponame as title attribute (#8359) 2019-10-04 09:18:46 +02:00
6ea77523bb Cleanup https support code snippet (#8370) 2019-10-04 08:54:05 +08:00
9543aeaf84 readd .markdown class to all markup renderers (#8357)
fixes #8299, a regression from 867f46f.
unlike it's name suggests, the .markdown class is needed for most markup types.
a future refactor should rename this class to something more generic
2019-10-03 18:54:33 +02:00
0bda876161 Fix lfs locks (#8361)
* Extend time window for TestAPILFSLocksLogged
2019-10-03 09:56:26 +02:00
740a0c4dd4 Fix column name ambiguity in GetUserIssueStats() (#8347)
* Add test for FilterModeMention

* Fix column name ambiguity

* Fix fmt
2019-10-03 08:03:18 +08:00
cd13f273d1 Transaction-aware retry create issue to cope with duplicate keys (#8307)
* Revert #7898

* Transaction-aware retry create issue to cope with duplicate keys

* Restore INSERT ... WHERE usage

* Rearrange code for clarity

* Fix error return in newIssue()

* Fix error message
2019-10-03 00:28:30 +02:00
c9f819eae0 Upgrade xorm to v0.7.9 to fix some bugs (#8354)
* upgrade xorm to v0.7.9 to fix some bugs

* upgrade xormstore to v1.3.1
2019-10-02 16:47:20 -04:00
3be43dc5e3 [skip ci] Updated translations via Crowdin 2019-10-02 20:04:16 +00:00
e3eb9fa33d Fix a comment typo (#8358) 2019-10-02 16:02:04 -04:00
0d93430695 [skip ci] Updated translations via Crowdin 2019-10-02 13:01:01 +00:00
bcd4af483d Change general form binding to gogs form (#8334) 2019-10-02 20:58:40 +08:00
90ab3056eb Api: advanced settings for repository (external wiki, issue tracker etc.) (#7756)
* Add API for Repo Advanced Settings of wiki and issue tracker

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add some integration tests for tracker and wiki settings through API

* Should return StatusUnprocessableEntity in case of invalid API values.

* Add tests for invalid URLs for external tracker and wiki.

* Do not set inital values if they are default of type

* Make issue tracker and wiki units separate structures in Repository API structure.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix comment of structures

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Rewrite API to use struct for setting tracker and wiki settings.

* LetOnlyContributorsTrackTime -> AllowOnlyContributorsToTrackTime
2019-10-02 17:30:41 +08:00
f8899678d2 [arc-green] white on hover for active menu items (#8344)
* [arc-green] white on hover for active menu items

Actually, hovered active menu elements are in an unreadable black text colour.
This should be changed to white.

* [arc-green] white on hover for active menu items
Actually, hovered active menu elements are in an unreadable black text colour.
This should be changed to white.

Now editing less files and commiting with `make css`.
2019-10-02 15:20:30 +08:00
149758c912 Update to github.com/lafriks/xormstore@v1.3.0 (#8317) 2019-10-02 02:32:12 +02:00
3a7e3dbfb4 [skip ci] Updated translations via Crowdin 2019-10-01 23:27:07 +00:00
cd1c960a2a typo fix (#8345) 2019-10-02 02:25:32 +03:00
09bcc9edb0 [skip ci] Updated translations via Crowdin 2019-10-01 13:43:35 +00:00
7ff783b732 Move mirror to a standalone package from models (#7486)
* move mirror to a standalone package

* fix mirror address in template

* fix tests

* fix lint

* fix comment

* fix tests

* fix tests

* fix vendor

* fix fmt

* fix lint

* remove wrong file submitted

* fix conflict

* remove unrelated changes

* fix go mod

* fix tests

* clean go mod

* make vendor work

* make vendor work

* fix tests

* remove duplicated test
2019-10-01 21:40:17 +08:00
177aedfca9 [skip ci] Updated translations via Crowdin 2019-10-01 05:35:37 +00:00
36bcd4cd6b API endpoint for searching teams. (#8108)
* Api endpoint for searching teams.

Signed-off-by: dasv <david.svantesson@qrtech.se>

* Move API to /orgs/:org/teams/search

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Regenerate swagger

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix search is Get

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add test for search team API.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Update routers/api/v1/org/team.go

grammar

Co-Authored-By: Richard Mahn <richmahn@users.noreply.github.com>

* Fix review comments

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix some issues in repo collaboration team search, after changes in this PR.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Remove teamUser which is not used and replace with actual user id.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Remove unused search variable UserIsAdmin.

* Add paging to team search.

* Re-genereate swagger

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix review comments

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* fix

* Regenerate swagger
2019-10-01 13:32:28 +08:00
d3bc3dd4d1 [skip ci] Updated translations via Crowdin 2019-09-30 16:12:50 +00:00
3249c0ccba Extract actions on deletereleasebyid from models to release service (#8219)
* extract actions on deletereleasebyid from models to release service

* fix tests
2019-10-01 00:10:00 +08:00
ecd4bfd284 [skip ci] Updated translations via Crowdin 2019-09-30 14:00:59 +00:00
e6113000c5 Extract actions on new issue from models to services (#8217)
* extract actions on new issue from models to services

* improve code

* rename services/issues to services/issue
2019-09-30 21:50:44 +08:00
a5992d1725 [skip ci] Updated translations via Crowdin 2019-09-30 09:21:01 +00:00
8a45070f62 Fix pull request commit status in user dashboard list (#8321) 2019-09-30 12:16:29 +03:00
f89d027c15 [skip ci] Updated translations via Crowdin 2019-09-30 02:36:41 +00:00
668d3d02aa If no specific context is required for status check, require an overall success (#8318)
Signed-off-by: Elias Norberg <elias@aisle.se>
2019-09-30 10:33:40 +08:00
0d2566b560 [skip ci] Updated translations via Crowdin 2019-09-30 01:11:00 +00:00
49547ea158 Show correct commit status in PR list (#8316)
* Use correct index when fetching commit status

Signed-off-by: Elias Norberg <elias@aisle.se>

* Compare against base repo to avoid mismatch when merging from fork

Signed-off-by: Elias Norberg <elias@aisle.se>
2019-09-30 09:07:43 +08:00
9c2a58456a Fix repo_admin_change_team_access always checked in org settings (#8319)
Signed-off-by: David Svantesson <davidsvantesson@gmail.com>
2019-09-30 02:20:27 +03:00
cf170bf529 [skip ci] Updated translations via Crowdin 2019-09-29 20:38:07 +00:00
223b9d9a64 Add 'make revive' to instructions for checking code (#8314)
* Add 'make revive' to instructions for checking code

This is performed on drone, hacking instructions should contain the same to avoid unnecessary PR builds.

* lint is deprecated. Denote revive +vet as code analysis in continuous text.
2019-09-29 23:36:52 +03:00
5774260e9b [skip ci] Updated translations via Crowdin 2019-09-29 12:54:17 +00:00
aa9a99cf5f Upgrade xorm to latest to fix insert issue bug (#8309)
* upgrade xorm to latest to fix insert issue bug

* add newissue unit tests

* update xorm version

* fix tests
2019-09-29 20:52:39 +08:00
c6fb7fe27c Fix API for edit and delete release attachment (#8285)
* Add logging for when user requested attachment doesn't belong to the specified release.

* Fix API to use correct variable for release asset (attachment)
2019-09-27 10:24:06 +08:00
eb11ca6847 Extract actions on new pull request from models to pulls service and move code.gitea.io/gitea/modules/pull to code.gitea.io/gitea/services/pull (#8218)
* extract actions on new pull request from models to pulls service

* improve code

* move code.gitea.io/gitea/modules/pull to code.gitea.io/gitea/services/pull

* fix fmt

* Rename pulls.go to pull.go
2019-09-27 08:22:36 +08:00
d958b9db4f Alwaywas return local url for users avatar (#8245)
* Always return local url for users avatar

Avoids having to wait for DNS lookups when libravatar is activated
fixing #6046

* Avoid double slash in avatar link

* Move avatar route to the correct place
2019-09-26 12:21:23 -04:00
b2b927808b [skip ci] Updated translations via Crowdin 2019-09-26 13:26:39 +00:00
7de910ab6f Added myself to translators list (#8292) 2019-09-26 21:16:35 +08:00
41dcdbf500 [docs] Docker build - ZeroMQ dependency for Jupyter (#8262)
* doc py3-zmq - ZeroMQ bindings for jupyter

#7970 https://github.com/go-gitea/gitea/issues/7970

* rebase Dockerfile to 1.9.x for jupyter

* [docs] external-renderers.en-us.md - use templated variable for version

Co-Authored-By: techknowlogick <matti@mdranta.net>
2019-09-26 09:04:53 +02:00
f8882f4fa9 Update xorm (#8286)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-09-25 22:02:54 +03:00
a8c024043c Improve integration tests (#8276)
* improve integration tests

* fix Makefile

* improve makefile and integration docs
2019-09-25 14:13:18 +02:00
c05b89a5aa Fix nil ref (#8281) 2019-09-25 06:57:06 +03:00
b19db40eab Update hacking-on-gitea.en-us.md (#8275)
Fix spelling of misspell in command to validate swagger.
2019-09-24 14:29:11 -04:00
061388379a Move create issue comment to comments package (#8212)
* move create issue comment to comments package

* extract actions on update/delete comment from models to comment service

* fix lint

* fix lint
2019-09-24 13:39:50 -04:00
3dd1cee331 Test more reserved usernames (#8263)
* Test more reserved usernames

* Add more reserved usernames, sort them

* Reserve "attachments" username (is a used route)

* It's "avatars" being reserved, not "avatar"
2019-09-24 13:12:56 -04:00
43c0249583 [skip ci] Updated translations via Crowdin 2019-09-24 13:26:59 +00:00
29dda47cbb Fix label count (#8267)
* fix label count

* fix vendor

* fix import order

* update xorm to fix bug

* fix tests

* fix mssql bug
2019-09-24 21:22:39 +08:00
7cccada51e Fix assets key on release webhook (#8253)
* Fix assets key on release webhook

* Fix assets key on release webhook

* Add message to log on AddReleaseAttachments failure
2019-09-24 14:55:07 +08:00
5a438ee3c0 Move all mail related codes from models to services/mailer (#7200)
* move all mail related codes from models to modules/mailer

* fix lint

* use DBContext instead Engine

* use WithContext not WithEngine

* Use DBContext instead of Engine

* don't use defer when sess.Close()

* move DBContext to context.go and add some methods

* move mailer from modules/ to services

* fix lint

* fix tests

* fix fmt

* add gitea copyright

* fix tests

* don't expose db functions

* make code clear

* add DefaultDBContext

* fix build

* fix bug
2019-09-24 13:02:49 +08:00
730065a3dc Do only show teams access for organization repositories, not for personal repositories (#8265)
Signed-off-by: David Svantesson <davidsvantesson@gmail.com>
2019-09-24 09:30:40 +08:00
b6cfca6240 [skip ci] Updated translations via Crowdin 2019-09-23 20:10:56 +00:00
a0e88dfc2e Add teams to repo on collaboration page. (#8045)
* Add teams to repo on collaboration page.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add option for repository admins to change teams access to repo.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add comment for functions

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Make RepoAdminChangeTeamAccess default false in xorm and make it default checked in template instead.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Make proper language strings and fix error redirection.

* Add unit tests for adding and deleting team from repository.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add database migration

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix redirect

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix locale string mismatch.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Move team access mode text logic to template.

* Move collaborator access mode text logic to template.
2019-09-23 23:08:03 +03:00
63ff61615e Delete releases attachments if release is deleted (#6068)
* delete attachments from the database and file system

* add migration

* fix import statements

* fix package name

* remove conditional should in case the confi has been changed and the server restarted

* simplify deletion of attachments in DB

* fix CI build

* fix review

* add copyright in the proper place

* fix review
2019-09-22 12:05:48 +03:00
6322d254e7 [skip ci] Updated translations via Crowdin 2019-09-21 17:05:00 +00:00
2628b15ee3 Fix utf8 tests (#8192)
* Prevent compiler environment from making the tests fail

* Remove unused function

* Pass lint
2019-09-21 13:01:34 -04:00
73f7e82024 Remove unnecessary backslash (#8249) 2019-09-20 13:06:17 -04:00
0d56dac577 [skip ci] Updated translations via Crowdin 2019-09-20 14:08:48 +00:00
14efd3fb34 Change link on issue milestone (#8246)
* Change link on issue milestone

* Fix the sidebar link for milestone
2019-09-20 22:05:05 +08:00
2a2b46c62e Reference issues from pull requests and other issues (#8137)
* Update ref comment

* Generate comment on simple ref

* Make fmt + remove unneeded repo load

* Add TODO comments

* Add ref-check in issue creation; re-arrange template

* Make unit tests pass; rearrange code

* Make fmt

* Filter out xref comment if user can't see the referencing issue

* Add TODOs

* Add cross reference

* Rearrange code; add cross-repository references

* Striketrhough obsolete references

* Remove unnecesary TODO

* Add "not supported" note

* Support for edits and deletes, and issue title

* Revert changes to go.mod

* Fix fmt

* Add support for xref from API

* Add first integration test

* Add integration tests

* Correct formatting

* Fix add comment test

* Add migration

* Remove outdated comments; fix typo

* Some code refactoring and rearranging

* Rename findCrossReferences to createCrossReferences

* Delete xrefs when repository is deleted

* Corrections as suggested by @lafriks

* Prepare for merge

* Fix log for errors
2019-09-20 01:45:38 -04:00
8a0379d68a Allow registration when button is hidden (#8237) 2019-09-19 22:40:33 +08:00
08e0d4b114 README: add License shield (#8235) 2019-09-19 10:01:38 +08:00
46f06956df [skip ci] Updated translations via Crowdin 2019-09-19 00:27:00 +00:00
09e452f84a Fix release API URL generation (#8234) 2019-09-18 20:23:45 -04:00
3c0e6d1126 update cache item_ttl docs (#8222) 2019-09-18 10:50:45 +03:00
28362195a0 Add 'Mentioning you' group to /issues page (#8201) 2019-09-18 10:24:44 +03:00
04ca7f0047 Refuse merge until all required status checks success (#7481)
* refuse merge until ci successfully

* deny merge request when required status checkes not succeed on merge Post and API

* add database migration for added columns on protected_branch

* fix migration

* fix protected branch check bug

* fix protected branch settings

* remove duplicated code on check pull request's required commit statuses pass

* remove unused codes

* fix migration

* add newline for template file

* fix go mod

* rename function name and some other fixes

* fix template

* fix bug pull view

* remove go1.12 wrong dependencies

* add administrator bypass when protected branch status check enabled

* fix bug

* improve the codes
2019-09-18 08:39:45 +03:00
29454733b4 move some milestone functions to a standalone package (#8213) 2019-09-18 08:17:12 +08:00
99f3ee3bf3 MS Teams webhook misses commit messages (#8209)
The current webhook just shows the amount of commits, but misses the actual commit description. While the code is actually there to include the description, it is just not included.

Signed-off-by: Bjoern Petri <bjoern.petri@sundevil.de>
2019-09-17 15:56:29 -04:00
34497984e9 Disable max height property of comment textarea (#8203) 2019-09-17 18:54:35 +03:00
a60d3cbea2 Remove legacy handling of drone token (#8191)
Now Drone has removed Gitea user/pass handling we can remove legacy handling
2019-09-17 15:13:24 +03:00
eec997d30a Fix data race (#8204)
* Fix data race

* Fix data race in modules/log

* Make the scope of lock finner-grained

* Use syc.Map

* Fix missing change in the test

* Do not export LoggerMap
2019-09-17 12:39:37 +03:00
a629904b30 [skip ci] Updated translations via Crowdin 2019-09-17 06:26:13 +00:00
0f08855785 faq: mention EMAIL_DOMAIN_WHITELIST on allowing email domains (#8198)
* faq: mention EMAIL_DOMAIN_WHITELIST on allowing email domains

Signed-off-by: Mikaela Suomalainen <mikaela+git@mikaela.info>

* faq: separate openid from allow/block email domain

Signed-off-by: Mikaela Suomalainen <mikaela+git@mikaela.info>

* faq: update ToC

Signed-off-by: Mikaela Suomalainen <mikaela+git@mikaela.info>

* Update docs/content/doc/help/faq.en-us.md

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update docs/content/doc/help/faq.en-us.md

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>
2019-09-17 14:24:39 +08:00
a37236314c Adds side-by-side diff for images (#6784)
* Adds side-by-side diff for images

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Explain blank imports

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Use complete word for width and height labels on image compare

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Update index.css from master

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Moves ImageInfo to git commit file

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Assign ImageInfo function for template and sets correct target for BeforeSourcePath

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adds missing comment

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Return error if ImageInfo failed

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Avoid template panic when ImageInfo failed for some reason

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Show file size on image diff

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Removes unused helper function

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Reverts copyright year change

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Close file reader

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Update commit.go

Sets correct data key

* Moves reader.Close() up a few lines

* Updates index.css

* Updates CSS file

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Transfers adjustments for image compare to compare.go file

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adjusts variable name

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Apply lesshint recommendations

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Do not show old image on image compare if it is not in index of base commit

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Change file size text

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>
2019-09-16 17:03:22 +08:00
a5f87feefd Fix pull merge 500 error caused by git-fetch breaking behaviors (#8161) 2019-09-15 23:03:08 -04:00
89648746a5 [ssh] fix the config specification in the authorized_keys template (#8031)
The gitea flags must appear in front of the gitea command. Otherwise
 they are ignored.

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2019-09-15 18:51:40 -04:00
4959bf1c09 Move create release from models to a standalone package (#7539)
* move create release from models to a standalone package

* fix lint

* fix comment year

* fix lint

* fix lint

* fix package import name

* fix vendor

* fix go mod

* some refactors

* fix vendor

* use go1.12 make vendor

* fix vendor
2019-09-15 23:28:25 +08:00
be0f7ff9bf Fix team user api (#8172)
* fix team user api

* fix tests

* fix api

* fix team user api

* change user convert

* fix tests

* fix tests
2019-09-15 20:22:02 +08:00
8b54b58bc5 Include git-hook regeneration in restore documentation (#8181)
* Added admin cmd ref to backup-restore guide

* Clarified reason for command execution

* Include directive for where command should be executed from

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>

* Be direct in consequences

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>
2019-09-15 10:37:09 +08:00
7a8e299c7c migrate gplus to google oauth2 provider (#7885)
* migrate gplus to google oauth2 provider. this still provides support for old gplus connections.

* Update models/oauth2.go

Co-Authored-By: Antoine GIRARD <sapk@users.noreply.github.com>

* make vendor
2019-09-14 12:02:39 +02:00
107d57a925 [skip ci] Updated translations via Crowdin 2019-09-14 07:07:25 +00:00
1ad6d7d32f Git min requirements (#8177)
* Add minimum git requirements.

* Added comments about git lfs and commit-graph

* Fix capitalization
2019-09-14 09:24:26 +03:00
0c47fe2d77 [fix #7384] make show private icon when repo avatar set (#8144) 2019-09-13 07:15:26 +03:00
2837563147 oauth2 with remote Gitea - Fix #8093 (#8149) 2019-09-12 22:15:36 -04:00
cff0787759 update docs to latest version (#8164) 2019-09-12 13:23:39 -04:00
3f5cdfe359 use go 1.13 (#8088)
* use go 1.13

* use go 1.13 in gomod file

* Update Makefile

* update swagger deps
2019-09-12 14:58:32 +03:00
d0ad47bd5d apply emoji on dashboard issue list labels (#8156) 2019-09-12 13:00:55 +03:00
e7e5bf6d85 [skip ci] Updated translations via Crowdin 2019-09-12 09:33:49 +00:00
59b194f4d1 Move ref (branch or tag) location on issue list page (#8157)
* Move ref (branch or tag) location on issue list page

* Make looks better

* move branch label also on milestone/{id} page

* [/issues page] Add milestone, Add Ref, Fix Assignees

* [repo issues page] reorder tasks, milestone and ref
2019-09-12 12:31:36 +03:00
52fda312df Fix reading git notes from nested trees (#8026)
* Fix reading notes from nested trees

The GIT documentation for notes states "Permitted pathnames have the
form ab/cd/ef/.../abcdef...: a sequence of directory names of two
hexadecimal digits each followed by a filename with the rest of
the object ID."

* Add test case

* Fix new lines
2019-09-12 09:14:41 +08:00
5e67e0100c [skip ci] Updated translations via Crowdin 2019-09-11 21:28:55 +00:00
336cb24bfd Fix downloads url (#8153)
The link without slash is not working
2019-09-11 17:10:49 -04:00
72f6d5c882 Restrict repository indexing by glob match (#7767)
* Restrict repository indexing by file extension

* Use REPO_EXTENSIONS_LIST_INCLUDE instead of REPO_EXTENSIONS_LIST_EXCLUDE and have a more flexible extension pattern

* Corrected to pass lint gosimple

* Add wildcard support to REPO_INDEXER_EXTENSIONS

* This reverts commit 72a650c8e42f4abf59d5df7cd5dc27b451494cc6.

* Add wildcard support to REPO_INDEXER_EXTENSIONS (no make vendor)

* Simplify isIndexable() for better clarity

* Add gobwas/glob to vendors

* manually set appengine new release

* Implement better REPO_INDEXER_INCLUDE and REPO_INDEXER_EXCLUDE

* Add unit and integration tests

* Update app.ini.sample and reword config-cheat-sheet

* Add doc page and correct app.ini.sample

* Some polish on the doc

* Simplify code as suggested by @lafriks
2019-09-11 20:26:28 +03:00
3fd0eec900 Update third-party-tools.en-us.md (#8148) 2019-09-11 00:16:11 -04:00
10dfb444de [skip ci] Updated translations via Crowdin 2019-09-10 17:11:24 +00:00
7e17424c7e Make link last commit massages in repository home page and commit tables (#8006)
* Make link last commit massages in repository home page and commit tables

* Use RenderCommitMessageLink instead surround with a

* deleted __debug_bin file

* Exclude email to link from latest commit title

* Exclude email processor from commit table

Co-Authored-By: mrsdizzie <info@mrsdizzie.com>

* Add class parameter to a html element creator functions.
Make links underline dashed that are not commit

* fix tests

* Show dashed underline when also not hovered
2019-09-10 12:03:30 +03:00
7eacdcf39a Fix webhooks to use proxy from environment (#8116) 2019-09-10 00:21:07 +08:00
WGH
6ddd3b0b47 Implement webhook branch filter (#7791)
* Fix validate() function to handle errors in embedded anon structs

* Implement webhook branch filter

See #2025, #3998.
2019-09-09 08:48:21 +03:00
0118b6aaf8 Add option to initialize repository with labels (#6061)
* Add optional label sets on repo creation

* Fix CRLF

* Instead of hardcoding default, make it the helper

* Move label set init out of repo init

Add a new error for the router
Combine router label init with repo creation label init

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Add issue labels to Swagger for repo creation

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Update models/issue_label.go

Co-Authored-By: Lauris BH <lauris@nix.lv>

* Update models/issue_label.go

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>
2019-09-08 11:28:40 +03:00
d4e11ebb18 [skip ci] Updated translations via Crowdin 2019-09-07 14:55:43 +00:00
09badd55dd Add reviewrs as participants (#8121) 2019-09-07 22:53:35 +08:00
418be61040 [skip ci] Updated translations via Crowdin 2019-09-07 11:19:22 +00:00
5e32c16ac3 1148: Take up the full width when viewing the diff in split view. (#8114)
This replicates how the commit view works in split view.
2019-09-07 14:17:42 +03:00
7e74afc9f7 [skip ci] Updated translations via Crowdin 2019-09-06 19:26:14 +00:00
3b1706d71b Changelog for 1.9.3 (#8118) 2019-09-06 14:52:53 -04:00
88e1c29df1 Fix Go 1.13 private repository go get issue (#8112)
* Fix Go 1.13 invalid import path creation

Signed-off-by: Rutger Broekhoff <rutger@viasalix.nl>

* Apply suggested changes from #8100

Signed-off-by: Rutger Broekhoff <rutger@viasalix.nl>
2019-09-06 21:44:59 +08:00
c03d75fbd5 Move git diff codes from models to services/gitdiff (#7889)
* move git diff codes from models to services/gitdiff

* fix template

* fix test

* fix template
2019-09-05 22:20:09 -04:00
b660a732ae feat: highlight issue references with : (#8101)
* feat: highlight issue references with :

e.g. #1287: my commit msg
e.g. ABC-1234: my commit msg

* ref: update model regex to consistent with issueNumericPattern

* test: check highlight issue with : in commits messages
2019-09-05 20:39:54 -04:00
79c8bc0e51 Added AppVeyor to the list of CI/CD working with Gitea (#8104) 2019-09-05 22:48:35 +02:00
5ef21408e2 [skip ci] Updated translations via Crowdin 2019-09-05 20:23:08 +00:00
852b8e2d81 Make AllowedUsers configurable in sshd_config (#8094)
docker/root/usr/bin/entrypoint already allows for the specification
of USER, USER_UID, USER_GID. But since AllowedUsers is hardcoded in
sshd_config, one cannot log in as a user different ftom git.
This change substitutes ${USER} for git in the sshd_config template.

Signed-off-by: Jeronimo Pellegrini <j_p@aleph0.info>
2019-09-05 22:20:55 +02:00
85f56546c4 [skip ci] Updated translations via Crowdin 2019-09-05 09:28:34 +00:00
63c40796ef Display description of 'make this repo private' as help text, not as tooltip (#8097) 2019-09-05 11:13:51 +02:00
5fcef38f7f Fix broken link (#8091) 2019-09-05 00:31:43 +02:00
d0371ff058 [skip ci] Updated translations via Crowdin 2019-09-04 19:55:18 +00:00
9fe4437bda Use vendored go-swagger (#8087)
* Use vendored go-swagger

* vendor go-swagger

* revert un wanteed change

* remove un-needed GO111MODULE

* Update Makefile

Co-Authored-By: techknowlogick <matti@mdranta.net>
2019-09-04 22:53:54 +03:00
4cb1bdddc8 Strict name matching for Repository.GetTagID() (#8074)
* Strict name matching for Repository.GetTagID()

* Perform make swagger-check swagger-validate vendor

* Add test for GetTagID()
2019-09-04 08:48:17 +03:00
d9545f9ecc [skip ci] Updated translations via Crowdin 2019-09-03 17:29:10 +00:00
be29811f2f Fixes deformed emoji in pull request reviews (#8047)
* Fixes deformed emoji in pull request comments or reviews

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Generate css via command

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>
2019-09-03 19:08:30 +02:00
2bcd7f34e9 [skip ci] Updated translations via Crowdin 2019-09-03 15:48:35 +00:00
1f951cdeba Add API endpoint for accessing repo topics (#7963)
* Create API endpoints for repo topics.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Generate swagger

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add documentation to functions

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Grammar fix

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix function comment

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Can't use FindTopics when looking for a single repo topic, as it doesnt use exact match

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add PUT ​/repos​/{owner}​/{repo}​/topics and remove GET ​/repos​/{owner}​/{repo}​/topics

* Ignore if topic is sent twice in same request, refactoring.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix topic dropdown with api changes.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Style fix

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Update API documentation

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Better way to handle duplicate topics in slice

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Make response element TopicName an array of strings, instead of using an array of TopicName

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add test cases for API Repo Topics.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix format of tests

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix comments

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix unit tests after adding some more topics to the test fixture.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Update models/topic.go

Limit multiple if else if ...

Co-Authored-By: Antoine GIRARD <sapk@users.noreply.github.com>

* Engine as first parameter in function

Co-Authored-By: Antoine GIRARD <sapk@users.noreply.github.com>

* Replace magic numbers with http status code constants.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix variable scope

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Test one read with login and one with token

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add some more tests

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Apply suggestions from code review

Use empty struct for efficiency

Co-Authored-By: Lauris BH <lauris@nix.lv>

* Add test case to check access for user with write access

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Fix access, repo admin required to change topics

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Correct first test to be without token

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Any repo reader should be able to access topics.

* No need for string pointer

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>
2019-09-03 23:46:24 +08:00
99d6863238 [skip ci] Updated translations via Crowdin 2019-09-03 12:45:01 +00:00
c027eac1d6 Avoid ambiguity of branch/directory names for the git-diff-tree command (#8066) 2019-09-03 15:42:01 +03:00
6ed22ffd16 Add merged commit id on pull view when it's merged (#8062) 2019-09-03 09:29:36 +03:00
8ae96a37ce Add change title notification for issues (#8061) 2019-09-02 22:35:31 -04:00
ee11974719 Search Commits via Commit Hash (#7400)
* search commits via commit hash

Signed-off-by: Gary Kim <gary@garykim.dev>

* Also include all option for hash search

Signed-off-by: Gary Kim <gary@garykim.dev>

* Remove code duplication in commit search

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add case ignore to commit hash search

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-09-02 19:38:04 -04:00
6097ff68e7 Make encoding tests independent of LOCALE settings (#8018)
* Make encoding tests independent of LOCALE settings

* Fix fmt

* Force CI to restart
2019-09-02 19:08:07 -04:00
032c90e7c5 Add tooltip for the visibility checkbox in /repo/create (#8025)
* Add tooltip for the visibility checkbox in /repo/create

* Change the tooltip wording

* Update options/locale/locale_en-US.ini

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-09-02 18:29:04 -04:00
577b1cb29b Update JS dependencies (#8051) 2019-09-02 17:02:53 -04:00
5fc93b4005 [skip ci] Updated translations via Crowdin 2019-09-02 19:13:44 +00:00
765be70323 Make CI work (#8057)
* Use export GOPROXY=https://goproxy.cn before build

* Add go version to generate command

* Reproduced the entire build procedure - see notes

I've used:

sudo go clean -i -r -cache -testcache -modcache
make clean
make generate
make golangci-lint
make revive
make swagger-check
make swagger-validate
make test-vendor            <--- this now fails
make vendor                 <--- this now produced changes
git commit -a               <--- this commit

* Add fix from #8059 to complete CI tests
2019-09-02 15:12:29 -04:00
fe1a6a2d9a [skip ci] Updated translations via Crowdin 2019-09-02 16:14:21 +00:00
016083b328 Add strike to old header on comment (#8046) 2019-09-03 00:11:23 +08:00
0a1c824bc7 [skip ci] Updated translations via Crowdin 2019-08-29 21:33:03 +00:00
Km
18896d8df1 Propose some references about ci/cd solutions compatibles with gitea (#7996)
* Propose some references about ci/cd solutions compatibles with gitea

* No note about theirs integration level, only a starting point.

* Update docs/content/doc/advanced/ci-cd.en-us.md

Improve text

Co-Authored-By: Lauris BH <lauris@nix.lv>

* Improve link to CI solutions

Update docs/content/doc/advanced/ci-cd.en-us.md

Co-Authored-By: Lauris BH <lauris@nix.lv>

* Update docs/content/doc/advanced/ci-cd.en-us.md

Typo in name :/

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Remove redundant empty line

* Invite user to consult new CI/CD page

* Link target CI tools

* Jenkins and its plugin

* Update docs/content/doc/advanced/third-party-tools.en-us.md

Simplify link CI/CD

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update docs/content/doc/advanced/ci-cd.en-us.md

Typo

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Provide gitea documentation about drone usage

    Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update docs/content/doc/advanced/ci-cd.en-us.md

Co-Authored-By: Lauris BH <lauris@nix.lv>

* Apply suggestions from code review

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-08-29 17:30:12 -04:00
f1c414882c Add Ability for User to Customize Email Notification Frequency (#7813)
* Add Backend Logic for Toggling Email Notification

This commit adds the backend logic for
allowing users to enable or disable email
notifications. The implementation ensures
that only issue notification emails get disabled
and important emails are still sent regardless
of the setting.

The UI to toggle this setting has not yet been
implemented.

* Add UI and complete user email notification enable

This commit completes the functionality to allow
users to disable their own email notifications.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add Third Option for Only Email on Mention

Signed-off-by: Gary Kim <gary@garykim.dev>

* Readd NOT NULL to new preference string

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add Tests and Rewrite Comment

Signed-off-by: Gary Kim <gary@garykim.dev>

* Allow admin to set default email frequency

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add new config option to docs

Signed-off-by: Gary Kim <gary@garykim.dev>

* Fix a few mistakes

Signed-off-by: Gary Kim <gary@garykim.dev>

* Only update required columns

Signed-off-by: Gary Kim <gary@garykim.dev>

* Simplify an error check

Signed-off-by: Gary Kim <gary@garykim.dev>

* Make email_notification_preference column in DB be VARCHAR(20)

Signed-off-by: Gary Kim <gary@garykim.dev>

* Handle errors

Signed-off-by: Gary Kim <gary@garykim.dev>

* Update models/migrations/v93.go

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-08-29 17:05:42 +03:00
9ef1e5da27 Fix vendor modules.txt (#8032) 2019-08-29 16:16:09 +03:00
187ae109d0 Update to mod enabled version goquery (#8021)
* update to mod enabled version goquery

* manually set appengine new release
2019-08-29 11:18:42 +08:00
cedb285e25 Update github.com/lafriks/xormstore and tidy up mod.go (#8020) 2019-08-28 23:17:14 +02:00
dd3ba9bb6b Fix make-generate using non-vendor packages (#8008) 2019-08-28 22:18:15 +02:00
13388258a4 Changed black to white for (read) number label on issue list (#8000)
* Changed black color to blue for read number label on issue list page

* Change color to white
2019-08-28 12:20:52 +02:00
256b178176 Update swagger to 0.20.1 (#8010)
* update swagger to 0.20.1

* fiw swagger version for validate
2019-08-28 08:55:22 +02:00
e0f95d1545 [skip ci] Updated translations via Crowdin 2019-08-28 02:26:14 +00:00
5616356a0b keep blame view buttons sequence consistent with normal view when view a file (#8007) 2019-08-27 22:23:18 -04:00
9a5c6f3da4 [skip ci] Updated translations via Crowdin 2019-08-27 23:01:14 +00:00
245457d4d3 Move line number to :before attr to hide from search on browser (#8002)
* Move line number to :before attr to hide from search on browser

* Use same variable in WriteString

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-08-28 00:59:05 +02:00
a45909be90 [skip ci] Updated translations via Crowdin 2019-08-27 20:36:39 +00:00
b66b170199 Use "Pull Request" instead of "Merge Request" (#8003)
Signed-off-by: kolaente <k@knt.li>
2019-08-27 23:33:48 +03:00
ab0f378d7b Bump eslint-utils from 1.3.1 to 1.4.2 (#7993)
Bumps [eslint-utils](https://github.com/mysticatea/eslint-utils) from 1.3.1 to 1.4.2.
- [Release notes](https://github.com/mysticatea/eslint-utils/releases)
- [Commits](https://github.com/mysticatea/eslint-utils/compare/v1.3.1...v1.4.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-08-27 00:29:25 -04:00
3302066f69 Fixes #7945 - makes sure we are only getting tag refs (#7990) 2019-08-26 23:11:24 -04:00
5fe2ec264f Retry create issue to cope with duplicate keys (#7898)
* Retry create issue to cope with duplicate keys

* Use  .SetExpr().Where().Insert()
2019-08-26 22:17:23 -04:00
541fab196f Fix adding default Telegram webhook (#7972)
* Fix adding default Telegram webhook

Fixes #7932

Signed-off-by: Gary Kim <gary@garykim.dev>

* Run goimports

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-08-26 18:59:10 -04:00
bb5f7cdae6 Adds details about what tags can use the Git tags API (#7989) 2019-08-26 21:52:04 +02:00
954fe0e4e0 swagger/fix: []string are not enum by swagger definition (#7916)
* []string are not enum by swagger definition

* apply suggestion of @guillep2k

* re-generate swagger file
2019-08-26 20:13:10 +02:00
042089fbaf API method to list all commits of a repository (#6408)
* Added API endpoint ListAllCommits (/repos/{owner}/{repo}/git/commits)

Signed-off-by: Mike Schwörer <mailport@mikescher.de>

* Fixed failing drone build

Signed-off-by: Mike Schwörer <mailport@mikescher.de>

* Implemented requested changes (PR reviews)

Signed-off-by: Mike Schwörer <mailport@mikescher.de>

* gofmt

Signed-off-by: Mike Schwörer <mailport@mikescher.de>

* Changed api route from "/repos/{owner}/{repo}/git/commits" to "/repos/{owner}/{repo}/commits"

* Removed unnecessary line

* better error message when git repo is empty

* make generate-swagger

* fixed removed return

* Update routers/api/v1/repo/commits.go

Co-Authored-By: Lauris BH <lauris@nix.lv>

* Update routers/api/v1/repo/commits.go

Co-Authored-By: Lauris BH <lauris@nix.lv>

* go fmt

* Refactored common code into ToCommit()

* made toCommit not exported

* added check for userCache == nil
2019-08-26 16:09:10 +02:00
6b3f52fe5f Run CORS handler first for /api routes (#7967)
Signed-off-by: Tamal Saha <tamal@appscode.com>
2019-08-26 13:33:06 +02:00
5409dec8fd [Branch View] show "New Pull Request" Button only if posible (#7977)
* add check Commits Ahead is gt 0

* code format
to start drone-ci test again
and formate code is also nice :)
2019-08-26 13:47:41 +03:00
c9546d4cdd Include description in repository search. (#7942)
* Add description in repository search.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Refactor SearchRepositoryByName with a general function SearchRepository

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Allow to specify if description shall be included in API repo search.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add new app.ini setting for whether to search within repo description.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Search keyword in description (if setting enabled) on:
 - Explore page
 - Organization profile page
 - User profile page
 - Admin repo page

Do not search keyword in description on:
 - Any non-keyword search (not relevant)
 - Incremental search (uses API)

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Put parameters related to keyword directly after it

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Add test cases for including (and not including) repository description in search.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Rename test function from TestSearchRepositoryByName to TestSearchRepository.

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Make setting SEARCH_REPO_DESCRIPTION default to true

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>
2019-08-25 20:06:36 +03:00
8c24bb9e43 Abort syncrhonization from LDAP source if there is some error. (#7960)
Signed-off-by: David Svantesson <davidsvantesson@gmail.com>
2019-08-24 21:53:37 +03:00
e3115cc019 Add support for DEFAULT_ORG_MEMBER_VISIBLE (#7669)
* Add support for DEFAULT_ORG_MEMBER_VISIBLE

* Correct formatting

* Improved description in cheat sheet.

* Add test for DefaultOrgMemberVisible

* Remove dead code
2019-08-24 15:28:59 +03:00
f83db078f0 Move database settings from models to setting (#7806)
* move database settings from models to setting

* update docs

* fix checkout pr

* fix tests

* fix lint

* remove unsupported tidb options

* correct wrong variable name

* remove tidb totally
2019-08-24 11:24:45 +02:00
26af3401c3 Document possibility to limit API Repo search to topics only. (#7957)
Signed-off-by: David Svantesson <davidsvantesson@gmail.com>
2019-08-23 23:17:10 -04:00
ce45a8c257 Allow token as authorization for accessing attachments (#7909)
* Allow token as authorization for accessing attachments

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* Only allow token authentication for attachments if it is a download (GET)
2019-08-24 02:33:32 +02:00
70d2244e49 Support SSH_LISTEN_PORT env var in docker app.ini template (#7829)
Signed-off-by: leigh capili <leigh@null.net>
2019-08-24 01:44:24 +02:00
7c8166d331 [skip ci] Updated translations via Crowdin 2019-08-23 16:42:05 +00:00
171b359877 Use gitea forked macaron (#7933)
Signed-off-by: Tamal Saha <tamal@appscode.com>
2019-08-23 12:40:29 -04:00
ca6fb004ac Change repo search to use exact match for topic search. (#7941)
Signed-off-by: David Svantesson <davidsvantesson@gmail.com>
2019-08-22 22:37:35 -04:00
4ea9a377db Add config option and shortcode for Gitea version (#7940)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-08-23 09:55:06 +08:00
9f58187f11 Add release notes of 1.9.2 (#7934) (#7939)
* Add release notes of 1.9.2

* add missing issue
2019-08-22 17:42:28 +01:00
111d31d681 don't convert buffer to string (#7115) 2019-08-22 12:52:40 +08:00
09ca391230 Add file status on API (#7671)
* add file status on API

* fix tests

* fix tests

* fix tests
2019-08-21 13:16:22 +08:00
5f7fccaf55 Revert RenderCommitMessageLink part of #7659 (#7923)
RenderCommitMessageLink may have the
potential for issues and is overall
not very intuitive for the user in its
current state.

This commit will revert the usage
of RenderCommitMessageLink that was
added in #7659 to work on addressing
some of those issues to and merge this
feature again in a more polished state.

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-08-20 22:08:16 +01:00
ed58919bfc fix bug when migrating a private repository (#7917) 2019-08-20 21:21:07 +01:00
3ac45e3cb5 Fix pull creation with empty changes (#7920)
* Logs the stderr of git-apply
* Add an integration test
* Skip testPatch when patch is empty
2019-08-20 13:43:00 -04:00
31f5713a1f [skip ci] Updated translations via Crowdin 2019-08-20 15:09:59 +00:00
9b9d162194 fix wrong sender when send slack webhook (#7918) 2019-08-20 17:05:30 +02:00
8c10d91086 [skip ci] Updated translations via Crowdin 2019-08-20 12:43:28 +00:00
852876a982 Provide links in commit summaries in commits table/view list (#7659)
* Provide links in commit summaries in commits table/view list

Signed-off-by: Gary Kim <gary@garykim.dev>

* Check that hashes are commits before making them links

Signed-off-by: Gary Kim <gary@garykim.dev>

* Revert "Check that hashes are commits before making them links"

This reverts commit a88564b8bc9872d4bf11062a4ebcb2f42b702200.

* Add Commit Message Links to Files List

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-08-20 20:40:06 +08:00
08c63190c6 Evaluate emojis in commit messages in list view (#7906)
Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>
2019-08-18 18:53:50 +03:00
2d0b90c967 Fix upload file type check (#7890)
* fix upload file type check

* make the function simple and added tests

* Update comment as per @silverwind
2019-08-17 13:10:17 +03:00
a678ea44b8 Update MAINTAINERS (#7896) 2019-08-16 23:17:34 -04:00
4bc4acd02b [skip ci] Updated translations via Crowdin 2019-08-16 22:53:51 +00:00
de5986ae03 Reduce quote usage to bypass bug in GIT_SSH_COMMAND (#7893) 2019-08-16 23:28:55 +01:00
bee1227b2f Extract the username and password from the mirror url (#7651)
* Explode out mirror username and password

* Update models/repo_mirror.go

* Just roundtrip the password

* remove unused declaration

* Update templates/repo/settings/options.tmpl
2019-08-16 22:56:57 +01:00
867f46f78e Detect delimiter in CSV rendering (#7869)
* detect csv delimiter in csv rendering

fixes #7868

* make linter happy

* fix failing testcase & use ints where possible

* expose markup type to template

previously all markup had the .markdown class, which is incorrect,
as it applies markdown CSS & JS logic to CSV rendering

* fix build (missing `make css`)

* ignore quoted csv content for delimiter scoring

also fix html generation
2019-08-16 01:09:50 +03:00
0a86d25e6a Add myself to maintainers (#7881)
* Add myself to maintainers

* Add missing handle

Co-Authored-By: techknowlogick <matti@mdranta.net>
2019-08-15 13:23:57 -04:00
5661773018 Remove unique filter from repo indexer analyzer. (#7878)
* Remove unique filter from repo indexer analyzer.

* Bump repoIndexerLatestVersion to 4

* Corrrect fmt

* make vendor to remove unique dependency
2019-08-15 23:38:55 +08:00
85202d4784 Display ui time with customize time location (#7792)
* display ui time with customize time location

* fix lint

* rename UILocation to DefaultUILocation

* move time related functions to modules/timeutil

* fix tests

* fix tests

* fix build

* fix swagger
2019-08-15 22:46:21 +08:00
5a44be627c Convert files to utf-8 for indexing (#7814)
* Convert files to utf-8 for indexing

* Move utf8 functions to modules/base

* Bump repoIndexerLatestVersion to 3

* Add tests for base/encoding.go

* Changes to pass gosimple

* Move UTF8 funcs into new modules/charset package
2019-08-15 20:07:28 +08:00
c2c35d169c lfs/lock: round locked_at timestamp to second (#7872)
* lfs/lock: round locked_at timestamp to second

* test returned locked_at values

* tests: use time RFC3339
2019-08-15 18:53:28 +08:00
a077c9d551 Add changelog of v1.9.1 (#7859) (#7866)
* add changelog of v1.9.1

* Update CHANGELOG.md

Co-Authored-By: Lauris BH <lauris@nix.lv>

* mention releases build by go1.12.8

* Update CHANGELOG.md

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-08-15 10:45:21 +08:00
a315c8d992 fix non existent milestone with 500 error (#7867) 2019-08-14 19:43:50 -04:00
14230ca843 [skip ci] Updated translations via Crowdin 2019-08-14 15:35:51 +00:00
c021890930 move CreateReview to moduels/pull (#7841) 2019-08-14 23:32:19 +08:00
eaa4d4ea98 [skip ci] Updated translations via Crowdin 2019-08-14 11:34:49 +00:00
176ba79e96 Fix local runs of ssh-requiring integration tests (#7855) 2019-08-14 12:19:13 +01:00
cbe30783c7 [skip ci] Updated translations via Crowdin 2019-08-14 09:39:51 +00:00
def84840db Attempt to fix hook problem (#7854) 2019-08-14 12:25:05 +03:00
7eed11e5e9 Check commit message hashes before making links (#7713)
* Check commit message hashes before making links

Previously, when formatting commit messages, anything
that looked like SHA1 hashes was turned into a link
using regex. This meant that certain phrases or numbers
such as `777777` or `deadbeef` could be recognized as a commit
even if the repository has no commit with those hashes.

This change will make it so that anything that looks
like a SHA1 hash using regex will then also be checked
to ensure that there is a commit in the repository
with that hash before making a link.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Use gogit to check if commit exists

This commit modifies the commit hash check
in the render for commit messages to use
gogit for better performance.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Make code cleaner

Signed-off-by: Gary Kim <gary@garykim.dev>

* Use rev-parse to check if commit exists

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add and modify tests for checking hashes in html link rendering

Signed-off-by: Gary Kim <gary@garykim.dev>

* Return error in sha1CurrentPatternProcessor

Co-Authored-By: mrsdizzie <info@mrsdizzie.com>

* Import Gitea log module

Signed-off-by: Gary Kim <gary@garykim.dev>

* Revert "Return error in sha1CurrentPatternProcessor"

This reverts commit 28f561cac46ef7e51aa26aefcbe9aca4671366a6.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add debug logging to sha1CurrentPatternProcessor

This will log errors by the git command run in
sha1CurrentPatternProcessor if the error is one
that was unexpected.

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-08-14 16:04:55 +08:00
46d6b92ad0 Import topics during migration (#7851)
* add GetTopics interface

* CreateTopics

* remove un-needed comment
2019-08-14 14:16:12 +08:00
99a004c343 Update golangci-lint to v1.17.1 (#7848) 2019-08-13 23:32:38 -04:00
2f2a4cb898 Update app.ini.sample (#7816)
grammar fix
2019-08-13 23:28:11 -04:00
7ffa3fcfa0 gpg/bugfix: Use .ExpiredUnix.IsZero to display green color of forever valid gpg key (#7846)
* Use .ExpiredUnix.IsZero for display green color of gpg key

* remove useless parentheses
2019-08-14 09:39:44 +08:00
0b2d399b1c [skip ci] Updated translations via Crowdin 2019-08-13 17:11:27 +00:00
26a78fa6b3 vendor: update pdf.js to v2.1.266 (#7834) 2019-08-13 20:09:06 +03:00
602155df7b Do not fetch all refs (#7797)
Which would unnecessarily slow down the pull compare operation.
2019-08-13 11:30:44 +03:00
c662f4ced8 [skip ci] Updated translations via Crowdin 2019-08-12 21:54:26 +00:00
9692ebcc54 add details for db socket listening (#7830) 2019-08-12 17:52:11 -04:00
WGH
98fd085039 Fix lax comparison in validation tests (#7815)
If you add t.Logf("%+v %+v", actual, testCase.expectedErrors) to
the test code, you'll notice that only Errors' Messages are being
compared:

    --- PASS: Test_ValidURLValidation/Invalid_schema (0.00s)
    binding_test.go:43: [Url] [Url]

FieldNames and Classification are ignored in comparison.

Moreover, an Errors slice with a single Error with empty message
is formatted as '[]' (the same as empty slice), which is also
error-prone. I discovered this when working on #7791 when one test which
was not supposed to pass did pass. https://play.golang.org/p/qC4wVLrm4NG

This commit changes the test to do the comparison properly.
2019-08-12 10:17:25 +08:00
e9bb75d8d1 Fix duplicate call of webhook (#7821) 2019-08-11 23:31:18 +03:00
8bfeb85f93 Enable switching to a different source branch when PR already exists (#7819)
Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>
2019-08-11 23:23:49 +08:00
8101d803e6 Update serv.go (#7822)
small semantics fix
"Hi there, user!" looks better than "Hi there: user!"
2019-08-11 20:15:58 +08:00
80d2c2575b Update app.ini.sample (#7817)
small grammar fix
2019-08-10 15:25:26 -04:00
cde95f9923 Rewrite existing repo units if setting is not included in api body (#7763)
* Rewrite existing repo units if setting is not included in api body

Signed-off-by: David Svantesson <davidsvantesson@gmail.com>

* else-if on one row
2019-08-10 12:32:46 +03:00
2ed21e7e09 Prevent Commit Status and Message From Overflowing On Branch Page (#7800)
* Prevent Commit Status From Overflowing On Branch Page

It is possible for the commit ci status
on the branches page for a repository to
become an ellipsis due to overflowing.

This commit will fix that issue by
using flex.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Fix multiple overflowing issues in commits table

It was possible that the commit message would
overflow hiding the expand commits button
and commit status. This change ensures that
the correct elements overflow without hiding
anything else.

This change also reverts using flex in the
commits list because it was causing issues
in Blink based browsers.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Remove unnecessary html element and fix indentation issues
2019-08-09 20:57:29 +08:00
2b6f45299d api: fix multiple bugs with statuses endpoints (#7785)
* fix commit statuses api url

* search refs before passing sha

* adjust tests

* directly search tags and branches names + remove un-needed check in NewCommitStatus

* fix comment

* de-duplicate code

* test: use relative setting.AppURL

* Update routers/api/v1/repo/status.go

Co-Authored-By: Lauris BH <lauris@nix.lv>

* remove return

* Update routers/api/v1/repo/status.go

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-08-09 10:13:03 +08:00
c534b7e211 Add SSH_LISTEN_HOST to the config cheatsheet (#7793)
This was missing before, and this commit adds it with the correct
default value and description
2019-08-08 18:40:31 +03:00
a21a7d438b Fix global search result CSS, misc CSS tweaks (#7789)
- Fixes double line-numbers and padding in Explore > Code > Search
- Moved code-view specific CSS out of their parents to share those
styles better.
- Fix misc issues discovered in code,diff and blame view, especially for
the dark theme.
2019-08-08 22:46:03 +08:00
e54814dcaa activate sum.golang.org check (#7782) 2019-08-08 12:38:23 +03:00
3b97b9efbf Correct formatting of bullet list (#7794) 2019-08-08 07:47:57 +03:00
b16be15803 Display error as string but not bytes (#7780)
* display error as string but not bytes

* Update routers/repo/http.go

Co-Authored-By: Antoine GIRARD <sapk@users.noreply.github.com>
2019-08-07 19:33:29 +03:00
714dcf9dad remove -i flag from GOFLAGS (#7778)
this flag is not needed for Go versions >=1.10 and creates problems
while building. see https://github.com/golang/go/issues/27285#issuecomment-424382413
2019-08-07 17:05:18 +08:00
c832f0eef7 Fix approvals counting (#7757)
* fix approvals counting

* fix tests

* fmt
2019-08-07 07:22:41 +03:00
WGH
28c5ae27d6 Fix Slack webhook fork message (#7774)
The order of forkee and fork was mixed up.
2019-08-06 19:27:10 -04:00
0470b16e8a Add migration step to remove old repo_indexer_status orphaned records (#7746)
* Add migration step to remove old repo_indexer_status orphaned records

* Include RepoIndexerStatus struct definition in the migrate function

* Change .Delete(o) into ID(o.ID).Delete(new(RepoIndexerStatus))

* Simplification of the delete procedure

* Rename v91.go to v92.go
2019-08-06 11:57:55 +03:00
4328d8e8d7 fix rename failed when rewrite public keys (#7761) 2019-08-06 14:32:11 +08:00
2594693a46 Remove camel case tokenization from repo indexer (#7733)
* Make repository indexer tokenize by camel case selectable

* Revert "Make repository indexer tokenize by camel case selectable"

This reverts commit a8d4e40af56ffeab9c040a13e01b9e0d5487bd3b.

* Remove app.ini setting, permanently remove camel case tokenizer

* Increase repoIndexerLatestVersion to force indexes to be rebuilt

* Changes introduced by the commmand make vendor
2019-08-06 07:38:16 +03:00
026696b87a Fix dropTableColumns sqlite implementation (#7710)
* Fix dropTableColumns sqlite implementation

* use droptables and its index dropping support in v78 and v85

* golang-ci fixes

* Add migration from gitea 1.3.3 for sqlite which reveals the droptables bug - thus showing this works
2019-08-05 22:49:49 +01:00
7ad67109d7 Be more strict with git arguments (#7715)
* Be more strict with git arguments
* fix-up commit test
* use bindings for branch name
2019-08-05 21:39:39 +01:00
1d8915ad5d Add a lot of extension to language mappings for syntax highlights (#7741)
Data partially based on [CodeMirror's meta.js](https://github.com/codemirror/CodeMirror/blob/master/mode/meta.js).

Fixes: https://github.com/go-gitea/gitea/issues/6057
2019-08-05 23:48:31 +08:00
7b009626da Add SQL execution on log and indexes on table repository and comment (#7740)
* add index on comment

* add SQL execution time on log and index owner_id on repository

* add migration
2019-08-05 17:29:40 +03:00
52feff5a5c deps: Upgrade gopkg.in/editorconfig/editorconfig-core-go.v1 (#7749)
* deps: Upgrade gopkg.in/editorconfig/editorconfig-core-go.v1 from 1.2.0 to 1.3.0

* deps: vendor updates
2019-08-05 15:52:41 +08:00
cd238bc415 build: use GOPROXY and disable download on some steps (#7745)
* build: use GOPROXY

* disable download vendor on some steps
2019-08-05 00:58:16 +03:00
5b902e2368 add pagination for admin api get orgs and fix only list public orgs bug (#7742) 2019-08-04 14:33:36 -04:00
7b2a39c78b Apply emoji on commit graph page (#7743) 2019-08-04 22:49:29 +08:00
a1f5789a29 Tweak label border CSS (#7739)
Also did various tweaks to label hover and dark theme.

Fixes: https://github.com/go-gitea/gitea/pull/5487
2019-08-04 20:55:20 +08:00
0e887af2d1 Fix specific highlighting (CMakeLists.txt ...) (#7686)
* Fix specific highlighting.

* Highlighting CMakeLists.txt:
remove case sensitive checks.
use lowercase checks instead.
2019-08-04 16:11:27 +08:00
09463d17e4 Fix repo_index_status lingering when deleting a repository (#7734) 2019-08-04 09:53:17 +03:00
6c0c5c5310 Fix milestone completness calculation when migrating (#7725) 2019-08-03 21:38:42 +03:00
4fe490f062 Fixes indexed repos keeping outdated indexes when files grow too large (#7712) 2019-08-03 18:42:09 +01:00
7d9a13035e display as error (#7724) 2019-08-03 10:07:51 +03:00
76408d50fb org/members: display 2FA members states + optimize sql requests (#7621)
* org/members: display 2FA state

* fix comment typo

* lay down UserList bases

* add basic test for previous methods

* add comment for UserList type

* add valid two-fa account

* test new UserList methods

* optimize MembersIsPublic by side loading info on GetMembers + fix integrations tests

* respect fmt rules

* use map for data

* Optimize GetTwoFaStatus

* rewrite by using existing sub func

* Optimize IsUserOrgOwner

* remove un-used code

* tests: cover empty org + fix import order

* tests: add ErrTeamNotExist path

* tests: fix wrong expected result
2019-08-02 12:06:27 -04:00
3566d2c860 Include "executable" files in the index, as they are not necessarily binary (#7718) 2019-08-02 23:14:50 +08:00
06392479b4 Skip non-regular files (e.g. submodules) on repo indexing (#7711) 2019-08-02 07:57:53 +01:00
0fabdf03b2 Fix create menu item widths (#7708)
Fixes: https://github.com/go-gitea/gitea/issues/7098
2019-08-01 23:06:34 +03:00
c1b09c30f0 drone: a test for compat with 32 bit (#7707) 2019-08-01 14:00:12 -04:00
e503794371 remove unnecessary fmt on generate bindata (#7706) 2019-08-01 13:34:46 -04:00
bb22e3a1e1 update gopkg.in/src-d/go-git.v4 to v4.13.1 (#7705) 2019-08-01 12:31:03 -04:00
02999c9a44 improve branches list performance and fix protected branch icon when no-login (#7695) 2019-08-01 10:50:06 -04:00
a4b7a4f2f8 Correct wrong datetime format for git (#7689) 2019-07-31 15:19:47 -04:00
a9b4c8171f Update src-d/go-git to v4.13.0 (#7688)
* update gopkg.in/src-d/go-git.v4 v4.13.0

* mod tidy

* vendor
2019-07-31 12:45:42 -04:00
bb875e98a1 frontport 1.9.0 changelog (#7687) 2019-07-31 09:38:28 -04:00
0742f717ad fix duplicated webhook when creating issue with assignees (#7681) 2019-07-31 17:24:38 +08:00
ce27e48fe3 [skip ci] Updated translations via Crowdin 2019-07-31 06:16:57 +00:00
41336351b7 Move add to hook queue for created repo to outside xorm session. (#7675)
Signed-off-by: David Svantesson <davidsvantesson@gmail.com>
2019-07-31 09:13:04 +03:00
d974c139b4 sugestion to use range .Branches (#7674)
d57973a804
2019-07-30 23:02:58 +08:00
e7d4895732 Move commit repo action from models to repofiles package (#7645)
* move commit repo action from models to repofiles package

* fix unit tests
2019-07-30 09:59:10 +08:00
4d643a59db SetDefaultBranch on pushing to empty repository (#7610) 2019-07-30 09:05:33 +08:00
a957d4eeac [skip ci] Updated translations via Crowdin 2019-07-29 15:43:57 +00:00
a94ae7acb0 fix bug on migrating milestone from github (#7665) 2019-07-29 16:41:22 +01:00
ed3d124552 css: use flex to fix floating paginate (#7656) 2019-07-29 14:14:55 +08:00
23e8cff08c hide delete/restor button on archived repos (#7658)
close issue #7653
2019-07-29 13:00:43 +08:00
dd8a295efc [skip ci] Updated translations via Crowdin 2019-07-29 04:21:31 +00:00
d02566a8ea integration tests: Use t.Helper() (#7654) 2019-07-29 12:15:18 +08:00
0c927b1606 change length of some repository's columns (#7652) 2019-07-29 11:29:42 +08:00
31a1fe175f [Branch View] add download button (#7604)
* add download-button info message

* add overflow-visible css for table colum class

* right colum is always there

* add download button for default branch

* add download button for all other branchs

* resize table colum so two buttons fit in

* code indent avter rebase

* show commit divergence corect
https://github.com/go-gitea/gitea/issues/7625

* changes because of merge master into ...

* optimize if statement for protected branches

* dont downloat a deleted branch - fix error 404
2019-07-29 10:27:05 +08:00
a19138c1d3 [Branch View] Protection Symbole (delete dublicate) (#7624)
* delet protectin symbol on "action column"

* code format
2019-07-27 22:11:14 +08:00
cbf231a675 fix wrong email when use gitea as OAuth2 provider (#7640)
when you use gitea as OAuth2 provider, the /api/v1/user should return
user primary email as identifier, which is unique in OAuth2 clients.

this patch use convert.ToUser replace all u.APIFormat in api requests,
return primary email when caller is yourself or admin.
2019-07-27 16:15:30 +03:00
700cd346fa Fix regression in reverse proxy documentation (#7634)
From Apache: AllowEncodedSlashes not allowed in <Proxy> context

Move this out of <Proxy> block

Fixes #7632
2019-07-26 18:09:12 -04:00
cdaf9a5ef5 reserve .well-known username (#7637) 2019-07-26 16:06:21 -04:00
c22b7416e4 [skip ci] Updated translations via Crowdin 2019-07-26 11:23:16 +00:00
0b1a4c38d9 [Branch View] Delete Table Header (#7622)
* add class trom table header to table body

* remove table header
2019-07-26 12:21:14 +01:00
539acba997 [skip ci] Updated translations via Crowdin 2019-07-26 04:28:01 +00:00
78e5317242 Update to latest mssqldriver (#7613)
* New driver does not tolerate USE - handle this by closing db and reopening db in the new dbname
2019-07-26 05:10:20 +01:00
bebc6a3c77 [Branch View] icons to buttons (#7602)
* add restore-button info message

* branch deltete undo icon to button

* branch deltete icon to button
2019-07-26 01:01:25 +01:00
1d7dd7d624 Fix syntax highlight initialization (#7617)
* Fix syntax highlight initialization

Previously hljs was initialized via a function that relies on the
DOMContentLoaded event, registerd after jQuery's 'ready' event. I assume
that with the recent jQuery update, DOMContentLoaded may not be
guaranteed to fire after 'ready'. Fixed this via vanilla JS initalization.

Fixes: https://github.com/go-gitea/gitea/issues/7559

* semicolon
2019-07-25 23:29:54 +01:00
6782a704ef Fix bug create/edit wiki pages when code master branch protected (#7580)
* fix bug create/edit wiki pages when code master branch protected

* improve FullPushingEnvironment function
2019-07-25 22:50:20 +01:00
18c0e9c2a9 Make PKCS8, PEM and SSH2 keys work (#7600)
* Make PEM and SSH2 keys work

* add ssh2 testcases and PEM cases - and fix PEM

* Add final test to parse the proposed key
2019-07-25 20:33:38 +01:00
6485962dd5 Fix panic on push at #7611 (#7615)
* Fix panic in #7611

Use pr.IssueID instead of pr.Issue.ID as Issue may not be loaded and is unnecessary

* Only fetch the head branch from the remote
2019-07-25 19:05:51 +01:00
734aa96508 Fix #7136: Add paging and extend API GetCommitStatuses (#7141)
* Fix #7136: Add paging and extend API GetCommitStatuses

* update swagger

* Update routers/api/v1/repo/status.go

Co-Authored-By: techknowlogick <matti@mdranta.net>

* Update routers/api/v1/repo/status.go

Co-Authored-By: techknowlogick <matti@mdranta.net>

* Update routers/api/v1/repo/status.go

Co-Authored-By: techknowlogick <matti@mdranta.net>

* Apply suggestions from code review
2019-07-25 11:55:06 +01:00
5efd3630bc Update to xorm@v0.7.4 (#7596)
Signed-off-by: Tamal Saha <tamal@appscode.com>
2019-07-25 00:39:14 +03:00
d4667a4949 drone/docker: prepare multi-arch release + provide arm64 image (#7571)
* drone/docker: prepare multi-arch release

* Add docker-linux-arm64 pipeline

* add arm 64 build to manifest

* tag dry-run + indent

* Fix notify dependency
2019-07-24 13:21:12 -04:00
635e7b38bd Swagger: Add information to API Token header (#7585)
* Add a description to the API Token header for swagger
2019-07-24 09:34:11 +01:00
2c5c458dd7 Move models.PushUpdate to repofiles.PushUpdate (#7485)
* move models.PushUpdate to repofiles.PushUpdate

* remove duplicated code to load repo
2019-07-24 15:13:26 +08:00
c236ba35ca use 403 instead of 401 for ErrUserProhibitLogin (#7591) 2019-07-23 21:38:47 +01:00
5e4e7d3df0 Added missing error checks in tests (#7554)
Whenever we assign a value to err, check for it being nil.
2019-07-23 20:28:43 +01:00
54d96c79b5 Removed unnecessary conversions (#7557)
No need to convert to the same type.
2019-07-23 19:50:39 +01:00
2f75766532 Handle ErrUserProhibitLogin in http git (#7586) 2019-07-23 18:32:53 +01:00
4334652ed1 fix #7568 (#7587) 2019-07-23 22:31:51 +08:00
e3a2c7413e [skip ci] Updated translations via Crowdin 2019-07-23 13:28:00 +00:00
b10109ffe8 Improve SSH key parser to handle newlines in keys (#7522)
* Strip newlines from SSH keys before adding them

Fixes: https://github.com/go-gitea/gitea/issues/7500

* add test for CheckPublicKeyString

* add one more test

* simplify test

* further simplify

* make fmt
2019-07-23 16:25:06 +03:00
bcbc9f33d7 Fix file header overflow in file and blame views (#7562) 2019-07-23 10:12:09 +08:00
26b493bb26 Fixes #7564 - Malformed URLs in API git/commits response (#7565) 2019-07-22 18:32:22 +01:00
fe7689a6b2 Fix empty commits now showing in repo overview (#7521)
* Fix empty commits now showing in repo overview

* add test

* make fmt
2019-07-22 15:03:15 +03:00
b0cd3b8ab9 Fixed ineffectual assignments (#7555)
Don't assign values we never use.
2019-07-22 17:35:53 +08:00
9a965035f0 Un-lambda base.FileSize (#7556)
No need to wrap this.
2019-07-22 11:58:26 +03:00
12a098920c Fixed ineffectual assignments in tests (#7553)
Just makes it a bit more obvious which values we want to test for, and which
ones we want to ignore.
2019-07-22 15:11:16 +08:00
cc384d767e Specify using AllowEncodedSlashes and nocanon for httpd (#7540)
When using wiki page names that include a slash
behind a Apache HTTPD reverse proxy,
AllowEncodedSlashes NoDecode
and appending nocanon to the ProxyPass
directive is required. This commit adds that
information to the documentation.

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-07-20 21:44:53 +03:00
61ad048041 [skip ci] Updated translations via Crowdin 2019-07-20 14:44:10 +00:00
0a584a49a1 Add self to maintainers (#7541) 2019-07-20 10:41:22 -04:00
e0d6d2f978 Fix repository's pull request count error (#7518)
* fix pr count error

* fix tests
2019-07-18 22:51:33 +01:00
f9d6e35a8a [skip ci] Updated translations via Crowdin 2019-07-18 20:25:42 +00:00
8ad64574ee Fix markdown invoke sequence (#7513) 2019-07-18 16:23:27 -04:00
be9d67f887 Added total count of contributions to heatmap (#7517)
* Added total count of contributions to heatmap

Signed-off-by: kolaente <k@knt.li>

* make css

Signed-off-by: kolaente <k@knt.li>
2019-07-18 13:04:28 -04:00
3cba42c43d Make default branch name link to default branch (#7519)
The default branch's name on the branches page
for a repo was previously simply text and did
not link anywhere.

The name is now a link to the default branch
just like the non-default branch names.

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-07-18 12:39:51 -04:00
f3bbe81186 [skip ci] Updated translations via Crowdin 2019-07-18 08:57:48 +00:00
8ea60e7e61 remove duplicated webhook trigger (#7511) 2019-07-18 16:54:55 +08:00
c5f9c04186 Fixes for README_ZH (#7506) 2019-07-18 09:38:47 +08:00
f1ca8ed049 Update CONTRIBUTING.md with information about DCO (#7397)
* Update CONTRIBUTING.md with information about DCO

References: #7389
More information: https://about.gitlab.com/handbook/marketing/community-relations/code-contributor-program/#developer-certificate-of-origin-dco

* Update CONTRIBUTING.md

Co-Authored-By: zeripath <art27@cantab.net>
2019-07-17 16:03:16 -04:00
c8aa46d27b Add Extra Info to Branches Page (#7461)
* Add branch protection information to branches page

This change will add a tag on the ui that indicates
whether a branch is protected on the repository
branches page.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Add last commit information to repo branches page

This change adds the ID and commit message of the last
commit on a branch to the branches page for repositories.

Signed-off-by: Gary Kim <gary@garykim.dev>

* Make branch page commit message truncate in css rather then template

The truncating of commit messages shown under branches
in the repository branches page has been moved to using
css rather then the Go template as the template was causing
some issues when the commit messaged had a link when rendered.

This commit also makes the commit message paragraph itself
use flex in order to make managing its elements easier.

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-07-17 16:02:41 -04:00
34516603ad Fix backer badge (#7505) 2019-07-17 15:03:43 -04:00
944d904980 Include thread related headers in issue/coment mail (#7484)
* Include thread related headers in issue/coment mail

Make it so mail programs will group comments from an issue into the same
thread by setting Message-ID on initial issue and then using In-Reply-To
and References headers to reference that later on.

* Add tests

* more tests

* fix typo
2019-07-17 15:02:42 -04:00
5d3e351864 Fixes #7474 - Handles all redirects for Web UI File CRUD (#7478)
* Fixes #7474 - Handles all redirects for Web UI File CRUD

* Fixes lint errors

* Typo fix

* Adds unit tests for a few helper functions

* Fixes per review

* Fix for new branch creation and to unit test

* Fixes the template used for errors on delete
2019-07-17 14:40:28 -04:00
361607d831 Update User.NumRepos atomically in createRepository (#7493)
The update call on the user call races if there is more than one
repository creation concurrently, leading to incorrect count of
repos. Split things in two, so that we call the update for last
visibility (which isn't problematic if it races, since it can only
ever be best-effort anyway). This way we can atomically increment
the count of repos.
2019-07-17 13:34:13 -04:00
0e2996caa1 fix missing queue type on app.ini.sample (#7494) 2019-07-17 12:23:54 -04:00
acf6bd42c4 drone/docker: Use a more standard format (#7480)
* drone/docker: Use a more standard format

Based on the plugin drone structure itself : ebce953fc4/.drone.yml (L9)
Use autotag : http://plugins.drone.io/drone-plugins/drone-docker/#autotag

* use latest plugins/docker:linux-amd64

* remove useless cache_from

* Don't depends on translations step
2019-07-17 10:47:34 -04:00
aaf8c9f047 don't make release-version deps on transalations since translations is only triggered by push on master (#7496) 2019-07-17 14:12:32 +08:00
ce087c58ef Remove settting dependency on modules/session (#7237)
* remove settting dependency on modules/session

* fix fmt

* fix tests

* fix lint
2019-07-17 09:04:37 +08:00
2771619acf Fixes #7475 - Settings pages giving UnitType error message (#7482) 2019-07-15 23:43:30 -04:00
f34726a4b9 convert all js var to let/const (#7464)
Most of the work was done by `eslint --fix`, I fixed around 10 cases
where it could not auto-convert.
2019-07-16 09:51:46 +08:00
d2958d9f46 Move status table to cron package (#7370) 2019-07-15 20:13:03 -04:00
760c473896 Fix typo in home.tmpl (#7452) 2019-07-15 19:26:23 -04:00
4091e0dfee update js dependencies (#7462)
this is the result of `make npm-update js css`
2019-07-14 12:53:04 -04:00
fb0c562f8b Fix regex for issues in commit messages (#7444)
* Fix regex for issues in commit messages

Use same regex as markup for matching in commits.

Fixes #7438

* make fmt
2019-07-14 22:48:51 +08:00
97078d1bdf Add Issue link to feature compare "reject unsigned" (#7465)
* add issue "Reject unsigned commits" #7455 to docu

* change issue to orig one
2019-07-14 21:58:58 +08:00
2739a0be98 only create opened pull request when migrating from github (#7463) 2019-07-14 17:16:15 +08:00
3fc47de332 Bump lodash from 4.17.11 to 4.17.14 (#7459)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.14.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.14)

Signed-off-by: dependabot[bot] <support@github.com>
2019-07-14 12:04:36 +08:00
2186a99c76 cmd/serv: actually exit after fatal errors (#7458)
Regression in 356854fc5f8d7d1a7e4d68c9e00929e9ce8aa867, where
a log.Fatal call was removed. log.Fatal calls os.Exit(1) as intended,
but without it the fail() function returns normally and execution
continues past the fatal error, causing a panic.

This is visible as a go panic log and stack trace returned to the SSH
client, which is not only ugly, it leaks server and build system
information.

Fix by removing the stray return statement so that the fail() function
always calls os.Exit(1).

Fixes: https://github.com/go-gitea/gitea/issues/7457
Signed-off-by: Allen Wild <allenwild93@gmail.com>
2019-07-13 21:38:18 +01:00
50d8d171f0 Fix an issue with some pages throwing 'not defined' js exceptions (#7450)
Fix an issue introduced by 831288cc916d5301beaa0adc1d912d6748a4cdaa

Signed-off-by: Gary Kim <gary@garykim.dev>
2019-07-13 09:09:50 +01:00
831288cc91 fix Dropzone.js integration (#7445) 2019-07-12 21:49:04 +01:00
a23e19226a fix/define autochecked checkboxes on issue list in firefox (#7320)
* fix/define autochecked checkboxes on issue list on firefox

- close: deselect all
- nonclose: show buttons for close/label/milestone...

fix #7311

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* remove unnessesary timeouts

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* add comments in code - this is targeting firefox

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-12 21:16:23 +01:00
0018d5603e create class for inlie positioned lists (#7393)
replace org create alignment hack

fix #6464

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-12 18:44:28 +01:00
2a1ec31988 Diff: Fix indentation on unhighlighted code (#7435)
There was a missing space before the `nohighlight` class which made the
previous class concatenate wrongly as `wrapnohighlight` in the template.
2019-07-12 16:22:52 +01:00
2102f9d92d Support setting cookie domain (#6288)
Signed-off-by: Tamal Saha <tamal@appscode.com>
2019-07-12 09:57:31 -04:00
d95237b561 add notification placeholder (#7409) 2019-07-12 16:55:46 +08:00
efaee46b4d jQuery 3 (#7425)
* jquery 3

* use most recent version of migrate plugin

* Delete .DS_Store

* update service worker in case anyone has old version of jquery cached
2019-07-12 08:21:44 +03:00
072bdfa3f5 Only show "New Pull Request" button if repo allows pulls (#7426)
Signed-off-by: Gary Kim <gary@garykim.dev>
2019-07-11 16:21:16 -04:00
a7b1ba0e3d wiki history improvements (#7391)
* add history comments to detect page delete

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* fix too much history entries
- caused by --follow flag
  - if files with same contents exists

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* style imprevements wiki
- history - wrap long author names

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-11 22:45:10 +08:00
a0820e09fb Add section about customizing mail (#7419)
See https://github.com/go-gitea/gitea/issues/6037
2019-07-11 01:27:57 -04:00
b84a251fca upgrade macaron/captcha to fix random error problem (#7407) 2019-07-10 13:26:42 +08:00
877df0f9fb [skip ci] Updated translations via Crowdin 2019-07-09 06:30:32 +00:00
f03e5b7c3e fix vendor (#7394) 2019-07-09 14:27:02 +08:00
46d3d10d77 [skip ci] Updated translations via Crowdin 2019-07-09 02:27:49 +00:00
d7fccb29de Fetch refs for successful testing for tag (#7388)
* Fetch refs for successful testing for tag

Fix #7382

* Update .drone.yml
2019-07-09 03:24:52 +01:00
3c3f74988a ui fixes - compare view and archieved repo issues (#7345)
* add 'repo archived - comment/pull not possible' message

affects #7304

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* add navbar to compare view

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* remove wrong if else

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-08 20:18:09 +01:00
0622e83055 add missing template variable on organisation settings (#7385)
fix #6755

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-09 01:11:04 +08:00
1fc90bb474 [skip ci] Updated translations via Crowdin 2019-07-08 15:49:00 +00:00
c8a52b949b fix post parameter - on issue list - unset assignee (#7380)
* fix post parameter - issue list - assignee

fix #7328 - remove assignee on issue list return 500

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* add missing semicolons

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-08 11:29:52 -04:00
6138388ffa [skip ci] Updated translations via Crowdin 2019-07-08 10:13:47 +00:00
427a161c67 Fix migration tests since #7 fixed (#7375)
* fix migration tests since #7 fixed

* fix test time
2019-07-08 13:10:56 +03:00
5f8f42e274 [skip ci] Updated translations via Crowdin 2019-07-08 08:23:19 +00:00
e5b247ea8e wiki - page revisions list (#7369)
fix #7

* add wiki page revision list

* mobile improvements

* css improvements for long usernames

* split renderWikiPage into 3 functions

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-08 11:20:22 +03:00
d7211c5b5d [skip ci] Updated translations via Crowdin 2019-07-08 07:34:55 +00:00
ff85a6331e only return head: null if source branch was deleted (#6705)
* only return head: null if source branch was deleted

* add URL into GetPullRequest

* TestPullRequest_APIFormat

* log error if it is not Err(Branch)NotExist
2019-07-08 10:32:46 +03:00
cb2ec41dce [skip ci] Updated translations via Crowdin 2019-07-08 02:17:03 +00:00
1f1ecda541 Display original author and URL information when showing migrated issues/comments (#7352)
* Store original author info for migrated issues and comments

Keep original author name for displaying in Gitea interface and also
store original author user ID for potential future use in linking
accounts from old location.

* Add original_url for repo

Store the original URL for a migrated repo

Clean up migrations/tests

* fix migration

* fix golangci-lint

* make 'make revive' happy also

* Modify templates to use OriginalAuthor if set

Use the original author name in templates if it is set rather than the
user who migrated/currently owns the issues

* formatting fixes

* make generate-swagger

* Use default avatar for imported comments

* Remove no longer used IgnoreIssueAuthor option

* Add OriginalAuthorID to swagger also
2019-07-08 10:14:12 +08:00
fcda2d5b35 [skip ci] Updated translations via Crowdin 2019-07-07 07:29:09 +00:00
f88aa1d215 Support git.PATH entry in app.ini (#6772) 2019-07-07 03:26:56 -04:00
8d9d6aa903 Add additional password hash algorithms (closes #5859) (#6023) 2019-07-07 02:01:01 -04:00
1b85b248e4 wiki - editor - add buttons 'inline code', 'empty checkbox', 'checked checkbox' (#7243)
* wiki - editor - add buttons 'inline code', 'add empty checkbox', 'add checked checkbox'

affects #5436

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* add missing 'set focus' after insert with buttons

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* consistent usage of let/const in added code
2019-07-07 00:22:04 -04:00
ed676f91b3 dark theme scrollbars (#7269) 2019-07-06 23:53:02 -04:00
87404d7c0b Use vendors when go generate (#7340)
* use vendors when go generate

* update docs about golang minimal requirement from 1.9 to 1.11

* fix build
2019-07-06 23:00:41 -04:00
f369788347 Refactor filetype is not allowed errors (#7309) 2019-07-06 22:25:05 -04:00
75d4414386 Implement the ability to change the ssh port to match what is in the gitea config (#7286)
* - rearrange the templates to make it more logical because now ssh_config is a template
- implemented the updating of the port to the same as the port sent to the gitea config

* change the filename back
2019-07-06 21:57:53 -04:00
b282d4e121 [skip ci] Updated translations via Crowdin 2019-07-07 01:30:14 +00:00
d0ec940dd7 switch to use gliderlabs/ssh for builtin server (#7250)
resolves git conflicts from #3896 (credit to @belak, in case github doesn't keep original author during squash)

Co-Authored-By: Matti Ranta <techknowlogick@gitea.io>
2019-07-06 21:28:09 -04:00
c44f0b1c76 [skip ci] Updated translations via Crowdin 2019-07-06 23:30:08 +00:00
7b82056b0e 1.9.0-RC1 changelog (#7367) 2019-07-06 19:00:49 -04:00
8baa2dc8eb [skip ci] Updated translations via Crowdin 2019-07-06 22:14:41 +00:00
362100023c ui - issue view - fix icon position (#7354)
* issue view - fix icon position

- move style from template to css
- add bullets to: key, circle-slash, comment

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* add border to symbols

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* fix circle slash position

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* fix top margin

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* changed mixed space/tab indent to tabindent only

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-06 18:03:00 -04:00
5b92bc1bec ui - cut timeline length with last element on issue view (#7355)
* cut timeline length with last element on issue view

fix #7304

- lightly enlight dark theme issue timeline color

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* remove new container

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-06 22:37:46 +01:00
7166629d9c Fix typo in PR migration check (#7368) 2019-07-06 16:32:15 -04:00
89aa08d372 Fix mirror sync not automatically sending webhook requests (#7366) 2019-07-06 16:01:21 -04:00
62d6127f1b Make captcha and password optional for external accounts (#6606) 2019-07-06 15:48:02 -04:00
337d6915ff Detect migrating batch size (#7353)
* Make migrating batch size as configurable

* detect different table batch insert size and remove config item

* remove unrelated changes
2019-07-06 15:24:50 -04:00
ef57fe4ae3 routers: do not leak secrets via timing side channel (#7364)
* routers: do not leak secrets via timing side channel

* routers/repo: do not leak secrets via timing side channel
2019-07-06 13:03:13 -04:00
96b66e330b routers/user: ensure that decryption of cookie actually suceeds (#7363)
Previously, only the first return value of ctx.GetSuperSecureCookie
was used to check whether decryption of the auth cookie succeeded.
ctx.GetSuperSecureCookie also returns a second value, a boolean,
indicating success or not. That value should be checked first to
be on the safe side and not rely on internal logic of the encryption
and decryption blackbox.
2019-07-06 23:47:09 +08:00
86750325c7 workaround broken drone build (#7362)
* workaround broken swagger

only master brach is not working, latest release seems to work

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* make vendor

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* Don't export GO111MODULE

* set go-swagger to fixed release version

mentioned here: https://github.com/go-gitea/gitea/pull/7362#discussion_r300831537

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-07-06 16:16:43 +01:00
49ee9d2771 update contributing to use recent version of drone cli (#7351)
fix #7350
2019-07-03 19:28:48 -04:00
b5aa7f7ceb fix api route (#7346) 2019-07-03 06:31:29 +01:00
68ec7b8be9 update dependencies and various tweaks (#7344)
- ran `make npm-update`
- ran `make js`, fixed new lint issue
- ran `make css`, this added back some vendor prefixes
- added `engines` property to package.json to specify minimum required
  Node.js version
- added `private` property to package.json to prevent accidential
  publishing to npm
2019-07-02 20:11:24 +01:00
c39df04087 Display Github support button (#7343)
This need an option to be enabled on repo : https://help.github.com/en/articles/displaying-a-sponsor-button-in-your-repository
2019-07-02 12:06:25 +02:00
6e2a59e4ce Use commit graph files for listing pages (#7314)
* Experimental support for git commit graph files and bloom filter index

Signed-off-by: Filip Navara <filip.navara@gmail.com>

* Force vendor of commitgraph

Signed-off-by: Filip Navara <filip.navara@gmail.com>

* Remove bloom filter experiment and debug prints

* Remove old code for building commit graphs

* Remove unused function

* Remove mmap usage

* gofmt

* sort vendor/modules.txt

* Add copyright header and log commit-graph error
2019-07-02 10:15:14 +08:00
e728b55812 Fix bug conflict between SyncReleasesWithTags and InsertReleases (#7337)
* fix bug conflict between SyncReleasesWithTags and InsertReleases

* fix tests

* fix fmt
2019-07-01 22:17:16 +01:00
9fdd199cca make dropTableColumns drop columns on sqlite and constraints on all (#6849) 2019-07-01 15:26:59 -04:00
5f25558ac2 fix updated drone file (#7336) 2019-07-01 10:32:50 +03:00
1772c6b94d fix pull view ui merge section (#7335)
* fix pull view ui merge section

* fix tests

* fix tests
2019-07-01 00:08:43 -04:00
9c6af9d2bb wrap long texts on user profile info (#7333)
fix #7255

discussed in PR #7254

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-06-30 21:56:26 -04:00
3563650bdb #6946 Run hooks on merge/edit and cope with protected branches (#6961)
* Fix #6946 by checking PullRequest ID on pushing

* Ensure we have the owner name, the pr attributes and the the issue

* Fix TestSearchRepo by waiting till indexing is done

* Update integrations/repo_search_test.go

* changes as per @mrsdizzie

* missing comma

* Spelling mistake

* Fix full pushing environment
2019-07-01 09:18:13 +08:00
e5a4d784e8 chore: update drone format to 1.0 (#6602)
* chore: update drone format to 1.0

* Converted old drone config

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Moved translations to seperate pipeline

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Split the steps in multiple pipelines and add dependencies

Signed-off-by: konrad <konrad@kola-entertainments.de>

* format

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Fixed step depenednecies

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Fixed discord notify

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Exclude translations and docs pipelines from prs

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Fixed exclude prs

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Fixed exclude prs

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Moved releases to seperate pipeline

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Re-trigger drone

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Disable release step

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Fixed depending step

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Adopted dependencies

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Changed pipeline conditions

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Replaced pipeline conditions with triggers

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Fixed coverage step

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Import changes from #7331

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Add comment for lowest go version

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Exclude fetch-tags from prs

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Re-added comment about no tags

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Removed unneeded conditions

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Moved release version and release latest to different pipelines

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Fixed depending pipeline

Signed-off-by: konrad <konrad@kola-entertainments.de>

* Removed the conditions for all services

Signed-off-by: konrad <konrad@kola-entertainments.de>
2019-06-30 19:53:41 -04:00
0dca17b760 [skip ci] Updated translations via Crowdin 2019-06-30 21:20:34 +00:00
36448bc923 1.8.3 release (#7332) 2019-06-30 17:17:43 -04:00
17fa227f37 [skip ci] Updated translations via Crowdin 2019-06-30 11:57:58 +00:00
8ab2d31bfe fix topic bar to allow prefixes (#7325)
* - do not select if escape is pressed
- allow prefixes by adding current request content to result list
- remove html-tags before insert on page

fix #7126

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* sort current query to top

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* remove already added topics from dropdown list

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* protoct against xss

thanks to @silverwind

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-06-30 12:55:48 +01:00
ff85dd3e12 Add commit statuses reports on pull request view (#6845)
* Add commit statuses reports on pull view

* Add some translations

* improve the UI

* fix fmt

* fix tests

* add a new test git repo to fix tests

* fix bug when headRepo or headBranch missing

* fix tests

* fix tests

* fix consistency

* fix tests

* fix tests

* change the test repo

* fix tests

* fix tests

* fix migration

* keep db size consistency

* fix translation

* change commit hash status table unique index

* remove unused table

* use char instead varchar

* make hashCommitStatusContext private

* split merge section with status check on pull view ui

* fix tests; fix arc-green theme on pull ui
2019-06-30 08:57:59 +01:00
1e46eedce7 update mssql drive to last working version 20180314172330-6a30f4e59a44 (#7306) 2019-06-30 11:28:17 +08:00
aeb8f7aad8 [skip ci] Updated translations via Crowdin 2019-06-29 20:52:06 +00:00
cd96dee982 Fixes #7292 - API File Contents bug (#7301) 2019-06-29 16:51:10 -04:00
738285a4aa [skip ci] Updated translations via Crowdin 2019-06-29 15:22:08 +00:00
002b597c1f Fixes #7152 - Allow create/update/delete message to be empty, use default message (#7324)
* Fixes #7152 - Allow create/update/delete message to be empty, use default message

* Linting fix

* Fix to delete integration tests
2019-06-29 16:19:24 +01:00
462284e2f5 Use batch insert on migrating repository to make the process faster (#7050)
* Use batch insert on migrating repository to make the process faster

* fix lint

* fix tests

* fix comments
2019-06-29 21:38:22 +08:00
e463bdaf8d [skip ci] Updated translations via Crowdin 2019-06-29 11:47:09 +00:00
d741316aae add commitgraph support global default true when git version >= 2.18 (#7313) 2019-06-29 12:46:25 +01:00
37b6ee1787 [skip ci] Updated translations via Crowdin 2019-06-29 10:45:07 +00:00
567e117df8 Fixes #7238 - Annotated tag commit ID incorrect (#7321)
* Fixes #7238 - Annotated tag commit ID incorrect

* Fixes #7238 - Annotated tag commit ID incorrect
2019-06-29 11:44:17 +01:00
7bd0dc4975 [skip ci] Updated translations via Crowdin 2019-06-29 09:19:47 +00:00
711f6dc9b0 Fix 7303 - remove unnessesary buttons on archived repos (#7326)
* archived repo - remove
- open/close button on issue list
- assigne person on issue list

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* archived repo - remove
- comment field on issue view
- lock/unlock issue conversation button from sidebar on issue view

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* archived repo - add 'compare commits' button to pull request

+ remove new pull request button from compare view

as the route is still working, and there is no need to be hidden

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-06-29 10:18:49 +01:00
e005b5f6e6 [skip ci] Updated translations via Crowdin 2019-06-28 21:18:16 +00:00
123c70395e Dark theme fixes (#7319)
* add dark theme for jquery xdsoft_datetimepicker

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* add border to dark theme - not checked issue checkboxes

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-06-28 22:17:21 +01:00
855ebbd206 gitea own dark codemirror theme (#7317)
* modify dark codemirror theme

fix #6573

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* add selection color

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-06-28 10:45:54 +08:00
7c0f2b9843 Show Pull Request button or status of latest PR in branch list (#6990)
* Show Pull Request button or status of latest PR in branch list

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Do not show pull request button on deleted branches

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Do not show commit divergence on deleted branches

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Use XORMs Get instead of limit

* Links pull request ID and use smaller labels for displaying the pull request status

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Handle error when getting latest pull request

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Indent template

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Check error when loading issue

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>
2019-06-27 22:15:30 +08:00
c37ec66ee2 replace lesshint with stylelint (#7305)
New CSS linter which is much more powerfull than the previous one.
Configuration is default but I had to remove a few rules that were
throwing too many or weird errors.

More importantly, the linter will exit with code 1 on errors so now our
build will fail if the CSS linter fails which should eliminate linter
errors being introduced without notice.
2019-06-27 08:36:36 +02:00
da23041257 fix extra newlines when copying from diff in Firefox (#7288)
* fix extra newlines when copying from diff

See https://bugzilla.mozilla.org/show_bug.cgi?id=1273836

Basically, the <pre><code> seems to add a forced newline that is not
possible to get rid of via CSS, so I replaced it with just a <code>.

Secondly, .lines-type-marker also forced a newline in the copied text,
but that was possible to get rid of via user-select.

Safari still has a extraneous newline in the copied text of unknown
origin, but this should not block stop this PR.

* simplify .line-type-marker

* fix selector

* remove erronous ^^^

* Fix empty split diff

* Fix arc-theme-green

* fix add comment

* ensure line-num is copied too

* Update templates/repo/diff/box.tmpl

Co-Authored-By: zeripath <art27@cantab.net>

* attempt to fix safari via removing <code>

* remove useless whitespace at the end of 'class'

* remove inter-tag whitespace for code <td>s

* more inter-tag removal

* final inter-tag removal

* attempt to fix empty line copy

* move and comment getLineContent

* fix golint

* make background grey for missing added code
2019-06-26 22:35:07 +01:00
edc94c7041 Monitor all git commands; move blame to git package and replace git as a variable (#6864)
* monitor all git commands; move blame to git package and replace git as a variable

* use git command but not other commands

* fix build

* move exec.Command to git.NewCommand

* fix fmt

* remove unrelated changes

* remove unrelated changes

* refactor IsEmpty and add tests

* fix tests

* fix tests

* fix tests

* fix tests

* remove gitLogger

* fix fmt

* fix isEmpty

* fix lint

* fix tests
2019-06-26 14:15:26 -04:00
161e12e157 Shadow the password on cache and session config on admin panel (#7300)
* shadow the password on cache and session config on admin panel

* add shadow password of mysql/postgres/couchbase

* fix log import
2019-06-27 00:12:38 +08:00
42729b7562 fix API link header (#7298) 2019-06-26 16:51:32 +08:00
5908bb1030 Make diff line-marker non-selectable (#7279)
* Make diff line-marker non-selectable
* Move to use data-* as per @mrsdizzie
* fix missing line nums
* Add a minimum-width to force right-align of the line num
* Move line-type-marker into separate column
2019-06-24 21:23:52 +01:00
e07ff2f890 [docker] Add LFS_START_SERVER option to control git-lfs support (#7281) 2019-06-24 01:33:56 -04:00
aa7c34cf86 Fix error log when loading issues caused by a xorm bug (#7271)
* fix error log when loading issues caused by a xorm bug

* upgrade packages

* fix fmt

* fix Consistency

* fix tests
2019-06-23 18:22:43 +03:00
baefea311f Fix #732: Add LFS objects to base repository on merging (#7082)
On merge we walk the merge history and ensure that all lfs objects pointed to in
the history are added to the base repository. This switches from relying on having git-lfs installed on the server, (and in fact .gitattributes being correctly installed.)
2019-06-22 18:35:34 +01:00
d14595514e Dark theme markdown fixes (#7260)
* fix colors in dark theme - tables inside rendered markdown

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* fix colors in dark theme - simpleMDE rendered preview

Signed-off-by: Michael Gnehr <michael@gnehr.de>

* Update public/less/themes/arc-green.less

remove scroll bar color, to add this globally on additional PR

Co-Authored-By: Lauris BH <lauris@nix.lv>
Signed-off-by: Michael Gnehr <michael@gnehr.de>

* add missing class name

Signed-off-by: Michael Gnehr <michael@gnehr.de>
2019-06-21 21:27:47 +08:00
a25b3d4c72 Fix Submodule dection in subdir (#7275)
Include the directory in name when looking for matching Submodule from
.gitmodules file

Fixes #7262
2019-06-21 14:13:53 +08:00
8db4541ecf Alpine 3.10 (#7256) 2019-06-20 19:47:51 -04:00
de9b398cde add .fa margin like .octicon (#7258) 2019-06-20 15:16:01 +08:00
8ec659722d Only check and config git on web subcommand but not others (#7236)
* only check and config git on web subcommand but not others

* add Init in git tests
2019-06-19 19:53:37 +03:00
a71cabbd53 add 'npm' and 'npm-update' make targets and lockfile (#7246)
* add 'npm' and 'npm-update' make targets and lockfile

- `make npm` installs and updates node_modules, triggered automatically
   on `make css` and `make js` as it completes reasonably fast and
   ensures consistent modules.
- `make npm-update` updates all dependencies to their latest version,
   regenerates `node_modules` from scratch and updates
   `package-lock.json`. It uses npm modules `updates` written by yours
   truly to find the latest version of each dependency.

* add suggested make dependencies

* remove package-lock.json during npm-update

* regenerate package-lock.json
2019-06-18 22:59:47 -04:00
33ad554800 update go-git to v4.12.0 - fixes #7248 (#7249) 2019-06-19 10:14:15 +08:00
b209531959 fix hljs unintenionally highlighting commit links (#7244)
* fix hljs unintenionally highlighting commit links

* fix unit tests
2019-06-18 18:31:31 -04:00
a205155e9d add self to MAINTAINERS (#7245) 2019-06-18 15:32:49 -04:00
392fe6c943 Fix migration panic when Head.User is not exist (#7226)
* fix migration panic when Head.User is not exist

* fix test
2019-06-18 12:15:39 -04:00
954d24c121 Update css (#7240)
Remove -o-tab-size selectors from tab-sze-1 css
2019-06-18 10:17:00 -04:00
2d097655a6 Fix relref link in docs (#7233) 2019-06-17 22:57:48 -04:00
6d0f78542f Add docs for INTERNAL_TOKEN_URI (#7234) 2019-06-17 22:52:03 -04:00
2e5da98ecb Changelog 1.8.3 (#7230) (#7231)
* Changelog 1.8.3

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Suggestion

Co-Authored-By: zeripath <art27@cantab.net>
2019-06-17 14:42:14 -04:00
a618df8d84 Add CLI commands to manage LDAP authentication source (#6681)
* add CLI commands to manage LDAP authentication source

* delete Gogs copyright

* remove unused return value of func parseLoginSource

* fix comment

Co-Authored-By: ngourdon <31291059+ngourdon@users.noreply.github.com>

* remove config flag already present in global flags

* remove config flag from ldap commands in docs

* remove config flag handling
2019-06-17 14:32:20 -04:00
a200ca1551 [skip ci] Updated translations via Crowdin 2019-06-17 17:36:28 +00:00
eaa3a1db4e Use certmanager provided TLSConfig for LetsEncrypt (#7229) 2019-06-17 13:33:55 -04:00
1e8a616426 show lfs config on admin panel (#7220) 2019-06-16 19:24:49 +01:00
d8168b356d Add missing description of label on API (#7159)
* add missing description of label on API

* fix comment head

* fix swagger
2019-06-16 20:39:52 +08:00
367aeb169a Use go method to calculate ssh key fingerprint (#7128)
* Use go method to calculate key fingerprint

* add gitea copyright

* use native go method only for built-in server

* refactor and add tests

* add gitea copyright
2019-06-16 08:50:46 +01:00
cf2221e3ac Add LastLogin to the User API (#7196) 2019-06-15 23:28:32 -04:00
273f1997ff setting: don't require same running user for internal SSH (like win platform) (#7215) 2019-06-16 10:49:07 +08:00
cde410521c Only warn on errors in deleting LFS orphaned files during repo deletion (#7213) 2019-06-15 23:20:29 +01:00
0323122fd7 fix duplicated file on pull request conflicted files (#7211) 2019-06-15 15:22:26 +01:00
94ceaf1c0c Allow colon between fixing word and issue (#7207)
* Allow colon between fixing word and issue

* update test
2019-06-15 00:00:32 -04:00
9ce4d89e99 UI: Fix overflow issues in repo (#7190)
- Fix layout overflow in repo file list.
- Fix invisible status icon in file view and commit list. In file view,
  the icon was moved to the left because I could not figure out a proper
  fix because of HTML tables.
- Added title attribute to commit messages.
- Fixed two CSS linter warnings in existing CSS.
- Fixed CI variable check in 'make css'.

Fixes: https://github.com/go-gitea/gitea/issues/7180
2019-06-14 09:32:13 +08:00
2f39fc7bb6 fix drone build bug (#7192) 2019-06-13 00:23:45 -04:00
8f0182c322 API error cleanup (#7186) 2019-06-12 17:07:24 -04:00
744fd6a1c8 Add error for fork already existing (#7185) 2019-06-12 16:20:43 -04:00
f9ec2f89f2 Add golangci (#6418) 2019-06-12 15:41:28 -04:00
5832f8d90d Fix database lock when use random repository fallback image (#7166)
* fix database lock when use random repository fallback image

* remove unused function
2019-06-11 20:12:13 -04:00
1608f63e39 Fixes diff on merged pull requests (#7171) 2019-06-11 19:32:08 -04:00
499a8a1cdd Various fixes for issue mail notifications (#7165)
- Send individual mails for actions and comments
- Send mail for new issues/prs without a comment
- Use correct sender for reopen/close actions
- Hopefully fixed all bugs related to missing mails

Fixes: https://github.com/go-gitea/gitea/issues/7124
Fixes: https://github.com/go-gitea/gitea/issues/5977
2019-06-11 20:27:38 +01:00
74690f6451 fix pusher name via ssh push (#7167) 2019-06-11 09:13:24 +08:00
b3b468444b Revert "make modules/structs as a spereate go mod (#7127)" (#7175)
This reverts commit 835b53fc259c82f38945a3e107a4eb51478967d5.
2019-06-10 15:55:58 -04:00
835b53fc25 make modules/structs as a spereate go mod (#7127) 2019-06-10 23:20:49 +08:00
7162fbf3d6 if milestone id is zero don't get it from database (#7169) 2019-06-10 22:16:02 +08:00
d93e6232e8 Move PushUpdate dependency from models to repofiles (#6763)
* remove push_update

* move models.PushUpdate to repofiles.PushUpdate
2019-06-10 19:35:13 +08:00
b1be6fd31f [skip ci] Updated translations via Crowdin 2019-06-10 01:06:14 +00:00
3e05661d8d archived repos can be starred and watched (#7163) 2019-06-10 09:02:42 +08:00
8de0b0a3f0 Fixes #2738 - Adds the /git/tags API endpoint (#7138)
* Fixes #2738 - /git/tags API

* proper URLs

* Adds function comments

* Updates swagger

* Removes newline from tag message

* Removes trailing newline from commit message

* Adds integration test

* Removed debugging

* Adds tests

* Fixes bug where multiple tags of same commit show wrong tag name

* Fix formatting

* Removes unused varaible

* Fix to annotated tag function names and response

* Update modules/git/repo_tag.go

Co-Authored-By: Lauris BH <lauris@nix.lv>

* Uses TagPrefix

* Changes per review, better error handling for getting tag and commit IDs

* Fix to getting commit ID

* Fix to getting commit ID

* Fix to getting commit ID

* Fix to getting commit ID
2019-06-08 17:31:11 +03:00
23a2ee3510 Add command to convert mysql database from utf8 to utf8mb4 (#7144)
* add command to convert mysql database from utf8 to utf8mb4

* Update cmd/convert.go

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update cmd/convert.go

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update cmd/convert.go

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update models/convert.go

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update models/convert.go

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update cmd/convert.go

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>

* Update cmd/convert.go

Co-Authored-By: John Olheiser <42128690+jolheiser@users.noreply.github.com>
2019-06-08 21:53:45 +08:00
6fb31a5461 fix GCArgs load from ini (#7156) 2019-06-08 19:47:46 +08:00
ca58eee6bf [skip ci] Updated translations via Crowdin 2019-06-07 20:32:49 +00:00
311ce2d1d0 Compare branches, commits and tags with each other (#6991)
* Supports tags when comparing commits or branches

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Hide headline when only comparing and don't load unused data

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Merges compare logics to allow comparing branches, commits and tags with eachother

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Display branch or tag instead of commit when used for comparing

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Show pull request form after click on button

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Transfers relevant pull.go changes from master to compare.go

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Fixes error when comparing forks against a commit or tag

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Removes console.log from JavaScript file

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Show icon next to commit reference when comparing branch or tag

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Updates css file

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Fixes import order

* Renames template variable

* Update routers/repo/compare.go

Co-Authored-By: zeripath <art27@cantab.net>

* Update from master

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Allow short-shas in compare

* Renames prInfo to compareInfo

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Check PR permissions only if compare is pull request

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adjusts comment

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Use compareInfo instead of prInfo
2019-06-07 16:29:29 -04:00
bd55f6ff36 Detect noreply email address as user (#7133) 2019-06-06 06:54:25 +01:00
dadc03f5ff [skip ci] Updated translations via Crowdin 2019-06-06 00:40:56 +00:00
de6539fc8c Add state param to milestone listing API (#7131)
* Support state params

* update tests

* fix tests

* add state=all support

* update tests

* update swagger

* update swagger
2019-06-06 08:37:45 +08:00
59e6a7b97f [skip ci] Updated translations via Crowdin 2019-06-05 16:26:53 +00:00
a6fed1542c add docs for #6847 (#7132) 2019-06-05 17:24:09 +01:00
3fb54e11c1 minor fixes in en-US locale (#7130)
a few spelling fixes and one rewritten line

Signed-off-by: katherine <ageha@airen-no-jikken.icu>
2019-06-05 10:16:06 -04:00
5d3177dbb6 Exclude pull_request from fetch-tags step, fixes #7108 (#7120)
Signed-off-by: Nick Meyer <nick@e3b0c442.io>
2019-06-05 09:17:17 +08:00
8bf405986e Add Rust highlighting (#7125) 2019-06-04 17:01:47 -04:00
2a8037fe4e Migration Tweaks (#6260)
* Adds auto-name if repo name is blank
Adds error checking before sanitization in migration

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Changed err from sanitization to a different variable

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Remove handleCreatePost and implement separately

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Make fmt

Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-06-04 15:36:09 -04:00
160e7edd04 [skip ci] Updated translations via Crowdin 2019-06-03 15:13:51 +00:00
2ac2a5b0ba Refactor submodule URL parsing (#7100)
Use combination of url.Parse and regex to parse refURL rather than by
hand with indexes & attempt to check if refURL is from same instance and
adjust output to match.

Also now return empty string instead of our original
guess at URL if we are unable to parse it.

Fixes #1526
2019-06-03 23:11:19 +08:00
45f588e85d Avoid arbitrary format strings upon calling fail() function (#7112) 2019-06-03 09:07:03 +01:00
9002c5157b [skip ci] Updated translations via Crowdin 2019-06-02 21:46:35 +00:00
83b90e4199 Use vfsgen instead of go-bindata (#7080)
* use vfsgen instead of go-bindata

* fix templates

* fix fmt

* vendor vsfgen
2019-06-03 00:43:47 +03:00
8eba27c792 Repository avatar fallback configuration (#7087)
* Only show repository avatar in list when one was selected

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adds fallback configuration option for repository avatar

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Implements repository avatar fallback

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adds admin task for deleting generated repository avatars

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Solve linting issues

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Save avatar before updating database

* Linting

* Update models/repo.go

Co-Authored-By: zeripath <art27@cantab.net>
2019-06-02 14:40:12 +08:00
356854fc5f Move serv hook functionality & drop GitLogger (#6993)
* Move hook functionality internally

* Internalise serv logic

* Remove old internal paths

* finally remove the gitlogger

* Disallow push on archived repositories

* fix lint error

* Update modules/private/key.go

* Update routers/private/hook.go

* Update routers/private/hook.go

* Update routers/private/hook.go

* Updated routers/private/serv.go

* Fix LFS Locks over SSH

* rev-list needs to be run by the hook process

* fixup

* Improve git test

* Ensure that the lfs files are created with a different prefix

* Reduce the replication in git_test.go

* slight refactor

* Remove unnecessary "/"

* Restore ensureAnonymousClone

* Restore ensureAnonymousClone

* Run rev-list on server side

* Try passing in the alternative directories instead

* Mark test as skipped

* Improve git test

* Ensure that the lfs files are created with a different prefix
* Reduce the replication in git_test.go
* Remove unnecessary "/"
2019-06-01 23:00:21 +08:00
8a343dda39 update go git from v4.10.0 to v4.11.0 (#7096) 2019-05-31 20:34:46 +01:00
fb4438a815 Improve git test (#7086)
* Ensure that the lfs files are created with a different prefix
* Reduce the replication in git_test.go
2019-05-31 11:12:15 +01:00
de6ef14d04 Validate External Tracker URL Format (#7089)
* Validate External Tracker URL Format

Add some validation checks for external tracker URL format.

Fixes #7068

* Don't make {index} a hard requirement

* Fix Description

* make fmt

* move regex to package level

* fix copyright date
2019-05-31 10:21:15 +01:00
592924a34b Fix Erlang and Elixir highlight mappings (#7044) 2019-05-30 17:23:16 -04:00
7d12ec2abd improve github downloader on migrations (#7049)
* improve github downloader on migrations

* fix tests

* fix  uppercase function parameters
2019-05-30 16:26:57 -04:00
43cf2f3b55 Fixes #7023 - API Org Visibility (#7028) 2019-05-30 13:57:55 -04:00
d95caf50ec [skip ci] Updated translations via Crowdin 2019-05-30 16:49:44 +00:00
97b6368b7d 1.8.2 changelog (#7079) (#7088)
* 1.8.2 changelog
2019-05-30 17:46:31 +01:00
1831b3b571 Fixes #5960 - Adds API Endpoint for Repo Edit (#7006)
* Feature - #5960 - API Endpoint for Repo Editing

* Revert from merge

* Adds integration testing

* Updates to integration tests

* Revert changes

* Update year in file header

* Misspell fix

* XORM = test

* XORM = test

* revert XORM = file

* Makes RepoUnit.ID be pk and autoincr

* Fix to units

* revert header

* Remove print statement

* Adds other responses

* Improves swagger for creating repo

* Fixes import order

* Better Unit Type does not exist error

* Adds editable repo properties to the response repo structure

* Fix to api_repo_edit_test.go

* Fixes repo test

* Changes per review

* Fixes typo and standardizes comments in the EditRepoOption struct for swagger

* Fixes typo and standardizes comments in the EditRepoOption struct for swagger

* Actually can unarchive through the API

* Unlike delete, user doesn't have to be the owner of the org, just admin to the repo

* Fix to swagger comments for field name change

* Update to swagger docs

* Update swagger

* Changes allow_pull_requests to has_pull_requests
2019-05-30 11:09:05 -04:00
cdd10f145b [skip ci] Updated translations via Crowdin 2019-05-30 02:25:01 +00:00
3fd18838aa Repository avatars (#6986)
* Repository avatars

- first variant of code from old work for gogs
- add migration 87
- add new option in app.ini
- add en-US locale string
- add new class in repository.less

* Add changed index.css, remove unused template name

* Update en-us doc about configuration options

* Add comments to new functions, add new option to docker app.ini

* Add comment for lint

* Remove variable, not needed

* Fix formatting

* Update swagger api template

* Check if avatar exists

* Fix avatar link/path checks

* Typo

* TEXT column can't have a default value

* Fixes:

- remove old avatar file on upload
- use ID in name of avatar file - users may upload same files
- add simple tests

* Fix fmt check

* Generate PNG instead of "static" GIF

* More informative comment

* Fix error message

* Update avatar upload checks:

- add file size check
- add new option
- update config docs
- add new string to en-us locale

* Fixes:

- use FileHEader field for check file size
- add new test - upload big image

* Fix formatting

* Update comments

* Update log message

* Removed wrong style - not needed

* Use Sync2 to migrate

* Update repos list view

- bigger avatar
- fix html blocks alignment

* A little adjust avatar size

* Use small icons for explore/repo list

* Use new cool avatar preparation func by @lafriks

* Missing changes for new function

* Remove unused import, move imports

* Missed new option definition in app.ini

Add file size check in user/profile avatar upload

* Use smaller field length for Avatar

* Use session to update repo DB data, update DeleteAvatar - use session too

* Fix err variable definition

* As suggested @lafriks - return as soon as possible, code readability
2019-05-29 22:22:26 -04:00
d7494046ac bug fix: add single comment in split diff mode (#4745) (#7052)
Signed-off-by: Rob Watson <rfwatson@users.noreply.github.com>
2019-05-29 16:16:12 +01:00
57b2ce03d5 Handle early git version's lack of get-url (#7065) 2019-05-29 06:49:08 +01:00
d01e728090 [skip ci] Updated translations via Crowdin 2019-05-28 16:02:55 +00:00
743697a549 refactor: append, build variable and type switch (#4940)
* refactor: append, build variable and type switch

* fix: remove redundant space.
2019-05-28 23:45:54 +08:00
31557b1274 Fix LFS Locks over SSH (#6999)
* Fix LFS Locks over SSH
* Mark test as skipped
2019-05-28 11:32:41 +01:00
27b271d457 [skip ci] Updated translations via Crowdin 2019-05-28 09:44:31 +00:00
66863ab770 chore: change issue mail title. (#7064)
* chore: change issue mail title.

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>

* change to fullname method

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2019-05-28 10:41:48 +01:00
bd9ed96da5 Install page - Handle invalid administrator username better (#7060)
* Install page - detect invalid admin username before installing

* Also fix #6954
2019-05-28 07:18:40 +01:00
69d81b6569 Handle insecure and ports in go get (#7041)
* Handle insecure and ports in go get

* Fix IsExternalURL for non-standard ports
2019-05-27 22:08:38 +01:00
9ca7fcddbb "It's all in GitHub" isn't true anymore, update the home template (#7059)
NOTE: this commit only updates the english section
2019-05-27 18:43:37 +01:00
cf3ffebfde fix issuer of OTP URI should be URI-encoded. (#6634)
* fix: Issuer of OTP URI should be URI-encoded.

follow this link https://github.com/google/google-authenticator/wiki/Key-Uri-Format .

* filter unsafe character ':' in issuer

* Use Replace rather than ReplaceAll
2019-05-27 18:00:32 +01:00
2c412f517a Add FHS-compliant-script (#6923) 2019-05-26 17:49:54 -04:00
d67fd69474 fix charset was not saved after installation finished (#7048) 2019-05-26 13:36:33 -04:00
f3d87da3e2 Revert "Bugfix: Align comment label and actions to the right (#7024)" (#7055)
This reverts commit 0c432d26fe20d3e50da566cf75fa483376ed8bef.
2019-05-26 12:55:53 -04:00
c2f3938a58 fix possbile mysql invalid connnection error (#7051) 2019-05-26 16:28:33 +03:00
063fa99159 when git version >= 2.18, git command could run with git wire protocol version 2 param if enabled (#7047) 2019-05-26 17:50:06 +08:00
6c16febe4d Update config-cheat-sheet.en-us.md (#7046) 2019-05-26 06:23:30 +01:00
5a722ae812 Timeout test commands without complicated tricks (#7020) 2019-05-26 00:13:01 +01:00
daaae2aad5 migrations: ensure rollback on error (#7039) (#7040) 2019-05-25 22:18:27 +01:00
355ab0c62c Fix wrong init dependency on markup extensions (#7038)
* fix wrong init dependency on markup extensions
2019-05-25 18:15:39 +01:00
0c432d26fe Bugfix: Align comment label and actions to the right (#7024)
* Bugfix: Align comment label and actions to the right

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Restores relative position

* CSS autofixer
2019-05-25 16:37:44 +03:00
df2557835b Improve handling of non-square avatars (#7025)
* Crop avatar before resizing (#1268)

Signed-off-by: Rob Watson <rfwatson@users.noreply.github.com>

* Fix spelling error

Signed-off-by: Rob Watson <rfwatson@users.noreply.github.com>
2019-05-25 14:46:14 +03:00
5f05aa13e0 [skip ci] Updated translations via Crowdin 2019-05-25 08:41:06 +00:00
a83c80a000 Disable arm7 builds (#7037)
* Disable arm7 builds

As arm6 works on arm7 platforms with no noticeable performance difference

* 386
2019-05-25 11:38:14 +03:00
844f9a4bd8 Fix /verify LFS handler expecting wrong content-type (#7015)
Fixes #6960

According to [spec][1], /verify requests must have `Accept: application/vnd.git-lfs+json`

Previous code works because `git-lfs` also [violates spec and doesn't send any Accept header at all][2]
For other clients that DO set `Accept: application/vnd.git-lfs+json`, addition of `Accept: application/vnd.git-lfs`
either forces them to violate the spec or is ignored, depending on order in what they create header list.

[1]: https://github.com/git-lfs/git-lfs/blob/master/docs/api/basic-transfers.md#verification
[2]: https://github.com/git-lfs/git-lfs/issues/3662
2019-05-24 22:21:00 +01:00
61f00bc238 [skip ci] Updated translations via Crowdin 2019-05-24 16:44:08 +00:00
8cd4c2242c Fix default for allowing new organization creation for new users (#7017)
Fixed #6542

When creating users DefaultAllowCreateOrganization was ignored.

Signed-off-by: Julian Picht <julian.picht@gmail.com>

* fix TestCreateUser_Issue5882

Signed-off-by: Julian Picht <julian.picht@gmail.com>
2019-05-24 19:40:45 +03:00
6ff9349a09 [skip ci] Updated translations via Crowdin 2019-05-24 09:12:13 +00:00
a98e085031 Show git-notes (#6984)
* Show git-notes

* Make git-notes heading text localizable

* Refactor git-notes data fetching to a separate function

* Display the author and time of git notes

* Move note bubble inside the commit bubble

* Revert "Move note bubble inside the commit bubble"

This reverts commit c0951fe0e3b4dea38064515546b1825c1bcf19e1.

* Add test for git-notes

* testing ui

* Polish CSS

* Apply suggestions from code review

Co-Authored-By: Lauris BH <lauris@nix.lv>
2019-05-24 10:52:05 +03:00
d5a98a2969 Add support of utf8mb4 for mysql (#6992) 2019-05-24 00:15:26 -04:00
181b7c99ed Added Note about arm7 version to doc (#6983)
Appended the Troubleshooting section with a subsection about the problems with the arm7 version and the recommendation to switch to arm6.
2019-05-23 18:12:59 +01:00
54bd63cd5c Change UpdateRepoIndex api to include watchers (#7012)
* Change UpdateRepoIndex api to include watchers

* Add timeout
2019-05-23 17:00:07 +01:00
6eb53ac570 Fix documentation on Oauth2.Enable flag (#7011)
* Fix documentation on Oauth2.Enable flag

The docs list this as ENABLED, but in the source code it's
ENABLE, meaning following the docs leads to confusion.

* Update sample config for oauth2.ENABLE
2019-05-21 21:48:34 -04:00
0d69dfb4ca Do not attempt to return blob on submodule (#6996) 2019-05-21 22:32:52 +01:00
84bfd00537 Fix TestSearchRepo by waiting till indexing is done (#7004)
* Fix TestSearchRepo by waiting till indexing is done

* Update integrations/repo_search_test.go

* changes as per @mrsdizzie
2019-05-21 20:11:09 +01:00
1f84970de0 Make webhook http connections resuable (#6976)
* make http connections resuable

* add error handler

* fix lint
2019-05-21 15:20:17 +08:00
02542a2c15 fix missing repo description when migrating (#7000) 2019-05-20 15:43:43 +03:00
8de76b6e64 fix u2f registrationlist ToRegistrations() method (#6980) 2019-05-18 14:40:05 +01:00
c385dcc26b Fix index produces problem when issues/pulls deleted (#6973)
* fix index produces problem when issues/pulls deleted

* fix tests

* fix tests

* fix tests
2019-05-18 10:37:49 +08:00
96b412bb87 Stop running hooks on pr merge (#6963)
* Stop running hooks on pr merge

* Remove SSH_ORIGINAL_COMMAND from the pushing environment
2019-05-17 15:41:01 +03:00
04f996f1f9 remove and disable package-lock (#6969)
* remove and disable package-lock

Using exact versions in package.json has the same effect as lockfiles
without all the troubles the lockfiles bring (different versions of
package manager generating different lockfiles primarily).

Ensured we only use exact versions in package.json and stopped
generation of new lockfiles via .npmrc which is support by both the npm
and yarn package managers.

Fixes: https://github.com/go-gitea/gitea/issues/6967

* enable save-exact
2019-05-16 15:33:54 -04:00
68a83cc5a2 Allow collaborators to view repo owned private org (#6965)
Handle case where an orginization is private but a user who is not a
member of the orgninization has been added as a collaborator of a repo
within that org

Fixes #6962
2019-05-16 11:48:40 -04:00
d9dcd09340 add make targets for js and css, add js linter (#6952)
* add make targets for js,css, add javascript linter

- add `make js`, deprecating `make javascripts`
- add `make css`, deprecating `make generate-stylesheets` and
  `make stylesheets-check`
- changed the unclean css check to only run on CI
- add JS linting via eslint with basic configuration and fixed
  discovered issues
- changed autoprefixer to use official `postcss-cli` avoiding the need
  to loop in the makefile
- moved browserslist to package.json so other future tools can use it
  too.
- update documentation for new make targets and added JS section

* fix indentation

* move functions used in html to 'exported' list

* Run lessc binary without having to install anything to node_modules

* use relative paths to node bin scripts, removing npx

* Revert "use relative paths to node bin scripts, removing npx"

This reverts commit 119b725525a8430b32ee7a6e6009b4ece544e39b.

* fix lessc and postcss plugins

* check for node_modules and use actual bin names
2019-05-16 08:57:47 +03:00
775a5a5b0f Stop colorizing files by default (#6949) 2019-05-15 22:37:06 +01:00
7dd983797c [skip ci] Updated translations via Crowdin 2019-05-15 15:52:29 +00:00
56ae539bed SearchRepositoryByName improvements and unification (#6897) 2019-05-15 11:24:39 -04:00
5fb1ad7011 Webhook Logs show proper HTTP Method, and allow change HTTP method in form (#6953)
* Fix #6951 - logs show proper HTTP Method, and allow change HTTP method
in form

* enforce POST method for webhook

* set default if method is empty
2019-05-15 20:01:53 +08:00
710245e81e Refactor models.NewRepoContext to extract git related codes to modules/git (#6941)
* refactor models.NewRepoContext to extract git related codes to modules/git

* fix imports

* refactor
2019-05-15 09:57:00 +08:00
95d3d42c5f Fix code overflow (#6914) 2019-05-14 12:02:59 -04:00
e55c874dd2 Add work path CLI option (#6922)
Makes it possible to set the work path as a CLI option instead of
relying on environment variables which are somewhat opaque
2019-05-14 11:20:35 -04:00
488d34691a Ignore non-standard refs in git push (#6758)
When replicating to gitea from a remote system which makes use of
git refs to store extra data (for example, gerrit), pushing a lot
of refs to gitea can cause problems due to the extra processing
that the pre and post receive hooks perform.  But it's still
useful for gitea to be able to serve those refs.  This change
skips unecessary processing of refs other than branches or tags.

We don't need to check any ref that isn't a branch for branch
protection (protection will never be enabled).  So in the
pre-receive hook, we wrap that check in a test for whether the
ref is a branch.

We also don't need to add information to the activity stream about
pushes to non-standard refs, so we skip that step in the
post-receive hook for refs which are not branches or tags.

For some concrete examples, gerrit maintains a ref for every
patchset of every change in the form refs/changes/XX/YYYY/Z.
Many systems use refs/notes to store additonal data about commits.
This change allows these and other schemes to be used without
affecting gitea.
2019-05-14 10:40:27 -04:00
24a536d145 Remove macaron dependent on models (#6940) 2019-05-14 09:52:18 -04:00
8b36f01f45 Move xorm logger bridge from log to models so that log module could be a standalone package (#6944)
* move xorm logger bridge from log to models so that log module could be a standalone package

* fix tests

* save logger on xorm log bridge
2019-05-14 10:04:07 +03:00
0e057eb033 Fix plain text overflow line wrap (#6915) 2019-05-14 00:11:22 -04:00
6123840745 Remove macaron dependent on modules/log (#6933) 2019-05-13 22:55:52 -04:00
3957b40021 Add less linter via npx (#6936) 2019-05-14 08:54:23 +08:00
c0fc6cd9a8 rotate unusual logs and stop stacktracing (#6935) 2019-05-14 03:08:34 +03:00
e63274ee09 remove macaron dependent on models/mail.go (#6931) 2019-05-14 01:53:54 +03:00
36b68fdb01 [docker] support for custom GITEA_CUSTOM env var (#6608) 2019-05-13 18:19:37 -04:00
597ac064c3 Style orgs list in user profile (#6911) 2019-05-13 23:52:58 +03:00
06ae9a3a96 Use single line per selector & don't strip license comments (#6919) 2019-05-13 20:25:21 +01:00
5df5bfbd13 [skip ci] Updated translations via Crowdin 2019-05-13 15:41:18 +00:00
34d06f4c6b Handle CORS requests (#6289) 2019-05-13 11:38:53 -04:00
6fb58a8cdc Clean less files (#6921) 2019-05-13 07:26:32 +01:00
0b785481d7 Use modules/git for git commands (#6775) 2019-05-13 01:06:47 -04:00
5ffc9656c6 Change drone token name to let users know to use oauth2 (#6912) 2019-05-12 13:29:07 -04:00
3d82367bdc [skip ci] Updated translations via Crowdin 2019-05-12 11:13:32 +00:00
a92ab34493 Fix input size for dependency select (#6913) 2019-05-12 14:10:12 +03:00
13583a650f fix syntax highlight in blame view #6895 (#6909) 2019-05-11 23:27:39 +03:00
ce8de35334 Remove local clones & make hooks run on merge/edit/upload (#6672)
* Add options to git.Clone to make it more capable

* Begin the process of removing the local copy and tidy up

* Remove Wiki LocalCopy Checkouts

* Remove the last LocalRepo helpers

* Remove WithTemporaryFile

* Enable push-hooks for these routes

* Ensure tests cope with hooks

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Remove Repository.LocalCopyPath()

* Move temporary repo to use the standard temporary path

* Fix the tests

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Remove LocalWikiPath

* Fix missing remove

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Use AppURL for Oauth user link (#6894)

* Use AppURL for Oauth user link

Fix #6843

* Update oauth.go

* Update oauth.go

* internal/ssh: ignore env command totally (#6825)

* ssh: ignore env command totally

* Remove commented code 

Needed fix described in issue #6889

* Escape the commit message on issues update and title in telegram hook (#6901)

* update sdk to latest (#6903)

* improve description of branch protection (fix #6886) (#6906)

The branch protection description text were not quite accurate.

* Fix logging documentation (#6904)

* ENABLE_MACARON_REDIRECT should be REDIRECT_MACARON_LOG

* Allow DISABLE_ROUTER_LOG to be set in the [log] section

* [skip ci] Updated translations via Crowdin

* Move sdk structs to modules/structs (#6905)

* move sdk structs to moduels/structs

* fix tests

* fix fmt

* fix swagger

* fix vendor
2019-05-11 11:29:17 -04:00
34eee25bd4 Move sdk structs to modules/structs (#6905)
* move sdk structs to moduels/structs

* fix tests

* fix fmt

* fix swagger

* fix vendor
2019-05-11 18:21:34 +08:00
1658cd04e9 [skip ci] Updated translations via Crowdin 2019-05-11 09:16:08 +00:00
e3166744fe Fix logging documentation (#6904)
* ENABLE_MACARON_REDIRECT should be REDIRECT_MACARON_LOG

* Allow DISABLE_ROUTER_LOG to be set in the [log] section
2019-05-11 10:13:57 +01:00
f378cb572a improve description of branch protection (fix #6886) (#6906)
The branch protection description text were not quite accurate.
2019-05-11 10:42:19 +03:00
1dc401635b update sdk to latest (#6903) 2019-05-10 16:49:29 -04:00
d64a646c0a Escape the commit message on issues update and title in telegram hook (#6901) 2019-05-10 13:48:28 -04:00
10ff527fae internal/ssh: ignore env command totally (#6825)
* ssh: ignore env command totally

* Remove commented code 

Needed fix described in issue #6889
2019-05-09 18:41:43 -04:00
2f21bc33a5 Use AppURL for Oauth user link (#6894)
* Use AppURL for Oauth user link

Fix #6843

* Update oauth.go

* Update oauth.go
2019-05-09 20:22:35 +03:00
6db3dc7c02 Fixes #6881 - API users search fix (#6882) 2019-05-08 22:17:32 +03:00
d8b2ed6627 1.8.1 changelog (#6877) (#6878)
* New and improved

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Add backport/original PR numbers
Change wording for 500 error

Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-05-08 12:21:24 -04:00
Wim
4508380cf7 Show full name if DefaultShowFullName setting activated (#6710)
Adds a new key DEFAULT_SHOW_FULL_NAME (default false) to the [ui] section.
If enabled the full name will be shown (unless it's empty, then
the default username will be used)
2019-05-08 11:41:35 +03:00
a84f10ad1a [skip ci] Updated translations via Crowdin 2019-05-08 07:53:17 +00:00
13cd28602e Change the color of issues/pulls list, merged is purple and closed is red (#6874) 2019-05-08 10:50:15 +03:00
36bde02841 Add documentation for OTP/2FA header in API for basic auth (#6872) 2019-05-07 16:53:45 -04:00
91c2c237f9 [skip ci] Updated translations via Crowdin 2019-05-07 17:23:26 +00:00
9f18b23129 Fix 404 when send pull request some situation (#6871) 2019-05-07 13:20:23 -04:00
9139f35ff6 [skip ci] Updated translations via Crowdin 2019-05-07 01:14:01 +00:00
08069dc465 Improve migrations to support migrating milestones/labels/issues/comments/pullrequests (#6290)
* add migrations

* fix package dependency

* fix lints

* implements migrations except pull requests

* add releases

* migrating releases

* fix bug

* fix lint

* fix migrate releases

* fix tests

* add rollback

* pull request migtations

* fix import

* fix go module vendor

* add tests for upload to gitea

* more migrate options

* fix swagger-check

* fix misspell

* add options on migration UI

* fix log error

* improve UI options on migrating

* add support for username password when migrating from github

* fix tests

* remove comments and fix migrate limitation

* improve error handles

* migrate API will also support migrate milestones/labels/issues/pulls/releases

* fix tests and remove unused codes

* add DownloaderFactory and docs about how to create a new Downloader

* fix misspell

* fix migration docs

* Add hints about migrate options on migration page

* fix tests
2019-05-07 09:12:51 +08:00
1c7c739eb9 [skip ci] Updated translations via Crowdin 2019-05-06 19:51:02 +00:00
650df0bd4e Enforce osusergo build tag for releases (#6862) 2019-05-06 22:48:08 +03:00
d9d538c8a1 Refactor table width to have more info shown in file list (#6867)
* Refactor table width to have more info shown in file list

* Remove unnecesary semicolon

* Fix tests for changed html structure
2019-05-06 21:43:40 +03:00
01ebd52a1f fix config ui error about cache ttl (#6861) 2019-05-06 17:35:11 +03:00
5d5eae6aea [skip ci] Updated translations via Crowdin 2019-05-06 12:18:49 +00:00
2382f1b057 fix 500 when reviewer is deleted with integration tests (#6856) 2019-05-06 20:09:31 +08:00
dab38c375d [docker] drop the docker Makefile from the image (#6507) 2019-05-05 22:49:32 -04:00
0081cd8dfe Add mssql migration tests (#6852) 2019-05-06 02:42:29 +03:00
722a2bd7ec [skip ci] Updated translations via Crowdin 2019-05-05 19:42:06 +00:00
00b883880d Don't post process commit summary in templates (#6842)
* Don't post process commit summary in templates

Don't run summary through render/post process to avoid it generating
links and breaking certain views where the summary is already expected
to be a link to the commit. For consistancy, disable processing of
summary in all locations.

Fixes #6809

* Do process title on diff page

On second thought, the title is often the only place a pull request
number will exists so do process it on the individual diff page. This
fixes the list view and still gives easy access to the PR link
2019-05-05 15:39:10 -04:00
9148e45ed7 [skip ci] Updated translations via Crowdin 2019-05-05 18:59:35 +00:00
d1a32fa108 Attempt to fix #6707 (#6823) 2019-05-05 14:58:49 -04:00
a2a006a5d5 Add GET requests to webhook (#6771)
* Add GET requests to webhook

* make fmt

* Handle invalid http method on webhook

* Uppercase http method in webhook

* Rename v85.go to v86.go

* make fmt
2019-05-05 14:09:02 -04:00
55a8e12d85 Number of commits ahead/behind in branch overview (#6695)
* Call Git API to determine divergence of a branch and its base branch

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Show commit divergance in branch list

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adds missing comment

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adds test for diverging commits

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Try comparing commits instead of branches

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Removes test as CI can't run it

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Adjusts signature of percentage function to allow providing multiple integers as numerator

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Moves CountDivergingCommits function into repofiles module

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>
2019-05-05 19:25:25 +03:00
c1da790cee [skip ci] Updated translations via Crowdin 2019-05-05 13:49:50 +00:00
07bcccf9ce Fix v85.go: Set UNIQUE constraint later (#6851)
Signed-off-by: Andrew Thornton <art27@cantab.net>
2019-05-05 14:47:42 +01:00
d27bf72530 docs(*): fix codecov bad links in README_ZH (#6850) 2019-05-05 12:46:32 +03:00
7806deab96 add french specific rule for translating plural texts (#6846) 2019-05-04 23:44:43 +01:00
e0dde8173f Generate access token in admin cli (#6847)
* add cli flag for access token while creating a user
2019-05-04 23:03:09 +01:00
410301f0ee Improve localization of git activity stats (#6848) 2019-05-04 23:32:37 +03:00
46373e7657 Hash App token (#6724) 2019-05-04 11:45:34 -04:00
1fa9662946 Git statistics in Activity tab (#4724)
* Initial implementation for git statistics in Activity tab

* Create top user by commit count endpoint

* Add UI and update src-d/go-git dependency

* Add coloring

* Fix typo

* Move git activity stats data extraction to git module

* Fix message

* Add git code stats test
2019-05-04 15:39:03 +03:00
2933ae4e88 Update https://github.com/urfave/cli to version 1.2.0 (#6838)
From un-tagged pervious version : https://github.com/urfave/cli/compare/d86a009f5e13...master
2019-05-03 08:49:14 -04:00
dbb0c9658c Fix #6813: Allow git.GetTree to take both commit and tree names (#6816)
* Allow git.GetTree to take both commit and tree names, return full paths on entries listed through Tree.ListEntriesRecursive

Signed-off-by: Filip Navara <filip.navara@gmail.com>

* Fix the SHA returned on Git Tree APIs called with commit hash or symbolic name

Signed-off-by: Filip Navara <filip.navara@gmail.com>
2019-05-02 20:33:11 -04:00
a27d5d2b23 Drone: Do full branch clone and get tags for correct version hashes (#6836)
Although #591 attempted to make version hashes be preceded with tag names on our branch builds, it would fail again silently at 50 commits because we were not cloning the full branch. Drone's new plugin will do a single branch clone by default meaning that depth is no longer necessary.
2019-05-02 23:41:54 +01:00
26c7c97447 [skip ci] Updated translations via Crowdin 2019-05-02 20:30:21 +00:00
59f879bfec Fix double-generation of scratch token (#6832) (#6833) 2019-05-02 23:06:01 +03:00
ade88a877d Allow Recaptcha service url to be configured (#6820) 2019-05-02 16:09:39 +03:00
159294f799 When mirroring we should set the remote to mirror (#6824) 2019-05-02 09:43:20 +03:00
897927690f Rename LFS_JWT_SECRET to include OAUTH2 as well (#6826) 2019-05-01 22:32:06 -04:00
e255df83a6 Change verbose flag in dump command to avoid colliding with global version flag (#6822)
* Change verbose flag to avoid colliding with version flag
* Update docs

Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-05-01 21:36:09 +01:00
caba2829ef Improve issue reference on commit (#6694)
* Improve issue reference on commit

Allow commits to properly reference issues in other repositories and also to
close/reopen those issues if user has code permission. Should match
Github behavior described here: https://help.github.com/en/articles/closing-issues-using-keywords

Fixes 6664

* Fix missing return

* Match user/repo directly in regex
2019-05-01 19:21:05 +03:00
5be1780045 update github.com/mcuadros/go-version to v0.0.0-20190308113854-92cdf37c5b75 (#6815) 2019-05-01 11:44:16 -04:00
eb8632b20b Add existing issues (#6811) 2019-04-30 20:50:17 +03:00
26042a8175 [skip ci] Updated translations via Crowdin 2019-04-30 13:30:05 +00:00
55daee8d22 Remove seen map from getLastCommitForPaths (#6807)
Ensures correctly traversing the commit graph for all path and avoids
erroneously skipping some. Also preallocate some arrays to correct size
to prevent unnecessary reallocations.

Fixes #6708.

Signed-off-by: Filip Navara <filip.navara@gmail.com>
2019-04-30 16:27:41 +03:00
9b9ec7847c Show scrollbar only when needed (#6802) 2019-04-29 23:08:04 +03:00
c64fe091d3 UI: Tweak tab text and icon colors (#6760)
This adds a hover highlight and fades out the icon on inactive tabs.
2019-04-29 14:49:59 -04:00
8d0d7bc28d Make CustomPath, CustomConf and AppWorkPath configurable at build (#6631) 2019-04-29 14:08:21 -04:00
ccf4783980 [skip ci] Updated translations via Crowdin 2019-04-29 01:47:24 +00:00
9a838cff61 Service worker js is a missing comma (#6788)
Fix #6787
2019-04-28 21:45:05 -04:00
3d26b3f216 [skip ci] Updated translations via Crowdin 2019-04-28 19:50:49 +00:00
cde6079879 Restore IsWindows variable assignment (#6722) (#6790)
Signed-off-by: Nicola Scattaglia <scattaglia.nicola.work@gmail.com>
2019-04-28 22:48:46 +03:00
d29d97d91c Set user search base field optional in DLDAP edit page (#6779) 2019-04-28 09:53:55 -04:00
345bc06e56 README WordPress the code is overflowing #6679 (#6696) 2019-04-27 20:07:55 -04:00
4e311123d8 Fix team edit API panic (#6780) 2019-04-27 19:32:33 -04:00
81059a2567 LDAP: ignore already existing public keys after ldap sync (#6766)
* fix type in public key exist error, only log trace for ldap public key import if existing

Signed-off-by: Lukas Prettenthaler <lukas@noenv.com>

* cleanup switch statement

Signed-off-by: Lukas Prettenthaler <lukas@noenv.com>

* replace switch with if, fix log formatting

Signed-off-by: Lukas Prettenthaler <lukas@noenv.com>

* fix formatting

Signed-off-by: Lukas Prettenthaler <lukas@noenv.com>
2019-04-26 18:01:54 +03:00
f6eedd4dc8 UI: Detect and restore encoding and BOM in content (#6727)
* detect and remove a decoded BOM

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Restore the previous encoding and BOM

* On error keep as UTF-8

Signed-off-by: Andrew Thornton <art27@cantab.net>

* create remove BOM function

* Deal with LFSed content

* Update modules/repofiles/update.go

* Fix final LFS bug

* Keep LFS sections referring to opts.Content
2019-04-26 15:00:30 +03:00
4c34bc111c fix pulls broken when fork repository deleted (#6754)
* fix pulls broken when fork repository deleted

* fix lint
2019-04-26 11:03:39 +08:00
ec2d489d15 OAuth2 token can be used in basic auth (#6747) 2019-04-25 18:42:50 -04:00
199faadea3 Fix org visibility bug when git cloning (#6743)
* fix org visibility bug

* fix permission check

* add integration tests

* fix tests

* change test user name for easier maintainance and fix test

* fix test git repo name
2019-04-25 21:59:10 +03:00
e8f4c7733a fix missing return (#6751) 2019-04-25 19:30:38 +08:00
65b3f513c3 fix new team 500 (#6749)
* fix new team 500

* Update models/unit.go

Co-Authored-By: lunny <xiaolunwen@gmail.com>
2019-04-25 17:00:34 +08:00
dabee9b1a4 Handle redirects in git clone commands (#6688)
Add support for repo_redirect objects in the git smart http
handler so that when a user clones a repo that has been moved
or renamed, they are redirected to the new location.

This requires that the query string be included in the redirect
as well, so that is added.

Signed-off-by: James E. Blair <jeblair@redhat.com>
2019-04-25 08:51:40 +03:00
0064535ad2 Fix domain name pattern in email regex (#6739)
Fixes #6735
2019-04-24 21:53:41 -04:00
6a58832286 Add FAQ for version downloads (#6742) 2019-04-24 14:44:58 -04:00
ff03b2f606 Fix: Sort repos on org home page with non-admin login (#6741) 2019-04-24 19:20:22 +01:00
821184c203 Drop is_bare IDX only when it exists for MySQL and MariaDB (#6736)
* Drop is_bare IDX only when it exists

* show indexes only on mysql or mariadb
2019-04-24 20:43:38 +03:00
1d8b521ae1 Add tests for Org API (#6731) 2019-04-24 12:16:14 -04:00
08d8ea9403 fix template error (#6737) 2019-04-24 21:14:36 +08:00
59be704efb Fix team members API (#6714) 2019-04-24 01:32:35 -04:00
e0172f0db7 [skip ci] Updated translations via Crowdin 2019-04-24 04:56:25 +00:00
67c91e1aa1 Order file actions equal to GitHub (#6706) 2019-04-24 12:53:57 +08:00
45fa5cc1be [API] Load issue attributes when editing an issue (#6723) 2019-04-23 13:07:12 -04:00
cbf8538635 Disable web preview for telegram webhook (#6719) 2019-04-23 12:12:00 -04:00
2a0e86d5f2 [skip ci] Updated translations via Crowdin 2019-04-22 20:43:37 +00:00
be666b03ee Trace Logging on Permission Denied & ColorFormat (#6618)
* Add log.ColorFormat and log.ColorFormatted

Structs can now implement log.ColorFormatted to provide their own
colored format when logged with `%-v` or additional flags.

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add basic ColorFormat to repository and user

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add basic ColorFormat to access and unit

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add ColorFormat to permission and on trace log it

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add log.NewColoredIDValue to make ID value coloring consistent

Signed-off-by: Andrew Thornton <art27@cantab.net>

* formatting changes

* Add some better tracing to permission denied for read issues/pulls

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add Trace logging on permission denied

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Remove isTrace() check from deferred func

* Adjust repo and allow logging of team

* use FormatInt instead of Itoa

* Add blank line

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Update access.go
2019-04-22 23:40:51 +03:00
b83114f140 Fix one performance/correctness regression in #6478 found on Rails repository. (#6686)
* Fix flaw in the commit history lookup that caused unnecessary traversal
when the repository contains a lot of merge commits.

Also return the merge commit as the changed one if the file or
directory was changed as part of the merge, eg. through conflict
resolution.

Signed-off-by: Filip Navara <filip.navara@gmail.com>

* Perform history simplification. If a file is present on multiple parents
in a merge commit follow only the first parent.
2019-04-21 16:49:06 +08:00
04ff3dd510 Backport 1.8.0 changelog (#6697) 2019-04-21 10:43:49 +08:00
bc86134759 Show "delete branch" button on closed pull requests (#6570) (#6601)
* Show button to delete a pull request branch after a pull request has been closed (#6570)

Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>

* Update routers/repo/pull.go

Co-Authored-By: saitho <mario.lubenka@googlemail.com>
2019-04-20 23:50:34 +03:00
b1bb700665 [skip ci] Updated translations via Crowdin 2019-04-20 11:49:59 +00:00
3d5d2fa9d8 Unfortunately MemProvider Init does not actually Init properly (#6692)
* Unfortunately MemProvider Init does not actually Init properly

Worse all of its members are private and you cannot update them.
Simple fix copy it in to modules session.

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Fix misspelling
2019-04-20 12:47:17 +01:00
6cb127d497 Fix reversion caused by 6314 (#6685)
Signed-off-by: Andrew Thornton <art27@cantab.net>
2019-04-20 08:59:34 +01:00
b33f7f792b Prevent creating empty sessions (#6677)
* Prevent creating empty sessions

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Update modules/setting/session.go

* Remove unnecessary option

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add destory to list of ignored misspellings

* rename cookie.go -> virtual.go

* Delete old file

* Add test to ensure that sessions are not created without being logged in

Signed-off-by: Andrew Thornton <art27@cantab.net>

* fix tests

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Update integrations/create_no_session_test.go
2019-04-20 07:44:50 +01:00
b74dc970e9 [skip ci] Updated translations via Crowdin 2019-04-20 04:17:31 +00:00
fcbac38d6f Unifies pagination template usage (#6531) (#6533) 2019-04-20 00:15:19 -04:00
40dc458bb6 [skip ci] Updated translations via Crowdin 2019-04-20 02:49:19 +00:00
469d9b7d9a Add option to blame files (#5721) 2019-04-19 22:47:00 -04:00
b9d1fb6de3 Add support for MS Teams webhooks (#6632) 2019-04-19 10:18:06 -04:00
2af67f6044 Improve listing performance by using go-git (#6478)
* Use go-git for tree reading and commit info lookup.

Signed-off-by: Filip Navara <navara@emclient.com>

* Use TreeEntry.IsRegular() instead of ObjectType that was removed.

Signed-off-by: Filip Navara <navara@emclient.com>

* Use the treePath to optimize commit info search.

Signed-off-by: Filip Navara <navara@emclient.com>

* Extract the latest commit at treePath along with the other commits.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix listing commit info for a directory that was created in one commit and never modified after.

Signed-off-by: Filip Navara <navara@emclient.com>

* Avoid nearly all external 'git' invocations when doing directory listing (.editorconfig code path is still hit).

Signed-off-by: Filip Navara <navara@emclient.com>

* Use go-git for reading blobs.

Signed-off-by: Filip Navara <navara@emclient.com>

* Make SHA1 type alias for plumbing.Hash in go-git.

Signed-off-by: Filip Navara <navara@emclient.com>

* Make Signature type alias for object.Signature in go-git.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix GetCommitsInfo for repository with only one commit.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix PGP signature verification.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix issues with walking commit graph across merges.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix typo in condition.

Signed-off-by: Filip Navara <navara@emclient.com>

* Speed up loading branch list by keeping the repository reference (and thus all the loaded packfile indexes).

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix lising submodules.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix build

Signed-off-by: Filip Navara <navara@emclient.com>

* Add back commit cache because of name-rev

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix tests

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix code style

* Fix spelling

* Address PR feedback

Signed-off-by: Filip Navara <navara@emclient.com>

* Update vendor module list

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix getting trees by commit id

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix remaining unit test failures

* Fix GetTreeBySHA

* Avoid running `git name-rev` if not necessary

Signed-off-by: Filip Navara <navara@emclient.com>

* Move Branch code to git module

* Clean up GPG signature verification and fix it for tagged commits

* Address PR feedback (import formatting, copyright headers)

* Make blob lookup by SHA working

* Update tests to use public API

* Allow getting content from any type of object through the blob interface

* Change test to actually expect the object content that is in the GIT repository

* Change one more test to actually expect the object content that is in the GIT repository

* Add comments
2019-04-19 20:17:27 +08:00
19ec2606e9 API OTP Context (#6674)
* API OTP Context

* Update api.go

* token

* token

* fix per discord

* copyright header

* remove check for token in OTP

* Update auth.go

* simplify

* Update api.go
2019-04-19 11:59:26 +03:00
dae94e33be [skip ci] Updated translations via Crowdin 2019-04-19 02:57:33 +00:00
56da256853 Telegram webhook (#4227) 2019-04-18 22:45:02 -04:00
6dbd261852 UX + Security current user password reset (#5042)
* allow current user to reset their own password

* handle reset password edge cases properly and consistently

* remove dangling assignment

* properly label account recovery instead of reset password

* remove 'Click here' from button

* update English-only account-recovery templates
2019-04-18 10:23:59 +03:00
fdb933cd67 [skip ci] Updated translations via Crowdin 2019-04-18 05:02:47 +00:00
dd1acd7ce4 Comments list performance optimization (#5305) 2019-04-18 01:00:03 -04:00
2262811e40 Fixes 4762 - Content API for Creating, Updating, Deleting Files (#6314) 2019-04-17 12:06:35 -04:00
059195b127 [skip ci] Updated translations via Crowdin 2019-04-17 14:52:57 +00:00
bdbbd816fc Add more title attributes on shortened names (#6647) 2019-04-17 10:49:56 -04:00
cf0a9a04a9 [skip ci] Updated translations via Crowdin 2019-04-17 11:14:20 +00:00
2a9806bfc6 Pre-calculate the absolute path of git (#6575)
* Pre-caculate the absolute path of git

* Do not repeat string literals which has been defined somewhere

Also make it flexible to accept customized/user-defined value.
2019-04-17 14:11:37 +03:00
7a4c29c739 OAuth2 Grant UI (#6625)
* Add oauth2 grants ui

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Add delete functionality
Add translations

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Fix unit tests

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Fix unit tests

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Refactor DeleteOAuth2Grant
Use results.Close()

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Refactor DeleteOAuth2Grant (again)

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Check if user ID is zero

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Check if grant ID is zero

Signed-off-by: Jonas Franz <info@jonasfranz.software>
2019-04-17 16:18:16 +08:00
34548369e1 Add API for manipulating Git hooks (#6436)
* Add API for manipulating Git hooks

Signed-off-by: Segev Finer <segev@codeocean.com>

* Replace code.gitea.io/sdk with PR branch temporarily for CI

* Switch back to code.gitea.io/sdk@master

* Return 403 instead of 404 on no permission to edit hooks in API

* Add tests for Git hooks API

* Update models/repo_list_test.go

Co-Authored-By: segevfiner <segev208@gmail.com>

* Update models/repo_list_test.go

Co-Authored-By: segevfiner <segev208@gmail.com>

* empty line
2019-04-17 01:31:08 -04:00
827ab6b75a Add SUBJECT_PREFIX mailer config option (#6605)
* Add SUBJECT_PREFIX mailer config option

* Add space between subject prefix and subject (Change from Gogs)

Signed-off-by: Andrew Thornton <art27@cantab.net>
2019-04-17 00:56:40 -04:00
84fd24246c Bump github.com/stretchr/testify from 1.2.2 to 1.3.0 (#6663)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.2.2 to 1.3.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.2.2...v1.3.0)
2019-04-16 23:45:40 -04:00
4f19b08258 update swagger-ui (#6661) 2019-04-16 22:50:55 -04:00
4183c846e3 [mod]: Bump gopkg.in/src-d/go-git.v4 from 4.8.0 to 4.10.0 (#6662)
Bumps [gopkg.in/src-d/go-git.v4](https://github.com/src-d/go-git) from 4.8.0 to 4.10.0.
- [Release notes](https://github.com/src-d/go-git/releases)
- [Commits](https://github.com/src-d/go-git/compare/v4.8.0...v4.10.0)
2019-04-16 22:04:23 -04:00
62b35964e3 [docker] let the ssh daemon speak for itself and drop the syslog daemon (#6529)
The sshd flag `-e` instructs sshd to output any logs to stderr instead
 of the syslog. Redirect this output to stdout then.

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2019-04-16 21:08:25 -04:00
6821a32d81 Properly escape on the redirect from the web editor (#6657) 2019-04-16 20:07:13 -04:00
867ad49091 update highlight.js (#6658) 2019-04-16 19:05:40 -04:00
38b4c23d24 Fixes #6659 - Swagger schemes selection default to page's (#6660) 2019-04-16 18:09:36 -04:00
450fc9a120 Fix 6655 - there is no need to EscapePound .Link as it is already escaped (#6656)
Signed-off-by: Andrew Thornton <art27@cantab.net>
2019-04-16 22:37:35 +01:00
8d01b9857f Fix dropdown icon padding (#6651)
Signed-off-by: Andrew Thornton <art27@cantab.net>
2019-04-16 12:18:09 -04:00
1bce1894f5 Use ctx.metas for SHA hash links (#6645)
Since #6273 was merged, we now have access to proper context metas
always. Update SHA generated links to use these instead of urlPrefix.

Update tests as well.

Fixes #4536.
2019-04-16 08:53:57 +01:00
e98565ddc7 Fix wrong GPG expire date (#6643)
* fix expire of gpg relative to key creation https://tools.ietf.org/html/rfc4880#section-5.2.3.6

* add test
2019-04-15 20:32:15 -04:00
ecfa5f1594 Fix forking an empty repository (#6637)
Fixes #6633

Signed-off-by: Segev Finer <segev@codeocean.com>
2019-04-15 16:48:35 -04:00
3fb038c53a upgrade version of lib/pq to v1.1.0 (#6640)
Adds SCRAM-SHA-256 authentication
2019-04-15 16:14:31 -04:00
83d6e5e3f8 Update UI for topics labels on projects (#6639) 2019-04-15 14:59:30 -04:00
837116875e Return a UserList from /api/v1/admin/users (#6629) 2019-04-15 12:36:59 -04:00
74fc63682c [skip ci] Updated translations via Crowdin 2019-04-15 15:57:01 +00:00
62d3f49c28 Add json tags for oauth2 form (#6627) 2019-04-15 11:54:50 -04:00
e6161b09ff Remove trailing slash from twitter card (#6619) 2019-04-14 18:04:43 -04:00
77ffb1563b remove bash requirement in makefile (#6617) 2019-04-14 16:33:24 -04:00
de6527b371 fix Open Graph og:image link (#6612) 2019-04-14 13:34:29 -04:00
2342d2d58b [skip ci] Updated translations via Crowdin 2019-04-14 16:44:32 +00:00
d699de32f2 add .gpg url (match github behaviour) (#6610)
* add .gpg url (match github behaviour)

* wildcard

* test to export maximum data

* working POC

* add comment for old imported keys

* cleaning

* Update routers/user/profile.go

Co-Authored-By: sapk <sapk@users.noreply.github.com>

* add migration script

* add integration tests
2019-04-14 12:43:56 -04:00
38889f09cb Fix cross-compile builds (#6609) 2019-04-14 11:06:43 -04:00
3297b8d53a [skip ci] Updated translations via Crowdin 2019-04-14 08:45:13 +00:00
79ce24bc6f Add oauth2 documentation (#6604)
* Add oauth2 documentation

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Apply suggestions from code review

Co-Authored-By: jonasfranz <info@jonasfranz.software>

* Update docs/content/doc/advanced/oauth2-provider.md

Co-Authored-By: jonasfranz <info@jonasfranz.software>

* Update oauth2-provider.md
2019-04-14 10:42:11 +02:00
c168095afb [skip ci] Updated translations via Crowdin 2019-04-13 04:21:51 +00:00
c9f5953a41 backport 1.8.0-rc3 & 1.7.6 changelog (#6598) 2019-04-13 00:19:51 -04:00
a3316b620e [skip ci] Updated translations via Crowdin 2019-04-13 02:49:37 +00:00
16fe297a74 FAQ (#6524) 2019-04-12 22:46:52 -04:00
b3e757a06c Correctly adjust mirror url (#6593) 2019-04-12 21:52:57 +01:00
01e0408fa1 [skip ci] Updated translations via Crowdin 2019-04-12 16:14:00 +00:00
cb64b21a7f Change summary to full message (#6591)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-04-12 17:11:09 +01:00
783cd64927 Add option to disable refresh token invalidation (#6584)
* Add option to disable refresh token invalidation

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Add integration tests and remove wrong todos

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Fix typo

Signed-off-by: Jonas Franz <info@jonasfranz.software>

* Fix tests and add documentation

Signed-off-by: Jonas Franz <info@jonasfranz.software>
2019-04-12 15:50:21 +08:00
3ff0a126e1 Improve issue autolinks (#6273)
* Improve issue autolinks

Update autolinks to match what github does here:

Issue in same repo: #1
Issue in different repo: org/repo#1

Fixes #6264

* Use setting.AppURL when parsing URL

Using setting.AppURL here is a more reliable way of parsing the current
URL and what other functions in this file seem to use.

* Make ComposeMetas always return a valid context

* Add per repository markdown renderers for better context

* Update for use of context metas

Now that we include the user and repo name inside context metas, update
various code and tests for this new logic
2019-04-12 08:53:34 +03:00
3186ef554c Support search operators for commits search (#6479)
* Support searching commits with prefix syntax

For now, support auther: committer:
When more than one prefix is supplied is presented, the result is the union.
When different prefixes are supplied, the result is the intersection.

For example,
"author:alice author:bob"
=> the result is all commits authored by Alice OR Bob

"hello committer:alice"
=> the result is all commits committed by Alice AND has the keyword
'hello' in the message.

Note that there should NOT have any space after the colon(:) of the prefix.
For example,
"author:bill" => correct
"author: bill" => wrong

* Remove unneeded logging

* Add missing files of test repository

* Add missing repo_unit entries to test fixtures

* Update test cases

* Add tooltip for commits search button

* Update tooltip text

I have no idea about how to format it with line breaks.

* Make the usage example more real

* Add a test case

* Add new options struct for SearchCommits

* Prefer len(s) > 0 over s != ""

* Add NewSearchCommitsOptions
2019-04-12 10:28:44 +08:00
1b7dffc3a3 fix bug user search API pagesize didn't obey ExplorePagingNum (#6579) 2019-04-11 19:29:41 -04:00
2f53b5f88c fix mail notification when close/reopen issue (#6581) 2019-04-11 22:59:01 +01:00
48cdd90d4e Fix new repo alignment (#6583)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-04-11 22:09:41 +01:00
4ad65bb89b [skip ci] Updated translations via Crowdin 2019-04-11 20:21:44 +00:00
dc52868e1e Minor CSS cleanup for the navbar (#6553)
* Minor CSS cleanup for the navbar
* move height fix to navbar
2019-04-11 21:19:43 +01:00
c02c6a144f Fix race in integration testlogger (#6556)
* Fix race in logger

* At testing end drop the reference to the last test.
2019-04-11 19:49:49 +08:00
346036d47f [skip ci] Updated translations via Crowdin 2019-04-11 08:35:26 +00:00
5348573fdf Allow admin users to set a repositoires visibility to public, even if FORCE_PRIVATE is to true (#6541) (#6572)
Signed-off-by: Matthias Beckert <beckert.matthias@googlemail.com>
2019-04-11 16:32:42 +08:00
66fa092cc8 [FIX] Docs: Backup&Restore: fixed rendering + minor fixes (#6569)
- Fixed a code block inverting the code blocks of the rest of the page
- Fixed various markdown syntax errors
- Fixed some spelling I could notice

Signed-off-by: 0x5c <0x5c.dev@gmail.com>
2019-04-10 09:34:44 -04:00
2664adf677 Fixes #6514 - New Pull Request on files and pulls pages the same (#6515)
* Fixes #6514 - New Pull Request on files and pulls pages the same
2019-04-09 22:16:29 +01:00
89cc7c646d Prevent server 500 on compare branches with no common history (#6555)
* Prevent 500 if there is no common mergebase
* Prevent creation of PR with no history
2019-04-09 21:45:58 +01:00
7350e439bf Add myself to MAINTAINERS (#6554) 2019-04-09 15:42:20 -04:00
0af0b078f9 wrap the ServerError and NotFound and log from the caller (#6550) 2019-04-09 21:10:42 +03:00
2b9b3310f6 Add username flag in create-user command (#6534)
* Add username flag in create-user command

* Fix the error message

* Change name to username on flag of create-user command

* Include create-user flags of both versions

* delete deprecated example of create-user command
2019-04-09 11:21:55 -04:00
8e949db3b5 Render SHA1 links as code blocks (#6546) 2019-04-09 06:18:48 +03:00
61b85990a6 Added docker example for backup (#5846)
* Added docker example for backup

* Fix using docker command example

* Clarify --tempdir as per @lafriks suggestion
2019-04-08 15:45:29 +03:00
e7d7dcb090 Issue indexer queue redis support (#6218)
* add redis queue

* finished indexer redis queue

* add redis vendor

* fix vet

* Update docs/content/doc/advanced/config-cheat-sheet.en-us.md

Co-Authored-By: lunny <xiaolunwen@gmail.com>

* switch to go mod

* Update required changes for new logging func signatures
2019-04-08 12:05:15 +03:00
6e4af4985e Fixes pagination width on mobile view (#5711) (#6532)
Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com>
2019-04-08 09:31:54 +03:00
aa02463ded Delete local branch if it exists (#6497)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-04-08 08:08:02 +03:00
49b2f45f75 Cleaned permission checks for API -> site admin can now do anything (#6483)
* cleaned permission checks for API -> site admin can now do anything

Signed-off-by: Vasek Sraier <git@vakabus.cz>

* PR #6483: helper methods moved to context/context.go, added missing return

Signed-off-by: Vasek Sraier <git@vakabus.cz>

* PR #6483: added documentation to new exported helper functions in context/context.go

Signed-off-by: Vasek Sraier <git@vakabus.cz>
2019-04-08 01:49:34 +03:00
592e6c398e Fixes #6446 - Sort team members and team's repositories (#6525)
* sort team's repositories by name

* sort team members by display name
2019-04-07 14:44:34 +01:00
6293736d02 Use stricter boundaries for auto-link detection (#6522)
* Use stricter boundaries for auto-link detection

Currently autolinks use \W for boundary detection which creates many
situations of inserting links into places they don't belong (paths,
URLs, UUIDs, etc...)

This fixes that by replacing \W and only allowing these matches to touch
an open paren or bracket (matching what seems to be Github behavior) in
addition to whitespace and start of line. Similar for ending boundary as
well.

Fixes #6149
(and probably others)

* Update test

Replace incorrect test with a value that is a valid username, based on:

"Username should contain only alphanumeric, dash ('-'), underscore ('_')
and dot ('.') characters."

* Also allow for period at the end

Matching Github behavior

* Fix email regex to work properly with specificed boundaries

Create a specific capture group for email address and then use
FindStringSubmatchIndex to allow for non-matching patterns as
boundaries.

* Add Tests

Add tests for new behavior -- including tests for email addresses which
were absent before.
2019-04-07 12:18:16 +01:00
5422f23ed8 Quieter Integration Tests (#6513)
* Rename BaseLogger to WriterLogger to help the creation of other providers

* Don't export ColorBytes and ResetBytes from ColoredValues

* Make integration tests only print logs if they fail

* check can color before coloring

* I always forget about MSSQL

* Oh and use LEVEL in sqlite.ini

* Make the test logger log at info - as it means you see the router

* Remove empty expected changes

* Make the migrations quieter too

* Don't display SQL on error - it can be looked at in the file logs if necessary

* Fix skip when using onGiteaRun
2019-04-07 03:25:14 +03:00
7ed65a98e8 UI: Use regular line-height on frontpage entries (#6518) 2019-04-06 19:20:16 -04:00
d1b8840bd8 [skip ci] Updated translations via Crowdin 2019-04-06 18:30:54 +00:00
2242a9f82e Improve SHA1 link detection (#6526)
This improves the SHA1 link detection to not pick up extraneous
non-whitespace characters at the end of the URL. The '.' is a special
case handled in code itself because of missing regexp lookahead
support.

Regex test cases: https://regex101.com/r/xUMlqh/3
2019-04-06 21:28:45 +03:00
0bdd81df9d Properly escape release attachment URL (#6512)
Make sure file attachments on a release get a properly escaped URL when
linking.

Fixes #6506
2019-04-05 11:28:10 -04:00
9bf20f47c4 Enabled emoji in Hugo (#6521)
Removed extra asterisks in Docker doc

Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-04-05 18:01:38 +03:00
e14cad79c9 Include custom configuration file in dump (#6516)
When running the dump command, include the specific configuration file
provided as part of the backup. Currently we only zip up custom/ and this
misses the config file if it is somewhere else, like /etc/gitea/app.ini

Fixes #6034
2019-04-05 09:24:28 -04:00
d8802b1298 Add a new Make target for running single integration test (#6500)
* Add a new Make target for running single integration test

* Use # instead of - as the delimiter
2019-04-04 12:22:10 -04:00
0f54f42646 docs: document setup with read-only config (#6348) 2019-04-04 10:21:54 -04:00
059b52759e Some logging documentation (#6498) 2019-04-04 09:44:01 +01:00
8fcbfa7df9 [skip ci] Updated translations via Crowdin 2019-04-04 07:55:02 +00:00
04003d9dc7 Make distinction between DisplayName and Username in email templates (#6495)
* Make distinction between DisplayName and Username in email templates

Store the actual username in the variable named Username and store the
separate DisplayName in another variable. This allows us to access the
actual username when we need, which currently fails if a user has set a
full name.

Fixes #6161

* Use u.Name directly

No need for extra function, also change use in all mail sending
functions here

* Don't include Username when not used
2019-04-04 10:52:48 +03:00
3f4e2d9d37 [docker] drop the bits argument when generating an ed25519 key (#6504)
From the man page of ssh-keygen:

  Ed25519 keys have a fixed length and the -b flag will be ignored.

[skip ci]

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2019-04-04 08:09:38 +03:00
bf5af87eef Show last commit status in pull request lists (#6465) 2019-04-02 15:54:29 -04:00
09fb036ad6 fix upload attachments (#6481)
* fix upload attachments

* add migration for new column uploader_id on table attachment

* fix imports sequence
2019-04-02 15:25:05 -04:00
0a8e63c682 add make version on gitea version (#6485) 2019-04-02 12:10:11 -04:00
60ba903a57 [skip ci] Updated translations via Crowdin 2019-04-02 15:48:05 +00:00
54c1cb6c5f Add X-Auto-Response-Suppress header to outgoing messages (#6492)
This is a header used to suggest mail servers not to respond to a message
with an auto-responder:

 https://docs.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxcmail/ced68690-498a-4567-9d14-5c01f974d8b1

This header is also used by github and gitlab in outgoing messages.

Fixes #6484
2019-04-02 11:45:54 -04:00
704da08fdc Better logging (#6038) (#6095)
* Panic don't fatal on create new logger

Fixes #5854

Signed-off-by: Andrew Thornton <art27@cantab.net>

* partial broken

* Update the logging infrastrcture

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Reset the skip levels for Fatal and Error

Signed-off-by: Andrew Thornton <art27@cantab.net>

* broken ncsa

* More log.Error fixes

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Remove nal

* set log-levels to lowercase

* Make console_test test all levels

* switch to lowercased levels

* OK now working

* Fix vetting issues

* Fix lint

* Fix tests

* change default logging to match current gitea

* Improve log testing

Signed-off-by: Andrew Thornton <art27@cantab.net>

* reset error skip levels to 0

* Update documentation and access logger configuration

* Redirect the router log back to gitea if redirect macaron log but also allow setting the log level - i.e. TRACE

* Fix broken level caching

* Refactor the router log

* Add Router logger

* Add colorizing options

* Adjust router colors

* Only create logger if they will be used

* update app.ini.sample

* rename Attribute ColorAttribute

* Change from white to green for function

* Set fatal/error levels

* Restore initial trace logger

* Fix Trace arguments in modules/auth/auth.go

* Properly handle XORMLogger

* Improve admin/config page

* fix fmt

* Add auto-compression of old logs

* Update error log levels

* Remove the unnecessary skip argument from Error, Fatal and Critical

* Add stacktrace support

* Fix tests

* Remove x/sync from vendors?

* Add stderr option to console logger

* Use filepath.ToSlash to protect against Windows in tests

* Remove prefixed underscores from names in colors.go

* Remove not implemented database logger

This was removed from Gogs on 4 Mar 2016 but left in the configuration
since then.

* Ensure that log paths are relative to ROOT_PATH

* use path.Join

* rename jsonConfig to logConfig

* Rename "config" to "jsonConfig" to make it clearer

* Requested changes

* Requested changes: XormLogger

* Try to color the windows terminal

If successful default to colorizing the console logs

* fixup

* Colorize initially too

* update vendor

* Colorize logs on default and remove if this is not a colorizing logger

* Fix documentation

* fix test

* Use go-isatty to detect if on windows we are on msys or cygwin

* Fix spelling mistake

* Add missing vendors

* More changes

* Rationalise the ANSI writer protection

* Adjust colors on advice from @0x5c

* Make Flags a comma separated list

* Move to use the windows constant for ENABLE_VIRTUAL_TERMINAL_PROCESSING

* Ensure matching is done on the non-colored message - to simpify EXPRESSION
2019-04-02 08:48:31 +01:00
ef2a343e27 fix bug when user login and want to resend register confirmation email (#6482) 2019-04-02 08:44:33 +03:00
b04a1d9d63 Add ui class to sub_menu to fix style in arc-green (#6477)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-04-02 08:41:19 +08:00
5c4b96188c [skip ci] Updated translations via Crowdin 2019-04-01 15:30:21 +00:00
4e3ce71ac9 Fies #6468 - Uses space match and adds newline for all sed flavors (#6473) 2019-04-01 23:27:40 +08:00
dbba46c216 support custom file name in gitea dump command (#6474)
* support custom file name in `gitea dump` command

* simpler approach to handle default dump file name
in `gitea dump` command
2019-04-01 00:31:37 -04:00
2e1ead8054 fix: avoid multi-clicks when perform oauth2 login (#6467) 2019-03-31 19:58:53 +08:00
04d78b60f8 Fix link to Hacking on Gitea on From-Source doc page (#6471)
* fix rel-ref

* fixup
2019-03-30 12:15:16 -04:00
8c3082bdb4 fix typos in docs command-line examples (#6466)
Signed-off-by: Ilya Pavlov <ilux@cpan.org>
2019-03-29 12:16:07 +00:00
01589b9eed [skip ci] Updated translations via Crowdin 2019-03-28 18:42:28 +00:00
5e23c33d9e Hacky fix for alignment of the create-organization dialog (#6455)
* Hacky fix for alignment of the create-organization dialog

* Mangle the post-scripted red-asterisk back in to follow the Visibility Header
2019-03-28 20:36:17 +02:00
2019983e77 Make "Ghost" not link to 404 page (#6410)
* Make Ghost not link to 404 page

* Make correct localization label show

* Create and use GetLastEventLabelFake for when a Ghost user has made the action, thus not linking to a user profile
* Add corresponding _fake entries to locale_en-US

* Make Ghost avatar not link to 404 page

* Make Ghost on milestone_issues not link to 404 page
2019-03-27 18:22:39 -04:00
ee0d3eeadc Changelogs 1.7.5 & 1.8.0-rc2 (#6453)
* Changelog 1.8.0 rc2 (#6451)

* Changelog 1.7.5 (#6444) (#6448)

Signed-off-by: jolheiser <john.olheiser@gmail.com>
2019-03-27 21:57:36 +02:00
c8650aef0a Change order that PostProcess Processors are run (#6445)
Make sure Processors that work on full links are run first so that
something matching another pattern doesn't alter a link before we get to
it, for example:

 https://stackoverflow.com/questions/2896191/what-is-go-used-fore

Fixes #4813
2019-03-27 11:37:54 -04:00
d77176912b Use Go1.11 module (#5743)
* Migrate to go modules

* make vendor

* Update mvdan.cc/xurls

* make vendor

* Update code.gitea.io/git

* make fmt-check

* Update github.com/go-sql-driver/mysql

* make vendor
2019-03-27 19:15:23 +08:00
d578b71d61 move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364)
* move code.gitea.io/git to code.gitea.io/gitea/modules/git

* fix imports

* fix fmt

* fix misspell

* remove wrong tests data

* fix unit tests

* fix tests

* fix tests

* fix tests

* fix tests

* fix tests

* enable Debug to trace the failure tests

* fix tests

* fix tests

* fix tests

* fix tests

* fix tests

* comment commit count tests since git clone depth is 50

* fix tests

* update from code.gitea.io/git

* revert change to makefile
2019-03-27 17:33:00 +08:00
d056bf300f Clean up ref name rules (#6437)
* Clean up ref name rules

Clean up checks on reference names to better conform to the guideline
here: https://git-scm.com/docs/git-check-ref-format

This fixes half of #6321

* Update branch create integration test

According to: https://git-scm.com/docs/git-check-ref-format

And: git check-ref-format "master/feature=test1"

This is a valid branch name and we should not be testing for it to fail.
2019-03-26 21:59:48 +02:00
b4941f707b Fix Hook & HookList in Swagger (#6432)
Signed-off-by: Segev Finer <segev@codeocean.com>
2019-03-26 21:41:17 +02:00
22d3d029e6 Add signatures to webhooks (#6428) 2019-03-25 20:08:55 -04:00
909feaafa7 routers/repo/setting: display correct error for invalid mirror interval (#6414)
Set Err_Interval in the context data so that the mirror interval box is
highlighted red as expected.

Clear Err_RepoName for the mirror and advanced actions. repo_name is not
set by these forms, causing auth.validate() to set the Err_RepoName
before SettingsPost is called, which would lead to the repository name
box getting erroneously highlighted red.

Fixes: https://github.com/go-gitea/gitea/issues/6396
2019-03-25 17:51:55 -04:00
d86f878b3e optimize all images in public/img (#6427)
Fixes: https://github.com/go-gitea/gitea/pull/6357
2019-03-25 17:23:17 -04:00
fb2ea06bb1 Fixed unitTypeCode not being used (#6419) 2019-03-24 11:08:45 +02:00
b48be1958c [skip ci] Updated translations via Crowdin 2019-03-22 15:41:16 +00:00
ecce28f9df Updates SDK dep (#6406) 2019-03-22 11:38:49 -04:00
03e4db40cc improve zh-cn comparison docs (#6336) 2019-03-21 22:38:23 -04:00
57ecf09787 Markdown: enable some more extensions (#6362)
* Markdown: enable some more extensions

Improve Markdown-rendering by enabling some extensions:

- enable definitions lists
- enable footnotes
- enable header-ids and automatically generate header-ids (for linking to README-sections or creating table-of-contents for larger READMEs)

* Markdown: update and exted tests

Update and add tests for additionally enabled Markdown-extensions.
2019-03-21 15:53:06 +02:00
6f2e1bd23a Don't Unescape redirect_to cookie value (#6399)
redirect_to holds a value that we want to redirect back to after login.
This value can be a path with intentonally escaped values and we
should not unescape it.

Fixes #4475
2019-03-20 22:06:16 -04:00
6d345e00e6 [skip ci] Updated translations via Crowdin 2019-03-21 01:40:56 +00:00
91dcccf72d fix dump table name error and add some test for dump database (#6394) 2019-03-20 21:38:54 -04:00
75601a8cbc [skip ci] Updated translations via Crowdin 2019-03-20 16:41:13 +00:00
3bb123e90e fix migrations 82 to ignore unsynced tags between database and git data and missing is_archived on repository table (#6387) 2019-03-20 16:37:50 +00:00
b78cbbcaa2 Show locale string on timestamp (#6324)
Resolve #6004
2019-03-20 09:27:49 +08:00
f125330fcf Include more variables on admin/config page (#6378)
Include the current CustomPath location in the admin section and also
display GITEA_WORK_DIR and/or GITEA_CUSTOM env var if they are set.

Right now there is no easy way to see this information, and if you try
and help most users they won't be able to tell you anything about these
values -- just that their custom template isn't working, files aren't in
the right place, etc... Now you can see all paths and if they were set
by ENV or not.
2019-03-19 18:40:13 -04:00
5c82ef098e make sure units of a team are returned (#6379) 2019-03-19 17:50:06 -04:00
359d3ed01d [skip ci] Updated translations via Crowdin 2019-03-19 21:04:40 +00:00
ce646fd04b fix bug manifest.json will not request with cookie so that session will created every request (#6372) 2019-03-19 17:02:18 -04:00
f7f2f12b68 [skip ci] Updated translations via Crowdin 2019-03-19 06:26:55 +00:00
99d919e83a Disable benchmarking during tag events on DroneIO (#6365) 2019-03-19 02:24:55 -04:00
b34996a629 Implement Default Webhooks (#4299)
Partially implement #770.
Add "Default Webhooks" page in site admin UI.
Persist to the existing webhooks table, but store with RepoID=0 and OrgID=0.
Upon repo creation, copy the set of default webhooks into the new repo.
2019-03-18 22:33:20 -04:00
cac9e6e760 Updates to API 404 responses (#6077) 2019-03-18 22:29:43 -04:00
d10a668ffc Make the version within makefile overwriteable (#6080)
Fix #1173
2019-03-18 22:29:07 -04:00
0b94f106f8 Add title attributes to all items in the repo list viewer (#6258) 2019-03-18 22:28:39 -04:00
d1c982cb73 Add bio field for user (#6113)
Fix #4339
2019-03-18 22:28:10 -04:00
ba2f6a45c8 Include repo name in page title tag (#6343)
Fixes #6265
2019-03-18 22:27:34 -04:00
3888 changed files with 588170 additions and 132549 deletions

1152
.drone.yml

File diff suppressed because it is too large Load Diff

27
.eslintrc Normal file
View File

@ -0,0 +1,27 @@
root: true
extends:
- eslint:recommended
parserOptions:
ecmaVersion: 2015
env:
browser: true
jquery: true
es6: true
globals:
Clipboard: false
CodeMirror: false
emojify: false
SimpleMDE: false
Vue: false
Dropzone: false
u2fApi: false
hljs: false
rules:
no-unused-vars: [error, {args: all, argsIgnorePattern: ^_, varsIgnorePattern: ^_, ignoreRestSiblings: true}]
prefer-const: [2, {destructuring: all}]
no-var: [2]

1
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1 @@
open_collective: gitea

4
.gitignore vendored
View File

@ -66,7 +66,8 @@ coverage.all
/integrations/mssql.ini
/node_modules
/modules/indexer/issues/indexers
routers/repo/authorized_keys
/yarn.lock
# Snapcraft
snap/.snapcraft/
@ -76,3 +77,4 @@ prime/
*.snap
*.snap-build
*_source.tar.bz2
.DS_Store

94
.golangci.yml Normal file
View File

@ -0,0 +1,94 @@
linters:
enable:
- gosimple
- deadcode
- typecheck
- govet
- errcheck
- staticcheck
- unused
- structcheck
- varcheck
- golint
- dupl
#- gocyclo # The cyclomatic complexety of a lot of functions is too high, we should refactor those another time.
- gofmt
- misspell
- gocritic
enable-all: false
disable-all: true
fast: false
run:
timeout: 3m
linters-settings:
gocritic:
disabled-checks:
- ifElseChain
- singleCaseSwitch # Every time this occured in the code, there was no other way.
issues:
exclude-rules:
# Exclude some linters from running on tests files.
- path: _test\.go
linters:
- gocyclo
- errcheck
- dupl
- gosec
- unparam
- staticcheck
- path: models/migrations/v
linters:
- gocyclo
- errcheck
- dupl
- gosec
- linters:
- dupl
text: "webhook"
- linters:
- gocritic
text: "`ID' should not be capitalized"
- path: modules/templates/helper.go
linters:
- gocritic
- linters:
- unused
- deadcode
text: "swagger"
- path: contrib/pr/checkout.go
linters:
- errcheck
- path: models/issue.go
linters:
- errcheck
- path: models/migrations/
linters:
- errcheck
- path: modules/log/
linters:
- errcheck
- path: routers/routes/routes.go
linters:
- dupl
- path: routers/repo/view.go
linters:
- dupl
- path: models/migrations/
linters:
- unused
- linters:
- staticcheck
text: "argument x is overwritten before first use"
- path: modules/httplib/httplib.go
linters:
- staticcheck
# Enabling this would require refactoring the methods and how they are called.
- path: models/issue_comment_list.go
linters:
- dupl
- linters:
- misspell
text: '`Unknwon` is a misspelling of `Unknown`'

1
.npmrc Normal file
View File

@ -0,0 +1 @@
save-exact=true

11
.stylelintrc Normal file
View File

@ -0,0 +1,11 @@
extends: stylelint-config-standard
rules:
block-closing-brace-empty-line-before: null
color-hex-length: null
comment-empty-line-before: null
declaration-empty-line-before: null
indentation: 4
no-descending-specificity: null
rule-empty-line-before: null
selector-pseudo-element-colon-notation: null

File diff suppressed because it is too large Load Diff

View File

@ -11,7 +11,7 @@
- [Translation](#translation)
- [Code review](#code-review)
- [Styleguide](#styleguide)
- [Sign-off your work](#sign-off-your-work)
- [Developer Certificate of Origin (DCO)](#developer-certificate-of-origin-dco)
- [Release Cycle](#release-cycle)
- [Maintainers](#maintainers)
- [Owners](#owners)
@ -65,19 +65,19 @@ high-level discussions.
## Testing redux
Before submitting a pull request, run all the tests for the whole tree
to make sure your changes don't cause regression elsewhere.
to make sure your changes don't cause regression elsewhere.
Here's how to run the test suite:
Here's how to run the test suite:
- Install the correct version of the drone-cli package. As of this
writing, the correct drone-cli version is
[0.8.6](https://0-8-0.docs.drone.io/cli-installation/).
[1.1.0](https://docs.drone.io/cli/install/).
- Ensure you have enough free disk space. You will need at least
15-20 Gb of free disk space to hold all of the containers drone
creates (a default AWS or GCE disk size won't work -- see
[#6243](https://github.com/go-gitea/gitea/issues/6243)).
[#6243](https://github.com/go-gitea/gitea/issues/6243)).
- Change into the base directory of your copy of the gitea repository,
and run `drone exec --local --build-event pull_request`.
and run `drone exec --event pull_request`.
The drone version, command line, and disk requirements do change over
time (see [#4053](https://github.com/go-gitea/gitea/issues/4053) and
@ -88,7 +88,7 @@ update these instructions.
## Vendoring
We keep a cached copy of dependencies within the `vendor/` directory,
managing updates via [dep](https://github.com/golang/dep).
managing updates via [Modules](https://golang.org/cmd/go/#hdr-Module_maintenance).
Pull requests should only include `vendor/` updates if they are part of
the same change, be it a bugfix or a feature addition.
@ -97,7 +97,7 @@ The `vendor/` update needs to be justified as part of the PR description,
and must be verified by the reviewers and/or merger to always reference
an existing upstream commit.
You can find more information on how to get started with it on the [dep project website](https://golang.github.io/dep/docs/introduction.html).
You can find more information on how to get started with it on the [Modules Wiki](https://github.com/golang/go/wiki/Modules).
## Translation
@ -114,7 +114,7 @@ Generally, the go build tools are installed as-needed in the `Makefile`.
An exception are the tools to build the CSS and images.
- To build CSS: Install [Node.js](https://nodejs.org/en/download/package-manager) at version 8.0 or above
with `npm` and then run `npm install` and `make generate-stylesheets`.
with `npm` and then run `npm install` and `make css`.
- To build Images: ImageMagick, inkscape and zopflipng binaries must be
available in your `PATH` to run `make generate-images`.
@ -157,22 +157,21 @@ import (
)
```
## Sign-off your work
## Developer Certificate of Origin (DCO)
The sign-off is a simple line at the end of the explanation for the
patch. Your signature certifies that you wrote the patch or otherwise
have the right to pass it on as an open-source patch. The rules are
pretty simple: If you can certify [DCO](DCO), then you just add a line
to every git commit message:
We consider the act of contributing to the code by submitting a Pull
Request as the "Sign off" or agreement to the certifications and terms
of the [DCO](DCO) and [MIT license](LICENSE). No further action is required.
Additionally you could add a line at the end of your commit message.
```
Signed-off-by: Joe Smith <joe.smith@email.com>
```
Please use your real name; we really dislike pseudonyms or anonymous
contributions. We are in the open-source world without secrets. If you
set your `user.name` and `user.email` git configs, you can sign-off your
commit automatically with `git commit -s`.
If you set your `user.name` and `user.email` git configs, you can add the
line to the end of your commit automatically with `git commit -s`.
We assume in good faith that the information you provide is legally binding.
## Release Cycle
@ -214,7 +213,7 @@ to the maintainers team. If a maintainer is inactive for more than 3
months and forgets to leave the maintainers team, the owners may move
him or her from the maintainers team to the advisors team.
For security reasons, Maintainers should use 2FA for their accounts and
if possible provide gpg signed commits.
if possible provide gpg signed commits.
https://help.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/
https://help.github.com/articles/signing-commits-with-gpg/
@ -281,7 +280,7 @@ be reviewed by two maintainers and must pass the automatic tests.
* Create `-dev` tag as `git tag -s -F release.notes v$vmaj.$vmin.0-dev` and push the tag as `git push origin v$vmaj.$vmin.0-dev`.
* When CI has finished building tag then you have to create a new branch named `release/v$vmaj.$vmin`
* If it is bugfix version create PR for changelog on branch `release/v$vmaj.$vmin` and wait till it is reviewed and merged.
* Add a tag as `git tag -s -F release.notes v$vmaj.$vmin.$`, release.notes file could be a temporary file to only include the changelog this version which you added to `CHANGELOG.md`.
* Add a tag as `git tag -s -F release.notes v$vmaj.$vmin.$`, release.notes file could be a temporary file to only include the changelog this version which you added to `CHANGELOG.md`.
* And then push the tag as `git push origin v$vmaj.$vmin.$`. Drone CI will automatically created a release and upload all the compiled binary. (But currently it didn't add the release notes automatically. Maybe we should fix that.)
* If needed send PR for changelog on branch `master`.
* Send PR to [blog repository](https://github.com/go-gitea/blog) announcing the release.

View File

@ -1,7 +1,10 @@
###################################
#Build stage
FROM golang:1.12-alpine3.9 AS build-env
FROM golang:1.13-alpine3.10 AS build-env
ARG GOPROXY
ENV GOPROXY ${GOPROXY:-direct}
ARG GITEA_VERSION
ARG TAGS="sqlite sqlite_unlock_notify"
@ -18,7 +21,7 @@ WORKDIR ${GOPATH}/src/code.gitea.io/gitea
RUN if [ -n "${GITEA_VERSION}" ]; then git checkout "${GITEA_VERSION}"; fi \
&& make clean generate build
FROM alpine:3.9
FROM alpine:3.10
LABEL maintainer="maintainers@gitea.io"
EXPOSE 22 3000
@ -56,6 +59,6 @@ VOLUME ["/data"]
ENTRYPOINT ["/usr/bin/entrypoint"]
CMD ["/bin/s6-svscan", "/etc/s6"]
COPY docker /
COPY docker/root /
COPY --from=build-env /go/src/code.gitea.io/gitea/gitea /app/gitea/gitea
RUN ln -s /app/gitea/gitea /usr/local/bin/gitea

1341
Gopkg.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,119 +0,0 @@
ignored = ["google.golang.org/appengine*"]
[prune]
go-tests = true
unused-packages = true
non-go = true
[[constraint]]
branch = "master"
name = "code.gitea.io/git"
[[constraint]]
branch = "master"
name = "code.gitea.io/sdk"
[[constraint]]
revision = "05d86ea8f6e30456949f612cf68cf4a27ce8c9c5"
name = "github.com/blevesearch/bleve"
[[constraint]]
revision = "12dd70caea0268ac0d6c2707d0611ef601e7c64e"
name = "golang.org/x/crypto"
[[constraint]]
branch = "master"
name = "golang.org/x/sys"
[[constraint]]
revision = "2bf8f2a19ec09c670e931282edfe6567f6be21c9"
name = "golang.org/x/text"
[[constraint]]
branch = "master"
name = "golang.org/x/net"
[[override]]
name = "github.com/go-xorm/xorm"
revision = "a6300f2a45e05a8f75f00a1d6188049fe7851915"
[[override]]
name = "github.com/go-xorm/builder"
version = "0.3.3"
[[override]]
name = "github.com/go-sql-driver/mysql"
revision = "c45f530f8e7fe40f4687eaa50d0c8c5f1b66f9e0"
[[override]]
name = "github.com/mattn/go-sqlite3"
revision = "c7c4067b79cc51e6dfdcef5c702e74b1e0fa7c75"
[[override]]
name = "github.com/gorilla/mux"
revision = "757bef944d0f21880861c2dd9c871ca543023cba"
[[constraint]]
name = "github.com/gorilla/context"
version = "1.1.1"
[[constraint]]
name = "github.com/lafriks/xormstore"
version = "1.0.0"
[[constraint]]
branch = "master"
name = "github.com/lunny/dingtalk_webhook"
[[constraint]]
name = "github.com/markbates/goth"
version = "1.47.2"
[[constraint]]
branch = "master"
name = "github.com/mcuadros/go-version"
[[constraint]]
branch = "master"
name = "github.com/russross/blackfriday"
[[constraint]]
branch = "master"
name = "github.com/tstranex/u2f"
[[constraint]]
name = "gopkg.in/editorconfig/editorconfig-core-go.v1"
version = "1.2.0"
[[constraint]]
branch = "v2"
name = "gopkg.in/gomail.v2"
[[constraint]]
name = "gopkg.in/ini.v1"
version = "1.31.1"
[[constraint]]
name = "gopkg.in/ldap.v3"
version = "3.0.1"
[[constraint]]
name = "gopkg.in/macaron.v1"
version = "1.2.4"
[[constraint]]
name = "gopkg.in/testfixtures.v2"
version = "2.0.0"
[[override]]
branch = "master"
name = "golang.org/x/oauth2"
[[constraint]]
name = "github.com/prometheus/client_golang"
version = "0.9.0"
[[constraint]]
name = "github.com/mvdan/xurls"
version = "2.0.0"

View File

@ -28,3 +28,9 @@ He-Long Zhang <outman99@hotmail.com> (@BetaCat0)
Andrew Thornton <art27@cantab.net> (@zeripath)
John Olheiser <john.olheiser@gmail.com> (@jolheiser)
Richard Mahn <rich.mahn@unfoldingword.org> (@richmahn)
Mrsdizzie <info@mrsdizzie.com> (@mrsdizzie)
silverwind <me@silverwind.io> (@silverwind)
Gary Kim <gary@garykim.dev> (@gary-kim)
Guillermo Prandi <gitea.maint@mailfilter.com.ar> (@guillep2k)
Mura Li <typeless@ctli.io> (@typeless)
6543 <6543@obermui.de> (@6543)

277
Makefile

File diff suppressed because it is too large Load Diff

View File

@ -10,7 +10,9 @@
[![GoDoc](https://godoc.org/code.gitea.io/gitea?status.svg)](https://godoc.org/code.gitea.io/gitea)
[![GitHub release](https://img.shields.io/github/release/go-gitea/gitea.svg)](https://github.com/go-gitea/gitea/releases/latest)
[![Help Contribute to Open Source](https://www.codetriage.com/go-gitea/gitea/badges/users.svg)](https://www.codetriage.com/go-gitea/gitea)
[![Become a backer/sponsor of gitea](https://opencollective.com/gitea/tiers/backer/badge.svg?label=backer&color=brightgreen)](https://opencollective.com/gitea)
[![Become a backer/sponsor of gitea](https://opencollective.com/gitea/tiers/backers/badge.svg?label=backers&color=brightgreen)](https://opencollective.com/gitea)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
[![Crowdin](https://badges.crowdin.net/gitea/localized.svg)](https://crowdin.com/project/gitea)
## Purpose

View File

@ -3,13 +3,15 @@
# Gitea - Git with a cup of tea
[![Build Status](https://drone.gitea.io/api/badges/go-gitea/gitea/status.svg)](https://drone.gitea.io/go-gitea/gitea)
[![Join the chat at https://img.shields.io/discord/322538954119184384.svg](https://img.shields.io/discord/322538954119184384.svg)](https://discord.gg/NsatcWJ)
[![Join the chat at https://img.shields.io/discord/322538954119184384.svg](https://img.shields.io/discord/322538954119184384.svg)](https://discord.gg/gitea)
[![](https://images.microbadger.com/badges/image/gitea/gitea.svg)](https://microbadger.com/images/gitea/gitea "Get your own image badge on microbadger.com")
[![Coverage Status](https://coverage.gitea.io/badges/go-gitea/gitea/coverage.svg)](https://coverage.gitea.io/go-gitea/gitea)
[![codecov](https://codecov.io/gh/go-gitea/gitea/branch/master/graph/badge.svg)](https://codecov.io/gh/go-gitea/gitea)
[![Go Report Card](https://goreportcard.com/badge/code.gitea.io/gitea)](https://goreportcard.com/report/code.gitea.io/gitea)
[![GoDoc](https://godoc.org/code.gitea.io/gitea?status.svg)](https://godoc.org/code.gitea.io/gitea)
[![GitHub release](https://img.shields.io/github/release/go-gitea/gitea.svg)](https://github.com/go-gitea/gitea/releases/latest)
[![Become a backer/sponsor of gitea](https://opencollective.com/gitea/tiers/backer/badge.svg?label=backer&color=brightgreen)](https://opencollective.com/gitea)
[![Become a backer/sponsor of gitea](https://opencollective.com/gitea/tiers/backers/badge.svg?label=backers&color=brightgreen)](https://opencollective.com/gitea)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
[![Crowdin](https://badges.crowdin.net/gitea/localized.svg)](https://crowdin.com/project/gitea)
## 目标
@ -25,7 +27,7 @@ Gitea 的首要目标是创建一个极易安装,运行非常快速,安装
## 文档
关于如何安装请访问我们的 [文档站](https://docs.gitea.io/zh-cn/),如果没有找到对应的文档,你也可以通过 [Discord - 英文](https://discord.gg/NsatcWJ) 和 QQ群 328432459 来和我们交流。
关于如何安装请访问我们的 [文档站](https://docs.gitea.io/zh-cn/),如果没有找到对应的文档,你也可以通过 [Discord - 英文](https://discord.gg/gitea) 和 QQ群 328432459 来和我们交流。
## 贡献流程

File diff suppressed because it is too large Load Diff

359
cmd/admin_auth_ldap.go Normal file

File diff suppressed because it is too large Load Diff

1350
cmd/admin_auth_ldap_test.go Normal file

File diff suppressed because it is too large Load Diff

View File

@ -170,17 +170,28 @@ func runCert(c *cli.Context) error {
if err != nil {
log.Fatalf("Failed to open cert.pem for writing: %v", err)
}
pem.Encode(certOut, &pem.Block{Type: "CERTIFICATE", Bytes: derBytes})
certOut.Close()
err = pem.Encode(certOut, &pem.Block{Type: "CERTIFICATE", Bytes: derBytes})
if err != nil {
log.Fatalf("Failed to encode certificate: %v", err)
}
err = certOut.Close()
if err != nil {
log.Fatalf("Failed to write cert: %v", err)
}
log.Println("Written cert.pem")
keyOut, err := os.OpenFile("key.pem", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0600)
if err != nil {
log.Fatalf("Failed to open key.pem for writing: %v", err)
}
pem.Encode(keyOut, pemBlockForKey(priv))
keyOut.Close()
err = pem.Encode(keyOut, pemBlockForKey(priv))
if err != nil {
log.Fatalf("Failed to encode key: %v", err)
}
err = keyOut.Close()
if err != nil {
log.Fatalf("Failed to write key: %v", err)
}
log.Println("Written key.pem")
return nil
}

View File

@ -38,7 +38,7 @@ func initDB() error {
func initDBDisableConsole(disableConsole bool) error {
setting.NewContext()
models.LoadConfigs()
setting.InitDBConfig()
setting.NewXORMLogService(disableConsole)
if err := models.SetEngine(); err != nil {

49
cmd/convert.go Normal file
View File

@ -0,0 +1,49 @@
// Copyright 2019 The Gitea Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"fmt"
"code.gitea.io/gitea/models"
"code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/setting"
"github.com/urfave/cli"
)
// CmdConvert represents the available convert sub-command.
var CmdConvert = cli.Command{
Name: "convert",
Usage: "Convert the database",
Description: "A command to convert an existing MySQL database from utf8 to utf8mb4",
Action: runConvert,
}
func runConvert(ctx *cli.Context) error {
if err := initDB(); err != nil {
return err
}
log.Trace("AppPath: %s", setting.AppPath)
log.Trace("AppWorkPath: %s", setting.AppWorkPath)
log.Trace("Custom path: %s", setting.CustomPath)
log.Trace("Log path: %s", setting.LogRootPath)
setting.InitDBConfig()
if !setting.Database.UseMySQL {
fmt.Println("This command can only be used with a MySQL database")
return nil
}
if err := models.ConvertUtf8ToUtf8mb4(); err != nil {
log.Fatal("Failed to convert database from utf8 to utf8mb4: %v", err)
return err
}
fmt.Println("Converted successfully, please confirm your database's character set is now utf8mb4")
return nil
}

View File

@ -17,8 +17,8 @@ import (
"code.gitea.io/gitea/models"
"code.gitea.io/gitea/modules/setting"
"github.com/Unknwon/cae/zip"
"github.com/Unknwon/com"
"github.com/unknwon/cae/zip"
"github.com/unknwon/com"
"github.com/urfave/cli"
)
@ -31,12 +31,12 @@ It can be used for backup and capture Gitea server image to send to maintainer`,
Action: runDump,
Flags: []cli.Flag{
cli.StringFlag{
Name: "config, c",
Value: "custom/conf/app.ini",
Usage: "Custom configuration file path",
Name: "file, f",
Value: fmt.Sprintf("gitea-dump-%d.zip", time.Now().Unix()),
Usage: "Name of the dump file which will be created.",
},
cli.BoolFlag{
Name: "verbose, v",
Name: "verbose, V",
Usage: "Show process details",
},
cli.StringFlag{
@ -56,12 +56,8 @@ It can be used for backup and capture Gitea server image to send to maintainer`,
}
func runDump(ctx *cli.Context) error {
if ctx.IsSet("config") {
setting.CustomConf = ctx.String("config")
}
setting.NewContext()
setting.NewServices() // cannot access session settings otherwise
models.LoadConfigs()
err := models.SetEngine()
if err != nil {
@ -85,7 +81,7 @@ func runDump(ctx *cli.Context) error {
dbDump := path.Join(tmpWorkDir, "gitea-db.sql")
fileName := fmt.Sprintf("gitea-dump-%d.zip", time.Now().Unix())
fileName := ctx.String("file")
log.Printf("Packing dump files...")
z, err := zip.Create(fileName)
if err != nil {
@ -107,8 +103,8 @@ func runDump(ctx *cli.Context) error {
}
targetDBType := ctx.String("database")
if len(targetDBType) > 0 && targetDBType != models.DbCfg.Type {
log.Printf("Dumping database %s => %s...", models.DbCfg.Type, targetDBType)
if len(targetDBType) > 0 && targetDBType != setting.Database.Type {
log.Printf("Dumping database %s => %s...", setting.Database.Type, targetDBType)
} else {
log.Printf("Dumping database...")
}
@ -120,6 +116,14 @@ func runDump(ctx *cli.Context) error {
if err := z.AddFile("gitea-db.sql", dbDump); err != nil {
log.Fatalf("Failed to include gitea-db.sql: %v", err)
}
if len(setting.CustomConf) > 0 {
log.Printf("Adding custom configuration file from %s", setting.CustomConf)
if err := z.AddFile("app.ini", setting.CustomConf); err != nil {
log.Fatalf("Failed to include specified app.ini: %v", err)
}
}
customDir, err := os.Stat(setting.CustomPath)
if err == nil && customDir.IsDir() {
if err := z.AddDir("custom", setting.CustomPath); err != nil {

View File

@ -40,9 +40,10 @@ var (
}
microcmdGenerateLfsJwtSecret = cli.Command{
Name: "LFS_JWT_SECRET",
Usage: "Generate a new LFS_JWT_SECRET",
Action: runGenerateLfsJwtSecret,
Name: "JWT_SECRET",
Aliases: []string{"LFS_JWT_SECRET"},
Usage: "Generate a new JWT_SECRET",
Action: runGenerateLfsJwtSecret,
}
microcmdGenerateSecretKey = cli.Command{

View File

@ -8,16 +8,14 @@ import (
"bufio"
"bytes"
"fmt"
"net/http"
"os"
"strconv"
"strings"
"code.gitea.io/git"
"code.gitea.io/gitea/models"
"code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/git"
"code.gitea.io/gitea/modules/private"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/modules/util"
"github.com/urfave/cli"
)
@ -28,13 +26,6 @@ var (
Name: "hook",
Usage: "Delegate commands to corresponding Git hooks",
Description: "This should only be called by Git",
Flags: []cli.Flag{
cli.StringFlag{
Name: "config, c",
Value: "custom/conf/app.ini",
Usage: "Custom configuration file path",
},
},
Subcommands: []cli.Command{
subcmdHookPreReceive,
subcmdHookUpdate,
@ -67,21 +58,14 @@ func runHookPreReceive(c *cli.Context) error {
return nil
}
if c.IsSet("config") {
setting.CustomConf = c.String("config")
} else if c.GlobalIsSet("config") {
setting.CustomConf = c.GlobalString("config")
}
setup("hooks/pre-receive.log")
// the environment setted on serv command
repoID, _ := strconv.ParseInt(os.Getenv(models.ProtectedBranchRepoID), 10, 64)
isWiki := (os.Getenv(models.EnvRepoIsWiki) == "true")
username := os.Getenv(models.EnvRepoUsername)
reponame := os.Getenv(models.EnvRepoName)
userIDStr := os.Getenv(models.EnvPusherID)
repoPath := models.RepoPath(username, reponame)
userID, _ := strconv.ParseInt(os.Getenv(models.EnvPusherID), 10, 64)
prID, _ := strconv.ParseInt(os.Getenv(models.ProtectedBranchPRID), 10, 64)
buf := bytes.NewBuffer(nil)
scanner := bufio.NewScanner(os.Stdin)
@ -103,34 +87,23 @@ func runHookPreReceive(c *cli.Context) error {
newCommitID := string(fields[1])
refFullName := string(fields[2])
branchName := strings.TrimPrefix(refFullName, git.BranchPrefix)
protectBranch, err := private.GetProtectedBranchBy(repoID, branchName)
if err != nil {
fail("Internal error", fmt.Sprintf("retrieve protected branches information failed: %v", err))
}
if protectBranch != nil && protectBranch.IsProtected() {
// check and deletion
if newCommitID == git.EmptySHA {
fail(fmt.Sprintf("branch %s is protected from deletion", branchName), "")
}
// detect force push
if git.EmptySHA != oldCommitID {
output, err := git.NewCommand("rev-list", "--max-count=1", oldCommitID, "^"+newCommitID).RunInDir(repoPath)
if err != nil {
fail("Internal error", "Fail to detect force push: %v", err)
} else if len(output) > 0 {
fail(fmt.Sprintf("branch %s is protected from force push", branchName), "")
}
}
userID, _ := strconv.ParseInt(userIDStr, 10, 64)
canPush, err := private.CanUserPush(protectBranch.ID, userID)
if err != nil {
fail("Internal error", "Fail to detect user can push: %v", err)
} else if !canPush {
fail(fmt.Sprintf("protected branch %s can not be pushed to", branchName), "")
// If the ref is a branch, check if it's protected
if strings.HasPrefix(refFullName, git.BranchPrefix) {
statusCode, msg := private.HookPreReceive(username, reponame, private.HookOptions{
OldCommitID: oldCommitID,
NewCommitID: newCommitID,
RefFullName: refFullName,
UserID: userID,
GitAlternativeObjectDirectories: os.Getenv(private.GitAlternativeObjectDirectories),
GitObjectDirectory: os.Getenv(private.GitObjectDirectory),
GitQuarantinePath: os.Getenv(private.GitQuarantinePath),
ProtectedBranchID: prID,
})
switch statusCode {
case http.StatusInternalServerError:
fail("Internal Server Error", msg)
case http.StatusForbidden:
fail(msg, "")
}
}
}
@ -143,12 +116,6 @@ func runHookUpdate(c *cli.Context) error {
return nil
}
if c.IsSet("config") {
setting.CustomConf = c.String("config")
} else if c.GlobalIsSet("config") {
setting.CustomConf = c.GlobalString("config")
}
setup("hooks/update.log")
return nil
@ -159,16 +126,9 @@ func runHookPostReceive(c *cli.Context) error {
return nil
}
if c.IsSet("config") {
setting.CustomConf = c.String("config")
} else if c.GlobalIsSet("config") {
setting.CustomConf = c.GlobalString("config")
}
setup("hooks/post-receive.log")
// the environment setted on serv command
repoID, _ := strconv.ParseInt(os.Getenv(models.ProtectedBranchRepoID), 10, 64)
repoUser := os.Getenv(models.EnvRepoUsername)
isWiki := (os.Getenv(models.EnvRepoIsWiki) == "true")
repoName := os.Getenv(models.EnvRepoName)
@ -195,58 +155,31 @@ func runHookPostReceive(c *cli.Context) error {
newCommitID := string(fields[1])
refFullName := string(fields[2])
if err := private.PushUpdate(models.PushUpdateOptions{
RefFullName: refFullName,
OldCommitID: oldCommitID,
NewCommitID: newCommitID,
PusherID: pusherID,
PusherName: pusherName,
RepoUserName: repoUser,
RepoName: repoName,
}); err != nil {
log.GitLogger.Error(2, "Update: %v", err)
res, err := private.HookPostReceive(repoUser, repoName, private.HookOptions{
OldCommitID: oldCommitID,
NewCommitID: newCommitID,
RefFullName: refFullName,
UserID: pusherID,
UserName: pusherName,
})
if res == nil {
fail("Internal Server Error", err)
}
if newCommitID != git.EmptySHA && strings.HasPrefix(refFullName, git.BranchPrefix) {
branch := strings.TrimPrefix(refFullName, git.BranchPrefix)
repo, pullRequestAllowed, err := private.GetRepository(repoID)
if err != nil {
log.GitLogger.Error(2, "get repo: %v", err)
break
}
if !pullRequestAllowed {
break
}
baseRepo := repo
if repo.IsFork {
baseRepo = repo.BaseRepo
}
if !repo.IsFork && branch == baseRepo.DefaultBranch {
break
}
pr, err := private.ActivePullRequest(baseRepo.ID, repo.ID, baseRepo.DefaultBranch, branch)
if err != nil {
log.GitLogger.Error(2, "get active pr: %v", err)
break
}
fmt.Fprintln(os.Stderr, "")
if pr == nil {
if repo.IsFork {
branch = fmt.Sprintf("%s:%s", repo.OwnerName, branch)
}
fmt.Fprintf(os.Stderr, "Create a new pull request for '%s':\n", branch)
fmt.Fprintf(os.Stderr, " %s/compare/%s...%s\n", baseRepo.HTMLURL(), util.PathEscapeSegments(baseRepo.DefaultBranch), util.PathEscapeSegments(branch))
} else {
fmt.Fprint(os.Stderr, "Visit the existing pull request:\n")
fmt.Fprintf(os.Stderr, " %s/pulls/%d\n", baseRepo.HTMLURL(), pr.Index)
}
fmt.Fprintln(os.Stderr, "")
if res["message"] == false {
continue
}
fmt.Fprintln(os.Stderr, "")
if res["create"] == true {
fmt.Fprintf(os.Stderr, "Create a new pull request for '%s':\n", res["branch"])
fmt.Fprintf(os.Stderr, " %s\n", res["url"])
} else {
fmt.Fprint(os.Stderr, "Visit the existing pull request:\n")
fmt.Fprintf(os.Stderr, " %s\n", res["url"])
}
fmt.Fprintln(os.Stderr, "")
}
return nil

View File

@ -10,7 +10,6 @@ import (
"strings"
"code.gitea.io/gitea/models"
"code.gitea.io/gitea/modules/setting"
"github.com/urfave/cli"
)
@ -41,19 +40,10 @@ var CmdKeys = cli.Command{
Value: "",
Usage: "Base64 encoded content of the SSH key provided to the SSH Server (requires type to be provided too)",
},
cli.StringFlag{
Name: "config, c",
Value: "custom/conf/app.ini",
Usage: "Custom configuration file path",
},
},
}
func runKeys(c *cli.Context) error {
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
if !c.IsSet("username") {
return errors.New("No username provided")
}

View File

@ -19,20 +19,9 @@ var CmdMigrate = cli.Command{
Usage: "Migrate the database",
Description: "This is a command for migrating the database, so that you can run gitea admin create-user before starting the server.",
Action: runMigrate,
Flags: []cli.Flag{
cli.StringFlag{
Name: "config, c",
Value: "custom/conf/app.ini",
Usage: "Custom configuration file path",
},
},
}
func runMigrate(ctx *cli.Context) error {
if ctx.IsSet("config") {
setting.CustomConf = ctx.String("config")
}
if err := initDB(); err != nil {
return err
}
@ -41,10 +30,10 @@ func runMigrate(ctx *cli.Context) error {
log.Trace("AppWorkPath: %s", setting.AppWorkPath)
log.Trace("Custom path: %s", setting.CustomPath)
log.Trace("Log path: %s", setting.LogRootPath)
models.LoadConfigs()
setting.InitDBConfig()
if err := models.NewEngine(migrations.Migrate); err != nil {
log.Fatal(4, "Failed to initialize ORM engine: %v", err)
log.Fatal("Failed to initialize ORM engine: %v", err)
return err
}

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,6 @@
package cmd
import (
"crypto/tls"
"fmt"
"net"
"net/http"
@ -15,13 +14,12 @@ import (
"strings"
"code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/markup/external"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/routers"
"code.gitea.io/gitea/routers/routes"
"github.com/Unknwon/com"
context2 "github.com/gorilla/context"
"github.com/unknwon/com"
"github.com/urfave/cli"
"golang.org/x/crypto/acme/autocert"
ini "gopkg.in/ini.v1"
@ -40,11 +38,6 @@ and it takes care of all the other things for you`,
Value: "3000",
Usage: "Temporary port number to prevent conflict",
},
cli.StringFlag{
Name: "config, c",
Value: "custom/conf/app.ini",
Usage: "Custom configuration file path",
},
cli.StringFlag{
Name: "pid, P",
Value: "/var/run/gitea.pid",
@ -69,7 +62,7 @@ func runHTTPRedirector() {
var err = runHTTP(source, context2.ClearHandler(handler))
if err != nil {
log.Fatal(4, "Failed to start port redirection: %v", err)
log.Fatal("Failed to start port redirection: %v", err)
}
}
@ -84,15 +77,13 @@ func runLetsEncrypt(listenAddr, domain, directory, email string, m http.Handler)
log.Info("Running Let's Encrypt handler on %s", setting.HTTPAddr+":"+setting.PortToRedirect)
var err = http.ListenAndServe(setting.HTTPAddr+":"+setting.PortToRedirect, certManager.HTTPHandler(http.HandlerFunc(runLetsEncryptFallbackHandler))) // all traffic coming into HTTP will be redirect to HTTPS automatically (LE HTTP-01 validation happens here)
if err != nil {
log.Fatal(4, "Failed to start the Let's Encrypt handler on port %s: %v", setting.PortToRedirect, err)
log.Fatal("Failed to start the Let's Encrypt handler on port %s: %v", setting.PortToRedirect, err)
}
}()
server := &http.Server{
Addr: listenAddr,
Handler: m,
TLSConfig: &tls.Config{
GetCertificate: certManager.GetCertificate,
},
Addr: listenAddr,
Handler: m,
TLSConfig: certManager.TLSConfig(),
}
return server.ListenAndServeTLS("", "")
}
@ -110,18 +101,12 @@ func runLetsEncryptFallbackHandler(w http.ResponseWriter, r *http.Request) {
}
func runWeb(ctx *cli.Context) error {
if ctx.IsSet("config") {
setting.CustomConf = ctx.String("config")
}
if ctx.IsSet("pid") {
setting.CustomPID = ctx.String("pid")
}
routers.GlobalInit()
external.RegisterParsers()
m := routes.NewMacaron()
routes.RegisterRoutes(m)
@ -190,15 +175,20 @@ func runWeb(ctx *cli.Context) error {
}
err = runHTTPS(listenAddr, setting.CertFile, setting.KeyFile, context2.ClearHandler(m))
case setting.FCGI:
listener, err := net.Listen("tcp", listenAddr)
var listener net.Listener
listener, err = net.Listen("tcp", listenAddr)
if err != nil {
log.Fatal(4, "Failed to bind %s", listenAddr, err)
log.Fatal("Failed to bind %s: %v", listenAddr, err)
}
defer listener.Close()
defer func() {
if err := listener.Close(); err != nil {
log.Fatal("Failed to stop server: %v", err)
}
}()
err = fcgi.Serve(listener, context2.ClearHandler(m))
case setting.UnixSocket:
if err := os.Remove(listenAddr); err != nil && !os.IsNotExist(err) {
log.Fatal(4, "Failed to remove unix socket directory %s: %v", listenAddr, err)
log.Fatal("Failed to remove unix socket directory %s: %v", listenAddr, err)
}
var listener *net.UnixListener
listener, err = net.ListenUnix("unix", &net.UnixAddr{Name: listenAddr, Net: "unix"})
@ -209,15 +199,15 @@ func runWeb(ctx *cli.Context) error {
// FIXME: add proper implementation of signal capture on all protocols
// execute this on SIGTERM or SIGINT: listener.Close()
if err = os.Chmod(listenAddr, os.FileMode(setting.UnixSocketPermission)); err != nil {
log.Fatal(4, "Failed to set permission of unix socket: %v", err)
log.Fatal("Failed to set permission of unix socket: %v", err)
}
err = http.Serve(listener, context2.ClearHandler(m))
default:
log.Fatal(4, "Invalid protocol: %s", setting.Protocol)
log.Fatal("Invalid protocol: %s", setting.Protocol)
}
if err != nil {
log.Fatal(4, "Failed to start server: %v", err)
log.Fatal("Failed to start server: %v", err)
}
return nil

View File

@ -34,7 +34,7 @@ func runHTTPS(listenAddr, certFile, keyFile string, m http.Handler) error {
var err error
config.Certificates[0], err = tls.LoadX509KeyPair(certFile, keyFile)
if err != nil {
log.Fatal(4, "Failed to load https cert file %s: %v", listenAddr, err)
log.Fatal("Failed to load https cert file %s: %v", listenAddr, err)
}
return gracehttp.Serve(&http.Server{

Some files were not shown because too many files have changed in this diff Show More