hg-git 1.1.4 & 1.2.0b1 released
Dan Villiom Podlaski Christiansen
danchr at gmail.com
Mon Nov 18 18:32:08 UTC 2024
Hi
I'm pleased to announce two new releases for hg-git. One is a regular
compatibility release, and one is an initial beta of 1.2.0. The latter
is _quite_ overdue, and I can't say when the final release will be, as
it depends on the feedback — it'll be at least a month after a beta with
no major issues reported.
And just to be clear: Any feedback is very much appreciated! I've been
developing hg-git mostly in my own little sandbox, and I may very well
have gotten stuff like option names — and whether they should be enabled
by default — wrong. Or I might have written some horribly broken code;
who knows? Anyway; please report back!
https://pypi.org/project/hg-git/1.1.4/
https://foss.heptapod.net/mercurial/hg-git/-/releases/1.1.4
https://pypi.org/project/hg-git/1.2.0b1/
https://foss.heptapod.net/mercurial/hg-git/-/releases/1.2.0b1
hg-git 1.1.4 (2024-11-18)
=========================
This is a minor release, focusing on bugs and compatibility.
* Mark Dulwich 0.22.0 as fully supported; the differences are assumed
intentional for now.
* Mark Mercurial 6.9 as tested and supported.
* Fix tests with Python 3.13.
hg-git 1.2.0b1 (2024-11-18)
===========================
This is a preview of an upcoming feature release that contains changes
to user-facing behaviour.
Changes to behaviour:
* Change the defaults for ``hggit.usephases``; similar to Mercurial,
remote repositories now default to publishing.
Enhancements:
* Add support for a ``git.blame.ignoreRevsFile`` configuration
setting, that works similarly to the setting for ``git blame``.
* Add limited and experimental support for including hg-git metadata
in Mercurial bundles and when pulling or pushing from remote
Mercurial repositories, see below. (#156)
* ``hg git-cleanup`` now also removes broken Git refs.
* Always pull any annotated tags pointing to any known commits,
equivalent to passing the ``--tags`` option in Git. Previously, such
tags would only be pulled when either not using ``--rev`` or
similar, or when listing the tag explicitly.
* Transparently compress the objects when pushing (or exporting) to
Git. This is done in background threads, and by default uses up to
either four of them or the system CPU count, whichever is lower. The
``hggit.threads`` configuration option allows adjusting the default.
This release requires Mercurial 6.6, or later, Dulwich 0.21.6 or later
and Python 3.8 or later.
Transferring ``hg-git`` metadata
--------------------------------
As noted, this is experimental, and can be enabled using the following
configuration settings::
[experimental]
hg-git-bundle = yes
hg-git-serve = yes
With these set, pulling or pushing any commit already pushed (or
converted) to Git will also update the mapping remotely, avoiding the
need for converting these changes once more. In addition, Git tags are
also transferred. However, this support is limited, and there is no
synchronisation of later changes. There is no support for reinstating
or synchronising lost or old state, and no support for transferring
tags to old changesets.
The first option enables embedding the metadata using ``hg bundle``
and the second option enables the support with served repositories.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0xA2ACC81B41CF4E34.asc
Type: application/pgp-keys
Size: 21278 bytes
Desc: OpenPGP public key
URL: <http://lists.mercurial-scm.org/pipermail/mercurial/attachments/20241118/93d4e6b3/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <http://lists.mercurial-scm.org/pipermail/mercurial/attachments/20241118/93d4e6b3/attachment.sig>
More information about the Mercurial
mailing list