[00:55] <nacc> rbasak: remind me after/before standup to ask about mocking
[01:07] <hehehe> https://www.wired.com/story/james-damore-google-memo-harvard/
[01:16] <hehehe> http://www.telegraph.co.uk/news/2017/01/29/dont-call-pregnant-women-expectant-mothers-might-offend-transgender/
[01:16] <hehehe> I recommend buying a shotgun
[01:16] <hehehe> mass insanity is around the corner lol
[06:24] <cpaelzer> jamespage: dpdk is in a-p likely to fail on tests soon, but ready for you to put the OVS-2.8 you have to its side
[07:59] <lordievader> Good morning
[08:02] <jamespage> cpaelzer: ack - I'll do a snapshot upload today
[11:15] <cpaelzer> jamespage: with the.1 in 17.05.1 it seems that the OVS dep8 tests also successfully run against the current OVS 2.7
[11:16] <cpaelzer> jamespage: I didn't expect that, but more likely it still finds the OLD libs that it was built against
[11:17] <cpaelzer> jamespage: yeah it does, once your new OVS 2.8 is in we want to drop the old 16.xx DPDK binaries that are left
[11:17] <cpaelzer> we now use version named libs - so all new ones will have 17.05 and such in their names
[11:18] <cpaelzer> jamespage: anyway that makes the new one a valid candidate in a-p, and as discussed is waiting for your snapshot upload
[11:19] <cpaelzer> I'm scheduling myself a check next week if we need/want to remove old binaries then or if all clears automatically
[12:05] <sdeziel> mdeslaur: good morning! If you have a couple of minutes, I'd appreciate if you could guide me a little in getting https://bugs.launchpad.net/ubuntu/+source/gnutls28/+bug/1709193 fixed
[12:07] <mdeslaur> hi sdeziel
[12:08] <sdeziel> hey
[12:08] <mdeslaur> sdeziel: hrm, looks like an SRU....is there no patch pilot today that can upload it?
[12:08] <mdeslaur> let me see if we have gnutls updates pending, one sec
[12:08] <sdeziel> mdeslaur: yes, SRU'ing this to Xenial/Trusty is my end goal
[12:09] <sdeziel> mdeslaur: thanks fro letting me know about patch pilot, I didn't know that, joining ubuntu-devel now
[12:10] <mdeslaur> sdeziel: I'm on patch piloting duty tomorrow, I can look at it then
[12:11] <mdeslaur> just realized tomorrow is my turn :)
[12:11] <sdeziel> mdeslaur: that would be awesome. Until then, should I provide you more debdiffs and attach them to the bug?
[12:14] <mdeslaur> zesty would be nice
[12:15] <sdeziel> mdeslaur: OK, I'll have zesty and trusty done then, thanks again!
[12:15] <mdeslaur> gnutls28 in trusty is in universe and is missing a crapload of security updates...adding this may be a bit futile
[12:15] <sdeziel> oh, I would have hope to drop support for TLSv1.0 all around but still have some Trusty boxes...
[12:16] <sdeziel> sSMTP has always annoyed me for only supporting TLSv1.0 max ;)
[12:16] <mdeslaur> ssmtp in trusty is probably linked to gnutls26
[12:18] <sdeziel> you are right
[12:19] <mdeslaur> looks like the same patch would apply to libextra/gnutls_openssl.c in gnutls26
[12:20] <sdeziel> alright, thanks for looking
[14:09] <sammyg> how to tell if a web server is installed?
[14:10] <dlloyd> any or a specific one
[14:11] <sammyg> any
[14:12] <sammyg> made a fresh vps install with ubuntu
[14:12] <sammyg> apache is not installed because /usr/share/httpd is missing?
[14:12] <sammyg> same goes for all?
[14:13] <lordievader> sammyg: Check if there is a program listening to port 80/443.
[14:13] <sammyg> port listener? what command?
[14:14] <sammyg> nmap?
[14:14] <dlloyd> netstat -natu |grep 80
[14:16] <sammyg> dlloyd, returned something starting with fe80: with 80 colored red
[14:16] <lordievader> Or the more recent `ss`: `ss -pln|grep '80\|443'`
[14:16] <sammyg> not a lot to list there, if i only use netstat -natu
[14:17] <dlloyd> dpkg -l |grep 'nginx\|apache'
[14:17] <sammyg> lordievader, command not found
[14:17] <sammyg> ubuntu 16.04
[14:17] <dlloyd> if you are root, netstat -natupd |grep 80
[14:17] <dlloyd> will give you the process
[14:17] <dlloyd> or sudo that
[14:18] <lordievader> O.o
[14:18] <sammyg> lordievader, yup not found
[14:18] <sammyg> what's the output supposed to look like?
[14:19] <sammyg> ports are not listed
[14:19] <sammyg> proto, rec, send, local, foreign, state
[14:19] <lordievader> Custom image install, I suppose?
[14:20] <sammyg> probably, it's from vultr
[14:20] <sammyg> 0.0.0.0:22 so this would be the port? 22?
[14:20] <sammyg> of course this is the ssh
[14:22] <sammyg> nmap not installed but suggest installing it
[14:22] <sammyg> so what commands can i use for port listening?
[14:23] <sammyg> nmap? dpkg? ss-pln? netstat?
[14:23] <sammyg> spkg is a package manager?
[14:23] <sammyg> where do linux boxes put their web root?
[14:24] <sammyg> "/usr/share/httpd"?
[14:24] <sammyg> perhaps this is the safest way? for noobs?
[14:24] <sammyg> to make sure
[14:24] <hateball> literally what
[14:29] <lordievader> sammyg: Ubuntu puts the webroot, by default, at `/var/www`.
[14:29] <nacc> rbasak: around?
[14:39] <rbasak> nacc: o/
[14:39] <rbasak> Sorry was otp
[14:40] <nacc> rbasak: cool, give me one sec
[14:41] <nacc> rbasak: so i'm trying to add a unit test for lint::derive_target_branch (new function)
[14:41] <nacc> it currently takes a list of branch of objects
[14:42] <rbasak> OK
[14:42] <nacc> what's the best way to mock that?
[14:42] <nacc> as my parameterized unit test just has a list of strings (e.g., 'pkg/ubuntu/devel'
[14:42] <rbasak> Does the implementation call many methods on the branch objects?
[14:42] <nacc> only two of them
[14:42] <nacc> b.branch_name
[14:42] <nacc> b.peel().id
[14:43] <rbasak> I think you could do something like:
[14:43] <rbasak> b.branch_name = unittest.mock.Sentinel
[14:43] <rbasak> b.peel().id = unittest.mock.Sentinel
[14:43] <rbasak> Oh, b = unittest.Mock() first, sorry.
[14:43] <rbasak> You might need branch_name to be a string, actually, if derive_target_branch relies on that.
[14:44] <nacc> yeah, it needs to be astring
[14:44] <rbasak> Do you not also need to mock a debian/changelog inside there? Or does derive_target_branch not need to look?
[14:44] <nacc> so that will create a singleton for each value?
[14:44] <nacc> nope
[14:44] <nacc> (at least not in the current implementation)
[14:44] <rbasak> Yeah each time you use unittest.mock.Sentinel, it gives you a new value, for comparison purposes later.
[14:44] <jamespage> cpaelzer: done - https://launchpad.net/ubuntu/+source/openvswitch/2.8.0~git20170809.7aa47a19d-0ubuntu1
[14:44] <nacc> what if i want two of them to have the same b.peel().id ?
[14:45] <rbasak> Then point them to the same object.
[14:45] <nacc> e.g. for the test of xenial-devel and xenial-updates being the same treeish
[14:45] <jamespage> thatnks for your help on expediting the dpdk uploads for 17.05.1
[14:45] <rbasak> Either b2.peel().id = b1.peel().id
[14:45] <nacc> rbasak: right, but then i need to change my parameterization?
[14:45] <rbasak> Or same_id = unittest.mock.Sentinel
[14:45] <rbasak> b1.peel().id = same_id
[14:45] <rbasak> b2.peel().id = same_id
[14:45] <nacc> rbasak: i mean, the test-runner currently doesn't know which case i'm testing :)
[14:46] <rbasak> I see.
[14:46] <nacc> rbasak: which *type of test-case
[14:46] <nacc> rbasak: i mean, i can put that in as a parameter
[14:46] <nacc> but that seems a bit kludge-y?
[14:46] <nacc> [list of branch-names], same_hash
[14:47] <rbasak> I can't think of a better way to fix this except by using real strings (bytes?) that are different, or by representing that you need them to be the same somehow in the data structure and then creating the mocks appropriately in the test function.
[14:47] <rbasak> Another way might be to make a function that creates the structure, and make the parameters calls to that function. That's essentially the same thing though.
[14:48] <nacc> yeah, i think that's where i was getting stuck
[14:50] <rbasak> HO if you like, and we can try it in a pad?
[14:50] <nacc> rbasak: joining standup early
[14:50] <rbasak> omw
[14:50] <nacc> cpaelzer: can you think of a reason that http://people.canonical.com/~ubuntu-archive/proposed-migration/update_excuses.html#php-crypt-gpg is only failing on s390x?
[14:51] <rbasak> nacc: I'm there but brb.
[14:51] <nacc> rbasak: ack
[15:13] <cpaelzer> nacc: looking
[15:48] <mdeslaur> nacc: https://usn.ubuntu.com/usn/usn-3382-1/
[15:48] <mdeslaur> nacc: thanks!
[15:49] <sdeziel> mdeslaur: nacc: thank you both!
[15:50] <nacc> mdeslaur: nice, thanks!
[16:44] <rbasak> nacc_: would you expect me to get the mapping from series codename to distribution from distro-info or from Launchpad?
[16:45] <rbasak> distro-info has the advantage that it is faster, but gets blocked on a distro-info-data SRU when a new series is opened.
[16:45] <rbasak> (including in Debian)
[16:45] <rbasak> I suppose falling back to Launchpad might be an idea.
[17:23] <nacc_> rbasak: where distribution is an object? or the xx.yy ?
[17:24] <nacc_> rbasak: i would expect we would not add a new dependency on distro-info unless we had an explicit reason to do so (i don't believe we use it at all currently)
[17:41] <nacc> rbasak: i feel like sentinel is not behaving like i expected
[17:41] <nacc> rbasak: if you're around, i'd like to clarify
[18:06] <rbasak> nacc: o/
[18:06] <nacc> rbasak: i think i figured it out, but i'd like to clarify -- standup HO?
[18:07] <rbasak> omw
[20:19] <ahasenack> nacc: need some help here, I can't figure out what git ubuntu lint is complaining about
[20:19] <ahasenack> it just says
[20:19] <ahasenack> ((0855986...))andreas@nsn7:~/git/merges/samba$ git ubuntu lint
[20:19] <ahasenack> Some lint checks failed. Please investigate.
[20:19] <ahasenack> let me paste a -v output
[20:21] <ahasenack> nacc: http://pastebin.ubuntu.com/25285660/
[20:27] <Epx998> I think I need a new way to clean a puppet cert at netboot provisioning, sigh.
[20:46] <nacc> ahasenack: have you pushed your branch anywhere?
[20:46] <nacc> ahasenack: i can try and debug locally
[20:46] <ahasenack> nacc: yes
[20:46] <ahasenack> nacc: https://code.launchpad.net/~ahasenack/ubuntu/+source/samba/+git/samba/+ref/merge-samba-take2-1700644
[20:46] <nacc> ahasenack: ok, one sec
[20:47] <ahasenack> thx
[20:52] <nacc> ahasenack: and that's with the snap?
[20:52] <ahasenack> yes
[20:52] <ahasenack> r115
[20:58] <nacc> ahasenack: ok, reproduced with the snap but not with master, checking still
[21:00] <ahasenack> nacc: ok
[21:00] <nacc> ahasenack: ok, reproduced with master on my bastion, i can debug it now
[21:01] <ahasenack> thx
[21:01] <ahasenack> and good luck :)
[21:12] <nacc> ahasenack: can you file a bug? i have the fix, but i need to figure out why it fixes it
[21:12] <ahasenack> ok, will do
[21:15] <ahasenack> nacc: done, https://bugs.launchpad.net/usd-importer/+bug/1710015
[21:17] <nacc> ahasenack: thank you
[21:23] <nacc> ahasenack: ok, i think i see what's up
[21:23] <nacc> ahasenack: the linter is missing a check
[21:23] <ahasenack> yes?
[21:26] <nacc> ahasenack: there's a debian/rules change dropped from your deconstruct to your logical
[21:26] <ahasenack> yes, that famous one
[21:26] <ahasenack> winbind static buld?
[21:26] <ahasenack> build*
[21:26] <nacc> right, but that is not how our workflow works
[21:26] <ahasenack> I keep hitting edge cases
[21:26] <nacc> deconstruct should match logical exactly except for d/changelog and d/control
[21:27] <nacc> i think you just dropped it in the wrong place
[21:27] <nacc> the logical delta should be exactly what was uploaded before?
[21:27] <ahasenack> then I will have "add fix/drop fix" both under "remaining changes"
[21:27] <nacc> and then you would drop that bit on the rebase to new/debian
[21:27] <nacc> ahasenack: logical is unrelated to the remaining
[21:27] <nacc> ahasenack: it's not part of the new delta, it's all about hte old delta
[21:29] <nacc> ahasenack: that is, there was a bit of delta (afaict), which was this extra d/rules bit
[21:29] <ahasenack> ok, will try that way
[21:29] <nacc> ahasenack: it's not correct for that bit to not be in the logical delta
[21:29] <nacc> ahasenack: but it might be correct to drop it on the rebase to new/debian
[21:29] <nacc> does that make sense?
[21:30] <ahasenack> we'll see :)
[21:30] <nacc> i mean, just thoughts-wise, the above idea :)
[21:30] <ahasenack> I don't recall what we did last time
[21:30] <ahasenack> just that it was a drop with an empty commit
[21:31] <ahasenack> which felt very odd to me, because the empty commit was talking about removing that line from d/rules
[21:31] <nacc> right, i think that was on the rebase to new/debian
[21:31] <ahasenack> but was, you know, empty
[21:31] <ahasenack> so it was lying a bit
[21:31] <nacc> no, a drop should always be an empty commit (the way I do it)
[21:31] <nacc> as it's a removal of delta that used to exist
[21:31] <nacc> what you're dropping is the delta, which since you're rebasing onto debian means it's now an empty change
[21:31] <nacc> it's a 'documentation' commit :)
[21:32] <ahasenack> the edge case is that dropping this delta required two drops, in essence
[21:32] <ahasenack> in different points in time
[21:32] <ahasenack> I wonder if just uploading this simple fix to artful right now, removing that line from d/rules, and *then* doing this merge, wouldn't be clearer
[21:40] <nacc> ahasenack: right, the point is you can't do that in a merge in the 'old state'
[21:41] <nacc> ahasenack: you do it as part of the merge, in the new state
[21:41] <nacc> ahasenack: right, now, you're changing the delta in the old state
[21:48] <nacc> ahasenack: you absolutely can do what you're suggesting, but what i've been suggesting the whole time was to do it as part of the merge. You had that correct in your old merge. The only mistake (if you want to call it that) in the new merge is you did the change too 'early' :)
[21:50] <ahasenack> in another revision of the merge I did it later, but that got stale and I had no idea anymore about what was going on
[21:50] <ahasenack> (today)
[21:50] <ahasenack> I'll go back to deconstruct and don't drop the two commits, then get logical, and rebase on new/debian
[21:51] <nacc> ahasenack: yeah -- i mean, technically, your merge itself is fine :)
[21:51] <ahasenack> the end result
[21:51] <nacc> ahasenack: it's the workflow that got borked, which is what the linter is checking
[21:51] <nacc> yeah
[21:51] <ahasenack> I did check the cmocka builddep today, it's fine for us to keep it
[21:51] <ahasenack> and I'll explain in the MP what I checked and why it's fine
[21:51] <ahasenack> nacc: so this still warrants a linter fix?
[21:52] <nacc> ahasenack: yeah, i'm fixing the linter -- basically it hsould have detected a d/rules diff between logical and deconstruct
[21:52] <nacc> it actually was detecting it, just not telling you (becuase of an implicit return)
[21:53] <ahasenack> nacc: what I keep finding confusing is that by dropping both the commit that added that patch and d/rules, and the one that removed it partially,
[21:53] <ahasenack> I'm essentially stopping the bug from being introduced
[21:53] <ahasenack> so there is never a commit that drops just the d/rules bit
[21:54] <ahasenack> so I keep thinking "hm, let's see the commit that dropped the d/rules change. Oh my, it's emtpy, why?"
[21:55] <nacc> ahasenack: right, there wouldn't be, because you'd either be introducing a 'new' change to old ubuntu or not dropping something that doesn't exist on new debian
[21:55] <nacc> ahasenack: i think it's important to keep those two states distinct in your head (the old and new states)
[21:55] <nacc> ahasenack: old is essentially never changed, it might be refactored/reordered, etc., but the contentful changes are static
[21:56] <nacc> ahasenack: new can be whatever it needs to be to be correct :)
[22:27] <nacc> rbasak: ok, i pushed my branch of bug fixes and refreshed the MP to be ready-to-review, so i think you have 3 pending reviews from me
[22:27] <nacc> ahasenack: --^ that branch (bug-fixes-2 in my namespace) has the fix for your linter issue
[22:33] <nacc> rbasak: also, if you do need  achangelog object, then i think we want to land https://code.launchpad.net/~nacc/usd-importer/+git/usd-importer/+merge/328607 before your branch, at least, so you can use git_repository::Changelog.from_treeish
[22:33] <nacc> rbasak: istr you mentioning that in our HO
[22:50] <ahasenack> nacc: ok
[22:58] <nacc> sarnold: who should I talk to on security about potential removal of nagios3 (already not in debian) but also promotion of icinga2 so we have a monitoring package in main?
[22:58] <nacc> sarnold: i can file the MIR, but just curious how security feels about nagios3 being in ubuntu and not in debian at this point
[22:59] <sarnold> nacc: file a bug against nagios3 in launchpad asking for it to be removed, subscribe the ubuntu archive administrators
[22:59] <sarnold> nacc: might not hurt to run it past IS first
[22:59] <nacc> sarnold: yes, that's already done :)
[22:59] <nacc> sarnold: but it's seeded
[22:59] <nacc> sarnold: so i probably will need to replace the seed with icinga2
[22:59] <nacc> which will end up requiring a MIR, etc.
[23:00] <nacc> so might not happen til 18.04
[23:00] <nacc> given where we are in the cycle?
[23:00] <nacc> tyhicks: --^ you may have an opinion here too
[23:00] <sarnold> could be .. I've lost track of the backlog
[23:00] <nacc> sarnold: yeah, and it's rather late to add another one, i realize
[23:00] <nacc> sarnold: just trying to get my thoughts in order, so, at least, it can get done ASAP in 18.04
[23:01] <nacc> (well, in that cycle, i mean)
[23:14] <ahasenack> nacc: still here?
[23:15] <nacc> ahasenack: yes
[23:15] <ahasenack> nacc: my rebase on new/debian: http://pastebin.ubuntu.com/25286639/ the troublesome commits are 3558c58 and 4b54cdb which I already ordered nicely one after the other
[23:16] <ahasenack> nacc: so the plan is to drop those two (d), then add an empty commit saying something like http://pastebin.ubuntu.com/25286633/
[23:17] <ahasenack> nacc: or maybe change 4b54cdb to include the d/rules bit, and then both really cancel out, and then drop
[23:17] <nacc> reading
[23:18] <nacc> ahasenack: to be clear, both lines 11 and 12 are in the old delta?
[23:18] <ahasenack> yes, they are in the deconstruct tag
[23:18] <ahasenack> and logical
[23:19] <ahasenack> I can push it as it is now
[23:19] <tyhicks> nacc: I don't have any strong opinions here
[23:20] <nacc> ahasenack: that's ok, i'm just trying to understand
[23:20] <ahasenack> so say we all :)
[23:20] <nacc> ahasenack: it seems like they should be in the deconstruct but not the logical
[23:20] <nacc> ahasenack: oh but now i remember, they don't actually cancel themselves out all the way?
[23:20] <ahasenack> no, that's where I dropped them before
[23:20] <tyhicks> nacc: there's some benefit from focusing on the same system monitoring daemon as Debian but I wouldn't consider it to be a huge benefit from the security team's POV
[23:20] <ahasenack> nacc: correct
[23:20] <ahasenack> they don't cancel each other out
[23:20] <ahasenack> they should, but they don't
[23:20] <tyhicks> nacc: if icinga makes sense from a market share perspective, it is probably a good move
[23:21] <achiang> does anyone know how to really prevent apt-daily.service from running when booting a cloud-init image?
[23:21] <achiang> the answer here does not work - https://unix.stackexchange.com/questions/315502/how-to-disable-apt-daily-service-on-ubuntu-cloud-vm-image
[23:22] <nacc> tyhicks: well, there hasn't been a release of nagios3 in ... 4 years
[23:22] <achiang> i passed the script as user-data to my ec2 instance and i still see evidence that the unit ran (by examining syslog)
[23:22] <nacc> tyhicks: that sort of feels ... not great for currency purposes
[23:22] <nacc> tyhicks: but yeah, we should figure that part out
[23:22] <nacc> tyhicks: ok, i'll defer to 18.04 on this, will probably re-engage your team at some point
[23:23] <tyhicks> nacc: right - Ubuntu would need to move to nagios4 (and maintain it all ourselves) or something else entirely
[23:23] <tyhicks> nacc: thanks for bringing it up early
[23:23] <nacc> tyhicks: yeah, i think the debian monitoring folks were basically orphaning it, so they let it die (and icinga2 is still maintained)
[23:23] <nacc> tyhicks: np, thanks for responding!
[23:25] <nacc> ahasenack: so this is my initial impression (or what I would expect). I would see in the logical tag's history (but not the deconstruct) a commit that replaces liness 11 and 12 with a commit containing just the change corresponding to http://pastebin.ubuntu.com/25286633/ except it would read "d/rules: compile windbind statically..."
[23:25] <nacc> ahasenack: then in the rebase to new/debian, i woudl expect to see that commit be transformed to an empty commit and dropped
[23:26] <nacc> ahasenack: oftentimes, i put in the [] in my logical something liek [previously undocumented] which is equivalent to your textual explanation
[23:26] <nacc> ahasenack: that way, the logical log still has a line per logical delta
[23:26] <nacc> and i can track each of those bits to commits (empty or not) in the new delta
[23:26] <ahasenack> nacc: but the removal of the d/rules line is not even in artful now
[23:26] <ahasenack> I can't put that in the logical
[23:26] <nacc> ahasenack: right, that's why mine doesn't have it as a Drop or anthing else
[23:26] <nacc> ahasenack: it is a literal " d/rules: compile statically"
[23:27] <nacc> ahasenack: which is is in the logical delta, as a difference from debian, in artful as it is now
[23:27] <ahasenack> isn't logical == deconstruct - changelog - metadata - duplicates?
[23:27] <ahasenack> duplicate == add and remove
[23:27] <nacc> contentfully (logical == deconstruct - changelog - metadata)
[23:28] <nacc> - duplicates would be a no-op if they are the sum of adds and removes
[23:28] <ahasenack> there is no add and remove in this case, so I left them in logical
[23:28] <ahasenack> this rule:
[23:28] <ahasenack> "An additional goal in this step is to consolidate the delta, e.g. sometimes a change is added in one Ubuntu release and then removed in a subsequent Ubuntu release. The changes, in this case, should simply be dropped.
[23:28] <ahasenack> "
[23:28] <ahasenack> doesn't apply
[23:28] <nacc> ahasenack: wait, i thought you just said there was?
[23:28] <ahasenack> it's an incomplete remove, it didn't remove the "add" fully
[23:28] <nacc> ahasenack: maybe a HO is in order? or we can talk tmrw if you'd rather
[23:28] <nacc> ahasenack: right, so it's still an add and remove
[23:29] <nacc> it just may not fit into the above sentence completely
[23:29] <rbasak> Yeah we never figured out good wording for what we mean there.
[23:29] <ahasenack> logical is the "old state", right
[23:29] <ahasenack> it's just the delta trimmed down
[23:29] <ahasenack> it represents an existing state in that package in ubuntu at that version/release
[23:29] <nacc> logical is a description of the logical delta
[23:29] <nacc> yeah
[23:30] <ahasenack> I can only change that once I apply it to new/debian
[23:30] <nacc> no
[23:30] <ahasenack> then it becomes a new delta
[23:30] <nacc> well, sort of
[23:30] <nacc> you can change the *wording* as much as makes snese
[23:30] <rbasak> Logical should be the previous delta made concise.
[23:30] <nacc> like in this case, where you have an incmpolete revert
[23:30] <ahasenack> this:
 ahasenack: yeah, i'm fixing the linter -- basically it hsould have detected a d/rules diff between logical and deconstruct
[23:30] <nacc> your'e not changing the patch, just the description
[23:30] <ahasenack> that's what broke the linter before
[23:30] <ahasenack> if you are saying now that I should change the logical to drop those "fake dupes", then it will happen again
[23:31] <nacc> ahasenack: well "broke" :) it just didn't tell you why you had incorrect logical :)
[23:31] <ahasenack> still, incorrect
[23:31] <ahasenack> something I should fix
[23:31] <nacc> ahasenack: no, it won't happen again
[23:31] <nacc> i'm not telling yout to *drop* anything
[23:32] <ahasenack> but now you are saying I should indeed drop those two commits at the logical step?
[23:32] <nacc> ahasenack: i'm saying if you combine your two commits into one, there will be a change leftover!
[23:32] <nacc> not drop, combine
[23:32] <rbasak> squash :)
[23:32] <nacc> if they were correct, the combine would be a drop
[23:32] <nacc> but they are not
[23:32] <nacc> yeah :)
[23:32] <nacc> so you squash them together, and notice hey, it didn't go empty -- so document what was missed
[23:32] <nacc> in this case, exactly that d/rules still says to compile winbind statically
[23:32] <ahasenack> not just document
[23:32] <ahasenack> fix
[23:33] <nacc> no
[23:33] <nacc> just document
[23:33] <nacc> you don't fix anything in the logical
[23:33] <ahasenack> but then the diff is still there,
[23:33] <nacc> yes
[23:33] <nacc> no
[23:33] <nacc> wait
[23:33] <nacc> what diff?
[23:33] <nacc> the diff *shoudl* be there in logical
[23:33] <ahasenack> the result of applying the fix and incompletely removing it
[23:33] <ahasenack> there is a remainder when you do that
[23:33] <nacc> logical == deconstruct - changelog - metadata
[23:33] <nacc> the remainder is in deconstruct
[23:33] <nacc> but not in your currnt logical
[23:33] <nacc> that's the reason the lint failed
[23:34] <ahasenack> yes, in deconstruct we are applying the fix and not fully removing it
[23:34] <nacc> right
[23:34] <ahasenack> then in logical I dropped (in the take2 branch) both, and that left a remainder that was unexpected
[23:34] <nacc> which emans you must do the same in logical
[23:34] <nacc> logical can't have different net contents than deconstruct
[23:34] <nacc> that violates the above equality we've said a few times
[23:34] <ahasenack> ok, with you so far
[23:35] <ahasenack> so what about this squashing?
[23:35] <nacc> if you had squashed the two commits together rather than dropping them
[23:35] <nacc> then your logical would have been correct
[23:35] <nacc> it would have been described wrong (as it would have a commit message talking about d/p/fix-1584485.patch when in fact the content of the commit was about d/rules
[23:35] <nacc> but it would have been contentfully correct
[23:36] <ahasenack> I shouldn't change the squashed commit message?
[23:36] <nacc> no you should :)
[23:36] <nacc> i was doing one thing at a time
[23:36] <ahasenack> ok, so I change it
[23:36] <ahasenack> do... *? -?
[23:37] <blackboxsw> achiang: I'm playing around w/ ec2 this week (but making dinner right now) will check it tomorrow and see if disabling is possible. we'd had a couple of internal discussions about the viability of disabling it
[23:37] <ahasenack> but the remainder will still be there, the incorrect d/rules lines will be there
[23:37] <nacc> ahasenack: right, which si good, it's part of the delta currently
[23:37] <nacc> ahasenack: you're going to drop it *in* the merge, not before the merge
[23:37] <nacc> ahasenack: basically, the "old" stuff never changes (this is what i was trying to say before)
[23:37] <ahasenack> we just changed the commit message of the old stuff
[23:37] <nacc> contentfully never changes
[23:38] <nacc> metadata (like commit messages) can change
[23:38] <nacc> the order thigns are committed in, can change
[23:38] <nacc> but the endpoints should match (a la the equality we expressed above)
[23:38] <rbasak> The logical is supposed to be exactly the previous delta, re-described.
[23:38] <rbasak> If there was a mistake in the previous delta, the logical will still have the same mistake, but described as one.
[23:38] <nacc> contentfully: reconstruct = deconstruct = logical + changelog + metadata
[23:39] <nacc> what the actual commits look like in each is a separate point, but the above is what the linter is checking for
[23:39] <ahasenack> see, I'm an elecrtrical engineer, when someone says "exactly the same", that has a strong meaning to me :)
[23:39] <nacc> "actual commits look like in each" == `git log old/debian..<each>`
[23:39] <nacc> ahasenack: exactly the same git-tree
[23:39] <nacc> (meaning filesystem  contents)
[23:40] <rbasak> Exactly how you choose to describe the logical (in terms of commits and commit messages) is subjective. But the diff of "git diff old/debian old/ubuntu" must be exactly the same as "git diff old/debian logical/..." except for metadata (update-maintainer etc) and debian/changelog
[23:41] <rbasak> If the diffs aren't the same (except those exceptions), the logical is always incorrect.
[23:41] <nacc> right, that's what the linter was trying to express here, it just didn't spit out the message saying that (fixed in my branch)
[23:41] <ahasenack> well, now I have the diff the same
[23:41] <ahasenack> but the commits are not squashed
[23:41] <nacc> ahasenack: yeah, so i was trying to save you a step in your rebase :)
[23:42] <nacc> ahasenack: it's not strictly necessary, but i think makes it easier to review (given that i'll probably be reviewing, it's even less necessary :)
[23:42] <achiang> blackboxsw: from one developer's opinion, it is really unfriendly -- the service reaches out to the network and takes locks on your system with very little user visibility
[23:42] <nacc> ahasenack: do you want to push your logical as it is now?
[23:42] <ahasenack> I don't know
[23:42] <achiang> blackboxsw: i agree there is some utility there, but it feels more like an opt-in thing, rather than an opt-out
[23:43] <ahasenack> to me squashing the logical as you described "changes" it
[23:43] <achiang> or at the very least, make it possible to disable easily, somehow. the ec2 way would be to pass in a user-data script
[23:43] <ahasenack> but, the normal case where two commits really cancel each other out is a change fit for the logical step
[23:44] <nacc> ahasenack: it can't change it, afaict
[23:44] <nacc> ahasenack: if what "it" is is the diff between old/debian and the tag
[23:47] <ahasenack> ok, trying again
[23:57] <blackboxsw> achiang: yeah I expect we'd minimally be able to pass a runcmd that does the trick