Compare commits
118 Commits
Author | SHA1 | Date |
---|---|---|
Girish Ramakrishnan | 56cb2ba6b2 | |
Girish Ramakrishnan | 08868f64d4 | |
Girish Ramakrishnan | d7c3ae38fe | |
Johannes Zellner | 9b7aedc025 | |
Johannes Zellner | 70c144095a | |
Johannes Zellner | 69df4d1e0f | |
Johannes Zellner | 07982e33aa | |
Johannes Zellner | 59266f120a | |
Johannes Zellner | c03ec98517 | |
Johannes Zellner | 885a32e340 | |
Johannes Zellner | 459646512e | |
Girish Ramakrishnan | 5d44c03115 | |
Girish Ramakrishnan | 4961b7c4c8 | |
Girish Ramakrishnan | cfc5ab5a37 | |
Johannes Zellner | 6259356ae2 | |
Johannes Zellner | 813f32d310 | |
Johannes Zellner | 162054ef99 | |
Johannes Zellner | 18ad051734 | |
Johannes Zellner | ea6a6b84d9 | |
Johannes Zellner | ab0ab3c11c | |
Johannes Zellner | 84c505ad43 | |
Johannes Zellner | 366e8560b0 | |
Johannes Zellner | 0a81a63829 | |
Girish Ramakrishnan | 4fc500fca6 | |
Girish Ramakrishnan | 8393426612 | |
Johannes Zellner | a08dd3ee47 | |
Johannes Zellner | 63fce06157 | |
Johannes Zellner | d0c1e65913 | |
Johannes Zellner | 88732c63c9 | |
Johannes Zellner | d62cca74cc | |
Johannes Zellner | f96533530f | |
Johannes Zellner | 3e95af2256 | |
Johannes Zellner | 90693772de | |
Johannes Zellner | 092f2089f2 | |
Johannes Zellner | 16ffe8295f | |
Girish Ramakrishnan | 61d2691859 | |
Girish Ramakrishnan | 19c4b2a7ff | |
Girish Ramakrishnan | 5c7c228ff4 | |
Johannes Zellner | 62b03b02d5 | |
Johannes Zellner | 7dd4447091 | |
Girish Ramakrishnan | d23339e2e3 | |
Girish Ramakrishnan | 32daf79b3b | |
Girish Ramakrishnan | 2d0a1f14e6 | |
Vladimir D | bbae02fa50 | |
Vladimir D | e176d6c705 | |
Johannes Zellner | dd44f81d04 | |
Johannes Zellner | a4b0af1f02 | |
Girish Ramakrishnan | 4b15736f81 | |
Girish Ramakrishnan | 8876fedd40 | |
Girish Ramakrishnan | 65df2c54da | |
Girish Ramakrishnan | 245b93ea02 | |
Johannes Zellner | 8596073c51 | |
Johannes Zellner | 6a85b0cea2 | |
Girish Ramakrishnan | 5205ba5e83 | |
Girish Ramakrishnan | f668f4f3ab | |
Girish Ramakrishnan | 7eca682cec | |
Girish Ramakrishnan | f9f867ca89 | |
Girish Ramakrishnan | 9580ece3a1 | |
Girish Ramakrishnan | f2818dc4f9 | |
Girish Ramakrishnan | 35ac25e140 | |
Girish Ramakrishnan | 3cb4caaeac | |
Girish Ramakrishnan | 55d2b0d320 | |
Girish Ramakrishnan | 8f55a89978 | |
Girish Ramakrishnan | 5240330992 | |
Girish Ramakrishnan | 95fc696bcd | |
Girish Ramakrishnan | 77b3e2b033 | |
Johannes Zellner | 5fbd69679c | |
Johannes Zellner | 2c837eeb8f | |
Girish Ramakrishnan | 040fcf3386 | |
Girish Ramakrishnan | 58298a6b20 | |
Girish Ramakrishnan | 6b2e221264 | |
Girish Ramakrishnan | 1e9964fe49 | |
Girish Ramakrishnan | 23fa45cbc8 | |
Girish Ramakrishnan | 572226155c | |
Girish Ramakrishnan | 50ec10f0ae | |
Girish Ramakrishnan | a99dfc8e2a | |
Girish Ramakrishnan | 6bbea49e07 | |
Girish Ramakrishnan | f53e024f69 | |
Johannes Zellner | 68fe1f97d0 | |
Johannes Zellner | 896336f7c2 | |
Johannes Zellner | ea91e676cf | |
Johannes Zellner | 94e9181ced | |
Johannes Zellner | 8808e8c0b2 | |
Johannes Zellner | d00238c1ad | |
Girish Ramakrishnan | 07442c675c | |
Girish Ramakrishnan | ed1846cd28 | |
Girish Ramakrishnan | e10793d421 | |
Girish Ramakrishnan | 9eea9fe0be | |
Girish Ramakrishnan | 298cb33e86 | |
Johannes Zellner | 89240fc070 | |
Johannes Zellner | 6b2af3eab4 | |
Johannes Zellner | 32eebcff8f | |
Girish Ramakrishnan | 166dac9b12 | |
Girish Ramakrishnan | 26db0254c7 | |
Girish Ramakrishnan | 35e3edaa6c | |
Girish Ramakrishnan | 93370fa502 | |
Girish Ramakrishnan | 3398da164d | |
Girish Ramakrishnan | 6ce20e9e75 | |
Johannes Zellner | cb14653680 | |
Johannes Zellner | 46982e68f7 | |
Johannes Zellner | a2d2edabaf | |
Johannes Zellner | 7261adc546 | |
Johannes Zellner | a338dc215a | |
Girish Ramakrishnan | a12cf5f70b | |
Girish Ramakrishnan | 730611229e | |
Girish Ramakrishnan | fcb4caff89 | |
Girish Ramakrishnan | 200dc7676f | |
Girish Ramakrishnan | 320fbf86d9 | |
Girish Ramakrishnan | 04d857e88b | |
Girish Ramakrishnan | e2f6fb52b3 | |
Johannes Zellner | 4224cc9692 | |
Johannes Zellner | d416ec0dc7 | |
Johannes Zellner | ea5ff4e574 | |
Girish Ramakrishnan | 27720786bf | |
Girish Ramakrishnan | f48a4c4d72 | |
Johannes Zellner | 65fbb9cb7d | |
Johannes Zellner | 63bfe621d1 | |
Johannes Zellner | a6688ede57 |
|
@ -912,3 +912,701 @@
|
|||
* Update Gitea to 1.16.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.16.3)
|
||||
|
||||
[1.23.8]
|
||||
* Update Gitea to 1.16.4
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.16.4)
|
||||
* Restrict email address validation (#17688) (#19085)
|
||||
* Fix lfs bug (#19072) (#19080)
|
||||
|
||||
[1.23.9]
|
||||
* Update Gitea to 1.16.5
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.16.5)
|
||||
* Prevent redirect to Host (2) (#19175) (#19186)
|
||||
* Try to prevent autolinking of displaynames by email readers (#19169) (#19183)
|
||||
* Clean paths when looking in Storage (#19124) (#19179)
|
||||
* Do not send notification emails to inactive users (#19131) (#19139)
|
||||
* Do not send activation email if manual confirm is set (#19119) (#19122)
|
||||
|
||||
[1.23.10]
|
||||
* Update Gitea to 1.16.6
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.16.6)
|
||||
|
||||
[1.23.11]
|
||||
* Update Gitea to 1.16.7
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.16.7)
|
||||
* Escape git fetch remote (#19487) (#19490)
|
||||
* On Migrations, only write commit-graph if wiki clone was successful (#19563) (#19568)
|
||||
* Respect DefaultUserIsRestricted system default when creating new user (#19310) (#19560)
|
||||
* Don't error when branch's commit doesn't exist (#19547) (#19548)
|
||||
* Support hostname:port to pass host matcher's check (#19543) (#19544)
|
||||
* Prevent dangling archiver goroutine (#19516) (#19526)
|
||||
* Fix migrate release from github (#19510) (#19523)
|
||||
* When view `_Siderbar` or `_Footer`, just display once (#19501) (#19522)
|
||||
* Fix blame page select range error and some typos (#19503)
|
||||
* Fix name of doctor fix "authorized-keys" in hints (#19464) (#19484)
|
||||
* User specific repoID or xorm builder conditions for issue search (#19475) (#19476)
|
||||
* Prevent dangling cat-file calls (goroutine alternative) (#19454) (#19466)
|
||||
* RepoAssignment ensure to close before overwrite (#19449) (#19460)
|
||||
* Set correct PR status on 3way on conflict checking (#19457) (#19458)
|
||||
* Mark TemplateLoading error as "UnprocessableEntity" (#19445) (#19446)
|
||||
|
||||
[1.23.12]
|
||||
* Update Gitea to 1.16.8
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.16.8)
|
||||
* Add doctor check/fix for bogus action rows (#19656) (#19669)
|
||||
* Make .cs highlighting legible on dark themes (#19604) (#19605)
|
||||
* Delete user related oauth stuff on user deletion too (#19677) (#19680)
|
||||
* Fix new release from tags list UI (#19670) (#19673)
|
||||
* Prevent NPE when checking repo units if the user is nil (#19625) (#19630)
|
||||
|
||||
[1.24.0]
|
||||
* Update Gitea to 1.17.0
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.17.0)
|
||||
* Automatically render wiki TOC (#19873)
|
||||
* Adding button to link accounts from user settings (#19792)
|
||||
* Allow set default merge style while creating repo (#19751)
|
||||
* Auto merge pull requests when all checks succeeded (#9307 & #19648)
|
||||
* Improve reviewing PR UX (#19612)
|
||||
* Add support for rendering console output with colors (#19497)
|
||||
|
||||
[1.24.1]
|
||||
* Update Gitea to 1.17.1
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.17.1)
|
||||
* Correctly escape within tribute.js (#20831) (#20832)
|
||||
* Add support for NuGet API keys (#20721) (#20734)
|
||||
* Display project in issue list (#20583)
|
||||
* Add disable download source configuration (#20548) (#20579)
|
||||
* Add username check to doctor (#20140) (#20671)
|
||||
* Enable Wire 2 for Internal SSH Server (#20616) (#20617)
|
||||
* Use the total issue count for UI (#20785) (#20827)
|
||||
* Add proxy host into allow list (#20798) (#20819)
|
||||
* Add missing translation for queue flush workers (#20791) (#20792)
|
||||
* Improve comment header for mobile (#20781) (#20789)
|
||||
* Fix git.Init for doctor sub-command (#20782) (#20783)
|
||||
* Check webhooks slice length before calling xorm (#20642) (#20768)
|
||||
* Remove manual rollback for failed generated repositories (#20639) (#20762)
|
||||
* Use correct field name in npm template (#20675) (#20760)
|
||||
* Keep download count on Container tag overwrite (#20728) (#20735)
|
||||
* Fix v220 migration to be compatible for MSSQL 2008 r2 (#20702) (#20707)
|
||||
* Use request timeout for git service rpc (#20689) (#20693)
|
||||
* Send correct NuGet status codes (#20647) (#20677)
|
||||
* Use correct context to get package content (#20673) (#20676)
|
||||
* Fix the JS error "EventSource is not defined" caused by some non-standard browsers (#20584) (#20663)
|
||||
* Add default commit messages to PR for squash merge (#20618) (#20645)
|
||||
* Fix package upload for files >32mb (#20622) (#20635)
|
||||
* Fix the new-line copy-paste for rendered code (#20612)
|
||||
* Clean up and fix clone button script (#20415 & #20600) (#20599)
|
||||
* Fix default merge style (#20564) (#20565)
|
||||
* Add repository condition for issue count (#20454) (#20496)
|
||||
* Make branch icon stand out more (#20726) (#20774)
|
||||
* Fix loading button with invalid form (#20754) (#20759)
|
||||
* Fix SecToTime edge-cases (#20610) (#20611)
|
||||
* Executable check always returns true for windows (#20637) (#20835)
|
||||
* Check issue labels slice length before calling xorm Insert (#20655) (#20836)
|
||||
* Fix owners cannot create organization repos bug (#20841) (#20854)
|
||||
* Prevent 500 is head repo does not have PullRequest unit in IsUserAllowedToUpdate (#20839) (#20848)
|
||||
|
||||
[1.24.2]
|
||||
* Update Gitea to 1.17.2
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.17.2)
|
||||
* Double check CloneURL is acceptable (#20869) (#20892)
|
||||
* Add more checks in migration code (#21011) (#21050)
|
||||
* Fix hard-coded timeout and error panic in API archive download endpoint (#20925) (#21051)
|
||||
* Improve arc-green code theme (#21039) (#21042)
|
||||
* Enable contenthash in filename for dynamic assets (#20813) (#20932)
|
||||
* Don't open new page for ext wiki on same repository (#20725) (#20910)
|
||||
* Disable doctor logging on panic (#20847) (#20898)
|
||||
* Remove calls to load Mirrors in user.Dashboard (#20855) (#20897)
|
||||
* Update codemirror to 5.65.8 (#20875)
|
||||
* Rework repo buttons (#20602, #20718) (#20719)
|
||||
* Ensure delete user deletes all comments (#21067) (#21068)
|
||||
* Delete unreferenced packages when deleting a package version (#20977) (#21060)
|
||||
* Redirect if user does not exist on admin pages (#20981) (#21059)
|
||||
* Set uploadpack.allowFilter etc on gitea serv to enable partial clones with ssh (#20902) (#21058)
|
||||
* Fix 500 on time in timeline API (#21052) (#21057)
|
||||
* Fill the specified ref in webhook test payload (#20961) (#21055)
|
||||
* Add another index for Action table on postgres (#21033) (#21054)
|
||||
* Fix broken insecureskipverify handling in redis connection uris (#20967) (#21053)
|
||||
* Add Dev, Peer and Optional dependencies to npm PackageMetadataVersion (#21017) (#21044)
|
||||
* Do not add links to Posters or Assignees with ID < 0 (#20577) (#21037)
|
||||
* Fix modified due date message (#20388) (#21032)
|
||||
* Fix missed sort bug (#21006)
|
||||
* Fix input.value attr for RequiredClaimName/Value (#20946) (#21001)
|
||||
* Change review buttons to icons to make space for text (#20934) (#20978)
|
||||
* Fix download archiver of a commit (#20962) (#20971)
|
||||
* Return 404 NotFound if requested attachment does not exist (#20886) (#20941)
|
||||
* Set no-tags in git fetch on compare (#20893) (#20936)
|
||||
* Allow multiple metadata files for Maven packages (#20674) (#20916)
|
||||
* Increase Content field size of gpg_key and public_key to MEDIUMTEXT (#20896) (#20911)
|
||||
* Fix mirror address setting not working (#20850) (#20904)
|
||||
* Fix push mirror address backend get error Address cause setting page display error (#20593) (#20901)
|
||||
* Fix panic when an invalid oauth2 name is passed (#20820) (#20900)
|
||||
* In PushMirrorsIterate and MirrorsIterate if limit is negative do not set it (#20837) (#20899)
|
||||
* Ensure that graceful start-up is informed of unused SSH listener (#20877) (#20888)
|
||||
* Pad GPG Key ID with preceding zeroes (#20878) (#20885)
|
||||
* Fix SQL Query for SearchTeam (#20844) (#20872)
|
||||
* Fix the mode of custom dir to 0700 in docker-rootless (#20861) (#20867)
|
||||
* Fix UI mis-align for PR commit history (#20845) (#20859)
|
||||
|
||||
[1.24.3]
|
||||
* Update Gitea to 1.17.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.17.3)
|
||||
* SECURITY
|
||||
* Sanitize and Escape refs in git backend (#21464) (#21463)
|
||||
* Bump golang.org/x/text (#21412) (#21413)
|
||||
* Update bluemonday (#21281) (#21287)
|
||||
* ENHANCEMENTS
|
||||
* Fix empty container layer history and UI (#21251) (#21278)
|
||||
* Use en-US as fallback when using other default language (#21200) (#21256)
|
||||
* Make the vscode clone link respect transport protocol (#20557) (#21128)
|
||||
|
||||
[1.24.4]
|
||||
* Make email display name configurable
|
||||
|
||||
[1.24.5]
|
||||
* Support autosigning via gnupg
|
||||
|
||||
[1.25.0]
|
||||
* Update Gitea to 1.17.4
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.17.4)
|
||||
* Do not allow Ghost access to limited visible user/org (#21849) (#21875)
|
||||
* Fix package access for admins and inactive users (#21580) (#21592)
|
||||
* Fix button in branch list, avoid unexpected page jump before restore branch actually done (#21562) (#21927)
|
||||
* Fix vertical align of committer avatar rendered by email address (#21884) (#21919)
|
||||
* Fix setting HTTP headers after write (#21833) (#21874)
|
||||
* Ignore line anchor links with leading zeroes (#21728) (#21777)
|
||||
* Enable Monaco automaticLayout (#21516)
|
||||
|
||||
[1.25.1]
|
||||
* Trust reverse proxy IP
|
||||
|
||||
[1.26.0]
|
||||
* Update Gitea to 1.18.0
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.18.0)
|
||||
* Remove ReverseProxy authentication from the API (#22219) (#22251)
|
||||
* Support Go Vulnerability Management (#21139)
|
||||
* Forbid HTML string tooltips (#20935)
|
||||
* Rework mailer settings (#18982)
|
||||
* Remove U2F support (#20141)
|
||||
* Refactor i18n to locale (#20153)
|
||||
* Enable contenthash in filename for dynamic assets (#20813)
|
||||
* And a lot more enhancements
|
||||
|
||||
[1.26.1]
|
||||
* Update Gitea to 1.18.1
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.18.1)
|
||||
* Update github.com/zeripath/zapx/v15 (#22485)
|
||||
* Fix pull request API field closed_at always being null (#22482) (#22483)
|
||||
* Fix container blob mount (#22226) (#22476)
|
||||
* Fix error when calculating repository size (#22392) (#22474)
|
||||
* Fix Operator does not exist bug on explore page with ONLY_SHOW_RELEVANT_REPOS (#22454) (#22472)
|
||||
* Fix environments for KaTeX and error reporting (#22453) (#22473)
|
||||
* Remove the netgo tag for Windows build (#22467) (#22468)
|
||||
* Fix migration from GitBucket (#22477) (#22465)
|
||||
* Prevent panic on looking at api "git" endpoints for empty repos (#22457) (#22458)
|
||||
* Fix PR status layout on mobile (#21547) (#22441)
|
||||
* Fix wechatwork webhook sends empty content in PR review (#21762) (#22440)
|
||||
* Remove duplicate "Actions" label in mobile view (#21974) (#22439)
|
||||
* Fix leaving organization bug on user settings -> orgs (#21983) (#22438)
|
||||
* Fixed colour transparency regex matching in project board sorting (#22092) (#22437)
|
||||
* Correctly handle select on multiple channels in Queues (#22146) (#22428)
|
||||
* Prepend refs/heads/ to issue template refs (#20461) (#22427)
|
||||
* Restore function to "Show more" buttons (#22399) (#22426)
|
||||
* Continue GCing other repos on error in one repo (#22422) (#22425)
|
||||
* Allow HOST has no port (#22280) (#22409)
|
||||
* Fix omit `avatar_url` in discord payload when empty (#22393) (#22394)
|
||||
* Don't display stop watch top bar icon when disabled and hidden when click other place (#22374) (#22387)
|
||||
* Don't lookup mail server when using sendmail (#22300) (#22383)
|
||||
* Fix gravatar disable bug (#22337)
|
||||
* Fix update settings table on install (#22326) (#22327)
|
||||
* Fix sitemap (#22272) (#22320)
|
||||
* Fix code search title translation (#22285) (#22316)
|
||||
* Fix due date rendering the wrong date in issue (#22302) (#22306)
|
||||
* Fix get system setting bug when enabled redis cache (#22298)
|
||||
* Fix bug of DisableGravatar default value (#22297)
|
||||
* Fix key signature error page (#22229) (#22230)
|
||||
|
||||
[1.26.2]
|
||||
* Update Gitea to 1.18.2
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.18.2)
|
||||
* When updating by rebase we need to set the environment for head repo (#22535) (#22536)
|
||||
* Fix issue not auto-closing when it includes a reference to a branch (#22514) (#22521)
|
||||
* Fix invalid issue branch reference if not specified in template (#22513) (#22520)
|
||||
* Fix 500 error viewing pull request when fork has pull requests disabled (#22512) (#22515)
|
||||
* Reliable selection of admin user (#22509) (#22511)
|
||||
* Set `disable_gravatar`/`enable_federated_avatar` when offline mode is true (#22479) (#22496)
|
||||
|
||||
[1.26.3]
|
||||
* Update Gitea to 1.18.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.18.3)
|
||||
* Prevent multiple To recipients (#22566) (#22569)
|
||||
* Truncate commit summary on repo files table. (#22551) (#22552)
|
||||
* Mute all links in issue timeline (#22534)
|
||||
|
||||
[1.26.4]
|
||||
* Update Gitea to 1.18.4
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.18.4)
|
||||
* SECURITY
|
||||
* Provide the ability to set password hash algorithm parameters (#22942) (#22943)
|
||||
* Add command to bulk set must-change-password (#22823) (#22928)
|
||||
* ENHANCEMENTS
|
||||
* Use import of OCI structs (#22765) (#22805)
|
||||
* Fix color of tertiary button on dark theme (#22739) (#22744)
|
||||
* Link issue and pull requests status change in UI notifications directly to their event in the timelined view. (#22627) (#22642)
|
||||
* BUGFIXES
|
||||
* Notify on container image create (#22806) (#22965)
|
||||
* Fix blame view missing lines (#22826) (#22929)
|
||||
* Fix incorrect role labels for migrated issues and comments (#22914) (#22923)
|
||||
* Fix PR file tree folders no longer collapsing (#22864) (#22872)
|
||||
* Escape filename when assemble URL (#22850) (#22871)
|
||||
|
||||
[1.27.0]
|
||||
* Email display name support
|
||||
|
||||
[1.27.1]
|
||||
* Update Gitea to 1.18.5
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.18.5)
|
||||
* Hide 2FA status from other members in organization members list (#22999) (#23023)
|
||||
* Add `force_merge` to merge request and fix checking mergable (#23010) (#23032)
|
||||
* Use --message=%s for git commit message (#23028) (#23029)
|
||||
* Render access log template as text instead of HTML (#23013) (#23025)
|
||||
* Fix the Manually Merged form (#23015) (#23017)
|
||||
|
||||
[1.28.0]
|
||||
* Update Gitea to 1.19.0
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.19.0)
|
||||
|
||||
[1.28.1]
|
||||
* Update Gitea to 1.19.1
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.19.1)
|
||||
* Breaking: Rename actions unit to repo.actions and add docs for it (#23733) (#23881)
|
||||
* Add card type to org/user level project on creation, edit and view (#24043) (#24066)
|
||||
* Refactor commit status for Actions jobs (#23786) (#24060)
|
||||
* Show errors for KaTeX and mermaid on the preview tab (#24009) (#24019)
|
||||
* Show protected branch rule names again (#23907) (#24018)
|
||||
* Adjust sticky PR header to cover background (#23956) (#23999)
|
||||
* Discolor pull request tab labels (#23950) (#23987)
|
||||
* Treat PRs with agit flow as fork PRs when triggering actions. (#23884) (#23967)
|
||||
* Left-align review comments (#23937)
|
||||
|
||||
[1.28.2]
|
||||
* Update Gitea to 1.19.2
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.19.2)
|
||||
* Require repo scope for PATs for private repos and basic authentication (#24362) (#24364)
|
||||
* Only delete secrets belonging to its owner (#24284) (#24286)
|
||||
* Fix typo in API route (#24310) (#24332)
|
||||
* Fix access token issue on some public endpoints (#24194) (#24259)
|
||||
* Fix broken clone script on an empty archived repo (#24339) (#24348)
|
||||
* Fix Monaco IOS keyboard button (#24341) (#24347)
|
||||
* Don't set meta theme-color by default (#24340) (#24346)
|
||||
|
||||
[1.28.3]
|
||||
* Update Gitea to 1.19.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.19.3)
|
||||
* Use golang 1.20.4 to fix CVE-2023-24539, CVE-2023-24540, and CVE-2023-29400
|
||||
* Enable whitespace rendering on selection in Monaco (#24444) (#24485)
|
||||
* Improve milestone filter on issues page (#22423) (#24440)
|
||||
* Fix api error message if fork exists (#24487) (#24493)
|
||||
* Fix user-cards format (#24428) (#24431)
|
||||
|
||||
[1.28.4]
|
||||
* Update Gitea to 1.19.4
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.19.4)
|
||||
* Fix open redirect check for more cases (#25143) (#25155)
|
||||
* Return 404 in the API if the requested webhooks were not found (#24823) (#24830)
|
||||
* Fix organization field being null in GET /api/v1/teams/{id} (#24694) (#24696)
|
||||
* Set --font-weight-bold to 600 (#24840)
|
||||
* Make mailer SMTP check have timed context (#24751) (#24759)
|
||||
* Do not select line numbers when selecting text from the action run logs (#24594) (#24596)
|
||||
|
||||
[1.29.0]
|
||||
* Update Gitea to 1.20.0
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.0)
|
||||
* [Blog](https://blog.gitea.com/release-of-1.20.0/)
|
||||
* Add button on diff header to copy file name, misc diff header tweaks (#24986)
|
||||
* API endpoint for changing/creating/deleting multiple files (#24887)
|
||||
* Support changing git config through app.ini, use diff.algorithm=histogram by default (#24860)
|
||||
* Add up and down arrows to selected lookup repositories (#24727)
|
||||
* Add Go package registry (#24687)
|
||||
* Add status indicator on main home screen for each repo (#24638)
|
||||
* Support for status check pattern (#24633)
|
||||
|
||||
[1.29.1]
|
||||
* Update Gitea to 1.20.1
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.1)
|
||||
* Disallow dangerous URL schemes (#25960) (#25964)
|
||||
* Show the mismatched ROOT_URL warning on the sign-in page if OAuth2 is enabled (#25947) (#25972)
|
||||
* Make pending commit status yellow again (#25935) (#25968)
|
||||
* Fix version in rpm repodata/primary.xml.gz (#26009) (#26048)
|
||||
* Fix env config parsing for "GITEA____APP_NAME" (#26001) (#26013)
|
||||
* ParseScope with owner/repo always sets owner to zero (#25987) (#25989)
|
||||
* Fix SSPI auth panic (#25955) (#25969)
|
||||
* Avoid creating directories when loading config (#25944) (#25957)
|
||||
* Make environment-to-ini work with INSTALL_LOCK=true (#25926) (#25937)
|
||||
* Ignore `runs-on` with expressions when warning no matched runners (#25917) (#25933)
|
||||
* Avoid opening/closing PRs which are already merged (#25883) (#25903)
|
||||
* RPM Registry: Show zypper commands for SUSE based distros as well (#25981) (#26020)
|
||||
* Correctly refer to dev tags as nightly in the docker docs (#26004) (#26019)
|
||||
* Update path related documents (#25417) (#25982)
|
||||
* Adding remaining enum for migration repo model type. (#26021) (#26034)
|
||||
* Fix the route for pull-request's authors (#26016) (#26018)
|
||||
* Fix commit status color on dashboard repolist (#25993) (#25998)
|
||||
* Avoid hard-coding height in language dropdown menu (#25986) (#25997)
|
||||
* Add shutting down notice (#25920) (#25922)
|
||||
* Fix incorrect milestone count when provide a keyword (#25880) (#25904)
|
||||
|
||||
[1.29.2]
|
||||
* Update Gitea to 1.20.2
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.2)
|
||||
* Calculate `MAX_WORKERS` default value by CPU number (#26177) (#26183)
|
||||
* Display deprecated warning in admin panel pages as well as in the log file (#26094) (#26154)
|
||||
|
||||
[1.29.3]
|
||||
* Update Gitea to 1.20.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.3)
|
||||
* Fix the wrong derive path (#26271) (#26318)
|
||||
* Fix API leaking Usermail if not logged in (#25097) (#26350)
|
||||
* Add ThreadID parameter for Telegram webhooks (#25996) (#26480)
|
||||
* Add minimum polyfill to support "relative-time-element" in PaleMoon (#26575) (#26578)
|
||||
* Fix dark theme highlight for "NameNamespace" (#26519) (#26527)
|
||||
* Detect ogg mime-type as audio or video (#26494) (#26505)
|
||||
* Use object-fit: contain for oauth2 custom icons (#26493) (#26498)
|
||||
* Move dropzone progress bar to bottom to show filename when uploading (#26492) (#26497)
|
||||
* Remove last newline from config file (#26468) (#26471)
|
||||
* Minio: add missing region on client initialization (#26412) (#26438)
|
||||
* Add pull request review request webhook event (#26401) (#26407)
|
||||
* Fix text truncate (#26354) (#26384)
|
||||
* Fix incorrect color of selected assignees when create issue (#26324) (#26372)
|
||||
* Display human-readable text instead of cryptic filemodes (#26352) (#26358)
|
||||
* Hide last indexed SHA when a repo could not be indexed yet (#26340) (#26345)
|
||||
* Fix the topic validation rule and suport dots (#26286) (#26303)
|
||||
* Fix due date rendering the wrong date in issue (#26268) (#26274)
|
||||
* Don't autosize textarea in diff view (#26233) (#26244)
|
||||
* Fix commit compare style (#26209) (#26226)
|
||||
* Warn instead of reporting an error when a webhook cannot be found (#26039) (#26211)
|
||||
* Use "input" event instead of "keyup" event for migration form (#26602) (#26605)
|
||||
* Do not use deprecated log config options by default (#26592) (#26600)
|
||||
* Fix "issueReposQueryPattern does not match query" (#26556) (#26564)
|
||||
* Sync repo's IsEmpty status correctly (#26517) (#26560)
|
||||
* Fix project filter bugs (#26490) (#26558)
|
||||
* Use hidden over clip for text truncation (#26520) (#26522)
|
||||
* Set "type=button" for editor's toolbar buttons (#26510) (#26518)
|
||||
* Fix NuGet search endpoints (#25613) (#26499)
|
||||
* Fix storage path logic especially for relative paths (#26441) (#26481)
|
||||
* Close stdout correctly for "git blame" (#26470) (#26473)
|
||||
* Check first if minio bucket exists before trying to create it (#26420) (#26465)
|
||||
* Avoiding accessing undefined tributeValues #26461 (#26462)
|
||||
* Call git.InitSimple for runRepoSyncReleases (#26396) (#26450)
|
||||
* Add transaction when creating pull request created dirty data (#26259) (#26437)
|
||||
* Fix wrong middleware sequence (#26428) (#26436)
|
||||
* Fix admin queue page title and fix CI failures (#26409) (#26421)
|
||||
* Introduce ctx.PathParamRaw to avoid incorrect unescaping (#26392) (#26405)
|
||||
* Bypass MariaDB performance bug of the "IN" sub-query, fix incorrect IssueIndex (#26279) (#26368)
|
||||
* Fix incorrect CLI exit code and duplicate error message (#26346) (#26347)
|
||||
* Prevent newline errors with Debian packages (#26332) (#26342)
|
||||
* Fix bug with sqlite load read (#26305) (#26339)
|
||||
* Make git batch operations use parent context timeout instead of default timeout (#26325) (#26330)
|
||||
* Support getting changed files when commit ID is EmptySHA (#26290) (#26316)
|
||||
* Clarify the logger's MODE config option (#26267) (#26281)
|
||||
* Use shared template for webhook icons (#26242) (#26246)
|
||||
* Fix pull request check list is limited (#26179) (#26245)
|
||||
* Fix attachment clipboard copy on insecure origin (#26224) (#26231)
|
||||
* Fix access check for org-level project (#26182) (#26223)
|
||||
* Improve profile readme rendering (#25988) (#26453)
|
||||
* [docs] Add missing backtick in quickstart.zh-cn.md (#26349) (#26357)
|
||||
* Upgrade x/net to 0.13.0 (#26301)
|
||||
|
||||
[1.29.4]
|
||||
* Update Gitea to 1.20.4
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.4)
|
||||
* Check blocklist for emails when adding them to account (#26812) (#26831)
|
||||
* Add branch_filter to hooks API endpoints (#26599) (#26632)
|
||||
* Fix incorrect "tabindex" attributes (#26733) (#26734)
|
||||
* Use line-height: normal by default (#26635) (#26708)
|
||||
* Fix unable to display individual-level project (#26198) (#26636)
|
||||
* Fix wrong review requested number (#26784) (#26880)
|
||||
* Avoid double-unescaping of form value (#26853) (#26863)
|
||||
* Redirect from {repo}/issues/new to {repo}/issues/new/choose when blank issues are disabled (#26813) (#26847)
|
||||
* Sync tags when adopting repos (#26816) (#26834)
|
||||
* Fix verifyCommits error when push a new branch (#26664) (#26810)
|
||||
* Include the GITHUB_TOKEN/GITEA_TOKEN secret for fork pull requests (#26759) (#26806)
|
||||
* Fix some slice append usages (#26778) (#26798)
|
||||
* Add fix incorrect can_create_org_repo for org owner team (#26683) (#26791)
|
||||
* Fix bug for ctx usage (#26763)
|
||||
* Make issue template field template access correct template data (#26698) (#26709)
|
||||
* Use correct minio error (#26634) (#26639)
|
||||
* Ignore the trailing slashes when comparing oauth2 redirect_uri (#26597) (#26618)
|
||||
* Set errwriter for urfave/cli v1 (#26616)
|
||||
* Fix reopen logic for agit flow pull request (#26399) (#26613)
|
||||
* Fix context filter has no effect in dashboard (#26695) (#26811)
|
||||
* Fix being unable to use a repo that prohibits accepting PRs as a PR source. (#26785) (#26790)
|
||||
* Fix Page Not Found error (#26768)
|
||||
|
||||
[1.30.0]
|
||||
* Implement OIDC auth
|
||||
|
||||
[1.30.1]
|
||||
* Update Gitea to 1.20.5
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.20.5)
|
||||
* Fix z-index on markdown completion (#27237) (#27242 & #27238)
|
||||
* Use secure cookie for HTTPS sites (#26999) (#27013)
|
||||
* Fix git 2.11 error when checking IsEmpty (#27393) (#27396)
|
||||
* Allow get release download files and lfs files with oauth2 token format (#26430) (#27378)
|
||||
* Fix orphan check for deleted branch (#27310) (#27320)
|
||||
* Quote table release in sql queries (#27205) (#27219)
|
||||
* Fix release URL in webhooks (#27182) (#27184)
|
||||
* Fix successful return value for SyncAndGetUserSpecificDiff (#27152) (#27156)
|
||||
* fix pagination for followers and following (#27127) (#27138)
|
||||
* Fix issue templates when blank isses are disabled (#27061) (#27082)
|
||||
* Fix context cache bug & enable context cache for dashabord commits' authors(#26991) (#27017)
|
||||
* Fix INI parsing for value with trailing slash (#26995) (#27001)
|
||||
* Fix PushEvent NullPointerException jenkinsci/github-plugin (#27203) (#27249)
|
||||
* Fix organization field being null in POST /orgs/{orgid}/teams (#27150) (#27167 & #27162)
|
||||
* Fix bug of review request number (#27406) (#27104)
|
||||
|
||||
[1.31.0]
|
||||
* Update base image to 4.2.0
|
||||
|
||||
[1.32.0]
|
||||
* Update Gitea to 1.21.0
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.0)
|
||||
|
||||
[1.32.1]
|
||||
* Update Gitea to 1.21.1
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.1)
|
||||
|
||||
[1.32.2]
|
||||
* Update Gitea to 1.21.2
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.2)
|
||||
* Rebuild with recently released golang version
|
||||
* Fix missing check (#28406) (#28411)
|
||||
* Do some missing checks (#28423) (#28432)
|
||||
* Fix margin in server signed signature verification view (#28379) (#28381)
|
||||
* Fix object does not exist error when checking citation file (#28314) (#28369)
|
||||
* Use filepath instead of path to create SQLite3 database file (#28374) (#28378)
|
||||
* Fix the runs will not be displayed bug when the main branch have no workflows but other branches have (#28359) (#28365)
|
||||
* Handle repository.size column being NULL in migration v263 (#28336) (#28363)
|
||||
* Convert git commit summary to valid UTF8. (#28356) (#28358)
|
||||
* Fix migration panic due to an empty review comment diff (#28334) (#28362)
|
||||
* Add HEAD support for rpm repo files (#28309) (#28360)
|
||||
* Fix RPM/Debian signature key creation (#28352) (#28353)
|
||||
* Keep profile tab when clicking on Language (#28320) (#28331)
|
||||
* Fix missing issue search index update when changing status (#28325) (#28330)
|
||||
* Fix wrong link in protect_branch_name_pattern_desc (#28313) (#28315)
|
||||
* Read previous info from git blame (#28306) (#28310)
|
||||
* Ignore "non-existing" errors when getDirectorySize calculates the size (#28276) (#28285)
|
||||
* Use appSubUrl for OAuth2 callback URL tip (#28266) (#28275)
|
||||
* Meilisearch: require all query terms to be matched (#28293) (#28296)
|
||||
* Fix required error for token name (#28267) (#28284)
|
||||
* Fix issue will be detected as pull request when checking First-time contributor (#28237) (#28271)
|
||||
* Use full width for project boards (#28225) (#28245)
|
||||
* Increase "version" when update the setting value to a same value as before (#28243) (#28244)
|
||||
* Also sync DB branches on push if necessary (#28361) (#28403)
|
||||
* Make gogit Repository.GetBranchNames consistent (#28348) (#28386)
|
||||
* Recover from panic in cron task (#28409) (#28425)
|
||||
* Deprecate query string auth tokens (#28390) (#28430)
|
||||
* Improve doctor cli behavior (#28422) (#28424)
|
||||
* Fix margin in server signed signature verification view (#28379) (#28381)
|
||||
* Refactor template empty checks (#28351) (#28354)
|
||||
* Read previous info from git blame (#28306) (#28310)
|
||||
* Use full width for project boards (#28225) (#28245)
|
||||
* Enable system users search via the API (#28013) (#28018)
|
||||
|
||||
[1.32.3]
|
||||
* Update Gitea to 1.21.3
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.3)
|
||||
* Update golang.org/x/crypto (#28519)
|
||||
* chore(api): support ignore password if login source type is LDAP for creating user API (#28491) (#28525)
|
||||
* Add endpoint for not implemented Docker auth (#28457) (#28462)
|
||||
* Add option to disable ambiguous unicode characters detection (#28454) (#28499)
|
||||
* Refactor SSH clone URL generation code (#28421) (#28480)
|
||||
* Polyfill SubmitEvent for PaleMoon (#28441) (#28478)
|
||||
* Fix the issue ref rendering for wiki (#28556) (#28559)
|
||||
* Fix duplicate ID when deleting repo (#28520) (#28528)
|
||||
* Only check online runner when detecting matching runners in workflows (#28286) (#28512)
|
||||
* Initalize stroage for orphaned repository doctor (#28487) (#28490)
|
||||
* Fix possible nil pointer access (#28428) (#28440)
|
||||
* Don't show unnecessary citation JS error on UI (#28433) (#28437)
|
||||
* Fix inperformant query on retrifing review from database. (#28552) (#28562)
|
||||
* Improve the prompt for "ssh-keygen sign" (#28509) (#28510)
|
||||
* Update docs for DISABLE_QUERY_AUTH_TOKEN (#28485) (#28488)
|
||||
* Fix Chinese translation of config cheat sheet[API] (#28472) (#28473)
|
||||
* Retry SSH key verification with additional CRLF if it failed (#28392) (#28464)
|
||||
|
||||
[1.32.4]
|
||||
* Update Gitea to 1.21.4
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.4)
|
||||
* Update github.com/cloudflare/circl (#28789) (#28790)
|
||||
* Require token for GET subscription endpoint (#28765) (#28768)
|
||||
* Use refname:strip-2 instead of refname:short when syncing tags (#28797) (#28811)
|
||||
* Fix links in issue card (#28806) (#28807)
|
||||
* Fix nil pointer panic when exec some gitea cli command (#28791) (#28795)
|
||||
* Require token for GET subscription endpoint (#28765) (#28778)
|
||||
* Fix button size in "attached header right" (#28770) (#28774)
|
||||
* Fix convert.ToTeams on empty input (#28426) (#28767)
|
||||
* Hide code related setting options in repository when code unit is disabled (#28631) (#28749)
|
||||
|
||||
[1.32.5]
|
||||
* Update Gitea to 1.21.5
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.5)
|
||||
* Prevent anonymous container access if RequireSignInView is enabled (#28877) (#28882)
|
||||
* Update go dependencies and fix go-git (#28893) (#28934)
|
||||
* Revert "Speed up loading the dashboard on mysql/mariadb (#28546)" (#29006) (#29007)
|
||||
* Fix an actions schedule bug (#28942) (#28999)
|
||||
* Fix update enable_prune even if mirror_interval is not provided (#28905) (#28929)
|
||||
* Fix uploaded artifacts should be overwritten (#28726) backport v1.21 (#28832)
|
||||
* Preserve BOM in web editor (#28935) (#28959)
|
||||
* Strip / from relative links (#28932) (#28952)
|
||||
* Don't remove all mirror repository's releases when mirroring (#28817) (#28939)
|
||||
* Implement MigrateRepository for the actions notifier (#28920) (#28923)
|
||||
* Respect branch info for relative links (#28909) (#28922)
|
||||
* Don't reload timeline page when (un)resolving or replying conversation (#28654) (#28917)
|
||||
* Only migrate the first 255 chars of a Github issue title (#28902) (#28912)
|
||||
* Fix sort bug on repository issues list (#28897) (#28901)
|
||||
* Fix DeleteCollaboration transaction behaviour (#28886) (#28889)
|
||||
* Fix schedule not trigger bug because matching full ref name with short ref name (#28874) (#28888)
|
||||
* Fix migrate storage bug (#28830) (#28867)
|
||||
* Fix archive creating LFS hooks and breaking pull requests (#28848) (#28851)
|
||||
* Fix reverting a merge commit failing (#28794) (#28825)
|
||||
* Upgrade xorm to v1.3.7 to fix a resource leak problem caused by Iterate (#28891) (#28895)
|
||||
* Fix incorrect PostgreSQL connection string for Unix sockets (#28865) (#28870)
|
||||
|
||||
[1.32.6]
|
||||
* Update Gitea to 1.21.7
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.7)
|
||||
* Fix XSS vulnerabilities (#29336)
|
||||
* Use general token signing secret (#29205) (#29325)
|
||||
* Refactor issue template parsing and fix API endpoint (#29069) (#29140)
|
||||
* Fix swift packages not resolving (#29095) (#29102)
|
||||
* Refactor git version functions and check compatibility (#29155) (#29157)
|
||||
* Improve user experience for outdated comments (#29050) (#29086)
|
||||
* Hide code links on release page if user cannot read code (#29064) (#29066)
|
||||
* Wrap contained tags and branches again (#29021) (#29026)
|
||||
* Fix incorrect button CSS usages (#29015) (#29023)
|
||||
* Strip trailing newline in markdown code copy (#29019) (#29022)
|
||||
* Remove SSH workaround (#27893) (#29332)
|
||||
* Only log error when tag sync fails (#29295) (#29327)
|
||||
* Fix SSPI user creation (#28948) (#29323)
|
||||
* Improve the issue_comment workflow trigger event (#29277) (#29322)
|
||||
* Discard unread data of git cat-file (#29297) (#29310)
|
||||
* Fix error display when merging PRs (#29288) (#29309)
|
||||
* Prevent double use of git cat-file session. (#29298) (#29301)
|
||||
* Fix missing link on outgoing new release notifications (#29079) (#29300)
|
||||
* Fix debian InRelease Acquire-By-Hash newline (#29204) (#29299)
|
||||
* Always write proc-receive hook for all git versions (#29287) (#29291)
|
||||
* Do not show delete button when time tracker is disabled (#29257) (#29279)
|
||||
* Workaround to clean up old reviews on creating a new one (#28554) (#29264)
|
||||
* Fix bug when the linked account was disactived and list the linked accounts (#29263)
|
||||
* Do not use lower tag names to find releases/tags (#29261) (#29262)
|
||||
* Fix missed edit issues event for actions (#29237) (#29251)
|
||||
* Only delete scheduled workflows when needed (#29091) (#29235)
|
||||
* Make submit event code work with both jQuery event and native event (#29223) (#29234)
|
||||
* Fix push to create with capitalize repo name (#29090) (#29206)
|
||||
* Use ghost user if user was not found (#29161) (#29169)
|
||||
* Dont load Review if Comment is CommentTypeReviewRequest (#28551) (#29160)
|
||||
* Refactor parseSignatureFromCommitLine (#29054) (#29108)
|
||||
* Avoid showing unnecessary JS errors when there are elements with different origin on the page (#29081) (#29089)
|
||||
* Fix gitea-origin-url with default ports (#29085) (#29088)
|
||||
* Fix orgmode link resolving (#29024) (#29076)
|
||||
* Fix: Elasticsearch: Request Entity Too Large #28117 (#29062) (#29075)
|
||||
* Do not render empty comments (#29039) (#29049)
|
||||
* Avoid sending update/delete release notice when it is draft (#29008) (#29025)
|
||||
|
||||
[1.32.7]
|
||||
* Update Gitea to 1.21.8
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.8)
|
||||
* Only use supported sort orders for "/explore/users" page (#29430) (#29443)
|
||||
* Fix wrong line number in code search result (#29260) (#29623)
|
||||
* Use Get but not Post to get actions artifacts (#29734) (#29737)
|
||||
* Fix inconsistent rendering of block mathematical expressions (#29677) (#29711)
|
||||
* Fix rendering internal file links in org (#29669) (#29705)
|
||||
* Don't show AbortErrors on logout (#29639) (#29667)
|
||||
* Fix user-defined markup links targets (#29305) (#29666)
|
||||
* Fix incorrect rendering csv file when file size is larger than UI.CSV.MaxFileSize (#29653) (#29663)
|
||||
* Fix hidden test's failure (#29254) (#29662)
|
||||
|
||||
[1.32.8]
|
||||
* Update Gitea to 1.21.9
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.9)
|
||||
* Only do counting when count_only=true for repo dashboard (#29884) (#29905)
|
||||
* Add cache for dashboard commit status (#29932)
|
||||
* Make runs-on support variable expression (#29468) (#29782)
|
||||
* Show Actions post step when it's running (#29926) (#29928)
|
||||
* Fix PR creation via API between branches of the same repo with head field namespaced (#26986) (#29857)
|
||||
* Fix and rewrite markup anchor processing (#29931) (#29946)
|
||||
* Notify reviewers added via CODEOWNERS (#29842) (#29902)
|
||||
* Fix template error when comment review doesn't exist (#29888) (#29889)
|
||||
* Fix user id column case (#29863) (#29867)
|
||||
* Make meilisearch do exact search for issues (#29740 & #29671) (#29846)
|
||||
* Fix the for attribute not pointing to the ID of the color picker (#29813) (#29815)
|
||||
* Fix codeowner detected diff base branch to mergebase (#29783) (#29807)
|
||||
* Fix Safari spinner rendering (#29801) (#29802)
|
||||
* Fix missing translation on milestones (#29785) (#29789)
|
||||
* Fix user router possible panic (#29751) (#29786)
|
||||
* Fix possible NPE in ToPullReviewList (#29759) (#29775)
|
||||
* Fix the wrong default value of ENABLE_OPENID_SIGNIN on docs (#29925) (#29927)
|
||||
* Solving the issue of UI disruption when the review is deleted without refreshing (#29951) (#29968)
|
||||
* Fix loadOneBranch panic (#29938) (#29939)
|
||||
* Fix invalid link of the commit status when ref is tagged (#29752) (#29908)
|
||||
* Editor error message misleading due to re-used key. (#29859) (#29876)
|
||||
* Fix double border and border-radius on empty action steps (#29845) (#29850)
|
||||
* Use Temporal.PlainDate for absolute dates (#29804) (#29808)
|
||||
* Fix incorrect package link method calls in templates (#29580) (#29764)
|
||||
* Fix the bug that the user may log out if GetUserByID returns unknown error (#29962) (#29964)
|
||||
* Performance improvements for pull request list page (#29900) (#29972)
|
||||
* Fix bugs in rerunning jobs (#29983) (#29955)
|
||||
|
||||
[1.32.9]
|
||||
* Update Gitea to 1.21.10
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.10)
|
||||
* Fix Add/Remove WIP on pull request title failure (#29999) (#30066)
|
||||
* Fix misuse of TxContext (#30061) (#30062)
|
||||
* Respect DEFAULT_ORG_MEMBER_VISIBLE setting when adding creator to org (#30013) (#30035)
|
||||
* Escape paths for find file correctly (#30026) (#30031)
|
||||
* Remove duplicate option in admin screen and now-unused translation keys (#28492) (#30024)
|
||||
* Fix manual merge form and 404 page templates (#30000)
|
||||
|
||||
[1.32.10]
|
||||
* Update Gitea to 1.21.11
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.21.11)
|
||||
* Use go1.21.9 to include Golang security fix
|
||||
* Fix possible renderer security problem (#30136) (#30315)
|
||||
* Fix close file in the Upload func (#30262) (#30269)
|
||||
* Fix inline math blocks can't be preceeded/followed by alphanumerical characters (#30175) (#30250)
|
||||
* Fix missing 0 prefix of GPG key id (#30245) (#30247)
|
||||
* Include encoding in signature payload (#30174) (#30181)
|
||||
* Move from max( id ) to max( index ) for latest commit statuses (#30076) (#30155)
|
||||
* Load attachments for code comments (#30124) (#30126)
|
||||
* Fix gitea doctor will remove repo-avatar files when executing command storage-archives (#30094) (#30120)
|
||||
* Fix possible data race on tests (#30093) (#30108)
|
||||
* Performance optimization for git push (#30104)
|
||||
* Fix duplicate migrated milestones (#30102) (#30105)
|
||||
* Fix panic for fixBrokenRepoUnits16961 (#30068) (#30100)
|
||||
* Fix incorrect SVGs (#30087)
|
||||
* Fix create commit status (#30225) (#30340)
|
||||
* Performance optimization for git push (#30104) (#30354)
|
||||
* Fix misuse of unsupported global variables (#30402)
|
||||
* Fix to delete the cookie when AppSubURL is non-empty (#30375) (#30468)
|
||||
* Avoid user does not exist error when detecting schedule actions when the commit author is an external user (#30357) (#30408)
|
||||
* Change the default maxPerPage for gitbucket (#30392) (#30471)
|
||||
* Check the token's owner and repository when registering a runner (#30406) (#30412)
|
||||
* Avoid losing token when updating mirror settings (#30429) (#30466)
|
||||
* Fix commit status cache which missed target_url (#30426) (#30445)
|
||||
* Fix rename branch 500 when the target branch is deleted but exist in database (#30430) (#30437)
|
||||
* Fix mirror error when mirror repo is empty (#30432) (#30467)
|
||||
* Use db.ListOptions directly instead of Paginator interface to make it easier to use and fix performance of /pulls and /issues (#29990) (#30447)
|
||||
* Fix code owners will not be mentioned when a pull request comes from a forked repository (#30476) (#30497)
|
||||
|
||||
[1.33.0]
|
||||
* Update Gitea to 1.22.0
|
||||
* [Full changelog](https://github.com/go-gitea/gitea/releases/tag/v1.22.0)
|
||||
* [Breaking changes](https://github.com/go-gitea/gitea/releases/tag/v1.22.0#Breaking)
|
||||
* Allow everyone to read or write a wiki by a repo unit setting (#30495)
|
||||
* Use raw Wiki links for non-renderable Wiki files (#30273)
|
||||
* Render embedded code preview by permalink in markdown (#30234) (#30249)
|
||||
* Support repo code search without setting up an indexer (#29998)
|
||||
* Support pasting URLs over markdown text (#29566)
|
||||
* Allow to change primary email before account activation (#29412)
|
||||
* Customizable "Open with" applications for repository clone (#29320)
|
||||
* Allow options to disable user deletion from the interface on app.ini (#29275)
|
||||
* Extend issue template YAML engine (#29274)
|
|
@ -4,16 +4,16 @@
|
|||
"author": "Gitea developers",
|
||||
"description": "file://DESCRIPTION.md",
|
||||
"tagline": "A painless self-hosted Git Service",
|
||||
"version": "1.23.7",
|
||||
"upstreamVersion": "1.16.3",
|
||||
"version": "1.33.0",
|
||||
"upstreamVersion": "1.22.0",
|
||||
"healthCheckPath": "/explore",
|
||||
"httpPort": 3000,
|
||||
"memoryLimit": 536870912,
|
||||
"addons": {
|
||||
"mysql": { },
|
||||
"sendmail": { },
|
||||
"sendmail": { "supportsDisplayName": true },
|
||||
"localstorage": { },
|
||||
"ldap": { }
|
||||
"oidc": { "loginRedirectUri": "/user/oauth2/cloudron/callback" }
|
||||
},
|
||||
"tcpPorts": {
|
||||
"SSH_PORT": {
|
||||
|
@ -35,9 +35,9 @@
|
|||
"https://screenshots.cloudron.io/io.gitea.cloudronapp/5.png"
|
||||
],
|
||||
"tags": [ "version control", "git", "code hosting", "development", "github", "bitbucket", "gitlab" ],
|
||||
"changelog": "file://CHANGELOG",
|
||||
"changelog": "file://CHANGELOG.md",
|
||||
"postInstallMessage": "file://POSTINSTALL.md",
|
||||
"minBoxVersion": "7.1.2",
|
||||
"minBoxVersion": "7.5.1",
|
||||
"forumUrl": "https://forum.cloudron.io/category/19/gitea",
|
||||
"documentationUrl": "https://docs.cloudron.io/apps/gitea/"
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
FROM cloudron/base:3.2.0@sha256:ba1d566164a67c266782545ea9809dc611c4152e27686fd14060332dd88263ea
|
||||
FROM cloudron/base:4.2.0@sha256:46da2fffb36353ef714f97ae8e962bd2c212ca091108d768ba473078319a47f4
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install -y openssh-server git asciidoctor pandoc && \
|
||||
|
@ -16,7 +16,10 @@ RUN passwd -d git
|
|||
RUN mkdir -p /home/git/gitea
|
||||
WORKDIR /home/git
|
||||
|
||||
ARG VERSION=1.16.3
|
||||
# for autosign feature
|
||||
ENV GNUPGHOME="/app/data/gnupg"
|
||||
|
||||
ARG VERSION=1.22.0
|
||||
|
||||
RUN curl -L https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64 -o /home/git/gitea/gitea \
|
||||
&& chmod +x /home/git/gitea/gitea
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
This app is pre-setup with an admin account (use the `Local` authentication source for logging in as admin).
|
||||
The initial credentials are:
|
||||
This app is pre-setup with an admin account. The initial credentials are:
|
||||
|
||||
**Username**: root<br/>
|
||||
**Password**: changeme<br/>
|
||||
|
||||
Please change the admin password immediately.
|
||||
|
||||
<sso>
|
||||
Use the `Local` authentication source for logging in as admin.
|
||||
</sso>
|
||||
|
|
|
@ -48,23 +48,31 @@ ENABLED = true
|
|||
; APP_DATA_PATH/attachments
|
||||
PATH =
|
||||
|
||||
[oauth2_client]
|
||||
ENABLE_AUTO_REGISTRATION = true
|
||||
USERNAME = sub
|
||||
UPDATE_AVATAR = false
|
||||
ACCOUNT_LINKING = auto
|
||||
|
||||
[mailer]
|
||||
ENABLED = true
|
||||
|
||||
; those settings are protected and can't be modified
|
||||
HOST = ##MAIL_SERVER:##MAIL_PORT
|
||||
SMTP_ADDR = ##MAIL_SERVER
|
||||
SMTP_PORT = ##MAIL_PORT
|
||||
USER = ##MAIL_SMTP_USERNAME
|
||||
PASSWD = ##MAIL_SMTP_PASSWORD
|
||||
FROM = ##MAIL_FROM
|
||||
SKIP_VERIFY = true
|
||||
PROTOCOL = smtps
|
||||
FORCE_TRUST_SERVER_CERT = true
|
||||
|
||||
|
||||
[security]
|
||||
; those settings are protected and can't be modified
|
||||
INSTALL_LOCK = true
|
||||
SECRET_KEY = ##SECRET_KEY
|
||||
|
||||
REVERSE_PROXY_LIMIT = 1
|
||||
REVERSE_PROXY_TRUSTED_PROXIES = *
|
||||
|
||||
[service]
|
||||
DISABLE_REGISTRATION = false
|
||||
|
|
40
start.sh
40
start.sh
|
@ -4,31 +4,20 @@ set -eu -o pipefail
|
|||
|
||||
mkdir -p /run/gitea/tmp/uploads /run/sshd /run/gitea/sessions
|
||||
|
||||
setup_ldap_source() {
|
||||
setup_oidc_source() {
|
||||
set -eu
|
||||
|
||||
echo "==> Setup LDAP source"
|
||||
|
||||
# Get the existing LDAP source status. This allows the user to disable LDAP
|
||||
# Note that this method is deprecated since this app now supports optionalSso
|
||||
ldap_status=$(mysql -u"${CLOUDRON_MYSQL_USERNAME}" -p"${CLOUDRON_MYSQL_PASSWORD}" -h mysql --database="${CLOUDRON_MYSQL_DATABASE}" -N -B -e "select is_active from login_source WHERE name='cloudron';")
|
||||
[[ -z "${ldap_status}" ]] && ldap_status="1"
|
||||
echo "==> Setup OIDC source"
|
||||
|
||||
now=$(date +%s)
|
||||
|
||||
if mysql -u"${CLOUDRON_MYSQL_USERNAME}" -p"${CLOUDRON_MYSQL_PASSWORD}" -h mysql --database="${CLOUDRON_MYSQL_DATABASE}" \
|
||||
-e "REPLACE INTO login_source (id, type, name, is_active, cfg, created_unix, updated_unix) VALUES (1,2,'cloudron',${ldap_status},'{\"Name\":\"cloudron\",\"Host\":\"${CLOUDRON_LDAP_SERVER}\",\"Port\":${CLOUDRON_LDAP_PORT},\"UseSSL\":false,\"SkipVerify\":true,\"BindDN\":\"${CLOUDRON_LDAP_BIND_DN}\",\"BindPassword\":\"${CLOUDRON_LDAP_BIND_PASSWORD}\",\"UserBase\":\"${CLOUDRON_LDAP_USERS_BASE_DN}\",\"AttributeUsername\":\"username\",\"AttributeName\":\"displayname\",\"AttributeSurname\":\"\",\"AttributeMail\":\"mail\",\"Filter\":\"(\\\\u007C(mail=%[1]s)(username=%[1]s))\"}','${now}','${now}');"; then
|
||||
echo "==> LDAP Authentication was setup with activation status ${ldap_status}"
|
||||
else
|
||||
echo "==> Failed to setup LDAP authentication"
|
||||
exit 1
|
||||
fi
|
||||
mysql -u"${CLOUDRON_MYSQL_USERNAME}" -p"${CLOUDRON_MYSQL_PASSWORD}" -h mysql --database="${CLOUDRON_MYSQL_DATABASE}" -e \
|
||||
"REPLACE INTO login_source (id, type, name, is_active, cfg, created_unix, updated_unix) VALUES (1,6,'cloudron', 1,'{\"Provider\":\"openidConnect\",\"ClientID\":\"${CLOUDRON_OIDC_CLIENT_ID}\",\"ClientSecret\":\"${CLOUDRON_OIDC_CLIENT_SECRET}\",\"OpenIDConnectAutoDiscoveryURL\":\"${CLOUDRON_OIDC_ISSUER}/.well-known/openid-configuration\",\"CustomURLMapping\":null,\"IconURL\":\"\",\"Scopes\":[\"openid email profile\"],\"RequiredClaimName\":\"\",\"RequiredClaimValue\":\"\",\"GroupClaimName\":\"\",\"AdminGroup\":\"\",\"GroupTeamMap\":\"\",\"GroupTeamMapRemoval\":false,\"RestrictedGroup\":\"\"}','${now}','${now}')"
|
||||
}
|
||||
|
||||
setup_root_user() {
|
||||
set -eu
|
||||
|
||||
if sudo -H -u git /home/git/gitea/gitea admin user create --username root --password changeme --email test@cloudron.io --admin -c /run/gitea/app.ini; then
|
||||
if sudo -H -u git /home/git/gitea/gitea admin user create --username root --password changeme --email admin@cloudron.local --admin -c /run/gitea/app.ini; then
|
||||
echo "==> root user added"
|
||||
else
|
||||
echo "==> Failed to add root user"
|
||||
|
@ -47,11 +36,11 @@ setup_auth() {
|
|||
|
||||
echo "==> Gitea is up, setting up auth"
|
||||
|
||||
if [[ -n "${CLOUDRON_LDAP_SERVER:-}" ]]; then
|
||||
setup_ldap_source
|
||||
if [[ -n "${CLOUDRON_OIDC_ISSUER:-}" ]]; then
|
||||
setup_oidc_source
|
||||
fi
|
||||
|
||||
user_count=$(mysql -u"${CLOUDRON_MYSQL_USERNAME}" -p"${CLOUDRON_MYSQL_PASSWORD}" -h mysql --database="${CLOUDRON_MYSQL_DATABASE}" -N -B -e "SELECT count(*) FROM user;")
|
||||
user_count=$(mysql -u"${CLOUDRON_MYSQL_USERNAME}" -p"${CLOUDRON_MYSQL_PASSWORD}" -h mysql --database="${CLOUDRON_MYSQL_DATABASE}" -N -B -e "SELECT count(*) FROM user")
|
||||
# be careful, not to create root user for existing LDAP based installs
|
||||
if [[ "${user_count}" == "0" ]]; then
|
||||
echo "==> Setting up root user for first run"
|
||||
|
@ -111,22 +100,25 @@ crudini --set "/run/gitea/app.ini" server SSH_PORT "${SSH_PORT}"
|
|||
crudini --set "/run/gitea/app.ini" server APP_DATA_PATH "/app/data/appdata"
|
||||
crudini --set "/run/gitea/app.ini" repository ROOT "/app/data/repository"
|
||||
crudini --set "/run/gitea/app.ini" repository.upload TEMP_PATH "/run/gitea/tmp/uploads"
|
||||
crudini --set "/run/gitea/app.ini" mailer HOST "${CLOUDRON_MAIL_SMTP_SERVER}:${CLOUDRON_MAIL_SMTPS_PORT}"
|
||||
crudini --set "/run/gitea/app.ini" mailer SMTP_ADDR "${CLOUDRON_MAIL_SMTP_SERVER}"
|
||||
crudini --set "/run/gitea/app.ini" mailer SMTP_PORT "${CLOUDRON_MAIL_SMTPS_PORT}"
|
||||
crudini --set "/run/gitea/app.ini" mailer PROTOCOL smtps
|
||||
crudini --set "/run/gitea/app.ini" mailer USER "${CLOUDRON_MAIL_SMTP_USERNAME}"
|
||||
crudini --set "/run/gitea/app.ini" mailer PASSWD "${CLOUDRON_MAIL_SMTP_PASSWORD}"
|
||||
crudini --set "/run/gitea/app.ini" mailer FROM "${CLOUDRON_MAIL_FROM}"
|
||||
crudini --set "/run/gitea/app.ini" mailer SKIP_VERIFY "true"
|
||||
crudini --set "/run/gitea/app.ini" mailer FROM "${CLOUDRON_MAIL_FROM_DISPLAY_NAME:-Gitea} <${CLOUDRON_MAIL_FROM}>"
|
||||
crudini --set "/run/gitea/app.ini" mailer FORCE_TRUST_SERVER_CERT "true"
|
||||
crudini --set "/run/gitea/app.ini" security INSTALL_LOCK "true"
|
||||
crudini --set "/run/gitea/app.ini" security REVERSE_PROXY_LIMIT 1
|
||||
crudini --set "/run/gitea/app.ini" security REVERSE_PROXY_TRUSTED_PROXIES "*"
|
||||
crudini --set "/run/gitea/app.ini" log MODE "console"
|
||||
crudini --set "/run/gitea/app.ini" log ROOT_PATH "/run/gitea"
|
||||
crudini --set "/run/gitea/app.ini" indexer ISSUE_INDEXER_PATH "/app/data/appdata/indexers/issues.bleve"
|
||||
|
||||
echo "==> Creating dirs and changing permissions"
|
||||
mkdir -p /app/data/repository /app/data/ssh /app/data/custom
|
||||
mkdir -p /app/data/repository /app/data/ssh /app/data/custom /app/data/gnupg
|
||||
chown -R git:git /app/data /run/gitea
|
||||
|
||||
# this expects app.ini to be available
|
||||
( setup_auth ) &
|
||||
|
||||
exec /usr/bin/supervisord --configuration /etc/supervisor/supervisord.conf --nodaemon -i Gitea
|
||||
|
||||
|
|
|
@ -8,4 +8,3 @@ stdout_logfile=/dev/stdout
|
|||
stdout_logfile_maxbytes=0
|
||||
stderr_logfile=/dev/stderr
|
||||
stderr_logfile_maxbytes=0
|
||||
|
||||
|
|
|
@ -2,4 +2,4 @@
|
|||
|
||||
readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
ssh -o IdentitiesOnly=yes -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ${SCRIPT_DIR}/id_rsa "$@"
|
||||
ssh -o IdentitiesOnly=yes -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ${SCRIPT_DIR}/id_ed25519 "$@"
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
-----BEGIN OPENSSH PRIVATE KEY-----
|
||||
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
|
||||
QyNTUxOQAAACDECyFdxcmgOemNvs0wUhkgzfj9IS2OTG6bU5AXfNkXfgAAAJAoNQg/KDUI
|
||||
PwAAAAtzc2gtZWQyNTUxOQAAACDECyFdxcmgOemNvs0wUhkgzfj9IS2OTG6bU5AXfNkXfg
|
||||
AAAEC9nIZlzus9hn/b99E/cnSE2Vpycx0invItrrzgOX9qwMQLIV3FyaA56Y2+zTBSGSDN
|
||||
+P0hLY5MbptTkBd82Rd+AAAADW5lYnVsb25AbHVuYXI=
|
||||
-----END OPENSSH PRIVATE KEY-----
|
|
@ -0,0 +1 @@
|
|||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMQLIV3FyaA56Y2+zTBSGSDN+P0hLY5MbptTkBd82Rd+ nebulon@lunar
|
27
test/id_rsa
27
test/id_rsa
|
@ -1,27 +0,0 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEowIBAAKCAQEA14L+HdwPXRHC2A+fyRv1FTsRE/OPl0Z0KnEigzIIdA65CzTy
|
||||
l3m3ATNFI1o/Ies7RW6rsr9UHuLLufNVg1NwIBdns8sPE4pSZSjfdPnznifIIs7y
|
||||
wL/vn2D3JEhpA8EOasSy0c+z+6X23evsLB3D81y7ICsBc16Q147WZ6D+QMUP+A4b
|
||||
wlmEcy0hAoPx/jnnPlRDVOK1ZnBvuAaHBkcBh+sA272BhB6Kv13MBu0wctDjKw5w
|
||||
cNmgVWbzBBtK1L8BZVMDKmKWZ2PKP4GkkpnAvkD0+4sdARe148faV8HHigAKKNN7
|
||||
vt+njs6nHuS4ksJL1E9cKGHdBJudJc3p24iI7QIDAQABAoIBABm5ojnQPek/KIIA
|
||||
A3PPKYc6QMSf60EEgPNcA+GjRE0OQNpsnJSmS8kR5KvepvCWksGr/0Tb/9+b9POi
|
||||
b0+40waRpKhakdckSMeYhGwDNihn2UUGbQXDI4hj27xyBE8VaXInPq063OIqInjF
|
||||
I7D0cKKJLDEf0RGDdUi13TQLjK4QX78W/9S8d5ClznAVi4wUBb1urs7fAoVetn/i
|
||||
PnlEj9KZHio4mCg28djTudAoWzjzUikRqKRYY5QNEJ13abVoLqIRSRHC1DzwpxVv
|
||||
Y88l4hmm6IcmWGo0O9lpu5IJFvEmngfpmyaVbeLE0fhLPFWcEHARw37SThTZVQeY
|
||||
Tx1816UCgYEA9j5dyNbFcC4YL9i9DQyut658bYziY2vsAvZNMMf249IJGbZOxlZK
|
||||
ylB00zlbO/2uNh12Y9z6BN2hO2lER3O3SM75tCnvXR0+qG+xmfjLcRVczEkU10+r
|
||||
8UxKBgg7Sf9uvfeONefEYPwiwzFoWgdaFSrR2sCmuoHPwfc9i+PSp+8CgYEA4Azq
|
||||
DToKdv6VBWPlNXT6OW3+HUPeHF087Ve03+3orCckZ+d2DImEOvWdt+pDeGQJJcq+
|
||||
o+SzZk9FjFOIiQehuA44OFrvcbag9YAlm1JQYYrRTdZEJz3iSucXCzJH/P5TrB84
|
||||
BHvzgCklZzZ0IpEFxzMe8oNS6XfJmilh6I98YOMCgYBybOy7xUGeLW1D3p2LENen
|
||||
t0dOyObyeFYF0lpwTpulphZgglz8wWCjvttqw/5nVCy+LNa09RyhYjPoHbSC13zW
|
||||
MofKdqoqRMq3DqAjAn/XHqwuqc8rdnRZ/q9vOigC7NWTJRRKbFbPEps8xRrOqxfr
|
||||
OiimVFul02ito6xP8yAStQKBgQDHbPdPup/h9wzx9U7p3Ct1vt/3cJddK+i1YeIP
|
||||
iBYYVebjzXSYCDd4u3MdZxmTKYey6dnyy/ibUmgXVassPWzHBXEpSFflIaf3nY7b
|
||||
x9LgX82ZuOSFAWJRRYyPXLwTBtW3WTplU2cUZotyaVfKBMfd3TToq9e7E/KQk9Eg
|
||||
Tcdp/QKBgCyKD1gGU/H1bsQOuWHuFR1v7v82V1DLVjyn5kllej0tlfTLO/5uUsEE
|
||||
SIjGHfTHxgpww9HN9BPyy8xdQMAc6p7UyvJAIyhg679AQBrMLLvhE5niaGu4jQOa
|
||||
ZVY6nZUQNCwgxJwnUkFnOyXDYjzjyxZOCAWPxghYbS+IEl1GzhZU
|
||||
-----END RSA PRIVATE KEY-----
|
|
@ -1 +0,0 @@
|
|||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDXgv4d3A9dEcLYD5/JG/UVOxET84+XRnQqcSKDMgh0DrkLNPKXebcBM0UjWj8h6ztFbquyv1Qe4su581WDU3AgF2ezyw8TilJlKN90+fOeJ8gizvLAv++fYPckSGkDwQ5qxLLRz7P7pfbd6+wsHcPzXLsgKwFzXpDXjtZnoP5AxQ/4DhvCWYRzLSECg/H+Oec+VENU4rVmcG+4BocGRwGH6wDbvYGEHoq/XcwG7TBy0OMrDnBw2aBVZvMEG0rUvwFlUwMqYpZnY8o/gaSSmcC+QPT7ix0BF7Xjx9pXwceKAAoo03u+36eOzqce5LiSwkvUT1woYd0Em50lzenbiIjt girish@beast
|
File diff suppressed because it is too large
Load Diff
|
@ -9,11 +9,10 @@
|
|||
"author": "",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"chromedriver": "^98.0.1",
|
||||
"chromedriver": "^125.0.2",
|
||||
"expect.js": "^0.3.1",
|
||||
"mocha": "^9.2.1",
|
||||
"rimraf": "^3.0.2",
|
||||
"selenium-webdriver": "^4.1.1",
|
||||
"superagent": "^7.1.1"
|
||||
"mocha": "^10.4.0",
|
||||
"selenium-webdriver": "^4.21.0",
|
||||
"superagent": "^9.0.2"
|
||||
}
|
||||
}
|
||||
|
|
109
test/test.js
109
test/test.js
|
@ -27,20 +27,20 @@ if (!process.env.USERNAME || !process.env.PASSWORD || !process.env.EMAIL) {
|
|||
describe('Application life cycle test', function () {
|
||||
this.timeout(0);
|
||||
|
||||
var TIMEOUT = parseInt(process.env.TIMEOUT, 10) || 5000;
|
||||
var EXEC_ARGS = { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' };
|
||||
var LOCATION = 'test';
|
||||
var SSH_PORT = 29420;
|
||||
const TIMEOUT = parseInt(process.env.TIMEOUT, 10) || 5000;
|
||||
const EXEC_ARGS = { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' };
|
||||
const LOCATION = 'test';
|
||||
const SSH_PORT = 29420;
|
||||
|
||||
var app;
|
||||
var browser;
|
||||
let app, browser;
|
||||
var athenticated_by_oidc = false;
|
||||
|
||||
var repodir = '/tmp/testrepo';
|
||||
var reponame = 'testrepo';
|
||||
const repodir = '/tmp/testrepo';
|
||||
const reponame = 'testrepo';
|
||||
|
||||
var username = process.env.USERNAME;
|
||||
var password = process.env.PASSWORD;
|
||||
var email = process.env.EMAIL;
|
||||
const username = process.env.USERNAME;
|
||||
const password = process.env.PASSWORD;
|
||||
const email = process.env.EMAIL;
|
||||
|
||||
before(function () {
|
||||
browser = new Builder().forBrowser('chrome').setChromeOptions(new Options().windowSize({ width: 1280, height: 1024 })).build();
|
||||
|
@ -57,6 +57,11 @@ describe('Application life cycle test', function () {
|
|||
expect(app).to.be.an('object');
|
||||
}
|
||||
|
||||
async function waitForElement(elem) {
|
||||
await browser.wait(until.elementLocated(elem), TIMEOUT);
|
||||
await browser.wait(until.elementIsVisible(browser.findElement(elem)), TIMEOUT);
|
||||
}
|
||||
|
||||
function sleep(millis) {
|
||||
return new Promise(resolve => setTimeout(resolve, millis));
|
||||
}
|
||||
|
@ -75,10 +80,10 @@ describe('Application life cycle test', function () {
|
|||
async function checkAvatar() {
|
||||
await browser.get(`https://${app.fqdn}/${username}`);
|
||||
|
||||
var avatarSrc = await browser.findElement(By.xpath('//a[@id="profile-avatar"]/img')).getAttribute('src');
|
||||
const avatarSrc = await browser.findElement(By.xpath('//div[@id="profile-avatar"]/a/img')).getAttribute('src');
|
||||
|
||||
var avatar = await superagent.get(avatarSrc);
|
||||
expect(avatar.statusCode).to.equal(200);
|
||||
const response = await superagent.get(avatarSrc);
|
||||
expect(response.statusCode).to.equal(200);
|
||||
}
|
||||
|
||||
async function login(username, password) {
|
||||
|
@ -94,6 +99,29 @@ describe('Application life cycle test', function () {
|
|||
await login('root', 'changeme');
|
||||
}
|
||||
|
||||
async function loginOIDC(username, password) {
|
||||
browser.manage().deleteAllCookies();
|
||||
await browser.get(`https://${app.fqdn}/user/login`);
|
||||
await browser.sleep(2000);
|
||||
|
||||
|
||||
await browser.findElement(By.xpath('//a[contains(@class, "openidConnect") and contains(., "Sign in with cloudron")]')).click();
|
||||
await browser.sleep(2000);
|
||||
|
||||
if (!athenticated_by_oidc) {
|
||||
await waitForElement(By.xpath('//input[@name="username"]'));
|
||||
await browser.findElement(By.xpath('//input[@name="username"]')).sendKeys(username);
|
||||
await browser.findElement(By.xpath('//input[@name="password"]')).sendKeys(password);
|
||||
await browser.sleep(2000);
|
||||
await browser.findElement(By.id('loginSubmitButton')).click();
|
||||
await browser.sleep(2000);
|
||||
|
||||
athenticated_by_oidc = true;
|
||||
}
|
||||
|
||||
await waitForElement(By.xpath('//img[contains(@class, "avatar")]'));
|
||||
}
|
||||
|
||||
async function logout() {
|
||||
await browser.get('https://' + app.fqdn);
|
||||
|
||||
|
@ -104,11 +132,9 @@ describe('Application life cycle test', function () {
|
|||
}
|
||||
|
||||
async function addPublicKey() {
|
||||
var publicKey = fs.readFileSync(__dirname + '/id_rsa.pub', 'utf8');
|
||||
var publicKey = fs.readFileSync(__dirname + '/id_ed25519.pub', 'utf8');
|
||||
|
||||
const sshPage = 'https://' + app.fqdn + '/user/settings/keys';
|
||||
|
||||
await browser.get(sshPage);
|
||||
await browser.get('https://' + app.fqdn + '/user/settings/keys');
|
||||
|
||||
await browser.wait(until.elementLocated(By.id('add-ssh-button')), TIMEOUT);
|
||||
await browser.findElement(By.id('add-ssh-button')).click();
|
||||
|
@ -116,7 +142,23 @@ describe('Application life cycle test', function () {
|
|||
await browser.findElement(By.id('ssh-key-content')).sendKeys(publicKey.trim()); // #3480
|
||||
var button = browser.findElement(By.xpath('//button[contains(text(), "Add Key")]'));
|
||||
await browser.executeScript('arguments[0].scrollIntoView(false)', button);
|
||||
await browser.findElement(By.xpath('//button[contains(text(), "Add Key")]')).click();
|
||||
await browser.findElement(By.xpath('//form//button[contains(text(),"Add Key")]')).click();
|
||||
|
||||
await browser.wait(until.elementLocated(By.xpath('//p[contains(text(), "has been added.")]')), TIMEOUT);
|
||||
}
|
||||
|
||||
async function addPublicKeyOld() {
|
||||
var publicKey = fs.readFileSync(__dirname + '/id_ed25519.pub', 'utf8');
|
||||
|
||||
await browser.get('https://' + app.fqdn + '/user/settings/keys');
|
||||
|
||||
await browser.wait(until.elementLocated(By.id('add-ssh-button')), TIMEOUT);
|
||||
await browser.findElement(By.id('add-ssh-button')).click();
|
||||
await browser.findElement(By.id('ssh-key-title')).sendKeys('testkey');
|
||||
await browser.findElement(By.id('ssh-key-content')).sendKeys(publicKey.trim()); // #3480
|
||||
var button = browser.findElement(By.xpath('//button[contains(text(), "Add Key")]'));
|
||||
await browser.executeScript('arguments[0].scrollIntoView(false)', button);
|
||||
await browser.findElement(By.xpath('//button[contains(text(), "Add Key") and contains(@class, "green")]')).click();
|
||||
|
||||
await browser.wait(until.elementLocated(By.xpath('//p[contains(text(), "has been added.")]')), TIMEOUT);
|
||||
}
|
||||
|
@ -153,9 +195,9 @@ describe('Application life cycle test', function () {
|
|||
}
|
||||
|
||||
function pushFile() {
|
||||
var env = Object.create(process.env);
|
||||
const env = Object.create(process.env);
|
||||
env.GIT_SSH = __dirname + '/git_ssh_wrapper.sh';
|
||||
execSync(`touch newfile && git add newfile && git commit -a -mx && git push ssh://git@${app.fqdn}:${SSH_PORT}/${username}/${reponame} master`,
|
||||
execSync(`touch newfile && git add newfile && git commit -a -mx && git push ssh://git@${app.fqdn}:${SSH_PORT}/${username}/${reponame} main`,
|
||||
{ env: env, cwd: repodir });
|
||||
fs.rmSync(repodir, { recursive: true, force: true });
|
||||
}
|
||||
|
@ -167,11 +209,11 @@ describe('Application life cycle test', function () {
|
|||
async function sendMail() {
|
||||
await browser.get(`https://${app.fqdn}/admin/config`);
|
||||
|
||||
var button = await browser.findElement(By.xpath('//button[@id="test-mail-btn"]'));
|
||||
var button = await browser.findElement(By.xpath('//button[contains(text(), "Send")]'));
|
||||
await browser.executeScript('arguments[0].scrollIntoView(true)', button);
|
||||
await browser.findElement(By.xpath('//input[@name="email"]')).sendKeys('test@cloudron.io');
|
||||
await browser.findElement(By.xpath('//button[@id="test-mail-btn"]')).click();
|
||||
await browser.wait(until.elementLocated(By.xpath('//p[contains(text(),"A testing email has been sent to \'test@cloudron.io\'")]')), TIMEOUT);
|
||||
await browser.findElement(By.xpath('//button[contains(text(), "Send")]')).click();
|
||||
await browser.wait(until.elementLocated(By.xpath('//p[contains(text(), "A testing email has been sent")]')), TIMEOUT);
|
||||
}
|
||||
|
||||
xit('build app', function () { execSync('cloudron build', EXEC_ARGS); });
|
||||
|
@ -183,7 +225,7 @@ describe('Application life cycle test', function () {
|
|||
it('can send mail', sendMail);
|
||||
it('can logout', logout);
|
||||
|
||||
it('can login', login.bind(null, username, password));
|
||||
it('can login', loginOIDC.bind(null, username, password));
|
||||
it('can set avatar', setAvatar);
|
||||
it('can get avatar', checkAvatar);
|
||||
|
||||
|
@ -199,7 +241,7 @@ describe('Application life cycle test', function () {
|
|||
|
||||
it('can restart app', function () { execSync('cloudron restart --app ' + app.id); });
|
||||
|
||||
xit('can login', login.bind(null, username, password)); // no need to relogin since session persists
|
||||
xit('can login', loginOIDC.bind(null, username, password)); // no need to relogin since session persists
|
||||
it('displays correct clone url', checkCloneUrl);
|
||||
it('can clone the url', cloneRepo);
|
||||
it('file exists in repo', fileExists);
|
||||
|
@ -207,7 +249,7 @@ describe('Application life cycle test', function () {
|
|||
it('backup app', function () { execSync('cloudron backup create --app ' + app.id, EXEC_ARGS); });
|
||||
it('restore app', function () { execSync('cloudron restore --app ' + app.id, EXEC_ARGS); });
|
||||
|
||||
it('can login', login.bind(null, username, password));
|
||||
it('can login', loginOIDC.bind(null, username, password));
|
||||
it('can get avatar', checkAvatar);
|
||||
it('can clone the url', cloneRepo);
|
||||
it('file exists in repo', function () { expect(fs.existsSync(repodir + '/newfile')).to.be(true); });
|
||||
|
@ -221,7 +263,7 @@ describe('Application life cycle test', function () {
|
|||
});
|
||||
it('can get app information', getAppInfo);
|
||||
|
||||
it('can login', login.bind(null, username, password));
|
||||
it('can login', loginOIDC.bind(null, username, password));
|
||||
it('can get avatar', checkAvatar);
|
||||
it('displays correct clone url', checkCloneUrl);
|
||||
it('can clone the url', cloneRepo);
|
||||
|
@ -249,7 +291,7 @@ describe('Application life cycle test', function () {
|
|||
it('can install app', function () { execSync(`cloudron install --appstore-id ${app.manifest.id} --location ${LOCATION} -p SSH_PORT=${SSH_PORT}`, EXEC_ARGS); });
|
||||
|
||||
it('can get app information', getAppInfo);
|
||||
it('can login', login.bind(null, username, password));
|
||||
it('can login', loginOIDC.bind(null, username, password));
|
||||
it('can set avatar', setAvatar);
|
||||
it('can get avatar', checkAvatar);
|
||||
it('can add public key', addPublicKey);
|
||||
|
@ -258,12 +300,13 @@ describe('Application life cycle test', function () {
|
|||
it('can add and push a file', pushFile);
|
||||
|
||||
it('can update', function () { execSync('cloudron update --app ' + app.id, EXEC_ARGS); });
|
||||
it('can get app information', getAppInfo);
|
||||
|
||||
xit('can admin login', adminLogin);
|
||||
xit('can send mail', sendMail);
|
||||
xit('can logout', logout);
|
||||
it('can admin login', adminLogin);
|
||||
it('can send mail', sendMail);
|
||||
it('can logout', logout);
|
||||
|
||||
it('can login', login.bind(null, username, password));
|
||||
it('can login', loginOIDC.bind(null, username, password));
|
||||
it('can get avatar', checkAvatar);
|
||||
it('can clone the url', cloneRepo);
|
||||
it('file exists in cloned repo', fileExists);
|
||||
|
|
Loading…
Reference in New Issue