Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 1.9, 1.9.1, and 1.9.2

Merge default branch from "stable" repo

Until the 2.0 release, the stable named branch will be for hgtk development and
the default named branch will be for Qt thg development.

Changeset 4f367026cf64

Parents fff423494f74

Parents fc3d0978e38b

by Steve Borho

Changes to 56 files · Browse files at 4f367026cf64 Showing diff from parent fff423494f74 fc3d0978e38b Diff from another changeset...

Show Entire File .hgignore Stacked
(No changes)
Change 1 of 1 Show Entire File .hgtags Stacked
 
31
32
33
 
 
 
 
31
32
33
34
35
36
@@ -31,3 +31,6 @@
 c32abb03fa33368314460e2878a4c44de1014b27 0.9.3  bb37ccc53f7157714b407075ed71f63d27e469f4 1.0  bcf0eaf6db6af3537d2d691b9f0b7deee550d179 1.0.1 +eeed481b2ff29ed6192245a1b7c27a1a3e45b753 1.0.2 +a0c18113363a28abc40960f500c911ac0d15496a 1.0.3 +710568596bcd65c57ff553f10a7859d64bea34ef 1.0.4
Change 1 of 1 Show Entire File MANIFEST.in Stacked
 
2
3
4
5
 
6
7
 
 
2
3
4
 
5
6
7
8
@@ -2,6 +2,7 @@
 include contrib/_hgtk  include contrib/nautilus-thg.py  include contrib/mergetools.rc -include COPYING.txt ReleaseNotes.txt +include COPYING.txt  recursive-include i18n *.po  recursive-include doc * +recursive-exclude doc/build *
Change 1 of 1 Show Entire File ReleaseNotes.txt Stacked
 
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
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
@@ -1,982 +0,0 @@
-# -*- coding: UTF-8 -*- - - Release Notes for TortoiseHg - -This file contains last minute notes to users about the releases, which -may not be included in the documentation or README files included with -the distribution kits. It also contains change information, for users -who are interested in what bugs have been fixed, and what features have -been added in the current version. - -The ReleaseNotes page on the TortosieHg Wiki is usually kept up to date. -http://bitbucket.org/tortoisehg/stable/wiki/ReleaseNotes - -= TortoiseHg 1.0 = - -Released on March 5, 2010 - -Codenamed **Varnish** - -== Packaged Versions == - -The following products are included in our TortoiseHg Windows installers. - -* Mercurial 1.5 -* Python 2.6.4 [1] -* GTK 2.18.7 -* PyGtk 2.16.0 -* python-svn 1.6.6 (for use by hgsubversion and hg convert) -* dulwich (for use by hg-git and others) -* Perfarce extension -* hgeol extension -* mercurial keychain extension -* TortoiseSVN's doc diff scripts -* See extension-versions.txt in the install directory for the complete -* list of bundled extensions and modules and their versions - -[1] If you used any hooks or extensions with previous versions of -TortoiseHg, and those hooks or extensions added local Python -site-packages to sys.path, you will have to upgrade your Python to 2.6 -to stay current with TortoiseHg 1.0. Failure to do so will cause hgtk -to not function correctly. You will see errors on the console about -failing to import gdialog. - -== Behavior Changes == - -=== Entirely new installer === - -The new MSI installers can perform installs and upgrades/downgrades (of -previous MSI installs) without reboot and perform silent installs. The -MSI installer packages are now digitally signed. - -There are two important details to be aware of: - -1) **You must uninstall pre-1.0 (InnoSetup based) installers before -installing 1.0. Before uninstalling the old version, backup your user -Mercurial.ini file.** The old installers have a tendency to delete your -user Mercurial.ini file when they are uninstalled. - -2) **There are now separate x86 and x64 installer packages.** Download -the appropriate package for your platform. - -After the first install of an msi installer (not an upgrade or downgrade -from a previously installed msi installer), a logout/login of all users -is required to have the overlay icon handler initialized. The context -menu works without logout/login. Later upgrade (or downgrade) installs -won't need a logout/login on Vista and Windows 7, as all affected -programs are shut down by the installer and explorer is restarted -automatically by the installer. - -On Windows XP, a logout/login of all users after every msi upgrade or -downgrade install is required. If in doubt, doing a reboot will make -sure all users will get the updated files loaded. - -If you don't install any shell extension at all (overlay icons and shell -context menu), then no logout/login is needed at all. - -If you don't install the 32 bit ("x86") shell extension on 64 bit -versions of Windows, there will be no need to shutdown any 32 bit -programs on later upgrades/downgrades (which may be handy, because, -typically, lots of programs -- e.g. email clients, browsers -- are still -32 bit only). On 64 bit Windows Vista and Windows 7, explorer is a 64 -bit process, so there is no need to install the 32 bit shell extension -on these systems in order to have the overlay icons and context menu -working in explorer. - -There are more installer details near the end of the release notes. - -=== Branch Head Detection === - -In Mercurial 1.5, the 'hg heads' command was changed to make it more -branch centric. In particular, a revision with children on other -branches but no child on it's own branch is still considered a branch -head. For example, if you merge the head of branch A into branch B, -branch A's head is still considered a repository head even though it has -a child in branch B. - -TortoiseHg tries to follow along with this semantic change, primarily in -the commit tool. We no longer warn of creating new heads when -committing on a branch head that has children in other branches. And -similarly merging heads of two branches no longer indicates the reducing -of the number of heads. Refs #953 - -=== Shell extension configuration removed from taskbar app === - -The Shell extension configuration tool is now launched from its own -shell context menu option named "Explorer extension settings". The -dialog no longer has a logging feature, so debugging overlay refresh -issues must be done by manually starting the thgtaskbar.exe application -from a command line window. - -=== CopyHash configurable removed === - -The tortoisehg.copyhash configurable, marked deprecated in 0.9, was -removed in this release. Use the 'Copy Hash' context menu option in the -Repository Explorer instead. - -=== Skip Diff Window removed === - -The tortoisehg.nodiffwin configurable has been made obsolete by an -overhaul of the visual diff system. The system automatically detects -when the visual diff window is required. - -== Enhancements == - -=== Visual Diff Overhaul === - -The visual diff infrastructure was largely overhauled in this release to -detect diff tools on your computer and use them optimally. Among other -improvements, it now supports visual diffs of renames and copies, as -well as many common binary formats. For details, see - -http://tortoisehg.bitbucket.org/manual/1.0/common.html#visual-diffs - -Refs #567, #166 - -=== Import Dialog === - -TortoiseHg can now import (or qimport) patches from a dialog which -supports file and folder drag-n-drop. - -See http://tortoisehg.bitbucket.org/manual/1.0/patches.html#import-patches for details - -=== Perforce Integration via perfarce extension === - -TortoiseHg can now operate as a front end to a Perforce client via the -use of the perfarce extension. - -See http://tortoisehg.bitbucket.org/manual/1.0/extensions.html#perfarce for details - -=== HTTP(s)/SMTP keychain integration === - -The mercurial-keyring extension is now bundled. It caches passwords for -HTTP(S) and SMTP requests. It must be enabled and configured to -activate the cache behavior. - -See http://tortoisehg.bitbucket.org/manual/1.0/extensions.html#mercurial-keyring -for details. - -Refs #103, #854 - -=== Changeset Message Links === - -The Repository Explorer now parses your commit messages for changeset -hashes, HTTP(S) URLs, and bug tracker links. For more information, see - -http://tortoisehg.bitbucket.org/manual/1.0/changelog.html#message-parsing - -Refs #315, #369 - -=== Miscellaneous === - -* CmdRunner widget for running interactive commands in the background (much fewer popup windows) -* Improved support for bookmark extension -* bash completion support added for hgtk -* Repository Explorer menu cleanup -* Icons for file status in Repository Explorer -* Icons in menus of Repository Explorer and other applications, #704 -* Improved row selection logic in Repository Explorer -* Improved support for converted subversion changesets -* MQ pane added to commit tool (only visible when MQ extension is enabled) -* MQ pane supports file and directory drag/drop events -* MQ pane supports multi-selections, #874 -* Add 'no-backup' option to revert mode of quickop dialog -* Taskbar icon display is now configurable from shell configuration dialog -* Support for subrepos in the status/commit tool, #338, #507. -* Improve selection and context menu behavior of status/commit/shelve tools, including #633,#875 -* Allow a new named branch to be created without file changes -* Merge option to discard changes from other branch (dummy/null merge) #873 -* New layout for settings tool, new fonts page #924 -* Layout improvements to several tools, including #712,#713, #724, #763,#768, #773,#805,#874,#878,#883 -* Ctrl-., next/prev file accelerators for several tools -* Ctrl-[] page up/down accelerators for several tools -* The About dialog will look for upgrades and offer a download link -* Tag dialog improvements, #915, #916 -* Explorer overlays are now case insensitive #867 -* Show context menus from "Library" folders and background in Windows 7, #923 - -== Bug fixes == - -* #507 - commit: update .hgsubstate when checking in dirty subrepos -* #561 - status: improve display of merge diffs -* #586 - status: check files after running rename guess tool -* #709 - status: partially selected files refreshed properly -* #764 - prevent traceback in Repository Explorer -* #784 - detect and help prevent install problems on Linux -* #788 - prevent a traceback in quickop dialog -* #792 - prevent a traceback from non-standard dialog layouts -* #827 - catch up with patch API changes in Mercurial -* #834 - catch errors from launching URLs on Windows -* #844 - fix hunk selection feature, after regression -* #846 - use newer status() API after older function was removed -* #847 - re-enable toggle display of deleted files in status/commit/shelve -* #850 - patch iniparse to consider %include lines to be comments -* #860 - fix commits from context menu of commit tool -* #867 - handle case folding conflicts in icon overlays (use lower case file names everywhere) -* #870 - commit: fix parent bar refresh -* #888 - fix tracebacks in quickop dialog -* #894 - prevent crashes in quickop on early exits -* #897 - diff text pane of status/commit tool now supports max diff size -* #907 - Catch IO and other errors when saving files from other revisions -* #912 - CTRL-C in cmd.exe should not kill forked hgtk processes -* #919 - Consistent treatment of branch names and UTF-8 -* #920 - disable MQ operations when a bundle is applied -* #922 - Catch errors during status refresh -* #927 - Strip leading/trailing whitespace in clone tool -* #929 - QNew will no longer include all diffs when no files were selected -* #934 - Correctly reset commit tool title after clearing a filter -* #947 - Save cherry picked patch files with raw EOLN -* #942, #959 - Improve bundle error handling -* #951 - Escape file paths on Windows if they are not safe globs -* #977 - Close init dialog on success - -== Installer Changes == - -TortoiseOverlays are now included as "merge modules" so they no longer -appear in **Add/Remove Programs** as separate applications. It should -be safe to uninstall old versions of TortoiseOverlays you find on your -computer at the same time you uninstall your older TortoiseHg installs, -so long as you do not have other Tortoise utilities that use them -(TortoiseCVS or TortoiseBzr, for instance). Future upgrades and -uninstalls should handle TortoiseOverlays seamlessly. - -Similarly, we include the MSVC CRT redistributables using MS's approved -merge modules. - -Because of these first two changes, the MSI installers require elevated -install privileges. We do not intend to make any ZIP style installers -for download, though users are free to make them for their own use. -Refs #677 - -The new MSI packages will refuse to upgrade an old InnoSetup install. -The old install must be removed and rebooted before installing the MSI -package. The good news is this should be the last reboot required by -THG. MSI packages will upgrade or downgrade other MSI packages without -reboot. - -If the old InnoSetup installer created your user Mercurial.ini file (if -it asked for your username and email address) the old installer will try -to delete that file when you uninstall it. We *highly* recommend you -backup your user Mercurial.ini file before uninstalling your existing -TortoiseHg package. The new MSI installers do not have this problem. - -MSI's use the Windows Installer framework, so you get safer upgrades, -repair facilities, and safe rollbacks after errors. - -There are now separate packages for x86 and x64 targets. They will -refuse to install on inappropriate architectures so just be aware of the -split. - -The x64 package correctly installs the x86 portions under -${ProgramFiles(x86)} and the x64 portion under ${CommonProgramFiles}. -This is a change from the pre-1.0 installers. - - - -== TortoiseHg 0.9 == - -Released November 16, 2009 - -Codenamed **Sandpaper** - -=== Packaged Versions === - -TortoiseHg 0.9 requires Mercurial version 1.4 - -=== Behavior Changes === - -* dropped support for external commit tools -* potentially harmful extensions are no longer loaded for you. MQ, qup, -rebase, transplant, and fetch must be enabled by the user to unlock their -support inside the TortoiseHg tools. -* The synchronize tool has been deprecated. Most of it's functionality has -been merged into the changelog tool. Synchronize will be removed in a future -release. -* commit tool - after a commit, all remaining files are unchecked -* commit/status/etc - context menus were refactored as per issue #133 - -**Note** During upgrade, it is possible for the taskbar app to crash when the -installer closes it. This only happens if the taskbar config dialog has been -opened, and it only seems to happen on slower XP machines. It is also -harmless. The installer was trying to kill it, it just happened to die in a -non-orderly fashion. Just ignore the crash. If you don't want to see this -happen, simply exit the taskbar app before starting the upgrade. - -=== Enhancements === - -* spell checker for commit and email tools (gtkspell, Gnome only) -* changelog - integrate synchronize functionality, including previews of incoming changesets -* changelog - integrate MQ -* changelog - new branch graphing algorithm -* changelog - rebase and transplant context menu support -* changelog - transplanted changes link to their source, when possible -* changelog - allow columns to be re-ordered -* changelog - improve display of merge changesets -* changelog - allow graph column to be resized past 500 pixels -* changelog - less padding between changeset rows -* changelog - per-branch coloring in the graph (toggleable) -* changelog - show filelog graph if single file pattern specified #265 -* changelog - new "Select Revision" dialog and Navigate menu -* changelog - new filter bar below toolbar, title indicates current filter -* changelog - memory utilization improvements -* changelog - refresh/load performance improvements -* changelog - menu bar -* datamine - improved rename support -* datamine - view at revision, file history context menu options -* status - menu bar -* status - progress bar for repo.status() calls -* status - add support for forget command -* status - add a button for clearing file filter pattern -* status - allow revert to discard changes -* status - disable toolbar buttons when no files are checked -* status - move refresh button #402 -* commit - text diff tab -* commit - parent changeset indication -* commit - use gtkspell on platforms that support it (Linux, etc) -* commit - username entry, autoinclude, push-after-commit advanced bar -* commit - uncommitted changes are unchecked -* commit - QNew and Qrefresh improvements, 'patch contents' tab -* commit - merge improvements -* archive - new archive feature, from both 'hgtk archive' and the changelog menu -* synch - shelve toolbar button -* thgtaskbar - added --noicon command line argument -* shelve - 'shelf contents' tab - -=== Bug fixes === - -* changelog - clicking on cset links loads revisions if needed -* status - catch IOErrors during repo.status -* rename - fix error handling when no arguments specified -* too many more to enumerate - -=== Installer / Source Changes === - -* Spell Checker depends on gtkspell. In Debian 5 it is included in the package -python-gnome2-extras, in sid probably in python-gtkspell -* [[http://code.google.com/p/iniparse/|iniparse]] was unbundled from the source repository -* The hggtk and thgutil python packages were moved into tortoisehg/hgtk and tortoisehg/util, respectively - - - -= 0.8 Release July 1, 2009 = - -== C++ Shell Extension == - -The Python shell extension has been removed in favor of a pure C++ shell -extension which directly reads the Mercurial dirstate for overlays, and -produces hard-coded context menus. This should fix much of the -interoperability problems reported in issue #67, and it fixes the -overlay performance problems we have suffered since version 0.1. - -To support fast overlay icons, we have introduced a taskbar application -(thgtaskbar.exe, programmed in Python) that externalizes the refreshing -of cache information (new cache file ".hg/thgstatus") into a separate -server process (started on user logon), controlled by the shell -extension over a named pipe. thgtaskbar.exe adds a systray icon with an -options dialog to control settings affecting the shell extension. - -== X64 Support == - -The C++ TortoiseHg shell extension works properly in x64 Vista and Win7 -environments. Release 0.8 does not support having 32bit and 64bit -extensions installed on the same machine. We do plan to support this in -0.9. - -== Translations == - -TortoiseHg 0.8 is the first release to include translations. This -release has translations for 13 locales. Eight of those are full or -nearly full translations. - -== Linux packages == - -RPM and DEB packages will be made available for download for this -release. - -== Bug fixes and Enhancements in 0.8 == - -* #1 - never ending blinking overlays in Vista -* #10 - support --close-branch in commit tool -* #14 - consistent behavior in cmenu operations -* #16 - overlays on repository root -* #18 - hunk selection should survive refresh -* #27 - Config dialog's path editor -* #28 - merge workflow is clunky -* #29 - support pull --rebase from synch dialog -* #31 - consistent Y/N accelerators on question dialogs -* #32 - consistent behavior of ctrl-w, ctrl-q, and ctrl-d -* #36 - overlays are very slow -* #38 - configure separate visual diff tool for single file use -* #39 - avoid binary diff overhead where possible -* #44 - consistent behavior in email dialog -* #47 - bug report dialog for hgtk -* #48 - Allow Visual Diff whenever unified diff is presented -* #51 - visual diff should be default file action -* #52 - add --remotecmd to advanced synch options -* #53 - improve clone tool work flow -* #54 - add commit button to merge tool -* #58 - hide passwords in URLs in the synch tool -* #59 - configurable context menu -* #61 - adding a file just by two clicks -* #64 - remember position and maximize state -* #66 - file history vdiffs should filter by filename -* #71 - context menus on Desktop -* #67 - interoperability with other applications, especially Python apps -* #82 - win32text breaks record and shelve -* #96 - improve support for named branches in synch tool -* #97 - improve branch support and workflow in update dialog -* #104 - no URL history in synch dialog drop-down -* #110 - commit option to insert file names into message -* #111 - ctrl-enter to commit (accept response) -* #112 - consistent loading of repo .hg/hgrc files -* #114 - commit/status chokes on large files -* #116 - fix ever-expanding thgconfig dialog -* #117 - hgtk version should show hg version info -* #123 - Changing the file categories selection status changes already selected items -* #131 - Improve changelog performance with very large changesets -* #132 - Specify the commiter -* #138 - consistent treatment of default paths -* #140 - slow explorer even when overlays are disabled -* #141 - show branches in merge tool -* #145 - add ability to generate functional tarfile distributions -* #159 - support internal:merge as merge tool option -* #160 - give useful feedback when no changes are vdiffable -* #161 - commit takes too long to startup -* #164 - hide passwords in settings dialog (not in paths) -* #169 - F5 to refresh -* #172 - add utc column to changelog -* #174 - add edit button for mercurial.ini in settings tool -* #177 - add synch button to log viewer, when not launched from synch -* #178 - edit user wide hgignore files -* #180 - clone tool usability improvements -* #184 - non-editable background color for description text in settings dialog -* #185 - bold font and ctrl-p accelerator for wc parent in log tool -* #187 - better dialogs for mercurial prompts (mostly from merging) -* #188 - load extensions at hgtk startup, fixes some extensions -* #192 - add 'show revision ancestry' to changelog tool -* #205 - status is too slow with large files -* #245 - allow missing files to be marked remove in status/commit tools -* #246 - serve dialog locked up on address conflicts -* allow revert to work in merge contexts (revert to either parent, or remerge) -* allow searching in grep and annotate windows -* display aliases in synchronize window, allow them to be used as URLs -* Setup proper search columns in all treeview widgets -* Catch HTTP errors cleanly in synchronize tool -* annotate work-flow improvements. ctrl-d everywhere, zoom to change, etc. -* zsh completion file for hgtk - -== MacOSX support == - -* hgtk works on MacOSX, but requires one to build GTK+ -* Workarounds for multiple window map events -* Uses apple key for command sequences (%-W, %-Q, %-D) - -== Behavior Changes == - -The Ctrl-O accelerator in the commit tool removed, replaced by a -Ctrl-Enter generic accelerator that is common to many dialogs. - -Shell extension configuration removed from Mercurial.ini. However they -are editable in the taskbar options dialog and changes made there take -effect immediately. - -There is no supported method in 0.8 for de-registering the shell -extension without uninstalling THG. You can globally disable the -overlays via it's configurable option, but the context menu is always -present. - -Merge and unmerge were removed from the shell context menu. You must -use the changelog tool to perform merges. - -The changelog tool does not show all file diffs in a changeset right -away. It only shows the first file's diffs. To see all diffs at once, -the user must click 'All Files' at the top of the file list. - -Changelog, commit, status, etc all obey a maximum file size for showing -diffs (default is 1MB). Files above this size will not be diffed for -performance reasons (obviously you can still commit them). This max -diff limit is configurable per-repository via the settings dialog. - -The default dbl-click action in the Changelog tool is now visual diff. -In previous releases it was 'Display Change'. - -Commit, status, shelve no longer show all diffs at once. They only show -diffs for the selected file. This change was made for performance -reasons. - -The 'show diffs' button was removed from commit, status, shelve. - -hgtk forks a separate process for GUI commands, freeing up the CLI. -HGTK_NOFORK environment variable and the --nofork argument disable the -forking behavior. This will be user configurable in 0.9. - -== Installer / Source Changes == - -The hgtk script has been moved from contrb/ into the project root. - -The hgproc script and batch file have been removed. - -The tortoise python package has been removed. - -The thgutil package has been added. - -The tracelog application has been removed, since THG no longer uses -win32traceutil. Dbgview from sysinternals can be used to debug the new -shell extension. - -The forest and qct extensions are no longer bundled. Forest is being -replaced by a core Mercurial feature (subrepo) in hg-1.3, and qct has -not been included in THG since 0.6. Both extensions can still be used -with THG 0.8, you must download them and then specify their full path in -your user Mercurial.ini file. - -We no longer bundle extra GTK themes. We only ship MS-Windows since it -now works correctly on all the platforms we're interested in. - -We no longer bundle msvcp71.dll and msvcr.dll - -We no longer bundle Putty.exe and Puttygen.exe, but Pageant is still -included. - -We now bundle win32 and x64 versions of TortoiseOverlays. - - -= Release 0.7 March 1, 2009 = - -Bug fixes since 0.7: - -* thgutil: UNC paths should be filtered by 'localdisks' config -* serve: direct web browser at loopback address -* shlib: moved app data to %APPDATA%\TortoiseHg on Windows -* thgconfig: UTF-8 fixes -* thgconfig: show description of selected item -* thgconfig: move 'bottom diffs' to tortoisehg page -* datamine: fix markup problem in status bar -* sync: allow bundles without .hg extension -* sync: handle non-ascii paths and aliases -* status: prevent traceback caused by toggling rename diffs -* update: fix update to rev 0 from changelog viewer -* hgtK: follow 'hg version' convention for 'hgtk version' - -New features and improvements in 0.7: - - * Status window now supports shelving of selected changes. - Unknown files are now displayed by default, hg status convention. - - * Commit window now supports commit of selected changes (record-style) - or shelving of selected changes. - Modified, Added, and Removed files are preselected for commit. - Added a ctrl-o key accelerator for initiating a commit. - Added support for refreshing an applied MQ patch. - Improved support for merge (two parent) commits. - - * Qct has been unbundled and must be downloaded separately. We - strongly suggest you use the internal tool instead, as it has better - change selection support than Qct and it is much better integrated - into TortoiseHg. - - * The tortoisehg.commit configuration setting has been obsoleted. - TortoiseHg will always use the internal commit tool by default, - unless the user selects Qct as the prefered *external* commit tool. - Settings->Global->Commit tab->External Commit Tool - - * Synchronize window now supports reading bundle files (*.hg). - Recognizes whether it has been launched in push or pull mode - - * The changelog window can now generate bundle files - Multiline change summaries can optionally be concatenated - - * New rename window for simple file or directory renames. - - * New rename guessing dialog for detecting renames after they happen. - - * New tool for managing an .hgignore file. - - * The configuration window has been reorganized for simplicity. - - * Nautilus: Fixed file version detection. - - * Hgtk: added --limit option to log. - added aliases to dialogs that support many operations. - added rename and guess commands. - -New features and improvement in 0.6: - - * Updated to Mercurial 1.1.X (1.1.2, as of release). - - WARNING: - The GUI tools in TortoiseHg 0.6, including hgtk, have been updated to work - exclusively with Merecurial 1.1.X, and will not work with older (pre 1.1), - and perhaps even the later, releases of Mercurial. - - * Explorer shell extensions: - - Display all available menus in primary context menu, with non-applicable - menu items disabled per selected objects. - - Improved 'sensitivity' of context menus. For example, the 'Create - Repository Here' menu will be disabled if the selected object is a file. - - * General improvement and updates: - - Tab characters in source/diff lines can be expanded optionally with the - new 'tabwidth' config option. - - All commit dates are now displayed in local time, with time zone info. - - GUI opearations are immuned to mercurial commands defaults (defined in - [defaults] section of mercurial.ini) - - WinMerge has been added Mercurial's merge-tools list, and will be - detected and used automatically (subject to priority). - - * New initialization (create new repo) window: - - Option to create special files (specially .hgignore) - - Option to create older (non-fncache) repo format. - - * Changelog viewer: - - Removed Tags column. Tags are now displayed in summary lines. - - Add display of branch names in summary lines. Branch names are colored - with color scheme of gitweb style. - - Add file context menu to revert files to selected changeset - - * Status window (changes apply also to the internal commit window): - - Support Mercurial's new 'resolve' command: with new 'ms' (merge state) - column in file-list area, plus new context menus to resolve merge - conflict and mark/unmark merge state. - - Replace Select & Deselect tool buttons with checkbox on the file-list - header. - - Add preliminary support for moving, renaming and copying of clean - (managed) files. - - Ignored files can now be added. - - * Datamining (grep and annotate) window: - - Add source line numbers to annotate lines. - - * Configuration window: - - New in-place editing support in 'paths' page. - - Updated hgweb style list per Mercurial 1.1 - - New 'Tab Width' config option in 'TortoiseHG' page to expand tab - characters in source lines displayed, with maximum of 16 spaces - allowed (Default: disabled) - - * Hgtk: - - Add 'init' command. - - Add --webdir-conf option to 'serve' command. - - Support command shortcut matching like hg. So 'hgtk cl' will bring up - the clone window. - - * Nautilus: - - Removed 'Open Terminal Here' menu options - - * Python trace collector: - - Show timestamp on output lines to assist debugging. - -Bug fixes in 0.6: - - * Fix context menu actions problem on non-ascii filenames - in status window [SF Bug 2151552]. - - * Fix missing parent/child fields in commit headers of changeset window, - mainly caused by empty commit messages in the parent/child changesets - - -New features and improvement in 0.5: - - * Explorer shell extensions: - - share overlay icons with TortoiseSVN 1.5.x via TortoiseSVN's - TortoiseOverlays project (by Peer Sommerlund) - - * New mercurial-like command line syntax for hgtk, with help support. - - * The gPyFm merge-tool is not longer bundled (see bug 2119067) - - * Interal commit dialog: - - show number of files selected (also apply to Status dialog) - - add 'Undo' button to rollback last commit. - - do not clear commit message window if commit fails - - accept commit message in multi-byte charset (fix bug 2116362) - - * Synchronize dialog: - - load patchbomb extension automatically (by Peer Sommerlund) - - -Bug fixes in 0.5: - - * [ 2119138 ] Merge-tool priority fix (by Mads Kiilerich) - * [ 2116362 ] Internal commit tool not support gbk comment - * [ 2113989 ] Can't create repository via Explorer context menu (when - a file is selected) - * [ 2103749 ] Changelog viewer doesn't refresh after making local tag - - * nautilus: fix error when there is no repo in the current directory - (by Germán Póo-Caamaño) - - -New features and improvement in 0.4.1: - - * Installer-only release to link with Mercurial 1.0.2 - -New features and improvement in 0.4: - - * Updated to work, and link, with Mercurial 1.0.1 - - * Explorer shell extensions: - - Added user config option 'tortoisehg.overlayicons' to enable/disable - display of overlay icons in selected repos. - - Available options: - True: - Show overlay icons - False: - Don't show overlay icons - localdisks: - [global (user) setting only] - Don't show overlay icons for repos reside on network drives. - - - Create .hgignore file automatically when initializing new repo - via 'Initialize new repo' context menu. - - * Hgk ('Revision Graph' on Explorer's context menu), better known as - 'hg view', is officially replaced by TortoiseHg's changelog viewer - ('View Changelog'). - - Note: Hgk may be reinstated by user, if necessary. Though it would - need some work to setup. - - * Changelog (History) Viewer: - - Added 'strip' and 'backout' functions to file context menu. - - Loading of changeset data (file list of diff chunks) is done in - background to improve response. - - Changeset window shows 'MAR' file status. - - File list has been moved to the left hand side. - - * Synchronize dialog: - - Added 'Stop' button to abort command executions. - - Added support for Fetch extension, as Pull's 'Do fetch' option [ 1914855 ]. - - Added buttons to 'View Pulled Changes' and 'Update to Tip'. - - Recall source and destination paths accessed in recent sessions. - - Recall Pull's 'Update to new tip' option setting from previous session - [ 1944469 ]. - - * Datamine dialog: - - Added 'Stop' button to abort grep searches. - - Added column for user names on annotate pages. - - * Commit dialog (internal, _not_ Qct): - - Recall commit messages of recent commits. - - Fixed handlng of merged repo per new Hg behavior (must commit all - files in a merged repo) - - * Clone dialog: - - Recall source and destination paths accessed in recent sessions. - - Cloning can now be aborted with the new 'Stop' button in HgCmd dialog. - - * Recovery dialog: - - Added 'Stop' button to abort command executions. - - * Added 'Stop' button to abort command executions in HgCmd dialog. - This applies to including Update, Clone and Commit dialogs, which - utilize HgCmd dialog to perform respective operations. - - * Unicode handling: - - Improved handling of UTF strings in Mercurial's metadata (commit - message, author, etc). - - Support Mercurial's HGENCODING environment variable. - - * Hgtk: - - Simplified installation on Unix/Linux systems. - - Confirm presence of critical Python modules, i.e. PyGTK and Mercurial. - - * Logos and icons: - - Updated Hg icon (on context menu and dialogs) to new droplet design - introduced in Mercurial 1.0 - - New TortoiseHg logo (in About dialog) by Peer Sommerlund. - - Several new menu icons by Peer Sommerlund, with better Windows - integration. The corresponding SVG source is also available in - TortoiseHg source tree. - - * Several other bugfixes and UI improvements. - -Bug fixes in 0.4: - - * Explorer shell extensions: - - Register context menu and overlay icon extensions onto the Explorer's - approved list. - - Fixed ThreadingModel registry setting per MS doc [ 1895443 ] - * TortoiseHg program groups now read 'hgproc' with hg.ico (in earlier - versions, it used 'Python' with python.ico) - * Make modal dialogs stay on top of their respective parent application - (issue triggered by a bug in PyGTK). - * Fixed random crashes in web server. - * Fixed addremove behavior in Commit dialog. - * Activated target revision option in Synchronize window that had been - dormant so far (as reported by Doug Philips). - * Terminate all backgrounded searches in Datamine window upon exit, so - the associated Python process may terminate immediately too. - * [ 1884919 ] Change Log hscroller - * [ 1925985 ] HTTP port field not effective - * [ 1914859 ] Global options should show up more often - * [ 1914550 ] Changelog: Problems with german umlaut characters - * [ 1902446 ] Commit claims file not under root while kdiff is open. - * [ 1892791 ] Windows Explorer painfully slow for network drives - -Changes and bug fixes since 0.4RC4: - - * Fixed traceback when revert file in changeset or log windows. - * Fixed traceback when testing paths in Configure window. - -Changes and bug fixes since 0.4RC3: - - * Activated target revision option in Synchronize window that had been - dormant so far (as reported by Doug Philips). - * Terminate all backgrounded searches in Datamine window upon exit, so - the associated Python process may terminate immediately too. - * New icons by Peer Sommerlund for configuration windows to represent - repo and user config respectively. - * Theme improvement in the Configuration windows (by Peter Ruibal). - * Detect PyGtk and Mercurial installation more accurately in Hgtk - * Removed 'square-boxes' in license window (of About window) caused by - extra form-feed characters. - -Changes and bug fixes since 0.4RC2: - - * Fixed traceback in tracelog, which was broken in 0.4RC2. - * Right-click to diff/visual-diff to selected changeset, which replaced - the earlier diff-to-marked function. - * Create .hgignore file automatically when initializing new repo. - * Fix traceback when users try to enable internal commit dialog with - an empty 'commit' in mercurial.ini's 'tortoisehg' section. - * Handle empty cmd.differ entries in hgrc like hg does - * Register context menu and overlay icon extension onto the Explorer's - Approved list. - * Fixed UTF-8 encoding errors in hgcmd and several error message dialogs. - * New transparent TortoiseHg logo in About dialog, again by Peer Sommerlund. - * New 32x32 icons for dialogs to provide nicer icons when navigating - through the applications with Alt-Tab on Windows. - * Minor improvement/fixes on hgtk to simplify installation on *nix systems. - -Changes and bug fixes since 0.4RC1: - - * Added buttons to stop command execution in Synchronize, Recovery, - as well as any dialogs that use hgcmd dialog, including Update and - Clone dialogs. - * Show progress on status bar when updating changeset viewer. - * Support Mercurial's HGENCODING environment variable. - * [ Feature 1944469 ] Save and recall pull-update option in Synchronize - dialog across sessions. - * [ Bug 1939794 ] Unable to Merge changes with builtin commit UI. - * [ Bug 1941545 ] Clone log window doesn't scroll. - * [ Bug 1943382 ] hgproc.bat not executable without "installer" - * [ Bug 1941368 ] Configure Repository "Test" button results broken. - * [ Bug 1939911 ] Modal Dialogs aren't staying on top on application switch - * [ Bug 1941376 ] hgtk with no parameters gives no help. - * [ Bug 1937966 ] Changelog: utf8 messages handled incorrectly - * [ Bug 1942777 ] National characters are not handled correctly. - -Fixes in Mercurial since 0.3: - - * qimport fixed on Windows - * new built-in filemerge system replaces hgmerge patches - * many fixes for keyword extension - * new -U (context lines) argument for diff and qdiff commands - -New features in 0.3 - - * Major improvements to changelog browser. It is now good enough to - deprecate both hgk and hgview. Neither are bundled with the 0.3 - binary installer, but both can be added by the user if they wish. - Support for external revision log viewers will be dropped in 0.4. - - * The new changelog browser supports filtering by file pattern, - keywords, dates, and branches. It is capable of graphing both the - repository changelog and individual filelogs. Changeset coloring by - author is optional (tortoisehg.authorcolor). All changeset graphing - is done incrementally in batches (tortoisehg.graphlimit: 500) - - * New DataMine application for searching history (hg grep) and - inspecting file histories (hg annotate). This new application is - tabbed to facilitate debugging sessions where search results and - annotations can be grouped together for easy cross-reference. - - * New changeset browser, supports multiple parents intrinsically and - supports a number of file-revision features (view at revision, save - at revision, annotate at revision, revert to revision, etc). The - new changeset browser is also integrated into the changelog browser. - - * Standardized window layouts. Close buttons have been moved to the - toolbar. Dialogs that use progress bars now use a standard status - bar/progress bar widget. Tooltips have been added. - - * Hgtk wrapper application for launching TortoiseHg dialogs from the - command line - - * Support for an external visual editor: tortoisehg.editor. Takes - precedence over ui.editor when viewing files with TortoiseHg - - * Performance improvements in Mercurial itself (cset 0973501e5f4a) - - * New installer bitmap from Peer Sommerlund - - * Misc: The Synchronize dialog has been improved. The Web Serve - dialog no longer requires a subprocess to run the web server. The - configuration dialog has a number of bug fixes for the paths tab, - and now has separators in the drop-down boxes for the varying value - types (current, suggested, history). Http authentication has been - fixed. The hg integration library has seen major cleanups. - -Bug Fixes in 0.3: - - * [ 1863086 ] "Revision Graph" fail on UNC path - Fixed by removing hgk from base install. Integrated log viewer - is UNC path safe. - * [ 1851395 ] Total Commander problem - * [ 1882074 ] global name 'p' is not defined - * [ 1854443 ] View changelog fails - -New features in 0.2 - - * Gtools has been integrated into TortoiseHg proper. It is no longer - bundled as a Mercurial extension. The graphlog extension is now enabled - again by default (only usable from the CLI, however). - - * Context menu icons, application window icons. The context menu has been - simplified. - - * The changelog browser has a number of new features (filters and context - menu options). The tag browser and changelog tagging features have been - merged into this tool. - - * Hgview is now the default history viewer, hgk is being deprecated. - - * An email dialog for interfacing with the patchbomb extension. It can be - reached from the synchronize dialog and from the changelog browser. - - * A new configuration tool (replacing hg-config dialogs) that allows you - to configure TortoiseHg and Mercurial. - - * Most dialogs now use HgThread and GtkUI to run hg commands. These - classes run the command in a background thread and provide GUI prompts - for when user interaction is necessary (http web auth, etc). For some - commands, it also provides a progress bar. - - * A preview of the new Mercurial merge back end. The python hgmerge.py - script is being integrated into Mercurial, and this installer has a - preview of how that will work. You need to unset any ui.merge in your - Mercurial.ini file in order for it to work properly. If you don't - configure anything it will use simplemerge to automatically perform - merges. If conflicts are found it falls back to kdiff3 to resolve - them interactively. - - * Slight improvement on speed of overlay icons display. - - * A new 'about' dialog. - -Bugs fixed in 0.2 - - * [SF Bug #1851395] Overlay icons and context menus are no longer - restricted to MS-Explorer. So other file managers, such as Total - Commander, should be supported. - - * [SF Bug #1844722] Users can now create repositories inside repository - via the context menu. - -Changes since 0.2rc1 - - - N/A - - -
Change 1 of 1 Show Entire File ReleaseProcedure.txt Stacked
 
1
2
3
4
5
6
7
8
9
10
 
11
12
13
 
1
2
3
 
4
5
6
7
8
 
9
10
11
12
@@ -1,13 +1,12 @@
 Steps for making a release:    * Pull latest translations from Launchpad -* update ReleaseNotes.txt (major release only)  * set revision number in tortoisehg/hgtk/gdialog.py (major release only)  * set revision number in doc/source/conf.py  * tag stable branch of repository, push  * build pdf hgbook, check into thg-winbuild (major release only)  * build release installer -* commit, tag, push thg-winbuild +* commit extension versions, tag, push thg-winbuild  * create and upload a tarball (python setup.py sdist)  * upload installer to bitbucket, sourceforge, codeplex  * update URLs and front page of thg-web
 
15
16
17
 
18
19
20
 
48
49
50
 
51
52
 
53
54
55
56
 
57
58
59
 
68
69
70
 
 
 
 
 
 
 
 
71
72
73
 
15
16
17
18
19
20
21
 
49
50
51
52
53
54
55
56
 
57
 
58
59
60
61
 
70
71
72
73
74
75
76
77
78
79
80
81
82
83
@@ -15,6 +15,7 @@
 import os  import sys  import subprocess +import shutil  import win32con  import win32api  import win32process @@ -48,12 +49,13 @@
  sys.exit(1)   elif len(args) == 2:   local, other = [os.path.abspath(f) for f in args] + base, ext = os.path.splitext(local)   else:   local, base, other, output = [os.path.abspath(f) for f in args] + base, ext = os.path.splitext(output)   - base, ext = os.path.splitext(local)   if not ext or ext.lower()[1:] not in scripts.keys(): - print 'Unsupported file type', local + print 'Unsupported file type', ext   sys.exit(1)     proc = win32api.GetCurrentProcess() @@ -68,6 +70,14 @@
  sys.exit(1)     use = scripts[ext.lower()[1:]] + + if 'xls' in use[0] and os.path.basename(local) == os.path.basename(other): + # XLS hack; Excel will not diff two files if they have the same + # basename. + othertmp = other+'~x1' + shutil.copy(other, othertmp) + other = othertmp +   if len(args) == 2:   script = os.path.join(path, use[0])   cmd = ['wscript', script, other, local]
 
14
15
16
17
 
18
19
20
 
24
25
26
 
 
 
 
 
 
 
 
 
 
27
28
29
 
14
15
16
 
17
18
19
20
 
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
@@ -14,7 +14,7 @@
 araxis.regappend=\ConsoleCompare.exe  ;araxis.executable=${ProgramFiles}/Araxis/Araxis Merge/ConsoleCompare.exe  araxis.priority=-2 -araxis.args=/3 /a2 /wait /merge /title1:"Other" /title2:"Base" /title3:"Local :"$local $other $base $local $output +araxis.args=/3 /a2 /wait /merge /title1:"Parent 1" /title2:"Merge Result: "$output /title3:"Parent 2" $local $base $other $output  araxis.premerge=False  araxis.checkconflict=True  araxis.binary=True @@ -24,6 +24,16 @@
 araxis.dirdiff=True  araxis.dir3diff=True   +UltraCompare.regkey=Software\Microsoft\Windows\CurrentVersion\App Paths\UC.exe +UltraCompare.args = $base $local $other -title1 base -title3 other +UltraCompare.priority = -2 +UltraCompare.gui = True +UltraCompare.binary = True +UltraCompare.checkconflicts = True +UltraCompare.checkchanged = True +UltraCompare.diffargs=$child $parent -title1 $clabel -title2 $plabel1 +UltraCompare.diff3args=$parent1 $child $parent2 -title1 $plabel1 -title2 $clabel -title3 $plabel2 +  kdiff3.priority=-3  kdiff3.args=--auto --L1 base --L2 parent1 --L3 parent2 $base $local $other -o $output  kdiff3.regkey=Software\KDiff3
Change 1 of 1 Show Entire File contrib/​rpm.sh Stacked
 
1
2
3
4
5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
7
 
1
2
 
 
 
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@@ -1,7 +1,20 @@
 #!/bin/sh   -mkdir -p rpmbuild/{SOURCES,BUILD} -hg archive -t tgz rpmbuild/SOURCES/tortoisehg-hg.tar.gz -rpmbuild --define "_topdir $(pwd)/rpmbuild" -ba $(dirname $0)/tortoisehg.spec || exit 1 +mkdir -p rpmbuild/{SOURCES,BUILD,RPMS,SRPMS,SPECS} +version=`hg parents --template '{latesttag}+{latesttagdistance}'` +if [ `expr "$version" : '.*+0$'` -ne 0 ]; then + # We are on a tagged version + version=`expr "$version" : '\(.*\)+0$'` + release='1' +else + release=`hg parents --template '{node|short}'` +fi + +hg archive -t tgz rpmbuild/SOURCES/tortoisehg-$version.tar.gz +sed -e "s,^Version:.*,Version: $version," \ + -e "s,^Release:.*,Release: $release," \ + `dirname $0`/tortoisehg.spec > rpmbuild/SPECS/tortoisehg.spec + +rpmbuild --define "_topdir `pwd`/rpmbuild" -ba rpmbuild/SPECS/tortoisehg.spec || exit 1  rm -rf rpmbuild/BUILD/  ls -l rpmbuild/{RPMS/*,SRPMS}/tortoisehg-*.rpm
 
51
52
53
54
 
55
56
57
 
68
69
70
71
 
72
73
74
 
51
52
53
 
54
55
56
57
 
68
69
70
 
71
72
73
74
@@ -51,7 +51,7 @@
 %{__python} setup.py build    (cd doc && make html) -rm doc/build/html/.buildinfo +rm -f doc/build/html/.buildinfo    %install  rm -rf $RPM_BUILD_ROOT @@ -68,7 +68,7 @@
 %files -f %{name}.lang    %defattr(-,root,root,-) -%doc COPYING.txt ReleaseNotes.txt doc/build/html/ +%doc COPYING.txt doc/build/html/  %{_bindir}/hgtk  %{python_sitelib}/tortoisehg/  %{python_sitelib}/tortoisehg-*.egg-info
 
72
73
74
 
 
 
 
75
76
77
 
72
73
74
75
76
77
78
79
80
81
@@ -72,6 +72,10 @@
 ;hgeol =  ;mercurial_keyring =   +; fixfrozenexts is enabled by default. It allows extension help +; to work "out of the box" from binary installers. +fixfrozenexts = +  ;  ; Define external diff commands, for hg command line use only  ;
 
16
17
18
19
20
 
 
21
22
23
 
16
17
18
 
 
19
20
21
22
23
@@ -16,8 +16,8 @@
  <Component Id="contrib" Guid="$(var.contrib.guid)">   <File Name="bash_completion" KeyPath="yes" />   <File Name="hgk" /> - <File Name="hgwebdir.fcgi" /> - <File Name="hgwebdir.wsgi" /> + <File Name="hgweb.fcgi" /> + <File Name="hgweb.wsgi" />   <File Name="logo-droplets.svg" />   <File Name="mercurial.el" />   <File Name="sample.hgrc" />
 
5
6
7
8
 
9
10
11
 
5
6
7
 
8
9
10
11
@@ -5,7 +5,7 @@
  your project. Component GUIDs have global namespace! -->     <!-- contrib.wxs --> - <?define contrib.guid = {509AE2EF-3AC6-4661-A9C3-51F663BE83B2} ?> + <?define contrib.guid = {D3BC122A-163C-4ef9-91C2-62E04B128A16} ?>   <?define contrib.vim.guid = {BEA4DF96-9CEF-4273-B637-8DE7B10A6FAE} ?>     <!-- doc.wxs -->
 
51
52
53
54
 
55
56
57
 
51
52
53
 
54
55
56
57
@@ -51,7 +51,7 @@
 # The short X.Y version.  version = '1.0'  # The full version, including alpha/beta/rc tags. -release = '1.0.1' +release = '1.0.4'    # The language for content autogenerated by Sphinx. Refer to documentation  # for a list of supported languages.
 
160
161
162
 
 
 
163
164
165
 
160
161
162
163
164
165
166
167
168
@@ -160,6 +160,9 @@
   You can verify that worked by typing :command:`hg help hggit`   +Current versions of TortoiseHg include dulwich version 0.6.0. We +recommend to use hg-git version 0.2.2 with this version of dulwich. +  See the hggit documentation for details of use.    Beware the 'incoming' command appears broken when speaking with git
Change 1 of 2 Show Entire File hgtk Stacked
 
2
3
4
5
 
6
7
8
 
63
64
65
66
67
 
68
69
70
 
2
3
4
 
5
6
7
8
 
63
64
65
 
 
66
67
68
69
@@ -2,7 +2,7 @@
 #  # front-end script for TortoiseHg dialogs  # -# Copyright (C) 2008-9 Steve Borho <steve@borho.org> +# Copyright (C) 2008-10 Steve Borho <steve@borho.org>  # Copyright (C) 2008 TK Soh <teekaysoh@gmail.com>  #   @@ -63,8 +63,7 @@
  sys.stderr = origstderr   mystderr.seek(0)   for l in mystderr.readlines(): - if l.startswith('Traceback') or l.startswith('TypeError') or \ - l.startswith('NameError'): + if l.startswith(('Traceback', 'TypeError', 'NameError')):   from tortoisehg.hgtk.bugreport import run   from tortoisehg.hgtk.hgtk import gtkrun   error = 'Recoverable runtime error (stderr):\n'
 
8
9
10
11
 
12
13
14
15
16
17
 
18
19
20
 
1652
1653
1654
1655
 
1656
1657
1658
 
8
9
10
 
11
12
13
14
15
16
 
17
18
19
20
 
1652
1653
1654
 
1655
1656
1657
1658
@@ -8,13 +8,13 @@
 "Project-Id-Version: tortoisehg\n"  "Report-Msgid-Bugs-To: Peer Sommerlund <peer.sommerlund@gmail.com>\n"  "POT-Creation-Date: 2010-04-01 05:09+0000\n" -"PO-Revision-Date: 2010-04-05 13:36+0000\n" +"PO-Revision-Date: 2010-04-06 13:20+0000\n"  "Last-Translator: peso <peer.sommerlund@gmail.com>\n"  "Language-Team: Danish <da@li.org>\n"  "MIME-Version: 1.0\n"  "Content-Type: text/plain; charset=UTF-8\n"  "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-04-06 04:05+0000\n" +"X-Launchpad-Export-Date: 2010-04-07 03:51+0000\n"  "X-Generator: Launchpad (build Unknown)\n"    #: TortoiseHgOverlayServer.py:36 @@ -1652,7 +1652,7 @@
 "from them. This is the safest way to send changes to recipient Mercurial "  "users."  msgstr "" -"Bundter store komplette ændringer i binær form. Upstream brugere kan trække " +"Bundter gemmer komplette ændringer i binær form. Upstream brugere kan trække "  "fra dem. Dette er den sikreste måde at sende ændringer til Mercurial brugere."    #: tortoisehg\hgtk\hgemail.py:133
 
8
9
10
11
12
 
 
13
14
15
16
17
 
18
19
20
 
226
227
228
229
 
230
231
232
 
246
247
248
249
 
250
251
252
 
255
256
257
258
 
259
260
261
262
 
263
264
265
266
 
267
268
269
 
273
274
275
276
 
277
278
279
 
292
293
294
295
 
296
297
298
299
300
301
 
302
303
304
305
 
306
307
308
 
314
315
316
317
 
318
319
320
321
 
322
323
324
 
326
327
328
329
 
330
331
332
 
334
335
336
337
 
338
339
340
341
 
342
343
344
 
346
347
348
349
 
350
351
352
353
 
354
355
356
357
 
358
359
360
 
363
364
365
366
 
367
368
369
 
372
373
374
375
 
376
377
378
 
380
381
382
383
 
384
385
386
 
391
392
393
 
 
 
394
395
396
 
398
399
400
401
 
402
403
404
 
451
452
453
454
 
455
456
457
458
 
459
460
461
462
 
463
464
465
466
 
467
468
469
 
475
476
477
478
 
479
480
481
 
503
504
505
506
 
507
508
509
 
511
512
513
514
 
515
516
517
 
523
524
525
526
 
527
528
529
 
531
532
533
534
 
535
536
537
538
539
 
540
541
542
 
548
549
550
551
 
552
553
554
555
 
556
557
558
 
572
573
574
575
 
576
577
578
579
 
580
581
582
 
630
631
632
633
 
634
635
636
637
 
638
639
640
641
642
 
643
644
645
 
652
653
654
655
 
656
657
658
 
718
719
720
721
 
722
723
724
725
726
727
 
728
729
730
731
732
 
733
734
735
736
 
737
738
739
 
749
750
751
752
 
753
754
755
 
757
758
759
760
 
761
762
763
764
 
765
766
767
 
824
825
826
827
 
828
829
830
 
1014
1015
1016
1017
 
1018
1019
1020
 
1046
1047
1048
1049
 
1050
1051
1052
 
1054
1055
1056
1057
 
1058
1059
1060
1061
 
1062
1063
1064
1065
 
1066
1067
1068
 
1078
1079
1080
1081
 
1082
1083
1084
1085
 
1086
1087
1088
 
1090
1091
1092
1093
 
1094
1095
1096
 
1169
1170
1171
1172
 
1173
1174
1175
 
1290
1291
1292
1293
 
1294
1295
1296
 
1311
1312
1313
1314
 
1315
1316
1317
 
1331
1332
1333
1334
 
1335
1336
1337
 
1339
1340
1341
1342
 
1343
1344
1345
 
1516
1517
1518
1519
 
1520
1521
1522
 
1536
1537
1538
1539
 
1540
1541
1542
1543
 
1544
1545
1546
1547
 
1548
1549
1550
 
1686
1687
1688
1689
 
1690
1691
1692
 
1732
1733
1734
1735
 
1736
1737
1738
 
5896
5897
5898
5899
 
5900
5901
5902
 
8
9
10
 
 
11
12
13
14
15
16
 
17
18
19
20
 
226
227
228
 
229
230
231
232
 
246
247
248
 
249
250
251
252
 
255
256
257
 
258
259
260
261
 
262
263
264
265
 
266
267
268
269
 
273
274
275
 
276
277
278
279
 
292
293
294
 
295
296
297
298
299
300
 
301
302
303
304
 
305
306
307
308
 
314
315
316
 
317
318
319
320
 
321
322
323
324
 
326
327
328
 
329
330
331
332
 
334
335
336
 
337
338
339
340
 
341
342
343
344
 
346
347
348
 
349
350
351
352
 
353
354
355
356
 
357
358
359
360
 
363
364
365
 
366
367
368
369
 
372
373
374
 
375
376
377
378
 
380
381
382
 
383
384
385
386
 
391
392
393
394
395
396
397
398
399
 
401
402
403
 
404
405
406
407
 
454
455
456
 
457
458
459
460
 
461
462
463
464
 
465
466
467
468
 
469
470
471
472
 
478
479
480
 
481
482
483
484
 
506
507
508
 
509
510
511
512
 
514
515
516
 
517
518
519
520
 
526
527
528
 
529
530
531
532
 
534
535
536
 
537
538
539
540
541
 
542
543
544
545
 
551
552
553
 
554
555
556
557
 
558
559
560
561
 
575
576
577
 
578
579
580
581
 
582
583
584
585
 
633
634
635
 
636
637
638
639
 
640
641
642
643
644
 
645
646
647
648
 
655
656
657
 
658
659
660
661
 
721
722
723
 
724
725
726
727
728
729
 
730
731
732
733
734
 
735
736
737
738
 
739
740
741
742
 
752
753
754
 
755
756
757
758
 
760
761
762
 
763
764
765
766
 
767
768
769
770
 
827
828
829
 
830
831
832
833
 
1017
1018
1019
 
1020
1021
1022
1023
 
1049
1050
1051
 
1052
1053
1054
1055
 
1057
1058
1059
 
1060
1061
1062
1063
 
1064
1065
1066
1067
 
1068
1069
1070
1071
 
1081
1082
1083
 
1084
1085
1086
1087
 
1088
1089
1090
1091
 
1093
1094
1095
 
1096
1097
1098
1099
 
1172
1173
1174
 
1175
1176
1177
1178
 
1293
1294
1295
 
1296
1297
1298
1299
 
1314
1315
1316
 
1317
1318
1319
1320
 
1334
1335
1336
 
1337
1338
1339
1340
 
1342
1343
1344
 
1345
1346
1347
1348
 
1519
1520
1521
 
1522
1523
1524
1525
 
1539
1540
1541
 
1542
1543
1544
1545
 
1546
1547
1548
1549
 
1550
1551
1552
1553
 
1689
1690
1691
 
1692
1693
1694
1695
 
1735
1736
1737
 
1738
1739
1740
1741
 
5899
5900
5901
 
5902
5903
5904
5905
@@ -8,13 +8,13 @@
 "Project-Id-Version: tortoisehg\n"  "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"  "POT-Creation-Date: 2010-04-01 05:09+0000\n" -"PO-Revision-Date: 2010-04-05 17:41+0000\n" -"Last-Translator: William Glover <Unknown>\n" +"PO-Revision-Date: 2010-04-09 11:56+0000\n" +"Last-Translator: Diemo Gebhardt <Unknown>\n"  "Language-Team: German <de@li.org>\n"  "MIME-Version: 1.0\n"  "Content-Type: text/plain; charset=UTF-8\n"  "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-04-06 04:05+0000\n" +"X-Launchpad-Export-Date: 2010-04-10 03:52+0000\n"  "X-Generator: Launchpad (build Unknown)\n"    #: TortoiseHgOverlayServer.py:36 @@ -226,7 +226,7 @@
   #: tortoisehg\hgtk\bookmark.py:37  msgid "Bookmark - %s" -msgstr "" +msgstr "Lesezeichen hinzufügen - %s"    #: tortoisehg\hgtk\bookmark.py:48 tortoisehg\hgtk\hgignore.py:50  #: tortoisehg\hgtk\hgignore.py:58 tortoisehg\hgtk\quickop.py:19 @@ -246,7 +246,7 @@
   #: tortoisehg\hgtk\bookmark.py:52  msgid "Rename" -msgstr "" +msgstr "Umbenennen"    #: tortoisehg\hgtk\bookmark.py:54  msgid "Set Current" @@ -255,15 +255,15 @@
 #: tortoisehg\hgtk\bookmark.py:56 tortoisehg\hgtk\bookmark.py:182  #: tortoisehg\hgtk\merge.py:178  msgid "unexpected type: %s" -msgstr "" +msgstr "unerwarteter Typ: %s"    #: tortoisehg\hgtk\bookmark.py:69  msgid "Old name:" -msgstr "" +msgstr "Alter Name:"    #: tortoisehg\hgtk\bookmark.py:71  msgid "Bookmark:" -msgstr "" +msgstr "Lesezeichen:"    #: tortoisehg\hgtk\bookmark.py:83 tortoisehg\hgtk\csinfo.py:198  #: tortoisehg\hgtk\csinfo.py:199 tortoisehg\hgtk\cslist.py:142 @@ -273,7 +273,7 @@
   #: tortoisehg\hgtk\bookmark.py:86  msgid "New Name:" -msgstr "" +msgstr "Neuer Name:"    #: tortoisehg\hgtk\bookmark.py:92  msgid "Make new/moved bookmark current" @@ -292,17 +292,17 @@
 #: tortoisehg\hgtk\bookmark.py:209 tortoisehg\hgtk\bookmark.py:239  #: tortoisehg\hgtk\bookmark.py:293 tortoisehg\hgtk\bookmark.py:325  msgid "Please enter bookmark name" -msgstr "" +msgstr "Bitte geben Sie den Namen des Lesezeichens ein"    #: tortoisehg\hgtk\bookmark.py:216 tortoisehg\hgtk\bookmark.py:246  #: tortoisehg\hgtk\bookmark.py:274 tortoisehg\hgtk\bookmark.py:306  #: tortoisehg\hgtk\bookmark.py:332  msgid "Bookmarking completed" -msgstr "" +msgstr "Lesezeichen hinzugefügt"    #: tortoisehg\hgtk\bookmark.py:217  msgid "Bookmark \"%s\" has been added" -msgstr "" +msgstr "Das Lesezeichen \"%s\" wurde hinzugefügt"    #: tortoisehg\hgtk\bookmark.py:224 tortoisehg\hgtk\bookmark.py:227  #: tortoisehg\hgtk\bookmark.py:254 tortoisehg\hgtk\bookmark.py:257 @@ -314,11 +314,11 @@
   #: tortoisehg\hgtk\bookmark.py:247  msgid "Bookmark \"%s\" has been moved" -msgstr "" +msgstr "Das Lesezeichen \"%s\" wurde verschoben"    #: tortoisehg\hgtk\bookmark.py:267  msgid "Bookmark name is empty" -msgstr "" +msgstr "Der Name des Lesezeichens ist leer"    #: tortoisehg\hgtk\bookmark.py:268  msgid "Please select bookmark name to remove" @@ -326,7 +326,7 @@
   #: tortoisehg\hgtk\bookmark.py:275  msgid "Bookmark \"%s\" has been removed" -msgstr "" +msgstr "Das Lesezeichen \"%s\" wurde entfernt"    #: tortoisehg\hgtk\bookmark.py:298  msgid "Bookmark new name input is empty" @@ -334,11 +334,11 @@
   #: tortoisehg\hgtk\bookmark.py:299  msgid "Please enter new bookmark name" -msgstr "" +msgstr "Bitte geben Sie den Namen des Lesezeichens ein"    #: tortoisehg\hgtk\bookmark.py:307  msgid "Bookmark \"%s\" has been renamed to \"%s\"" -msgstr "" +msgstr "Das Lesezeichen \"%s\" wurde in \"%s\" umbenannt"    #: tortoisehg\hgtk\bookmark.py:333  msgid "Bookmark \"%s\" has been made current" @@ -346,15 +346,15 @@
   #: tortoisehg\hgtk\bookmark.py:346 tortoisehg\hgtk\bookmark.py:373  msgid "a bookmark named \"%s\" already exists" -msgstr "" +msgstr "ein Lesezeichen mit dem Namen \"%s\" existiert bereits"    #: tortoisehg\hgtk\bookmark.py:355 tortoisehg\hgtk\bookmark.py:382  msgid "No bookmark named \"%s\" exists" -msgstr "" +msgstr "Es existiert kein Lesezeichen mit dem Namen \"%s\""    #: tortoisehg\hgtk\bookmark.py:364  msgid "Bookmark '%s' does not exist" -msgstr "" +msgstr "Das Lesezeichen '%s' existiert nicht"    #: tortoisehg\hgtk\browse.py:112 tortoisehg\hgtk\quickop.py:100  #: tortoisehg\hgtk\status.py:130 @@ -363,7 +363,7 @@
   #: tortoisehg\hgtk\browse.py:136  msgid "type" -msgstr "" +msgstr "Typ"    #: tortoisehg\hgtk\browse.py:142 tortoisehg\hgtk\quickop.py:103  #: tortoisehg\hgtk\status.py:318 @@ -372,7 +372,7 @@
   #: tortoisehg\hgtk\browse.py:344 tortoisehg\hgtk\browse.py:346  msgid "browser" -msgstr "" +msgstr "Browser"    #: tortoisehg\hgtk\bugreport.py:25  msgid "TortoiseHg Bug Report" @@ -380,7 +380,7 @@
   #: tortoisehg\hgtk\bugreport.py:45  msgid "Save as.." -msgstr "" +msgstr "Speichern unter..."    #: tortoisehg\hgtk\bugreport.py:48 tortoisehg\hgtk\hgcmd.py:48  msgid "Close" @@ -391,6 +391,9 @@
 "** Please report this bug to http://bitbucket.org/tortoisehg/stable/issues "  "or tortoisehg-discuss@lists.sourceforge.net\n"  msgstr "" +"** Bitte melden Sie diesen Fehlerbericht an " +"http://bitbucket.org/tortoisehg/stable/issues oder tortoisehg-" +"discuss@lists.sourceforge.net\n"    #: tortoisehg\hgtk\bugreport.py:87  msgid "Save error report to" @@ -398,7 +401,7 @@
   #: tortoisehg\hgtk\changeset.py:43  msgid "%s changeset " -msgstr "" +msgstr "%s Änderungssatz "    #: tortoisehg\hgtk\changeset.py:168 tortoisehg\hgtk\changeset.py:198  msgid "[All Files]" @@ -451,19 +454,19 @@
   #: tortoisehg\hgtk\changeset.py:544  msgid "Changeset:" -msgstr "" +msgstr "Änderungssatz:"    #: tortoisehg\hgtk\changeset.py:546 tortoisehg\hgtk\update.py:90  msgid "Parent:" -msgstr "" +msgstr "Übergeordnetes Element:"    #: tortoisehg\hgtk\changeset.py:548  msgid "Child:" -msgstr "" +msgstr "Untergeordnetes Element:"    #: tortoisehg\hgtk\changeset.py:550 tortoisehg\hgtk\cslist.py:143  msgid "Patch:" -msgstr "" +msgstr "Korrektur:"    #: tortoisehg\hgtk\changeset.py:747  msgid "Diff to second Parent" @@ -475,7 +478,7 @@
   #: tortoisehg\hgtk\changeset.py:933  msgid "Unable to save file" -msgstr "" +msgstr "Datei konnte nicht gespeichert werden"    #: tortoisehg\hgtk\changeset.py:1005  msgid "Confirm revert file to old revision" @@ -503,7 +506,7 @@
   #: tortoisehg\hgtk\clone.py:90  msgid "Source path:" -msgstr "" +msgstr "Quellpfad:"    #: tortoisehg\hgtk\clone.py:91  msgid "Select Source Folder" @@ -511,7 +514,7 @@
   #: tortoisehg\hgtk\clone.py:117 tortoisehg\hgtk\tagadd.py:69  msgid "Advanced options" -msgstr "" +msgstr "Erweiterte Einstellungen"    #: tortoisehg\hgtk\clone.py:127  msgid "Clone to revision:" @@ -523,7 +526,7 @@
   #: tortoisehg\hgtk\clone.py:141  msgid "Do not update the new working directory" -msgstr "" +msgstr "Das neue Arbeitsverzeichnis nicht aktualisieren"    #: tortoisehg\hgtk\clone.py:142  msgid "Use pull protocol to copy metadata" @@ -531,12 +534,12 @@
   #: tortoisehg\hgtk\clone.py:143  msgid "Use uncompressed transfer" -msgstr "" +msgstr "Unkomprimierten Transfer verwenden"    #: tortoisehg\hgtk\clone.py:149 tortoisehg\hgtk\history.py:440  #: tortoisehg\hgtk\synch.py:183  msgid "Use proxy server" -msgstr "" +msgstr "Proxy-Server verwenden"    #: tortoisehg\hgtk\clone.py:159 tortoisehg\hgtk\synch.py:204  msgid "Remote command:" @@ -548,11 +551,11 @@
   #: tortoisehg\hgtk\clone.py:191  msgid "Cloned successfully" -msgstr "" +msgstr "Klonen erfolgreich"    #: tortoisehg\hgtk\clone.py:193 tortoisehg\hgtk\update.py:154  msgid "Canceled updating" -msgstr "" +msgstr "Aktualisierung abgebrochen"    #: tortoisehg\hgtk\clone.py:195  msgid "Failed to clone" @@ -572,11 +575,11 @@
   #: tortoisehg\hgtk\clone.py:292  msgid "Source and destination are the same" -msgstr "" +msgstr "Quelle und Ziel sind identisch"    #: tortoisehg\hgtk\clone.py:293  msgid "Please specify different paths" -msgstr "" +msgstr "Bitte geben Sie unterschiedliche Pfade an"    #: tortoisehg\hgtk\commit.py:33  msgid "Branch Operations" @@ -630,16 +633,16 @@
   #: tortoisehg\hgtk\commit.py:223 tortoisehg\hgtk\history.py:370  msgid "Toolbar" -msgstr "" +msgstr "Werkzeugleiste"    #: tortoisehg\hgtk\commit.py:225  msgid "Advanced" -msgstr "" +msgstr "Erweitert"    #: tortoisehg\hgtk\commit.py:227 tortoisehg\hgtk\history.py:65  #: tortoisehg\hgtk\history.py:452 tortoisehg\hgtk\history.py:1136  msgid "Parents" -msgstr "" +msgstr "Übergeordnete Elemente"    #: tortoisehg\hgtk\commit.py:231 tortoisehg\hgtk\hgignore.py:142  #: tortoisehg\hgtk\history.py:377 @@ -652,7 +655,7 @@
   #: tortoisehg\hgtk\commit.py:235 tortoisehg\hgtk\history.py:393  msgid "Always Show Output" -msgstr "" +msgstr "Ausgabe immer anzeigen"    #: tortoisehg\hgtk\commit.py:238  msgid "_Operations" @@ -718,22 +721,22 @@
 #: tortoisehg\hgtk\thgconfig.py:717 tortoisehg\hgtk\thgconfig.py:825  #: tortoisehg\hgtk\thgmq.py:345 tortoisehg\hgtk\update.py:239  msgid "&Cancel" -msgstr "" +msgstr "&Abbrechen"    #: tortoisehg\hgtk\commit.py:315 tortoisehg\hgtk\commit.py:1116  #: tortoisehg\hgtk\commit.py:1120 tortoisehg\hgtk\status.py:1719  #: tortoisehg\hgtk\thgconfig.py:824 tortoisehg\hgtk\thgmq.py:345  msgid "&Yes" -msgstr "" +msgstr "&Ja"    #: tortoisehg\hgtk\commit.py:315 tortoisehg\hgtk\commit.py:1116  #: tortoisehg\hgtk\commit.py:1120 tortoisehg\hgtk\thgstrip.py:217  msgid "&No" -msgstr "" +msgstr "&Nein"    #: tortoisehg\hgtk\commit.py:361  msgid "Committer:" -msgstr "" +msgstr "Beitragender:"    #: tortoisehg\hgtk\commit.py:375  msgid "Auto-includes:" @@ -749,7 +752,7 @@
   #: tortoisehg\hgtk\commit.py:486  msgid "Parent: %(rev)s" -msgstr "" +msgstr "Übergeordnet: %(rev)s"    #: tortoisehg\hgtk\commit.py:494  msgid "Not at head" @@ -757,11 +760,11 @@
   #: tortoisehg\hgtk\commit.py:519 tortoisehg\hgtk\status.py:530  msgid "Patch Preview" -msgstr "" +msgstr "Vorschau aktualisieren"    #: tortoisehg\hgtk\commit.py:521 tortoisehg\hgtk\status.py:534  msgid "Commit Preview" -msgstr "" +msgstr "Vorschau übernehmen"    #: tortoisehg\hgtk\commit.py:565  msgid "Discard current commit message?" @@ -824,7 +827,7 @@
   #: tortoisehg\hgtk\commit.py:786  msgid "Merge " -msgstr "" +msgstr "Zusammenführen "    #: tortoisehg\hgtk\commit.py:822  msgid "Patch Contents" @@ -1014,7 +1017,7 @@
   #: tortoisehg\hgtk\commit.py:1260  msgid "Info Required" -msgstr "" +msgstr "Informationen Erforderlich"    #: tortoisehg\hgtk\commit.py:1261  msgid "Message format needs to be configured" @@ -1046,7 +1049,7 @@
   #: tortoisehg\hgtk\csinfo.py:200  msgid "Age:" -msgstr "" +msgstr "Alter:"    #: tortoisehg\hgtk\csinfo.py:200 tortoisehg\hgtk\csinfo.py:201  msgid "Date:" @@ -1054,15 +1057,15 @@
   #: tortoisehg\hgtk\csinfo.py:200 tortoisehg\hgtk\csinfo.py:205  msgid "User:" -msgstr "" +msgstr "Benutzer:"    #: tortoisehg\hgtk\csinfo.py:201 tortoisehg\hgtk\csinfo.py:202  msgid "Branch:" -msgstr "" +msgstr "Zweig:"    #: tortoisehg\hgtk\csinfo.py:202 tortoisehg\hgtk\csinfo.py:203  msgid "Tags:" -msgstr "" +msgstr "Schlagwörter:"    #: tortoisehg\hgtk\csinfo.py:203  msgid "Transplant:" @@ -1078,11 +1081,11 @@
   #: tortoisehg\hgtk\cslist.py:88  msgid "Show all" -msgstr "" +msgstr "Zeige alle"    #: tortoisehg\hgtk\cslist.py:91  msgid "Use compact view" -msgstr "" +msgstr "Kompakte Ansicht verwenden"    #: tortoisehg\hgtk\cslist.py:384  msgid "No items to display" @@ -1090,7 +1093,7 @@
   #: tortoisehg\hgtk\cslist.py:397  msgid "Updating..." -msgstr "" +msgstr "Aktualisiere..."    #: tortoisehg\hgtk\cslist.py:400  msgid "Selecting %(sel)d of %(total)d, displaying all items" @@ -1169,7 +1172,7 @@
   #: tortoisehg\hgtk\datamine.py:186  msgid "No parent file" -msgstr "" +msgstr "Keine übergeordnete Datei"    #: tortoisehg\hgtk\datamine.py:187  msgid "Unable to annotate" @@ -1290,7 +1293,7 @@
   #: tortoisehg\hgtk\datamine.py:713  msgid "Loading history..." -msgstr "" +msgstr "Lade Verlauf..."    #: tortoisehg\hgtk\dialog.py:34  msgid "TortoiseHg Prompt" @@ -1311,7 +1314,7 @@
   #: tortoisehg\hgtk\gdialog.py:489 tortoisehg\hgtk\history.py:266  msgid "Recovery" -msgstr "" +msgstr "Wiederherstellung"    #: tortoisehg\hgtk\gdialog.py:491 tortoisehg\hgtk\history.py:269  msgid "Serve" @@ -1331,7 +1334,7 @@
   #: tortoisehg\hgtk\gdialog.py:497  msgid "Settings" -msgstr "" +msgstr "Einstellungen"    #: tortoisehg\hgtk\gdialog.py:500  msgid "_Help" @@ -1339,7 +1342,7 @@
   #: tortoisehg\hgtk\gdialog.py:501  msgid "Contents" -msgstr "" +msgstr "Inhalt"    #: tortoisehg\hgtk\gdialog.py:503 tortoisehg\hgtk\thgmq.py:835  msgid "Index" @@ -1516,7 +1519,7 @@
   #: tortoisehg\hgtk\hgcmd.py:324  msgid "Stop transaction" -msgstr "" +msgstr "Transaktion beenden"    #: tortoisehg\hgtk\hgcmd.py:326  msgid "Close this" @@ -1536,15 +1539,15 @@
   #: tortoisehg\hgtk\hgemail.py:38  msgid "Send emails" -msgstr "" +msgstr "Emails senden"    #: tortoisehg\hgtk\hgemail.py:39  msgid "Test" -msgstr "" +msgstr "Testen"    #: tortoisehg\hgtk\hgemail.py:41  msgid "Show emails which would be sent" -msgstr "" +msgstr "Zeige welche Emails gesendet werden würden"    #: tortoisehg\hgtk\hgemail.py:43 tortoisehg\hgtk\serve.py:73  #: tortoisehg\hgtk\synch.py:96 @@ -1686,7 +1689,7 @@
   #: tortoisehg\hgtk\hgemail.py:166  msgid "Flags:" -msgstr "" +msgstr "Markierungen:"    #: tortoisehg\hgtk\hgemail.py:180  msgid "Patch Series (Bundle) Description" @@ -1732,7 +1735,7 @@
   #: tortoisehg\hgtk\hgignore.py:79  msgid "Apply to:" -msgstr "" +msgstr "Anwenden auf:"    #: tortoisehg\hgtk\hgignore.py:88  msgid "Filters" @@ -5896,7 +5899,7 @@
   #: tortoisehg\util\menuthg.py:61  msgid "Update..." -msgstr "" +msgstr "Aktualisieren..."    #: tortoisehg\util\menuthg.py:62  msgid "Update working directory"
Show Entire File i18n/​tortoisehg/​en_AU.po Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File i18n/​tortoisehg/​en_GB.po Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File i18n/​tortoisehg/​fr.po Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File i18n/​tortoisehg/​it.po Stacked
This file's diff was not loaded because this changeset is very large. Load changes
 
8
9
10
11
 
12
13
14
15
16
17
 
18
19
20
 
5283
5284
5285
5286
 
5287
5288
5289
 
8
9
10
 
11
12
13
14
15
16
 
17
18
19
20
 
5283
5284
5285
 
5286
5287
5288
5289
@@ -8,13 +8,13 @@
 "Project-Id-Version: tortoisehg\n"  "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"  "POT-Creation-Date: 2010-04-01 05:09+0000\n" -"PO-Revision-Date: 2010-04-05 11:59+0000\n" +"PO-Revision-Date: 2010-04-24 07:24+0000\n"  "Last-Translator: Yuki Kodama <Unknown>\n"  "Language-Team: Japanese <ja@li.org>\n"  "MIME-Version: 1.0\n"  "Content-Type: text/plain; charset=UTF-8\n"  "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-04-06 04:06+0000\n" +"X-Launchpad-Export-Date: 2010-04-25 03:49+0000\n"  "X-Generator: Launchpad (build Unknown)\n"    #: TortoiseHgOverlayServer.py:36 @@ -5283,7 +5283,7 @@
   #: tortoisehg\hgtk\thgmq.py:776  msgid "_Finish Applied" -msgstr "リビジョン化(_F)" +msgstr "リビジョン化(_F)"    #: tortoisehg\hgtk\thgmq.py:779 tortoisehg\hgtk\thgmq.py:809  msgid "_Delete"
Show Entire File i18n/​tortoisehg/​nb.po Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File i18n/​tortoisehg/​pt_BR.po Stacked
This file's diff was not loaded because this changeset is very large. Load changes
 
749
750
751
752
 
753
754
755
 
1105
1106
1107
1108
 
1109
1110
1111
 
2661
2662
2663
2664
 
2665
2666
2667
 
3166
3167
3168
3169
 
3170
3171
3172
 
749
750
751
 
752
753
754
755
 
1105
1106
1107
 
1108
1109
1110
1111
 
2661
2662
2663
 
2664
2665
2666
2667
 
3166
3167
3168
 
3169
3170
3171
3172
@@ -749,7 +749,7 @@
   #: tortoisehg\hgtk\commit.py:486  msgid "Parent: %(rev)s" -msgstr "Попередник: %(редакція)s" +msgstr "Попередник: %(rev)s"    #: tortoisehg\hgtk\commit.py:494  msgid "Not at head" @@ -1105,7 +1105,7 @@
   #: tortoisehg\hgtk\cslist.py:409  msgid "Displaying %(count)d of %(total)d items" -msgstr "Показати %(кількість)d з %(загалом)d елементів" +msgstr "Показати %(count)d з %(total)d елементів"    #: tortoisehg\hgtk\datamine.py:45  msgid "%s - datamine" @@ -2661,7 +2661,7 @@
   #: tortoisehg\hgtk\history.py:1165  msgid "%(count)d of %(total)d applied patches" -msgstr "%(кількість)d з %(загалом)d прийнято патчів" +msgstr "%(count)d з %(total)d прийнято патчів"    #: tortoisehg\hgtk\history.py:1177  msgid "Visualize Change" @@ -3166,7 +3166,7 @@
   #: tortoisehg\hgtk\logview\treeview.py:269  msgid "%(count)d of %(total)d Revisions" -msgstr "%(кількість)d у %(загалом)d редакціях" +msgstr "%(count)d у %(total)d редакціях"    #: tortoisehg\hgtk\logview\treeview.py:377  msgid "Changeset not found in current view"
Show Entire File i18n/​tortoisehg/​zh_CN.po Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Change 1 of 1 Show Entire File setup.py Stacked
 
104
105
106
107
108
109
110
111
 
104
105
106
 
 
107
108
109
@@ -104,8 +104,6 @@
    extra['options'] = {   "py2exe" : { - # This is one way to ensure that hgtk can find its icons when - # running in a py2exe environment. It also makes debugging easier.   "skip_archive" : 0,     # Don't pull in all this MFC stuff used by the makepy UI.
 
63
64
65
 
66
67
68
 
63
64
65
66
67
68
69
@@ -63,6 +63,7 @@
  text += '** CWD: %s\n' % os.getcwd()   extlist = [x[0] for x in extensions.extensions()]   text += '** Extensions loaded: %s\n' % ', '.join(extlist) + text += '** Python %s\n' % sys.version.replace('\n', '')   if os.name == 'nt':   text += '** sys.getwindowsversion(): %s\n' % str(sys.getwindowsversion())   arch = 'unknown (failed to import win32api)'
 
19
20
21
 
 
22
23
24
 
283
284
285
 
 
 
 
 
286
287
288
 
1005
1006
1007
1008
1009
 
1010
1011
1012
 
19
20
21
22
23
24
25
26
 
285
286
287
288
289
290
291
292
293
294
295
 
1012
1013
1014
 
 
1015
1016
1017
1018
@@ -19,6 +19,8 @@
   from tortoisehg.hgtk import csinfo, gdialog, gtklib, hgcmd, statusbar   +MODE_FILEPATS = 1 # mirrored from history.py +  class ChangeSet(gdialog.GWindow):   'GTK+ based dialog for displaying repository logs'   def __init__(self, ui, repo, cwd, pats, opts, stbar=None): @@ -283,6 +285,11 @@
  adj.set_value(0)   adj = self.diffscroller.get_hadjustment()   adj.set_value(0) + adj = self._filelist_tree.get_vadjustment() + adj.set_value(0) + adj = self._filelist_tree.get_hadjustment() + adj.set_value(0) + self._filelist_tree.columns_autosize()     def generate_change_header(self):   self.summarypanel.update(self.currev, self.csetstyle) @@ -1005,8 +1012,7 @@
  explorer.filtercombo.set_active(1)   explorer.filterentry.set_text(fname)   explorer.filterbar.get_button('custom').set_active(True) - explorer.filter_entry_activated(explorer.filterentry, - explorer.filtercombo) + explorer.activate_filter(path, MODE_FILEPATS)   else:   # Else launch our own glog instance   from tortoisehg.hgtk import history
 
15
16
17
 
18
19
20
 
196
197
198
199
200
201
 
 
 
 
202
203
204
 
15
16
17
18
19
20
21
 
197
198
199
 
 
 
200
201
202
203
204
205
206
@@ -15,6 +15,7 @@
 from mercurial import cmdutil, util, patch, mdiff, error    from tortoisehg.util import hglib, hgshelve +from tortoisehg.util.i18n import _    from tortoisehg.hgtk import gtklib   @@ -196,9 +197,10 @@
  chunks = self.filechunks[wfile]   else:   chunks = self.read_file_chunks(wfile) - for c in chunks: - c.active = True - self.filechunks[wfile] = chunks + if chunks: + for c in chunks: + c.active = True + self.filechunks[wfile] = chunks   return chunks     def update_hunk_model(self, wfile, checked):
 
210
211
212
 
 
213
214
215
 
210
211
212
213
214
215
216
217
@@ -210,6 +210,8 @@
  initial=entry.get_text().strip(), title=title).run()   if res:   entry.set_text(res) + entry.grab_focus() + entry.set_position(-1)     def bundle_clicked(self, button, title, entry):   path = entry.get_text().strip()
 
746
747
748
749
 
750
751
752
 
873
874
875
876
877
878
879
 
 
 
 
 
 
 
880
881
882
 
919
920
921
922
 
923
924
925
 
929
930
931
932
 
933
934
935
 
1197
1198
1199
1200
 
1201
1202
 
1203
1204
1205
1206
1207
1208
 
1209
1210
1211
1212
1213
 
1214
1215
1216
 
746
747
748
 
749
750
751
752
 
873
874
875
 
 
 
 
876
877
878
879
880
881
882
883
884
885
 
922
923
924
 
925
926
927
928
 
932
933
934
 
935
936
937
938
 
1200
1201
1202
 
1203
1204
 
1205
1206
1207
1208
1209
1210
 
1211
1212
1213
1214
1215
 
1216
1217
1218
1219
@@ -746,7 +746,7 @@
  def get_custom_menus(self):   def commit(menuitem, files):   if self.ready_message() and self.isuptodate(): - def callback(): + def callback(ret):   self.reload_status()   abs = [self.repo.wjoin(file) for file in files]   shlib.shell_notify(abs) @@ -873,10 +873,13 @@
  commitable += '?!'   return self.relevant_checked_files(commitable)   - def callback(): - self.reload_status() - files = [self.repo.wjoin(x) for x in commit_list] - shlib.shell_notify(files) + def callback(ret): + if ret == 0 and self.repo.ui.configbool('tortoisehg', 'closeci'): + self.destroy() + else: + self.reload_status() + files = [self.repo.wjoin(x) for x in commit_list] + shlib.shell_notify(files)     if self.qnew:   commit_list = get_list() @@ -919,7 +922,7 @@
  _('Unable to create ') + backupdir, self).run()   return   - def finish(): + def finish(ret):   os.chdir(cwd)   # restore backup files   try: @@ -929,7 +932,7 @@
  os.rmdir(backupdir)   except OSError:   pass - callback() + callback(ret)     try:   # backup continues @@ -1197,20 +1200,20 @@
  if self.notify_func:   self.notify_func(*self.notify_args)   if autopush: - text = _('Finish committing and pushing') + text = _('Finished committing and pushing')   else: - text = _('Finish committing') + text = _('Finished committing')   elif return_code is None:   text = _('Aborted committing')   else:   text = _('Failed to commit')   self.stbar.set_idle_text(text) - callback() + callback(return_code)   if not self.execute_command(cmdline, done,   status=_('Committing changes...'),   title=_('Commit')):   gdialog.Prompt(_('Cannot run now'), - _('Please try again after running ' + _('Please try again after the running '   'operation is completed'), self).run()     def get_tip_rev(self, refresh=False):
 
65
66
67
68
69
70
71
72
 
 
 
 
 
 
 
 
 
 
 
73
74
75
 
156
157
158
159
160
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
162
163
 
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
 
65
66
67
 
 
 
 
 
68
69
70
71
72
73
74
75
76
77
78
79
80
81
 
162
163
164
 
 
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
 
201
202
203
 
 
 
 
 
204
205
206
207
208
209
210
211
 
 
212
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
213
214
215
216
217
218
219
220
221
222
@@ -65,11 +65,17 @@
  root = self.repo.root   cf = []   for f in self.pats: - if os.path.isfile(f): - cf.append(util.canonpath(root, self.cwd, f)) - elif os.path.isdir(f): - gdialog.Prompt(_('Invalid path'), - _('Cannot annotate directory: %s') % f, None).run() + try: + if os.path.isfile(f): + cf.append(util.canonpath(root, self.cwd, f)) + elif os.path.isdir(f): + for fn in os.listdir(f): + fname = os.path.join(f, fn) + if not os.path.isfile(fname): + continue + cf.append(util.canonpath(root, self.cwd, fname)) + except util.Abort: + pass   for f in cf:   self.add_annotate_page(f, '.')   if not self.notebook.get_n_pages(): @@ -156,8 +162,21 @@
  args=[objs])   m.append(_('Di_splay Change'), self.cmenu_display,   'menushowchanged.ico') - m.append(_('_Annotate Parent'), self.cmenu_annotate_parent, - 'menublame.ico', args=[objs]) + (frame, treeview, filepath, graphview) = objs + path = graphview.get_path_at_revid(int(self.currev)) + filepath = graphview.get_wfile_at_path(path) + ctx = self.repo[self.currev] + fctx = ctx.filectx(filepath) + parents = fctx.parents() + if len(parents) > 0: + if len(parents) == 1: + m.append(_('_Annotate Parent'), self.cmenu_annotate_1st_parent, + 'menublame.ico', args=[objs]) + else: + m.append(_('_Annotate First Parent'), self.cmenu_annotate_1st_parent, + 'menublame.ico', args=[objs]) + m.append(_('Annotate Second Parent'), self.cmenu_annotate_2nd_parent, + 'menublame.ico', args=[objs])   m.append(_('_View File at Revision'), self.cmenu_view, gtk.STOCK_EDIT)   m.append(_('_File History'), self.cmenu_file_log, 'menulog.ico')   m.append(_('_Diff to Local'), self.cmenu_local_diff) @@ -182,52 +201,22 @@
  def cmenu_annotate(self, menuitem):   self.add_annotate_page(self.curpath, self.currev)   - def cmenu_annotate_parent(self, menuitem, objs): - def error_prompt(): - gdialog.Prompt(_('No parent file'), - _('Unable to annotate'), self).run() - return False + def cmenu_annotate_1st_parent(self, menuitem, objs): + self.annotate_parent(objs, 0) + + def cmenu_annotate_2nd_parent(self, menuitem, objs): + self.annotate_parent(objs, 1) + + def annotate_parent(self, objs, parent_idx):   (frame, treeview, filepath, graphview) = objs - anotrev = treeview.get_model().rev - graphmodel = graphview.treeview.get_model()   path = graphview.get_path_at_revid(int(self.currev)) - if not path: - return error_prompt() - iter = graphmodel.get_iter(path) - parent_iter = graphmodel.iter_next(iter) - if not parent_iter: - return error_prompt() - parent_path = graphmodel.get_path(parent_iter) - parent_revid = graphmodel[parent_path][LogTreeModelModule.REVID] - parent_ctx = self.repo[parent_revid] - try: - parent_ctx.filectx(filepath) - except error.LookupError: - # file was renamed/moved, try to find previous file path - end_iter = iter - path = graphview.get_path_at_revid(int(anotrev)) - if not path: - return error_prompt() - iter = graphmodel.get_iter(path) - while iter and iter != end_iter: - path = graphmodel.get_path(iter) - revid = graphmodel[path][LogTreeModelModule.REVID] - ctx = self.repo[revid] - try: - fctx = ctx.filectx(filepath) - renamed = fctx.renamed() - if renamed: - filepath = renamed[0] - break - except error.LookupError: - # break iteration, but don't use 'break' statement - # so that execute 'else' block for showing prompt. - iter = end_iter - continue - # move iterator to next - iter = graphmodel.iter_next(iter) - else: - return error_prompt() + filepath = graphview.get_wfile_at_path(path) + ctx = self.repo[self.currev] + fctx = ctx.filectx(filepath) + parents = fctx.parents() + parent_fctx = parents[parent_idx] + parent_revid = parent_fctx.changectx().rev() + filepath = parent_fctx.path()   # annotate file of parent rev   self.trigger_annotate(parent_revid, filepath, objs)   graphview.scroll_to_revision(int(parent_revid))
 
581
582
583
 
 
 
 
584
585
586
 
581
582
583
584
585
586
587
588
589
590
@@ -581,6 +581,10 @@
  except (util.Abort, IOError, OSError), inst:   Prompt(title + _(' Aborted'), str(inst), self).run()   return False, '' + except error.LookupError, inst: + Prompt(title + _(' Aborted'), str(inst) + + _(', please refresh'), self).run() + return False, ''   finally:   sys.stderr = saved   textout = self.ui.popbuffer()
Show Entire File tortoisehg/​hgtk/​gtklib.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
 
302
303
304
305
 
 
 
 
 
 
306
307
308
 
302
303
304
 
305
306
307
308
309
310
311
312
313
@@ -302,7 +302,12 @@
  srcs.append(abs)   if not copy:   simularity = self.adjustment.get_value() / 100.0; - gen = cmdutil.findrenames + try: + gen = cmdutil.findrenames + except AttributeError: + # function was moved before 1.6 + from mercurial import similar + gen = similar.findrenames   else:   simularity = 1.0   gen = findmoves
Show Entire File tortoisehg/​hgtk/​hgcmd.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
 
14
15
16
17
 
18
19
20
 
248
249
250
251
 
 
252
253
254
255
 
 
 
 
256
257
258
 
14
15
16
 
17
18
19
20
 
248
249
250
 
251
252
253
 
 
 
254
255
256
257
258
259
260
@@ -14,7 +14,7 @@
 from tortoisehg.util.i18n import _  from tortoisehg.util import shlib, hglib, paths   -from tortoisehg.hgtk import gtklib, gdialog +from tortoisehg.hgtk import gtklib, gdialog, dialog    class HgIgnoreDialog(gtk.Window):   'Edit a reposiory .hgignore file' @@ -248,11 +248,13 @@
  else:   out = [line + '\n' for line in self.ignorelines]   try: - f = open(self.ignorefile, 'wb') + f = util.atomictempfile(self.ignorefile, 'wb', + createmode=None)   f.writelines(out) - f.close() - except IOError: - pass + f.rename() + except IOError, e: + dialog.error_dialog(self, _('Unable to write .hgignore file'), + hglib.tounicode(str(e)))   shlib.shell_notify([self.ignorefile])   if self.notify_func:   self.notify_func()
Show Entire File tortoisehg/​hgtk/​hgthread.py Stacked
(No changes)
Show Entire File tortoisehg/​hgtk/​hgtk.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File tortoisehg/​hgtk/​history.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
This file's diff was not loaded because this changeset is very large. Load changes
This file's diff was not loaded because this changeset is very large. Load changes
This file's diff was not loaded because this changeset is very large. Load changes
 
192
193
194
195
 
 
 
196
197
198
 
192
193
194
 
195
196
197
198
199
200
@@ -192,7 +192,9 @@
  only_branch, self.opts.get('branch-color'))   else:   self.grapher = revision_grapher(self.repo, start, end, - only_branch, noheads, self.opts.get('branch-color')) + only_branch, noheads, self.opts.get('branch-color'), + self.repo.ui.configlist('tortoisehg', 'hide'), + self.repo.ui.configlist('tortoisehg', 'prune'))   elif opts.get('revlist', None):   self.grapher = dumb_log_generator(self.repo, opts['revlist'])   else:
Show Entire File tortoisehg/​hgtk/​recovery.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File tortoisehg/​hgtk/​status.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File tortoisehg/​hgtk/​synch.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File tortoisehg/​hgtk/​thgconfig.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File tortoisehg/​hgtk/​thgmq.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File tortoisehg/​hgtk/​thgshelve.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
 
560
561
562
563
 
564
565
566
 
560
561
562
 
563
564
565
566
@@ -560,7 +560,7 @@
  if ctx1b:   other, file1b = getfile(ctx1b, dir1b, fname, source)   else: - other = fname, fname + other = fname   file1b = None   fname, file2 = getfile(ctx2, dir2, fname, None)  
Show Entire File tortoisehg/​util/​hglib.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File tortoisehg/​util/​hgshelve.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
Show Entire File tortoisehg/​util/​settings.py Stacked
This file's diff was not loaded because this changeset is very large. Load changes
This file's diff was not loaded because this changeset is very large. Load changes