| hidden | true |
|---|---|
| noIndex | true |
{% include ".gitbook/includes/im-inspired-by-cooking-an....md" %}
#get-geodata-api-vector-filter
![]() | ![]() | Screenshot 2025-01-17 at 8.18.39 PM.png | |
{% updates format="full" %} {% update date="2026-01-20" %}
{% endupdate %}
{% update date="2025-12-18" %}
Extracting Tables: The extract a table procedure now supports a file_upload mode for PDF documents, allowing you to send a file directly to an LLM for significantly improved performance.
Comment on block
Playground Responsiveness: We've optimized the Playground editor by improving data handling and limiting undo/redo history size, resulting in a more responsive experience.
{% endupdate %}
{% endupdates %}
{% updates format="full" %} {% update date="2025-12-18" %}
{% endupdate %} {% endupdates %}
{% include ".gitbook/includes/autonomous-workload-optimiz... (1).md" %}
{% include ".gitbook/includes/in-place-concept.md" %}
{% include ".gitbook/includes/the-standard-pod-scaling-ap....md" %}
- Keep infrastructure reliable by change
- Stay continuously optimized without service disruption.
- Maintain operational productivity without the overhead of time-consuming manual investigation and optimization.
| Cover image | |
|---|---|
| dw ds.jpg |
You can find more details about in-place changes on the official Kubernetes website:Kubernetes v1.33: In-Place Pod Resize Graduated to BetaKubernetes
{% content-ref url="./" %} . {% endcontent-ref %}
To start leveraging in-place workload right-sizing, your cluster must support in-place changes.🎯 Update Kubernetes to version 1.33 or later and enable the beta InPlacePodVerticalScaling feature gate for your control plane and for all nodes in your cluster. After that, PerfectScale will automatically perform in-place workload right-sizing without additional effort from your side.No additional configurations are needed, as PerfectScale automatically applies changes in place, delivering instant optimization.
| Supported workload types | DeploymentStatefulSetDaemonSet |
| Resizable resources | CPU
Memory
|
| Operating system | Windows pods do not support in-place |
| Kubernetes version | 1.33 or later |
| Container resize policy | restartPolicy: NotRequired (apply the resource change to the running container without restarting it). If restartPolicy: RestartContainer - in-place changes will not apply. |
| QoS Class | The Pod's original QoS class is determined at creation and cannot be changed by a resize. |
In-place right-sizing with PerfectScale AutomationIn-place pod resizing combined with PerfectScale Automation provides a complete solution for graceful and effective workload right-sizing. It eliminates manual effort associated with identifying inefficiencies and risks due to guestimated allocations, enabling continuous safe cost-reduction.If in-place resizing is not supported, PerfectScale’s safe automation algorithm will apply changes with a traditional scaling approach, ensuring your clusters remain reliable and stable.For automated pods that support in-place changes, when an over-provisioned or under-provisioned workload is detected, PerfectScale instantly applies data-driven recommendations without pod restart, ensuring safe K8s optimization.When PerfectScale applies in-place changes to right-size workloads, it unifies pod resources, guaranteeing consistency of the resources across the cluster.PodResizePending handlingYou may encounter a situation where it is impossible to apply new resources to a pod. In this case, the pod will get the PodResizePending status. This can happen due to:The requested resize is impossible on the current node (for example, requesting more resources than the node can provide).The requested resize is not currently possible, but may become possible later (for example, if another pod is removed and resources become available).To handle such cases, you can configure the PodResizePending strategy in the automation configuration CR by specifying one of the following values:rollingRestart (default)All pods will be restarted in order to update resources.deleteRecreatePendingPodOnly pods in the PodResizePending status will be deleted to trigger rescheduling. Conditions:The number of pods in the PodResizePending state is below the 20% threshold.At least 5 pods were successfully updated If any condition fails, a rollingRestart will be applied.CR example:The Automation Strategy can be configured at the cluster, namespace, or workload level.
Some more tadjkwcjkwekdsj
{% openapi-operation spec="UN" path="/geodata/api/vector/info" method="get" %} OpenAPI UN {% endopenapi-operation %}
{% openapi-operation spec="UN" path="/geodata/api/vector/filter" method="get" %} OpenAPI UN {% endopenapi-operation %}
{% openapi-operation spec="UN" path="/geodata/api/vector/simplify" method="get" %} OpenAPI UN {% endopenapi-operation %}
| Cover image | Cover image (dark) | ||
|---|---|---|---|
| conditional content | Product Docs | CleanShot 2024-05-24 at 13.42.54@2x.png | Screenshot 2025-06-19 at 14.25.31.png |
| ewdshjb shiuhwi | teapotnewA6.webp | Screenshot 2025-06-19 at 14.45.36.png | |
| link | web2.webp | file.excalidraw (2).svg | |
| image.png | Latex.svg |
| dfscbjwebhds | ||
| PKqqbuy22a6R | ||
| Cover image | Cover image (dark) | |
| CleanShot 2024-05-24 at 13.42.54@2x.png | Screenshot 2025-06-19 at 14.25.31.png | |
| link | teapotnewA6.webp | Screenshot 2025-06-19 at 14.45.36.png |
| link | web2.webp | file.excalidraw (2).svg |
| image.png | Latex.svg | |
![]() |
{% columns %} {% column %}
{% endcolumn %}
{% column %}
{% endcolumn %} {% endcolumns %}
{% hint style="info" %} my hiiiint {% endhint %}
{% tabs %} {% tab title="First Tab" %}
| Cover image | |
|---|---|
| morningtinypawws_det1+copy (1).jpeg | |
| CleanShot 2023-02-28 at 17.12.36@2x (1).png |
{% tab title="Second Tab" %}
newkdsnck,me dm,s
dchbjkens
dbsknjz
{% hint style="info" %} message her
e {% endhint %}
{% columns %} {% column %}
dhjbschjkbds
dsbajknxns
{% column %}
// Some code
{% endcolumn %} {% endcolumns %}
| Alpha | . | |
Beta ![]() | spider | |
| Omega | wolfff |
{% include ".gitbook/includes/duis-vel-lacus-sit-amet-dolor.md" %}
{% content-ref url="spider/" %} spider {% endcontent-ref %}
{% embed url="https://glif.app/@dham/glifs/cm8ekte9h000el40c4kpcqwep" %}
{% include ".gitbook/includes/cards-test.md" %}
#
Typing and referencing another page #my-heading
| edwe | text | |
| here | can't type | 1234 |
| cant | nope | |
![]() |
Storylane 1records the full, no-code replica (HTML and CSS) of each screen, allowing you to fully tailor it later for your audience. Best when you need to edit screens and create a sales demo environment.
(For example, capturing your product's dashboard to personalize the logo for different customers, remove/blur elements, add different personalization tokens, add media, or customize HTML...)
{% @storylane/embed subdomain="app" linkvalue="d7h8qoqynzgn" url="https://app.storylane.io/share/d7h8qoqynzgn" %}
- Open the tab you wish to capture.
- Launch Storylane's Chrome Extension.
- Click "Create New Demo" (or Add to Existing Demo, if you have a demo already created)
{% stepper %} {% step %} Prepare Ingredients
Gather flour, sugar, salt, yeast, milk, butter, and eggs.
{% endstep %}{% step %} Make Dough
Mix dry ingredients, add wet ingredients, and knead until smooth. {% endstep %}
{% step %} Prepare Ingredients:
Gather flour, sugar, salt, yeast, milk, butter, and eggs.
- Make Dough: Mix dry ingredients, add wet ingredients, and knead until smooth.
- Chill Dough: Refrigerate the dough for at least 30 minutes.
- Roll and Fold: Roll out dough, layer with butter, and fold several times.
- Shape Croissants: Cut into triangles and roll into crescent shapes.
- Proof Croissants: Let them rise until doubled in size.
- Preheat Oven: Set your oven to 375°F (190°C).
- Bake: Bake for 15-20 minutes, or until golden brown.
- Prepare Ingredients: Gather flour, sugar, salt, yeast, milk, butter, and eggs.
- Make Dough: Mix dry ingredients, add wet ingredients, and knead until smooth.
- Chill Dough: Refrigerate the dough for at least 30 minutes.
- Roll and Fold: Roll out dough, layer with butter, and fold several times.
- Shape Croissants: Cut into triangles and roll into crescent shapes.
- Proof Croissants: Let them rise until doubled in size.
- Preheat Oven: Set your oven to 375°F (190°C).
- Bake: Bake for 15-20 minutes, or until golden br
{% endstep %
{% endstep %}{% step %} Make Dough:
Making a change
- Chill Dough: Refrigerate the dough for at least 30 minutes.
- Roll and Fold: Roll out dough, layer with butter, and fold several times.
- Shape Croissants: Cut into triangles and roll into crescent shapes.
- Proof Croissants: Let them rise until doubled in size.
- Preheat Oven: Set your oven to 375°F (190°C).
- Bake: Bake for 15-20 minutes, or until golden brown.
- Prepare Ingredients: Gather flour, sugar, salt, yeast, milk, butter, and eggs.
- Make Dough: Mix dry ingredients, add wet ingredients, and knead until smooth.
- Chill Dough: Refrigerate the dough for at least 30 minutes.
- Roll and Fold: Roll out dough, layer with butter, and fold several times.
- Shape Croissants: Cut into triangles and roll into crescent shapes.
- Proof Croissants: Let them rise until doubled in size.
{% step %} Step 3 Adding smth here {% endstep %}
{% step %}
{% endstep %}
{% step %}
{% endstep %}
{% step %}
{% endstep %} {% endstepper %}
- Make Dough: Mix dry ingredients, add wet , and knead until smooth.
- Chill Dough: Refrigerate the dough for at least 30 minutes.
- Roll and Fold: Roll out dough, layer with butter, and fold several times.
- Shape Croissants: Cut into triangles and roll into crescent shapes.
- Proof Croissants: Let them rise until doubled in size.
- Preheat Oven: Set your oven to 375°F (190°C).
- Bake: Bake for 15-20 minutes, or until golden brown.
- Prepare Ingredients: Gather flour, sugar, salt, yeast, milk, butter, and eggs.
- Make Dough: Mix dry ingredients, add wet ingredients, and knead until smooth.
- Chill Dough: Refrigerate the dough for at least 30 minutes.
- Roll and Fold: Roll out dough, layer with butter, and fold several times.
- Shape Croissants: Cut into triangles and roll into crescent shapes.
- Proof Croissants: Let them rise until doubled in size.
- Preheat Oven: Set your oven to 375°F (190°C).
- Bake: Bake for 15-20 minutes, or until golden br
changes
{% include ".gitbook/includes/ingredients.md" %}
{% stepper %} {% step %}
{% endstep %}
{% step %}
{% endstep %}
{% step %}
{% endstep %}
{% step %}
{% endstep %} {% endstepper %}
From a repository, let's do a quick empty commit to test the signing process:
git commit --allow-empty -m "Test commit with SSH signing"
This immediately will trigger a Keeper dialog to authorize the key.
To verify that the signature was applied to the commit, run the following:
git log --show-signature
The response will display something like this:
commit 52319faf2e7c02a (HEAD -> main)
Good "git" signature for craig@keeperdemo.io with ECDSA key SHA256:xxxxxxx
Author: Craig Lurey <craig@keeperdemo.io>
Date: Fri Jan 17 20:18:19 2025 -0800
Test commit with SSH signing
Setup is complete.
Keeper's SSH Agent integrates seamlessly with Git for authentication and commit signing, ensuring private keys are securely stored in the Keeper Vault instead of being saved locally on the device. This approach enhances security by protecting sensitive keys from local exposure.
In this guide, we'll create and configure separate authentication and signing keys for use with GitHub, all managed securely by Keeper. Using distinct keys for authentication and signing helps maintain a clear separation of roles, further strengthening your security posture.
- Ensure that SSH Agent is active on the Keeper Desktop
- Terminal Configuration is performed
To authenticate with GitHub using Keeper, follow the below steps.
{% stepper %} {% step %}
- Create a record in Keeper such as an SSH Key type or PAM User type.
- Generate a strong password {% endstep %}
{% step %}
Generate SSH key on your terminal with the password generated by Keeper. For example:
ssh-keygen -t ecdsa -b 521 -C "craig@keeperdemo.io"
Enter passphrase (empty for no passphrase): *********
Enter same passphrase again: *********
This will create the public and private keys locally on your machine.
For example:
/Users/craig/.ssh/id_ecdsa
/Users/craig/.ssh/id_ecdsa.pub
{% endstep %}
{% step %}
Add the contents from the public and private keys generated in Step 2 into the Keeper record. Copy paste the Public Key and Private Key into the fields of Keeper.
{% endstep %}{% step %}
- From Github.com, go to Settings > SSH and GPG keys > New SSH Key > and select Key type of "Authentication Key".
- Assign a title, and paste the public key contents from
id_ecdsa.pubin Step 2. - Save the key. {% endstep %}
{% step %}
From the Keeper Desktop App, open Settings > Developer > SSH Agent > Edit and select your "Github Auth key" created in step3 from the list of available keys.
Click "Update" to save the settings.
{% endstep %}{% step %}
At this point, it's a good idea to delete the local key, since it is now stored and managed by Keeper. In this case, you can delete both the public and private key.
rm /Users/craig/.ssh/id_ecdsa
rm /Users/craig/.ssh/id_ecdsa.pub
{% endstep %}
{% step %}
From a terminal in some repo, perform an authorized request with Github:
git pull
{% endstep %}
{% step %} This immediately will trigger a Keeper dialog to authorize the Github Authentication key.
Authorize the use of Github Auth Key in Keeper
Clicking "Authorize" will use the key stored in Keeper to authenticate with Github.
Your setup is complete. {% endstep %} {% endstepper %}
{% tabs %} {% tab title="First Tab" %}
{% endtab %}{% tab title="Second Tab" %}
{% endtab %} {% endtabs %}
To sign GitHub commits with Keeper, we will create a separate key that is specifically used for the signing process. Follow the steps below.
{% stepper %} {% step %}
- Create a record in Keeper such as an SSH Key type or PAM User type.
- Generate a strong password {% endstep %}
{% step %}
Generate SSH key on your terminal with the password generated by Keeper. For example:
ssh-keygen -t ecdsa -b 521 -C "craig@keeperdemo.io"
Enter passphrase (empty for no passphrase): *********
Enter same passphrase again: *********
This will create the public and private keys locally on your machine.
For example:
/Users/craig/.ssh/id_ecdsa
/Users/craig/.ssh/id_ecdsa.pub
{% endstep %}
{% step %}
Add the contents from the public and private keys generated in Step 2 into the Keeper record. Copy paste the Public Key and Private Key into the fields of Keeper.
{% endstep %}{% step %}
- From Github, go to Settings > SSH and GPG keys > New SSH Key > and select Key type of "Signing Key".
- Assign a title, and paste the public key contents from Step 2.
- Save the key. {% endstep %}
{% step %}
From Keeper, open Settings > Developer > SSH Agent > Edit and select the Github signing key.
Click "Update" to save the settings. {% endstep %}
{% step %}
We will only delete the local private key, since it is now stored and managed by Keeper. The public key (xxx.pub) needs to stay, as it will be used for identifying which key to use for signing.
rm /Users/craig/.ssh/id_ecdsa
Let's also rename the public key to something more specific:
cd ~/.ssh
mv id_ecdsa.pub git_signing_key.pub
Place the username and the contents of the public key into a file called ~/.ssh/allowed_signers. For example:
craig@keeperdemo.io <contents of git_signing_key.pub>
AikidoMiddleware::class,
// Append AikidoMiddleware to other groups ('api' for example)
In this example, the file looks like this:
{% code overflow="wrap" %}
craig@keeperdemo.io ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAD2VeqOZ9bk2ABF6AZ63qJY2sDfz0kJJPfDW0zpres0/p1YGGJBYtyU4l3nIgwx0K2iEKFty429N2NNfIMBsqI+ngDq3/VGaexmZxymJnCzOl9+J1IQr6u05jZHLsk1FOALjOSm9jv4bF/DyK4oh5shKMlTHAeDWPfqMd3JwncSYBzKfA== craig@keeperdemo.io
{% endcode %} {% endstep %}
{% step %}
From the terminal, instruct Github to sign commits using this new key and allowed signers.
git config --global user.signingkey ~/.ssh/git_signing_key.pub
git config --global gpg.format ssh
git config --global commit.gpgsign true
git config --global gpg.ssh.allowedSignersFile ~/.ssh/allowed_signers
This basically has the effect of adding several lines to ~/.gitconfig and applies the changes globally. You can also configure individual repos instead of making these changes globally.
{% endstep %}
{% step %}
From a repository, let's do a quick empty commit to test the signing process:
git commit --allow-empty -m "Test commit with SSH signing"
This immediately will trigger a Keeper dialog to authorize the key.
To verify that the signature was applied to the commit, run the following:
git log --show-signature
The response will display something like this:
commit 52319faf2e7c02a (HEAD -> main)
Good "git" signature for craig@keeperdemo.io with ECDSA key SHA256:xxxxxxx
Author: Craig Lurey <craig@keeperdemo.io>
Date: Fri Jan 17 20:18:19 2025 -0800
Test commit with SSH signing
AikidoMiddleware::class,
// Append AikidoMiddleware to other groups ('api' for example)
Setup is complete. {% endstep %} {% endstepper %}
| dfscbjwebhds | NaN | false | |
| PKqqbuy22a6R | 23456 | true | Searctexth... |
| link | false | Screenshot 2025-06-19 at 14.45.36.png | |
| false | Cover image (dark) | ||
| false | |||
| link | text here | false | file.excalidraw (2).svg |
| can'r reprodcue | false | Latex.svg | |
![]() | :layer-plus: GitBook | false |
{% tabs %} {% tab title="First Tab" %}
{% endtab %}{% tab title="Second Tab" %}
{% endtab %} {% endtabs %}
Footnotes
-
annotate ↩



.jpeg)

.png)







