| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2013-08-22 | auto merge of #8596 : vadimcn/rust/master, r=alexcrichton | bors | -2/+0 | |
| This resolves issue #908. Notable changes: - On Windows, LLVM integrated assembler emits bad stack unwind tables when segmented stacks are enabled. However, unwind info directives in the assembly output are correct, so we generate assembly first and then run it through an external assembler, just like it is already done for Android builds. - Linker is invoked via "g++" command instead of "gcc": g++ passes the appropriate magic parameters to the linker, which ensure correct registration of stack unwind tables in dynamic libraries. | ||||
| 2013-08-22 | Enabled unit tests in std and extra. | Vadim Chugunov | -2/+0 | |
| 2013-08-22 | fix 32bit mac build error | Jeff Olson | -2/+2 | |
| 2013-08-22 | make check appeasement | Jeff Olson | -1/+2 | |
| 2013-08-22 | std: put FileMode/Access->whence-mask in uvio, open/unlink as fns in file:: | Jeff Olson | -100/+109 | |
| 2013-08-22 | std: slight refactor on UvFilestream seek behavior, pre-seek-refactor | Jeff Olson | -38/+34 | |
| 2013-08-22 | std: all of the calls in rt::uv::file take a &Loop | Jeff Olson | -44/+43 | |
| 2013-08-22 | std: moved static file actions (open,unlink) to FsRequest | Jeff Olson | -63/+63 | |
| 2013-08-22 | std: reform fn sigs of FileDescriptor methods (better result signalling) | Jeff Olson | -42/+46 | |
| 2013-08-22 | std: rename tmp file paths to go into ./tmp folder in builddir | Jeff Olson | -10/+10 | |
| 2013-08-22 | change FileDescriptor instance methods to use &mut self | Jeff Olson | -11/+11 | |
| 2013-08-22 | std: more seek tests | Jeff Olson | -1/+71 | |
| 2013-08-22 | std: naive stdio print test in uvio | Jeff Olson | -0/+20 | |
| 2013-08-22 | std: UvFileStream implements HomingIO + .home_for_io() wrapper usage | Jeff Olson | -39/+60 | |
| 2013-08-22 | std: writing to stdout only works when using -1 offset.. | Jeff Olson | -1/+1 | |
| 2013-08-22 | std: lint appeasement for unused param in condition handler | Jeff Olson | -1/+1 | |
| 2013-08-22 | std: rework file io.. support [p]read,[p]write, impl seek/tell + more tests | Jeff Olson | -53/+214 | |
| 2013-08-22 | std: adding #[fixed_stack_segment] as needed in new uvll calls | Jeff Olson | -0/+16 | |
| 2013-08-22 | std: add FileStream::unlink + more tests | Jeff Olson | -2/+52 | |
| 2013-08-22 | std: rt::io::file::FileStream fleshed out.. needs more work.. see extended | Jeff Olson | -40/+127 | |
| - change all uses of Path in fn args to &P - FileStream.read assumptions were wrong (libuv file io is non-positional) - the above will mean that we "own" Seek impl info .. should probably push it in UvFileDescriptor.. - needs more tests | ||||
| 2013-08-22 | std: CRUD file io bindings in uvio, fs_open()/unlink() in IoFactory + test | Jeff Olson | -0/+190 | |
| 2013-08-22 | std: remove fcntl const bindings + making valgrind clean w/ no owned vecs | Jeff Olson | -142/+68 | |
| 2013-08-22 | std: support async/threadpool & sync paths in uv_fs_* calls + add sync test | Jeff Olson | -35/+169 | |
| 2013-08-22 | std: add read and unlink to low-level FileDescriptor + end-to-end CRUD test | Jeff Olson | -53/+119 | |
| 2013-08-22 | std: working tests for low-level libuv open, write and close operations | Jeff Olson | -27/+126 | |
| 2013-08-22 | std: bootstrapping libuv-based fileio in newrt... open & close | Jeff Olson | -14/+222 | |
| the test "touch"es a new file | ||||
| 2013-08-22 | auto merge of #8666 : nikomatsakis/rust/issue-3678-extern-fn-types, r=pcwalton | bors | -22/+112 | |
| Change the type of crust fns like this one: extern fn foo() { ... } from `*u8` to `extern "C" fn()`. r? @pcwalton (or whomever) | ||||
| 2013-08-21 | std/extra: changing XXX to FIXME; cleanup | Tim Chevalier | -37/+37 | |
| * Get rid of by-value-self workarounds; it works now * Remove type annotations, they're not needed anymore | ||||
| 2013-08-21 | Don't fail in port.try_recv() the second time. Close #7800. | Ben Blum | -6/+7 | |
| 2013-08-21 | Adjust callbacks in the libraries for the new type of extern fns | Niko Matsakis | -22/+112 | |
| cc #3678 | ||||
| 2013-08-21 | auto merge of #8600 : sfackler/rust/http, r=brson | bors | -30/+0 | |
| It's an empty stub and as one of the comments notes, doesn't belong in libstd. | ||||
| 2013-08-20 | auto merge of #8656 : toddaaro/rust/idle-opt+cleaning, r=brson | bors | -14/+17 | |
| Fixed a memory leak caused by the singleton idle callback failing to close correctly. The problem was that the close function requires running inside a callback in the event loop, but we were trying to close the idle watcher after the loop returned from run. The fix was to just call run again to process this callback. There is an additional tweak to move the initialization logic fully into bootstrap, so tasks that do not ever call run do not have problems destructing. | ||||
| 2013-08-20 | auto merge of #8631 : anasazi/rust/homing-io, r=brson | bors | -348/+679 | |
| libuv handles are tied to the event loop that created them. In order to perform IO, the handle must be on the thread with its home event loop. Thus, when as task wants to do IO it must first go to the IO handle's home event loop and pin itself to the corresponding scheduler while the IO action is in flight. Once the IO action completes, the task is unpinned and either returns to its home scheduler if it is a pinned task, or otherwise stays on the current scheduler. Making new blocking IO implementations (i.e. files) thread safe is rather simple. Add a home field to the IO handle's struct in uvio and implement the HomingIO trait. Wrap every IO call in the HomingIO.home_for_io method, which will take care of the scheduling. I'm not sure if this remains thread safe in the presence of asynchronous IO at the libuv level. If we decide to do that, then this set up should be revisited. | ||||
| 2013-08-20 | Fixed a memory leak caused by the singleton idle callback failing to close ↵ | toddaaro | -14/+17 | |
| correctly. The problem was that the close function requires running inside a callback in the event loop, but we were trying to close the idle watcher after the loop returned from run. The fix was to just call run again to process this callback. There is an additional tweak to move the initialization logic fully into bootstrap, so tasks that do not ever call run do not have problems destructing. | ||||
| 2013-08-20 | auto merge of #8519 : msullivan/rust/objects, r=catamorphism | bors | -1/+1 | |
| r? | ||||
| 2013-08-20 | Added home_for_io_with_sched variant. Temporarily making IO unkillable. | Eric Reed | -124/+165 | |
| 2013-08-20 | Add assert_once_ever macro. Close #7748. (fixme cf #8472) | Ben Blum | -0/+1 | |
| 2013-08-20 | Moved .sleep() to Timer. | Eric Reed | -7/+2 | |
| 2013-08-20 | auto merge of #8566 : toddaaro/rust/idle-opt+cleaning, r=catamorphism,brson | bors | -302/+386 | |
| Instead of a furious storm of idle callbacks we just have one. This is a major performance gain - around 40% on my machine for the ping pong bench. Also in this PR is a cleanup commit for the scheduler code. Was previously up as a separate PR, but bors load + imminent merge hell led me to roll them together. Was #8549. | ||||
| 2013-08-19 | std: Restore dynamic borrow tracking | Brian Anderson | -12/+43 | |
| 2013-08-19 | Make IO thread-safe. | Eric Reed | -660/+653 | |
| Each IO handle has a home event loop, which created it. When a task wants to use an IO handle, it must first make sure it is on that home event loop. It uses the scheduler handle in the IO handle to send itself there before starting the IO action. Once the IO action completes, the task restores its previous home state. If it is an AnySched task, then it will be executed on the new scheduler. If it has a normal home, then it will return there before executing any more code after the IO action. | ||||
| 2013-08-19 | Homed UDP sockets | Eric Reed | -24/+213 | |
| 2013-08-19 | Working homing UDP socket prototype. | Eric Reed | -1/+151 | |
| 2013-08-19 | Instruct event loops to ignore SIGPIPE when constructed. | Eric Reed | -0/+1 | |
| libuv does not always catch SIGPIPE. | ||||
| 2013-08-19 | Do not execute the callback before cleaning up resources. | Eric Reed | -8/+6 | |
| 2013-08-19 | Derive Clone for IpAddr and SocketAddr | Eric Reed | -2/+2 | |
| 2013-08-19 | Try to fix mac valgrind bot by disabling thread-heavy activities. | Graydon Hoare | -6/+48 | |
| 2013-08-19 | clean whitespace :/ | toddaaro | -6/+6 | |
| 2013-08-19 | Rangechange the log message truncation limit. | Michael Sullivan | -1/+1 | |
| 2013-08-19 | Add externfn macro and correctly label fixed_stack_segments | Niko Matsakis | -15/+254 | |
