view tests/test-strict.t @ 16363:2cdd7e63211b

parsers: incrementally parse the revlog index in C We only parse entries in a revlog index file when they are actually needed, and cache them when first requested. This makes a huge difference to performance on large revlogs when accessing the tip revision or performing a handful of numeric lookups (very common cases). For instance, "hg --time tip --template {node}" on a tree with 300,000 revs takes 0.15 before, 0.02 after. Even for revlog-intensive operations (e.g. running "hg log" to completion), the lazy approach is about 1% faster than the eager parse_index2.
author Bryan O'Sullivan <bryano@fb.com>
date Thu, 05 Apr 2012 13:00:35 -0700
parents d0f2a89c8cfa
children 46e9ed223d2c
line wrap: on
line source

  $ hg init

  $ echo a > a
  $ hg ci -Ama
  adding a

  $ hg an a
  0: a

  $ echo "[ui]" >> $HGRCPATH
  $ echo "strict=True" >> $HGRCPATH

  $ hg an a
  hg: unknown command 'an'
  Mercurial Distributed SCM
  
  basic commands:
  
   add         add the specified files on the next commit
   annotate    show changeset information by line for each file
   clone       make a copy of an existing repository
   commit      commit the specified files or all outstanding changes
   diff        diff repository (or selected files)
   export      dump the header and diffs for one or more changesets
   forget      forget the specified files on the next commit
   init        create a new repository in the given directory
   log         show revision history of entire repository or files
   merge       merge working directory with another revision
   phase       set or show the current phase name
   pull        pull changes from the specified source
   push        push changes to the specified destination
   remove      remove the specified files on the next commit
   serve       start stand-alone webserver
   status      show changed files in the working directory
   summary     summarize working directory state
   update      update working directory (or switch revisions)
  
  use "hg help" for the full list of commands or "hg -v" for details
  [255]
  $ hg annotate a
  0: a

should succeed - up is an alias, not an abbreviation

  $ hg up
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved