{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":477198595,"defaultBranch":"master","name":"damus","ownerLogin":"damus-io","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-04-03T00:00:20.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/104653694?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726776038.0","currentOid":""},"activityList":{"items":[{"before":"f69fde0df9a61bd8c6c6b0aae5aaeea65627f576","after":"fe4ef596b5ffcddff9a069d9a941b83a722676ca","ref":"refs/heads/simplify-reconnect","pushedAt":"2024-09-19T22:02:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"relay: don't reconnect when we don't have to\n\nWe are reconnecting multiple times for two separate reasons:\n\n1. On a cancellation \"error\" which does not warrant a reconnect\n\n2. In our reconnection backoff it doesn't check If we are already\n connecting or connected. We check this so we don't reconnect multiple\n times.\n\nThis fixes many reconnection issues and makes Damus feel wayyy snappier.\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"relay: don't reconnect when we don't have to"}},{"before":null,"after":"f69fde0df9a61bd8c6c6b0aae5aaeea65627f576","ref":"refs/heads/simplify-reconnect","pushedAt":"2024-09-19T20:00:38.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"relay: simplify reconnect logic\n\nThis simplifies the reconnection logic to 5 second intervals. The\nbackoff thing was dubious, and I think it was trying to trigger\nreconnects too quickly? Hard to say. I'm not seeing any reconnect issues\nanymore\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"relay: simplify reconnect logic"}},{"before":"9e0b9debb457424433066d06798b2ad4d93ba0be","after":"b5a81e2586cb8c20549f40137d7de97c04b49af3","ref":"refs/heads/master","pushedAt":"2024-09-19T02:15:24.000Z","pushType":"push","commitsCount":8,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Merge branch 'release_1.10'","shortMessageHtmlLink":"Merge branch 'release_1.10'"}},{"before":"6fa2e8b5c635a31e765b908e94b370b0b9b88fb3","after":"6254cea6009ad392fe93fdf255202f7753632f44","ref":"refs/heads/release_1.10","pushedAt":"2024-09-19T01:31:11.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Improve notification view filtering UX\n\n- Add subtitle below the toolbar title to indicate the state of the filter\n- Add settings icon to take user to the notification settings page, and\n thus make that more discoverable\n\nTesting\n-------\n\nPASS\n\nDevice: iPhone 13 mini\niOS: 17.6.1\nCoverage:\n1. Switching back and forth between the notifications tab and other tabs\n causes subtitle to show/hide as expected in both filter options\n (all, friends)\n2. Subtitle follows the friends filter\n3. Subtitle shows after restarting the app\n4. Settings icon appears and takes user to the notification setting view\n5. Notification settings can be updated from that view.\n\nChangelog-Changed: Improve notification view filtering UX\nCloses: https://github.com/damus-io/damus/issues/2480\nSigned-off-by: Daniel D’Aquino ","shortMessageHtmlLink":"Improve notification view filtering UX"}},{"before":"2278ab09a4864d7aca0f7f5c4ed52d918ed27190","after":"6fa2e8b5c635a31e765b908e94b370b0b9b88fb3","ref":"refs/heads/release_1.10","pushedAt":"2024-09-19T00:50:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Fix issue where theme would be changed to black and can't be switched back on iOS 18\n\nRemoved line which forces preferred colour scheme to dark on iOS 18, and\nmade adjustments to the styling to maintain text legibility\n\nChangelog-Fixed: Fixed issue where theme would be changed to black and can't be switched back on iOS 18\nCloses: https://github.com/damus-io/damus/issues/2373\nCo-authored-by: Daniel D’Aquino \nSigned-off-by: Daniel D’Aquino ","shortMessageHtmlLink":"Fix issue where theme would be changed to black and can't be switched…"}},{"before":"dfa72fceb10dc0cd6867870acfc1f2b69c890722","after":"2278ab09a4864d7aca0f7f5c4ed52d918ed27190","ref":"refs/heads/release_1.10","pushedAt":"2024-09-18T23:59:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Improve local contact list handling\n\nUnless the user signed up after changes from Github issue #2057, the contact list delegate would never be set due to a logic error, which means latest_contact_event_changed would never get called and the app would never save a local contact list reference to pull from — which caused issues when switching to different relays.\n\nTesting\n--------\n\nPASS\n\nDevice: iPhone 15 simulator\niOS: 17.5\nSetup: Manually removed UserSettingsStore::latest_contact_event_id_hex value to replicate the entry condition for the bug\nSteps:\n1. Add new relay (relay.zap.store)\n2. Remove all other relays\n3. Attempt to add relay. Ensure new relay can be added\n4. Remove all relays\n5. Add the `wss://notify-staging.damus.io` relay (which will not save any events)\n6. Restart app\n7. Try to add a new relay. Ensure a new relay can be added\n8. Make a test post. Ensure the new test post is posted successfully.\n\nChangelog-Fixed: Fixed some scenarios where the contact list would never be saved locally and cause issues when switching relays.\nCloses: https://github.com/damus-io/damus/issues/2293\nSigned-off-by: Daniel D’Aquino ","shortMessageHtmlLink":"Improve local contact list handling"}},{"before":"3902fe7b30f38ec104c13087948799e38e26fa91","after":"dfa72fceb10dc0cd6867870acfc1f2b69c890722","ref":"refs/heads/release_1.10","pushedAt":"2024-09-13T22:57:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Fix unit test build\n\nA change around the NostrPost interfaces caused unit tests to fail\ncompilation. This commit fixes that.\n\nSigned-off-by: Daniel D’Aquino ","shortMessageHtmlLink":"Fix unit test build"}},{"before":"379de6ff8e3ae921a92502fc1e98da57cf81f635","after":"9e0b9debb457424433066d06798b2ad4d93ba0be","ref":"refs/heads/master","pushedAt":"2024-09-11T23:24:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Improve local contact list handling\n\nUnless the user signed up after changes from Github issue #2057, the contact list delegate would never be set due to a logic error, which means latest_contact_event_changed would never get called and the app would never save a local contact list reference to pull from — which caused issues when switching to different relays.\n\nTesting\n--------\n\nPASS\n\nDevice: iPhone 15 simulator\niOS: 17.5\nSetup: Manually removed UserSettingsStore::latest_contact_event_id_hex value to replicate the entry condition for the bug\nSteps:\n1. Add new relay (relay.zap.store)\n2. Remove all other relays\n3. Attempt to add relay. Ensure new relay can be added\n4. Remove all relays\n5. Add the `wss://notify-staging.damus.io` relay (which will not save any events)\n6. Restart app\n7. Try to add a new relay. Ensure a new relay can be added\n8. Make a test post. Ensure the new test post is posted successfully.\n\nChangelog-Fixed: Fixed some scenarios where the contact list would never be saved locally and cause issues when switching relays.\nCloses: https://github.com/damus-io/damus/issues/2293\nSigned-off-by: Daniel D’Aquino ","shortMessageHtmlLink":"Improve local contact list handling"}},{"before":"471bb4638a0f2b807271c3b21ee66b8d83472e24","after":"3902fe7b30f38ec104c13087948799e38e26fa91","ref":"refs/heads/release_1.10","pushedAt":"2024-09-06T21:29:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Enable push notifications feature for everyone and set notification mode to push\n\nThis commit hardcodes the push notification feature flag to true, in\npreparation for purple testflight release.\n\nIt also changes the notification mode setting string, to ensure that we\nwon't have issues with people being stuck with local notification mode.\n\nTesting\n-------\n\nSteps:\n1. Run app\n2. Ensure push notification flag is gone from developer Settings\n3. Ensure notification mode is set to push, and that the push option is available\n4. Ensure push notification settings appear as \"synced successfully\"\n\nConditions:\n- iPhone 13 mini, iOS 17.6.1, on a device that was already under testing\n- iPad simulator, iOS 17.5, brand new account\n\nChangelog-Added: Push notification support\nSigned-off-by: Daniel D’Aquino ","shortMessageHtmlLink":"Enable push notifications feature for everyone and set notification m…"}},{"before":"cb241741e350222160f7095487a7310ec3051bfb","after":"471bb4638a0f2b807271c3b21ee66b8d83472e24","ref":"refs/heads/release_1.10","pushedAt":"2024-09-06T16:16:22.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"Merge 'Add localization data to extensions' into release_1.10\n\nDaniel D’Aquino (1):\n Add localization data to extensions","shortMessageHtmlLink":"Merge 'Add localization data to extensions' into release_1.10"}},{"before":"8481ab85de3a7488985899640700e7d9ba4e3ed0","after":"8c5b0ed5c443f97b09c295c4bfb7f448f0f6aa1e","ref":"refs/heads/translations","pushedAt":"2024-09-06T07:19:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"transifex-integration[bot]","name":null,"path":"/apps/transifex-integration","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/18568?s=80&v=4"},"commit":{"message":"Translate Localizable.strings in de\n\n100% translated source file: 'Localizable.strings'\non 'de'.","shortMessageHtmlLink":"Translate Localizable.strings in de"}},{"before":"d2acf61e5a591c86630be730efa6b99d16ccba74","after":"379de6ff8e3ae921a92502fc1e98da57cf81f635","ref":"refs/heads/master","pushedAt":"2024-09-06T03:09:27.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Merge branch 'release_1.10'","shortMessageHtmlLink":"Merge branch 'release_1.10'"}},{"before":"da7af491d0748ce4d4c03d2db66335888dd5dd06","after":"cb241741e350222160f7095487a7310ec3051bfb","ref":"refs/heads/release_1.10","pushedAt":"2024-09-06T03:06:09.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"notifications: add more logging\n\nneeded this to debug stuff\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"notifications: add more logging"}},{"before":null,"after":"f6d361cc6f2c8fd547d8f465c516959487bc7cce","ref":"refs/heads/notification-fixes","pushedAt":"2024-09-05T23:58:58.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"notifications: add more logging\n\nneeded this to debug stuff\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"notifications: add more logging"}},{"before":"51b1b81c0e28a5ea9ae225afd7fc347ee38a14f7","after":"d2acf61e5a591c86630be730efa6b99d16ccba74","ref":"refs/heads/master","pushedAt":"2024-09-05T23:42:26.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"Merge 'Add localization data to extensions'\n\nDaniel D’Aquino (1):\n Add localization data to extensions","shortMessageHtmlLink":"Merge 'Add localization data to extensions'"}},{"before":"7b9d0edef4200d403c3e9bd0fc8835ba355c2d1c","after":"51b1b81c0e28a5ea9ae225afd7fc347ee38a14f7","ref":"refs/heads/master","pushedAt":"2024-09-04T18:10:03.000Z","pushType":"push","commitsCount":21,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Merge branch 'release_1.10' into master","shortMessageHtmlLink":"Merge branch 'release_1.10' into master"}},{"before":"90b284fb6edbc1180d8cf71429f9ccf49a7b9f4c","after":"da7af491d0748ce4d4c03d2db66335888dd5dd06","ref":"refs/heads/release_1.10","pushedAt":"2024-09-04T17:16:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Implement support for reply notification formatting\n\nThis commit implements support for nicely formatting reply push\nnotifications.\n\nTesting\n-------\n\nPASS\n\nDevice: iPhone 15 simulator\nnotepush: 11568aa6285142e4c19bb0da30977957a92b7d9b\nDamus: This commit\nSettings: Local push notification setup\nSteps:\n1. Create a post from account 1\n2. On account 2, make a reply to that post\n3. Ensure we get a push notification with:\n - A title formatted as \" replied to your note\"\n - A body with the contents of that reply\n4. Click on that push notification. Ensure you are taken to the reply\n5. Now make a post from account 2 and mention account 1 in it\n6. Ensure push notification says that account 2 mentioned account 1 (i.e. does not talk about a reply)\n\nSigned-off-by: Daniel D’Aquino \nCloses: https://github.com/damus-io/damus/issues/2403","shortMessageHtmlLink":"Implement support for reply notification formatting"}},{"before":"c1a89bd61722ba56b25b3f22971ba7de1abf29d3","after":"90b284fb6edbc1180d8cf71429f9ccf49a7b9f4c","ref":"refs/heads/release_1.10","pushedAt":"2024-09-04T17:16:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danieldaquino","name":"Daniel D’Aquino","path":"/danieldaquino","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24692108?s=80&v=4"},"commit":{"message":"Add option to specify custom push notification server for testing\n\nThis commit adds an option that allows a user to choose a custom push\nnotification server, as well as the staging notify server, to help with testing\n\nSigned-off-by: Daniel D’Aquino ","shortMessageHtmlLink":"Add option to specify custom push notification server for testing"}},{"before":"d2a80cce4ef35b7ea0cdac3ff334f85e97f3fbd9","after":"c1a89bd61722ba56b25b3f22971ba7de1abf29d3","ref":"refs/heads/release_1.10","pushedAt":"2024-09-01T16:03:35.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"build: fix versions again","shortMessageHtmlLink":"build: fix versions again"}},{"before":"c22fc8613d84b7a9f26500be1baf60aa006f4ba6","after":"7b9d0edef4200d403c3e9bd0fc8835ba355c2d1c","ref":"refs/heads/master","pushedAt":"2024-09-01T14:35:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"highlighter: add missing PostingTimelineView\n\nThis was refactored by eric on master, let's make sure we\nadd it to the highlighter extension build\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"highlighter: add missing PostingTimelineView"}},{"before":"27083669fa79e542de32700839ca89e416ed8051","after":"c22fc8613d84b7a9f26500be1baf60aa006f4ba6","ref":"refs/heads/master","pushedAt":"2024-09-01T14:29:11.000Z","pushType":"push","commitsCount":13,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"Merge Highlighter\n\nThis brings Daniel's highlighter safari extension to master/testflight.\nPreviously we only had it on the 1.10 release branch. This also includes\nsome extended virtual addressing fixes to fix push notifications, we\nalso update the push notification server address since that seems to\nhave been missed.\n\nDaniel D’Aquino (8):\n Update push notification server address\n Add convenience functions\n Simplify SelectableText state management\n Add support for rendering highlights with comments\n Add support for adding comments when creating a highlight\n Add highlighter extension\n Fix highlight tag ambiguity with specifiers\n Improve handling of NostrDB when switching apps\n\nWilliam Casarin (5):\n lmdb: patch semaphore names to use shared group container prefix\n Revert \"ux: Mute selected text\"\n notifications: add extended virtual addressing entitlement\n highlighter: add extended virtual addressing entitlement","shortMessageHtmlLink":"Merge Highlighter"}},{"before":null,"after":"f61308e57371b997af70d07700f993f4d867ff20","ref":"refs/heads/highlighter","pushedAt":"2024-09-01T14:23:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"highlighter: add extended virtual addressing entitlement\n\nThis is needed for opening nostrdb\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"highlighter: add extended virtual addressing entitlement"}},{"before":"c69ddd7241f1cd40d3a9e67bc6fa4a6a3a95dc71","after":"d2a80cce4ef35b7ea0cdac3ff334f85e97f3fbd9","ref":"refs/heads/release_1.10","pushedAt":"2024-09-01T14:01:19.000Z","pushType":"push","commitsCount":11,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"Merge Highlighter into release_1.10\n\nDaniel D’Aquino (7):\n Add convenience functions\n Simplify SelectableText state management\n Add support for rendering highlights with comments\n Add support for adding comments when creating a highlight\n Add highlighter extension\n Fix highlight tag ambiguity with specifiers\n Improve handling of NostrDB when switching apps\n\nWilliam Casarin (4):\n lmdb: patch semaphore names to use group container prefix\n notifications: add extended virtual addressing entitlement\n highlighter: add extended virtual addressing entitlement","shortMessageHtmlLink":"Merge Highlighter into release_1.10"}},{"before":"1279791d65492feefa49b25237d849f208b2b06b","after":"0cc9fc1670c4e314e0897c62a6314da6f6c85bc3","ref":"refs/heads/highlighter-entitlements","pushedAt":"2024-09-01T13:44:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"highlighter: add extended virtual addressing entitlement\n\nThis is needed for opening nostrdb\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"highlighter: add extended virtual addressing entitlement"}},{"before":null,"after":"1279791d65492feefa49b25237d849f208b2b06b","ref":"refs/heads/highlighter-entitlements","pushedAt":"2024-09-01T13:43:17.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"notifications: add extended virtual addressing entitlement\n\nIt looks like our push notification service was missing the extended\nvirtual memory entitlement. This is required to open nostrdb databases.\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"notifications: add extended virtual addressing entitlement"}},{"before":"b2fdd4c84b269a5b3368ac192a6de2817faeb108","after":"56cda9326aae47c076e05dc20e15c6846ddb02ff","ref":"refs/heads/lmdb-group-semname","pushedAt":"2024-09-01T13:36:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"notifications: add extended virtual addressing entitlement\n\nIt looks like our push notification service was missing the extended\nvirtual memory entitlement. This is required to open nostrdb databases.\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"notifications: add extended virtual addressing entitlement"}},{"before":"437891a67f30aa5a4a1fcf1f5e0c86883ac70313","after":"b2fdd4c84b269a5b3368ac192a6de2817faeb108","ref":"refs/heads/lmdb-group-semname","pushedAt":"2024-09-01T13:27:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"lmdb: patch semaphore names to use group container prefix\n\nThis is an attempt to fix various issues when acquiring a IPC\nsemaphore on iOS\n\nSee: https://github.com/damus-io/damus/issues/2323#issuecomment-2323181204\n\nRunning this patch gives us these names:\n\nmdb_env_setup_locks: using semnames\n 'group.com.damus/MDBrwDDi_FHxD' (29),\n 'group.com.damus/MDBwwDDi_FHxD' (29)\n\nFrom old Apple docs:\n\n> IPC and POSIX Semaphores and Shared Memory\n>\n> Normally, sandboxed apps cannot use Mach IPC, POSIX semaphores and\n> shared memory, or UNIX domain sockets (usefully). However, by specifying\n> an entitlement that requests membership in an application group, an app\n> can use these technologies to communicate with other members of that\n> application group.\n>\n> Note: System V semaphores are not supported in sandboxed apps.\n>\n> UNIX domain sockets are straightforward; they work just like any other\n> file.\n>\n> Any semaphore or Mach port that you wish to access within a sandboxed\n> app must be named according to a special convention:\n>\n> POSIX semaphores and shared memory names must begin with the application\n> group identifier, followed by a slash (/), followed by a name of your\n> choosing.\n>\n> Mach port names must begin with the application group identifier,\n> followed by a period (.), followed by a name of your choosing.\n>\n> For example, if your application group’s name is\n> Z123456789.com.example.app-group, you might create two semaphores named\n> Z123456789.myappgroup/rdyllwflg and Z123456789.myappgroup/bluwhtflg. You\n> might create a Mach port named\n> Z123456789.com.example.app-group.Port_of_Kobe.\n>\n> Note: The maximum length of a POSIX semaphore name is only 31 bytes, so\n> if you need to use POSIX semaphores, you should keep your app group\n> names short.\n\nLink: https://github.com/damus-io/damus/issues/2323#issuecomment-2323305949\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"lmdb: patch semaphore names to use group container prefix"}},{"before":null,"after":"437891a67f30aa5a4a1fcf1f5e0c86883ac70313","ref":"refs/heads/lmdb-group-semname","pushedAt":"2024-09-01T13:24:53.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"lmdb: patch semaphore names to use shared group container prefix\n\nmdb_env_setup_locks: using semnames\n 'group.com.damus/MDBrwDDi_FHxD' (29),\n 'group.com.damus/MDBwwDDi_FHxD' (29)\n\nFrom old Apple docs:\n\n> IPC and POSIX Semaphores and Shared Memory\n>\n> Normally, sandboxed apps cannot use Mach IPC, POSIX semaphores and\n> shared memory, or UNIX domain sockets (usefully). However, by specifying\n> an entitlement that requests membership in an application group, an app\n> can use these technologies to communicate with other members of that\n> application group.\n>\n> Note: System V semaphores are not supported in sandboxed apps.\n>\n> UNIX domain sockets are straightforward; they work just like any other\n> file.\n>\n> Any semaphore or Mach port that you wish to access within a sandboxed\n> app must be named according to a special convention:\n>\n> POSIX semaphores and shared memory names must begin with the application\n> group identifier, followed by a slash (/), followed by a name of your\n> choosing.\n>\n> Mach port names must begin with the application group identifier,\n> followed by a period (.), followed by a name of your choosing.\n>\n> For example, if your application group’s name is\n> Z123456789.com.example.app-group, you might create two semaphores named\n> Z123456789.myappgroup/rdyllwflg and Z123456789.myappgroup/bluwhtflg. You\n> might create a Mach port named\n> Z123456789.com.example.app-group.Port_of_Kobe.\n>\n> Note: The maximum length of a POSIX semaphore name is only 31 bytes, so\n> if you need to use POSIX semaphores, you should keep your app group\n> names short.\n\nLink: https://github.com/damus-io/damus/issues/2323#issuecomment-2323305949\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"lmdb: patch semaphore names to use shared group container prefix"}},{"before":"1f3d846830ff87fe46103dbfe711fe12bbdf8d5e","after":"f8931a6af2d1cca6b2f836dd11c734f3fd41fecb","ref":"refs/heads/nostrdb-update","pushedAt":"2024-09-01T12:00:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jb55","name":"William Casarin","path":"/jb55","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45598?s=80&v=4"},"commit":{"message":"wip local relay model\n\nSigned-off-by: William Casarin ","shortMessageHtmlLink":"wip local relay model"}},{"before":"881d3a3aa160b46b27ec46e03ab91516a8607a14","after":"8481ab85de3a7488985899640700e7d9ba4e3ed0","ref":"refs/heads/translations","pushedAt":"2024-09-01T08:22:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"transifex-integration[bot]","name":null,"path":"/apps/transifex-integration","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/18568?s=80&v=4"},"commit":{"message":"Translate Localizable.strings in zh_TW\n\n100% translated source file: 'Localizable.strings'\non 'zh_TW'.","shortMessageHtmlLink":"Translate Localizable.strings in zh_TW"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEu1sLnAA","startCursor":null,"endCursor":null}},"title":"Activity · damus-io/damus"}