hg-git 1.1.4 & 1.2.0b1 released

Malcolm Matalka mmatalka at gmail.com
Wed Nov 20 13:14:43 UTC 2024


Thank you!  I just want to re-iterate that I use hg-git everyday and it is fundamental to my daily sanity.  I appreciate the hard work that the team does.

Dan Villiom Podlaski Christiansen <danchr at gmail.com> writes:

> [[PGP Signed Part:Undecided]]
> 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.



More information about the Mercurial mailing list