CA Rules:
- Rule 4539 ( Avoid the RELIES ON clause when on 11.2 or higher )
- Rule 4544 ( Consider using RELIES with your function cache )
- Rule 2131 ( Use CONSTANT keyword wherever possible ) : Shortened the flagged area for clarity.
- Rule 2752 ( Use named parameter notation ) : Limiting hits to calls with at least five parameters, flagging any unnamed parameters only.
- Rule 3807 ( Avoid using a RETURN statement in a procedure ) : Shortened the flagged area for clarity.
- Rule 5406 ( Remove unused parameters or modify code to use the parameter ) : Reduced false positives and increased correctness when having embedded subprograms.
- Rule 5601 ( Avoid using RETURN statements in a PROCEDURE ) : Shortened the flagged area for clarity.
- Rule 2127 ( Limit use of sub queries in SELECT clauses ) : Limiting the flagged area to the SELECT keyword only, rather than flagging the whole subquery.
- Rule 2118 ( Avoid DDLs other than Truncate, Exchange/Split partition ) : Added Views to exclusion list
Formatter:
- Fix (bug introduced in 5.251): A CREATE TABLE AS statement had an unwanted a blank line before the AS clause.
- Options GUI: Fix : The column range for tabular list arrangements is now properly limited between 2 and 10.
- Options GUI: Fix: When selecting wrapped list arrangements then the parentheses options are now hidden, because they are not applicable to wrapped lists.
- Fix: WRAPPED PL/SQL or SQL PL units not always well formatted.
- Fix: Did not format SELECT statements having common table clauses where the parameter list wanted to fold.
- Fix: Fixing formatting of a number of complex Oracle SELECT statements.
- Fix: Fixing formatting in all dialects of DROP INDEX, EXTERNAL NAME clause, FETCH INTO, analytic clause, SELECT…OFFSET, wrapped program units
- Options GUI: New: The column range for non-table list arrangements can now also be set to zero such that a single item is presented the same way as multiple items, as shown in the following example. (requested by Tamas Urban, Toad Oracle user group)
PROCEDURE p ( a NUMBER, b NUMBER ) IS BEGIN NULL; END; PROCEDURE p **( a NUMBER )** IS BEGIN NULL; END;
We also changed the column default for the default table arrangement to zero from 1 such that a table or view with a single column is formatted the same way (closing parenthesis) as a multi-column object:
CREATE MATERIALIZED VIEW A_SCHEMA.MAT_VIEW ( COL1 ENCRYPT USING 'AES128' **)** TABLESPACE "USERS"
-
Fix: The list arrangement logic has been revised and fixed where needed.
-
Fix: In multiline /…/ comments, blank lines containing space characters could cause no formatting to happen.
-
Fix : AND OR clauses are not stacked and aligned correctly when there is a comment
SELECT *FROM all_objects
WHERE --comment object_name < ‘B’ AND
owner = 'SYS'
-
Fix : Options GUI: Renaming the list arrangement “SELECT list” to “SELECT/INTO lists” for clarity.
-
New : Adding a list arrangement for expressions such as IN (…).
-
Fix : Wrapped Plus-Minus-Mul-Div style breaks SQL formatting.
-
Fix : Formatter slow (or hang) on large joins [was: Attached view script yields QP5 access violation].
-
Fix : Can no longer stack values in FETCH.
-
Fix : Unable to wrap or table format the column list in the SET statement.