{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":468450861,"defaultBranch":"main","name":"mapeo-core-next","ownerLogin":"digidem","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-03-10T17:45:33.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/405221?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717620792.0","currentOid":""},"activityList":{"items":[{"before":"67317ae2dab5fbead6b96a0adfde4825d902fec8","after":"62a9c77c56b04a76ad16dc8029015da4715a94ea","ref":"refs/heads/rename-connectPeer-to-connectLocalPeer","pushedAt":"2024-06-05T21:02:23.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"Merge branch 'main' into rename-connectPeer-to-connectLocalPeer","shortMessageHtmlLink":"Merge branch 'main' into rename-connectPeer-to-connectLocalPeer"}},{"before":null,"after":"eb5f9cd9049512cdede8d3b915de3b9be8cd87d9","ref":"refs/heads/2024-06-05-dnspeer","pushedAt":"2024-06-05T20:53:12.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"Uhh the test works???","shortMessageHtmlLink":"Uhh the test works???"}},{"before":null,"after":"67317ae2dab5fbead6b96a0adfde4825d902fec8","ref":"refs/heads/rename-connectPeer-to-connectLocalPeer","pushedAt":"2024-06-05T19:36:12.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"chore!: rename `connectPeer` to `connectLocalPeer`\n\nThis change should have no impact.\n\nI think `connectLocalPeer` is a slightly better name because:\n\n- Other methods, like `listLocalPeers()`, call them \"local peers\", not\n just \"peers\".\n- It clears the path for other peer types, like cloud peers (imagine a\n `connectCloudPeer()` method or similar).","shortMessageHtmlLink":"chore!: rename connectPeer to connectLocalPeer"}},{"before":"1b7fc2ae104fdcfa1bfe00bc973054756084ae4a","after":null,"ref":"refs/heads/feat/configImportTranslations","pushedAt":"2024-06-05T18:33:34.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tomasciccola","name":null,"path":"/tomasciccola","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/117094913?s=80&v=4"}},{"before":"56fa2b7413a2e6a2a8398d0f11dca7292101274a","after":"eeb87af61f275fc95963eac54c2c12744fcb4fd2","ref":"refs/heads/main","pushedAt":"2024-06-05T18:33:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tomasciccola","name":null,"path":"/tomasciccola","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/117094913?s=80&v=4"},"commit":{"message":"feat: config import translations (#602)\n\n* initial implementation of importing translations\r\n\r\n* integrate importing translations in mapeo-project\r\n\r\n* fix type error\r\n\r\n* rigorous filter of docType\r\n\r\n* add test import translations\r\n\r\n* return `name` from preset iterator so that translation can refer to it\r\n\r\n* remove solo test and log\r\n\r\n* address code review:\r\n\r\n1. split *translation into individual functions (to avoid nested loops)\r\n2. remove `parseTranslationsFile`\r\n3. return value without `docIdRef` (since we don't know it at that\r\n point)\r\n4. move warnings outside of `readConfig` (to have it accessible in\r\n outside functions)\r\n5. push to warnings instead of throwing errors\r\n6. remove unnecessary check of `message` being an object\r\n\r\n* reset `warnings` value on each call to readConfig\r\n\r\n* incomplete TODO message\r\n\r\n* refactor *translations\r\n\r\n* add case for translation message being an object\r\n\r\n* fix type error\r\n\r\n* update default-config, fix logic when msg is object, fix test\r\n\r\n* move parsing of message object to outside function\r\n\r\n* fix linting on mapeo-project\r\n\r\n* type value as what we expect, add `isMessageObject` to translate only\r\nshapes we expect\r\n\r\n* Apply suggestions from code review\r\n\r\n* find{Presets,Translations}File are concurrent\r\n* add quotes in test\r\n\r\nCo-authored-by: Evan Hahn \r\n\r\n* String -> string on `*presets` signature\r\n\r\n* `isMessageObject` -> `isFieldOptions`\r\n\r\n* fix type error on `isFieldOptions`\r\n\r\n* specific check for 'categories' `schemaNameRef`\r\n\r\n* move `warnings` inside `readConfig` make every `translate` generator a closure\r\n\r\n---------\r\n\r\nCo-authored-by: Tomás Ciccola \r\nCo-authored-by: Evan Hahn ","shortMessageHtmlLink":"feat: config import translations (#602)"}},{"before":"d500bd5bf5641ade1aa661cd4820bee721a9c9e6","after":"1b7fc2ae104fdcfa1bfe00bc973054756084ae4a","ref":"refs/heads/feat/configImportTranslations","pushedAt":"2024-06-05T16:41:25.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"tomasciccola","name":null,"path":"/tomasciccola","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/117094913?s=80&v=4"},"commit":{"message":"Merge branch 'main' of github.com:digidem/mapeo-core-next into feat/configImportTranslations","shortMessageHtmlLink":"Merge branch 'main' of github.com:digidem/mapeo-core-next into feat/c…"}},{"before":"fb58a084be6c3f55fa139801c435228473c945b0","after":null,"ref":"refs/heads/npm-ci-for-deploy","pushedAt":"2024-06-05T16:19:52.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"}},{"before":"670c9c149d22590425337b8ab08b42c9b568e80a","after":"56fa2b7413a2e6a2a8398d0f11dca7292101274a","ref":"refs/heads/main","pushedAt":"2024-06-05T16:19:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"chore: use `npm ci` for deployment, not `npm install` (#694)\n\n[`npm ci`][0] is slightly better for deployments than `npm install`.\r\n\r\n- It ensures all installed packages match `package-lock.json`.\r\n- It automatically removes `node_modules/` if it exists, ensuring a\r\n clean slate.\r\n- It won't update `package.json` or `package-lock.json`.\r\n\r\nNot a huge difference, but recommended for deployments.\r\n\r\n[0]: https://docs.npmjs.com/cli/v10/commands/npm-ci","shortMessageHtmlLink":"chore: use npm ci for deployment, not npm install (#694)"}},{"before":"02b208709230920842c39ba92ea16a8da4c06c0b","after":"d500bd5bf5641ade1aa661cd4820bee721a9c9e6","ref":"refs/heads/feat/configImportTranslations","pushedAt":"2024-06-05T16:11:50.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tomasciccola","name":null,"path":"/tomasciccola","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/117094913?s=80&v=4"},"commit":{"message":"Merge branch 'main' of github.com:digidem/mapeo-core-next into feat/configImportTranslations","shortMessageHtmlLink":"Merge branch 'main' of github.com:digidem/mapeo-core-next into feat/c…"}},{"before":"d17b4ba85ea424a8b21e67999fbbcbe360e5a59a","after":null,"ref":"refs/heads/uninstall-hyperswarm-testnet-and-remove-types","pushedAt":"2024-06-05T16:07:59.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"}},{"before":"9a7b30ad51f9b97029a3d883849d9b56b9446d4c","after":"670c9c149d22590425337b8ab08b42c9b568e80a","ref":"refs/heads/main","pushedAt":"2024-06-05T16:07:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"chore: uninstall @hyperswarm/testnet, remove associated types (#664)\n\nThis change should have no user impact.\r\n\r\n`@hyperswarm/testnet` hasn't been used since\r\nca3b6c73d5bbd6650124d27f14410b1a188f54ef, so we can remove it.\r\n\r\nWe can also remove our custom types for this module and all of its\r\ndependencies--quite a few things!","shortMessageHtmlLink":"chore: uninstall @hyperswarm/testnet, remove associated types (#664)"}},{"before":"82aa0dc3adc9a19711fb294b9d5e01f00579a1ac","after":"02b208709230920842c39ba92ea16a8da4c06c0b","ref":"refs/heads/feat/configImportTranslations","pushedAt":"2024-06-05T16:05:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tomasciccola","name":null,"path":"/tomasciccola","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/117094913?s=80&v=4"},"commit":{"message":"move `warnings` inside `readConfig` make every `translate` generator a closure","shortMessageHtmlLink":"move warnings inside readConfig make every translate generator …"}},{"before":"e6f0db777137f2178795e1ac8f561e3e913d6b95","after":null,"ref":"refs/heads/test-deletion-of-data-after-leaving-project","pushedAt":"2024-06-05T15:44:21.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"}},{"before":"ecddf52ff2bfadf558bb1b65dc9a6221da828678","after":"9a7b30ad51f9b97029a3d883849d9b56b9446d4c","ref":"refs/heads/main","pushedAt":"2024-06-05T15:44:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"test: leaving a project should delete data from disk (#693)\n\nThis test-only change checks that data is actually deleted from disk\nwhen leaving a project.","shortMessageHtmlLink":"test: leaving a project should delete data from disk (#693)"}},{"before":"9d1db4eda921a4d97ab1cda1334a143866987923","after":"e6f0db777137f2178795e1ac8f561e3e913d6b95","ref":"refs/heads/test-deletion-of-data-after-leaving-project","pushedAt":"2024-06-05T15:39:46.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"Clarify \"get disk usage\" helper","shortMessageHtmlLink":"Clarify \"get disk usage\" helper"}},{"before":null,"after":"fb58a084be6c3f55fa139801c435228473c945b0","ref":"refs/heads/npm-ci-for-deploy","pushedAt":"2024-06-05T15:28:04.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"chore: use `npm ci` for deployment, not `npm install`\n\n[`npm ci`][0] is slightly better for deployments than `npm install`.\r\n\r\n- It ensures all installed packages match `package-lock.json`.\r\n- It automatically removes `node_modules/` if it exists, ensuring a\r\n clean slate.\r\n- It won't update `package.json` or `package-lock.json`.\r\n\r\nNot a huge difference, but recommended for deployments.\r\n\r\n[0]: https://docs.npmjs.com/cli/v10/commands/npm-ci","shortMessageHtmlLink":"chore: use npm ci for deployment, not npm install"}},{"before":"487cf15707b4d90f91e942d9c379ac2c85266b8d","after":"82aa0dc3adc9a19711fb294b9d5e01f00579a1ac","ref":"refs/heads/feat/configImportTranslations","pushedAt":"2024-06-05T12:59:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tomasciccola","name":null,"path":"/tomasciccola","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/117094913?s=80&v=4"},"commit":{"message":"specific check for 'categories' `schemaNameRef`","shortMessageHtmlLink":"specific check for 'categories' schemaNameRef"}},{"before":"f2226d16dcdc88c6c87f23c4fd2bcafca1c00e11","after":"487cf15707b4d90f91e942d9c379ac2c85266b8d","ref":"refs/heads/feat/configImportTranslations","pushedAt":"2024-06-05T12:51:18.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"tomasciccola","name":null,"path":"/tomasciccola","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/117094913?s=80&v=4"},"commit":{"message":"Merge branch 'main' of github.com:digidem/mapeo-core-next into feat/configImportTranslations","shortMessageHtmlLink":"Merge branch 'main' of github.com:digidem/mapeo-core-next into feat/c…"}},{"before":"e08bc89cac7f67ac91b370ee0d4493b857c7b8a3","after":null,"ref":"refs/heads/bye-bye-brittle","pushedAt":"2024-06-03T15:57:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"}},{"before":"2589842ca18c8ce5fadbaa228b49d98d2459f6a7","after":"ecddf52ff2bfadf558bb1b65dc9a6221da828678","ref":"refs/heads/main","pushedAt":"2024-06-03T15:57:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"test: replace Brittle with node:test (#673)\n\n*This is a test-only change that should have no user impact.*\r\n\r\nWe've slowly been removing Brittle in favor of `node:test`. This\r\nfinishes that work and uninstalls Brittle.\r\n\r\n`git grep -i brittle` returns no results after this change.","shortMessageHtmlLink":"test: replace Brittle with node:test (#673)"}},{"before":"7233c860fb7662298c1e62774ccdc38712717702","after":"e08bc89cac7f67ac91b370ee0d4493b857c7b8a3","ref":"refs/heads/bye-bye-brittle","pushedAt":"2024-06-03T15:17:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"Remove final Brittle references","shortMessageHtmlLink":"Remove final Brittle references"}},{"before":"7c56ef34aa20c249c9a46e94757ed3bc74aeec5a","after":"7233c860fb7662298c1e62774ccdc38712717702","ref":"refs/heads/bye-bye-brittle","pushedAt":"2024-06-03T15:12:26.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"Merge branch 'main' into bye-bye-brittle","shortMessageHtmlLink":"Merge branch 'main' into bye-bye-brittle"}},{"before":null,"after":"9d1db4eda921a4d97ab1cda1334a143866987923","ref":"refs/heads/test-deletion-of-data-after-leaving-project","pushedAt":"2024-05-30T22:07:00.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"test: leaving a project should delete data from disk","shortMessageHtmlLink":"test: leaving a project should delete data from disk"}},{"before":"8089122414d702cd70c990cb5dfa3f7564cd3959","after":null,"ref":"refs/heads/evanhahn/583","pushedAt":"2024-05-30T22:05:58.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"}},{"before":"c295b525e8b10005fbfe19547279ea6b424e968c","after":"2589842ca18c8ce5fadbaa228b49d98d2459f6a7","ref":"refs/heads/main","pushedAt":"2024-05-30T22:05:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"fix: at startup, clean up left projects that failed to delete (#672)\n\nIf you start to leave a project and the operation fails partway, we now\r\nfinish the next time you try to load that project.\r\n\r\nFor example, imagine the following scenario:\r\n\r\n1. The user presses the \"leave project\" button.\r\n2. We mark them as having left the project, but haven't yet deleted any\r\n data.\r\n3. Their phone runs out of battery.\r\n\r\nPreviously, the project state would be messed up in this scenario. Now,\r\nwe finish the cleanup before returning the project.\r\n\r\nFixes [#583].\r\n\r\n[#583]: https://github.com/digidem/mapeo-core-next/issues/583","shortMessageHtmlLink":"fix: at startup, clean up left projects that failed to delete (#672)"}},{"before":"8675cd16f1af407de4eaa72bfcfb9226a8ec114b","after":null,"ref":"refs/heads/evanhahn/627","pushedAt":"2024-05-30T20:56:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"}},{"before":"cd7cf0c67e69a32acd3afb0f064b10e014d7ad3d","after":"d17b4ba85ea424a8b21e67999fbbcbe360e5a59a","ref":"refs/heads/uninstall-hyperswarm-testnet-and-remove-types","pushedAt":"2024-05-30T20:55:59.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"chore: uninstall @hyperswarm/testnet, remove associated types\n\nThis change should have no user impact.\n\n`@hyperswarm/testnet` hasn't been used since\nca3b6c73d5bbd6650124d27f14410b1a188f54ef, so we can remove it.\n\nWe can also remove our custom types for this module and all of its\ndependencies--quite a few things!","shortMessageHtmlLink":"chore: uninstall @hyperswarm/testnet, remove associated types"}},{"before":"cb43d38fa66d796ac3d50236fd66caf0c098edda","after":"c295b525e8b10005fbfe19547279ea6b424e968c","ref":"refs/heads/main","pushedAt":"2024-05-30T20:55:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"feat: add auto-stop option to `$sync.start()` (#690)\n\n`myProject.$sync.start({ autostopDataSyncAfter: 3000 })` will auto-stop\ndata sync after it's inactive for 3 seconds.\n\nAddresses #627.","shortMessageHtmlLink":"feat: add auto-stop option to $sync.start() (#690)"}},{"before":"fd6eea37417789b465ff35165466e55eeb945f62","after":"8675cd16f1af407de4eaa72bfcfb9226a8ec114b","ref":"refs/heads/evanhahn/627","pushedAt":"2024-05-30T20:52:51.000Z","pushType":"push","commitsCount":11,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"},"commit":{"message":"Use `null` instead of `Infinity` for no auto-stop timeout","shortMessageHtmlLink":"Use null instead of Infinity for no auto-stop timeout"}},{"before":"340bf820ebf500b4f7a3bdb0964e575ff8053158","after":null,"ref":"refs/heads/create-and-sync-data-test-speedup","pushedAt":"2024-05-30T17:52:52.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"EvanHahn","name":"Evan Hahn","path":"/EvanHahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/777712?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEXY53egA","startCursor":null,"endCursor":null}},"title":"Activity · digidem/mapeo-core-next"}