https://github.com/owenthewizard/pg_idna
IDNA Helpers for PostgreSQL
https://github.com/owenthewizard/pg_idna
idn idna idna-converter internationalization postgres postgres-extension postgresql postgresql-extension
Last synced: 10 months ago
JSON representation
IDNA Helpers for PostgreSQL
- Host: GitHub
- URL: https://github.com/owenthewizard/pg_idna
- Owner: owenthewizard
- License: apache-2.0
- Created: 2024-11-14T05:19:58.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-12-06T01:14:14.000Z (over 1 year ago)
- Last Synced: 2025-08-17T10:24:10.400Z (11 months ago)
- Topics: idn, idna, idna-converter, internationalization, postgres, postgres-extension, postgresql, postgresql-extension
- Language: Rust
- Homepage: https://crates.io/crates/pg_idna
- Size: 31.3 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE-APACHE.md
Awesome Lists containing this project
README
# 🌐 pg_idna
[IDNA](https://crates.io/crates/idna) helpers for PostgreSQL.
[](https://www.rust-lang.org)
[](https://github.com/owenthewizard/pg_idna/actions)
[](https://opensource.org/licenses/MIT)
[](https://opensource.org/licenses/Apache-2-0)
[](https://crates.io/crates/pg_idna)
[](https://github.com/owenthewizard/pg_idna/graphs/contributors)
[](https://github.com/owenthewizard/pg_idna/network/members)
[](https://github.com/owenthewizard/pg_idna/stargazers)
[](https://github.com/owenthewizard/pg_idna/issues)
## ▶️ Quick Start
### 🏗️ Build & Run
```sh
git clone --depth=1 https://github.com/owenthewizard/pg_idna.git && cd pg_idna
cargo pgrx run --release
```
### 🧑💻 Have Fun!
```sql
CREATE EXTENSION pg_idna;
SELECT idna_to_ascii('☕.us');
"xn--53h.us"
SELECT idna_to_unicode('xn--53h.us');
"☕.us"
```
## 🚧 Warning
This project is in a pre-alpha stage. Do not use it in production.
I am not responsible if your elephant explodes.
## 🚀 Performance
Benchmarks are yet to be introduced. In my brief testing, ~1 MM domains could be processed every second.
### 👷 Code Style
Obey `rustfmt` and Rust 2021 conventions, as well as `clippy` lints.
## 🤝 Contributions
Pull requests are always welcome.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed under the terms of both the MIT License and the Apache License (Version 2.0).
## 🔢 Version Scheme
At the moment, this project does not have a stable versioning scheme.
Changes will be documented in the [Changelog](CHANGELOG.md) on a best-effort basis.
See the [tags](https://github.com/owenthewizard/pg_idna/tags) for available releases.
## 👪 Authors
See [the list of contributors](https://github.com/owenthewizard/pg_inda/contributors).
## ⚖️ License
See LICENSE-APACHE and LICENSE-MIT for details.
## 🫶 Acknowledgements
- [rust-url/idna](https://crates.io/crates/idna) by [The Servo Project Developers](https://servo.org/)
- [pgrx](https://crates.io/crates/pgrx) by Various Authors