{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":160058844,"defaultBranch":"main","name":"tool-wd-image-positions","ownerLogin":"lucaswerkmeister","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-12-02T15:02:37.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2346599?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1717752209.0","currentOid":""},"activityList":{"items":[{"before":"88402067ddc88364c278f9f4fe4b999426c08dc7","after":"dcf0c5040e6e22aca81f0a64bb4cc54a6120f301","ref":"refs/heads/main","pushedAt":"2024-06-10T18:36:50.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!11","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"88402067ddc88364c278f9f4fe4b999426c08dc7","after":null,"ref":"refs/heads/wip","pushedAt":"2024-06-07T09:23:29.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"}},{"before":"24a82d8701d2b710f766e72431ab6b38568ef872","after":"88402067ddc88364c278f9f4fe4b999426c08dc7","ref":"refs/heads/main","pushedAt":"2024-06-07T09:23:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Update GitHub actions\n\nTo silence annoying warnings about outdated Node.js versions.","shortMessageHtmlLink":"Update GitHub actions"}},{"before":null,"after":"88402067ddc88364c278f9f4fe4b999426c08dc7","ref":"refs/heads/wip","pushedAt":"2024-06-07T09:22:35.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Update GitHub actions\n\nTo silence annoying warnings about outdated Node.js versions.","shortMessageHtmlLink":"Update GitHub actions"}},{"before":"ea1e8c10e21d651422e1152ba310fdb9ce96002a","after":"24a82d8701d2b710f766e72431ab6b38568ef872","ref":"refs/heads/main","pushedAt":"2024-06-07T09:17:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Search for items in interface language\n\nNote that we need two “language” parameters: `language` sets the\nlanguage in which the search is done, `uselang` sets the language in\nwhich search results are shown. (If you only set language=de, for\ninstance, searching for „Baum“ will show Q10884 as “tree”.)\n\nThe data-uselang attribute isn’t used yet, but included for consistency\nwith Wikidata Lexeme Forms; IMHO it doesn’t hurt to include it, and it\nmight be useful later.","shortMessageHtmlLink":"Search for items in interface language"}},{"before":"72a68851e0e53a7ebb23acdfddad0376b80ef67a","after":"ea1e8c10e21d651422e1152ba310fdb9ce96002a","ref":"refs/heads/main","pushedAt":"2024-06-06T20:22:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Fix language fallback in edit interface\n\nThe messages are supposed to be plain text, but the translations can\nstill be HTML if language fallback happened:\n\n Edit a region\n\nSo to avoid showing that markup to the user, we should assign the\ntranslations to the innerHTML, not to the textContent. We’ll just have\nto rely on the translations tests to make sure that the translations are\nsafe and don’t contain any unexpected or malicious tag or attribute\nnames.","shortMessageHtmlLink":"Fix language fallback in edit interface"}},{"before":"aa319bc391988f27e2ceeaf7da484e2ee8be93af","after":"72a68851e0e53a7ebb23acdfddad0376b80ef67a","ref":"refs/heads/main","pushedAt":"2024-06-06T20:14:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Fix TIFF workaround\n\nThis broke because the srcset property now contains a huge amount of\nwhitespace, so the “adjusted” src was just the empty string. I don’t\nthink the way we assemble the srcset attribute in the HTML changed since\nthe workaround was introduced in e7fd7f5c82, so I can only assume that\nthis used to work because Firefox (and other browsers?) previously\nreturned a “formatted” / “cleaned up” version of the srcset attribute in\nthe HTMLImageElement srcset property, whereas now they return the\noriginal attribute contents with whatever whitespace they contain; but I\nwasn’t able to find a Bugzilla entry confirming this. But anyway, this\nseems to work now.","shortMessageHtmlLink":"Fix TIFF workaround"}},{"before":"53074960ca7b9bde5322db6aedc130390a086194","after":"aa319bc391988f27e2ceeaf7da484e2ee8be93af","ref":"refs/heads/main","pushedAt":"2024-06-03T12:54:11.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!10","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"40f6405ab388d7c173bfb87b63f5695488eea625","after":"53074960ca7b9bde5322db6aedc130390a086194","ref":"refs/heads/main","pushedAt":"2024-05-30T17:47:40.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!9","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"b82dc1062fab17fb0443c6ecfc9fef82d885897e","after":"40f6405ab388d7c173bfb87b63f5695488eea625","ref":"refs/heads/main","pushedAt":"2024-05-27T17:39:47.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!8","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"2965e37ca2fce7870ba807f96a6ccfa3be172547","after":"b82dc1062fab17fb0443c6ecfc9fef82d885897e","ref":"refs/heads/main","pushedAt":"2024-05-23T20:10:00.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!7","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"0486d8ade38b9a5c32308559cd2f9dcb4cf4ad63","after":"2965e37ca2fce7870ba807f96a6ccfa3be172547","ref":"refs/heads/main","pushedAt":"2024-05-20T13:31:29.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!6","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"903c13a18ab1190594a5b82b8b9c7148b96139db","after":"0486d8ade38b9a5c32308559cd2f9dcb4cf4ad63","ref":"refs/heads/main","pushedAt":"2024-05-19T16:04:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Make additional pages translatable\n\nWith this, I think the quest to make this tool translatable is\nfunctionally complete; there are only a few hard-coded bits of English\nleft that I don’t want to make translatable yet.\n\nThe biggest chunk left is in oauth-callback-without-request-token.html,\nwhich I’m leaving alone for several reasons:\n\n* The markup is a bit complicated, depending in part on whether you’re\n logged in or not.\n* This page is shared across several tools (and included in\n cookiecutter-toolforge); arguably any translations for it should be\n shared as well, and I’m not yet sure how to do that.\n* The page should virtually never be shown to normal users; it’ll mainly\n be seen by tool developers (i.e., mainly me), where translation is\n less of a priority.\n\nMaybe I’ll make this page translatable eventually, but not soon, I\nthink.\n\nAlso sort the _allowed_html_elements, I don’t think the previous\n(implied) order by whenever the elements were added made much sense.\n\nBug: T363626","shortMessageHtmlLink":"Make additional pages translatable"}},{"before":"bdd23c3081c3cb00456ecff3b2104f669b8afd6b","after":"903c13a18ab1190594a5b82b8b9c7148b96139db","ref":"refs/heads/main","pushedAt":"2024-05-19T14:45:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Make image editing interface translatable\n\nA few alert()s are left out, I don’t think those error messages are\nrelevant. But the rest of the editing interface should be covered by\nthis, unless I missed something.\n\nBug: T363626","shortMessageHtmlLink":"Make image editing interface translatable"}},{"before":"bd8f091ad1d2032dd5ecb6e939482fc67092d6c3","after":"bdd23c3081c3cb00456ecff3b2104f669b8afd6b","ref":"refs/heads/main","pushedAt":"2024-05-19T13:52:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Fix template after previous commit\n\nI broke this while trying to clean up the template to remove the dead\nparts referenced in the commit message.","shortMessageHtmlLink":"Fix template after previous commit"}},{"before":"108e8a5fa68075dbad50a30d0d8fab1cc266c983","after":"bd8f091ad1d2032dd5ecb6e939482fc67092d6c3","ref":"refs/heads/main","pushedAt":"2024-05-19T13:38:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Make “… with no region specified” translatable\n\nUse the property labels from Wikidata for the interactive dropdown /\nselect labels, and dedicated messages for “… with no region specified”\nper property ID (only two properties at the moment).\n\nRemove the part of image.html that tried to render depicteds without a\nwell-known property. This was always dead code (we only put the\nwell-known properties into the depicteds to begin with, so this was only\na guard against me forgetting something somewhere or letting the code\nget out of sync, I think), and it’s not really clear what it should look\nlike now; it would be possible to implement it in some way anyway but I\ndon’t think it’s worth it.\n\nBug: T363626","shortMessageHtmlLink":"Make “… with no region specified” translatable"}},{"before":"8f374ee202e6f41d6d36e59d4aa128380057c7c3","after":"108e8a5fa68075dbad50a30d0d8fab1cc266c983","ref":"refs/heads/main","pushedAt":"2024-05-18T14:51:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Fix csrf_token check in api_add_statement()\n\nI messed this up in commit 4da2a2bc42. (mypy probably would’ve caught\nit, but I’m not using it in this tool… yet.)\n\nThe name is a bit cumbersome because all of csrf_token (obviously),\ntoken (MediaWiki API csrf token) and request_token (OAuth) are already\noccupied.","shortMessageHtmlLink":"Fix csrf_token check in api_add_statement()"}},{"before":"1ca9f6af8c11d646489239988966fa6986213dd9","after":"8f374ee202e6f41d6d36e59d4aa128380057c7c3","ref":"refs/heads/main","pushedAt":"2024-05-16T20:08:29.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!5","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"e8d47d1cb75a85c726c16c368cbacfdcb4ea9f35","after":"1ca9f6af8c11d646489239988966fa6986213dd9","ref":"refs/heads/main","pushedAt":"2024-05-13T18:11:28.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!4","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"e5e9116fc9f21ab1882786bea36ec66528bed5f8","after":"e8d47d1cb75a85c726c16c368cbacfdcb4ea9f35","ref":"refs/heads/main","pushedAt":"2024-05-09T15:05:51.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Upgrade dependencies\n\n pip-compile -U\n\nMainly to ensure the latest version of Babel is installed – when I was\nworking with the toolforge_i18n commit pulled in by the previous commit\n(mapping more language codes to Babel equivalents), I found that the\nBabel in my lexeme-forms venv somehow had fewer locale-data files than\nthe Babel in my wd-image-positions venv (despite both ostensibly being\nthe same version), so I want to make sure a very recent Babel is\ninstalled everywhere I use this tool. (I have no idea what actually\nhappened there – did they push multiple versions of Babel 2.14.0 with\nthe same Python code but different locale-data files to PyPI? – but\nhopefully this helps, and it generally doesn’t hurt anyway.)","shortMessageHtmlLink":"Upgrade dependencies"}},{"before":"e8d438134b0af397f1e71ef976a09fadcce33dce","after":"e5e9116fc9f21ab1882786bea36ec66528bed5f8","ref":"refs/heads/main","pushedAt":"2024-05-06T20:14:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Optimize GitLab CI\n\nTell Python to not bother writing bytecode (won’t be used anyway), and\npersist the pip cache between builds. Based on wikibugs2 CI [1] and\nGitLab templates [2].\n\n[1]: https://gitlab.wikimedia.org/toolforge-repos/wikibugs2/-/blob/4a80583be4e466c164ed61bfe275f933c449eb51/.gitlab-ci.yml\n[2]: https://gitlab.com/gitlab-org/gitlab-foss/-/blob/d06a37ec91bd785780071b297084b4b9503980ff/lib/gitlab/ci/templates/Python.gitlab-ci.yml","shortMessageHtmlLink":"Optimize GitLab CI"}},{"before":"8b677d25a9506480c20d495b47cb33eacc99274e","after":"e8d438134b0af397f1e71ef976a09fadcce33dce","ref":"refs/heads/main","pushedAt":"2024-05-06T18:26:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Add GitLab CI\n\nSince l10n-bot merge requests are sent on GitLab, not on GitHub, we also\nwant to run the tests there – these tests are very important, checking\nthat the tool doesn’t crash and even that the messages only contain safe\nHTML. (The GitHub actions could in principle be removed now, but for now\nI feel like keeping it.)\n\nThe venv seems to be required – without it, `pip` is not available\ninside the image. I don’t understand it, but I’m fine with it, and\ninstalling the dependencies in a venv probably makes sense anyway.\n\n(Other tools can probably omit the GIT_SUBMODULE_STRATEGY, and once I\nturn toolforge_i18n into a proper library installed via pip I’ll be able\nto remove it again here as well.)","shortMessageHtmlLink":"Add GitLab CI"}},{"before":"e4205d9ceef7962965c12f2156dc007a736337a6","after":"8b677d25a9506480c20d495b47cb33eacc99274e","ref":"refs/heads/main","pushedAt":"2024-05-06T15:45:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Update README for submodule\n\nNow that toolforge_i18n is a submodule, the initial setup and updates\nneed to look a little different. (In practice, I expect I’ll usually\nomit the `git submodule update` when I know there weren’t any submodule\nchanges, but that’s besides the point.) Also refresh the commands\ngenerally to reflect what I usually run these days.\n\nAlso fix the path in the setup – I changed the origin URL from\nlucaswerkmeister/tool-* to toolforge-repos/* in ec75eef080, but\nneglected to update the `cd` command at the same time.","shortMessageHtmlLink":"Update README for submodule"}},{"before":"6b0e493e2083da2845c06db2b810faef551255ec","after":"e4205d9ceef7962965c12f2156dc007a736337a6","ref":"refs/heads/main","pushedAt":"2024-05-06T15:12:00.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!3","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"73baa981862fe3d4bd5818e87d6c5ddf68189d76","after":"6b0e493e2083da2845c06db2b810faef551255ec","ref":"refs/heads/main","pushedAt":"2024-05-05T10:47:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Actually use the language code setting\n\nBug: T363626","shortMessageHtmlLink":"Actually use the language code setting"}},{"before":"c6407a31aecaa4a6d1ba50eed2e4c1992c419de0","after":"73baa981862fe3d4bd5818e87d6c5ddf68189d76","ref":"refs/heads/main","pushedAt":"2024-05-05T10:41:34.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Merge branch 'twn' into 'main'\n\nLocalisation updates from https://translatewiki.net.\n\nSee merge request toolforge-repos/wd-image-positions!2","shortMessageHtmlLink":"Merge branch 'twn' into 'main'"}},{"before":"17817c0cad4a286daf2ae9b1a7cf3c20fb1ba479","after":"c6407a31aecaa4a6d1ba50eed2e4c1992c419de0","ref":"refs/heads/main","pushedAt":"2024-05-05T09:53:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Make “logged in as” translatable\n\nI missed this earlier (probably because I was only testing when not\nlogged in).\n\nBug: T363626","shortMessageHtmlLink":"Make “logged in as” translatable"}},{"before":"279399cf636785c0459866930064763f3ee3fa26","after":"17817c0cad4a286daf2ae9b1a7cf3c20fb1ba479","ref":"refs/heads/main","pushedAt":"2024-05-05T09:47:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Fix GitHub actions for toolforge_i18n submodule\n\nI remembered to do this in Wikibase Lexeme Forms but then forgor here 💀\n\nBug: T363626","shortMessageHtmlLink":"Fix GitHub actions for toolforge_i18n submodule"}},{"before":"4da2a2bc426e8fd7482159a304c111018af2f84a","after":"279399cf636785c0459866930064763f3ee3fa26","ref":"refs/heads/main","pushedAt":"2024-05-05T09:41:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Fix double “image scale” with language fallback and JS\n\nThe JS code that replaces the “image scale” inputs now needs to take\ninto account that the server-generated “image scale” text can be wrapped\nin a (with lang= and dir= attributes) if language fallback\nhappened.","shortMessageHtmlLink":"Fix double “image scale” with language fallback and JS"}},{"before":"3204d71b37db8d675c7745b6c5353c3f6865ffdd","after":"4da2a2bc426e8fd7482159a304c111018af2f84a","ref":"refs/heads/main","pushedAt":"2024-05-05T09:34:58.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"lucaswerkmeister","name":"Lucas Werkmeister","path":"/lucaswerkmeister","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2346599?s=80&v=4"},"commit":{"message":"Add settings page with language setting\n\nRight now you can only select English, but that will change as soon as\nthe first translation export comes in tomorrow.\n\n(Also remove a stray newline at the end of qqq.json.)\n\nBug: T363626","shortMessageHtmlLink":"Add settings page with language setting"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEYXCZgQA","startCursor":null,"endCursor":null}},"title":"Activity · lucaswerkmeister/tool-wd-image-positions"}