# PyKX 1.6 released

**URL:** <https://forum.kx.com/t/pykx-1-6-released/13208>\
**Category:** Community Support\
**Tags:** pykx, imported\
**Created:** [June 19, 2023, 12:00am UTC](https://forum.kx.com/t/pykx-1-6-released/13208 "2023-06-19T00:00:00Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![rocuinneagain](https://sea2.discourse-cdn.com/flex002/user_avatar/forum.kx.com/rocuinneagain/32/287_2.png) [@rocuinneagain](https://forum.kx.com/u/rocuinneagain)\
**Post date:** [June 19, 2023, 12:00am UTC](https://forum.kx.com/t/pykx-1-6-released/13208/1 "2023-06-19T00:00:00Z")

</div>

[https://learninghub.kx.com/forums/topic/pykx-1-6-released](https://learninghub.kx.com/forums/topic/pykx-1-6-released)

## PyKX 1.6 has been released
These release notes are also available on the documentation site:

[https://code.kx.com/pykx/1.6/changelog.html](https://code.kx.com/pykx/1.6/changelog.html")

## 

### Additions

- Added `merge_asof` to the Pandas like API.
  - See [here](https://code.kx.com/pykx/user-guide/advanced/Pandas_API.html#tablemerge_asof") for details of supported keyword arguments and limitations.

- Added `set_index` to the Pandas like API.
  - See [here](https://code.kx.com/pykx/user-guide/advanced/Pandas_API.html##setting-indexes") for details of supported keyword arguments and limitations.

- Added a set of basic computation methods operating on tabular data to the Pandas like API. See [here](https://code.kx.com/pykx/user-guide/advanced/Pandas_API.html#computations") for available methods and examples.
- `pykx.util.debug_environment` added to help with import errors.
- q vector type promotion in licensed mode.
- Added `.pykx.toraw` to `pykx.q` to enable raw conversions (e.g. `kx.toq(x, raw=True)`)
- Added support for Python `3.11`.
  - Support for pyarrow in this python version is currently in Beta.

- Added the ability to use `kx.RawQConnection` as a Python based `q` server using `kx.RawQConnection(port=x, as_server=True)`.
  - More documentation around using this functionality can be found [here](https://code.kx.com/pykx/1.6/examples/server/server.html").

### Fixes and Improvements

- Improved error on Windows if `msvcr100.dll` is not found
- Updated q libraries to 2023.04.17
- Fixed an issue that caused `q` functions that shared a name with python key words to be inaccessible using the context interface.
  - It is now possible to access any `q` function that uses a python keyword as its name by adding an underscore to the name (e.g. `except` can now be accessed using `q.except_`).

- Fixed an issue with `.pykx.get` and `.pykx.getattr` not raising errors correctly.
- Fixed an issue where `deserializing` data would sometimes not error correctly.
- Users can now add new column(s) to an in-memory table using assignment when using the Pandas like API.

```
>>> import os >>> os.environ['PYKX_ENABLE_PANDAS_API'] = 'true' >>> import pykx as kx >>> import numpy as np >>> tab = kx.q('([]100?1f;100?1f)') >>> tab['x2'] = np.arange(0, 100) >>> tab pykx.Table(pykx.q(' x x1 x2 ------------------------- 0.1485357 0.1780839 0 0.4857547 0.3017723 1 0.7123602 0.785033 2 0.3839461 0.5347096 3 0.3407215 0.7111716 4 0.05400102 0.411597 5 .. '))
```
