dependabot[bot] 81ec7a6060 chore(deps): Bump libc from 0.2.186 to 0.2.188 (#567)
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.186 to 0.2.188.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/libc/releases">libc's
releases</a>.</em></p>
<blockquote>
<h2>0.2.188</h2>
<h3>Changed</h3>
<ul>
<li>Restore <code>Send</code> and <code>Sync</code> for <code>DIR</code>
(<a
href="https://github.com/rust-lang/libc/commit/35b062263401733cd89065c6a553640f2ba51ff1">35b062263401</a>)</li>
</ul>
<p>These were removed in 0.2.187 because <code>libc</code> does not
actually make <code>Send</code> and <code>Sync</code>
guarantees about <code>DIR</code> (or other extern types), but this
caused some crates to break.
The traits are added back for now to allow time to migrate, but will be
removed again
in the future; please make sure your crates are not relying on
<code>libc::DIR: Send</code> or
<code>libc::DIR: Sync</code>.</p>
<h2>0.2.187</h2>
<p>This release contains a number of improvements related to 64-bit
<code>time_t</code> configuration.
Of note the existing <code>RUST_LIBC_UNSTABLE_*</code> environment
variables have been replaced
with configuration options. The new way to use these is:</p>
<pre lang="sh"><code>RUSTFLAGS='--cfg=libc_unstable_musl_v1_2_3' cargo
...
RUSTFLAGS='--cfg=libc_unstable_gnu_time_bits=&quot;64&quot;' cargo ...
</code></pre>
<p>Being able to set this via <code>RUSTFLAGS</code> makes it easier to
only apply configuration to
specific targets (and notably, not the host if build scripts are
used).</p>
<p>There are two other notable changes:</p>
<ul>
<li>
<p>The 32-bit <code>windows-gnu</code> targets now respect
<code>libc_unstable_gnu_time_bits</code></p>
</li>
<li>
<p>uClibc now supports a similar configuration option:</p>
<pre lang="sh"><code>RUSTFLAGS='--cfg=libc_unstable_uclibc_time64'
</code></pre>
</li>
</ul>
<p>As a reminder, these options are under active development and may
change in the future
(hence the &quot;unstable&quot; in the name). It likely that we will
harmonize everything under a
single configuration option before considering them stable.</p>
<h3>Support</h3>
<ul>
<li>Add support for <code>aarch64-unknown-linux-pauthtest</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/5065">#5065</a>)</li>
<li>Add support for new QNX targets (<a
href="https://redirect.github.com/rust-lang/libc/pull/5241">#5241</a>)</li>
<li>Better document breaking change policy and recommended usage (<a
href="https://redirect.github.com/rust-lang/libc/pull/5179">#5179</a>)</li>
</ul>
<h3>Added</h3>
<ul>
<li>Android: Add <code>POSIX_SPAWN_*</code> constants (<a
href="https://redirect.github.com/rust-lang/libc/pull/5104">#5104</a>)</li>
<li>Android: Add <code>getpwent</code>, <code>setpwent</code>, and
<code>endpwent</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/5160">#5160</a>)</li>
<li>Android: Add <code>preadv2</code> and <code>pwritev2</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/5157">#5157</a>)</li>
<li>Android: Add <code>seccomp_notif*</code> structures (<a
href="https://redirect.github.com/rust-lang/libc/pull/5224">#5224</a>)</li>
<li>Android: Add <code>timer_[create, delete, getoverrun, gettime,
settime]</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/5108">#5108</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/libc/blob/0.2.188/CHANGELOG.md">libc's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/rust-lang/libc/compare/0.2.187...0.2.188">0.2.188</a>
- 2026-07-21</h2>
<h3>Changed</h3>
<ul>
<li>Restore <code>Send</code> and <code>Sync</code> for <code>DIR</code>
(<a
href="https://github.com/rust-lang/libc/commit/35b062263401733cd89065c6a553640f2ba51ff1">35b062263401</a>)</li>
</ul>
<p>These were removed in 0.2.187 because <code>libc</code> does not
actually make <code>Send</code> and <code>Sync</code>
guarantees about <code>DIR</code> (or other extern types), but this
caused some crates to break.
The traits are added back for now to allow time to migrate, but will be
removed again
in the future; please make sure your crates are not relying on
<code>libc::DIR: Send</code> or
<code>libc::DIR: Sync</code>.</p>
<h2><a
href="https://github.com/rust-lang/libc/compare/0.2.186...0.2.187">0.2.187</a>
- 2026-07-20</h2>
<p>This release contains a number of improvements related to 64-bit
<code>time_t</code> configuration.
Of note the existing <code>RUST_LIBC_UNSTABLE_*</code> environment
variables have been replaced
with configuration options. The new way to use these is:</p>
<pre lang="sh"><code>RUSTFLAGS='--cfg=libc_unstable_musl_v1_2_3' cargo
...
RUSTFLAGS='--cfg=libc_unstable_gnu_time_bits=&quot;64&quot;' cargo ...
</code></pre>
<p>Being able to set this via <code>RUSTFLAGS</code> makes it easier to
only apply configuration to
specific targets (and notably, not the host if build scripts are
used).</p>
<p>There are two other notable changes:</p>
<ul>
<li>
<p>The 32-bit <code>windows-gnu</code> targets now respect
<code>libc_unstable_gnu_time_bits</code></p>
</li>
<li>
<p>uClibc now supports a similar configuration option:</p>
<pre lang="sh"><code>RUSTFLAGS='--cfg=libc_unstable_uclibc_time64'
</code></pre>
</li>
</ul>
<p>As a reminder, these options are under active development and may
change in the future
(hence the &quot;unstable&quot; in the name). It likely that we will
harmonize everything under a
single configuration option before considering them stable.</p>
<h3>Support</h3>
<ul>
<li>Add support for <code>aarch64-unknown-linux-pauthtest</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/5065">#5065</a>)</li>
<li>Add support for new QNX targets (<a
href="https://redirect.github.com/rust-lang/libc/pull/5241">#5241</a>)</li>
<li>Better document breaking change policy and recommended usage (<a
href="https://redirect.github.com/rust-lang/libc/pull/5179">#5179</a>)</li>
</ul>
<h3>Added</h3>
<ul>
<li>Android: Add <code>POSIX_SPAWN_*</code> constants (<a
href="https://redirect.github.com/rust-lang/libc/pull/5104">#5104</a>)</li>
<li>Android: Add <code>getpwent</code>, <code>setpwent</code>, and
<code>endpwent</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/5160">#5160</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/rust-lang/libc/commit/7b7b771895c2a5ae75f358fadb893845ce9ae6cf"><code>7b7b771</code></a>
libc: Release 0.2.188</li>
<li><a
href="https://github.com/rust-lang/libc/commit/ba6a6b56ae09e0640a2b2e27f3f6abdb4b3d243f"><code>ba6a6b5</code></a>
[0.2] Restore <code>Send</code> and <code>Sync</code> for
<code>DIR</code></li>
<li><a
href="https://github.com/rust-lang/libc/commit/ee051902acd7ee674e1916e6b12297da3975b351"><code>ee05190</code></a>
libc: Release 0.2.187</li>
<li><a
href="https://github.com/rust-lang/libc/commit/13b22188be02a58d669661c7a177d48d62c7eef5"><code>13b2218</code></a>
unix: add preadv2 and pwritev2 to android</li>
<li><a
href="https://github.com/rust-lang/libc/commit/abc9903188c8454920295d5548cbeb4d7d5f4896"><code>abc9903</code></a>
docs: Improve the pull request template and CONTRIBUTING.md</li>
<li><a
href="https://github.com/rust-lang/libc/commit/c452b48fb208de60fc2788a4a0857de88d8ebece"><code>c452b48</code></a>
util: Restructure to use one class per subcommand</li>
<li><a
href="https://github.com/rust-lang/libc/commit/cbc70c94d25504059b8bd9ba559a20d234c61308"><code>cbc70c9</code></a>
nuttx: more document comments</li>
<li><a
href="https://github.com/rust-lang/libc/commit/2589ea31957596d3cd217e5b36d1ffe9ced9dd83"><code>2589ea3</code></a>
nuttx: add TCP_MAXSEG definitions</li>
<li><a
href="https://github.com/rust-lang/libc/commit/6be50c108554b169a254326f457c1839142fb007"><code>6be50c1</code></a>
nuttx: add pipe2 definitions</li>
<li><a
href="https://github.com/rust-lang/libc/commit/450034486a93a673e4f108ed7a09ebbdac4e3597"><code>4500344</code></a>
nuttx: add poll definitions</li>
<li>Additional commits viewable in <a
href="https://github.com/rust-lang/libc/compare/0.2.186...0.2.188">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=libc&package-manager=cargo&previous-version=0.2.186&new-version=0.2.188)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-21 19:15:45 +00:00
2025-12-15 07:38:52 +00:00
2025-12-15 15:57:47 +08:00
2024-08-11 11:33:34 +00:00
2025-10-03 01:46:47 +00:00
2025-12-15 15:57:47 +08:00
2019-04-13 20:21:25 +00:00
2025-10-03 09:36:26 +08:00

bdwgc-rust

GitHub Action Crate License

GlobalAlloc implementation for bdwgc, the conservative garbage collector.

This crate is for use cases in which developers need to integrate bdwgc into their programs written in Rust (e.g. writing a runtime library in Rust for their own programming language whose GC is done by bdwgc.)

Usage

See examples directory.

By default bdwgc is built with autotools. To build with cmake, enable the cmake feature:

cargo build --no-default-features --features cmake

License

MIT

S
Description
No description provided
Readme MIT 1.5 MiB
Languages
Rust 96.8%
Shell 3.2%