| Age | Commit message (Collapse) | Author | Files | Lines |
|
# Conflicts:
# adodb.inc.php
# docs/changelog.md
|
|
Use a single, more advanced regex to parse the table SQL, allowing
identification of foreign key definitions with a single pass, instead of
several preg_split/preg_match calls.
The new regex recognizes both column and table constraints, and allows
composite keys too.
Case conversion (when $upper parameter is true) is performed within the
foreach loop that builds the return array, instead of calling
array_change_key_case() at the end.
Fixes #1078, #1079, #1080
|
|
Fixes metaForeignKeys() method returning nothing when FOREIGN keyword
was not given in upper case.
Fixes #1078
|
|
- Fix static analysis warnings
- Remove useless code
- Coding guidelines
|
|
|
|
According to SQLite schema documentation, the only valid values for
*type* are 'table', 'index', 'view', or 'trigger' [1] so testing for
`type != 'meta'` is useless.
[1]: https://sqlite.org/schematab.html#interpretation_of_the_schema_table
|
|
|
|
Use query parameters instead of injecting the table name in the SQL, in
the following methods:
- metaColumns()
- metaForeignKeys()
- metaIndexes()
Thanks to Marco Nappi (@mrcnpp) for reporting this vulnerability.
Fixes #1083, CVE-2025-54119, GHSA-vf2r-cxg9-p7rf
|
|
ADOdb version 5.22.9 released 2025-05-01
# Conflicts:
# adodb-active-record.inc.php
# adodb-active-recordx.inc.php
# adodb.inc.php
# docs/changelog.md
# drivers/adodb-postgres64.inc.php
|
|
This function does the same thing as ADODB_postgres8::_insertID(), in
a more limited way. There is no reason to keep it around.
Fixes #1069
|
|
|
|
Properly escape the $tablename and $fieldname parameters used to build
the sequence name.
|
|
# Conflicts:
# adodb.inc.php
# docs/changelog.md
|
|
Without debug flag, the library returns '0' instead of error messages
and correct SQLite error codes.
Fixes #1061, PR #1062
|
|
ADOdb version 5.22.8 released 2025-01-25
# Conflicts:
# adodb.inc.php
# docs/changelog.md
# drivers/adodb-postgres64.inc.php
|
|
- Simplify control statements with single if expressions.
- Updated phpdoc with additional details on how to set connection
property values.
- Removed to-do that seemed wrong since the user should use
setConnectionParameter for those or set the property directly.
- Allow setting of ssl cert property values, clientFlags, port, and
socket using the standard setConnectionParameter functionality.
Feedback updates:
- Return false for special cases with type checks on sslsert, socket,
clientflags, or port fail
- Added invalid connection param to output.
- Simplified isset checks.
- Changed sslcert to ssl and simplified subkeys to ('key', 'cert', 'ca',
'capath', 'cipher').
- Removed code duplication.
- is_numeric should be checking value not parameter
Fixes #1044
|
|
- Remove inappropriate setting of socket.
- Updated to use appropriate bitwise operations to check for set SSL
client flags and update the default to not overwrite set user flags.
- Add friendly error to let user know they need to add a SSL client flag
when using certificates.
Fixes #919, #1043
Signed-off-by: Damien Regad <dregad@mantisbt.org>
|
|
In ADOdb versions < 5.21.0-beta.1, serverInfo()['version'] returned just
the version number (e.g. `15.10`), which was extracted from the version
string using ADOConnection::_findVers().
Commit f2b88e063d61b12a1df9090b8d0c68831ed0f447 removed the _findVers()
call, so serverInfo() could potentially return additional information
depending on the actual value returned by pg_version() (e.g.
`15.10 (Debian 15.10-0+deb12u1)`.
This could cause subsequent version comparisons to fail, e.g. in
metaTables().
Fixes #1059
|
|
|
|
# Conflicts:
# adodb-datadict.inc.php
|
|
Per https://github.com/ADOdb/ADOdb/pull/1034#issuecomment-2136155259
Signed-off-by: Damien Regad <dregad@mantisbt.org>
Fixed conflict resolution when applying patch.
|
|
|
|
|
|
|
|
|
|
This is a follow-up commit on 1501ccd07868d626a51802d14ed41ed05a3532ad,
as the original fix for #999 (see PR #1005) did not fully address the
problem. Another PHP deprecated warning is thrown:
strlen(): Passing null to parameter 1 ($string) of type string is
deprecated.
Fixes #1012
Backported from commit 8d88183538ae08b86c30af5b0f3280c2accd71c3.
|
|
Commit 249b7fb08569ce576cd1bf26098e00701145c6ec (PR #1017) introduced a
regression caused by returning from the function without resetting
$ADODB_FETCH_MODE to its original value.
Fixes #1016
|
|
|
|
- remove unused variable
- ignore changed method parameter name
- add missing break statements in switch
|
|
|
|
|
|
- Now supports all ADOdb methods
- Honors ADODB_ASSOC_CASE
- Honors ADODB_FETCH_MODE
- Supports setConnectionParameter()
|
|
|
|
ADOdb 5.22.0 introduced use of bound variables and prepared statements,
which broke compatibility with Manticore Search and ClickHouse.
Adding $doNotUseBoundVariables property, allowing to revert to emulated
prepared statements, used in ADODb until v5.21.
Fixes #1028, PR #1029
Co-authored-by: Damien Regad <dregad@mantisbt.org>
Reworded and formatted PHPDoc block, fixed coding guidelines.
|
|
|
|
Calling connect() method When the $LDAP_CONNECT_OPTIONS global variable
is not set results in PHP Fatal error: Uncaught TypeError: count():
Argument 1 ($value) must be of type Countable|array, null given.
Replacing count()>0 by !empty() to avoid the problem.
Fixes #1009
|
|
|
|
Signed-off-by: Damien Regad <dregad@mantisbt.org>
# Conflicts:
# adodb.inc.php
# docs/changelog.md
|
|
When getAssoc() returns false, metaColumns() throws PHP Fatal error on
array_change_key_case, bool given instead of array.
We now check that getAssoc() completed successfully before continuing,
and abort if not.
Fixes #1016
Signed-off-by: Damien Regad <dregad@mantisbt.org>
|
|
This is a follow-up commit on 1501ccd07868d626a51802d14ed41ed05a3532ad,
as the original fix for #999 (see PR #1005) did not fully address the
problem. Another PHP deprecated warning is thrown:
strlen(): Passing null to parameter 1 ($string) of type string is
deprecated.
Fixes #1012
|
|
# Conflicts:
# adodb.inc.php
# docs/changelog.md
|
|
On PHP 8.1, when the _query() method is called, the oci8 driver throws
Automatic conversion of false to array is deprecated.
Fixes #998
|
|
When metaColumns() is called for a table having a NUMBER column with a
non-zero scale (e.g. NUMBER(8,2)), the PDO oci driver incorrectly sets
the ADOFieldObject's max_length to the column's length instead of its
precision.
Align handling of number fields in ADODB_pdo_oci::metaColumns() to match
the oci8 driver's correct behavior.
Fixes #1007
|
|
This legacy class is a leftover of the old ADOdb extension, which should
have been removed as part of 376249c45f9e51e327ab0af22e9bfc9918abc0b4
(see #270).
|
|
|
|
Update $metaTablesSQL to use standard USER_CATALOG view name instead of
CAT synonym, and standardize the query across the whole Oracle drivers
family.
|
|
Update the $metaColumnsSQL statements in oci8, oci8po, pdo_oci and
odbc_oracle drivers to use USER_TAB_COLUMNS instead of COL. Change was
not applied to the deprecated oracle driver.
Since the contents of the COL.NULLS column (`NULL` / `NOT NULL`) is not
the same as the equivalent USER_TAB_COLUMNS.NULLABLE (`Y` / `N`), we
can get rid of the CASE statement in $metaColumnsSQL2 and simplify the
processing in metaColumns() method, to use a simple string comparison
instead of a strncmp() call to populate ADOFieldObject's not_null
property.
Fixes #1006
|
|
|
|
Stored the current bulkBind value in a variable so $this->bulkBind can
be reset after being set to false.
Fixes #1000 (PR #1300)
|
|
|