GooseDB
GooseDB, a chaotic wrapper around DuckDB that randomly interrupts your database operations with goose attacks! Here are the key features:
- Maintains all DuckDB functionality while adding unpredictable goose behavior
- Configurable honk_probability to control how aggressive the goose is
- Various goose attacks ranging from judgmental stares to keyboard pecking
- Dramatic pauses during attacks to maximize chaos
- Full passthrough to DuckDB methods when the goose isn't attacking
Installation
You can install GooseDB via pip:
pip install goosedb
Usage
Here is a quick example of how to use GooseDB:
import goosedb
# Create a connection to GooseDB (which wraps DuckDB)
conn = goosedb.connect()
# Set the honk probability (0.2 means 20% chance of goose interference)
conn.honk_probability = 0.2
# Execute a query
conn.execute("SELECT * FROM my_table")
Configuring Goose Behavior
GooseDB lets you control the level of chaos introduced by the goose:
- honk_probability: A float between 0 and 1 that represents how often the goose will attack. A higher value means a more aggressive goose.
Example:
conn.honk_probability = 0.5 # 50% chance of goose interference
Goose Attacks
GooseDB has several types of "goose attacks":
- Judgmental Stares: The goose stops your query with an unsettling stare.
- Keyboard Pecking: The goose pecks at your virtual keyboard, potentially causing errors.
- Dramatic Pauses: The goose takes over and delays execution to add chaos.
Running Queries
GooseDB fully supports DuckDB's functionality when the goose isn't attacking:
# Example of a standard query
results = conn.execute("SELECT COUNT(*) FROM users").fetchall()
print(results)
Reducing the Image Size in README
To make the image smaller in your README, you can use HTML to specify the image width:
<img src="./assets/GooseDB.png" alt="GooseDB" width="300" />
This allows you to control the size directly in Markdown.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Metadata
Release files for goosedb 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| goosedb-0.1.0.tar.gz | 2.0 kB | Without provenance | Details for goosedb-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| goosedb-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for goosedb-0.1.0-py3-none-any.whl |
Total release size: 4.1 kB
Release files / goosedb-0.1.0.tar.gz
| Download URL | goosedb-0.1.0.tar.gz |
|---|---|
| Size | 2.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f2556e0b0d946bad39a4d7a3452ba2f1430d7c31f8ede7724855e91905847892
|
|
BLAKE2b-256 checksum How to use checksums |
7b09c82cc41750bd26fc5a4eaf7cd1017af9c4ba51af8bb1530559885f42db17
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.4.25
|
Release files / goosedb-0.1.0-py3-none-any.whl
| Download URL | goosedb-0.1.0-py3-none-any.whl |
|---|---|
| Size | 2.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2422a5ca21bb23d4c98ddcb56e6ffeb3ef73835de00aa5ae6217ea43a94a7e1c
|
|
BLAKE2b-256 checksum How to use checksums |
a4acb268c60348c851a7ed29544c85dbebc36bb952cf53c7d04fe4ee5c2e4ad1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.4.25
|
Security for goosedb 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.