summaryrefslogtreecommitdiff
path: root/src/library/scala/sys/process/ProcessImpl.scala
Commit message (Collapse)AuthorAgeFilesLines
* Resolve warnings related to SyncVar#setKota Mizushima2016-03-181-4/+4
| | | | Replace it with SyncVar#put
* [SI-9454] Add isAlive method into sys.process.Process traitDmitry Melnichenko2015-12-111-7/+12
|
* SI-7350 Prevent resource leaks in PipedProcesses.runAndExitValue()rubyu2014-08-071-62/+72
|
* SI-6488 Interrupt i/o threads on process destroySom Snytt2013-05-151-2/+2
| | | | | | | | | | | | | | | | | | | The previous fix uses Thread.stop to stop the threads which drain outputs, but should do something orderly. This commit interrupts the threads, which must check isInterrupted before attempting further i/o. The reading thread will suppress either the interruption or the IOException cited in the ticket. Similarly, i/o handlers must preserve and communicate interrupted status. The modest goal of this fix is to ameliorate any stack traces when the process is destroyed. The test runs itself as a sample process with output.
* Absolutized paths involving the scala package.Paul Phillips2013-05-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Confusing, now-it-happens now-it-doesn't mysteries lurk in the darkness. When scala packages are declared like this: package scala.collection.mutable Then paths relative to scala can easily be broken via the unlucky presence of an empty (or nonempty) directory. Example: // a.scala package scala.foo class Bar { new util.Random } % scalac ./a.scala % mkdir util % scalac ./a.scala ./a.scala:4: error: type Random is not a member of package util new util.Random ^ one error found There are two ways to play defense against this: - don't use relative paths; okay sometimes, less so others - don't "opt out" of the scala package This commit mostly pursues the latter, with occasional doses of the former. I created a scratch directory containing these empty directories: actors annotation ant api asm beans cmd collection compat concurrent control convert docutil dtd duration event factory forkjoin generic hashing immutable impl include internal io logging macros man1 matching math meta model mutable nsc parallel parsing partest persistent process pull ref reflect reify remote runtime scalap scheduler script swing sys text threadpool tools transform unchecked util xml I stopped when I could compile the main src directories even with all those empties on my classpath.
* Name boolean arguments in src/library.Jason Zaugg2013-03-051-1/+1
|
* More explicit empty paren lists in method calls.Jason Zaugg2013-02-241-5/+5
|
* Merge branch '2.10.0-wip' into merge-2.10.0Josh Suereth2012-11-051-1/+1
|\
| * Brings all copyrights (in comments) up-to-date, from 2011/12 to 2013Heather Miller2012-11-021-1/+1
| |
* | SI-6488: Stop I/O threads prior to Process destructionDeclan Conlon2012-10-261-1/+4
|/
* More relative path elimination.Paul Phillips2012-09-151-1/+1
| | | | | | | | | | | | | | | | Some names I missed in 55b609458fd . How one might know when one is done: mkdir scratch && cd scratch mkdir annotation beans collection compat concurrent io \ math parallel ref reflect runtime scala sys testing \ text tools util xml scalac $(find ../src/library -name '*.scala') Until recently that would fail with about a billion errors. When it compiles, that's when you're done. And that's where this commit takes us, for src/library at least.
* I wrote a warning when nullary methods return U...Paul Phillips2011-04-281-1/+1
| | | | | | | | | | | | | | | I wrote a warning when nullary methods return Unit. I wimped out of including it in this patch because we had about 200 of them, and that's what is fixed in this patch. I will add the warning to some kind of "-Xlint" feature after 2.9. This is motivated at least partly by the resolution of #4506, which indicates the distinction between "def foo()" and "def foo" will continue to jab its pointy stick into our eyes, so I believe we have a minimal duty of at least following our own advice about what they mean and not making a semirandom choice as to whether a method has parens or not. Review by community.
* Fixed all the forms of process input/output red...Paul Phillips2011-02-121-2/+5
| | | | | | | | Fixed all the forms of process input/output redirection so the exit code which makes it out is the exit code of the process. Also changing names to be internally consistent and trying to prune pieces which don't make so much sense without sbt around. Started on documentation. No review.
* Updated copyright notices to 2011Antonio Cunei2011-01-201-1/+1
|
* Purely detabification of the process code.Paul Phillips2011-01-121-126/+126
|
* More fiddling with the process code.Paul Phillips2011-01-121-220/+221
|
* Imported sbt.Process into trunk, in the guise o...Paul Phillips2011-01-121-0/+232
Imported sbt.Process into trunk, in the guise of package scala.sys.process. It is largely indistinguishable from the version in sbt, at least from the outside. Also, I renamed package system to sys. I wanted to do that from the beginning and the desire has only grown since then. Sometimes a short identifier is just critical to usability: with a function like error("") called from hundreds of places, the difference between system.error and sys.error is too big. sys.error and sys.exit have good vibes (at least as good as the vibes can be for functions which error and exit.) Note: this is just the first cut. I need to check this in to finish fixing partest. I will be going over it with a comb and writing documentation which will leave you enchanted, as well as removing other bits which are now redundant or inferior. No review.