okbob/plpgsql_check
plpgsql_check is a linter tool (does source code static analyze) for the PostgreSQL language plpgsql (the native language for PostgreSQL store procedures).
30 Releases
Latest: 3w ago
2.9.1v2.9.1Latest
📋 Changes
- fix possible crash when traced inline block fails. plpgsql_inline_handler
2.9.0v2.9.0
📋 Changes
- significant profiler rewriting - the code is much more maintainable now
- memory used by statements statistics is limited by `plch_max_stat_size`
2.8.11v2.8.11
📋 Changes
- fix meson build for pg 14 and pg 15
2.8.10v2.8.10
📋 Changes
- allow to run regress tests on server with active pg_stat_statements
- correct call post_parse_analyze_hook (nobody reported)
- fixing some oversights in code
2.8.9v2.8.9
📋 Changes
- now don't try to convert tracked constant when constant is composite
- expected result tuple description is now generated from base type (not from domain type)
2.8.8v2.8.8
📋 Changes
- fix possible crash due usage of currupted memory
2.8.7v2.8.7
📋 Changes
- fix calling prev_plpgsql_plugin
- internal cleaning
2.8.6v2.8.6
📋 Changes
- rewrite pldbgapi - the base of tracker, profiler, .. fmgr API is not used now
- raise warning when expression volatility is higher than routine volatility
- raise warning when reserved keyword is used as a label
- detect obsolete usage SELECT expr INTO var
2.8.5v2.8.5
📋 Changes
- Previous commit 17073e8f6c595bc590b1449ad6c5dcc8952a7b45 released tracked const (plpgsql) string. It is wrong, because this string can be used more times.
2.8.4v2.8.4
📋 Changes
- force cast constant strings to target type
2.8.3v2.8.3
📋 Changes
- fix check if function was already checked or not in passive mode for PostgreSQL 18
- fix false alarm about bad number of target variables when procedure has composite inout argument
2.8.2v2.8.2
📋 Changes
- set correctly context of hiddent cast for all cases (not just for assignment), and for this warning set the query field when the statement is EXECSQL
2.8.1v2.8.1
📋 Changes
- fix build for PostgreSQL 18
2.8.0v2.8.0
📋 Changes
- remove support for PostgreSQL 12 and 13 (code cleaning)
2.7.15v2.7.15
📋 Changes
- raise a warning when the expression is not pure expression
2.7.14v2.7.14
📋 Changes
- metadata and code cleaning
2.7.13v2.7.13
📋 Changes
- almost cosmetic changes
2.7.12v2.7.12
📋 Changes
- allow to use custom pg_config
2.7.11v2.7.11
📋 Changes
- disallow late pldbgapi2 initialization, fix some possible crashes
2.7.10v2.7.10
📋 Changes
- fix another crash related unexpected order of fmgr hook calls
2.7.9v2.7.9
📋 Changes
- fix crash in profiler when parameter of EXECUTE is empty string
2.7.8v2.7.8
📋 Changes
- fix crash when plpgsql_check is used on anonymous code block
2.7.7v2.7.7
fix possibly crash when a plan is created by plpgsql, then plancache is invalidated (due sinval), and same plan is created by plpgsql_check in passive mode.
2.7.6v2.7.6
📋 Changes
- fix crash when pragma assert-column is not correctly used
2.7.5v2.7.5
📋 Changes
- fix crash related to active cursor leak detection and ending transaction inside procedure
2.7.4v2.7.4
📋 Changes
- fix another crash related to constant tracing
2.7.3v2.7.3
📋 Changes
- fix false alarm related to bug in trace constant in format function (when positional placeholder was used)
2.7.2v2.7.2
📋 Changes
- fix false alarm of unclosed cursors test
2.7.1v2.7.1
📋 Changes
- fix missing invalidation of traced constant when SELECT INTO command is used
- add pragmas for better check of identifiers used by dynamic SQL (assert-schema, assert-table, assert-column)
2.7.0v2.7.0
📋 Changes
- possibility to detect unclosed cursors (runtime)
