On Sun, Aug 7, 2016 at 9:11 PM, Steven D'Aprano <steve+pyt...@pearwood.info> wrote: > I have cloned the Python source repo, and build CPython, as described here: > > https://docs.python.org/devguide/ > > > Now a little bit later, I want to update the repo, so I run: > > hg fetch
According to the hg docs [1], you should probably avoid 'hg fetch'. Use 'hg pull -u' (or 'hg pull && hg update') instead. > to get and apply any changes. How do I know if I need to rebuild Python? I > don't want to have to rebuild after every fetch, because that's quite time > consuming (I estimate about five minutes on my machine, just long enough to > be a distraction but not long enough to get into something else). Plus the > time to run the tests (significantly longer). > > What do others do? I generally assume that if I'm testing a patch, I'm going to need to rebuild regardless of what the patch actually touches. I often wait until the patch is applied before I do the rebuild, or if I'm manually testing a bug I go ahead and do the rebuild immediately. Most make targets (including 'test') will go ahead make sure the build is up to date without your input. Usually the slowest part of a rebuild is rerunning ./configure, which 'make' will do for you if it determines that it should. You can speed up ./configure by passing it the '--config-cache' (or '-C') option. If you're on a multi-core machine, also remember to pass '-j<number of cores + 1>' to make to speed up building, and also to regrtest (which you can do with 'make test TESTOPTS=-j9') to speed up testing. [1]https://www.mercurial-scm.org/wiki/FetchExtension -- Zach -- https://mail.python.org/mailman/listinfo/python-list