[10:55] <mup> Issue operator#304 closed: Use git describe to log version when running from git <Created by chipaca> <Closed by chipaca> <https://github.com/canonical/operator/issues/304>
[10:55] <mup> PR operator#319 closed: ops: get version from git <Created by chipaca> <Merged by chipaca> <https://github.com/canonical/operator/pull/319>
[10:59] <mup> Issue operator#309 closed: KeyError: 'JUJU_MODEL_NAME' while emitting event from Harness <Created by exceptorr> <Closed by chipaca> <https://github.com/canonical/operator/issues/309>
[11:05] <Chipaca> pjdc: 👋
[11:21] <facubatista> Muy buenos días a todos!
[11:21] <Chipaca> facubatista: 👋
[11:23] <facubatista> hola Chipaca
[11:26]  * Chipaca integrates https://jazzkeys.plan8.co/ into emacs
[11:27] <Chipaca> facubatista: https://jazzkeys.plan8.co/?msg=-M9IfwcZxxA0wD6iLmb1
[11:28] <facubatista> Chipaca, ja, nice!!
[11:29] <facubatista> I wonder how it be to really integrate it with the keyboard, maybe not with the editor, just at a system level
[11:31] <Chipaca> facubatista: snap install bucklespring
[11:34] <facubatista> it's a wonder how it's balanced across speakers :)
[11:34] <Chipaca> facubatista: you can adjust how "wide" that goes, as well
[11:34] <Chipaca> with headphones i find i need to set it to a lot less than the default for it to be reasonable
[11:34] <Chipaca> with speakers the default sounds 'right'
[11:35] <Chipaca> having written that, it's obvious why =)
[11:35] <facubatista> yes
[12:03] <facubatista> Chipaca, so, how we continue with that spec?
[12:08] <Chipaca> facubatista: let it prove for another day
[12:10] <facubatista> Chipaca, ack, let me know
[12:12] <Chipaca> facubatista: but AIUI we need to expand on the contents of charmcraft.yaml and give a go through a .charm contents in the concrete
[12:14] <jam> morning facubatista
[12:14] <facubatista> Chipaca, a) charmcraft.yaml is for the whole tool, not just build, we may write about it in a different doc, and point from this one?
[12:14] <facubatista> jam, hola!
[12:15] <Chipaca> jam: #320 gtg, #318 and #322 waiting for +1s
[12:15] <mup> PR #320: ops/framework.py: Move pickle into Storage <Created by jameinel> <https://github.com/canonical/operator/pull/320>
[12:15] <mup> PR #318: Simplified the CharmBase init signature <Created by facundobatista> <https://github.com/canonical/operator/pull/318>
[12:15] <mup> PR #322: log: set up sys.excepthook to log exceptions <Created by chipaca> <https://github.com/canonical/operator/pull/322>
[12:15]  * Chipaca the taskmaster
[12:15] <facubatista> Chipaca, b) you say to dump the content of a real .charm's tree there?
[12:16] <Chipaca> facubatista: and IIRC the build directory itself also (but that can wait until we've made it not be so symlinky)
[12:16] <Chipaca> (or pretend we've already done that :)
[12:17] <facubatista> Chipaca, we need to talk about that, I don't see the benefit of copying bytes
[12:18] <Chipaca> facubatista: ok
[12:18] <Chipaca> (i don't see the benefit of copying bytes either)
[12:18] <facubatista> (in this case in particular, copying bytes is a good thing in lot of places for this thingies called computers)
[12:18] <Chipaca> facubatista: the trick is always to copy as little as possible
[12:19] <Chipaca> 1/2 of all computer science treaties are about that
[12:19] <Chipaca> the other 3/4 are about estimation
[12:19] <facubatista> :)
[12:20] <facubatista> Chipaca, so, let's talk about symlinks! here? HO? later?
[12:22] <Chipaca> facubatista: here is fine
[12:22] <Chipaca> facubatista: so i'll start saying what I'd like
[12:22] <Chipaca> facubatista: then you tell me why i'm wrong
[12:23] <Chipaca> facubatista: I'd like build to do the equivalent of 'cp -al' of all the relevant bits, and then explicitly symlink things like hooks that we want to be symlinks, and then create the zip with the actual symlinks in it
[12:23] <facubatista> Chipaca, you're never wrong! you may not be as much right as I am
[12:24] <Chipaca> facubatista: I'd like build to create the venv outside of build (.venv maybe?) and the 'cp -al' it into build also, so it can be thrown away / recreated cheaply when not changed
[12:24] <Chipaca> facubatista: but this last thing is just optimization
[12:24]  * facubatista does `man cp` for first time in years
[12:24] <Chipaca> facubatista: hardlink files, create directories
[12:25] <Chipaca> facubatista: almost no byte copying :)
[12:27] <facubatista> Chipaca, let's leave the venv to a second phase of this talk
[12:27] <Chipaca> totes
[12:29] <facubatista> Chipaca, so, doing 'cp -al' is compared to 'symlinks' in: (let me finish)
[12:30] <facubatista> a) nicer, as it no create actual symlinks (hardlinks are cheap!)
[12:30] <facubatista> b) more work, as we need to actually do a lot of recursive work to create trees and all files inside those trees
[12:31] <facubatista> c) nicer, as we may get to have "actual symlinks" in the zip file
[12:31] <facubatista> Chipaca, is (c) the real benefit of your proposal here? is this what you're actually searching for?
[12:32] <Chipaca> d) nicer, as a developer looking into build/ will see something a lot closer to what they get from unzipping the charm
[12:32] <Chipaca> (c) and (d) are what i'm going for
[12:32] <Chipaca> (a), meh; (b), smop :-)
[12:34] <facubatista> Chipaca, ah, (d) convinced me
[12:36] <facubatista> Chipaca, I'm writing something, it may take me 5-10'
[12:49] <Chipaca> second monday of late standup, it throws me every time
[12:49]  * Chipaca gets tea
[12:52] <facubatista> Chipaca, what do you think? https://github.com/canonical/charmcraft/issues/29
[12:52] <facubatista> Chipaca, btw, would you close milestone 0.1.1? thanks
[14:28] <facubatista> Chipaca, let's talk about the venv?
[14:28] <Chipaca> veeeeeenv
[14:30] <Chipaca> facubatista: sorry my brain was momentarily taken over by zombies
[14:31] <Chipaca> facubatista: what do you want to talk about wrt venv?
[14:32] <facubatista> Chipaca, where it will be located
[14:32] <facubatista> the second phase of the talk we had before
[14:36] <Chipaca> facubatista: so, as per previous discussions, we want a way of not recreating the venv when it wouldn't change, right?
[14:36] <facubatista> Chipaca, yes
[14:36] <facubatista> Chipaca, I was thinking about using the hash of all requirements to check if we should or we shouldn't
[14:38] <facubatista> Chipaca, I like putting the venv inside the build directory, so we only "stain" one place
[14:39] <facubatista> Chipaca, we can not put that kind of dir in project's directory, as it may already have a .venv, or a .env, or a venv, etc
[14:40] <Chipaca> facubatista: but doesn't build start by nuking build/?
[14:40] <facubatista> Chipaca, I would change that, to probably start by nuking everything *but* the venv dir if we shouldn't
[14:48] <Chipaca> facubatista: so … what's the issue?
[14:49] <facubatista> Chipaca, before you wanted to put it outside... "I'd like build to create the venv outside of build"
[14:50] <Chipaca> facubatista: ¯\_(ツ)_/¯ details
[14:50] <Chipaca> facubatista: outside as in 'not nuked'; if you think it's easier / more foolproof to have it inside but not nuked, then, works for me
[14:55] <facubatista> Chipaca, perfect
[14:56] <Chipaca> siiigh. Changing 'fake_script' so that all scripts are python instead of bash triples the time our tests take to run
[15:00] <facubatista> Chipaca, what if we mock them?
[15:01] <Chipaca> facubatista: that's not very welcoming
[15:01] <facubatista> jaja
[15:02] <Chipaca> i'll be playing with different ways of doing it, later
[15:33] <Chipaca> jam: standup?
[16:05]  * facubatista -> lunch
[17:15] <mup> Issue operator#188 closed: Improve calling for Object descendant tree  <enhancement> <Created by facundobatista> <Closed by facundobatista> <https://github.com/canonical/operator/issues/188>
[17:15] <mup> PR operator#318 closed: Simplified the CharmBase init signature <Created by facundobatista> <Merged by facundobatista> <https://github.com/canonical/operator/pull/318>
[17:54] <mup> PR operator#320 closed: ops/framework.py: Move pickle into Storage <Created by jameinel> <Merged by jameinel> <https://github.com/canonical/operator/pull/320>
[18:58] <mup> Issue operator#289 closed: hook exception logged at DEBUG <Created by jetpackdanger> <Closed by chipaca> <https://github.com/canonical/operator/issues/289>
[18:58] <mup> PR operator#322 closed: log: set up sys.excepthook to log exceptions <Created by chipaca> <Merged by chipaca> <https://github.com/canonical/operator/pull/322>
[20:55]  * facubatista eods