{"id":16890972,"url":"https://github.com/alandefreitas/futures","last_synced_at":"2025-03-22T08:31:14.197Z","repository":{"id":45941816,"uuid":"417688439","full_name":"alandefreitas/futures","owner":"alandefreitas","description":"C++ Better Futures","archived":false,"fork":false,"pushed_at":"2023-01-19T02:43:50.000Z","size":9433,"stargazers_count":43,"open_issues_count":0,"forks_count":5,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2025-03-18T10:03:57.094Z","etag":null,"topics":["asynchronous-programming","executors","futures","task-programming"],"latest_commit_sha":null,"homepage":"https://alandefreitas.github.io/futures/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alandefreitas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-10-16T02:02:50.000Z","updated_at":"2025-02-01T15:45:32.000Z","dependencies_parsed_at":"2023-02-02T19:18:04.156Z","dependency_job_id":null,"html_url":"https://github.com/alandefreitas/futures","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alandefreitas%2Ffutures","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alandefreitas%2Ffutures/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alandefreitas%2Ffutures/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alandefreitas%2Ffutures/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alandefreitas","download_url":"https://codeload.github.com/alandefreitas/futures/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244931481,"owners_count":20534008,"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":["asynchronous-programming","executors","futures","task-programming"],"created_at":"2024-10-13T17:05:08.973Z","updated_at":"2025-03-22T08:31:10.523Z","avatar_url":"https://github.com/alandefreitas.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Better Futures\n\n\u003e Because futures don't have to be awful\n\n[![Futures](docs/img/futures_banner.png)](https://alandefreitas.github.io/futures/)\n\n\u003c!--[abstract --\u003e\n\n\u003cbr/\u003e\n\n\u003c!--What it is --\u003e\n\n- A *Future* 🔮 is a value to be available an operation fulfills its *Promise* 🤞.\n\n\u003c!--Why this is interesting --\u003e\n\n- The Future/Promise model supports all operations required for async computing: queries, continuations, adaptors, and\n  algorithms.\n\n\u003c!--What is the problem --\u003e\n\n- C++11 provides `std::future` but most implementations are useless for efficient applications.\n\n\u003c!--Why is it unsolved --\u003e\n\n- There are countless proposals to improve this C++11 component: continuations, cancellation, executors, and algorithms.\n\n\u003c!--What is the solution --\u003e\n\n- This library provides a concept to integrate existing applications and new improved future types.\n\n\u003c!--What the solution achieves --\u003e\n\n- This design allows the library to include generic algorithms, executors, adaptors, and custom extensions.\n\n\u003cbr/\u003e\n\n\u003cdiv style=\"text-align: center;\"\u003e\n\u003ca href=\"https://github.com/alandefreitas/futures/actions?query=workflow%3ABuild+event%3Apush+branch%3Amaster+\" target=\"_blank\"\u003e\n  \u003cimg alt=\"Build Status\" src=\"https://img.shields.io/github/actions/workflow/status/alandefreitas/futures/build.yml?branch=master\u0026label=Build\u0026logo=Github-Actions\u0026event=push\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://GitHub.com/alandefreitas/futures/releases/\" target=\"_blank\"\u003e\n  \u003cimg alt=\"Latest Release\" src=\"https://img.shields.io/github/release/alandefreitas/futures.svg?label=Download\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://alandefreitas.github.io/futures/\" target=\"_blank\"\u003e\n  \u003cimg alt=\"Documentation\" src=\"https://img.shields.io/website-up-down-green-red/http/alandefreitas.github.io/futures.svg?label=Documentation\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/alandefreitas/futures/discussions\" target=\"_blank\"\u003e\n  \u003cimg alt=\"Discussions\" src=\"https://img.shields.io/website-up-down-green-red/http/alandefreitas.github.io/futures.svg?label=Discussions\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://codecov.io/gh/alandefreitas/futures\"  target=\"_blank\"\u003e\n  \u003cimg alt=\"Coverage\" src=\"https://codecov.io/gh/alandefreitas/futures/branch/master/graph/badge.svg?token=ZW86JQCVYI\"/\u003e \n\u003c/a\u003e\n\u003c/div\u003e\n\n\u003cbr/\u003e\n\n\u003cdiv style=\"text-align: center;\"\u003e\n\n\u003c!-- https://github.com/bradvin/social-share-urls --\u003e\n\n\u003ca href=\"https://www.facebook.com/sharer/sharer.php?t=futures:%20C%2B%2B%20Task%20Programming\u0026u=https://github.com/alandefreitas/futures/\" target=\"_blank\"\u003e\n    \u003cimg alt=\"Facebook\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+Facebook\u0026logo=facebook\"\u003e\n\u003c/a\u003e\n\u003ca href=\"http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=https://github.com/alandefreitas/futures/\u0026title=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\u0026summary=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\" target=\"_blank\"\u003e\n    \u003cimg alt=\"QZone\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+QZone\u0026logo=qzone\"\u003e\n\u003c/a\u003e\n\u003ca href=\"http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=https://github.com/alandefreitas/futures/\u0026title=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\u0026summary=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\" target=\"_blank\"\u003e\n    \u003cimg alt=\"Weibo\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+Weibo\u0026logo=sina-weibo\"\u003e\n\u003c/a\u003e\n\u003ca href=\"http://www.reddit.com/submit?url=https://github.com/alandefreitas/futures/\u0026title=Futures:%20CPP%20Task%20Programming%20with%20Asio%20Executors\" target=\"_blank\"\u003e\n    \u003cimg alt=\"Reddit\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+Reddit\u0026logo=reddit\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://twitter.com/intent/tweet?text=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\u0026url=https://github.com/alandefreitas/futures/\u0026hashtags=Task,Programming,Cpp,Async\" target=\"_blank\"\u003e\n    \u003cimg alt=\"Twitter\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?label=Share+on+Twitter\u0026style=social\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://www.linkedin.com/shareArticle?mini=false\u0026url=https://github.com/alandefreitas/futures/\u0026title=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\" target=\"_blank\"\u003e\n    \u003cimg alt=\"LinkedIn\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+LinkedIn\u0026logo=linkedin\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://api.whatsapp.com/send?text=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors:+https://github.com/alandefreitas/futures/\" target=\"_blank\"\u003e\n    \u003cimg alt=\"WhatsApp\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+WhatsApp\u0026logo=whatsapp\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://lineit.line.me/share/ui?url=https://github.com/alandefreitas/futures/\u0026text=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\" target=\"_blank\"\u003e\n    \u003cimg alt=\"Line.me\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+Line.me\u0026logo=line\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://telegram.me/share/url?url=https://github.com/alandefreitas/futures/\u0026text=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\" target=\"_blank\"\u003e\n    \u003cimg alt=\"Telegram.me\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+Telegram.me\u0026logo=telegram\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://news.ycombinator.com/submitlink?u=https://github.com/alandefreitas/futures/\u0026t=futures:%20C%2B%2B%20task%20programming%20with%20asio%20executors\" target=\"_blank\"\u003e\n    \u003cimg alt=\"HackerNews\" src=\"https://img.shields.io/twitter/url/http/shields.io.svg?style=social\u0026label=Share+on+HackerNews\u0026logo=y-combinator\"\u003e\n\u003c/a\u003e\n\n\u003c/div\u003e\n\n\u003cbr/\u003e\n\n\u003c!--] --\u003e\n\n\u003cbr/\u003e\n\n\u003cdiv style=\"text-align: center;\"\u003e\n\n\u003ch2\u003e\n\n\u003ca href=\"https://alandefreitas.github.io/futures/\"\u003e\n  \u003cimg src=\"https://upload.wikimedia.org/wikipedia/commons/2/2a/Documentation-plain.svg\" width=\"50%\"/\u003e\n\u003c/a\u003e\n\n[READ THE DOCUMENTATION FOR A QUICK START AND EXAMPLES](https://alandefreitas.github.io/futures/)\n\n\u003c/h2\u003e\n\n\u003c/div\u003e\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falandefreitas%2Ffutures","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falandefreitas%2Ffutures","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falandefreitas%2Ffutures/lists"}