https://github.com/github/trilogy Skip to content Sign up * Why GitHub? + Features + Mobile + Actions + Codespaces + Packages + Security + Code review + Issues + Integrations + GitHub Sponsors + Customer stories * Team * Enterprise * Explore + Explore GitHub + Learn and contribute + Topics + Collections + Trending + Learning Lab + Open source guides + Connect with others + The ReadME Project + Events + Community forum + GitHub Education + GitHub Stars program * Marketplace * Pricing + Plans + Compare plans + Contact Sales + Education [ ] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this organization All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} github / trilogy Public * Notifications * Fork 1 * Star 30 * Trilogy is a client library for MySQL-compatible database servers, designed for performance, flexibility, and ease of embedding. MIT License 30 stars 1 fork Star Notifications * Code * Issues 0 * Pull requests 0 * Actions * Projects 0 * Wiki * Security * Insights More * Code * Issues * Pull requests * Actions * Projects * Wiki * Security * Insights main Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show Loading {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default Loading View all tags 1 branch 1 tag Code Loading Latest commit @eileencodes @brianmario @haileys @jhawthorn @dbussink @ross @vmg @arthurnn @kivikakk @tenderlove @philipturnbull @dewski @mperham @keeran @bkeepers @composerinteralia @aroben @jbarnette @kytrinyx @Tonkpils @theojulienne 23 authors Release Trilogy Client ... 9380a58 Dec 15, 2021 Release Trilogy Client Trilogy is a MySQL-compatible protocol library written in C designed with performance, flexibility, and ease of embedding in mind. It's currently in production use on github.com. Co-authored-by: Brian Lopez Co-authored-by: Hailey Somerville Co-authored-by: John Hawthorn Co-authored-by: Dirkjan Bussink Co-authored-by: Ross McFarland Co-authored-by: Vicent Marti Co-authored-by: Arthur Neves Co-authored-by: Ashe Connor Co-authored-by: Aaron Patterson Co-authored-by: Vicent Marti Co-authored-by: Phil Turnbull Co-authored-by: Garrett Bjerkhoel Co-authored-by: Arthur Nogueira Neves Co-authored-by: Eileen M. Uchitelle Co-authored-by: Mike Perham Co-authored-by: Keeran Raj Hawoldar Co-authored-by: Brandon Keepers Co-authored-by: Garrett Bjerkhoel Co-authored-by: Daniel Colson Co-authored-by: Adam Roben Co-authored-by: John Barnette Co-authored-by: Katrina Owen Co-authored-by: Leo Correa Co-authored-by: Brandon Keepers Co-authored-by: Theo Julienne 9380a58 Git stats * 1 commit Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time .github/workflows Release Trilogy Client Dec 15, 2021 contrib/ruby Release Trilogy Client Dec 15, 2021 docker-entrypoint-initdb.d Release Trilogy Client Dec 15, 2021 example Release Trilogy Client Dec 15, 2021 inc Release Trilogy Client Dec 15, 2021 script Release Trilogy Client Dec 15, 2021 src Release Trilogy Client Dec 15, 2021 test Release Trilogy Client Dec 15, 2021 .clang-format Release Trilogy Client Dec 15, 2021 .dockerignore Release Trilogy Client Dec 15, 2021 .env Release Trilogy Client Dec 15, 2021 .gitignore Release Trilogy Client Dec 15, 2021 CHANGELOG.md Release Trilogy Client Dec 15, 2021 CODE_OF_CONDUCT.md Release Trilogy Client Dec 15, 2021 CONTRIBUTING.md Release Trilogy Client Dec 15, 2021 Dockerfile.test.bionic Release Trilogy Client Dec 15, 2021 Dockerfile.test.buster Release Trilogy Client Dec 15, 2021 Dockerfile.test.focal Release Trilogy Client Dec 15, 2021 Dockerfile.test.stretch Release Trilogy Client Dec 15, 2021 LICENSE Release Trilogy Client Dec 15, 2021 Makefile Release Trilogy Client Dec 15, 2021 README.md Release Trilogy Client Dec 15, 2021 SECURITY.md Release Trilogy Client Dec 15, 2021 docker-compose.yml Release Trilogy Client Dec 15, 2021 View code Trilogy Features Limitations Building API Documentation Bindings License README.md Trilogy Trilogy is a client library for MySQL-compatible database servers, designed for performance, flexibility, and ease of embedding. It's currently in production use on github.com. Features * Supports the most frequently used parts of the text protocol + Handshake + Password authentication + Query, ping, and quit commands * Low-level protocol API completely decoupled from IO * Non-blocking client API wrapping the protocol API * Blocking client API wrapping the non-blocking API * No dependencies outside of POSIX and the C standard library * Minimal dynamic allocation * MIT licensed Limitations * Only supports the parts of the text protocol that are in common use. There's no support for the binary protocol or prepared statements * No support for LOAD DATA INFILE on local files * trilogy_escape assumes an ASCII-compatible connection encoding Building make - that's it. This will build a static libtrilogy.a Trilogy should build out of the box on most UNIX systems which have OpenSSL installed. API Documentation Documentation for Trilogy's various APIs can be found in these header files: * blocking.h The blocking client API. These are simply a set of convenient wrapper functions around the non-blocking client API in client.h * client.h The non-blocking client API. Every command is split into a _send and _recv function allowing callers to wait for IO readiness externally to Trilogy * builder.h MySQL-compatible packet builder API * charset.h Character set and encoding tables * error.h Error table. Every Trilogy function returning an int uses the error codes defined here * packet_parser.h Streaming packet frame parser * protocol.h Low-level protocol API. Provides IO-decoupled functions to parse and build packets * reader.h Bounds-checked packet reader API Bindings We maintain a Ruby binding in this repository. This is currently stable and production-ready. License Trilogy is released under the MIT license. About Trilogy is a client library for MySQL-compatible database servers, designed for performance, flexibility, and ease of embedding. Resources Readme License MIT License Code of conduct Code of conduct Stars 30 stars Watchers 68 watching Forks 1 fork Releases 1 tags Packages 0 No packages published Contributors 9 * @keeran * @philipturnbull * @dewski * @jhawthorn * @theojulienne * @arthurnn * @eileencodes * @Tonkpils * @composerinteralia Languages * C 90.5% * Ruby 8.3% * Other 1.2% * (c) 2021 GitHub, Inc. * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.