Thu, 05 Oct 2017 21:20:08 +0200 diff: also yield file context objects in patch.trydiff() (API)
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 05 Oct 2017 21:20:08 +0200] rev 34855
diff: also yield file context objects in patch.trydiff() (API) And retrieve them in patch.diffhunks(). We'll use these in forthcoming changesets to filter diff hunks by line range.
Wed, 04 Oct 2017 15:27:43 +0200 revset: extract a parsefollowlinespattern helper function
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 04 Oct 2017 15:27:43 +0200] rev 34854
revset: extract a parsefollowlinespattern helper function We'll need the same logic in forthcoming changeset to handle --line-range option in 'hg log' command. The function lives in scmutil.py (rather than util.py) as it uses match and pathutil modules.
Fri, 06 Oct 2017 17:53:36 +0200 obsfate: add obsfate to default mapfile
Boris Feld <boris.feld@octobus.net> [Fri, 06 Oct 2017 17:53:36 +0200] rev 34853
obsfate: add obsfate to default mapfile Use the verbosity aware template keyword introduced earlier. It has the nice property of being verbosity dependent but in order to customize the obsfate part, users will need to replace the lobsfate definition from default mapfile with the one using template functions (by copying the one from test-obsmarker- template.t for example). As it's a more advanced use-case, I'm more inclined to have the same code for the {obsfate} keyword, in the changeset printer and in the default mapfile for consistency. But, the definition in default mapfile could be replaced with one based on template filter to obsfate output customization if it is a big need for users.
Thu, 05 Oct 2017 15:25:18 +0200 log: add obsfate by default in changeset printer
Boris Feld <boris.feld@octobus.net> [Thu, 05 Oct 2017 15:25:18 +0200] rev 34852
log: add obsfate by default in changeset printer Having an obsfate by default in log will be useful for users to understand why they have obsolete and unstable changesets. Obsfate will only be shown for obsolete changesets, which only happens if people opt-in to experimental feature. But when obsolete changeset are visible, it is very useful to understand where they are. Having it in log could be sufficient for most people, so they don't have to learn a new command (like obslog which is itself useful in case of divergences). For example, when pulling and working directory parent become obsolete: $ hg pull ... working directory parent is obsolete! (f936c1697205) This message comes from the Evolve extension. Obsfate would comes handy: $ hg log -G o changeset: 2:6f91013c5136 | tag: tip | parent: 0:4ef7b558f3ec | user: Boris Feld <boris.feld@octobus.net> | date: Mon Oct 09 16:00:27 2017 +0200 | summary: A | | @ changeset: 1:f936c1697205 |/ user: Boris Feld <boris.feld@octobus.net> | date: Mon Oct 09 16:00:27 2017 +0200 | obsfate: rewritten using amend as 2:6f91013c5136 | summary: -A | o changeset: 0:feb4dd822b8c user: Boris Feld <boris.feld@octobus.net> date: Tue Oct 09 16:00:00 2017 +0200 summary: ROOT And once we update, we don't have an obsolete changeset in the log anymore so we don't show obsfate anymore, most users won't see obsfate often if they don't have obsolete changeset often: @ changeset: 2:6f91013c5136 | tag: tip | parent: 0:4ef7b558f3ec | user: Boris Feld <boris.feld@octobus.net> | date: Mon Oct 09 16:00:27 2017 +0200 | summary: A | o changeset: 0:feb4dd822b8c user: Boris Feld <boris.feld@octobus.net> date: Tue Oct 09 16:00:00 2017 +0200 summary: ROOT
Mon, 09 Oct 2017 15:34:26 +0200 obsfate: only display date in verbose mode
Boris Feld <boris.feld@octobus.net> [Mon, 09 Oct 2017 15:34:26 +0200] rev 34851
obsfate: only display date in verbose mode The date is also not that helpful in most cases but we show it in verbose mode.
Mon, 09 Oct 2017 15:34:12 +0200 obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net> [Mon, 09 Oct 2017 15:34:12 +0200] rev 34850
obsfate: filter out current user if not in verbose Obsolescence is sometimes used only locally so the obs-marker users is always the same. Showing the user in this case does not bring much values. In the case where multiple users rewrite the commit, display the full list of users. Also show all users in verbose mode.
Fri, 06 Oct 2017 16:23:47 +0200 ui: add the possibility to returns None as username in ui
Boris Feld <boris.feld@octobus.net> [Fri, 06 Oct 2017 16:23:47 +0200] rev 34849
ui: add the possibility to returns None as username in ui In a later patch we want to retrieve the current username or None if it isn't defined. Add the acceptempty parameter instead of catching Abort.
(0) -30000 -10000 -3000 -1000 -300 -100 -30 -10 -7 +7 +10 +30 +100 +300 +1000 +3000 +10000 tip