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

Added Array and tuples #1824

Closed
wants to merge 28 commits into from
Closed

Conversation

mani-chand
Copy link
Contributor

#1464 issue PR

mani-chand and others added 19 commits February 15, 2024 22:15
google#324

---------

Co-authored-by: Yihao Wang <42559837+AgainstEntropy@users.noreply.github.com>
Co-authored-by: Henri F. <henrif75@users.noreply.github.com>
In the details section, it is suggested to adjust the signature of the
nearest function to "lie" about the lifetimes returned to:

fn nearest<'a, 'q'>(points: &'a [Point], query: &'q Point) -> Option<&'q
Point> {

to demonstrate the compiler checks lifetimes for validity. However, the
syntax for 'q is incorrect and it should instead be

fn nearest<'a, 'q>(points: &'a [Point], query: &'q Point) -> Option<&'q
Point> {
…pdate (google#1808)

Bumps the patch group in /src/exercises/bare-metal/rtc with 1 update:
[chrono](https://github.com/chronotope/chrono).

Updates `chrono` from 0.4.33 to 0.4.34

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the minor group with 2 updates:
[clap](https://github.com/clap-rs/clap) and
[tempfile](https://github.com/Stebalien/tempfile).

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.18.0 to
1.18.2.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the patch group with 4 updates:
[mdbook](https://github.com/rust-lang/mdBook),
[thiserror](https://github.com/dtolnay/thiserror),
[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>
)

This
* Works with the GitHub permissions model (at least in local testing on
another temporary repo)
 * Only comments when the timings actually change
Day 2: afternoon (+ miscellaneous updates of previous sections)

Signed-off-by: Andriy Redko <drreta@gmail.com>
The word `strings` is repeated unnecessarily
In the example, somebody who is trying to understand this code has to
follow a lot of moving pieces: prefix, name, make_greeter, and then also
learn the new move concept at the same time.

It'd be better if the content were to actually match the name of the
variables. "Hi" is a good prefix, but "there" is not a name, so let's go
with an actual name.
Tested with rust 2015, 2018, 2021 and 2024, on amd64 musl, amd64 glibc
and aarch64 musl, all of them represent Strings with (ptr, capacity,
len).

This is an internal implementation detail, that shouldn't be exposed
anyway, so it's no big deal, but in the speaker notes, we provide a
debugging tool for demonstration purposes, so at least that should have
a correct output.
@mani-chand
Copy link
Contributor Author

Hello @djmitche , Can we make this a quick review if possible.

@djmitche
Copy link
Collaborator

It's the end of my day on a long weekend, so I can't promise that. I'm not sure what the rush is, but it should be possible for you to proceed working on other PRs before this one is merged, right? Also, I'm waiting for review on #1815 :)

@mani-chand
Copy link
Contributor Author

Firstly, Have a great joyful long weekend.I will be working on other PRs. I am not getting notifications when you tag me in issues. I will go through #1815 in weekend and will get ready with my PR. There is no rush it's just I am free.

Have great day and weekend.

Copy link
Collaborator

@randomPoison randomPoison left a comment

Choose a reason for hiding this comment

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

Splitting tuples and arrays into separate slides seems reasonable to me. The current iteration leaves the two slides pretty bare at the moment, though, since there's just a brief code example for both. I think with the separated slides we could move the high level summary of each type into the slide from the speaker notes. Or we should at least have more information to put on the separated array and tuple slides if we're going to split the slide up.

src/tuples-and-arrays/tuples-and-arrays.md Outdated Show resolved Hide resolved
src/tuples-and-arrays/arrays/arrays.md Outdated Show resolved Hide resolved
src/tuples-and-arrays/tuples-and-arrays.md Show resolved Hide resolved
src/tuples-and-arrays/arrays/arrays.md Outdated Show resolved Hide resolved
Copy link

Fundamentals // Day 1 Morning

2 hours and 40 minutes: (25 minutes short)

  • Welcome - 5 minutes
  • Hello, World - 20 minutes
  • Types and Values - 55 minutes
  • Control Flow Basics - 55 minutes

Fundamentals // Day 1 Afternoon

3 hours and 5 minutes

  • Welcome - 0 minutes
  • Tuples and Arrays - 1 hour and 10 minutes
  • References - 50 minutes
  • User-Defined Types - 50 minutes

Fundamentals // Day 2 Morning

2 hours and 40 minutes: (20 minutes short)

  • Welcome - 3 minutes
  • Pattern Matching - 50 minutes
  • Methods and Traits - 45 minutes
  • Generics - 40 minutes

Fundamentals // Day 2 Afternoon

3 hours

  • Welcome - 0 minutes
  • Standard Library Types - 1 hour and 10 minutes
  • Standard Library Traits - 1 hour and 40 minutes

Fundamentals // Day 3 Morning

2 hours and 20 minutes: (45 minutes short)

  • Welcome - 3 minutes
  • Memory Management - 1 hour
  • Smart Pointers - 55 minutes

Fundamentals // Day 3 Afternoon

2 hours and 20 minutes: (40 minutes short)

  • Welcome - 0 minutes
  • Borrowing - 1 hour
  • Slices and Lifetimes - 1 hour and 10 minutes

Fundamentals // Day 4 Morning

2 hours and 50 minutes

  • Welcome - 3 minutes
  • Iterators - 45 minutes
  • Modules - 40 minutes
  • Testing - 1 hour

Fundamentals // Day 4 Afternoon

2 hours: (1 hour and 5 minutes short)

  • Welcome - 0 minutes
  • Error Handling - 45 minutes
  • Unsafe Rust - 1 hour and 5 minutes

New Course Schedule

This PR changes the course schedule. The new schedule is shown below.

@mani-chand
Copy link
Contributor Author

mani-chand commented Feb 21, 2024

Hello @randomPoison , I have did few changes extra. Check them . If you want me to add more content in slide . I will add to slides .

@@ -47,7 +47,8 @@

- [Welcome](welcome-day-1-afternoon.md)
- [Tuples and Arrays](tuples-and-arrays.md)
- [Tuples and Arrays](tuples-and-arrays/tuples-and-arrays.md)
Copy link
Collaborator

Choose a reason for hiding this comment

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

When deleting a page, you have to add an entry to the redirection table in book.toml. That way we avoid 404 pages when people visit the old URL.

In this case, you should redirect tuples-and-arrays/tuples-and-arrays.html to tuples-and-arrays/tuples.html:

[output.html.redirect]
"tuples-and-arrays/tuples-and-arrays.html" = "tuples.html"

The tricky part is that the path to the right of = is relative to the path on the left.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks, Noted, I will check and make it works.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Thanks!

Copy link

Fundamentals // Day 1 Morning

2 hours and 10 minutes: (55 minutes short)

  • Welcome - 5 minutes
  • Hello, World - 15 minutes
  • Types and Values - 45 minutes
  • Control Flow Basics - 40 minutes

Fundamentals // Day 1 Afternoon

2 hours and 35 minutes: (25 minutes short)

  • Welcome - 0 minutes
  • Tuples and Arrays - 55 minutes
  • References - 35 minutes
  • User-Defined Types - 50 minutes

Fundamentals // Day 2 Morning

2 hours and 40 minutes: (20 minutes short)

  • Welcome - 3 minutes
  • Pattern Matching - 50 minutes
  • Methods and Traits - 45 minutes
  • Generics - 40 minutes

Fundamentals // Day 2 Afternoon

3 hours and 10 minutes

  • Welcome - 0 minutes
  • Standard Library Types - 1 hour and 20 minutes
  • Standard Library Traits - 1 hour and 40 minutes

Fundamentals // Day 3 Morning

2 hours and 20 minutes: (45 minutes short)

  • Welcome - 3 minutes
  • Memory Management - 1 hour
  • Smart Pointers - 55 minutes

Fundamentals // Day 3 Afternoon

2 hours and 10 minutes: (50 minutes short)

  • Welcome - 0 minutes
  • Borrowing - 50 minutes
  • Slices and Lifetimes - 1 hour and 10 minutes

Fundamentals // Day 4 Morning

2 hours and 50 minutes

  • Welcome - 3 minutes
  • Iterators - 45 minutes
  • Modules - 40 minutes
  • Testing - 1 hour

Fundamentals // Day 4 Afternoon

2 hours and 10 minutes: (55 minutes short)

  • Welcome - 0 minutes
  • Error Handling - 55 minutes
  • Unsafe Rust - 1 hour and 5 minutes

New Course Schedule

This PR changes the course schedule. The new schedule is shown below.

@mani-chand
Copy link
Contributor Author

Hello @mgeisler , Can you check.

@mani-chand
Copy link
Contributor Author

@randomPoison , I am sorry , I think I messed it up , I will open another PR.

@deavid
Copy link
Collaborator

deavid commented Feb 29, 2024

The spanish translation change looks good, however there are other *.po files with way too many changes. Seeing how the other parts of the PR are minimal, I assume these po files diff can be reduced.

@mani-chand mani-chand closed this Feb 29, 2024
@djmitche
Copy link
Collaborator

The spanish translation change looks good, however there are other *.po files with way too many changes. Seeing how the other parts of the PR are minimal, I assume these po files diff can be reduced.

I think this was because the PR had the wrong base, but thanks for looking!

djmitche pushed a commit that referenced this pull request Mar 6, 2024
JasperPluijmers added a commit to nedap/comprehensive-rust that referenced this pull request Mar 8, 2024
* Fix typo in googletest.md (google#1804)

The word `strings` is repeated unnecessarily

* Update try.md - syntax error (google#1807)

Add second `:`

* Use existing function as an example for automatic dereferncing (google#1799)

* Fix Chromium link in README.md (google#1812)

Fixes google#1806.

* Make content of variable "name" an actual name (google#1816)

In the example, somebody who is trying to understand this code has to
follow a lot of moving pieces: prefix, name, make_greeter, and then also
learn the new move concept at the same time.

It'd be better if the content were to actually match the name of the
variables. "Hi" is a good prefix, but "there" is not a name, so let's go
with an actual name.

* Added break-continue section. (google#1793)

This is a contribution of a break-continue section for Comprehensive
Rust.


![image](https://github.com/google/comprehensive-rust/assets/65899331/e68bf439-bcbd-43c9-88bd-f66470a5956f)

![image](https://github.com/google/comprehensive-rust/assets/65899331/1644a460-8373-4878-b6b9-0ce498e8c95d)

---------

Co-authored-by: Dustin J. Mitchell <dustin@v.igoro.us>

* Change String representation to actual (google#1817)

Tested with rust 2015, 2018, 2021 and 2024, on amd64 musl, amd64 glibc
and aarch64 musl, all of them represent Strings with (ptr, capacity,
len).

This is an internal implementation detail, that shouldn't be exposed
anyway, so it's no big deal, but in the speaker notes, we provide a
debugging tool for demonstration purposes, so at least that should have
a correct output.

* zh-CN: index & preparation translation (google#1800)

The po file has been refreshed. Translation range: L1173-L2241.

google#324

---------

Co-authored-by: Yihao Wang <42559837+AgainstEntropy@users.noreply.github.com>

* Added blocks and scopes section (google#1822)

* Translation correction on Update es.po (google#1780)

I added a tranlation correction on the line 1287, I change "tres"
instead "cuatro", because "cuatro" is the meaningful of four in Spanish.

---------

Co-authored-by: Henri F <henrif75@users.noreply.github.com>

* da: refresh translation for January 2024 (google#1742)

This is a clean refresh, requires only a syntactical review.

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

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

* fa: refresh translation for January 2024 (google#1751)

This is a clean refresh, requires only a syntaxtical review.

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

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

* Translation correction on Update es.po (google#1781)

I added a tranlation correction on the line 1287, I change "tres"
instead "cuatro", because "cuatro" is the meaningful of four in Spanish.

---------

Co-authored-by: Henri F <henrif75@users.noreply.github.com>

* cargo: bump the patch group with 1 update (google#1828)

Bumps the patch group with 1 update:
[clap](https://github.com/clap-rs/clap).

Updates `clap` from 4.5.0 to 4.5.1

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* uk: Day 3: morning (google#1826)

Day 3: morning

Signed-off-by: Andriy Redko <drreta@gmail.com>

* Suggest --locked for cargo installs (google#1792)

This is already used in the GitHub actions, and avoids issues like those
in google#1791.

Fixes google#1791.

* Fix style in glossary.md (google#1825)

`id` of `h1` title in the translated version will be changed to the
translated text.
Fixed `id` configured here will not take effect in the translated
version.

Correct style: https://google.github.io/comprehensive-rust/glossary.html
Wrong style (zh-CN): https://google.github.io/comprehensive-rust/zh-CN/glossary.html

* Add heading attribute to glossary.md (google#1829)

Add heading attributes[1] to avoid ID changes in translation.

[1]: https://rust-lang.github.io/mdBook/format/markdown.html#heading-attributes

Related: google#1825

---------

Co-authored-by: Martin Geisler <martin@geisler.net>

* Rendered PDF improvements (google#1805)

Updates `mdbook-pandoc` to
[0.5.0](https://github.com/max-heller/mdbook-pandoc/releases/tag/v0.5.0)
to use some new features:
- Table wrapping (closes google#1709)
  
The wrapping logic mirror's
[Pandoc's](https://pandoc.org/MANUAL.html#extension-pipe_tables) (i.e.,
compare the relative widths of the `---` columns to determine column
widths) so tables in the source may need tweaking to get the proportions
right
- Replace broken links in PDF with corresponding links to
https://google.github.io/comprehensive-rust/

* Make the "break with label" example more illustrative (google#1830)

In the old version, using "break 'outer;" and using "break;" (without
the label) produce the same output.

This version fixes that to make the example more illustrative.

---------

Co-authored-by: Martin Geisler <martin@geisler.net>

* fr: Updating the first few pages (up to 1.1). (google#1778)

* Update translations.md with new Korean contributor (google#1823)

Co-authored-by: Martin Geisler <mgeisler@google.com>

* Reformulate speaker notes regarding Box (google#1819)

The first change is to reformulate the English in a way, that
emphasizes, that this is not a decision of the compiler, but the
impossibility of computing an infinite value (e.g. changed the language
from "not compute" to "would not be able to compute").

The second change is to fix the error message, of course the error
message from the compiler is "recursive withOUT indirection", as
"recursive with indirection" is actually what we want.

* Put a header on schedule comments (google#1814)

This will add a little more context. See the current result in
google#1813.

* Add missing editable attribute to exercise (google#1827)

I was reading the docs and I stumbled upon this.

I'm unsure about when exercises should be solved directly on the site
and when they should be copied and pasted into a playground. But since
the previous chapter's exercise is solvable in the site [(fibonacci
sequence)](https://github.com/google/comprehensive-rust/blob/0cb7f496b542d76468fa950718f57f4037abc8fa/src/types-and-values/exercise.md?plain=1#L15),

I figured this one might be missing the attribute. Anyway amazing work
on the docs!

* Change hardcoded vector update to a for loop (google#1833)

iterating over the vector instead of hardcoding each item

---------

Co-authored-by: Martin Geisler <mgeisler@google.com>

* Expand Traits, add associated types (google#1815)

This breaks the "Traits" slide into three smaller sub-slides. It also
addresses part of google#1511 by explicitly addressing associated types.

---------

Co-authored-by: Martin Geisler <martin@geisler.net>

* Update exercise to add also the tests, in a TDD style (google#1832)

Having the tests only in the result brings less value, so the
participants can do it following TDD practices

* Update user-defined-types/exercise.md (google#1835)

Allow us to edit so we can complete the exercise :)

* Move hello world example to second section (google#1838)

The current location for the hello world example is awkward since the
two surrounding pages are both talking about Rust from a high level
without talking about syntax at all. I think starting the second section
(types and values) with the hello world example would help the first
section flow more smoothly.

* Add translation comment to glossary (google#1831)

With google/mdbook-i18n-helpers#107 merged, we
can begin adding comments for the translators to our Markdown files.

* Tweak timings of exercises to better reflect teaching times (google#1839)

A few of the early exercises had much larger estimates than were
actually necessary for the super simple early exercises. I've gone
through and reviewed the time estimates for exercises and tweaked the
estimates based on how much time students have actually needed in my
classes so far.

* Flesh out `for` loop example (google#1841)

* Add example of iterating over a collection.
* Update speaker notes to call out the use of iterators.

I think it's useful to call out that `for` loops primarily are used to
iterate over a collection of objects, even though we haven't yet talked
about any concrete collection types at this point. I think using the
array literal syntax is simple enough to understand that it should be
quick to explain when we get to this slide.

* pt-BR: Merge CR v.2 pt-BR translation back into main (google#1846)

This PR merges the pt-BR v.2 translation back to main.
Also, it refreshes the .po file format removing the line numbers.
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 1846 | bat -l patch

google#317 google#1463

---------

Co-authored-by: João Victor Mendes <mendesjoaovic@gmail.com>
Co-authored-by: azevedoalice <158203674+azevedoalice@users.noreply.github.com>

* Fix definition of Rust Fundamentals in glossary.md (google#1844)

Small nitpick: Days 1 to **4** are Rust Fundamentals

* Fix typo in cargo.md (google#1847)

* Remove tangential text from `if` slide (google#1840)

* Update cargo.md to fix typos (google#1848)

* cargo: bump the patch group with 6 updates (google#1850)

Bumps the patch group with 6 updates

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* cargo: bump the patch group in /src/bare-metal/aps/examples with 1 update (google#1851)

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.83 to 1.0.88

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* cargo: bump the patch group in /src/exercises/bare-metal/rtc with 1 update (google#1852)

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.83 to 1.0.88

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* uk: Day 3: afternoon (google#1849)

uk: Day 3: afternoon

Signed-off-by: Andriy Redko <drreta@gmail.com>

* Link to PDF version of course from first page (google#1836)

Re
google#1805 (review)

---------

Co-authored-by: Martin Geisler <martin@geisler.net>

* Skip translation of large bare-metal code blocks (google#1853)

This was done a bit inconsistently before. We now skip all of these
large blocks which are meant to be used as-is by the students.

This removes 700 lines from the PO files. I found this during the review
of google#1651.

* Sort `mdbook` redirects (google#1761)

There were a few comments, but I think it’s better to make it all
uniform and avoid these comments. The comment was about the v2 rewrite,
but this is now done and so the comment is less useful.

I also normalized the quotes to double-quotes instead of single-quotes.
The latter is a literal string in TOML, but we don’t actually have any
special characters to escape here.

* Rework introduction of pattern matching (google#1843)

* Update course-schedule PR comments in-place (google#1856)

Instead of always adding a new comment, just update the existing comment
if one exists.

This fixes google#1834.

* cargo: bump the patch group in /src/bare-metal/aps/examples with 1 update (google#1871)

Bumps the patch group in /src/bare-metal/aps/examples with 1 update:
[log](https://github.com/rust-lang/log).

Updates `log` from 0.4.20 to 0.4.21

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump crate-ci/typos from 1.18.2 to 1.19.0 (google#1872)

Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.18.2 to
1.19.0.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* cargo: bump the patch group with 4 updates (google#1873)

Bumps the patch group with 4 updates:
[log](https://github.com/rust-lang/log),
[tempfile](https://github.com/Stebalien/tempfile),
[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>

* cargo: bump the patch group in /src/exercises/bare-metal/rtc with 1 update (google#1874)

Bumps the patch group in /src/exercises/bare-metal/rtc with 1 update:
[log](https://github.com/rust-lang/log).

Updates `log` from 0.4.20 to 0.4.21

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* cargo: bump the minor group with 2 updates (google#1870)

Bumps the minor group with 2 updates:
[scraper](https://github.com/causal-agent/scraper) 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>

* URGENT: Fix course schedule watcher github action (google#1867)

@djmitche Currently all PRs are marked as schedule change PRs.

This is my try to propose a fix for this, but please review diligently,
I'm no github actions expert, and I don't have an environment to test.

* Small formatting fix (google#1866)

This is a typo, that actually @mgeisler stopped in my previous PR, I was
just not around to fix it fast enough to make it to the previous merge.
Thanks for the catch!

* Move Mockall and GoogleTest slides to Android section (google#1533)

After google#1528 and google#1532, we now have actual slides which showcase the
crates in action. So we can reclaim a few minutes by removing the slide
which mentions Mockall and GoogleTest slide.

The slide mentioned [proptest](https://docs.rs/proptest) and
[rstest](https://docs.rs/rstest) as well. While I'm sure the libraries
are useful, we don't have them imported into AOSP and I've never
personally used them. We should therefore not advertise them yet at this
point since they won't be useful to Android engineers.

Of course we can mention things that are not in AOSP (or in Chromium),
but I think we should do it in the speaker notes at most.

* Always install and run `mdbook-pandoc` (google#1713)

Before, we only installed and ran `mdbook-pandoc` when publishing the
course — which means that a PR change could accidentally break the
publish workflow. We now test that it works on every PR.

From a discussion in google#1704.

* Add a dev theme to help with slide aspect ratio (google#1842)

Added a dev theme to help with slide aspect ratio while updating content
or for reviewing PRs.

Fixes google#1796.

---------

Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
Co-authored-by: Martin Geisler <martin@geisler.net>

* cargo: bump mio from 0.8.10 to 0.8.11 (google#1877)

Bumps [mio](https://github.com/tokio-rs/mio) from 0.8.10 to 0.8.11.

* Fix some typos (google#1864)

Signed-off-by: geekvest <cuimoman@sohu.com>

* es: Merge CR v.2 Spanish translation back into main (google#1879)

This PR merges the Spanish (es) 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 1879 | bat -l patch

google#1463 google#284

---------

Co-authored-by: David Martínez Martí <deavid@google.com>

* tr: cr2 update changes (google#1865)

updated for cr2 and added some translations

Part of google#500

* Divided Array and tuples (google#1859)

google#1824 PR Changes

* Make diagram consistent with code (google#1855)

* Retire @duyguisler as a Turkish reviewer (google#1880)

Thanks for the work so far, feel free to come back if you have more
time!

* Tweak solution to iter exercise (google#1884)

Because `.zip()` is limited to the shorter length, the `.take()` call
here is unnecessary. When explaining this solution I don't want to have
to explain a call to a method that, used as it is, does nothing.

* concurrency: Add detailed teaching notes for welcome and threads slides (google#1885)

These follow the flow of what I actually teach, which spends a
significant amount of time on the latter slide. I think it's worthwhile
to have a real flow documented in the teaching notes, both to make sure
nothing gets forgotten and to structure the experience of teaching.

* Do not show trait vtables as located in the heap in memory diagram (google#1882)

This diagram is misleading and I often explain that the character data
of string literals resides in the executable's static data, with vtables
working the same.

* concurrency: Update async trait slide (google#1883)

Clarify that the basics are stable, but dyn support is still missing.
This slide was outdated and didn't explain the current state of stable
correctly.

* set fallback fonts for PDF rendering (google#1728)

Once a new version of Pandoc is released that includes
jgm/pandoc#9204 and
jgm/pandoc#9353 (both merged), this will fix the
emoji and symbol rendering issues in google#1708.

It doesn't seem to be possible to set fallback fonts with
`luatexja-fontspec` (used to configure CJK fonts), which results in some
missing symbols in the translations but at least renders the emoji
properly.

Closes google#1708

* Fix typo in associated-types.md (google#1887)

A minor nitpick, but as someone new to the language I did spend a bit
more time than I'd like to admit trying to understand the meaning of
`allow` before realizing this is likely a typo. Maybe I still don't
understand, and in that case I'd appreciate a correction!

* Refreshed Bengali Translations and Added New Translations to Bengali (google#1876)

This PR aims to do the following:
1. Refresh the Bengali Translations
2. Add new translations in line with google#653 to complete up to 10%.
3. Corrections to existing translations.

Edit: Recent commits bump up the % completed to 12.

---------

Co-authored-by: abhik-bits <127435906+abhik-bits@users.noreply.github.com>
Co-authored-by: Mir Wasi Ahmed <1697945+mirwasi@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Andriy Redko <drreta@gmail.com>
Signed-off-by: geekvest <cuimoman@sohu.com>
Co-authored-by: IP1llar <isaac.pillar@icloud.com>
Co-authored-by: Gergely Risko <errge@nilcons.com>
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
Co-authored-by: Manichand Kondapaka <mani.chand01@gmail.com>
Co-authored-by: Dustin J. Mitchell <dustin@v.igoro.us>
Co-authored-by: mobyw <44370805+mobyw@users.noreply.github.com>
Co-authored-by: Yihao Wang <42559837+AgainstEntropy@users.noreply.github.com>
Co-authored-by: Diego Romero <68618228+DraketRomero@users.noreply.github.com>
Co-authored-by: Henri F <henrif75@users.noreply.github.com>
Co-authored-by: Martin Geisler <mgeisler@google.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andriy Redko <drreta@gmail.com>
Co-authored-by: Martin Geisler <martin@geisler.net>
Co-authored-by: Max Heller <max.a.heller@gmail.com>
Co-authored-by: Marja Hölttä <marja@chromium.org>
Co-authored-by: AdrienBaudemont <59776880+AdrienBaudemont@users.noreply.github.com>
Co-authored-by: titong0 <68573622+titong0@users.noreply.github.com>
Co-authored-by: Jean Carlo Vicelli <jcvicelli@gmail.com>
Co-authored-by: Michael Graf <mikegraf000@gmail.com>
Co-authored-by: Nicole L <dlegare.1001@gmail.com>
Co-authored-by: João Victor Mendes <mendesjoaovic@gmail.com>
Co-authored-by: azevedoalice <158203674+azevedoalice@users.noreply.github.com>
Co-authored-by: Adrian Taylor <adetaylor@chromium.org>
Co-authored-by: geekvest <126322776+geekvest@users.noreply.github.com>
Co-authored-by: David Martínez Martí <deavid@google.com>
Co-authored-by: Enes Aydın <destansi.13@gmail.com>
Co-authored-by: Yuri Astrakhan <yuriastrakhan@gmail.com>
Co-authored-by: Frances Wingerter <91758128+fw-immunant@users.noreply.github.com>
Co-authored-by: Aaron M <webgovernor@gmail.com>
Co-authored-by: Abhik Banerjee <38981107+abhik-99@users.noreply.github.com>
Co-authored-by: abhik-bits <127435906+abhik-bits@users.noreply.github.com>
Co-authored-by: Mir Wasi Ahmed <1697945+mirwasi@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.