-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Rollup of 13 pull requests #23884
Rollup of 13 pull requests #23884
Commits on Mar 13, 2015
-
Add the -s flag to the suggested rustup invocation
curl's progress meter would otherwise interfere with sudo's password prompt. In addition, add the -f flag to make sure 4xx status codes are treated as errors.
Jakub Bukaj committedMar 13, 2015 Configuration menu - View commit details
-
Copy full SHA for b3c58cf - Browse repository at this point
Copy the full SHA b3c58cfView commit details
Commits on Mar 16, 2015
-
Configuration menu - View commit details
-
Copy full SHA for ac67729 - Browse repository at this point
Copy the full SHA ac67729View commit details
Commits on Mar 24, 2015
-
Configuration menu - View commit details
-
Copy full SHA for 528a5e2 - Browse repository at this point
Copy the full SHA 528a5e2View commit details -
Configuration menu - View commit details
-
Copy full SHA for c3f4fba - Browse repository at this point
Copy the full SHA c3f4fbaView commit details -
syntax: Allow where strings to be parsed independent from generics
This allows quasiquoting to insert where clauses.
Configuration menu - View commit details
-
Copy full SHA for 4ec07ed - Browse repository at this point
Copy the full SHA 4ec07edView commit details -
Configuration menu - View commit details
-
Copy full SHA for a17f556 - Browse repository at this point
Copy the full SHA a17f556View commit details -
std: Reexport std::rt::unwind::try in std::thread
This commit provides a safe, but unstable interface for the `try` functionality of running a closure and determining whether it panicked or not. There are two primary reasons that this function was previously marked `unsafe`: 1. A vanilla version of this function exposes the problem of exception safety by allowing a bare try/catch in the language. It is not clear whether this concern should be directly tied to `unsafe` in Rust at the API level. At this time, however, the bounds on `ffi::try` require the closure to be both `'static` and `Send` (mirroring those of `thread::spawn`). It may be possible to relax the bounds in the future, but for now it's the level of safety that we're willing to commit to. 2. Panicking while panicking will leak resources by not running destructors. Because panicking is still controlled by the standard library, safeguards remain in place to prevent this from happening. The new API is now called `catch_panic` and is marked as `#[unstable]` for now.
Configuration menu - View commit details
-
Copy full SHA for 4c2ddb3 - Browse repository at this point
Copy the full SHA 4c2ddb3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3577555 - Browse repository at this point
Copy the full SHA 3577555View commit details
Commits on Mar 25, 2015
-
Configuration menu - View commit details
-
Copy full SHA for 053d58e - Browse repository at this point
Copy the full SHA 053d58eView commit details -
rustc: Remove support for int/uint
This commit removes all parsing, resolve, and compiler support for the old and long-deprecated int/uint types.
Configuration menu - View commit details
-
Copy full SHA for 54f16b8 - Browse repository at this point
Copy the full SHA 54f16b8View commit details
Commits on Mar 26, 2015
-
Configuration menu - View commit details
-
Copy full SHA for 71386e5 - Browse repository at this point
Copy the full SHA 71386e5View commit details -
Configuration menu - View commit details
-
Copy full SHA for d9d2236 - Browse repository at this point
Copy the full SHA d9d2236View commit details -
Switch drop-flag to
u8
to allow special tags to instrument state.Refactored code so that the drop-flag values for initialized (`DTOR_NEEDED`) versus dropped (`DTOR_DONE`) are given explicit names. Add `mem::dropped()` (which with `DTOR_DONE == 0` is semantically the same as `mem::zeroed`, but the point is that it abstracts away from the particular choice of value for `DTOR_DONE`). Filling-drop needs to use something other than `ptr::read_and_zero`, so I added such a function: `ptr::read_and_drop`. But, libraries should not use it if they can otherwise avoid it. Fixes to tests to accommodate filling-drop.
Configuration menu - View commit details
-
Copy full SHA for 3902190 - Browse repository at this point
Copy the full SHA 3902190View commit details -
Regression tests for issues uncovered only post the run-pass and comp…
…ile-fail tests. (I.e. the idea being, lets catch errors in these basic constructs sometime *before* we start doing the doc tests.)
Configuration menu - View commit details
-
Copy full SHA for 7c671e5 - Browse repository at this point
Copy the full SHA 7c671e5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5bc35b1 - Browse repository at this point
Copy the full SHA 5bc35b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5733726 - Browse repository at this point
Copy the full SHA 5733726View commit details -
Added instability markers to
POST_DROP_*
consts, and related opt-in's.(Reviewed rest of code; did not see other `pub` items that needed such treatment.) Driveby: fix typo in comment in ptr.rs.
Configuration menu - View commit details
-
Copy full SHA for 601eca3 - Browse repository at this point
Copy the full SHA 601eca3View commit details -
Use
-Z force-dropflag-checks=on/off
for emitting sanity-check.(That is, added config and debugflag a la check-overflow but for drop flag sanity-check.) Remove now-unused import of NoDebugInfo from trans::glue.
Configuration menu - View commit details
-
Copy full SHA for 4053b00 - Browse repository at this point
Copy the full SHA 4053b00View commit details -
Configuration menu - View commit details
-
Copy full SHA for aab4bef - Browse repository at this point
Copy the full SHA aab4befView commit details -
Deprecate as_mut_slice methods
This is technically a breaking change as it deprecates and unstables some previously stable apis that were missed in the last round of deprecations. [breaking change]
Configuration menu - View commit details
-
Copy full SHA for c5b8763 - Browse repository at this point
Copy the full SHA c5b8763View commit details -
New section of the book: nightly rust
Now that feature flags are only on nightly, it's good to split this stuff out.
Configuration menu - View commit details
-
Copy full SHA for c153fc1 - Browse repository at this point
Copy the full SHA c153fc1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 36ef29a - Browse repository at this point
Copy the full SHA 36ef29aView commit details -
syntax: Remove parsing of old slice syntax
This syntax has been deprecated for quite some time, and there were only a few remaining uses of it in the codebase anyway.
Configuration menu - View commit details
-
Copy full SHA for 77de3ee - Browse repository at this point
Copy the full SHA 77de3eeView commit details -
Configuration menu - View commit details
-
Copy full SHA for e2cc8b1 - Browse repository at this point
Copy the full SHA e2cc8b1View commit details -
Auto merge of rust-lang#23359 - erickt:quote, r=pnkfelix
This PR allows the quote macros to unquote trait items, impl items, where clauses, and paths.
Configuration menu - View commit details
-
Copy full SHA for 53a183f - Browse repository at this point
Copy the full SHA 53a183fView commit details -
Adding more information about the behavior of Arc/Rc
when you perform a clone() call.
Configuration menu - View commit details
-
Copy full SHA for 7d3bf47 - Browse repository at this point
Copy the full SHA 7d3bf47View commit details -
Mass rename uint/int to usize/isize
Now that support has been removed, all lingering use cases are renamed.
Configuration menu - View commit details
-
Copy full SHA for 43bfaa4 - Browse repository at this point
Copy the full SHA 43bfaa4View commit details -
Configuration menu - View commit details
-
Copy full SHA for dac552f - Browse repository at this point
Copy the full SHA dac552fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3e100ff - Browse repository at this point
Copy the full SHA 3e100ffView commit details -
rustc: Remove support for old_impl_check
This commit removes compiler support for the `old_impl_check` attribute which should in theory be entirely removed now. The last remaining use of it in the standard library has been updated by moving the type parameter on the `old_io::Acceptor` trait into an associated type. As a result, this is a breaking change for all current users of the deprecated `old_io::Acceptor` trait. Code can be migrated by using the `Connection` associated type instead. [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for 9754b06 - Browse repository at this point
Copy the full SHA 9754b06View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c43e53 - Browse repository at this point
Copy the full SHA 1c43e53View commit details -
Configuration menu - View commit details
-
Copy full SHA for 07afd04 - Browse repository at this point
Copy the full SHA 07afd04View commit details -
syntax: Remove support for #[should_fail]
This attribute has been deprecated in favor of #[should_panic]. This also updates rustdoc to no longer accept the `should_fail` directive and instead renames it to `should_panic`.
Configuration menu - View commit details
-
Copy full SHA for 3752958 - Browse repository at this point
Copy the full SHA 3752958View commit details -
Revise use of conversion traits
This commit revises `path` and `os_str` to use blanket impls for `From` on reference types. This both cuts down on the number of required impls, and means that you can pass through e.g. `T: AsRef<OsStr>` to `PathBuf::from` without an intermediate call to `as_ref`. It also makes a FIXME note for later generalizing the blanket impls for `AsRef` and `AsMut` to use `Deref`/`DerefMut`, once it is possible to do so.
Configuration menu - View commit details
-
Copy full SHA for e7525cf - Browse repository at this point
Copy the full SHA e7525cfView commit details -
Update docs to fix various 404s
Found a few 404s that seemed like simple fixes: The Result docs use old_io Writer as an example. Fix the link to old_io Writer. There's probably an effort to update the example away from a deprecated api but this was a simple fix. rustc/plugin was pointing at the old guide and it was a broken link anyways (plugin vs plugins). Point at the book instead. The main page of the API docs referenced c_{str,vec}. Looks like these were deleted in 25d5a3a. Point at ffi docs instead.
Configuration menu - View commit details
-
Copy full SHA for 5123bf4 - Browse repository at this point
Copy the full SHA 5123bf4View commit details -
Implement
Reflect
trait with a variant on the standard OIBITsemantics that tests the *interface* of trait objects, rather than what they close over.
Configuration menu - View commit details
-
Copy full SHA for 9c9bb9c - Browse repository at this point
Copy the full SHA 9c9bb9cView commit details -
Configuration menu - View commit details
-
Copy full SHA for c59fe8b - Browse repository at this point
Copy the full SHA c59fe8bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 703308d - Browse repository at this point
Copy the full SHA 703308dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 710af04 - Browse repository at this point
Copy the full SHA 710af04View commit details -
rustc: Remove old #[phase] and #[plugin]
This commit removes the extra deprecation warnings and support for the old `phase` and `plugin` attributes for loading plugins.
Configuration menu - View commit details
-
Copy full SHA for 671d896 - Browse repository at this point
Copy the full SHA 671d896View commit details -
Configuration menu - View commit details
-
Copy full SHA for cbef22e - Browse repository at this point
Copy the full SHA cbef22eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4357621 - Browse repository at this point
Copy the full SHA 4357621View commit details -
rustc: Remove support for
-l foo:static
This syntax has been renamed to `-l static=foo` some time ago.
Configuration menu - View commit details
-
Copy full SHA for 4f419d9 - Browse repository at this point
Copy the full SHA 4f419d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for ce668a8 - Browse repository at this point
Copy the full SHA ce668a8View commit details -
Now that `<[_]>::split` is an inherent method, it will trump `BufRead::split` when `BufRead` is in scope, so there is no longer a conflict. As a result, calling `slice.split()` will probably always give you precisely what you want!
Configuration menu - View commit details
-
Copy full SHA for e71221f - Browse repository at this point
Copy the full SHA e71221fView commit details
Commits on Mar 27, 2015
-
Configuration menu - View commit details
-
Copy full SHA for b68ca84 - Browse repository at this point
Copy the full SHA b68ca84View commit details -
Configuration menu - View commit details
-
Copy full SHA for c0dd239 - Browse repository at this point
Copy the full SHA c0dd239View commit details -
Stabilize some stragglers in
std::option
Marks as `#[stable}`: * `ok_or` * `ok_or_else` * `iter_mut` * `cloned` Similarly to `IteratorExt::cloned`, the `cloned` method is pared down to work only on `Option<&T>`. Thus, this is a: [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for c9f600b - Browse repository at this point
Copy the full SHA c9f600bView commit details -
Configuration menu - View commit details
-
Copy full SHA for dd8cf92 - Browse repository at this point
Copy the full SHA dd8cf92View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c35953 - Browse repository at this point
Copy the full SHA 1c35953View commit details -
Configuration menu - View commit details
-
Copy full SHA for 93cdf1f - Browse repository at this point
Copy the full SHA 93cdf1fView commit details -
Configuration menu - View commit details
-
Copy full SHA for a67faf1 - Browse repository at this point
Copy the full SHA a67faf1View commit details -
num: Derive Debug for Wrapping
This allows `Wrapping<T>` to be used in `assert_eq!`, for example.
Configuration menu - View commit details
-
Copy full SHA for 975ebc1 - Browse repository at this point
Copy the full SHA 975ebc1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1b98f6d - Browse repository at this point
Copy the full SHA 1b98f6dView commit details -
Auto merge of rust-lang#22930 - Gankro:entry_3, r=aturon
RFC pending, but this is the patch that does it. Totally untested. Likely needs some removed imports. std::collections docs should also be updated to provide better examples. Closes rust-lang#23508
Configuration menu - View commit details
-
Copy full SHA for 242ed0b - Browse repository at this point
Copy the full SHA 242ed0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for afaa3b6 - Browse repository at this point
Copy the full SHA afaa3b6View commit details -
alloc: Don't run some Arc doc tests
Windows gets quite unhappy when a thread fails while the main thread is exiting, frequently leading to process deadlock. This has been causing quite a few deadlocks on the windows bots recently. The child threads are presumably failing because the `println!` is failing due to the main thread being shut down.
Configuration menu - View commit details
-
Copy full SHA for fa38403 - Browse repository at this point
Copy the full SHA fa38403View commit details -
Configuration menu - View commit details
-
Copy full SHA for 82b375b - Browse repository at this point
Copy the full SHA 82b375bView commit details -
Configuration menu - View commit details
-
Copy full SHA for d77a951 - Browse repository at this point
Copy the full SHA d77a951View commit details -
Rollup merge of rust-lang#23625 - fhahn:issue-23620-ice-unicode-bytes…
…tring, r=alexcrichton closes rust-lang#23620 This PR patches the issue mentioned in rust-lang#23620, but there is also an ICE for invalid escape sequences in byte literals. This is due to the fact that the `scan_byte` function returns ` token::intern(\"??\") ` for invalid bytes, resulting in an ICE later on. Is there a reason for this behavior? Shouldn't `scan_byte` fail when it encounters an invalid byte? And I noticed a small inconsistency in the documentation. According to the formal byte literal definition in http://doc.rust-lang.org/reference.html#byte-and-byte-string-literals , a byte string literal contains `string_body *`, but according to the text (and the behavior of the lexer) it should not accept unicode escape sequences. Hence it should be replaced by `byte_body *`. If this is valid, I can add this fix to this PR.
Configuration menu - View commit details
-
Copy full SHA for e65c6e5 - Browse repository at this point
Copy the full SHA e65c6e5View commit details -
Rollup merge of rust-lang#23712 - nikomatsakis:reflect-trait, r=FlaPer87
This PR introduces a `Reflect` marker trait which is a supertrait of `Any`. The idea is that `Reflect` is defined for all concrete types, but is not defined for type parameters unless there is a `T:Reflect` bound. This is intended to preserve the parametricity property. This allows the `Any` interface to be stabilized without committing us to unbounded reflection that is not easily detectable by the caller. The implementation of `Reflect` relies on an experimental variant of OIBIT. This variant behaves differently for objects, since it requires that all types exposed as part of the object's *interface* are `Reflect`, but isn't concerned about other types that may be closed over. In other words, you don't have to write `Foo+Reflect` in order for `Foo: Reflect` to hold (where `Foo` is a trait). Given that `Any` is slated to stabilization and hence that we are committed to some form of reflection, the goal of this PR is to leave our options open with respect to parametricity. I see the options for full stabilization as follows (I think an RFC would be an appropriate way to confirm whichever of these three routes we take): 1. We make `Reflect` a lang-item. 2. We stabilize some version of the OIBIT variation I implemented as a general mechanism that may be appropriate for other use cases. 3. We give up on preserving parametricity here and just have `impl<T> Reflect for T` instead. In that case, `Reflect` is a harmless but not especially useful trait going forward. cc @aturon cc @alexcrichton cc @glaebhoerl (this is more-or-less your proposal, as I understood it) cc @reem (this is more-or-less what we discussed on IRC at some point) cc @flaper87 (vaguely pertains to OIBIT)
Configuration menu - View commit details
-
Copy full SHA for 5b45ede - Browse repository at this point
Copy the full SHA 5b45edeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0e5052c - Browse repository at this point
Copy the full SHA 0e5052cView commit details -
rollup merge of rust-lang#23535: pnkfelix/fsk-filling-drop
Replace zeroing-on-drop with filling-on-drop. This is meant to set the stage for removing *all* zeroing and filling (on drop) in the future. Note that the code is meant to be entirely abstract with respect to the particular values used for the drop flags: the final commit demonstrates how to go from zeroing-on-drop to filling-on-drop by changing the value of three constants (in two files). See further discussion on the internals thread: http://internals.rust-lang.org/t/attention-hackers-filling-drop/1715/11 [breaking-change] especially for structs / enums using `#[unsafe_no_drop_flag]`.
Configuration menu - View commit details
-
Copy full SHA for e42521a - Browse repository at this point
Copy the full SHA e42521aView commit details -
rollup merge of rust-lang#23625: fhahn/issue-23620-ice-unicode-bytest…
…ring closes rust-lang#23620 This PR patches the issue mentioned in rust-lang#23620, but there is also an ICE for invalid escape sequences in byte literals. This is due to the fact that the `scan_byte` function returns ` token::intern("??") ` for invalid bytes, resulting in an ICE later on. Is there a reason for this behavior? Shouldn't `scan_byte` fail when it encounters an invalid byte? And I noticed a small inconsistency in the documentation. According to the formal byte literal definition in http://doc.rust-lang.org/reference.html#byte-and-byte-string-literals , a byte string literal contains `string_body *`, but according to the text (and the behavior of the lexer) it should not accept unicode escape sequences. Hence it should be replaced by `byte_body *`. If this is valid, I can add this fix to this PR.
Configuration menu - View commit details
-
Copy full SHA for b79fbe0 - Browse repository at this point
Copy the full SHA b79fbe0View commit details -
rollup merge of rust-lang#23651: alexcrichton/unwind-try
This commit provides a safe, but unstable interface for the `try` functionality of running a closure and determining whether it panicked or not. There are two primary reasons that this function was previously marked `unsafe`: 1. A vanilla version of this function exposes the problem of exception safety by allowing a bare try/catch in the language. It is not clear whether this concern should be directly tied to `unsafe` in Rust at the API level. At this time, however, the bounds on `ffi::try` require the closure to be both `'static` and `Send` (mirroring those of `thread::spawn`). It may be possible to relax the bounds in the future, but for now it's the level of safety that we're willing to commit to. 2. Panicking while panicking will leak resources by not running destructors. Because panicking is still controlled by the standard library, safeguards remain in place to prevent this from happening. The new API is now called `catch_panic` and is marked as `#[unstable]` for now.
Configuration menu - View commit details
-
Copy full SHA for 6968ccf - Browse repository at this point
Copy the full SHA 6968ccfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 431296f - Browse repository at this point
Copy the full SHA 431296fView commit details -
Configuration menu - View commit details
-
Copy full SHA for adbb516 - Browse repository at this point
Copy the full SHA adbb516View commit details -
Rollup merge of rust-lang#23740 - alexcrichton:remove-deprecated-slic…
…ing-syntax, r=aturon This syntax has been deprecated for quite some time, and there were only a few remaining uses of it in the codebase anyway.
Configuration menu - View commit details
-
Copy full SHA for db50084 - Browse repository at this point
Copy the full SHA db50084View commit details -
rollup merge of rust-lang#23712: nikomatsakis/reflect-trait
This PR introduces a `Reflect` marker trait which is a supertrait of `Any`. The idea is that `Reflect` is defined for all concrete types, but is not defined for type parameters unless there is a `T:Reflect` bound. This is intended to preserve the parametricity property. This allows the `Any` interface to be stabilized without committing us to unbounded reflection that is not easily detectable by the caller. The implementation of `Reflect` relies on an experimental variant of OIBIT. This variant behaves differently for objects, since it requires that all types exposed as part of the object's *interface* are `Reflect`, but isn't concerned about other types that may be closed over. In other words, you don't have to write `Foo+Reflect` in order for `Foo: Reflect` to hold (where `Foo` is a trait). Given that `Any` is slated to stabilization and hence that we are committed to some form of reflection, the goal of this PR is to leave our options open with respect to parametricity. I see the options for full stabilization as follows (I think an RFC would be an appropriate way to confirm whichever of these three routes we take): 1. We make `Reflect` a lang-item. 2. We stabilize some version of the OIBIT variation I implemented as a general mechanism that may be appropriate for other use cases. 3. We give up on preserving parametricity here and just have `impl<T> Reflect for T` instead. In that case, `Reflect` is a harmless but not especially useful trait going forward. cc @aturon cc @alexcrichton cc @glaebhoerl (this is more-or-less your proposal, as I understood it) cc @reem (this is more-or-less what we discussed on IRC at some point) cc @flaper87 (vaguely pertains to OIBIT)
Configuration menu - View commit details
-
Copy full SHA for e6166b7 - Browse repository at this point
Copy the full SHA e6166b7View commit details -
rollup merge of rust-lang#23719: steveklabnik/unstable_book
Now that feature flags are only on nightly, it's good to split this stuff out.
Configuration menu - View commit details
-
Copy full SHA for 8eb918e - Browse repository at this point
Copy the full SHA 8eb918eView commit details -
rollup merge of rust-lang#23721: erickt/deprecate
This is technically a breaking change as it deprecates and unstables some previously stable apis that were missed in the last round of deprecations. [breaking change]
Configuration menu - View commit details
-
Copy full SHA for 4bd1552 - Browse repository at this point
Copy the full SHA 4bd1552View commit details -
rollup merge of rust-lang#23725: tamird/test-with-ios
r? @alexcrichton this should allow `make check` to run when `./configure`d for iOS cross-compilation
Configuration menu - View commit details
-
Copy full SHA for 39fecde - Browse repository at this point
Copy the full SHA 39fecdeView commit details -
rollup merge of rust-lang#23736: gmjosack/master
Found a few 404s that seemed like simple fixes: In footer.inc, certain 404 pages were 404ing on the request to jquery.js and playpen.js. This is easily demonstrated by visiting http://doc.rust-lang.org/foo then http://doc.rust-lang.org/foo/bar. The latter 404s, looking for foo/jquery.js. The Result docs use old_io Writer as an example. Fix the link to old_io Writer. There's probably an effort to update the example away from a deprecated api but this was a simple fix. rustc/plugin was pointing at the old guide and it was a broken link anyways (plugin vs plugins). Point at the book instead. The main page of the API docs referenced c_{str,vec}. Looks like these were deleted in 25d5a3a. Point at ffi docs instead.
Configuration menu - View commit details
-
Copy full SHA for 31fbfc3 - Browse repository at this point
Copy the full SHA 31fbfc3View commit details -
rollup merge of rust-lang#23740: alexcrichton/remove-deprecated-slici…
…ng-syntax This syntax has been deprecated for quite some time, and there were only a few remaining uses of it in the codebase anyway.
Configuration menu - View commit details
-
Copy full SHA for d2fac62 - Browse repository at this point
Copy the full SHA d2fac62View commit details -
rollup merge of rust-lang#23743: Adenilson/addInfoArcClone01
Adding more information about the behavior of Arc/Rc when you perform a clone() call.
Configuration menu - View commit details
-
Copy full SHA for df49ea6 - Browse repository at this point
Copy the full SHA df49ea6View commit details -
rollup merge of rust-lang#23745: oneeman/trpl-looping
Was reading the 'Looping' section of the book and was puzzled why the last example uses `0u32..10` when the others don't. Tried it out without and it seems to work, so I figured it should just be `0..10`. If there is a reason it needs to be `0u32..10` it should be explained in the text (I'd offer to do it but I have no idea). r? @steveklabnik
Configuration menu - View commit details
-
Copy full SHA for 5f9fd2e - Browse repository at this point
Copy the full SHA 5f9fd2eView commit details -
rollup merge of rust-lang#23747: tshepang/misleading-info
The first sentence was not compatible with the second.
Configuration menu - View commit details
-
Copy full SHA for 5d8a529 - Browse repository at this point
Copy the full SHA 5d8a529View commit details -
Configuration menu - View commit details
-
Copy full SHA for 88c3a0f - Browse repository at this point
Copy the full SHA 88c3a0fView commit details -
rollup merge of rust-lang#23752: alexcrichton/remove-should-fail
This attribute has been deprecated in favor of #[should_panic]. This also updates rustdoc to no longer accept the `should_fail` directive and instead renames it to `should_panic`.
Configuration menu - View commit details
-
Copy full SHA for 55c398d - Browse repository at this point
Copy the full SHA 55c398dView commit details -
rollup merge of rust-lang#23753: aturon/revise-convert
This commit revises `path` and `os_str` to use blanket impls for `From` on reference types. This both cuts down on the number of required impls, and means that you can pass through e.g. `T: AsRef<OsStr>` to `PathBuf::from` without an intermediate call to `as_ref`. It also makes a FIXME note for later generalizing the blanket impls for `AsRef` and `AsMut` to use `Deref`/`DerefMut`, once it is possible to do so.
Configuration menu - View commit details
-
Copy full SHA for 7d79a4f - Browse repository at this point
Copy the full SHA 7d79a4fView commit details -
rollup merge of rust-lang#23761: alexcrichton/remove-phase
This commit removes the extra deprecation warnings and support for the old `phase` and `plugin` attributes for loading plugins.
Configuration menu - View commit details
-
Copy full SHA for 6251999 - Browse repository at this point
Copy the full SHA 6251999View commit details -
Configuration menu - View commit details
-
Copy full SHA for 19ed61e - Browse repository at this point
Copy the full SHA 19ed61eView commit details -
rollup merge of rust-lang#23765: alexcrichton/remove-colon-syntax
This syntax has been renamed to `-l static=foo` some time ago.
Configuration menu - View commit details
-
Copy full SHA for fbbf02d - Browse repository at this point
Copy the full SHA fbbf02dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7393693 - Browse repository at this point
Copy the full SHA 7393693View commit details -
rollup merge of rust-lang#23769: alexcrichton/stabilize-split
Now that `<[_]>::split` is an inherent method, it will trump `BufRead::split` when `BufRead` is in scope, so there is no longer a conflict. As a result, calling `slice.split()` will probably always give you precisely what you want!
Configuration menu - View commit details
-
Copy full SHA for a491d21 - Browse repository at this point
Copy the full SHA a491d21View commit details -
rollup merge of rust-lang#23771: aturon/stab-straggle-1
Marks as `#[stable}`: * `ok_or` * `ok_or_else` * `iter_mut` * `cloned` Similarly to `IteratorExt::cloned`, the `cloned` method is pared down to work only on `Option<&T>`. Thus, this is a: [breaking-change] r? @alexcrichton
Configuration menu - View commit details
-
Copy full SHA for 45f1324 - Browse repository at this point
Copy the full SHA 45f1324View commit details -
rollup merge of rust-lang#23775: alexcrichton/fix-flaky-test
Windows gets quite unhappy when a thread fails while the main thread is exiting, frequently leading to process deadlock. This has been causing quite a few deadlocks on the windows bots recently. The child threads are presumably failing because the `println!` is failing due to the main thread being shut down.
Configuration menu - View commit details
-
Copy full SHA for aff160b - Browse repository at this point
Copy the full SHA aff160bView commit details -
Configuration menu - View commit details
-
Copy full SHA for dc6bb5e - Browse repository at this point
Copy the full SHA dc6bb5eView commit details -
rollup merge of rust-lang#23780: ruud-v-a/wrapping
This allows `Wrapping<T>` to be used in `assert_eq!`, for example. One of the tests (compile-fail/xc-private-method.rs) fails, but I can hardly imagine it is related to this change. I would also like to add a tests to ensure that `assert_eq!` compiles and keeps working in the future for `Wrapped<T>` values, but there appear to be no tests in libcore. What would be a good place to add such a test?
Configuration menu - View commit details
-
Copy full SHA for 169231d - Browse repository at this point
Copy the full SHA 169231dView commit details -
rollup merge of rust-lang#23738: alexcrichton/snapshots
Conflicts: src/libcollections/vec.rs
Configuration menu - View commit details
-
Copy full SHA for 956c2eb - Browse repository at this point
Copy the full SHA 956c2ebView commit details -
rollup merge of rust-lang#23741: alexcrichton/remove-int-uint
Conflicts: src/librustc/middle/ty.rs src/librustc_trans/trans/adt.rs src/librustc_typeck/check/mod.rs src/libserialize/json.rs src/test/run-pass/spawn-fn.rs
Configuration menu - View commit details
-
Copy full SHA for 28a6b16 - Browse repository at this point
Copy the full SHA 28a6b16View commit details -
rollup merge of rust-lang#23749: alexcrichton/remove-old-impl-check
Conflicts: src/libsyntax/feature_gate.rs
Configuration menu - View commit details
-
Copy full SHA for e361b25 - Browse repository at this point
Copy the full SHA e361b25View commit details -
rustc: Remove support for hyphens in crate names
This commit removes parser support for `extern crate "foo" as bar` as the renamed crate is now required to be an identifier. Additionally this commit enables hard errors on crate names that contain hyphens in them, they must now solely contain alphanumeric characters or underscores. If the crate name is inferred from the file name, however, the file name `foo-bar.rs` will have the crate name inferred as `foo_bar`. If a binary is being emitted it will have the name `foo-bar` and a library will have the name `libfoo_bar.rlib`. This commit is a breaking change for a number of reasons: * Old syntax is being removed. This was previously only issuing warnings. * The output for the compiler when input is received on stdin is now `rust_out` instead of `rust-out`. * The crate name for a crate in the file `foo-bar.rs` is now `foo_bar` which can affect infrastructure such as logging. [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for b24a3b8 - Browse repository at this point
Copy the full SHA b24a3b8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 13e4270 - Browse repository at this point
Copy the full SHA 13e4270View commit details -
Merge 'richo/unquote-crates' into less-quotes
Conflicts: src/libsyntax/parse/parser.rs
Configuration menu - View commit details
-
Copy full SHA for 8bc3838 - Browse repository at this point
Copy the full SHA 8bc3838View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6acf385 - Browse repository at this point
Copy the full SHA 6acf385View commit details -
When testing whether a default method predicates are satisfiable,
combine normalization with this check so that we also skip the default method if normalization fails. Fixes rust-lang#23485.
Configuration menu - View commit details
-
Copy full SHA for 70042cf - Browse repository at this point
Copy the full SHA 70042cfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0156011 - Browse repository at this point
Copy the full SHA 0156011View commit details -
Configuration menu - View commit details
-
Copy full SHA for e77db16 - Browse repository at this point
Copy the full SHA e77db16View commit details -
Configuration menu - View commit details
-
Copy full SHA for 63bbdc1 - Browse repository at this point
Copy the full SHA 63bbdc1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c9de81 - Browse repository at this point
Copy the full SHA 0c9de81View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a6188a - Browse repository at this point
Copy the full SHA 1a6188aView commit details -
rollup merge of rust-lang#23285: steveklabnik/gh11794
Fixes rust-lang#11794 I mostly removed superflous examples which use the standard library. I have one more quesiton here though: threads. They're mostly a library thing, at this point, right?
Configuration menu - View commit details
-
Copy full SHA for 3f1d57f - Browse repository at this point
Copy the full SHA 3f1d57fView commit details -
rollup merge of rust-lang#23486: nikomatsakis/issue-23485
When testing whether a default method predicates are satisfiable, combine normalization with this check so that we also skip the default method if normalization fails. Fixes rust-lang#23485. r? @nrc (I tried to address your nit from before as well)
Configuration menu - View commit details
-
Copy full SHA for ac24a51 - Browse repository at this point
Copy the full SHA ac24a51View commit details -
rollup merge of rust-lang#23665: steveklabnik/doc_std_ascii
Also tweaked a few things.
Configuration menu - View commit details
-
Copy full SHA for df50510 - Browse repository at this point
Copy the full SHA df50510View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8ec3695 - Browse repository at this point
Copy the full SHA 8ec3695View commit details -
Feature gate *all* slice patterns. rust-lang#23121
Until some backwards-compatibility hazards are fixed in rust-lang#23121, these need to be unstable. [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for 1639e51 - Browse repository at this point
Copy the full SHA 1639e51View commit details -
rollup merge of rust-lang#23197: aatxe/master
`std::dynamic_library` is currently using `std::old_io::Path` specifically. This change brings the API in alignment with `std::fs::File` by having it take `std::path::AsPath`. The Windows code should work, but I admittedly haven't tried it (I don't have a Windows machine readily available right now). r? @alexcrichton
Configuration menu - View commit details
-
Copy full SHA for 828c369 - Browse repository at this point
Copy the full SHA 828c369View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c78478 - Browse repository at this point
Copy the full SHA 1c78478View commit details -
Configuration menu - View commit details
-
Copy full SHA for d65fee2 - Browse repository at this point
Copy the full SHA d65fee2View commit details -
rustdoc: show negative impls properly in the implementors page
This isn't really possible to test in an automatic way, since the only traits you can negative impl are `Send` and `Sync`, and the implementors page for those only exists in libstd. Closes rust-lang#21310
Configuration menu - View commit details
-
Copy full SHA for 8d6fb44 - Browse repository at this point
Copy the full SHA 8d6fb44View commit details -
Configuration menu - View commit details
-
Copy full SHA for e604382 - Browse repository at this point
Copy the full SHA e604382View commit details -
Configuration menu - View commit details
-
Copy full SHA for 59d417a - Browse repository at this point
Copy the full SHA 59d417aView commit details -
rollup merge of rust-lang#23794: brson/slicegate
Conflicts: src/test/run-pass/issue-13027.rs
Configuration menu - View commit details
-
Copy full SHA for 990202c - Browse repository at this point
Copy the full SHA 990202cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7e3fd14 - Browse repository at this point
Copy the full SHA 7e3fd14View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c0e1a8 - Browse repository at this point
Copy the full SHA 1c0e1a8View commit details -
rollup merge of rust-lang#23786: alexcrichton/less-quotes
Conflicts: src/test/auxiliary/static-function-pointer-aux.rs src/test/auxiliary/trait_default_method_xc_aux.rs src/test/run-pass/issue-4545.rs
Configuration menu - View commit details
-
Copy full SHA for d3a4f36 - Browse repository at this point
Copy the full SHA d3a4f36View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5520801 - Browse repository at this point
Copy the full SHA 5520801View commit details -
Make
std::error::Error
not inherit from SendThe Send bound is an unnecessary restriction, and though provided as a convenience, can't be removed by downstream code. The removal of this bound is a [breaking-change] since it removes an implicit Send bound on all `E: Error` and all `Error` trait objects. To migrate, consider if your code actually requires the Send bound and, if so, add it explicitly. Fixes rust-lang#23774
Configuration menu - View commit details
-
Copy full SHA for 3feeea5 - Browse repository at this point
Copy the full SHA 3feeea5View commit details
Commits on Mar 28, 2015
-
Configuration menu - View commit details
-
Copy full SHA for e58f057 - Browse repository at this point
Copy the full SHA e58f057View commit details -
std: Don't deadlock/panic on recursive prints
Previously a panic was generated for recursive prints due to a double-borrow of a `RefCell`. This was solved by the second borrow's output being directed towards the global stdout instead of the per-thread stdout (still experimental functionality). After this functionality was altered, however, recursive prints still deadlocked due to the overridden `write_fmt` method which locked itself first and then wrote all the data. This was fixed by removing the override of the `write_fmt` method. This means that unlocked usage of `write!` on a `Stdout`/`Stderr` may be slower due to acquiring more locks, but it's easy to make more performant with a call to `.lock()`. Closes rust-lang#23781
Configuration menu - View commit details
-
Copy full SHA for e2fd2df - Browse repository at this point
Copy the full SHA e2fd2dfView commit details -
Auto merge of rust-lang#23798 - alexcrichton:issue-23781, r=aturon
Previously a panic was generated for recursive prints due to a double-borrow of a `RefCell`. This was solved by the second borrow's output being directed towards the global stdout instead of the per-thread stdout (still experimental functionality). After this functionality was altered, however, recursive prints still deadlocked due to the overridden `write_fmt` method which locked itself first and then wrote all the data. This was fixed by removing the override of the `write_fmt` method. This means that unlocked usage of `write!` on a `Stdout`/`Stderr` may be slower due to acquiring more locks, but it's easy to make more performant with a call to `.lock()`. Closes rust-lang#23781
Configuration menu - View commit details
-
Copy full SHA for 9f9e251 - Browse repository at this point
Copy the full SHA 9f9e251View commit details -
Auto merge of rust-lang#23799 - reem:error-no-send, r=aturon
The Send bound is an unnecessary restriction, and though provided as a convenience, can't be removed by downstream code. The removal of this bound is a [breaking-change] since it removes an implicit Send bound on all `E: Error` and all `Error` trait objects. To migrate, consider if your code actually requires the Send bound and, if so, add it explicitly. Fixes rust-lang#23774 r? @aturon
Configuration menu - View commit details
-
Copy full SHA for f8b6e28 - Browse repository at this point
Copy the full SHA f8b6e28View commit details -
Configuration menu - View commit details
-
Copy full SHA for cbce6bf - Browse repository at this point
Copy the full SHA cbce6bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for aaf74d1 - Browse repository at this point
Copy the full SHA aaf74d1View commit details -
Rollup merge of rust-lang#23332 - jakub-:rustup-curl-silent-flag, r=b…
…rson curl's progress meter would otherwise interfere with sudo's password prompt. In addition, add the -f flag to make sure 4xx status codes are treated as errors. r? @brson
Configuration menu - View commit details
-
Copy full SHA for 474062d - Browse repository at this point
Copy the full SHA 474062dView commit details -
Rollup merge of rust-lang#23751 - tshepang:do-not-hardcode-the-growth…
…, r=Manishearth I found the arbitrary `10` surprising. A better method name, in such a case, would be `grow_by_10` :)
Configuration menu - View commit details
-
Copy full SHA for 5299d36 - Browse repository at this point
Copy the full SHA 5299d36View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4aa17c8 - Browse repository at this point
Copy the full SHA 4aa17c8View commit details -
Rollup merge of rust-lang#23803 - richo:unused-braces, r=Manishearth
Pretty much what it says on the tin.
Configuration menu - View commit details
-
Copy full SHA for 5eb4be4 - Browse repository at this point
Copy the full SHA 5eb4be4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 95f4061 - Browse repository at this point
Copy the full SHA 95f4061View commit details -
Auto merge of rust-lang#23806 - Manishearth:rollup, r=Manishearth
- Successful merges: rust-lang#23332, rust-lang#23751, rust-lang#23788, rust-lang#23803, rust-lang#23804 - Failed merges:
Configuration menu - View commit details
-
Copy full SHA for 3e7385a - Browse repository at this point
Copy the full SHA 3e7385aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1accaa9 - Browse repository at this point
Copy the full SHA 1accaa9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6b7c5b9 - Browse repository at this point
Copy the full SHA 6b7c5b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 01f2c67 - Browse repository at this point
Copy the full SHA 01f2c67View commit details -
Update debug helpers and add list builder
The collections debug helpers no longer prefix output with the collection name, in line with the current conventions for Debug implementations. Implementations that want to preserve the current behavior can simply add a `try!(write!(fmt, "TypeName "));` at the beginning of the `fmt` method. [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for 4037f2a - Browse repository at this point
Copy the full SHA 4037f2aView commit details -
Right now the `std::isize::BYTES` typedef is `#[unstable]`, but liblibc is using this, preventing it from compiling on stable Rust.
Configuration menu - View commit details
-
Copy full SHA for bd66f57 - Browse repository at this point
Copy the full SHA bd66f57View commit details -
Also convert [T]'s Debug impl. The behavior of the alternate flag here's changing.
Configuration menu - View commit details
-
Copy full SHA for b82bcec - Browse repository at this point
Copy the full SHA b82bcecView commit details -
Remove standard io chapter from the book
This was originally used to set up the guessing game, but that no longer exists. This version uses `old_io`, and updating it involves talking about `&mut` and such, which we haven't covered yet. So, for now, let's just remove it. Fixes rust-lang#23760
Configuration menu - View commit details
-
Copy full SHA for 9fb54f8 - Browse repository at this point
Copy the full SHA 9fb54f8View commit details -
Configuration menu - View commit details
-
Copy full SHA for f6c234f - Browse repository at this point
Copy the full SHA f6c234fView commit details -
All methods are inlined into Iterator with `Self: Sized` bounds to make sure Iterator is still object safe. [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for d502f42 - Browse repository at this point
Copy the full SHA d502f42View commit details -
Auto merge of rust-lang#23300 - sfackler:rm-iterator-ext, r=alexcrichton
All methods are inlined into Iterator with `Self: Sized` bounds to make sure Iterator is still object safe. [breaking-change] This is blocked on ICEs: https://gist.github.com/sfackler/5aff7c57cf8d896e2c6f Seem to be similar to rust-lang#23281.
Configuration menu - View commit details
-
Copy full SHA for c89de2c - Browse repository at this point
Copy the full SHA c89de2cView commit details -
Correct Phil Dawes email address
Phil Dawes committedMar 28, 2015 Configuration menu - View commit details
-
Copy full SHA for 80c188e - Browse repository at this point
Copy the full SHA 80c188eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 842e6cf - Browse repository at this point
Copy the full SHA 842e6cfView commit details -
Port of pcwalton removal of
#[unsafe_destructor]
check.Earlier commits impose rules on lifetimes that make generic destructors safe; thus we no longer need the `#[unsafe_destructor]` attribute nor its associated check. ---- So remove the check for the unsafe_destructor attribute. And remove outdated compile-fail tests from when lifetime-parameteric dtors were disallowed/unsafe. In addition, when one uses the attribute without the associated feature, report that the attribute is deprecated. However, I do not think this is a breaking-change, because the attribute and feature are still currently accepted by the compiler. (After the next snapshot that has this commit, we can remove the feature itself and the attribute as well.) ---- I consider this to: Fix rust-lang#22196 (techincally there is still the post snapshot work of removing the last remants of the feature and the attribute, but the ticket can still be closed in my opinion).
Configuration menu - View commit details
-
Copy full SHA for 64c48f3 - Browse repository at this point
Copy the full SHA 64c48f3View commit details
Commits on Mar 29, 2015
-
Configuration menu - View commit details
-
Copy full SHA for 256e78a - Browse repository at this point
Copy the full SHA 256e78aView commit details -
Auto merge of rust-lang#23819 - pnkfelix:kill-unsafe-dtor, r=pnkfelix
Port of pcwalton removal of `#[unsafe_destructor]` check. Earlier commits impose rules on lifetimes that make generic destructors safe; thus we no longer need the `#[unsafe_destructor]` attribute nor its associated check. ---- So remove the check for the unsafe_destructor attribute. And remove outdated compile-fail tests from when lifetime-parameteric dtors were disallowed/unsafe. In addition, when one uses the attribute without the associated feature, report that the attribute is deprecated. However, I do not think this is a breaking-change, because the attribute and feature are still currently accepted by the compiler. (After the next snapshot that has this commit, we can remove the feature itself and the attribute as well.) ---- I consider this to: Fix rust-lang#22196 (technically there is still the post snapshot work of removing the last remnants of the feature and the attribute, but the ticket can still be closed in my opinion).
Configuration menu - View commit details
-
Copy full SHA for 27af78c - Browse repository at this point
Copy the full SHA 27af78cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3c0c8fc - Browse repository at this point
Copy the full SHA 3c0c8fcView commit details -
Auto merge of rust-lang#23810 - sfackler:debug-collections, r=alexcri…
…chton The collections debug helpers no longer prefix output with the collection name, in line with the current conventions for Debug implementations. Implementations that want to preserve the current behavior can simply add a `try!(write!(fmt, "TypeName "));` at the beginning of the `fmt` method. [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for 227b46b - Browse repository at this point
Copy the full SHA 227b46bView commit details -
Fix massive performance issue in read_to_end
with_end_to_cap is enormously expensive now that it's initializing memory since it involves 64k allocation + memset on every call. This is most noticable when calling read_to_end on very small readers, where the new version if **4 orders of magnitude** faster. BufReader also depended on with_end_to_cap so I've rewritten it in its original form. As a bonus, converted the buffered IO struct Debug impls to use the debug builders. Fixes rust-lang#23815
Configuration menu - View commit details
-
Copy full SHA for ccb4e84 - Browse repository at this point
Copy the full SHA ccb4e84View commit details -
Auto merge of rust-lang#23787 - steveklabnik:gh23760, r=alexcrichton
This was originally used to set up the guessing game, but that no longer exists. This version uses `old_io`, and updating it involves talking about `&mut` and such, which we haven't covered yet. So, for now, let's just remove it. Fixes rust-lang#23760
Configuration menu - View commit details
-
Copy full SHA for fa3d778 - Browse repository at this point
Copy the full SHA fa3d778View commit details -
Configuration menu - View commit details
-
Copy full SHA for 58c7d6f - Browse repository at this point
Copy the full SHA 58c7d6fView commit details -
Auto merge of rust-lang#23809 - cmr:issue-21310, r=Manishearth
This isn't really possible to test in an automatic way, since the only traits you can negative impl are `Send` and `Sync`, and the implementors page for those only exists in libstd. Closes rust-lang#21310
Configuration menu - View commit details
-
Copy full SHA for ea03ad9 - Browse repository at this point
Copy the full SHA ea03ad9View commit details -
Rollup merge of rust-lang#23811 - alexcrichton:libc-stable, r=Manishe…
…arth Right now the `std::isize::BYTES` typedef is `#[unstable]`, but liblibc is using this, preventing it from compiling on stable Rust.
Configuration menu - View commit details
-
Copy full SHA for ef94b8a - Browse repository at this point
Copy the full SHA ef94b8aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5daab4a - Browse repository at this point
Copy the full SHA 5daab4aView commit details -
Rollup merge of rust-lang#23817 - phildawes:master, r=alexcrichton
Hello! I noticed that the email address in AUTHORS.txt doesn't point to my home email. Could somebody merge this patch to correct it please? Thanks very much!
Configuration menu - View commit details
-
Copy full SHA for a96ee9d - Browse repository at this point
Copy the full SHA a96ee9dView commit details -
Rollup merge of rust-lang#23821 - nicholasbishop:bishop-slice-iter-ty…
…po-fix, r=alexcrichton
Configuration menu - View commit details
-
Copy full SHA for 963bf1d - Browse repository at this point
Copy the full SHA 963bf1dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9147463 - Browse repository at this point
Copy the full SHA 9147463View commit details -
Auto merge of rust-lang#23831 - Manishearth:rollup, r=Manishearth
- Successful merges: rust-lang#23811, rust-lang#23814, rust-lang#23817, rust-lang#23821, rust-lang#23829 - Failed merges:
Configuration menu - View commit details
-
Copy full SHA for b27ba52 - Browse repository at this point
Copy the full SHA b27ba52View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8fe7f1f - Browse repository at this point
Copy the full SHA 8fe7f1fView commit details -
Configuration menu - View commit details
-
Copy full SHA for c5370be - Browse repository at this point
Copy the full SHA c5370beView commit details -
To not use `old_io` and `os`, which are deprecated. Since there is no more `MemoryMap` used byte parsing instead to generate the second potential error.
Andrew Hobden committedMar 29, 2015 Configuration menu - View commit details
-
Copy full SHA for e489eaa - Browse repository at this point
Copy the full SHA e489eaaView commit details -
Fix trailing whitespace. Whoops!
Andrew Hobden committedMar 29, 2015 Configuration menu - View commit details
-
Copy full SHA for 1a5e73a - Browse repository at this point
Copy the full SHA 1a5e73aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a1bad7 - Browse repository at this point
Copy the full SHA 2a1bad7View commit details -
Auto merge of rust-lang#23820 - sfackler:fast_read_to_end, r=alexcric…
…hton with_end_to_cap is enormously expensive now that it's initializing memory since it involves 64k allocation + memset on every call. This is most noticable when calling read_to_end on very small readers, where the new version if **4 orders of magnitude** faster. BufReader also depended on with_end_to_cap so I've rewritten it in its original form. As a bonus, converted the buffered IO struct Debug impls to use the debug builders. I first came across this in sfackler/rust-postgres#106 where a user reported a 10x performance regression. A call to read_to_end turned out to be the culprit: sfackler/rust-postgres@9cd413d. The new version differs from the old in a couple of ways. The buffer size used is now adaptive. It starts at 32 bytes and doubles each time EOF hasn't been reached up to a limit of 64k. In addition, the buffer is only truncated when EOF or an error has been reached, rather than after every call to read as was the case for the old implementation. I wrote up a benchmark to compare the old version and new version: https://gist.github.com/sfackler/e979711b0ee2f2063462 It tests a couple of different cases: a high bandwidth reader, a low bandwidth reader, and a low bandwidth reader that won't return more than 10k per call to `read`. The high bandwidth reader should be analagous to use cases when reading from e.g. a `BufReader` or `Vec`, and the low bandwidth readers should be analogous to reading from something like a `TcpStream`. Of special note, reads from a high bandwith reader containing 4 bytes are now *4,495 times faster*. ``` ~/foo ❯ cargo bench Compiling foo v0.0.1 (file:///home/sfackler/foo) Running target/release/foo-7498d7dd7faecf5c running 13 tests test test_new ... ignored test new_delay_4 ... bench: 230768 ns/iter (+/- 14812) test new_delay_4_cap ... bench: 231421 ns/iter (+/- 7211) test new_delay_5m ... bench: 14495370 ns/iter (+/- 4008648) test new_delay_5m_cap ... bench: 73127954 ns/iter (+/- 59908587) test new_nodelay_4 ... bench: 83 ns/iter (+/- 2) test new_nodelay_5m ... bench: 12527237 ns/iter (+/- 335243) test std_delay_4 ... bench: 373095 ns/iter (+/- 12613) test std_delay_4_cap ... bench: 374190 ns/iter (+/- 19611) test std_delay_5m ... bench: 17356012 ns/iter (+/- 15906588) test std_delay_5m_cap ... bench: 883555035 ns/iter (+/- 205559857) test std_nodelay_4 ... bench: 144937 ns/iter (+/- 2448) test std_nodelay_5m ... bench: 16095893 ns/iter (+/- 3315116) test result: ok. 0 passed; 0 failed; 1 ignored; 12 measured ``` r? @alexcrichton
Configuration menu - View commit details
-
Copy full SHA for 92f3d9a - Browse repository at this point
Copy the full SHA 92f3d9aView commit details -
Remove about standard io chapter from the book (from arrays-vectors-a…
…nd-slices chapter) Remove the last sentence about standard io chapter. Additional Fixes rust-lang#23760
kgv committedMar 29, 2015 Configuration menu - View commit details
-
Copy full SHA for f575aca - Browse repository at this point
Copy the full SHA f575acaView commit details -
Fixed wrong name of test module in testing.md
The documentation says that 'The current convention is to use the `test` module to hold your "unit-style"' but then defines the module as "tests" instead.
Configuration menu - View commit details
-
Copy full SHA for b77a09c - Browse repository at this point
Copy the full SHA b77a09cView commit details -
Configuration menu - View commit details
-
Copy full SHA for bf9c27d - Browse repository at this point
Copy the full SHA bf9c27dView commit details -
Andrew Hobden committed
Mar 29, 2015 Configuration menu - View commit details
-
Copy full SHA for d4b5f65 - Browse repository at this point
Copy the full SHA d4b5f65View commit details -
Auto merge of rust-lang#23830 - petrochenkov:spellcheck, r=steveklabnik
With help of https://github.com/lucasdemarchi/codespell r? @steveklabnik
Configuration menu - View commit details
-
Copy full SHA for d8be84e - Browse repository at this point
Copy the full SHA d8be84eView commit details
Commits on Mar 30, 2015
-
Configuration menu - View commit details
-
Copy full SHA for c748864 - Browse repository at this point
Copy the full SHA c748864View commit details -
Auto merge of rust-lang#23838 - kgv:master, r=steveklabnik
Remove the last sentence about standard io chapter. Additional Fixes rust-lang#23760
Configuration menu - View commit details
-
Copy full SHA for f55d03c - Browse repository at this point
Copy the full SHA f55d03cView commit details -
Configuration menu - View commit details
-
Copy full SHA for d9252bd - Browse repository at this point
Copy the full SHA d9252bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for f002640 - Browse repository at this point
Copy the full SHA f002640View commit details -
Implement new type-checking strategy for binary operators. Basically,
the plan is to treat all binary operators as if they were overloaded, relying on the fact that we have impls for all the builtin scalar operations (and no more). But then during writeback we clear the overload if the types correspond to a builtin op. This strategy allows us to avoid having to know the types of the operands ahead of time. It also avoids us overspecializing as we did in the past.
Configuration menu - View commit details
-
Copy full SHA for d649292 - Browse repository at this point
Copy the full SHA d649292View commit details -
Driveby cleanup of the impl for negation, which had some kind of
surprising casts. This version more obviously corresponds to the builtin semantics.
Configuration menu - View commit details
-
Copy full SHA for d6466ff - Browse repository at this point
Copy the full SHA d6466ffView commit details -
Fallout where types must be specified.
This is due to a [breaking-change] to operators. The primary affected code is uses of the `Rng` trait where we used to (incorrectly) infer the right-hand-side type from the left-hand-side, in the case that the LHS type was a scalar like `i32`. The fix is to add a type annotation like `x + rng.gen::<i32>()`.
Configuration menu - View commit details
-
Copy full SHA for c92bdcb - Browse repository at this point
Copy the full SHA c92bdcbView commit details -
Auto merge of rust-lang#23848 - cmr:no-compiler-docs, r=huonw
This saves a bunch of a time and will make distributions smaller, as well as avoiding filling the implementors page with internal garbage. Turn it back on with `--enable-compiler-docs` if you want them. (Crates behind the facade are not documented at all) [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for 14192d6 - Browse repository at this point
Copy the full SHA 14192d6View commit details -
Configuration menu - View commit details
-
Copy full SHA for aa13981 - Browse repository at this point
Copy the full SHA aa13981View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0705e6a - Browse repository at this point
Copy the full SHA 0705e6aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 492b3b1 - Browse repository at this point
Copy the full SHA 492b3b1View commit details -
Address Issue 14270 by making
cmt::freely_aliasable
result more fin……e-grained. Instead of encoding the aliasability (i.e. whether the cmt is uniquely writable or not) as an option, now pass back an enum indicating either: 1. freely-aliasable (thus not uniquely-writable), 2. non-aliasble (thus uniquely writable), or 3. unique but immutable (and thus not uniquely writable, according to proposal from issue 14270.) This is all of course a giant hack that will hopefully go away with an eventually removal of special treatment of `Box<T>` (aka `ty_unique`) from the compiler.
Configuration menu - View commit details
-
Copy full SHA for f513380 - Browse repository at this point
Copy the full SHA f513380View commit details -
Configuration menu - View commit details
-
Copy full SHA for e434053 - Browse repository at this point
Copy the full SHA e434053View commit details -
Configuration menu - View commit details
-
Copy full SHA for e2b2a53 - Browse repository at this point
Copy the full SHA e2b2a53View commit details -
Add test case for rust-lang#22743.
Fixes rust-lang#22743. Fixes rust-lang#19035. Fixes rust-lang#22099. (Those all seem to be exactly the same scenario.)
Configuration menu - View commit details
-
Copy full SHA for 7595c25 - Browse repository at this point
Copy the full SHA 7595c25View commit details -
Auto merge of rust-lang#23673 - nikomatsakis:issue-23319-binops-ng-5,…
… r=pnkfelix The current binary operator code assumed that if the LHS was a scalar (`i32` etc), then the RHS had to match. This is not true with multidispatch. This PR generalizes the existing code to (primarily) use the traits -- this also allows us to defer the precise type-checking when the types aren't fully known. The one caveat is the unstable SIMD types, which don't fit in with the current traits -- in that case, the LHS type must be known to be SIMD ahead of time. There is one semi-hacky bit in that during writeback, for builtin operators, if the types resolve to scalars (i32 etc) then we clear the method override. This is because we know what the semantics are and it is more efficient to generate the code directly. It also ensures that we can use these overloaded operators in constants and so forth. cc @japaric cc @aturon Fixes rust-lang#23319 (and others).
Configuration menu - View commit details
-
Copy full SHA for 9de34a8 - Browse repository at this point
Copy the full SHA 9de34a8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3b45470 - Browse repository at this point
Copy the full SHA 3b45470View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c0314a - Browse repository at this point
Copy the full SHA 6c0314aView commit details -
Auto merge of rust-lang#23861 - Manishearth:rollup, r=Manishearth
- Successful merges: rust-lang#23746, rust-lang#23836, rust-lang#23852 - Failed merges: rust-lang#23855
Configuration menu - View commit details
-
Copy full SHA for 6cf3b0b - Browse repository at this point
Copy the full SHA 6cf3b0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8f0c952 - Browse repository at this point
Copy the full SHA 8f0c952View commit details -
Configuration menu - View commit details
-
Copy full SHA for 085bcfa - Browse repository at this point
Copy the full SHA 085bcfaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c1f5bd - Browse repository at this point
Copy the full SHA 4c1f5bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6e8693b - Browse repository at this point
Copy the full SHA 6e8693bView commit details -
std: Standardize (input, output) param orderings
This functions swaps the order of arguments to a few functions that previously took (output, input) parameters, but now take (input, output) parameters (in that order). The affected functions are: * ptr::copy * ptr::copy_nonoverlapping * slice::bytes::copy_memory * intrinsics::copy * intrinsics::copy_nonoverlapping Closes rust-lang#22890 [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for acd48a2 - Browse repository at this point
Copy the full SHA acd48a2View commit details -
lint: handle private traits better
Due to a long-standing conservative approach to trait exports, all traits are considered exported. However, the missing_docs lint uses the export map to determine if something is public and ought to have documentation. This commit modifies the lint to check if traits are private before emitting the warning. Closes rust-lang#11592
Configuration menu - View commit details
-
Copy full SHA for 31a5285 - Browse repository at this point
Copy the full SHA 31a5285View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1026b06 - Browse repository at this point
Copy the full SHA 1026b06View commit details -
rustdoc: output stderr on doc-test fail
Forward output from stderr when a test executable panics/fails.
Configuration menu - View commit details
-
Copy full SHA for 5dc23be - Browse repository at this point
Copy the full SHA 5dc23beView commit details
Commits on Mar 31, 2015
-
Configuration menu - View commit details
-
Copy full SHA for 83d3503 - Browse repository at this point
Copy the full SHA 83d3503View commit details -
Configuration menu - View commit details
-
Copy full SHA for 470996a - Browse repository at this point
Copy the full SHA 470996aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8410788 - Browse repository at this point
Copy the full SHA 8410788View commit details -
Rollup merge of rust-lang#23836 - Hoverbear:patch-1, r=steveklabnik
To not use `old_io` and `os`, which are deprecated. Since there is no more `MemoryMap` used byte parsing instead to generate the second potential error. You can see the code working fine [here](http://is.gd/4g0wwp) on the PlayPen.
Configuration menu - View commit details
-
Copy full SHA for 4038593 - Browse repository at this point
Copy the full SHA 4038593View commit details -
Rollup merge of rust-lang#23839 - tyrion:patch-1, r=alexcrichton
The documentation says that 'The current convention is to use the `test` module to hold your "unit-style"' but then defines the module as "tests" instead. Also in the output of the command we can see: ``` test test::it_works ... ok ``` So I think the name of the module was meant to be "test"
Configuration menu - View commit details
-
Copy full SHA for a4da0d8 - Browse repository at this point
Copy the full SHA a4da0d8View commit details -
Rollup merge of rust-lang#23846 - rayglover:patch-rustdoc-stderr, r=a…
…lexcrichton Currently if a rustdoc test panics then the fatal error message is not forwarded to the user. This change will have the test runner prefer forwarding anything on the stderr of the test process.
Configuration menu - View commit details
-
Copy full SHA for e76b412 - Browse repository at this point
Copy the full SHA e76b412View commit details -
Rollup merge of rust-lang#23852 - cmr:missing_doc, r=Manishearth
Due to a long-standing conservative approach to trait exports, all traits are considered exported. However, the missing_docs lint uses the export map to determine if something is public and ought to have documentation. This commit modifies the lint to check if traits are private before emitting the warning. Closes rust-lang#11592
Configuration menu - View commit details
-
Copy full SHA for 2c0329c - Browse repository at this point
Copy the full SHA 2c0329cView commit details -
Rollup merge of rust-lang#23859 - pnkfelix:fsk-lesser-box, r=nikomats…
…akis Disallow writing through mutable pointers stored in non-mut Box. Fix rust-lang#14270 The fix works by making `cmt::freely_aliasable` result more fine-grained. Instead of encoding the aliasability (i.e. whether the cmt is uniquely writable or not) as an option, now pass back an enum indicating either: 1. freely-aliasable (thus not uniquely-writable), 2. non-aliasable (thus uniquely writable), or 3. unique but immutable (and thus not uniquely writable, according to proposal from issue rust-lang#14270.) This is all of course a giant hack that will hopefully go away with an eventually removal of special treatment of `Box<T>` (aka `ty_unique`) from the compiler.
Configuration menu - View commit details
-
Copy full SHA for b4457fb - Browse repository at this point
Copy the full SHA b4457fbView commit details -
Rollup merge of rust-lang#23862 - jviereck:fix_23713_v2, r=steveklabnik
Based on the comment from @apasel422 in rust-lang#23791 (comment). Where @apasel422 proposed ``` Moves the value out of the option if it is `Some`, or panics if it is `None`. ``` I include in this PR the version ``` Moves the value `v` out of the `Option` if it is `Some(v)`, or panics if it is `None`. ``` which - is a little bit more precise about what value is actually returned - uses `Option` over just "option" in the part `out of the [Option] r? @steveklabnik, @apasel422
Configuration menu - View commit details
-
Copy full SHA for 8225a1c - Browse repository at this point
Copy the full SHA 8225a1cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 464c18c - Browse repository at this point
Copy the full SHA 464c18cView commit details -
Rollup merge of rust-lang#23866 - alexcrichton:switch-some-orders, r=…
…aturon This functions swaps the order of arguments to a few functions that previously took (output, input) parameters, but now take (input, output) parameters (in that order). The affected functions are: * ptr::copy * ptr::copy_nonoverlapping * slice::bytes::copy_memory * intrinsics::copy * intrinsics::copy_nonoverlapping Closes rust-lang#22890 [breaking-change]
Configuration menu - View commit details
-
Copy full SHA for 5793804 - Browse repository at this point
Copy the full SHA 5793804View commit details -
Rollup merge of rust-lang#23869 - tshepang:more-complete-builder-patt…
…ern-example, r=alexcrichton This makes some use of `x` and `y`, instead of setting them to the same value.
Configuration menu - View commit details
-
Copy full SHA for 7afc7d3 - Browse repository at this point
Copy the full SHA 7afc7d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for db76327 - Browse repository at this point
Copy the full SHA db76327View commit details