{"push_id":625652778,"size":10,"distinct_size":0,"ref":"refs/heads/HEAD","head":"386e584b33fe5a8ec2f14f98c9d3da31e301a509","before":"3e8ae9fa6750e52ae788a1ad5b8fb9b5f8cac781","commits":[{"sha":"a1c0c04729321a894c13c4b447ea6babe1631873","author":{"email":"efe9a872bcf008f3e03ada5660d40f3164417d62@google.com","name":"Martin von Zweigbergk"},"message":"changectx.walk: drop unnecessary call to match function\n\nIf all the files in match.files() are in the context/manifest, we\nalready know that the matcher will match each file.","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/a1c0c04729321a894c13c4b447ea6babe1631873"},{"sha":"c4249d414b767af89ce253e374dde074e60e7120","author":{"email":"06cccca3455b121f3049817bde38dbb37ee7449e@google.com","name":"Drew Gottlieb"},"message":"parsers: remove unused dependency on util\n\nParsers.py had a reference to util.sha1 which was unused. This commit removes\nthis reference as well as the unused import of util to simplify the dependency\ngraph. This is important for the next commit which actually relocates part\nof a module to eliminate a cycle.\n\n--HG--\nextra : rebase_source : cdef753be7a32865005c78ddb403b54570b18000","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/c4249d414b767af89ce253e374dde074e60e7120"},{"sha":"18974a67227670355c3ff78236df0c80a83c9a93","author":{"email":"06cccca3455b121f3049817bde38dbb37ee7449e@google.com","name":"Drew Gottlieb"},"message":"util: move dirs() and finddirs() from scmutil to util\n\nAn upcoming commit requires that match.py be able to call scmutil.dirs(), but\nwhen match.py imports scmutil, a dependency cycle is created. This commit\navoids the cycle by moving dirs() and its related finddirs() function from\nscmutil to util, which match.py already depends on.\n\n--HG--\nextra : rebase_source : 356b6994ec6e872bd030946226ba00cf8fadf256","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/18974a67227670355c3ff78236df0c80a83c9a93"},{"sha":"50da58eb71254c07129a8b40973b87d5630cc8cb","author":{"email":"06cccca3455b121f3049817bde38dbb37ee7449e@google.com","name":"Drew Gottlieb"},"message":"treemanifest: further optimize treemanifest.matches()\n\nThe matches function was previously traversing all submanifests to look for\nmatching files, even though it was possible to know if a submanifest won't\ncontain any matches.\n\nThis change adds a visitdir function on the match object to decide quickly if\na directory should be visited when traversing. The function also decides if\n_all_ subdirectories should be traversed.\n\nAdding this logic as methods on the match object also makes the logic\nmodifiable by extensions, such as largefiles.\n\nAn example of a command this speeds up is running\n  hg status --rev .^ python/\non the Mozilla repo with the treemanifest experiment enabled.\nIt goes from 2.03s to 1.85s.\n\nMore improvements to speed from this change will happen when treemanifests are\nlazily loaded. Because a flat manifest is still loaded and then converted\ninto treemanifests, speed improvements are limited.\n\nThis change has no negative effect on speed. For a worst-case example, this\ncommand is not negatively impacted:\n  hg status --rev .^ 'relglob:*.js'\non the Mozilla repo. It goes from 2.83s to 2.82s.\n\n--HG--\nextra : rebase_source : c6147d224bd9acc749f123861a73d57e6c045204","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/50da58eb71254c07129a8b40973b87d5630cc8cb"},{"sha":"2cab19b0787250a251d67c7a4c448bc82ae971e4","author":{"email":"3647fe4b776fa41f7110cad7c64e9e2bea77714e@tcha.org","name":"Yuya Nishihara"},"message":"templates-default: do not show description or summary if empty\n\nchangeset_printer shows description only if ctx.description().strip() is not\nempty. The default template should do the same way.\n\n--HG--\nextra : rebase_source : d8ff88a38674706a623d0fb14e4d3b4af3e93bae","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/2cab19b0787250a251d67c7a4c448bc82ae971e4"},{"sha":"b6a32a71eaaa18c6b1e5bdceff4102607fdfeaba","author":{"email":"efe9a872bcf008f3e03ada5660d40f3164417d62@google.com","name":"Martin von Zweigbergk"},"message":"exchange: remove check for 'format' key\n\nWhen the 'kwargs' variable was added in 12f161f08d74 (bundle2: allow\npulling changegroups using bundle2, 2014-04-01), it could contain only\n'bundlecaps', 'common' and 'heads', so the check for 'format' would\nalways be false. Since then, _pullbundle2extraprepare() has been added\nfor hooks, but it seems unlikely that they would a 'format' key.\n\n--HG--\nextra : rebase_source : a4dd6f56e5d4e75dd17ff28132393f09c883ffc9","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/b6a32a71eaaa18c6b1e5bdceff4102607fdfeaba"},{"sha":"bef68fdadaa9a683d2489ae55088b071633da306","author":{"email":"efe9a872bcf008f3e03ada5660d40f3164417d62@google.com","name":"Martin von Zweigbergk"},"message":"localrepo.getbundle: drop unused 'format' argument\n\nThe 'format' argument was not used even when it was added in\n60ad2ea5b106 (getbundle: pass arbitrary arguments all along the call\nchain, 2014-04-17).\n\nNote that by removing the argument, if any caller did pass a named\n'format' argument, we will now pass that along to exchange.getbundle()\nvia the kwargs. If the idea was to remove such a key, that should have\nbeen done explicitly.\n\n--HG--\nextra : rebase_source : ab572eca8e15a904342275c0c8605541141945f6","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/bef68fdadaa9a683d2489ae55088b071633da306"},{"sha":"6f8f391e9e505580f43e0ccd7619f1ff1d604811","author":{"email":"4e23b39619ab6a738669bb49f44d4e3a649c3df3@fb.com","name":"Pierre-Yves David"},"message":"bundle20: move magic string into the class\n\nThis makes it easy to create a new bundler class that inherits from\nthe core one. This matches the way 'changegroup' packers work.\n\nThe main target is to allow HG2Y support in an extension to ease transition of\ncompanies using the experimental protocol in production (yeah...) But I've no\ndoubt this will be useful when playing with a future HG21.","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/6f8f391e9e505580f43e0ccd7619f1ff1d604811"},{"sha":"706c3f72c280d4d1a479b383f3ae611eb97d6267","author":{"email":"4e23b39619ab6a738669bb49f44d4e3a649c3df3@fb.com","name":"Pierre-Yves David"},"message":"unbundle20: retrieve unbundler instances through a factory function\n\nTo support multiple bundle2 formats, we will need a function returning\nthe proper unbundler according to the header. We introduce such aa\nfunction and change the usage in the code base. The function will get\nsmarter in later changesets.\n\nThis is somewhat similar to the dispatching we do for 'HG10' and 'HG11'.\n\nThe main target is to allow HG2Y support in an extension to ease transition of\ncompanies using the experimental protocol in production (yeah...) But I've no\ndoubt this will be useful when playing with a future HG21.","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/706c3f72c280d4d1a479b383f3ae611eb97d6267"},{"sha":"386e584b33fe5a8ec2f14f98c9d3da31e301a509","author":{"email":"4e23b39619ab6a738669bb49f44d4e3a649c3df3@fb.com","name":"Pierre-Yves David"},"message":"unbundle20: move header parsing into the 'getunbundler' function\n\nThe dispatching will be based on the header content, so we need to move this\nlogic into the factory function.","distinct":false,"url":"https://api.github.com/repos/dscho/hg/commits/386e584b33fe5a8ec2f14f98c9d3da31e301a509"}]}