Page MenuHomePhorge

D8103.1768409154.diff
No OneTemporary

Size
4 KB
Referenced Files
None
Subscribers
None

D8103.1768409154.diff

diff --git a/keyserver/src/creators/message-creator.js b/keyserver/src/creators/message-creator.js
--- a/keyserver/src/creators/message-creator.js
+++ b/keyserver/src/creators/message-creator.js
@@ -456,6 +456,9 @@
}
const { generatesNotifs } = messageSpecs[type];
const messageData = messageDatas[messageIndex];
+ if (!generatesNotifs) {
+ return undefined;
+ }
const doesGenerateNotif = await generatesNotifs(
messageInfo,
messageData,
diff --git a/lib/shared/messages/add-members-message-spec.js b/lib/shared/messages/add-members-message-spec.js
--- a/lib/shared/messages/add-members-message-spec.js
+++ b/lib/shared/messages/add-members-message-spec.js
@@ -152,8 +152,6 @@
);
},
- generatesNotifs: async () => undefined,
-
userIDs(rawMessageInfo: RawAddMembersMessageInfo): $ReadOnlyArray<string> {
return rawMessageInfo.addedUserIDs;
},
diff --git a/lib/shared/messages/edit-message-spec.js b/lib/shared/messages/edit-message-spec.js
--- a/lib/shared/messages/edit-message-spec.js
+++ b/lib/shared/messages/edit-message-spec.js
@@ -140,7 +140,5 @@
return unwrapped;
},
- generatesNotifs: async () => undefined,
-
validator: rawEditMessageInfoValidator,
});
diff --git a/lib/shared/messages/join-thread-message-spec.js b/lib/shared/messages/join-thread-message-spec.js
--- a/lib/shared/messages/join-thread-message-spec.js
+++ b/lib/shared/messages/join-thread-message-spec.js
@@ -119,7 +119,5 @@
return joinResult(rawMessageInfo.type, rawMessageInfo.threadID);
},
- generatesNotifs: async () => undefined,
-
validator: rawJoinThreadMessageInfoValidator,
});
diff --git a/lib/shared/messages/leave-thread-message-spec.js b/lib/shared/messages/leave-thread-message-spec.js
--- a/lib/shared/messages/leave-thread-message-spec.js
+++ b/lib/shared/messages/leave-thread-message-spec.js
@@ -119,7 +119,5 @@
return joinResult(rawMessageInfo.type, rawMessageInfo.threadID);
},
- generatesNotifs: async () => undefined,
-
validator: rawLeaveThreadMessageInfoValidator,
});
diff --git a/lib/shared/messages/message-spec.js b/lib/shared/messages/message-spec.js
--- a/lib/shared/messages/message-spec.js
+++ b/lib/shared/messages/message-spec.js
@@ -106,7 +106,7 @@
rawMessageInfo: RawInfo,
messageData: Data,
) => ?string,
- +generatesNotifs: (
+ +generatesNotifs?: (
rawMessageInfo: RawInfo,
messageData: Data,
params: GeneratesNotifsParams,
diff --git a/lib/shared/messages/remove-members-message-spec.js b/lib/shared/messages/remove-members-message-spec.js
--- a/lib/shared/messages/remove-members-message-spec.js
+++ b/lib/shared/messages/remove-members-message-spec.js
@@ -152,8 +152,6 @@
);
},
- generatesNotifs: async () => undefined,
-
userIDs(rawMessageInfo: RawRemoveMembersMessageInfo): $ReadOnlyArray<string> {
return rawMessageInfo.removedUserIDs;
},
diff --git a/lib/shared/messages/toggle-pin-message-spec.js b/lib/shared/messages/toggle-pin-message-spec.js
--- a/lib/shared/messages/toggle-pin-message-spec.js
+++ b/lib/shared/messages/toggle-pin-message-spec.js
@@ -155,7 +155,5 @@
return unwrapped;
},
- generatesNotifs: async () => undefined,
-
validator: rawTogglePinMessageInfoValidator,
});
diff --git a/native/root.react.js b/native/root.react.js
--- a/native/root.react.js
+++ b/native/root.react.js
@@ -60,6 +60,7 @@
// Add custom items to expo-dev-menu
import './dev-menu.js';
+import './types/message-types-validator.js';
if (Platform.OS === 'android') {
UIManager.setLayoutAnimationEnabledExperimental &&
diff --git a/native/types/message-types-validator.js b/native/types/message-types-validator.js
new file mode 100644
--- /dev/null
+++ b/native/types/message-types-validator.js
@@ -0,0 +1,29 @@
+// @flow
+import { Alert } from 'react-native';
+
+import { messageSpecs } from 'lib/shared/messages/message-specs.js';
+import { messageTypes } from 'lib/types/message-types-enum.js';
+
+import { commConstants } from '../native-modules.js';
+
+if (__DEV__) {
+ const messageTypesCpp = new Set(commConstants.NATIVE_MESSAGE_TYPES);
+ const missingMessageTypesCpp = [];
+ for (const messageName in messageTypes) {
+ const messageType = messageTypes[messageName];
+ if (
+ messageSpecs[messageType]?.generatesNotifs &&
+ !messageTypesCpp.has(messageType)
+ ) {
+ missingMessageTypesCpp.push(messageName);
+ }
+ }
+
+ if (missingMessageTypesCpp.length !== 0) {
+ Alert.alert(
+ 'C++ MessageSpecs missing',
+ 'C++ MessageSpec implementation missing for message types: ' +
+ missingMessageTypesCpp.join(', '),
+ );
+ }
+}

File Metadata

Mime Type
text/plain
Expires
Wed, Jan 14, 4:45 PM (7 h, 6 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5931004
Default Alt Text
D8103.1768409154.diff (4 KB)

Event Timeline