PMXBOT Log file Viewer

Help | Karma | Search:

#pypa-dev logs for Friday the 24th of April, 2015

(Back to #pypa-dev overview) (Back to channel listing) (Animate logs)
[01:21:05] <r1chardj0n3s> dstufft: you're still WAH though, yeah?
[01:22:35] <dstufft> r1chardj0n3s: WAH?
[01:22:55] <r1chardj0n3s> working at home
[01:22:58] <r1chardj0n3s> :)
[01:23:06] <r1chardj0n3s> you're not moving to the Castle in May
[01:34:59] <dstufft> r1chardj0n3s: oh, yea I'm Work At Home
[01:35:06] <dstufft> r1chardj0n3s: I'm not working at Rackspace at all in May
[01:35:16] <r1chardj0n3s> dstufft: yup
[01:35:17] <dstufft> well for one day in may I am
[02:16:08] <lifeless> dstufft: https://github.com/pypa/pip/pull/2711 is now green too
[02:19:20] <lifeless> dstufft: so, build dirs
[02:20:11] <lifeless> dstufft: I'm thinking I could make some internals a bit nicer if the build dir was treated as a cache
[02:20:57] <lifeless> dstufft: that is, we delete its contents, or don't delete at all
[02:21:19] <lifeless> dstufft: vs the current thing where we delete individual req's out of it based on whether an error was encountered processing it or not
[02:26:36] <dstufft> lifeless: ok, between 2711 and 2699 is there an order that matters
[02:27:01] <dstufft> lifeless: also I think it's OK to delete the whole thing (or not delete if --no-clean)
[02:27:06] <lifeless> dstufft: 2699 first
[02:27:13] <dstufft> ok
[02:27:15] <dstufft> poking it now
[02:39:59] <lifeless> dstufft: the import pip thing is to avoid circular import
[02:40:07] <dstufft> lifeless: ah
[02:40:08] <dstufft> ok
[02:40:09] <lifeless> dstufft: index uses wheel, wheel can't use index.
[02:40:20] <dstufft> yay for pip's code base
[02:40:31] <lifeless> after a bit I just got over it
[02:40:45] <lifeless> and stopped trying to figure if each one could/couldn't work
[02:49:19] <dstufft> lifeless: ^^
[02:50:10] <lifeless> \o/
[02:50:31] <lifeless> dstufft: 2711 if you have time
[02:50:59] <dstufft> yup, poking it now
[02:51:54] <dstufft> lifeless: can I get you to commit --amend and force push? github doesn't update the diff when things get merged so this diff has 2699 in it still :/
[02:53:32] <lifeless> sure
[02:53:44] <lifeless> dstufft: you can just click on 'commits' and then the second commit
[02:55:21] <lifeless> dstufft: that said, I've rebased on the merge commit and pushed
[02:55:32] <dstufft> thanks!
[02:59:17] <dstufft> lifeless: other than the comment I just made, it looks good to me
[03:14:18] <lifeless> pushed up, but it may have test fallout
[03:14:22] <lifeless> (new stderr output)
[03:17:20] <dstufft> lifeless: cool, will take a look in a few minutes, going through the open tickets to try and see if we can close out any of them or if I can comment on anything
[03:17:41] <lifeless> dstufft: cool; there's been more discussion on the other release-blocker tickets
[03:19:05] <dstufft> ok
[03:19:24] <dstufft> we're not super strict about the release blockers, often I just use it as a way to remind myself of issues to look at before cutting a release
[03:19:51] <lifeless> kk
[03:27:10] <dstufft> lifeless: pbr doesn't support any sort of option to build a "static" sdist which doesn't depend on pbr does it?
[03:29:57] <lifeless> dstufft: nope
[03:30:25] <dstufft> lifeless: k, didn't think so
[03:30:33] <lifeless> dstufft: obviously we could, but I'm kindof philosophically against having sdist replace the contents of files that are in VCS
[03:30:46] <lifeless> adding new files is ok
[03:31:56] <dstufft> lifeless: going through pip I was reminded of my tickets to automate the release of pip and such, I don't want a setup_requires in pip though so anything we add will need to generate a "static" sdist
[03:32:23] <lifeless> dstufft: pip vendors everything anyway though
[03:32:29] <lifeless> dstufft: so not sure why you'd need a setup_requires
[03:32:38] <lifeless> dstufft: just vendor it up
[03:34:24] <dstufft> lifeless: yea that's an option, didn't think of that since it wouldn't be a runtime dep really
[03:38:13] <lifeless> if setup_requires didn't behave so poorly, would you consider it?
[03:38:24] <lifeless> oooh
[03:38:26] <lifeless> earthquake
[03:43:20] <lifeless> 6.1
[03:53:09] <lifeless> hmm, upgraded to 6.3
[04:10:30] <lifeless> dstufft: https://github.com/pypa/pip/issues/2675#issuecomment-95787332 <- I think you meant 2699 ?
[04:11:15] <dstufft> lifeless: oh, yea
[04:12:41] <lifeless> $ source ~/virtualenv/python2.7/bin/activate
[04:12:41] <lifeless> /home/travis/build.sh: line 41: /home/travis/virtualenv/python2.7/bin/activate: No such file or directory
[04:12:44] <lifeless> travis!
[04:21:27] <lifeless> dstufft: are you able to abort a travis build?
[04:21:41] <dstufft> I can yea
[04:22:13] <lifeless> https://travis-ci.org/pypa/pip/builds/59825639
[04:22:44] <lifeless> I have NFI why some of the jobs passed
[04:22:58] <lifeless> I suspect test ordering and deprecation warnings not being isolated in the test suite
[04:23:10] <lifeless> but that doesn't explain where we executed a subprocess
[04:23:53] <lifeless> dstufft: ^
[04:55:00] <lifeless> dstufft: You likely use your PC for more than just hacking. Most notably, you likely use your PC to browse the Internet and download software. Software is buggy. Buggy software has exploits and exploits tend to get, well, exploited. Not every developer has a strong understanding of the best security practices for their operating system (if you do, great!). And no---simply using GNU/Linux or any other *NIX variant does not make you
[04:55:06] <lifeless> bah
[04:55:11] <lifeless> dstufft: https://travis-ci.org/pypa/pip/builds/59828404 is looking hopeful
[04:59:35] <dstufft> lifeless: lol
[04:59:40] <dstufft> lifeless: I was really confused there for a minute
[04:59:48] <dstufft> I was like yea I do use it for more than that...
[05:02:30] <lifeless> dstufft: accidental c-p from http://mikegerwitz.com/papers/git-horror-story
[05:10:14] <lifeless> dstufft: green
[05:17:19] <lifeless> \o/
[20:47:50] <sigmavirus24> when did comma change to "logical and" from "logical or": https://www.python.org/dev/peps/pep-0440/#version-specifiers ?
[20:50:28] <dstufft> it was never a logical OR, it was a complicated ruleset that sometimes meant OR and sometimes meant AND
[20:50:48] <sigmavirus24> ah
[20:50:58] <sigmavirus24> I could have sworn ,'s used to mean "or"
[20:51:03] <dstufft> sometimes!
[20:51:05] <dstufft> sometimes not
[20:51:10] <sigmavirus24> hah
[20:51:19] <dstufft> most people used it as AND
[20:51:24] <sigmavirus24> yeah
[20:51:26] <dstufft> so PEP 440 said it's AND
[20:51:33] <dstufft> that was released in 6
[20:51:35] <dstufft> pip 6
[20:53:34] <lifeless> dstufft: is it sane for pip to publish alphas?
[20:53:38] <ronny> dstufft: btw, random note im opposed to the git switch pep ^^
[20:55:51] <dstufft> lifeless: possibly if we publish it as only a wheel
[20:56:22] <dstufft> ronny: sure, people who prefer Hg likely will be opposed to it :) People who prefer git will like it.
[20:56:37] <dstufft> no matter what choice you pick someone is opposed to it
[20:56:51] <dstufft> simple fact though is that git won the popularity war.
[20:57:45] <sigmavirus24> and speed war and ...
[20:59:45] <dstufft> sigmavirus24: while I certainly agree with that, I don't think it's as important as the fact you're going to be hard pressed to find someone in OSS who isn't familar with git to a workable degree, and for new users who are learning, learning git is more likely to ve useful knowledge in the *next* project they work on
[21:07:12] <ronny> sigmavirus24: actually with the stuff facebook did on hg, hg is faster than git ^^
[21:07:26] <ronny> (the catch is that its a extension)
[21:08:07] <sigmavirus24> ronny: and how many people actually use that extension? does mercurial build wheels/installers with that extension now?
[21:08:30] <sigmavirus24> Also has mercurial stopped trying to claim that using its api to build extensions makes that work GPLv3?
[21:09:04] <ronny> sigmavirus24: uhm using mercurials api makes ting gpl ^^
[21:09:53] <dstufft> It's only faster if you use it like a centralized VCS instead of a DVCS
[21:10:35] <ronny> dstufft: the worktree speedips are orthogonal to the network details
[21:12:00] <pjdelport> I feel the need to point out that human factors should also be considered in any comparison between hg and git.
[21:12:42] <pjdelport> Regardless of which one is faster at certain benchmark operations, which one is faster and more efficient at being used by human developers?
[21:12:47] <dstufft> ronny: eh, even facebooks own graphs show that without remotefilelog clone and pull are still faster in git than in hg. the file status stuff requires a persistent watchman process to send the inotify too
[21:13:09] <dstufft> pjdelport: That's going to depend on which one the person is most familar with :)
[21:13:33] <dstufft> I'm really familar with git, I'm about as fast with it as I can be with a VCS until one learns to read my mind
[21:13:46] <ronny> dstufft: i dont mind trading some ram and cpu for more speed of a hackable tool ^^
[21:14:03] <dstufft> I'm not familar with hg at all, I use hg diff and aptch to implement branches because I can't be assed to figure out which one of mercurials 6 types of branches are the right kind to use
[21:14:19] <dstufft> which means I'm really inefficient using it :)
[21:14:31] <pjdelport> dstufft: I'm very familiar with both, and the relative limitations and user-hostility of git constantly pains me. But yeah, obviously mileage varies.
[21:14:33] <dstufft> (I'm sure the inverse is true too for someone used to hg)
[21:15:07] <pjdelport> dstufft: If you want git-style branches in Mercurial, you want bookmarks, FWIW.
[21:15:23] <ronny> dstufft: i know both tools down to the inner mechanics ^^
[21:15:25] <pjdelport> (Or you can switch to using real named branches. :)
[21:15:32] <dstufft> pjdelport: someone said that, but then they told me they all live in the same namespace or something so I have to be careful to not clash or something
[21:16:02] <dstufft> and I got yelled at both by Mercurial itself, and by the project I was trying to submit a PR too for using real named branches
[21:16:41] <dstufft> but really, I consider Hg vs git to be, technology wise, mostly equivilant
[21:17:33] <dstufft> I don't want to learn hg and I'm fine using my horrible hg diff hack because I only work on one project where I use hg (well two if you count PyPI, but we odn't use branches and I'm moving that to git anyways) so it doesn't effect me much
[21:17:36] <ronny> i strongly prefer hg, because compared to git extension hacking is way more easy once one knows the "plumbing"
[21:17:41] <dstufft> and i'd be more than happy doing that
[21:17:54] <pjdelport> I wouldn't say mostly; Mercurial has several what I consider to be killer features that have no git equivalent. Named branches and revset queries, for starters.
[21:18:11] <ronny> pjdelport: also the evolve extension is on the way
[21:18:13] <dstufft> pjdelport: I don't find mercurials named branches useful in the slightest tbh
[21:18:20] <pjdelport> Phases, and the in-progress obsolescence and evolution stuff, certainly.
[21:18:20] <dstufft> I'm not sure what revset queries are
[21:19:25] <ronny> dstufft: you can do something like hg log -r 'modifies("src/**") and not merge() and not modifies("src/evil.c")'
[21:19:27] <pjdelport> dstufft: Well, named branches mean you can look at the history and actually see what branches were where. If you don't care about having a readable history, they won't be very useful.
[21:19:51] <dstufft> pjdelport: my history is plenty readable with git, I just don't think the branch name is a useful bit of information
[21:20:17] <dstufft> I think I've cared about what branch a commit was originally on all of once ever
[21:20:20] <ronny> pypy has between 10 and 40 long lifed active branches - and over 800 historic branches, without branch names one would be utterly lost
[21:20:45] <ronny> and the branch context was regulary needed for blames/lookups to understand the context of a commit
[21:21:11] <pjdelport> dstufft: Well, whether one cares about branch names or not depends; but the point is that hg gives you the option of using them. With git you're just out of luck.
[21:21:15] <dstufft> I've never had a problem finding context in a reasonable git project :)
[21:21:44] <dstufft> pjdelport: you can record them with git if you want, *shrug* a tiny commit hook can shove it in the commit message as a field jsut liked Signed-Off and such is
[21:22:14] <pjdelport> dstufft: That doesn't let you do anything useful with it, though.
[21:22:40] <dstufft> I can't think of anything useful I'd want to do with a branch name :) half the time my branch names are non sensical until I've made a few commits anyways
[21:22:48] <pjdelport> The point of having it as first-class metadata is that you can see it easier, and that you can do stuff with it.
[21:22:48] <dstufft> git checkout -b blah
[21:23:08] <lifeless> can't you infer by the commits position between tags?
[21:23:23] <lifeless> as long as you don't move tags should be rock solid
[21:23:29] <pjdelport> Such as querying for "foo & ::branch(feature) - ::branch(stable)"
[21:23:40] <dstufft> gotta go pick up food!
[21:23:43] <dstufft> be back in 5 or 10
[21:23:46] <lifeless> right - tag1..tag2
[21:24:07] <pjdelport> Which is a revset query for all changeset matching foo that are included in branch "feature" but not in stable.
[21:24:33] <ronny> lifeless: now, find all hotfies between 2 tags, some commiters however didnt add that in the commit message, it still was a branch once
[21:25:13] <lifeless> ronny: sorry, I don't know quite what you mean
[21:25:21] <lifeless> whats a hotfie?
[21:25:26] <ronny> eh hotfix
[21:25:53] <lifeless> and what were you expecting committers to add to the commit message?
[21:26:52] <ronny> lifeless: usually nothing, where i work hotfixes are mandatory to be on the hotfix branch
[21:27:21] <ronny> hat branch is fixed in history, so its eay to query for all commits that hapenend only in hotfix
[21:27:24] <lifeless> ronny: so you have a workflow process where commits that are going into a stable branch have to be done a special way
[21:27:40] <lifeless> ronny: what other commits go into stable branches?
[21:28:23] <ronny> lifeless: usually onmy merges from development
[21:29:04] <lifeless> huh, that surprises me - for all the projects I'm involved with, when there is a stable branch, its locked down, only hotfixs go there at all
[21:29:05] <ronny> bascially we have a proess similar to hg + a hotfix branch when important issues come from production
[21:29:25] <lifeless> maybe I am defining hotfix differently
[21:30:27] <ronny> at what we do stable is what will conclude the next delivery, hotfix is for immediate changes to the crrent delivery
[21:30:52] <lifeless> ah
[21:31:06] <lifeless> ok so in those terms, stable is master and hotfix is $lastrelease
[21:31:20] <lifeless> yes?
[21:31:54] <ronny> kinda
[21:34:48] <ronny> hmm
[21:34:58] <ronny> time to teach dulwich 0.10 to anyvc
[21:35:07] <dstufft> ronny: I don't think it's much difference between "it's mandatory tthat we name branches a special way" and "it's mandatory we add a special header to hte commit message"
[21:36:30] <ronny> dstufft: its easier to work with first class metadata
[21:36:42] <dstufft> you can do something lile git log --grep "Hotfix: some-hotfix-name" tag1..tag2
[21:36:50] <lifeless> ronny: I suspect the definition of first-class differs between systems
[21:38:12] <dstufft> a key differnce is you can only have one branch name, but you can have multiple header like things inside of a commit message
[23:35:58] <lifeless> qwcode: ^ as requested
[23:47:04] <qwcode> lifeless, thanks