Mercurial > hg4j
annotate TODO @ 709:497e697636fc
Report merged lines as changed block if possible, not as a sequence of added/deleted blocks. To facilitate access to merge parent lines AddBlock got mergeLineAt() method that reports index of the line in the second parent (if any), while insertedAt() has been changed to report index in the first parent always
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Wed, 21 Aug 2013 16:23:27 +0200 |
parents | b3c16d1aede0 |
children |
rev | line source |
---|---|
490
b3c16d1aede0
Refactoring: move HgRepository's implementation aspects to Internals (which is now its imlementation counterpart and primary repository class to be used by other parts of the library)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
434
diff
changeset
|
1 |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
2 Read-only support, version 1.0 |
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
3 ============================== |
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
4 Committed: |
91
c2ce1cfaeb9e
ignore file with regex and 'honest' glob support
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
83
diff
changeset
|
5 * store+fncache, RevlogNG (i.e. no support for older store formats) |
c2ce1cfaeb9e
ignore file with regex and 'honest' glob support
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
83
diff
changeset
|
6 |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
7 * hg log |
77
c677e1593919
Moved RevlogStream implementation into .internal
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
72
diff
changeset
|
8 + user, branch, limit |
c677e1593919
Moved RevlogStream implementation into .internal
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
72
diff
changeset
|
9 - date, |
c677e1593919
Moved RevlogStream implementation into .internal
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
72
diff
changeset
|
10 + filename |
83
a5275143664c
Complete path hash calculation of fncache requirement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
78
diff
changeset
|
11 + filename and follow history |
78
c25c5c348d1b
Skip metadata in the beginning of a file content. Parse metadata, recognize copies/renames
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
77
diff
changeset
|
12 |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
13 |
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
14 * hg manifest (aka ls) |
78
c25c5c348d1b
Skip metadata in the beginning of a file content. Parse metadata, recognize copies/renames
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
77
diff
changeset
|
15 |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
16 |
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
17 * hg status |
91
c2ce1cfaeb9e
ignore file with regex and 'honest' glob support
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
83
diff
changeset
|
18 + copies for [revision..revision] and for [revision..working dir] |
123
4f509f5bc8cb
reflect status change in the todo content
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
114
diff
changeset
|
19 + path or anything meaningful instead of Strings |
4f509f5bc8cb
reflect status change in the todo content
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
114
diff
changeset
|
20 + matchers |
78
c25c5c348d1b
Skip metadata in the beginning of a file content. Parse metadata, recognize copies/renames
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
77
diff
changeset
|
21 |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
22 * hg cat |
107 | 23 + CatCommand. File, revision. |
205
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
24 + Cat command line client |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
25 |
107 | 26 + hgignore |
91
c2ce1cfaeb9e
ignore file with regex and 'honest' glob support
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
83
diff
changeset
|
27 + glob |
c2ce1cfaeb9e
ignore file with regex and 'honest' glob support
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
83
diff
changeset
|
28 + pattern |
c2ce1cfaeb9e
ignore file with regex and 'honest' glob support
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
83
diff
changeset
|
29 |
109
dd4d2d0e42cd
Handler for StatusCommand to get notifications in the form of HgStatus object
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
107
diff
changeset
|
30 + Tests with JUnit |
205
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
31 + allow to specify repo location (system property) |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
32 + keep a .zip of repo along with tests |
107 | 33 |
34 * tags | |
35 * Tags are read and can be queried (cmdline Log does) | |
109
dd4d2d0e42cd
Handler for StatusCommand to get notifications in the form of HgStatus object
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
107
diff
changeset
|
36 |
114
46291ec605a0
Filters to read and initialize according to configuration files
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
112
diff
changeset
|
37 * keywords |
46291ec605a0
Filters to read and initialize according to configuration files
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
112
diff
changeset
|
38 + filter with context (HgRepository + Path + Direction (to/from repo) |
46291ec605a0
Filters to read and initialize according to configuration files
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
112
diff
changeset
|
39 - filters shall have weight (to allow certain filter come first). Would need that once FilterFactories are pluggable |
109
dd4d2d0e42cd
Handler for StatusCommand to get notifications in the form of HgStatus object
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
107
diff
changeset
|
40 |
114
46291ec605a0
Filters to read and initialize according to configuration files
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
112
diff
changeset
|
41 * newlines |
46291ec605a0
Filters to read and initialize according to configuration files
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
112
diff
changeset
|
42 + \r\n <==> \n |
123
4f509f5bc8cb
reflect status change in the todo content
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
114
diff
changeset
|
43 - force translation if inconsistent (now either fails or does nothing) |
109
dd4d2d0e42cd
Handler for StatusCommand to get notifications in the form of HgStatus object
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
107
diff
changeset
|
44 |
128
44b97930570c
Introduced ChangelogHelper to look up changesets files were modified in
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
123
diff
changeset
|
45 * API |
44b97930570c
Introduced ChangelogHelper to look up changesets files were modified in
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
123
diff
changeset
|
46 - CommandContext |
205
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
47 + Data access - not bytes, but ByteChannel |
129
645829962785
core.Cset renamed to HgChangeset; repo.Changeset moved into HgChangelog
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
128
diff
changeset
|
48 - HgRepository constants (TIP, BAD, WC) to HgRevisions enum |
128
44b97930570c
Introduced ChangelogHelper to look up changesets files were modified in
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
123
diff
changeset
|
49 |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
50 Proposed: |
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
51 - LogCommand.revision(int... rev)+ to walk selected revisions only (list->sort(array) on execute, binary search) |
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
52 - LogCommand.before(Date date) and .after() |
83
a5275143664c
Complete path hash calculation of fncache requirement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
78
diff
changeset
|
53 - LogCommand.match() to specify pattern, no selected file()s only? |
a5275143664c
Complete path hash calculation of fncache requirement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
78
diff
changeset
|
54 * RepositoryFacade and CommandContext |
91
c2ce1cfaeb9e
ignore file with regex and 'honest' glob support
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
83
diff
changeset
|
55 - hgignore: read extra ignore files from config file (ui.ignore) |
205
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
56 - Revlog iteration in reversed order (either support internally in RevlogStream or externally, windowed access) |
107 | 57 |
91
c2ce1cfaeb9e
ignore file with regex and 'honest' glob support
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
83
diff
changeset
|
58 |
380
9517df1ef7ec
Comments/javadoc
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
205
diff
changeset
|
59 RELEASE NOTES 1.0 |
9517df1ef7ec
Comments/javadoc
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
205
diff
changeset
|
60 * Known issues and limitations: |
434
7e1912b4ce99
Record few known issues while skimming through TODOs
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
380
diff
changeset
|
61 ** Configuration files listed under HKEY_LOCAL_MACHINE\SOFTWARE\Mercurial are not processed |
7e1912b4ce99
Record few known issues while skimming through TODOs
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
380
diff
changeset
|
62 ** %include and %unset directives in config files |
7e1912b4ce99
Record few known issues while skimming through TODOs
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
380
diff
changeset
|
63 ** additional locations of ignore configuration are not read/processed from ui.ignore.* |
7e1912b4ce99
Record few known issues while skimming through TODOs
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
380
diff
changeset
|
64 ** subrepositories and path mapping in cfg |
380
9517df1ef7ec
Comments/javadoc
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
205
diff
changeset
|
65 |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
66 Read-only support, version 1.1 |
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
67 ============================== |
72
9a03a80a0f2f
Command-line frontend moved to separate source root with new package statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
64
diff
changeset
|
68 Committed: |
205
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
69 * Network protocol/connections: |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
70 + http |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
71 * https (respects no certificates) |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
72 - ssh |
72
9a03a80a0f2f
Command-line frontend moved to separate source root with new package statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
64
diff
changeset
|
73 |
9a03a80a0f2f
Command-line frontend moved to separate source root with new package statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
64
diff
changeset
|
74 * incoming |
205
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
75 + 'lite' (revisions only) |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
76 + 'full' (complete changelog) |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
77 * branches (no tests) |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
78 - subrepositories |
64
19e9e220bf68
Convenient commands constitute hi-level API. org.tmatesoft namespace, GPL2 statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff
changeset
|
79 |
72
9a03a80a0f2f
Command-line frontend moved to separate source root with new package statement
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
64
diff
changeset
|
80 * outgoing |
205
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
81 + 'lite' (revisions only) |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
82 + 'full' (complete changelog access) |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
83 * branches (no tests) |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
84 - subrepositories |
128
44b97930570c
Introduced ChangelogHelper to look up changesets files were modified in
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
123
diff
changeset
|
85 |
205
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
86 * clone remote repo |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
87 + into new or empty directory |
ffc5f6d59f7e
HgLogCommand.Handler is used in few places, pull up to top-level class, HgChangesetHandler
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
136
diff
changeset
|
88 - populate working copy |