Skip to content

Merge from renshawbay/pythonnet #78

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 85 commits into from
Jun 26, 2015
Merged

Conversation

tonyroberts
Copy link
Contributor

  • Python 3 support
  • Managed types can be sub-classed in Python and have virtual methods overridden.
  • Uses dynamic objects for cleaner code when embedding Python
  • Better Linux support (work with or without --enable-shared configure option)

tonyroberts and others added 30 commits September 15, 2014 13:04
… {}" blocks to setup the python interpreter and take/release the GIL, and Py.kw("key1", value1, "key2", value2, ...) to add keyword arguments.
This means that python functions can be called directly, members can be accessed as normal (a.b) and mathematical operations work, and run in python (a = b*c).
…rpreter hasn't initialized them, otherwise attempting to dereference objects in finalizers called by the concurrent GC will fail.

- Dispose of PyObject instances after use in CreateSubType rather than wait for the GC
- Don't try and dereference derived class instances after python has shutdown if called from the GC
(strings shouldn't be converted to lists, for example)
building a derived class, as the type could be an interface
modules behave better in ipython (%autoreload expects __file__ to be set
and the ipython help ? expects __class__ to be set).
reflected back into .NET.
Added decorators 'clrproperty' and 'clrmethod' to the clr module which are
used to declare which properties and methods should be reflected, and to
supply the .net argument and return types.
unknown and others added 28 commits January 28, 2015 13:28
Pull latest from pythonnet/pythonnet
Imported modules should be added to sys.modules.
When importing something like 'CLR.X' the clr module should be returned,
not X.
Mono doesn't observe the rpath set when the lib is built, so
get the folder the Python shared object has been loaded from
and add that to LD_LIBRARY_PATH.

Without this, if there are multiple Pythons installed the
wrong object can be loaded.
The npython binary was a workaround to be able to use pythonnet
on Linux. This is no longer necessary as the clr module can be
imported directly from the standard Python interpreter.
Add travis-ci build status.
Update prior to merging back into the main repo.
tonyroberts added a commit that referenced this pull request Jun 26, 2015
Merge from renshawbay/pythonnet

Fixes #12
@tonyroberts tonyroberts merged commit 138bda7 into pythonnet:develop Jun 26, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants