summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md2
-rw-r--r--packages/backend/src/server/ActivityPubServerService.ts2
-rw-r--r--packages/backend/src/server/WellKnownServerService.ts2
-rw-r--r--packages/backend/test/unit/AnnouncementService.ts2
-rw-r--r--packages/backend/test/unit/SigninWithPasskeyApiService.ts6
-rw-r--r--packages/backend/test/unit/entities/UserEntityService.ts2
6 files changed, 8 insertions, 8 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4c57d2ee56..3a4c155a26 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,7 +9,7 @@
### Server
- Fix: システムアカウントの名前がサーバー名と同期されない問題を修正
-
+- Fix: 大文字を含むユーザの URL で紹介された場合に 404 エラーを返す問題 #15813
## 2025.4.0
diff --git a/packages/backend/src/server/ActivityPubServerService.ts b/packages/backend/src/server/ActivityPubServerService.ts
index 48c80e5e61..72d57a9b1b 100644
--- a/packages/backend/src/server/ActivityPubServerService.ts
+++ b/packages/backend/src/server/ActivityPubServerService.ts
@@ -735,7 +735,7 @@ export class ActivityPubServerService {
const acct = Acct.parse(request.params.acct);
const user = await this.usersRepository.findOneBy({
- usernameLower: acct.username,
+ usernameLower: acct.username.toLowerCase(),
host: acct.host ?? IsNull(),
isSuspended: false,
});
diff --git a/packages/backend/src/server/WellKnownServerService.ts b/packages/backend/src/server/WellKnownServerService.ts
index d106be5bc8..ebfd1a421d 100644
--- a/packages/backend/src/server/WellKnownServerService.ts
+++ b/packages/backend/src/server/WellKnownServerService.ts
@@ -138,7 +138,7 @@ fastify.get('/.well-known/change-password', async (request, reply) => {
const fromAcct = (acct: Acct.Acct): FindOptionsWhere<MiUser> | number =>
!acct.host || acct.host === this.config.host.toLowerCase() ? {
- usernameLower: acct.username,
+ usernameLower: acct.username.toLowerCase(),
host: IsNull(),
isSuspended: false,
} : 422;
diff --git a/packages/backend/test/unit/AnnouncementService.ts b/packages/backend/test/unit/AnnouncementService.ts
index 81da0fac31..a79655c9aa 100644
--- a/packages/backend/test/unit/AnnouncementService.ts
+++ b/packages/backend/test/unit/AnnouncementService.ts
@@ -44,7 +44,7 @@ describe('AnnouncementService', () => {
return usersRepository.insert({
id: genAidx(Date.now()),
username: un,
- usernameLower: un,
+ usernameLower: un.toLowerCase(),
...data,
})
.then(x => usersRepository.findOneByOrFail(x.identifiers[0]));
diff --git a/packages/backend/test/unit/SigninWithPasskeyApiService.ts b/packages/backend/test/unit/SigninWithPasskeyApiService.ts
index bae2b88c60..0687ed8437 100644
--- a/packages/backend/test/unit/SigninWithPasskeyApiService.ts
+++ b/packages/backend/test/unit/SigninWithPasskeyApiService.ts
@@ -89,8 +89,8 @@ describe('SigninWithPasskeyApiService', () => {
app = await Test.createTestingModule({
imports: [GlobalModule, CoreModule],
providers: [
- SigninWithPasskeyApiService,
- { provide: RateLimiterService, useClass: FakeLimiter },
+ SigninWithPasskeyApiService,
+ { provide: RateLimiterService, useClass: FakeLimiter },
{ provide: SigninService, useClass: FakeSigninService },
],
}).useMocker((token) => {
@@ -115,7 +115,7 @@ describe('SigninWithPasskeyApiService', () => {
jest.spyOn(webAuthnService, 'verifySignInWithPasskeyAuthentication').mockImplementation(FakeWebauthnVerify);
const dummyUser = {
- id: uid, username: uid, usernameLower: uid.toLocaleLowerCase(), uri: null, host: null,
+ id: uid, username: uid, usernameLower: uid.toLowerCase(), uri: null, host: null,
};
const dummyProfile = {
userId: uid,
diff --git a/packages/backend/test/unit/entities/UserEntityService.ts b/packages/backend/test/unit/entities/UserEntityService.ts
index 6b7eedff55..ce3f931bb0 100644
--- a/packages/backend/test/unit/entities/UserEntityService.ts
+++ b/packages/backend/test/unit/entities/UserEntityService.ts
@@ -74,7 +74,7 @@ describe('UserEntityService', () => {
...userData,
id: genAidx(Date.now()),
username: un,
- usernameLower: un,
+ usernameLower: un.toLowerCase(),
})
.then(x => usersRepository.findOneByOrFail(x.identifiers[0]));