Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Inclusion of rename organization api#33303

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
lunny merged 7 commits intogo-gitea:mainfrombsofiato:feature/rename-org-api
Feb 1, 2025

Conversation

@bsofiato
Copy link
Contributor

This adds an endpoint (/orgs/{org}/rename) to rename organizations.

I've modeled the endpoint using the rename user endpoint --/admin/users/{username}/rename -- as base.

It is the 1st time I wrote a new API endpoint (I've tried to follow the rename users endpoint code while writing it). So feel free to ping me if there is something wrong or missing.

Resolves#32995

@GiteaBotGiteaBot added the lgtm/need 2This PR needs two approvals by maintainers to be considered for merging. labelJan 16, 2025
@github-actionsgithub-actionsbot added modifies/apiThis PR adds API routes or modifies them modifies/goPull requests that update Go code labelsJan 16, 2025
Signed-off-by: Bruno Sofiato <bruno.sofiato@gmail.com>
@yp05327
Copy link
Contributor

yp05327 commentedJan 17, 2025
edited
Loading

You can reference the implementation here:

ifctx.ContextUser.IsOrganization() {
ctx.Error(http.StatusUnprocessableEntity,"",fmt.Errorf("%s is an organization not a user",ctx.ContextUser.Name))
return
}
oldName:=ctx.ContextUser.Name
newName:=web.GetForm(ctx).(*api.RenameUserOption).NewName
// Check if user name has been changed
iferr:=user_service.RenameUser(ctx,ctx.ContextUser,newName);err!=nil {
switch {
caseuser_model.IsErrUserAlreadyExist(err):
ctx.Error(http.StatusUnprocessableEntity,"",ctx.Tr("form.username_been_taken"))
casedb.IsErrNameReserved(err):
ctx.Error(http.StatusUnprocessableEntity,"",ctx.Tr("user.form.name_reserved",newName))
casedb.IsErrNamePatternNotAllowed(err):
ctx.Error(http.StatusUnprocessableEntity,"",ctx.Tr("user.form.name_pattern_not_allowed",newName))
casedb.IsErrNameCharsNotAllowed(err):
ctx.Error(http.StatusUnprocessableEntity,"",ctx.Tr("user.form.name_chars_not_allowed",newName))
default:
ctx.ServerError("ChangeUserName",err)
}
return
}
log.Trace("User name changed: %s -> %s",oldName,newName)
ctx.Status(http.StatusNoContent)
}

@lunny
Copy link
Member

It's better to have a test.

bsofiato reacted with thumbs up emoji

@bsofiato
Copy link
ContributorAuthor

It's better to have a test.

Hey@lunny, I've written a integration test to check for the new api :)

lunny reacted with thumbs up emoji

@GiteaBotGiteaBot added lgtm/need 1This PR needs approval from one additional maintainer to be merged. and removed lgtm/need 2This PR needs two approvals by maintainers to be considered for merging. labelsJan 30, 2025
@lunnylunny added the type/enhancementAn improvement of existing functionality labelJan 30, 2025
@lunnylunny added this to the1.24.0 milestoneJan 30, 2025
@GiteaBotGiteaBot added lgtm/doneThis PR has enough approvals to get merged. There are no important open reservations anymore. and removed lgtm/need 1This PR needs approval from one additional maintainer to be merged. labelsJan 30, 2025
Co-authored-by: delvh <dev.lh@web.de>
@wxiaoguangwxiaoguang marked this pull request as draftJanuary 31, 2025 12:51
@wxiaoguangwxiaoguang self-assigned thisJan 31, 2025
@wxiaoguang
Copy link
Contributor

wxiaoguang commentedJan 31, 2025
edited
Loading

Made some changes:

  1. use the same logic forRenameUser andRenameOrg
    • the known errors already provide good messages, so just use the "err" (then noctx.Tr)
  2. remove thelog.Trace from handlers
    • the "trace" log is only used for debugging purpose, here we do not need that
  3. remove allonGiteaRun from org tests
    • just usePrepareTestEnv, it's faster and simpler
  4. makeRenameOrg to be a sub-test
    • it is faster because no need to create a new org
  5. by the way, found a buggy test case, added "FIXME" in code.
    • old code tests nothing .......

Diff with ignoring spaces:https://github.com/go-gitea/gitea/pull/33303/files?diff=unified&w=1

@wxiaoguangwxiaoguang marked this pull request as ready for reviewJanuary 31, 2025 13:19
@wxiaoguangwxiaoguang removed their assignmentJan 31, 2025
@lunnylunny added the reviewed/wait-mergeThis pull request is part of the merge queue. It will be merged soon. labelFeb 1, 2025
@lunnylunnyenabled auto-merge (squash)February 1, 2025 00:13
@lunnylunny merged commit040c830 intogo-gitea:mainFeb 1, 2025
26 checks passed
@GiteaBotGiteaBot removed the reviewed/wait-mergeThis pull request is part of the merge queue. It will be merged soon. labelFeb 1, 2025
zjjhot added a commit to zjjhot/gitea that referenced this pull requestFeb 3, 2025
* giteaofficial/main: (53 commits)  [skip ci] Updated licenses and gitignores  Correct bot label `vertical-align` (go-gitea#33477)  chore: fix some trivial problems and TODOs (go-gitea#33473)  Worktime tracking for the organization level (go-gitea#19808)  Skip deletion error for action artifacts (go-gitea#33476)  Update .changelog file to add performance label group (go-gitea#33472)  actions view: move loading of task attributes etc... into own func (go-gitea#31494)  [skip ci] Updated translations via Crowdin  Update feishu icon (go-gitea#33470)  Inclusion of rename organization api (go-gitea#33303)  [skip ci] Updated translations via Crowdin  Hide/disable unusable UI elements when a repository is archived (go-gitea#33459)  Fix SSH LFS memory usage (go-gitea#33455)  Revert empty lfs ref name (go-gitea#33454)  Update `@github/text-expander-element`, adapt type imports (go-gitea#33449)  Support choose email when creating a commit via web UI (more) (go-gitea#33445)  Fix issue sidebar dropdown keyboard support (go-gitea#33447)  Fix "redirect link" handling (go-gitea#33440)  Refactor repository transfer (go-gitea#33211)  Enable two more strict options in tsconfig (go-gitea#33438)  ...
project-mirrors-bot-tubot pushed a commit to project-mirrors/forgejo-as-gitea-fork that referenced this pull requestFeb 4, 2025
This adds an endpoint (`/orgs/{org}/rename`) to rename organizations.I've modeled the endpoint using the rename user endpoint --`/admin/users/{username}/rename` -- as base.It is the 1st time I wrote a new API endpoint (I've tried to follow therename users endpoint code while writing it). So feel free to ping me ifthere is something wrong or missing.Resolvesgo-gitea#32995---------Signed-off-by: Bruno Sofiato <bruno.sofiato@gmail.com>Co-authored-by: delvh <dev.lh@web.de>Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>(cherry picked from commit040c830)Conflicts:routers/api/v1/admin/user.go  ignore this unrelated changetemplates/swagger/v1_json.tmpl  regeneratetests/integration/api_org_test.go  port as a standalone test instead of refactoring the tests
@go-giteago-gitea locked asresolvedand limited conversation to collaboratorsMay 3, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account?Sign in.

Reviewers

@wxiaoguangwxiaoguangwxiaoguang left review comments

@lunnylunnylunny approved these changes

@delvhdelvhdelvh approved these changes

@yp05327yp05327Awaiting requested review from yp05327

Assignees

No one assigned

Labels

lgtm/doneThis PR has enough approvals to get merged. There are no important open reservations anymore.modifies/apiThis PR adds API routes or modifies themmodifies/goPull requests that update Go codetype/enhancementAn improvement of existing functionality

Projects

None yet

Milestone

1.24.0

Development

Successfully merging this pull request may close these issues.

Add organization renaming API

6 participants

@bsofiato@yp05327@lunny@wxiaoguang@delvh@GiteaBot

[8]ページ先頭

©2009-2025 Movatter.jp