-
-
Notifications
You must be signed in to change notification settings - Fork 489
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
Update panel to use bokeh build
#626
Conversation
Thanks so much for this. Will play with this now and hopefully merge it today or tomorrow. To be clear, which version of bokeh will contain the build refactors required to make this work? Will this be in a 1.3.5 or 1.4.0 release? |
This is based on a WIP PR (bokeh/bokeh#9198), so hold on with a merge until that is merged. I submitted this for a preview and to gather some initial impressions on whether the overall work around |
I'm running into some issues with this. The first is a weird git issue I don't understand, when I checked out your branch it never created the My second issue was that the build step in setup.py doesn't seem to work:
TypeError: build() missing 1 required positional argument: 'base_dir' I made a suggestion on how to fix that. With that fix everything seems to build correctly but in the neither in the notebook or the server can I get the models to actually be initialized and am seeing this error in the console:
|
setup.py
Outdated
def _build_paneljs(): | ||
from bokeh.ext import build | ||
print("Building custom models:") | ||
build() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
build() | |
basepath = os.path.split(__file__)[0] | |
build(basepath) |
@mattpap Also let me know if there's anything else related to this in bokeh or here that is currently blocked by me. |
Eh, I didn't eventually test this, as I couldn't build the conda package due to having an insufficient amount of spare RAM.
This should work. My immediate concern is that the version of bokehjs you are running isn't the one from the bokeh's PR. Assuming bokehjs was built correctly, in the case of the notebook, I would suggest to run it like this:
and in another terminal:
or In any case, I will update this PR later today. |
On a side note, I also intend to drop |
Separately, is there any chance the bokeh PR could be made backward compatible? Currently I'm getting:
|
hello @mattpap I tried the PR but I encounter same errors as @philippjfr As you suggest I start jupyter lab using If I try to use bokeh output_notebook command bokehjs loading seeams fine |
Running
However the build seems to stop after
Windows issue? |
Ok so it's a windows issue, to make compilation works I had to change in
However in notebook context I have always the same error:
but the widget works in server (using |
Any update here? I am also getting the error mentioned above (#626 (comment)) by @philippjfr concerning the tsconfig.json file |
I have this error too, I have to downdate bokeh to 1.3.2 |
To be clear, which error? None of this is has been released in bokeh. |
And I'm routinely using bokeh 1.3.4 with panel 0.6.2 and panel master. |
error TS18003: No inputs were found in config file 'tsconfig.json'. Specified 'include' paths were '["./**/*.ts"]' and 'exclude' paths were '["./dist"]'. After trying the build PR I had to downdate bokeh to an official one |
Ah right, yeah, but bokeh 1.3.4 should work. I also had some issues downgrading again though, ended up checking out bokeh master and deleting all dist and build directories and then rebuilding. |
Yes indeed I tapped pip install "bokeh<1.3.4" and I finished with version 1.3.2 (no version 1.3.3 on pypi apparently) |
I am using bokeh 1.3.5 - it has some features we require for a project we are working on. |
There is no bokeh 1.3.5 yet unless you mean a dev release. I'd also expect that to work. |
i am using bokeh 1.3.5dev2 on the there dev channel on conda |
8a764a6
to
928b4c8
Compare
@philippjfr, can you push your changes, even if incomplete or broken. I would like to get this work finished. |
@mattpap Sorry about that, just saw this. I'm working on this now. |
No problem. If don't have time for this, I can finish this, just I don't want to reinvent what we already did. |
06d0025
to
174ce73
Compare
c6ffe49
to
b8b4db8
Compare
@mattpap I've got this passing by doing a simple |
This is a preview based on a WIP PR bokeh/bokeh#9198, where the ad-hoc extensions compiler was replaced with a new, more robust one. One can build panel with
bokeh build panel
(assuming cwd is the repository) or withbokeh.ext.build("panel")
(which is used insetup.py
). The changes in this PR reflect how the extension should (almost) ideally look, barring any backwards compatibility issues. Almost, because e.g.require_components()
could be managed by bokeh, or__module__
fields could be inserted automatically, similarly to__name__
. The extension layout isn't set in stone, so if there are any reservations regarding the current approach, then things can still change.Example output: