mirror of
https://github.com/go-gitea/gitea.git
synced 2026-03-12 02:24:21 -05:00
Avatars not visible in commit view when no-reply address is configured to the real domain #14668
Closed
opened 2025-11-02 11:19:29 -06:00 by GiteaMirror
·
15 comments
No Branch/Tag Specified
main
release/v1.25
release/v1.24
release/v1.23
release/v1.22
release/v1.21
release/v1.20
release/v1.19
release/v1.18
release/v1.17
release/v1.16
release/v1.15
release/v1.14
release/v1.13
release/v1.12
release/v1.11
release/v1.10
release/v1.9
release/v1.8
v1.25.3
v1.25.2
v1.25.1
v1.25.0
v1.24.7
v1.25.0-rc0
v1.26.0-dev
v1.24.6
v1.24.5
v1.24.4
v1.24.3
v1.24.2
v1.24.1
v1.24.0
v1.23.8
v1.24.0-rc0
v1.25.0-dev
v1.23.7
v1.23.6
v1.23.5
v1.23.4
v1.23.3
v1.23.2
v1.23.1
v1.23.0
v1.23.0-rc0
v1.24.0-dev
v1.22.6
v1.22.5
v1.22.4
v1.22.3
v1.22.2
v1.22.1
v1.22.0
v1.23.0-dev
v1.22.0-rc1
v1.21.11
v1.22.0-rc0
v1.21.10
v1.21.9
v1.21.8
v1.21.7
v1.21.6
v1.21.5
v1.21.4
v1.21.3
v1.21.2
v1.20.6
v1.21.1
v1.21.0
v1.21.0-rc2
v1.21.0-rc1
v1.20.5
v1.22.0-dev
v1.21.0-rc0
v1.20.4
v1.20.3
v1.20.2
v1.20.1
v1.20.0
v1.19.4
v1.21.0-dev
v1.20.0-rc2
v1.20.0-rc1
v1.20.0-rc0
v1.19.3
v1.19.2
v1.19.1
v1.19.0
v1.19.0-rc1
v1.20.0-dev
v1.19.0-rc0
v1.18.5
v1.18.4
v1.18.3
v1.18.2
v1.18.1
v1.18.0
v1.17.4
v1.18.0-rc1
v1.19.0-dev
v1.18.0-rc0
v1.17.3
v1.17.2
v1.17.1
v1.17.0
v1.17.0-rc2
v1.16.9
v1.17.0-rc1
v1.18.0-dev
v1.16.8
v1.16.7
v1.16.6
v1.16.5
v1.16.4
v1.16.3
v1.16.2
v1.16.1
v1.16.0
v1.15.11
v1.17.0-dev
v1.16.0-rc1
v1.15.10
v1.15.9
v1.15.8
v1.15.7
v1.15.6
v1.15.5
v1.15.4
v1.15.3
v1.15.2
v1.15.1
v1.14.7
v1.15.0
v1.15.0-rc3
v1.14.6
v1.15.0-rc2
v1.14.5
v1.16.0-dev
v1.15.0-rc1
v1.14.4
v1.14.3
v1.14.2
v1.14.1
v1.14.0
v1.13.7
v1.14.0-rc2
v1.13.6
v1.13.5
v1.14.0-rc1
v1.15.0-dev
v1.13.4
v1.13.3
v1.13.2
v1.13.1
v1.13.0
v1.12.6
v1.13.0-rc2
v1.14.0-dev
v1.13.0-rc1
v1.12.5
v1.12.4
v1.12.3
v1.12.2
v1.12.1
v1.11.8
v1.12.0
v1.11.7
v1.12.0-rc2
v1.11.6
v1.12.0-rc1
v1.13.0-dev
v1.11.5
v1.11.4
v1.11.3
v1.10.6
v1.12.0-dev
v1.11.2
v1.10.5
v1.11.1
v1.10.4
v1.11.0
v1.11.0-rc2
v1.10.3
v1.11.0-rc1
v1.10.2
v1.10.1
v1.10.0
v1.9.6
v1.9.5
v1.10.0-rc2
v1.11.0-dev
v1.10.0-rc1
v1.9.4
v1.9.3
v1.9.2
v1.9.1
v1.9.0
v1.9.0-rc2
v1.10.0-dev
v1.9.0-rc1
v1.8.3
v1.8.2
v1.8.1
v1.8.0
v1.8.0-rc3
v1.7.6
v1.8.0-rc2
v1.7.5
v1.8.0-rc1
v1.9.0-dev
v1.7.4
v1.7.3
v1.7.2
v1.7.1
v1.7.0
v1.7.0-rc3
v1.6.4
v1.7.0-rc2
v1.6.3
v1.7.0-rc1
v1.7.0-dev
v1.6.2
v1.6.1
v1.6.0
v1.6.0-rc2
v1.5.3
v1.6.0-rc1
v1.6.0-dev
v1.5.2
v1.5.1
v1.5.0
v1.5.0-rc2
v1.5.0-rc1
v1.5.0-dev
v1.4.3
v1.4.2
v1.4.1
v1.4.0
v1.4.0-rc3
v1.4.0-rc2
v1.3.3
v1.4.0-rc1
v1.3.2
v1.3.1
v1.3.0
v1.3.0-rc2
v1.3.0-rc1
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.2.0-rc3
v1.2.0-rc2
v1.1.4
v1.2.0-rc1
v1.1.3
v1.1.2
v1.1.1
v1.1.0
v1.0.2
v1.0.1
v1.0.0
v0.9.99
Labels
Clear labels
$20
$250
$50
$500
backport/done
💎 Bounty
docs-update-needed
good first issue
hacktoberfest
issue/bounty
issue/confirmed
issue/critical
issue/duplicate
issue/needs-feedback
issue/not-a-bug
issue/regression
issue/stale
issue/workaround
lgtm/need 2
modifies/api
modifies/translation
outdated/backport/v1.18
outdated/theme/markdown
outdated/theme/timetracker
performance/bigrepo
performance/cpu
performance/memory
performance/speed
pr/breaking
proposal/accepted
proposal/rejected
pr/wip
pull-request
reviewed/wontfix
💰 Rewarded
skip-changelog
status/blocked
topic/accessibility
topic/api
topic/authentication
topic/build
topic/code-linting
topic/commit-signing
topic/content-rendering
topic/deployment
topic/distribution
topic/federation
topic/gitea-actions
topic/issues
topic/lfs
topic/mobile
topic/moderation
topic/packages
topic/pr
topic/projects
topic/repo
topic/repo-migration
topic/security
topic/theme
topic/ui
topic/ui-interaction
topic/ux
topic/webhooks
topic/wiki
type/bug
type/deprecation
type/docs
type/enhancement
type/feature
type/miscellaneous
type/proposal
type/question
type/refactoring
type/summary
type/testing
type/upstream
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/gitea#14668
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @smartEBL on GitHub (Jun 27, 2025).
Description
This is basically the same problem as being reported by https://github.com/go-gitea/gitea/issues/33595
There are two observations:
In our setup we use ldap for authentication. The gitea usernames are
lastname, while the email addresses arefirstname.lastname@company.bla.The link created for a user will be
http://gitea:3000/firstname lastname- which does not exist. Instead it should behttp://gitea:3000/lastname.In some cases this link creation works - if the user misconfigured his git email address to
lastname@company.blainstead offirstname.lastname@company.bla.Gitea Version
1.24.2
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
Git Version
2.49.0
Operating System
Ubuntu 22.04
How are you running Gitea?
Gitea 1.24.2 via docker compose with SQLite database
Database
SQLite
@wxiaoguang commented on GitHub (Jun 27, 2025):
Can you check whether the email
firstname.lastname@company.blain database (theemail_addresstable) is active or not?@smartEBL commented on GitHub (Jun 27, 2025):
Hey. Thanks for the super quick response!
The email address has
is_activatedand alsois_primaryset as1@wxiaoguang commented on GitHub (Jun 27, 2025):
That's strange, the bug should have been fixed in 1.24
The logic overall looks like this:
c6467edcb1/models/user/user.go (L1172)c6467edcb1/models/user/user.go (L1225)email_addresstable byeWHERE lower_email = {git email} AND is_active=true, then get related usersSo without a reproduce sample, it's difficult for me to figure out what happens ....
Are you able to provide more clues, or a reproducible setup?
@wxiaoguang commented on GitHub (Jun 27, 2025):
That's the most strange part. It shows that the GetUsersByEmails/GetUserByEmail does do their work.
So need to figure out why
firstname.lastname@company.blais different. Where it mismatches? (if you are surely using 1.24)@smartEBL commented on GitHub (Jun 27, 2025):
Yes, it's 1.24.2 for sure.
Maybe the fact that the generated link which should point to the user page contains
Firstname Lastname(db fieldfull_name) instead oflastname(db fieldlower_name) might be a hint.So instead of
http://gitea:3000/Firstname Lastname(what we see right now)we would expect
http://gitea:3000/lastnamefyi: We did the migration from 1.23.8 to 1.24.2 in the morning - maybe something went wrong there also?
@hiifong commented on GitHub (Jun 27, 2025):
Please use
git config --global --listto check if the email address matches the one on gitea.@wxiaoguang commented on GitHub (Jun 27, 2025):
I don't think it is the case.
The details are:
git userandgit email(provided by each user)gitea_usernameandgitea_emailGitea needs to use
git emailto find a related Gitea user by itsgitea_email, and render the linkhttp://gitea-host/{gitea_username}. If it can't find the Gitea user bygit email, then it renders the link ashttp://gitea-host/{git user}@smartYSC commented on GitHub (Jun 27, 2025):
We figured it out (I'm the colleague of @smartEBL):
In our config
NO_REPLY_ADDRESSis set tocompany.bla.GetUsersByEmails()check if thegit emailends with@NO_REPLY_ADDRESS:c6467edcb1/models/user/user.go (L1180-L1183)This is true for all our users.
It then decides to check the user name instead of the email address:
c6467edcb1/models/user/user.go (L1215-L1217)This finds no results.
Afterwards some other piece of code I have not found yet decides to use the
git userin the commit list, which is similar to the behaviour of v1.23. However, it creates alinkto thegit userwhich I think it should not do (and did not do in v1.23).We now changed
NO_REPLY_ADDRESStonoreply.company.bla. And the commit list is fixed.So our issue is resolved.
@wxiaoguang commented on GitHub (Jun 27, 2025):
Awesome, it explains everything, thank you very much.
I think the root problem is the changed behavior (regression) caused by Improve commits list performance to reduce unnecessary database queries (#33528) also cc @lunny
@lunny commented on GitHub (Jul 8, 2025):
The logic for checking no-reply addresses was introduced in #7133 to address issue #2457. Pull request #33528 builds on this by performing the check in batch, rather than individually.
To help prevent misconfiguration, we should consider adding a comment to the
[service].NO_REPLY_ADDRESSsetting, clarifying that it must be a fake domain—one that no real user would ever use as their actual email address.@wxiaoguang commented on GitHub (Jul 9, 2025):
But #33528 did introduce a regression, it changed the check logic. I think you should be able to reproduce and see the difference between 1.23 and 1.24
@lunny commented on GitHub (Jul 9, 2025):
I sent #35007 to try to fix the regression.
@wxiaoguang commented on GitHub (Jul 9, 2025):
35007 doesn't contain the fix.
To fix, you need to "always" try to the commit's email to load a user, no matter it ends with "no reply address" or not.
@silverwind commented on GitHub (Jul 10, 2025):
Funnily enough, I made the exact same error in my instance configuration. My config is very old (inherited from gogs) and I assume that maybe at some point NO_REPLY_ADDRESS must have been documented to hold a "regular" domain name, not a fake one.
@silverwind commented on GitHub (Jul 10, 2025):
Actually no, my config was always incorrect, here is where NO_REPLY_ADRESS was first added, and it was always with the "noreply." prefix.