• S
    Include recent command history in fast-import crash reports · 904b1941
    Shawn O. Pearce 提交于
    When we crash the frontend developer (or end-user) may need to know
    roughly around what part of the input stream we had a problem with
    and aborted on.  Because line numbers aren't very useful in this
    sort of application we instead just keep the last 100 commands in
    a FIFO queue and print them as part of the crash report.
    
    Currently one problem with this design is a commit that has
    more than 100 modified files in it will flood the FIFO and any
    context regarding branch/from/committer/mark/comments will be lost.
    We really should save only the last few (10?) file changes for the
    current commit, ensuring we have some prior higher level commands
    in the FIFO when we crash on a file M/D/C/R command.
    
    Another issue with this approach is the FIFO only includes the
    commands, it does not include the commit messages.  Yet having a
    commit message may be useful to help locate the relevant change in
    the source material.  In practice I don't think this is going to be a
    major concern as the frontend can always embed its own source change
    set identifier as a comment (which will appear in the crash report)
    and the commit message(s) for the most recent commits of any given
    branch should be obtainable from the (packed) commit objects.
    Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
    904b1941
fast-import.c 58.8 KB