[02:12:08] <techalchemy> Pharyngeal: Thanks -- I saw some discussion on your pr
[02:12:27] <techalchemy> haven't had a chance to look yet but at a high level do you think it's good to go?
[02:12:51] <Pharyngeal> Yeah, it's almost done I think. TP found some debug stuff I accidentally left in, which led me to find one function in misc that didn't have the pypi_mirror param added yet. All fixed now.
[02:13:01] <Pharyngeal> I think so. Unless you think it needs additional test cases.
[02:13:28] <Pharyngeal> I did some basic acceptance testing on a machine on a network which blocks PyPI, and all of the basic operations worked as expected.
[02:23:00] <techalchemy> Pharyngeal: I doubt I'll ask you to add any coverage to it, it's pretty difficult to adequately cover our codebase atm
[02:23:27] <techalchemy> my focus is on breaking things apart
[02:23:32] <Pharyngeal> techalchemy: I've added integration tests that should reflect the proper operation of install, sync, and lock
[02:23:52] <techalchemy> Pharyngeal: I will have a look, that is quite helpful if so
[02:24:34] <techalchemy> I sat down to start working on `--selective-upgrade` yesterday and started untangling all of the duplicated code we have in our locking functionality
[02:24:38] <Pharyngeal> Hopefully they're adequate, but I know some stuff is lacking (like mirror tests for get_vcs_deps)
[02:24:54] <techalchemy> it's just super painful to work with that code
[02:26:42] <techalchemy> the simplest tasks take an eternity
[02:27:43] <techalchemy> I've probably spent thousands of hours on this project and I still have to re-read everything and do the equivalent of tracing the lines with my finger
[02:28:22] <Pharyngeal> techalchemy: Yeah, I had a separate text editor open where I was mapping what called what and whether it needed pypi_mirror or not.
[02:30:47] <techalchemy> yeah that failure is non-deterministic
[02:31:03] <Pharyngeal> Could you help me figure out what's going on here? This test is failing inconsistently, and I haven't changed anything that should affect it since the last successful appveyor build
[02:32:23] <techalchemy> Yeah so this test is designed to capture a marker grouping regression related to our ignoring compatibility flags
[02:32:49] <Pharyngeal> So how should its results be interpreted?
[02:33:17] <techalchemy> basically because we ignore compatibility flags, we get all of the dependencies associated with the package in question if we ignored a compatibility flag we turn it into a marker, that test makes sure that that actually happened
[02:33:35] <techalchemy> when this test fails, it usually is because of a race condition that actually just prevents those depenedencies from resolving properly