Skip to content
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

I'm working on a plugin like this #17

Open
luc99a opened this issue Sep 21, 2014 · 10 comments
Open

I'm working on a plugin like this #17

luc99a opened this issue Sep 21, 2014 · 10 comments

Comments

@luc99a
Copy link

luc99a commented Sep 21, 2014

Hi @masteroftime and @lahwran, I'm working on a plugin that can loads Python plugins like this.
I'm writing it from nothing, using some concepts from this plugin.
Actually I don't know if I will finish my project, I hope yes, anyway I'd like to ask you if you agree if I use some of your code, so I don't have to write every single line of code. If you don't agree I will stop my project, don't worry.
Thanks

@jomo
Copy link

jomo commented Sep 21, 2014

The license is GPLv3.

@luc99a
Copy link
Author

luc99a commented Sep 21, 2014

Yes, but I prefer asking to the authors if they agree (actually if they have choosen GPL they will agree, but I think is a good practice to aks anyway)

@lahwran
Copy link
Collaborator

lahwran commented Sep 21, 2014

Ah, if only everyone had been so nice as to ask such a thing before starting another project in the mc community :( wouldn't have left...

Go right ahead. I'd request that you follow pep8 as closely as you possibly can, and pep20 like a religion ;) Also, check out venusian, by the pyramid folks. Makes it really nice to load stuff. Honestly, I don't really care about mc anymore, so I can't say I'll follow your project, but I'm tickled you asked. If possible, it'd be cool to do it as a "new version" of this project, so that there's still only one.

@luc99a
Copy link
Author

luc99a commented Sep 21, 2014

Ok thank you @lahwran, I think it is a good idea to make a new version of this project, it will take much time to me so I don't know when I will finish the project.
I will follow your advices.

I think I will keep only one of the two APIs to make plugin development more simple. I think the decorator API is much easy for people who don't want, or don't have time to study OOP, so I maybe I will keep only the decorator API (do you think is this a good idea?)

@luc99a
Copy link
Author

luc99a commented Sep 21, 2014

Also to make the development time shorter I will ask to someone of the Italian Community (I'm italian) if they wish to contribute. Also @masteroftime and @lahwran (I know you said you have left) you are welcome

@jomo
Copy link

jomo commented Sep 21, 2014

IMO it's great to keep the decorator API, it's just easier to use, regardless of knowing how to use the class API or not.

Got a repo for us to find your work?

@lahwran
Copy link
Collaborator

lahwran commented Sep 21, 2014

I would make a new decorator api based on venusian, rather than on-decorate hooks. The class thing is stupid, and I thought it was stupid then too. I just made it to satisfy bukkit people, honestly.

@luc99a
Copy link
Author

luc99a commented Sep 21, 2014

@jomo no I haven't created a repository yet, I started working on it, but I haven't wrote much code.
@lahwran I saw venusian page before, I will work on the new decorator API

@luc99a
Copy link
Author

luc99a commented Sep 21, 2014

Anyway @lahwran, @masteroftime and @jomo keep updated on this issue.
@jomo you are welcome to contribute too if you like.
I created this repository where you can keep updated: https://github.com/luc99a/PythonPluginLoader

@luc99a
Copy link
Author

luc99a commented Sep 28, 2014

@lahwran I'm back here with some news:
I found this project by @SpaceManiac: https://github.com/SpaceManiac/MiniPython
I will continue working on the plugin though, because the API for Python Plugins will be different.

Now some ideas for the plugin:
I will no more load plugins from directories, I will load them from zip files (ending with .zip or .pyp) or from python files (ending with .py)
The API will use Venusian like you said

I will update some code on the repository today

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

No branches or pull requests

3 participants