{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":611338935,"defaultBranch":"release","name":"romm","ownerLogin":"rommapp","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-03-08T16:11:01.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/164058018?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1724727824.0","currentOid":""},"activityList":{"items":[{"before":"bff90fecf8c26c15042b54aad0ad66ed70ffe2c4","after":"ee93debdfa888158916738c16f0666bfaf91cbbe","ref":"refs/heads/master","pushedAt":"2024-08-27T02:59:06.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Merge pull request #1116 from SaraVieira/feat/open-links-new-tab\n\nfeat(UX) - Allow links to open in a new tab","shortMessageHtmlLink":"Merge pull request #1116 from SaraVieira/feat/open-links-new-tab"}},{"before":"c2e5a66b5428cd12e6f7d8df0a6d34ba99792354","after":null,"ref":"refs/heads/hotfix-detect-ruffleable-platform","pushedAt":"2024-08-26T22:42:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"}},{"before":"6c158c5b32e28e8197a45eb818a3d0ae9e73f646","after":"bff90fecf8c26c15042b54aad0ad66ed70ffe2c4","ref":"refs/heads/master","pushedAt":"2024-08-26T22:42:44.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Merge pull request #1120 from rommapp/hotfix-detect-ruffleable-platform\n\nFix detecting if platform is flash games","shortMessageHtmlLink":"Merge pull request #1120 from rommapp/hotfix-detect-ruffleable-platform"}},{"before":null,"after":"c2e5a66b5428cd12e6f7d8df0a6d34ba99792354","ref":"refs/heads/hotfix-detect-ruffleable-platform","pushedAt":"2024-08-26T22:31:35.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Fix detecting if platform is flash games","shortMessageHtmlLink":"Fix detecting if platform is flash games"}},{"before":"c3ea419c68ee5c337cfdbcbb1af067f18f60896e","after":"401d235738f601b81f46cf9ca62ab25a97258ce1","ref":"refs/heads/romm-1114","pushedAt":"2024-08-26T19:58:38.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Merge branch 'master' into romm-1114","shortMessageHtmlLink":"Merge branch 'master' into romm-1114"}},{"before":"3e9f59c5466fb8c1f18a32e602578624c658c0c3","after":null,"ref":"refs/heads/upload-dialog-hotfixes","pushedAt":"2024-08-26T19:58:24.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"}},{"before":"2ce3282835a8ac810c58eed40252c0146874f945","after":"6c158c5b32e28e8197a45eb818a3d0ae9e73f646","ref":"refs/heads/master","pushedAt":"2024-08-26T19:58:23.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Merge pull request #1118 from rommapp/upload-dialog-hotfixes\n\nUpload dialog hotfixed + clear button","shortMessageHtmlLink":"Merge pull request #1118 from rommapp/upload-dialog-hotfixes"}},{"before":null,"after":"c3ea419c68ee5c337cfdbcbb1af067f18f60896e","ref":"refs/heads/romm-1114","pushedAt":"2024-08-26T19:56:21.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Add age ratings to UI + filters","shortMessageHtmlLink":"Add age ratings to UI + filters"}},{"before":"38d5ec13a582639a1f4a211ece07b0ab93af567a","after":null,"ref":"refs/heads/rename-replace-illegal-chars","pushedAt":"2024-08-26T17:06:28.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"}},{"before":"e55401fa95c64f06d562bbef06b14767220e4556","after":"2ce3282835a8ac810c58eed40252c0146874f945","ref":"refs/heads/master","pushedAt":"2024-08-26T17:06:26.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Merge pull request #1109 from rommapp/rename-replace-illegal-chars\n\nReplace illegal fs chars in filenames","shortMessageHtmlLink":"Merge pull request #1109 from rommapp/rename-replace-illegal-chars"}},{"before":"c8b8bcabc80f94838b4af23cbac320f8f2069420","after":"38d5ec13a582639a1f4a211ece07b0ab93af567a","ref":"refs/heads/rename-replace-illegal-chars","pushedAt":"2024-08-26T17:02:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"compile regexes","shortMessageHtmlLink":"compile regexes"}},{"before":"21443fa1d9b4defd601a6c7160cb0682692cf8b8","after":"3e9f59c5466fb8c1f18a32e602578624c658c0c3","ref":"refs/heads/upload-dialog-hotfixes","pushedAt":"2024-08-26T16:58:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Upload dialog hotfixed + clear button","shortMessageHtmlLink":"Upload dialog hotfixed + clear button"}},{"before":null,"after":"21443fa1d9b4defd601a6c7160cb0682692cf8b8","ref":"refs/heads/upload-dialog-hotfixes","pushedAt":"2024-08-26T16:57:47.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Upload dialog hotfixed + clear button","shortMessageHtmlLink":"Upload dialog hotfixed + clear button"}},{"before":null,"after":"c8b8bcabc80f94838b4af23cbac320f8f2069420","ref":"refs/heads/rename-replace-illegal-chars","pushedAt":"2024-08-22T02:27:21.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Replace illegal fs chars in filenames","shortMessageHtmlLink":"Replace illegal fs chars in filenames"}},{"before":"5126ab18e7d916b8f7dbc5104746e88786f5b086","after":null,"ref":"refs/heads/open-collectibe","pushedAt":"2024-08-21T23:07:41.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"}},{"before":"84f3a2ca268b36049cab8be97bcdbdbd20862767","after":"e55401fa95c64f06d562bbef06b14767220e4556","ref":"refs/heads/master","pushedAt":"2024-08-21T23:07:38.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Merge pull request #1108 from rommapp/open-collectibe\n\nSwitch funding to open collective","shortMessageHtmlLink":"Merge pull request #1108 from rommapp/open-collectibe"}},{"before":null,"after":"5126ab18e7d916b8f7dbc5104746e88786f5b086","ref":"refs/heads/open-collectibe","pushedAt":"2024-08-21T22:48:43.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Switch funding to open collective","shortMessageHtmlLink":"Switch funding to open collective"}},{"before":"3d59db9157ea9e385bd14d332ba12657849da68c","after":null,"ref":"refs/heads/gantoine-patch-1","pushedAt":"2024-08-21T22:46:37.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"}},{"before":null,"after":"3d59db9157ea9e385bd14d332ba12657849da68c","ref":"refs/heads/gantoine-patch-1","pushedAt":"2024-08-21T22:46:08.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Update FUNDING.yml","shortMessageHtmlLink":"Update FUNDING.yml"}},{"before":"a85c84a7d4591a7a0be5de76e6a4c4a099144d94","after":null,"ref":"refs/heads/misc/use-single-sqlalchemy-engine","pushedAt":"2024-08-21T13:49:37.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"adamantike","name":"Michael Manganiello","path":"/adamantike","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3867850?s=80&v=4"}},{"before":"419f3baf4ba2fb6b75e92d114f791697f0bda881","after":"84f3a2ca268b36049cab8be97bcdbdbd20862767","ref":"refs/heads/master","pushedAt":"2024-08-21T13:49:36.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"adamantike","name":"Michael Manganiello","path":"/adamantike","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3867850?s=80&v=4"},"commit":{"message":"Merge pull request #1105 from rommapp/misc/use-single-sqlalchemy-engine\n\nmisc: Use single SQLAlchemy engine and session maker","shortMessageHtmlLink":"Merge pull request #1105 from rommapp/misc/use-single-sqlalchemy-engine"}},{"before":null,"after":"a85c84a7d4591a7a0be5de76e6a4c4a099144d94","ref":"refs/heads/misc/use-single-sqlalchemy-engine","pushedAt":"2024-08-21T12:56:33.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"adamantike","name":"Michael Manganiello","path":"/adamantike","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3867850?s=80&v=4"},"commit":{"message":"misc: Use single SQLAlchemy engine and session maker\n\nAs recommended by SQLAlchemy [1], this change makes a single\ninstantiation of the database engine and session maker, instead of one\nentity per handler.\n\nIt also uses the provided `URL` constructor to better define the\ndatabase URL structure.\n\n[1] https://docs.sqlalchemy.org/en/20/core/connections.html#basic-usage","shortMessageHtmlLink":"misc: Use single SQLAlchemy engine and session maker"}},{"before":"0680063ebc020cceb9e35247766a67b42b8d374b","after":null,"ref":"refs/heads/feat/use-nginx-mod-zip","pushedAt":"2024-08-21T03:20:24.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"adamantike","name":"Michael Manganiello","path":"/adamantike","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3867850?s=80&v=4"}},{"before":"a6e2b8b330d5a8120cabbbeea98d9babc002eb5e","after":"419f3baf4ba2fb6b75e92d114f791697f0bda881","ref":"refs/heads/master","pushedAt":"2024-08-21T03:20:23.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"adamantike","name":"Michael Manganiello","path":"/adamantike","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3867850?s=80&v=4"},"commit":{"message":"Merge pull request #1102 from rommapp/feat/use-nginx-mod-zip\n\nfeat: Use nginx mod_zip to generate multi-file zip downloads","shortMessageHtmlLink":"Merge pull request #1102 from rommapp/feat/use-nginx-mod-zip"}},{"before":"0fad8ac28215847cad4f1b5e0ad7ab9f66261c81","after":"0680063ebc020cceb9e35247766a67b42b8d374b","ref":"refs/heads/feat/use-nginx-mod-zip","pushedAt":"2024-08-21T03:08:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"adamantike","name":"Michael Manganiello","path":"/adamantike","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3867850?s=80&v=4"},"commit":{"message":"misc: Add comments to Dockerfile about mod_zip","shortMessageHtmlLink":"misc: Add comments to Dockerfile about mod_zip"}},{"before":"1327f0ab7118932d61774dc36cf0458d0da0f828","after":"0fad8ac28215847cad4f1b5e0ad7ab9f66261c81","ref":"refs/heads/feat/use-nginx-mod-zip","pushedAt":"2024-08-21T01:39:48.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"adamantike","name":"Michael Manganiello","path":"/adamantike","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3867850?s=80&v=4"},"commit":{"message":"feat: Use nginx mod_zip to generate multi-file zip downloads\n\nThis change installs and configures the `mod_zip` nginx module [1],\nwhich allows nginx to stream ZIP files directly.\n\nIt includes a workaround needed to correctly calculate CRC-32 values for\nincluded files, by including a new `server` section listening at port\n8081, only used for the file requests to be upstream subrequests that\ncorrectly trigger the CRC-32 calculation logic.\n\nAlso, to be able to provide a `m3u` file generated on the fly, we add a\n`/decode` endpoint fully implemented in nginx using NJS, which receives\na `value` URL param, and decodes it using base64. The decoded value is\nreturned as the response.\n\nThat way, the contents of the `m3u` file is base64-encoded, and set as\npart of the response, for `mod_zip` to include it in the ZIP file.\n\n[1] https://github.com/evanmiller/mod_zip","shortMessageHtmlLink":"feat: Use nginx mod_zip to generate multi-file zip downloads"}},{"before":"7f6f4cd68ad9f49a32fe60aa31dd8855a08db083","after":"1327f0ab7118932d61774dc36cf0458d0da0f828","ref":"refs/heads/feat/use-nginx-mod-zip","pushedAt":"2024-08-21T01:06:30.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"adamantike","name":"Michael Manganiello","path":"/adamantike","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3867850?s=80&v=4"},"commit":{"message":"feat: Use nginx mod_zip to generate multi-file zip downloads\n\nThis change installs and configures the `mod_zip` nginx module [1],\nwhich allows nginx to stream ZIP files directly.\n\nIt includes a workaround needed to correctly calculate CRC-32 values for\nincluded files, by including a new `server` section listening at port\n8081, only used for the file requests to be upstream subrequests that\ncorrectly trigger the CRC-32 calculation logic.\n\nAlso, to be able to provide a `m3u` file generated on the fly, we add a\n`/decode` endpoint fully implemented in nginx using NJS, which receives\na `value` URL param, and decodes it using base64. The decoded value is\nreturned as the response.\n\nThat way, the contents of the `m3u` file is base64-encoded, and set as\npart of the response, for `mod_zip` to include it in the ZIP file.\n\n[1] https://github.com/evanmiller/mod_zip","shortMessageHtmlLink":"feat: Use nginx mod_zip to generate multi-file zip downloads"}},{"before":"bb53b6eb5660df66dd9ae73ac6908f6e7da8cdaf","after":null,"ref":"refs/heads/emulatorjs-4.1.1","pushedAt":"2024-08-20T03:47:01.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"}},{"before":"794a45498c0c55dcc2780e6fd1eeee64b88a0257","after":"a6e2b8b330d5a8120cabbbeea98d9babc002eb5e","ref":"refs/heads/master","pushedAt":"2024-08-20T03:47:00.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"Merge pull request #1100 from rommapp/emulatorjs-4.1.1\n\nBump emulatorjs to 4.1.1","shortMessageHtmlLink":"Merge pull request #1100 from rommapp/emulatorjs-4.1.1"}},{"before":"2ec349d0963a820ff71a359cf4b2db2d40ebd510","after":"bb53b6eb5660df66dd9ae73ac6908f6e7da8cdaf","ref":"refs/heads/emulatorjs-4.1.1","pushedAt":"2024-08-20T03:42:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gantoine","name":"Georges-Antoine Assi","path":"/gantoine","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3247106?s=80&v=4"},"commit":{"message":"actually lock the package json","shortMessageHtmlLink":"actually lock the package json"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEpOIbugA","startCursor":null,"endCursor":null}},"title":"Activity ยท rommapp/romm"}