Skip to content

Commit

Permalink
Switch to using the latest Perl::Tidy (version 20240903).
Browse files Browse the repository at this point in the history
This commit just makes the changes in the scripts, but does not yet run
perltidy with the new setup.  That will be done in the next commit.

A new `--valign-signed-numbers` option has been added in the version of
Perl::Tidy and is the default.  That option has been disabled to reduce
the number of code changes.  Although it only changes one line of the
webwork2 code. It changes a lot more in the pg code.

Note that the `bin/dev_scripts/run-perltidy.pl` script now insists on
this specific version of perltidy instead of this version or newer.
This is because every time a new version of perltidy comes out, it
changes things.  So developers really need to be using the same version
or it will not be consistent with the github workflow result.

Also, the version requirement in the check_modules.pl script has been
removed.  Only developers need a specific version of perltidy.  Those
running webwork2 can use other versions.  This is only used for
formatting problems in the PG problem editor, and using other versions
may result in slightly different formatting there, but that is not so
consequential that we need to require a specific version. Note that this
change depends on the corresponding pg pull request, because in that
pull request the `-vxl='q'` option has been removed.  Otherwise version
20220613 or newer of perltidy would still be needed.
  • Loading branch information
drgrice1 committed Dec 3, 2024
1 parent 87f6301 commit 8df446c
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 25 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/check-formats.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
- name: Checkout code
uses: actions/checkout@v4
- name: Install dependencies
run: cpanm -n Perl::Tidy@20220613
run: cpanm -n Perl::Tidy@20240903
- name: Run perltidy
shell: bash
run: |
Expand Down
43 changes: 22 additions & 21 deletions .perltidyrc
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
# PBP .perltidyrc file
-l=120 # Max line width is 120 cols
-et=4 # Use tabs instead of spaces.
-i=4 # Indent level is 4 cols
-ci=4 # Continuation indent is 4 cols
-b # Write the file inline and create a .bak file
-vt=0 # Minimal vertical tightness
-cti=0 # No extra indentation for closing brackets
-pt=2 # Maximum parenthesis tightness
-bt=1 # Medium brace tightness
-sbt=1 # Medium square bracket tightness
-bbt=1 # Medium block brace tightness
-nsfs # No space before semicolons
-nolq # Don't outdent long quoted strings
-mbl=1 # Do not allow multiple empty lines
-ce # Cuddled else
-cb # Cuddled blocks
-nbbc # Do not add blank lines before full length comments
-nbot # No line break on ternary
-nlop # No logical padding (this causes mixed tabs and spaces)
-wn # Weld nested containers
-xci # Extended continuation indentation
-l=120 # Max line width is 120 cols
-et=4 # Use tabs instead of spaces.
-i=4 # Indent level is 4 cols
-ci=4 # Continuation indent is 4 cols
-b # Write the file inline and create a .bak file
-vt=0 # Minimal vertical tightness
-cti=0 # No extra indentation for closing brackets
-pt=2 # Maximum parenthesis tightness
-bt=1 # Medium brace tightness
-sbt=1 # Medium square bracket tightness
-bbt=1 # Medium block brace tightness
-nsfs # No space before semicolons
-nolq # Don't outdent long quoted strings
-mbl=1 # Do not allow multiple empty lines
-ce # Cuddled else
-cb # Cuddled blocks
-nbbc # Do not add blank lines before full length comments
-nbot # No line break on ternary
-nlop # No logical padding (this causes mixed tabs and spaces)
-wn # Weld nested containers
-xci # Extended continuation indentation
-vxl='q' # No vertical alignment of qw quotes
-nvsn # No vertical alignment of signed numbers
5 changes: 2 additions & 3 deletions bin/dev_scripts/run-perltidy.pl
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,8 @@ =head1 OPTIONS

my $webwork_root = curfile->dirname->dirname->dirname;

die "Version 20220613 or newer of perltidy is required for this script.\n"
. "The installed version is $Perl::Tidy::VERSION.\n"
unless $Perl::Tidy::VERSION >= 20220613;
die "Version 20240903 of perltidy is required for this script.\nThe installed version is $Perl::Tidy::VERSION.\n"
unless $Perl::Tidy::VERSION == 20240903;
die "The .perltidyrc file in the webwork root directory is not readable.\n"
unless -r "$webwork_root/.perltidyrc";

Expand Down

0 comments on commit 8df446c

Please sign in to comment.