log

age author description
Mon, 05 Aug 2013 17:42:10 +0200 Artem Tikhomirov Speed up (a) file rename history to minimize file reads; (b) file.isCopy(int) to read metadata for few revisions at once (use pattern assumes earlier revisions are likely to be queried, too); (c) HgIgnore.isIgnored by caching matched initial fragments (to substitute more expensive Matcher.matches with cheaper HashMap.contains)
Mon, 05 Aug 2013 12:45:36 +0200 Artem Tikhomirov Fix file.isCopy() use for Log/History command. File revisions originating from another file list no parents even in the middle of revision chain
Sat, 03 Aug 2013 17:11:33 +0200 Artem Tikhomirov Refactor HgLogCommand to utilize correct file.isCopy(int)
Fri, 02 Aug 2013 23:07:23 +0200 Artem Tikhomirov Fix file.isCopy() for blame/annotate. Refactor status and blame to use newly introduced FileHistory helper that builds file rename history
Thu, 01 Aug 2013 21:45:47 +0200 Artem Tikhomirov Fix file.isCopy() use for status and cat commands
Sat, 27 Jul 2013 22:06:14 +0200 Artem Tikhomirov Issue 44: Renames/copies other than for the very first revision of a file are not recognized
Sat, 27 Jul 2013 20:15:37 +0200 Artem Tikhomirov Defect: copies are not reported with default settings (not even as added!). Parameter needCopies removed as there seems to be no reason to condition copies for hi-level api (HgStatus.isCopy() is way down the road)
Sat, 27 Jul 2013 18:34:14 +0200 Artem Tikhomirov Towards ssh remote repositories: refactor HgRemoteRepository - move http related code to HttpConnector
Thu, 25 Jul 2013 22:12:14 +0200 Artem Tikhomirov Annotated file is not always changed in the latest changeset, need to find out last changest it was changed at (iow, diffed to with BlameHelper)
Thu, 25 Jul 2013 21:32:09 +0200 Artem Tikhomirov Towards ssh remote repositories: use ganymed library for ssh transport
Thu, 25 Jul 2013 21:31:23 +0200 Artem Tikhomirov Full text of GPL 2.0 in COPYING as http://www.gnu.org/licenses/gpl-howto.html suggests
Wed, 24 Jul 2013 16:40:15 +0200 Artem Tikhomirov Update commands to use changeset Nodeid and int in uniform way, clients of core.* classes shall not go back and forth from int to Nodeid
Mon, 22 Jul 2013 22:47:06 +0200 Artem Tikhomirov Compile with Java5, ensure generics are fine for other compilers, too
Sun, 21 Jul 2013 17:48:05 +0200 Artem Tikhomirov Do not instantiate thousands of small arrays(numerous readInt/readLong calls)
Sun, 21 Jul 2013 17:15:34 +0200 Artem Tikhomirov Blame: alternative strategy to handle merge revisions: map(diff(p1->base->p2)) to understand merge intentions better
Sat, 20 Jul 2013 17:40:52 +0200 Artem Tikhomirov HgParentChildMap: deduce common ancestor functionality
Fri, 19 Jul 2013 15:36:29 +0200 Artem Tikhomirov Towards better blame of merge revisions: refactor merge handling strategy
Thu, 18 Jul 2013 18:47:45 +0200 Artem Tikhomirov Report line number at the first appearance, like 'hg annotate -l' does
Thu, 18 Jul 2013 18:03:51 +0200 Artem Tikhomirov Switch to alternative annotate producer (walks from parents to children). Refactor FileAnnotation to match updated annotate approach
Thu, 18 Jul 2013 18:02:36 +0200 Artem Tikhomirov Respect default range (0..tip)
Wed, 17 Jul 2013 15:40:51 +0200 Artem Tikhomirov Introduced dedicated IntSliceSeq/IntTuple in place of IntArray with subsequences
Fri, 12 Jul 2013 20:14:24 +0200 Artem Tikhomirov Refactor HgBundle.GroupElement (clear experimental mark), resolve few technical debt issues
Fri, 12 Jul 2013 16:29:06 +0200 Artem Tikhomirov Effective update of HgParentChildMap when repository got few revisions added
Fri, 12 Jul 2013 15:29:37 +0200 Artem Tikhomirov AIOOBE in BundleGenerator.ChunkGenerator.iterate when there are no outgoing changes on push
Fri, 12 Jul 2013 15:27:43 +0200 Artem Tikhomirov AIOOBE in BundleGenerator.ChunkGenerator.iterate when there are no outgoing changes on push
Thu, 11 Jul 2013 20:49:33 +0200 Artem Tikhomirov Pull: sample command-line utility
Thu, 11 Jul 2013 18:41:40 +0200 Artem Tikhomirov Delete bundle with push/pull changes once command completes successfully. Test for bundle generator
Thu, 11 Jul 2013 17:54:08 +0200 Artem Tikhomirov Refactoring: move all encoding/decoding operations into single place, EncodingHelper
Wed, 10 Jul 2013 20:22:07 +0200 Artem Tikhomirov Added tag v1.2m1 for changeset dde18bc7053b
Wed, 10 Jul 2013 20:16:37 +0200 Artem Tikhomirov Test Copy-on-Write transactions v1.2m1
Wed, 10 Jul 2013 19:33:51 +0200 Artem Tikhomirov Utilize transaction when writing fncache. Better HgIOException
Wed, 10 Jul 2013 16:41:49 +0200 Artem Tikhomirov Pull: phase2 - update phases from remote, fncache with added files. Tests
Wed, 10 Jul 2013 11:53:19 +0200 Artem Tikhomirov Merge branch smartgit-4.6
Wed, 10 Jul 2013 11:48:55 +0200 Artem Tikhomirov Merge branch smartgit-4.5 (no actual changes, merely to denote branch is inactive
Tue, 09 Jul 2013 21:46:45 +0200 Artem Tikhomirov Pull: phase1 get remote changes and add local revisions
Fri, 05 Jul 2013 20:42:45 +0200 Artem Tikhomirov Poor performance when reading/collecting branch information. Respect new cache location for recent mercurial revisions. Use different algorithm to build branch cache smartgit-4.6
Thu, 04 Jul 2013 21:09:33 +0200 Artem Tikhomirov javac complained about casts, while eclipse compiler is fine
Thu, 04 Jul 2013 20:27:45 +0200 Artem Tikhomirov ParentChildMap can supply RevisionMap. Refactor ArrayHelper to keep most of sorted/reverse index magic inside
Thu, 04 Jul 2013 18:40:03 +0200 Artem Tikhomirov Performance: rebuild information about branches takes too long (my improvement: 3 times, 11-15 s to less than 4 sec)
Thu, 04 Jul 2013 18:36:38 +0200 Artem Tikhomirov Performance: reuse unzip output buffer
Wed, 03 Jul 2013 15:11:40 +0200 Artem Tikhomirov 1) Console push tool. 2) Pass class to blame into FileUtils
Wed, 03 Jul 2013 14:38:30 +0200 Artem Tikhomirov Tests for recent changes in HgParentChildMap and RepositoryComparator (outgoing to respect drafts and Issue 47)
Tue, 02 Jul 2013 23:21:16 +0200 Artem Tikhomirov Push: tests. Commit respects phases.new-commit setting. Fix outgoing when changes are not children of common (Issue 47)
Mon, 01 Jul 2013 21:19:53 +0200 Artem Tikhomirov Push: tests (push to empty, push changes, respect secret)
Fri, 28 Jun 2013 19:27:26 +0200 Artem Tikhomirov Push: phase4 - settle local and remote phases, push updated phases regardless of server publishing state, do not push secret changesets
Wed, 26 Jun 2013 20:52:38 +0200 Artem Tikhomirov Push: phase4 - update local and remote phase information
Tue, 25 Jun 2013 20:48:37 +0200 Artem Tikhomirov Introduced RevisionSet to ease update of phase roots on push
Tue, 25 Jun 2013 18:53:18 +0200 Artem Tikhomirov Location of repository files as enumeration, use file constants instead of plain names
Fri, 21 Jun 2013 18:30:35 +0200 Artem Tikhomirov Push: phase3 - update matching remote bookmarks
Thu, 20 Jun 2013 19:15:09 +0200 Artem Tikhomirov Push: phase2 - upload bundle with changes to remote server
Wed, 19 Jun 2013 16:04:24 +0200 Artem Tikhomirov Push: phase1 - prepare bundle with changes
Wed, 19 Jun 2013 16:03:11 +0200 Artem Tikhomirov v1.2 line of dev: update versions, use patch merge code by default
Tue, 11 Jun 2013 16:32:12 +0200 Artem Tikhomirov Added tag v1.1.0 for changeset 2f33f102a8fa
Tue, 11 Jun 2013 16:31:42 +0200 Artem Tikhomirov Updated copyright year v1.1.0
Tue, 11 Jun 2013 16:25:01 +0200 Artem Tikhomirov Deprecated code removed
Thu, 06 Jun 2013 14:21:11 +0200 Artem Tikhomirov Issue 46: Files with backslashes (legal on Linux) cause troubles smartgit-4.5
Fri, 07 Jun 2013 13:21:20 +0200 Artem Tikhomirov AIOOBE in HgManifest.RevisionMapper: provide more details about exception context. Create lock file atomically. Picked from changeset 8a5cdcb27b8f smartgit-4.5
Fri, 07 Jun 2013 12:32:15 +0200 Artem Tikhomirov HgInitCommand: expose repo init functionality
Thu, 06 Jun 2013 19:39:06 +0200 Artem Tikhomirov HgCommitCommand: save last commit message
Thu, 06 Jun 2013 18:42:38 +0200 Artem Tikhomirov Compound test scenario for checkout, add, remove, revert and commit
Thu, 06 Jun 2013 14:21:11 +0200 Artem Tikhomirov Issue 46: Files with backslashes (legal on Linux) cause troubles
Thu, 30 May 2013 16:14:46 +0200 Artem Tikhomirov Added tag v1.1rc2 for changeset 54e16ab771ec
Thu, 30 May 2013 16:13:43 +0200 Artem Tikhomirov Progress/cancel for HgDiffCommand. Renamed execute method v1.1rc2
Thu, 30 May 2013 15:24:17 +0200 Artem Tikhomirov AIOOBE in HgManifest.RevisionMapper. Provide more details about exception context. Create lock file atomically. Test concurrent pull-rebase and read
Thu, 23 May 2013 19:44:28 +0200 Artem Tikhomirov HgDiffCommand. Do not use deprecated code. Javadoc
Wed, 22 May 2013 16:46:15 +0200 Artem Tikhomirov Diff/blame methods as command, their residence in HgDataFile was a mistake
Wed, 22 May 2013 15:52:31 +0200 Artem Tikhomirov Explicit HgRuntimeException to facilitate easy switch from runtime to checked exceptions
Tue, 21 May 2013 20:17:33 +0200 Artem Tikhomirov Added tag v1.1rc1 for changeset 5afc7eedb3dd
Tue, 21 May 2013 19:30:12 +0200 Artem Tikhomirov @since, TODOs. Tests: add 1 sec to deal with fs timestamp granularity on linux v1.1rc1
Tue, 21 May 2013 17:24:22 +0200 Artem Tikhomirov Refactor internals of blame support, tests
Mon, 20 May 2013 20:34:33 +0200 Artem Tikhomirov FIXMEs and TODOs: pay some technical debt
Mon, 20 May 2013 18:35:13 +0200 Artem Tikhomirov Update tests for Windows; TestCommit: use copy of a repo (not clone) to preserve old timestamps
Mon, 20 May 2013 16:56:40 +0200 Artem Tikhomirov Update to comply with Java 1.5 target
Sat, 18 May 2013 22:23:57 +0200 Artem Tikhomirov RevlogStream: be aware of existence (not HgDataFile), facilitate use of an added HgDataFile over a commit; Rollback: be more sensitive about file changes (file size is not enough: write/rollback leaves it intact); tests
Sat, 18 May 2013 21:55:31 +0200 Artem Tikhomirov Do not cache branch value of working copy as it's not possible to refresh it after commit now
Fri, 17 May 2013 22:04:23 +0200 Artem Tikhomirov Close FIS, not FileChannel, to clear both references to FileDescriptor right away
Thu, 16 May 2013 19:46:13 +0200 Artem Tikhomirov Refactor approach how content finds it way down to a commit revision
Wed, 15 May 2013 20:10:09 +0200 Artem Tikhomirov Rollback support for commands that modify repository. Strategy to keep complete copy of a file being changed
Tue, 14 May 2013 17:31:35 +0200 Artem Tikhomirov encode directories as demanded by fncache format
Mon, 13 May 2013 22:48:29 +0200 Artem Tikhomirov Test for repository locks
Fri, 10 May 2013 17:31:54 +0200 Artem Tikhomirov Added tag v1.1m4 for changeset f41dd9a3b8af
Fri, 10 May 2013 17:31:27 +0200 Artem Tikhomirov Remove few Experimental annotations as the API they've marked graduates v1.1m4
Fri, 10 May 2013 14:29:35 +0200 Artem Tikhomirov Test tags, branches and hgingore information get refreshed on external (and/or internal) change
Thu, 09 May 2013 21:52:01 +0200 Artem Tikhomirov Tests for tailored sections in HgRepoConfig
Thu, 09 May 2013 21:06:48 +0200 Artem Tikhomirov Refresh tags, branches, bookmarks and ignore when their files (or csets in the repo) are changed
Wed, 08 May 2013 17:11:45 +0200 Artem Tikhomirov Test TODOs: test for ConfigFile (covering %include and %unset directives)
Tue, 07 May 2013 21:27:51 +0200 Artem Tikhomirov Clean, organize and resolve some TODOs and FIXMEs: minor refactorings and comments
Tue, 07 May 2013 16:52:46 +0200 Artem Tikhomirov Refresh revlogs if a change to a file has been detected; do not force reload of the whole repository
Tue, 07 May 2013 14:16:35 +0200 Artem Tikhomirov Avoid mmap files when only few bytes are to be read
Mon, 06 May 2013 20:28:21 +0200 Artem Tikhomirov Commit: update active bookmark with new revision
Mon, 06 May 2013 18:53:04 +0200 Artem Tikhomirov Use nodeid reverse lookup speedup cache for #isKnown, if available
Mon, 06 May 2013 18:29:57 +0200 Artem Tikhomirov Refactor HgBlameFacility: relevant action methods moved to proper home (HgDataFile), as facility doesn't provide anything but packaging of relevant methods/interfaces
Mon, 06 May 2013 17:11:29 +0200 Artem Tikhomirov Refactor metadata parsing in HgDataFile, moved to standalone class
Mon, 06 May 2013 17:10:46 +0200 Artem Tikhomirov Remove debug timestamps
Fri, 03 May 2013 17:03:31 +0200 Artem Tikhomirov Utilize RevisionLookup to speed-up getRevisionIndex of both manifest and changelog
Fri, 03 May 2013 15:29:26 +0200 Artem Tikhomirov Do not instantiate intermediate arrays
Fri, 03 May 2013 15:19:18 +0200 Artem Tikhomirov Utilize the fact nodeids are very different and are read anyway to speed up reverse lookup
Fri, 03 May 2013 14:10:40 +0200 Artem Tikhomirov Wrap manifest revision map completion into single file access
Thu, 02 May 2013 19:23:53 +0200 Artem Tikhomirov HgBlameFacility refactoring: extract code to build file history that spans renames
Thu, 02 May 2013 19:23:35 +0200 Artem Tikhomirov Filter shall notify delegate about reset, too
Thu, 02 May 2013 19:22:43 +0200 Artem Tikhomirov Cache only in-memory revision representations
Thu, 02 May 2013 16:51:02 +0200 Artem Tikhomirov Share last revision read between #iterate() invocations, to save revision rebuild efforts when few subsequent revisions are read
Wed, 01 May 2013 14:03:10 +0200 Artem Tikhomirov Command-line sample for commit command
Tue, 30 Apr 2013 18:55:42 +0200 Artem Tikhomirov CommitFacility as internal class; refactored infrastructure around internals (access to RevlogStream)
Mon, 29 Apr 2013 17:04:51 +0200 Artem Tikhomirov Use requested encoding in LineReader
Mon, 29 Apr 2013 17:02:30 +0200 Artem Tikhomirov Username in changeset uses UTF-8, not system encoding
Mon, 29 Apr 2013 16:37:57 +0200 Artem Tikhomirov Update dirstate after commit
Fri, 26 Apr 2013 20:04:17 +0200 Artem Tikhomirov Minimize vectors re-allocating when merging patches
Fri, 26 Apr 2013 18:38:41 +0200 Artem Tikhomirov HgCommitCommand initial support
Thu, 25 Apr 2013 17:53:44 +0200 Artem Tikhomirov Access to base revision filed comes handy for debug sometimes
Thu, 25 Apr 2013 16:08:17 +0200 Artem Tikhomirov Conditionally enable effective patch merge alternative for revlog reading
Wed, 24 Apr 2013 15:39:53 +0200 Artem Tikhomirov Effective revlog patching