* Add Process ErrorMessage
* change shade prefix
* Run with pre modules to fill the maven reactor
* spark-interpreter has no scala test so we can remove the maven plugin
* Fix flaky python test
* Use shaded version of io.grpc:grpc-netty (io.grrpc:grpc-netty-shaded)
* Adjust interpreter tests
* Remove maven-dependency-plugin, because downloaded artefacts are attached to classpath
### What is this PR for?
Using maven wrapper when building and testing
### What type of PR is it?
[Improvement]
### Todos
* [ ] - Change `mvn` to `./mvnw`
### What is the Jira issue?
N/A
### How should this be tested?
Pass CI
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jongyoul Lee <jongyoul@gmail.com>
Closes#4242 from jongyoul/minor/add-mvnw and squashes the following commits:
a606683ee [Jongyoul Lee] [MINOR] adopt maven wrapper to use the same version of Maven
d5e9bbb95 [Jongyoul Lee] [MINOR] adopt maven wrapper to use the same version of Maven
75300ced5 [Jongyoul Lee] [MINOR] Add mvnw in order to use the same version of maven
### What is this PR for?
The root cause is due to ast api is changed after python 3.8, see https://github.com/ipython/ipython/pull/11593.
* The PR fixed this issue in `zeppelin_python.py`.
* This PR add tests for Python 3.8 for both python interpreter & spark interpreter (spark 2.4 doesn't support python 3.8, so there's no python 3.8 test for spark 2.4). `jupyter_client` 5 is used because jupyter_client 7 doesn't work (tracked in ZEPPELIN-5533)
* bokeh test is disabled for flink interpreter. Because pyflink's dependencies conflicts with bokeh2.
### What type of PR is it?
[Bug Fix ]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-5525
### How should this be tested?
* Ci pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#4230 from zjffdu/ZEPPELIN-5525 and squashes the following commits:
b816a530c0 [Jeff Zhang] [ZEPPELIN-5525] Python vanillar interpreter doesn't' work in Python 3.8
### What is this PR for?
This PR is using normal java 8 features to reduce the usage of thrid-party dependecies.
examples:
guava Joiner -> String.join
guava Lists.newArrayList(...) -> Arrays.asList(...)
guava Sets.newHashSet(...) -> new HashSet<>(Arrays.asList(...))
guava Lists.newArrayList() -> new ArrayList<>();
....
### What type of PR is it?
-Refactoring
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-5514
### How should this be tested?
* via CI
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Philipp Dallig <philipp.dallig@gmail.com>
Closes#4217 from Reamer/useJava8 and squashes the following commits:
3a700d0a2 [Philipp Dallig] Use try-with-resources for ZipOutputStream
72e7c010f [Philipp Dallig] Logger cleanup
b180bfc7b [Philipp Dallig] Replace some guava methods with native jdk methods or with Apache libs
### What is this PR for?
Version up to the next version of 0.11.0-SNAPSHOT
Author: Jongyoul Lee <jongyoul@gmail.com>
Closes#4221 from jongyoul/minor-version-up and squashes the following commits:
c38c9910a [Jongyoul Lee] Version up to the latest stable version
a962b08ec [Jongyoul Lee] [MINOR] Version up to 0.11.0-SNAPSHOT
### What is this PR for?
This PR make %python.sql work with both vanilla python interpreter and ipython interpreter. It depends on whether ipython prerequisites are met.
### What type of PR is it?
[ Improvement ]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-5479
### How should this be tested?
* CI pass
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#4198 from zjffdu/ZEPPELIN-5479 and squashes the following commits:
df963616a3 [Jeff Zhang] fix unit test
46c4f08059 [Jeff Zhang] trim sql
183660aeb6 [Jeff Zhang] fix code style
7a3e54e539 [Jeff Zhang] fix code style
c9e63fa4e0 [Jeff Zhang] [ZEPPELIN-5479] %python.sql doesn't work with ipython interpreter
### What is this PR for?
Polish pom.xml files
- Delete unnecessary tags
- Delete duplicated dependencies
### What type of PR is it?
[Refactoring]
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-5370
### How should this be tested?
* CI
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: cuspymd <cuspymd@gmail.com>
Closes#4118 from cuspymd/polish-poms and squashes the following commits:
766278338 [cuspymd] Fix integration test error
385fcf2fd [cuspymd] Delete duplicated version of sub-modules
ba127bf16 [cuspymd] Recover duplicated dependencies related to spark interpreter
6fa7e1d51 [cuspymd] Polish pom.xml
### What is this PR for?
This is to run python interpreter in yarn mode and you can also customize the python runtime via conda. Check the `python.md` for more details
### What type of PR is it?
[Feature | Documentation]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-5330
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#4097 from zjffdu/ZEPPELIN-5330 and squashes the following commits:
b6a957fd3e [Jeff Zhang] address code review comments
bdb4dcbbfa [Jeff Zhang] support hdfs file for
ee8d11b8fd [Jeff Zhang] minor code refacotring
a7dca0fd35 [Jeff Zhang] address comments
5fc3e86543 [Jeff Zhang] Fix Ci
e4a6c7146a [Jeff Zhang] address comments
f7e6b13d4d [Jeff Zhang] save
d5828d203b [Jeff Zhang] update python
3c963b6b61 [Jeff Zhang] update
fa36c5b997 [Jeff Zhang] update jupyter
e25c6b3f3b [Jeff Zhang] address comment
d27f580216 [Jeff Zhang] [ZEPPELIN-5330]. Support conda env for python interpreter in yarn mode
### What is this PR for?
This is a hotfix to fix the ci failure due to dns reverse lookup issue. Some of the code is copied from pulsar project.
b4300db307
### What type of PR is it?
[ Hot Fix ]
### Todos
* [ ] - Task
### What is the Jira issue?
*
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? NO
* Is there breaking changes for older versions? No
* Does this needs documentation? NO
Author: Jeff Zhang <zjffdu@apache.org>
Closes#4096 from zjffdu/ci_test and squashes the following commits:
ed91ba328 [Jeff Zhang] fix comment
6a0d9fd1c [Jeff Zhang] save
### What is this PR for?
This PR fixes NPE exceptions in our tests.
### What type of PR is it?
- Hot Fix
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-5187
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Philipp Dallig <philipp.dallig@gmail.com>
Closes#4012 from Reamer/npe_interpreter_output and squashes the following commits:
b45c0f570 [Philipp Dallig] Use new constructor introduced with ZEPPELIN-5170
### What is this PR for?
This PR improve the github action CI
* Disable unstable test BasePythonInterpreterTest#testRedefinitionZeppelinContext
* Fix the failure of flink 1.10, this is due to python package issue.
The github action still fails sometimes, because of network issue or other weird issue, we have to rerun it again.
### What type of PR is it?
[ Improvement]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-5160
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? NO
* Is there breaking changes for older versions? No
* Does this needs documentation? NO
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3994 from zjffdu/ZEPPELIN-5160 and squashes the following commits:
491e1409f [Jeff Zhang] address comment
6edcfe692 [Jeff Zhang] [ZEPPELIN-5160]. Improve github action CI
### What is this PR for?
This PR will change the CI-System from [Travis](https://travis-ci.com/) to [GitHub Actions](https://github.com/features/actions)
**Advantages:**
- [high usage limits](https://docs.github.com/en/free-pro-teamlatest/actions/reference/usage-limits-billing-and-administration#usage-limits)
- No CI setup is required from the contributors
- good integration with GitHub Pull request
**Disadvantage:**
- At the moment we have some flappy tests and external dependencies. Both can cause a failed test, but we cannot restart a single job, only the entire workflow.
**Miscellaneous:**
- CI is triggered with every push event
- CI is triggered when PR event is open and synchronized
- Selenium test is updated to python3
- The Livy-Python2 test is dropped because Python2 has reached [the end of its lifetime](https://www.python.org/doc/sunset-python-2/)
### What type of PR is it?
- Improvement
### Todos
* [ ] - Feedback for job splitting
* [x] - What is the purpose of the Jenkins job?
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4385
### How should this be tested?
* Strongly recommended: add automated unit tests for any new or changed behavior
* Outline any manual steps to test the PR here.
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Philipp Dallig <philipp.dallig@gmail.com>
Closes#3986 from Reamer/github_actions and squashes the following commits:
eb13433a8 [Philipp Dallig] Goodbye travis
3de27c699 [Philipp Dallig] Adjust README
8302f5349 [Philipp Dallig] Adjust template for pull request
76d9bb22e [Philipp Dallig] Adjustments documentation
08155783e [Philipp Dallig] Remove travis_check.py
e865f2fc1 [Philipp Dallig] Remove "travis" in source code
6790b6e42 [Philipp Dallig] Add core.yml
27330791f [Philipp Dallig] Rewrite selenium tests to python3
1772024fc [Philipp Dallig] Add frontend tests
c81f48492 [Philipp Dallig] Add github actions workflow (rat)
18d5dbecb [Philipp Dallig] some cleanup
### What is this PR for?
In this PR, I would only print exception message when it is SQLException, otherwise would print the full stacktrace, because in this case it is most likely due to jdbc interpreter's internal error.
### What type of PR is it?
[Improvement]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-5103
### How should this be tested?
* CI pass
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3952 from zjffdu/ZEPPELIN-5103 and squashes the following commits:
4001e1b84 [Jeff Zhang] [ZEPPELIN-5103]. Simply jdbc interpreter error message
### What is this PR for?
This commit declares all plugins in the `pluginManagement` section and unifies versions of
all plugins - they are now declared as properties in the top-level `pom.xml`. All other
`pom.xml` files shouldn't specify version explicitly.
### What type of PR is it?
Improvement
### What is the Jira issue?
* ZEPPELIN-4700
### How should this be tested?
* One build was clean: https://travis-ci.org/github/alexott/zeppelin/builds/668812389, but after removing the not necessary files from commit, some tests began to fail: https://travis-ci.org/github/alexott/zeppelin/builds/669129366 - not sure if it's a case of flaky tests (yes, it looks like it the case - after restart of failed builds - they are all green)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Alex Ott <alexott@gmail.com>
Closes#3707 from alexott/ZEPPELIN-4700 and squashes the following commits:
6de1eb393 [Alex Ott] [ZEPPELIN-4700] Cleanup Maven warnings & unify plugin management
### What is this PR for?
This PR is to fix the issue of FLINK-16936 by a workaround, already creating tableenv before execution scala or python code. Building tablenv is pretty light which won't cost much time. So it is acceptable for this workaround. Another this PR try to fix is the ClassLoader issue for PyFlinkInterpreter. This PR will always set classloader before executing python code so that pyflink api can call udf defined in scala.
### What type of PR is it?
[Bug Fix ]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4714
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3715 from zjffdu/ZEPPELIN-4714 and squashes the following commits:
55d613576 [Jeff Zhang] [ZEPPELIN-4714]. Flink table api doesn't work in multiple threads
### What is this PR for?
The root cause of this issue is that we didn't redirect java output to interpreter output. This PR fix it via redirect java output before interpreting python code in both PySparkInterpreter & IPySparkInterpreter. Unit test is also added to verify this feature.
### What type of PR is it?
[Bug Fix]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4692
### How should this be tested?
* Unit test is added, also manually tested it
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? NO
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3696 from zjffdu/ZEPPELIN-4692 and squashes the following commits:
e1a5ead7e [Jeff Zhang] [ZEPPELIN-4692]. zeppelin pyspark doesn't print java output
### What is this PR for?
I noticed that the Zeppelin project mixes "commons-lang" and "commons-lang3". I have (hopefully) changed all imports to `commons-lang3`
I use `commons-lang3` 3.7, because this version was used in several submodules.
### What type of PR is it?
Improvement
### Todos
* [ ] - Is the replacement of `getFullStackTrace` to `getStackTrace` right?
* [ ] - commons-lang isn't deleted from main `pom.xml`. Okay?
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4686
### How should this be tested?
* Unit-Tests withTravis CI https://travis-ci.org/github/Reamer/zeppelin/builds/663565663
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Philipp Dallig <philipp.dallig@gmail.com>
Closes#3691 from Reamer/commons-lang3 and squashes the following commits:
bf12fc07c [Philipp Dallig] Update to org.apache.commons commons-lang3
### What is this PR for?
Straightforward PR to just rename BaseZeppelinContext to ZeppelinContext
### What type of PR is it?
[ Refactoring]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4616
### How should this be tested?
* Not necessary
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3646 from zjffdu/ZEPPELIN-4616 and squashes the following commits:
f4eb0f5ba [Jeff Zhang] [ZEPPELIN-4616]. Rename BaseZeppelinContext to ZeppelinContext
### What is this PR for?
This PR would replace all the special characters(\t, \n, \r\n) in table content with white space. so that it won't break the table format display.
### What type of PR is it?
[Bug Fix]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4611
### How should this be tested?
* Unit test is added
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3643 from zjffdu/ZEPPELIN-4611 and squashes the following commits:
d12eea943 [Jeff Zhang] [ZEPPELIN-4611]. Fetching rows with newline character (\n) breaks entire table
### What is this PR for?
Straightforward PR which rename zeppelin-interpreter-api to zeppelin-interpreter-shaded
### What type of PR is it?
[Refactoring]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4544
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? NO
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3619 from zjffdu/ZEPPELIN-4544 and squashes the following commits:
380d8484f [Jeff Zhang] [ZEPPELIN-4544]. Rename zeppelin-interpreter-api to zeppelin-interpreter-shaded
### What is this PR for?
Python Interpreter fails on Windows because of classpath issue
### What type of PR is it?
Bug Fix
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4564#
THIS SOFTWARE IS CONTRIBUTED SUBJECT TO THE TERMS OF THE APACHE SOFTWARE FOUNDATION SOFTWARE GRANT AND CORPORATE CONTRIBUTOR LICENSE AGREEMENT VERSION R190612.
THIS SOFTWARE IS LICENSED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AND ANY WARRANTY OF NON-INFRINGEMENT, ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THIS SOFTWARE MAY BE REDISTRIBUTED TO OTHERS ONLY BY EFFECTIVELY USING THIS OR ANOTHER EQUIVALENT DISCLAIMER IN ADDITION TO ANY OTHER REQUIRED LICENSE TERMS.
Author: Muhammad Taufiq <Muhammad.Taufiq@morganstanley.com>
Closes#3604 from Muhammad-ms/zeppelin9_file_separator and squashes the following commits:
a09b6463a [Muhammad Taufiq] Changed path separator to allow it to work on windows as well
### What is this PR for?
This PR add a new module `zeppelin-jupyter-interpreter-shaded` which shaded the guava so that other module (python and r ) won't be bothered by the problem of guava conflict.
### What type of PR is it?
[Improvement ]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://jira.apache.org/jira/browse/ZEPPELIN-4532
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3585 from zjffdu/ZEPPELIN-4532 and squashes the following commits:
12afc937b [Jeff Zhang] [ZEPPELIN-4532]. Add a shaded version of zeppelin-jupyter-interpreter
### What is this PR for?
Use the SqlSplitter in `zeppelin-interpreter` to split sql and execute in SparkSqlInterpreter. Nothing changes for the previous single sql statement paragraph. But just multiple result will be displayed for multiple sql statements.
### What type of PR is it?
[Feature]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4522
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3579 from zjffdu/ZEPPELIN-4522 and squashes the following commits:
eda573649 [Jeff Zhang] fix failed test
68d5a30c8 [Jeff Zhang] Add test for no sql but just 2 comments
4ff15e4fb [Jeff Zhang] address comment
bc3c1feff [Jeff Zhang] [ZEPPELIN-4522]. Support multiple sql statements for SparkSqlInterpreter
### What is this PR for?
In ZEPPELIN-4480, we introduce zeppelin-jupyter-adapter which build a bridge between zeppelin and jupyter, zeppelin can extends this class to leverage any kernel of jupyter.
After a second thought, I think it is not enough. We can allow user to use jupyter kernel directly instead of implement one by one. So the purpose is to allow user use jupyter kernel like this
```
%jupyter(kernel=ipython)
python_code
...
```
Of course user can enhance the jupyter kernel in Zeppelin, e.g. IPythonInterpreter of Zeppelin can enhance the ipython kernel by adding support of ZeppelinContext
### What type of PR is it?
[Refactoring]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://jira.apache.org/jira/browse/ZEPPELIN-4497#
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No



Author: Jeff Zhang <zjffdu@apache.org>
Closes#3558 from zjffdu/ZEPPELIN-4497 and squashes the following commits:
2efdc1e0e [Jeff Zhang] [ZEPPELIN-4497] Change zeppelin-jupyter-adapter to zeppelin-jupyter-interpreter
### What is this PR for?
This PR is to polish the python interpreter document.
### What type of PR is it?
[Documentation]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4437
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3538 from zjffdu/ZEPPELIN-4437 and squashes the following commits:
48163d089 [Jeff Zhang] ZEPPELIN-4437. Update python document
### What is this PR for?
This PR move the ipython code into module zeppelin-jupyter-adapter. And ipython will just depends on this module. zeppelin-jupyter-adapter could be used for connecting any jupyter kernel.
### What type of PR is it?
[ Feature | Refactoring]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4480
### How should this be tested?
* Ci pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3551 from zjffdu/ZEPPELIN-4480 and squashes the following commits:
78453473e [Jeff Zhang] [ZEPPELIN-4480]. Move the ipython code into a general jupyter kernel bridge
### What is this PR for?
This PR is to align all the functions in ZeppelinContext in Scala/Python/R
### What type of PR is it?
[ Improvement | Refactoring]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4419
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3511 from zjffdu/ZEPPELIN-4419 and squashes the following commits:
7d5cdc853 [Jeff Zhang] [ZEPPELIN-4419]. Align functions in ZeppelinContext of Scala/Python/R
### What is this PR for?
This is allow user to specify resourceName when they want to save the paragraph result into ResourcePool. Before this PR, user don't have control on what name of the saving resource name. It is associated with noteId and paragraphId, but this is not a good solution. Because when you clone the note, noteId will be changed, and you have to change the noteId in code as well. This PR is trying to allow user to set resource Name for the saving paragraph result.
### What type of PR is it?
[ Feature |g]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-3617
### How should this be tested?
* CI pass
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3065 from zjffdu/ZEPPELIN-3617 and squashes the following commits:
024965e64 [Jeff Zhang] ZEPPELIN-3617. Allow to specify saving resourceName as paragraph property
### What is this PR for?
HvPlot is broken due to bug in `ipython_server.py`. IPython may produce multiple types of output for one single python object. And the orders of these output matters, we should output html type over plain text type.
### What type of PR is it?
[Bug Fix]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4396
### How should this be tested?
* CI pass
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3515 from zjffdu/ZEPPELIN-4396 and squashes the following commits:
f71dbf231 [Jeff Zhang] [ZEPPELIN-4396]. HvPlot is broken
### What is this PR for?
`ExecutorService` is not properly shutdown due to we didn't use the correct api. We should use `shutdownNow` instead of `shutdown`. See https://stackoverflow.com/questions/11520189/difference-between-shutdown-and-shutdownnow-of-executor-service.
The effect of this issue will cause thread resource leakage.
### What type of PR is it?
[Improvement]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4390
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3491 from zjffdu/ZEPPELIN-4390 and squashes the following commits:
439221492 [Jeff Zhang] [ZEPPELIN-4390]. ExecutorService is not properly shutdown
### What is this PR for?
This PR enhance method `z.angular` in `%spark.r` and `%spark.pyspark` so that angular variables defined in frontend can be shared in backend `%spark`, `%spark.r`, `%spark.pyspark`
### What type of PR is it?
[ Improvement | Feature ]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4354
### How should this be tested?
* CI pass
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3464 from zjffdu/ZEPPELIN-4354 and squashes the following commits:
34b11e746 [Jeff Zhang] [ZEPPELIN-4354]. Enhance z.angular for more flexiable data sharing
### What is this PR for?
There's redundant line separator when there's multiple text output. The root cause is that each `%text ` will append new line separator in frontend. This PR fix this issue by removing `%text ` is the previous output type is also `%text `.
### What type of PR is it?
[Bug Fix ]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-4369
### How should this be tested?
* CI pass
### Screenshots (if appropriate)
Before

After

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3478 from zjffdu/ZEPPELIN-4369 and squashes the following commits:
8c3d380db [Jeff Zhang] [ZEPPELIN-4369] Redundant line separator for multiple text output
### What is this PR for?
This PR is to support latest flink 1.9.0. Main features:
* Support table api
* Support batch sql
* Support streaming sql
* Support both flink planner and blink planner.
* Support pyflink
### What type of PR is it?
[ Improvement | Feature | Documentation ]
### Todos
* [ ] - Task
### What is the Jira issue?
* https://jira.apache.org/jira/browse/ZEPPELIN-4273
### How should this be tested?
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? NO
* Does this needs documentation? No
Author: Jeff Zhang <zjffdu@apache.org>
Closes#3422 from zjffdu/ZEPPELIN-4273 and squashes the following commits:
b0c94cfd6 [Jeff Zhang] [ZEPPELIN-4273] Support Flink 1.9 for Flink Interpreter
### What is this PR for?
The pr is to fix a bug that will make the **ipython** queue listener, overuse cpu. After this fix, cpu usage should be way lower.
Also there is a bit of refactor to use only one queue to ensure message will be order even with a sleep.
Also, the refactor is reducing the number of line and code duplication
### What type of PR is it?
Bug Fix / performance improvement
### Todos
* [x] - Performance improvement
### What is the Jira issue?
It is one part of the jira issue.
https://issues.apache.org/jira/browse/ZEPPELIN-4090
### How should this be tested?
* First time? Setup Travis CI as described on https://zeppelin.apache.org/contribution/contributions.html#continuous-integration
* Strongly recommended: add automated unit tests for any new or changed behavior
* Outline any manual steps to test the PR here.
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? no
* Is there breaking changes for older versions? no
* Does this needs documentation? no
Author: marc hurabielle <marc.hurabielle@gmail.com>
Closes#3337 from AyWa/fix/ipython-cpu and squashes the following commits:
1abe50f25 [marc hurabielle] fix error message when kernel stop
30ef7f7cb [marc hurabielle] fix identation
fe20923cf [marc hurabielle] fix rebase and fix lint
e1d37b76e [marc hurabielle] increase queue size
42f3ca097 [marc hurabielle] use one queue and use sleep to improve ipython performance