summaryrefslogtreecommitdiffstats
path: root/ChangeLog
blob: ba9ead6a2a87d5d1b364fab56af39762bd88c723 (plain)
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
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
Version 0.9.92 - 2007/04/15
===========================
- Windows installer now allows to install KDiff3 as Clearcase Diff and Merge Tool
- Windows installer "SVN Merge tool" corrected: Not creating $AppData\Subversion\config subdir anymore.
- KDE-Konqueror plugin: Launch KDiff3 from Konqueror. (Similar to Diff-Ext on Windows.)
- Qt4-version
  - Printing crash fixed
  - Compilation issue for Mac fixed
- Dir Rescan keeps settings for Show identical files etc.
- Bugfix: Empty file and not existing file were detected as binary equal.
- Temp file names use the process id in file name to allow several instances.
- Suppress flicker during startup. (Don't show status info window on creation.)
- New File comparison mode: Trust the size and date, but use binary comparison if date doesn't match (unsafe)
- After explicitely selecting files any file of the selected may be right clicked for context menu.
- Open dialog also shows current directories in directory comparison mode.
- Writing a file via --auto option didn't work for relative files. (Reported by Guilhem Bichot)
- New option for history merge: Max number of history entries
- New option "Auto save and quit on merge without conflicts"
- Directory Merge with Case sensitivity disabled: Correct destination filename chosen for merge.

Version 0.9.91 - 2006/10/29
===========================
- Encoding auto detection
- Fix for crash after double click below last line
- Saving of maximized window-state (Patch by Robert Vock)
- Separated Merge-options in own tab because "Diff and Merge"-options tab got too big.
- When pasting multiple lines into openfile dialog only first line is kept
- Drawing in directory view fixed.
- When specifying a separate output dir then for equal files a copy operation will also be offered.
- Windows specific:
  - Windows installer problems fixed for users without admin-rights
  - Fix for slow startup problem on Windows (Patch by Manfred Koehler)
  - New: diff-ext-for-kdiff3 - Shell extension (originally by Sergey Zorin)
- Qt4-version:
  - Saving of merge-result didn't work.
  - Start external processes directly without cmd.exe-window
  - Rewrote everything requiring Qt3-support

Version 0.9.90 - 2006/05/14
===========================
- Fixed KIO-problems of type "File exists" with tempfiles (introduced in 0.9.89)
- Fix for manual alignment with 3 files which caused crash (new feature in 0.9.89)
- Fix for Alt-Left caused crash for leftmost window on windows (due to changed compiler)
- Use of WResizeNoErase|WRepaintNoErase instead of WNoAutoErase (fix for compiler error with Qt3.1)
- Removed #include <konq_popupmenu.h> which is (currently) unneeded and required extra dependencies.
- Removed "Save/Load Directory Merge State ..." in directory menu. (These aren't working yet.)
- Fixed crash when used as Diff-part with KDevelop.
- Preserve executable bit when overwriting an existing file.

Version 0.9.89 - 2006/04/09
===========================
New features:
- Version control history auto merge plus sorting
- Auto merge regular expression
- Splitting and joining differences for merging
- Manual Diff Alignment tool
- Printing of differences
- Colorsettings for Dir-Colors
- Dir-show identical/different/A-only/B-only/C-only files with immediate effect (instead of option "List only deltas")
- Filename-edit above DiffInputWindows
- Windows-Context Menu in A/B/C-columns for dir-comparison (Windows only)
- Edit Menu: Select All (Ctrl-A)
- New commandline options: 
  --config filename: Select an individual config file. (Now also available for Windows and Qt-only version.)
  --cs config: Change one specific setting via the command line. (For settings that were previously adjustable via GUI only.)
  --confighelp: Show available config items and their current values.
- Dircomp: "Compare/Merge explicitly selected files" (Select files/dirs by clicking icons in columns A/B/C)
- User definable ignored command line options.
- Ability to swap pathnames in open dialog
- "Ignore"-button in error dialog when option not understood (Windows only)
- Quadratical scroll speedup during selection when mouse moves out of the diff input window.
Bugfixes, redesign:
- Preparations for Qt4-Port + some redesign
- GNU-Diff algorithm improved to be independent of line endings (needed for manual diff alignment)
- Avoid restoring a window where it is almost invisible (if moved almost out of the screen area)
- Go to next delta honors special "A vs. B", "A vs. C" or "B vs. C" overview when active. (Patch by Vladan Bato)
- DirectoryMergeWindow: File/Antifile and DirPattern changes will update immediately without rescan.
- Blue toolbar icons (for better visibility of disabled state)
- Bugfix: Crash when merging and selecting "Choose A/B/C for all unsolved conflicts"
  and one of the solved conflicts contained no lines in chosen input.
- Fix: With --auto option, GUI stays invisible if not necessary
- Fixed odd ProgressDialog-behaviour when continuing after an error or abort.
- Directory merge: Fixed FollowFileLinks. (Didn't work when copying a file.)
- Initial position now (x=0,y=22). This solves a problem on some Macs.
- Better alignment of B and C in 3-file comparison
- Correctly updating the selection when scrolling via keys and mouse is pressed
- Horizontal scrolling in right-to-left language caused vertical lines - fixed.


Version 0.9.88 - 2005/25/02
===========================
- Fixed crash that occurred in Directory Comparison mode "Full-Analysis".
- Fix for Windows: Didn't save encoding correctly.
- Many translations updated.

Version 0.9.87 - 2005/30/01
===========================
- Unicode16 and UTF8 support (Internal data format is now QString (Unicode16). Conversion during save and load.)
- Directory "Full Analysis": Equality-Coloring for files with only whitespace differences. (Michael Denio)
- Support for right to left languages.
- In MergeResultWindow show "<Merge Conflict (Whitespace only)>" for whitespace-only conflicts
- Statusbar shows the number of remaining conflicts and whitespace conflicts.
- Go Next/Prev Difference/Conflict now have improved tooltips informing about "Show White Space"-disabled-behaviour.

Version 0.9.86 - 2004/06/14
===========================
- Double click on any file in directory merge would close the directory merge window. (Regression in 0.9.85)

Version 0.9.85 - 2004/06/14
===========================
- When solving a conflict KDiff3 reports the number of remaining unsolved conflicts in the status bar.
Bugfixes:
- Fix for MergeResultWindow-contextmenu: All items were disabled always. (new in 0.9.84)
- Fix for problem when opening files specified relative to current directory. (new in 0.9.84, qt-only-version)
- Fix for compilation with older gcc (2.9x)
- Several Word-wrap problems fixed: 
     - Find string with word wrap active didn't work if found text was not in first wrap-line.
     - overview-position was not updated when toggling word wrap
     - horizontal scrollbar was not updated when toggling word wrap
     - current selection was lost when toggling word wrap
     - selecting a conflict in the diff-text-window didn't work right with word wrap.
- Qt-only: Bold attribute for fonts was not persistent
- Qt-only: Toolbar position was not persistent
- Qt-only: Language-choice shows also the full language name.
- Cursor and windows-boundary-lines were always black instead of having the foreground color
- Starting KDiff3 with two not existing files showed a dialog saying that files are binary equal.
- Errors while starting a directory comparison now also reopens the open-dialog.
- Speedup during directory comparison by avoiding unnecessary redraws. (These always creep in again :-()
- On KDE: When resetting to default options (or first start) now the default KDE-fixed font will be used.
- Mergeresultwindow: Improved behaviour after automatic merge operation.

Version 0.9.84 - 2004/05/29
============================
New Features:
- Word Wrap for DiffTextWindow
- Directory-Comparison: Option "Full Analysis" allows to show the number of solved vs. unsolved 
  conflicts or deltas vs. whitespace-changes in the directory tree.
- Diff-Menu for Diff-view specific entries
- Docs now contain a new chapter for uses of preprocessor and line-matching-preprocessor. 
- Added several credits which now are also visible in the Qt-only version.
- The Qt-only version now also shows all command-line options. Under windows a dialog shows them.
- Command line options -u and -L for Subversion-support.
- Command line options --L1/2/3 for specifying alias names.
- In the Qt-only-version the user-interface-language can be set via the regional-settings 
  (only effective after a restart).
- ProgressDialog redesign for recursive use.
- Overview now allows to show the delta between two other files in triplediff-mode.
- Option to ignore case which treats case-changes like white space (instead of conversion to upcase).
Bugfixes:
- Dir-Comp: When one file exists, but the other doesn't then instead the latest used other file was displayed.
- Open dialog: When previously a file C was used, but should be empty now, it reappeared unbidden.
- Several bugs for 64-bit systems fixed.
- Fixed crash when one file ended with a newline and the other did not.
- Windows: Case insensitive filename-pattern matching.
- Corrected behaviour for files with size 0.
- Fix for crash due to a race-condition (Patch by Eike Sauer)
- Windows: Scrolling didn't work right when another window was in front.
- Mergeresultwindow didn't show correct position when starting a second or later merge.
- Fix for problem where sometimes the A/B/C-buttons were in wrong state.
- Pasting from selection via the middle mousebutton.

Version 0.9.83 - 2004/03/06
===========================
- Reading directorys fixed for Win95/98
- Caseinsensitive filename matching for windows.
- Autocopy to selection for systems that support this. (Patch by Stefan Partheymueller)
- Drawing during recalc suppressed in merge result editor.
- Cursor could go beyond last line in merge result editor. (Corrected NrOfLine-counting.)
- Windows: Start with invalid cmd-line-options brings up a messagebox with the list of options.
- Corrected encoding when copying to or pasting from clipboard.
- Corrected char-by-char-diff at beginning of line. ("012345 12345 xyz" <-> "012345 xyz")
- Warning when merging with preprocessor or upcase-conversion enabled.
- Rewrite of preprocessing code should fix several problems. E.g.:
  - Ignore C/C++-comments only worked with a preprocessor active.
  - Preprocessor output now is input of line-matching preprocessor.
  - Paste to diff-window, didn't work if LMPP or Ignore C/C++-Comments was set.

Version 0.9.82 - 2004/02/02
===========================
- DirectoryMerge: Running merge op for last item in a folder, performed the
  merge op for all following items in following folders. (Possible data loss!)
- Fix: Preprocessors and "Ignore Comments" didn't work at the same time.
- Fix: Preprocessors crashed with remote files.
- Open-Dialog: When either input is changed, then reset the output to be empty.
  (To avoid accidental overwrites.)
- Icon for "Highlight white space differences."
- Editor-Option: Line End Style for saving: Dos/Windows "\r\n" vs. Unix "\n"
- Merge output editor: Corrected wrong encoding for output-filename and 
  user-typed characters.
- Speedup for reading directories under Windows.
- Enhanced progress dialog responsiveness during local file copy.
- Fix for non-KDE-version: No URL-encoding when dropping files in open dialog.

Version 0.9.81 - 2004/01/08
===========================
- Allow to compile with --enable-final
- Bugfix for 3 file-compare (and A or B don't exist, crashed)
- Bugfix for crash when second directory is merged
- Some keyboard-shortcuts for selection of merge-operation didn't work correctly.
- Shortcuts Ctrl-1/2/3 are possible in textmergewindow and in dirmergewindow, 
  depending on the focus.
- First steps towards internationalisation
- Manpage doc/en/kdiff3.1 by Eike Sauer (for Debian)
- Directory rescan shortcut SHIFT-F5

Version 0.9.80 - 2003/12/08
===========================
New Text Diff/Merge Features:
- Now using GNU-diff algorithms internally. (Option "External Diff" removed.)
- Option for treating C/C++ comments as whitespace during diff.
- Bugfix for locale character encoding (+ new option "Use string encoding")
- Option for suppressing highlighting in white-space changes.
  (Also suppresses highlighting in comments and numbers when the
  respective options are active.)
- Merge-menu: Choose A/B/C for all unsolved conflicts.
              Choose A/B/C for all unsolved whitespace conflicts.
- Options to automatically choose a certain source for whitespace conflicts.
- Shorcut F5 now used to reload the current file.

New Directory-Comparison/Merge Features:
- Option to trust filesize. (Some directory services don't copy the date/time correctly.)
- Shortcut F7 now starts complete directory merge (previously F5).
- Do the selected merge operation for the selected file/dir only
  "Run Operation For Current Item" (F6).
- Shortcuts for selecting the merge operation for the selected item.
  Ctrl-1/2/3/4/Del select A/B/C/Merge/Delete respectively.

Other Improvements:
- Several i18n-corrections (by Stephan Binner)
- Bugfix for option CVS-ignore: Didn't work correctly in subdirectories.
- Bugfix for remote operations: Operation can now be aborted, when KIO-slaves doesn't respond.
- Cancel-Button in progress bar.
- Default diff-view now again side by side instead of one above the other.


Version 0.9.71 - 2003/10/17
===========================
- Windows-Installer by Sebastien Fricker.
- Bugfixes for Windows. (Problems with setFont() in paintEvent().)
- Default font for Windows now "Courier New" (instead of Courier)
- Fix for compilation with gcc 2.95
- Support for Ctrl-Tab under Windows.
- Fix for finding documentation.
- Fix for problem with directory-sync-mode (new in 0.9.70).
- Fix for several subsequent CR-characters in input file.

Version 0.9.70 - 2003/09/28
===========================
- Transparent access to URLs via KIO (KDE only):
  Compare files and directories on ftp, fish, smb, tar etc. ressources.
- Workaround for a Win32-bug (Crashed sometimes during selections)
- When the merge flag is selected in the open dialog, the directory-tool
  always starts a merge by default for each file. Without the flag only a
  diff will be started by default.
- Immediately showing progress bar in dir scan.
- Showing progress bar for file comparison too.
- Directory-menu: Fold/Unfold all subdirs
- Bugfix for 3-way auto-merge: A line deleted from the base in B and C
  resulted in a empty line instead of being completely removed.
- Improved locale support
- KDiff3 is now a KPart
   - in KDevelop3 it can be used to compare the current text with the
     last saved version, or the current version on disk with the last cvs version.
   - in Konqueror it can be used to look at a unified *.patch-file if one complete
     version is available too.
- Documentation is now in docbook-format.
- "Toggle Split Orientation" for Diff-Input windows. (Good for long lines.)
- When "Dir and Text Split-Screen-View" is off: Now "Focus Next/Prev Window"
  also toggles between dir and text-windows. Selecting a file via double click
  switches to text-screen.
- KDiff3 displays a warning when trying to read a dir without the permission.
- Directory-Diff-Option "Use CVS-Ignore" to ignore files like CVS does.
- Displaying a status message at the end of the directory-comparison.
- Cursor in MergeResultWindow is automatically placed at current difference when a jump occurred.
  (But not when something was selected.)
- Fix for cursor blinking in the topline of the MergeResultWindow.


Version 0.9.61 - 2003/06/07
===========================
- Compilation problem fixed.
- Directory merge: Preserving file attributes and times during copy. (now also for Win32)
- Crash fixed, when directory comparison from the command-line was started.


Version 0.9.60 - 2003/06/01
===========================
New features:
- New ways to select input for the diff window:
  - Pasting clipboard text into a diff window.
  - Drag and drop a file from a filemanager (e.g. konqueror) onto a diff window.
  - Drag and drop text from an editor (e.g. kate) onto a diff window.
  Reanalysis starts immediately if no merge is in progress.
  (This should help you to compare similar parts in the same file.)
- New/Deleted white lines are now also considered as white deltas.
- Configurable keyboard shortcuts for most actions (KDE version only).
- The overview now also distinguishes whitespace deltas.
New preprocessor options:
- You can now define your own external Preprocessor and LineMatchingPreprocessor:
- "Convert to upper case",
- "Ignore numbers"
Fixed bugs:
- Directory merge: Preserving file attributes and times during copy.
  (not for Win32 yet)
Source-tree-structure:
- Switch to KDevelop3 (Gideon): Renamed subdir "kdiff3" to "src".
- xpm-files in xpm-subdirectory.


Version 0.9.51 - 2003/04/14
===========================
- Compilation fix for gcc 2.95.


Version 0.9.50 - 2003/03/30
===========================
Fixed bugs:
- Auto-Advance setting was lost when entering the settings-dialog.
- Windows specific: Keys with AltGr-Combination didn't work.
- Windows 95/98/ME: Fixed crash when KDiff3 is called used without parameters,
  and corrected support for external diff.
New Features:
- Search-function: Search for a string in all open text windows.
- Special background colors for current region.
- Button to toggle showing of whitespace in differences.
- Buttons to go to next/prev unsolved (!) conflict.
- While auto-advance waits, no more choices are allowed.
- New setting: Auto-advance-delay.
  (Note that with delay 0 fast clicks might be detected as double clicks and the second
  click does nothing. My advice: Prefer the keyboard-shortcuts Ctrl-1/2/3)
- Functions to Show/Hide Diff Window A, B or C. The other windows then have more space.
- Merge editor: The right mouse button selects the current region and lets you choose
  A, B or C via a popup menu.
- Commandline option --auto: No GUI if all conflicts are auto-solvable.
- When equal files are compared, then a message box informs you.
- Merge current file: When comparing two or three files, the merge can be started with a single click.
- Option dialog: Warning for "Defaults" added, because it resets all options.
- A warning is given, when the user tries to merge binary files. (i.e. files that contain '\0'-bytes)
Changed behaviour:
- 3 file automerge: When for a line B==C (and A!=B) then C will be selected.
  (In older versions this was a conflict. I was convinced that this is no problem.)
- Auto-Advance now jumps to next unsolved (!) conflict.
- On 256-color-displays KDiff3 uses them. (Previously KDiff3 only used 16 colors.)
- On 16-color-displays the Defaults-button in the options dialog selects special colors.


Version 0.941 - 2003/02/09
==========================
Fixed bugs:
- Qt-only-version: Compile problem corrected.
- Documentation: Formatting for tables corrected.


Version 0.94 - 2003/02/09
=========================
New features:
- Option to use external GNU-diff for line matching.
  (Sometimes GNU-diff is better, sometimes not: You may choose now.)
- In diff-windows a tooltip shows the full path if you move the mouse on the filename.
- Speedup of directory-merge operations without user interaction.
  (Not every item in the tree is made visible anymore. This took too long.)
- When opening a file for comparison or merge KDiff3 immediately shows the first difference.
- "Go To Top/Bottom"-action have been changed to "Go To First/Last Delta".
- Font-Option "Italic For Deltas" added.
- Many icons and actions will only be enabled, when the operation is possible.
- Icon for merge of current file in directory merge mode added.
- New action "Go to Current Delta".
- Conflicts where some lines contained only-white-space-changes are now separated from
  other non-white-space-conflicts.
- Experimental: Use as replacement for ClearCase-cleardiffmrg.exe (under Windows only).
  See main.cpp for details.

Fixed bugs:
- If files were different, but had the same dates, the "not existant"-icon was
  shown for one file. Now a error message will be shown if the option
  "Copy newer instead of merging" is used.
- Documentation: Section "The Operation Column" corrected.
- Qt-only-version: Fontsize wasn't correctly restored.
-                  Keyboard accelerators didn't work for ToggleActions.


Version 0.931 - 2003/01/19
==========================
Fix for compilation problems with gcc version < 3.


Version 0.93 - 2003/01/16
=========================
New features:
- Directory comparison and merge. (More than 3000 new lines of code only here!!!)
- Open-Dialog: Filename specification: If no previous filename is there then start
  directory is taken from another file.
- Message about number of found and automatically solved conflicts.
- Support for wheelmouse based scrolling.
- New option in Diff-tab: Preserve Carriage Return Characters

Fixed bugs:
- Save button disabled until all conflicts are solved.
- Copy-operation conserves conflict messages "<Merge Conflict>".
- Paste operation created pseudo conflicts when the clipboard contained empty lines.
- W95/98/ME specific program crash removed.


Version 0.92 - 2002/11/04
=========================
Severe bug corrected:
- Merge menu: Choose A/B/C Everywhere sometimes lost data. (introduced in 0.9)


Version 0.91 - 2002/11/03
=========================
Speed improvements for very big/complicated files:
- Faster analysis because of limited search range (can be adjusted).
- Faster scrolling and editor behaviour.

Fixed bugs:
- Compilation problem with gcc 3.2 fixed.
- When comparing two lines, matching spaces often were undetected.
- Merge editor appended extra empty line when saving.
- Sometimes the next diff/conflict wasn't made visible.
- The Auto-Advance setting is saved now.
- When doing a merge the application now has modified-state,
  even without further input. (The old method wasn't safe.)
- File selection now always in directory of respective file.


Version 0.9 - 2002/10/16
========================
New features:
- Qt-only support. Allows compilation under KDE2, Gnome, Mac, Windows, ...
  Note that KDE3 still gets special treatment.
- For Mergers: Auto-Advance after selection, Choose A/B/C everwhere, ...
- Commandline: If files with same name in different directories
  are compared, only the first parameter needs the filename.
- Shift-Del, Ctrl-Ins, Shift-Ins supported for Cut/Copy/Paste

Fixed bugs:
- Make failed on some systems because of missing "minmax.h".
- Files where opened for reading, but not closed afterwards.
- Vertical scrollbar sometimes didn't work correctly.



Version 0.81 - 2002/08/18
=========================
New features:
- Now KDE3 is also supported. Previously only KDE2 was supported.
- Navigation via click into the overview column now supported.

Fixed bugs:
- Some input files caused a crash in the diff-algorithm.
- The meaning of option "Ignore trivial matches" was inverted.
- When selecting a text in one window, this deselects any previously
  active selection in the same or another window.



Version 0.8 - 2002/07/28
========================
This is the first version to be released.