{"id":13528206,"url":"https://github.com/timescale/timescaledb-toolkit","last_synced_at":"2025-05-16T06:00:22.715Z","repository":{"id":37848961,"uuid":"317940258","full_name":"timescale/timescaledb-toolkit","owner":"timescale","description":"Extension for more hyperfunctions, fully compatible with TimescaleDB and PostgreSQL 📈","archived":false,"fork":false,"pushed_at":"2025-04-17T12:13:43.000Z","size":3593,"stargazers_count":414,"open_issues_count":161,"forks_count":56,"subscribers_count":21,"default_branch":"main","last_synced_at":"2025-05-07T04:58:56.396Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.timescale.com","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/timescale.png","metadata":{"files":{"readme":"Readme.md","changelog":"Changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-12-02T17:31:33.000Z","updated_at":"2025-04-28T20:34:15.000Z","dependencies_parsed_at":"2023-10-03T13:27:43.983Z","dependency_job_id":"4d427686-35b0-4340-a920-1f7d73d215d5","html_url":"https://github.com/timescale/timescaledb-toolkit","commit_stats":null,"previous_names":[],"tags_count":41,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timescale%2Ftimescaledb-toolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timescale%2Ftimescaledb-toolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timescale%2Ftimescaledb-toolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timescale%2Ftimescaledb-toolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/timescale","download_url":"https://codeload.github.com/timescale/timescaledb-toolkit/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254478160,"owners_count":22077675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T06:02:18.493Z","updated_at":"2025-05-16T06:00:22.565Z","avatar_url":"https://github.com/timescale.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"[![CI](https://github.com/timescale/timescaledb-toolkit/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/timescale/timescaledb-toolkit/actions/workflows/ci.yml)\n\n# TimescaleDB Toolkit\n\nThis repository is the home of the TimescaleDB Toolkit team. Our mission is to\nease all things analytics when using TimescaleDB, with a particular focus on\ndeveloper ergonomics and performance. Our issue tracker contains more\non [the features we're planning to work on](https://github.com/timescale/timescaledb-toolkit/labels/proposed-feature)\nand [the problems we're trying to solve](https://github.com/timescale/timescaledb-toolkit/labels/feature-request),\nand our [Discussions forum](https://github.com/timescale/timescaledb-toolkit/discussions) contains ongoing conversation.\n\nDocumentation for this version of the TimescaleDB Toolkit extension can be found\nin this repository at [`docs`](https://github.com/timescale/timescaledb-toolkit/tree/main/docs).\nThe release history can be found on this repo's [GitHub releases](https://github.com/timescale/timescaledb-toolkit/releases).\n\n## 🖥 Try It Out\n\nThe extension comes pre-installed on all [Timescale Cloud](https://www.timescale.com/products#timescale-cloud) instances and also on our full-featured [`timescale/timescaledb-ha` docker image](https://hub.docker.com/r/timescale/timescaledb-ha).\n\nIf DEB and RPM packages are a better fit for your situation, refer to the [Install Toolkit on self-hosted TimescaleDB](https://docs.timescale.com/self-hosted/latest/tooling/install-toolkit/#install-toolkit-on-self-hosted-timescaledb) how-to guide for further instructions on installing the extension via your package manager.\n\nAll versions of the extension contain experimental features in the `toolkit_experimental` schema. See [our docs section on experimental features](/docs/README.md#tag-notes) for more details.\n\n## 💿 Installing From Source\n\n### Supported platforms\n\nThe engineering team regularly tests the extension on the following platforms:\n\n- x86_64-unknown-linux-gnu (Ubuntu Linux 24.04) (tested prior to every merge)\n- aarch64-unknown-linux-gnu (Ubuntu Linux 24.04) (tested at release time)\n- x86_64-apple-darwin (MacOS 12) (tested frequently on eng workstation)\n- aarch64-apple-darwin (MacOS 12) (tested frequently on eng workstation)\n\nAs for other platforms: patches welcome!\n\n### 🔧 Tools Setup\n\nBuilding the extension requires valid [rust](https://www.rust-lang.org/) (we build and test on 1.65), [rustfmt](https://github.com/rust-lang/rustfmt), and clang installs, along with the postgres headers for whichever version of postgres you are running, and pgrx.\nWe recommend installing rust using the [official instructions](https://www.rust-lang.org/tools/install):\n\n```bash\ncurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh\n```\n\nand build tools, the postgres headers, in the preferred manner for your system. You may also need to install OpenSSl.\nFor Ubuntu you can follow the [postgres install instructions](https://www.postgresql.org/download/linux/ubuntu/) then run\n\n```bash\nsudo apt-get install make gcc pkg-config clang postgresql-server-dev-14 libssl-dev\n```\n\nNext you need [cargo-pgrx](https://github.com/tcdi/pgrx), which can be installed with\n\n```bash\ncargo install --version '=0.12.9' --force cargo-pgrx\n```\n\nYou must reinstall cargo-pgrx whenever you update your Rust compiler, since cargo-pgrx needs to be built with the same compiler as Toolkit.\n\nFinally, setup the pgrx development environment with\n\n```bash\ncargo pgrx init --pg14 pg_config\n```\n\nInstalling from source is also available on macOS and requires the same set of prerequisites and set up commands listed above.\n\n### 💾 Building and Installing the extension\n\nDownload or clone this repository, and switch to the `extension` subdirectory, e.g.\n\n```bash\ngit clone https://github.com/timescale/timescaledb-toolkit \u0026\u0026 \\\ncd timescaledb-toolkit/extension\n```\n\nThen run\n\n```\ncargo pgrx install --release \u0026\u0026 \\\ncargo run --manifest-path ../tools/post-install/Cargo.toml -- pg_config\n```\n\nTo initialize the extension after installation, enter the following into `psql`:\n\n```\nCREATE EXTENSION timescaledb_toolkit;\n```\n\n## ✏️ Get Involved\n\nThe TimescaleDB Toolkit project is still in the initial planning stage as we\ndecide our priorities and what to implement first. As such, now is a great time\nto help shape the project's direction! Have a look at the\n[list of features we're thinking of working on](https://github.com/timescale/timescaledb-toolkit/labels/proposed-feature)\nand feel free to comment on the features, expand the list, or\nhop on the [Discussions forum](https://github.com/timescale/timescaledb-toolkit/discussions) for more in-depth discussions.\n\n### 🔨 Testing\n\nSee above for prerequisites and installation instructions.\n\nYou can run tests against a postgres version `pg15`, `pg16` or `pg17` using\n\n```\ncargo pgrx test ${postgres_version}\n```\n\n## 🐯 About TimescaleDB\n\n**[TimescaleDB](https://github.com/timescale/timescaledb)** is a\n**distributed time-series database built on PostgreSQL** that scales to\nover 10 million of metrics per second, supports native compression,\nhandles high cardinality, and offers native time-series capabilities,\nsuch as data retention policies, continuous aggregate views,\ndownsampling, data gap-filling and interpolation.\n\nTimescaleDB also supports full SQL, a variety of data types (numerics,\ntext, arrays, JSON, booleans), and ACID semantics. Operationally mature\ncapabilities include high availability, streaming backups, upgrades over\ntime, roles and permissions, and security.\n\nTimescaleDB has a **large and active user community** (tens of millions\nof downloads, hundreds of thousands of active deployments, Slack channels\nwith thousands of members).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimescale%2Ftimescaledb-toolkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftimescale%2Ftimescaledb-toolkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimescale%2Ftimescaledb-toolkit/lists"}