GitHub user rectang opened a pull request:

    https://github.com/apache/lucy-clownfish/pull/55

    CLOWNFISH-66 Stub Python runtime

    Stub out Python bindings for the Clownfish runtime.
    
    * Compile the core runtime code into a static archive.
    * Stub out Python versions of host-specific functions.
    * Define the hostdefs for Python.
    * Autogenerate a C module file.
    * Add a simple Python test file which loads the module.
    * Add `setup.py` with `build`, `test`, and `clean` targets.
    
    To test, run `python3 setup.py test` under `compiler/python`, then again 
under `runtime/python`. Afterwards, clean up using `python3 setup.py clean 
--all`.
    
    The build is fragile and incomplete, but the test passes on OS X with 
Python 3.5.1.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/rectang/lucy-clownfish 
CLOWNFISH-66-stub-py-runtime

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/lucy-clownfish/pull/55.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #55
    
----
commit d4f52d9c6a8c956727e1e530860424fa8ae18cc7
Author: Marvin Humphrey <[email protected]>
Date:   2014-12-21T00:31:19Z

    Add CFCPyTypeMap.
    
    Only include a C-to-Python conversion routine for now.

commit 47234c3d8f223d05930e2cb72de1ad01c8c9ed32
Author: Marvin Humphrey <[email protected]>
Date:   2014-12-30T03:18:51Z

    Move Python files under `src`.
    
    Moving the Python source directory into `src` means that the files are
    no longer findable by python running in the python/ directory because
    the current directory is on sys.path.  In later versions of Python, this
    becomes an issue because the source dir (which does not contain any
    shared objects) shadows the build directory (where shared objects get put).

commit 11d08c5b0a8a724ad7fd5ac7f10fb9ee065eea89
Author: Marvin Humphrey <[email protected]>
Date:   2014-12-30T03:31:16Z

    Move `cfc` Python module to top level.
    
    Moving the `cfc` module out from underneath `clownfish` gives the
    runtime full control over what ends up in the `clownfish` module.

commit 1f30f3e7ef58c4ad84452be7d6da59d1f35b5304
Author: Marvin Humphrey <[email protected]>
Date:   2014-12-16T17:54:46Z

    Add Python-specific details to charmonizer.

commit 1cf2a6d7d9d895879e4224cf9d3008426af7402b
Author: Marvin Humphrey <[email protected]>
Date:   2014-12-16T17:55:52Z

    Regen charmonizer for Python details.

commit b10130e067253b05cb57c213157d6e901805eebe
Author: Marvin Humphrey <[email protected]>
Date:   2014-12-19T02:43:29Z

    Add CFCPython.
    
    Start with writing cfish_hostdefs.h.

commit 856d7c1d84c619bcaa44cc992e575e8052af630a
Author: Marvin Humphrey <[email protected]>
Date:   2016-01-20T02:25:51Z

    Start runtime Python bindings.
    
    Add setup.py which only runs charmonizer and cleanup targets.  Add a
    stub __init__.py file.

commit 5b1631a961a49ac7f593c963c313fa6c3b5b8456
Author: Marvin Humphrey <[email protected]>
Date:   2016-01-20T03:30:08Z

    Gen stub Python extension file.
    
    Generate a Python extension file, which is a stub for now.

commit fb4cc37143198a96e17cd9096543e8b2afa5c591
Author: Marvin Humphrey <[email protected]>
Date:   2016-01-20T22:02:31Z

    Add CFBind containing stubs.
    
    Stub out the Clownfish runtime's host-specific functions.

commit 49361b775a6af4fd42c5fd3ceff8d946d93418f2
Author: Marvin Humphrey <[email protected]>
Date:   2016-01-20T04:28:26Z

    Add test target for Python runtime bindings.

commit bebd2447680dc23be903dfb8000158725699014d
Author: Marvin Humphrey <[email protected]>
Date:   2016-01-20T04:44:50Z

    Build py C extension for runtime.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to