Mercurial > jhg
comparison design.txt @ 93:d55d4eedfc57
Switch to Path instead of String in filenames returned by various status operations
| author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
|---|---|
| date | Thu, 27 Jan 2011 21:15:21 +0100 |
| parents | 08754fce5778 |
| children | 44b97930570c |
comparison
equal
deleted
inserted
replaced
| 92:bf304cb14247 | 93:d55d4eedfc57 |
|---|---|
| 40 | 40 |
| 41 delta merge | 41 delta merge |
| 42 DataAccess - collect debug info (buffer misses, file size/total read operations) to find out better strategy to buffer size detection. Compare performance. | 42 DataAccess - collect debug info (buffer misses, file size/total read operations) to find out better strategy to buffer size detection. Compare performance. |
| 43 | 43 |
| 44 Strip off metadata from beg of the stream - DataAccess (with rebase/moveBaseOffset(int)) would be handy | 44 Strip off metadata from beg of the stream - DataAccess (with rebase/moveBaseOffset(int)) would be handy |
| 45 Parameterize StatusCollector to produce copy only when needed. And HgDataFile.metadata perhaps should be moved to cacheable place? | |
| 45 | 46 |
| 46 Status operation from GUI - guess, usually on a file/subfolder, hence API should allow for starting path (unlike cmdline, seems useless to implement include/exclide patterns - GUI users hardly enter them, ever) | 47 Status operation from GUI - guess, usually on a file/subfolder, hence API should allow for starting path (unlike cmdline, seems useless to implement include/exclide patterns - GUI users hardly enter them, ever) |
| 47 -> recently introduced FileWalker may perhaps help solving this (if starts walking from selected folder) for status op against WorkingDir? | 48 -> recently introduced FileWalker may perhaps help solving this (if starts walking from selected folder) for status op against WorkingDir? |
| 48 | 49 |
| 49 ? Can I use fncache (names from it - perhaps, would help for Mac issues Alex mentioned) | 50 ? Can I use fncache (names from it - perhaps, would help for Mac issues Alex mentioned) |
| 54 changes repository, hence manifest should update nodeids of the files it lists, effectively creating new manifest revision. | 55 changes repository, hence manifest should update nodeids of the files it lists, effectively creating new manifest revision. |
| 55 | 56 |
| 56 ? hg status, compare revision and local file with kw expansion and eol extension | 57 ? hg status, compare revision and local file with kw expansion and eol extension |
| 57 ? subrepos in log, status (-S) and manifest commands | 58 ? subrepos in log, status (-S) and manifest commands |
| 58 | 59 |
| 60 | |
| 59 Commands to get CommandContext where they may share various caches (e.g. StatusCollector) | 61 Commands to get CommandContext where they may share various caches (e.g. StatusCollector) |
| 62 Perhaps, abstract classes for all Inspectors (i.e. StatusCollector.Inspector) for users to use as base classes to protect from change? | |
| 60 | 63 |
| 61 >>>> Effective file read/data access | 64 >>>> Effective file read/data access |
| 62 ReadOperation, Revlog does: repo.getFileSystem().run(this.file, new ReadOperation(), long start=0, long end = -1) | 65 ReadOperation, Revlog does: repo.getFileSystem().run(this.file, new ReadOperation(), long start=0, long end = -1) |
| 63 ReadOperation gets buffer (of whatever size, as decided by FS impl), parses it and then reports if needs more data. | 66 ReadOperation gets buffer (of whatever size, as decided by FS impl), parses it and then reports if needs more data. |
| 64 This helps to ensure streams are closed after reading, allows caching (if the same file (or LRU) is read few times in sequence) | 67 This helps to ensure streams are closed after reading, allows caching (if the same file (or LRU) is read few times in sequence) |
