mercurial/HGCommandParser.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 01 Feb 2013 12:02:22 +0000
changeset 210 54a73fa50d40
parent 180 7b70d26f28da
child 214 175e450bb8dd
permissions -rw-r--r--
Added copyright notice.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
210
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     1
"
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     2
 COPYRIGHT (c) 2012-2013 by Jan Vrany
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     3
              All Rights Reserved
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     4
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     5
 This software is furnished under a license and may be used
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     6
 only in accordance with the terms of that license and with the
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     8
 be provided or otherwise made available to, or used by, any
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
     9
 other person.  No title to or ownership of the software is
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    10
 hereby transferred.
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    11
"
34
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    12
"{ Package: 'stx:libscm/mercurial' }"
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    13
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    14
Object subclass:#HGCommandParser
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    15
	instanceVariableNames:'stream'
34
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    16
	classVariableNames:''
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    17
	poolDictionaries:''
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    18
	category:'SCM-Mercurial-Internal'
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    19
!
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    20
210
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    21
!HGCommandParser class methodsFor:'documentation'!
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    22
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    23
copyright
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    24
"
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    25
 COPYRIGHT (c) 2012-2013 by Jan Vrany
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    26
              All Rights Reserved
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    27
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    28
 This software is furnished under a license and may be used
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    29
 only in accordance with the terms of that license and with the
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    30
 inclusion of the above copyright notice.   This software may not
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    31
 be provided or otherwise made available to, or used by, any
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    32
 other person.  No title to or ownership of the software is
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    33
 hereby transferred.
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    34
"
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
    35
! !
34
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
    36
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    37
!HGCommandParser class methodsFor:'instance creation'!
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    38
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    39
on: aStringOrStream
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    40
    | stream |
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    41
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    42
    stream := aStringOrStream isStream 
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    43
                ifTrue:[aStringOrStream]
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    44
                ifFalse:[aStringOrStream readStream].
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    45
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    46
    ^self new stream: stream
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    47
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    48
    "Created: / 23-10-2012 / 11:07:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    49
    "Modified: / 13-11-2012 / 16:36:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    50
! !
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    51
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    52
!HGCommandParser class methodsFor:'templates'!
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    53
106
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
    54
templateHeads
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
    55
    ^'{rev}:{node}\n'
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
    56
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
    57
    "Created: / 27-11-2012 / 21:25:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
    58
!
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
    59
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    60
templateLog
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    61
    ^
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    62
'{rev}:{node}
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    63
{branch}
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    64
{parents}
137
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
    65
135
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
    66
{file_adds}
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
    67
{file_copies}
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
    68
{file_dels}
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
    69
{file_mods}
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    70
{author}
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    71
{date|isodate}
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    72
{desc}
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    73
**EOE**
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
    74
'
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    75
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
    76
    "Created: / 12-11-2012 / 23:06:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
137
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
    77
    "Modified: / 05-12-2012 / 23:32:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
    78
!
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
    79
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
    80
templateLogChildren
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
    81
    ^'{rev}:{node}\n{children}\n'
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
    82
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
    83
    "Created: / 05-12-2012 / 23:40:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
136
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
    84
!
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
    85
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
    86
templateLogFile
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
    87
    ^'{rev}:{node}\n'
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
    88
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
    89
    "Created: / 05-12-2012 / 19:10:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    90
! !
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    91
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    92
!HGCommandParser methodsFor:'accessing'!
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    93
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    94
stream
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    95
    ^ stream
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    96
!
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    97
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    98
stream:something
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
    99
    stream := something.
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   100
! !
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   101
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   102
!HGCommandParser methodsFor:'error reporting'!
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   103
51
61700cf82743 - HGCommandParser
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 40
diff changeset
   104
error: aString
61700cf82743 - HGCommandParser
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 40
diff changeset
   105
    <context: #return>
61700cf82743 - HGCommandParser
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 40
diff changeset
   106
    <resource: #skipInDebuggersWalkBack>
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   107
51
61700cf82743 - HGCommandParser
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 40
diff changeset
   108
    HGCommandParseError raiseWith:#error: errorString:aString
61700cf82743 - HGCommandParser
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 40
diff changeset
   109
61700cf82743 - HGCommandParser
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 40
diff changeset
   110
    "Created: / 14-11-2012 / 19:59:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   111
! !
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   112
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   113
!HGCommandParser methodsFor:'parsing'!
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   114
105
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   115
parseBranches
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   116
    "Parse output of 'hg branches' command. Return collection
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   117
     of orphaned HGBranch"
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   118
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   119
    | branches |
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   120
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   121
    branches := OrderedCollection new.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   122
    [ stream atEnd ] whileFalse:[
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   123
        branches add: self parseBranchesEntry
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   124
    ].
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   125
    ^branches
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   126
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   127
    "Created: / 27-11-2012 / 20:20:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   128
!
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   129
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   130
parseBranchesEntry
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   131
    | branch |
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   132
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   133
    branch := HGBranch new.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   134
    branch setName: self parseName.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   135
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   136
    stream skipSeparators.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   137
    self parseNodeId.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   138
    stream peek == Character space ifTrue:[
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   139
        stream next.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   140
        stream peek == $( ifFalse:[self error:'''('' expected but ''' , stream peek , ''' found'].
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   141
        stream next.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   142
        stream peek == $i ifTrue:[
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   143
            self expect:'inactive)'.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   144
            branch setActive: false.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   145
        ] ifFalse:[
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   146
            stream peek == $c ifTrue:[
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   147
                self expect:'closed)'.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   148
                branch setClosed: true.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   149
            ] ifFalse:[
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   150
                self error:'Unexpected branch attribute (only ''closed'' and ''inactive'' supported)'''
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   151
            ]
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   152
        ].
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   153
    ].
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   154
    self expectLineEnd.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   155
    ^branch
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   156
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   157
    "Created: / 27-11-2012 / 19:23:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   158
!
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   159
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   160
parseConfig
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   161
    "Parse output of 'hg showconfig' command, assuming the template given
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   162
     was HGCommandParser templateLog. Return a list of HGChangeset."
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   163
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   164
    | root |
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   165
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   166
    root := HGConfig::Section new setName: '<root>'.
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   167
    [ stream atEnd ] whileFalse:[
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   168
        self parseConfigEntryInto: root.
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   169
    ].
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   170
    ^root
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   171
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   172
    "Created: / 06-12-2012 / 16:00:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   173
    "Modified: / 06-12-2012 / 19:59:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   174
!
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   175
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   176
parseConfigEntryInto: root
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   177
    | entry out |
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   178
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   179
    entry := root.
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   180
    out := String new writeStream.
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   181
    [ stream atEnd or:[stream peek == $=] ] whileFalse:[
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   182
        stream peek == $. ifTrue:[
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   183
            entry := entry at: out contents ifAbsentPut: [
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   184
                HGConfig::Section new setName: out contents.
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   185
            ].
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   186
            out reset.
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   187
            stream next.
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   188
        ] ifFalse:[
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   189
            out nextPut: stream next.
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   190
        ].
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   191
    ].
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   192
    stream next.
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   193
    entry at: out contents put:
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   194
        (HGConfig::Entry new setName: out contents value:stream nextLine)
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   195
145
1b8652185a8f Added HGRepository>>config.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 142
diff changeset
   196
    "Created: / 06-12-2012 / 19:41:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   197
!
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   198
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   199
parseDate
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   200
    | ts |
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   201
    ts := Timestamp readIso8601FormatFrom:stream.
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   202
    (stream peek == $+ or:[stream peek == $-]) ifFalse:[
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   203
        self error:'Timezone expected, ' , stream peek , ' found'
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   204
    ].
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   205
    stream next.
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   206
    4 timesRepeat:[
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   207
        ('0123456789' includes: stream peek) ifFalse:[
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   208
            self error:'Timezone expected, ' , stream peek , ' found'
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   209
        ].
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   210
        stream next.
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   211
    ].
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   212
    ^ts
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   213
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   214
    "Created: / 13-11-2012 / 10:22:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   215
    "Modified: / 13-11-2012 / 17:28:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   216
!
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   217
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   218
parseInteger
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   219
    "Parses integer from stream and returns it"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   220
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   221
    ^Integer readFrom: stream onError:[self error: 'integer value expected']
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   222
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   223
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   224
    (HGCommandParser on: '12 34' readStream) parseInteger; skipSeparators; parseInteger
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   225
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   226
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   227
    "Created: / 19-11-2012 / 20:05:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   228
!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   229
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   230
parseLog
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   231
    "Parse output of 'hg log' command, assuming the template given
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   232
     was HGCommandParser templateLog. Return a list of HGRevision."
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   233
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   234
    | revs |
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   235
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   236
    revs := OrderedCollection new.
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   237
    [ stream atEnd ] whileFalse:[
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   238
        | rev |
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   239
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   240
        rev := self parseLogEntry.
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   241
        revs add: rev.
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   242
    ].
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   243
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   244
    ^revs.
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   245
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   246
    "Created: / 13-11-2012 / 09:46:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   247
!
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   248
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   249
parseLogEntry
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   250
    "Parse single revision entry, assuming the template given
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   251
     was HGCommandParser templateLog. Return a HGRevision."
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   252
135
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   253
    | rev branches line message adds copies deletions modifications |
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   254
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   255
    rev := HGChangeset new.
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   256
    rev setId: self parseNodeId. self expectLineEnd.
105
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   257
    branches := self parseNameList. self expectLineEnd.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   258
    rev setBranches: branches.
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   259
    rev setParent1Id: self parseNodeId. self expectSpace.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   260
    rev setParent2Id: self parseNodeId. self expectSpace. self expectLineEnd.
137
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   261
    "rev setChildren: self parseNodeIdList." self expectLineEnd.
135
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   262
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   263
    adds := self parsePathList. self expectLineEnd.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   264
    copies := self parsePathCopyList. self expectLineEnd.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   265
    deletions := self parsePathList. self expectLineEnd.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   266
    modifications := self parsePathList. self expectLineEnd.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   267
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   268
    copies pairsDo:[:dst :src|
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   269
        adds remove: dst.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   270
        deletions remove: src.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   271
    ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   272
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   273
    adds := adds collect:[:e|HGChange newAdded setChangeset: rev path: e].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   274
    copies := copies collect:[:e|HGChange newCopied setChangeset: rev path: e first; setSource: e second].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   275
    deletions := deletions collect:[:e|HGChange newRemoved setChangeset: rev path: e].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   276
    modifications := modifications collect:[:e|HGChange newModified setChangeset: rev path: e].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   277
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   278
    rev setChanges: modifications , adds , deletions , copies.
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   279
    rev setAuthor: self nextLine.
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   280
    rev setTimestamp: self parseDate. self expectLineEnd.
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   281
    message := String streamContents:[:s|
93
2579830f6b61 Tests fixed. Not-yet-supported tests marked as skipped.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   282
        line := self nextLine.
2579830f6b61 Tests fixed. Not-yet-supported tests marked as skipped.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   283
        s nextPutAll: line.
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   284
        [ line := self nextLine . line = '**EOE**' ] whileFalse:[
93
2579830f6b61 Tests fixed. Not-yet-supported tests marked as skipped.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   285
            s cr.
2579830f6b61 Tests fixed. Not-yet-supported tests marked as skipped.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   286
            s nextPutAll: line
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   287
        ].
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   288
    ].
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   289
    rev setMessage: message.
165
4f6432cf4240 Added support for lazy changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   290
    rev setNonLazy.
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   291
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   292
    ^rev
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   293
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   294
    "Created: / 13-11-2012 / 09:45:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
165
4f6432cf4240 Added support for lazy changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   295
    "Modified: / 16-12-2012 / 00:38:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
105
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   296
!
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   297
177
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   298
parseMergePath: info
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   299
    "Parses 'merging Make.proto' line" 
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   300
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   301
    self expect: 'merging '.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   302
    self parsePath.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   303
    self expectLineEnd.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   304
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   305
    "Created: / 14-01-2013 / 15:56:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   306
!
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   307
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   308
parseMergeRemoteChanged: info
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   309
    "Parses
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   310
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   311
    remote changed CharacterEncoderImplementations__SJIS.st which local deleted
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   312
    use (c)hanged version or leave (d)eleted? c
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   313
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   314
    " 
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   315
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   316
    self expect: 'remote changed'.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   317
    stream nextLine.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   318
    self expect: 'use'.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   319
    stream nextLine.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   320
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   321
    "Created: / 15-01-2013 / 09:59:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   322
!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   323
177
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   324
parseMergeSummary
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   325
    ^self parseMergeSummary: HGMergeInfo new
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   326
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   327
    "Created: / 14-01-2013 / 15:48:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   328
!
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   329
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   330
parseMergeSummary: info
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   331
    "Example:
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   332
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   333
        '9 files updated, 0 files merged, 1 files removed, 0 files unresolved'
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   334
    "
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   335
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   336
    info setNumUpdated: self parseInteger.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   337
    self expect: ' files updated, '.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   338
    info setNumMerged: self parseInteger.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   339
    self expect: ' files merged, '.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   340
    info setNumRemoved: self parseInteger.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   341
    self expect: ' files removed, '.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   342
    info setNumUnresolved: self parseInteger.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   343
    self expect: ' files unresolved'.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   344
    self expectLineEnd.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   345
    ^info
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   346
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   347
    "Created: / 14-01-2013 / 15:52:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   348
!
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   349
105
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   350
parseName
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   351
    ^String streamContents:[:out|
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   352
        [ stream peek isSeparator ] whileFalse:[
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   353
            out nextPut:stream next
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   354
        ]
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   355
    ].
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   356
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   357
    "Created: / 27-11-2012 / 20:21:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   358
!
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   359
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   360
parseNameList
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   361
    | list |
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   362
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   363
    stream atEnd ifTrue:[ ^#() ].
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   364
    stream peek isSeparator ifTrue:[ ^#() ].
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   365
    list := OrderedCollection new.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   366
    list add: self parseName.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   367
    [ stream atEnd not and:[stream peek == Character space]] whileTrue:[
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   368
        stream next. "/eat space.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   369
        list add: self parseName.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   370
    ].
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   371
    ^list.
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   372
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   373
    "Created: / 27-11-2012 / 20:30:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   374
!
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   375
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   376
parseNodeId
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   377
    "Parses node id from stream and returns it. Support both,
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   378
     short and full node ids"
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   379
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 93
diff changeset
   380
    ^HGChangesetId readFrom: stream onError:[:msg|self error: msg]
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   381
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   382
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   383
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   384
    "
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   385
        (HGCommandParser on: '4:6f88e1f44d9eb86e0b56ca15e30e5d786acd83c7' readStream) parseNodeId
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   386
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   387
        Bad ones:
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   388
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   389
        (HGCommandParser on: '4:6f88e1f44d9eb86e0b56ca15e30e5d786acd' readStream) parseNodeId
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   390
        (HGCommandParser on: '4:6f88Z1f44d9eb86e0b56ca15e30e5d786acd83c7' readStream) parseNodeId
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   391
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   392
    "
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   393
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   394
    "Created: / 13-11-2012 / 10:22:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
40
e3699c0b00f9 Baisc support for changesets (revision log)
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 39
diff changeset
   395
    "Modified: / 13-11-2012 / 16:52:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
134
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   396
!
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   397
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   398
parseNodeIdList
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   399
    "Parses node id list from stream and returns it. Support both,
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   400
     short and full node ids."
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   401
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   402
    | ids |
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   403
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   404
    stream atEnd ifTrue:[ ^ #() ].
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   405
    stream peek == Character cr ifTrue:[ ^ #() ].
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   406
    ids := OrderedCollection new.
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   407
    [ stream peek ~~ Character cr ] whileTrue:[
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   408
        ids add: self parseNodeId.
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   409
        stream peek == Character space ifTrue:[stream next].
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   410
    ].
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   411
    ^ids
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   412
565c8bd9c9e8 Added children support to changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   413
    "Created: / 05-12-2012 / 17:24:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
135
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   414
!
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   415
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   416
parsePath
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   417
    "Parse single path entry from repository"
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   418
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   419
    ^self parseName
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   420
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   421
    "Created: / 05-12-2012 / 18:27:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   422
!
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   423
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   424
parsePathCopy
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   425
    "Parse single path entry from repository"
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   426
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   427
    | dst src |
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   428
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   429
    dst := self parseName.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   430
    self expectSpace.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   431
    self expect:$(.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   432
    src := String streamContents:[:out|
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   433
        [ stream peek == $) ] whileFalse:[
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   434
            out nextPut:stream next
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   435
        ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   436
        stream next.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   437
    ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   438
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   439
    ^Array with: dst with: src
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   440
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   441
    "Created: / 05-12-2012 / 18:38:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   442
!
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   443
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   444
parsePathCopyList
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   445
    | list |
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   446
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   447
    stream atEnd ifTrue:[ ^#() ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   448
    stream peek isSeparator ifTrue:[ ^#() ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   449
    list := OrderedCollection new.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   450
    list add: self parsePathCopy.
169
3e156584235f Bugfix: HGCommandParser>>parsePathCopyList.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 165
diff changeset
   451
    [ stream atEnd not and:[stream peek ~= Character cr]] whileTrue:[
3e156584235f Bugfix: HGCommandParser>>parsePathCopyList.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 165
diff changeset
   452
        "/stream next. "/eat space.
135
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   453
        list add: self parsePathCopy.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   454
    ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   455
    ^list.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   456
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   457
    "Created: / 05-12-2012 / 18:39:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
169
3e156584235f Bugfix: HGCommandParser>>parsePathCopyList.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 165
diff changeset
   458
    "Modified: / 10-01-2013 / 23:25:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
135
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   459
!
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   460
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   461
parsePathList
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   462
    | list |
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   463
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   464
    stream atEnd ifTrue:[ ^#() ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   465
    stream peek isSeparator ifTrue:[ ^#() ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   466
    list := OrderedCollection new.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   467
    list add: self parsePath.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   468
    [ stream atEnd not and:[stream peek == Character space]] whileTrue:[
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   469
        stream next. "/eat space.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   470
        list add: self parsePath.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   471
    ].
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   472
    ^list.
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   473
c74b92e6a2f8 Added HGChangeset>>changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 134
diff changeset
   474
    "Created: / 05-12-2012 / 18:27:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
151
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   475
!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   476
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   477
parsePushLine
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   478
    | first rest |
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   479
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   480
    first := stream upToSeparator.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   481
    first = 'adding' ifTrue:[
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   482
        ActivityNotification notify: first, ' ' , stream nextLine.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   483
    ].
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   484
    first = 'added' ifTrue:[
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   485
        ActivityNotification notify: first, ' ' , stream nextLine.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   486
    ].
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   487
    first = 'abort:' ifTrue:[
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   488
        rest := stream nextLine.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   489
        (rest startsWith: ' push creates new remote head') ifTrue:[
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   490
            HGPushWouldCreateNewHeadError raiseErrorString: rest.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   491
            ^self.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   492
        ].
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   493
        HGPushError raiseErrorString: rest.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   494
    ]
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   495
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   496
    "Created: / 10-12-2012 / 02:24:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   497
! !
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   498
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   499
!HGCommandParser methodsFor:'parsing - commands'!
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   500
105
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   501
parseCommandBranches
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   502
    "Parse output of 'hg branches' command. Return collection
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   503
     of orphaned HGBranch"
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   504
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   505
    ^self parseBranches
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   506
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   507
    "Created: / 27-11-2012 / 19:16:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   508
    "Modified: / 27-11-2012 / 20:21:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   509
!
25e8ff9d2a31 Added read-only support for branches.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   510
106
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   511
parseCommandHeads
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   512
    "Parse output of 'hg heads' command, assuming the template given
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   513
     was HGCommandParser templateHeads. Return a list of HGChangesetId."
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   514
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   515
    | ids |
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   516
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   517
    ids := OrderedCollection new.
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   518
    [ stream atEnd ] whileFalse:[
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   519
        ids add: self parseNodeId. self expectLineEnd.
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   520
    ].
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   521
    ^ids
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   522
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   523
    "Created: / 27-11-2012 / 21:24:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   524
!
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   525
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   526
parseCommandLocate
71
bd4cfb10a262 Basic support to access changeset content.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 69
diff changeset
   527
    "Filenames are 0-byte separated. Yeah, Mercurial is easy
bd4cfb10a262 Basic support to access changeset content.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 69
diff changeset
   528
     to parse"
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   529
165
4f6432cf4240 Added support for lazy changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   530
    | filenames |
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   531
    filenames := OrderedCollection new.
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   532
    [ stream atEnd ] whileFalse:[
77
b6070a017acd Fixes for ercurial < 2.3
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 71
diff changeset
   533
        | filename |
b6070a017acd Fixes for ercurial < 2.3
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 71
diff changeset
   534
165
4f6432cf4240 Added support for lazy changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   535
        filename := stream nextLine.
77
b6070a017acd Fixes for ercurial < 2.3
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 71
diff changeset
   536
        "/ Workaround for Mercurial 2.3.x which includes trailing new line
b6070a017acd Fixes for ercurial < 2.3
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 71
diff changeset
   537
        (filename size ~~ 1 or:[filename first ~~ Character cr]) ifTrue:[
b6070a017acd Fixes for ercurial < 2.3
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 71
diff changeset
   538
            filenames add:  filename
b6070a017acd Fixes for ercurial < 2.3
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 71
diff changeset
   539
        ]
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   540
    ].
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   541
    ^filenames.
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   542
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   543
    "Created: / 16-11-2012 / 22:35:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
165
4f6432cf4240 Added support for lazy changesets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   544
    "Modified: / 16-12-2012 / 00:09:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   545
!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   546
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   547
parseCommandLog
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   548
    "Parse output of 'hg log' command, assuming the template given
106
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   549
     was HGCommandParser templateLog. Return a list of HGChangeset."
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   550
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   551
    ^self parseLog
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   552
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   553
    "Created: / 13-11-2012 / 09:09:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
106
99be3b5a40da Added support for heads (both repository and per-branch)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 105
diff changeset
   554
    "Modified (comment): / 27-11-2012 / 21:24:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   555
!
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   556
137
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   557
parseCommandLogChildren
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   558
    "Parse output of 'hg log <path>' command, assuming the template given
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   559
     was HGCommandParser templateLogChildren. Return a list of pairs (HGChangesetId, list of HGChangesetId)"
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   560
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   561
    | revsAndChildren |
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   562
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   563
    revsAndChildren := OrderedCollection new.
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   564
    [ stream atEnd ] whileFalse:[
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   565
        | rev children |
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   566
        rev := self parseNodeId. self expectLineEnd.
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   567
        stream atEnd ifFalse:[
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   568
            children := self parseNodeIdList. self expectLineEnd.
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   569
        ] ifTrue: [
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   570
            children := #().
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   571
        ].
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   572
        revsAndChildren add: (Array with: rev with: children).
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   573
    ].
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   574
    ^revsAndChildren
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   575
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   576
    "Created: / 05-12-2012 / 23:44:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   577
!
379bd934f8d0 Make HGChangeset>>children dynamic.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 136
diff changeset
   578
136
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   579
parseCommandLogFile
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   580
    "Parse output of 'hg log <path>' command, assuming the template given
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   581
     was HGCommandParser templateLogFile. Return a list of HGChangesetId."
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   582
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   583
    | ids |
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   584
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   585
    ids := OrderedCollection new.
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   586
    [ stream atEnd ] whileFalse:[
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   587
        ids add: self parseNodeId. self expectLineEnd.
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   588
    ].
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   589
    ^ids
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   590
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   591
    "Created: / 05-12-2012 / 19:15:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   592
!
2d1512dde043 Added HGWorkingCopyFile>>revisions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 135
diff changeset
   593
177
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   594
parseCommandMerge
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   595
    "Parse output of 'hg update' command. "
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   596
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   597
    | info |
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   598
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   599
    info := HGMergeInfo new.
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   600
    [ stream peek isDigit ] whileFalse:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   601
        stream peek == $m ifTrue:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   602
            self parseMergePath: info.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   603
        ] ifFalse:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   604
            self parseMergeRemoteChanged: info
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   605
        ].
177
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   606
    ].
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   607
    self parseMergeSummary: info.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   608
    self expect: 'use ''hg resolve'' to retry unresolved file merges or ''hg update -C .'' to abandon'.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   609
    self expectLineEnd.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   610
    ^info
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   611
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   612
    "Created: / 14-01-2013 / 15:57:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 177
diff changeset
   613
    "Modified: / 15-01-2013 / 09:59:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
177
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   614
!
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   615
151
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   616
parseCommandPush
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   617
    "Parse output of 'hg push' command. "
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   618
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   619
    "
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   620
    Ex:
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   621
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   622
    pushing to /tmp/stx_tmp/stxtmp_7733_20/upstream
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   623
    searching for changes
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   624
    abort: push creates new remote head 0c8c5633f1ed!!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   625
    (you should pull and merge or use push -f to force)
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   626
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   627
    "
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   628
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   629
    self expect: 'pushing to'.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   630
    ActivityNotification notify: 'pushing to ', stream nextLine.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   631
    self expect: 'searching for changes'.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   632
    ActivityNotification notify: 'searching for changes'.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   633
    self expectLineEnd.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   634
    [ stream atEnd ] whileFalse:[
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   635
        self parsePushLine
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   636
    ]
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   637
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   638
    "Created: / 10-12-2012 / 02:15:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   639
!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 145
diff changeset
   640
177
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   641
parseCommandResolveList
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   642
    "Parse output of 'hg resolve --list' command. Return dictionary <path,status>"
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   643
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   644
    | statuses |
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   645
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   646
    statuses := Dictionary new.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   647
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   648
    [ stream atEnd ] whileFalse:[
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   649
        | status path |
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   650
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   651
        status := stream next.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   652
        (status == $U or:[status == $R]) ifFalse:[
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   653
            self error:'Unknown resolution status: ', status.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   654
        ].
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   655
        self expectSpace.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   656
        path := self parsePath.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   657
        statuses at: path put: status.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   658
        self expectLineEnd.
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   659
    ].
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   660
    ^statuses
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   661
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   662
    "Created: / 14-01-2013 / 16:45:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   663
!
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   664
142
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   665
parseCommandShowConfig
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   666
    "Parse output of 'hg showconfig' command, assuming the template given
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   667
     was HGCommandParser templateLog. Return a list of HGChangeset."
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   668
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   669
    ^self parseConfig
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   670
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   671
    "Created: / 06-12-2012 / 16:00:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   672
!
67e8c5ab8db2 Initial support for config parsing (not yet integrated). UI improvements in commit dialog (comparing).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 137
diff changeset
   673
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   674
parseCommandStatus
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   675
    | statusesAndPaths |
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   676
    statusesAndPaths := OrderedCollection new.
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   677
    [ stream atEnd ] whileFalse:[
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   678
        | status path |
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   679
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   680
        stream peek == Character space ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   681
            statusesAndPaths last first"status" isAdded ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   682
                stream next.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   683
                self expectSpace.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   684
                path := self nextLine.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   685
                statusesAndPaths last at:1 put: (HGStatus copied source: path)
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   686
            ] ifFalse:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   687
                self error:'Malformed status output, status code expected, got space'
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   688
            ]
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   689
        ] ifFalse:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   690
            status := HGStatus forCode: self next.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   691
            self expectSpace.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   692
            path := self nextLine.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   693
            statusesAndPaths add: { status . path }
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   694
        ].
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   695
    ].
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   696
    ^ statusesAndPaths
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   697
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   698
    "Created: / 23-10-2012 / 10:57:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   699
    "Modified: / 21-11-2012 / 01:09:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   700
!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   701
177
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   702
parseCommandUpdate
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   703
    "Parse output of 'hg update' command. "
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   704
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   705
    ^self parseMergeSummary
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   706
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   707
    "Created: / 14-01-2013 / 15:48:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   708
!
1b0ddad9770e Initial support for merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 169
diff changeset
   709
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   710
parseCommandVersion
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   711
    "Parse output of 'hg --version'"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   712
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   713
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   714
    Mercurial Distributed SCM (version 2.3.2)
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   715
    (see http://mercurial.selenic.com for more information)
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   716
    
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   717
    Copyright (C) 2005-2012 Matt Mackall and others
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   718
    This is free software; see the source for copying conditions. There is NO
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   719
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   720
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   721
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   722
    | major minor revision |
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   723
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   724
    self 
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   725
        expect:'Mercurial'; skipSeparators;
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   726
        expect:'Distributed'; skipSeparators;
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   727
        expect:'SCM'; skipSeparators;
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   728
        expect:$(; skipSeparators;
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   729
        expect:'version'.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   730
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   731
    major := self parseInteger.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   732
    self expect:$..
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   733
    minor := self parseInteger.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   734
    stream peek == $. ifTrue:[
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   735
        stream next.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   736
        revision := self parseInteger.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   737
    ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   738
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   739
    self skipSeparators.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   740
    self expect:$).
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   741
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   742
    ^(Array with: major with: minor with: revision)
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   743
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   744
    "Created: / 19-11-2012 / 20:19:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   745
! !
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   746
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   747
!HGCommandParser methodsFor:'parsing-utils'!
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   748
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   749
expect: aStringOrChar
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   750
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   751
    | c |
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   752
    aStringOrChar isCharacter ifTrue:[
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   753
        (stream atEnd or:[(c := stream next) ~= aStringOrChar]) ifTrue:[
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   754
            self error:('Expected ''%1'' got ''%2''.' bindWith: aStringOrChar with: c).
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   755
        ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   756
        ^self.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   757
    ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   758
    aStringOrChar isString ifTrue:[
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   759
        aStringOrChar do:[:expected|
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   760
            (stream atEnd or:[(c := stream next) ~= expected]) ifTrue:[
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   761
                self error:('Expected ''%1''.' bindWith: aStringOrChar).
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   762
            ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   763
        ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   764
        ^self.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   765
    ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   766
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   767
    self error:'Invalid expected value'.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   768
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   769
    "Created: / 19-11-2012 / 20:08:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   770
!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   771
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   772
expectLineEnd
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   773
    self expect: Character cr.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   774
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   775
    "Created: / 19-11-2012 / 20:06:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   776
!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   777
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   778
expectSpace
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   779
    self expect: Character space.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   780
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   781
    "Created: / 19-11-2012 / 20:06:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   782
!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   783
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   784
next
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   785
    ^stream next.
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   786
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   787
    "Created: / 23-10-2012 / 10:57:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   788
!
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   789
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   790
nextLine
38
c3d02ed6a645 - HGWorkingCopyFile
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 36
diff changeset
   791
    ^stream nextLine
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   792
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   793
    "Created: / 23-10-2012 / 11:05:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
38
c3d02ed6a645 - HGWorkingCopyFile
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 36
diff changeset
   794
    "Modified: / 09-11-2012 / 12:02:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   795
!
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   796
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   797
skipSeparators
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   798
    stream skipSeparators
39
10e693b3e034 - Support for commit
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 38
diff changeset
   799
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 77
diff changeset
   800
    "Created: / 19-11-2012 / 20:05:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
36
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   801
! !
41cb88196e69 - HGTests
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 34
diff changeset
   802
34
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   803
!HGCommandParser class methodsFor:'documentation'!
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   804
54
66045198bfbc More changes towards self hosting. Some work on model is still missing...
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 51
diff changeset
   805
version_HG
115
b1ed2d29054b version_HG changed to return string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   806
b1ed2d29054b version_HG changed to return string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 106
diff changeset
   807
    ^ '$Changeset: <not expanded> $'
54
66045198bfbc More changes towards self hosting. Some work on model is still missing...
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 51
diff changeset
   808
!
66045198bfbc More changes towards self hosting. Some work on model is still missing...
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 51
diff changeset
   809
34
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   810
version_SVN
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents: 54
diff changeset
   811
    ^ '§Id::                                                                                                                        §'
34
0ef61b36cfa7 - First bits
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   812
! !
210
54a73fa50d40 Added copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
   813