[ https://issues.apache.org/jira/browse/FLINK-5886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16326332#comment-16326332 ]
ASF GitHub Bot commented on FLINK-5886: --------------------------------------- Github user zentol commented on the issue: https://github.com/apache/flink/pull/3838 Here's a preliminary changelog: General: - rebase branch to current master - incremented version to 1.5-SNAPSHOT - fixed kafka-connector dependency declaration - set to provided - scala version set to scala.binary.version - flink version set to project.version - applied checkstyle - disabled method/parameter name rules for API classes - assigned flink-python-streaming to 'libraries' travis profile API: - PDS#map()/flat_map() now return PythonSingleOutputStreamOperator - renamed PDS#print() to PDS#output() - print is a keyword in python and thus not usable in native python APIs - added PythonSingleOutputStreamOperator#name() - removed env#execute methods that accepted local execution argument as they are redundant due to environment factory methods Moved/Renamed: - made SerializerMap top-level class and renamed it to AdapterMap - Moved UtilityFunctions#adapt to AdapterMap class - renamed UtilityFunctions to InterpreterUtils - moved PythonobjectInputStream2 to SerializationUtils - renamed PythonObjectInputStream2 to SerialVersionOverridingPythonObjectInputStream Functions: - Introduced AbstractPythonUDF class for sharing RichRunction#open()/close() implementations - PythonOutputSelector now throws FlinkRuntimeException when failing during initialization - added generic return type to Serializationutils#deserializeObject - added new serializers for PyBoolean/-Float/-Integer/-Long/-String - PyObjectSerializer not properly fails when an exceptioin occurs - improved error printing - PythonCollector now typed to Object and properly converts non-PyObjects - jython functions that use a collector now have Object has output type - otherwise you would get ClassCastException if jython returns something that isn't a PyObject PythonStreamBinder - adjusted to follow PythonPlanBinder structure - client-like main() exception handling - replaced Random usage with UUID.randomUIID() - now loads GlobalConfiguration - local/distributed tmp dir now configurable - introduced PythonOptions - no longer generate plan.py but instead import it directly via the PythonInterpreter Environment: - Reworked static environment factory methods from PythonStreamExecutionEnvironment into a PythonEnvironmentFactory - program main() method now accepts a PythonEnvironmentFactory - directories are now passed properly to the environment instead of using static fields - removed PythonEnvironmentConfig Tests: - removed 'if __name__ == '__main__':' blocks from tests since the condition is never fulfilled - removed python TestBase class - removed print statements from tests - standardized test job names - cleaned up PythonStreamBinderTest / made it more consistent with PythonPlanBinderTest - run_all_tests improvements - stop after first failure - print stacktrace on failure - no longer relies on dirname() to get cwd but uses the module file location instead > Python API for streaming applications > ------------------------------------- > > Key: FLINK-5886 > URL: https://issues.apache.org/jira/browse/FLINK-5886 > Project: Flink > Issue Type: New Feature > Components: Python API > Reporter: Zohar Mizrahi > Assignee: Zohar Mizrahi > Priority: Major > > A work in progress to provide python interface for Flink streaming APIs. The > core technology is based on jython and thus imposes two limitations: a. user > defined functions cannot use python extensions. b. the python version is 2.x > The branch is based on Flink release 1.2.0, as can be found here: > https://github.com/zohar-pm/flink/tree/python-streaming > In order to test it, someone can use IntelliJ IDE. Assuming IntelliJ was > setup properly (see: > https://ci.apache.org/projects/flink/flink-docs-release-1.3/internals/ide_setup.html), > one can run/debug {{org.apache.flink.python.api.PythonStreamBinderTest}}, > which in return will execute all the tests under > {{/Users/zohar/dev/pm-flink/flink-libraries/flink-python/src/test/python/org/apache/flink/python/api/streaming}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)