Skip to content

Commit 42f707b

Browse files
authored
Merge pull request #40 from KxSystems/release301
Addition of 3.0.1 changes to github
2 parents bf05b31 + c0afcab commit 42f707b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+588
-146
lines changed

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,14 +93,15 @@ KX only officially supports versions of PyKX built by KX, i.e. versions of PyKX
9393

9494
PyKX depends on the following third-party Python packages:
9595

96-
- `pandas>=1.2, < 2.0; python_version=='3.8'`
97-
- `pandas>=1.2, < 2.2.0; python_version>'3.8'`
96+
- `pandas>=1.2, <2.0; python_version=='3.8'`
97+
- `pandas>=1.2, <=2.2.3; python_version>'3.8'`
9898
- `numpy~=1.22, <2.0; python_version<'3.11'`
9999
- `numpy~=1.23, <2.0; python_version=='3.11'`
100100
- `numpy~=1.26, <2.0; python_version=='3.12'`
101101
- `pytz>=2022.1`
102102
- `toml~=0.10.2`
103103
- `dill>=0.2.0`
104+
- `requests>=2.25.0`
104105

105106
They are installed automatically by `pip` when PyKX is installed.
106107

@@ -206,4 +207,4 @@ If you have any issues or questions you can post them to [community.kx.com](http
206207
## Customer Support
207208

208209
* Inquires or feedback: [`[email protected]`](mailto:[email protected])
209-
* Support for Licensed Subscribers: [support.kx.com](https://support.kx.com/support/home)
210+
* Support for Licensed Subscribers: [support.kx.com](https://client.support.kx.com/)

conda-recipe/meta.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ requirements:
2828
run:
2929
- python
3030
- numpy>=1.22,<2.0
31-
- pandas>=1.2, <2.2.0 # [py>38]
31+
- pandas>=1.2, <=2.2.3 # [py>38]
3232
- pandas<2.0 # [py==38]
3333
- pytz>=2022.1
3434
- toml>=0.10.2

docs/examples/charting.ipynb

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@
183183
"id": "2e76c5d1-7dd3-482c-90cb-c263d31ad808",
184184
"metadata": {},
185185
"source": [
186-
"To make the column values compatible with most Matplotlib charts, first convert them to NumPy objects using the `.np()` function."
186+
"To make the column values compatible with most [Matplotlib charts](https://matplotlib.org/), first convert them to NumPy objects using the `.np()` function."
187187
]
188188
},
189189
{
@@ -215,7 +215,7 @@
215215
"source": [
216216
"## Plotly\n",
217217
"\n",
218-
"Plotly allows you to pass `vector` objects as the `color` argument. Set this parameter using the `sym` column to obtain the scatter chart below.\n"
218+
"[Plotly](https://plotly.com/python/) allows you to pass `vector` objects as the `color` argument. Set this parameter using the `sym` column to obtain the scatter chart below.\n"
219219
]
220220
},
221221
{
@@ -290,7 +290,7 @@
290290
"source": [
291291
"## Seaborn\n",
292292
"\n",
293-
"Seaborn allows you to set `data` as a PyKX table name without conversions and then call the `x` and `y` parameters using only the column names of that table.\n",
293+
"[Seaborn](https://seaborn.pydata.org/) allows you to set `data` as a PyKX table name without conversions and then call the `x` and `y` parameters using only the column names of that table.\n",
294294
"\n",
295295
"The bar chart below demonstrates this by setting the data as the table object and using the column names for all parameters, without any conversions."
296296
]
@@ -314,6 +314,7 @@
314314
],
315315
"source": [
316316
"import seaborn as sns\n",
317+
"import matplotlib.pyplot as plt\n",
317318
"\n",
318319
"sns.catplot(\n",
319320
" kind='bar',\n",

docs/examples/interface-overview.ipynb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
"\n",
99
"_The purpose of this notebook is to introduce you to PyKX capabilities and functionality._\n",
1010
"\n",
11-
"For the best experience, visit [what is PyKX](https://code.kx.com/pykx/2.5/getting-started/what_is_pykx.html) and the [quickstart guide](https://code.kx.com/pykx/2.5/getting-started/quickstart.html) first.\n",
11+
"For the best experience, visit [what is PyKX](../getting-started/what_is_pykx.html) and the [quickstart guide](../getting-started/quickstart.html) first.\n",
1212
"\n",
13-
"To follow along, we recommend to <a href=\"./PyKX%20Introduction%20Notebook.ipynb\" download> download the notebook. </a>\n",
13+
"To follow along, we recommend to <a href=\"./interface-overview.ipynb\" download> download the notebook. </a>\n",
1414
"\n",
1515
"Now let's go through the following sections:\n",
1616
"\n",

docs/examples/jupyter-integration.ipynb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -446,7 +446,7 @@
446446
"id": "dec08871-a771-4848-8283-f88206f54785",
447447
"metadata": {},
448448
"source": [
449-
"In this state, you can execute Python code as well, but those cells must include `%%python`."
449+
"In this state, you can execute Python code as well, but those cells must include `%%py`."
450450
]
451451
},
452452
{
@@ -456,7 +456,7 @@
456456
"metadata": {},
457457
"outputs": [],
458458
"source": [
459-
"%%python\n",
459+
"%%py\n",
460460
"for fruit in ['apple', 'orange', 'banana']:\n",
461461
" print(fruit)"
462462
]
@@ -476,7 +476,7 @@
476476
"metadata": {},
477477
"outputs": [],
478478
"source": [
479-
"%%python\n",
479+
"%%py\n",
480480
"kx.util.jupyter_qfirst_disable()"
481481
]
482482
},

docs/examples/streaming/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ tags: PyKX, q, streaming, basic
1010

1111
_This page outlines the steps taken and functionality shown in demonstrating your first PyKX streaming application_
1212

13-
To run this example please download the [zip](./real-time-pykx.zip) file containing the notebook or visit our github repository [here](https://github.com/pykx/docs/examples/streaming) to view the code directly.
13+
To run this example please download the [zip](./real-time-pykx.zip) file containing the notebook or visit our github repository [here](https://github.com/KxSystems/pykx/tree/main/docs/examples/streaming) to view the code directly.
1414

1515
In this example we will generate a real-time and historical analysis system which completes the following actions:
1616

docs/getting-started/installing.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -254,14 +254,15 @@ This command should display the installed version of PyKX.
254254

255255
PyKX depends on the following third-party Python packages:
256256

257-
- `numpy~=1.22, <2.0; python_version<'3.11'`
258-
- `numpy~=1.23, <2.0; python_version=='3.11'`
259-
- `numpy~=1.26, <2.0; python_version=='3.12'`
260-
- `pandas>=1.2, < 2.0; python_version=='3.8'`
261-
- `pandas>=1.2, < 2.2.0; python_version>'3.8'`
262-
- `pytz>=2022.1`
263-
- `toml~=0.10.2`
264-
- `dill>=0.2.0`
257+
- `pandas>=1.2, <2.0; python_version=='3.8'`
258+
- `pandas>=1.2, <=2.2.3; python_version>'3.8'`
259+
- `numpy~=1.22, <2.0; python_version<'3.11'`
260+
- `numpy~=1.23, <2.0; python_version=='3.11'`
261+
- `numpy~=1.26, <2.0; python_version=='3.12'`
262+
- `pytz>=2022.1`
263+
- `toml~=0.10.2`
264+
- `dill>=0.2.0`
265+
- `requests>=2.25.0`
265266

266267
**Note**: All are installed automatically by `#!bash pip` when you install PyKX.
267268

docs/getting-started/quickstart.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ You can generate PyKX objects in three ways. Click on the tabs below to follow t
122122

123123
## 3. Interact with PyKX objects
124124

125-
You can interact with PyKX objects in a variety of ways, for example, through [indexing using Pythonic syntax](../user-guide/fundamentals/indexing.md), passing [PyKX objects to q/NumPy](../user-guide/fundamentals/creating.md#converting-pykx-objects-to-pythonic-types) functions, [querying via SQL/qSQL](https://code.kx.com/pykx/user-guide/fundamentals/querying.html) syntax or by [using the q functionality](https://code.kx.com/pykx/user-guide/advanced/context_interface.html) via the context interface. Each way is described in more depth under the the User guide > Fundamentals section. For now, we recommend a few examples:
125+
You can interact with PyKX objects in a variety of ways, for example, through [indexing using Pythonic syntax](../user-guide/fundamentals/indexing.md), passing [PyKX objects to q/NumPy](../user-guide/fundamentals/creating.md#converting-pykx-objects-to-pythonic-types) functions, [querying via Python/SQL/qSQL](..//user-guide/fundamentals/query/index.md) syntax or by [using the q functionality](../user-guide/advanced/context_interface.md) via the context interface. Each way is described in more depth under the the User guide > Fundamentals section. For now, we recommend a few examples:
126126

127127
* Create a PyKX list and interact with it using indexing and slices:
128128

docs/help/issues.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,3 +120,44 @@ q)f[]
120120
q)f[::] /equivalent
121121
7
122122
```
123+
124+
## Pandas
125+
126+
### Known issues
127+
#### Changes in `DataFrame.equals` behavior from Pandas 2.2.0
128+
129+
In Pandas 2.2.0, a difference was introduced in how `DataFrame.equals` handles DataFrames with different `_mgr` types.
130+
131+
**Example:**
132+
```python
133+
>>> import pandas as pd
134+
>>> import pykx as kx
135+
136+
>>> df1 = pd.DataFrame({'cl': ['foo']})
137+
>>> df2 = kx.q('([] cl:enlist `foo)').pd()
138+
139+
>>> df2.equals(df1)
140+
True
141+
142+
>>> df1.equals(df2) # Prior to Pandas 2.2.0, this would also evaluate to True
143+
False
144+
```
145+
146+
**Cause:**
147+
Pandas now checks the type of the `_mgr` (dataframes manager) property. PyKX uses a custom `_mgr` implementation for performance optimization.
148+
149+
```python
150+
>>> type(df1._mgr)
151+
<class 'pandas.core.internals.managers.BlockManager'>
152+
153+
>>> type(df2._mgr)
154+
<class 'pykx.util.BlockManagerUnconsolidated'>
155+
```
156+
157+
**Workaround:**
158+
Comparing the full contents of DataFrames irrespective of `_mgr` types works regardless of order of df1 and df2 in the comparison. To do so, use one of the following approaches:
159+
```python
160+
>>> assert (df2 == df1).all().all() # Element-wise comparison
161+
>>> pd.testing.assert_frame_equal(df2, df1) # Pandas' built-in test
162+
>>> assert df1.compare(df2).empty # Check if there are no differences
163+
```

docs/help/support.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,4 @@ If you have any issues or questions you can post them to the following locations
1919
## Customer Support
2020

2121
* Inquires or feedback: [`[email protected]`](mailto:[email protected])
22-
* Support for Licensed Subscribers: [support.kx.com](https://support.kx.com/support/home)
22+
* Support for Licensed Subscribers: [support.kx.com](https://client.support.kx.com/)

docs/help/troubleshooting.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,10 @@ It usually indicates that your license was not correctly written to disk or a li
5454
Please consider reinstalling your license using pykx.util.install_license
5555

5656
On disk license:
57-
b'Atc/wy/gMjZgIdn1KlT3JVWfVmPk55dtb0YJVes5V4ed9Zxt9UVr8G/A1Q3aWiQEkfjGbwvlJU3GXpUergObvzxGN1iyYG\nZasG5s8vevfAI2ttndt//Y2th\nrryoQRm9Dy+DIIcmSufwomL+\nPMJkZacYc9DM6ipnQsL0KvLwLXLrQC1fBLV2pZHCdYC/nX/KM6uslgip4EoTxZTcx1pQPyTx56QKD4K4JBNimO929w/0+v4Hy2x+DIS3n89vpGmtVvjjFRQtsF6Sjnd+6RnFGk13hRL/DlqHTv2XbZgVv++YOCIc7G55KL6PVJY\npB\n66lq9OiZCEdq2GFJLCn2T\nNWGJPT2s1YDAKsAPI5W3PqJkC2UeV17gPG4gxlCSHr0kfacINbEJ0kSTm/UsuEBZ5B/jvR/jU7rFErcd9PECeQA1kXB19fa4hgvbd+SxWTPxMUKbiHThHk6X0Bi3T7WAQ+sZWsEWwkMncd+mOGS\n3D+bRav2nfOpKckj8rCdvYum3U8PDv6IHP=S+\nLaCnJM0yqNjW9xGyog5ml\nbX2k3mBRyBjbJH/1OWTcIg7uDYxxoMtDOCJjeBdSqI=aK+5FVTVarfowvudv7QsMGeohGaJMyczNWVPPjsbyvsxbAwdXvJUuP0jcFCFVeF\n'
57+
b'Atc/wy/gMjZgIdn1KlT3JVWfVmPk55dtb0YJVes5V4ed9Zxt9UVr8G/A1Q3aWiQEkfjGbwvlJU3GXpUergObvzxGN1iyYGZasG5s8vevfAI2ttndt//Y2thrryoQRm9Dy+DIIcmSufwomL+PMJkZacYc9DM6ipnQsL0KvLwLXLrQC1fBLV2pZHCdYC/nX/KM6uslgip4EoTxZTcx1pQPyTx56QKD4K4JBNimO929w/0+v4Hy2x+DIS3n89vpGmtVvjjFRQtsF6Sjnd+6RnFGk13hRL/DlqHTv2XbZgVv++YOCIc7G55KL6PVJYpB66lq9OiZCEdq2GFJLCn2TNWGJPT2s1YDAKsAPI5W3PqJkC2UeV17gPG4gxlCSHr0kfacINbEJ0kSTm/UsuEBZ5B/jvR/jU7rFErcd9PECeQA1kXB19fa4hgvbd+SxWTPxMUKbiHThHk6X0Bi3T7WAQ+sZWsEWwkMncd+mOGS3D+bRav2nfOpKckj8rCdvYum3U8PDv6IHP=S+LaCnJM0yqNjW9xGyog5mlbX2k3mBRyBjbJH/1OWTcIg7uDYxxoMtDOCJjeBdSqI=aK+5FVTVarfowvudv7QsMGeohGaJMyczNWVPPjsbyvsxbAwdXvJUuP0jcFCFVeF'
5858

5959
Supplied string content:
60-
b'8n\nD+HkcJ93xW4oOEtH\nIZxeWkA1glv5wJ5wE2Fsmbc4lg2ntT9JpsclE1hFeG/Ox/jM4=6GjXD2VNpiCAJ80DNVcXuDB+IPEnP22DMGvBIolJt2pdy9kooGZNQpr6svIkRWX/0m/SbydbQOQUVvfNTxsDjZvvsCiGkdQtygs3sDEJbxsT+KfjqJ7Sd6RQ/47HJHG4JyIWdhmvEBVGSLBa5mdAaCLWdCrga3hHZbW3F4e/l3K4nOQvU91WEiMd6PT061r66AOYmjGACCXqmQ9kSsJfMTXPRi9M2i93Oyv895kFVKdZCLCdKdaow790RcjwnKjFFOERGcge=lZdRtp2BL\nA+JbixvTIKTObmfqr7uPYsGQLfXSFnQCq7jbt3yxv1ZPjvjYLPTx7YKIvgo+ITG6vyY\ne+cfwaW1g0tlvFTcVSVb/sxUvvLCLiWMdxGjt5JUxV3GaSm9ysHVk5MrTDpp/5qqXes1\n/BOXsD\n2DmS/QSZr/Mt+Vc2baKuxPw1w5YnGVuY6vHxHffABzkn+WPcguabr86JcmIAcC0zc2TLkbufBPJewYka9PIt1Ng2\n83NKe13huPU\nohnryYVIMPyjrTWpDid+yC5kSGVeP0/5+r\nJvLmFZUB/n0RUjgMZU5V++GPU1QnCBa+\n"
60+
b'8nD+HkcJ93xW4oOEtHIZxeWkA1glv5wJ5wE2Fsmbc4lg2ntT9JpsclE1hFeG/Ox/jM4=6GjXD2VNpiCAJ80DNVcXuDB+IPEnP22DMGvBIolJt2pdy9kooGZNQpr6svIkRWX/0m/SbydbQOQUVvfNTxsDjZvvsCiGkdQtygs3sDEJbxsT+KfjqJ7Sd6RQ/47HJHG4JyIWdhmvEBVGSLBa5mdAaCLWdCrga3hHZbW3F4e/l3K4nOQvU91WEiMd6PT061r66AOYmjGACCXqmQ9kSsJfMTXPRi9M2i93Oyv895kFVKdZCLCdKdaow790RcjwnKjFFOERGcge=lZdRtp2BLA+JbixvTIKTObmfqr7uPYsGQLfXSFnQCq7jbt3yxv1ZPjvjYLPTx7YKIvgo+ITG6vyYe+cfwaW1g0tlvFTcVSVb/sxUvvLCLiWMdxGjt5JUxV3GaSm9ysHVk5MrTDpp/5qqXes1/BOXsD2DmS/QSZr/Mt+Vc2baKuxPw1w5YnGVuY6vHxHffABzkn+WPcguabr86JcmIAcC0zc2TLkbufBPJewYka9PIt1Ng283NKe13huPUohnryYVIMPyjrTWpDid+yC5kSGVeP0/5+rJvLmFZUB/n0RUjgMZU5V++GPU1QnCBa+'
6161
False
6262
```
6363

@@ -67,7 +67,7 @@ It usually indicates that your license was not correctly written to disk or a li
6767

6868
```python
6969
>>> import pykx as kx
70-
>>> license_string = 'Atc/wy/gMjZgIdn1KlT3JVWfVmPk55dtb0YJVes5V4ed9Zxt9UVr8G/A1Q3aWiQEkfjGbwvlJU3GXpUergObvzxGN1iyYG\nZasG5s8vevfAI2ttndt//Y2th\nrryoQRm9Dy+DIIcmSufwomL+\nPMJkZacYc9DM6ipnQsL0KvLwLXLrQC1fBLV2pZHCdYC/nX/KM6uslgip4EoTxZTcx1pQPyTx56QKD4K4JBNimO929w/0+v4Hy2x+DIS3n89vpGmtVvjjFRQtsF6Sjnd+6RnFGk13hRL/DlqHTv2XbZgVv++YOCIc7G55KL6PVJY\npB\n66lq9OiZCEdq2GFJLCn2T\nNWGJPT2s1YDAKsAPI5W3PqJkC2UeV17gPG4gxlCSHr0kfacINbEJ0kSTm/UsuEBZ5B/jvR/jU7rFErcd9PECeQA1kXB19fa4hgvbd+SxWTPxMUKbiHThHk6X0Bi3T7WAQ+sZWsEWwkMncd+mOGS\n3D+bRav2nfOpKckj8rCdvYum3U8PDv6IHP=S+\nLaCnJM0yqNjW9xGyog5ml\nbX2k3mBRyBjbJH/1OWTcIg7uDYxxoMtDOCJjeBdSqI=aK+5FVTVarfowvudv7QsMGeohGaJMyczNWVPPjsbyvsxbAwdXvJUuP0jcFCFVeF\n'
70+
>>> license_string = 'Atc/wy/gMjZgIdn1KlT3JVWfVmPk55dtb0YJVes5V4ed9Zxt9UVr8G/A1Q3aWiQEkfjGbwvlJU3GXpUergObvzxGN1iyYGZasG5s8vevfAI2ttndt//Y2thrryoQRm9Dy+DIIcmSufwomL+PMJkZacYc9DM6ipnQsL0KvLwLXLrQC1fBLV2pZHCdYC/nX/KM6uslgip4EoTxZTcx1pQPyTx56QKD4K4JBNimO929w/0+v4Hy2x+DIS3n89vpGmtVvjjFRQtsF6Sjnd+6RnFGk13hRL/DlqHTv2XbZgVv++YOCIc7G55KL6PVJYpB66lq9OiZCEdq2GFJLCn2TNWGJPT2s1YDAKsAPI5W3PqJkC2UeV17gPG4gxlCSHr0kfacINbEJ0kSTm/UsuEBZ5B/jvR/jU7rFErcd9PECeQA1kXB19fa4hgvbd+SxWTPxMUKbiHThHk6X0Bi3T7WAQ+sZWsEWwkMncd+mOGS3D+bRav2nfOpKckj8rCdvYum3U8PDv6IHP=S+LaCnJM0yqNjW9xGyog5mlbX2k3mBRyBjbJH/1OWTcIg7uDYxxoMtDOCJjeBdSqI=aK+5FVTVarfowvudv7QsMGeohGaJMyczNWVPPjsbyvsxbAwdXvJUuP0jcFCFVeF'
7171
>>> kx.license.check(license_string, format = 'STRING')
7272
True
7373
```
@@ -76,16 +76,16 @@ It usually indicates that your license was not correctly written to disk or a li
7676

7777
```python
7878
>>> import pykx as kx
79-
>>> license_string = '8n\nD+HkcJ93xW4oOEtH\nIZxeWkA1glv5wJ5wE2Fsmbc4lg2ntT9JpsclE1hFeG/Ox/jM4=6GjXD2VNpiCAJ80DNVcXuDB+IPEnP22DMGvBIolJt2pdy9kooGZNQpr6svIkRWX/0m/SbydbQOQUVvfNTxsDjZvvsCiGkdQtygs3sDEJbxsT+KfjqJ7Sd6RQ/47HJHG4JyIWdhmvEBVGSLBa5mdAaCLWdCrga3hHZbW3F4e/l3K4nOQvU91WEiMd6PT061r66AOYmjGACCXqmQ9kSsJfMTXPRi9M2i93Oyv895kFVKdZCLCdKdaow790RcjwnKjFFOERGcge=lZdRtp2BL\nA+JbixvTIKTObmfqr7uPYsGQLfXSFnQCq7jbt3yxv1ZPjvjYLPTx7YKIvgo+ITG6vyY\ne+cfwaW1g0tlvFTcVSVb/sxUvvLCLiWMdxGjt5JUxV3GaSm9ysHVk5MrTDpp/5qqXes1\n/BOXsD\n2DmS/QSZr/Mt+Vc2baKuxPw1w5YnGVuY6vHxHffABzkn+WPcguabr86JcmIAcC0zc2TLkbufBPJewYka9PIt1Ng2\n83NKe13huPU\nohnryYVIMPyjrTWpDid+yC5kSGVeP0/5+r\nJvLmFZUB/n0RUjgMZU5V++GPU1QnCBa+\n'
79+
>>> license_string = '8nD+HkcJ93xW4oOEtHIZxeWkA1glv5wJ5wE2Fsmbc4lg2ntT9JpsclE1hFeG/Ox/jM4=6GjXD2VNpiCAJ80DNVcXuDB+IPEnP22DMGvBIolJt2pdy9kooGZNQpr6svIkRWX/0m/SbydbQOQUVvfNTxsDjZvvsCiGkdQtygs3sDEJbxsT+KfjqJ7Sd6RQ/47HJHG4JyIWdhmvEBVGSLBa5mdAaCLWdCrga3hHZbW3F4e/l3K4nOQvU91WEiMd6PT061r66AOYmjGACCXqmQ9kSsJfMTXPRi9M2i93Oyv895kFVKdZCLCdKdaow790RcjwnKjFFOERGcge=lZdRtp2BLA+JbixvTIKTObmfqr7uPYsGQLfXSFnQCq7jbt3yxv1ZPjvjYLPTx7YKIvgo+ITG6vyYe+cfwaW1g0tlvFTcVSVb/sxUvvLCLiWMdxGjt5JUxV3GaSm9ysHVk5MrTDpp/5qqXes1/BOXsD2DmS/QSZr/Mt+Vc2baKuxPw1w5YnGVuY6vHxHffABzkn+WPcguabr86JcmIAcC0zc2TLkbufBPJewYka9PIt1Ng283NKe13huPUohnryYVIMPyjrTWpDid+yC5kSGVeP0/5+rJvLmFZUB/n0RUjgMZU5V++GPU1QnCBa+'
8080
>>> kx.license.check(license_string, format = 'STRING')
8181
Supplied license information does not match.
8282
Please consider reinstalling your license using pykx.util.install_license
8383

8484
On disk license:
85-
b'Atc/wy/gMjZgIdn1KlT3JVWfVmPk55dtb0YJVes5V4ed9Zxt9UVr8G/A1Q3aWiQEkfjGbwvlJU3GXpUergObvzxGN1iyYG\nZasG5s8vevfAI2ttndt//Y2th\nrryoQRm9Dy+DIIcmSufwomL+\nPMJkZacYc9DM6ipnQsL0KvLwLXLrQC1fBLV2pZHCdYC/nX/KM6uslgip4EoTxZTcx1pQPyTx56QKD4K4JBNimO929w/0+v4Hy2x+DIS3n89vpGmtVvjjFRQtsF6Sjnd+6RnFGk13hRL/DlqHTv2XbZgVv++YOCIc7G55KL6PVJY\npB\n66lq9OiZCEdq2GFJLCn2T\nNWGJPT2s1YDAKsAPI5W3PqJkC2UeV17gPG4gxlCSHr0kfacINbEJ0kSTm/UsuEBZ5B/jvR/jU7rFErcd9PECeQA1kXB19fa4hgvbd+SxWTPxMUKbiHThHk6X0Bi3T7WAQ+sZWsEWwkMncd+mOGS\n3D+bRav2nfOpKckj8rCdvYum3U8PDv6IHP=S+\nLaCnJM0yqNjW9xGyog5ml\nbX2k3mBRyBjbJH/1OWTcIg7uDYxxoMtDOCJjeBdSqI=aK+5FVTVarfowvudv7QsMGeohGaJMyczNWVPPjsbyvsxbAwdXvJUuP0jcFCFVeF\n'
85+
b'Atc/wy/gMjZgIdn1KlT3JVWfVmPk55dtb0YJVes5V4ed9Zxt9UVr8G/A1Q3aWiQEkfjGbwvlJU3GXpUergObvzxGN1iyYGZasG5s8vevfAI2ttndt//Y2thrryoQRm9Dy+DIIcmSufwomL+PMJkZacYc9DM6ipnQsL0KvLwLXLrQC1fBLV2pZHCdYC/nX/KM6uslgip4EoTxZTcx1pQPyTx56QKD4K4JBNimO929w/0+v4Hy2x+DIS3n89vpGmtVvjjFRQtsF6Sjnd+6RnFGk13hRL/DlqHTv2XbZgVv++YOCIc7G55KL6PVJYpB66lq9OiZCEdq2GFJLCn2TNWGJPT2s1YDAKsAPI5W3PqJkC2UeV17gPG4gxlCSHr0kfacINbEJ0kSTm/UsuEBZ5B/jvR/jU7rFErcd9PECeQA1kXB19fa4hgvbd+SxWTPxMUKbiHThHk6X0Bi3T7WAQ+sZWsEWwkMncd+mOGS3D+bRav2nfOpKckj8rCdvYum3U8PDv6IHP=S+LaCnJM0yqNjW9xGyog5mlbX2k3mBRyBjbJH/1OWTcIg7uDYxxoMtDOCJjeBdSqI=aK+5FVTVarfowvudv7QsMGeohGaJMyczNWVPPjsbyvsxbAwdXvJUuP0jcFCFVeF'
8686

8787
Supplied string content:
88-
b'8n\nD+HkcJ93xW4oOEtH\nIZxeWkA1glv5wJ5wE2Fsmbc4lg2ntT9JpsclE1hFeG/Ox/jM4=6GjXD2VNpiCAJ80DNVcXuDB+IPEnP22DMGvBIolJt2pdy9kooGZNQpr6svIkRWX/0m/SbydbQOQUVvfNTxsDjZvvsCiGkdQtygs3sDEJbxsT+KfjqJ7Sd6RQ/47HJHG4JyIWdhmvEBVGSLBa5mdAaCLWdCrga3hHZbW3F4e/l3K4nOQvU91WEiMd6PT061r66AOYmjGACCXqmQ9kSsJfMTXPRi9M2i93Oyv895kFVKdZCLCdKdaow790RcjwnKjFFOERGcge=lZdRtp2BL\nA+JbixvTIKTObmfqr7uPYsGQLfXSFnQCq7jbt3yxv1ZPjvjYLPTx7YKIvgo+ITG6vyY\ne+cfwaW1g0tlvFTcVSVb/sxUvvLCLiWMdxGjt5JUxV3GaSm9ysHVk5MrTDpp/5qqXes1\n/BOXsD\n2DmS/QSZr/Mt+Vc2baKuxPw1w5YnGVuY6vHxHffABzkn+WPcguabr86JcmIAcC0zc2TLkbufBPJewYka9PIt1Ng2\n83NKe13huPU\nohnryYVIMPyjrTWpDid+yC5kSGVeP0/5+r\nJvLmFZUB/n0RUjgMZU5V++GPU1QnCBa+\n'
88+
b'8nD+HkcJ93xW4oOEtHIZxeWkA1glv5wJ5wE2Fsmbc4lg2ntT9JpsclE1hFeG/Ox/jM4=6GjXD2VNpiCAJ80DNVcXuDB+IPEnP22DMGvBIolJt2pdy9kooGZNQpr6svIkRWX/0m/SbydbQOQUVvfNTxsDjZvvsCiGkdQtygs3sDEJbxsT+KfjqJ7Sd6RQ/47HJHG4JyIWdhmvEBVGSLBa5mdAaCLWdCrga3hHZbW3F4e/l3K4nOQvU91WEiMd6PT061r66AOYmjGACCXqmQ9kSsJfMTXPRi9M2i93Oyv895kFVKdZCLCdKdaow790RcjwnKjFFOERGcge=lZdRtp2BLA+JbixvTIKTObmfqr7uPYsGQLfXSFnQCq7jbt3yxv1ZPjvjYLPTx7YKIvgo+ITG6vyYe+cfwaW1g0tlvFTcVSVb/sxUvvLCLiWMdxGjt5JUxV3GaSm9ysHVk5MrTDpp/5qqXes1/BOXsD2DmS/QSZr/Mt+Vc2baKuxPw1w5YnGVuY6vHxHffABzkn+WPcguabr86JcmIAcC0zc2TLkbufBPJewYka9PIt1Ng283NKe13huPUohnryYVIMPyjrTWpDid+yC5kSGVeP0/5+rJvLmFZUB/n0RUjgMZU5V++GPU1QnCBa+'
8989
False
9090
```
9191

docs/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ To begin your journey with PyKX, follow the sections below:
1414

1515
!!! home-page "[Get Started](./getting-started/installing.md)"
1616

17-
This section is for new users. Includes everything you need to begin your journey with PyKX: [installation instructions](../docs/getting-started/installing.md) and a [quickstart guide](../docs/getting-started/quickstart.md).
17+
This section is for new users. Includes everything you need to begin your journey with PyKX: [installation instructions](./getting-started/installing.md) and a [quickstart guide](./getting-started/quickstart.md).
1818

1919
!!! home-page "[Learn](./getting-started/what_is_pykx.md)"
2020

@@ -38,4 +38,4 @@ To begin your journey with PyKX, follow the sections below:
3838

3939
!!! home-page "[Help and Support](./help/troubleshooting.md)"
4040

41-
Get assistance with any questions or issues you might have. This section includes [troubleshooting](../docs/help/troubleshooting.md) guides, [FAQs](../docs/help/faq.md), and [support](../docs/help/support.md) contact information.
41+
Get assistance with any questions or issues you might have. This section includes [troubleshooting](./help/troubleshooting.md) guides, [FAQs](./help/faq.md), and [support](./help/support.md) contact information.

docs/learn/objects.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: PyKX Objects and Attributes
33
description: Objects explained for PyKX
4-
date: Septmeber 2024
4+
date: September 2024
55
author: KX Systems, Inc.,
66
tags: PyKX, object
77
---

0 commit comments

Comments
 (0)