Skip to content

Commit 50ae06e

Browse files
jtomaszewskiclaude
andauthored
fix!: rename delivedToListeners to deliveredToListeners (#2)
Fix typo in field name throughout codebase and add database migrations to rename the column from delived_to_listeners to delivered_to_listeners. BREAKING CHANGE: Existing databases require running the new migration to rename the column. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <noreply@anthropic.com>
1 parent b9d674b commit 50ae06e

11 files changed

+63
-18
lines changed

packages/core/src/model/inbox-outbox-transport-event.interface.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ export interface InboxOutboxTransportEvent {
22
id: number;
33
eventName: string;
44
eventPayload: any;
5-
delivedToListeners: string[];
5+
deliveredToListeners: string[];
66
readyToRetryAfter: number | null;
77
expireAt: number;
88
insertedAt: number;

packages/core/src/poller/retryable-inbox-outbox-event.poller.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export class RetryableInboxOutboxEventPoller implements OnModuleInit {
5858
return Promise.allSettled(
5959
inboxOutboxTransportEvents.map((inboxOutboxTransportEvent) => {
6060
const notDeliveredToListeners = this.transactionalEventEmitter.getListeners(inboxOutboxTransportEvent.eventName).filter((listener) => {
61-
return !inboxOutboxTransportEvent.delivedToListeners.includes(listener.getName());
61+
return !inboxOutboxTransportEvent.deliveredToListeners.includes(listener.getName());
6262
});
6363

6464
return this.inboxOutboxEventProcessor.process(

packages/core/src/processor/inbox-outbox-event.processor.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ export class InboxOutboxEventProcessor implements InboxOutboxEventProcessorContr
3434
}
3535

3636
if (deliveredToListeners.length > 0) {
37-
inboxOutboxTransportEvent.delivedToListeners.push(...deliveredToListeners);
37+
inboxOutboxTransportEvent.deliveredToListeners.push(...deliveredToListeners);
3838
await databaseDriver.persist(inboxOutboxTransportEvent);
3939
}
4040

packages/core/src/test/unit/inbox-outbox-event-processor.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ describe('InboxOutboxEventProcessor', () => {
6868

6969
const inboxOutboxTransportEvent : InboxOutboxTransportEvent = {
7070
readyToRetryAfter: new Date().getTime(),
71-
delivedToListeners: [],
71+
deliveredToListeners: [],
7272
eventName: 'newEvent',
7373
eventPayload: {},
7474
expireAt: new Date().getTime() + 1000,
@@ -116,7 +116,7 @@ describe('InboxOutboxEventProcessor', () => {
116116

117117
const inboxOutboxTransportEvent : InboxOutboxTransportEvent = {
118118
readyToRetryAfter: new Date().getTime(),
119-
delivedToListeners: [],
119+
deliveredToListeners: [],
120120
eventName: 'newEvent',
121121
eventPayload: {},
122122
expireAt: new Date().getTime() + 1000,
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import { Migration } from '@mikro-orm/migrations';
2+
3+
export class MigrationInboxOutbox1733250000 extends Migration {
4+
async up(): Promise<void> {
5+
this.addSql(
6+
this.getKnex()
7+
.schema.alterTable('inbox_outbox_transport_event', (table) => {
8+
table.renameColumn('delived_to_listeners', 'delivered_to_listeners');
9+
})
10+
.toQuery(),
11+
);
12+
}
13+
14+
async down(): Promise<void> {
15+
this.addSql(
16+
this.getKnex()
17+
.schema.alterTable('inbox_outbox_transport_event', (table) => {
18+
table.renameColumn('delivered_to_listeners', 'delived_to_listeners');
19+
})
20+
.toQuery(),
21+
);
22+
}
23+
}
Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
import { MigrationInboxOutbox1708527074 } from "./MigrationInboxOutbox1708527074";
2-
3-
export const InboxOutboxMigrations = [MigrationInboxOutbox1708527074];
2+
import { MigrationInboxOutbox1733250000 } from "./MigrationInboxOutbox1733250000";
3+
4+
export const InboxOutboxMigrations = [MigrationInboxOutbox1708527074, MigrationInboxOutbox1733250000];

packages/mikroorm-driver/src/model/mikroorm-inbox-outbox-transport-event.model.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,9 @@ export class MikroOrmInboxOutboxTransportEvent implements InboxOutboxTransportEv
1818

1919
@Property({
2020
type: 'json',
21+
fieldName: 'delivered_to_listeners',
2122
})
22-
delivedToListeners: string[];
23+
deliveredToListeners: string[];
2324

2425
@Property({ type: 'bigint' })
2526
readyToRetryAfter: number;
@@ -37,7 +38,7 @@ export class MikroOrmInboxOutboxTransportEvent implements InboxOutboxTransportEv
3738
event.expireAt = expireAt;
3839
event.readyToRetryAfter = readyToRetryAfter;
3940
event.insertedAt = Date.now();
40-
event.delivedToListeners = [];
41+
event.deliveredToListeners = [];
4142
return event;
4243
}
4344
}

packages/mikroorm-driver/src/test/mikroorm-inbox-outbox-transport-event.spec.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ describe('MikroOrmInboxOutboxTransportEvent', () => {
5252
expect(event.eventPayload).toEqual(eventPayload);
5353
expect(event.expireAt).toBe(expireAt);
5454
expect(event.readyToRetryAfter).toBe(readyToRetryAfter);
55-
expect(event.delivedToListeners).toEqual([]);
55+
expect(event.deliveredToListeners).toEqual([]);
5656
expect(event.insertedAt).toBeDefined();
5757
expect(event.insertedAt).toBeLessThanOrEqual(Date.now());
5858
});
@@ -88,7 +88,7 @@ describe('MikroOrmInboxOutboxTransportEvent', () => {
8888
expect(retrieved).toBeDefined();
8989
expect(retrieved!.eventName).toBe('PersistenceTest');
9090
expect(retrieved!.eventPayload).toEqual(eventPayload);
91-
expect(retrieved!.delivedToListeners).toEqual([]);
91+
expect(retrieved!.deliveredToListeners).toEqual([]);
9292
});
9393

9494
it('should persist JSON payload correctly', async () => {
@@ -116,22 +116,22 @@ describe('MikroOrmInboxOutboxTransportEvent', () => {
116116
expect(retrieved!.eventPayload).toEqual(complexPayload);
117117
});
118118

119-
it('should persist delivedToListeners as JSON array', async () => {
119+
it('should persist deliveredToListeners as JSON array', async () => {
120120
const event = new MikroOrmInboxOutboxTransportEvent().create(
121121
'ListenersTest',
122122
{},
123123
Date.now() + 60000,
124124
Date.now() + 5000,
125125
);
126-
event.delivedToListeners = ['listener1', 'listener2'];
126+
event.deliveredToListeners = ['listener1', 'listener2'];
127127

128128
orm.em.persist(event);
129129
await orm.em.flush();
130130
orm.em.clear();
131131

132132
const retrieved = await orm.em.findOne(MikroOrmInboxOutboxTransportEvent, { eventName: 'ListenersTest' });
133133

134-
expect(retrieved!.delivedToListeners).toEqual(['listener1', 'listener2']);
134+
expect(retrieved!.deliveredToListeners).toEqual(['listener1', 'listener2']);
135135
});
136136

137137
it('should generate auto-increment id on persist', async () => {
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import { MigrationInterface, QueryRunner } from "typeorm";
2+
3+
export class MigrationInboxOutbox1733250000 implements MigrationInterface {
4+
async up(queryRunner: QueryRunner): Promise<void> {
5+
await queryRunner.renameColumn(
6+
'inbox_outbox_transport_event',
7+
'delived_to_listeners',
8+
'delivered_to_listeners'
9+
);
10+
}
11+
12+
async down(queryRunner: QueryRunner): Promise<void> {
13+
await queryRunner.renameColumn(
14+
'inbox_outbox_transport_event',
15+
'delivered_to_listeners',
16+
'delived_to_listeners'
17+
);
18+
}
19+
}
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
import { MigrationInboxOutbox1726154235704 } from "./MigrationInboxOutbox1726154235704";
2+
import { MigrationInboxOutbox1733250000 } from "./MigrationInboxOutbox1733250000";
23

3-
export const InboxOutboxTransportEventMigrations = [MigrationInboxOutbox1726154235704]
4+
export const InboxOutboxTransportEventMigrations = [MigrationInboxOutbox1726154235704, MigrationInboxOutbox1733250000]

0 commit comments

Comments
 (0)