-
Notifications
You must be signed in to change notification settings - Fork 470
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement "sync" feature for languages #26002
Comments
Incorporated a new feature in 'PushServiceImpl' and 'FormatStatus' to allow ignoring results with no action during push operation. If 'dryRun' is set in 'PushServiceImpl', the new optional 'ignoreNoAction' parameter would be taken into account while formatting the push analysis results. This enhancement caters for more efficient resource utilization as results with no action (NO_ACTION) are filtered out before the formatting operation.
Created two methods in MapperService which will provide an instance of ObjectMapper based on the format of the input file. One for specific file and another one for the general process. Also made changes to how languages are pushed in LanguagePush class.
Added a function in MapperService to prepare ObjectMapper based on the provided input/output format. This change handles creation of ObjectMapper when it is required to be created based on the specific Input/Output format. This enhances flexibility and improves handling of different file formats. By default, it returns ObjectMapper for YAML format. Also optimized FormatOptionMixin and enhanced test coverage.
Updated the `LanguageComparator` class to improve the efficiency of finding matching language content. The comparison now happens firstly by id and then, if no match is found, by ISO code. This change provides a faster and more precise match. Also, added two separate private methods, `findById` and `findByISOCode`, to handle these comparisons. Revised tests accordingly and added a new test case for updated languages.
Note for QA:What to test: The functionality to call the language push command for a folder inside a valid CLI workspace or for a specific language file is now available. 1. If "push" is called for a specific file, for example:lang push <workspace-path>/languages/es-es.json The CLI will determine whether it's a new language that should be created on the server, if it needs updating, or if no changes are detected and nothing will be done. To determine the specific operation "push" will execute, you can run the command with the lang push <workspace-path>/languages/es-es.json --dry-run 2. If "push" is called for a folder:lang push <workspace-path> The specified folder must be at the root or inside a valid CLI workspace, and it will push the files located inside the /languages/ folder. The CLI will decide for each language file whether it's a new language that should be created on the server, if it needs updating, or if no changes are detected and nothing will be done. To determine the specific operation "push" will execute, you can run the command with the lang push <workspace-path> --dry-run Additionally, you can pass the lang push <workspace-path> --removeLanguages --dry-run I highly recommend using the |
We need work here: We need to exclude the property Example:
Here the lang.json
|
we need to discuss it with @wezell , as the |
After further discussion, we agreed that @bryanboza 's request will be implemented on this card |
We can close this card, the new request will be handled in a new card |
No description provided.
The text was updated successfully, but these errors were encountered: