{"push_id":2706114034,"size":13,"distinct_size":6,"ref":"refs/heads/upload-strings-to-crowdin","head":"3b83a5eabcd9b36faaae3d0b091969b89a0ef8ca","before":"c34614caf477875bfe29f1e8e66e39ef370fc796","commits":[{"sha":"150e792b7346dbaf269b125ae9eeef738a237dbb","author":{"name":"Julien Maupetit","email":"5c682c2d1ec4073e277f9ba9f4bdf07e5794dabe@maupetit.net"},"message":"🐳(compose) fix permissions for data directory\n\nThe data/{media,statics} directories should be created by the local user\nbefore being mounted by docker compose to prevent permission issues\n(compose will create those directories as root if they do not exists).","distinct":false,"url":"https://api.github.com/repos/openfun/richie/commits/150e792b7346dbaf269b125ae9eeef738a237dbb"},{"sha":"3de5459d4c255a20d545a2921a7d248060bf27a4","author":{"name":"David THENON","email":"a8c3eb6ceeaf801f3512d55e361d4365fc657ed3@gmail.com"},"message":"💄(course) enrich course content\n\nCourse page lacked of relevant default content blocks and layout was\nalmost nonexistent.\n\nThis adds a minimal layout using BEM convention and\nadd placeholders for our default content blocks with some settings for\nallowed plugins. Also to ensure better semantic and indexed structure,\nwe add a new plugin 'Section' to create block content with a distinct\ntitle.","distinct":false,"url":"https://api.github.com/repos/openfun/richie/commits/3de5459d4c255a20d545a2921a7d248060bf27a4"},{"sha":"c31e1ba6141cd5a4694e0f7cc937e1d24086faf2","author":{"name":"Renovate Bot","email":"c71e7261d37a4f6ae4cfb0cbd79081310a237e67@renovateapp.com"},"message":"⬆️(dependencies) update npm dependencies","distinct":false,"url":"https://api.github.com/repos/openfun/richie/commits/c31e1ba6141cd5a4694e0f7cc937e1d24086faf2"},{"sha":"5c096ea8dc5f0e221b7ba76107718b08bf562869","author":{"name":"Julien Maupetit","email":"5c682c2d1ec4073e277f9ba9f4bdf07e5794dabe@maupetit.net"},"message":"🐳(user) use an un-privileged user in tests\n\n* Switch back to an un-privileged user in the dev image\n* Use tmpfs for the /data directory that requires write permission\n* Add a \"package\" docker-compose service to add specific volumes used to\n  create the package","distinct":false,"url":"https://api.github.com/repos/openfun/richie/commits/5c096ea8dc5f0e221b7ba76107718b08bf562869"},{"sha":"04273fd1cec95ae582cc97460cdf0ea2bd7b5558","author":{"name":"David THENON","email":"a8c3eb6ceeaf801f3512d55e361d4365fc657ed3@gmail.com"},"message":"🐛(person) fix Person plugin template escaped html\n\nDue to Page extension relation, Person plugin template does not reach\ncommonly the Person resume attribute value so it is not marked as safe\ncontent, leading to escaped HTML.\n\nThis little fix just add the `|safe` filter to the resume variable\nusage. Also test has modified to ensure HTML is not escaped from\nresume content. This will close #281.","distinct":false,"url":"https://api.github.com/repos/openfun/richie/commits/04273fd1cec95ae582cc97460cdf0ea2bd7b5558"},{"sha":"9d54ba0b029a7a1d3050f3bfb1e856fe5273886a","author":{"name":"Samuel Paccoud - FUN MOOC","email":"16a7452378c1f13a9ebc7236a27bf5d8d475a087@fun-mooc.fr"},"message":"🚚(persons) move plugin test file to new tests directory\n\nThe project was refactored to make Richie a reusable app and the\ntests were taken out of the app and to the root of the project.\nThe PR to add a person plugin was prepared before this change\nand was mistakenly adding a test file inside the persons app\ninside Richie.","distinct":false,"url":"https://api.github.com/repos/openfun/richie/commits/9d54ba0b029a7a1d3050f3bfb1e856fe5273886a"},{"sha":"f4b35e30e1bcd592623a02866db8e7a3f84d256d","author":{"name":"Samuel Paccoud - FUN MOOC","email":"16a7452378c1f13a9ebc7236a27bf5d8d475a087@fun-mooc.fr"},"message":"🐛(persons) fix the person plugin to propose only person pages\n\nWhen adding a person plugin to a page, the select box to choose\na person page was proposing all the pages in the CMS, not just\nthe person pages. Adding a \"limit_choices_to\" attribute on the\nPersonPluginModel solves the issue as evidenced by the test\nincluded with the fix.\n\nFixes #278","distinct":false,"url":"https://api.github.com/repos/openfun/richie/commits/f4b35e30e1bcd592623a02866db8e7a3f84d256d"},{"sha":"c048063f864b636179af43d89df1bc1e00c0b73a","author":{"name":"Mehdi Benadda","email":"b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@mbenadda.com"},"message":"🔧(i18n) make an i18n folder to tidy up strings and translations\n\nWe'll have some i18n related stuff that needs to live in the repo:\nwe already have extracted strings from the frontend, the related POT\nfile, and exports of translations in PO format.\n\nCreate an i18n folder to aggregate them and gitignore extracted\nstrings as they can be regenerated from the code at any moment.","distinct":true,"url":"https://api.github.com/repos/openfun/richie/commits/c048063f864b636179af43d89df1bc1e00c0b73a"},{"sha":"e5dab8b16462b1b8f7934fa185a7cd71f107d05d","author":{"name":"Mehdi Benadda","email":"b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@mbenadda.com"},"message":"♻️(i18n) reuse some similar strings\n\nReuse two translated strings from commonMessages in settings\nto avoid duplication of effort on the translation side.","distinct":true,"url":"https://api.github.com/repos/openfun/richie/commits/e5dab8b16462b1b8f7934fa185a7cd71f107d05d"},{"sha":"4ff20e105a733665fea6a094aa50c65e96ace277","author":{"name":"Mehdi Benadda","email":"b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@mbenadda.com"},"message":"🙈(i18n) add i18n related files to gitignore\n\nWe don't want to commit JSON files with extracted strings nor\nrichie-front.pot as those are files that can be regenerated at\nany moment from the sources, and are supposed to be generated\nand uploaded directly by the CI.","distinct":true,"url":"https://api.github.com/repos/openfun/richie/commits/4ff20e105a733665fea6a094aa50c65e96ace277"},{"sha":"61728de13b6b4451b130858a99bc280e999bb9eb","author":{"name":"Mehdi Benadda","email":"b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@mbenadda.com"},"message":"🔧(i18n) upload strings to crowdin through a node script\n\nWe opted not to use the Crowdin CLI due to it being a Java\ndependency and requiring us to add a Java image to our container\nsetup, adding a lot of complexity to the project.\nInstead, we can maintain a handful of small scripts to handle\nwhat communications we need with the Crowdin API directly.","distinct":true,"url":"https://api.github.com/repos/openfun/richie/commits/61728de13b6b4451b130858a99bc280e999bb9eb"},{"sha":"2018bd3fb722c17637f9bc5cdb8fe25b8bb7819b","author":{"name":"Mehdi Benadda","email":"b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@mbenadda.com"},"message":"🔧(i18n) add a dep & script to generate a POT from extracted strings\n\nThe react-intl babel plugin we use for automatic string extraction\ngenerates JSON files with simple Message Descriptors in JSON files.\nThis is not a format that can be processed by the Crowdin (our\ntranslation mangement SaaS tool).\n\nAdd a simple dependency to generate a standard POT file from\nthose extracted Message Descriptors. It will be called in the\nCI or can be called directly through yarn (see its docs).","distinct":true,"url":"https://api.github.com/repos/openfun/richie/commits/2018bd3fb722c17637f9bc5cdb8fe25b8bb7819b"},{"sha":"3b83a5eabcd9b36faaae3d0b091969b89a0ef8ca","author":{"name":"Mehdi Benadda","email":"b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@mbenadda.com"},"message":"🔧(i18n) add a circle ci job to extract & upload frontend strings\n\nWe need to automatically run the string extraction & upload job\nwhenever someone pushes on master.\nThis is because we want to automate it way and avoid uploading\nuseless strings that are temporary, remove or otherwise\nnon-final.","distinct":true,"url":"https://api.github.com/repos/openfun/richie/commits/3b83a5eabcd9b36faaae3d0b091969b89a0ef8ca"}]}
{"actor":{"display_login":"mbenadda"}}