History log of /php-src/ext/pgsql/pgsql_arginfo.h (Results 1 – 25 of 60)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# e609a219 29-Sep-2024 David Carlier

ext/pgsql: pgsql_copy_from to support iterable.

inspired from the Pdo\Pgsql new feature GH-15893.

close GH-16124


# 1da352c3 16-Jun-2024 David Carlier

ext/pgsql: adding pg_close_stmt.

up to postgresql 17, when done with a prepared statement, we could
release it with DEALLOCATE sql command which is fine ; until we want
to implement

ext/pgsql: adding pg_close_stmt.

up to postgresql 17, when done with a prepared statement, we could
release it with DEALLOCATE sql command which is fine ; until we want
to implement a cache solution based on statement ids.

Since PostgreSQL 17, PQclosePrepared uses internally the `close` protocol
allowing to reuse the statement name while still freeing it.
Since the close protocol implementation had been added on libpq within
this release, no way to reimplement it.

close GH-14584

show more ...


# db545767 10-Sep-2024 DanielEScherzer

Rename `ZEND_STR_DEPRECATED` to `ZEND_STR_DEPRECATED_CAPITALIZED` (#15831)

To match other capitalized strings like `ZEND_STR_UNKNOWN_CAPITALIZED` and
`ZEND_STR_ARRAY_CAPITALIZED`. Since

Rename `ZEND_STR_DEPRECATED` to `ZEND_STR_DEPRECATED_CAPITALIZED` (#15831)

To match other capitalized strings like `ZEND_STR_UNKNOWN_CAPITALIZED` and
`ZEND_STR_ARRAY_CAPITALIZED`. Since this known string was only added in PHP
8.4, no backwards compatibility alias is needed.

show more ...


# 53cb8967 03-Sep-2024 DanielEScherzer

Generated arginfo header files: remove empty zend_function_entry arrays (#15705)

When a class (or enum) has no methods, rather than using an array that only
contains `ZEND_FE_END`, use `

Generated arginfo header files: remove empty zend_function_entry arrays (#15705)

When a class (or enum) has no methods, rather than using an array that only
contains `ZEND_FE_END`, use `NULL` for the functions. The implementation of
class registration for internal classes, `do_register_internal_class()` in
zend_API.c, already skips classes where the functions are `NULL`. By removing
these unneeded arrays, we can reduce the size of the header files, while also
removing an unneeded call to zend_register_functions() for each internal class
with no extra methods.

show more ...


# 8d12f666 24-Aug-2024 Máté Kocsis

Fix registration of internal readonly child classes (#15459)

Currently, internal classes are registered with the following code:

INIT_CLASS_ENTRY(ce, "InternalClass", class_Internal

Fix registration of internal readonly child classes (#15459)

Currently, internal classes are registered with the following code:

INIT_CLASS_ENTRY(ce, "InternalClass", class_InternalClass_methods);
class_entry = zend_register_internal_class_ex(&ce, NULL);
class_entry->ce_flags |= ...;

This has worked well so far, except if InternalClass is readonly. It is because some inheritance checks are run by zend_register_internal_class_ex before ZEND_ACC_READONLY_CLASS is added to ce_flags.

The issue is fixed by adding a zend_register_internal_class_with_flags() zend API function that stubs can use from now on. This function makes sure to add the flags before running any checks. Since the new API is not available in lower PHP versions, gen_stub.php has to keep support for the existing API for PHP 8.3 and below.

show more ...


# 29f98e74 10-Jul-2024 Tim Düsterhus

Replace `@deprecated` by `#[\Deprecated]` for internal functions / class constants (#14750)

Co-authored-by: Gina Peter Banyard <girgias@php.net>
Co-authored-by: Niels Dossche <7771979+ni

Replace `@deprecated` by `#[\Deprecated]` for internal functions / class constants (#14750)

Co-authored-by: Gina Peter Banyard <girgias@php.net>
Co-authored-by: Niels Dossche <7771979+nielsdos@users.noreply.github.com>

show more ...


# 4f450b62 25-Jun-2024 Peter Kokot

Bump minimum libpq version to 10.0 (#14628)

This bumps the libpq client-side PostgreSQL library minimum required
version from 9.1 to 10.0.

- Sanity check: PQlibVersion -> PQencr

Bump minimum libpq version to 10.0 (#14628)

This bumps the libpq client-side PostgreSQL library minimum required
version from 9.1 to 10.0.

- Sanity check: PQlibVersion -> PQencryptPasswordConn (available since
libpq 10.0)
- PQsetErrorContextVisibility (available since libpq 9.6)
- lo_truncate64 (available since libpq 9.3), if 32-bit system doesn't
support lo_*64 functions, error is returned and functions are always
available

Additionally, the conditional functions usages in pdo_pgsql and pgsql
extensions that got piled up are cleaned and synced:

- pg_prepare (PQprepare available since libpq 7.4)
- pg_query_params (PQexecParams available since libpq 7.4)
- pg_result_error_field (PQresultErrorField available since libpq 7.4)
- pg_send_prepare (PQsendPrepare available since libpq 7.4)
- pg_send_query_params (PQsendQueryParams available since libpq 7.4)
- pg_set_error_verbosity (PQsetErrorVerbosity available since libpq 7.4)
- pg_transaction_status (PQtransactionStatus available since libpq 7.4)

The Windows libpq version is currently at version 11.4:
https://github.com/winlibs/postgresql

Discussion: https://news-web.php.net/php.internals/123609
Follow-up of GH-14540

show more ...


# 564914ac 14-Jun-2024 David Carlier

ext/pgsql: adding postgresql 17 new libpq wrapper call.

pg_set_chunked_rows_size to allow to fetch results in chunk of max N rows.

close GH-14571


# 2bb8fbd0 13-Jun-2024 David Carlier

ext/pgsql: add pg_jit server info.

since PostgreSQL 11, LLVM JIT feature had been brought thus reporting
the settings to the client connection.

Close GH-14566


# 65ff5117 09-Jun-2024 Peter Kokot

Check for PQERRORS_SQLSTATE in PGVerbosity enum (#14519)

The PG_VERSION_NUM is not available in intended public PostgreSQL
headers unless the pg_config.h is included or the PostgreSQL se

Check for PQERRORS_SQLSTATE in PGVerbosity enum (#14519)

The PG_VERSION_NUM is not available in intended public PostgreSQL
headers unless the pg_config.h is included or the PostgreSQL server
development headers are installed separately. This instead resorts to
checking for the PGVerbosity enum value. The PQERRORS_SQLSTATE was added
to PostgreSQL 12.0. At the time of writing, on Windows, PostgreSQL is at 11.4 so
it is not defined there yet.

show more ...


# 01887afd 09-Jun-2024 Peter Kokot

Fix typo s/PGVERSION_NUM/PG_VERSION_NUM (#14516)


# e69bccd7 29-May-2024 David Carlier

ext/pgsql: adding pg_socket_poll.

Using PQSocketPoll to poll on a connection's socket.
Returns immediatly is there no event expected on read and write.
Other than that, it is a thin

ext/pgsql: adding pg_socket_poll.

Using PQSocketPoll to poll on a connection's socket.
Returns immediatly is there no event expected on read and write.
Other than that, it is a thin wrapper on top of poll, thus reflecting
its return value.

close GH-14366

show more ...


# 661c5ee5 28-May-2024 Máté Kocsis

Fix implicitly nullable parameter type for pg_put_copy_end()


# 162a311c 25-May-2024 David Carlier

ext/pgsql: adding pg_put_copy_data/pg_put_copy_end.

pg_put_copy_data allows to send COPY commands to the server.
pg_put_copy_end signals the end of the n commands.

Both return 3

ext/pgsql: adding pg_put_copy_data/pg_put_copy_end.

pg_put_copy_data allows to send COPY commands to the server.
pg_put_copy_end signals the end of the n commands.

Both return 3 states ; 1, 0 and -1 when 1 is success, 0 the buffer queue
is full then -1 for errors.

Close GH-14325

show more ...


# 9aa3a0d7 18-May-2024 David Carlier

ext/pgsql: adding pg_change_password functionality.

handy call to change an user password while taking care transparently
of the password's encryption.

close GH-14262


# 77fa4c0f 12-May-2024 武田 憲太郎

ext/pgsql: add `pg_result_memory_size`

Close GH-14214


# f2e199e8 25-Feb-2024 Máté Kocsis

Implement "support doc comments for internal classes and functions" (#13266)

Fixes #13130


# 10957e49 18-Feb-2024 Máté Kocsis

Do not generate frameless info items when func info generation is disabled

While here, I fixed newlines around arginfo and function entry generation. Previously, newlines were repeated.


# 1e66e6ae 20-Nov-2023 Jakub Zelenka

Revert incomplete PG pipeline addition

Closes GH-12735


# 63898008 10-Nov-2023 Dmitriy Degtyaryov

Fix GH-9344: pgsql pipeline mode proposal.

Adding pg_send_flush_request.
Fix freeze after next execute pg_send_* on PQgetResult in _php_pgsql_link_has_results.
Set nonblocking for pi

Fix GH-9344: pgsql pipeline mode proposal.

Adding pg_send_flush_request.
Fix freeze after next execute pg_send_* on PQgetResult in _php_pgsql_link_has_results.
Set nonblocking for pipelining mode.
No flush client buffer in pg_send_* for pipelining mode.

Close GH-12644

show more ...


# 75da0d7c 08-Oct-2023 Omar Emara

PGSQL: Allow unconditional selection in pg_select

Previously, pg_select did not allow unconditional selection, where an
empty ids array would result in a function failure.

This

PGSQL: Allow unconditional selection in pg_select

Previously, pg_select did not allow unconditional selection, where an
empty ids array would result in a function failure.

This patch implements two changes:
- Make the ids array an optional parameter.
- Allow the ids array to be empty.

In both cases, unconditional selection happen, which is equivalent to
pg_query('SELECT * FROM <table>;').

Two test cases were added to test the aforementioned changes.

Close GH-5332

show more ...


# 7ae0273b 12-Jul-2023 Máté Kocsis

Make the $row param of pg_fetch_result(), pg_field_prtlen() and pg_field_is_null() nullable


# 21aaf332 21-Jun-2023 Remi Collet

check PQsetErrorContextVisibility availability (libpq >= 9.6)


# dd8514a0 07-Jun-2023 David CARLIER

ext/pgsql: adding pg_set_error_context_visibility.

another level of context for pg_last_error/pg_result_error() to include
or not the context in those. PQSHOW_CONTEXT_ERRORS being the de

ext/pgsql: adding pg_set_error_context_visibility.

another level of context for pg_last_error/pg_result_error() to include
or not the context in those. PQSHOW_CONTEXT_ERRORS being the default.

Close GH-11395

show more ...


# 85338569 07-May-2023 Máté Kocsis

Narrow bool return types to true when possible


123