Commit graph

2612 commits

Author SHA1 Message Date
GiteaBot d5feb10aca [skip ci] Updated translations via Crowdin 2023-03-31 00:07:06 +00:00
silverwind aa4d1d94f7
Diff improvements ()
- Avoid flash of wrong tree toggle icon on page load by setting icon
based on sync state
- Avoid "pop-in" of tree on page load by leaving space based on sync
state
- Use the same border/box-shadow combo used on comment `:target` also
for file `:target`.
- Refactor `DiffFileTree.vue` to use `toggleElem` instead of hardcoded
class name.
- Left-align inline comment boxes and make them fit the same amount of
markup content on a line as GitHub.
- Fix height of `diff-file-list`

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

<img width="1250" alt="Screenshot 2023-03-18 at 00 52 04"
src="https://user-images.githubusercontent.com/115237/226071392-6789a644-aead-4756-a77e-aba3642150a0.png">
<img width="1246" alt="Screenshot 2023-03-18 at 00 59 43"
src="https://user-images.githubusercontent.com/115237/226071443-8bcba924-458b-48bd-b2f0-0de59cb180ac.png">
<img width="1250" alt="Screenshot 2023-03-18 at 01 27 14"
src="https://user-images.githubusercontent.com/115237/226073121-ccb99f9a-d3ac-40b7-9589-43580c4a01c9.png">
<img width="1231" alt="Screenshot 2023-03-19 at 21 44 16"
src="https://user-images.githubusercontent.com/115237/226207951-81bcae1b-6b41-4e39-83a7-0f37951df6be.png">

(Yes I'm aware the border-radius in bottom corners is suboptimal, but
this would be notorously hard to fix without relying on `overflow:
hidden`).
2023-03-30 20:06:10 +08:00
GiteaBot 7422503341 [skip ci] Updated translations via Crowdin 2023-03-30 00:06:54 +00:00
Jason Song 265675a31c
Add missing translation for actions.runners.reset_registration_token_success ()
Used at

4011821c94/routers/web/shared/actions/runners.go (L157)
2023-03-29 09:20:48 +08:00
GiteaBot 9c0dc6c73a [skip ci] Updated translations via Crowdin 2023-03-29 00:40:29 +00:00
JakobDev f384b13f1c
Implement Issue Config ()
Closes 

This PR adds the possibility to disable blank Issues, when the Repo has
templates. This can be done by creating the file
`.gitea/issue_config.yaml` with the content `blank_issues_enabled` in
the Repo.
2023-03-28 14:22:07 -04:00
qwerty287 3cab9c6b0c
Add API to manage issue dependencies ()
Adds API endpoints to manage issue/PR dependencies
* `GET /repos/{owner}/{repo}/issues/{index}/blocks` List issues that are
blocked by this issue
* `POST /repos/{owner}/{repo}/issues/{index}/blocks` Block the issue
given in the body by the issue in path
* `DELETE /repos/{owner}/{repo}/issues/{index}/blocks` Unblock the issue
given in the body by the issue in path
* `GET /repos/{owner}/{repo}/issues/{index}/dependencies` List an
issue's dependencies
* `POST /repos/{owner}/{repo}/issues/{index}/dependencies` Create a new
issue dependencies
* `DELETE /repos/{owner}/{repo}/issues/{index}/dependencies` Remove an
issue dependency

Closes https://github.com/go-gitea/gitea/issues/15393
Closes 

Co-authored-by: Andrew Thornton <art27@cantab.net>
2023-03-28 13:23:25 -04:00
Wiktor Kwapisiewicz b78c955958
Fix tags view ()
This PR fixes several issues reported in
https://github.com/go-gitea/gitea/issues/23221.

It does three things:
1. Fixes the `DefaultBranch` variable that has not been set.
2. Sets `Title` and `Message` for newly created tags from the Tag
message. This makes it easier to create releases from tags that have
messages and for those that don't it doesn't have any effect.
3. Makes UI changes so that tags look more like proper releases.

Before:

![2023-03-02-12-31-19](https://user-images.githubusercontent.com/1718963/222416890-941a74d4-9cd0-4c45-a59e-199d2580cd8c.png)

After:

![2023-03-02-12-31-31](https://user-images.githubusercontent.com/1718963/222416919-abce2009-8955-4cd0-9bed-1374582e04f7.png)

I purposefully didn't reformat the template so that the diff is cleaner
but can do so if that's welcome.

Thanks for your time!

---------

Signed-off-by: Wiktor Kwapisiewicz <wiktor@metacode.biz>
2023-03-27 21:41:33 +08:00
GiteaBot b46c46f3a3 [skip ci] Updated translations via Crowdin 2023-03-27 00:16:37 +00:00
GiteaBot 2d2b4bdf62 [skip ci] Updated translations via Crowdin 2023-03-26 00:16:31 +00:00
GiteaBot e37ef4d374 [skip ci] Updated translations via Crowdin 2023-03-25 00:16:30 +00:00
yp05327 d673a6f832
Fix incorrect package doc link ()
package doc link is changed in
https://github.com/go-gitea/gitea/pull/23629
2023-03-24 23:45:06 +08:00
wxiaoguang e52ea44edd
Clarify that Gitea requires JavaScript ()
Close 

There were already a lot of functions powered by JavaScript in Gitea.

Without JavaScript, the Gitea Web UI almost doesn't work (only some
static links work ....)
2023-03-24 18:35:52 +08:00
GiteaBot 4acf0214b1 [skip ci] Updated translations via Crowdin 2023-03-24 00:16:34 +00:00
wxiaoguang 95818adb71
A tool to help to backport locales, changes source strings to fix other broken translations ()
It use old en-US locales as reference, fill the old other locales with
new locales.

----

## More broken translations

Many translations are still broken. The reason is: at the last time
restoring the ini to crowdin, many semicolon are treated as comments.

Two kinds of broken strings:

### Some translations can be re-translated

<details>

```
skipping options/locale/locale_si-LK.ini org teams.add_nonexistent_repo
skipping options/locale/locale_tr-TR.ini repo commits.search.tooltip
skipping options/locale/locale_es-ES.ini repo settings.trust_model.committer.desc
skipping options/locale/locale_es-ES.ini admin dashboard.new_version_hint
skipping options/locale/locale_pt-PT.ini org teams.add_nonexistent_repo
skipping options/locale/locale_hu-HU.ini install require_sign_in_view_popup
skipping options/locale/locale_hu-HU.ini repo migrate.invalid_local_path
skipping options/locale/locale_id-ID.ini repo migrate.invalid_local_path
skipping options/locale/locale_id-ID.ini org teams.add_nonexistent_repo
skipping options/locale/locale_de-DE.ini repo settings.protect_protected_file_patterns_desc
```

</details>

So this PR also does some small changes on them, to trigger the
re-translation.

### The `locale_el-GR.ini` contains many broken tranlsations

I guess we should reset them from crowdin side, then translators can
re-translate them.

----

Update: in latest main, the strings have been fixed.

## TODO

Update: the el-GR translators have done great job and fixes these broken
translations.


<details>

Merge this PR ASAP and upload `locale_el-GR.ini` to crowdin to remove
broken strings.


Out-dated, fixed in main.


![image](https://user-images.githubusercontent.com/2114189/226954531-36e14527-278a-41a1-8ddb-2b2b27bfc746.png)

</details>

---------

Co-authored-by: delvh <dev.lh@web.de>
2023-03-23 13:27:03 -04:00
GiteaBot 1d35fa0e78 [skip ci] Updated translations via Crowdin 2023-03-23 00:16:53 +00:00
wxiaoguang d4f35bd681
Use a general approch to improve a11y for all checkboxes and dropdowns. ()
This PR follows  and 

The major improvements:

1. The `aria-*.js` are totally transparent now, no need to call
`attachDropdownAria` explicitly anymore.
* It hooks the `$.fn.checkbox` and `$.fn.dropdown`, then our patch
works.
* It makes all dynamically generated checkbox/dropdown work with a11y
without any change
* eg: the `conversation.find('.dropdown').dropdown();` in `repo-diff.js`
2. Since it's totally transparent now, it could be easier to modify or
remove in the future.
3. It handles all selection labels as well (by onLabelCreate), so it
supports "multiple selection dropdown" now.
* It partially completes one of my TODOs: `TODO: multiple selection is
not supported yet.`
4. The code structure is clearer, code blocks are splitted into
different functions.
* The old `attachOneDropdownAria` was splitted into separate functions.
* It makes it easier to add more fine tunes in the future, and co-work
with contributors.
6. The code logic is similar as before, only two new parts: 
    1. the `ariaCheckboxFn` and `ariaDropdownFn` functions
    2. the `onLabelCreate` and `updateSelectionLabel` functions

In `aria-dropdown.js` I had to mix jQuery and Vanilla JS somewhat, I
think the code is still understandable, otherwise the code would be much
more complex to read.

Thanks to fsologureng for the idea about "improving the 'delete icon'
with aria attributes".

If there is anything unclear or incorrect, feel free to ask and discuss,
or propose new PRs for it.
2023-03-22 10:52:01 +08:00
GiteaBot 43809e66ac [skip ci] Updated translations via Crowdin 2023-03-22 00:16:22 +00:00
Punit Inani a8c30a45fa
Publish Review buttons should indicate why they are disabled ()
Adding tooltip on "Approve" and "Review Changes" buttons. is try to do
by them self on their PR.
Resolves https://github.com/go-gitea/gitea/issues/23547
`Approve` tootip text :- "Pull request authors can’t approve their own
pull request"
`Request Changes` tooltip text:- "Pull request authors can’t request
changes on their own pull request"


Before 

https://user-images.githubusercontent.com/115237/225984020-306c048f-cb9b-4dee-8929-1c74c331518b.png

After 
<img width="841" alt="image"
src="https://user-images.githubusercontent.com/80308335/226445845-b5f6f6c9-f0dc-4934-a282-3b8be06417a8.png">
2023-03-20 17:54:23 -04:00
sillyguodong 371520d7ab
Display the version of runner in the runner list ()
Close:  

### Change
1. Add version column to action_runner table.
2. Read the runner version from the request header, and update it in DB.
3. Display version in runner list

### Screenshot

![image](https://user-images.githubusercontent.com/33891828/225220990-98bc0158-4403-4e6c-9805-31bbbc65a802.png)
2023-03-19 22:19:40 -04:00
GiteaBot 85ca8bfe2c [skip ci] Updated translations via Crowdin 2023-03-19 00:16:17 +00:00
GiteaBot fe8b6cbd91 [skip ci] Updated translations via Crowdin 2023-03-18 00:16:14 +00:00
GiteaBot e200c68bad [skip ci] Updated translations via Crowdin 2023-03-17 00:16:11 +00:00
Yarden Shoham 39d3711f30
Change Close to either Close issue or Close pull request ()
Following [a discord
discussion](https://discord.com/channels/322538954119184384/977026554909581334/1085560443919147138),
the close button in the issue comment box is more descriptive.

# Before
For both issue and pull request

![image](https://user-images.githubusercontent.com/20454870/225449237-20c3a036-4b0f-40ab-b2f9-e72eff213165.png)

# After
## Issue

![image](https://user-images.githubusercontent.com/20454870/225550855-aa138ee5-e620-4f8c-b17b-91281677ecab.png)

## Pull request

![image](https://user-images.githubusercontent.com/20454870/225550750-4dd0906d-39a9-4678-9aee-e97e5e8c302d.png)

---------

Signed-off-by: Yarden Shoham <hrsi88@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
2023-03-16 23:11:31 +08:00
GiteaBot 0f2361fedd [skip ci] Updated translations via Crowdin 2023-03-16 00:16:23 +00:00
GiteaBot 74b80d1b2f [skip ci] Updated translations via Crowdin 2023-03-15 00:17:03 +00:00
yp05327 aac07d010f
Add workflow error notification in ui ()
![image](https://user-images.githubusercontent.com/18380374/224237847-07a30029-32d4-4af7-a36e-e55f0ed899aa.png)

![image](https://user-images.githubusercontent.com/18380374/224239309-a96120e1-5eec-41c0-89aa-9cf63d1df30c.png)

---------

Co-authored-by: techknowlogick <matti@mdranta.net>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-03-14 15:27:03 +08:00
GiteaBot 605fd15ad6 [skip ci] Updated translations via Crowdin 2023-03-14 00:16:09 +00:00
KN4CK3R c709fa17a7
Add Swift package registry ()
This PR adds a [Swift](https://www.swift.org/) package registry.


![grafik](https://user-images.githubusercontent.com/1666336/211842523-07521cbd-8fb6-400f-820c-ee8048b05ae8.png)
2023-03-13 15:28:39 -05:00
Philip Peterson 757b4c17e9
Support reflogs ()
This PR adds support for reflogs on all repositories. It does this by
adding a global configuration entry.

Implements 

---------

Signed-off-by: Philip Peterson <philip.c.peterson@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-03-13 15:51:07 +08:00
GiteaBot 023521b016 [skip ci] Updated translations via Crowdin 2023-03-12 00:16:02 +00:00
GiteaBot f20bf2fe3b [skip ci] Updated translations via Crowdin 2023-03-11 00:15:59 +00:00
Zettat123 3de9e63fd0
Hide target selector if tag exists when creating new release ()
Close .

|status|screenshot|
|-|-|
|empty tag name|<img
src="https://user-images.githubusercontent.com/15528715/221490165-fd3abd2e-6dc5-4562-bece-d1d6a305479e.png"
width="300px"/>|
|new tag|<img
src="https://user-images.githubusercontent.com/15528715/221490450-49b2a48e-b206-49f4-bd79-34b1ea64156f.png"
width="300px"/>|
|existing tag|<img
src="https://user-images.githubusercontent.com/15528715/221490301-4d1879dd-4947-4abc-9b9a-e77be1806981.png"
width="300px"/>|
2023-03-10 10:42:38 -06:00
KN4CK3R 2173f14708
Add user webhooks ()
Currently we can add webhooks for organizations but not for users. This
PR adds the latter. You can access it from the current users settings.


![grafik](https://user-images.githubusercontent.com/1666336/197391408-15dfdc23-b476-4d0c-82f7-9bc9b065988f.png)
2023-03-10 08:28:32 -06:00
zeripath dad057b639
Handle OpenID discovery URL errors a little nicer when creating/editing sources ()
When there is an error creating a new openIDConnect authentication
source try to handle the error a little better.

Close 

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2023-03-10 01:14:43 -05:00
GiteaBot c775053476 [skip ci] Updated translations via Crowdin 2023-03-10 00:15:59 +00:00
GiteaBot c5573dbc0f [skip ci] Updated translations via Crowdin 2023-03-09 00:15:57 +00:00
GiteaBot 2dc4f80af0 [skip ci] Updated translations via Crowdin 2023-03-08 00:15:50 +00:00
GiteaBot ce43208c6a [skip ci] Updated translations via Crowdin 2023-03-06 00:15:51 +00:00
GiteaBot 390d270064 [skip ci] Updated translations via Crowdin 2023-03-05 00:15:41 +00:00
wxiaoguang b2359f3df6
Fix various bugs for "install" page ()
## TLDR

* Fix the broken page / broken image problem when click "Install"
* Close 
* Fix the Password Hash Algorithm display problem for 
* Close 
* Close 

## Details

### The broken page / broken image problem when click "Install"
(Redirect failed after install gitea )

Before: when click "install", all new requests will fail, because the
server has been restarted. Users just see a broken page with broken
images, sometimes the server is not ready but the user would have been
redirect to "/user/login" page, then the users see a new broken page
(connection refused or something wrong ...)

After: only check InstallLock=true for necessary handlers, and sleep for
a while before restarting the server, then the browser has enough time
to load the "post-install" page. And there is a script to check whether
"/user/login" is ready, the user will only be redirected to the login
page when the server is ready.

### During new instance setup make 'Gitea Base URL' filled from
window.location.origin 

If the "app_url" input contains `localhost` (the default value from
config), use current window's location href as the `app_url` (aka
ROOT_URL)

### Fix the Password Hash Algorithm display problem for "Provide the
ability to set password hash algorithm parameters "

Before: the UI shows `pbkdf2$50000$50`

<details>

![image](https://user-images.githubusercontent.com/2114189/221917143-e1e54798-1698-4fee-a18d-00c48081fc39.png)

</details>

After: the UI shows `pbkdf2`

<details>

![image](https://user-images.githubusercontent.com/2114189/221916999-97a15be8-2ebb-4a01-bf93-dac18e354fcc.png)

</details>

### GET data: net::ERR_INVALID_URL 

Cause by empty `data:` in `<link rel="manifest"
href="data:{{.ManifestData}}">`

---------

Co-authored-by: Jason Song <i@wolfogre.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2023-03-04 10:12:02 +08:00
wxiaoguang d72462dae6
Improve update-locales script and fix locale processing bug ()
The locales of Gitea has been broken for long time, till now, it's still
not fully fixed.

One of the root problems is that the `ini` library is quite quirky and
the `update-locales` script doesn't work well for all cases.


This PR fixes the `update-locales` script to make it satisfy `ini`
library and the crowdin.

See the comments for more details.

The `locale_zh-CN.ini` is an example, it comes from crowdin and is
processed by the new `update-locales.sh`. Especially see the `feed_of`:
https://github.com/go-gitea/gitea/pull/23240/files#diff-321f6ca4eae1096eba230e93c4740f9903708afe8d79cf2e57f4299786c4528bR268
2023-03-02 12:33:36 -06:00
GiteaBot 785a3e6e92 [skip ci] Updated translations via Crowdin 2023-03-02 00:23:09 +00:00
Lauris BH 58b4143803
Add loading yaml label template files ()
Extract from  and enhancement to  to support exclusive
scoped labels in label templates

* Move label template functionality to label module
* Fix handling of color codes
* Add Advanced label template
2023-03-02 01:44:23 +02:00
Brecht Van Lommel 545495dcb0
Pull Requests: add button to compare force pushed commits ()
To quickly see what changed without having to re-read the whole diff.
2023-03-01 14:19:47 -05:00
GiteaBot 3e426bba78 [skip ci] Updated translations via Crowdin 2023-03-01 00:16:03 +00:00
GiteaBot 067b0c2664 [skip ci] Updated translations via Crowdin 2023-02-28 00:15:54 +00:00
Lunny Xiao b9a9b8e469
Revert "[skip ci] Updated translations via Crowdin" () 2023-02-27 08:58:38 +08:00
GiteaBot 07ced728b3 [skip ci] Updated translations via Crowdin 2023-02-27 00:15:23 +00:00
GiteaBot 357042279b [skip ci] Updated licenses and gitignores 2023-02-26 00:15:26 +00:00
Brecht Van Lommel 10cdcb9ea8
Add "Reviewed by you" filter for pull requests ()
This includes pull requests that you approved, requested changes or
commented on. Currently such pull requests are not visible in any of the
filters on /pulls, while they may need further action like merging, or
prodding the author or reviewers.

Especially when working with a large team on a repository it's helpful
to get a full overview of pull requests that may need your attention,
without having to sift through the complete list.
2023-02-24 21:55:50 -05:00
Brecht Van Lommel 843f81113e
Projects: rename Board to Column in interface and improve consistency () 2023-02-24 18:10:50 -05:00
Jason Song edf98a2dc3
Require approval to run actions for fork pull request ()
Currently, Gitea will run actions automatically which are triggered by
fork pull request. It's a security risk, people can create a PR and
modify the workflow yamls to execute a malicious script.

So we should require approval for first-time contributors, which is the
default strategy of a public repo on GitHub, see [Approving workflow
runs from public
forks](https://docs.github.com/en/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks).

Current strategy:

- don't need approval if it's not a fork PR;
- always need approval if the user is restricted;
- don't need approval if the user can write;
- don't need approval if the user has been approved before;
- otherwise, need approval.

https://user-images.githubusercontent.com/9418365/217207121-badf50a8-826c-4425-bef1-d82d1979bc81.mov

GitHub has an option for that, you can see that at
`/<owner>/<repo>/settings/actions`, and we can support that later.

<img width="835" alt="image"
src="https://user-images.githubusercontent.com/9418365/217199990-2967e68b-e693-4e59-8186-ab33a1314a16.png">

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-24 15:58:49 +08:00
zeripath d2128b44f7
Add scopes to API to create token and display them ()
The API to create tokens is missing the ability to set the required
scopes for tokens, and to show them on the API and on the UI.

This PR adds this functionality.

Signed-off-by: Andrew Thornton <art27@cantab.net>
2023-02-20 15:28:44 -06:00
Zettat123 9a83aa28a3
Get rules by id when editing branch protection rule ()
When users rename an existing branch protection rule, a new rule with
the new name will be created and the old rule will still exist.

![image](https://user-images.githubusercontent.com/15528715/219276442-d3c001ad-e693-44ec-9ad2-b33f2666b49b.png)

---

![image](https://user-images.githubusercontent.com/15528715/219276478-547c3b93-b3f1-4292-a1ef-c1b7747fe1bb.png)

The reason is that the `SettingsProtectedBranchPost` function only get
branch protection rule by name before updating or creating a rule. When
the rule name changes, the function cannot find the existing rule so it
will create a new rule rather than update the existing rule. To fix the
bug, the function should get rule by id first.

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-20 19:30:41 +08:00
Brecht Van Lommel 6221a6fd54
Scoped labels ()
Add a new "exclusive" option per label. This makes it so that when the
label is named `scope/name`, no other label with the same `scope/`
prefix can be set on an issue.

The scope is determined by the last occurence of `/`, so for example
`scope/alpha/name` and `scope/beta/name` are considered to be in
different scopes and can coexist.

Exclusive scopes are not enforced by any database rules, however they
are enforced when editing labels at the models level, automatically
removing any existing labels in the same scope when either attaching a
new label or replacing all labels.

In menus use a circle instead of checkbox to indicate they function as
radio buttons per scope. Issue filtering by label ensures that only a
single scoped label is selected at a time. Clicking with alt key can be
used to remove a scoped label, both when editing individual issues and
batch editing.

Label rendering refactor for consistency and code simplification:

* Labels now consistently have the same shape, emojis and tooltips
everywhere. This includes the label list and label assignment menus.
* In label list, show description below label same as label menus.
* Don't use exactly black/white text colors to look a bit nicer.
* Simplify text color computation. There is no point computing luminance
in linear color space, as this is a perceptual problem and sRGB is
closer to perceptually linear.
* Increase height of label assignment menus to show more labels. Showing
only 3-4 labels at a time leads to a lot of scrolling.
* Render all labels with a new RenderLabel template helper function.

Label creation and editing in multiline modal menu:

* Change label creation to open a modal menu like label editing.
* Change menu layout to place name, description and colors on separate
lines.
* Don't color cancel button red in label editing modal menu.
* Align text to the left in model menu for better readability and
consistent with settings layout elsewhere.

Custom exclusive scoped label rendering:

* Display scoped label prefix and suffix with slightly darker and
lighter background color respectively, and a slanted edge between them
similar to the `/` symbol.
* In menus exclusive labels are grouped with a divider line.

---------

Co-authored-by: Yarden Shoham <hrsi88@gmail.com>
Co-authored-by: Lauris BH <lauris@nix.lv>
2023-02-18 21:17:39 +02:00
Yarden Shoham feed1ff38f
Rename "People" to "Members" in organization page and use a better icon ()
`member` is how it's named in the code

Closes  

Before | After
--- | ---

![image](https://user-images.githubusercontent.com/20454870/219781155-69a8476e-0f04-4b70-bda5-ea6fa8ce676c.png)
|
![image](https://user-images.githubusercontent.com/20454870/219780887-61644c27-36a2-4e1f-8f98-be3911883b49.png)

---------

Signed-off-by: Yarden Shoham <hrsi88@gmail.com>
Co-authored-by: delvh <leon@kske.dev>
2023-02-18 21:41:31 +08:00
Dalai Felinto a0b9767df8
Use "Title Case" for text "Reference in new issue" ()
The "Reference in new issue" option shows up in a menu when looking at
pull requests. All the other options there follow the "Title case":

* Copy Link
* Quote Reply
* Edit

This patch makes sure this option also follow the Title case.

Screenshot of how it looks without this patch:

![image](https://user-images.githubusercontent.com/843498/219346003-728d07c1-d150-41a5-b084-faef118228b1.png)

Co-authored-by: Dalai Felinto <dalai@blender.org>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-16 23:06:07 +08:00
Brecht Van Lommel 49919c636e
Pull Requests: setting to allow edits by maintainers by default, tweak UI ()
Add setting to allow edits by maintainers by default, to avoid having to
often ask contributors to enable this.

This also reorganizes the pull request settings UI to improve clarity.
It was unclear which checkbox options were there to control available
merge styles and which merge styles they correspond to.

Now there is a "Merge Styles" label followed by the merge style options
with the same name as in other menus. The remaining checkboxes were
moved to the bottom, ordered rougly by typical order of operations.

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-13 14:09:52 +08:00
Nathaniel Sabanski fb1a2a13f0
Preview images for Issue cards in Project Board view ()
Original Issue: https://github.com/go-gitea/gitea/issues/22102

This addition would be a big benefit for design and art teams using the
issue tracking.

The preview will be the latest "image type" attachments on an issue-
simple, and allows for automatic updates of the cover image as issue
progress is made!

This would make Gitea competitive with Trello... wouldn't it be amazing
to say goodbye to Atlassian products? Ha.

First image is the most recent, the SQL will fetch up to 5 latest images
(URL string).

All images supported by browsers plus upcoming formats: *.avif *.bmp
*.gif *.jpg *.jpeg *.jxl *.png *.svg *.webp

The CSS will try to center-align images until it cannot, then it will
left align with overflow hidden. Single images get to be slightly
larger!

Tested so far on: Chrome, Firefox, Android Chrome, Android Firefox.

Current revision with light and dark themes:

![image](https://user-images.githubusercontent.com/24665/207066878-58e6bf73-0c93-4caa-8d40-38f4432b3578.png)


![image](https://user-images.githubusercontent.com/24665/207066555-293f65c3-e706-4888-8516-de8ec632d638.png)

---------

Co-authored-by: Jason Song <i@wolfogre.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
2023-02-11 16:12:41 +08:00
KN4CK3R e8186f1c0f
Map OIDC groups to Orgs/Teams ()
Fixes 

Test-Instructions:
https://github.com/go-gitea/gitea/pull/21441#issuecomment-1419438000

This PR implements the mapping of user groups provided by OIDC providers
to orgs teams in Gitea. The main part is a refactoring of the existing
LDAP code to make it usable from different providers.

Refactorings:
- Moved the router auth code from module to service because of import
cycles
- Changed some model methods to take a `Context` parameter
- Moved the mapping code from LDAP to a common location

I've tested it with Keycloak but other providers should work too. The
JSON mapping format is the same as for LDAP.


![grafik](https://user-images.githubusercontent.com/1666336/195634392-3fc540fc-b229-4649-99ac-91ae8e19df2d.png)

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-08 14:44:42 +08:00
KN4CK3R d987ac6bf1
Add Chef package registry ()
This PR implements a [Chef registry](https://chef.io/) to manage
cookbooks. This package type was a bit complicated because Chef uses RSA
signed requests as authentication with the registry.


![grafik](https://user-images.githubusercontent.com/1666336/213747995-46819fd8-c3d6-45a2-afd4-a4c3c8505a4a.png)


![grafik](https://user-images.githubusercontent.com/1666336/213748145-d01c9e81-d4dd-41e3-a3cc-8241862c3166.png)

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-06 09:49:21 +08:00
KN4CK3R df789d962b
Add Cargo package registry ()
This PR implements a [Cargo registry](https://doc.rust-lang.org/cargo/)
to manage Rust packages. This package type was a little bit more
complicated because Cargo needs an additional Git repository to store
its package index.

Screenshots:

![grafik](https://user-images.githubusercontent.com/1666336/203102004-08d812ac-c066-4969-9bda-2fed818554eb.png)

![grafik](https://user-images.githubusercontent.com/1666336/203102141-d9970f14-dca6-4174-b17a-50ba1bd79087.png)

![grafik](https://user-images.githubusercontent.com/1666336/203102244-dc05743b-78b6-4d97-998e-ef76341a978f.png)

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-05 18:12:31 +08:00
Lunny Xiao 8574a6433f
Show all projects, not just repo projects and open/closed projects ()
This PR fixes two problems. One is when filter repository issues, only
repository level projects are listed. Another is if you list open
issues, only open projects will be displayed in filter options and if
you list closed issues, only closed projects will be displayed in filter
options.

In this PR, both repository level and org/user level projects will be
displayed in filter, and both open and closed projects will be listed as
filter items.

---------

Co-authored-by: John Olheiser <john.olheiser@gmail.com>
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: delvh <dev.lh@web.de>
2023-02-04 22:35:08 +08:00
zeripath 2914c5299b
Improve error report when user passes a private key ()
The error reported when a user passes a private ssh key as their ssh
public key is not very nice.

This PR improves this slightly.

Ref 

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: delvh <dev.lh@web.de>
2023-02-02 18:25:54 +00:00
KN4CK3R 6ba9ff7b48
Add Conda package registry ()
This PR adds a [Conda](https://conda.io/) package registry.
2023-02-01 12:30:39 -06:00
KN4CK3R 5882e179a9
Add user secrets ()
Fixes 
Replaces 

This PR adds secrets for users. I refactored the files for organizations
and repos to use the same logic and templates. I splitted the secrets
from deploy keys again and reverted the fix from .

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-01 20:53:04 +08:00
yp05327 72a83dcc82
Explain that the no-access team unit does not affect public repositories ()
Fixes https://github.com/go-gitea/gitea/issues/22600

Add explanations to team unit access control.

---------

Co-authored-by: Jason Song <i@wolfogre.com>
2023-02-01 16:14:40 +08:00
Felipe Leopoldo Sologuren Gutiérrez 7fd5d38860
Improve checkbox accessibility a bit by adding the title attribute ()
EDIT: The main change of this PR was resolved by . This
complements that PR for some cases without label and complicated layout
to be added.

NOTE: Contributed by @Forgejo.
2023-02-01 01:43:06 +00:00
Brecht Van Lommel faa96553d1
Add repository setting to enable/disable releases unit ()
To go along with similar settings for issues, pulls, projects, packages.
2023-02-01 01:31:19 +00:00
Jason Song 4011821c94
Implement actions ()
Close .

Co-authored by: @lunny @appleboy @fuxiaohei and others.

Related projects:
- https://gitea.com/gitea/actions-proto-def
- https://gitea.com/gitea/actions-proto-go
- https://gitea.com/gitea/act
- https://gitea.com/gitea/act_runner

### Summary

The target of this PR is to bring a basic implementation of "Actions",
an internal CI/CD system of Gitea. That means even though it has been
merged, the state of the feature is **EXPERIMENTAL**, and please note
that:

- It is disabled by default;
- It shouldn't be used in a production environment currently;
- It shouldn't be used in a public Gitea instance currently;
- Breaking changes may be made before it's stable.

**Please comment on  if you have any different product design
ideas**, all decisions reached there will be adopted here. But in this
PR, we don't talk about **naming, feature-creep or alternatives**.

### ⚠️ Breaking

`gitea-actions` will become a reserved user name. If a user with the
name already exists in the database, it is recommended to rename it.

### Some important reviews

- What is `DEFAULT_ACTIONS_URL` in `app.ini` for?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1055954954
- Why the api for runners is not under the normal `/api/v1` prefix?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1061173592
- Why DBFS?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1061301178
- Why ignore events triggered by `gitea-actions` bot?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1063254103
- Why there's no permission control for actions?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1090229868

### What it looks like

<details>

#### Manage runners

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205870657-c72f590e-2e08-4cd4-be7f-2e0abb299bbf.png">

#### List runs

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205872794-50fde990-2b45-48c1-a178-908e4ec5b627.png">


#### View logs

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205872501-9b7b9000-9542-4991-8f55-18ccdada77c3.png">



</details>

### How to try it

<details>

#### 1. Start Gitea

Clone this branch and [install from
source](https://docs.gitea.io/en-us/install-from-source).

Add additional configurations in `app.ini` to enable Actions:

```ini
[actions]
ENABLED = true
```

Start it.

If all is well, you'll see the management page of runners:

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205877365-8e30a780-9b10-4154-b3e8-ee6c3cb35a59.png">


#### 2. Start runner

Clone the [act_runner](https://gitea.com/gitea/act_runner), and follow
the
[README](https://gitea.com/gitea/act_runner/src/branch/main/README.md)
to start it.

If all is well, you'll see a new runner has been added:

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205878000-216f5937-e696-470d-b66c-8473987d91c3.png">

#### 3. Enable actions for a repo

Create a new repo or open an existing one, check the `Actions` checkbox
in settings and submit.

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205879705-53e09208-73c0-4b3e-a123-2dcf9aba4b9c.png">
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205879383-23f3d08f-1a85-41dd-a8b3-54e2ee6453e8.png">

If all is well, you'll see a new tab "Actions":

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205881648-a8072d8c-5803-4d76-b8a8-9b2fb49516c1.png">

#### 4. Upload workflow files

Upload some workflow files to `.gitea/workflows/xxx.yaml`, you can
follow the [quickstart](https://docs.github.com/en/actions/quickstart)
of GitHub Actions. Yes, Gitea Actions is compatible with GitHub Actions
in most cases, you can use the same demo:

```yaml
name: GitHub Actions Demo
run-name: ${{ github.actor }} is testing out GitHub Actions 🚀
on: [push]
jobs:
  Explore-GitHub-Actions:
    runs-on: ubuntu-latest
    steps:
      - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
      - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
      - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
      - name: Check out repository code
        uses: actions/checkout@v3
      - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
      - run: echo "🖥️ The workflow is now ready to test your code on the runner."
      - name: List files in the repository
        run: |
          ls ${{ github.workspace }}
      - run: echo "🍏 This job's status is ${{ job.status }}."
```

If all is well, you'll see a new run in `Actions` tab:

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205884473-79a874bc-171b-4aaf-acd5-0241a45c3b53.png">

#### 5. Check the logs of jobs

Click a run and you'll see the logs:

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205884800-994b0374-67f7-48ff-be9a-4c53f3141547.png">

#### 6. Go on

You can try more examples in [the
documents](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions)
of GitHub Actions, then you might find a lot of bugs.

Come on, PRs are welcome.

</details>

See also: [Feature Preview: Gitea
Actions](https://blog.gitea.io/2022/12/feature-preview-gitea-actions/)

---------

Co-authored-by: a1012112796 <1012112796@qq.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: ChristopherHX <christopher.homberger@web.de>
Co-authored-by: John Olheiser <john.olheiser@gmail.com>
2023-01-31 09:45:19 +08:00
techknowlogick e88b529b31
Issues: add Project filter to issues list and search ()
Currently only a single project like milestone, not multiple like
labels.

Implements 

Code by @brechtvl

---------

Co-authored-by: Brecht Van Lommel <brecht@blender.org>
2023-01-29 11:45:29 +08:00
Felipe Leopoldo Sologuren Gutiérrez 2b1e47e2a2
Improve accessibility of navigation bar and footer ()
Added ARIA navigation landmark to navigation bar and aria label for both
nav bar and footer.

Contributed by @forgejo.

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-01-29 09:29:10 +08:00
Otto Richter (fnetX) 95d9fbdcf3
Fix error on account activation with wrong passwd ()
On activating local accounts, the error message didn't differentiate
between using a wrong or expired token, or a wrong password. The result
could already be obtained from the behaviour (different screens were
presented), but the error message was misleading and lead to confusion
for new users on Codeberg with Forgejo.

Now, entering a wrong password for a valid token prints a different
error message.

The problem was introduced in 0f14f69e60.

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-01-28 15:59:46 +08:00
Lunny Xiao f59ce77772
Display unreferenced packages total size in package admin panel () 2023-01-18 09:52:04 -06:00
Chongyi Zheng de484e86bc
Support scoped access tokens ()
This PR adds the support for scopes of access tokens, mimicking the
design of GitHub OAuth scopes.

The changes of the core logic are in `models/auth` that `AccessToken`
struct will have a `Scope` field. The normalized (no duplication of
scope), comma-separated scope string will be stored in `access_token`
table in the database.
In `services/auth`, the scope will be stored in context, which will be
used by `reqToken` middleware in API calls. Only OAuth2 tokens will have
granular token scopes, while others like BasicAuth will default to scope
`all`.
A large amount of work happens in `routers/api/v1/api.go` and the
corresponding `tests/integration` tests, that is adding necessary scopes
to each of the API calls as they fit.


- [x] Add `Scope` field to `AccessToken`
- [x] Add access control to all API endpoints
- [x] Update frontend & backend for when creating tokens
- [x] Add a database migration for `scope` column (enable 'all' access
to past tokens)

I'm aiming to complete it before Gitea 1.19 release.

Fixes 
2023-01-17 15:46:03 -06:00
KN4CK3R 8117e41dfa
Add reply hint to mail text ()
Addition to 

This PR adds a hint to mail text if replies are supported.
I can't tell if the text structure is supported in every language. Maybe
we need to put the whole line in the translation file and use
parameters.
2023-01-16 14:58:01 -06:00
zeripath 2cc3a6381c
Add cron method to gc LFS MetaObjects ()
This PR adds a task to the cron service to allow garbage collection of
LFS meta objects. As repositories may have a large number of
LFSMetaObjects, an updated column is added to this table and it is used
to perform a generational GC to attempt to reduce the amount of work.
(There may need to be a bit more work here but this is probably enough
for the moment.)

Fix 

Signed-off-by: Andrew Thornton <art27@cantab.net>
2023-01-16 13:50:53 -06:00
Lunny Xiao 2782c14396
Supports wildcard protected branch ()
This PR introduce glob match for protected branch name. The separator is
`/` and you can use `*` matching non-separator chars and use `**` across
separator.

It also supports input an exist or non-exist branch name as matching
condition and branch name condition has high priority than glob rule.

Should fix  and 

screenshots

<img width="1160" alt="image"
src="https://user-images.githubusercontent.com/81045/205651179-ebb5492a-4ade-4bb4-a13c-965e8c927063.png">

Co-authored-by: zeripath <art27@cantab.net>
2023-01-16 16:00:22 +08:00
crystal 4fc1517da0
clarify "open issues" text for labels ()
see also https://codeberg.org/Codeberg/Community/issues/877
2023-01-13 12:40:39 +01:00
Yarden Shoham 3b804ff76c
Fix "remember this device" case ()
In the title case, it should be "Remember This Device"

Signed-off-by: Yarden Shoham <hrsi88@gmail.com>
2023-01-10 17:43:54 +08:00
delvh b878155b87
Replace can not with cannot ()
Fixes .
2023-01-08 18:25:28 +00:00
KN4CK3R b1a4eb40a1 [skip ci] Updated licenses and gitignores 2023-01-01 00:19:35 +00:00
Lunny Xiao 3bd49f7801 [skip ci] Updated licenses and gitignores 2022-12-25 00:19:36 +00:00
Reo 48d71b7d6b
Add Feed for Releases and Tags ()
Fixes 

Add Feed for Releases and Tags, can be accessed through
`reponame/releases.rss`, `reponame/releases.atom`, `reponame/tags.rss`,
and `reponame/tags.atom`

Signed-off-by: Reo <reo_999@proton.me>
2022-12-21 15:06:26 -06:00
Jason Song 659055138b
Secrets storage with SecretKey encrypted ()
Fork of , but [gave up
MasterKey](https://github.com/go-gitea/gitea/pull/14483#issuecomment-1350728557),
and fixed some problems.

Close .
Needed by .

Featrues:
- Secrets for repo and org, not user yet.
- Use SecretKey to encrypte/encrypt secrets.
- Trim spaces of secret value.
- Add a new locale ini block, to make it easy to support secrets for
user.

Snapshots:

Repo level secrets:

![image](https://user-images.githubusercontent.com/9418365/207823319-b8a4903f-38ca-4af7-9d05-336a5af906f3.png)

Rrg level secrets

![image](https://user-images.githubusercontent.com/9418365/207823371-8bd02e93-1928-40d1-8c76-f48b255ace36.png)

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: KN4CK3R <admin@oldschoolhack.me>
2022-12-20 17:07:13 +08:00
zeripath 998fe26051 [skip ci] Updated licenses and gitignores 2022-12-18 00:19:33 +00:00
KN4CK3R 601d126627 [skip ci] Updated licenses and gitignores 2022-12-11 00:19:34 +00:00
Jason Song 8fb1e53ca2
Rename actions to operations on UI ()
Use "operations" to indicate "some something can be done", to prevent
users from confusing it with CICD.

Releated to: .

Snapshots:

<img width="389" alt="image"
src="https://user-images.githubusercontent.com/9418365/206409797-a99bac25-2d38-4066-b9ab-27a4f6fe67e7.png">
<img width="398" alt="image"
src="https://user-images.githubusercontent.com/9418365/206410099-bbd258a9-54d9-4664-8d95-31d29cb35209.png">
<img width="442" alt="image"
src="https://user-images.githubusercontent.com/9418365/206410218-009a3103-a9b9-4d0c-86b6-540dda5bce89.png">

I'm not a native English speaker, but I think "operations" may be good
enough, and Gitea already uses this word:

<img width="1440" alt="image"
src="https://user-images.githubusercontent.com/9418365/206410671-4a718b14-0603-40cb-bdcb-f6f84d1f5e24.png">
2022-12-08 21:14:09 +08:00
zeripath d084ce306a [skip ci] Updated licenses and gitignores 2022-12-04 00:19:34 +00:00
花墨 7020c4afb7
Fix leaving organization bug on user settings -> orgs ()
Fix 

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-11-30 17:00:00 +08:00
luzpaz fdfd77f478
Fix typos ()
Found via codespell
2022-11-29 18:41:29 -06:00
KN4CK3R 32590db4ca [skip ci] Updated licenses and gitignores 2022-11-27 00:19:33 +00:00
kolaente 13746f070d
feat: add button to quickly clear merge message ()
This PR adds a button to allow quickly clearing the merge message of a
PR. The button will remove everything but the git trailers.

I found myself often pruning the commit message before merging,
especially for PRs generated by renovate - renovate puts a very long and
detailed comment with the full changelog in each PR it opens. This
clutters the commit message. However, I want to explicitly preserve the
git commit trailers. Doing this manually works, but having a button is a
lot easier.

Screenshot:

![image](https://user-images.githubusercontent.com/13721712/197337525-d456d0f8-1f7c-43a9-815d-ca93b1e7a90a.png)

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
2022-11-23 18:24:03 +08:00
silverwind c2fb27beb4
Improvements for Content Copy ()
It now supports copying Markdown, SVG and Images (not in Firefox
currently because of lacking
[`ClipboardItem`](https://developer.mozilla.org/en-US/docs/Web/API/ClipboardItem)
support, but can be enabled in `about:config` and works). It will fetch
the data if in a rendered view or when it's an image.

Followup to https://github.com/go-gitea/gitea/pull/21629.
2022-11-21 17:59:42 +08:00
KN4CK3R 32db62515f
Add package registry cleanup rules ()
Fixes 
Fixes 
Fixes 

This PR adds Cleanup Rules for the package registry. This allows to
delete unneeded packages automatically. Cleanup rules can be set up from
the user or org settings.
Please have a look at the documentation because I'm not a native english
speaker.

Rule Form

![grafik](https://user-images.githubusercontent.com/1666336/199330792-c13918a6-e196-4e71-9f53-18554515edca.png)

Rule List

![grafik](https://user-images.githubusercontent.com/1666336/199331261-5f6878e8-a80c-4985-800d-ebb3524b1a8d.png)

Rule Preview

![grafik](https://user-images.githubusercontent.com/1666336/199330917-c95e4017-cf64-4142-a3e4-af18c4f127c3.png)

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-11-20 16:08:38 +02:00
Nolann 9f8e778918
Copy citation file content, in APA and BibTex format, on repo home page ()
Add feature to easily copy CITATION.cff content in APA and BibTex format.
2022-11-11 18:02:50 +01:00
Jason Song 50dd32ede4
Update message of reach_limit_of_creation ()
When I'm trying to use a user which has no repo numbers limit to create
a repo for a org which has reached the limit, it says "You have already
reached your limit of 5 repositories."

That's confusing. "I" haven't reached the limit, the owner has.

<img width="828" alt="xnip_2022-11-10_11-57-45"
src="https://user-images.githubusercontent.com/9418365/200997290-d0819e40-fb10-4c37-917c-167e2070b4f9.png">

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2022-11-11 17:19:12 +08:00
Lunny Xiao 57df0f116a
Revert "[skip ci] Updated translations via Crowdin" ()
This reverts commit cb4473692f.
2022-11-06 11:29:52 +08:00
Xinyu Zhou cb4473692f [skip ci] Updated translations via Crowdin 2022-11-05 00:19:43 +00:00
Yarden Shoham e3a7f15791
Add "Copy" button to file view of raw text ()
If a raw text file is displayed, a copy button of the text is enabled.

* Closes 

### Before

![image](https://user-images.githubusercontent.com/20454870/198898628-df1bcb0c-79d7-4ffb-95e4-441d77430827.png)

### After

![image](https://user-images.githubusercontent.com/20454870/199988152-ea1099ad-29e1-4765-a9ca-4c03c1737453.png)

#### Rendered files and binaries have their button disabled

![image](https://user-images.githubusercontent.com/20454870/199988408-73de6327-5e9e-462b-b2b6-8c3f5b878386.png)

![image](https://user-images.githubusercontent.com/20454870/199988563-844f8656-f48d-4929-880e-b6558c1c054a.png)

Signed-off-by: Yarden Shoham <hrsi88@gmail.com>
Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-11-04 15:33:50 -04:00
wxiaoguang 2900dc90a7
Improve valid user name check ()
Close https://github.com/go-gitea/gitea/issues/21640

Before: Gitea can create users like ".xxx" or "x..y", which is not
ideal, it's already a consensus that dot filenames have special
meanings, and `a..b` is a confusing name when doing cross repo compare.

After: stricter

Co-authored-by: Jason Song <i@wolfogre.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
2022-11-04 17:04:08 +08:00
oliverpool b6e81357bd
Add Webhook authorization header ()
_This is a different approach to , I took the liberty of adapting
some parts, see below_

## Context

In some cases, a weebhook endpoint requires some kind of authentication.
The usual way is by sending a static `Authorization` header, with a
given token. For instance:

- Matrix expects a `Bearer <token>` (already implemented, by storing the
header cleartext in the metadata - which is buggy on retry )
- TeamCity 
- Gitea instances 
- SourceHut https://man.sr.ht/graphql.md#authentication-strategies (this
is my actual personal need :)

## Proposed solution

Add a dedicated encrypt column to the webhook table (instead of storing
it as meta as proposed in ), so that it gets available for all
present and future hook types (especially the custom ones ).

This would also solve the buggy matrix retry .

As a first step, I would recommend focusing on the backend logic and
improve the frontend at a later stage. For now the UI is a simple
`Authorization` field (which could be later customized with `Bearer` and
`Basic` switches):


![2022-08-23-142911](https://user-images.githubusercontent.com/3864879/186162483-5b721504-eef5-4932-812e-eb96a68494cc.png)

The header name is hard-coded, since I couldn't fine any usecase
justifying otherwise.

## Questions

- What do you think of this approach? @justusbunsi @Gusted @silverwind 
- ~~How are the migrations generated? Do I have to manually create a new
file, or is there a command for that?~~
- ~~I started adding it to the API: should I complete it or should I
drop it? (I don't know how much the API is actually used)~~

## Done as well:

- add a migration for the existing matrix webhooks and remove the
`Authorization` logic there


_Closes #19872_

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Gusted <williamzijl7@hotmail.com>
Co-authored-by: delvh <dev.lh@web.de>
2022-11-03 20:23:20 +02:00
kolaente 085f717529
feat: notify doers of a merge when automerging ()
I found myself wondering whether a PR I scheduled for automerge was
actually merged. It was, but I didn't receive a mail notification for it
- that makes sense considering I am the doer and usually don't want to
receive such notifications. But ideally I want to receive a notification
when a PR was merged because I scheduled it for automerge.

This PR implements exactly that.

The implementation works, but I wonder if there's a way to avoid passing
the "This PR was automerged" state down so much. I tried solving this
via the database (checking if there's an automerge scheduled for this PR
when sending the notification) but that did not work reliably, probably
because sending the notification happens async and the entry might have
already been deleted. My implementation might be the most
straightforward but maybe not the most elegant.

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-11-03 23:49:00 +08:00
Lunny Xiao 44cc684a50 [skip ci] Updated translations via Crowdin 2022-11-03 00:19:50 +00:00
Gusted 4827f42f56 [skip ci] Updated translations via Crowdin 2022-11-02 00:19:48 +00:00
Gusted c2d2323fc8
Configure update checker on installation page ()
- I recently became aware that this was enabled by-default, I don't
necessary agree with that and this should rather be configured by the
user(this patch does that on the installation page) as it connects to a
homeserver, which I'd prefer to avoid on my instance.


![image](https://user-images.githubusercontent.com/25481501/199260613-a77a1b10-347a-4542-8982-9b9b24dad28c.png)
2022-11-01 19:23:56 +00:00
KN4CK3R 9b3e2c5450 [skip ci] Updated translations via Crowdin 2022-10-31 00:19:34 +00:00
KN4CK3R d33b2d473c [skip ci] Updated licenses and gitignores 2022-10-30 00:19:37 +00:00
Jason Song 434622ab6f [skip ci] Updated translations via Crowdin 2022-10-29 00:19:53 +00:00
mpeter50 2cc7408b98 [skip ci] Updated translations via Crowdin 2022-10-28 00:19:53 +00:00
qwerty287 096aed5c1d [skip ci] Updated translations via Crowdin 2022-10-27 00:21:00 +00:00
techknowlogick 49a4e4555a [skip ci] Updated translations via Crowdin 2022-10-26 00:20:58 +00:00
Yarden Shoham 3bd05172d5 [skip ci] Updated translations via Crowdin 2022-10-25 00:20:58 +00:00
M Hickford 191a74d622
Record OAuth client type at registration ()
The OAuth spec [defines two types of
client](https://datatracker.ietf.org/doc/html/rfc6749#section-2.1),
confidential and public. Previously Gitea assumed all clients to be
confidential.

> OAuth defines two client types, based on their ability to authenticate
securely with the authorization server (i.e., ability to
>   maintain the confidentiality of their client credentials):
>
>   confidential
> Clients capable of maintaining the confidentiality of their
credentials (e.g., client implemented on a secure server with
> restricted access to the client credentials), or capable of secure
client authentication using other means.
>
>   **public
> Clients incapable of maintaining the confidentiality of their
credentials (e.g., clients executing on the device used by the resource
owner, such as an installed native application or a web browser-based
application), and incapable of secure client authentication via any
other means.**
>
> The client type designation is based on the authorization server's
definition of secure authentication and its acceptable exposure levels
of client credentials. The authorization server SHOULD NOT make
assumptions about the client type.

 https://datatracker.ietf.org/doc/html/rfc8252#section-8.4

> Authorization servers MUST record the client type in the client
registration details in order to identify and process requests
accordingly.

Require PKCE for public clients:
https://datatracker.ietf.org/doc/html/rfc8252#section-8.1

> Authorization servers SHOULD reject authorization requests from native
apps that don't use PKCE by returning an error message

Fixes 

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-10-24 15:59:24 +08:00
KN4CK3R 876ee8c3cd
Allow package version sorting () 2022-10-23 09:18:15 +08:00
Vladimir Yakovlev da3b657c45 [skip ci] Updated translations via Crowdin 2022-10-21 00:21:01 +00:00
KN4CK3R 99597dd76a [skip ci] Updated translations via Crowdin 2022-10-20 00:20:58 +00:00
KN4CK3R c3b2e44392
Add team member invite by email ()
Allows to add (not registered) team members by email.

related 

Invite by mail:

![grafik](https://user-images.githubusercontent.com/1666336/178154779-adcc547f-c0b7-4a2a-a131-4e41a3d9d3ad.png)

Pending invitations:

![grafik](https://user-images.githubusercontent.com/1666336/178154882-9d739bb8-2b04-46c1-a025-c1f4be26af98.png)

Email:

![grafik](https://user-images.githubusercontent.com/1666336/178164716-f2f90893-7ba6-4a5e-a3db-42538a660258.png)

Join form:

![grafik](https://user-images.githubusercontent.com/1666336/178154840-aaab983a-d922-4414-b01a-9b1a19c5cef7.png)

Co-authored-by: Jack Hay <jjphay@gmail.com>
2022-10-19 14:40:28 +02:00
wxiaoguang 522dfd5425 [skip ci] Updated translations via Crowdin 2022-10-19 00:21:12 +00:00
KN4CK3R ea08559045 [skip ci] Updated translations via Crowdin 2022-10-18 00:21:08 +00:00
Lunny Xiao 683c9af89f [skip ci] Updated translations via Crowdin 2022-10-17 00:20:53 +00:00
Lunny Xiao f860a6d2e4
Add system setting table with cache and also add cache supports for user setting () 2022-10-17 07:29:26 +08:00
silverwind e2727b73a3 [skip ci] Updated translations via Crowdin 2022-10-16 00:20:58 +00:00
Yarden Shoham 7917123209 [skip ci] Updated translations via Crowdin 2022-10-15 00:21:30 +00:00
Yarden Shoham cda2c38f4a [skip ci] Updated translations via Crowdin 2022-10-13 00:21:26 +00:00
kolaente e026459a2d [skip ci] Updated translations via Crowdin 2022-10-12 00:21:02 +00:00
Lauris BH b59b0cad0a
Add user/organization code search ()
Fixes  

Screenshots:

![attels](https://user-images.githubusercontent.com/165205/173864718-fe789429-55bc-4cad-808c-9f02f335cddf.png)
2022-10-11 00:12:03 +01:00
Yarden Shoham 083ac164dc
Fix missing left and right carets in TRANSLATORS () 2022-10-10 10:36:37 -04:00
Jason Song 274523baf4 [skip ci] Updated translations via Crowdin 2022-10-04 00:20:52 +00:00
techknowlogick af849ac009 [skip ci] Updated translations via Crowdin 2022-10-03 00:20:54 +00:00
qwerty287 edfba99f11 [skip ci] Updated translations via Crowdin 2022-10-01 00:20:52 +00:00
qwerty287 08609d439d
Add pages to view watched repos and subscribed issues/PRs ()
Adds GitHub-like pages to view watched repos and subscribed issues/PRs
This is my second try to fix this, but it is better than the first since
it doesn't uses a filter option which could be slow when accessing
`/issues` or `/pulls` and it shows both pulls and issues (the first try
is ).

Closes  
Replaces and closes 


![Screenshot](https://user-images.githubusercontent.com/80460567/134782937-3112f7da-425a-45b6-9511-5c9695aee896.png)

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-09-29 22:09:14 +03:00
M Hickford 78c15dabf3 [skip ci] Updated translations via Crowdin 2022-09-29 00:20:54 +00:00
Wim 889a41c6a8
Do not allow organisation owners add themselves as collaborator ()
We're already checking for repo owners, but we also need to check for
organisation owners that try to add themselves as collaborator

Closes 
2022-09-28 01:25:40 +02:00
Tyrone Yeh 525751243e [skip ci] Updated translations via Crowdin 2022-09-27 00:21:05 +00:00
Julien Palard 2649e7ffbd [skip ci] Updated translations via Crowdin 2022-09-26 00:20:43 +00:00
wxiaoguang c4742fbea3 [skip ci] Updated licenses and gitignores 2022-09-25 00:20:43 +00:00
Tyrone Yeh da0a9ec811 [skip ci] Updated translations via Crowdin 2022-09-24 00:20:52 +00:00
KN4CK3R 301d84e83a [skip ci] Updated translations via Crowdin 2022-09-23 00:20:55 +00:00
silverwind bdc4c4c379 [skip ci] Updated translations via Crowdin 2022-09-16 00:20:55 +00:00
KN4CK3R ef40324c43
Display image digest for container packages ()
fixes 
2022-09-14 22:45:13 +02:00
JakobDev fe73246cf9 [skip ci] Updated translations via Crowdin 2022-09-12 00:20:40 +00:00
silverwind 77c916f6d9 [skip ci] Updated licenses and gitignores 2022-09-11 00:20:43 +00:00
silverwind 754861a020 [skip ci] Updated translations via Crowdin 2022-09-10 00:20:50 +00:00
Tyrone Yeh 619eed913c [skip ci] Updated translations via Crowdin 2022-09-09 00:20:54 +00:00
luzpaz cb3b3e519f
Fix various typos ()
Found via `codespell -q 3 -S
./options/locale,./options/license,./public/vendor,./web_src/fomantic -L
actived,allways,attachements,ba,befores,commiter,pullrequest,pullrequests,readby,splitted,te,unknwon`

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2022-09-07 14:40:36 -04:00
Kyle D 7006d8297d [skip ci] Updated translations via Crowdin 2022-09-07 00:20:58 +00:00
silverwind 795bd946e2 [skip ci] Updated translations via Crowdin 2022-09-06 00:20:50 +00:00
Aaron F 0232601734 [skip ci] Updated translations via Crowdin 2022-09-05 00:20:46 +00:00
Aaron F 3963625b6e
Webhook for Wiki changes ()
Add support for triggering webhook notifications on wiki changes.

This PR contains frontend and backend for webhook notifications on wiki actions (create a new page, rename a page, edit a page and delete a page). The frontend got a new checkbox under the Custom Event -> Repository Events section. There is only one checkbox for create/edit/rename/delete actions, because it makes no sense to separate it and others like releases or packages follow the same schema.

![image](https://user-images.githubusercontent.com/121972/177018803-26851196-831f-4fde-9a4c-9e639b0e0d6b.png)

The actions itself are separated, so that different notifications will be executed (with the "action" field). All the webhook receivers implement the new interface method (Wiki) and the corresponding tests.

When implementing this, I encounter a little bug on editing a wiki page. Creating and editing a wiki page is technically the same action and will be handled by the ```updateWikiPage``` function. But the function need to know if it is a new wiki page or just a change. This distinction is done by the ```action``` parameter, but this will not be sent by the frontend (on form submit). This PR will fix this by adding the ```action``` parameter with the values ```_new``` or ```_edit```, which will be used by the ```updateWikiPage``` function.

I've done integration tests with matrix and gitea (http).

![image](https://user-images.githubusercontent.com/121972/177018795-eb5cdc01-9ba3-483e-a6b7-ed0e313a71fb.png)

Fix 

Signed-off-by: Aaron Fischer <mail@aaron-fischer.net>
2022-09-04 20:54:23 +01:00
silverwind 0887459ac6 [skip ci] Updated licenses and gitignores 2022-09-04 00:20:43 +00:00
JakobDev 18046eb91e [skip ci] Updated translations via Crowdin 2022-09-03 00:21:09 +00:00
Jason Song 84447df4d3
Support Issue forms and PR forms ()
* feat: extend issue template for yaml

* feat: support yaml template

* feat: render form to markdown

* feat: support yaml template for pr

* chore: rename to Fields

* feat: template unmarshal

* feat: split template

* feat: render to markdown

* feat: use full name as template file name

* chore: remove useless file

* feat: use dropdown of fomantic ui

* feat: update input style

* docs: more comments

* fix: render text without render

* chore: fix lint error

* fix: support use description as about in markdown

* fix: add field class in form

* chore: generate swagger

* feat: validate template

* feat: support is_nummber and regex

* test: fix broken unit tests

* fix: ignore empty body of md template

* fix: make multiple easymde editors work in one page

* feat: better UI

* fix: js error in pr form

* chore: generate swagger

* feat: support regex validation

* chore: generate swagger

* fix: refresh each markdown editor

* chore: give up required validation

* fix: correct issue template candidates

* fix: correct checkboxes style

* chore: ignore .hugo_build.lock in docs

* docs: separate out a new doc for merge templates

* docs: introduce syntax of yaml template

* feat: show a alert for invalid templates

* test: add case for a valid template

* fix: correct attributes of required checkbox

* fix: add class not-under-easymde for dropzone

* fix: use more back-quotes

* chore: remove translation in zh-CN

* fix EasyMDE statusbar margin

* fix: remove repeated blocks

* fix: reuse regex for quotes

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-09-02 15:58:49 +08:00
zeripath 6b7bb419ed [skip ci] Updated translations via Crowdin 2022-09-02 00:20:55 +00:00
Lunny Xiao d74390ee39 [skip ci] Updated translations via Crowdin 2022-09-01 00:20:54 +00:00
JonRB 3edc14b687 [skip ci] Updated translations via Crowdin 2022-08-31 00:21:00 +00:00
KN4CK3R 41c76ad714
Add support for Vagrant packages ()
* Add support for Vagrant boxes.

* Add authentication.

* Add tests.

* Add integration tests.

* Add docs.

* Add icons.

* Update routers/api/packages/api.go

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: 6543 <6543@obermui.de>
2022-08-29 15:04:45 +08:00
JonRB 8a66b01e55 [skip ci] Updated translations via Crowdin 2022-08-29 00:20:41 +00:00
silverwind c21d6511a8 [skip ci] Updated licenses and gitignores 2022-08-28 00:20:43 +00:00
silverwind 532c223c45 [skip ci] Updated translations via Crowdin 2022-08-27 00:20:55 +00:00
Gusted 27ac65a124
Only show relevant repositories on explore page ()
Adds a new option to only show relevant repo's on the explore page, for bigger Gitea instances like Codeberg this is a nice option to enable to make the explore page more populated with unique and "high" quality repo's. A note is shown that the results are filtered and have the possibility to see the unfiltered results.

Co-authored-by: vednoc <vednoc@protonmail.com>
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: 6543 <6543@obermui.de>
2022-08-25 20:38:41 +02:00
xinyu 4a4bfafa23 [skip ci] Updated translations via Crowdin 2022-08-25 00:20:57 +00:00
silverwind 7d1765e940 [skip ci] Updated translations via Crowdin 2022-08-24 00:20:55 +00:00
Gusted 353a5331d5
Remove deprecated licenses () 2022-08-22 00:33:01 -04:00
Gary Wang 585e80a7fa [skip ci] Updated translations via Crowdin 2022-08-22 00:20:55 +00:00
JonRB 0ee96da052 [skip ci] Updated translations via Crowdin 2022-08-21 00:20:58 +00:00
wxiaoguang 8cceee4084 [skip ci] Updated translations via Crowdin 2022-08-20 00:20:56 +00:00
techknowlogick 4a797f8fab [skip ci] Updated translations via Crowdin 2022-08-18 00:21:28 +00:00
MaeIsBad e3308a092a [skip ci] Updated translations via Crowdin 2022-08-16 00:20:56 +00:00
Gusted 7ae297800e [skip ci] Updated translations via Crowdin 2022-08-15 00:20:43 +00:00
Gusted 4f56ab3bf3
Add missing translation for queue flush workers ()
- Add a missing translation key and value for the flush worker indication
- Resolves 
2022-08-14 20:28:19 +01:00
Frank cc649f0cb3 [skip ci] Updated licenses and gitignores 2022-08-14 00:20:44 +00:00
zeripath 99efa02edf
Switch Unicode Escaping to a VSCode-like system ()
This PR rewrites the invisible unicode detection algorithm to more
closely match that of the Monaco editor on the system. It provides a
technique for detecting ambiguous characters and relaxes the detection
of combining marks.

Control characters are in addition detected as invisible in this
implementation whereas they are not on monaco but this is related to
font issues.

Close 

Signed-off-by: Andrew Thornton <art27@cantab.net>
2022-08-13 19:32:34 +01:00
PEN² 3d7058adbe
Remove the translation key website by PR () 2022-08-13 02:24:21 -04:00
Gusted 54d9816502 [skip ci] Updated translations via Crowdin 2022-08-11 00:20:58 +00:00
silverwind 77d7b4c63d [skip ci] Updated translations via Crowdin 2022-08-10 00:20:57 +00:00
parnic 2660b0397a [skip ci] Updated translations via Crowdin 2022-08-09 00:21:27 +00:00
parnic 0066bc5113
Add issue filter for Author ()
This adds a new filter option on the issues and pulls pages to filter by the author/poster/creator of the issue or PR
2022-08-08 22:03:58 +02:00
Lunny Xiao 73e9854040 [skip ci] Updated translations via Crowdin 2022-08-08 00:21:03 +00:00
silverwind abdebd2641
Rework repo buttons ()
* Rework repo buttons

- Replace "New PR" and "Go to File" button with Icon Button
- Move all "Add File" actions into a dropdown button
- Remove most custom styling of clone buttons
- Margin and wiki tweaks

Buttons are now all equal height, mobile layout wraps gracefully.

Fixes: https://github.com/go-gitea/gitea/issues/13671
Replaces: https://github.com/go-gitea/gitea/pull/20375

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-08-08 02:15:11 +03:00
KN4CK3R f55af4675c
Add support for Pub packages ()
* Added support for Pub packages.

* Update docs/content/doc/packages/overview.en-us.md

Co-authored-by: Gergely Nagy <algernon@users.noreply.github.com>

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Gergely Nagy <algernon@users.noreply.github.com>
Co-authored-by: Lauris BH <lauris@nix.lv>
2022-08-07 18:09:54 +08:00
silverwind cb97114e91 [skip ci] Updated licenses and gitignores 2022-08-07 00:20:52 +00:00
KN4CK3R 61aafb9c7d [skip ci] Updated translations via Crowdin 2022-08-06 00:20:54 +00:00
KN4CK3R 0f767e799c [skip ci] Updated translations via Crowdin 2022-08-05 00:20:59 +00:00
wxiaoguang b6bb3891fd [skip ci] Updated translations via Crowdin 2022-08-04 00:20:55 +00:00
Gusted 7baa7cb98f [skip ci] Updated translations via Crowdin 2022-08-03 00:21:26 +00:00
wxiaoguang 90b2657ae7
Fix the admin mailer config display () 2022-08-03 00:43:27 +08:00
Clar Fon 036dd8a788
Rework mailer settings ()
* `PROTOCOL`: can be smtp, smtps, smtp+startls, smtp+unix, sendmail, dummy
* `SMTP_ADDR`: domain for SMTP, or path to unix socket
* `SMTP_PORT`: port for SMTP; defaults to 25 for `smtp`, 465 for `smtps`, and 587 for `smtp+startls`
* `ENABLE_HELO`, `HELO_HOSTNAME`: reverse `DISABLE_HELO` to `ENABLE_HELO`; default to false + system hostname
* `FORCE_TRUST_SERVER_CERT`: replace the unclear `SKIP_VERIFY`
* `CLIENT_CERT_FILE`, `CLIENT_KEY_FILE`, `USE_CLIENT_CERT`: clarify client certificates here

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-08-02 13:24:18 +08:00
PEN² cf40619215 [skip ci] Updated translations via Crowdin 2022-08-02 00:20:59 +00:00
Gary Wang 1a8d7d03fd [skip ci] Updated translations via Crowdin 2022-08-01 00:20:39 +00:00
Norwin ff9b6fa663 [skip ci] Updated licenses and gitignores 2022-07-31 00:20:42 +00:00
silverwind 33bb7c485d [skip ci] Updated translations via Crowdin 2022-07-30 00:21:27 +00:00
zeripath 98f6670cde [skip ci] Updated translations via Crowdin 2022-07-29 00:21:37 +00:00
wxiaoguang 2c108d20ba
Fix i18n for email notifications () 2022-07-28 17:28:46 +02:00
Tyrone Yeh 3bd8f50af8
Added email notification option to receive all own messages ()
Sometimes users want to receive email notifications of messages they create or reply to,
Added an option to personal preferences to allow users to choose

Closes 
2022-07-28 16:30:12 +08:00
Norwin 2ae1675092
Show hint to link package to repo when viewing empty repo package list ()
* show hint to link package to repo

on empty repo package listing

* reword
2022-07-27 19:58:21 +08:00
Tyrone Yeh 7205f6b6a3 [skip ci] Updated translations via Crowdin 2022-07-25 00:21:14 +00:00
Gergely Nagy d9608c4e76 [skip ci] Updated translations via Crowdin 2022-07-23 00:20:56 +00:00
silverwind 755410162f [skip ci] Updated translations via Crowdin 2022-07-21 00:20:58 +00:00
6543 0d05bdbea8 [skip ci] Updated translations via Crowdin 2022-07-20 00:20:52 +00:00
Lucas Azevedo e519249266
Fix modified due date message () 2022-07-19 14:30:55 +02:00
CLanguagePurist 17ce5f8660 [skip ci] Updated licenses and gitignores 2022-07-17 00:20:41 +00:00
wxiaoguang ce8e06f9f3 [skip ci] Updated translations via Crowdin 2022-07-16 00:20:56 +00:00
6543 4ddae2c1b5 [skip ci] Updated translations via Crowdin 2022-07-15 00:20:57 +00:00
zeripath bffa303020
Add option to purge users ()
Add the ability to purge users when deleting them.

Close 

Signed-off-by: Andrew Thornton <art27@cantab.net>
2022-07-14 08:22:09 +01:00
zeripath ed094dbab9 [skip ci] Updated translations via Crowdin 2022-07-14 00:21:35 +00:00
Ing. Jaroslav Šafka 8420c1bf4c
Fix checks in PR for empty commits ()
* Fixes issue  (Not able to merge commit in PR when branches content is same, but different commit id)
* fill HeadCommitID in PullRequest
* compare real commits ID as check for merging
* based on @zeripath patch in 
2022-07-13 16:22:51 +08:00
luzpaz d29d6d1991
Fix various typos ()
* Fix various typos

Found via `codespell -q 3 -S ./options/locale,./options/license,./public/vendor -L actived,allways,attachements,ba,befores,commiter,pullrequest,pullrequests,readby,splitted,te,unknwon`

Co-authored-by: zeripath <art27@cantab.net>
2022-07-12 23:32:37 +02:00
silverwind e24c238ecc
Remove blue text on migrate page ()
* Remove blue text on migrate page

* remove Safe

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-07-12 17:04:15 +08:00
silverwind 734e81d48c [skip ci] Updated translations via Crowdin 2022-07-12 00:10:13 +00:00
Gusted cb6c5f8193 [skip ci] Updated translations via Crowdin 2022-07-11 00:10:08 +00:00
Gusted a9e66cfdad [skip ci] Updated translations via Crowdin 2022-07-10 00:10:33 +00:00
Gusted 87c563b706
Use dedicated draft PR icon when possible ()
* Use dedicated draft PR icon when possible

- Currently the generic pull-request icon is used for draft PR's. This
patch changes that by using the dedicated icon for this.
- Resolves 

* Use draft title
2022-07-09 17:17:04 -05:00
Chongyi Zheng 49f9d43afe
Implement sync push mirror on commit ()
Support synchronizing with the push mirrors whenever new commits are pushed or synced from pull mirror.

Related Issues: 

Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-07-08 20:45:12 +01:00
wxiaoguang 2eb713bacc [skip ci] Updated translations via Crowdin 2022-07-01 00:10:16 +00:00
wxiaoguang db3355cb1a [skip ci] Updated translations via Crowdin 2022-06-30 00:10:22 +00:00
wxiaoguang 26ec628624 [skip ci] Updated translations via Crowdin 2022-06-29 00:10:11 +00:00
Gusted cdd6371ad4 [skip ci] Updated translations via Crowdin 2022-06-28 00:09:43 +00:00
Gusted 0048595811
Remove U2F support ()
- Completely remove U2F support from 1.18.0, 1.17.0 will be the last
release that U2F is somewhat supported. Users who used U2F would already
be warned about using U2F for a while now and should hopefully already
be migrated. But starting 1.18 definitely remove it.
2022-06-26 21:20:58 -05:00
Lunny Xiao 3ba09103a4 [skip ci] Updated translations via Crowdin 2022-06-23 00:10:20 +00:00
SteveTheEngineer e67e685ed8 [skip ci] Updated translations via Crowdin 2022-06-21 00:10:11 +00:00
Gusted 3289abcefc [skip ci] Updated translations via Crowdin 2022-06-20 00:10:43 +00:00
a1012112796 cc42c6488a
fix delete pull head ref for DeleteIssue ()
* fix delete pull head ref for DeleteIssue

fix 

Signed-off-by: a1012112796 <1012112796@qq.com>

* add different help message for delete pull request

Signed-off-by: a1012112796 <1012112796@qq.com>

Co-authored-by: 6543 <6543@obermui.de>
2022-06-19 18:05:15 +08:00
zeripath 870d7f90e7 [skip ci] Updated translations via Crowdin 2022-06-18 13:10:18 +00:00
zeripath af7cfdee0e [skip ci] Updated translations via Crowdin 2022-06-18 10:11:27 +00:00
zeripath 7fbf002403 [skip ci] Updated translations via Crowdin 2022-06-18 09:10:16 +00:00
zeripath 46e50bcbfc [skip ci] Updated translations via Crowdin 2022-06-18 00:10:15 +00:00
wxiaoguang 89b0aac374 [skip ci] Updated translations via Crowdin 2022-06-16 16:10:29 +00:00
Gusted 70ce051f1a [skip ci] Updated translations via Crowdin 2022-06-16 15:10:36 +00:00
a1012112796 d05fb6f6c9 [skip ci] Updated translations via Crowdin 2022-06-16 14:10:29 +00:00
Gusted 881646520e [skip ci] Updated translations via Crowdin 2022-06-15 22:10:15 +00:00
singuliere f6e2dbaf1e [skip ci] Updated translations via Crowdin 2022-06-15 00:10:14 +00:00
singuliere 460c03ca49 [skip ci] Updated translations via Crowdin 2022-06-14 00:10:10 +00:00
Lunny Xiao 5f136783d1 [skip ci] Updated translations via Crowdin 2022-06-13 00:10:09 +00:00
Gusted 796c4eca0b
Prettify number of issues ()
* Prettify number of issues

- Use the PrettyNumber function to add commas in large amount of issues.

* Use client-side formatting

* prettify on both server and client

* remove unused i18n entries

* handle more cases, support other int types in PrettyNumber

* specify locale to avoid issues with node default locale

* remove superfluos argument

* introduce template helper, octicon tweaks, js refactor

* Update modules/templates/helper.go

* Apply some suggestions.

* Add comment

* Update templates/user/dashboard/issues.tmpl

Co-authored-by: silverwind <me@silverwind.io>

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-06-12 20:08:23 +08:00
Gusted edf14202fe
Unify repo settings & show better error ()
* Unify context data
* Actually show invalid url in error
2022-06-12 13:43:27 +08:00
xkcdstickfigure 3898fc5bda [skip ci] Updated translations via Crowdin 2022-06-12 00:10:13 +00:00
6543 a9cc9c0f7a
Auto merge pull requests when all checks succeeded via WebUI ()
Add WebUI part of Auto merge feature

close 

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
2022-06-11 16:44:20 +02:00
silverwind 23422f9909 [skip ci] Updated translations via Crowdin 2022-06-11 00:10:12 +00:00
Sandro Santilli 52c2e82813
Custom regexp external issues ()
* Implement custom regular expression for external issue tracking.

Signed-off-by: Alexander Beyn <malex@fatelectrons.org>

* Fix syntax/style

* Update repo.go

* Set metas['regexp']

* gofmt

* fix some tests

* fix more tests

* refactor frontend

* use LRU cache for regexp

* Update modules/markup/html_internal_test.go

Co-authored-by: Alexander Beyn <malex@fatelectrons.org>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-06-10 13:39:53 +08:00
Roger Luo e26f84a9b7 [skip ci] Updated translations via Crowdin 2022-06-10 00:10:33 +00:00
Roger Luo 2ae45cebbf
Feature: Find files in repo ()
* Create finding files page ui in repo page

* Get tree entries for find repo files.

* Move find files JS to individual file.

* gen swagger.

* Add enry.IsVendor to exclude entries

Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-06-09 14:15:08 +03:00
Lauris BH d087554d81 [skip ci] Updated translations via Crowdin 2022-06-09 00:10:14 +00:00
André Jaenisch c1c07e533c
Improve wording on delete access token modal ()
This PR highlights the nature of the destructive action.
It also rewords the action buttons to remove ambiguity.

Signed-off-by: André Jaenisch <andre.jaenisch@posteo.de>

Co-authored-by: Lauris BH <lauris@nix.lv>
2022-06-07 20:28:10 -04:00
Gusted d78ea362d4 [skip ci] Updated translations via Crowdin 2022-06-08 00:10:16 +00:00
zeripath d8236f1b16
Ensure minimum mirror interval is reported on settings page ()
* Ensure minimum mirror interval is reported on settings page

Expecting users to guess the minimum mirror interval appears a little unkind.
In this PR we simply change the locale string to include the minimum interval.
This will of course be affected by our current localization framework but...
we can fix that else where.

This PR also includes some fixes for error handling on the settings page as
previously the mirror block amongst others would simply disappear on error.

Fix 

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

* Update options/locale/locale_en-US.ini

Co-authored-by: Gusted <williamzijl7@hotmail.com>

* placate lint

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

* Update options/locale/locale_en-US.ini

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>

Co-authored-by: Gusted <williamzijl7@hotmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2022-06-07 13:40:12 -04:00
wxiaoguang 23dd0f3456 [skip ci] Updated translations via Crowdin 2022-06-07 00:10:19 +00:00
Wim 0a8c030600 [skip ci] Updated translations via Crowdin 2022-06-06 00:10:13 +00:00
André Jaenisch 73382d2132
Add alt text to logo ()
The recommended way is to use the name of the organisation followed
by "logo". however, since this is my first contribution, I am not
entirely sure, whether this is the best approach here.

The organisation is different from the organisation you can create as
part of the application. Instead, it is more related to the site
hosting the instance. Plus, I don't know how to best handle it when
the logo image is swapped out. Therefore, I use plain "Logo" and hope
that the person visiting the site has enough context.

Signed-off-by: André Jaenisch <andre.jaenisch@posteo.de>

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-06-05 17:41:51 +08:00
Paweł Bogusławski 14d96ff7ac
Disable unnecessary mirroring elements ()
* Disable unnecessary mirroring elements

This mod fixes disabling unnecessary mirroring elements.

Related: https://github.com/go-gitea/gitea/pull/16957
Related: https://github.com/go-gitea/gitea/pull/13084
Author-Change-Id: IB#1105104

* Checkbox rendering disabled instead of hiding it

Fixes: 02b45051503d4330da9757ff084c9cc5e6e60d84
Related: https://github.com/go-gitea/gitea/pull/18527#pullrequestreview-878061913
Author-Change-Id: IB#1105104

* Update custom/conf/app.example.ini

Co-authored-by: silverwind <me@silverwind.io>

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

Co-authored-by: silverwind <me@silverwind.io>

* Mirror filter removed only when whole mirroring feature is disabled

Fixes: 02b45051503d4330da9757ff084c9cc5e6e60d84
Related: https://github.com/go-gitea/gitea/pull/18527#discussion_r883268890
Author-Change-Id: IB#1105104

Co-authored-by: silverwind <me@silverwind.io>
2022-06-04 19:42:17 +08:00
wxiaoguang 867b34d5e9 [skip ci] Updated translations via Crowdin 2022-06-04 00:10:09 +00:00
zeripath 808a780309 [skip ci] Updated translations via Crowdin 2022-06-03 00:11:14 +00:00
zeripath 5283d1ead5 [skip ci] Updated translations via Crowdin 2022-06-02 00:10:13 +00:00
GiteaBot e31c6166ee [skip ci] Updated translations via Crowdin 2022-05-31 00:10:30 +00:00
GiteaBot fe4c846ccb [skip ci] Updated translations via Crowdin 2022-05-30 00:10:14 +00:00
wxiaoguang e0273bad72
Fix i18n for Link Account button, re-format tmpl () 2022-05-29 16:19:56 +08:00
GiteaBot 76681883ec [skip ci] Updated translations via Crowdin 2022-05-29 00:10:54 +00:00
GiteaBot cfb4c23a50 [skip ci] Updated translations via Crowdin 2022-05-28 00:10:25 +00:00
GiteaBot 7671a3322b [skip ci] Updated translations via Crowdin 2022-05-24 00:10:14 +00:00
GiteaBot d2a91e5e59 [skip ci] Updated translations via Crowdin 2022-05-23 00:10:14 +00:00
GiteaBot fa5dec966c [skip ci] Updated licenses and gitignores 2022-05-22 00:10:22 +00:00
zeripath ffb7ab31f2
Estimate Action Count in Statistics () 2022-05-21 14:50:50 -04:00
GiteaBot 6d54799bbc [skip ci] Updated translations via Crowdin 2022-05-17 00:10:28 +00:00
GiteaBot 761d4f40be [skip ci] Updated translations via Crowdin 2022-05-15 00:10:15 +00:00
GiteaBot cafa2dcb87 [skip ci] Updated translations via Crowdin 2022-05-13 00:10:14 +00:00
GiteaBot d985dcc922 [skip ci] Updated translations via Crowdin 2022-05-12 00:10:15 +00:00
GiteaBot 9fc194d2d9 [skip ci] Updated translations via Crowdin 2022-05-10 00:10:16 +00:00
Jack Hay 7e19200e53
Add tooltip to pending PR comments () 2022-05-09 21:04:27 +02:00
GiteaBot cd99540cdc [skip ci] Updated translations via Crowdin 2022-05-09 00:10:13 +00:00
Lunny Xiao 9efa47131f
Admin should not delete himself ()
Admin should not be able to delete themselves.

Also partially fix 
2022-05-08 21:22:55 +01:00
Lunny Xiao d4834071da
Repository level enable package or disable () 2022-05-08 17:51:50 +02:00
delvh 5ca224a789
Allow to mark files in a PR as viewed ()
Users can now mark files in PRs as viewed, resulting in them not being shown again by default when they reopen the PR again.
2022-05-07 20:28:10 +02:00
kolaente 59b30f060a
Auto merge pull requests when all checks succeeded via API ()
* Fix indention

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

* Add option to merge a pr right now without waiting for the checks to succeed

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

* Fix lint

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

* Add scheduled pr merge to tables used for testing

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

* Add status param to make GetPullRequestByHeadBranch reusable

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

* Move "Merge now" to a seperate button to make the ui clearer

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

* Update models/scheduled_pull_request_merge.go

Co-authored-by: 赵智超 <1012112796@qq.com>

* Update web_src/js/index.js

Co-authored-by: 赵智超 <1012112796@qq.com>

* Update web_src/js/index.js

Co-authored-by: 赵智超 <1012112796@qq.com>

* Re-add migration after merge

* Fix frontend lint

* Fix version compare

* Add vendored dependencies

* Add basic tets

* Make sure the api route is capable of scheduling PRs for merging

* Fix comparing version

* make vendor

* adopt refactor

* apply suggestion: User -> Doer

* init var once

* Fix Test

* Update templates/repo/issue/view_content/comments.tmpl

* adopt

* nits

* next

* code format

* lint

* use same name schema; rm CreateUnScheduledPRToAutoMergeComment

* API: can not create schedule twice

* Add TestGetBranchNamesForSha

* nits

* new go routine for each pull to merge

* Update models/pull.go

Co-authored-by: a1012112796 <1012112796@qq.com>

* Update models/scheduled_pull_request_merge.go

Co-authored-by: a1012112796 <1012112796@qq.com>

* fix & add renaming sugestions

* Update services/automerge/pull_auto_merge.go

Co-authored-by: a1012112796 <1012112796@qq.com>

* fix conflict relicts

* apply latest refactors

* fix: migration after merge

* Update models/error.go

Co-authored-by: delvh <dev.lh@web.de>

* Update options/locale/locale_en-US.ini

Co-authored-by: delvh <dev.lh@web.de>

* Update options/locale/locale_en-US.ini

Co-authored-by: delvh <dev.lh@web.de>

* adapt latest refactors

* fix test

* use more context

* skip potential edgecases

* document func usage

* GetBranchNamesForSha() -> GetRefsBySha()

* start refactoring

* ajust to new changes

* nit

* docu nit

* the great check move

* move checks for branchprotection into own package

* resolve todo now ...

* move & rename

* unexport if posible

* fix

* check if merge is allowed before merge on scheduled pull

* debugg

* wording

* improve SetDefaults & nits

* NotAllowedToMerge -> DisallowedToMerge

* fix test

* merge files

* use package "errors"

* merge files

* add string names

* other implementation for gogit

* adapt refactor

* more context for models/pull.go

* GetUserRepoPermission use context

* more ctx

* use context for loading pull head/base-repo

* more ctx

* more ctx

* models.LoadIssueCtx()

* models.LoadIssueCtx()

* Handle pull_service.Merge in one DB transaction

* add TODOs

* next

* next

* next

* more ctx

* more ctx

* Start refactoring structure of old pull code ...

* move code into new packages

* shorter names ... and finish **restructure**

* Update models/branches.go

Co-authored-by: zeripath <art27@cantab.net>

* finish UpdateProtectBranch

* more and fix

* update datum

* template: use "svg" helper

* rename prQueue 2 prPatchCheckerQueue

* handle automerge in queue

* lock pull on git&db actions ...

* lock pull on git&db actions ...

* add TODO notes

* the regex

* transaction in tests

* GetRepositoryByIDCtx

* shorter table name and lint fix

* close transaction bevore notify

* Update models/pull.go

* next

* CheckPullMergable check all branch protections!

* Update routers/web/repo/pull.go

* CheckPullMergable check all branch protections!

* Revert "PullService lock via pullID ()" (for now...)

This reverts commit 6cde7c9159a5ea75a10356feb7b8c7ad4c434a9a.

* Update services/pull/check.go

* Use for a repo action one database transaction

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: delvh <dev.lh@web.de>

* Update services/issue/status.go

Co-authored-by: delvh <dev.lh@web.de>

* Update services/issue/status.go

Co-authored-by: delvh <dev.lh@web.de>

* use db.WithTx()

* gofmt

* make pr.GetDefaultMergeMessage() context aware

* make MergePullRequestForm.SetDefaults context aware

* use db.WithTx()

* pull.SetMerged only with context

* fix deadlock in `test-sqlite\#TestAPIBranchProtection`

* dont forget templates

* db.WithTx allow to set the parentCtx

* handle db transaction in service packages but not router

* issue_service.ChangeStatus just had caused another deadlock :/
it has to do something with how notification package is handled

* if we merge a pull in one database transaktion, we get a lock, because merge infoce internal api that cant handle open db sessions to the same repo

* ajust to current master

* Apply suggestions from code review

Co-authored-by: delvh <dev.lh@web.de>

* dont open db transaction in router

* make generate-swagger

* one _success less

* wording nit

* rm

* adapt

* remove not needed test files

* rm less diff & use attr in JS

* ...

* Update services/repository/files/commit.go

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>

* ajust db schema for PullAutoMerge

* skip broken pull refs

* more context in error messages

* remove webUI part for another pull

* remove more WebUI only parts

* API: add CancleAutoMergePR

* Apply suggestions from code review

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>

* fix lint

* Apply suggestions from code review

* cancle -> cancel

Co-authored-by: delvh <dev.lh@web.de>

* change queue identifyer

* fix swagger

* prevent nil issue

* fix and dont drop error

* as per @zeripath

* Update integrations/git_test.go

Co-authored-by: delvh <dev.lh@web.de>

* Update integrations/git_test.go

Co-authored-by: delvh <dev.lh@web.de>

* more declarative integration tests (dedup code)

* use assert.False/True helper

Co-authored-by: 赵智超 <1012112796@qq.com>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-05-08 01:05:52 +08:00
GiteaBot 5a9c505e14 [skip ci] Updated translations via Crowdin 2022-05-07 00:10:19 +00:00
neon 0483ee8f69
Add "Reference" section to Issue view sidebar ()
* Add "Reference" section to Issue view sidebar

* Removed unneeded tailored CSS, added Fomantic UI classes

* Removed tailored CSS in favour of HTML-only approach

Kindly provided by @Gusted

* Added i18 translation key for reference link string

* Corrected spelling of "References:" to "Reference:" for reference link text

* Removed `Issue.ReferenceLink` in favour of a local template variable
2022-05-05 20:58:37 +02:00
GiteaBot 5a75a5463e [skip ci] Updated translations via Crowdin 2022-05-05 00:10:22 +00:00
GiteaBot 05234adfa8 [skip ci] Updated translations via Crowdin 2022-05-02 00:10:25 +00:00
GiteaBot 094c8fdc87 [skip ci] Updated licenses and gitignores 2022-05-01 00:25:27 +00:00
GiteaBot bf7258be9c [skip ci] Updated translations via Crowdin 2022-04-30 00:10:15 +00:00
GiteaBot 53829b84f0 [skip ci] Updated translations via Crowdin 2022-04-29 00:10:15 +00:00
qwerty287 8eb1cd9264
Add "Allow edits from maintainer" feature ()
Adds a feature [like GitHub has](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork) (step 7).
If you create a new PR from a forked repo, you can select (and change later, but only if you are the PR creator/poster) the "Allow edits from maintainers" option.
Then users with write access to the base branch get more permissions on this branch:
* use the update pull request button
* push directly from the command line (`git push`)
* edit/delete/upload files via web UI
* use related API endpoints

You can't merge PRs to this branch with this enabled, you'll need "full" code write permissions.

This feature has a pretty big impact on the permission system. I might forgot changing some things or didn't find security vulnerabilities. In this case, please leave a review or comment on this PR.

Closes 

Co-authored-by: 6543 <6543@obermui.de>
2022-04-28 17:45:33 +02:00
GiteaBot 960b813a33 [skip ci] Updated translations via Crowdin 2022-04-28 00:10:43 +00:00
Lunny Xiao 03eba32bd9
Add a new menu in file view to open blame view and fix blame view select range bug () 2022-04-26 13:54:40 +03:00
GiteaBot 741c55b4ea [skip ci] Updated translations via Crowdin 2022-04-26 00:10:13 +00:00
GiteaBot 5e4134b117 [skip ci] Updated translations via Crowdin 2022-04-25 00:10:29 +00:00
ktprograms ef164d33c2
Add RSS Feed buttons to Repo, User and Org pages () 2022-04-24 22:03:39 +02:00
GiteaBot 0abd8b0abc [skip ci] Updated translations via Crowdin 2022-04-24 00:10:14 +00:00
GiteaBot 9550e5a23e [skip ci] Updated translations via Crowdin 2022-04-23 00:10:15 +00:00
GiteaBot 0dfc2e55ea [skip ci] Updated translations via Crowdin 2022-04-22 00:10:36 +00:00
GiteaBot f7a8e5c8f2 [skip ci] Updated translations via Crowdin 2022-04-21 00:10:26 +00:00
KN4CK3R 18727df73a
Add Helm Chart registry () 2022-04-19 12:55:35 -04:00
GiteaBot b74322dfce [skip ci] Updated translations via Crowdin 2022-04-18 00:10:09 +00:00
GiteaBot 490065b93b [skip ci] Updated licenses and gitignores 2022-04-17 00:10:24 +00:00
GiteaBot 3255ba9305 [skip ci] Updated translations via Crowdin 2022-04-13 00:10:15 +00:00
GiteaBot 72479bff89 [skip ci] Updated translations via Crowdin 2022-04-10 00:10:15 +00:00
GiteaBot c6531de3f5 [skip ci] Updated translations via Crowdin 2022-04-08 00:17:39 +00:00
GiteaBot bb7e0619c3 [skip ci] Updated translations via Crowdin 2022-04-07 00:17:35 +00:00
原俊杰 184302665f
Show ssh command directly in template instead of i18n translation ()
* add missing space for generate ssh token command

Signed-off-by: Junjie Yuan <yuan@junjie.pro>

* Do not use i18n for ssh command

* Remove unnecessary settings.ssh_token_code

* Revert locale_zh-CN.ini

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-04-06 19:35:04 +08:00
GiteaBot 8ddcd37f13 [skip ci] Updated translations via Crowdin 2022-04-06 00:17:36 +00:00
GiteaBot 5ae875a1ae [skip ci] Updated translations via Crowdin 2022-04-05 00:17:38 +00:00
GiteaBot 256204befa [skip ci] Updated translations via Crowdin 2022-04-04 00:17:51 +00:00
Steven be9ef15f8a
Fix links to packages documentation () 2022-04-04 00:22:01 +08:00
GiteaBot 27c34dd011 [skip ci] Updated translations via Crowdin 2022-04-03 00:17:41 +00:00
GiteaBot ba2592c380 [skip ci] Updated translations via Crowdin 2022-04-01 00:17:38 +00:00
zeripath c88547ce71
Add Goroutine stack inspector to admin/monitor ()
Continues on from .

Following the addition of pprof labels we can now more easily understand the relationship between a goroutine and the requests that spawn them. 

This PR takes advantage of the labels and adds a few others, then provides a mechanism for the monitoring page to query the pprof goroutine profile.

The binary profile that results from this profile is immediately piped in to the google library for parsing this and then stack traces are formed for the goroutines.

If the goroutine is within a context or has been created from a goroutine within a process context it will acquire the process description labels for that process. 

The goroutines are mapped with there associate pids and any that do not have an associated pid are placed in a group at the bottom as unbound.

In this way we should be able to more easily examine goroutines that have been stuck.

A manager command `gitea manager processes` is also provided that can export the processes (with or without stacktraces) to the command line.

Signed-off-by: Andrew Thornton <art27@cantab.net>
2022-03-31 19:01:43 +02:00
GiteaBot 84038f33f4 [skip ci] Updated translations via Crowdin 2022-03-31 00:18:20 +00:00
Norwin 9cbeab440e
fix link to package registry docs () 2022-03-30 15:17:05 -04:00
KN4CK3R 1d332342db
Add Package Registry ()
* Added package store settings.

* Added models.

* Added generic package registry.

* Added tests.

* Added NuGet package registry.

* Moved service index to api file.

* Added NPM package registry.

* Added Maven package registry.

* Added PyPI package registry.

* Summary is deprecated.

* Changed npm name.

* Sanitize project url.

* Allow only scoped packages.

* Added user interface.

* Changed method name.

* Added missing migration file.

* Set page info.

* Added documentation.

* Added documentation links.

* Fixed wrong error message.

* Lint template files.

* Fixed merge errors.

* Fixed unit test storage path.

* Switch to json module.

* Added suggestions.

* Added package webhook.

* Add package api.

* Fixed swagger file.

* Fixed enum and comments.

* Fixed NuGet pagination.

* Print test names.

* Added api tests.

* Fixed access level.

* Fix User unmarshal.

* Added RubyGems package registry.

* Fix lint.

* Implemented io.Writer.

* Added support for sha256/sha512 checksum files.

* Improved maven-metadata.xml support.

* Added support for symbol package uploads.

* Added tests.

* Added overview docs.

* Added npm dependencies and keywords.

* Added no-packages information.

* Display file size.

* Display asset count.

* Fixed filter alignment.

* Added package icons.

* Formatted instructions.

* Allow anonymous package downloads.

* Fixed comments.

* Fixed postgres test.

* Moved file.

* Moved models to models/packages.

* Use correct error response format per client.

* Use simpler search form.

* Fixed IsProd.

* Restructured data model.

* Prevent empty filename.

* Fix swagger.

* Implemented user/org registry.

* Implemented UI.

* Use GetUserByIDCtx.

* Use table for dependencies.

* make svg

* Added support for unscoped npm packages.

* Add support for npm dist tags.

* Added tests for npm tags.

* Unlink packages if repository gets deleted.

* Prevent user/org delete if a packages exist.

* Use package unlink in repository service.

* Added support for composer packages.

* Restructured package docs.

* Added missing tests.

* Fixed generic content page.

* Fixed docs.

* Fixed swagger.

* Added missing type.

* Fixed ambiguous column.

* Organize content store by sha256 hash.

* Added admin package management.

* Added support for sorting.

* Add support for multiple identical versions/files.

* Added missing repository unlink.

* Added file properties.

* make fmt

* lint

* Added Conan package registry.

* Updated docs.

* Unify package names.

* Added swagger enum.

* Use longer TEXT column type.

* Removed version composite key.

* Merged package and container registry.

* Removed index.

* Use dedicated package router.

* Moved files to new location.

* Updated docs.

* Fixed JOIN order.

* Fixed GROUP BY statement.

* Fixed GROUP BY .

* Added symbol server support.

* Added more tests.

* Set NOT NULL.

* Added setting to disable package registries.

* Moved auth into service.

* refactor

* Use ctx everywhere.

* Added package cleanup task.

* Changed packages path.

* Added container registry.

* Refactoring

* Updated comparison.

* Fix swagger.

* Fixed table order.

* Use token auth for npm routes.

* Enabled ReverseProxy auth.

* Added packages link for orgs.

* Fixed anonymous org access.

* Enable copy button for setup instructions.

* Merge error

* Added suggestions.

* Fixed merge.

* Handle "generic".

* Added link for TODO.

* Added suggestions.

* Changed temporary buffer filename.

* Added suggestions.

* Apply suggestions from code review

Co-authored-by: Thomas Boerger <thomas@webhippie.de>

* Update docs/content/doc/packages/nuget.en-us.md

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Thomas Boerger <thomas@webhippie.de>
2022-03-30 16:42:47 +08:00
GiteaBot ea8622d454 [skip ci] Updated translations via Crowdin 2022-03-30 00:17:38 +00:00
zeripath 90e0a402c1
Show last cron messages on monitor page ()
As discussed on  we should store the results of the last task message on the
crontask and show them on the monitor page.

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-03-29 02:31:07 +01:00
Pilou 893c8938fc
New cron task: delete old system notices ()
Add a new cron task which deletes the old system notices.
2022-03-28 13:54:59 +01:00
GiteaBot 04601d22f5 [skip ci] Updated translations via Crowdin 2022-03-28 00:17:27 +00:00
GiteaBot 71a5aaef32 [skip ci] Updated licenses and gitignores 2022-03-27 00:17:35 +00:00
GiteaBot e48f3b0527 [skip ci] Updated translations via Crowdin 2022-03-25 00:17:35 +00:00
MeIchthys f7883a6aec
Update issue_no_dependencies description ()
To be more consistent and concise we could change the issue_no_dependencies from: `This issue currently doesn't have any dependencies. ` to `No dependencies set.` like we do for the due date and others.

Co-authored-by: delvh <dev.lh@web.de>
2022-03-23 16:46:50 +00:00
GiteaBot db6080f4f8 [skip ci] Updated translations via Crowdin 2022-03-23 00:24:20 +00:00
GiteaBot 572c63d237 [skip ci] Updated translations via Crowdin 2022-03-21 00:24:03 +00:00
GiteaBot 83a2f79d5d [skip ci] Updated licenses and gitignores 2022-03-20 00:24:18 +00:00
zeripath 7fc5fd6415
Do not send activation email if manual confirm is set ()
If the mailer is configured then even if Manual confirm is set an activation email
is still being sent because `handleUserCreated` is not checking for this case.

Fix 

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

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-03-18 17:57:07 +08:00
GiteaBot cc6ff74253 [skip ci] Updated translations via Crowdin 2022-03-17 00:24:18 +00:00
GiteaBot 3ad6cf2069 [skip ci] Updated translations via Crowdin 2022-03-14 00:11:34 +00:00
GiteaBot 780cf76f6e [skip ci] Updated licenses and gitignores 2022-03-13 00:11:52 +00:00
GiteaBot a0c043f5c6 [skip ci] Updated translations via Crowdin 2022-03-12 00:11:48 +00:00
GiteaBot 7443213707 [skip ci] Updated translations via Crowdin 2022-03-10 00:11:57 +00:00
Otto Richter (fnetX) ea46142bce
Add button for issue deletion ()
Co-authored-by: Norwin <noerw@users.noreply.github.com>
Co-authored-by: 6543 <6543@obermui.de>
2022-03-09 01:38:11 +01:00
Roger Luo bbce905b6a
Feature: show issue assignee on project board ()
* Show assignees in project boards.
2022-03-09 00:42:28 +08:00
GiteaBot 98f54081d6 [skip ci] Updated translations via Crowdin 2022-03-07 00:11:49 +00:00
Jimmy Praet 5184c83f6b
Add config option to disable "Update branch by rebase" () 2022-03-04 03:30:49 -05:00
GiteaBot 3ba9dcf4b4 [skip ci] Updated licenses and gitignores 2022-02-27 00:16:04 +00:00
GiteaBot 2f2f11e45d [skip ci] Updated translations via Crowdin 2022-02-25 00:16:08 +00:00
GiteaBot 15a4b1d42b [skip ci] Updated translations via Crowdin 2022-02-21 00:15:46 +00:00
GiteaBot d5a4c5530a [skip ci] Updated licenses and gitignores 2022-02-20 00:16:03 +00:00
GiteaBot 833f291c40 [skip ci] Updated translations via Crowdin 2022-02-18 00:16:14 +00:00
GiteaBot 1eb6bb9028 [skip ci] Updated translations via Crowdin 2022-02-16 00:16:06 +00:00
GiteaBot 2be49dee71 [skip ci] Updated translations via Crowdin 2022-02-15 00:15:56 +00:00
GiteaBot 27af864cc2 [skip ci] Updated translations via Crowdin 2022-02-14 00:16:00 +00:00
GiteaBot f1d8030310 [skip ci] Updated translations via Crowdin 2022-02-13 00:16:01 +00:00
zeripath 4e57bd1d30
Add number in queue status to monitor page ()
Add number in queue status to the monitor page so that administrators can
assess how much work is left to be done in the queues.

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

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-02-12 13:31:26 +08:00
GiteaBot 5aa4eeb180 [skip ci] Updated translations via Crowdin 2022-02-12 00:16:01 +00:00
Sven Seeberg 832ce406ae
Add LDAP group sync to Teams, fixes ()
* Add setting for a JSON that maps LDAP groups to Org Teams.
* Add log when removing or adding team members.
* Sync is being run on login and periodically.
* Existing group filter settings are reused.
* Adding and removing team members.
* Sync not existing LDAP group.
* Login with broken group map JSON.
2022-02-11 22:24:58 +08:00
GiteaBot f9e7edc5d9 [skip ci] Updated translations via Crowdin 2022-02-11 00:16:26 +00:00
Lunny Xiao 0c70b4c211
Fix bug for version update hint ()
Co-authored-by: silverwind <me@silverwind.io>
2022-02-10 15:37:10 +01:00
GiteaBot e034d3a710 [skip ci] Updated translations via Crowdin 2022-02-10 00:16:23 +00:00
zeripath eb748f5f3c
Add apply-patch, basic revert and cherry-pick functionality ()
This code adds a simple endpoint to apply patches to repositories and
branches on gitea. This is then used along with the conflicting checking
code in  to provide a basic implementation of cherry-pick revert.

Now because the buttons necessary for cherry-pick and revert have 
required us to create a dropdown next to the Browse Source button
I've also implemented Create Branch and Create Tag operations.

Fix  
Fix  

Signed-off-by: Andrew Thornton <art27@cantab.net>
2022-02-09 20:28:55 +00:00
GiteaBot 4160aff86e [skip ci] Updated translations via Crowdin 2022-02-09 00:16:04 +00:00
GiteaBot 8422b1c55c [skip ci] Updated translations via Crowdin 2022-02-08 00:15:59 +00:00
wxiaoguang c2a3e38194
Fix the missing i18n key for update checker () 2022-02-07 15:43:53 +08:00
GiteaBot 3b33507c73 [skip ci] Updated licenses and gitignores 2022-02-06 00:16:02 +00:00
GiteaBot 319d191afc [skip ci] Updated translations via Crowdin 2022-02-04 00:16:04 +00:00
GiteaBot 5469e61a8e [skip ci] Updated translations via Crowdin 2022-02-02 00:16:04 +00:00
GiteaBot 1de5028394 [skip ci] Updated translations via Crowdin 2022-02-01 00:16:43 +00:00
GiteaBot db7c3ecc1f [skip ci] Updated translations via Crowdin 2022-01-31 00:05:29 +00:00
GiteaBot 74dcdadf08 [skip ci] Updated licenses and gitignores 2022-01-30 00:28:19 +00:00
GiteaBot 726715fcfb [skip ci] Updated translations via Crowdin 2022-01-29 00:28:21 +00:00
Gusted 7b04c97b7b
Fix typo ()
As title

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Lauris BH <lauris@nix.lv>
2022-01-28 21:56:31 +08:00
GiteaBot 668718c67e [skip ci] Updated translations via Crowdin 2022-01-28 00:28:20 +00:00
Lauris BH 8038610a42
Automatically pause queue if index service is unavailable ()
* Handle keyword search error when issue indexer service is not available

* Implement automatic disabling and resume of code indexer queue
2022-01-27 10:30:51 +02:00
GiteaBot 2649eddcf0 [skip ci] Updated translations via Crowdin 2022-01-27 00:28:24 +00:00
GiteaBot 4889ab52de [skip ci] Updated translations via Crowdin 2022-01-26 00:28:46 +00:00
GiteaBot 8053b60b4f [skip ci] Updated translations via Crowdin 2022-01-25 00:28:50 +00:00
wxiaoguang 5506cb92da
Refactor webhooks i18n () 2022-01-24 19:36:54 +08:00
GiteaBot 4bfd749fc5 [skip ci] Updated translations via Crowdin 2022-01-24 00:28:24 +00:00
Dr. Tobias Quathamer 3349fd8f79
Add packagist webhook ()
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-01-23 21:46:30 +08:00
GiteaBot e040eca727 [skip ci] Updated translations via Crowdin 2022-01-23 00:28:40 +00:00
zeripath a82fd98d53
Pause queues ()
* Start adding mechanism to return unhandled data

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

* Create pushback interface

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

* Add Pausable interface to WorkerPool and Manager

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

* Implement Pausable and PushBack for the bytefifos

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

* Implement Pausable and Pushback for ChannelQueues and ChannelUniqueQueues

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

* Wire in UI for pausing

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

* add testcases and fix a few issues

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

* fix build

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

* prevent "race" in the test

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

* fix jsoniter mismerge

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

* fix conflicts

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

* fix format

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

* Add warnings for no worker configurations and prevent data-loss with redis/levelqueue

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

* Use StopTimer

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

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-01-22 21:22:14 +00:00
GiteaBot f91092453e [skip ci] Updated translations via Crowdin 2022-01-22 00:28:20 +00:00
qwerty287 1f40933d38
Add config options to hide issue events ()
* Add config option to hide issue events
Adds a config option `HIDE_ISSUE_EVENTS` to hide most issue events (changed labels, milestones, projects...) on the issue detail page.
If this is true, only the following events (comment types) are shown:
* plain comments
* closed/reopned/merged
* reviews

* Make configurable using a list

* Add docs

* Add missing newline

* Fix merge issues

* Allow changes per user settings

* Fix lint

* Rm old docs

* Apply suggestions from code review

* Use bitsets

* Rm comment

* fmt

* Fix lint

* Use variable/constant to provide key

* fmt

* fix lint

* refactor

* Add a prefix for user setting key

* Add license comment

* Add license comment

* Update services/forms/user_form_hidden_comments.go

Co-authored-by: Gusted <williamzijl7@hotmail.com>

* check len == 0

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: Gusted <williamzijl7@hotmail.com>
Co-authored-by: 6543 <6543@obermui.de>
2022-01-21 18:59:26 +01:00
GiteaBot 6c7084cbee [skip ci] Updated translations via Crowdin 2022-01-21 00:30:19 +00:00
GiteaBot b7c6457648 [skip ci] Updated translations via Crowdin 2022-01-19 21:28:43 +00:00
GiteaBot c68f1281f6 [skip ci] Updated translations via Crowdin 2022-01-19 20:29:22 +00:00
GiteaBot 531b6d60e1 [skip ci] Updated translations via Crowdin 2022-01-19 18:28:18 +00:00
GiteaBot eed8633fb0 [skip ci] Updated translations via Crowdin 2022-01-18 00:31:56 +00:00
GiteaBot bd7680f450 [skip ci] Updated translations via Crowdin 2022-01-17 00:28:33 +00:00
GiteaBot a15353dc00 [skip ci] Updated translations via Crowdin 2022-01-16 00:28:39 +00:00
zeripath d7c2a2951c
Webauthn nits ()
This contains some additional fixes and small nits related to  

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-01-15 17:52:56 +01:00
Lunny Xiao 35c3553870
Support webauthn ()
Migrate from U2F to Webauthn

Co-authored-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-01-14 16:03:31 +01:00
GiteaBot 8808293247 [skip ci] Updated translations via Crowdin 2022-01-14 00:29:34 +00:00
GiteaBot ed6757ecdc [skip ci] Updated translations via Crowdin 2022-01-11 00:28:42 +00:00
luzpaz 8c647bf0f6
Fix various typos ()
Found via `codespell -q 3 -S ./options/locale,./vendor -L ba,pullrequest,pullrequests,readby,te,unknwon`

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-01-10 17:32:37 +08:00
GiteaBot 60b945565d [skip ci] Updated translations via Crowdin 2022-01-10 00:28:05 +00:00
GiteaBot de578bff8c [skip ci] Updated licenses and gitignores 2022-01-09 00:28:45 +00:00
GiteaBot 69a4bd02f0 [skip ci] Updated translations via Crowdin 2022-01-08 00:28:35 +00:00
KN4CK3R e30b20dc68
Show OAuth callback error message ()
* Show callback error message.

* lint

* Use error code to display a message.

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-01-07 21:02:09 +00:00
zeripath 21ed4fd8da
Add warning for BIDI characters in page renders and in diffs ()
Fix 

Given the comments I've adjusted this somewhat. The numbers of characters detected are increased and include things like the use of U+300 to make à instead of à and non-breaking spaces.

There is a button which can be used to escape the content to show it.

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: Gwyneth Morgan <gwymor@tilde.club>
Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-01-07 02:18:52 +01:00
GiteaBot ee60f27aec [skip ci] Updated translations via Crowdin 2022-01-07 00:28:31 +00:00
KN4CK3R bf7b083cfe
Add replay of webhooks. () 2022-01-05 15:00:20 -06:00
Lunny Xiao 8760af752a
Team permission allow different unit has different permission ()
* Team permission allow different unit has different permission

* Finish the interface and the logic

* Fix lint

* Fix translation

* align center for table cell content

* Fix fixture

* merge

* Fix test

* Add deprecated

* Improve code

* Add tooltip

* Fix swagger

* Fix newline

* Fix tests

* Fix tests

* Fix test

* Fix test

* Max permission of external wiki and issues should be read

* Move team units with limited max level below units table

* Update label and column names

* Some improvements

* Fix lint

* Some improvements

* Fix template variables

* Add permission docs

* improve doc

* Fix fixture

* Fix bug

* Fix some bug

* fix

* gofumpt

* Integration test for migration ()

integrations: basic test for Gitea {dump,restore}-repo
This is a first step for integration testing of DumpRepository and
RestoreRepository. It:

runs a Gitea server,
dumps a repo via DumpRepository to the filesystem,
restores the repo via RestoreRepository from the filesystem,
dumps the restored repository to the filesystem,
compares the first and second dump and expects them to be identical

The verification is trivial and the goal is to add more tests for each
topic of the dump.

Signed-off-by: Loïc Dachary <loic@dachary.org>

* Team permission allow different unit has different permission

* Finish the interface and the logic

* Fix lint

* Fix translation

* align center for table cell content

* Fix fixture

* merge

* Fix test

* Add deprecated

* Improve code

* Add tooltip

* Fix swagger

* Fix newline

* Fix tests

* Fix tests

* Fix test

* Fix test

* Max permission of external wiki and issues should be read

* Move team units with limited max level below units table

* Update label and column names

* Some improvements

* Fix lint

* Some improvements

* Fix template variables

* Add permission docs

* improve doc

* Fix fixture

* Fix bug

* Fix some bug

* Fix bug

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Aravinth Manivannan <realaravinth@batsense.net>
2022-01-05 11:37:00 +08:00
GiteaBot 0848c716bf [skip ci] Updated translations via Crowdin 2022-01-04 00:28:34 +00:00
GiteaBot f499f23039 [skip ci] Updated translations via Crowdin 2022-01-03 00:28:34 +00:00
GiteaBot 6a3611cc3d [skip ci] Updated licenses and gitignores 2022-01-02 00:28:42 +00:00
GiteaBot a3d685077f [skip ci] Updated translations via Crowdin 2021-12-31 00:28:31 +00:00
GiteaBot ccb7978538 [skip ci] Updated translations via Crowdin 2021-12-30 00:28:34 +00:00
Gusted e4e3df6c66
Handle invalid issues ()
* Handle invalid issues

- When you hover over a issue reference, and the issue doesn't exist, it
will just hang on the loading animation.
- This patch fixes that by showing them the pop-up with a "Error
occured" message.

* Add I18N

* refactor

* fix comment for lint

* fix unit test for i18n

* fix unit test for i18n

* add comments

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2021-12-28 21:28:27 +08:00
GiteaBot d2fac636d1 [skip ci] Updated translations via Crowdin 2021-12-27 00:28:36 +00:00
GiteaBot 13d002a755 [skip ci] Updated translations via Crowdin 2021-12-26 00:28:42 +00:00
Lunny Xiao d7770539f6
Improve interface when comparing a branch which has created a pull request ()
* Improve interface when comparing a branch which has created a pull request

* Take the note back
2021-12-24 12:14:42 +00:00
qwerty287 5754080eb9
Fix various typos of software names ()
* `git` -> `Git`
* `Github` and `github` -> `GitHub`
* `crowdin` -> `Crowdin`
* `git-lfs` -> `Git LFS`
* `githooks`, `git hooks`, `git-hooks` -> `Git Hooks`
* `discord` -> `Discord`
* `2fa` -> `2FA`
* `gitlab` and `Gitlab` -> `GitLab`
* `web hook` -> `webhook`
* `linux` -> `Linux`
* `sqlite` -> `SQLite`
* `MYSQL` and `mysql` -> `MySQL`
* rename refs to `master` branch -> `main`
* Fix English grammar
2021-12-24 11:56:57 +08:00
GiteaBot d155ffc610 [skip ci] Updated translations via Crowdin 2021-12-22 00:28:37 +00:00
GiteaBot be91df42d1 [skip ci] Updated translations via Crowdin 2021-12-21 00:28:39 +00:00
zeripath e4e411821d
Abort merge if head has been updated before pressing merge ()
* Abort merge if head has been updated before pressing merge

It is possible that a PR head may be pushed to between the merge page being shown
and the merge button being pressed. Pass the current expected head in as a parameter
and cancel the merge if it has changed.

Fix 

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

* adjust swagger

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

* fix test

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

* placate lint

Signed-off-by: Andrew Thornton <art27@cantab.net>
2021-12-20 08:32:54 +08:00
Wim 6fe756dc93
Add support for ssh commit signing ()
* Add support for ssh commit signing

* Split out ssh verification to separate file

* Show ssh key fingerprint on commit page

* Update sshsig lib

* Make sure we verify against correct namespace

* Add ssh public key verification via ssh signatures

When adding a public ssh key also validate that this user actually
owns the key by signing a token with the private key.

* Remove some gpg references and make verify key optional

* Fix spaces indentation

* Update options/locale/locale_en-US.ini

Co-authored-by: Gusted <williamzijl7@hotmail.com>

* Update templates/user/settings/keys_ssh.tmpl

Co-authored-by: Gusted <williamzijl7@hotmail.com>

* Update options/locale/locale_en-US.ini

Co-authored-by: Gusted <williamzijl7@hotmail.com>

* Update options/locale/locale_en-US.ini

Co-authored-by: Gusted <williamzijl7@hotmail.com>

* Update models/ssh_key_commit_verification.go

Co-authored-by: Gusted <williamzijl7@hotmail.com>

* Reword ssh/gpg_key_success message

* Change Badsignature to NoKeyFound

* Add sign/verify tests

* Fix upstream api changes to user_model User

* Match exact on SSH signature

* Fix code review remarks

Co-authored-by: Gusted <williamzijl7@hotmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2021-12-19 00:37:18 -05:00
GiteaBot 487ce3b49e [skip ci] Updated licenses and gitignores 2021-12-19 00:29:01 +00:00
GiteaBot 8662ff68da [skip ci] Updated translations via Crowdin 2021-12-18 00:28:35 +00:00
zeripath 8354670708
Prevent hang in git cat-file if repository is not a valid repository and other fixes ()
This PR contains multiple fixes. The most important of which is:

* Prevent hang in git cat-file if the repository is not a valid repository 
    
    Unfortunately it appears that if git cat-file is run in an invalid
    repository it will hang until stdin is closed. This will result in
    deadlocked /pulls pages and dangling git cat-file calls if a broken
    repository is tried to be reviewed or pulls exists for a broken
    repository.

    Fix 
    Fix 
    Fix 

Otherwise there are a few small other fixes included which this PR was initially intending to fix:

* Fix panic on partial compares due to missing PullRequestWorkInProgressPrefixes
* Fix links on pulls pages  due to regression from  - by making most /issues routes match /pulls too - Fix 
* Fix links on feeds pages due to another regression from  but also fix issue with syncing tags - Fix 
* Add missing locale entries for oauth group claims
* Prevent NPEs if ColorFormat is called on nil users, repos or teams.
2021-12-16 19:01:14 +00:00
zeripath e0e3ba6c12
Add Reindex buttons to repository settings page ()
This PR adds reindexing request buttons to the repository settings page.

Fix 

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

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2021-12-16 23:55:12 +08:00
GiteaBot e78ee73d71 [skip ci] Updated translations via Crowdin 2021-12-16 00:28:34 +00:00
GiteaBot 790e6cfeec [skip ci] Updated translations via Crowdin 2021-12-15 00:25:11 +00:00
zeripath 0981ec30c3
Add Option to synchronize Admin & Restricted states from OIDC/OAuth2 along with Setting Scopes ()
* Add setting to OAuth handlers to override local 2FA settings

This PR adds a setting to OAuth and OpenID login sources to allow the source to
override local 2FA requirements.

Fix 

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

* Fix regression from 

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

* Add scopes settings

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

* fix trace logging in auth_openid

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

* add required claim options

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

* Move UpdateExternalUser to externalaccount

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

* Allow OAuth2/OIDC to set Admin/Restricted status

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

* Allow use of the same group claim name for the prohibit login value

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

* fixup! Move UpdateExternalUser to externalaccount

* as per wxiaoguang

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

* add label back in

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

* adjust localisation

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

* placate lint

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

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2021-12-14 16:37:11 +08:00
zeripath b4782e24d2
Return nicer error for ForcePrivate () 2021-12-14 00:08:09 -05:00
KN4CK3R 8e9140dd69
Fixed wording. ()
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2021-12-14 09:45:39 +08:00
GiteaBot bd475f5c9d [skip ci] Updated translations via Crowdin 2021-12-14 00:25:09 +00:00
qwerty287 c3eea2f8af
Improve behavior of "Fork" button ()
* Improbe behaviour of fork button

* Apply suggestions from code review

* Remove old lines

* Apply suggestions

* Fix test

* Remove unnecessary or

* Update templates/repo/header.tmpl

Co-authored-by: silverwind <me@silverwind.io>

* Add comment

* Fix situation if you can't fork but don't have forks

* Fix lint

* Apply changes from 

* fmt

* fmt

* Apply tweaks

Co-authored by: silverwind <me@silverwind.io>

* Rm dupl css

* Fix build

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2021-12-13 09:59:09 +08:00
GiteaBot 0a7e8327a0 [skip ci] Updated licenses and gitignores 2021-12-12 00:25:18 +00:00
GiteaBot fb8166c6c6 [skip ci] Updated translations via Crowdin 2021-12-10 00:25:26 +00:00
GiteaBot 183175263d [skip ci] Updated translations via Crowdin 2021-12-09 00:25:09 +00:00
wxiaoguang a6f961fba4
Refactor install page (db type) ()
* Refactor install page (db type)

* set correct default DB HOST for different DB TYPE
* remove legacy TiDB from documents
* unify the usage of DB TYPE, in code we only use "mysql". "MySQL" is only shown to users for friendly name.

* Gitea can use TiDB via MySQL protocol

Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2021-12-07 13:44:08 +08:00
GiteaBot b30870ef8b [skip ci] Updated translations via Crowdin 2021-12-07 00:25:13 +00:00
GiteaBot 6c34f6b954 [skip ci] Updated translations via Crowdin 2021-12-06 00:24:54 +00:00
GiteaBot 98d903a3c6 [skip ci] Updated licenses and gitignores 2021-12-05 00:25:15 +00:00
wxiaoguang a1dca00974
fix i18n () 2021-12-04 23:24:10 +08:00
GiteaBot c7c723c548 [skip ci] Updated translations via Crowdin 2021-12-04 00:26:13 +00:00
n 6791aae8de
Add hints for special Wiki pages ()
* Add UI hints to create a Wiki sidebar and footer
2021-12-03 15:28:54 +08:00
GiteaBot 365b16cde1 [skip ci] Updated translations via Crowdin 2021-12-03 00:25:09 +00:00
KN4CK3R 87be76213a
Add migrate from Codebase ()
This PR adds [Codebase](https://www.codebasehq.com/) as migration source.

Supported:
- Milestones
- Issues
- Pull Requests
- Comments
- Labels
2021-12-02 23:24:02 +01:00
GiteaBot 7026a30fdc [skip ci] Updated translations via Crowdin 2021-12-02 00:25:09 +00:00
wxiaoguang 042cac5fed
Improve install code to avoid low-level mistakes. ()
* Improve install code to avoid low-level mistakes.

If a user tries to do a re-install in a Gitea database, they gets a warning and double check.
When Gitea runs, it never create empty app.ini automatically.

Also some small (related) refactoring:

* Refactor db.InitEngine related logic make it more clean (especially for the install code)
* Move some i18n strings out from setting.go to make the setting.go can be easily maintained.
* Show errors in CLI code if an incorrect app.ini is used.
* APP_DATA_PATH is created when installing, and checked when starting (no empty directory is created any more).
2021-12-01 15:50:01 +08:00
GiteaBot a3517d8668 [skip ci] Updated translations via Crowdin 2021-12-01 00:25:14 +00:00
zeripath 01087e9eef
Make Requests Processes and create process hierarchy. Associate OpenRepository with context. ()
This PR registers requests with the process manager and manages hierarchy within the processes.

Git repos are then associated with a context, (usually the request's context) - with sub commands using this context as their base context.

Signed-off-by: Andrew Thornton <art27@cantab.net>
2021-11-30 20:06:32 +00:00
GiteaBot eb8513a690 [skip ci] Updated translations via Crowdin 2021-11-30 00:25:14 +00:00
GiteaBot 789d251ae4 [skip ci] Updated translations via Crowdin 2021-11-27 00:25:11 +00:00
GiteaBot f23851f690 [skip ci] Updated translations via Crowdin 2021-11-26 00:25:09 +00:00
GiteaBot 4f99697888 [skip ci] Updated translations via Crowdin 2021-11-25 00:25:19 +00:00
GiteaBot 3d996c85a5 [skip ci] Updated translations via Crowdin 2021-11-24 00:25:19 +00:00
GiteaBot c79cc2d3e8 [skip ci] Updated translations via Crowdin 2021-11-23 00:31:08 +00:00
zeripath 1dbc58f742
More pleasantly handle broken or missing git repositories ()
* More pleasantly handle broken or missing git repositories

In  it was noted that there a completely invalid git repository underlying a
repo on gitea.com. This happened due to a problem during a migration however, it
is not beyond the realms of possibility that a corruption could occur to another
user.

This PR adds a check to RepoAssignment that will detect if a repository loading has
failed due to an absent git repository. It will then show a page suggesting the user
contacts the administrator or deletes the repository.

Fix 

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

* Update options/locale/locale_en-US.ini

Co-authored-by: techknowlogick <techknowlogick@gitea.io>

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2021-11-22 22:32:16 +00:00
GiteaBot 55e9228866 [skip ci] Updated translations via Crowdin 2021-11-22 00:24:56 +00:00
zeripath 8511eec4d4
Allow Loading of Diffs that are too large ()
* Allow Loading of Diffs that are too large

This PR allows the loading of diffs that are suppressed because the file
is too large. It does not handle diffs of files which have lines which
are too long.

Fix 

Signed-off-by: Andrew Thornton <art27@cantab.net>
2021-11-22 00:51:08 +08:00
GiteaBot ab09296d37 [skip ci] Updated licenses and gitignores 2021-11-21 00:25:17 +00:00
wxiaoguang 013fb73068
Use hostmatcher to replace matchlist, improve security ()
Use hostmacher to replace matchlist.

And we introduce a better DialContext to do a full host/IP check, otherwise the attackers can still bypass the allow/block list by a 302 redirection.
2021-11-20 17:34:05 +08:00
GiteaBot 52869ef386 [skip ci] Updated translations via Crowdin 2021-11-20 00:25:08 +00:00
Gusted 381e131fc8
Added comment for changing issue ref ()
* Added comment for changing issue ref
- Add a comment when someone changes the ref(erence?) of a issue.
2021-11-19 17:54:31 +08:00
GiteaBot 72b0882a45 [skip ci] Updated translations via Crowdin 2021-11-19 00:25:46 +00:00
GiteaBot b01f6c1a8c [skip ci] Updated translations via Crowdin 2021-11-18 00:25:14 +00:00
KN4CK3R ea42d3c04e
Fixed commit count. ()
Added "Tag" label.
Unified branch, tag and commit name.
2021-11-17 23:50:17 +00:00
GiteaBot 171f2d066e [skip ci] Updated translations via Crowdin 2021-11-17 00:25:11 +00:00
qwerty287 3be156f66a
Allow admins to change user avatars ()
Adds the avatar change panel to the edit user page (bottom) and allows admins to change it this way

Co-authored-by: Gusted <williamzijl7@hotmail.com>
Co-authored-by: zeripath <art27@cantab.net>
2021-11-16 19:13:13 +00:00
zeripath bbffcc3aec
Multiple Escaping Improvements ()
There are multiple places where Gitea does not properly escape URLs that it is building and there are multiple places where it builds urls when there is already a simpler function available to use this.
    
This is an extensive PR attempting to fix these issues.

1. The first commit in this PR looks through all href, src and links in the Gitea codebase and has attempted to catch all the places where there is potentially incomplete escaping.
2. Whilst doing this we will prefer to use functions that create URLs over recreating them by hand.
3. All uses of strings should be directly escaped - even if they are not currently expected to contain escaping characters. The main benefit to doing this will be that we can consider relaxing the constraints on user names and reponames in future. 
4. The next commit looks at escaping in the wiki and re-considers the urls that are used there. Using the improved escaping here wiki files containing '/'. (This implementation will currently still place all of the wiki files the root directory of the repo but this would not be difficult to change.)
5. The title generation in feeds is now properly escaped.
6. EscapePound is no longer needed - urls should be PathEscaped / QueryEscaped as necessary but then re-escaped with Escape when creating html with locales Signed-off-by: Andrew Thornton <art27@cantab.net>

Signed-off-by: Andrew Thornton <art27@cantab.net>
2021-11-16 18:18:25 +00:00
silverwind 23bd7b1211
Add copy button to markdown code blocks ()
* Add copy button to markdown code blocks

Done mostly in JS because I think it's better not to try getting buttons
past the markup sanitizer.

* add svg module tests

* fix sanitizer regexp

* remove outdated comment

* vertically center button in issue comments as well

* add comment to css

* fix undefined on view file line copy

* combine animation less files

* Update modules/markup/markdown/markdown.go

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>

* add test for different sizes

* add cloneNode and add tests for it

* use deep clone

* remove useless optional chaining

* remove the svg node cache

* unify clipboard copy string and i18n

* remove unused var

* remove unused localization

* minor css tweaks to the button

* comment tweak

* remove useless attribute

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2021-11-16 16:16:05 +08:00
GiteaBot 3a60e0ad89 [skip ci] Updated translations via Crowdin 2021-11-16 00:25:21 +00:00