summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2016-07-03Release notes for 1.10.0 1.10.0Brian Anderson-0/+312
2016-07-03Merge pull request #34635 from alexcrichton/beta-nextAlex Crichton-55/+161
Last minute backports to beta
2016-07-03Bump the beta version to 4Alex Crichton-1/+1
2016-07-03Don't translate vtable methods with Self: Sized bounds.Eduard Burtescu-1/+34
2016-07-03Revert "skip double negation in const eval"Alex Crichton-45/+39
This reverts commit 735c018974e5570ea13fd887aa70a011a5b8e7b8.
2016-07-03fail obligations that depend on erroring obligationsAriel Ben-Yehuda-8/+87
Fix a bug where an obligation that depend on an erroring obligation would be regarded as successful, leading to global cache pollution and random lossage. Fixes #33723. Fixes #34503.
2016-07-02Merge pull request #34604 from arielb1/metadata-hash-betaAlex Crichton-58/+106
More robust metadata lock - beta edition
2016-07-02fix test falloutAriel Ben-Yehuda-9/+9
2016-07-02add a encoding version to the actual metadataAriel Ben-Yehuda-18/+59
previously, only .so files included a metadata encoding version, *outside* of the zlib compressed area. This adds an encoding version inside the metadata itself, in both .so and .rlib files. Fixes #33778.
2016-07-02make the metadata lock more robust and bump the metadata encoding versionAriel Ben-Yehuda-31/+38
check the metadata lock when loading rather than afterwards Fixes #33733 Fixes #33015
2016-06-30Merge pull request #34589 from alexcrichton/beta-nextBrian Anderson-32/+1
Backport #34383 and bump the beta version
2016-06-30Bump beta version to .3Alex Crichton-1/+1
2016-06-30configure: Remove clang version checksAlex Crichton-31/+0
We no C++ and an incredibly small amount of C code as part of the build, so there's not really much need for us to strictly check the version of compilers as we're not really stressing anything. LLVM is a pretty huge chunk of C++ but it should be the responsibility of LLVM to ensure that it can build with a particular clang/gcc version, not ours (as this logic changes over time). These version checks seem to basically just by us a regular stream of PRs every six weeks or so when a new version is releases, so they're not really buying us much. As a result, remove them and we can add then back piecemeal perhaps as a blacklist if we really need to.
2016-06-28Merge pull request #34533 from alexcrichton/beta-nextBrian Anderson-128/+123
Backport #34141 to beta
2016-06-27trans: always use a memcpy for ABI argument/return casts.Eduard Burtescu-128/+123
2016-05-31Merge pull request #33996 from alexcrichton/beta-nextBrian Anderson-12/+40
Backport two small Android patches
2016-05-31std: Use memalign, not posix_memalign, on AndroidAlex Crichton-7/+34
We've gotten requests to move our Android support as far back as API level 9 where unfortunately the `posix_memalign` API wasn't implemented yet. Thankfully, however, the `memalign` API was and it appears to be usable with `free` on the Android platform (see comments included in commit). This should help fix some of the last few test failures when compiling against API level 9.
2016-05-31test: Use `set sysroot` for more NDK compatibilityAlex Crichton-5/+6
Recent versions of the Android NDK no longer ship debuggers like `arm-linux-androideabi-gdb`, but instead one prebuilt binary `gdb`. We can symlink this into place at least to get our detection still working, but it now needs to be told what the sysroot is so it can correctly do... something. Long story short, tests didn't pass with this change and after this change they pass.
2016-05-26Merge pull request #33883 from alexcrichton/beta-nextNiko Matsakis-531/+649
Backport API stabilizations and an FFI fix
2016-05-26Bump beta version to .2Alex Crichton-1/+1
2016-05-26Fix stores codegen passSimonas Kazlauskas-4/+4
2016-05-26Do not forget to schedule the drop for the argumentSimonas Kazlauskas-2/+3
2016-05-26Fix nit/Refine the datum constructionSimonas Kazlauskas-3/+1
2016-05-26Fix the fix/hack interaction with debuginfoSimonas Kazlauskas-10/+13
2016-05-26Add a regression testSimonas Kazlauskas-0/+29
2016-05-26Fix handling of C argumentsSimonas Kazlauskas-20/+34
Fixes #33868
2016-05-26std: Stabilize APIs for the 1.10 releaseAlex Crichton-494/+567
This commit applies the FCP decisions made by the libs team for the 1.10 cycle, including both new stabilizations and deprecations. Specifically, the list of APIs is: Stabilized: * `os::windows::fs::OpenOptionsExt::access_mode` * `os::windows::fs::OpenOptionsExt::share_mode` * `os::windows::fs::OpenOptionsExt::custom_flags` * `os::windows::fs::OpenOptionsExt::attributes` * `os::windows::fs::OpenOptionsExt::security_qos_flags` * `os::unix::fs::OpenOptionsExt::custom_flags` * `sync::Weak::new` * `Default for sync::Weak` * `panic::set_hook` * `panic::take_hook` * `panic::PanicInfo` * `panic::PanicInfo::payload` * `panic::PanicInfo::location` * `panic::Location` * `panic::Location::file` * `panic::Location::line` * `ffi::CStr::from_bytes_with_nul` * `ffi::CStr::from_bytes_with_nul_unchecked` * `ffi::FromBytesWithNulError` * `fs::Metadata::modified` * `fs::Metadata::accessed` * `fs::Metadata::created` * `sync::atomic::Atomic{Usize,Isize,Bool,Ptr}::compare_exchange` * `sync::atomic::Atomic{Usize,Isize,Bool,Ptr}::compare_exchange_weak` * `collections::{btree,hash}_map::{Occupied,Vacant,}Entry::key` * `os::unix::net::{UnixStream, UnixListener, UnixDatagram, SocketAddr}` * `SocketAddr::is_unnamed` * `SocketAddr::as_pathname` * `UnixStream::connect` * `UnixStream::pair` * `UnixStream::try_clone` * `UnixStream::local_addr` * `UnixStream::peer_addr` * `UnixStream::set_read_timeout` * `UnixStream::set_write_timeout` * `UnixStream::read_timeout` * `UnixStream::write_Timeout` * `UnixStream::set_nonblocking` * `UnixStream::take_error` * `UnixStream::shutdown` * Read/Write/RawFd impls for `UnixStream` * `UnixListener::bind` * `UnixListener::accept` * `UnixListener::try_clone` * `UnixListener::local_addr` * `UnixListener::set_nonblocking` * `UnixListener::take_error` * `UnixListener::incoming` * RawFd impls for `UnixListener` * `UnixDatagram::bind` * `UnixDatagram::unbound` * `UnixDatagram::pair` * `UnixDatagram::connect` * `UnixDatagram::try_clone` * `UnixDatagram::local_addr` * `UnixDatagram::peer_addr` * `UnixDatagram::recv_from` * `UnixDatagram::recv` * `UnixDatagram::send_to` * `UnixDatagram::send` * `UnixDatagram::set_read_timeout` * `UnixDatagram::set_write_timeout` * `UnixDatagram::read_timeout` * `UnixDatagram::write_timeout` * `UnixDatagram::set_nonblocking` * `UnixDatagram::take_error` * `UnixDatagram::shutdown` * RawFd impls for `UnixDatagram` * `{BTree,Hash}Map::values_mut` * `<[_]>::binary_search_by_key` Deprecated: * `StaticCondvar` - this, and all other static synchronization primitives below, are usable today through the lazy-static crate on stable Rust today. Additionally, we'd like the non-static versions to be directly usable in a static context one day, so they're unlikely to be the final forms of the APIs in any case. * `CONDVAR_INIT` * `StaticMutex` * `MUTEX_INIT` * `StaticRwLock` * `RWLOCK_INIT` * `iter::Peekable::is_empty` Closes #27717 Closes #27720 cc #27784 (but encode methods still exist) Closes #30014 Closes #30425 Closes #30449 Closes #31190 Closes #31399 Closes #31767 Closes #32111 Closes #32281 Closes #32312 Closes #32551 Closes #33018
2016-05-23mk: Bootstrap from the 1.9.0 stable releaseAlex Crichton-2/+2
2016-05-23mk: Fix bootstrapping cross-hosts on betaAlex Crichton-9/+20
The beta builds are currently failing, unfortunately, due to what is presumably some odd behavior with our makefiles. The wrong bootstrap key is being used to generate the stage1 cross-compiled libraries, which fails the build. Interestingly enough if the targets are directly specified as part of the build then it works just fine! Just a bare `make` fails... Instead of trying to understand what's happening in the makefiles instead just tweak how we configure the bootstrap key in a way that's more likely to work.
2016-05-23Auto merge of #33098 - raphlinus:master, r=alexcrichtonbors-1134/+1383
Efficient trie lookup for boolean Unicode properties Replace binary search of ranges with trie lookup using leaves of 64-bit bitmap chunks. Benchmarks suggest this is approximately 10x faster than the bsearch approach.
2016-05-22Auto merge of #31457 - lambda:rtabort-use-libc-abort, r=alexcrichtonbors-4/+25
Use libc::abort, not intrinsics::abort, in rtabort! intrinsics::abort compiles down to an illegal instruction, which on Unix-like platforms causes the process to be killed with SIGILL. A more appropriate way to kill the process would be SIGABRT; this indicates better that the runtime has explicitly aborted, rather than some kind of compiler bug or architecture mismatch that SIGILL might indicate. For rtassert!, replace this with libc::abort. libc::abort raises SIGABRT, but is defined to do so in such a way that it will terminate the process even if SIGABRT is currently masked or caught by a signal handler that returns. On non-Unix platforms, retain the existing behavior. On Windows we prefer to avoid depending on the C runtime, and we need a fallback for any other platforms that may be defined. An alternative on Windows would be to call TerminateProcess, but this seems less essential than switching to using SIGABRT on Unix-like platforms, where it is common for the process-killing signal to be printed out or logged. This is a [breaking-change] for any code that depends on the exact signal raised to abort a process via rtabort! cc #31273 cc #31333
2016-05-23Use libc::abort, not intrinsics::abort, in rtabort!Brian Campbell-4/+25
intrinsics::abort compiles down to an illegal instruction, which on Unix-like platforms causes the process to be killed with SIGILL. A more appropriate way to kill the process would be SIGABRT; this indicates better that the runtime has explicitly aborted, rather than some kind of compiler bug or architecture mismatch that SIGILL might indicate. For rtassert!, replace this with libc::abort. libc::abort raises SIGABRT, but is defined to do so in such a way that it will terminate the process even if SIGABRT is currently masked or caught by a signal handler that returns. On non-Unix platforms, retain the existing behavior. On Windows we prefer to avoid depending on the C runtime, and we need a fallback for any other platforms that may be defined. An alternative on Windows would be to call TerminateProcess, but this seems less essential than switching to using SIGABRT on Unix-like platforms, where it is common for the process-killing signal to be printed out or logged. This is a [breaking-change] for any code that depends on the exact signal raised to abort a process via rtabort! cc #31273 cc #31333
2016-05-21Auto merge of #33765 - alex-ozdemir:master, r=Manishearthbors-3/+11
Added a `rustdoc` shortcut for collapse/expand all Now when the user presses the "+" key all sections will collapse/expand. Also added a note to the help screen which describes this behavior. This required increasing the height of the help screen.
2016-05-21Auto merge of #33752 - mrhota:internal_docs, r=steveklabnikbors-29/+54
Internal docs This PR is a rebase of #30621. That PR can be closed. CC @ticki @Aatch @cyplo
2016-05-21Auto merge of #33767 - sfackler:panic-hook-docs, r=alexcrichtonbors-5/+6
Mention that the panic hook will always run r? @alexcrichton cc @tomaka
2016-05-21Improve internal documentation and code styleTicki-29/+54
Fix some code layout, remove some unnecessary returns, fix typos, punctuation, and comment consistency.
2016-05-21Auto merge of #33768 - Manishearth:rollup, r=Manishearthbors-39/+81
Rollup of 7 pull requests - Successful merges: #33578, #33679, #33743, #33746, #33747, #33750, #33757 - Failed merges:
2016-05-21Rollup merge of #33757 - GuillaumeGomez:simd, r=steveklabnikManish Goregaokar-4/+4
Update simd syntax r? @steveklabnik
2016-05-21Rollup merge of #33750 - alx741:fix_typo, r=ManishearthManish Goregaokar-1/+1
book: ownership: fix typo The sentence ends there, so a comma is required. See: http://english.stackexchange.com/questions/1469/when-ending-a-list-with-etc-should-there-be-a-comma-before-etc
2016-05-21Rollup merge of #33747 - postmodern:patch-2, r=ManishearthManish Goregaokar-4/+5
Clarify the English translation of `?Sized` * It wasn't clear whether `?Sized` meant "not `Sized`" or "`Sized` or not `Sized`". According to #rust IRC, it does indeed mean "`Sized` or not `Sized`". * Use the same language as [Trait std::marker::Sized](https://doc.rust-lang.org/std/marker/trait.Sized.html) about how `Sized` is implicitly bound. * Refer to the syntax as `?Sized`, since it's currently the only allowed trait that can follow `?`.
2016-05-21Rollup merge of #33746 - dns2utf8:doc_sort_memory, r=steveklabnikManish Goregaokar-7/+4
Clarify docs for sort(&mut self) I documented the memory usage like noted in this issue: * Document memory usage of sort() family of functions #33419
2016-05-21Rollup merge of #33743 - royalstream:royalstream-stack-doc, r=steveklabnikManish Goregaokar-2/+2
Book: small improvement to a table to make it clearer This table is used as an example of four heap values where two of them got deallocated leaving a gap. It also has stack variables. Instead of four stack variables I propose three, that way there's no misleading connection between the number of stack variables and heap variables. But more importantly: three of the four stack variables had the same name (**y**) which could be confusing to a beginner, I changed this as well.
2016-05-21Rollup merge of #33679 - Manishearth:rustdoc-readmore-impls, r=alexcrichtonManish Goregaokar-18/+62
rustdoc: Add doc snippets for trait impls, with a read more link The read more link only appears if the documentation is more than one line long. ![screenshot from 2016-05-17 06 54 14](https://cloud.githubusercontent.com/assets/1617736/15308544/4c2ba0ce-1bfc-11e6-9add-29de8dc7ac6e.png) It currently does not appear on non-defaulted methods, since you can document them directly. I could make it so that default documentation gets forwarded if regular docs don't exist. Fixes #33672 r? @alexcrichton cc @steveklabnik
2016-05-21Rollup merge of #33578 - durka:patch-21, r=alexcrichtonManish Goregaokar-3/+3
update tracking issue for once_poison The tracking issue for once_poison was noted as #31688 which was closed, so it now points to the new #33577.
2016-05-20Auto merge of #33625 - alexcrichton:rustbuild-moar-tests, r=aturonbors-67/+225
rustbuild: Touch up some test suites This adds in some missing test suites, primarily a few pretty suites. It also starts optimizing tests by default as the current test suite does, but also recognizes `--disable-optimize-tests`. Currently the optimization of tests isn't recognized by crate tests because Cargo doesn't support the ability to compile an unoptimized test suite against an optimized library. Perhaps a feature to add, though!
2016-05-20Added a `rustdoc` shortcut for collapse/expand allAlex Ozdemir-3/+11
Now when the user presses the "+" key all sections will collapse/expand. Also added a note to the help screen which describes this behavior.
2016-05-20Wording changesPostmodern-3/+3
* Use "special bound syntax" instead of "special syntax". `?Sized` is technically a "bound", but `?Sized` is specialized syntax that _only_ works with `Sized`, and no other Trait. * Replace "constant size" with "sized".
2016-05-20update tracking issue for once_poisonAlex Burka-3/+3
The tracking issue for once_poison was noted as #31688 which was closed, so it now points to the new #33577.
2016-05-20Auto merge of #33758 - GuillaumeGomez:rollup, r=Manishearthbors-25/+415
Rollup of 6 pull requests - Successful merges: #33668, #33676, #33683, #33734, #33739, #33745 - Failed merges: #33578
2016-05-20rustc: Fix again order-dependence in extern crateAlex Crichton-49/+143
Originally fixed in #29961 the bug was unfortunately still present in the face of crates using `#[macro_use]`. This commit refactors for the two code paths to share common logic to ensure that they both pick up the same bug fix. Closes #33762