./devel/py-hg-git, Push to and pull from a Git server repository using Mercurial

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.0.2, Package name: py310-hg-git-1.0.2, Maintainer: pkgsrc-users

This is the Hg-Git plugin for Mercurial, adding the ability to push
and pull to/from a Git server repository from Hg. This means you can
collaborate on Git based projects from Hg, or use a Git server as a
collaboration point for a team with developers using both Git and Hg.

The Hg-Git plugin can convert commits/changesets losslessly from one
system to another, so you can push via an Hg repository and another Hg
client can pull it and their changeset node ids will be identical -
Mercurial data does not get lost in translation. It is intended that
Hg users may wish to use this to collaborate even if no Git users are
involved in the project, and it may even provide some advantages if
you're using Bookmarks.


Required to run:
[devel/py-setuptools] [devel/py-dulwich] [lang/python27]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 167.228 KB

Version history: (Expand)


CVS history: (Expand)


   2023-06-26 13:38:37 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-hg-git: update to 1.0.2.

This is a minor release, focusing on bugs and compatibility.

Fix --source/-s argument to transplant with Hg-Git
enabled. (#392)
Fix cloning repositories using the old static HTTP support with
Hg-Git enabled.
Handle pushing tags to Git that cannot be stored as references such
as double-quotes on Windows. (#397)
Avoid converting unrelated refs on pull, such as Github PR-related refs. (#386)
Fix tests with GNU Grep 3.8 and later, by avoiding the egrep
alias (#400)
Support reading remote refs even if packed.
Add support for Dulwich 0.21 and later.
Mark Mercurial 6.4 as supported and tested.
Address slowness when pulling large repositories, caused by writing
unchanged references. (#401)
   2022-11-28 11:20:36 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-hg-git: update to 1.0.1.

hg-git 1.0.1 (2022-11-04)
=========================

This is a minor release, focusing on bugs and compatibility.

* Ignore any ``GIT_SSH_COMMAND`` environment variable, rather than
  dying with an error. (#369)
* Fix bug with unusual progress lines from Azure Repo (#391)
* Fix incorrect use of localisation APIs (#387)
* Fix pushing with Dulwich 0.2.49 or later.
* Fix tests with Git 2.37.
* Fix bug with tags or remote refs in the local Git repository that
  point to missing commits.
* Mark Mercurial 6.2 and 6.3 as supported and tested.

Thanks to Pierre Augier and Aay Jay Chan for contributing to this
release!

hg-git 1.0.0 (2022-04-01)
=========================

This is the first stable release in the 1.0 series. In addition to all
the features and fixes in the betas, it includes:

* Handle errors in ``.gitmodules`` gracefully, allowing the conversion
  to continue. (#329)
* Don't die with an error when ``.hgsub`` contains comments. (#128)
* Suppress errors on export related to history editing of certain
  commits with unusual authorship and messages. (#383)
* Fix tests with Git 2.35.

Other changes:

* Increase test coverage by using different versions of Alpine Linux
  and Dulwich.

This release requires Mercurial 5.2 or later and Python 3.6 or later.

hg-git 1.0b2 (2022-03-10)
=========================

This is a follow-up to the previous beta, that fixes the following
bugs:

* Fix tests with Mercurial 6.1.
* Avoid prompting for authentication after a successful push, by
  storing the authenticated client. (#379)

This release requires Mercurial 5.2 or later and Python 3.6 or later.

hg-git 1.0b1 (2022-01-26)
=========================

This is a preview of an upcoming major release that contains changes
to user-facing behaviour, as well as a fair amount of internal
changes. The primary focus is on adjusting the user experience to be
more intuitive and consistent with Git and Mercurial. The internal
changes are mainly refactoring to make the code more consistent and
maintainable. Performance should also be much better; a simple clone
of a medium-sized repository is about 40% faster.

This release requires Mercurial 5.2 or later and Python 3.6 or later.

Changes to behaviour:

* When a pull detects that a Git remote branch vanishes, it will
  remove the corresponding local tags, such as ``default/branch``.
  This is equivalent to using ``git fetch --prune``, and adjustable
  using the ``git.pull-prune-remote-branches`` configuration option.
* Similarly, delete the actual bookmarks corresponding to a remote
  branch, unless the bookmarks was moved since the last pull from Git.
  This is enabled by default and adjustable using the
  ``git.pull-prune-bookmarks`` configuration option.
* Speed up ``pull`` by using a single transaction per map save
  interval.
* Similarly, speed up ``hg clone`` by always using a single
  transaction and map save interval, as Mercurial will delete the
  repository on errors.
* Change the default ``hggit.mapsavefrequency`` to 1,000 commits rather
  than just saving at the end.
* Abort with a helpful error when a user attempts to push to Git from
  a Mercurial repository without any bookmarks nor tags. Previously,
  that would either invent a bookmark —— *once* — or just report that
  nothing was found.
* Only update e.g. ``default/master`` when actually pulling from
  ``default``.

Enhancements:

* Add a ``gittag()`` revset.
* Print a message describing which bookmarks changed during a pull.
* Let Mercurial report on the incoming changes once each transaction
  is saved, similar to when pulling from a regular repository.
* Remove some unnecessary caching in an attempt to decrease memory
  footprint.
* Advance phases during the pull rather than at the end.
* With ``hggit.usephases``, allow publishing tags and specific remotes
  on pull, as well as publishing the remote ``HEAD`` on push.
* Change defaults to drop illegal paths rather than aborting the
  conversion; this is adjustable using the ``hggit.invalidpaths``
  configuration option.
* Allow updating bookmarks from obsolete commits to their successors.

Bug fixes:

* Adjust publishing of branches to correspond to the documentation.
  Previously, e.g. listing ``master`` would publish a local bookmark
  even if diverged from the remote.
* Handle corrupt repositories gracefully in the ``gverify`` command,
  and allow checking repository integrity.
* Only apply extension wrappers when the extension is actually
  enabled rather than just loaded.
* Fix pulling with ``phases.new-commit`` set to ``secret``. (#266)
* Detect divergence with a branch bookmark suffix.
* Fix flawed handling of remote messages on pull and push, which
  caused most such messages to be discarded.
* Report a helpful error when attempting to push or convert with
  commits missing in the Git repository. Also, issue a warning when
  creating a new Git repository with a non-empty map, as that may lead
  to the former.
* Ensure that ``gimport`` also synchronises tags.
* Address a bug where updating bookmarks might fail with certain
  obsolete commits.
* Handle missing Git commits gracefully. (#376)

Other changes:

* Require ``setuptools`` for building, and use ``setuptools_scm`` for
  determining the version of the extension.
* Refactoring and reformatting of the code base.

hg-git 0.10.4 (2022-01-26)
==========================

This is a minor release, focusing on bugs and compatibility.

Bug fixes:

* Fix compatibility with the ``mercurial_keyring`` extension. (#360)
* Add missing test files to the source archive. (#375)
* Fix tests with Git 2.34.

hg-git 0.10.3 (2021-11-16)
==========================

This is a minor release, focusing on bugs and compatibility.

Enhancements:

* Add support for Mercurial 6.0.

hg-git 0.10.2 (2021-07-31)
==========================

This is a minor release, focusing on bugs and compatibility.

Enhancements:

* Add support for Mercurial 5.9.

Bug fixes:

* Fix the ``git.authors`` configuration option, broken in Python 3.

hg-git 0.10.1 (2021-05-12)
==========================

This is a minor release, focusing on bugs and compatibility.

Enhancements:

* Add support for Mercurial 5.8.

Bug fixes:

* Fix some documentation issues.
* Don't overwrite annotated tags on push.
* Fix an issue where pushing a repository without any bookmarks would
  push secret changesets.
   2022-01-14 12:49:45 by Thomas Klausner | Files touched by this commit (34)
Log message:
*: remove workaround patches for python 3.6
   2022-01-14 12:37:25 by Thomas Klausner | Files touched by this commit (2)
Log message:
py-hg-git: fix EGG_NAME
   2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595)
Log message:
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2021-09-27 04:00:44 by Makoto Fujiwara | Files touched by this commit (2)
Log message:
(devel/py-hg-git) Add py36 fix patch, cannot decode 0xe2