{"id":42889124,"url":"https://github.com/tmaklin/tigz","last_synced_at":"2026-01-30T14:55:20.939Z","repository":{"id":181702944,"uuid":"664330692","full_name":"tmaklin/tigz","owner":"tmaklin","description":"Parallel gzip decompression and compression using libdeflate and rapidgzip.","archived":false,"fork":false,"pushed_at":"2024-01-03T11:35:17.000Z","size":73,"stargazers_count":1,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-01-27T17:04:41.292Z","etag":null,"topics":["compression","cpp","cpp17","decompression","gzip","libdeflate","parallel","rapidgzip","zlib","zlib-ng"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tmaklin.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2023-07-09T16:38:35.000Z","updated_at":"2023-10-17T16:15:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"bb801385-d9e9-4710-a436-e73e612571bd","html_url":"https://github.com/tmaklin/tigz","commit_stats":{"total_commits":53,"total_committers":1,"mean_commits":53.0,"dds":0.0,"last_synced_commit":"f4e88b5d1ae2933b672d269fc4b224182d726f70"},"previous_names":["tmaklin/tigz"],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/tmaklin/tigz","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmaklin%2Ftigz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmaklin%2Ftigz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmaklin%2Ftigz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmaklin%2Ftigz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tmaklin","download_url":"https://codeload.github.com/tmaklin/tigz/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmaklin%2Ftigz/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28914895,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-30T12:13:43.263Z","status":"ssl_error","status_checked_at":"2026-01-30T12:13:22.389Z","response_time":66,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["compression","cpp","cpp17","decompression","gzip","libdeflate","parallel","rapidgzip","zlib","zlib-ng"],"created_at":"2026-01-30T14:55:20.873Z","updated_at":"2026-01-30T14:55:20.925Z","avatar_url":"https://github.com/tmaklin.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tigz\nParallel gzip compression and decompression with\n- [libdeflate](https://github.com/ebiggers/libdeflate) by [Eric Biggers](https://github.com/ebiggers) for compression.\n- [rapidgzip](https://github.com/mxmlnkn/rapidgzip) by [Maximilian Knespel](https://github.com/mxmlnkn) for decompression.\n- [zlib-ng](https://github.com/zlib-ng/zlib-ng) by [zlib-ng](https://github.com/zlib-ng) as the rapidgzip backend.\n\n## Installation\n### Compile from source\n#### Requirements\n- A compiler with C++17 support.\n- cmake \u003e= v3.16.\n\n#### Dependencies\ntigz additionally downloads, or requires, the following dependencies when cmake is called\n- [libdeflate](https://github.com/ebiggers/libdeflate)\n- [rapidgzip](https://github.com/mxmlnkn/rapidgzip)\n- [zlib-ng](https://github.com/zlib-ng/zlib-ng)\n- [BS::thread_pool](https://github.com/bshoshany/thread-pool)\n- [cxxopts](https://github.com/jarro2783/cxxopts)\n\n#### Compiling\nClone the repository, enter the directory, and run\n```\nmkdir build\ncd build\ncmake ..\nmake -j\n```\nThis will create the tigz executable in the `build/bin` directory.\n\nOptinally, use `make install` afterwards to install tigz. The\ninstallation path can be modified by passing\n`-DCMAKE_INSTALL_PREFIX=/path/to/install/tigz/in` to cmake.\n\n#### Extra compiler flags\n- Native CPU instructions: `-DCMAKE_WITH_NATIVE_INSTRUCTIONS=1`\n- Link-time optimization: `-DCMAKE_WITH_FLTO=1`\n\n#### Using system libraries\nSystem `zlib` or `libdeflate` libraries can be supplied by specifying the path to the library files and the header files with\n```\ncmake -DCMAKE_ZLIB_LIBRARY=/path/to/libz.so -DCMAKE_LIBDEFLATE_LIBRARY=/path/to/libdeflate.so \\\\\n      -DCMAKE_ZLIB_HEADERS=/path/to/zlib.h -DCMAKE_LIBDEFLATE_HEADERS=/path/to/libdeflate.h\n```\nPreinstalled rapidgzip, BS::thread_pool, or cxxopts headers may be supplied similarly via cmake. These are header-only libraries so the library path is not needed.\n\n## Usage\n### As an executable\ntigz has the same command-line interface as gzip, bzip2, xz, etc. do. tigz accepts the following flags\n```\n  tigz [options] [files]\n\n  -1 ... -12\t        Compression level. (default: 6)\n\n  -z, --compress        Compress file(s).\n  -d, --decompress      Decompress file(s).\n  -k, --keep            Keep input file(s) instead of deleting.\n  -f, --force           Force overwrite output file(s).\n  -c, --stdout          Write to standard out, keep files.\n  -T, --threads arg     Use `arg` threads, 0 = all available. (default: 1)\n  -b, --block-size arg  i/o buffer sizes per thread in KiB. (default: 128)\n  -h, --help            Print this message and quit.\n  -V, --version         Print the version and quit.\n```\n\n### As a library\nNote: the API is experimental until v1.x.y is released.\n\ntigz can be used as a header-only library. Include the `tigz_decompressor.hpp` or `tigz_compressor.hpp` files in your project and create the appropriate class in your code.\n\nYou will need to supply the dependency headers and link your program with zlib and libdeflate for tigz to work. Cmake can be used to configure the project automatically as part of a larger build.\n\n## License\ntigz is licensed under the [BSD-3-Clause license](https://opensource.org/licenses/BSD-3-Clause). A copy of the license is supplied with the project, or can alternatively be obtained from [https://opensource.org/licenses/BSD-3-Clause](https://opensource.org/licenses/BSD-3-Clause).\n\n### Dependencies\n- libdeflate is licensed under the [MIT license](https://opensource.org/license/mit).\n- rapidgzip is dual-licensed under the [MIT license](https://opensource.org/license/mit) or the [Apache 2.0 license](https://opensource.org/license/apache-2-0).\n- zlib-ng is licensed under the [zlib license](https://opensource.org/license/zlib).\n- BS::thread_pool is licensed under the [MIT license](https://opensource.org/license/mit).\n- cxxopts is licensed under the [MIT license](https://opensource.org/license/mit).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmaklin%2Ftigz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftmaklin%2Ftigz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmaklin%2Ftigz/lists"}