Staging
v0.5.0
https://foss.heptapod.net/mercurial/hgview
Revision 1ddc87097b45555523fd8b8d18874aecdee85d2f authored by Alain Leufroy on 28 May 2013, 10:34:27 UTC, committed by Alain Leufroy on 28 May 2013, 10:34:27 UTC
We were decoding strings for changeset description and file data only.  But we
also have to decode all all meta-information from Hg repo (a.k.a. usernames,
bookmarks, tags, branches, filenames).

String are decoded just at rendering times. Data are kept binary string for
other operation (eg: comparing filenames).

We use the ``hgviewlib.util.tounicode`` function everywhere now.

We also missed using utf-8 for Scintilla.

:Fix initiated by: Юрий Мандрик.

.. note:: We try to decode using utf8, iso-8859-15 and cp1252 (in this order)
          using the first that successfully decode the string. If all fail we
          use utf8 with ``replace`` strategy.

test case used::

    hg init cyrillic
    cd cyrillic
    hg branch 'ЖЗИЙФ'
    echo 'ЖЗИЙФ' > ЖЗИЙФ
    hg add ЖЗИЙФ
    hg ci -m 'ЖЗИЙФ' -u 'ЖЗИЙФ'
    hg bookmark 'ЖЗИЙФЖЗИЙФ'
    hg tag 'ЖЗИЙФ'
    hg mv 'ЖЗИЙФ' 'ЖЗИЙФЖЗИЙФ'
    hg ci -m 'move'
    echo 'hello' > ЖЗИЙФЖЗИЙФ
    hg ci -m 'back to ascii'
    hg rm ЖЗИЙФЖЗИЙФ
    hg ci -m 'remove'
1 parent d42a956
Raw File
Tip revision: 1ddc87097b45555523fd8b8d18874aecdee85d2f authored by Alain Leufroy on 28 May 2013, 10:34:27 UTC
[qt] full support for unicode with utf-8 encoding (closes #142378)
Tip revision: 1ddc870
ChangeLog
2013-01-28 -- 1.7.1

    * remove yellow from possible text and line color
    * compatinility with Mercurial 2.5
    * bugfix> prevent obsolescence cycle to confuse hgview
    * bugfix> fix successors changesets computation
    * bugfix> fix an issue leading hg to get slower and slower with reload

2012-11-20 -- 1.7.0

    * allow copying changeset to clipboard
    * add support for revset in goto toolbar
    * standalone executable for hgview on windows
    * compatibility with Mercurial 2.4
    * Use an "open file" dialog when `hgview` is run outside a repo
    * bugfix> fix badly reported successors

2011-08-08 -- 1.6.2

    * generate hgqv.qrc to hgqv_rc.py not hgqv_qrc.py (#103538)

2011-08-08 -- 1.6.1

    * Include missing hgviewlib/qt4/application.py (#103444)

2011-08-08 -- 1.6.0


    * compat> improve compatibility with Mercurial 2.2 and 2.3

    * compat> improve compatibility with Python 2.5

    * graph> support for changesets obsolescence

    * graph> support for hiding closed branches

    * graph> improve support for hidden changeset

    * graph> select current working directory parent at startup instead of tip
            (#82231)

    * graph> allow to reorder mutable changeset on top (#92312)

    * graph> add some basic support for bookmarks (#92295, #92750)

    * config> allow overriding ``maxfilesize`` config value in the UIs (#20597)

    * config> allow to hide changeset content at startup (#92204)

    * config> allow per-interface configuration

    * GUI> allow to mimic the raw text layout by adding "description" to the
	   files list (#83294)

    * GUI> move "start" and "follow" actions from toolbar to context menu
	   (#87901)

    * GUI> move diff actions from toolbar to context menu  and hide toolbar
	   diff at startup (#87901)

    * GUI> add icon to "show/hide" hidden changesets action (#87901)

    * GUI> allow to pass node/rev/tag as link anchor (#87902)

    * TUI> phases support (#87899)

    * TUI> use short hash

    * TUI> goto command now accept any changeid, not only the rev (#92736)

    * bugfix> Do not reload data from locked repository (#92297)

    * bugfix> fix encoding error while browsing the content of an unapplied
	      mqpatch that contains unicode chars (#87210)

    * bugfix> fix OSError while focusing on removed file on mq patches (#87839)

    * bugfix> fix ``dev/null`` file entry appearing with removed files on
	      unapplied mq patches (#89335)

    * bugfix> Raw-UI prevent over refreshing with mercurial 2.1 (#89336)

    * bugfix> do not swallow exception with ``--traceback`` (#89337)

    * bugfix> Fix some unicode issue in raw text ui (#98647)

    * bugfix> Properly keep currently visited rev and file on reload (#93641)

    * bugfix> re-enable copy action in right click menu of the description
	      (#93421)

    * bugfix> do nothing if the entry of ``find`` is empty in the GUI (#93422)

    * bugfix> Fix a typo leading to a name error when using bfile.


2011-12-23 -- 1.5.0

    * GUI> replace text in description for fancy display (#84465)

    * GUI> links in fancy view opens browser (#76254)

    * GUI> Add support for incoming phase feature in hg 2.1 (#86349)
           Node have different shape given their phase.

    * TUI> fancier graph highlighting in TUI (#79263)

    * TUI> add history and completion for command (#84733)

    * TUI> display text translation in source/diff pane (closes #83773)

    * Hg> Allow toggle hidden changesets visibility (#19875)

    * Hg> improve mq support (#19194)

    * Hg> enable --profile/--time/--traceback/--debug options
          as mercurial extension (#83309)

    * support mercurial 2.0 (#79058, #84549)

    * bugfixes (#77984, #79255, #84939, #78004, #83307)

    * others (#75296, #78002, #75295)

2011-09-29 -- 1.4.0

    * add a text user interface

    * allow file name to be selected (#70307)

    * remove mx.Datetime dependency (#73687)

    * bugfixes (#20996, #73678)

2010-08-25 -- 1.3.0
    * ReST support in descriptions

    * stabilize named branch color

    * bugfixes

2010-01-20  -- 1.2.0
    * add basic support for mq

    * add basic support for bfiles extension

    * make working directory be represented by a node in the graph (if needed)

    * add possibility to display the graph from a given revision

    * add a annotate-like view
	
    * improve graph rendering engine

    * bugfixes

	
2009-09-30  --  1.1.2
    * fixed packaging issues
	
2009-09-23  --  1.1.0
    * add many configuration options

    * removed 'hg hgview-options' command in favor of 'hg help hgview' 

    * add ability to choose which parent to diff with for merge nodes

    * dramatically improved UI behaviour (shortcuts)

    * improved help

    * make it possible not to display the diffstat column

    * standalone application: improved command line options

    * indicate working directory position in the graph

    * add auto-reload feature (when repo is modified; pull, commit, etc.)

    * fix many bugs 


	
2009-06-08  --  1.0.1
    * fix a bug on some PyQt versions, which also prevented hardy package from installing


	
2009-06-05  --  1.0.0
    * almost complete rewrite of hgview (only using Qt for now)

    * make dialogs consistants

    * pure qt4

    * add a file revision comparator

    * add a manifest viewer



2008-10-06  --  0.9.0
    * support branches

    * make filter text search on files and log description tree.

    * bugfixes



2008-05-15  --  0.3.1
    * added logic to resolve symbolic links to hgview executable

    * make hgview less verbose

    * allow home installation

    * let the diff's scroll window resize when it's packed in the HPaned

    * fix Windows related bug



2007-05-29  --  0.3.0
    * add a Qt4 version of hgview

    * bugfixes



2007-05-29  --  0.2.0
    * creation of changelog



back to top