1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2025-06-15 13:50:27 +02:00
Commit Graph

1859 Commits

Author SHA1 Message Date
b57319bb20 vi: control-flow-basics/macros.md translations (#2111) 2024-06-10 22:11:43 -04:00
26e1d77b3e Add note about !Sync (#2138)
This is key to the validity of how Cell and RefCell allow safe interior
mutability.
2024-06-10 15:35:13 +01:00
c45b291851 Clarify what "undefined behavior" means in arithmetic.md (#2139)
Undefined behavior does not just mean that the behavior can be different
on different platforms. It is much worse than that: the runtime behavior
can be completely nonsensical since the whole program has undefined
behavior.

The compiler will optimizer as if there is no undefined behavior and
will can lead to strange situations as the compiler concludes that
things like `a > a + 1000` can never be reached if `a` is a signed 8-bit
value (since reaching it would trigger undefined behavior).
2024-06-10 10:18:25 -04:00
4c61cafda8 Fix missing full stop in benefits.md (#2140) 2024-06-10 10:16:10 -04:00
6c5287c447 uk: Glossary and Credits (#2133)
Glossary and Credits

Signed-off-by: Andriy Redko <drreta@gmail.com>
2024-06-10 10:56:30 +01:00
6b17ce7125 cargo: bump the patch group with 4 updates (#2137)
Bumps the patch group with 4 updates:
[clap](https://github.com/clap-rs/clap),
[regex](https://github.com/rust-lang/regex),
[cxx](https://github.com/dtolnay/cxx) and
[cxx-build](https://github.com/dtolnay/cxx).

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-10 09:39:27 +01:00
742df51d23 cargo: bump cc from 1.0.98 to 1.0.99 in /src/bare-metal/aps/examples in the patch group (#2136)
Bumps the patch group in /src/bare-metal/aps/examples with 1 update:
[cc](https://github.com/rust-lang/cc-rs).

Updates `cc` from 1.0.98 to 1.0.99

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-10 09:38:59 +01:00
f71935e0cc cargo: bump cc from 1.0.98 to 1.0.99 in /src/exercises/bare-metal/rtc in the patch group (#2135)
Bumps the patch group in /src/exercises/bare-metal/rtc with 1 update:
[cc](https://github.com/rust-lang/cc-rs).

Updates `cc` from 1.0.98 to 1.0.99

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-10 09:38:36 +01:00
53daee6993 build(deps): bump crate-ci/typos from 1.21.0 to 1.22.3 (#2134)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.21.0 to
1.22.3.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-10 09:38:06 +01:00
412eac6689 Clarify the suggested steps in the pin page (#2130)
The speaker notes suggest an evolution of the code to support a periodic
timer, but the last step was under-specified.

(As mentioned by @fw-immunant and referenced in #1536)
2024-06-07 16:39:14 -04:00
b69b68f5e2 Remove error handling from protobuf exercise (#2109) 2024-06-07 09:13:11 -07:00
511e5f0dbf Add slide about Result to error handling section (#2123) 2024-06-07 09:12:51 -07:00
fbeda7216b Adjust timing of standard library slides (#2125) 2024-06-07 09:11:57 -07:00
7c48cacf82 Fix dead link in glossary (#2114)
Fixes #2110. I think `references/strings.html` is a better choice as it
covers both String and &str.
2024-06-05 10:21:32 -04:00
a4d80d3ba0 uk: Concurrency (afternoon) (#2117)
uk: Concurrency (afternoon)

Signed-off-by: Andriy Redko <drreta@gmail.com>
2024-06-04 11:10:16 +01:00
5f72514f04 Fix closing details tag (#2116) 2024-06-03 10:54:40 -04:00
5f4ff0ab09 List expressions which are actually explained on this page (#2115)
`match` expressions were explained on an earlier page.
2024-06-03 10:54:16 -04:00
d09041fb91 cargo: bump tokio from 1.37.0 to 1.38.0 in the minor group (#2113)
Bumps the minor group with 1 update:
[tokio](https://github.com/tokio-rs/tokio).

Updates `tokio` from 1.37.0 to 1.38.0

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-03 10:43:11 +01:00
7d889d3248 ja: Merge CR v.2 Japanese translation back into main (#2103)
This PR merges the Japanese (ja) v.2 translation back to main.
This requires just a syntactical review, as the partial PRs into this
branch were reviewed already.

You can skim this PR with the [GitHub CLI](https://cli.github.com/):

gh pr diff 2103 | bat -l patch

#1463 #652

---------

Co-authored-by: Kanta Yamaoka (山岡幹太) <49053649+kantasv@users.noreply.github.com>
Co-authored-by: Hidenori Kobayashi <hidenorik@chromium.org>
2024-05-31 10:58:06 -07:00
59bf3bdcfb Add a slide introducing dyn Trait in Generics (#2108)
I've been thinking it'd be simpler to introduce `dyn Trait` via `&dyn
Trait` rather than waiting for the smart pointers section and `Box<dyn
Trait>`. This PR adds a slide to the Generics section that introduces
`&dyn Trait` and compares it to `&impl Trait`, juxtaposing
monomorphization and static dispatch against type-erasure and dynamic
dispatch. I've then updated the existing trait object slide to call back
to the earlier introduction, and call out that using `Box<dyn Trait>`
gives you an owned trait object rather than a borrowed one.
2024-05-31 09:59:36 -04:00
06264e8cc7 Add a note that shared references are Copy (#2107)
Add a note to the `Copy` slide noting that shared references are `Copy`.
A student asked about this today, and it's something I want to remember
to mention in future classes.
2024-05-30 10:19:33 -04:00
8e668cdadd Revert "Saving the playground state in local storage (#1942)" (#2106)
This reverts commit e2cad7da8d.

Fixes #2105, #2104.
2024-05-30 02:15:07 +00:00
13d69007d4 Clarify speaker note in control-flow-basics (#2102)
Fixes #2096.
2024-05-29 13:08:06 -04:00
663018751d Fix bare metal microcontroller part number. (#2065)
Small update, the microb:bit V2 has the nRF52833, the nRF51822 was from
V1.
2024-05-28 11:52:49 +00:00
634258ccf0 uk: Concurrency (morning) (#2097)
uk: Concurrency (morning)

Signed-off-by: Andriy Redko <drreta@gmail.com>
2024-05-28 11:27:45 +01:00
a8fc72ef2f fr: completing and reviewing the translation of section 2. (#2032)
fr: completing and reviewing the translation of section 2.
2024-05-28 11:59:52 +02:00
3d8e71f2fc vi: Refresh Vietnamese translation (#2061)
The English contents has changed, leading to untranslated session
outline and schedule because the msgid no longer match the original
contents. Additionally, incorrect file names are listed in the comment.
This PR follow the steps outlined in [Refreshing an Existing
Translation](https://github.com/google/comprehensive-rust/blob/main/TRANSLATIONS.md#refreshing-an-existing-translation)
to refresh the Vietnamese translation file. After the update, some
translated session outlines were no longer appropriated, so this PR also
updates all of them
2024-05-28 11:54:57 +02:00
e2cad7da8d Saving the playground state in local storage (#1942)
#1476 issue. Updated the function call(`getCodeFromPlayground`) in
`save-playground.js` file from `pagehide` event to change event in ace
editor.

---------

Co-authored-by: Martin Geisler <mgeisler@google.com>
2024-05-28 09:51:41 +00:00
83b31e19af cargo: bump the patch group with 2 updates (#2099)
Bumps the patch group with 2 updates:
[serde](https://github.com/serde-rs/serde) and
[tokio-websockets](https://github.com/Gelbpunkt/tokio-websockets).

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-28 10:26:34 +01:00
a3f31e795d cargo: bump nrf52833-hal from 0.17.1 to 0.18.0 in /src/bare-metal/microcontrollers/examples in the minor group (#2098)
Bumps the minor group in /src/bare-metal/microcontrollers/examples with
1 update: [nrf52833-hal](https://github.com/nrf-rs/nrf-hal).

Updates `nrf52833-hal` from 0.17.1 to 0.18.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/nrf-rs/nrf-hal/blob/master/CHANGELOG.md">nrf52833-hal's
changelog</a>.</em></p>
<blockquote>
<h2>[0.18.0]</h2>
<h3>Breaking changes</h3>
<ul>
<li>Updated <code>nrf-usbd</code> to 0.3.0. (<a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/460">#460</a>)</li>
</ul>
<h3>New features</h3>
<ul>
<li>Added support for nRF52805 (<a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/422">#422</a>).</li>
<li>Added implementation of RTIC <code>Monotonic</code> for RTC and
TIMER, behind new <code>monotonic</code> feature (<a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/427">#427</a>).</li>
</ul>
<p><a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/422">#422</a>:
<a
href="https://redirect.github.com/nrf-rs/nrf-hal/pull/422">nrf-rs/nrf-hal#422</a>
<a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/427">#427</a>:
<a
href="https://redirect.github.com/nrf-rs/nrf-hal/pull/427">nrf-rs/nrf-hal#427</a>
<a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/460">#460</a>:
<a
href="https://redirect.github.com/nrf-rs/nrf-hal/pull/440">nrf-rs/nrf-hal#440</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="997d0bd27a"><code>997d0bd</code></a>
Merge pull request <a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/476">#476</a>
from nrf-rs/release</li>
<li><a
href="bb7aef2593"><code>bb7aef2</code></a>
Prepare for 0.18.0 release.</li>
<li><a
href="090ce0ec9a"><code>090ce0e</code></a>
Merge pull request <a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/427">#427</a>
from Kyrne/master</li>
<li><a
href="4c00992a68"><code>4c00992</code></a>
Use consistent feature name.</li>
<li><a
href="eb8b34a73c"><code>eb8b34a</code></a>
Merge pull request <a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/477">#477</a>
from nrf-rs/buildfix</li>
<li><a
href="ee11451354"><code>ee11451</code></a>
rename user facing feature to rtic-monotonic</li>
<li><a
href="c8bf535d7b"><code>c8bf535</code></a>
Correct docs (<a
href="https://redirect.github.com/nrf-rs/nrf-hal/issues/18">#18</a>)</li>
<li><a
href="3c353da5f0"><code>3c353da</code></a>
Monotonic doesn't build on nrf51 or nrf52832 so remove the feature.</li>
<li><a
href="8eff0e5fc4"><code>8eff0e5</code></a>
Format doc comments and fix typos.</li>
<li><a
href="bb1bb77b30"><code>bb1bb77</code></a>
Fix feature conditions.</li>
<li>Additional commits viewable in <a
href="https://github.com/nrf-rs/nrf-hal/compare/v0.17.1...v0.18.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=nrf52833-hal&package-manager=cargo&previous-version=0.17.1&new-version=0.18.0)](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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-28 10:26:02 +01:00
f337c0f70d Upgrade dependencies in github actions (#2101) 2024-05-28 10:49:12 +02:00
6115a12554 Fix missing lifetime error in dangling reference example (#2093)
The example of returning a reference to a local variable doesn't compile
due to a missing lifetime specifier, which isn't what we're trying to
demonstrate with that example. I usually add the lifetime in manually in
order to demonstrate the compiler error, but it occurs to me that if we
make the argument a reference we can sneakily get the correct compiler
error without having to introduce the lifetime syntax.
2024-05-23 23:27:10 +00:00
5ce6a9bd72 Downgrade cortex-m-rt to 0.7.3. (#2095)
0.7.4 was yanked.

Fixes #2094.
2024-05-23 15:14:05 -04:00
3d999663ac Add @AlexandraImbrisca to CODEOWNERS (#2091)
Co-authored-by: Martin Geisler <martin@geisler.net>
2024-05-22 11:17:25 +02:00
23c5f66758 Add razvanm CODEOWNERS for ro.po (#2090) 2024-05-22 11:15:40 +02:00
6b1b024a47 Update CODEOWNERS with new vi.po reviewer (#2051)
Ignored unrelated failing tests.
2024-05-21 20:30:17 -07:00
27a2b3c04a zh-TW: Merge CR v2 translations for Concurrency (#2082)
This PR merges the Chinese Traditional (zh-TW) CR v.2 translation
(Concurrency) back to main.
This requires just a syntactical review, as the partial PRs into this
branch were reviewed already.

You can skim this PR with the [GitHub CLI](https://cli.github.com/):

```
gh pr diff 2082 | bat -l patch
```

---------

Co-authored-by: Victor Hsieh <victorhsieh@gmail.com>
Co-authored-by: Ming-Ying Chung <itsmings@gmail.com>
Co-authored-by: Jonathan Hao <johnathan79717@gmail.com>
2024-05-21 20:27:40 -07:00
25d234b7f8 ro: Refresh Romanian translation (#1991)
Some more updates to the translation.

Signed-off-by: Mihai Preda <mpreda@google.com>
Signed-off-by: Razvan Stefanescu <rstefanescu@google.com>
2024-05-21 14:19:49 +02:00
225403ea27 uk: Bare-Metal Rust (afternoon) (#2089)
uk: Bare-Metal Rust (afternoon), finalize few leftovers
2024-05-21 10:23:24 +01:00
545fed4bdf uk: Bare-Metal Rust (afternoon) (#2088)
uk: Bare-Metal Rust (afternoon)

Signed-off-by: Andriy Redko <drreta@gmail.com>
2024-05-20 20:40:52 +01:00
82b60f27a0 cargo: bump the patch group with 4 updates (#2087)
Bumps the patch group with 4 updates:
[anyhow](https://github.com/dtolnay/anyhow),
[mdbook](https://github.com/rust-lang/mdBook),
[serde](https://github.com/serde-rs/serde) and
[thiserror](https://github.com/dtolnay/thiserror).

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 10:06:01 +01:00
fe655be467 cargo: bump pulldown-cmark from 0.10.3 to 0.11.0 in the minor group (#2086)
Bumps the minor group with 1 update:
[pulldown-cmark](https://github.com/raphlinus/pulldown-cmark).

Updates `pulldown-cmark` from 0.10.3 to 0.11.0

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 09:36:02 +01:00
d5d2c18157 cargo: bump cc from 1.0.97 to 1.0.98 in /src/exercises/bare-metal/rtc in the patch group (#2084)
Bumps the patch group in /src/exercises/bare-metal/rtc with 1 update:
[cc](https://github.com/rust-lang/cc-rs).

Updates `cc` from 1.0.97 to 1.0.98
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/cc-rs/releases">cc's
releases</a>.</em></p>
<blockquote>
<h2>1.0.98</h2>
<h2>What's Changed</h2>
<ul>
<li>Cleanup some deprecated, unused allows by <a
href="https://github.com/klensy"><code>@​klensy</code></a> in <a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1067">rust-lang/cc-rs#1067</a></li>
<li>Fix paths on Mac Catalyst by <a
href="https://github.com/madsmtm"><code>@​madsmtm</code></a> in <a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1070">rust-lang/cc-rs#1070</a></li>
<li>Fix detect_compiler_family.c not being created by <a
href="https://github.com/Jake-Shadle"><code>@​Jake-Shadle</code></a> in
<a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1072">rust-lang/cc-rs#1072</a></li>
<li>Release cc 1.0.98 by <a
href="https://github.com/NobodyXu"><code>@​NobodyXu</code></a> in <a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1073">rust-lang/cc-rs#1073</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/klensy"><code>@​klensy</code></a> made
their first contribution in <a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1067">rust-lang/cc-rs#1067</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/rust-lang/cc-rs/compare/1.0.97...1.0.98">https://github.com/rust-lang/cc-rs/compare/1.0.97...1.0.98</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3ba23569a6"><code>3ba2356</code></a>
Release cc 1.0.98 (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1073">#1073</a>)</li>
<li><a
href="8f6d07f825"><code>8f6d07f</code></a>
Fix detect_compiler_family.c not being created (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1072">#1072</a>)</li>
<li><a
href="61b81c8b4c"><code>61b81c8</code></a>
Fix paths on Mac Catalyst (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1070">#1070</a>)</li>
<li><a
href="b7455eb81c"><code>b7455eb</code></a>
Cleanup some deprecated, unused allows (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1067">#1067</a>)</li>
<li>See full diff in <a
href="https://github.com/rust-lang/cc-rs/compare/1.0.97...1.0.98">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cc&package-manager=cargo&previous-version=1.0.97&new-version=1.0.98)](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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 09:35:32 +01:00
990ad8f973 cargo: bump cc from 1.0.97 to 1.0.98 in /src/bare-metal/aps/examples in the patch group (#2085)
Bumps the patch group in /src/bare-metal/aps/examples with 1 update:
[cc](https://github.com/rust-lang/cc-rs).

Updates `cc` from 1.0.97 to 1.0.98
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/cc-rs/releases">cc's
releases</a>.</em></p>
<blockquote>
<h2>1.0.98</h2>
<h2>What's Changed</h2>
<ul>
<li>Cleanup some deprecated, unused allows by <a
href="https://github.com/klensy"><code>@​klensy</code></a> in <a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1067">rust-lang/cc-rs#1067</a></li>
<li>Fix paths on Mac Catalyst by <a
href="https://github.com/madsmtm"><code>@​madsmtm</code></a> in <a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1070">rust-lang/cc-rs#1070</a></li>
<li>Fix detect_compiler_family.c not being created by <a
href="https://github.com/Jake-Shadle"><code>@​Jake-Shadle</code></a> in
<a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1072">rust-lang/cc-rs#1072</a></li>
<li>Release cc 1.0.98 by <a
href="https://github.com/NobodyXu"><code>@​NobodyXu</code></a> in <a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1073">rust-lang/cc-rs#1073</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/klensy"><code>@​klensy</code></a> made
their first contribution in <a
href="https://redirect.github.com/rust-lang/cc-rs/pull/1067">rust-lang/cc-rs#1067</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/rust-lang/cc-rs/compare/1.0.97...1.0.98">https://github.com/rust-lang/cc-rs/compare/1.0.97...1.0.98</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3ba23569a6"><code>3ba2356</code></a>
Release cc 1.0.98 (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1073">#1073</a>)</li>
<li><a
href="8f6d07f825"><code>8f6d07f</code></a>
Fix detect_compiler_family.c not being created (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1072">#1072</a>)</li>
<li><a
href="61b81c8b4c"><code>61b81c8</code></a>
Fix paths on Mac Catalyst (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1070">#1070</a>)</li>
<li><a
href="b7455eb81c"><code>b7455eb</code></a>
Cleanup some deprecated, unused allows (<a
href="https://redirect.github.com/rust-lang/cc-rs/issues/1067">#1067</a>)</li>
<li>See full diff in <a
href="https://github.com/rust-lang/cc-rs/compare/1.0.97...1.0.98">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cc&package-manager=cargo&previous-version=1.0.97&new-version=1.0.98)](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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 09:35:18 +01:00
889a4cbbee Fix the debug exercise in the "Borrowing a Value" section (#2083)
Trying to reproduce this RVO shows that actually the optimization that
is used here is simple inlining. Once inlining is disabled, the
addresses change, even with `-O -C opt-level=3`.

The return of the values is also never changed to an "efficient memcpy",
but instead was returned on eax+edx, although this result is of course
specific to the calling convention of the platform ABI, but no memcpy on
the most popular amd64 architecture.

I don't think it's educationally important to teach RVO here, so I
didn't go into any length trying to force Rust to do a real RVO (passing
Point address into the function on the assembly level, so the function
can fill in the addition). In my opinion the only important thing is,
that if a student is actually clicking the Playground link and looks
into the assembly, then our description should match the generated code.
That's why I just fixed the content instead of trying to fix the example
to be RVO.
2024-05-17 10:07:47 -04:00
cf057e1965 ru: Translate tuples-and-arrays segment and more (#2081)
* Update translation file with the new (2024-05-04) `messages.pot`
version;
* Translate `src/types-and-values.md`;
* Translate `src/types-and-values/*.md`;
* Revise a number of fuzzy translations;
* Fix a markdown link in control-flow-basics;
* Preserve some source code in `msgstr` that shouldn't be translated;
* Translate few schedule and welcome pages items;
* Mention an alternative translation for destructuring: распаковка;
* Translate session timings, use case endings with numbers;

#326
2024-05-17 11:29:45 +01:00
1aa3de05c5 uk: Bare-Metal Rust (morning) (#2046)
uk: Bare-Metal Rust (morning)

---------

Signed-off-by: Andriy Redko <drreta@gmail.com>
2024-05-17 11:27:48 +01:00
f976ca88c7 Adding crowdin.yml to .gitignore (#2079)
To remove the risk of committing API keys while testing the Crowdin
integration.
2024-05-14 18:43:04 +00:00
a1d43bc74b cargo: bump the patch group with 7 updates (#2077)
Bumps the patch group with 7 updates:

| Package | From | To |
| --- | --- | --- |
| [anyhow](https://github.com/dtolnay/anyhow) | `1.0.82` | `1.0.83` |
| [serde](https://github.com/serde-rs/serde) | `1.0.200` | `1.0.201` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.116` | `1.0.117`
|
| [zerocopy](https://github.com/google/zerocopy) | `0.7.33` | `0.7.34` |
| [thiserror](https://github.com/dtolnay/thiserror) | `1.0.59` |
`1.0.60` |
| [cxx](https://github.com/dtolnay/cxx) | `1.0.121` | `1.0.122` |
| [cxx-build](https://github.com/dtolnay/cxx) | `1.0.121` | `1.0.122` |

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-13 10:28:26 +01:00
cf0c23d842 cargo: bump cc from 1.0.96 to 1.0.97 in /src/bare-metal/aps/examples in the patch group (#2076)
Bumps the patch group in /src/bare-metal/aps/examples with 1 update:
[cc](https://github.com/rust-lang/cc-rs).

Updates `cc` from 1.0.96 to 1.0.97

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-13 10:27:43 +01:00