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

2230 Commits

Author SHA1 Message Date
4012e2a883 Update if.md (#2286)
The original phrasing may imply that you have to always terminated a
`if` expression with `;`. But the real reason that we have to do that is
because we are using it in a `let` statement here, and `let` statement
has to be terminated by `;`

---------

Co-authored-by: Martin Geisler <martin@geisler.net>
2024-08-20 08:15:39 +00:00
127202d591 Update trait-bounds.md (#2295)
We are going to talk about `impl Trait` in the very next slide. Let's
don't duplicate it here and complicate the flow?
2024-08-20 08:08:32 +00:00
56ae649097 cargo: bump the patch group with 6 updates (#2291)
Bumps the patch group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [clap](https://github.com/clap-rs/clap) | `4.5.15` | `4.5.16` |
| [serde](https://github.com/serde-rs/serde) | `1.0.206` | `1.0.208` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.124` | `1.0.125`
|
| [tokio](https://github.com/tokio-rs/tokio) | `1.39.2` | `1.39.3` |
| [cxx](https://github.com/dtolnay/cxx) | `1.0.124` | `1.0.126` |
| [cxx-build](https://github.com/dtolnay/cxx) | `1.0.124` | `1.0.126` |

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-19 12:14:42 +01:00
64bf5534f7 cargo: bump cc from 1.1.10 to 1.1.13 in /src/bare-metal/aps/examples in the patch group (#2289)
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.1.10 to 1.1.13

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-19 12:12:43 +01:00
82c97a091a cargo: bump cc from 1.1.10 to 1.1.13 in /src/exercises/bare-metal/rtc in the patch group (#2288)
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.1.10 to 1.1.13

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-19 12:12:25 +01:00
4d9e99369f ja: Fix file path to avoid build error (#2285)
- This PR fixes a wrong filepath (`configure-*` → `configuring-*`) in
the Japanese book.
- I've encountered an error below when I was building the book in
Japanese.

```bash
$ MDBOOK_BOOK__LANGUAGE=ja mdbook build -d book/ja
2024-08-15 21:52:56 [INFO] (mdbook::book): Book building has started
2024-08-15 21:52:57 [INFO] (mdbook::book): Running the exerciser backend
2024-08-15 21:52:57 [INFO] (mdbook::renderer): Invoking the "exerciser" renderer
2024-08-15 21:52:57 [INFO] (mdbook::book): Running the html backend
2024-08-15 21:52:58 [INFO] (mdbook::book): Running the linkcheck backend
2024-08-15 21:52:58 [INFO] (mdbook::renderer): Invoking the "linkcheck" renderer
error: File not found: ../configure-gnrt-config-toml.md
  ┌─ chromium/adding-third-party-crates/resolving-problems/build-scripts-which-generate-code.md:5:23
  │
5 │ もしファイルが作成されるようになっていたら、[`gnrt_config.toml`](../configure-gnrt-config-toml.md) を変更して、クレートに `build-script-outputs` を追加します。これが推移的依存関係(Chromium コードが直接依存すべきでない依存関係)の場合は、`allow-first-party-usage=false` も追加します。このファイルには、すでにいくつかの例が含まれています。
  │                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File not found: ../configure-gnrt-config-toml.md

Error: One or more incorrect links
2024-08-15 21:52:58 [ERROR] (mdbook::renderer): Renderer exited with non-zero return code.
2024-08-15 21:52:58 [ERROR] (mdbook::utils): Error: Rendering failed
2024-08-15 21:52:58 [ERROR] (mdbook::utils):    Caused By: The "linkcheck" renderer failed
```
2024-08-15 22:42:41 +09:00
dfd08ebf93 concurrency: avoid 1.. loops (#2280)
Fixes #2060. Note that this does not change the "blocking executor"
example because on that slide it is worthwhile to sleep for 1 * 10ms on
the first iteration and so on. But we shouldn't use one-indexed
inclusive loops when the only significant feature of the loop is its
iteration count.
2024-08-13 14:38:22 +00:00
e9fce0417e box.md: clarify that box provides needed indirection (#2283)
The last to-do for #64.
2024-08-13 14:29:11 +00:00
3b349d830c from-and-into.md: mention losslessness and infallibility (#2281)
Fixes #2069.
2024-08-13 14:28:22 +00:00
991bd8ceb7 threads: do not refer to "daemon" threads (#2282)
This is the last remaining fix left from #63.
2024-08-13 14:28:08 +00:00
f6a3c07ea3 operators.md: mention Not trait's un-C-like behavior (#2279)
Fixes #2072.
2024-08-13 14:27:49 +00:00
fa6055c297 break/continue: don't say "for loop" (#2277)
See #2042.
2024-08-13 14:27:08 +00:00
6d743dac5a Change let-else example to demonstrate undesirable nesting (#2276)
Fixes #2070.

Previously we showed a forcibly de-nested version using both let and
if-let. this is not a construction that new learners of Rust are likely
to have seen or written, while nesting if-let is closer to patterns that
appear in other languages and better motivates the de-nesting
transformation to let-else
2024-08-13 14:26:52 +00:00
da9f57a462 cargo: bump cc from 1.1.7 to 1.1.10 in /src/bare-metal/aps/examples in the patch group (#2272)
Bumps the patch group in /src/bare-metal/aps/examples with 1 update:
[cc](https://github.com/rust-lang/cc-rs).
2024-08-12 10:58:59 -04:00
a3838975b6 cargo: bump the minor group with 2 updates (#2273)
Bumps the minor group with 2 updates:
[scraper](https://github.com/causal-agent/scraper) and
[tempfile](https://github.com/Stebalien/tempfile).
2024-08-12 10:58:35 -04:00
9cc9ca4e74 cargo: bump the patch group with 3 updates (#2274)
Bumps the patch group with 3 updates:
[clap](https://github.com/clap-rs/clap),
[serde](https://github.com/serde-rs/serde) and
[serde_json](https://github.com/serde-rs/json).
2024-08-12 10:57:51 -04:00
a4daeca3ad cargo: bump microbit-v2 from 0.15.0 to 0.15.1 in /src/bare-metal/microcontrollers/examples in the patch group (#2275)
Bumps the patch group in /src/bare-metal/microcontrollers/examples with
1 update: [microbit-v2](https://github.com/nrf-rs/microbit).
2024-08-12 10:57:21 -04:00
cda5d6c71b cargo: bump the patch group in /src/exercises/bare-metal/rtc with 2 updates (#2271)
Bumps the patch group in /src/exercises/bare-metal/rtc with 2 updates:
[arm-gic](https://github.com/google/arm-gic) and
[cc](https://github.com/rust-lang/cc-rs).
2024-08-12 10:56:43 -04:00
37738ff199 cargo: bump microbit-v2 from 0.15.0 to 0.15.1 in /src/exercises/bare-metal/compass in the patch group (#2270)
Bumps the patch group in /src/exercises/bare-metal/compass with 1
update: [microbit-v2](https://github.com/nrf-rs/microbit).
2024-08-12 10:56:06 -04:00
76857d76a1 Simplify the select! example (#2154)
@mgeisler PTAL, as I believe you were the one to suggest this change in
#1536.

This leaves some detail about `select!` out, but that might be just as
well. Some of that detail is addressed in the `pin!` pitfall, later.
2024-08-09 08:21:00 -04:00
cae5cb05e8 Remove course-schedule workflows (#2268)
These are complicated and not especially useful.
2024-08-08 16:07:03 -04:00
bbc2308d86 [fa] day 2 afternoon (#2267) 2024-08-08 12:44:31 +03:30
d297db97fb [fa] Day 2 morning (#2266) 2024-08-06 13:35:38 +03:30
697df5599e Update "Rust advanced testing" links to point at the hosted book version (#2265)
Following up on @mgeisler's comment in
https://github.com/google/comprehensive-rust/pull/2029
2024-08-05 14:11:24 +00:00
240132eabd build(deps): bump crate-ci/typos from 1.23.5 to 1.23.6 (#2264)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.23.5 to
1.23.6.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 11:30:54 +01:00
9894e4a705 cargo: bump cc from 1.1.6 to 1.1.7 in /src/exercises/bare-metal/rtc in the patch group (#2263)
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.1.6 to 1.1.7

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 11:30:36 +01:00
4bb61c5cbe cargo: bump the patch group with 3 updates (#2262)
Bumps the patch group with 3 updates:
[clap](https://github.com/clap-rs/clap),
[regex](https://github.com/rust-lang/regex) and
[serde_json](https://github.com/serde-rs/json).

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 11:30:15 +01:00
b3ab07e692 cargo: bump cc from 1.1.6 to 1.1.7 in /src/bare-metal/aps/examples in the patch group (#2260)
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.1.6 to 1.1.7

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 11:29:47 +01:00
d163e5a603 cargo: bump the minor group with 3 updates (#2261)
Bumps the minor group with 3 updates:
[tempfile](https://github.com/Stebalien/tempfile),
[tokio](https://github.com/tokio-rs/tokio) 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>
Co-authored-by: Andrew Walbran <qwandor@google.com>
2024-08-05 11:24:26 +01:00
75a039aefc fix(fa.po):Day1:Morning (#2259) 2024-08-02 16:58:21 -04:00
655b553abd [fa] day 1 (#2252)
https://github.com/google/comprehensive-rust/pull/2238 CLA fix
2024-07-30 22:31:04 +03:30
32230f19f0 Test that correct value is returned for height change (#2164) 2024-07-29 10:16:51 -04:00
b3bbf6ceda Bump crate-ci/typos from 1.23.2 to 1.23.5 (#2255)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.23.2 to
1.23.5.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 09:41:10 +00:00
4c28a9253b Set Rust caching key per language group (#2250)
Fixes #2247 (a follow-up from #2195).

* Add a workflow dispatch manual trigger to the tests workflow.
* Move the link-checked languages JSON list to the build job's env.
* Set a caching key per language group to avoid extra `mdbook-linkcheck`
installation on non-link-checked translations.
  For the meaning of this key, see:
https://github.com/Swatinem/rust-cache?tab=readme-ov-file#example-usage
* Fix newly broken web link in 8a3ed21  

I tested it on my fork, and it looks good:
https://github.com/jond01/comprehensive-rust/actions/workflows/build.yml
https://github.com/jond01/comprehensive-rust/actions/caches
2024-07-29 10:28:12 +01:00
ad9b41cd6c Include xgettext as optional output (#2244)
Instead of asking the translators to run a complicated command to
generate the `messages.pot` file, we now simply include the
configuration in the versioned `book.toml` file.

This makes it much easier for us to update the configuration: we just
push a new version of `book.toml`. It also makes life easier for the
translators.
2024-07-23 10:51:13 +02:00
95eb00be5d pt-BR: Merge pt-BR refresh translation back into main (#2236)
This PR merges the pt-BR refresh 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 2236| bat -l patch

This closes #2121
2024-07-23 01:38:05 -07:00
384bd35cf3 cargo: bump openssl from 0.10.61 to 0.10.66 in the cargo group (#2245)
Bumps the cargo group with 1 update:
[openssl](https://github.com/sfackler/rust-openssl).
2024-07-22 17:58:40 -04:00
1c964f6fe3 Fix a broken link and check internal links (#2195)
In #2153 I aimed to fix a link but broke it.
In this PR, I fix it and add
[`mdbook-linkcheck`](https://github.com/Michael-F-Bryan/mdbook-linkcheck)
to avoid future cases.

Some past fixes that could have been prevented, in addition to mine in
this PR:
* #811
* #2064
* #2146

Note:  
`mdbook-linkcheck` may also check external links with a configuration
change.
It can be beneficial to check also external links from time to time. I
ran it here and found 3 broken links.

Maintainers - sorry for the lack of a preceding issue. We can discuss it
here.
Some remaining work is to fix the outdated internal links in the
translations, not done here.
Let me know what you think about the proposed contribution.

This PR completes #1502.
2024-07-22 11:37:19 +00:00
16c4724300 Fix comma position (#2233)
Co-authored-by: Kamil Panek <panek.kam@gmail.com>
2024-07-22 13:29:13 +02:00
1e1854557d cargo: bump cc from 1.1.4 to 1.1.6 in /src/exercises/bare-metal/rtc in the patch group (#2243)
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.1.4 to 1.1.6

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-22 11:15:13 +01:00
1c32e05bb6 cargo: bump cc from 1.1.4 to 1.1.6 in /src/bare-metal/aps/examples in the patch group (#2242)
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.1.4 to 1.1.6

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-22 10:14:54 +00:00
a4ea10f8a1 cargo: bump mockall from 0.12.1 to 0.13.0 in the minor group (#2240)
Bumps the minor group with 1 update:
[mockall](https://github.com/asomers/mockall).

Updates `mockall` from 0.12.1 to 0.13.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/asomers/mockall/blob/master/CHANGELOG.md">mockall's
changelog</a>.</em></p>
<blockquote>
<h1>Change Log</h1>
<p>All notable changes to this project will be documented in this file.
This project adheres to <a href="http://semver.org/">Semantic
Versioning</a>.</p>
<h2>[ Unreleased ] - ReleaseDate</h2>
<h3>Added</h3>
<ul>
<li>
<p>Add the ability to use <code>#[concretize]</code> with methods that
have an <code>FnMut</code>
argument.
(<a
href="https://redirect.github.com/asomers/mockall/pull/595">#595</a>)</p>
</li>
<li>
<p>Add the ability to mock methods that use <code>#[auto_enum]</code>,
from the
<code>auto_enums</code> crate. But only for methods that use RPIT;
Mockall can't yet
handle syntax like <code>-&gt; Result&lt;(), impl T&gt;</code>
(<a
href="https://redirect.github.com/asomers/mockall/pull/590">#590</a>)</p>
</li>
<li>
<p>Add the ability to mock methods that use <code>#[inline]</code> or
<code>#[cold]</code>, and
methods or traits that use <code>#[must_use]</code>.
(<a
href="https://redirect.github.com/asomers/mockall/pull/555">#555</a>)</p>
</li>
</ul>
<h3>Changed</h3>
<ul>
<li>
<p>Raised MSRV to 1.71.0 due to the <code>C-unwind</code> ABI.
(<a
href="https://redirect.github.com/asomers/mockall/pull/585">#585</a>)</p>
</li>
<li>
<p>No longer poison a Context object's internal <code>Mutex</code> when
panicing. This
requires the &quot;nightly&quot; feature.
(<a
href="https://redirect.github.com/asomers/mockall/pull/527">#527</a>)</p>
</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fixed panicing within mocked <code>extern &quot;C&quot;</code>
functions, for example due to
unsatisfied expectations, with Rust 1.81.0 or newer.
(<a
href="https://redirect.github.com/asomers/mockall/pull/585">#585</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/asomers/mockall/commits">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mockall&package-manager=cargo&previous-version=0.12.1&new-version=0.13.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-07-22 11:14:04 +01:00
0f7ab8fc7f cargo: bump the patch group with 3 updates (#2241)
Bumps the patch group with 3 updates:
[thiserror](https://github.com/dtolnay/thiserror),
[scraper](https://github.com/causal-agent/scraper) and
[tokio](https://github.com/tokio-rs/tokio).
2024-07-22 00:48:37 -04:00
bd169f393c some template dont convert en to fa (#2239) 2024-07-20 22:17:07 +03:30
d49e86d927 ar: Second patch of Arabic translation (#2231) 2024-07-19 18:23:43 +02:00
92de96f066 Fix direction of translation diff. (#2235)
It was showing the diff from new to old, rather than old to new.
2024-07-19 15:28:34 +00:00
df2076b111 Upgrade mdbook-pandoc and disable it except during CI workflows (#2212)
Implements the approach summarized in
https://github.com/google/mdbook-i18n-helpers/issues/200#issuecomment-2220035461
to disable running `mdbook-pandoc` even if it is available to avoid
dependency-related issues during local rendering.

Should address https://github.com/google/comprehensive-rust/issues/1911
since `mdbook-pandoc` will no longer run locally.
2024-07-18 13:01:25 +02:00
054169992e build(deps): bump crate-ci/typos from 1.23.1 to 1.23.2 (#2230)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.23.1 to
1.23.2.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-15 10:33:11 +01:00
80791ba59d cargo: bump the patch group with 2 updates (#2229)
Bumps the patch group with 2 updates:
[clap](https://github.com/clap-rs/clap) 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-07-15 10:32:46 +01:00
6561739fd0 cargo: bump cc from 1.0.105 to 1.1.4 in /src/bare-metal/aps/examples in the minor group (#2228)
Bumps the minor group in /src/bare-metal/aps/examples with 1 update:
[cc](https://github.com/rust-lang/cc-rs).

Updates `cc` from 1.0.105 to 1.1.4

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-15 10:32:17 +01:00