[10:50]  * Chipaca decides it's time for more coffee
[10:50]  * bthomas resisting the urge to caffinate
[10:51]  * Chipaca laughs
[10:51] <Chipaca> there's 75mg of caffeine in my _hydration_ tablets
[10:52] <bthomas> wow. coffee and tea are dehydrating though
[10:52] <Chipaca> on the other hand, there's 0mg of caffeine in beer
[10:53] <Chipaca> *most beer
[10:53] <bthomas> who needs caffeine when you have beer. algthough I prefer some good port wine.
[10:53]  * Chipaca wonders about starboard wine
[10:53] <bthomas> Cockburns fine tawny is very soomth
[10:54]  * bthomas googles starboard wine
[10:55]  * Chipaca ⇝ coffee
[11:12] <facubatista> ¡Muy buenos días a todos!
[11:13] <facubatista> Chipaca, is travis your friend today?
[11:13] <Chipaca> facubatista: travis is an enemy with benefits
[11:13] <facubatista> jajaja
[11:14] <bthomas> नमस्ते facubatista
[11:14] <facubatista> hola bthomas
[11:14] <Chipaca> facubatista: hoping for a review from jаm and then we're done
[11:15]  * Chipaca points out 'jаm' is using a homoglyph because it's early
[12:13] <Chipaca> JoseMasson: buen día!
[12:13] <JoseMasson> Buen día!
[12:36] <Chipaca> I think I'm going to step out and get lunch
[13:57] <bthomas> http://ops.rtfd.io/ is returning 503 service unavailable
[13:59] <bthomas> Chipaca: facubatista Have you tried using your IDE to access operator framework documentation. I use Emacs with Elpy. When I try to access the documentation (C-c C-d) I get a nearly blank page. I think this may be because we are not tying in the class and module level docs correctly into the package level but I am not sure. Any way I will just create a ticket for this now as I am still busy with the refactoring.
[14:02] <facubatista> bthomas, regarding RTFD, it looks a problem on their side?
[14:02] <bthomas> indeed
[14:03] <facubatista> bthomas, regarding proper docs building/packaging/something, thanks for the issue
[14:04] <facubatista> Chipaca, how are we coming regarding rollout?
[14:04] <Chipaca> facubatista: waiting for a review on #440
[14:04] <mup> PR #440: Set sys.breakpointhook in main instead of Framework.__init__ <Created by chipaca> <https://github.com/canonical/operator/pull/440>
[14:04] <Chipaca> facubatista: hopefully from jam 🙂
[14:05] <mup> Issue operator#441 opened: Link docstrings to package level <Created by balbirthomas> <https://github.com/canonical/operator/issues/441>
[14:06] <facubatista> ack
[14:06]  * bthomas needs that coffee now
[14:09] <Chipaca> about 'ops' being almost blank: imho, we should make it so that 'ops' is all you need to import for making a 'basic' charm
[14:10] <Chipaca> i.e. everything we think is needed for just a charm (as opposed to a reusable component or extension of ops) should be doable by doing 'import ops' (or more likely 'from ops import x')
[14:10] <Chipaca> ie CharmBase, and main, and the statuses, and … etc
[14:10] <Chipaca> so people don't have to guess where inside ops the thing is defined
[14:10] <Chipaca> (which would also be nice to refactor at some point)
[14:18] <bthomas> Chipaca: I like that ^ idea
[14:19]  * bthomas is jittery will at that coffee
[14:27] <Chipaca> bthomas: rtfd is back
[14:27] <bthomas> thanks.
[14:28] <bthomas> Just to be clear ops documentation is accessible if you look at any particular function or class but not if you look at the whole package.
[14:30] <Chipaca> bthomas: and if you look at a module?
[14:30] <Chipaca> bthomas: e.g. ops.testing
[14:31] <bthomas> Chipaca: still blank : both import ops.framework and from ops import framework
[14:31] <Chipaca> bthomas: not even "The Operator Framework infrastructure."?
[14:32] <bthomas> Chipaca: only that
[14:32] <bthomas> I mean that is the only thing that is shown
[14:32] <Chipaca> bthomas: can you show me an example of something that shows more than just the toplevel docstring?
[14:33] <bthomas> Chipaca: on the line from ops.charm import CharmBase , if i put the point on CharmBase and C-c C-d then I do get the docstring for CharmBase
[14:50] <Chipaca> bthomas: FWIW it sounds to me like C-c C-d is less helpful than python's builtin help() which i didn't think was a low bar
[14:53] <bthomas> Chipaca: indeed just tried python's help(ops), and it does give more, in particular a list of modules. For comparison I also did import json and help(json) and C-c C-d on json, both give the same output.
[14:53] <Chipaca> right, that's a good docstring there
[14:53] <Chipaca> good one
[14:53] <Chipaca> otoh, json doesn't have submodules
[14:53] <bthomas> true
[14:54] <bthomas> we should look at some other stdlib
[14:54] <Chipaca> picking multiprocessing at random
[14:54] <bthomas> urllib package level is quite sparse
[14:55] <bthomas> multiprocessing is quite extensive
[14:55] <Chipaca> bthomas: in C-c C-d?
[14:56] <bthomas> Chipaca: C-c C-d is extensive for multiprocessing
[14:56] <Chipaca> very strange
[14:56] <Chipaca> what is it doing?
[14:56] <Chipaca> because the docstring itself is empty
[14:56] <Chipaca> i installed elpy here to look into this also
[14:57] <bthomas> nice, what are you using otherwise if not elpy, python-mode ?
[14:57] <Chipaca> oooh, looks like it uses pydoc.docmodule
[15:02] <bthomas> Chipaca: I wonder if __all__ needs to be in ops/__init__.py and that will make it pickup and collate module level docstrings.
[15:14] <Chipaca> hah
[15:15] <Chipaca> so there's inspect.getdoc
[15:15] <Chipaca> that, if the module has *no docstring*, calls inspect._finddoc
[15:15] <bthomas> interesting was not familiar with inspect.getdoc
[15:17] <Chipaca> bah, no, for modules _finddoc does nothing
[15:17] <bthomas> Just to emphasise for multiprocessing both python help() and C-c C-d produce the same result
[15:19] <bthomas> The only difference I can see between help() and C-c C-d is help() in some cases just lists the modules (without any module or lower level docs collated) where as in those case C-c C-d shows nothing.
[15:20] <Chipaca> bthomas: look what happens to C-c C-d if you delete the module-level docstring entirely
[15:20] <Chipaca> bthomas: i.e. if you edit __init__.py and delete the docstring
[15:23] <bthomas> Chipaca: Indeed after deleting the one line docstring from ops/__init__.py I do see the list of modules (as shown by help()) and the license (placed under "DESCRIPTION" !) .
[15:23] <bthomas> using C-c C-d
[15:43] <justinclark> bthomas, here's the busy loop replacement PR: https://github.com/canonical/elasticsearch-operator/pull/23
[15:43] <justinclark> Review much appreciated :)
[15:56] <bthomas> having a look
[16:00] <Chipaca> ah, dang, jam is away today
[16:00] <Chipaca> hmm
[16:00] <Chipaca> justinclark: care to review #440 ?
[16:00] <mup> PR #440: Set sys.breakpointhook in main instead of Framework.__init__ <Created by chipaca> <https://github.com/canonical/operator/pull/440>
[16:01] <justinclark> Chipaca, Yep - I'll look now.
[16:01] <Chipaca> thanks!
[16:01]  * Chipaca takes a short break
[16:59] <justinclark> Chipaca - just approved #440. Though I fear I'm not as opinionated as jam would be on this.
[16:59] <mup> PR #440: Set sys.breakpointhook in main instead of Framework.__init__ <Created by chipaca> <https://github.com/canonical/operator/pull/440>
[16:59] <Chipaca> justinclark: we can always fix it in post :-p
[17:00] <mup> Issue operator#421 closed: breakpoint handlers unconditionally installed on framework initialization <Created by stub42> <Closed by chipaca> <https://github.com/canonical/operator/issues/421>
[17:00] <mup> PR operator#440 closed: Set sys.breakpointhook in main instead of Framework.__init__ <Created by chipaca> <Merged by chipaca> <https://github.com/canonical/operator/pull/440>
[17:01] <Chipaca> oh drat i forgot about #424
[17:01] <mup> PR #424: Added docstrings checks <Created by facundobatista> <https://github.com/canonical/operator/pull/424>
[17:01]  * Chipaca hugs facubatista 
[17:07] <Chipaca> yeah, i'm running tests locally and going to merge that by hand because travis is stupid slow again
[17:08] <mup> PR operator#424 closed: Added docstrings checks <Created by facundobatista> <Merged by chipaca> <https://github.com/canonical/operator/pull/424>
[17:32] <Chipaca> facubatista: ^
[17:51] <facubatista> Chipaca, rocanrol
[17:52] <facubatista> Chipaca, remote building now
[18:00] <Chipaca> EOW for me
[18:00] <Chipaca> have a great weekend all!
[18:00] <Chipaca> don't party _too_ hard
[18:03] <bthomas> justinclark: I am not going to be able to finish your PR review today. I will leave only one half backed possibliy poorly thoughtout comment for you to mull over the weekend. But I will pick it up on monday along with review changes for Prometheus. Hope this is ok ?
[18:03]  * bthomas is hungry
[18:05] <justinclark> bthomas, sounds good. No problem at all.
[21:41]  * facubatista eods and eows, will surely release on Monday...