Open juanjavatus opened 3 years ago
Yes, Windows only.
Thanks
@cztomczak Hi, Czarek, is there any plan to support python 3.8 and 3.9 for macOS?
File "/opt/anaconda3/lib/python3.8/site-packages/cefpython3/init.py", line 65, in
Lubuntu 20.04 / python3.8 does not seem to support this package; can't find version 66.1 yet. Thanks!
You can try building on macOS. There are quick build instructions in the Build-instructions document. Users reported it works fine on Linux.
I know it takes time and effort to do this, but I second the votes for pip-installable macOS and Linux packages; without that, we can't distribute packages to third-parties that depend on cefpython3
.
How long is usually the build from source on Mac? I have tried to build on macos 10.13.6 and the process hung here:
(venv) MacBook-Pro-2:build Barnabas$ python ../tools/automate.py --build-cef --ninja-jobs 4
[automate.py] Running 'git clone -b 2987 https://bitbucket.org/chromiumembedded/cef.git cef' in '/Users/Barnabas/PycharmProjects/cefpython/build'...
Cloning into 'cef'...
Receiving objects: 100% (67965/67965), 23.24 MiB | 1.12 MiB/s, done.
Resolving deltas: 100% (57553/57553), done.
[automate.py] Running 'git checkout f035232c082f837d2b85bd7821a93a54fc742775' in '/Users/Barnabas/PycharmProjects/cefpython/build/cef'...
Note: switching to 'f035232c082f837d2b85bd7821a93a54fc742775'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
Or undo this operation with:
git switch -
Turn off this advice by setting config variable advice.detachedHead to false
HEAD is now at f035232c0 Fix print to PDF (issue #2129)
[automate.py] Updating CEF patches with CEF Python patches
[automate.py] Copying issue125.patch to /Users/Barnabas/PycharmProjects/cefpython/build/cef/patch/patches
[automate.py] Copying issue218_linux.patch to /Users/Barnabas/PycharmProjects/cefpython/build/cef/patch/patches
[automate.py] Copying issue231.patch to /Users/Barnabas/PycharmProjects/cefpython/build/cef/patch/patches
[automate.py] Copying issue251.patch to /Users/Barnabas/PycharmProjects/cefpython/build/cef/patch/patches
[automate.py] Overwriting /Users/Barnabas/PycharmProjects/cefpython/build/cef/patch/patch.cfg
[automate.py] Running 'python /Users/Barnabas/PycharmProjects/cefpython/tools/automate-git.py --x64-build --download-dir=/Users/Barnabas/PycharmProjects/cefpython/build --branch=2987 --no-debug-build --verbose-build --force-build --no-cef-update --no-distrib-archive' in '/Users/Barnabas/PycharmProjects/cefpython/build'...
--> Download Directory: /Users/Barnabas/PycharmProjects/cefpython/build
--> Depot Tools Directory: /Users/Barnabas/PycharmProjects/cefpython/build/depot_tools
-------- Running "git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git /Users/Barnabas/PycharmProjects/cefpython/build/depot_tools" in "/Users/Barnabas/PycharmProjects/cefpython/build"...
Cloning into '/Users/Barnabas/PycharmProjects/cefpython/build/depot_tools'...
remote: Sending approximately 51.79 MiB ...
remote: Total 43427 (delta 27099), reused 43427 (delta 27099)
Receiving objects: 100% (43427/43427), 51.79 MiB | 2.54 MiB/s, done.
Resolving deltas: 100% (27099/27099), done.
--> Updating depot_tools
-------- Running "update_depot_tools" in "/Users/Barnabas/PycharmProjects/cefpython/build/depot_tools"...
--> CEF Branch: 2987
--> CEF URL: https://bitbucket.org/chromiumembedded/cef.git
--> CEF Source Directory: /Users/Barnabas/PycharmProjects/cefpython/build/cef
--> CEF Output Directory: /Users/Barnabas/PycharmProjects/cefpython/build/out_2987
--> Creating directory /Users/Barnabas/PycharmProjects/cefpython/build/chromium
--> Writing file: /Users/Barnabas/PycharmProjects/cefpython/build/chromium/.gclient
-------- Running "gclient sync --nohooks --with_branch_heads --jobs 16" in "/Users/Barnabas/PycharmProjects/cefpython/build/chromium"...
WARNING: Your metrics.cfg file was invalid or nonexistent. A new one will be created.
Btw If one needs just a window that supports a browser widget and javascript-python two-way communication, an alternative that works on Windows, Linux and Mac with the latest python version is https://github.com/r0x0r/pywebview/
The reason I tried to experiment with cefpython is that with pywebview the python debugger can slow down sometimes but other than this issue I had no problem using it.
Hi @cztomczak,
Can you share cefpython 66.1 for Linux and Mac ?
The posted files only Support Windows wheel on PyPi. It seems that the package was updated to work on 3.8 and 3.9 but somehow binaries for Linux an Mac have not been published at https://pypi.org/project/cefpython3/#files.
@BarnabasSzabolcs Is there a way to put pywebview
inside a wx frame?
Hi @cztomczak,
Can you share cefpython 66.1 for Linux and Mac ?
The posted files only Support Windows wheel on PyPi. It seems that the package was updated to work on 3.8 and 3.9 but somehow binaries for Linux an Mac have not been published at https://pypi.org/project/cefpython3/#files.
Hi @cztomczak ,
Is this somehting you can look into?
I do not have such binaries.
@BarnabasSzabolcs Is there a way to put
pywebview
inside a wx frame?
Only if wxwidgets can integrate external native gui stuff. I have looked into pywebview's code and it primarily tries to use gtk, cocoa or winforms. I think you'll need to manually code the integration though. I think the whole logic of pywebview is created so that it takes care of creating the window for you, natively.
I think WxWidgets and webview solutions have opposing philosophies. WxWidges aims to give a platform-native look and feel (like VLC and BitTorrent) whereas webview's are to give you the same stylish look and feel across platforms (like VisualStudioCode or Ableton Live).
What is your use case for putting a webview into a wx frame?
@BarnabasSzabolcs I'm trying to replace an older UI of an existing program. The core is in C++, but many people now use it as a Python library. So I'm looking for (1) html-based layout with web-python interactivity, (2) system-appropriate pull down menus, (3) something where I can either embed a Python terminal OR runs the interface in a separate process so I can use the system terminal, (4) pip installable on all platforms, and (5) unencumbered by license restrictions (i.e. we're BSD so can't be GPL).
Point (3) is critical but probably something that can always be made to work, so pywebview would probably work for me if I could specify menus that did the right thing on a Mac, but I didn't see anything about that in their docs. Embedding inside wx would allow using wx for menus, but that's the only reason I'd want that.
@ramcdougal Oh, yes, now I get you completely! I agree, the menus are missing dearly. I hope to try and look into that soon, as I also want native menus for Mac. For Windows and some Linuxes the html can generate nice menus, but the Mac is not really elegant if the menu is not native.
I do not have such binaries.
Just wondering if I can look forward for this anytime, I dunno, this year. Not necessarily from you of course but I can see the from the release history that its rather erratic. I miss my walrus operator
Hello, I am building the mac binaries. It still working on src. I will release them soon, let me know if you want the built libraries.
I'm still getting my bearings with this tool — will the final product you're working on be installable via pip? Also, thank you
I will publish them on pypi and it will be installable via pip.
I succedeed to compile the version 66.1 with python3.9 on mac os X, please find the link to download the installer file https://devsd.info/python/cefpython3-66.1-py2.py3-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl pip install cefpython3-66.1-py2.py3-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl I will release it on pypi later ( friday or this week end )
I'm still getting my bearings with this tool — will the final product you're working on be installable via pip? Also, thank you
Hi, did you test the version 66.1 on mac ?
I just tried building CEFPython on my own Linux machine, unfortunately the install process fails for me:
Copying cefpython3.egg-info to /home/laurenz/.virtualenvs/ngsp_mergetool/lib/python3.9/site-packages/cefpython3-66.1-py3.9.egg-info
running install_scripts
[setup.py] Execute post_install_hook
[setup.py] Overload sys.path to facilitate finding correct directory for the installed package
Traceback (most recent call last):
File "/home/laurenz/ModuleWorks/checkouts/ngsp-mergetool/cefpython/build/cefpython3_66.1_linux64/setup.py", line 259, in <module>
main()
File "/home/laurenz/ModuleWorks/checkouts/ngsp-mergetool/cefpython/build/cefpython3_66.1_linux64/setup.py", line 103, in main
setup(
File "/home/laurenz/.virtualenvs/ngsp_mergetool/lib/python3.9/site-packages/setuptools/__init__.py", line 153, in setup
return distutils.core.setup(**attrs)
File "/usr/lib/python3.9/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.9/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.9/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/home/laurenz/ModuleWorks/checkouts/ngsp-mergetool/cefpython/build/cefpython3_66.1_linux64/setup.py", line 67, in run
post_install_hook()
File "/home/laurenz/ModuleWorks/checkouts/ngsp-mergetool/cefpython/build/cefpython3_66.1_linux64/setup.py", line 226, in post_install_hook
import cefpython3
File "/home/laurenz/.virtualenvs/ngsp_mergetool/lib/python3.9/site-packages/cefpython3/__init__.py", line 72, in <module>
from . import cefpython_py39 as cefpython
ImportError: /home/laurenz/.virtualenvs/ngsp_mergetool/lib/python3.9/site-packages/cefpython3/cefpython_py39.so: undefined symbol: _Z15CefOverridePath14cef_path_key_tRK13CefStringBaseI20CefStringTraitsUTF16E
[build.py] ERROR while installing package
The rest of the build process went through after I added the compiler flag -Wno-deprecated-declarations
. Any ideas what is going wrong here?
I am using the CEF build from Spotify ("cef_binary_3.3359.1774.gd49d25f_linux64") .
I just found this pastebin where someone seems to be having the same problem, but with a much older version.
@major-mayer You should follow official build instructions. On Linux we patch CEF. You can download patched binaries from v66-upstream release on GitHub.
Ah okay thanks for the hint. Actually i read the build instructions and followed this section: https://github.com/cztomczak/cefpython/blob/master/docs/Build-instructions.md#build-using-cef-binaries-from-spotify-automated-builds To me it seemed like the automate.py script would automagically patch the CEF build that i downloaded from the Spotify website, but apparently it doesn't (or I didn't get it to work).
I thought that you cannot use the prebuild CEF binaries, because for the version 66.1 they were only available for Windows. But that's where i was confused by the difference of cefpython and CEF itself.
Downloading the v66-upstream binaries did the trick and i was able to build CEFPython for Python 3.9.
I've uploaded my cefpython wheel package if anybody needs it for Linux (Python 3.9 only obviously). Download it here
cool now we have windows, mac os x and linux binaries versions. https://devsd.info/python/cefpython3-66.1-py2.py3-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl Thank you cztomczak for all the documentation about how to build the source code.
This is fantastic news! There's a fair few improvements in between 3.7 and 3.9, but 3.10 isn't even out of beta yet. Thanks for your efforts everyone!
On Mon, Jul 26, 2021 at 2:45 PM kletel @.***> wrote:
cool now we have windows, mac os x and linux binaries versions.
https://devsd.info/python/cefpython3-66.1-py2.py3-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl Thank you cztomczak for all the documentation about how to build the source code.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/cztomczak/cefpython/issues/609#issuecomment-887048614, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALBFSKZRTPQ7KL5BG6Q7ZWLTZXJO3ANCNFSM4YLF53OA .
This is great that the community has built mac binaries. But, is another step needed to get those into the public pip repository? 66.0 binaries are available for Mac, but not 66.1 -- Does this project need a maintainer for the mac builds?
I am creating a pypi account to do it
@kletel Would it be easy for you to make a wheel for python 3.8 on macos (some of my deps aren't 3.9 compatible)? I can do if it's a pain. Thanks for putting up the 3.9 version 👍
@shaunnarayan which version of python 3.8 please ?
@kletel 3.8.11 please, thanks in advance!
There is no 3.8.11 python installer for mac https://www.python.org/downloads/macos/ 3.8.10 is ok ?
Huge fan of 3.8 support. At least in my field, a lot of people use anaconda, and if you use it right after installing, you'll have 3.8.
Thanks to all who are making this package work across platforms and Python versions!
@kletel Yes 3.8.10 is great thanks 👍
@kletel Can you please add to your project description that these are not official binaries? That they are externally maintained by you.
Hey @cztomczak Sure I will change the metadata, thank you for all the great work you have done
@kletel Ideally I would prefer if you named the project on pypi something like "cefpython3-sebkletel" to avoid confusion. Not sure if you can do that after the fact.
Or "cefpython3-unofficial".
Yes I can do it I will remove this release and do the package again from my github, thanks for the idea
Thank you :)
The built version 66.1 for python-3.9.6 on pypi : pip install cefpython3-for-python-3.9.6-unofficial
@OutfoxedAdmin it's done : pip install cefpython3-for-python-3.9.6-unofficial
@shaunnarayan The built version 66.1 for python-3.8.10 : pip install cefpython3-for-python-3.8.10-unofficial==66.1
@shaunnarayan The built version 66.1 for python-3.8.10 : pip install cefpython3-for-python-3.8.10-unofficial==66.1
Thank you so much @kletel really appreciate it 🎉
Hi,
I created a new unofficial version for python 3.10.2 for mac os : https://pypi.org/project/cefpython3-v66.1-for-python-3.10.2-unofficial/66.1/ pip install cefpython3-v66.1-for-python-3.10.2-unofficial==66.1
@kletel why not make a PR?
@elibroftw I don't know if cztomczak will accept the PR
@shaunnarayan The built version 66.1 for python-3.8.10 : pip install cefpython3-for-python-3.8.10-unofficial==66.1
Thank you so much @kletel really appreciate it 🎉
Hey Shaun and Sarah Narayan, since you've just taken people's money and run as of today, I thought I'd ask here if you could refund Receipt #1774-7397
I have to ask here because you've deleted your domain, and the hello@cyte.io link under the receipt. You've also made all social media private, but this does not limit your responsibility. It feels as though you are under the impression you can now take that money and act like nothing happened. You actually are legally required to refund that money.
I am coming here to remind you that you have a legal requirement to refund your customers, starting with my order.
I had to come here because otherwise, you've cut off all communication to the people who have paid for your services.
Your current behavior is frankly criminal and you need to reverse course to avoid legal trouble. Process refunds rather than go into a cowardice, hiding mode.
Thanks!
Hi, I've tried to install new release as pip install cefpython3==66.1 and returns the following error: ERROR: Could not find a version that satisfies the requirement cefpython3==66.1 ERROR: No matching distribution found for cefpython3==66.1 When I install pip install cefpython3 I get v66.0 which only supports python 3.7. I'm working with python v3.9 in Ubuntu 20. Thanks