]> git.donarmstrong.com Git - perltidy.git/log
perltidy.git
2 years agoInsure correct marking of a brace following a format stmt
Steve Hancock [Wed, 26 Apr 2023 12:45:38 +0000 (05:45 -0700)]
Insure correct marking of a brace following a format stmt

This does not change formatting but insures that braces
are correctly marked. This fixes issue c202/t032.

2 years agoadd sub set_ci
Steve Hancock [Wed, 26 Apr 2023 12:39:53 +0000 (05:39 -0700)]
add sub set_ci

This will be the new method for computing ci after testing.

2 years agoupdate for issue git #118
Steve Hancock [Thu, 13 Apr 2023 03:37:37 +0000 (20:37 -0700)]
update for issue git #118

2 years agosome tokenizer clean-ups, part 15
Steve Hancock [Wed, 5 Apr 2023 00:04:03 +0000 (17:04 -0700)]
some tokenizer clean-ups, part 15

2 years agosome tokenizer clean-ups, part 14
Steve Hancock [Tue, 4 Apr 2023 21:23:09 +0000 (14:23 -0700)]
some tokenizer clean-ups, part 14

2 years agosome tokenizer clean-ups, part 13
Steve Hancock [Tue, 4 Apr 2023 18:37:21 +0000 (11:37 -0700)]
some tokenizer clean-ups, part 13

2 years agoupdate markup language filter
Steve Hancock [Mon, 3 Apr 2023 04:18:21 +0000 (21:18 -0700)]
update markup language filter

2 years agoremove unused code
Steve Hancock [Sun, 2 Apr 2023 23:34:44 +0000 (16:34 -0700)]
remove unused code

2 years agoimprove html detection
Steve Hancock [Sun, 2 Apr 2023 14:31:34 +0000 (07:31 -0700)]
improve html detection

Add code to guard against reformatting a file written in a markup language

2 years agofix c208, misparse of '$1x$2'
Steve Hancock [Thu, 30 Mar 2023 23:41:42 +0000 (16:41 -0700)]
fix c208, misparse of '$1x$2'

This was found in some obfuscated perl code.

2 years agosome tokenizer clean-ups, part 12
Steve Hancock [Thu, 30 Mar 2023 21:46:22 +0000 (14:46 -0700)]
some tokenizer clean-ups, part 12

2 years agosome tokenizer clean-ups, part 11
Steve Hancock [Thu, 30 Mar 2023 03:03:18 +0000 (20:03 -0700)]
some tokenizer clean-ups, part 11

2 years agosome tokenizer clean-ups, part 10
Steve Hancock [Thu, 30 Mar 2023 00:13:22 +0000 (17:13 -0700)]
some tokenizer clean-ups, part 10

2 years agosome tokenizer clean-ups, part 9
Steve Hancock [Wed, 29 Mar 2023 21:40:55 +0000 (14:40 -0700)]
some tokenizer clean-ups, part 9

2 years agosome tokenizer clean-ups, part 8
Steve Hancock [Wed, 29 Mar 2023 20:15:13 +0000 (13:15 -0700)]
some tokenizer clean-ups, part 8

2 years agosome tokenizer clean-ups, part 7
Steve Hancock [Wed, 29 Mar 2023 00:07:13 +0000 (17:07 -0700)]
some tokenizer clean-ups, part 7

2 years agosome tokenizer clean-ups, part 6
Steve Hancock [Tue, 28 Mar 2023 13:57:42 +0000 (06:57 -0700)]
some tokenizer clean-ups, part 6

2 years agosome tokenizer clean-ups, part 5
Steve Hancock [Mon, 27 Mar 2023 13:38:19 +0000 (06:38 -0700)]
some tokenizer clean-ups, part 5

2 years agosome tokenizer clean-ups, part 4
Steve Hancock [Sun, 26 Mar 2023 02:38:24 +0000 (19:38 -0700)]
some tokenizer clean-ups, part 4

2 years agobump version to .02 20230309.02
Steve Hancock [Sat, 25 Mar 2023 01:52:51 +0000 (18:52 -0700)]
bump version to .02

2 years agoupdate for issue c206
Steve Hancock [Sat, 25 Mar 2023 01:40:04 +0000 (18:40 -0700)]
update for issue c206

2 years agoparam --valign-if-unless, -viu, added for git #116
Steve Hancock [Sat, 25 Mar 2023 01:34:17 +0000 (18:34 -0700)]
param --valign-if-unless, -viu, added for git #116

2 years agosome tokenizer clean-ups, part 3
Steve Hancock [Thu, 23 Mar 2023 18:34:01 +0000 (11:34 -0700)]
some tokenizer clean-ups, part 3

2 years agosome tokenizer clean-ups, part 2
Steve Hancock [Wed, 22 Mar 2023 20:41:51 +0000 (13:41 -0700)]
some tokenizer clean-ups, part 2

2 years agosimplify diagnostics object
Steve Hancock [Wed, 22 Mar 2023 14:41:55 +0000 (07:41 -0700)]
simplify diagnostics object

Previously, the diagnostics object made a call back to the tokenizer to get
the input line number. Now the line number arrives as an optional arg.

2 years agosome tokenizer clean-ups, part 1
Steve Hancock [Tue, 21 Mar 2023 16:39:55 +0000 (09:39 -0700)]
some tokenizer clean-ups, part 1

remove unused sub; switch from $tokenizer_self to $self

2 years agoremove unused DIAGNOSTICS parameter, fix comments
Steve Hancock [Mon, 20 Mar 2023 02:37:26 +0000 (19:37 -0700)]
remove unused DIAGNOSTICS parameter, fix comments

2 years agoImprove efficiency of counting and removing leading spaces
Steve Hancock [Sun, 19 Mar 2023 00:31:59 +0000 (17:31 -0700)]
Improve efficiency of counting and removing leading spaces

2 years agoreplace regex with index function for efficiency
Steve Hancock [Sat, 18 Mar 2023 00:30:18 +0000 (17:30 -0700)]
replace regex with index function for efficiency

The index functions are about 3x faster in this critical section.

2 years agoeliminate sub length_tag
Steve Hancock [Fri, 17 Mar 2023 14:01:33 +0000 (07:01 -0700)]
eliminate sub length_tag

This eliminates a large amount of sub call overhead.

2 years agooutput file verbatim for certain lexical sub names
Steve Hancock [Thu, 16 Mar 2023 00:27:34 +0000 (17:27 -0700)]
output file verbatim for certain lexical sub names

Lexical (my) subs which use the builtin names of certain quote-like
operators may cause problems in this version of perltidy.  For example
'my sub s {...}' may cause parsing errors. If something like this is
encountered, then formatting will not be attempted; the file will be
output verbatim.

2 years agoeliminate sub store_space
Steve Hancock [Tue, 14 Mar 2023 23:43:16 +0000 (16:43 -0700)]
eliminate sub store_space

This is now handled by sub store_token to improve efficiency by
reducing per-token sub calls

2 years agomake formatting of 'class' more like 'package'
Steve Hancock [Tue, 14 Mar 2023 00:21:01 +0000 (17:21 -0700)]
make formatting of 'class' more like 'package'

This update makes any 'class' keyword be formatted as if it were
'package' as far as spaces and blank lines go (i.e., -blpb=n flag applies).
This also improves coding efficiency.

2 years agobump version to 20230309.01 20230309.01
Steve Hancock [Mon, 13 Mar 2023 15:16:02 +0000 (08:16 -0700)]
bump version to 20230309.01

This has fixes for git #110 (missing docs) and git #115

2 years agoupdate comments
Steve Hancock [Mon, 13 Mar 2023 15:03:38 +0000 (08:03 -0700)]
update comments

2 years agosome minor cleanups and comment updates
Steve Hancock [Mon, 13 Mar 2023 00:42:11 +0000 (17:42 -0700)]
some minor cleanups and comment updates

2 years agofix git #115
Steve Hancock [Sun, 12 Mar 2023 02:16:58 +0000 (18:16 -0800)]
fix git #115

(Destination incorrectly set to stdout when source is set). The fix proposed
in git #115 is correct, but I decided to pass $source_stream as a new arg
so that the input hash can remain unchanged for possible diagnostic use.

2 years agofix spelling
Steve Hancock [Sat, 11 Mar 2023 01:59:10 +0000 (17:59 -0800)]
fix spelling

2 years agoremove outdated docs
Steve Hancock [Sat, 11 Mar 2023 01:57:55 +0000 (17:57 -0800)]
remove outdated docs

The parameter check-syntax is accepted but now ignored due to security concerns

2 years agoadd tests b1452, b1453
Steve Hancock [Sat, 11 Mar 2023 01:57:26 +0000 (17:57 -0800)]
add tests b1452, b1453

2 years agoadd missing docs for -cpb and -bfvt=n, issue git #110
Steve Hancock [Sat, 11 Mar 2023 01:56:04 +0000 (17:56 -0800)]
add missing docs for -cpb and -bfvt=n, issue git #110

2 years agoupdate version number 20230309
Steve Hancock [Tue, 7 Mar 2023 01:50:20 +0000 (17:50 -0800)]
update version number

This will be the next release to CPAN after testing is complete.

2 years agoremove unused code, update comments
Steve Hancock [Mon, 6 Mar 2023 18:13:32 +0000 (10:13 -0800)]
remove unused code, update comments

2 years agoimprove recombine operation, c200
Steve Hancock [Sat, 4 Mar 2023 15:41:59 +0000 (07:41 -0800)]
improve recombine operation, c200

This update consolidates the three possible optimization methods in the
recombine operation into a single, simpler method which can be
shown to run in linear time.

2 years agoupdate closing side comments
Steve Hancock [Thu, 2 Mar 2023 02:03:57 +0000 (18:03 -0800)]
update closing side comments

2 years agoupdate docs
Steve Hancock [Wed, 1 Mar 2023 23:03:02 +0000 (15:03 -0800)]
update docs

2 years agofix c198
Steve Hancock [Wed, 1 Mar 2023 22:35:57 +0000 (14:35 -0800)]
fix c198

2 years agoupdate some comments and docs
Steve Hancock [Tue, 28 Feb 2023 22:40:01 +0000 (14:40 -0800)]
update some comments and docs

2 years agofix incorrect log message, issue c195
Steve Hancock [Tue, 28 Feb 2023 16:05:21 +0000 (08:05 -0800)]
fix incorrect log message, issue c195

2 years agoremove unused vars
Steve Hancock [Tue, 28 Feb 2023 03:34:40 +0000 (19:34 -0800)]
remove unused vars

2 years agofix c169
Steve Hancock [Mon, 27 Feb 2023 17:43:53 +0000 (09:43 -0800)]
fix c169

2 years agofix b1451
Steve Hancock [Mon, 27 Feb 2023 01:09:58 +0000 (17:09 -0800)]
fix b1451

2 years agoadd recombine optimization when ties are detected
Steve Hancock [Mon, 27 Feb 2023 00:20:05 +0000 (16:20 -0800)]
add recombine optimization when ties are detected

2 years agorestructure recombine operation
Steve Hancock [Fri, 24 Feb 2023 20:59:04 +0000 (12:59 -0800)]
restructure recombine operation

This avoids having a nested loop in a single sub

2 years agosimplify coding for variable _radjusted_levels_
Steve Hancock [Tue, 21 Feb 2023 20:12:16 +0000 (12:12 -0800)]
simplify coding for variable _radjusted_levels_

Coding of the array _radjusted_levels_ can be simplified since it
is now always used.  Previously it was not always available.

2 years agoremove unused vars
Steve Hancock [Mon, 20 Feb 2023 23:56:12 +0000 (15:56 -0800)]
remove unused vars

I found these with a utility I wrote to scan for unused vars.  Most are
remnants from debugging, or variables that might have been useful but
were not actually used.  I left a few unused hashes in the tokenizer which
might be useful in the future.

2 years agosimplify recombine optimization
Steve Hancock [Mon, 20 Feb 2023 19:15:56 +0000 (11:15 -0800)]
simplify recombine optimization

2 years agobe sure output batches do not end in a blank token
Steve Hancock [Sun, 19 Feb 2023 03:17:27 +0000 (19:17 -0800)]
be sure output batches do not end in a blank token

They will not be output but might cause incorrect line length calcs

2 years agosimplify calculation of some flags in sub recombine
Steve Hancock [Sun, 19 Feb 2023 00:55:47 +0000 (16:55 -0800)]
simplify calculation of some flags in sub recombine

2 years agocleanup sub check_old_breakpoints
Steve Hancock [Fri, 17 Feb 2023 23:49:21 +0000 (15:49 -0800)]
cleanup sub check_old_breakpoints

2 years agoimprove recombine reverse normal mode
Steve Hancock [Fri, 17 Feb 2023 21:43:08 +0000 (13:43 -0800)]
improve recombine reverse normal mode

2 years agofix issue c190
Steve Hancock [Fri, 17 Feb 2023 05:39:33 +0000 (21:39 -0800)]
fix issue c190

2 years agofix b1450
Steve Hancock [Fri, 17 Feb 2023 02:12:52 +0000 (18:12 -0800)]
fix b1450

2 years agoadd some tests for recombine operations
Steve Hancock [Wed, 15 Feb 2023 15:49:12 +0000 (07:49 -0800)]
add some tests for recombine operations

2 years agoadd two optimization modes to recombine operation
Steve Hancock [Wed, 15 Feb 2023 15:28:00 +0000 (07:28 -0800)]
add two optimization modes to recombine operation

This looks for two common patterns of monotonic variation in joint strengths
that can be handled very efficiently.

2 years agoadd case b1133 to convergence test files
Steve Hancock [Wed, 15 Feb 2023 14:49:51 +0000 (06:49 -0800)]
add case b1133 to convergence test files

This should have been added some time ago when the issue got resolved

2 years agosimplify code for setting comma breakpoints, part 4
Steve Hancock [Fri, 10 Feb 2023 15:27:37 +0000 (07:27 -0800)]
simplify code for setting comma breakpoints, part 4

This completes restructuring of the complex code which
forms tables. The maximum McCabe number has been reduced from
about 140 to 54 by splitting it into several subs, without any
efficiency loss or change in function. This will simplify maintenance
and debugging.

2 years agosimplify code for setting comma breakpoints, part 3
Steve Hancock [Fri, 10 Feb 2023 01:32:15 +0000 (17:32 -0800)]
simplify code for setting comma breakpoints, part 3

2 years agofix c186, c187
Steve Hancock [Wed, 8 Feb 2023 14:54:35 +0000 (06:54 -0800)]
fix c186, c187

Allow more iterations in recombine operation when the number of lines
in the script increases significantly during formatting.  In case c187,
the entire input script was a single very long line.

2 years agosimplify code for setting comma breakpoints, part 2
Steve Hancock [Wed, 8 Feb 2023 14:34:55 +0000 (06:34 -0800)]
simplify code for setting comma breakpoints, part 2

2 years agosimplify code for setting comma breakpoints, part 1
Steve Hancock [Tue, 7 Feb 2023 21:37:07 +0000 (13:37 -0800)]
simplify code for setting comma breakpoints, part 1

2 years agofix comment text
Steve Hancock [Tue, 7 Feb 2023 15:44:28 +0000 (07:44 -0800)]
fix comment text

2 years agoupdate line ending code, part 2
Steve Hancock [Mon, 6 Feb 2023 19:16:01 +0000 (11:16 -0800)]
update line ending code, part 2

2 years agoremove unused code
Steve Hancock [Mon, 6 Feb 2023 17:05:38 +0000 (09:05 -0800)]
remove unused code

2 years agoupdate output-line-ending code, part 1
Steve Hancock [Mon, 6 Feb 2023 01:36:55 +0000 (17:36 -0800)]
update output-line-ending code, part 1

Moved from Formatter.pm to Tidy.pm, a more logical place

2 years agoadd iteration convergence statistics
Steve Hancock [Mon, 6 Feb 2023 01:33:33 +0000 (17:33 -0800)]
add iteration convergence statistics

2 years agoAdd INITIALIZER comments for globals
Steve Hancock [Sun, 5 Feb 2023 22:12:22 +0000 (14:12 -0800)]
Add INITIALIZER comments for globals

Skipping the re-initialization of a global control variable can cause
bugs which are extremely difficult to track down.  So it helps to have comments
indicating where this occurs.

2 years agoremove obsolete comment about encoding
Steve Hancock [Sun, 5 Feb 2023 22:11:16 +0000 (14:11 -0800)]
remove obsolete comment about encoding

2 years agoremove duplicate code
Steve Hancock [Sun, 5 Feb 2023 19:07:11 +0000 (11:07 -0800)]
remove duplicate code

2 years agoinitialize global var $controlled_comma_style
Steve Hancock [Sun, 5 Feb 2023 16:18:28 +0000 (08:18 -0800)]
initialize global var $controlled_comma_style

2 years agoinitialize global var %matching_token in BEGIN block
Steve Hancock [Sun, 5 Feb 2023 15:32:52 +0000 (07:32 -0800)]
initialize global var %matching_token in BEGIN block

2 years agoupdate man page
Steve Hancock [Sun, 5 Feb 2023 01:32:27 +0000 (17:32 -0800)]
update man page

2 years agoavoid possibility of starting a random run twice
Steve Hancock [Sun, 5 Feb 2023 00:39:00 +0000 (16:39 -0800)]
avoid possibility of starting a random run twice

The GO.sh script is immediately moved to backup when a run starts.
That way it cannot be accidentally started again. Previously it was
moved to backup when a run ended.

2 years agoreduce max_mccabe
Steve Hancock [Fri, 3 Feb 2023 22:09:59 +0000 (14:09 -0800)]
reduce max_mccabe

The Formatter routines with highest McCabe values are currently these.
It is difficult to reduce them without significantly slowing processing.
set_bond_strengthws 121
grind_batch_of_CODE 119
set_comma_breakpoints_final 119
set_whitespace_flags 117
process_line_inner_loop 114
break_lines_inner_loop 113
set_vertical_tightness_flags 104
weld_nested_containers 101

2 years agofix b1449
Steve Hancock [Fri, 3 Feb 2023 21:53:25 +0000 (13:53 -0800)]
fix b1449

2 years agoreorganize sub check_options, part 2
Steve Hancock [Fri, 3 Feb 2023 20:02:22 +0000 (12:02 -0800)]
reorganize sub check_options, part 2

2 years agoreorgainze sub check_options, part 1
Steve Hancock [Fri, 3 Feb 2023 17:53:05 +0000 (09:53 -0800)]
reorgainze sub check_options, part 1

2 years agofix b1448
Steve Hancock [Thu, 2 Feb 2023 18:41:00 +0000 (10:41 -0800)]
fix b1448

2 years agoBump to v 20221112.05; update one-line block docs 20221112.05
Steve Hancock [Wed, 1 Feb 2023 02:14:16 +0000 (18:14 -0800)]
Bump to v 20221112.05; update one-line block docs

2 years agofix b1446
Steve Hancock [Mon, 30 Jan 2023 17:52:48 +0000 (09:52 -0800)]
fix b1446

2 years agoupdate docs for --use-feature=class
Steve Hancock [Mon, 30 Jan 2023 15:39:41 +0000 (07:39 -0800)]
update docs for --use-feature=class

This also collects info on extended syntax in a single place

2 years agofix b1447; improve sub set_whitespace_flags
Steve Hancock [Sun, 29 Jan 2023 23:57:46 +0000 (15:57 -0800)]
fix b1447; improve sub set_whitespace_flags

This should have been two commits. The first, fix b1447, is just 1 line
and will influence almost no code. The second improves the efficiency
of sub set_whitespace flags, mostly by processing comments faster. It
also fixes a minor problem with marking a sub call for special
formatting when a side comment appears between the sub name and
opening paren (issue c182).

2 years agoAdded parameter --one-line-block-exclusion-list=s
Steve Hancock [Sat, 28 Jan 2023 01:27:13 +0000 (17:27 -0800)]
Added parameter --one-line-block-exclusion-list=s

2 years agoimproved efficiency of token loop
Steve Hancock [Thu, 26 Jan 2023 18:38:16 +0000 (10:38 -0800)]
improved efficiency of token loop

2 years agoset bugtracker to be github
Steve Hancock [Wed, 25 Jan 2023 18:38:28 +0000 (10:38 -0800)]
set bugtracker to be github

2 years agobump version to .04 20221112.04
Steve Hancock [Wed, 25 Jan 2023 02:26:35 +0000 (18:26 -0800)]
bump version to .04

2 years agoissue rt#145999, keep old mtime with -b if no diff
Steve Hancock [Wed, 25 Jan 2023 02:08:52 +0000 (18:08 -0800)]
issue rt#145999, keep old mtime with -b if no diff

See the note in CHANGES.md

2 years agosimplify sub pattern testing
Steve Hancock [Tue, 24 Jan 2023 15:31:46 +0000 (07:31 -0800)]
simplify sub pattern testing

2 years agoremove unused var
Steve Hancock [Tue, 24 Jan 2023 03:33:18 +0000 (19:33 -0800)]
remove unused var

2 years agogive -kba priority over -otr (b1445)
Steve Hancock [Tue, 24 Jan 2023 01:46:00 +0000 (17:46 -0800)]
give -kba priority over -otr (b1445)