{"id":16572302,"url":"https://github.com/eddelbuettel/bh","last_synced_at":"2025-10-09T18:12:15.245Z","repository":{"id":12891079,"uuid":"15567825","full_name":"eddelbuettel/bh","owner":"eddelbuettel","description":"R package providing Boost Header files","archived":false,"fork":false,"pushed_at":"2024-12-19T02:00:54.000Z","size":42545,"stargazers_count":89,"open_issues_count":0,"forks_count":35,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-09-08T13:47:38.348Z","etag":null,"topics":["boost","c-plus-plus","r","r-package","rcpp"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"biezhihua/RefreshLayout","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eddelbuettel.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":null,"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":"2014-01-01T18:06:12.000Z","updated_at":"2025-09-05T10:37:50.000Z","dependencies_parsed_at":"2023-02-12T16:30:37.085Z","dependency_job_id":"2b99eab7-7cf8-4f1f-9dc0-ee2fc734e44a","html_url":"https://github.com/eddelbuettel/bh","commit_stats":{"total_commits":235,"total_committers":10,"mean_commits":23.5,"dds":0.1574468085106383,"last_synced_commit":"6ae52dc4f0fad71f2b45407331cb4adb9b8d326f"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/eddelbuettel/bh","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddelbuettel%2Fbh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddelbuettel%2Fbh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddelbuettel%2Fbh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddelbuettel%2Fbh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eddelbuettel","download_url":"https://codeload.github.com/eddelbuettel/bh/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddelbuettel%2Fbh/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001946,"owners_count":26083226,"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-10-09T02:00:07.460Z","response_time":59,"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":["boost","c-plus-plus","r","r-package","rcpp"],"created_at":"2024-10-11T21:27:05.666Z","updated_at":"2025-10-09T18:12:11.204Z","avatar_url":"https://github.com/eddelbuettel.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"## bh: Boost Headers for R\n\n[![CI](https://github.com/eddelbuettel/bh/workflows/ci/badge.svg)](https://github.com/eddelbuettel/bh/actions?query=workflow%3Aci)\n[![License](https://img.shields.io/badge/license-BSL--1.0-brightgreen.svg?style=flat)](https://www.boost.org/users/license.html)\n[![CRAN](https://www.r-pkg.org/badges/version/BH)](https://cran.r-project.org/package=BH)\n[![Dependencies](https://tinyverse.netlify.app/badge/BH)](https://cran.r-project.org/package=BH)\n[![Last Commit](https://img.shields.io/github/last-commit/eddelbuettel/bh)](https://github.com/eddelbuettel/bh)\n[![Downloads (monthly)](https://cranlogs.r-pkg.org/badges/BH?color=brightgreen)](https://www.r-pkg.org:443/pkg/BH)\n[![Downloads (total)](https://cranlogs.r-pkg.org/badges/grand-total/BH?color=brightgreen)](https://www.r-pkg.org:443/pkg/BH)\n[![CRAN use](https://jangorecki.gitlab.io/rdeps/BH/CRAN_usage.svg?sanitize=true)](https://cran.r-project.org/package=BH)\n[![BioConductor use](https://jangorecki.gitlab.io/rdeps/BH/BioC_usage.svg?sanitize=true)](https://cran.r-project.org/package=BH)\n\n### Synopsis\n\nThis package provides [R](https://www.r-project.org) with access to\n[Boost](https://www.boost.org/) header files.  [Boost](https://www.boost.org/)\nprovides free peer-reviewed portable C++ source libraries.  A large part of\n[Boost](https://www.boost.org/) is provided as C++ template code which is\nresolved entirely at compile-time without linking.  \n\nThis package aims to provide the most useful subset of\n[Boost](https://www.boost.org/) libraries for template use among CRAN\npackages. By placing these libraries in this package, we offer a more\nefficient distribution system for CRAN as replication of this code in the\nsources of other packages is avoided.\n\nIt can be used via the `LinkingTo:` field in the `DESCRIPTION` field of an R\npackage --- and the R package infrastructure tools will then know how to set\ninclude flags correctly on all architectures supported by R.\n\nNote that this can be used solely by headers-only Boost libraries. This\ncovers most of Boost, but excludes some libraries which require linking for\nparts or all of their functionality.\n\n### Coverage\n\nAs of release 1.84.0-0, the following Boost libraries are included:\n\n\u003e accumulators algorithm align any atomic beast bimap bind circular_buffer\n\u003e compute concept config container date_time detail dynamic_bitset exception\n\u003e flyweight foreach functional fusion geometry graph heap icl integer\n\u003e interprocess intrusive io iostreams iterator lambda2 math move mp11 mpl\n\u003e multiprecision numeric pending phoenix polygon preprocessor process \n\u003e propery_tree qvm random range scope_exit smart_ptr sort spirit tuple \n\u003e type_traits typeof unordered url utility uuid\n\n### Example\n\nThe [Rcpp Gallery](https://gallery.rcpp.org) contains [several\nexamples](https://gallery.rcpp.org/tags/boost/) under its `boost` tag including the introductory\n[first](https://gallery.rcpp.org/articles/a-first-boost-example/) and\n[second](https://gallery.rcpp.org/articles/a-second-boost-example/).  From the\n[first](https://gallery.rcpp.org/articles/a-first-boost-example/), a simple example to compute the\ngreatest common demoninator of two integers follows:\n\n```c++\n// [[Rcpp::depends(BH)]]\n\n#include \u003cRcpp.h\u003e\n#include \u003cboost/math/common_factor.hpp\u003e\n\n// [[Rcpp::export]]\nint computeGCD(int a, int b) {\n    return boost::math::gcd(a, b);\n}\n```\n\nSaving it as `boostExample.cpp` and simple sourcing this `Rcpp::sourceCpp(\"boostExample.cpp\")`\nproduces the function `computeGCD()`.  See the [Rcpp Gallery](https://gallery.rcpp.org) for more\nexamples.\n\n\n### See Also\n\nThe [mailing list](https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/boostheaders-devel)\nat [R-Forge](https://r-forge.r-project.org/) is a good place for questions,\ncomments and general discussion. The [issue tracker](https://github.com/eddelbuettel/bh/issues)\ncan be used for bugs.\n\n### Updating\n\nWe aim to maintain this package in a somewhat conservative fashion and do not always\nimmediately jump the newest Boost releases.  Rather, we (used to) start from the\n[Debian sources for Boost](https://packages.debian.org/sid/libboost-all-dev)\nto ensure that we work with a version that is at the same time current yet\nmature.  But on occassion, and as needed, and more recently, we will also go\ndirectly to Boost releases.\n\nIn general, we plan to keep the package up-to-date with [Boost](https://www.boost.org/)\nupstream, but will not necessarily follow each and every new release as we\nalso value the merits of relative release stability.\n\nIf needed, the script `local/script/CreateBoost.sh` can be used to update a forked\nversion to a newer version of [Boost](https://www.boost.org/).\n\n### But what about the size?\n\nThat used to be a concern, and we wrote:\n\n\u003e The repo has a large footprint. We know. We erroneously thought that committing\n\u003e the Boost tarballs would be a good idea. It wasn't. First attempts at pruning\n\u003e the history [using bfg](https://rtyley.github.io/bfg-repo-cleaner/) were not that\n\u003e successful.  If someone has a script doing this well we would take another\n\u003e look.\n\u003e\n\u003e Otherwise we recommend to just start from\n\u003e [CreateBoost.sh](https://github.com/eddelbuettel/bh/blob/master/local/scripts/CreateBoost.sh).\n\nand lo and behold, we got help via\n[this script](https://github.com/eddelbuettel/bh/blob/master/local/scripts/git-remove.sh) as\n[discussed here](https://github.com/eddelbuettel/bh/issues/34).  The old tarballs are now removed;\nsix commits were filtered and the repo has a much saner size so it can be forked more easily.\n\n### Authors\n\nDirk Eddelbuettel, Jay Emerson and Michael Kane\n\n## License\n\nThis package is provided under the same license as Boost itself, the BSL-1.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feddelbuettel%2Fbh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feddelbuettel%2Fbh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feddelbuettel%2Fbh/lists"}