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
Eel 1.0 #88
Comments
This is all I can think of. This is rather a long list, sorry about that. I hope my enthusiasm is not asphyxiating. If you are willing to discuss some points, maybe we could exchange on dedicated issues or create new ones to avoid polluting this thread. I worked on some of these items on my repositories so I can help on them if needed or submit precise PRs. I tried to order my list by decreasing order of priority.
Instead of the classical version which would consume the whole iterator.
But I don't know how to achieve that since the values of "function" comes from another source. It seems to be a way to achieve this using RxPy and asyncio but that's a lot to buy (https://github.com/ReactiveX/RxPY/blob/master/examples/asyncio/toasyncgenerator.py).
|
Second Brumar on python 3.7 support. Also please make monkey patch optional (or fix it somehow)- it does not work under Windows 10 - raises strange exceptions.
to make eel work. Other than that, it is an excelent library and is very useful for my purposes. |
@alxliv I pushed a quick update to remove monkey patching. Sorry about that, stupid decision. @brumar I've looked over your repos and it looks good. I've added you as collaborator as you have demonstrated a full understanding of how Eel works (and how it could work better!). For bug fixes and minor changes, feel free to change and push directly. For changes such as migration to Sanic make a new branch and we can discuss it before. I will focus on Electron support and improvements to packaging. I don't have enough time to support Eel as much as it deserves so I think it is important to add more collaborators. The BigQuery estimate of PyPI downloads is up to ~7000 a month, with a lot of interest from Python newbies. @ahopkins I never said - thank you for mentioning Eel on Talk Python To Me! |
@ChrisKnott Wow I did not expect that, thanks for adding me in, I am really honored 😳. Yet it's one thing to have fun with forks and suggestions, it's another to to have real responsibilities. I hope I won't break anything (even for minor changes). I'd like to add tests before doing something wrong. Under one of my repositories, I have a Jenkins Pipeline based on docker which run tests (among them, selenium tests on the built produced by pyinstaller). Maybe that could be adapted there to ensure at least that examples still work. If so, that would be great to migrate the pipeline to travis.ci but I think I'd be too lazy for that. Also that's not really true that I have a full understanding on how eel works, there are some parts that are still a bit mysterious to me. @ahopkins I also listened to this episode (well, all episodes of any production of Michael Kennedy and Brian Okken anyway). After this episode and after having checked that Sanic was supporting websockets, I though it could replace bottle here. My main motivation for that is to get async/await working. What's your mind on this idea ? Did you hear of any success with pyinstaller ? I also heard good things about aiohttp (and it supports websockets too). Maybe that would be a lighter option ? |
Hi Chris - probably the wrong place but just wanted to post a note of thanks as a Python newbie myself. Eel is a really amazing thing and I find myself working with it constantly. Maybe I overlooked it or maybe it's just not built to allow this, but is there an easy way of using the standard Bottle @route("/otherpage") routing in the same script as all the nice Eel stuff? I've tried and failed to add something like:
...
before
I think other newcomers will also be wondering if this is possible, and if so, how, so would love to see an update in the docs/examples at some point. Many thanks and best of luck with the project, (Also London based, in case you ever fancy a coffee/drink away from the computer!) |
Hi @PFython I just tried this out with a very simple pair of files, and it seems to work fine: main.py
main.html
It worked fine. From your example, you have done |
Thank you so much @samuelhwilliams - what an idiot I am! (blame it on late night copy/paste...). It works for me too now which is brilliant. I didn't actually even need to add I repeat my suggestion @ChrisKnott to explicitly add a short mention of this to the Readme, not only for newcomers like me for whom this might not be obvious, but because it's actually a great 'selling point' for Eel that you can do all (?) of the normal Bottle things in Eel as well as the Eel-specific things. In fact it makes me wonder why anyone would want to just use Bottle instead of Eel... Best wishes, |
Just pinging here to get an update on v1... |
Probably more of an enhancement for Bottle, but since it looks like you're more active Chris, it would be nice to offer a helper function/alias/decorator option for:
These are buried in Bottle and therefore further buried in Eel, not documented in Bottle and even after searching stackoverflow the accepted answer didn't work right out of the box for me. If you could offer an option in the |
I've currently sort-of shelved an official v1.0.0 release at the moment, for a couple of reasons:
|
What is your obsession with high quality code 🤣. I originally wanted to get breaking API changes out quickly to minimize disruption, but user growth is fairly steady https://pypistats.org/packages/eel so I don't think there's any rush, and it is better to take the time to make structural changes if it will allow long term health of the project. |
Hello, sorry to join the conversation after one year of inactivity (and probably more to come). With respect to my laziness, please take my input with a grain of salt ^^'. Functional tests would be awesome, that would be very useful for PRs and reproducing bugs. More than that, it could empower eel users to automate their cross-platform builds. In one of my experimental forks, I toyed with the blue ocean jenkins docker image. It worked reasonably well and produced windows and linux builds tested with selenium web browser. If you like the idea, I can try to do a PR on the subject before 2020. I am not a CI expert, and maybe there are more modern & practical alternatives. I saw in an issue that an user managed to get async/await working on the python side using asyncio instead of bottle (if I remember well). This would be an highly justifiable breaking change in my opinion. Async & await is where the fun is, and being a bit more symmetric with the js side would be great. |
I'm going to close this down for now as it's an old v1.0.0 thread that isn't really relevant at the moment. I'll open a new one when we start considering a v1.0.0 release again. Support for async is definitely something on my radar and I think @ChrisKnott has done some exploratory work around it. |
Over Christmas I am planning to put some hours into cleaning up Eel and pushing to a 1.0 release, which should be bug free and stable for a while.
I am opening this issue so that people can suggest/request features or design changes.
Stuff I can think of;
eel.expose(actual_function, 'exposed_name')
.The text was updated successfully, but these errors were encountered: