-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathChangeLog
270 lines (172 loc) · 9.41 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
Version 0.31 2013-01-?? Trent Fisher <[email protected]>
* Fixed the ETA calculations for incremental imports
* Added more documentation on labels.
* Fixed the handling of labels on move/delete and purge files
I don't know how this can happen yet, so I could use a hand
building a test case.
Version 0.30 2013-01-11 Trent Fisher <[email protected]>
* Added makefiles to automate several tasks, including installation
Though, it has only been tested on Linux. YMMV.
* p42svnsync: A utility to do continuous synchronization between
a Perforce depot and Subversion, much like svnsync.
This depends on many new features listed below.
* Labels: added support for migrating labels via the --label option.
Initially derived from a patch from Sheridan Rawlins
* Added options --existing-files and --existing-revs
to fix issues with incremental imports.
* Added code to deal with Windows servers which are case-inconsistent.
See the --fix-case option
* Added an option to save the Perforce change numbers in SVN.
See the --save-changenum option.
* Added code to deal with non utf8 filenames.
See the --rawcharset option.
* Added option to make p42svn stop gracefully after processing
the current changeset/revision. See the --stopfile option.
* Added an option to skip over versions which are corrupted in
Perforce. See the --skipcorrupt option.
* Added an option to make fatal errors drop the error into the dump
stream, which should cause svnadmin load to fail, rather than
commit an incomplete revision. Useful when piping directly
into svnadmin load. See the --nopartialrev option.
* Added a rudimentary --verify option (right now it just verifies
that each p4 rev has a matching one in subversion.
* Modified the P4 connection code to keep the connection to the
server open. This can speed up conversions significantly.
Patch supplied by Rajesh (full name not given).
* Added an code to cache file contents locally in an attempt to speed
up repeated import attempts. See the --contentcache option.
* Reworked routine for fetching file contents to avoid using fork
and sending the entire file contents on the stack, which will exhaust
memory for very large files. This may also make it easier to run on
Windows, but I've made no attempt to test this.
* Added code to deal with the types of "files" changing,
symlink to file, etc.
* Added a rudimentary test suite.
* Add support for move/delete and move/add actions.
From a patch by Alex Java
* Fixed the purge action to do something reasonable.
* Modified code to deal with very old versions Perforce.
* Added better progress indicators with -v option.
Version 0.21 2009-05-01 Dimitri Papadopoulos-Orfanos <[email protected]>
* Update documentation.
* By default do not convert Perforce keywords.
* Avoid warning: do not pass uninitialized variables to debug().
* Initial support for Perforce purge action. Not tested!
* Avoid calculating MD5 and properties in svn_add_copy() and
svn_replace_copy(). This speeds up conversion.
* Merge code from:
svn_add_symlink() and svn_add_file()
svn_edit_symlink() and svn_edit_symlink()
* Fix is_in_range() to properly test against ranges of changelists
specified arguments by option '--changes'.
* Properly handle changes falling outside of changes specified
by option '--changes' in p4_file2svnrev().
* Consistent error messages.
* Depending on the version of Perforce, Run('diff2') might return
an ARRAY or a HASH. Apply strict tests to the return value.
This fixes p4_files_are_identical() which was totally broken
under recent versions of Perforce.
It looks like very old versions of Perforce might return a SCALAR
but this will not be supported anymore.
* Comply with the Filesystem Hierarchy Standard (FHS) 2.3 which
seems to expect a "magic.mime" file in "/usr/share/file".
* Add the '-s' option to Run('describe', ...) to exclude the diffs
and speed up transfer.
* Get rid of "pseudo hashes" deprecated as of Perl 5.8.0.
* Perforce P4Perl is significantly different from the P4Perl on
Tony Smith's page. Detect the version of P4Perl and adapt to
the API of either version:
ParseForms() ->
Changes(...) -> Run('changes', ...)
Describe(...) -> Run('describe', ...)
Print(...) -> Run('print', ...)
Diff2(...) -> Run('diff2', ...)
Filelog(...) -> Run('filelog', ...)
* Get rid of obsolete methods Init() and Final().
* When SetVersion() is available, specify the version of p42svn.
Version 0.20 2007-07-01 Dimitri Papadopoulos-Orfanos <[email protected]>
* Accept all changes when no range is specififed.
Version 0.19 2007-06-14 Dimitri Papadopoulos-Orfanos <[email protected]>
* Option '--changes' limits the range of dumped changelists.
* When adding parent directories, don't add root ("/").
* Option '--dry-run' - avoids downloading large files from the
Perforce server. This allows you to quickly preflight to make
sure everything will be successful.
* Option '--verbose' for verbose output - without the overwhelming
output of '--debug'.
* Tolerance for corrupt changelists.
Version 0.18 2007-04-16 Dimitri Papadopoulos-Orfanos <[email protected]>
* Option to override $P4CHARSET and select an alternative charset
for the Subversion dump/load format.
Version 0.17 2006-03-13 Dimitri Papadopoulos-Orfanos <[email protected]>
* Use new function p4_has_text_flag which tests for text/unicode
instead of explicitly testing for text only.
* Set svn:executable to "on" instead of "1" as it seems more common.
* Add option to set svn:eol-type for text/unicode Perforce file types.
* Handle all the Perforce file types listed by 'p4 help filetypes'.
* Special characters @, #, *, % are now handled by Perforce 2004.2.
* More support for symlinks, handle edits in addition to adds.
* Add -w to better detect Perl errors.
Version 0.16 2006-01-23 Ray Miller <[email protected]>
* Trim trailing newline from $content when adding a symlink
* Note tested against P4 version 3.4804 built against 2005.2 of the
Perforce API.
These patches thanks to Dimitri Papadopoulos-Orfanos <[email protected]>.
Version 0.15 2006-01-20 Ray Miller <[email protected]>
* Improved handling of return from P4::Errors.
* Added support for symlinks.
These patches thanks to Dimitri Papadopoulos-Orfanos <[email protected]>.
Version 0.14 2004/10/20 20:09:46 Ray Miller <[email protected]>
* Set binmode on STDOUT to prevent line-end munging under Cygwin's
Perl. Bug reported by Damien McKenna <[email protected]>.
Version 0.13 2003/11/06 11:22:21 Ray Miller <[email protected]>
* Fix regular expression in munge_keywords() so that Perl variable
names aren't inadvertently caught.
Version 0.12 2003/09/16 15:49:34 Ray Miller <[email protected]>
* Yet more special-casing in p4_get_copyfrom_filerev() to handle
strange Perforce branch/integrate operations.
Version 0.11 2003/09/16 11:42:44 Ray Miller <[email protected]>
* More bugfixes to p4_get_copyfrom_filerev(): if return from P4
Filelog is not of the expected form (so we can't determine the
source of the branch/integrate), return undef. The calling
functions will handle this and treat the branch/integrate as an
add/edit instead.
Version 0.10 2003/09/16 10:11:05 Ray Miller <[email protected]>
* Cater for branch/integrate operation where source of
branch/integrate is not known to Perforce. (I guess might happen
as the result of a p4 obliterate.)
Version 0.09 2003/09/12 10:25:00 Ray Miller <[email protected]>
* Fix bug in svn_change_copy - node action should be "replace",
not "change". Rename function to svn_replace_copy to reflect this.
Bug reported by Sebastian Rahtz <[email protected]>.
Version 0.08 2003/09/11 17:18:05 Ray Miller <[email protected]>
* Add option to delete empty parent directories.
Version 0.07 2003/09/10 18:51:53 Ray Miller <[email protected]>
* Fix bug in p4_get_copyfrom_filerev - order of depot files
returned by P4 Filelog is arbitrary, so we have to parse output to
determine which depot file was actually the source of the
branch/integrate.
* Update my email address.
Version 0.06 2003/09/03 16:51:06 Ray Miller <[email protected]>
* Fix bug in p4branch2svn - treat as add (rather than copy)
when source and destination file contents differ. This is almost
exactly the same problem as was fixed in p4integrate2svn in
version 0.04.
Version 0.05 2003/09/03 15:46:02 Ray Miller <[email protected]>
* When the source of a Perforce branch/integrate operation lies
outside of the branches being processed, treat as add/edit
instead.
Version 0.04 2003/08/26 09:45:44 Ray Miller <[email protected]>
* Fix bug in p4integrate2svn - treat as edit (rather than copy)
when source and destination file contents differ. Bug reported by
Garrett Rooney <[email protected]>.
Version 0.03 2003/08/06 14:13:19 Ray Miller <[email protected]>
* Add support for setting svn:mime-type property.
Version 0.02 2003/08/04 22:17:33 Ray Miller <[email protected]>
* Fix bug in p4_get_copyfrom_filerev - we should be taking the
first element from the array, not the last.
* Die when we can't map a depot file to Subversion path - this
could happen when depot2svnpath is called with the source of an
integrate lying outside a branch being processed.
Version 0.01 2003/08/04 18:47:09 Ray Miller <[email protected]>
* Initial release.