Changes in version 1.5-1 (2023-10-24) Bug fixes o left_parenthesis_style failed on composite expressions involving more than one operator, e.g. (x + y) * 3 + 1. Changes in version 1.5-0 (2023-10-16) New features o close_bracket_style and open_bracket_style now accept that the preceding (resp. following) expression is on a different line than the bracket. o close_parenthesis_style and open_parenthesis_style now accept that the preceding (resp. following) expression is on a different line than the parenthesis. o ops_spaces_style now also checks spacing around the keyword in used in for loops. Bug fixes o left_parenthesis_style now works correctly with the unary operator ! and with parentheses used to echo the result of an expression. The linter is also more robust and reliable (although slower) for many other constructions. o Translations of messages from all_linters completed. Changes in version 1.4-0 (2023-02-03) New features o all_style utility function to validate code using all available style linters at once. o nomagic_style now allows non-ASCII uppercase letters in symbol names. Changes o nomagic_style uses a more robust procedure to identify valid assignments of magic numbers to variables. o line_length_style now issues only one message per line exceeding the length threshold. Changes in version 1.3-1 (2022-11-19) Bug fixes o commas_style now allows spaces before a comma if the preceeding symbol is also a comma. This exception to the general rule is needed for consecutive commas commonly used in the indexing of arrays. Changes in version 1.3-0 (2022-11-01) New features o roger_grade gains a quiet argument that was missing in earlier releases. User visible changes o Following changes in the base system, the interface functions roger_grade, roger_push, roger_switch and roger_validate now use a default value of getwd() for the dir or repos argument. o roger_push and roger_switch: to put the mandatory argument ahead of optional ones, branch is now the first argument of these functions. Bug fixes o roger_clone now correctly matches the arguments of the corresponding base system tool: argument page_limit is removed; argument rogerrc_file is added; argument api is now NULL by default. Changes in version 1.2-0 (2022-10-15) New feature o comments_style linter to check that comment delimiters and the text of comments, when there is any, are separated by at least one space. User visible changes o any_comments now accepts comments without spaces between the comment delimiters and the text. Use comments_style to test the actual styling of comments. Bug fix o Add missing French translation for a message from any_comments. Changes in version 1.1-0 (2022-09-27) New feature o Function any_comments to check if a script file contains at least one non empty comment. Changes in version 1.0-0 (2022-08-25) Changes o To reflect an interface change in roger clone of the base system, argument api of roger_clone no longer has a default value. Bug fixes o nomagic_style now omits the logical values TRUE and FALSE. o section_doc now works correctly with user submitted regex patterns that include alternation operators. o section_doc now requires that only spaces can possibly follow the section title on its line. This is to avoid false positives caused by a description that starts with the same expression as the section title. For example, a section "Value" that starts with "Value of...". Changes in version 0.99-2 (2022-01-13) User visible changes o The nomenclature of the interface functions changes from foo to roger_foo. New features o The set of interface functions matches the new features introduced in version 0.99-8 of the Roger base system: roger_grade gains a detached_head argument; roger_push gains a quiet argument; new interface function roger_switch. o Interface functions gain a .debugOnly argument to print the command that would be sent to roger-base without actually executing it. Bug fixes o nomagic_style now allows the digit 0 in variable names. o nomagic_style now omits the special numerical constants Inf, NaN and NA. o The clone interface now works correctly with multiple additional curl arguments. o The clone interface now correctly passes the --machine argument. o Required arguments are now shell quoted in interface functions. Changes in version 0.99-1 (2021-10-20) New features o The style and documentation linters now stop with an informative error message when the parse data or source code in argument is NULL. o The any_doc documentation linter now accepts punctuation characters after the comment character. Bug fixes o The left_parenthesis_style linter no longer requires a space before a left parenthesis after the division and exponent operators, and after an optional opening parenthesis. o Script options in interface functions are now path expanded on the R side. Changes in version 0.99-0 (2021-08-21) o Initial public release. o The package contains the following style linters: assignment_style, comma_style, close_brace_style, close_bracket_style, close_parenthesis_style, left_parenthesis_style, line_length_style, nomagic_style, open_brace_style, open_brace_unique_style, open_bracket_style, open_parenthesis_style, ops_spaces_style, trailing_blank_style, trailing_whitespace_style, unneeded_concatenations_style. o The available documentation linters are: any_doc, signature_doc, section_doc, formals_doc. o The package also contains interface functions to the shell scripts of the Roger base system: checkreq, clone, grade, push, validate.