view TODO @ 460:6409d9a0df43

add dirstate debugging commands -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 add dirstate debugging commands As I've played with various different merges and more recently rawcommit, I've found the following patch to be very very helpful in figuring out whether the dirstate is being left in a consistent or inconsistent state with respect to the current manifest. I attempted to deduce the invariants that were assumed by the current code, and then check it in this code. I may or may not have captured the design intent in this check; if not, I'd be very happy to hear more clearly what was intended, so that I can write tests to that expectation. Anyway, here's the patch. Not sure if it's a good idea to commit it to the mainline, or just leave it as a debugging aid. I attempted to package it so that it doesn't interfere with normal usage. Michael Fetterman (tweaked by mpm: remove -d magic) manifest hash: 869f5b5f954dc0f46ba27322359e811d5e21d71c -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCvP77ywK+sNU5EO8RArmtAKCCVuI2slANzWZ26P5edtH/ixdwNwCfZLWl 5P+V+C92II3usO4YW2MULKY= =/Pv4 -----END PGP SIGNATURE-----
author mpm@selenic.com
date Fri, 24 Jun 2005 22:51:39 -0800
parents d8d652c1f372
children 27f5569a5814 934279f3ca53
line wrap: on
line source

General:
- Better documentation
- More regression tests
- More specific try/except.
- less code duplication, more code in the right places
- python 2.2 support
- better import support
- export to git
- Add standard files: AUTHORS, CREDITS, ChangeLog? What else?
- Code cleanup: apply http://python.org/peps/pep-0008.html

Core:
- difflib creating/removing files (fixed except dates: should be epoch)
- directory foo.d or foo.i with existing file foo (use some quoting?)
- get various options from hgrc (e.g. history always -v, tip always -q)
- allow full decimal (part of) hash
  hg export 5005048662 -> OverflowError: long int too large to convert
  to int
- better push support (hack exists)
- hg over ssh://
- commit mailinglist/trigger/hooks

Commands:
- hg status <filename>: file rev, changeset rev, changed, added,
  deleted, sha-1
- select to pull a subset of the heads
- commands.py: number of args too much magic (e.g. in patch())
- automatic pull fallback to old-http://
- hg init|pull http://example.com doesn't say that no repo was found
- hg annotate -u and hgweb annotate with long $EMAIL
- hg -v history doesn't show tkmerge as modified (removed).
- hg pull default in a subdir doesn't work, if it is a relative path
- optionally only show merges (two parents or parent != changeset-1, etc.)

Web:
- show tags in hgweb
- show parent changeset number in hgweb
- optionally only show merges (two parents or parent != changeset-1, etc.)
- one hgweb with many repos (another script)
- hgweb tip link too verbose
- hgweb: deliver static files (e.g. favicon, stylesheets)
- hgweb personalization: timezone (display/change), display of
  features
- hg export 240 shows -tkmerge (good), hgweb does not (bad).
- some web servers think hgweb.cgi.[di] is a CGI script with old-http://
  (use quoting (see foo.d in Core) or document server configurations?)
- link children in hgweb