Commit Graph

1236 Commits

Author SHA1 Message Date
Richo Healey
7faffbef68 Fix PEP8 for errorck 2015-01-27 01:26:02 -08:00
Richo Healey
91928dd9e9 Fix PEP8 for check-summary.py 2015-01-27 01:26:02 -08:00
Richo Healey
f7509df8f9 Fix PEP8 in sugarise-doc-comments 2015-01-27 01:26:02 -08:00
Richo Healey
ab0081ae45 Fix PEP8 in snapshot.py 2015-01-27 01:26:02 -08:00
Richo Healey
58d03ad95d Fix PEP8 in maketest 2015-01-27 01:26:01 -08:00
Richo Healey
04408fadd3 Fix PEP8 in make-win-dist 2015-01-27 01:25:54 -08:00
Richo Healey
2822bc582c Fix PEP8 in lldb_rust_formatters.py 2015-01-27 01:25:54 -08:00
Richo Healey
f697a06da4 Fix PEP8 in lldb_batchmode.py 2015-01-27 01:25:54 -08:00
Richo Healey
958dea1745 make get-snapshot externally usable 2015-01-27 01:09:38 -08:00
Richo Healey
f230683b1a Fix PEP8 in get-snapshot 2015-01-27 01:09:38 -08:00
Richo Healey
6af36031e2 Fix PEP8 in gdb pretty printer 2015-01-27 01:09:38 -08:00
Sébastien Marie
d553ed66c7 shell 'case' statement don't need 'break'
the syntax of 'case' is:
`case word in [[(] pattern [| pattern] ...) list ;; ] ... esac`

`list` don't have to issue `break`. `break` is normally used to exit a
`for`, `until` or `while` loop.
2015-01-26 08:32:34 +01:00
Brian Anderson
d179ba3b8e Merge remote-tracking branch 'rust-lang/master'
Conflicts:
	src/libcore/cmp.rs
	src/libcore/fmt/mod.rs
	src/libcore/iter.rs
	src/libcore/marker.rs
	src/libcore/num/f32.rs
	src/libcore/num/f64.rs
	src/libcore/result.rs
	src/libcore/str/mod.rs
	src/librustc/lint/builtin.rs
	src/librustc/lint/context.rs
	src/libstd/sync/mpsc/mod.rs
	src/libstd/sync/poison.rs
2015-01-25 22:14:06 -08:00
Jorge Aparicio
bff462302b cleanup: s/impl Copy/#[derive(Copy)]/g 2015-01-25 11:20:38 -05:00
emanueLczirai
59c2de16df fix vim syntastic: --parse-only => -Z parse-only
when saving .rs files under vim
do not fail to run the syntax checker
error: Unrecognized option: 'parse-only'.

due to this commit
953f294ea3
which removed the deprecated flag --parse-only
2015-01-25 16:17:19 +01:00
Brian Anderson
de5498650a featurkck: Typo 2015-01-25 01:25:59 -08:00
Brian Anderson
63fcbcf3ce Merge remote-tracking branch 'rust-lang/master'
Conflicts:
	mk/tests.mk
	src/liballoc/arc.rs
	src/liballoc/boxed.rs
	src/liballoc/rc.rs
	src/libcollections/bit.rs
	src/libcollections/btree/map.rs
	src/libcollections/btree/set.rs
	src/libcollections/dlist.rs
	src/libcollections/ring_buf.rs
	src/libcollections/slice.rs
	src/libcollections/str.rs
	src/libcollections/string.rs
	src/libcollections/vec.rs
	src/libcollections/vec_map.rs
	src/libcore/any.rs
	src/libcore/array.rs
	src/libcore/borrow.rs
	src/libcore/error.rs
	src/libcore/fmt/mod.rs
	src/libcore/iter.rs
	src/libcore/marker.rs
	src/libcore/ops.rs
	src/libcore/result.rs
	src/libcore/slice.rs
	src/libcore/str/mod.rs
	src/libregex/lib.rs
	src/libregex/re.rs
	src/librustc/lint/builtin.rs
	src/libstd/collections/hash/map.rs
	src/libstd/collections/hash/set.rs
	src/libstd/sync/mpsc/mod.rs
	src/libstd/sync/mutex.rs
	src/libstd/sync/poison.rs
	src/libstd/sync/rwlock.rs
	src/libsyntax/feature_gate.rs
	src/libsyntax/test.rs
2015-01-25 01:20:55 -08:00
Brian Anderson
b7fe2c54b7 Fix bugs in featureck.py 2015-01-23 21:43:38 -08:00
Brian Anderson
9758c488a9 Deprecated attributes don't take 'feature' names and are paired with stable/unstable
Conflicts:
	src/libcore/atomic.rs
	src/libcore/finally.rs
	src/test/auxiliary/inherited_stability.rs
	src/test/auxiliary/lint_stability.rs
2015-01-23 15:50:03 -08:00
Kevin Yap
76c279a4cf Use a regex to perform license check 2015-01-22 23:04:14 -08:00
Kevin Yap
fc5bbdf70f Make make tidy Python scripts more idiomatic
Also makes errorck.py and tidy.py compatible with Python 3.
2015-01-22 23:04:07 -08:00
Brian Anderson
41278c5441 Remove 'since' from unstable attributes 2015-01-21 19:25:55 -08:00
Brian Anderson
0768892abe Minor fixes 2015-01-21 16:16:22 -08:00
Brian Anderson
11f4d62a06 Add a lint for library features
Does a sanity check of the version numbers.
2015-01-21 16:16:21 -08:00
Alex Crichton
b250d9a3c8 rollup merge of #21289: brson/errorcodes
This does the bare minimum to make registration of error codes work again. After this patch, every call to `span_err!` with an error code gets that error code validated against a list in that crate and a new tidy script `errorck.py` validates that no error codes are duplicated globally.

There are further improvements to be made yet, detailed in #19624.

r? @nikomatsakis
2015-01-21 09:13:46 -08:00
Alex Crichton
41890bfa46 rollup merge of #21274: estsauver/21270
The timezone of the server that builds rustc nightlies
appears to be in UTC. From what I can tell, it builds
the nightlies at 0300 UTC, which takes about ~15 minutes.
So, there were a couple options here for which offset to use.

UTC+3 would ensure that you always got the latest rust, but it
would mean the script is broken ~15/20 minutes a day. UTC+4
means users get a stale nightly for 45 minutes, but that feels
okay to me.

Ideally, buildbot would publish the "current" nightly, but
that seems unneeded relative to fixing it for all Timezones
quickly.

Fixes #21270
2015-01-21 09:13:43 -08:00
Alex Crichton
550255d986 rollup merge of #21138: mkpankov/master
When combined with '--save' and '--date', it uses previously saved
tarball, making possible to re-install in offline mode.
r?
2015-01-21 09:13:40 -08:00
Alex Crichton
83af23ea49 rollup merge of #19913: KOMON/rust-mode-emacs-indentation
I added an option to auto-indent method chains to line up along their '.' operators. Like so:

```
let input = io::stdin().readline()
                       .ok()
                       .expect("Failed to read line");
```

The old default would indent like so:
```
let input = io::stdin().readme()
    .ok()
    .expect("Failed to read line");
```

The Rust guide explicitly condones the former, so I thought it would be nice for the emacs mode to support it. It's off by default, you have to set ```rust-indent-method-chain``` to ```t``` via your .emacs or the customize menu
2015-01-21 09:13:36 -08:00
bors
6869645e86 Auto merge of #21242 - richo:no-perl, r=brson
There's only one build-critical path in which perl is used, and it was to do a text replacement trivially achievable with sed(1).

I ported the indenter script because it [appears to be used][indenter], but removed check links because it appears to be entirely out of date.

[indenter]: https://github.com/rust-lang/rust/blob/master/src/librustc/util/common.rs#L60-70
2015-01-21 11:07:31 +00:00
Daniel Raloff
8051bd0626 Changed rust-mode code for tabs -> spaces 2015-01-20 14:07:10 -08:00
Brian Anderson
953d6dfd7e Make error code registration work again. #19624 2015-01-20 11:27:14 -08:00
Barosl LEE
0225f9a380 Rollup merge of #21123 - visualfc:master, r=alexcrichton
example:
let m = "hello \
           world";
2015-01-21 02:16:51 +09:00
Barosl LEE
c5fd58d512 Rollup merge of #21377 - iKevinY:speedy-tidy, r=huonw
`x in y` is more Pythonic than `y.find(x) != -1`. I believe it runs quite a bit faster as well (though it's probably not a bottleneck of the Travis builds):

```bash
$ python -m timeit '"abc".find("a") != -1'
1000000 loops, best of 3: 0.218 usec per loop
$ python -m timeit '"a" in "abc"'
10000000 loops, best of 3: 0.0343 usec per loop
```
2015-01-21 02:16:50 +09:00
Barosl LEE
0efdda314a Rollup merge of #21369 - iKevinY:no-travis-notes, r=sanxiyn
Updated `tidy.py` to skip printing NOTEs if the [`TRAVIS`](http://docs.travis-ci.com/user/ci-environment/#Environment-variables) environment variable is set.
2015-01-21 02:16:49 +09:00
Barosl LEE
356c61da8d Rollup merge of #21326 - look:nano-syntax-highlighting, r=kmcallister
rust.nanorc provides syntax highlighting for Rust. An attempt has been made to make the syntax highlighting look good on both dark and light terminals. Issue #21286.

This PR is dedicated to @substars and nano-lovers everywhere.
2015-01-21 02:16:47 +09:00
Barosl LEE
1d8b917811 Rollup merge of #20998 - estsauver:20984, r=steveklabnik
There are a large number of places that incorrectly refer
to deriving in comments, instead of derives.

If someone could look at src/etc/generate-deriving-span-tests.py,
I'm not sure how those tests were passing before/if they were.
2015-01-21 02:16:45 +09:00
Earl St Sauver
c034f4a44a Make date of nightly in rustup match server TZ 2015-01-18 18:06:15 -08:00
Kevin Yap
21f4483de3 Use 'in' instead of 'find()' in tidy.py
'x in y' is more Pythonic and faster than 'y.find(x) != -1'.
2015-01-18 14:52:59 -08:00
Kevin Yap
d1b1b62ae8 Ignore NOTEs when Travis runs make tidy
Only print NOTE warnings if the 'TRAVIS' environment variable has not
been set. Addresses #21322.
2015-01-18 09:29:44 -08:00
Kang Seonghoon
2c1d1fbdf9 tests: Warn on the trailing backslash in the template. 2015-01-18 13:23:34 +09:00
Luke Francl
ac4baca72a Passable nano syntax highlighting
rust.nanorc provides syntax highlighting for Rust. An attempt has been made to
make the syntax highlighting look good on both dark and light terminals.
Issue #21286.
2015-01-17 13:59:49 -08:00
Earl St Sauver
6ab95bdd62 s/deriving/derives in Comments/Docs
There are a large number of places that incorrectly refer
to deriving in comments, instead of derives.

Fixes #20984
2015-01-17 11:08:02 -08:00
Kang Seonghoon
39e19ccdb6 tests: Tidy and allows multi-line htmldocck commands. 2015-01-18 03:23:52 +09:00
Kang Seonghoon
de6f520192 tests: Add htmldocck.py script for the use of Rustdoc tests.
The script is intended as a tool for doing every sort of verifications
amenable to Rustdoc's HTML output. For example, link checkers would go
to this script. It already parses HTML into a document tree form (with
a slight caveat), so future tests can make use of it.

As an example, relevant `rustdoc-*` run-make tests have been updated
to use `htmldocck.py` and got their `verify.sh` removed. In the future
they may go to a dedicated directory with htmldocck running by default.
The detailed explanation of test scripts is provided as a docstring of
htmldocck.

cc #19723
2015-01-18 02:42:15 +09:00
Michael Pankov
785176b7cc rustup: Don't attempt to download SHA if it exists
This way installer can work fully in offline mode.

Put pre-downloaded files
(rust-nightly-x86_64-unknown-linux-gnu.tar.gz and
 rust-nightly-x86_64-unknown-linux-gnu.tar.gz.sha256)
into the $HOME/.rustup/YYYY-MM-DD directory
as it would be done by script itself.

Specify --save and --date=YYYY-MM-DD when running.
Files will be picked up and used to install in offline mode.
2015-01-17 02:37:13 +03:00
Richo Healey
de3ea99ec5 Port indenter to python 2015-01-16 08:49:54 -08:00
Richo Healey
68372ae655 Remove unused script 2015-01-16 08:49:54 -08:00
visualfc
935b37a460 fix string multi line connector '\' for kate
example:
let m = "hello \
           world";
2015-01-14 09:45:41 +08:00
bors
3a44a19af2 auto merge of #20894 : swgillespie/rust/emacs-issue-20422, r=pnkfelix
rust-mode.el recently started highlighting keywords that were substrings of identifiers. Identifiers such as `xyz_type` would have `type` highlighted, which isn't normal. This patch re-introduces `_` as a word constituent, so that keywords following a `_` don't get syntax highlighted as keywords. Fixes issue #20422
2015-01-12 19:20:56 +00:00
Tim Brooks
4c78d28344 Remove range function 2015-01-11 14:37:24 +00:00
Tim Brooks
ed13698317 Remove old number literal suffixes from Vim syntax 2015-01-11 14:36:55 +00:00
Sean Gillespie
f82c75b0a7 Mark _ as a word constituent to avoid highlighting parts of identifiers as keywords 2015-01-09 23:58:34 -08:00
bors
2a8cb678e6 Merge pull request #20689 from huonw/editor-_size
Update editor syntax files for isize/usize.

Reviewed-by: nikomatsakis
2015-01-07 15:35:34 +00:00
Huon Wilson
6c7291ece4 Update editor syntax files for isize/usize.
Yay, syntax highlighting.
2015-01-07 20:19:58 +11:00
bors
a3a16e9610 auto merge of #20620 : brson/rust/relnotes, r=huonw
A whole lot happened this cycle. I tried to highlight the best stuff. Please review and note important stuff I'm missing or foolish mistakes.
2015-01-07 08:32:46 +00:00
Brian Anderson
93190b364b Bump some version numbers 2015-01-06 15:58:23 -08:00
Alex Crichton
e0f546a07e rollup merge of #20643: scialex/update-zsh 2015-01-06 15:25:02 -08:00
Alex Crichton
f358dbf1e7 rollup merge of #20557: cactorium/prettyprinters
As per https://github.com/rust-lang/rust/issues/20405. To be more precise, the changes just the processing of enums when the name is "RUST$ENCODED$ENUM$..." so it correctly parses when there is more than one number encoding the location of the field it's looking for to determine state of the enum
2015-01-06 15:24:52 -08:00
Alexander Light
570bda6657 update zsh rust completions 2015-01-06 12:15:41 -05:00
Alex Crichton
7975fd9cee rollup merge of #20482: kmcallister/macro-reform
Conflicts:
	src/libflate/lib.rs
	src/libstd/lib.rs
	src/libstd/macros.rs
	src/libsyntax/feature_gate.rs
	src/libsyntax/parse/parser.rs
	src/libsyntax/show_span.rs
	src/test/auxiliary/macro_crate_test.rs
	src/test/compile-fail/lint-stability.rs
	src/test/run-pass/intrinsics-math.rs
	src/test/run-pass/tcp-connect-timeouts.rs
2015-01-05 19:01:17 -08:00
Alex Crichton
4c549786fa rollup merge of #20583: csouth3/vim-syntax
The prelude has changed quite a bit since the list that Vim is aware of has been updated.  This pull request brings it up to date with `std::prelude`.
2015-01-05 18:42:06 -08:00
Keegan McAllister
c9f0ff3813 Reserve the keyword 'macro' 2015-01-05 18:21:14 -08:00
Chase Southwood
faf07b1365 Update reexports in vim syntax file 2015-01-05 12:21:47 -06:00
York Xiang
09c4e8fe96 kate syntax highlight: update keyword list 2015-01-05 15:11:54 +08:00
Kelvin Ly
22cae7e034 Pylinted and slightly better commented 2015-01-04 23:43:47 -05:00
Kelvin Ly
3d3670bc65 Added fix to LLDB formatter 2015-01-04 23:35:29 -05:00
Kelvin Ly
d009a76182 Fixed GDB pretty printer more 2015-01-04 21:39:07 -05:00
Kelvin Ly
56a5f3184d Fixed GDB pretty printer to work on enums correctly 2015-01-04 21:39:07 -05:00
bors
48c6c80795 Merge pull request #20452 from brson/rustup
Move rustup to the combined installer

Reviewed-by: brson
2015-01-04 21:36:35 +00:00
bors
0eb7da758d Merge pull request #20442 from csouth3/vim-syntax
Fix vim syntax highlighting for `derive`

Reviewed-by: alexcrichton
2015-01-04 21:36:34 +00:00
Brian Anderson
ebdf331133 Download from the combined installer 2015-01-03 15:54:37 -08:00
Brian Anderson
a7a57ca92d rustup: Long lines 2015-01-03 08:29:33 -08:00
bors
fc2ba13939 auto merge of #20456 : brson/rust/packaging2, r=alexcrichton 2015-01-03 05:35:17 +00:00
Brian Anderson
d30353c1d2 Remove .pkg and .exe installers 2015-01-02 20:44:07 -08:00
Brian Anderson
51a2feec7b rustup: Don't do verbose tarball extraction 2015-01-02 17:08:03 -08:00
Brian Anderson
83270ed546 rustup: Install from the combined installer 2015-01-02 15:15:15 -08:00
Brian Anderson
b32e0098ef Merge remote-tracking branch 'erickt/rustup' 2015-01-02 13:15:09 -08:00
Chase Southwood
c8fcbe7561 Fix vim syntax highlighting for derive 2015-01-02 15:06:13 -06:00
Alex Crichton
8b7d032014 rollup merge of #20273: alexcrichton/second-pass-comm
Conflicts:
	src/doc/guide.md
	src/libcollections/bit.rs
	src/libcollections/btree/node.rs
	src/libcollections/slice.rs
	src/libcore/ops.rs
	src/libcore/prelude.rs
	src/librand/rand_impls.rs
	src/librustc/middle/check_match.rs
	src/librustc/middle/infer/region_inference/mod.rs
	src/librustc_driver/lib.rs
	src/librustdoc/test.rs
	src/libstd/bitflags.rs
	src/libstd/io/comm_adapters.rs
	src/libstd/io/mem.rs
	src/libstd/io/mod.rs
	src/libstd/io/net/pipe.rs
	src/libstd/io/net/tcp.rs
	src/libstd/io/net/udp.rs
	src/libstd/io/pipe.rs
	src/libstd/io/process.rs
	src/libstd/io/stdio.rs
	src/libstd/io/timer.rs
	src/libstd/io/util.rs
	src/libstd/macros.rs
	src/libstd/os.rs
	src/libstd/path/posix.rs
	src/libstd/path/windows.rs
	src/libstd/prelude/v1.rs
	src/libstd/rand/mod.rs
	src/libstd/rand/os.rs
	src/libstd/sync/barrier.rs
	src/libstd/sync/condvar.rs
	src/libstd/sync/future.rs
	src/libstd/sync/mpsc/mod.rs
	src/libstd/sync/mpsc/mpsc_queue.rs
	src/libstd/sync/mpsc/select.rs
	src/libstd/sync/mpsc/spsc_queue.rs
	src/libstd/sync/mutex.rs
	src/libstd/sync/once.rs
	src/libstd/sync/rwlock.rs
	src/libstd/sync/semaphore.rs
	src/libstd/sync/task_pool.rs
	src/libstd/sys/common/helper_thread.rs
	src/libstd/sys/unix/process.rs
	src/libstd/sys/unix/timer.rs
	src/libstd/sys/windows/c.rs
	src/libstd/sys/windows/timer.rs
	src/libstd/sys/windows/tty.rs
	src/libstd/thread.rs
	src/libstd/thread_local/mod.rs
	src/libstd/thread_local/scoped.rs
	src/libtest/lib.rs
	src/test/auxiliary/cci_capture_clause.rs
	src/test/bench/shootout-reverse-complement.rs
	src/test/bench/shootout-spectralnorm.rs
	src/test/compile-fail/array-old-syntax-2.rs
	src/test/compile-fail/bind-by-move-no-guards.rs
	src/test/compile-fail/builtin-superkinds-self-type.rs
	src/test/compile-fail/comm-not-freeze-receiver.rs
	src/test/compile-fail/comm-not-freeze.rs
	src/test/compile-fail/issue-12041.rs
	src/test/compile-fail/unsendable-class.rs
	src/test/run-pass/builtin-superkinds-capabilities-transitive.rs
	src/test/run-pass/builtin-superkinds-capabilities-xc.rs
	src/test/run-pass/builtin-superkinds-capabilities.rs
	src/test/run-pass/builtin-superkinds-self-type.rs
	src/test/run-pass/capturing-logging.rs
	src/test/run-pass/closure-bounds-can-capture-chan.rs
	src/test/run-pass/comm.rs
	src/test/run-pass/core-run-destroy.rs
	src/test/run-pass/drop-trait-enum.rs
	src/test/run-pass/hashmap-memory.rs
	src/test/run-pass/issue-13494.rs
	src/test/run-pass/issue-3609.rs
	src/test/run-pass/issue-4446.rs
	src/test/run-pass/issue-4448.rs
	src/test/run-pass/issue-8827.rs
	src/test/run-pass/issue-9396.rs
	src/test/run-pass/ivec-tag.rs
	src/test/run-pass/rust-log-filter.rs
	src/test/run-pass/send-resource.rs
	src/test/run-pass/send-type-inference.rs
	src/test/run-pass/sendable-class.rs
	src/test/run-pass/spawn-types.rs
	src/test/run-pass/task-comm-0.rs
	src/test/run-pass/task-comm-10.rs
	src/test/run-pass/task-comm-11.rs
	src/test/run-pass/task-comm-13.rs
	src/test/run-pass/task-comm-14.rs
	src/test/run-pass/task-comm-15.rs
	src/test/run-pass/task-comm-16.rs
	src/test/run-pass/task-comm-3.rs
	src/test/run-pass/task-comm-4.rs
	src/test/run-pass/task-comm-5.rs
	src/test/run-pass/task-comm-6.rs
	src/test/run-pass/task-comm-7.rs
	src/test/run-pass/task-comm-9.rs
	src/test/run-pass/task-comm-chan-nil.rs
	src/test/run-pass/task-spawn-move-and-copy.rs
	src/test/run-pass/task-stderr.rs
	src/test/run-pass/tcp-accept-stress.rs
	src/test/run-pass/tcp-connect-timeouts.rs
	src/test/run-pass/tempfile.rs
	src/test/run-pass/trait-bounds-in-arc.rs
	src/test/run-pass/trivial-message.rs
	src/test/run-pass/unique-send-2.rs
	src/test/run-pass/unique-send.rs
	src/test/run-pass/unwind-resource.rs
2015-01-02 09:15:54 -08:00
Michael Woerister
91a0e18866 debuginfo: Add a rust-gdb shell script that will start GDB with Rust pretty printers enabled. 2014-12-30 17:26:13 +01:00
Alex Crichton
cb7599b83e rollup merge of #20317: brson/rust-installer-v2 2014-12-29 19:47:58 -08:00
Brian Anderson
7628806997 mk: Package mingw components in unix installer on windows
This puts stdc++ and the unwinding dll into the main package
and creates a separate rust-mingw package for everything else.
2014-12-29 17:26:05 -08:00
Alex Crichton
b31926d115 rollup merge of #20243: bombless/patch-1 2014-12-29 16:36:17 -08:00
Alex Crichton
bc83a009f6 std: Second pass stabilization for comm
This commit is a second pass stabilization for the `std::comm` module,
performing the following actions:

* The entire `std::comm` module was moved under `std::sync::mpsc`. This movement
  reflects that channels are just yet another synchronization primitive, and
  they don't necessarily deserve a special place outside of the other
  concurrency primitives that the standard library offers.
* The `send` and `recv` methods have all been removed.
* The `send_opt` and `recv_opt` methods have been renamed to `send` and `recv`.
  This means that all send/receive operations return a `Result` now indicating
  whether the operation was successful or not.
* The error type of `send` is now a `SendError` to implement a custom error
  message and allow for `unwrap()`. The error type contains an `into_inner`
  method to extract the value.
* The error type of `recv` is now `RecvError` for the same reasons as `send`.
* The `TryRecvError` and `TrySendError` types have had public reexports removed
  of their variants and the variant names have been tweaked with enum
  namespacing rules.
* The `Messages` iterator is renamed to `Iter`

This functionality is now all `#[stable]`:

* `Sender`
* `SyncSender`
* `Receiver`
* `std::sync::mpsc`
* `channel`
* `sync_channel`
* `Iter`
* `Sender::send`
* `Sender::clone`
* `SyncSender::send`
* `SyncSender::try_send`
* `SyncSender::clone`
* `Receiver::recv`
* `Receiver::try_recv`
* `Receiver::iter`
* `SendError`
* `RecvError`
* `TrySendError::{mod, Full, Disconnected}`
* `TryRecvError::{mod, Empty, Disconnected}`
* `SendError::into_inner`
* `TrySendError::into_inner`

This is a breaking change due to the modification of where this module is
located, as well as the changing of the semantics of `send` and `recv`. Most
programs just need to rename imports of `std::comm` to `std::sync::mpsc` and
add calls to `unwrap` after a send or a receive operation.

[breaking-change]
2014-12-29 12:16:49 -08:00
Erick Tryzelaar
6465cb85a7 rustup: allow the use of either sha256sum or shasum to verify the download hash 2014-12-29 11:34:12 -05:00
Erick Tryzelaar
13aac00fa2 rustup: Add support for resuming downloads 2014-12-29 10:04:09 -05:00
Erick Tryzelaar
b2fbed6e70 rustup: allow rust and cargo snapshot dates to be different 2014-12-29 10:04:09 -05:00
Erick Tryzelaar
32c187a879 rustup: add caching of old nightlies 2014-12-29 10:02:41 -05:00
Erick Tryzelaar
b59d4e7295 rustup: Add support for verifying remote hashes 2014-12-29 09:58:49 -05:00
bors
03a1188cf3 auto merge of #19227 : johshoff/rust/master, r=brson
Using the current directory may not always be appropriate, for example in
the case where it will unnecessarily trigger a backup to be made.

The only risk with this change is that systems might not have a mktemp.
I am not aware of such a system, but have not tested on Windows. It is
working on a basic Ubuntu and OS X installation.
2014-12-29 05:22:26 +00:00
Johannes Hoff
0e2b5d99af Split overly long line 2014-12-28 12:59:19 +01:00
bombless
8387d1e1be add new-style Unicode escapes 2014-12-26 21:30:11 +08:00
bors
ead198c513 auto merge of #20024 : mneumann/rust/dragonfly-fixes3, r=alexcrichton 2014-12-25 05:11:36 +00:00
Johannes Hoff
ee72c57bc9 Better temporary directory name 2014-12-24 13:25:28 +01:00
Johannes Hoff
0128159c95 Merge branch 'master' into cfg_tmp_dir
Conflicts:
	src/etc/rustup.sh
2014-12-24 13:22:11 +01:00
bors
e751038bfd Merge pull request #19886 from brson/rustup
rustup: Don't do verbose tarball extraction

Reviewed-by: alexcrichton
2014-12-23 09:31:25 +00:00
Alex Crichton
117984b884 rustc: Start "stabilizing" some flags
This commit shuffles around some CLI flags of the compiler to some more stable
locations with some renamings. The changes made were:

* The `-v` flag has been repurposes as the "verbose" flag. The version flag has
  been renamed to `-V`.
* The `-h` screen has been split into two parts. Most top-level options (not
  all) show with `-h`, and the remaining options (generally obscure) can be
  shown with `--help -v` which is a "verbose help screen"
* The `-V` flag (version flag now) has lost its argument as it is now requested
  with `rustc -vV` "verbose version".
* The `--emit` option has had its `ir` and `bc` variants renamed to `llvm-ir`
  and `llvm-bc` to emphasize that they are LLVM's IR/bytecode.
* The `--emit` option has grown a new variant, `dep-info`, which subsumes the
  `--dep-info` CLI argument. The `--dep-info` flag is now deprecated.
* The `--parse-only`, `--no-trans`, and `--no-analysis` flags have
  moved behind the `-Z` family of flags.
* The `--debuginfo` and `--opt-level` flags were moved behind the top-level `-C`
  flag.
* The `--print-file-name` and `--print-crate-name` flags were moved behind one
  global `--print` flag which now accepts one of `crate-name`, `file-names`, or
  `sysroot`. This global `--print` flag is intended to serve as a mechanism for
  learning various metadata about the compiler itself.

No warnings are currently enabled to allow tools like Cargo to have time to
migrate to the new flags before spraying warnings to all users.
2014-12-19 11:38:24 -08:00
Michael Neumann
25c1bfe175 Several fixes for DragonFly (rebase) 2014-12-19 13:05:06 +01:00
Patrick Walton
ddb2466f6a librustc: Always parse macro!()/macro![] as expressions if not
followed by a semicolon.

This allows code like `vec![1i, 2, 3].len();` to work.

This breaks code that uses macros as statements without putting
semicolons after them, such as:

    fn main() {
        ...
        assert!(a == b)
        assert!(c == d)
        println(...);
    }

It also breaks code that uses macros as items without semicolons:

    local_data_key!(foo)

    fn main() {
        println("hello world")
    }

Add semicolons to fix this code. Those two examples can be fixed as
follows:

    fn main() {
        ...
        assert!(a == b);
        assert!(c == d);
        println(...);
    }

    local_data_key!(foo);

    fn main() {
        println("hello world")
    }

RFC #378.

Closes #18635.

[breaking-change]
2014-12-18 12:09:07 -05:00
Alex Crichton
cce3fc043e rollup merge of #19905: AaronFriel/patch-1
Was testing rustup on a very minimal Debian installation and got errors during the install process (error occurred in `install.sh` of the Rust nightly.)

Noticed that Rustup was downloading the i686 nightly instead of x86-64. Installing `file` fixed the problem, and this patch adds the probe to ensure file is installed before attempting to use it.

There may still be an issue with the i686 installation, I did not investigate further.
2014-12-17 11:50:30 -08:00
Alex Crichton
1f2a18c7a6 rollup merge of #19893: JacobEdelman/patch-1
FIxed the spelling of the word "specific".
2014-12-17 11:50:29 -08:00
Alex Crichton
58020d38b1 rollup merge of #19753: brson/rust-installer
This is just a refactoring of the current installer so that Rust and Cargo
use the same codebase.

cc #16456
2014-12-17 11:50:23 -08:00
Daniel Raloff
a72bd699cf added optional method chain indentations for emacs major mode 2014-12-16 00:43:57 -08:00
Aaron Friel
4ecad89636 Add probe and var for file
Was testing rustup on a very minimal Debian installation and got errors during the install process (error occurred in `install.sh` of the Rust nightly.)

Noticed that Rustup was downloading the i686 nightly instead of x86-64. Installing `file` fixed the problem, and this patch adds the probe to ensure file is installed before attempting to use it.

There may still be an issue with the i686 installation, I did not investigate further.
2014-12-15 22:45:12 -06:00
bors
b497f05008 auto merge of #19747 : alexcrichton/rust/slice-one-trait, r=brson
This commit collapses the various prelude traits for slices into just one trait:

* SlicePrelude/SliceAllocPrelude => SliceExt
* CloneSlicePrelude/CloneSliceAllocPrelude => CloneSliceExt
* OrdSlicePrelude/OrdSliceAllocPrelude => OrdSliceExt
* PartialEqSlicePrelude => PartialEqSliceExt
2014-12-16 01:32:33 +00:00
Jacob Edelman
72608eba43 Fixed a small spelling mistake 2014-12-15 17:07:49 -05:00
Brian Anderson
349382b002 rustup: Don't do verbose tarball extraction
This creates an enormous amount of spew.
2014-12-15 09:03:32 -08:00
Brian Anderson
e52efe262d rollup merge of #19804: kballard/vim-new-unicode-escapes 2014-12-15 06:45:36 -08:00
Brian Anderson
0b214bfee0 rollup merge of #19784: csouth3/vim-syntax-iter
Vim still incorrectly highlights just `ExactSize` as a valid trait name, but the trait has been renamed to `ExactSizeIterator`.
2014-12-15 06:45:35 -08:00
Brian Anderson
5691c0f49a rollup merge of #19775: SimonSapin/gedit-new-unicode-escape 2014-12-15 06:45:35 -08:00
Alex Crichton
7741516a8b std: Collapse SlicePrelude traits
This commit collapses the various prelude traits for slices into just one trait:

* SlicePrelude/SliceAllocPrelude => SliceExt
* CloneSlicePrelude/CloneSliceAllocPrelude => CloneSliceExt
* OrdSlicePrelude/OrdSliceAllocPrelude => OrdSliceExt
* PartialEqSlicePrelude => PartialEqSliceExt
2014-12-14 19:03:56 -08:00
bors
93c0610096 auto merge of #19725 : vadimcn/rust/inst-path, r=alexcrichton
Change default installation directory to %SYSTEMDRIVE%\Rust.
Modify user PATH, rather than system PATH.
2014-12-14 16:07:32 +00:00
Niko Matsakis
0fefd835f2 Update emacs and vi modes. 2014-12-14 04:21:57 -05:00
Jorge Aparicio
029789b98c Get rid of all the remaining uses of refN/valN/mutN/TupleN 2014-12-13 20:04:41 -05:00
Kevin Ballard
d333a91009 vim: Support the new \u{1234} unicode escapes 2014-12-12 21:26:22 -08:00
Chase Southwood
0a015f287b Update vim syntax highlighting for ExactSizeIterator 2014-12-12 15:09:26 -06:00
Simon Sapin
0c601153d4 gedit language spec: add new-style Unicode escapes 2014-12-12 14:03:30 +00:00
Brian Anderson
e92e8ac365 Use rust-installer for installation
This is just a refactoring of the current installer so that Rust and Cargo
use the same codebase.

cc #16456
2014-12-11 17:14:17 -08:00
Alex Crichton
52edb2ecc9 Register new snapshots 2014-12-11 11:30:38 -08:00
Vadim Chugunov
3eda3cde18 Change default installation directory to %SYSTEMDRIVE%\Rust.
Modify user PATH, rather than system PATH.
2014-12-10 15:14:14 -08:00
Alex Crichton
c56344ba31 rollup merge of #19604: vadimcn/gcc-less
- Support gcc-less installation on Windows.  To do so in unattended mode run:`<intaller>.exe /TYPE=compact /SILENT`.
- Do not require admin privileges to install.

cc #19519
2014-12-09 09:24:52 -08:00
Vadim Chugunov
de8f48b10a - Support gcc-less installation on Windows. To do so in unattended mode run:<intaller>.exe /TYPE=compact /SILENT.
- Do not require admin privileges to install.
2014-12-06 12:48:32 -08:00
Corey Farwell
4ef16741e3 Utilize fewer reexports
In regards to:

https://github.com/rust-lang/rust/issues/19253#issuecomment-64836729

This commit:

* Changes the #deriving code so that it generates code that utilizes fewer
  reexports (in particur Option::* and Result::*), which is necessary to
  remove those reexports in the future
* Changes other areas of the codebase so that fewer reexports are utilized
2014-12-05 18:13:04 -05:00
Corey Richardson
7464a29a37 rollup merge of #19474: luqmana/fl
Fixes #19339.
2014-12-05 10:07:11 -08:00
Alex Crichton
c3adbd34c4 Fall out of the std::sync rewrite 2014-12-05 09:12:25 -08:00
Erick Tryzelaar
f86737973a rustup: simplify downloading packages 2014-12-03 15:21:16 -08:00
Erick Tryzelaar
694500b07d rustup: extract the tarballs as part of installation 2014-12-03 15:20:24 -08:00
Erick Tryzelaar
bd8dac8f75 rustup: rewrite to protect against truncation
This closes #19168. It's possible that if the downloading of `rustup.sh`
is interrupted, bad things could happen, such as running a naked
"rm -rf /" instead of "rm -rf /path/to/tmpdir". This wraps rustup.sh's
functionality in a function that gets called at the last time that should
protect us from these truncation errors.
2014-12-03 15:18:52 -08:00
Erick Tryzelaar
8ca8e6fa4d rustup: factor out installing packages into a function 2014-12-03 15:17:36 -08:00
Erick Tryzelaar
b388dc61a5 rustup: factor out downloading and extracting the snapshot tarballs 2014-12-03 15:17:32 -08:00
Erick Tryzelaar
4f65d97bf8 rustup: factor out the install flags into a CFG_INSTALL_FLAGS variable 2014-12-03 14:40:33 -08:00
Erick Tryzelaar
fcb31e8347 rustup: rename TMP_DIR to CFG_TMP_DIR 2014-12-03 14:40:33 -08:00
Erick Tryzelaar
e688eb3b4f rustup: add a RUST_ prefix to the rust-specific variables 2014-12-03 14:40:33 -08:00
Erick Tryzelaar
98f01f1f54 rustup: probe for the existance of tar 2014-12-03 14:40:33 -08:00
Erick Tryzelaar
3b4ad726f1 rustup: make rustup executable 2014-12-03 14:40:33 -08:00
Erick Tryzelaar
c7ae4a9664 whitespace cleanup 2014-12-03 14:40:33 -08:00
Luqman Aden
89d0995373 gdb: Fix pretty printer for nullable-opt enums with fat pointers. 2014-12-02 18:28:43 -05:00
Luqman Aden
886ff4f3c3 lldb: Fix pretty printer for nullable-opt enums with fat pointers. 2014-12-02 17:33:52 -05:00
Johannes Hoff
8f827d33ca Fall back to hard coded download directory
If mktemp fails, fall back to a hard coded directory, per @nodakai's feedback.
2014-11-27 11:15:49 -08:00
Alex Crichton
4c5b9669e8 rollup merge of #19322: DiamondLovesYou/multi-llvmdeps 2014-11-26 16:50:12 -08:00
Michael Woerister
67ba096cc3 debuginfo: Fix LLDB pretty printer for enum variants with zero fields. 2014-11-26 17:42:32 +01:00
Michael Woerister
7608d06027 debuginfo: Add script that allows to conveniently start LLDB in "rust-mode" 2014-11-26 15:58:17 +01:00
Richard Diamond
f17faf49be Never generate multiple extern {} blocks in mklldeps.py. 2014-11-25 17:53:05 -06:00
bors
689ef2dabf auto merge of #19255 : aturon/rust/merge-sync, r=alexcrichton,alexcrichton
This patch merges the `libsync` crate into `libstd`, undoing part of the
facade. This is in preparation for ultimately merging `librustrt`, as
well as the upcoming rewrite of `sync`.

Because this removes the `libsync` crate, it is a:

[breaking-change]

However, all uses of `libsync` should be able to reroute through
`std::sync` and `std::comm` instead.

r? @alexcrichton
2014-11-25 20:32:20 +00:00
bors
5acb97ae76 auto merge of #19021 : roysc/rust/emacs-pr, r=brson
"_" should keep the default syntax class (symbol, not word). This
allows, e.g., `forward-word' to behave in the familiar way, jumping to
underscores within a function or variable name.
2014-11-24 23:06:45 +00:00
Aaron Turon
985acfdb67 Merge libsync into libstd
This patch merges the `libsync` crate into `libstd`, undoing part of the
facade. This is in preparation for ultimately merging `librustrt`, as
well as the upcoming rewrite of `sync`.

Because this removes the `libsync` crate, it is a:

[breaking-change]

However, all uses of `libsync` should be able to reroute through
`std::sync` and `std::comm` instead.
2014-11-24 10:51:39 -08:00
Jakub Bukaj
ab8d811ebd rollup merge of #19166: richo/lldb-cleanups
While poking at rust in lldb I found a few nits to clean up.
2014-11-23 14:11:48 -05:00
Johannes Hoff
cb501535b3 Use mktemp for temporary download directory
Using the current directory may not always be appropriate, for example in
the case where it will unnecessarily trigger a backup to be made.

The only risk with this change is that systems might not have a mktemp.
I am not aware of such a system, but have not tested on Windows. It is
working on a basic Ubuntu and OS X installation.
2014-11-22 15:49:38 -08:00
bors
acfdb14044 auto merge of #19125 : chris-morgan/rust/vim-prelude-2014-11-20, r=alexcrichton 2014-11-22 10:46:40 +00:00
bors
829680840c auto merge of #17513 : dradtke/rust/master, r=kballard
Looks like I made my previous PR a little too hastily. =)

This PR fixes a couple issues that I discovered with my previous revision:

1. Updated the errorformat to ignore "pointer lines" so that they don't show up in the output (with quickfix jumping, they're redundant and unnecessary).
2. Renamed a couple variables to be more in line with Cargo's terminology (`g:cargo_toml_name` should now be `g:cargo_manifest_name`).
3. Added support for errors reported with absolute paths (looks to be the case when compiling an executable instead of a library).
4. Most importantly, added support for errors reported while compiling a dependency. When building a Cargo package with local dependencies, if one of those dependencies failed to compile, the quickfix would be completely broken as it assumed that all errors were relative to the local manifest, or the closest Cargo.toml. With this update, it now pays attention to lines that end with `(file://<path>)`, and from then on adjusts all errors to be relative to `<path>`.

As a side note, that `<path>` output is somewhat broken on Windows. While `file:///home/damien/...` on *Nix is a valid URI, `file:///C:/Users/damien/...` on Windows is not, because `C:/` (or whatever the drive is) should take the place of the third slash which is *Nix's root, not be appended to it. I added a workaround for this in my script, but I figured I'd mention it to see if this is a bug in how Rust formats paths.
2014-11-22 06:31:43 +00:00