012.6dev3 available / help testing

Hi all,

I just wanted to mention that 0.12.6dev3 is now available via the usual means:

  http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds

One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it's possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It's much better to find any issues early in the cycle than right before (or after!) a release.

Thanks,

Bryan

Hello,
my program uses

cb_obj._previousAttributes in Figure.x_range.callback

and does not work anymore because _previousAttributes

has now disappeared.

This was very handy to distinguish pan from zoom.

Hopefully there is another way if that was intended.

Thx

···

On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:

Hi all,

I just wanted to mention that 0.12.6dev3 is now available via the usual means:

    [http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds](http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds)

One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it’s possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It’s much better to find any issues early in the cycle than right before (or after!) a release.

Thanks,

Bryan

Hi,

···

On Thu, Apr 27, 2017 at 7:17 PM, chupach [email protected] wrote:

Hello,
my program uses

cb_obj._previousAttributes in Figure.x_range.callback

and does not work anymore because _previousAttributes

has now disappeared.

previousAttributes was leftover garbage from earlier cleanups and was to be removed for a long time. This as well as any name that starts with underscore () is considered private and may change or get removed at any time.

This was very handy to distinguish pan from zoom.

Hopefully there is another way if that was intended.

can you expand on what you are trying to achieve?

Mateusz

Thx

On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:

Hi all,

I just wanted to mention that 0.12.6dev3 is now available via the usual means:

    [http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds](http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds)

One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it’s possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It’s much better to find any issues early in the cycle than right before (or after!) a release.

Thanks,

Bryan

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/662859e1-e912-4b90-899c-18054d9b9b33%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

i have automatic adjustment of y-ranges when x-zooming and x-panning on my x-linked plots (and boundaries on x).

I used therefore previousAttributes to know whether user is panning or zooming,

this enables me to to prevent the zoom effect when reaching boundaries on panning.

I have not thought of an alternative yet.

···

On Thursday, April 27, 2017 at 8:26:10 PM UTC+2, mateusz.paprocki wrote:

Hi,

On Thu, Apr 27, 2017 at 7:17 PM, chupach [email protected] wrote:

Hello,
my program uses

cb_obj._previousAttributes in Figure.x_range.callback

and does not work anymore because _previousAttributes

has now disappeared.

previousAttributes was leftover garbage from earlier cleanups and was to be removed for a long time. This as well as any name that starts with underscore () is considered private and may change or get removed at any time.

This was very handy to distinguish pan from zoom.

Hopefully there is another way if that was intended.

can you expand on what you are trying to achieve?

Mateusz

Thx

On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:

Hi all,

I just wanted to mention that 0.12.6dev3 is now available via the usual means:

    [http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds](http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds)

One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it’s possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It’s much better to find any issues early in the cycle than right before (or after!) a release.

Thanks,

Bryan

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/662859e1-e912-4b90-899c-18054d9b9b33%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

hello,

I am looking for a replacement of the now missing _previousAttributes in source for a datatable.

I used this to des-highlight glyphs corresponding to deselected rows directly in js.

It was so convenient to be able to access the previous state of cb_obj in order to see what had changed.

thx

···

On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:

Hi all,

I just wanted to mention that 0.12.6dev3 is now available via the usual means:

    [http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds](http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds)

One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it’s possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It’s much better to find any issues early in the cycle than right before (or after!) a release.

Thanks,

Bryan

That private attribute is actually part of the Backbone library. We are moving entirely away from Backbone to have a smaller more efficient and long-term maintainable codebase. Since JS callbacks can run arbitrary code, my best suggestion is that you should be able to keep track of any non-standard bookkeeping like this yourself using standard JS. (i.e you know what attributes you care about, it's definitely possible for you to save the old values you care about).

In general Mateusz comments were spot on: it's never a good long term plan to rely on private attributes. They may disappear or change at any time.

Thanks,

Bryan

···

On Apr 28, 2017, at 02:28, chupach <[email protected]> wrote:

hello,

I am looking for a replacement of the now missing _previousAttributes in source for a datatable.
I used this to des-highlight glyphs corresponding to deselected rows directly in js.

It was so convenient to be able to access the previous state of cb_obj in order to see what had changed.
thx

On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:
Hi all,

I just wanted to mention that 0.12.6dev3 is now available via the usual means:

        http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds

One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it's possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It's much better to find any issues early in the cycle than right before (or after!) a release.

Thanks,

Bryan

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/d8bdfa72-61d6-42a5-8877-342d6950d69d%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Very well, Bryan, thanks.
I understand this is not good practice to rely on private attributes in this evolving framework.

What are you actually suggesting ?

My naive thinking would be to do the bookkeeping in a columndatasource in sync.

I believe that would intolerably slow down zoom/pan processes. For datatable, that would be fine though.

Are you thinking of something else, within javascript ?

But we cannot save variables on js side alone (yet) at the best of my knowledge ? Hopefully i am wrong.

Thx again

···

On Friday, April 28, 2017 at 4:05:16 PM UTC+2, Bryan Van de ven wrote:

That private attribute is actually part of the Backbone library. We are moving entirely away from Backbone to have a smaller more efficient and long-term maintainable codebase. Since JS callbacks can run arbitrary code, my best suggestion is that you should be able to keep track of any non-standard bookkeeping like this yourself using standard JS. (i.e you know what attributes you care about, it’s definitely possible for you to save the old values you care about).

In general Mateusz comments were spot on: it’s never a good long term plan to rely on private attributes. They may disappear or change at any time.

Thanks,

Bryan

On Apr 28, 2017, at 02:28, chupach [email protected] wrote:

hello,

I am looking for a replacement of the now missing _previousAttributes in source for a datatable.

I used this to des-highlight glyphs corresponding to deselected rows directly in js.

It was so convenient to be able to access the previous state of cb_obj in order to see what had changed.

thx

On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:

Hi all,

I just wanted to mention that 0.12.6dev3 is now available via the usual means:

    [http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds](http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds)

One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it’s possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It’s much better to find any issues early in the cycle than right before (or after!) a release.

Thanks,

Bryan


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/d8bdfa72-61d6-42a5-8877-342d6950d69d%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Hi,

I'm not suggesting using any Bokeh functionality to do the bookkeeping, just pure JS. You can use whatever JS code you like in the callbacks, so in particular you can definitely create and save variables, e.g. on "window". You can look at current property values and save them in a global "window._my_data_cache" object or something, and then the next time the callback fires you can compare the new current values to the previous ones you saved off.

Thanks,

Bryan

···

On Apr 28, 2017, at 09:15, chupach <[email protected]> wrote:

Very well, Bryan, thanks.
I understand this is not good practice to rely on private attributes in this evolving framework.

What are you actually suggesting ?

My naive thinking would be to do the bookkeeping in a columndatasource in sync.
I believe that would intolerably slow down zoom/pan processes. For datatable, that would be fine though.

Are you thinking of something else, within javascript ?
But we cannot save variables on js side alone (yet) at the best of my knowledge ? Hopefully i am wrong.

Thx again

On Friday, April 28, 2017 at 4:05:16 PM UTC+2, Bryan Van de ven wrote:
That private attribute is actually part of the Backbone library. We are moving entirely away from Backbone to have a smaller more efficient and long-term maintainable codebase. Since JS callbacks can run arbitrary code, my best suggestion is that you should be able to keep track of any non-standard bookkeeping like this yourself using standard JS. (i.e you know what attributes you care about, it's definitely possible for you to save the old values you care about).

In general Mateusz comments were spot on: it's never a good long term plan to rely on private attributes. They may disappear or change at any time.

Thanks,

Bryan

> On Apr 28, 2017, at 02:28, chupach <[email protected]> wrote:
>
> hello,
>
> I am looking for a replacement of the now missing _previousAttributes in source for a datatable.
> I used this to des-highlight glyphs corresponding to deselected rows directly in js.
>
> It was so convenient to be able to access the previous state of cb_obj in order to see what had changed.
> thx
>
> On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:
> Hi all,
>
> I just wanted to mention that 0.12.6dev3 is now available via the usual means:
>
> http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds
>
> One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it's possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It's much better to find any issues early in the cycle than right before (or after!) a release.
>
> Thanks,
>
> Bryan
>
> --
> You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/d8bdfa72-61d6-42a5-8877-342d6950d69d%40continuum.io.
> For more options, visit https://groups.google.com/a/continuum.io/d/optout.

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/cd0c5edd-adbe-44bb-8280-c1703c753fec%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

hi Bryan
thank you !

i had no idea about this.

···

On Friday, April 28, 2017 at 4:26:44 PM UTC+2, Bryan Van de ven wrote:

Hi,

I’m not suggesting using any Bokeh functionality to do the bookkeeping, just pure JS. You can use whatever JS code you like in the callbacks, so in particular you can definitely create and save variables, e.g. on “window”. You can look at current property values and save them in a global “window._my_data_cache” object or something, and then the next time the callback fires you can compare the new current values to the previous ones you saved off.

Thanks,

Bryan

On Apr 28, 2017, at 09:15, chupach [email protected] wrote:

Very well, Bryan, thanks.
I understand this is not good practice to rely on private attributes in this evolving framework.

What are you actually suggesting ?

My naive thinking would be to do the bookkeeping in a columndatasource in sync.

I believe that would intolerably slow down zoom/pan processes. For datatable, that would be fine though.

Are you thinking of something else, within javascript ?

But we cannot save variables on js side alone (yet) at the best of my knowledge ? Hopefully i am wrong.

Thx again

On Friday, April 28, 2017 at 4:05:16 PM UTC+2, Bryan Van de ven wrote:

That private attribute is actually part of the Backbone library. We are moving entirely away from Backbone to have a smaller more efficient and long-term maintainable codebase. Since JS callbacks can run arbitrary code, my best suggestion is that you should be able to keep track of any non-standard bookkeeping like this yourself using standard JS. (i.e you know what attributes you care about, it’s definitely possible for you to save the old values you care about).

In general Mateusz comments were spot on: it’s never a good long term plan to rely on private attributes. They may disappear or change at any time.

Thanks,

Bryan

On Apr 28, 2017, at 02:28, chupach [email protected] wrote:

hello,

I am looking for a replacement of the now missing _previousAttributes in source for a datatable.
I used this to des-highlight glyphs corresponding to deselected rows directly in js.

It was so convenient to be able to access the previous state of cb_obj in order to see what had changed.
thx

On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:
Hi all,

I just wanted to mention that 0.12.6dev3 is now available via the usual means:

    [http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds](http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds)

One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it’s possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It’s much better to find any issues early in the cycle than right before (or after!) a release.

Thanks,

Bryan


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/d8bdfa72-61d6-42a5-8877-342d6950d69d%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/cd0c5edd-adbe-44bb-8280-c1703c753fec%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

BTW I don't mean to assert that attaching "global" data to "window" is necessarily a great practice. I am sure there must become better ways, but it should work in the immediate term. You should also be attach new attributes to bokeh objects, as long as the attributes names start with an underscore. I.e. I think "source._my_private_attr = {}" should work.

Bryan

···

On Apr 28, 2017, at 10:25, chupach <[email protected]> wrote:

hi Bryan
thank you !
i had no idea about this.

On Friday, April 28, 2017 at 4:26:44 PM UTC+2, Bryan Van de ven wrote:
Hi,

I'm not suggesting using any Bokeh functionality to do the bookkeeping, just pure JS. You can use whatever JS code you like in the callbacks, so in particular you can definitely create and save variables, e.g. on "window". You can look at current property values and save them in a global "window._my_data_cache" object or something, and then the next time the callback fires you can compare the new current values to the previous ones you saved off.

Thanks,

Bryan

> On Apr 28, 2017, at 09:15, chupach <[email protected]> wrote:
>
> Very well, Bryan, thanks.
> I understand this is not good practice to rely on private attributes in this evolving framework.
>
> What are you actually suggesting ?
>
> My naive thinking would be to do the bookkeeping in a columndatasource in sync.
> I believe that would intolerably slow down zoom/pan processes. For datatable, that would be fine though.
>
> Are you thinking of something else, within javascript ?
> But we cannot save variables on js side alone (yet) at the best of my knowledge ? Hopefully i am wrong.
>
> Thx again
>
>
>
>
> On Friday, April 28, 2017 at 4:05:16 PM UTC+2, Bryan Van de ven wrote:
> That private attribute is actually part of the Backbone library. We are moving entirely away from Backbone to have a smaller more efficient and long-term maintainable codebase. Since JS callbacks can run arbitrary code, my best suggestion is that you should be able to keep track of any non-standard bookkeeping like this yourself using standard JS. (i.e you know what attributes you care about, it's definitely possible for you to save the old values you care about).
>
> In general Mateusz comments were spot on: it's never a good long term plan to rely on private attributes. They may disappear or change at any time.
>
> Thanks,
>
>
> Bryan
>
>
> > On Apr 28, 2017, at 02:28, chupach <[email protected]> wrote:
> >
> > hello,
> >
> > I am looking for a replacement of the now missing _previousAttributes in source for a datatable.
> > I used this to des-highlight glyphs corresponding to deselected rows directly in js.
> >
> > It was so convenient to be able to access the previous state of cb_obj in order to see what had changed.
> > thx
> >
> > On Thursday, April 27, 2017 at 4:12:36 PM UTC+2, Bryan Van de ven wrote:
> > Hi all,
> >
> > I just wanted to mention that 0.12.6dev3 is now available via the usual means:
> >
> > http://bokeh.pydata.org/en/latest/docs/installation.html#developer-builds
> >
> > One of the focus areas for this release cycle is to improve on the current layout code, making layout more robust and stable. This dev build includes a very large PR that is the start of that work. Since it was a large refactor, it's possible that it added some bugs at the same time it fixed others. If you have a chance (especially if you have a layout-intensive use-case), please try out this dev build and report back any problems on the GH issue tracker. It's much better to find any issues early in the cycle than right before (or after!) a release.
> >
> > Thanks,
> >
> > Bryan
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
> > To post to this group, send email to [email protected].
> > To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/d8bdfa72-61d6-42a5-8877-342d6950d69d%40continuum.io.
> > For more options, visit https://groups.google.com/a/continuum.io/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/cd0c5edd-adbe-44bb-8280-c1703c753fec%40continuum.io.
> For more options, visit https://groups.google.com/a/continuum.io/d/optout.

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/63546c23-e2d1-47fd-a1fd-64405eac4d85%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.