Making IPython PySpark compatible across versions <1.0.0. Also cleaned up '-i' option and made IPYTHON_OPTS work
Project: http://git-wip-us.apache.org/repos/asf/incubator-spark/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-spark/commit/bb5277b1 Tree: http://git-wip-us.apache.org/repos/asf/incubator-spark/tree/bb5277b1 Diff: http://git-wip-us.apache.org/repos/asf/incubator-spark/diff/bb5277b1 Branch: refs/heads/master Commit: bb5277b10a3797c1beeca01c32b287ee79db831d Parents: d36ee3b Author: Nick Pentreath <[email protected]> Authored: Sun Dec 15 09:39:45 2013 +0200 Committer: Nick Pentreath <[email protected]> Committed: Sun Dec 15 09:39:45 2013 +0200 ---------------------------------------------------------------------- pyspark | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-spark/blob/bb5277b1/pyspark ---------------------------------------------------------------------- diff --git a/pyspark b/pyspark index 8b34c98..12cc926 100755 --- a/pyspark +++ b/pyspark @@ -59,7 +59,12 @@ if [ -n "$IPYTHON_OPTS" ]; then fi if [[ "$IPYTHON" = "1" ]] ; then - exec ipython "$IPYTHON_OPTS" "$@" + # IPython <1.0.0 doesn't honor PYTHONSTARTUP, while 1.0.0+ does. + # Hence we clear PYTHONSTARTUP and use the -c "%run $IPYTHONSTARTUP" command which works on all versions + # We also force interactive mode with "-i" + IPYTHONSTARTUP=$PYTHONSTARTUP + PYTHONSTARTUP= + exec ipython "$IPYTHON_OPTS" -i -c "%run $IPYTHONSTARTUP" else exec "$PYSPARK_PYTHON" "$@" fi
