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-- |
210 | 1 |
" |
2 |
COPYRIGHT (c) 2012-2013 by Jan Vrany |
|
3 |
All Rights Reserved |
|
4 |
||
5 |
This software is furnished under a license and may be used |
|
6 |
only in accordance with the terms of that license and with the |
|
7 |
inclusion of the above copyright notice. This software may not |
|
8 |
be provided or otherwise made available to, or used by, any |
|
9 |
other person. No title to or ownership of the software is |
|
10 |
hereby transferred. |
|
11 |
" |
|
34 | 12 |
"{ Package: 'stx:libscm/mercurial' }" |
13 |
||
14 |
Object subclass:#HGCommandParser |
|
36 | 15 |
instanceVariableNames:'stream' |
34 | 16 |
classVariableNames:'' |
17 |
poolDictionaries:'' |
|
18 |
category:'SCM-Mercurial-Internal' |
|
19 |
! |
|
20 |
||
210 | 21 |
!HGCommandParser class methodsFor:'documentation'! |
22 |
||
23 |
copyright |
|
24 |
" |
|
25 |
COPYRIGHT (c) 2012-2013 by Jan Vrany |
|
26 |
All Rights Reserved |
|
27 |
||
28 |
This software is furnished under a license and may be used |
|
29 |
only in accordance with the terms of that license and with the |
|
30 |
inclusion of the above copyright notice. This software may not |
|
31 |
be provided or otherwise made available to, or used by, any |
|
32 |
other person. No title to or ownership of the software is |
|
33 |
hereby transferred. |
|
34 |
" |
|
35 |
! ! |
|
34 | 36 |
|
36 | 37 |
!HGCommandParser class methodsFor:'instance creation'! |
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 | 47 |
|
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 | 90 |
! ! |
91 |
||
92 |
!HGCommandParser methodsFor:'accessing'! |
|
93 |
||
94 |
stream |
|
95 |
^ stream |
|
96 |
! |
|
97 |
||
98 |
stream:something |
|
99 |
stream := something. |
|
100 |
! ! |
|
101 |
||
102 |
!HGCommandParser methodsFor:'error reporting'! |
|
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 | 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 | 111 |
! ! |
112 |
||
113 |
!HGCommandParser methodsFor:'parsing'! |
|
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 | 308 |
parseMergeRemoteChanged: info |
309 |
"Parses |
|
310 |
||
311 |
remote changed CharacterEncoderImplementations__SJIS.st which local deleted |
|
312 |
use (c)hanged version or leave (d)eleted? c |
|
313 |
||
314 |
" |
|
315 |
||
316 |
self expect: 'remote changed'. |
|
317 |
stream nextLine. |
|
318 |
self expect: 'use'. |
|
319 |
stream nextLine. |
|
320 |
||
321 |
"Created: / 15-01-2013 / 09:59:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
322 |
! |
|
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 | 600 |
[ stream peek isDigit ] whileFalse:[ |
601 |
stream peek == $m ifTrue:[ |
|
602 |
self parseMergePath: info. |
|
603 |
] ifFalse:[ |
|
604 |
self parseMergeRemoteChanged: info |
|
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 | 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 | 674 |
parseCommandStatus |
675 |
| statusesAndPaths | |
|
676 |
statusesAndPaths := OrderedCollection new. |
|
677 |
[ stream atEnd ] whileFalse:[ |
|
678 |
| status path | |
|
679 |
||
88 | 680 |
stream peek == Character space ifTrue:[ |
681 |
statusesAndPaths last first"status" isAdded ifTrue:[ |
|
682 |
stream next. |
|
683 |
self expectSpace. |
|
684 |
path := self nextLine. |
|
685 |
statusesAndPaths last at:1 put: (HGStatus copied source: path) |
|
686 |
] ifFalse:[ |
|
687 |
self error:'Malformed status output, status code expected, got space' |
|
688 |
] |
|
689 |
] ifFalse:[ |
|
690 |
status := HGStatus forCode: self next. |
|
691 |
self expectSpace. |
|
692 |
path := self nextLine. |
|
693 |
statusesAndPaths add: { status . path } |
|
694 |
]. |
|
36 | 695 |
]. |
696 |
^ statusesAndPaths |
|
697 |
||
698 |
"Created: / 23-10-2012 / 10:57:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
88 | 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 | 745 |
! ! |
746 |
||
747 |
!HGCommandParser methodsFor:'parsing-utils'! |
|
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 | 784 |
next |
785 |
^stream next. |
|
786 |
||
787 |
"Created: / 23-10-2012 / 10:57:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
788 |
! |
|
789 |
||
790 |
nextLine |
|
38
c3d02ed6a645
- HGWorkingCopyFile
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
36
diff
changeset
|
791 |
^stream nextLine |
36 | 792 |
|
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 | 795 |
! |
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 | 801 |
! ! |
802 |
||
34 | 803 |
!HGCommandParser class methodsFor:'documentation'! |
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 | 810 |
version_SVN |
69
17045d49309f
Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
54
diff
changeset
|
811 |
^ '§Id:: §' |
34 | 812 |
! ! |
210 | 813 |