From 3802a588f93b8d7bd020d2ebc6f6f07c7fa58062 Mon Sep 17 00:00:00 2001 From: Vitor Santos Costa Date: Sun, 14 May 2017 11:36:09 +0100 Subject: [PATCH] Mostly about Jupyter support. --- C/c_interface.c | 4 +- CXX/yapi.cpp | 11 +- CXX/yapq.hh | 23 +- cmake/python.cmake | 52 +- docs/md/yap.md | 7 +- packages/python/CMakeLists.txt | 2 + packages/python/__main__.py | 3 +- packages/python/pl2py.c | 155 +++--- packages/python/py2pl.c | 2 +- packages/python/pybips.c | 31 +- packages/python/python.c | 15 +- packages/python/python.h | 2 +- packages/python/swig/CMakeLists.txt | 67 +-- packages/python/swig/MANIFEST.in | 6 +- packages/python/swig/setup.py.cmake | 12 +- packages/python/swig/setup.py.in | 42 +- packages/python/swig/yapi.py | 19 +- packages/python/swig/yapi.yap | 7 + packages/python/yap_kernel/CMakeLists.txt | 66 ++- packages/python/yap_kernel/MANIFEST.in | 18 +- packages/python/yap_kernel/__init__.py | 2 - packages/python/yap_kernel/__main__.py | 4 - packages/python/yap_kernel/_version.py | 5 - ...rnel-4.7.0.dev0.macosx-10.12-x86_64.tar.gz | Bin 187935 -> 0 bytes .../dist/yap_kernel-4.7.0.dev0.tar.gz | Bin 93844 -> 0 bytes .../python/yap_kernel/interactiveshell.py | 225 -------- packages/python/yap_kernel/jupyter.yap | 18 - packages/python/yap_kernel/kernelapp.py | 488 ------------------ packages/python/yap_kernel/kernelspec.py | 188 ------- packages/python/yap_kernel/setup.py | 2 +- .../yap_kernel/yap_kernel.egg-info/PKG-INFO | 20 - .../yap_kernel.egg-info/SOURCES.txt | 81 --- .../yap_kernel.egg-info/dependency_links.txt | 1 - .../yap_kernel.egg-info/requires.txt | 12 - .../yap_kernel.egg-info/top_level.txt | 2 - 35 files changed, 277 insertions(+), 1315 deletions(-) delete mode 100644 packages/python/yap_kernel/__init__.py delete mode 100644 packages/python/yap_kernel/__main__.py delete mode 100644 packages/python/yap_kernel/_version.py delete mode 100644 packages/python/yap_kernel/dist/yap_kernel-4.7.0.dev0.macosx-10.12-x86_64.tar.gz delete mode 100644 packages/python/yap_kernel/dist/yap_kernel-4.7.0.dev0.tar.gz delete mode 100644 packages/python/yap_kernel/interactiveshell.py delete mode 100644 packages/python/yap_kernel/jupyter.yap delete mode 100644 packages/python/yap_kernel/kernelapp.py delete mode 100644 packages/python/yap_kernel/kernelspec.py delete mode 100644 packages/python/yap_kernel/yap_kernel.egg-info/PKG-INFO delete mode 100644 packages/python/yap_kernel/yap_kernel.egg-info/SOURCES.txt delete mode 100644 packages/python/yap_kernel/yap_kernel.egg-info/dependency_links.txt delete mode 100644 packages/python/yap_kernel/yap_kernel.egg-info/requires.txt delete mode 100644 packages/python/yap_kernel/yap_kernel.egg-info/top_level.txt diff --git a/C/c_interface.c b/C/c_interface.c index 703271217..6196e8c5c 100755 --- a/C/c_interface.c +++ b/C/c_interface.c @@ -19,7 +19,7 @@ /** * @file c_interface.c * - * @addtogroup ChYInterface + * @addtogroup ChYInterface */ #ifndef C_INTERFACE_C @@ -1702,7 +1702,6 @@ X_API bool YAP_RetryGoal(YAP_dogoalinfo *dgi) { bool out; BACKUP_MACHINE_REGS(); - printf("before RETRY H=%p, ASP=%p, B=%p, ENV=%p, TR=%p %ld\n", HR, ASP, B, ENV, TR, LOCAL_CurSlot); myB = (choiceptr)(LCL0 - dgi->b); CP = myB->cp_cp; /* sanity check */ @@ -1714,7 +1713,6 @@ X_API bool YAP_RetryGoal(YAP_dogoalinfo *dgi) { ASP = (CELL *)B; LOCAL_CurSlot = dgi->EndSlot; out = run_emulator(PASS_REGS1); - printf("out=%d RETRY H=%p, ASP=%p, B=%p, ENV=%p, TR=%p %ld\n", out, HR, ASP, B, ENV, TR, LOCAL_CurSlot); if (out) { dgi->EndSlot = LOCAL_CurSlot; } else { diff --git a/CXX/yapi.cpp b/CXX/yapi.cpp index 23836b25a..031138907 100644 --- a/CXX/yapi.cpp +++ b/CXX/yapi.cpp @@ -19,6 +19,11 @@ X_API void YAP_UserCPredicateWithArgs(const char *, YAP_UserCPred, arity_t, YAP_Term); X_API void YAP_UserBackCPredicate(const char *, YAP_UserCPred, YAP_UserCPred, arity_t, arity_t); + + #if YAP_PYTHON + X_API bool do_init_python(void); + #endif + } YAPAtomTerm::YAPAtomTerm(char *s) @@ -842,7 +847,11 @@ void YAPEngine::doInit(YAP_file_type_t BootMode) Yap_AndroidBufp[0] = '\0'; Yap_AndroidSz = 0; #endif - yerror = YAPError(); + //yerror = YAPError(); +#if YAP_PYTHON + + do_init_python(); +#endif YAPQuery initq = YAPQuery(YAPAtom("$init_system")); if (initq.next()) diff --git a/CXX/yapq.hh b/CXX/yapq.hh index 3b431383c..1bf9fb999 100644 --- a/CXX/yapq.hh +++ b/CXX/yapq.hh @@ -164,16 +164,6 @@ public: return init_args.Embedded; }; - inline void setSavedState( char *fl ) - { - init_args.SavedState = fl; - }; - - inline const char * getSavedState( ) - { - return init_args.SavedState; - }; - inline void setStackSize( bool fl ) { init_args.StackSize = fl; @@ -220,7 +210,7 @@ public: return init_args.YapLibDir; }; - inline void setYapShareDir( const char * fl ) + inline void setYapShareDir( const char * fl ) { init_args.YapShareDir = (const char *)malloc(strlen(fl)+1); strcpy((char *)init_args.YapShareDir, fl); @@ -231,6 +221,17 @@ public: return init_args.YapShareDir; }; + inline void setSavedState( const char * fl ) + { + init_args.SavedState = (const char *)malloc(strlen(fl)+1); + strcpy((char *)init_args.SavedState, fl); + }; + + inline const char * getSavedState( ) + { + return init_args.SavedState; + }; + inline void setYapPrologBootFile( const char * fl ) { init_args.YapPrologBootFile = (const char *)malloc(strlen(fl)+1); diff --git a/cmake/python.cmake b/cmake/python.cmake index db355daaa..c30185de9 100644 --- a/cmake/python.cmake +++ b/cmake/python.cmake @@ -1,62 +1,25 @@ set (Python_ADDITIONAL_VERSIONS 3.7 3.6 3.5 3.6 3.4 ) find_package(PythonInterp) -# find_package(PythonLibs) +find_package(PythonLibs) -# PYTHONLIBS_FOUND - have the Python libs been found +# PYTHONLIBS_FOUND - have the Python libs been found # PYTHON_LIBRARIES - path to the python library # PYTHON_INCLUDE_PATH - path to where Python.h is found (deprecated) # PYTHON_INCLUDE_DIRS - path to where Python.h is found # PYTHON_DEBUG_LIBRARIES - path to the debug library (deprecated) # PYTHONLIBS_VERSION_STRING - version of the Python libs found (since CMake 2.8.8) -# +## # -execute_process ( COMMAND ${PYTHON_EXECUTABLE} -c "import sysconfig; print( - sysconfig.get_path( 'include' ) )" - OUTPUT_VARIABLE _ABS_PYTHON_INCLUDE_PATH - OUTPUT_STRIP_TRAILING_WHITESPACE ) - -get_filename_component ( ABS_PYTHON_INCLUDE_PATH ${_ABS_PYTHON_INCLUDE_PATH} ABSOLUTE ) - -set ( PYTHON_INCLUDE_DIR - ${ABS_PYTHON_INCLUDE_PATH} - CACHE "PATH" "Directory with Python.h " - ) - -set ( PYTHON_INCLUDE_DIRS - ${ABS_PYTHON_INCLUDE_PATH} - CACHE "PATH" "Python.h Dir (Deprecated)" - ) - -execute_process ( COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_SOURCE_DIR}/cmake/libfind.py" - OUTPUT_VARIABLE ABS_PYTHON_SYSLIB - OUTPUT_STRIP_TRAILING_WHITESPACE ) - -set ( PYTHON_LIBRARY - ${ABS_PYTHON_SYSLIB} - CACHE "FILEPATH" "Python Library" - ) - -set ( PYTHON_LIBRARIES - ${PYTHON_LIBRARY} - CACHE "FILEPATH" "Python Library (Deprecated)" - ) - -if ( (EXISTS ${PYTHON_LIBRARY}) AND ( EXISTS ${PYTHON_INCLUDE_DIR}) ) - set ( PYTHONLIBS_FOUND ON - CACHE "BOOLEAN" "Python installed") - # else() - - #find_package(PythonLibs) -endif() -include_directories( BEFORE ${PYTHON_INCLUDE_DIR} ) - + +include_directories( BEFORE ${PYTHON_INCLUDE_DIRS} ) + LIST( APPEND - CMAKE_REQUIRED_INCLUDES ${PYTHON_INCLUDE_DIR} ${CMAKE_REQUIRED_INCLUDES}) + CMAKE_REQUIRED_INCLUDES ${PYTHON_INCLUDE_DIRS} ${CMAKE_REQUIRED_INCLUDES}) check_include_file(Python.h HAVE_PYTHON_H) @@ -74,4 +37,3 @@ if (PYTHONLIBS_FOUND AND SWIG_FOUND) add_subdirectory(packages/python/yap_kernel) ENDIF() endif() - diff --git a/docs/md/yap.md b/docs/md/yap.md index 602b6b4b7..855d67060 100644 --- a/docs/md/yap.md +++ b/docs/md/yap.md @@ -84,17 +84,12 @@ argument" - it cannot be a free variable at the time of the call; - - @defgroup extensions YAP Extensions - @{ - @page Extensions YAP Extensions YAP includes a number of extensions over the original Prolog language. - @subpage atts - @} + @subpage atts @page YAPProgramming Programming in YAP diff --git a/packages/python/CMakeLists.txt b/packages/python/CMakeLists.txt index 79cfe4dc2..7150369e1 100644 --- a/packages/python/CMakeLists.txt +++ b/packages/python/CMakeLists.txt @@ -9,6 +9,8 @@ set (CMAKE_POSITION_INDEPENDENT_CODE TRUE) add_library (YAPPython SHARED ${PYTHON_SOURCES}) +target_link_libraries(YAPPython libYap ${PYTHON_LIBRARY}) + set_property( SOURCE ${PYTHON_SOURCES} APPEND PROPERTY COMPILE_DEFINITIONS YAP_KERNEL=1) set (PYTHON_PL python.pl) diff --git a/packages/python/__main__.py b/packages/python/__main__.py index 4c4c596fb..081358e04 100644 --- a/packages/python/__main__.py +++ b/packages/python/__main__.py @@ -1,4 +1,3 @@ if __name__ == '__main__': - from yapkernel import kernelapp as app - import pdbl pdb.set_trace() + from yap_kernel import kernelapp as app app.launch_new_instance() diff --git a/packages/python/pl2py.c b/packages/python/pl2py.c index 15f501131..4e0ce0c3b 100644 --- a/packages/python/pl2py.c +++ b/packages/python/pl2py.c @@ -8,19 +8,16 @@ PyObject *YE(term_t t, int line, const char *file, const char *code) { char buf[1024]; YAP_WriteBuffer(YAP_GetFromSlot(t), buf, 1023, 0); - fprintf(stderr, "**** Warning,%s@%s:%d: failed on expression %s\n", code, file, line, buf ); + fprintf(stderr, "**** Warning,%s@%s:%d: failed on expression %s\n", code, file, line, buf); return NULL; } - -void YEM(const char * exp, int line, const char *file, const char *code) +void YEM(const char *exp, int line, const char *file, const char *code) { - fprintf(stderr, "**** Warning,%s@%s:%d: failed while executing %s\n", code, file, line, exp ); + fprintf(stderr, "**** Warning,%s@%s:%d: failed while executing %s\n", code, file, line, exp); } - - /** * term_to_python translates and evaluates from Prolog to Python * @@ -29,112 +26,139 @@ void YEM(const char * exp, int line, const char *file, const char *code) * * @return a Python object descriptor or NULL if failed */ -PyObject *term_to_python(term_t t, bool eval, PyObject *o) { +PyObject *term_to_python(term_t t, bool eval, PyObject *o) +{ // o≈ YAP_Term yt = YAP_GetFromSlot(t); // Yap_DebugPlWriteln(yt); - switch (PL_term_type(t)) { - case PL_VARIABLE: { - if (t==0) { - Yap_ThrowError(SYSTEM_ERROR_INTERNAL, yt, "in term_to_python"); - } - PyObject *out = PyTuple_New(1); - PyTuple_SET_ITEM(out, 0, PyLong_FromLong(t)); - return term_to_nametuple("v", 1, out); - }; - case PL_ATOM: { + switch (PL_term_type(t)) + { + case PL_VARIABLE: + { + if (t == 0) + { + Yap_ThrowError(SYSTEM_ERROR_INTERNAL, yt, "in term_to_python"); + } + PyObject *out = PyTuple_New(1); + PyTuple_SET_ITEM(out, 0, PyLong_FromLong(t)); + return term_to_nametuple("v", 1, out); + }; + case PL_ATOM: + { YAP_Atom at = YAP_AtomOfTerm(yt); const char *s; s = YAP_AtomName(at); - if (eval) { + if (eval) + { o = PythonLookup(s, o); /* if (!o) return o; */ - } else - { - o = PythonLookupSpecial(s); - } - if (o) { - Py_INCREF( o ); - return CHECKNULL(t,o); - } -} - case PL_STRING: { + } + else + { + o = PythonLookupSpecial(s); + } + if (o) + { + Py_INCREF(o); + return CHECKNULL(t, o); + } + } + case PL_STRING: + { const char *s = NULL; - if (YAP_IsAtomTerm(yt)) { + if (YAP_IsAtomTerm(yt)) + { s = YAP_AtomName(YAP_AtomOfTerm(yt)); - } else if (YAP_IsStringTerm(yt)) { + } + else if (YAP_IsStringTerm(yt)) + { s = YAP_StringOfTerm(yt); - } else { + } + else + { return CHECKNULL(t, NULL); } #if PY_MAJOR_VERSION < 3 - if (proper_ascii_string(s)) { - PyObject *o = PyString_FromStringAndSize(s, strlen(s)) ; + if (proper_ascii_string(s)) + { + PyObject *o = PyString_FromStringAndSize(s, strlen(s)); return CHECKNULL(t, o); - } else + } + else #endif - { - PyObject *pobj = PyUnicode_DecodeUTF8(s, strlen(s), NULL); - return CHECKNULL(t,pobj); - } - } break; - case PL_INTEGER: { + { + PyObject *pobj = PyUnicode_DecodeUTF8(s, strlen(s), NULL); + return CHECKNULL(t, pobj); + } + } + break; + case PL_INTEGER: + { int64_t j; if (!PL_get_int64_ex(t, &j)) - return CHECKNULL(t,NULL); + return CHECKNULL(t, NULL); #if PY_MAJOR_VERSION < 3 PyObject *o = PyInt_FromLong(j); - return CHECKNULL(t,o); + return CHECKNULL(t, o); #else PyObject *o = PyLong_FromLong(j); - return CHECKNULL(t,o); + return CHECKNULL(t, o); #endif } - case PL_FLOAT: { + case PL_FLOAT: + { PyObject *out; double fl; if (!PL_get_float(t, &fl)) - return CHECKNULL(t,NULL); + return CHECKNULL(t, NULL); out = PyFloat_FromDouble(fl); return CHECKNULL(t, out); } - default: { + default: + { term_t tail = PL_new_term_ref(), arg; size_t len, i; - if (PL_skip_list(t, tail, &len) && PL_get_nil(tail)) { + if (PL_skip_list(t, tail, &len) && PL_get_nil(tail)) + { PyObject *out, *a; arg = tail; out = PyList_New(len); if (!out) - return CHECKNULL(t,NULL); + return CHECKNULL(t, Py_None); - for (i = 0; i < len; i++) { - if (!PL_get_list(t, arg, t)) { + for (i = 0; i < len; i++) + { + if (!PL_get_list(t, arg, t)) + { PL_reset_term_refs(tail); return Py_None; } - a = term_to_python(arg, eval, o); - if (a == NULL) { - a = Py_None; - } - if (PyList_SetItem(out, i, a) < 0) { + a = term_to_python(arg, eval, o); + if (a ) + { + if (PyList_SetItem(out, i, a) < 0) + { return Py_None; + } } } PL_reset_term_refs(tail); - return CHECKNULL(t,out); - } else { + return CHECKNULL(t, out); + } + else + { functor_t fun; PyObject *rc; - if (!PL_get_functor(t, &fun)) { + if (!PL_get_functor(t, &fun)) + { PL_reset_term_refs(tail); - return CHECKNULL(t,NULL); + return CHECKNULL(t, Py_None); } if (eval) rc = compound_to_pyeval(t, o); @@ -145,11 +169,12 @@ PyObject *term_to_python(term_t t, bool eval, PyObject *o) { } } } - return CHECKNULL(t,NULL); + return CHECKNULL(t, Py_None); } -PyObject *yap_to_python(YAP_Term t, bool eval, PyObject *o) { - if (t==0) +PyObject *yap_to_python(YAP_Term t, bool eval, PyObject *o) +{ + if (t == 0) return NULL; term_t yt = YAP_InitSlot(t); o = term_to_python(yt, eval, o); @@ -157,11 +182,13 @@ PyObject *yap_to_python(YAP_Term t, bool eval, PyObject *o) { return o; } -PyObject *deref_term_to_python(term_t t) { +PyObject *deref_term_to_python(term_t t) +{ // Yap_DebugPlWrite(YAP_GetFromSlot(t)); fprintf(stderr, " here I // am\n"); YAP_Term yt = YAP_GetFromSlot(t); - if (YAP_IsVarTerm(yt)) { + if (YAP_IsVarTerm(yt)) + { char s[32]; char *o = YAP_WriteBuffer(yt, s, 31, 0); PyObject *p = PyUnicode_FromString(o); diff --git a/packages/python/py2pl.c b/packages/python/py2pl.c index 1012adfe8..c27c03eb6 100644 --- a/packages/python/py2pl.c +++ b/packages/python/py2pl.c @@ -124,7 +124,7 @@ foreign_t python_to_term(PyObject *pVal, term_t t) { Py_ssize_t i, sz = PyList_GET_SIZE(pVal); if (sz == 0) { - rc = rc && PL_unify_atom(t, ATOM_nil); + rc = rc && PL_unify_nil(t); } else { for (i = 0; i < sz; i++) { PyObject *obj; diff --git a/packages/python/pybips.c b/packages/python/pybips.c index 559e70ab3..e9c2b4c9d 100644 --- a/packages/python/pybips.c +++ b/packages/python/pybips.c @@ -593,7 +593,7 @@ static PyStructSequence_Field pnull[] = { {"A19", NULL}, {"A20", NULL}, {"A21", NULL}, {"A22", NULL}, {"A23", NULL}, {"A24", NULL}, {"A25", NULL}, {"A26", NULL}, {"A27", NULL}, {"A28", NULL}, {"A29", NULL}, {"A29", NULL}, - {"A30", NULL}, {"A31", NULL}, {"A32", NULL}, {0}}; + {"A30", NULL}, {"A31", NULL}, {"A32", NULL}, {NULL,NULL}}; static PyObject *structseq_str(PyObject *iobj) { @@ -624,11 +624,11 @@ static PyObject *structseq_str(PyObject *iobj) { val = PyStructSequence_GET_ITEM(obj, i); repr = PyObject_Str(val); if (repr == NULL) - return NULL; + return Py_None; crepr = PyUnicode_AsUTF8(repr); if (crepr == NULL) { Py_DECREF(repr); - return NULL; + return Py_None; } /* + 3: keep space for ", " */ @@ -724,7 +724,7 @@ static PyObject *structseq_repr(PyObject *iobj) { PyObject *term_to_nametuple(const char *s, arity_t arity, PyObject *tuple) { PyObject *o; -#if PY_MAJOR_VERSION >= 3 +#if PY_MAJOR_VERSION >= 3 PyTypeObject *typp; PyObject *key = PyUnicode_FromString(s); if (py_F2P && PyDict_Contains(py_F2P, key)) { @@ -732,36 +732,35 @@ PyObject *term_to_nametuple(const char *s, arity_t arity, PyObject *tuple) { Py_INCREF(typp); } else { - typp = PyMem_Malloc(sizeof(PyTypeObject)); - PyStructSequence_Desc *desc = PyMem_Malloc(sizeof(PyStructSequence_Desc)); - const char*name = PyUnicode_AsUTF8(key); - desc->name = PyMem_Malloc(strlen(name)+1); - strcpy(desc->name, name); + typp = calloc(sizeof(PyTypeObject), 1); + PyStructSequence_Desc *desc = calloc(sizeof(PyStructSequence_Desc), 1); + desc->name = PyMem_Malloc(strlen(s)+1); + strcpy(desc->name, s); Py_DECREF(key); desc->doc = "YAPTerm"; desc->fields = pnull; - desc->n_in_sequence = 32; + desc->n_in_sequence = arity; if (PyStructSequence_InitType2(typp, desc) < 0) return NULL; - typp->tp_str = structseq_str; - typp->tp_repr = structseq_repr; + typp->tp_flags &= ~Py_TPFLAGS_HEAPTYPE; + // typp->tp_str = structseq_str; + // typp->tp_repr = structseq_repr; // typp = PyStructSequence_NewType(desc); - Py_INCREF(typp); - Py_INCREF(desc); - //typp->tp_flags |= Py_TPFLAGS_HEAPTYPE; // don't do this: we cannot add a type as an atribute. //PyModule_AddObject(py_Main, s, (PyObject *)typp); if (py_F2P) PyDict_SetItem(py_F2P, key, (PyObject *)typp); + Py_INCREF(typp); } o = PyStructSequence_New(typp); for (arity_t i = 0; i < arity; i++) { PyObject *pArg = PyTuple_GET_ITEM(tuple, i); + Py_INCREF(pArg); if (pArg) PyStructSequence_SET_ITEM(o, i, pArg); //PyObject_Print(pArg,stderr,0);fputc('\n',stderr); } - ((PyStructSequence *)o)->ob_base.ob_size = arity; + //((PyStructSequence *)o)->ob_base.ob_size = arity; //PyObject_Print(o,stderr,0);fputc('\n',stderr); return o; #else diff --git a/packages/python/python.c b/packages/python/python.c index 4ca39c3ec..43d3c08b1 100644 --- a/packages/python/python.c +++ b/packages/python/python.c @@ -33,7 +33,7 @@ static void add_modules(void) { py_ModDict = PyObject_GetAttrString(py_Sys, "modules"); // py_Yapex = PyImport_ImportModule("yap4py.yapi"); // PyObject *py_Yap = - PyImport_ImportModule("yap"); + py_Yapex = PyImport_AddModule("yap4py.yapi"); if (py_Yapex) Py_INCREF(py_Yapex); //py_F2P = PyObject_GetAttrString(py_Yap, "globals"); @@ -97,13 +97,13 @@ foreign_t end_python(void) { static bool libpython_initialized = 0; -bool do_init_python(void) { +X_API bool do_init_python(void) { // char **argv; - - if (libpython_initialized) + if (libpython_initialized) return true; libpython_initialized = true; - // PyGILState_STATE gstate = PyGILState_Ensure(); + + // PyGILState_STATE gstate = PyGILState_Ensure(); term_t t = PL_new_term_ref(); if (!python_in_python) Py_Initialize(); @@ -113,11 +113,12 @@ bool do_init_python(void) { install_pl2pl(); // PyGILState_Release(gstate); add_modules(); - return !python_in_python; + return true; } X_API bool init_python(void) { - + if (python_in_python) + return true; return do_init_python(); } diff --git a/packages/python/python.h b/packages/python/python.h index a69b0906b..672c97572 100644 --- a/packages/python/python.h +++ b/packages/python/python.h @@ -182,7 +182,7 @@ extern install_t install_pypreds(void); extern install_t install_pl2pl(void); X_API extern bool init_python(void); -extern bool do_init_python(void); +X_API extern bool do_init_python(void); extern PyObject PyInit_yap(void); diff --git a/packages/python/swig/CMakeLists.txt b/packages/python/swig/CMakeLists.txt index 3f2904cef..ed7fb616f 100644 --- a/packages/python/swig/CMakeLists.txt +++ b/packages/python/swig/CMakeLists.txt @@ -5,26 +5,14 @@ INCLUDE(NewUseSWIG) include(FindPythonModule) +set (PROLOG_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/yapi.yap) +set (PYTHON_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/yapi.py ${CMAKE_CURRENT_SOURCE_DIR}/__init__.py ${CMAKE_CURRENT_SOURCE_DIR}/__main__.py) + file(RELATIVE_PATH RELATIVE_SOURCE ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}) -configure_file("setup.py.cmake" ${CMAKE_CURRENT_BINARY_DIR}/setup.py) +configure_file("setup.py.in" ${CMAKE_CURRENT_BINARY_DIR}/setup.py) configure_file("MANIFEST.in" ${CMAKE_CURRENT_BINARY_DIR}/MANIFEST.in) -foreach(i ${pl_library}) - get_filename_component(j ${i} NAME) - configure_file(${i} ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog/${j}) -endforeach() -foreach(i ${pl_boot_library}) - get_filename_component(j ${i} NAME) - configure_file(${i} ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog/pl/${j}) -endforeach() -foreach(i ${pl_os_library}) - get_filename_component(j ${i} NAME) - configure_file(${i} ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog/os/${j}) -endforeach() -configure_file("${CMAKE_SOURCE_DIR}/README.md" ${CMAKE_CURRENT_BINARY_DIR}/README) -configure_file("__init__.py" ${CMAKE_CURRENT_BINARY_DIR}/yap4py/__init__.py) -configure_file("yapi.py" ${CMAKE_CURRENT_BINARY_DIR}/yap4py/yapi.py) -configure_file("yapi.yap" ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog/yapi.yap) +configure_file("${CMAKE_CURRENT_SOURCE_DIR}/YAP4PY.md" ${CMAKE_CURRENT_BINARY_DIR}/README) INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH}) @@ -33,12 +21,12 @@ INCLUDE_DIRECTORIES("${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_SOURCE_DIR}/CXX") SET_SOURCE_FILES_PROPERTIES(../../swig/yap.i PROPERTIES CPLUSPLUS ON) SET_SOURCE_FILES_PROPERTIES(../../swig/yap.i PROPERTIES SWIG_FLAGS "-O;-py3") SET_SOURCE_FILES_PROPERTIES(../../swiyap.i PROPERTIES SWIG_MODULE_NAME yap) -SET_SOURCE_FILES_PROPERTIES(../../yap.i PROPERTIES OUTPUT_NAME yap) +#SET_SOURCE_FILES_PROPERTIES(../../swi/yap.i PROPERTIES OUTPUT_NAME yap) SWIG_ADD_LIBRARY(Py2YAP LANGUAGE python SHARED SOURCES ../../swig/yap.i ) if (WIN32) SWIG_LINK_LIBRARIES(Py2YAP YAPPython libYap ${PYTHON_LIBRARIES} ) - else() +else() SWIG_LINK_LIBRARIES( Py2YAP libYap YAP++ YAPPython ${PYTHON_LIBRARIES} ) endif() set_target_properties ( ${SWIG_MODULE_Py2YAP_REAL_NAME} @@ -50,22 +38,6 @@ if (WIN32) ) # inform we are compiling YAP # s used in MSYS - - execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import sysconfig; print( sysconfig.get_path( 'platlib' ) )" - OUTPUT_VARIABLE _ABS_PYTHON_MODULE_PATH - OUTPUT_STRIP_TRAILING_WHITESPACE - ) - - get_filename_component(ABS_PYTHON_MODULE_PATH ${_ABS_PYTHON_MODULE_PATH} ABSOLUTE) - file(RELATIVE_PATH _REL_PYTHON_MODULE_PATH ${CMAKE_INSTALL_PREFIX} ${_ABS_PYTHON_MODULE_PATH}) - # - # set ( PYTHON_MODULE_PATH - # ${ABS_PYTHON_MODULE_PATH} - # ) - # - # INSTALL ( FILES ${CMAKE_CURRENT_BINARY_DIR}/yap.py DESTINATION ${PYTHON_MODULE_PATH} ) - # INSTALL ( FILES ${CMAKE_CURRENT_SOURCE_DIR}/yapi.py DESTINATION ${PYTHON_MODULE_PATH} ) - # INSTALL ( FILES ${CMAKE_CURRENT_SOURCE_DIR}/yapi.yap DESTINATION ${libpl} ) # # # INSTALL ( TARGETS ${SWIG_MODULE_Py2YAP_REAL_NAME} @@ -81,28 +53,31 @@ if (WIN32) $ $ $ - $ $) if (TARGET real) list( APPEND dlls $ ) endif() +file( MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog/pl ) +file( MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog/os ) + add_custom_target( YAP4PY ALL - ) - - -add_custom_command (TARGET YAP4PY - COMMAND ${CMAKE_COMMAND} -E copy ${dlls} ${CMAKE_BINARY_DIR}/libYap${CMAKE_SHARED_LIBRARY_SUFFIX} ${CMAKE_BINARY_DIR}/${YAP_STARTUP} ${CMAKE_CURRENT_BINARY_DIR}/yap4py - COMMAND ${PYTHON_EXECUTABLE} setup.py clean sdist bdist_wheel - VERBATIM + COMMAND ${CMAKE_COMMAND} -E copy ${dlls} ${CMAKE_BINARY_DIR}/libYap${CMAKE_SHARED_LIBRARY_SUFFIX} ${CMAKE_BINARY_DIR}/${YAP_STARTUP} ${CMAKE_CURRENT_BINARY_DIR}/yap4py + COMMAND ${CMAKE_COMMAND} -E copy ${pl_library} ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog + COMMAND ${CMAKE_COMMAND} -E copy ${PYTHON_SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/yap4py + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/yapi.yap ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog + COMMAND ${CMAKE_COMMAND} -E copy ${pl_library} ${PROLOG_SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog + COMMAND ${CMAKE_COMMAND} -E copy ${pl_boot_library} ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog/pl + COMMAND ${CMAKE_COMMAND} -E copy ${pl_os_library} ${CMAKE_CURRENT_BINARY_DIR}/yap4py/prolog/os + COMMAND ${PYTHON_EXECUTABLE} setup.py sdist bdist_wheel WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - DEPENDS ${CMAKE_BINARY_DIR}/${YAP_STARTUP} libYap ${dlls} ${pl_library} ${pl_boot_library} ${pl_os_library} yapi.py} - ) +DEPENDS STARTUP ${dlls} ${PYTHON_SOURCES} ${PROLOG_SOURCES} setup.py ${SWIG_MODULE_Py2YAP_REAL_NAME} ) + install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m pip install --no-index -f dist yap4py WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})" - DEPENDS Py4YAP${CMAKE_BINARY_DIR}/${YAP_STARTUP} ${dlls} ) + DEPENDS Py4YAP ${CMAKE_BINARY_DIR}/${YAP_STARTUP} ${dlls} ) if (WITH_DOCS AND DOXYGEN_FOUND) diff --git a/packages/python/swig/MANIFEST.in b/packages/python/swig/MANIFEST.in index ce535d5dd..f7f1f5258 100644 --- a/packages/python/swig/MANIFEST.in +++ b/packages/python/swig/MANIFEST.in @@ -1,7 +1,9 @@ -include COPYING.md -include CONTRIBUTING.md +# include COPYING.md +# include CONTRIBUTING.md include README.md +recursive-include * *.* + # Documentation graft docs exclude docs/\#* diff --git a/packages/python/swig/setup.py.cmake b/packages/python/swig/setup.py.cmake index a86e4ddbd..57a24ab09 100644 --- a/packages/python/swig/setup.py.cmake +++ b/packages/python/swig/setup.py.cmake @@ -45,7 +45,7 @@ here = path.abspath(path.dirname(__file__)) # Get the long description from the README file -extensions=[Extension('_yap', python_sources, +extensions=[Extension '_yap', python_sources, define_macros = [('MAJOR_VERSION', '1'), ('MINOR_VERSION', '0'), ('_YAP_NOT_INSTALLED_', '1'), @@ -54,7 +54,7 @@ extensions=[Extension('_yap', python_sources, swig_opts=['-modern', '-c++', '-py3','-I${RELATIVE_SOURCE}/CXX'], library_dirs=['../../..','../../../CXX','../../packages/python',"${dlls}","${bindir}", '.'], extra_link_args=my_extra_link_args, - extra_compile_args=['-g'], + extra_compile_args=['-g3','-O0'], libraries=['Yap','${GMP_LIBRARIES}'], include_dirs=['../../..', '${GMP_INCLUDE_DIRS}', @@ -86,12 +86,12 @@ setup( 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7'], keywords=['Logic Programing'], - #spackage_data={'': ['yap']}, + #package_data={'yap4py':['*.*'] }, include_package_data=True, ext_modules = extensions, - py_modules = ['yap'], + #py_modules = ['yap'], zip_safe=False, - eager_resources = ['yap4py'], - packages=['yap4py'] # find_packages() + eager_resources = [''], + #packages=['yap4py'] # find_packages() #package_dir = {'':'yap4py'} ) diff --git a/packages/python/swig/setup.py.in b/packages/python/swig/setup.py.in index c027ae89a..1a585c489 100644 --- a/packages/python/swig/setup.py.in +++ b/packages/python/swig/setup.py.in @@ -16,7 +16,7 @@ import platform import os.path # the name of the package -name = 'yap_kernel' +name = 'YAP4PY' #----------------------------------------------------------------------------- # Minimal Python version sanity check @@ -35,8 +35,13 @@ PY3 = (sys.version_info[0] >= 3) #----------------------------------------------------------------------------- # get on with it #----------------------------------------------------------------------------- - +from codecs import open +from os import path, makedirs, walk +from shutil import copytree, rmtree, copy2, move from glob import glob +from pathlib import Path +import platform +import os.path import os import shutil @@ -92,29 +97,21 @@ extensions=[Extension('_yap', native_sources, packages = ['yap4py'] -pls = [] -for (r,d,fs) in walk('dylib'): - for f in fs: - pls += [os.path.join(r, f)] -for (r,d,fs) in walk('yss'): - for f in fs: - pls += [os.path.join(r, f)] -for (r,d,fs) in walk('pl'): - for f in fs: - pls += [os.path.join(r, f)] -for (r,d,fs) in walk('yap'): - for f in fs: - pls += [os.path.join(r, f)] - -for d, _, _ in os.walk(pjoin(here, name)): - if os.path.exists(pjoin(d, '__init__.py')): - packages.append(d[len(here)+1:].replace(os.path.sep, '.')) +def visit(d0, pls): + for (r,ds,fs) in walk('.'): + for f in fs: + f0,ext = os.path.splitext(f) + if (ext == 'yap' or ext == 'pl' or ext == 'so' or ext == 'dll' or ext == 'yss'): + pls += [os.path.join(r, f)] + for i in ds: + pls = visit(os.path.join(d0, i), pls) + return pls package_data = { - 'yap4pyl': pls, + '': visit('.',[]) } -version_ns = {'__version__'='6.3','minor-version'='6','minor-version'='3','patch'='5'} +version_ns = {'__version__':'6.3.5','minor-version':'6','minor-version':'3','patch':'5'} setup_args = dict( @@ -124,12 +121,13 @@ setup_args = dict( packages = packages, py_modules = ['yap'], package_data = package_data, + include_package_data = True, description = "YAP in Python", author = 'YAP Development Team', author_email = 'ipython-dev@scipy.org', url = 'http://ipython.org', license = 'BSD', - extensions = ['extensions'], + ext_modules = extensions, platforms = "Linux, Mac OS X, Windows", keywords = ['Interactive', 'Interpreter', 'Shell', 'Web'], classifiers = [ diff --git a/packages/python/swig/yapi.py b/packages/python/swig/yapi.py index 9f7d58db6..dbf98dded 100644 --- a/packages/python/swig/yapi.py +++ b/packages/python/swig/yapi.py @@ -14,9 +14,15 @@ library = namedtuple( 'library', 'list') v = namedtuple( '_', 'slot') - def numbervars( engine, l ): - return engine.fun(bindvars(l)) + rc = engine.fun(bindvars(l)) + o = [] + for i in rc: + if i[0] == "=": + o = o + [i[1]] + else: + o = o +[i] + return o def query_prolog(engine, s): @@ -86,15 +92,18 @@ def query_prolog(engine, s): q.close() return - -def live(): +def boot_yap(**kwargs): yap_lib_path = os.path.dirname(__file__) args = yap.YAPEngineArgs() args.setYapShareDir(os.path.join(yap_lib_path,"prolog")) args.setYapLibDir(yap_lib_path) - #args.setYapPrologBootFile(os.path.join(yap_lib_path."startup.yss")) + args.setSavedState(os.path.join(yap_lib_path,"startup.yss")) engine = yap.YAPEngine(args) engine.goal( use_module(library('yapi') ) ) + return engine + +def live(**kwargs): + boot_yap(**kwargs) loop = True while loop: try: diff --git a/packages/python/swig/yapi.yap b/packages/python/swig/yapi.yap index e02cb5d3d..c6de3df77 100644 --- a/packages/python/swig/yapi.yap +++ b/packages/python/swig/yapi.yap @@ -10,11 +10,18 @@ bindvars( [], [] ) :- !. bindvars( L, NL ) :- rb_new(T), +% trace, foldl2( bind, L, NL, T, _ , 0, _), term_variables(NL, Vs), foldl( bind_new, Vs, 0, _). +bind(t(_,t(X,Y)), Z, T0, T, N1, N2) :- + !, + bind(X=Y, Z, T0, T, N1, N2). +bind(tuple(_,tuple(X,Y)), Z, T0, T, N1, N2) :- + !, + bind(X=Y, Z, T0, T, N1, N2). bind(X=Y, X=X, T0, T, N, N) :- var(Y), !, diff --git a/packages/python/yap_kernel/CMakeLists.txt b/packages/python/yap_kernel/CMakeLists.txt index 20eadabee..55789cd70 100644 --- a/packages/python/yap_kernel/CMakeLists.txt +++ b/packages/python/yap_kernel/CMakeLists.txt @@ -1,23 +1,60 @@ +set (EXTRAS + MANIFEST.in + YAP_KERNEL.md +) set (PYTHON_SOURCES - __main__.py - __init__.py - setup.py - _version.py - interactiveshell.py - kernelapp.py -kernelspec.py -yapkernel.py ) - +yap_kernel_launcher.py +data_kernelspec/kernel.json +yap_kernel/__init__.py +yap_kernel/__main__.py +yap_kernel/_version.py +yap_kernel/codeutil.py +yap_kernel/connect.py +yap_kernel/datapub.py +yap_kernel/displayhook.py +yap_kernel/embed.py +yap_kernel/eventloops.py +yap_kernel/heartbeat.py +yap_kernel/interactiveshell.py +yap_kernel/iostream.py +yap_kernel/jsonutil.py +yap_kernel/kernelapp.py +yap_kernel/kernelbase.py +yap_kernel/kernelspec.py +yap_kernel/log.py +yap_kernel/parentpoller.py +yap_kernel/pickleutil.py +yap_kernel/serialize.py +yap_kernel/yapkernel.py +yap_kernel/zmqshell.py +yap_kernel/comm/__init__.py +yap_kernel/comm/comm.py +yap_kernel/comm/manager.py +yap_kernel/gui/__init__.py +yap_kernel/gui/gtk3embed.py +yap_kernel/gui/gtkembed.py +yap_kernel/inprocess/__init__.py +yap_kernel/inprocess/blocking.py +yap_kernel/inprocess/channels.py +yap_kernel/inprocess/client.py +yap_kernel/inprocess/constants.py +yap_kernel/inprocess/ipkernel.py +yap_kernel/inprocess/manager.py +yap_kernel/inprocess/socket.py +yap_kernel/pylab/__init__.py +yap_kernel/pylab/backend_inline.py +yap_kernel/pylab/config.py + ) +foreach(i ${PYTHON_SOURCES}) + configure_file(${i} ${CMAKE_CURRENT_BINARY_DIR}/${i}) +endforeach() configure_file("setup.py" ${CMAKE_CURRENT_BINARY_DIR}/setup.py) configure_file("MANIFEST.in" ${CMAKE_CURRENT_BINARY_DIR}/MANIFEST.in) -foreach(i ${PYTHON_SOURCES}) - configure_file(${i} ${CMAKE_CURRENT_BINARY_DIR}/yap_kernel/${i}) -endforeach() -configure_file("_version.py" ${CMAKE_CURRENT_BINARY_DIR}/yap_kernel/_version.py) configure_file("YAP_KERNEL.md" ${CMAKE_CURRENT_BINARY_DIR}/README) +configure_file("yap_kernel/_version.py" ${CMAKE_CURRENT_BINARY_DIR}/yap_kernel/_version.py ) configure_file("${CMAKE_SOURCE_DIR}/docs/icons/yap_32x32x32.png" ${CMAKE_CURRENT_BINARY_DIR}/yap_kernel/resources/logo-32x32.png) configure_file("${CMAKE_SOURCE_DIR}/docs/icons/yap_64x64x32.png" ${CMAKE_CURRENT_BINARY_DIR}/yap_kernel/resources/logo-64x64.png) configure_file("${CMAKE_SOURCE_DIR}/misc/editors/prolog.js" ${CMAKE_CURRENT_BINARY_DIR}/yap_kernel/resources/prolog.js) @@ -27,9 +64,7 @@ set(SETUP_PY "${CMAKE_CURRENT_BINARY_DIR}/setup.py") set( PYTHON_INSTALL sdist bdist_wheel) add_custom_target( YAPKernel ALL - ) -add_custom_command (TARGET YAPKernel COMMAND ${PYTHON_EXECUTABLE} setup.py clean sdist bdist_wheel WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} DEPENDS libYap ${SWIG_MODULE_Py2YAP_REAL_NAME} @@ -41,4 +76,3 @@ install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m pip install --no-i install(FILES jupyter.yap DESTINATION ${libpl} ) - diff --git a/packages/python/yap_kernel/MANIFEST.in b/packages/python/yap_kernel/MANIFEST.in index ce535d5dd..0d9047376 100644 --- a/packages/python/yap_kernel/MANIFEST.in +++ b/packages/python/yap_kernel/MANIFEST.in @@ -1,24 +1,14 @@ -include COPYING.md -include CONTRIBUTING.md +#include COPYING.md +#include CONTRIBUTING.md include README.md + # Documentation -graft docs -exclude docs/\#* - -# Examples -graft examples - -# docs subdirs we want to skip -prune docs/build -prune docs/gh-pages -prune docs/dist - +graft # Patterns to exclude from any directory global-exclude *~ global-exclude *.pyc global-exclude *.pyo -global-exclude .git global-exclude .ipynb_checkpoints prune data_kernelspec diff --git a/packages/python/yap_kernel/__init__.py b/packages/python/yap_kernel/__init__.py deleted file mode 100644 index abda6f0b7..000000000 --- a/packages/python/yap_kernel/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -from ._version import version_info, __version__, kernel_protocol_version_info, kernel_protocol_version -from ipykernel.connect import * diff --git a/packages/python/yap_kernel/__main__.py b/packages/python/yap_kernel/__main__.py deleted file mode 100644 index 6526e9b74..000000000 --- a/packages/python/yap_kernel/__main__.py +++ /dev/null @@ -1,4 +0,0 @@ - -if __name__ == '__main__': - from yap_kernel.kernelapp import launch_new_instance - launch_new_instance() diff --git a/packages/python/yap_kernel/_version.py b/packages/python/yap_kernel/_version.py deleted file mode 100644 index e84657f5d..000000000 --- a/packages/python/yap_kernel/_version.py +++ /dev/null @@ -1,5 +0,0 @@ -version_info = (4, 4, 1) -__version__ = '.'.join(map(str, version_info)) - -kernel_protocol_version_info = (5, 0) -kernel_protocol_version = '%s.%s' % kernel_protocol_version_info diff --git a/packages/python/yap_kernel/dist/yap_kernel-4.7.0.dev0.macosx-10.12-x86_64.tar.gz b/packages/python/yap_kernel/dist/yap_kernel-4.7.0.dev0.macosx-10.12-x86_64.tar.gz deleted file mode 100644 index bc77856db1f37bfb3fbb90149afbd18d91f70494..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 187935 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ℜ+(yTv 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 diff --git a/packages/python/yap_kernel/dist/yap_kernel-4.7.0.dev0.tar.gz b/packages/python/yap_kernel/dist/yap_kernel-4.7.0.dev0.tar.gz deleted file mode 100644 index 204422c71da91c2014540a5acab92531ea4c1899..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 93844 zcmV($K;yq3iwFqS>k?T4|72-%bT4^fa9?X>a&Bd8Ei^7SE-)@+Wp*$wbYXG;?7i!H z+sKtDn!khZ%RAK2@sRY8(A~}`QBPz^wzXT9)RNrp-j0U?NsvMd1lRy5iIepFKM!(V z>^#X?w<;7skdiFh>7Iy5TO?4|Rjby$R!zNe=h9CiKWwkNFWhCf?_Vu1{qD1Vmf`ba zV}t)b=fBIV>-?8Lzgt;bSzh0GzVTue-mk2$uRZ^r+W6g9_)OBwOO*QERoYuv4vGy1 zw@eZzqW}IzKGVwe-#I!wJK2Bv?ri_?wL9v6hV_5GzCL&TS6-~s`me69y;xhu^?weC z@H@5qxc*=K^F-~$QI-VVNftyy$9eCoK^%thwaPAh^bnq9qfc z`+xcQ>f`?ZI{W`1==o8K`xu_oWeUEARKV}6N!0ffq6<_~#RK~B zHtq+50N%em-IdmSr{RTZtS+PYI#OP$4*hEtC+ft%3a};ky4Kzay-Dh0t!4|$Fx^Qv z9j6WSW;{)T;YFqzy{1}SUfF0VO^bH@D?g0KBR|U2neUApXFCiPl}=USr+#wf_g%+1 z@%uq4R12zk5zGMk3nG=qlceXWJZu2QnD}Z8 zGY_&1<^T}70y@|S7HULx;H>`T@csDY===TMyd;cOrNsP=w1KG{1xRYxak|LyU?J~Rfc zpKKqV?eCq!4m#X9c()6Ly``W5b$E294))*fpFy#+qZV~4)ttPVI(ntv?w#zsfuGwi z_Yd~Zex!lC+CMwQzFt9R+v<4x6f|368xm$CrCB$nBR0dk*ykv)tW3+1ok8>Ez#b0CF(C zgO)ly-rL#7FMB`i!DO~ier!pbr+eSMgF^7q+1-A-{Tk-hxCJDzCOhv=_TJ)<0S>3{ zUY?%qpS?TVQ?HMXb`j9d>E6lr`#XE5e^LiWrv$Bcr+Y26yM4Az9YYfUDtHawU%ort zC!p;gp6#8SygNSIKRRr}`o0IKoH#q%P<5A}dvr)s1ppnL{D_Sr3<&rw_5RHsJU>Br z5~Q{f1g8M8oinSL1N{L2Û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 -# Copyright (C) 2001-2007 Fernando Perez. -# Copyright (C) 2008-2011 The IPython Development Team -# -# Distributed under the terms of the BSD License. The full license is in -# the file COPYING, distributed as part of this software. -#----------------------------------------------------------------------------- - -from __future__ import absolute_import, print_function - -import __future__ -import abc -import ast -import atexit -import functools -import os -import re -import runpy -import signal - -import sys -import tempfile -import traceback -import types -import subprocess -import warnings -import yap -import yap4py.yapi -from io import open as io_open - -from pickleshare import PickleShareDB - -from traitlets.config.configurable import SingletonConfigurable -from IPython.core import oinspect -from IPython.core import magic -from IPython.core import page -from IPython.core import prefilter -from IPython.core import shadowns -from IPython.core import ultratb -from IPython.core import interactiveshell -from IPython.core.alias import Alias, AliasManager -from IPython.core.autocall import ExitAutocall -from IPython.core.builtin_trap import BuiltinTrap -from IPython.core.events import EventManager, available_events -from IPython.core.compilerop import CachingCompiler, check_linecache_ipython -from IPython.core.debugger import Pdb -from IPython.core.display_trap import DisplayTrap -from IPython.core.displayhook import DisplayHook -from IPython.core.displaypub import DisplayPublisher -from IPython.core.error import InputRejected, UsageError -from IPython.core.extensions import ExtensionManager -from IPython.core.formatters import DisplayFormatter -from IPython.core.history import HistoryManager -from IPython.core.inputsplitter import ESC_MAGIC, ESC_MAGIC2 -from IPython.core.logger import Logger -from IPython.core.macro import Macro -from IPython.core.payload import PayloadManager -from IPython.core.prefilter import PrefilterManager -from IPython.core.profiledir import ProfileDir -from IPython.core.usage import default_banner -from IPython.core.interactiveshell import InteractiveShellABC, InteractiveShell, ExecutionResult -from IPython.testing.skipdoctest import skip_doctest -from IPython.utils import PyColorize -from IPython.utils import io -from IPython.utils import py3compat -from IPython.utils import openpy -from IPython.utils.decorators import undoc -from IPython.utils.io import ask_yes_no -from IPython.utils.ipstruct import Struct -from IPython.paths import get_ipython_dir -from IPython.utils.path import get_home_dir, get_py_filename, ensure_dir_exists -from IPython.utils.process import system, getoutput -from IPython.utils.py3compat import (builtin_mod, unicode_type, string_types, - with_metaclass, iteritems) -from IPython.utils.strdispatch import StrDispatch -from IPython.utils.syspathcontext import prepended_to_syspath -from IPython.utils.text import format_screen, LSString, SList, DollarFormatter -from IPython.utils.tempdir import TemporaryDirectory -from traitlets import ( - Integer, Bool, CaselessStrEnum, Enum, List, Dict, Unicode, Instance, Type, - observe, default, -) -from warnings import warn -from logging import error -from collections import namedtuple - - -use_module = namedtuple( 'use_module', 'file') -bindvars = namedtuple( 'bindvars', 'list') -library = namedtuple( 'library', 'list') -v = namedtuple( '_', 'slot') - -class YAPInteractiveShell: - """An enhanced, interactive shell for YAP.""" - - def __init__(self, kernel): - - pjoin = os.path.join - here = os.path.abspath(os.path.dirname(__file__)) - yap_lib_path = pjoin(here, "../yap4py/prolog" ) - yap_dll_path = pjoin(here, "../yap4py" ) - args = yap.YAPEngineArgs() - args.setYapLibDir(yap_dll_path) - args.setYapShareDir(yap_lib_path) - #args.setYapPrologBootFile(os.path.join(yap_lib_path."startup.yss")) - self.yapeng = yap.YAPEngine( args ) - self.q = None - self.yapeng.goal( use_module( library('yapi') ) ) - self.shell = kernel.shell - self.shell.run_cell = self.run_cell - - - def closeq(self): - if self.q: - self.q.close() - self.q = None - - def run_cell(self, s, store_history=True, silent=False, shell_futures=True): - - """Run a complete IPython cell. - - Parameters - ---------- - raw_cell : str - The code (including IPython code such as %magic functions) to run. - store_history : bool - If True, the raw and translated cell will be stored in IPython's - history. For user code calling back into IPython's machinery, this - should be set to False. - silent : bool - If True, avoid side-effects, such as implicit displayhooks and - and logging. silent=True forces store_history=False. - shell_futures : bool - If True, the code will share future statements with the interactive - shell. It will both be affected by previous __future__ imports, and - any __future__ imports in the code will affect the shell. If False, - __future__ imports are not shared in either direction. - - Returns - ------- - result : :class:`ExecutionResult` - """ - - def numbervars(self, l): - return self.yapeng.fun(bindvars(l)) - - result = ExecutionResult() - - if (not s) or s.isspace(): - self.shell.last_execution_succeeded = True - return result - - if store_history: - result.execution_count = self.shell.execution_count - - def error_before_exec(value): - result.error_before_exec = value - self.shell.last_execution_succeeded = False - return result - - - if not self.q: - try: - self.q = self.yapeng.query(s) - except SyntaxError: - return error_before_exec( sys.exc_info()[1]) - - cell = s # cell has to exist so it can be stored/logged - - # Store raw and processed history - # if not silent: - # self.shell..logger.log(cell, s) - - has_raised = False - try: - #f = io.StringIO() - # with redirect_stdout(f): - run = self.q.next() - # print('{0}'.format(f.getvalue())) - # Execute the user code - if run: - myvs = self.numbervars(self.q.namedVars()) - if myvs: - for eq in myvs: - name = eq[0] - binding = eq[1] - if name != binding: - print(name + " = " + str(binding)) - else: - print("yes") - if self.q.deterministic(): - self.closeq() - else: - print("No (more) answers") - self.closeq() - except: - result.error_in_exec = sys.exc_info()[1] - # self.showtraceback() - has_raised = True - self.closeq() - - - self.shell.last_execution_succeeded = not has_raised - result.result = self.shell.last_execution_succeeded - print( self.q ) - # Reset this so later displayed values do not modify the - # ExecutionResult - # self.displayhook.exec_result = None - - #self.events.trigger('post_execute') - #if not silent: - # self.events.trigger('post_run_cell') - - if store_history: - # Write output to the database. Does nothing unless - # history output logging is enabled. - # self.history_manager.store_output(self.execution_count) - # Each cell is a *single* input, regardless of how many lines it has - self.shell.execution_count += 1 - - return result diff --git a/packages/python/yap_kernel/jupyter.yap b/packages/python/yap_kernel/jupyter.yap deleted file mode 100644 index 33e7c8223..000000000 --- a/packages/python/yap_kernel/jupyter.yap +++ /dev/null @@ -1,18 +0,0 @@ - -:- use_module(library(python)). - -:- if( current_prolog_flag(apple, true) ). - -:- putenv( 'LC_CTYPE', 'en_us:UTF-8'). - -plot_inline :- - X := self.inline_plotting, - nb_setval(inline, X ), - X = true, - !, - := ( - import( matplotlib ), - matplotlib.use( `nbagg` ) - ). - -:- endif. diff --git a/packages/python/yap_kernel/kernelapp.py b/packages/python/yap_kernel/kernelapp.py deleted file mode 100644 index 74e6fcfca..000000000 --- a/packages/python/yap_kernel/kernelapp.py +++ /dev/null @@ -1,488 +0,0 @@ -"""An Application for launching a kernel""" - -# Copyright (c) IPython Development Team. -# Distributed under the terms of the Modified BSD License. - -from __future__ import print_function - -import atexit -import os -import sys -import signal -import traceback -import logging - -from tornado import ioloop -import zmq -from zmq.eventloop import ioloop as zmq_ioloop -from zmq.eventloop.zmqstream import ZMQStream -from ipykernel.zmqshell import ZMQInteractiveShell - -from IPython.core.application import ( - BaseIPythonApplication, base_flags, base_aliases, catch_config_error -) -from IPython.core.profiledir import ProfileDir -from IPython.core.shellapp import ( - InteractiveShellApp, shell_flags, shell_aliases -) -from IPython.utils import io -from ipython_genutils.path import filefind, ensure_dir_exists -from traitlets import ( - Any, Instance, Dict, Unicode, Integer, Bool, DottedObjectName, Type, default -) -from ipython_genutils.importstring import import_item -from jupyter_core.paths import jupyter_runtime_dir -from jupyter_client import write_connection_file -from jupyter_client.connect import ConnectionFileMixin - -# local imports -from ipykernel.iostream import IOPubThread -from ipykernel.heartbeat import Heartbeat -from yap_kernel.yapkernel import YAPKernel -from ipykernel.parentpoller import ParentPollerUnix, ParentPollerWindows -from jupyter_client.session import ( - Session, session_flags, session_aliases, -) - -#----------------------------------------------------------------------------- -# Flags and Aliases -#----------------------------------------------------------------------------- - -kernel_aliases = dict(base_aliases) -kernel_aliases.update({ - 'ip' : 'YAPKernelApp.ip', - 'hb' : 'YAPKernelApp.hb_port', - 'shell' : 'YAPKernelApp.shell_port', - 'iopub' : 'YAPKernelApp.iopub_port', - 'stdin' : 'YAPKernelApp.stdin_port', - 'control' : 'YAPKernelApp.control_port', - 'f' : 'YAPKernelApp.connection_file', - 'transport': 'YAPKernelApp.transport', -}) - -kernel_flags = dict(base_flags) -kernel_flags.update({ - 'no-stdout' : ( - {'YAPKernelApp' : {'no_stdout' : True}}, - "redirect stdout to the null device"), - 'no-stderr' : ( - {'YAPKernelApp' : {'no_stderr' : True}}, - "redirect stderr to the null device"), - 'pylab' : ( - {'YAPKernelApp' : {'pylab' : 'auto'}}, - """Pre-load matplotlib and numpy for interactive use with - the default matplotlib backend."""), -}) - -# inherit flags&aliases for any IPython shell apps -kernel_aliases.update(shell_aliases) -kernel_flags.update(shell_flags) - -# inherit flags&aliases for Sessions -kernel_aliases.update(session_aliases) -kernel_flags.update(session_flags) - -_ctrl_c_message = """\ -NOTE: When using the `ipython kernel` entry point, Ctrl-C will not work. - -To exit, you will have to explicitly quit this process, by either sending -"quit" from a client, or using Ctrl-\\ in UNIX-like environments. - -To read more about this, see https://github.com/ipython/ipython/issues/2049 - -""" - -#----------------------------------------------------------------------------- -# Application class for starting an IPython Kernel -#----------------------------------------------------------------------------- - -class YAPKernelApp(BaseIPythonApplication, InteractiveShellApp, - ConnectionFileMixin): - name='YAP-kernel' - aliases = Dict(kernel_aliases) - flags = Dict(kernel_flags) - classes = [YAPKernel, ZMQInteractiveShell, ProfileDir, Session] - # the kernel class, as an importstring - kernel_class = Type('yap_kernel.yapkernel.YAPKernel', - klass='ipykernel.kernelbase.Kernel', - help="""The Kernel subclass to be used. - - This should allow easy re-use of the YAPKernelApp entry point - to configure and launch kernels other than IPython's own. - """).tag(config=True) - kernel = Any() - poller = Any() # don't restrict this even though current pollers are all Threads - heartbeat = Instance(Heartbeat, allow_none=True) - ports = Dict() - - subcommands = { - 'install': ( - 'yap_kernel.kernelspec.InstallYAPKernelSpecApp', - 'Install the YAP kernel' - ), - } - - # connection info: - connection_dir = Unicode() - - @default('connection_dir') - def _default_connection_dir(self): - return jupyter_runtime_dir() - - @property - def abs_connection_file(self): - if os.path.basename(self.connection_file) == self.connection_file: - return os.path.join(self.connection_dir, self.connection_file) - else: - return self.connection_file - - # streams, etc. - no_stdout = Bool(False, help="redirect stdout to the null device").tag(config=True) - no_stderr = Bool(False, help="redirect stderr to the null device").tag(config=True) - outstream_class = DottedObjectName('ipykernel.iostream.OutStream', - help="The importstring for the OutStream factory").tag(config=True) - displayhook_class = DottedObjectName('ipykernel.displayhook.ZMQDisplayHook', - help="The importstring for the DisplayHook factory").tag(config=True) - - # polling - parent_handle = Integer(int(os.environ.get('JPY_PARENT_PID') or 0), - help="""kill this process if its parent dies. On Windows, the argument - specifies the HANDLE of the parent process, otherwise it is simply boolean. - """).tag(config=True) - interrupt = Integer(int(os.environ.get('JPY_INTERRUPT_EVENT') or 0), - help="""ONLY USED ON WINDOWS - Interrupt this process when the parent is signaled. - """).tag(config=True) - - def init_crash_handler(self): - sys.excepthook = self.excepthook - - def excepthook(self, etype, evalue, tb): - # write uncaught traceback to 'real' stderr, not zmq-forwarder - traceback.print_exception(etype, evalue, tb, file=sys.__stderr__) - - def init_poller(self): - if sys.platform == 'win32': - if self.interrupt or self.parent_handle: - self.poller = ParentPollerWindows(self.interrupt, self.parent_handle) - elif self.parent_handle: - self.poller = ParentPollerUnix() - - def _bind_socket(self, s, port): - iface = '%s://%s' % (self.transport, self.ip) - if self.transport == 'tcp': - if port <= 0: - port = s.bind_to_random_port(iface) - else: - s.bind("tcp://%s:%i" % (self.ip, port)) - elif self.transport == 'ipc': - if port <= 0: - port = 1 - path = "%s-%i" % (self.ip, port) - while os.path.exists(path): - port = port + 1 - path = "%s-%i" % (self.ip, port) - else: - path = "%s-%i" % (self.ip, port) - s.bind("ipc://%s" % path) - return port - - def write_connection_file(self): - """write connection info to JSON file""" - cf = self.abs_connection_file - self.log.debug("Writing connection file: %s", cf) - write_connection_file(cf, ip=self.ip, key=self.session.key, transport=self.transport, - shell_port=self.shell_port, stdin_port=self.stdin_port, hb_port=self.hb_port, - iopub_port=self.iopub_port, control_port=self.control_port) - - def cleanup_connection_file(self): - cf = self.abs_connection_file - self.log.debug("Cleaning up connection file: %s", cf) - try: - os.remove(cf) - except (IOError, OSError): - pass - - self.cleanup_ipc_files() - - def init_connection_file(self): - if not self.connection_file: - self.connection_file = "kernel-%s.json"%os.getpid() - try: - self.connection_file = filefind(self.connection_file, ['.',self.connection_dir]) - except IOError: - self.log.debug("Connection file not found: %s", self.connection_file) - # This means I own it, and I'll create it in this directory: - ensure_dir_exists(os.path.dirname(self.abs_connection_file), 0o700) - # Also, I will clean it up: - atexit.register(self.cleanup_connection_file) - return - try: - self.load_connection_file() - except Exception: - self.log.error("Failed to load connection file: %r", self.connection_file, exc_info=True) - self.exit(1) - - def init_sockets(self): - # Create a context, a session, and the kernel sockets. - self.log.info("Starting the kernel at pid: %i", os.getpid()) - context = zmq.Context.instance() - # Uncomment this to try closing the context. - # atexit.register(context.term) - - self.shell_socket = context.socket(zmq.ROUTER) - self.shell_socket.linger = 1000 - self.shell_port = self._bind_socket(self.shell_socket, self.shell_port) - self.log.debug("shell ROUTER Channel on port: %i" % self.shell_port) - - self.stdin_socket = context.socket(zmq.ROUTER) - self.stdin_socket.linger = 1000 - self.stdin_port = self._bind_socket(self.stdin_socket, self.stdin_port) - self.log.debug("stdin ROUTER Channel on port: %i" % self.stdin_port) - - self.control_socket = context.socket(zmq.ROUTER) - self.control_socket.linger = 1000 - self.control_port = self._bind_socket(self.control_socket, self.control_port) - self.log.debug("control ROUTER Channel on port: %i" % self.control_port) - - self.init_iopub(context) - - def init_iopub(self, context): - self.iopub_socket = context.socket(zmq.PUB) - self.iopub_socket.linger = 1000 - self.iopub_port = self._bind_socket(self.iopub_socket, self.iopub_port) - self.log.debug("iopub PUB Channel on port: %i" % self.iopub_port) - self.configure_tornado_logger() - self.iopub_thread = IOPubThread(self.iopub_socket, pipe=True) - self.iopub_thread.start() - # backward-compat: wrap iopub socket API in background thread - self.iopub_socket = self.iopub_thread.background_socket - - def init_heartbeat(self): - """start the heart beating""" - # heartbeat doesn't share context, because it mustn't be blocked - # by the GIL, which is accessed by libzmq when freeing zero-copy messages - hb_ctx = zmq.Context() - self.heartbeat = Heartbeat(hb_ctx, (self.transport, self.ip, self.hb_port)) - self.hb_port = self.heartbeat.port - self.log.debug("Heartbeat REP Channel on port: %i" % self.hb_port) - self.heartbeat.start() - - def log_connection_info(self): - """display connection info, and store ports""" - basename = os.path.basename(self.connection_file) - if basename == self.connection_file or \ - os.path.dirname(self.connection_file) == self.connection_dir: - # use shortname - tail = basename - else: - tail = self.connection_file - lines = [ - "To connect another client to this kernel, use:", - " --existing %s" % tail, - ] - # log connection info - # info-level, so often not shown. - # frontends should use the %connect_info magic - # to see the connection info - for line in lines: - self.log.info(line) - # also raw print to the terminal if no parent_handle (`ipython kernel`) - # unless log-level is CRITICAL (--quiet) - if not self.parent_handle and self.log_level < logging.CRITICAL: - io.rprint(_ctrl_c_message) - for line in lines: - io.rprint(line) - - self.ports = dict(shell=self.shell_port, iopub=self.iopub_port, - stdin=self.stdin_port, hb=self.hb_port, - control=self.control_port) - - def init_blackhole(self): - """redirects stdout/stderr to devnull if necessary""" - if self.no_stdout or self.no_stderr: - blackhole = open(os.devnull, 'w') - if self.no_stdout: - sys.stdout = sys.__stdout__ = blackhole - if self.no_stderr: - sys.stderr = sys.__stderr__ = blackhole - - def init_io(self): - """Redirect input streams and set a display hook.""" - if self.outstream_class: - outstream_factory = import_item(str(self.outstream_class)) - sys.stdout = outstream_factory(self.session, self.iopub_thread, u'stdout') - sys.stderr = outstream_factory(self.session, self.iopub_thread, u'stderr') - if self.displayhook_class: - displayhook_factory = import_item(str(self.displayhook_class)) - self.displayhook = displayhook_factory(self.session, self.iopub_socket) - sys.displayhook = self.displayhook - - self.patch_io() - - def patch_io(self): - """Patch important libraries that can't handle sys.stdout forwarding""" - try: - import faulthandler - except ImportError: - pass - else: - # Warning: this is a monkeypatch of `faulthandler.enable`, watch for possible - # updates to the upstream API and update accordingly (up-to-date as of Python 3.5): - # https://docs.python.org/3/library/faulthandler.html#faulthandler.enable - - # change default file to __stderr__ from forwarded stderr - faulthandler_enable = faulthandler.enable - def enable(file=sys.__stderr__, all_threads=True, **kwargs): - return faulthandler_enable(file=file, all_threads=all_threads, **kwargs) - - faulthandler.enable = enable - - if hasattr(faulthandler, 'register'): - faulthandler_register = faulthandler.register - def register(signum, file=sys.__stderr__, all_threads=True, chain=False, **kwargs): - return faulthandler_register(signum, file=file, all_threads=all_threads, - chain=chain, **kwargs) - faulthandler.register = register - - def init_signal(self): - signal.signal(signal.SIGINT, signal.SIG_IGN) - - def init_kernel(self): - """Create the Kernel object itself""" - shell_stream = ZMQStream(self.shell_socket) - control_stream = ZMQStream(self.control_socket) - - kernel_factory = self.kernel_class.instance - - kernel = kernel_factory(parent=self, session=self.session, - shell_streams=[shell_stream, control_stream], - iopub_thread=self.iopub_thread, - iopub_socket=self.iopub_socket, - stdin_socket=self.stdin_socket, - log=self.log, - profile_dir=self.profile_dir, - user_ns=self.user_ns, - ) - kernel.record_ports({ - name + '_port': port for name, port in self.ports.items() - }) - self.kernel = kernel - - # Allow the displayhook to get the execution count - self.displayhook.get_execution_count = lambda: kernel.execution_count - - def init_gui_pylab(self): - """Enable GUI event loop integration, taking pylab into account.""" - - # Register inline backend as default - # this is higher priority than matplotlibrc, - # but lower priority than anything else (mpl.use() for instance). - # This only affects matplotlib >= 1.5 - if not os.environ.get('MPLBACKEND'): - os.environ['MPLBACKEND'] = 'module://ipykernel.pylab.backend_inline' - - # Provide a wrapper for :meth:`YAPInteractiveShellApp.init_gui_pylab` - # to ensure that any exception is printed straight to stderr. - # Normally _showtraceback associates the reply with an execution, - # which means frontends will never draw it, as this exception - # is not associated with any execute request. - - shell = self.shell - _showtraceback = shell._showtraceback - try: - # replace error-sending traceback with stderr - def print_tb(etype, evalue, stb): - print ("GUI event loop or pylab initialization failed", - file=sys.stderr) - print (shell.InteractiveTB.stb2text(stb), file=sys.stderr) - shell._showtraceback = print_tb - InteractiveShellApp.init_gui_pylab(self) - finally: - shell._showtraceback = _showtraceback - - def init_shell(self): - self.shell = getattr(self.kernel, 'shell', None) - if self.shell: - self.shell.configurables.append(self) - - def init_extensions(self): - super(YAPKernelApp, self).init_extensions() - # BEGIN HARDCODED WIDGETS HACK - # Ensure ipywidgets extension is loaded if available - extension_man = self.shell.extension_manager - if 'ipywidgets' not in extension_man.loaded: - try: - extension_man.load_extension('ipywidgets') - except ImportError as e: - self.log.debug('ipywidgets package not installed. Widgets will not be available.') - # END HARDCODED WIDGETS HACK - - def configure_tornado_logger(self): - """ Configure the tornado logging.Logger. - - Must set up the tornado logger or else tornado will call - basicConfig for the root logger which makes the root logger - go to the real sys.stderr instead of the capture streams. - This function mimics the setup of logging.basicConfig. - """ - logger = logging.getLogger('tornado') - handler = logging.StreamHandler() - formatter = logging.Formatter(logging.BASIC_FORMAT) - handler.setFormatter(formatter) - logger.addHandler(handler) - - @catch_config_error - def initialize(self, argv=None): - super(YAPKernelApp, self).initialize(argv) - if self.subapp is not None: - return - # register zmq IOLoop with tornado - zmq_ioloop.install() - self.init_blackhole() - self.init_connection_file() - self.init_poller() - self.init_sockets() - self.init_heartbeat() - # writing/displaying connection info must be *after* init_sockets/heartbeat - self.write_connection_file() - # Log connection info after writing connection file, so that the connection - # file is definitely available at the time someone reads the log. - self.log_connection_info() - self.init_io() - self.init_signal() - self.init_kernel() - # shell init steps - self.init_path() - self.init_shell() - if self.shell: - self.init_gui_pylab() - self.init_extensions() - self.init_code() - # flush stdout/stderr, so that anything written to these streams during - # initialization do not get associated with the first execution request - sys.stdout.flush() - sys.stderr.flush() - - def start(self): - if self.subapp is not None: - return self.subapp.start() - if self.poller is not None: - self.poller.start() - self.kernel.start() - try: - ioloop.IOLoop.instance().start() - except KeyboardInterrupt: - pass - -launch_new_instance = YAPKernelApp.launch_instance - -def main(): - """Run an YAPKernel as an application""" - app = YAPKernelApp.instance() - app.initialize() - app.start() - - -if __name__ == '__main__': - main() diff --git a/packages/python/yap_kernel/kernelspec.py b/packages/python/yap_kernel/kernelspec.py deleted file mode 100644 index b7f936579..000000000 --- a/packages/python/yap_kernel/kernelspec.py +++ /dev/null @@ -1,188 +0,0 @@ -"""The IPython kernel spec for Jupyter""" - -# Copyright (c) IPython Development Team. -# Distributed under the terms of the Modified BSD License. - -from __future__ import print_function - -import errno -import json -import os -import shutil -import sys -import tempfile - -from jupyter_client.kernelspec import KernelSpecManager - -pjoin = os.path.join - -KERNEL_NAME = 'YAPKernel' - -# path to kernelspec resources -RESOURCES = pjoin(os.path.dirname(__file__), 'resources') - - -def make_yap_kernel_cmd(mod='yap_kernel', executable=None, extra_arguments=None, **kw): - """Build Popen command list for launching an IPython kernel. - - Parameters - ---------- - mod : str, optional (default 'yap_kernel') - A string of an IPython module whose __main__ starts an IPython kernel - - executable : str, optional (default sys.executable) - The Python executable to use for the kernel process. - - extra_arguments : list, optional - A list of extra arguments to pass when executing the launch code. - - Returns - ------- - - A Popen command list - """ - if executable is None: - executable = sys.executable - extra_arguments = extra_arguments or [] - arguments = [executable, '-m', mod, '-f', '{connection_file}'] - arguments.extend(extra_arguments) - - return arguments - - -def get_kernel_dict(extra_arguments={'mod':'yap_kernel'}): - """Construct dict for kernel.json""" - return { - 'argv': make_yap_kernel_cmd(extra_arguments=extra_arguments), - 'display_name': 'YAPKernel 6', - 'language': 'prolog', - } - - -def write_kernel_spec(path=None, overrides=None, extra_arguments=None): - """Write a kernel spec directory to `path` - - If `path` is not specified, a temporary directory is created. - If `overrides` is given, the kernelspec JSON is updated before writing. - - The path to the kernelspec is always returned. - """ - if path is None: - path = os.path.join(tempfile.mkdtemp(suffix='_kernels'), KERNEL_NAME) - - # stage resources - shutil.copytree(RESOURCES, path) - # write kernel.json - kernel_dict = get_kernel_dict(extra_arguments) - - if overrides: - kernel_dict.update(overrides) - with open(pjoin(path, 'kernel.json'), 'w') as f: - json.dump(kernel_dict, f, indent=1) - - return path - - -def install(kernel_spec_manager=None, user=False, kernel_name=KERNEL_NAME, display_name=None, - prefix=None, profile=None): - """Install the IPython kernelspec for Jupyter - - Parameters - ---------- - - kernel_spec_manager: KernelSpecManager [optional] - A KernelSpecManager to use for installation. - If none provided, a default instance will be created. - user: bool [default: False] - Whether to do a user-only install, or system-wide. - kernel_name: str, optional - Specify a name for the kernelspec. - This is needed for having multiple IPython kernels for different environments. - display_name: str, optional - Specify the display name for the kernelspec - profile: str, optional - Specify a custom profile to be loaded by the kernel. - prefix: str, optional - Specify an install prefix for the kernelspec. - This is needed to install into a non-default location, such as a conda/virtual-env. - - Returns - ------- - - The path where the kernelspec was installed. - """ - if kernel_spec_manager is None: - kernel_spec_manager = KernelSpecManager() - - if (kernel_name != KERNEL_NAME) and (display_name is None): - # kernel_name is specified and display_name is not - # default display_name to kernel_name - display_name = kernel_name - overrides = {} - if display_name: - overrides["display_name"] = display_name - if profile: - extra_arguments = ["--profile", profile] - if not display_name: - # add the profile to the default display name - overrides["display_name"] = 'Python %i [profile=%s]' % (sys.version_info[0], profile) - else: - extra_arguments = None - path = write_kernel_spec(overrides=overrides, extra_arguments=extra_arguments) - dest = kernel_spec_manager.install_kernel_spec( - path, kernel_name=kernel_name, user=user, prefix=prefix) - # cleanup afterward - shutil.rmtree(path) - return dest - -# Entrypoint - -from traitlets.config import Application - - -class InstallIPythonKernelSpecApp(Application): - """Dummy app wrapping argparse""" - name = 'ipython-kernel-install' - - def initialize(self, argv=None): - if argv is None: - argv = sys.argv[1:] - self.argv = argv - - def start(self): - import argparse - parser = argparse.ArgumentParser(prog=self.name, - description="Install the IPython kernel spec.") - parser.add_argument('--user', action='store_true', - help="Install for the current user instead of system-wide") - parser.add_argument('--name', type=str, default=KERNEL_NAME, - help="Specify a name for the kernelspec." - " This is needed to have multiple IPython kernels at the same time.") - parser.add_argument('--display-name', type=str, - help="Specify the display name for the kernelspec." - " This is helpful when you have multiple IPython kernels.") - parser.add_argument('--profile', type=str, - help="Specify an IPython profile to load. " - "This can be used to create custom versions of the kernel.") - parser.add_argument('--prefix', type=str, - help="Specify an install prefix for the kernelspec." - " This is needed to install into a non-default location, such as a conda/virtual-env.") - parser.add_argument('--sys-prefix', action='store_const', const=sys.prefix, dest='prefix', - help="Install to Python's sys.prefix." - " Shorthand for --prefix='%s'. For use in conda/virtual-envs." % sys.prefix) - opts = parser.parse_args(self.argv) - try: - dest = install(user=opts.user, kernel_name=opts.name, profile=opts.profile, - prefix=opts.prefix, display_name=opts.display_name) - except OSError as e: - if e.errno == errno.EACCES: - print(e, file=sys.stderr) - if opts.user: - print("Perhaps you want `sudo` or `--user`?", file=sys.stderr) - self.exit(1) - raise - print("Installed kernelspec %s in %s" % (opts.name, dest)) - - -if __name__ == '__main__': - InstallIPythonKernelSpecApp.launch_instance() diff --git a/packages/python/yap_kernel/setup.py b/packages/python/yap_kernel/setup.py index 7497062da..98dc71018 100644 --- a/packages/python/yap_kernel/setup.py +++ b/packages/python/yap_kernel/setup.py @@ -56,7 +56,7 @@ setup_args = dict( version = version_ns['__version__'], scripts = glob(pjoin('scripts', '*')), packages = packages, - py_modules = ['yapkernel_launcher'], + py_modules = ['yap_kernel_launcher'], package_data = package_data, description = "YAP Kernel for Jupyter", author = 'YAP Development Team', diff --git a/packages/python/yap_kernel/yap_kernel.egg-info/PKG-INFO b/packages/python/yap_kernel/yap_kernel.egg-info/PKG-INFO deleted file mode 100644 index 20b88b0d9..000000000 --- a/packages/python/yap_kernel/yap_kernel.egg-info/PKG-INFO +++ /dev/null @@ -1,20 +0,0 @@ -Metadata-Version: 1.1 -Name: yap-kernel -Version: 4.7.0.dev0 -Summary: YAP Kernel for Jupyter -Home-page: http://ipython.org -Author: YAP Development Team -Author-email: ipython-dev@scipy.org -License: BSD -Description: UNKNOWN -Keywords: Interactive,Interpreter,Shell,Web -Platform: Linux -Platform: Mac OS X -Platform: Windows -Classifier: Intended Audience :: Developers -Classifier: Intended Audience :: System Administrators -Classifier: Intended Audience :: Science/Research -Classifier: License :: OSI Approved :: BSD License -Classifier: Programming Language :: Python -Classifier: Programming Language :: Python :: 2.7 -Classifier: Programming Language :: Python :: 3 diff --git a/packages/python/yap_kernel/yap_kernel.egg-info/SOURCES.txt b/packages/python/yap_kernel/yap_kernel.egg-info/SOURCES.txt deleted file mode 100644 index c78e840ed..000000000 --- a/packages/python/yap_kernel/yap_kernel.egg-info/SOURCES.txt +++ /dev/null @@ -1,81 +0,0 @@ -CONTRIBUTING.md -COPYING.md -MANIFEST.in -README.md -setup.cfg -setup.py -/Users/vsc/github/yap-6.3/yap_kernel/data_kernelspec/kernel.json -/Users/vsc/github/yap-6.3/yap_kernel/data_kernelspec/logo-32x32.png -/Users/vsc/github/yap-6.3/yap_kernel/data_kernelspec/logo-64x64.png -docs/Makefile -docs/changelog.rst -docs/conf.py -docs/index.rst -docs/make.bat -examples/embedding/inprocess_qtconsole.py -examples/embedding/inprocess_terminal.py -examples/embedding/internal_ipkernel.py -examples/embedding/ipkernel_qtapp.py -examples/embedding/ipkernel_wxapp.py -yap_kernel/__init__.py -yap_kernel/__main__.py -yap_kernel/_version.py -yap_kernel/codeutil.py -yap_kernel/connect.py -yap_kernel/datapub.py -yap_kernel/displayhook.py -yap_kernel/embed.py -yap_kernel/eventloops.py -yap_kernel/heartbeat.py -yap_kernel/interactiveshell.py -yap_kernel/iostream.py -yap_kernel/jsonutil.py -yap_kernel/kernelapp.py -yap_kernel/kernelbase.py -yap_kernel/kernelspec.py -yap_kernel/log.py -yap_kernel/parentpoller.py -yap_kernel/pickleutil.py -yap_kernel/serialize.py -yap_kernel/yapkernel.py -yap_kernel/zmqshell.py -yap_kernel.egg-info/PKG-INFO -yap_kernel.egg-info/SOURCES.txt -yap_kernel.egg-info/dependency_links.txt -yap_kernel.egg-info/requires.txt -yap_kernel.egg-info/top_level.txt -yap_kernel/comm/__init__.py -yap_kernel/comm/comm.py -yap_kernel/comm/manager.py -yap_kernel/gui/__init__.py -yap_kernel/gui/gtk3embed.py -yap_kernel/gui/gtkembed.py -yap_kernel/inprocess/__init__.py -yap_kernel/inprocess/blocking.py -yap_kernel/inprocess/channels.py -yap_kernel/inprocess/client.py -yap_kernel/inprocess/constants.py -yap_kernel/inprocess/ipkernel.py -yap_kernel/inprocess/manager.py -yap_kernel/inprocess/socket.py -yap_kernel/inprocess/tests/__init__.py -yap_kernel/inprocess/tests/test_kernel.py -yap_kernel/inprocess/tests/test_kernelmanager.py -yap_kernel/pylab/__init__.py -yap_kernel/pylab/backend_inline.py -yap_kernel/pylab/config.py -yap_kernel/resources/logo-32x32.png -yap_kernel/resources/logo-64x64.png -yap_kernel/tests/__init__.py -yap_kernel/tests/test_connect.py -yap_kernel/tests/test_embed_kernel.py -yap_kernel/tests/test_io.py -yap_kernel/tests/test_jsonutil.py -yap_kernel/tests/test_kernel.py -yap_kernel/tests/test_kernelspec.py -yap_kernel/tests/test_message_spec.py -yap_kernel/tests/test_pickleutil.py -yap_kernel/tests/test_serialize.py -yap_kernel/tests/test_start_kernel.py -yap_kernel/tests/test_zmq_shell.py -yap_kernel/tests/utils.py \ No newline at end of file diff --git a/packages/python/yap_kernel/yap_kernel.egg-info/dependency_links.txt b/packages/python/yap_kernel/yap_kernel.egg-info/dependency_links.txt deleted file mode 100644 index 8b1378917..000000000 --- a/packages/python/yap_kernel/yap_kernel.egg-info/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/packages/python/yap_kernel/yap_kernel.egg-info/requires.txt b/packages/python/yap_kernel/yap_kernel.egg-info/requires.txt deleted file mode 100644 index fb4f4c2f2..000000000 --- a/packages/python/yap_kernel/yap_kernel.egg-info/requires.txt +++ /dev/null @@ -1,12 +0,0 @@ -ipython>=4.0.0 -traitlets>=4.1.0 -jupyter_client -tornado>=4.0 -yap4py - -[test] -nose_warnings_filters -nose-timer - -[test:python_version=="2.7"] -mock diff --git a/packages/python/yap_kernel/yap_kernel.egg-info/top_level.txt b/packages/python/yap_kernel/yap_kernel.egg-info/top_level.txt deleted file mode 100644 index d69977fb4..000000000 --- a/packages/python/yap_kernel/yap_kernel.egg-info/top_level.txt +++ /dev/null @@ -1,2 +0,0 @@ -yap_kernel -yapkernel_launcher