# PyKX 2.3.0 Released

**URL:** <https://forum.kx.com/t/pykx-2-3-0-released/13145>\
**Category:** Community Support\
**Tags:** pykx, imported\
**Created:** [January 22, 2024, 3:11pm UTC](https://forum.kx.com/t/pykx-2-3-0-released/13145 "2024-01-22T15:11:00Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![cmccarthy11](https://avatars.discourse-cdn.com/v4/letter/c/58f4c7/32.png) [@cmccarthy11](https://forum.kx.com/u/cmccarthy11)\
**Post date:** [January 22, 2024, 3:11pm UTC](https://forum.kx.com/t/pykx-2-3-0-released/13145/1 "2024-01-22T15:11:00Z")

</div>

Hi All,

PyKX 2.3.0 has been released&nbsp; Full details of the release can be found here.

### Additions

- PyKX now supports the use of&nbsp;`KDB_LICENSE_B64`&nbsp;or&nbsp;`KDB_K4LICENSE_B64`&nbsp;configuration values/environment variables to define the content of a&nbsp;`kc.lic`&nbsp;or&nbsp;`k4.lic`&nbsp;license respectively if no license is found on initial usage of PyKX.

- Shortcut provided for access to current date, time and timestamp information using&nbsp;`'today'`&nbsp;and&nbsp;`'now'`.

- Addition of support for&nbsp;`inplace`&nbsp;updates of PyKX tables modified using qsql select/update/delete operations on in-memory data. Application of&nbsp;`inplace`&nbsp;modifications is not supported for direct application on Partitioned/Splayed tables.

- Addition of&nbsp;`reset_index`,&nbsp;`add_suffix`,&nbsp;`add_prefix`,&nbsp;`count`,&nbsp;`skew`&nbsp;and&nbsp;`std`&nbsp;functionality to Pandas Like API

- `%%q`&nbsp;Jupyter Notebook magic adds&nbsp;`--debug`&nbsp;option which prints the q backtrace if the cell execution fails.

- Release 2.3.0 adds to PyKX the concept of Beta features, these features are available to users through setting the configuration/environment variable&nbsp;`PYKX_BETA_FEATURES`. For more information on Beta features see further documentation&nbsp;here

### Fixes and Improvements

- `%%q`&nbsp;Jupyter Notebook magic now returns all outputs up to and including an error when thrown. Previously only the error was returned.

- `%%q`&nbsp;Jupyter Notebook magic ignores accidental whitespace in execution options. Below example no longer fails with&nbsp;`Received unknown argument`&nbsp;error:

- In cases where PyKX IPC sockets read data from unexpected publishers it could raise an&nbsp;`IndexError`. PyKX will now provide a more verbose error indicating that an unexpected message has been received, the bytes processed and requests a reproducible example to be provided if possible.

- Update to table column retrieval logic to error when a user attempts to access a non-existent column with a queried table.

- Improved error message for conversion failures.

- Fixes an issue where a user would receive a length error when attempting to apply&nbsp;`min`,&nbsp;`max`,&nbsp;`prod`&nbsp;and&nbsp;`sum`&nbsp;functions on&nbsp;`pykx.KeyedTable`&nbsp;objects.

### Beta Features

- Database Management functionality has been added for the creation, loading and maintenance of PyKX Partitioned Databases. A full worked example of this functionality can be found&nbsp;here&nbsp;along with full API documentation which includes examples of each function&nbsp;here. The API includes but is not limited to the following:

- Added&nbsp;`PYKX_THREADING`&nbsp;environment variable that allows&nbsp;multithreaded programs&nbsp;to modify state when calling into python on secondary threads. Note: This behaviour is only supported on Linux / MacOS.

---

<div class="post-metadata">

**Author:** ![megan\_mcp1](https://avatars.discourse-cdn.com/v4/letter/m/ea5d25/32.png) [@megan\_mcp1](https://forum.kx.com/u/megan_mcp1)\
**Post date:** [January 23, 2024, 9:35am UTC](https://forum.kx.com/t/pykx-2-3-0-released/13145/2 "2024-01-23T09:35:00Z")

</div>

Thanks for sharing&nbsp;&nbsp;!
