Software-update: Mercurial 5.1.2

Mercurial is een programma voor onder andere software- en projectontwikkelaars waarmee beheer en versiecontrole over data en broncode kunnen worden uitgevoerd. Het programma kan worden gezien als een directe concurrent voor het welbekende svn of Subversion. Mercurial wordt bijvoorbeeld gebruikt door Mozilla, Facebook en OpenJDK. Versie 5.1.2 is eerder deze maand uitgebracht, voorzien van de volgende lijst met aanpassingen:

Mercurial 5.1.2

Regularly scheduled bug fix release.

extensions
  • phabricator: don't abort if property writing fails during amending
tests
  • test: allow different result for zstd compression (issue6188)
Mercurial 5.1.1

Regularly scheduled bug fix release.

commands
  • bookmarks: actual fix for race condition deleting bookmark
core
  • exchange: abort on pushing bookmarks pointing to secret changesets (issue6159)
  • python-zstandard: apply big-endian fix (issue6188)
  • fncache: make debugrebuildfncache not fail on broken fncache
tests
  • various test runner fixes
  • fixed use of tr --delete for tr(1) portability
Mercurial 5.1

Regularly scheduled feature release. An overview of new features available. This is a regularly-scheduled quarterly feature release.

commands
  • bookmark: also make bookmark cache depends of the changelog
  • bookmarks: actual fix for race condition deleting bookmark
  • bookmarks: actually trigger the race deleting bookmark in the test
  • bookmarks: backout the attempt to fix the delete race
  • bookmarks: keep bookmarks in .hg/store if new config set
  • bookmarks: use context manager when writing files
  • bookmarks: use correct store for "ambiguity check"
  • branch: abort if closing branch from a non-branchhead cset
  • branchcache: store the maximum tip in a variable inside for loop
  • commands: drop support for legacy ^cmd registration (API)
  • commit: add --force-close-branch flag to close a non-head changeset
  • commit: add a check if it is trying to close an already closed branch head
  • commit: add ability to print file status after each successful invocation
  • commit: allow --interactive to work again when naming a directory (issue6131)
  • commit: improve the files field of changelog for merges
  • commit: make the error message more specific while aborting branch closing
  • commit: respect --no-edit in combination with --amend
  • graft: moved abortgraft and readgraft to cmdutil
  • help: check if a subtopic exists and raise an error if it doesn't (issue6145)
  • log: add config for making 'hg log -G' always topo-sorted
  • log: flag topo-sorted set as such
  • log: pass getcopies() function instead of getrenamed() to displayer (API)
  • merge: disallow merge abort in case of an unfinished operation (issue6160)
  • patch: use a short, fixed-size message for last line of prompt (issue6158)
  • push: added clear warning message when pushing closed branches(issue6080)
  • tags: avoid double-reversing a list
  • verify: also check full manifest validity during verify runs
  • verify: introduce a notion of "level"
  • verify: introduce an experimental --full flag
core
  • docs: man page and HTML help now order commands categorically, instead of alphabetically
  • minirst: support subsubsubsubsections (header level 5) with marker ''''
  • revlog: add the option to track the expected compression upper bound
  • revlog: speed up isancestor
  • templatekw: make {file_*} compare to both merge parents (issue4292)
  • templater: drop support for old style keywords (API)
  • util: make util.dirs() and util.finddirs() include root directory (API)
extensions
  • largefiles: make last line of prompts <40 english chars (issue6158)
  • mq: fix for merge detection methods
  • rebase: fix in-memory rebasing of copy of empty file
  • rebase: tweak description of inmemory working even w/ dirty working dir
  • shelve: modify help text on --interactive
  • unshelve: add interactive mode
  • unshelve: add space to help
  • unshelve: changed Corruptedstate error msg from ui.warn to error.Abort
  • unshelve: mark unshelve interactive as experimental
unsorted
  • abort: added support for graft
  • abort: added support for histedit
  • abort: added support for merge
  • abort: added support for rebase
  • abort: added support for unshelve
  • automation: initial support for running Linux tests
  • bisect: do not crash with rewritten commits
  • blackbox: disable extremely verbose logging (issue6110)
  • catapipe: add support for COUNTER events
  • changelog: define changelogrevision.p[12]copies for null revision
  • changelog: fix handling of empty copy entries in changeset
  • changelog: optionally store added and removed files in changeset extras
  • continue: added support for rebase
  • continue: added support for unshelve
  • copies: filter invalid copies only at end of pathcopies() (issue6163)
  • copies: follow copies across merge base without source file (issue6163)
  • debugrevlog: fix average size computation for empty data (issue6167)
  • drawdag: don't crash when writing copy info to changesets
  • extdata: avoid crashing inside subprocess when we get a revset parse error
  • extensions: drop support for extsetup() without 'ui' argument (API)
  • filemerge: make last line of prompts <40 english chars (issue6158)
  • graphmod: remove support for graph lines mixing parent/grandparent styles (BC)
  • manifest: avoid corruption by dropping removed files with pure (issue5801)
  • match: remove unused match.__iter__ implementation (API)
  • match: use '' instead of '.' for root directory (API)
  • procutil: allow callers of runbgcommand to assume the process starts
  • remotefilelog: check if RFL is enabled in getrenamedfn() override
  • remotefilelog: handle copies in changesets in getrenamedfn() override
  • remotefilelog: log when we're about to fetch files
  • remotefilelog: tell runbgcommand to not block on child process startup
  • root: add support for -Tformatter option
  • sslutil: add support for SSLKEYLOGFILE to wrapsocket
  • sslutil: fsencode path returned by certifi (issue6132)
  • statecheck: added support for STATES
  • subrepos: make last line of prompts <40 english chars (issue6158)
  • tests: make the grep pattern in remotefilelog-gcrepack portable (issue6122)
  • tests: work around libressl being different about error strings (issue6122)
  • tracing: add support for emitting counters
  • worker: support parallelization of functions with return values
  • zsh: enable completion support for chg as well
Behavior Changes
  • graphmod: remove support for graph lines mixing parent/grandparent styles (BC)
Internal API Changes
  • commands: drop support for legacy ^cmd registration (API)
  • extensions: drop support for extsetup() without 'ui' argument (API)
  • log: pass getcopies() function instead of getrenamed() to displayer (API)
  • match: remove unused match.__iter__ implementation (API)
  • match: use '' instead of '.' for root directory (API)
  • templater: drop support for old style keywords (API)
  • util: make util.dirs() and util.finddirs() include root directory (API)
Versienummer 5.1.2
Releasestatus Final
Besturingssystemen Windows 7, Linux, BSD, macOS, Solaris, UNIX, Windows Server 2012, Windows 8, Windows 10, Windows Server 2016
Website Mercurial
Download https://www.mercurial-scm.org/downloads
Licentietype Voorwaarden (GNU/BSD/etc.)

Door Japke Rosink

Meukposter

09-10-2019 • 08:29

4

Bron: Mercurial

Update-historie

Reacties (4)

4
4
3
0
0
1
Wijzig sortering
Zijn er nog echte redenen om Mercurial boven Git te verkiezen als je niet eerder met een DVCS hebt gewerkt? Ik wil langzamerhand mijn Powershell scrips en wat andere zaken in een VCS onderbrengen maar twijfel tussen Hg en Git.
Een meer logische command line, plus het feit dat Git onder Windows niet optimaal schijnt te werken, laten me naar Mercurial neigen. Maar Git heeft duidelijk het momentum en Mercurial lijkt op z’n retour te zijn. Dat een toko als Bitbucket support voor Hg heeft laten vallen, terwijl ze ooit Mercurial-only waren, is wel een teken aan de wand.
Wat zou er niet optimaal werken aan Git onder Windows? Ik heb op mijn werk heel veel met Git gedaan onder Windows (weliswaar niet direct via de commandline maar via de GUI van TortoiseGit die onder water gewoon de benodigde commando's uitvoert) en nooit ergens tegenaan gelopen.
Ik heb er nooit een goed overzicht van gezien maar als ik even Google vind ik deze al: https://www.hanselman.com...lderMergingOnWindows.aspx
Dat is imo gewoon slecht design; niet alle filesystems zijn case sensitive en de mappenstructuur is nietszeggend in dat voorbeeld.

Overigens kan ik ook SmartGit aanraden als je een GUI wil gebruiken.

Op dit item kan niet meer gereageerd worden.