Beta Released (12.0.0.48)

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.