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

Document the automatically_derived attribute. #555

Merged
merged 1 commit into from
Apr 8, 2020

Conversation

ehuss
Copy link
Contributor

@ehuss ehuss commented Mar 25, 2019

It's not clear if this should be documented. Alternatively, it could be deprecated if usage in stable is really not desired. Not sure who can make this call.

Implemented in: rust-lang/rust#12929

CC #532

@Havvy
Copy link
Contributor

Havvy commented Mar 25, 2019

cc @QuietMisdreavus

@Centril
Copy link
Contributor

Centril commented Mar 25, 2019

It's not clear if this should be documented.

If it's to remain on stable (deprecated or otherwise) I would prefer it to be documented.

Alternatively, it could be deprecated if usage in stable is really not desired. Not sure who can make this call.

The language team would be the reviewing team.

@QuietMisdreavus
Copy link
Member

As someone who implemented a tool reacting to this attribute, i would actually prefer if we started pushing derive-macro authors to use this attribute. Having it in the reference like this would help raise awareness that it can be used and reacted to.

@Centril
Copy link
Contributor

Centril commented Apr 1, 2019

@QuietMisdreavus Could you give examples of all the ways the attribute is used so we can list them in the reference?

@QuietMisdreavus
Copy link
Member

The attribute is applied to impl blocks by derive macros, to mark the impls that were applied by that macro. It has no effect on compilation, but tools can read the attribute and change how they process it. I don't know all the effects, but the part in rustdoc that uses it is the --show-coverage option - it will ignore impls with the attribute set, since it assumes those cannot have documentation added to them.

@ehuss ehuss force-pushed the automatically_derived branch from 1e09da0 to a525432 Compare July 16, 2019 22:56
@Centril Centril merged commit 05189cf into rust-lang:master Apr 8, 2020
Dylan-DPC-zz pushed a commit to Dylan-DPC-zz/rust that referenced this pull request Apr 14, 2020
Update books

## reference

13 commits in 89dd146..3ce94ca
2020-03-31 09:42:10 -0700 to 2020-04-11 17:00:27 +0200
- UB definition: mention size_of_val for determining a reference's span (rust-lang/reference#793)
- Emphasize that `#[inline]` in all shapes is a hint. (rust-lang/reference#791)
- Added missing comma to Unions reference (rust-lang/reference#790)
- Attributes are now allowed on `if` and `if let` (rust-lang/reference#783)
- `enum`s can now be `#[repr(transparent)]` (rust-lang/reference#741)
- Undocument `use` paths. (rust-lang/reference#665)
- Clarify pub(restricted) a bit (rust-lang/reference#481)
- Add information about || and && to grammar describing `while let`. (rust-lang/reference#772)
- Document the `automatically_derived` attribute. (rust-lang/reference#555)
- Fix unstable check. (rust-lang/reference#743)
- Use common script for link checking. (rust-lang/reference#765)
- Add a basic style guide. (rust-lang/reference#787)
- Size fo empty structs in C is zero byte. (rust-lang/reference#782)

## book

14 commits in c8841f2841a2d26124319ddadd1b6a245f9a1856..f5db319e0b19c22964398d56bc63103d669e1bba
2020-03-22 09:07:01 -0500 to 2020-04-13 08:06:03 -0500
- Update ch01-01-installation.md to require TLS 1.2 (rust-lang/book#2301)
- traits as parameters: Use references instead of moving the values (rust-lang/book#2239)
- Fix a broken link
- Update go docs link (rust-lang/book#2285)
- Add the farsi translation repo link (rust-lang/book#2283)
- Add the missing word to the sentence (ch06-2) (rust-lang/book#2278)
- Fixes hardcoded output (rust-lang/book#2276)
- Use rust-lang/rust linkchecker on CI. (rust-lang/book#2272)
- Add union to the list of keywords (rust-lang/book#2271)
- Clarify the wording (rust-lang/book#2256)
- Improve sentence flow (rust-lang/book#2255)
- Add missing apostrophe (rust-lang/book#2247)
- Update cargo profiles link. (rust-lang/book#2245)
- Add note about chapter 18 in chapter 6 (rust-lang/book#2238)

## rust-by-example

1 commits in a6638463efc7631bc0e8dc67ccd256d4e1b61f1a..c106d1683c3a2b0960f0f0fb01728cbb19807332
2020-04-06 09:39:03 -0500 to 2020-04-09 09:14:39 -0300
- Improve the conversion example (rust-lang/rust-by-example#1329)

## edition-guide

1 commits in 37f9e6848411188a1062ead1bd8ebe4b8aa16899..8204c1d123472cd17f0c1c5c77300ae802eb0271
2020-02-10 14:36:14 +0100 to 2020-04-09 18:55:50 -0700
- Fix forge link. (rust-lang/edition-guide#200)

## embedded-book

1 commits in d22a9c487c78095afc4584f1d9b4ec43529d713c..668fb07b6160b9c468f598e839c1e044db65de30
2020-03-04 09:46:30 +0000 to 2020-04-13 12:38:16 +0000
- Add triagebot configuration  (rust-embedded/book#232)
Dylan-DPC-zz pushed a commit to Dylan-DPC-zz/rust that referenced this pull request Apr 14, 2020
Update books

## reference

13 commits in 89dd146..3ce94ca
2020-03-31 09:42:10 -0700 to 2020-04-11 17:00:27 +0200
- UB definition: mention size_of_val for determining a reference's span (rust-lang/reference#793)
- Emphasize that `#[inline]` in all shapes is a hint. (rust-lang/reference#791)
- Added missing comma to Unions reference (rust-lang/reference#790)
- Attributes are now allowed on `if` and `if let` (rust-lang/reference#783)
- `enum`s can now be `#[repr(transparent)]` (rust-lang/reference#741)
- Undocument `use` paths. (rust-lang/reference#665)
- Clarify pub(restricted) a bit (rust-lang/reference#481)
- Add information about || and && to grammar describing `while let`. (rust-lang/reference#772)
- Document the `automatically_derived` attribute. (rust-lang/reference#555)
- Fix unstable check. (rust-lang/reference#743)
- Use common script for link checking. (rust-lang/reference#765)
- Add a basic style guide. (rust-lang/reference#787)
- Size fo empty structs in C is zero byte. (rust-lang/reference#782)

## book

14 commits in c8841f2841a2d26124319ddadd1b6a245f9a1856..f5db319e0b19c22964398d56bc63103d669e1bba
2020-03-22 09:07:01 -0500 to 2020-04-13 08:06:03 -0500
- Update ch01-01-installation.md to require TLS 1.2 (rust-lang/book#2301)
- traits as parameters: Use references instead of moving the values (rust-lang/book#2239)
- Fix a broken link
- Update go docs link (rust-lang/book#2285)
- Add the farsi translation repo link (rust-lang/book#2283)
- Add the missing word to the sentence (ch06-2) (rust-lang/book#2278)
- Fixes hardcoded output (rust-lang/book#2276)
- Use rust-lang/rust linkchecker on CI. (rust-lang/book#2272)
- Add union to the list of keywords (rust-lang/book#2271)
- Clarify the wording (rust-lang/book#2256)
- Improve sentence flow (rust-lang/book#2255)
- Add missing apostrophe (rust-lang/book#2247)
- Update cargo profiles link. (rust-lang/book#2245)
- Add note about chapter 18 in chapter 6 (rust-lang/book#2238)

## rust-by-example

1 commits in a6638463efc7631bc0e8dc67ccd256d4e1b61f1a..c106d1683c3a2b0960f0f0fb01728cbb19807332
2020-04-06 09:39:03 -0500 to 2020-04-09 09:14:39 -0300
- Improve the conversion example (rust-lang/rust-by-example#1329)

## edition-guide

1 commits in 37f9e6848411188a1062ead1bd8ebe4b8aa16899..8204c1d123472cd17f0c1c5c77300ae802eb0271
2020-02-10 14:36:14 +0100 to 2020-04-09 18:55:50 -0700
- Fix forge link. (rust-lang/edition-guide#200)

## embedded-book

1 commits in d22a9c487c78095afc4584f1d9b4ec43529d713c..668fb07b6160b9c468f598e839c1e044db65de30
2020-03-04 09:46:30 +0000 to 2020-04-13 12:38:16 +0000
- Add triagebot configuration  (rust-embedded/book#232)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants