{"id":31250612,"url":"https://github.com/dyfet/busuto","last_synced_at":"2025-10-14T15:08:36.651Z","repository":{"id":315640992,"uuid":"1043073089","full_name":"dyfet/busuto","owner":"dyfet","description":"C++20 portable runtime","archived":false,"fork":false,"pushed_at":"2025-09-19T21:09:32.000Z","size":120,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-19T21:18:02.175Z","etag":null,"topics":["cpp20","cross-platform-development","sockets","threading"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dyfet.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-23T04:53:44.000Z","updated_at":"2025-09-19T21:09:35.000Z","dependencies_parsed_at":"2025-09-19T21:18:45.249Z","dependency_job_id":"09f11e83-9dca-4f31-a533-13606da7c319","html_url":"https://github.com/dyfet/busuto","commit_stats":null,"previous_names":["dyfet/busuto"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/dyfet/busuto","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyfet%2Fbusuto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyfet%2Fbusuto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyfet%2Fbusuto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyfet%2Fbusuto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dyfet","download_url":"https://codeload.github.com/dyfet/busuto/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyfet%2Fbusuto/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276519148,"owners_count":25656560,"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","status":"online","status_checked_at":"2025-09-23T02:00:09.130Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["cpp20","cross-platform-development","sockets","threading"],"created_at":"2025-09-23T05:33:30.820Z","updated_at":"2025-09-23T05:33:33.627Z","avatar_url":"https://github.com/dyfet.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# About Busuto\n\nBusuto is a template library for enterprise C++ server development. It will\nreplaces ModernCLI going forward. Where it differs from ModernCLI is in core\npractices and in supporting evolving C++ standards and practices much more\nquickly, such as C++20. While ModernCLI and things like Boost all backport many\nthings for use with C++17, Busuto looks to boost into more current C++ compiler\nstandards directly.\n\nWhile both ModernCLI and Busuto are header based C++ libraries, there are\nessential differences in how this package is maintained. For example, all\nheaders use busuto/common.hpp and individual header files are not intended to\nbe purely stand-alone like they are in ModernCLI. Some stylistic aspects and\npractices are also meant to better fit better with Boost libraries. Type traits\nand other compiler assisted code generation is used by default and more\ncommonly than in the current ModernCLI codebase.\n\nFrom a practical target perspective I assume clang or GCC are the only\ncompilers explicitly supported. The one major point of departure from ModernCLI\nis use of a busuto runtime library. This makes it easier to anchor service\ndevelopment features such as having a global timer. a global default thread\npool, and a system logger. It also provides a better place to put large blocks\nof un-templated functions. On posix we also introduce no runtime library code\nthat forces injection of additional runtime library dependencies.\n\nMicrosoft Windows is not supported as a platform with Busuto, not even with\nMingW32. This is largely due to the inability to mix Winsock and mingw posix\nfile descriptors and use common logic for both. That requires fixing multiple\ni/o buffering layers. MingW32 js supported with libcpr because there was only\none simple place in that codebase that needed fixing for that. There were also\nso many features that were disabled to support windows. It's just not worth it.\n\n## Dependencies\n\nBusuto itself depends only on C++20 and a C++20 updated libc++.\n\n## Distributions\n\nDistributions of this package are provided as detached source tarballs made\nfrom a tagged release from our public github repository or by building the dist\ntarget. These stand-alone detached tarballs can be used to make packages for\nmany GNU/Linux systems, and for BSD ports. They may also be used to build and\ninstall the software directly on a target platform.\n\n## Licensing\n\nBusuto Copyright (C) 2025 David Sugar \u003ctychosoft@gmail.comSug\u003e,\n\nThis program is free software: you can redistribute it and/or modify it under\nthe terms of the GNU General Public License as published by the Free Software\nFoundation, either version 3 of the License, or (at your option) any later\nversion.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY\nWARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A\nPARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nNOTE: As primarily a header based library where functional code residing in\nheaders that are either directly called or instantiated and called by user\napplications, it is strongly believed any use of this library constitutes and\neffectively produces a derivative or combined work, per the GPL, and this is\nintentional. As the sole copyright holder I can also offer other forms of\ncommercial licensing under different terms.\n\n## Participation\n\nThis project is offered as free (as in freedom) software for public use and has\na public project page at https://www.github.com/dyfet/busuto which has an issue\ntracker where you can submit public bug reports and a public git repository.\nPatches and merge requests may be submitted in the issue tracker or thru email.\nOther details about participation may be found in CONTRIBUTING.md.\n\n## Testing\n\nThere is a testing program for each header. These run simple tests that will be\nexpanded to improve code coverage over time. The test programs are the only\nbuild target making this library by itself, and the test programs in this\npackage work with the cmake ctest framework. They may also be used as simple\nexamples of how a given header works. There is also a **lint** target that can\nbe used to verify code changes.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdyfet%2Fbusuto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdyfet%2Fbusuto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdyfet%2Fbusuto/lists"}