sb0 changed the topic of #m-labs to: ARTIQ, Migen, MiSoC, Mixxeo & other M-Labs projects :: fka #milkymist :: Logs http://irclog.whitequark.org/m-labs
ylamarre has quit [Quit: ylamarre]
Gurty has quit [Ping timeout: 248 seconds]
Gurty has joined #m-labs
Gurty has joined #m-labs
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
fengling has joined #m-labs
<sb0> rjo, same as 8da455d5db4539b0e5d9eadbfe0680fa8220fc7c
<GitHub158> [artiq] sbourdeauducq pushed 1 new commit to master: https://git.io/v2t4r
<GitHub158> artiq/master 25f6afd Sebastien Bourdeauducq: protocols/asyncio_server: raise asyncio line length limit. Closes #285
<GitHub162> [artiq] sbourdeauducq pushed 1 new commit to master: https://git.io/v2t4h
<GitHub162> artiq/master 14683f2 Sebastien Bourdeauducq: doc: remove 'Ubuntu 15.10+/Debian jessie+ specific instructions'. Closes #282
<sb0> bb-m-labs, force build pyqtgraph
<bb-m-labs> The build has been queued, I'll give a shout when it starts
<bb-m-labs> build #274 of artiq is complete: Failure [failed make_doc] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/274 blamelist: Sebastien Bourdeauducq <sb@m-labs.hk>
<bb-m-labs> build #2 forced
<bb-m-labs> I'll give a shout when the build finishes
<bb-m-labs> build #2 of pyqtgraph is complete: Failure [failed conda_build] Build details are at http://buildbot.m-labs.hk/builders/pyqtgraph/builds/2
<bb-m-labs> build #275 of artiq is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/275
<GitHub140> [artiq] sbourdeauducq pushed 1 new commit to master: https://git.io/v2tzB
<GitHub140> artiq/master 9a6354b Sebastien Bourdeauducq: protocols/pc_rpc: raise asyncio line length limit for client
<bb-m-labs> build #276 of artiq is complete: Failure [failed make_doc] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/276 blamelist: Sebastien Bourdeauducq <sb@m-labs.hk>
<GitHub98> [conda-recipes] whitequark pushed 1 new commit to master: https://github.com/m-labs/conda-recipes/commit/fa4faae92a4054c1e8f720b538008d99bead9236
<GitHub98> conda-recipes/master fa4faae whitequark: pyqt5: fix --qmake on Windows (again).
<whitequark> bb-m-labs: force build --props=package=pyqt5 conda-win64
<bb-m-labs> build #72 forced
<bb-m-labs> I'll give a shout when the build finishes
<whitequark> bb-m-labs: force build --props=package=pyqt5 conda-win32
<bb-m-labs> build #37 forced
<bb-m-labs> I'll give a shout when the build finishes
sb0 has quit [Quit: Leaving]
<bb-m-labs> build #37 of conda-win32 is complete: Failure [failed conda_build] Build details are at http://buildbot.m-labs.hk/builders/conda-win32/builds/37
<bb-m-labs> build #72 of conda-win64 is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/conda-win64/builds/72
<bb-m-labs> build #38 of conda-win32 is complete: Failure [failed conda_build] Build details are at http://buildbot.m-labs.hk/builders/conda-win32/builds/38
<whitequark> bb-m-labs: force build --props=package=pyqt5 conda-win32
<bb-m-labs> build #39 forced
<bb-m-labs> I'll give a shout when the build finishes
<bb-m-labs> build #39 of conda-win32 is complete: Failure [failed conda_build] Build details are at http://buildbot.m-labs.hk/builders/conda-win32/builds/39
<whitequark> motherfucking conda garbage
<whitequark> bb-m-labs: force build --props=package=pyqt5 conda-win32
<bb-m-labs> build #40 forced
<bb-m-labs> I'll give a shout when the build finishes
<bb-m-labs> build #40 of conda-win32 is complete: Failure [failed conda_build] Build details are at http://buildbot.m-labs.hk/builders/conda-win32/builds/40
<whitequark> bb-m-labs: force build --props=package=qt5 conda-win32
<bb-m-labs> build #41 forced
<bb-m-labs> I'll give a shout when the build finishes
<whitequark> bb-m-labs: force build --props=package=pyqt5 conda-win32
<bb-m-labs> The build has been queued, I'll give a shout when it starts
<whitequark> bb-m-labs: force build --props=package=qt5 conda-lin64
<bb-m-labs> build #99 forced
<bb-m-labs> I'll give a shout when the build finishes
<GitHub196> [conda-recipes] whitequark pushed 1 new commit to master: https://github.com/m-labs/conda-recipes/commit/155f2d521bc7529a3e0214deb1e3f0b4a25b6f01
<GitHub196> conda-recipes/master 155f2d5 whitequark: qt5: fix qt5.conf location on Unix.
<whitequark> sb0: found the qt5 problem on linux
<whitequark> I got confused by conda's weird layout again
sb0 has joined #m-labs
<sb0> bb-m-labs: force build pyqtgraph
<bb-m-labs> build #3 forced
<bb-m-labs> I'll give a shout when the build finishes
<bb-m-labs> build #3 of pyqtgraph is complete: Failure [failed conda_build] Build details are at http://buildbot.m-labs.hk/builders/pyqtgraph/builds/3
<bb-m-labs> build #99 of conda-lin64 is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/conda-lin64/builds/99
<bb-m-labs> build #41 of conda-win32 is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/conda-win32/builds/41
<bb-m-labs> build forced [ETA 1h41m12s]
<bb-m-labs> I'll give a shout when the build finishes
fengling has quit [Quit: WeeChat 1.4]
<bb-m-labs> Hey! build conda-win32 #42 is complete: Success [build successful]
<GitHub195> [artiq] sbourdeauducq pushed 2 new commits to master: https://git.io/v2tpa
<GitHub195> artiq/master be6b64a Sebastien Bourdeauducq: doc: fix conda install instructions
<GitHub195> artiq/master 4946a53 Sebastien Bourdeauducq: Revert "targets/kc705: pre-divide input RTIO clock to improve non-50% duty cycle tolerance"...
<bb-m-labs> build #277 of artiq is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/277
<sb0> bb-m-labs: force build pyqtgraph
<bb-m-labs> The build has been queued, I'll give a shout when it starts
<bb-m-labs> build #4 forced
<bb-m-labs> I'll give a shout when the build finishes
<bb-m-labs> build #4 of pyqtgraph is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/pyqtgraph/builds/4
key2 has joined #m-labs
sb0 has quit [Quit: Leaving]
bb-m-labs has quit [Ping timeout: 240 seconds]
<rjo> sb0: a docked plot applet grows vertically with every restart of the gui.
<GitHub135> [artiq] whitequark pushed 1 new commit to master: https://git.io/v2qCW
<GitHub135> artiq/master 9db2be2 whitequark: compiler: only use colors in diagnostics on POSIX (fixes #272).
bb-m-labs has joined #m-labs
<whitequark> bb-m-labs: force build --props=package=icu conda-all
<bb-m-labs> build #11 forced
<bb-m-labs> I'll give a shout when the build finishes
<whitequark> (I accidentally deleted it)
mithro has quit [Ping timeout: 240 seconds]
mithro has joined #m-labs
<bb-m-labs> build #73 of conda-win64 is complete: Failure [failed anaconda_upload] Build details are at http://buildbot.m-labs.hk/builders/conda-win64/builds/73
<bb-m-labs> build #11 of conda-all is complete: Failure [failed] Build details are at http://buildbot.m-labs.hk/builders/conda-all/builds/11
<bb-m-labs> build #74 of conda-win64 is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/conda-win64/builds/74
sb0 has joined #m-labs
<sb0> rjo, windows I guess? I haven't seen any such problem on linux
<sb0> or you are doing something I havent tested
<rjo> linux
<rjo> i have a the flopping f xy plot applet docked above the explorer. if i close and restart the gui, that applet gains in size.
<rjo> qt from conda packages.
<GitHub33> [artiq] whitequark pushed 2 new commits to master: https://git.io/v2qDa
<GitHub33> artiq/master b0e7fdd whitequark: lit: unbreak on non-conda.
<GitHub33> artiq/master 51a5910 whitequark: Rename 'with parallel' to 'with interleave' (#265).
<bb-m-labs> build #278 of artiq is complete: Failure [failed conda_build] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/278 blamelist: whitequark <whitequark@whitequark.org>
<whitequark> savannah is down again...
<sb0> hahaha it slowly gains size at each GUI restart
<sb0> Qt bugs are amazing
<sb0> rjo, seems to happen only when the main window is maximized. do you confirm?
<sb0> I wonder how Gtk compares to Qt in terms of bugginess... probably, it's about as awful, but i haven't used it intensively enough to notice
<sb0> rjo, do you confirm that this only happens with applet docks too? (tested here)
<GitHub51> [artiq] whitequark pushed 1 new commit to master: https://git.io/v2qFQ
<GitHub51> artiq/master bc81be1 whitequark: Implement dumb 'with parallel' (#265).
<bb-m-labs> build #279 of artiq is complete: Failure [failed conda_build] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/279 blamelist: whitequark <whitequark@whitequark.org>
<whitequark> sb0: gtk is astoundingly awful
<whitequark> in gtk3, the file open dialog doesn't work
<whitequark> well, let me clarify, gtk3 is astoundingly awful.
<whitequark> I haven't noticed many bugs in gtk2 but I haven't noticed many bugs in (any version of) Qt either
<rjo> sb0: confirm.
<sb0> whitequark, are you using the board right now or can I mess around with it?
<whitequark> sb0: just a moment
<sb0> (including reflashing/loading bitstreams)
<sb0> ok, np
<sb0> I reconnected the fan btw, it seems the FPGA does get pretty hot without. I'll look tomorrow into replacing it or fixing it in some way (oil?)
<whitequark> sewing machine oil will work
<whitequark> turbopump oil will work too but I want you to get a clean pipette if you want to use it
<sb0> what about that new mech vacuum pump oil I brought?
<whitequark> doubt it, it's quite viscous
<sb0> or the chinese diffusion pump oil
<whitequark> have you seen sewing machine oil? it's almost as liquid as water
<whitequark> if an oil has a consistency like this it'll work
<sb0> rjo, can you report it into the conda issues? i'd make it low priority, because this is a high-pain low-impact bug ...
<sb0> er, github issues.
<sb0> someone will need to strip Qt open at some point
<sb0> that company who developed the docking extensions in 5.6 advertises commercial Qt support, may be an option if we don't have time
<whitequark> sb0: hm, I cannot seem to flash a new runtime
<whitequark> not flash
<whitequark> it's just
<whitequark> Info : JTAG tap: xc7.tap tap/device found: 0x43651093 (mfg: 0x049, part: 0x3651, ver: 0x4)
<whitequark> [FLTERM] Starting....
<whitequark> and silence
<whitequark> oh
<whitequark> wrong USB-serial device
<sb0> yup, a side effect from rebooting. we could set up udev rules based on USB-IDs...
<GitHub167> [artiq] jordens pushed 6 new commits to master: https://git.io/v2mLG
<GitHub167> artiq/master 1b410ab Robert Jordens: pdq2: move initialization and park/unpark to driver
<GitHub167> artiq/master d7f5904 Robert Jordens: wavesynth: duration sign
<GitHub167> artiq/master b327c50 Robert Jordens: pdq2: do not emit frame-initial trigger line (segments are triggered)
<rjo> sb0: i would not recomment oil for these fans.
<rjo> sb0: conda issues? the qt apple sizing thing?
<sb0> yes - i meant github issues
<whitequark> sb0: hm, very curious
<whitequark> please do not reflash the board
<whitequark> the example from #245 works right now, but not if I load a recent runtime
<whitequark> WARNING:artiq.coredevice.comm_generic:Mismatch between gateware (0.0+2382.g72a3a12) and software (0.1+946.gbc81be1) versions
<whitequark> where does it take the gateware version?
<rjo> from the gateware
<whitequark> is it actually gateware version or just runtime?
<GitHub127> [artiq] sbourdeauducq pushed 1 new commit to master: https://git.io/v2mtU
<GitHub127> artiq/master a8545fc Sebastien Bourdeauducq: targets/kc705: set up user_sma_gpio_n like other TTLs
<whitequark> ok, yes, actualy gateware
<whitequark> we should record runtime version separately.
<sb0> they're theoretically flashed together, but a similar warning at runtime (and probably BIOS) startup would be OK...
ylamarre has joined #m-labs
<rjo> cr1901_modern: how is the scanning widget?
<rjo> cr1901_modern: could you outline the work that needs to be done and push your current state? i have a bit of time on my hands and would like to advance this a bit.
<sb0> fuck savannah
<sb0> let's mirror lwip on something more reliable...
<GitHub28> [artiq] sbourdeauducq pushed 1 new commit to master: https://git.io/v2m3m
<GitHub28> artiq/master 0395119 Sebastien Bourdeauducq: savannah keeps breaking, use our lwip mirror
<bb-m-labs> build #280 of artiq is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/280
<sb0> whitequark, please tell me when OK to reflash
<whitequark> sb0: I know what the trigger is, so you can reflash now
<sb0> k
ylamarre has quit [Ping timeout: 244 seconds]
<sb0> rjo, can i somehow hack a cheap laser diode into an external cavity laser?
<whitequark> sb0: what kind of cavity?
zoobab has quit [Ping timeout: 252 seconds]
<sb0> optical cavity
<sb0> i.e. take one semi-reflector out of the diode, and put it on the optics table
<rjo> sb0: this is what i explained last time: http://www.sciencedirect.com/science/article/pii/003040189500146Y and it is also basically what toptica sells you
zoobab has joined #m-labs
<rjo> i have build tens of these over the years.
<sb0> thx
<rjo> the cavity needs to be short
<sb0> so I need this + cavity locking with AOM and sidebands?
<rjo> depends on what the laser is for
<rjo> a lock to a cavity needs EOM sidebands.
<sb0> 397nm Ca+ cooling, since this seems to be the least expensive option
<rjo> a lock to an I2 vapor cell is nice with an AOM and a lock-in.
<sb0> what can you do with the wavelength out of a I2 vapor cell?
<rjo> I2 has many absorption lines from 500 to 800nm. you lock to them.
<rjo> but nothing for 397
<sb0> so for 397 you have to use those special mirrors in vacuum? no other option?
<whitequark> wow, this is some incredibly baffling behavior
<whitequark> er.
<whitequark> sorry sb0, i interfered
<whitequark> tell me when you finish poking the board
<whitequark> so far I've discovered that if I add a call to a function that does nothing to __artiq_raise(), it stops crashing
<whitequark> looks very much like another compiler bug; it's definitely not a race
<rjo> there are Thallium vapor cells as well. but they are a bit tricky
<whitequark> sb0: are you done?
<sb0> yes
<sb0> whitequark, ^
<whitequark> ok so adding a noinline call makes it break in a different way. what
<sb0> rjo, what's the problem with them, besides thallium reactivity and toxicity?
<rjo> sb0: IIRC you have to heat them and ensure that the windows don't coat up.
<whitequark> oh. it crashes inside PLT.
<rjo> whitequark: connect to lab.m-labs.hk:ssh (tried several views)
<rjo> insert "can't" in there somewhere
<whitequark> rjo: you have the entry cached in DNS somewhere
<rjo> firewall issue. a live connection still worked fine.
<rjo> hmm
<whitequark> no, I connect to the IP directly
<whitequark> can*
<rjo> yep. so this is the static ip now?
<whitequark> sb0: please lower the TTL of lab.m-labs.hk to something like 60
<whitequark> rjo: no.
<whitequark> i was testing the RCD in the building where the buildserver is and it rebooted.
<whitequark> so now we know that the IP isn't static, the router is just pretty stable
<whitequark> pppd on openwrt is good, unlike vendor's shit that has to be rebooted dail
<rjo> whitequark: but the udp ports for mosh are still not there. 60002 did not work.
<whitequark> the port forward is still there
<whitequark> oh
<whitequark> oh wait
<whitequark> try again
<rjo> seems to work now
<whitequark> looks like it worked by accident before
<whitequark> since only port 60001 actually was passed
<rjo> i had worked around it before.
<whitequark> oh.
<whitequark> yeah, now it is the entire range, as is proper
<whitequark> ok, this is the single most baffling bug I have ever seen in my life
<whitequark> it seems to have something to do with whether the register allocator decides to use r18
ylamarre has joined #m-labs
<whitequark> ... oh, r18 is the GOT pointer
<cr1901_modern> rjo: That should actually be everything left to do, minor and major.
attie has quit [Remote host closed the connection]
attie has joined #m-labs
<rjo> cr1901_modern: could you please run flake8 (or similar) over it and fix style?
<cr1901_modern> rjo: Okay, will do. I didn't think it was THAT bad :P
<rjo> cr1901_modern: you can also just run yapf on it as a git hook and be done with it.
<rjo> cr1901_modern: from that list, is there something that i can help you with and do right now?
<cr1901_modern> "Need to add a "max number of ticks to display" to ticker class to avoid label overlap" should be easy enough, since it's mostly your code
<cr1901_modern> rjo: ^^
<rjo> sure. anything "non-easy"?
<rjo> cr1901_modern: the ticker class does that already. it won't display more than 2.5 times the desired ticks
<cr1901_modern> It does? And I'm adding a "non-easy" bullet
<rjo> cr1901_modern: that's intrinisic to the algorithm. the worst mismatch is when a step of 2 yields barely to few ticks then a step of 5 is just under 2.5 times the desired number of ticks.
<cr1901_modern> In some cases, labels will overlap.
<rjo> well yes. then the minimum number of labels is too large and the labels are too long.
<cr1901_modern> So my axis class had a method to calculate how many labels could safely fit in the given width. My idea was to pass that to the ticker class as a fallback
<rjo> cr1901_modern: from my last review there are a few things missing. "%e" is the wrong format.
<rjo> it should be equivalent to "%g" with the choice between %f and %e synchronized across the ticks.
<cr1901_modern> I'm not sure what g does actually.
* cr1901_modern looks it up
<rjo> and the equivalent in py3k format
<cr1901_modern> okay, so I can decide which format to use by running a dummy loop where I compare the output of both formats
<rjo> cr1901_modern: you might be better of with doing it yourself. you can get the relevant exponent from ticker. then decide like %g. then format all ticks yourself accordingly. and while you do that you would implement that offset/magnitude visualization at the same time.
<cr1901_modern> rjo: Okay, that's probably a good idea. Let me fix the errors w/ magnitude repr first
<rjo> cr1901_modern: and increase the number of possible slider positions to ~1024
<cr1901_modern> rjo: Yes I did promise that. I forget why I didn't do that yet. I think I considered it a minor change and wanted to be one of the last things I added
<rjo> cr1901_modern: and 5% zoom increments per 120 wheel units.
<cr1901_modern> rjo: Ahh yes, we need to figure that out. While 5% makes it more reasonable zoom for you, that doesn't solve the underlying problem that you're recieving hundreds of wheelEvents w/ a magnitude of 120 in the time I receive lesss than 10
<rjo> whitequark: the two different dns resolvers that i tested just refreshed lab.m-labs.hk with the same old ip again.
<rjo> whitequark: for 16k second lifetime.
<rjo> cr1901_modern: but even for a mouse wheel i would like 5%. the inertia thing on my touchpad is secondary. put it low on the list
<cr1901_modern> rjo: Okay. I'll also make zoomToFit/fitToView go to 1/6 and 5/6 of the current view
<rjo> cr1901_modern: ack
<rjo> cr1901_modern: i would just make that "6", the label precision, the min number of ticks all configurable. gets much more algorithmic than magic constants that way
<rjo> and the dynamic range variable in Ticker
<cr1901_modern> rjo: That's fine, but where do I put them all? You already want me to reduce the physical size of the widget.
<rjo> just class attributes.
<rjo> for now.
<rjo> whether to expose them at __init__ is for later.
<rjo> no, not graphically configurable. programmatically.
<cr1901_modern> rjo: Ack. I added that to the list. Let me fix bugs first.
<rjo> sure.
<cr1901_modern> be back in 10 minutes
<cr1901_modern> back
ylamarre has quit [Quit: ylamarre]
<cr1901_modern> rjo: Do you have anything to add to my list?
<cr1901_modern> rjo: I've fallen into the following trap by doing things as the top section: http://blog.deming.org/wp-content/uploads/2014/11/minimal-viable-product-henrik-kniberg.png I can implement the missing features now so you can actually USE the widget today (with bugs), or I can fix the bugs and ensure that the minimum viable product is bug-free.
<cr1901_modern> Note that I don't think the top half of the image is inherently bad, but it did get me thinking
<rjo> i don't think it is that easy. you can also get lost figuring out whether the skateboard is the correct first step or not.
<rjo> nothing currently.
<rjo> do you want me to prioritize your items for maximum impact?
<cr1901_modern> rjo: Sure.
<cr1901_modern> rjo: Yes, the reality is, I grossly underestimated the time this would take. I was arrogant.
<cr1901_modern> rjo: And you may be right re: the skateboard. My widget evolved from leveraging pyqtgraph and then Qt to get full functionality as quickly as possible (the top panel), into manually handling most of the widget functionality myself in a custom job.
<cr1901_modern> Yes, just saw it (I never forked a gist lol)
<rjo> i was doing etherpad for a minute then got bored and forked
<cr1901_modern> Ahh, well etherpad might've been better tbh if I had heard of it prior to 20 seconds ago XD
<cr1901_modern> Remove asserts (or catch AssertionFailure) and just refuse to honor zooms at some point. <-- I will need to at least get to thiss point. sb0's not going to be happy if the ScanWidget brings down all of ARTIQ
<cr1901_modern> rjo: If you think of anything else, add it to the list. At the end of today, I'll modify the list to remove the things that got done
<rjo> cr1901_modern: the increase in number of slider positions?
<rjo> cr1901_modern: let me do the full label generation in ticker. you give it left and right and it will give you text (offset and labels). that resolves at least three of the items.
<cr1901_modern> left and right what? What spinbox value maps to the left of the axis, and right respectively?
<rjo> no. the same way it does now.
<rjo> you give it the [a, b[ interval to be decorated with ticks.
<cr1901_modern> (2:48:08 PM) rjo: no. the same way it does now. <-- how I described it IS the way it does it now :P
<rjo> yes. it gives you an offset string and a list of (value, label) ticks
<rjo> the spin boxes are supposed to be the sliders, not the view.
<rjo> but the ticker applies to the view. it has nothing to do with the sliders.
<cr1901_modern> rjo: Yes, but I internally keep a transform from spinbox space to pixel space and vice-versa
<rjo> the ticker doesn't care.
<cr1901_modern> In my current implementation, the ticker does care
<rjo> cr1901_modern: why did you add parameters that don't do anything? that "max" in ticker.
<cr1901_modern> rjo: The idea was to add a hard max to the number of labels to print to prevent overlap
<rjo> cr1901_modern: don't bother adding stubs if they are not needed. you also broke the unit tests.
<cr1901_modern> I just didn't implement it yet, but I put the parameter in
<rjo> cr1901_modern: but it doesnt work that way
<rjo> cr1901_modern: as i explained. the max number of ticks is 2.5 times the min number
<rjo> there is no sane way around that
<cr1901_modern> Why isn't capping the max number of ticks a sane way?
<rjo> how do you implement that?
<rjo> by dropping ticks?
<cr1901_modern> https://github.com/cr1901/scanwidget/blob/master/ticker.py#L23 the idea was to make the linked line have a second condition
<rjo> just try yourself: figure out appropriate for the interval [0, .5[ with min_ticks=2
<cr1901_modern> But now that I'm looking at it, by the time we execute thiss line, the number of ticks is set
<rjo> yes
<cr1901_modern> Wait... what I could've done was had minStep = i/max and then:
<cr1901_modern> if min_step <= good_step <= step:
<cr1901_modern> return good_step
<cr1901_modern> But this fails if minStep >= step :P
<cr1901_modern> (which may very well be possible if the max number of ticks that can be drawn without overlap is less than the minimum ticks)
<cr1901_modern> rjo: In any case, I defer to you b/c you know better about what type of scaling that you want.
<cr1901_modern> I'll work on things that don't depend on what you're doing
<rjo> yes
tmbinc__ has quit [*.net *.split]
cyrozap has quit [*.net *.split]
larsc has quit [*.net *.split]
kmehall has quit [*.net *.split]
kmehall has joined #m-labs
cyrozap has joined #m-labs
tmbinc__ has joined #m-labs
lars__ has joined #m-labs
lars__ is now known as larsc
<cr1901_modern> rjo: For future reference. Do you know anything like etherpad for ipython notebooks? I didn't publish it, but most of my testing of your ticker widget was done against that
<rjo> cr1901_modern: https://github.com/jupyter/jupyter-drive is as close as you get afaik
acathla` has joined #m-labs
acathla has quit [Read error: Connection reset by peer]
<rjo> cr1901_modern: you should really clean up your code and scrub it thoroughly
<cr1901_modern> rjo: Can you elaborate? I mean, I of course would clean out debugging and dead code before a final commit. But I've tried to divide the scanwidget into multiple components with minimal communication between them (to reduce hard-to-find bugs)
<rjo> cr1901_modern: also the zooming should be proportional to angleDelta().y(), not just sign(angleDelta().y())
<cr1901_modern> Ahhh, that.
<rjo> i just looked at the wheelEvent path. there are three methods that seem very redundant.
<rjo> and mutually overlapping
<rjo> just convert angleDelta().y() into a factor _once_ and pass that.
<rjo> why would you even sign() it? and it can also be zero.
<cr1901_modern> rjo: The reason the methods are redundant is because that was a scar back from when I was using QGraphicsView and called handleZoom from multiple places
<cr1901_modern> If it's zero, there's nothing to do?
<rjo> that's why i recommend cleaning up the code.
<cr1901_modern> Okay, I understand what you mean now, and you're right
<rjo> probably. it's in the docs.
<cr1901_modern> Alright very good. I'll add it to the list when I update it again; I'll just copy your changes back into my list
<rjo> cr1901_modern: i have commited a few things to m-labs/scanwidget.git. you can take that
<cr1901_modern> rjo: I'm not sure how I just noticed this, but... the highest priority thing on your and my list:
<cr1901_modern> s/zoom/resize
<cr1901_modern> the slider positions are not updated properly on resize, not zoom. Zoom works, minus the tweaks I need to make
<cr1901_modern> Wow, I'm sorry
<cr1901_modern> and ack
<cr1901_modern> rjo: Thankfully, when recentering the widget, the RELATIVE error between the old center and new center stays at about 10^-15, no matter what the current scaling iss.
<cr1901_modern> (if the old Center cannot be represented in the current pixel-to-spinbox transform)
acathla` is now known as acathla
acathla has quit [Changing host]
acathla has joined #m-labs
key2 has quit [Ping timeout: 244 seconds]