Closed OmarIthawi closed 1 year ago
Thanks for the pull request, @OmarIthawi! Please note that it may take us up to several weeks or months to complete a review and merge your PR.
Feel free to add as much of the following information to the ticket as you can:
All technical communication about the code itself will be done via the GitHub pull request interface. As a reminder, our process documentation is here.
Please let us know once your PR is ready for our review and all tests are green.
@OmarIthawi 🎉 Your pull request was merged! Please take a moment to answer a two question survey so we can improve your experience in the future.
Description
Remove the
--directory
argument in favor of the positional argumentsDIRECTORY ...
to allow multiple directories to be specified in a single step. This is useful for pulling a huge batch of XBlocks into edX Platform or components in MFEs in a singlecheckout
operation.Breaking Changes and Developer Experience
One of the primary goals of the project is to avoid breaking changes. However, this pull request breaks compatibility with current (if any) usage of atlas due to the change from
--directory
argument toDIRECTORY...
positional argument.The main driver behind this change is to allow breaking the command into multiple lines, in which the
--directory
argument wouldn't support:Testing
Argument description
DIRECTORY...
represents one or more directory map pair separated by a colon (:) e.g.FROM_DIR:TO_DIR
:docker --volume from_dir:to_dir
mounting syntax.Design
In order for this to work, an extensive "matrix" of
git sparse-checkout
rules are added to filter for eachDIRECTORY
and--filter
:For example, two directories and three languages would result into 12 rules.
Example call
Will result in the following tree:
References
This pull request is part of the FC-0012 project which is sparked by the Translation Infrastructure update OEP-58.
Check the links above for full information about the overall project.
Internalization is being rearchitected in Open edX Python, XBlock, Micro-frontend, and other projects. There are a number of immediately visible changes:
.json
,.po
or.mo
files will be committed into the repos.make extract_translations
in all repositories