Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add set_max_level_racy and gate set_max_level #544

Merged
merged 1 commit into from
Apr 13, 2023

Conversation

djkoloski
Copy link

@djkoloski djkoloski commented Jan 6, 2023

Calling set_max_level can result in a race condition on platforms that don't have an atomic compare and swap implementation. This gates set_max_level behind #[cfg(atomic_cas)] and adds a racy alternative that can be called in these situations. This mirrors the approach for set_logger.

Fixes #534

/// [`set_max_level`]: fn.set_max_level.html
#[inline]
pub unsafe fn set_max_level_racy(level: LevelFilter) {
MAX_LOG_LEVEL_FILTER.store(level as usize, Ordering::Relaxed);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the same as the other function?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, but the type of MAX_LOG_LEVEL_FILTER is different (core::sync::AtomicUsize vs log::AtomicUsize). When a platform doesn't support atomic_cas, the underlying implementation uses a Cell<usize> which can race with interrupts.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, that makes sense. Then maybe a note pointing that out would be worth it?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that's a good idea, added a comment.

Calling `set_max_level` can result in a race condition on platforms that
don't have an atomic compare and swap implementation. This gates
`set_max_level` behind `#[cfg(atomic_cas)]` and adds a racy alternative
that can be called in these situations. This mirrors the approach for
`set_logger`.
@djkoloski djkoloski force-pushed the add_set_max_level_racy branch from 4d17cdb to e5f1ae9 Compare January 6, 2023 16:28
@KodrAus KodrAus merged commit 11eda98 into rust-lang:master Apr 13, 2023
renovate bot referenced this pull request in ziyadedher/evm-bench May 28, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [log](https://github.com/rust-lang/log) | dependencies | patch |
`0.4.17` -> `0.4.18` |

---

### Release Notes

<details>
<summary>rust-lang/log</summary>

###
[`v0.4.18`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#&#8203;0418---2023-05-28)

[Compare
Source](https://github.com/rust-lang/log/compare/0.4.17...0.4.18)

- fix markdown links (again) by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/513](https://github.com/rust-lang/log/pull/513)
- add cargo doc to workflow by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/515](https://github.com/rust-lang/log/pull/515)
- Apply Clippy lints by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/516](https://github.com/rust-lang/log/pull/516)
- Replace ad-hoc eq_ignore_ascii_case with slice::eq_ignore_ascii_case
by [@&#8203;glandium](https://github.com/glandium) in
[https://github.com/rust-lang/log/pull/519](https://github.com/rust-lang/log/pull/519)
- fix up windows targets by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/528](https://github.com/rust-lang/log/pull/528)
- typo fix by [@&#8203;jiangying000](https://github.com/jiangying000)
in
[https://github.com/rust-lang/log/pull/529](https://github.com/rust-lang/log/pull/529)
- Remove dependency on cfg_if by
[@&#8203;EriKWDev](https://github.com/EriKWDev) in
[https://github.com/rust-lang/log/pull/536](https://github.com/rust-lang/log/pull/536)
- GitHub Workflows security hardening by
[@&#8203;sashashura](https://github.com/sashashura) in
[https://github.com/rust-lang/log/pull/538](https://github.com/rust-lang/log/pull/538)
- Fix build status badge by
[@&#8203;atouchet](https://github.com/atouchet) in
[https://github.com/rust-lang/log/pull/539](https://github.com/rust-lang/log/pull/539)
- Add call_logger to the documentation by
[@&#8203;a1ecbr0wn](https://github.com/a1ecbr0wn) in
[https://github.com/rust-lang/log/pull/547](https://github.com/rust-lang/log/pull/547)
- Remove build.rs file by
[@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in
[https://github.com/rust-lang/log/pull/543](https://github.com/rust-lang/log/pull/543)
- Use stable internals for key-value API by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/550](https://github.com/rust-lang/log/pull/550)
- Change wording of list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/553](https://github.com/rust-lang/log/pull/553)
- Add std-logger to list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/554](https://github.com/rust-lang/log/pull/554)
- Add `set_max_level_racy` and gate `set_max_level` by
[@&#8203;djkoloski](https://github.com/djkoloski) in
[https://github.com/rust-lang/log/pull/544](https://github.com/rust-lang/log/pull/544)
- \[doc] src/lib.rs : prefix an unused variable with an underscore by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/561](https://github.com/rust-lang/log/pull/561)
- \[doc] src/macros.rs : correct grammar errors of an example in lib
documentation by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/562](https://github.com/rust-lang/log/pull/562)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/ziyadedher/evm-bench).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
SilenLoc referenced this pull request in SilenLoc/TypeFast May 30, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [log](https://github.com/rust-lang/log) | dependencies | patch |
`0.4.17` -> `0.4.18` |

---

### Release Notes

<details>
<summary>rust-lang/log</summary>

###
[`v0.4.18`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#&#8203;0418---2023-05-28)

[Compare
Source](https://github.com/rust-lang/log/compare/0.4.17...0.4.18)

- fix markdown links (again) by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/513](https://github.com/rust-lang/log/pull/513)
- add cargo doc to workflow by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/515](https://github.com/rust-lang/log/pull/515)
- Apply Clippy lints by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/516](https://github.com/rust-lang/log/pull/516)
- Replace ad-hoc eq_ignore_ascii_case with slice::eq_ignore_ascii_case
by [@&#8203;glandium](https://github.com/glandium) in
[https://github.com/rust-lang/log/pull/519](https://github.com/rust-lang/log/pull/519)
- fix up windows targets by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/528](https://github.com/rust-lang/log/pull/528)
- typo fix by [@&#8203;jiangying000](https://github.com/jiangying000)
in
[https://github.com/rust-lang/log/pull/529](https://github.com/rust-lang/log/pull/529)
- Remove dependency on cfg_if by
[@&#8203;EriKWDev](https://github.com/EriKWDev) in
[https://github.com/rust-lang/log/pull/536](https://github.com/rust-lang/log/pull/536)
- GitHub Workflows security hardening by
[@&#8203;sashashura](https://github.com/sashashura) in
[https://github.com/rust-lang/log/pull/538](https://github.com/rust-lang/log/pull/538)
- Fix build status badge by
[@&#8203;atouchet](https://github.com/atouchet) in
[https://github.com/rust-lang/log/pull/539](https://github.com/rust-lang/log/pull/539)
- Add call_logger to the documentation by
[@&#8203;a1ecbr0wn](https://github.com/a1ecbr0wn) in
[https://github.com/rust-lang/log/pull/547](https://github.com/rust-lang/log/pull/547)
- Remove build.rs file by
[@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in
[https://github.com/rust-lang/log/pull/543](https://github.com/rust-lang/log/pull/543)
- Use stable internals for key-value API by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/550](https://github.com/rust-lang/log/pull/550)
- Change wording of list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/553](https://github.com/rust-lang/log/pull/553)
- Add std-logger to list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/554](https://github.com/rust-lang/log/pull/554)
- Add `set_max_level_racy` and gate `set_max_level` by
[@&#8203;djkoloski](https://github.com/djkoloski) in
[https://github.com/rust-lang/log/pull/544](https://github.com/rust-lang/log/pull/544)
- \[doc] src/lib.rs : prefix an unused variable with an underscore by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/561](https://github.com/rust-lang/log/pull/561)
- \[doc] src/macros.rs : correct grammar errors of an example in lib
documentation by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/562](https://github.com/rust-lang/log/pull/562)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/SilenLoc/TypeFast).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->
github-merge-queue bot referenced this pull request in knope-dev/knope May 31, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [log](https://github.com/rust-lang/log) | dependencies | patch |
`0.4.17` -> `0.4.18` |

---

### Release Notes

<details>
<summary>rust-lang/log</summary>

###
[`v0.4.18`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#&#8203;0418---2023-05-28)

[Compare
Source](https://github.com/rust-lang/log/compare/0.4.17...0.4.18)

- fix markdown links (again) by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/513](https://github.com/rust-lang/log/pull/513)
- add cargo doc to workflow by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/515](https://github.com/rust-lang/log/pull/515)
- Apply Clippy lints by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/516](https://github.com/rust-lang/log/pull/516)
- Replace ad-hoc eq_ignore_ascii_case with slice::eq_ignore_ascii_case
by [@&#8203;glandium](https://github.com/glandium) in
[https://github.com/rust-lang/log/pull/519](https://github.com/rust-lang/log/pull/519)
- fix up windows targets by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/528](https://github.com/rust-lang/log/pull/528)
- typo fix by [@&#8203;jiangying000](https://github.com/jiangying000)
in
[https://github.com/rust-lang/log/pull/529](https://github.com/rust-lang/log/pull/529)
- Remove dependency on cfg_if by
[@&#8203;EriKWDev](https://github.com/EriKWDev) in
[https://github.com/rust-lang/log/pull/536](https://github.com/rust-lang/log/pull/536)
- GitHub Workflows security hardening by
[@&#8203;sashashura](https://github.com/sashashura) in
[https://github.com/rust-lang/log/pull/538](https://github.com/rust-lang/log/pull/538)
- Fix build status badge by
[@&#8203;atouchet](https://github.com/atouchet) in
[https://github.com/rust-lang/log/pull/539](https://github.com/rust-lang/log/pull/539)
- Add call_logger to the documentation by
[@&#8203;a1ecbr0wn](https://github.com/a1ecbr0wn) in
[https://github.com/rust-lang/log/pull/547](https://github.com/rust-lang/log/pull/547)
- Remove build.rs file by
[@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in
[https://github.com/rust-lang/log/pull/543](https://github.com/rust-lang/log/pull/543)
- Use stable internals for key-value API by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/550](https://github.com/rust-lang/log/pull/550)
- Change wording of list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/553](https://github.com/rust-lang/log/pull/553)
- Add std-logger to list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/554](https://github.com/rust-lang/log/pull/554)
- Add `set_max_level_racy` and gate `set_max_level` by
[@&#8203;djkoloski](https://github.com/djkoloski) in
[https://github.com/rust-lang/log/pull/544](https://github.com/rust-lang/log/pull/544)
- \[doc] src/lib.rs : prefix an unused variable with an underscore by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/561](https://github.com/rust-lang/log/pull/561)
- \[doc] src/macros.rs : correct grammar errors of an example in lib
documentation by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/562](https://github.com/rust-lang/log/pull/562)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/knope-dev/knope).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
github-merge-queue bot referenced this pull request in knope-dev/knope May 31, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [log](https://github.com/rust-lang/log) | dependencies | patch |
`0.4.17` -> `0.4.18` |

---

### Release Notes

<details>
<summary>rust-lang/log</summary>

###
[`v0.4.18`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#&#8203;0418---2023-05-28)

[Compare
Source](https://github.com/rust-lang/log/compare/0.4.17...0.4.18)

- fix markdown links (again) by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/513](https://github.com/rust-lang/log/pull/513)
- add cargo doc to workflow by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/515](https://github.com/rust-lang/log/pull/515)
- Apply Clippy lints by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/516](https://github.com/rust-lang/log/pull/516)
- Replace ad-hoc eq_ignore_ascii_case with slice::eq_ignore_ascii_case
by [@&#8203;glandium](https://github.com/glandium) in
[https://github.com/rust-lang/log/pull/519](https://github.com/rust-lang/log/pull/519)
- fix up windows targets by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/528](https://github.com/rust-lang/log/pull/528)
- typo fix by [@&#8203;jiangying000](https://github.com/jiangying000)
in
[https://github.com/rust-lang/log/pull/529](https://github.com/rust-lang/log/pull/529)
- Remove dependency on cfg_if by
[@&#8203;EriKWDev](https://github.com/EriKWDev) in
[https://github.com/rust-lang/log/pull/536](https://github.com/rust-lang/log/pull/536)
- GitHub Workflows security hardening by
[@&#8203;sashashura](https://github.com/sashashura) in
[https://github.com/rust-lang/log/pull/538](https://github.com/rust-lang/log/pull/538)
- Fix build status badge by
[@&#8203;atouchet](https://github.com/atouchet) in
[https://github.com/rust-lang/log/pull/539](https://github.com/rust-lang/log/pull/539)
- Add call_logger to the documentation by
[@&#8203;a1ecbr0wn](https://github.com/a1ecbr0wn) in
[https://github.com/rust-lang/log/pull/547](https://github.com/rust-lang/log/pull/547)
- Remove build.rs file by
[@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in
[https://github.com/rust-lang/log/pull/543](https://github.com/rust-lang/log/pull/543)
- Use stable internals for key-value API by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/550](https://github.com/rust-lang/log/pull/550)
- Change wording of list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/553](https://github.com/rust-lang/log/pull/553)
- Add std-logger to list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/554](https://github.com/rust-lang/log/pull/554)
- Add `set_max_level_racy` and gate `set_max_level` by
[@&#8203;djkoloski](https://github.com/djkoloski) in
[https://github.com/rust-lang/log/pull/544](https://github.com/rust-lang/log/pull/544)
- \[doc] src/lib.rs : prefix an unused variable with an underscore by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/561](https://github.com/rust-lang/log/pull/561)
- \[doc] src/macros.rs : correct grammar errors of an example in lib
documentation by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/562](https://github.com/rust-lang/log/pull/562)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/knope-dev/knope).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
crapStone pushed a commit to Calciumdibromid/CaBr2 that referenced this pull request Jun 12, 2023
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [log](https://github.com/rust-lang/log) | dependencies | patch | `0.4.17` -> `0.4.19` |

---

### Release Notes

<details>
<summary>rust-lang/log</summary>

### [`v0.4.19`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#&#8203;0419---2023-06-10)

[Compare Source](rust-lang/log@0.4.18...0.4.19)

-   Use target_has_atomic instead of the old atomic_cas cfg by [@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in rust-lang/log#555
-   Put MSRV into Cargo.toml by [@&#8203;est31](https://github.com/est31) in rust-lang/log#557

### [`v0.4.18`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#&#8203;0418---2023-05-28)

[Compare Source](rust-lang/log@0.4.17...0.4.18)

-   fix markdown links (again) by [@&#8203;hellow554](https://github.com/hellow554) in rust-lang/log#513
-   add cargo doc to workflow by [@&#8203;hellow554](https://github.com/hellow554) in rust-lang/log#515
-   Apply Clippy lints by [@&#8203;hellow554](https://github.com/hellow554) in rust-lang/log#516
-   Replace ad-hoc eq_ignore_ascii_case with slice::eq_ignore_ascii_case by [@&#8203;glandium](https://github.com/glandium) in rust-lang/log#519
-   fix up windows targets by [@&#8203;KodrAus](https://github.com/KodrAus) in rust-lang/log#528
-   typo fix by [@&#8203;jiangying000](https://github.com/jiangying000) in rust-lang/log#529
-   Remove dependency on cfg_if by [@&#8203;EriKWDev](https://github.com/EriKWDev) in rust-lang/log#536
-   GitHub Workflows security hardening by [@&#8203;sashashura](https://github.com/sashashura) in rust-lang/log#538
-   Fix build status badge by [@&#8203;atouchet](https://github.com/atouchet) in rust-lang/log#539
-   Add call_logger to the documentation by [@&#8203;a1ecbr0wn](https://github.com/a1ecbr0wn) in rust-lang/log#547
-   Use stable internals for key-value API by [@&#8203;KodrAus](https://github.com/KodrAus) in rust-lang/log#550
-   Change wording of list of implementations by [@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in rust-lang/log#553
-   Add std-logger to list of implementations by [@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in rust-lang/log#554
-   Add `set_max_level_racy` and gate `set_max_level` by [@&#8203;djkoloski](https://github.com/djkoloski) in rust-lang/log#544
-   \[doc] src/lib.rs : prefix an unused variable with an underscore by [@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in rust-lang/log#561
-   \[doc] src/macros.rs :  correct  grammar errors of an example in lib documentation by [@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in rust-lang/log#562

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDUuNSIsInVwZGF0ZWRJblZlciI6IjM1LjExNS4yIiwidGFyZ2V0QnJhbmNoIjoiZGV2ZWxvcCJ9-->

Co-authored-by: cabr2-bot <cabr2.help@gmail.com>
Reviewed-on: https://codeberg.org/Calciumdibromid/CaBr2/pulls/1911
Reviewed-by: crapStone <crapstone@noreply.codeberg.org>
Co-authored-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org>
Co-committed-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org>
EFanZh pushed a commit to EFanZh/log that referenced this pull request Jul 23, 2023
* Optimization: Rm `debug!` in `find_version`
   printing all version iterated obviously doesn't help much in debugging
   in the problem but rather just confusing.
   
   Also this makes it hard for the compiler to optimize the iterators.
* Use let-else in `ManifestVisitor`
* Optimize `BinFile::preview_{bin, link}` for zero-copy
   Return `impl Display` that lazily format instead of allocating a `String`
* Optimize `infer_bin_dir_template`: Generate dir lazily
* Optimize `find_version`: Lazily clone `version_req` only on err
* Refactor `find_version`: Use `bool::then_some`
* Add dep either v1.8.0 to binstalk
* Optimize `GhCrateMeta::find`: Avoid cloning and `Vec` creation
   by using `Either`
* Optimize `ops::install::install_from_package`: Make it a regular fn
   instead of async fn since it does not `.await` on any async fn.
* Optimize `QuickInstall`: Rm field `target`
   since `Arc<Data>` already contains that field.
* Optimize `Fetcher`s: Extract new struct `TargetData`
   so that `Data` can be shared by all fetchers, regardless of the target.
* Optimize `QuickInstall`: Rm unused field `data`
* Optimize `Resolution::print`: Replace branching with conditional move

Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
fdkevin0 referenced this pull request in fdkevin0/fdkevin-cf-bot Aug 18, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [log](https://github.com/rust-lang/log) | dependencies | patch |
`0.4.17` -> `0.4.20` |

---

### Release Notes

<details>
<summary>rust-lang/log (log)</summary>

###
[`v0.4.20`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0420---2023-07-11)

[Compare
Source](https://github.com/rust-lang/log/compare/0.4.19...0.4.20)

- Remove rustversion dev-dependency by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/568](https://github.com/rust-lang/log/pull/568)
- Remove `local_inner_macros` usage by
[@&#8203;EFanZh](https://github.com/EFanZh) in
[https://github.com/rust-lang/log/pull/570](https://github.com/rust-lang/log/pull/570)

###
[`v0.4.19`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0419---2023-06-10)

[Compare
Source](https://github.com/rust-lang/log/compare/0.4.18...0.4.19)

- Use target_has_atomic instead of the old atomic_cas cfg by
[@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in
[https://github.com/rust-lang/log/pull/555](https://github.com/rust-lang/log/pull/555)
- Put MSRV into Cargo.toml by
[@&#8203;est31](https://github.com/est31) in
[https://github.com/rust-lang/log/pull/557](https://github.com/rust-lang/log/pull/557)

###
[`v0.4.18`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0418---2023-05-28)

[Compare
Source](https://github.com/rust-lang/log/compare/0.4.17...0.4.18)

- fix markdown links (again) by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/513](https://github.com/rust-lang/log/pull/513)
- add cargo doc to workflow by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/515](https://github.com/rust-lang/log/pull/515)
- Apply Clippy lints by
[@&#8203;hellow554](https://github.com/hellow554) in
[https://github.com/rust-lang/log/pull/516](https://github.com/rust-lang/log/pull/516)
- Replace ad-hoc eq_ignore_ascii_case with slice::eq_ignore_ascii_case
by [@&#8203;glandium](https://github.com/glandium) in
[https://github.com/rust-lang/log/pull/519](https://github.com/rust-lang/log/pull/519)
- fix up windows targets by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/528](https://github.com/rust-lang/log/pull/528)
- typo fix by [@&#8203;jiangying000](https://github.com/jiangying000)
in
[https://github.com/rust-lang/log/pull/529](https://github.com/rust-lang/log/pull/529)
- Remove dependency on cfg_if by
[@&#8203;EriKWDev](https://github.com/EriKWDev) in
[https://github.com/rust-lang/log/pull/536](https://github.com/rust-lang/log/pull/536)
- GitHub Workflows security hardening by
[@&#8203;sashashura](https://github.com/sashashura) in
[https://github.com/rust-lang/log/pull/538](https://github.com/rust-lang/log/pull/538)
- Fix build status badge by
[@&#8203;atouchet](https://github.com/atouchet) in
[https://github.com/rust-lang/log/pull/539](https://github.com/rust-lang/log/pull/539)
- Add call_logger to the documentation by
[@&#8203;a1ecbr0wn](https://github.com/a1ecbr0wn) in
[https://github.com/rust-lang/log/pull/547](https://github.com/rust-lang/log/pull/547)
- Use stable internals for key-value API by
[@&#8203;KodrAus](https://github.com/KodrAus) in
[https://github.com/rust-lang/log/pull/550](https://github.com/rust-lang/log/pull/550)
- Change wording of list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/553](https://github.com/rust-lang/log/pull/553)
- Add std-logger to list of implementations by
[@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in
[https://github.com/rust-lang/log/pull/554](https://github.com/rust-lang/log/pull/554)
- Add `set_max_level_racy` and gate `set_max_level` by
[@&#8203;djkoloski](https://github.com/djkoloski) in
[https://github.com/rust-lang/log/pull/544](https://github.com/rust-lang/log/pull/544)
- \[doc] src/lib.rs : prefix an unused variable with an underscore by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/561](https://github.com/rust-lang/log/pull/561)
- \[doc] src/macros.rs : correct grammar errors of an example in lib
documentation by
[@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in
[https://github.com/rust-lang/log/pull/562](https://github.com/rust-lang/log/pull/562)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/fdkevin0/fdkevin-cf-bot).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNi40MC4zIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
kodiakhq bot referenced this pull request in X-oss-byte/Nextjs Sep 22, 2023
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [log](https://github.com/rust-lang/log) | workspace.dependencies | patch | `0.4.17` -> `0.4.20` |

---

### Release Notes

<details>
<summary>rust-lang/log (log)</summary>

### [`v0.4.20`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0420---2023-07-11)

[Compare Source](https://github.com/rust-lang/log/compare/0.4.19...0.4.20)

-   Remove rustversion dev-dependency by [@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in [https://github.com/rust-lang/log/pull/568](https://github.com/rust-lang/log/pull/568)
-   Remove `local_inner_macros` usage by [@&#8203;EFanZh](https://github.com/EFanZh) in [https://github.com/rust-lang/log/pull/570](https://github.com/rust-lang/log/pull/570)

### [`v0.4.19`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0419---2023-06-10)

[Compare Source](https://github.com/rust-lang/log/compare/0.4.18...0.4.19)

-   Use target_has_atomic instead of the old atomic_cas cfg by [@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in [https://github.com/rust-lang/log/pull/555](https://github.com/rust-lang/log/pull/555)
-   Put MSRV into Cargo.toml by [@&#8203;est31](https://github.com/est31) in [https://github.com/rust-lang/log/pull/557](https://github.com/rust-lang/log/pull/557)

### [`v0.4.18`](https://github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0418---2023-05-28)

[Compare Source](https://github.com/rust-lang/log/compare/0.4.17...0.4.18)

-   fix markdown links (again) by [@&#8203;hellow554](https://github.com/hellow554) in [https://github.com/rust-lang/log/pull/513](https://github.com/rust-lang/log/pull/513)
-   add cargo doc to workflow by [@&#8203;hellow554](https://github.com/hellow554) in [https://github.com/rust-lang/log/pull/515](https://github.com/rust-lang/log/pull/515)
-   Apply Clippy lints by [@&#8203;hellow554](https://github.com/hellow554) in [https://github.com/rust-lang/log/pull/516](https://github.com/rust-lang/log/pull/516)
-   Replace ad-hoc eq_ignore_ascii_case with slice::eq_ignore_ascii_case by [@&#8203;glandium](https://github.com/glandium) in [https://github.com/rust-lang/log/pull/519](https://github.com/rust-lang/log/pull/519)
-   fix up windows targets by [@&#8203;KodrAus](https://github.com/KodrAus) in [https://github.com/rust-lang/log/pull/528](https://github.com/rust-lang/log/pull/528)
-   typo fix by [@&#8203;jiangying000](https://github.com/jiangying000) in [https://github.com/rust-lang/log/pull/529](https://github.com/rust-lang/log/pull/529)
-   Remove dependency on cfg_if by [@&#8203;EriKWDev](https://github.com/EriKWDev) in [https://github.com/rust-lang/log/pull/536](https://github.com/rust-lang/log/pull/536)
-   GitHub Workflows security hardening by [@&#8203;sashashura](https://github.com/sashashura) in [https://github.com/rust-lang/log/pull/538](https://github.com/rust-lang/log/pull/538)
-   Fix build status badge by [@&#8203;atouchet](https://github.com/atouchet) in [https://github.com/rust-lang/log/pull/539](https://github.com/rust-lang/log/pull/539)
-   Add call_logger to the documentation by [@&#8203;a1ecbr0wn](https://github.com/a1ecbr0wn) in [https://github.com/rust-lang/log/pull/547](https://github.com/rust-lang/log/pull/547)
-   Use stable internals for key-value API by [@&#8203;KodrAus](https://github.com/KodrAus) in [https://github.com/rust-lang/log/pull/550](https://github.com/rust-lang/log/pull/550)
-   Change wording of list of implementations by [@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in [https://github.com/rust-lang/log/pull/553](https://github.com/rust-lang/log/pull/553)
-   Add std-logger to list of implementations by [@&#8203;Thomasdezeeuw](https://github.com/Thomasdezeeuw) in [https://github.com/rust-lang/log/pull/554](https://github.com/rust-lang/log/pull/554)
-   Add `set_max_level_racy` and gate `set_max_level` by [@&#8203;djkoloski](https://github.com/djkoloski) in [https://github.com/rust-lang/log/pull/544](https://github.com/rust-lang/log/pull/544)
-   \[doc] src/lib.rs : prefix an unused variable with an underscore by [@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in [https://github.com/rust-lang/log/pull/561](https://github.com/rust-lang/log/pull/561)
-   \[doc] src/macros.rs :  correct  grammar errors of an example in lib documentation by [@&#8203;OccupyMars2025](https://github.com/OccupyMars2025) in [https://github.com/rust-lang/log/pull/562](https://github.com/rust-lang/log/pull/562)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/sammyfilly/Nextjs).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

AtomicUsize has an unsound Sync impl
3 participants