1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2025-05-27 20:58:41 +02:00

2082 Commits

Author SHA1 Message Date
Martin Geisler
09a072b1ce
Point out new code in Luhn exercise solution ()
This makes it easier for the students to understand where the changes
and thus fixes are.
2024-10-16 11:35:27 +02:00
Martin Geisler
0c824ab740
Fix “incorrect” which should have been “unsafe” () 2024-10-16 11:34:53 +02:00
Martin Geisler
701589ffd5
Consistently end list items with a full stop ()
This is more consistent.
2024-10-16 11:34:22 +02:00
Martin Geisler
bd7b7eb121
Clean up duplicate heading () 2024-10-16 11:28:43 +02:00
Martin Geisler
4c78c3be6d
Simplify with local variable ()
This reduces the vertical space needed.
2024-10-16 11:28:30 +02:00
Martin Geisler
dcdf3915ec
Fix typo in expect message () 2024-10-16 11:28:25 +02:00
Martin Geisler
1c3e4648e4
Remove unnecessary null check in FFI exercise ()
We only assign `self.dir` once and we only assign it if the pointer is
non-null. We can therefore simplify the drop implementation a little.
2024-10-16 11:25:22 +02:00
Henri F.
28b5b559b3
fa: Adds Farsi to the language selector ()
Adds Farsi to the drop-down language selector and minor rearrangement on
Translation page
2024-10-15 22:17:55 -07:00
Dustin J. Mitchell
d9e3ad9e63
Reduce references to niche optimization ()
Niche optimization is currently mentioned in three places:
 - Enums (User-Defined Types, Day 1 Afternoon)
 - Option (Standard Library Types, Day 2 Afternoon)
 - Box (Smart Pointers, Day 3 Morning)

This is a tricky thing to get right, and it was just in the speaker
notes in each place.  will introduce a fuller explanation.

Fixes .
2024-10-15 11:19:37 -04:00
Martin Geisler
a699430741
Remove unused Concurrency exercises page ()
This was moved to the `concurrency/` directory.
2024-10-15 16:15:38 +02:00
Martin Geisler
a1b483a2f5
Call out that self receivers are covered later ()
We have not formally introduced ownership at this point, so the
exercise can be confusing for students.

Alternatively, we could consider removing the `finish` method since
it’s not essential for a first encounter with methods.
2024-10-15 16:15:12 +02:00
Martin Geisler
a387b2c755
Simplify iterator method chaining exercise ()
The exercise is about iterators, _not_ generic integer types. The
`where` syntax has also not been introduced before, further adding
confusion for the students.
2024-10-15 16:14:50 +02:00
Martin Geisler
61407e6079
Avoid uppercase “HINT” ()
We don’t have a convention of all-capital headings. However, we can
have do a similar convention with a block quotes (see README and
TRANSLATIONS).

Reviewed-by: Martin Geisler <mgeisler@google.com>
2024-10-15 16:14:25 +02:00
Martin Geisler
c01142e5d2
Fix casing of “Rust” () 2024-10-15 16:13:53 +02:00
Martin Geisler
cf7359fac8
Add links to std and docs.rs ()
- **Link to relevant crate APIs**
- **Add missing std links**
2024-10-15 08:12:25 +02:00
Danny Ra
25a2fa6a09
fa: try to complete Farsi - part 4 ()
fa: try to complete Farsi - part 4

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-10-14 00:00:04 +03:30
Yerkebulan Tulibergenov
252bb62521
Fix typo ()
Fix typo
2024-10-09 03:25:54 +00:00
Danny Ra
7a25c4ad84
fa: try to complete Farsi part 3 ()
fa: try to complete Farsi part 3

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-10-04 23:28:39 +03:30
Martin Geisler
0474168196
Remove outdated tip about handling division by zero ()
The exercise text already asks you to handle this.
2024-10-02 00:31:49 +00:00
dependabot[bot]
0a9a01d991
cargo: bump the patch group with 8 updates ()
Bumps the patch group with 8 updates:

| Package | From | To |
| --- | --- | --- |
| [anyhow](https://github.com/dtolnay/anyhow) | `1.0.86` | `1.0.89` |
| [clap](https://github.com/clap-rs/clap) | `4.5.16` | `4.5.18` |
| [serde](https://github.com/serde-rs/serde) | `1.0.209` | `1.0.210` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.127` | `1.0.128`
|
| [pulldown-cmark](https://github.com/raphlinus/pulldown-cmark) |
`0.12.0` | `0.12.1` |
| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.11` | `0.7.12`
|
| [thiserror](https://github.com/dtolnay/thiserror) | `1.0.63` |
`1.0.64` |
| [reqwest](https://github.com/seanmonstar/reqwest) | `0.12.7` |
`0.12.8` |

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 14:14:54 +01:00
dependabot[bot]
6a013839f3
cargo: bump cc from 1.1.15 to 1.1.23 in /src/exercises/bare-metal/rtc in the patch group ()
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.15 to 1.1.23

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 14:01:30 +01:00
dependabot[bot]
7422ee20e6
cargo: bump cc from 1.1.15 to 1.1.23 in /src/bare-metal/aps/examples in the patch group ()
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.15 to 1.1.23

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 14:01:07 +01:00
dependabot[bot]
259220ba88
build(deps): bump crate-ci/typos from 1.24.3 to 1.24.6 ()
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.24.3 to
1.24.6.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 14:00:39 +01:00
dependabot[bot]
be9ed92365
cargo: bump the minor group with 4 updates ()
Bumps the minor group with 4 updates:
[regex](https://github.com/rust-lang/regex),
[buddy_system_allocator](https://github.com/rcore-os/buddy_system_allocator),
[tempfile](https://github.com/Stebalien/tempfile) 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-10-01 14:00:01 +01:00
dependabot[bot]
c23c0c9312
cargo: bump buddy_system_allocator from 0.10.0 to 0.11.0 in /src/bare-metal/alloc-example in the minor group ()
Bumps the minor group in /src/bare-metal/alloc-example with 1 update:
[buddy_system_allocator](https://github.com/rcore-os/buddy_system_allocator).

Updates `buddy_system_allocator` from 0.10.0 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-10-01 13:59:34 +01:00
Alex Lai
29dcb0c06f
Exercise: method and traits: change output ()
In this exercise, the original StderrLogger output to stderr, which user
cannot see the original log but "No output" in frontend". Change
`eprintln!` to `println!` to make it see-able in the frontend. Also, due
to the change, rename the logger struct.

Close: 

Signed-off-by: Alx-Lai <alexabc722@gmail.com>
2024-09-30 15:15:50 +00:00
Andriy Redko
0fe2722f5c
uk: Refresh translations ()
uk: Refresh translations

```
mdbook build
msgmerge --update po/uk.po book/xgettext/messages.pot
```

Signed-off-by: Andriy Redko <drreta@gmail.com>
2024-09-29 08:11:16 +02:00
Dustin J. Mitchell
e4d89f6344
Temporarily remove po formatting ()
Until  is resolved, this temporarily removes the inconsistent
formatting of .po files depending on msgcat versions.
2024-09-29 08:08:41 +02:00
Dustin J. Mitchell
9d2ea42fc4
Fix thiserror slide ()
Fixes . This has `compile_fail` because `thiserror` isn't available
from within `mdbook test`.
2024-09-27 12:39:53 +00:00
Andrew Walbran
2713ea3475
Use Clang rather than GCC for assembly. ()
This avoids the hack for using aarch64-linux-gnu on Linux, and also
removes a dependency.

Also switched to using `cargo-objcopy`, as we require `cargo-binutils`
already and it makes the Makefiles simpler.
2024-09-24 10:19:29 +01:00
Danny Khosravi
f64edfc1f7
fa: Try to complete Farsi part2 ()
fa: Try to complete Farsi part2

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-09-24 01:30:48 +03:30
Danny Khosravi
83b74de18b
fa: Try to complete Farsi Part1 ()
fa: Try to complete Farsi Part1

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-09-21 22:11:21 +03:30
Nicole L
2f9babd098
Miscellaneous minor improvements () 2024-09-20 14:19:53 -07:00
Frances Wingerter
aeb643f380
error-handling: split thiserror into its own slide ()
`thiserror` is best understood as a way to eliminate boilerplate on the
patterns we've already seen, and then we can show it in conjunction with
`anyhow` subsequently.

Fixes .
2024-09-20 20:56:22 +00:00
xiaohu-zhang
db0b161424
fix async Philosopher execise livelock error () 2024-09-20 12:13:16 +00:00
Martin Geisler
7a6abee0da
Remove part about Error not being no_std ()
This reverts  now that Rust 1.81 has stabilized the `Error` trait.
2024-09-18 03:38:19 +02:00
Nicole L
d2bc223a06
Misc. Android Improvements ()
- Add missing package declaration on the AIDL interface slide.
- Make the parcelable example more self-contained. The existing code was
referencing variables that weren't declared in the example code.
- Add a speaker note to the logging slide about explaining that the
logger implementation is only needed in binaries, and that just the log
facade is needed in libraries.
2024-09-17 09:09:07 -07:00
Danny Khosravi
9c16b36b5e
fa: Scattered reforms part 3 ()
fa: Scattered reforms part 3

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-09-16 07:24:59 +03:30
Danny Khosravi
0d601a3613
fa: Scattered reforms part 2 ()
fa: Scattered reforms part 2

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-09-14 00:22:39 +03:30
Danny Khosravi
626212ab26
fa: reform: generics + borrowing + lifetimes ()
fa: reform -> generics + borrowing + lifetimes

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-09-13 10:52:02 +03:30
Willow Carretero Chavez
c5f9e5337b
es: Spanish translation refresh ()
Fixes .
2024-09-12 15:33:38 +00:00
xrdelectro
3637c44a5d
Fix typo in box.md () 2024-09-12 14:53:54 +00:00
Danny Khosravi
5aa08d489f
fa: refreshed Translation For Farsi ()
fa: refreshed Translation For Farsi 
I follow [Refreshing an Existing
Translation](https://github.com/google/comprehensive-rust/blob/main/TRANSLATIONS.md#refreshing-an-existing-translation)

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-09-12 10:33:11 +03:30
Martin Geisler
1f1a7708af
Update build-rules.md ()
Fixes .
2024-09-11 10:37:24 -07:00
Danny Khosravi
066549f7ff
fa: chromium part 5/5 complete ()
fa: chromium part 5/5 complete

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
2024-09-11 00:07:56 +02:00
Martin Geisler
53845ffcaf
Avoid [T] in slices title ()
There is a problem in how we generate the segment tables: we use the
`Chapter::name` field as given to us from `mdbook`. The problem is that
this string is stripped from formatting:

    Slices: `&[T]`

becomes

    Slices: &[T]

The string now looks like a reference link, but of course there is no
definition of the `T` link:

    warning: Potential incomplete link
      ┌─ references.md:9:12
      │
    9 │ | Slices: &[T] | 10 minutes |
      │            ^^^ Did you forget to define a URL for `T`?
      │
= hint: declare the link's URL. For example: `[T]: http://example.com/`

For now, I will simply take out the reference. This also makes the
titles more uniform in this segment: we don’t add `&T` or `&mut T` to
the other slide titles.
2024-09-10 22:11:09 +02:00
Danny Khosravi
1afd366024
chromium part 4/5 ()
chromium part 4/5

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-09-09 23:25:17 +03:30
Danny Khosravi
d0a93291b6
fa :chromium part 3/5 ()
fa :chromium part 3/5

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
2024-09-09 01:24:55 +03:30
Alix
af79cf46e8
fa: day 3 () 2024-09-08 22:39:40 +03:30
uint256_t
7f5677deff
ja: Refresh translation ()
As suggested in
https://github.com/google/comprehensive-rust/pull/2285#issuecomment-2317045933,
I've refreshed the Japanese translation.
2024-09-08 20:25:12 +02:00