D9898: narrow: delete a stale TODO about not sending groups the client already has

2021-01-27 Thread martinvonz (Martin von Zweigbergk)
martinvonz created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  2c5835b4246b 
 
changed the changegroup generation to not send
  treemanifests for directories the client had before widening. As that
  commit mentions, we had already stopped before that commit to send the
  changelog and filelogs for files the client already had.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9898

AFFECTED FILES
  mercurial/bundle2.py

CHANGE DETAILS

diff --git a/mercurial/bundle2.py b/mercurial/bundle2.py
--- a/mercurial/bundle2.py
+++ b/mercurial/bundle2.py
@@ -2536,8 +2536,6 @@
 for r in repo.revs(b"::%ln", common):
 commonnodes.add(cl.node(r))
 if commonnodes:
-# XXX: we should only send the filelogs (and treemanifest). user
-# already has the changelog and manifest
 packer = changegroup.getbundler(
 cgversion,
 repo,



To: martinvonz, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


mercurial@46382: 18 new changesets

2021-01-27 Thread Mercurial Commits
18 new changesets in mercurial:

https://www.mercurial-scm.org/repo/hg/rev/63dfaca9087f
changeset:   46365:63dfaca9087f
parent:  46362:24a32dea6955
user:Augie Fackler 
date:Mon May 11 18:45:45 2020 -0400
summary: filemerge: add a hacktastic version of internal:merge3 for merge 
diffs

https://www.mercurial-scm.org/repo/hg/rev/135056e8b5a8
changeset:   46366:135056e8b5a8
user:Pierre-Yves David 
date:Mon Jan 18 10:24:03 2021 +0100
summary: purge: add a --confirm option

https://www.mercurial-scm.org/repo/hg/rev/57370e7deb7b
changeset:   46367:57370e7deb7b
user:Pierre-Yves David 
date:Mon Jan 18 10:24:11 2021 +0100
summary: purge: also deal with directory with --confirm

https://www.mercurial-scm.org/repo/hg/rev/bb3a5c0df06b
changeset:   46368:bb3a5c0df06b
user:Valentin Gatien-Baron 
date:Mon Jan 18 10:24:20 2021 +0100
summary: purge: move extension into core mercurial

https://www.mercurial-scm.org/repo/hg/rev/cabc5e9366c5
changeset:   46369:cabc5e9366c5
user:Dan Villiom Podlaski Christiansen 
date:Fri Jan 22 11:10:39 2021 +0100
summary: rust: lower compile error on non-linux platforms to a warning

https://www.mercurial-scm.org/repo/hg/rev/cad17d50736c
changeset:   46370:cad17d50736c
user:Joerg Sonnenberger 
date:Fri Jan 15 01:30:08 2021 +0100
summary: changelog: move branchinfo to changelogrevision

https://www.mercurial-scm.org/repo/hg/rev/0903d6b9b1df
changeset:   46371:0903d6b9b1df
user:Joerg Sonnenberger 
date:Tue Jan 19 00:20:53 2021 +0100
summary: repository: introduce register_changeset callback

https://www.mercurial-scm.org/repo/hg/rev/3e91d9978bec
changeset:   46372:3e91d9978bec
user:Joerg Sonnenberger 
date:Fri Jan 15 01:58:59 2021 +0100
summary: branchmap: update rev-branch-cache incrementally

https://www.mercurial-scm.org/repo/hg/rev/711ba0f1057e
changeset:   46373:711ba0f1057e
user:Joerg Sonnenberger 
date:Wed Jan 20 14:47:13 2021 +0100
summary: revlog: decouple caching from addrevision callback for addgroup

https://www.mercurial-scm.org/repo/hg/rev/e92ca942ddca
changeset:   46374:e92ca942ddca
user:Victor Stinner 
date:Mon Dec 14 10:44:29 2020 +0100
summary: cext: add Python 3.10 support

https://www.mercurial-scm.org/repo/hg/rev/2e8a844d0ae0
changeset:   46375:2e8a844d0ae0
user:Pulkit Goyal <7895pul...@gmail.com>
date:Thu Jan 14 16:25:40 2021 +0530
summary: upgrade: don't create store backup if `--no-backup` is passed

https://www.mercurial-scm.org/repo/hg/rev/a83e1496d943
changeset:   46376:a83e1496d943
user:Pulkit Goyal <7895pul...@gmail.com>
date:Mon Dec 14 16:20:00 2020 +0530
summary: actions: calculate what all parts does the operation touches

https://www.mercurial-scm.org/repo/hg/rev/60ea95471b83
changeset:   46377:60ea95471b83
user:Pulkit Goyal <7895pul...@gmail.com>
date:Thu Jan 14 16:57:11 2021 +0530
summary: upgrade: mark sharesafe improvement as only touching requirements

https://www.mercurial-scm.org/repo/hg/rev/8b02f132adf6
changeset:   46378:8b02f132adf6
user:Pulkit Goyal <7895pul...@gmail.com>
date:Thu Jan 14 17:27:54 2021 +0530
summary: test: unquiet few tests to demonstrate changes in upcoming patches

https://www.mercurial-scm.org/repo/hg/rev/ee9002b99595
changeset:   46379:ee9002b99595
user:Pulkit Goyal <7895pul...@gmail.com>
date:Thu Jan 14 16:34:58 2021 +0530
summary: engine: add `if True` to prepare for next patch

https://www.mercurial-scm.org/repo/hg/rev/f2c4224e6648
changeset:   46380:f2c4224e6648
user:Pulkit Goyal <7895pul...@gmail.com>
date:Thu Jan 14 16:37:10 2021 +0530
summary: upgrade: update only requirements if we can

https://www.mercurial-scm.org/repo/hg/rev/45afff0f530a
changeset:   46381:45afff0f530a
user:Augie Fackler 
date:Tue Dec 01 12:52:04 2020 -0500
summary: pyproject: add config file

https://www.mercurial-scm.org/repo/hg/rev/d4c8b4b90ecb
changeset:   46382:d4c8b4b90ecb
bookmark:@
tag: tip
user:Augie Fackler 
date:Tue Dec 01 12:59:33 2020 -0500
summary: black: merge config into main pyproject.toml now that we have it

-- 
Repository URL: https://www.mercurial-scm.org/repo/hg
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


mercurial-devel | Pipeline #17080 has failed for branch/default | 64e41df8

2021-01-27 Thread Heptapod


Your pipeline has failed.

Project: mercurial-devel ( https://foss.heptapod.net/octobus/mercurial-devel )
Branch: branch/default ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/commits/branch/default )

Commit: 64e41df8 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/commit/64e41df8e4bb4f94cf6d161d8e40ff0b54d64b77
 )
Commit Message: convert: option to set date and time for svn co...
Commit Author: Nikita Slyusarev ( https://foss.heptapod.net/nslsrv )

Pipeline #17080 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/pipelines/17080 ) triggered 
by Administrator ( https://foss.heptapod.net/root )
had 4 failed builds.

Job #157396 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/157396/raw )

Stage: tests
Name: test-py2-chg
Job #157394 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/157394/raw )

Stage: tests
Name: test-py2-rust
Job #157390 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/157390/raw )

Stage: tests
Name: test-py2
Job #157392 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/157392/raw )

Stage: tests
Name: test-py2-pure

-- 
You're receiving this email because of your account on foss.heptapod.net.



___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9897: rust: use HgError in RevlogError and Vfs

2021-01-27 Thread SimonSapin
SimonSapin created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9897

AFFECTED FILES
  rust/hg-core/src/errors.rs
  rust/hg-core/src/lib.rs
  rust/hg-core/src/operations/cat.rs
  rust/hg-core/src/operations/list_tracked_files.rs
  rust/hg-core/src/repo.rs
  rust/hg-core/src/requirements.rs
  rust/hg-core/src/revlog/changelog.rs
  rust/hg-core/src/revlog/index.rs
  rust/hg-core/src/revlog/node.rs
  rust/hg-core/src/revlog/nodemap_docket.rs
  rust/hg-core/src/revlog/revlog.rs
  rust/rhg/src/error.rs

CHANGE DETAILS

diff --git a/rust/rhg/src/error.rs b/rust/rhg/src/error.rs
--- a/rust/rhg/src/error.rs
+++ b/rust/rhg/src/error.rs
@@ -103,9 +103,6 @@
 impl From<(RevlogError, &str)> for CommandError {
 fn from((err, rev): (RevlogError, &str)) -> CommandError {
 match err {
-RevlogError::IoError(err) => CommandError::Abort(Some(
-utf8_to_local(&format!("abort: {}\n", err)).into(),
-)),
 RevlogError::InvalidRevision => CommandError::Abort(Some(
 utf8_to_local(&format!(
 "abort: invalid revision identifier {}\n",
@@ -120,27 +117,7 @@
 ))
 .into(),
 )),
-RevlogError::UnsuportedVersion(version) => {
-CommandError::Abort(Some(
-utf8_to_local(&format!(
-"abort: unsupported revlog version {}\n",
-version
-))
-.into(),
-))
-}
-RevlogError::Corrupted => {
-CommandError::Abort(Some("abort: corrupted revlog\n".into()))
-}
-RevlogError::UnknowDataFormat(format) => {
-CommandError::Abort(Some(
-utf8_to_local(&format!(
-"abort: unknow revlog dataformat {:?}\n",
-format
-))
-.into(),
-))
-}
+RevlogError::Other(err) => CommandError::Other(err),
 }
 }
 }
diff --git a/rust/hg-core/src/revlog/revlog.rs 
b/rust/hg-core/src/revlog/revlog.rs
--- a/rust/hg-core/src/revlog/revlog.rs
+++ b/rust/hg-core/src/revlog/revlog.rs
@@ -13,25 +13,34 @@
 use super::index::Index;
 use super::node::{NodePrefix, NODE_BYTES_LENGTH, NULL_NODE};
 use super::nodemap;
-use super::nodemap::NodeMap;
+use super::nodemap::{NodeMap, NodeMapError};
 use super::nodemap_docket::NodeMapDocket;
 use super::patch;
+use crate::errors::HgError;
 use crate::repo::Repo;
 use crate::revlog::Revision;
 
+#[derive(derive_more::From)]
 pub enum RevlogError {
-IoError(std::io::Error),
-UnsuportedVersion(u16),
 InvalidRevision,
 /// Found more than one entry whose ID match the requested prefix
 AmbiguousPrefix,
-Corrupted,
-UnknowDataFormat(u8),
+#[from]
+Other(HgError),
 }
 
-impl From for RevlogError {
-fn from(_: bytes_cast::FromBytesError) -> Self {
-RevlogError::Corrupted
+impl From for RevlogError {
+fn from(error: NodeMapError) -> Self {
+match error {
+NodeMapError::MultipleResults => RevlogError::AmbiguousPrefix,
+NodeMapError::RevisionNotInIndex(_) => RevlogError::corrupted(),
+}
+}
+}
+
+impl RevlogError {
+fn corrupted() -> Self {
+RevlogError::Other(HgError::corrupted("corrupted revlog"))
 }
 }
 
@@ -59,14 +68,12 @@
 data_path: Option<&Path>,
 ) -> Result {
 let index_path = index_path.as_ref();
-let index_mmap = repo
-.store_vfs()
-.mmap_open(&index_path)
-.map_err(RevlogError::IoError)?;
+let index_mmap = repo.store_vfs().mmap_open(&index_path)?;
 
 let version = get_version(&index_mmap);
 if version != 1 {
-return Err(RevlogError::UnsuportedVersion(version));
+// A proper new version should have had a repo/store requirement.
+return Err(RevlogError::corrupted());
 }
 
 let index = Index::new(Box::new(index_mmap))?;
@@ -80,10 +87,7 @@
 None
 } else {
 let data_path = data_path.unwrap_or(&default_data_path);
-let data_mmap = repo
-.store_vfs()
-.mmap_open(data_path)
-.map_err(RevlogError::IoError)?;
+let data_mmap = repo.store_vfs().mmap_open(data_path)?;
 Some(Box::new(data_mmap))
 };
 
@@ -121,9 +125,7 @@
 ) -> Result {
 if let Some(nodemap) = &self.nodemap {
 return nodemap
-.find_bin(&self.index, node)
-// TODO: propagate details of this error:
-.map_err(|_| RevlogError::Corrupted)?
+.find

D9894: rust: Remove DirstateParseError and ListDirstateTrackedFilesError

2021-01-27 Thread SimonSapin
SimonSapin created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  Use HgError instead.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9894

AFFECTED FILES
  rust/hg-core/src/dirstate.rs
  rust/hg-core/src/dirstate/dirstate_map.rs
  rust/hg-core/src/dirstate/parsers.rs
  rust/hg-core/src/lib.rs
  rust/hg-core/src/operations/list_tracked_files.rs
  rust/hg-core/src/operations/mod.rs
  rust/hg-cpython/src/dirstate.rs
  rust/hg-cpython/src/dirstate/dirs_multiset.rs
  rust/hg-cpython/src/dirstate/dirstate_map.rs
  rust/hg-cpython/src/parsers.rs
  rust/rhg/src/error.rs

CHANGE DETAILS

diff --git a/rust/rhg/src/error.rs b/rust/rhg/src/error.rs
--- a/rust/rhg/src/error.rs
+++ b/rust/rhg/src/error.rs
@@ -2,7 +2,8 @@
 use crate::ui::utf8_to_local;
 use crate::ui::UiError;
 use format_bytes::format_bytes;
-use hg::operations::{FindRootError, ListDirstateTrackedFilesError};
+use hg::errors::HgError;
+use hg::operations::FindRootError;
 use hg::requirements::RequirementsError;
 use hg::revlog::revlog::RevlogError;
 use hg::utils::files::get_bytes_from_path;
@@ -27,6 +28,9 @@
 Abort(Option>),
 /// A mercurial capability as not been implemented.
 Unimplemented,
+/// Common cases
+#[from]
+Other(HgError),
 }
 
 impl CommandError {
@@ -42,6 +46,10 @@
 CommandError::StderrError => exitcode::ABORT,
 CommandError::Abort(_) => exitcode::ABORT,
 CommandError::Unimplemented => exitcode::UNIMPLEMENTED_COMMAND,
+CommandError::Other(HgError::UnsupportedFeature(_)) => {
+exitcode::UNIMPLEMENTED_COMMAND
+}
+CommandError::Other(_) => exitcode::ABORT,
 }
 }
 
@@ -141,21 +149,3 @@
 }
 }
 }
-
-impl From for CommandError {
-fn from(err: ListDirstateTrackedFilesError) -> Self {
-match err {
-ListDirstateTrackedFilesError::IoError(err) => {
-CommandError::Abort(Some(
-utf8_to_local(&format!("abort: {}\n", err)).into(),
-))
-}
-ListDirstateTrackedFilesError::ParseError(_) => {
-CommandError::Abort(Some(
-// TODO find a better error message
-b"abort: parse error\n".to_vec(),
-))
-}
-}
-}
-}
diff --git a/rust/hg-cpython/src/parsers.rs b/rust/hg-cpython/src/parsers.rs
--- a/rust/hg-cpython/src/parsers.rs
+++ b/rust/hg-cpython/src/parsers.rs
@@ -15,7 +15,7 @@
 };
 use hg::{
 pack_dirstate, parse_dirstate, utils::hg_path::HgPathBuf, DirstateEntry,
-DirstateParents, DirstateParseError, FastHashMap, PARENT_SIZE,
+DirstateParents, FastHashMap, PARENT_SIZE,
 };
 use std::convert::TryInto;
 
@@ -58,21 +58,7 @@
 .to_py_object(py),
 )
 }
-Err(e) => Err(PyErr::new::(
-py,
-match e {
-DirstateParseError::TooLittleData => {
-"too little data for parents".to_string()
-}
-DirstateParseError::Overflow => {
-"overflow in dirstate".to_string()
-}
-DirstateParseError::CorruptedEntry(e) => e,
-DirstateParseError::Damaged => {
-"dirstate appears to be damaged".to_string()
-}
-},
-)),
+Err(e) => Err(PyErr::new::(py, e.to_string())),
 }
 }
 
diff --git a/rust/hg-cpython/src/dirstate/dirstate_map.rs 
b/rust/hg-cpython/src/dirstate/dirstate_map.rs
--- a/rust/hg-cpython/src/dirstate/dirstate_map.rs
+++ b/rust/hg-cpython/src/dirstate/dirstate_map.rs
@@ -26,10 +26,10 @@
 dirstate::{dirs_multiset::Dirs, make_dirstate_tuple},
 };
 use hg::{
+errors::HgError,
 utils::hg_path::{HgPath, HgPathBuf},
 DirsMultiset, DirstateEntry, DirstateMap as RustDirstateMap,
-DirstateMapError, DirstateParents, DirstateParseError, EntryState,
-StateMapIter, PARENT_SIZE,
+DirstateMapError, DirstateParents, EntryState, StateMapIter, PARENT_SIZE,
 };
 
 // TODO
@@ -84,13 +84,13 @@
 HgPath::new(f.extract::(py)?.data(py)),
 oldstate.extract::(py)?.data(py)[0]
 .try_into()
-.map_err(|e: DirstateParseError| {
+.map_err(|e: HgError| {
 PyErr::new::(py, e.to_string())
 })?,
 DirstateEntry {
 state: state.extract::(py)?.data(py)[0]
 .try_into()
-.map_err(|e: DirstateParseError| {
+.map_err(|e: HgError| {
 PyErr::new::(py, e.to_string())
 })?,
 mode: mode.extract(py)?,
@@ -113,7 +113,7 @@
 HgPath::new(f.extract::(py)?.data(py)),
 oldstate.extract::(py)?.data(py)[0

D9896: rust: replace RequirementsError with HgError

2021-01-27 Thread SimonSapin
SimonSapin created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9896

AFFECTED FILES
  rust/hg-core/src/repo.rs
  rust/hg-core/src/requirements.rs
  rust/rhg/src/error.rs
  tests/test-rhg.t

CHANGE DETAILS

diff --git a/tests/test-rhg.t b/tests/test-rhg.t
--- a/tests/test-rhg.t
+++ b/tests/test-rhg.t
@@ -163,7 +163,7 @@
 
   $ echo -e '\xFF' >> .hg/requires
   $ rhg debugrequirements
-  abort: .hg/requires is corrupted
+  corrupted repository: parse error in 'requires' file
   [255]
 
 Persistent nodemap
diff --git a/rust/rhg/src/error.rs b/rust/rhg/src/error.rs
--- a/rust/rhg/src/error.rs
+++ b/rust/rhg/src/error.rs
@@ -4,7 +4,6 @@
 use format_bytes::format_bytes;
 use hg::errors::HgError;
 use hg::operations::FindRootError;
-use hg::requirements::RequirementsError;
 use hg::revlog::revlog::RevlogError;
 use hg::utils::files::get_bytes_from_path;
 use std::convert::From;
@@ -17,9 +16,6 @@
 RootNotFound(PathBuf),
 /// The current directory cannot be found
 CurrentDirNotFound(std::io::Error),
-/// `.hg/requires`
-#[from]
-RequirementsError(RequirementsError),
 /// The standard output stream cannot be written to
 StdoutError,
 /// The standard error stream cannot be written to
@@ -38,10 +34,6 @@
 match self {
 CommandError::RootNotFound(_) => exitcode::ABORT,
 CommandError::CurrentDirNotFound(_) => exitcode::ABORT,
-CommandError::RequirementsError(
-RequirementsError::Unsupported { .. },
-) => exitcode::UNIMPLEMENTED_COMMAND,
-CommandError::RequirementsError(_) => exitcode::ABORT,
 CommandError::StdoutError => exitcode::ABORT,
 CommandError::StderrError => exitcode::ABORT,
 CommandError::Abort(_) => exitcode::ABORT,
@@ -67,15 +59,9 @@
 b"abort: error getting current working directory: {}\n",
 e.to_string().as_bytes(),
 )),
-CommandError::RequirementsError(RequirementsError::Corrupted) => {
-Some(
-"abort: .hg/requires is corrupted\n".as_bytes().to_owned(),
-)
-}
 CommandError::Abort(message) => message.to_owned(),
 
-CommandError::RequirementsError(_)
-| CommandError::StdoutError
+CommandError::StdoutError
 | CommandError::StderrError
 | CommandError::Unimplemented
 | CommandError::Other(HgError::UnsupportedFeature(_)) => None,
diff --git a/rust/hg-core/src/requirements.rs b/rust/hg-core/src/requirements.rs
--- a/rust/hg-core/src/requirements.rs
+++ b/rust/hg-core/src/requirements.rs
@@ -1,19 +1,7 @@
+use crate::errors::{HgError, HgResultExt, IoResultExt};
 use crate::repo::Repo;
-use std::io;
 
-#[derive(Debug)]
-pub enum RequirementsError {
-// TODO: include a path?
-Io(io::Error),
-/// The `requires` file is corrupted
-Corrupted,
-/// The repository requires a feature that we don't support
-Unsupported {
-feature: String,
-},
-}
-
-fn parse(bytes: &[u8]) -> Result, ()> {
+fn parse(bytes: &[u8]) -> Result, HgError> {
 // The Python code reading this file uses `str.splitlines`
 // which looks for a number of line separators (even including a couple of
 // non-ASCII ones), but Python code writing it always uses `\n`.
@@ -27,16 +15,21 @@
 if line[0].is_ascii_alphanumeric() && line.is_ascii() {
 Ok(String::from_utf8(line.into()).unwrap())
 } else {
-Err(())
+Err(HgError::corrupted("parse error in 'requires' file"))
 }
 })
 .collect()
 }
 
-pub fn load(repo: &Repo) -> Result, RequirementsError> {
-match repo.hg_vfs().read("requires") {
-Ok(bytes) => parse(&bytes).map_err(|()| RequirementsError::Corrupted),
-
+pub fn load(repo: &Repo) -> Result, HgError> {
+if let Some(bytes) = repo
+.hg_vfs()
+.read("requires")
+.for_file("requires".as_ref())
+.io_not_found_as_none()?
+{
+parse(&bytes)
+} else {
 // Treat a missing file the same as an empty file.
 // From `mercurial/localrepo.py`:
 // > requires file contains a newline-delimited list of
@@ -44,18 +37,19 @@
 // > the repository. This file was introduced in Mercurial 0.9.2,
 // > which means very old repositories may not have one. We assume
 // > a missing file translates to no requirements.
-Err(error) if error.kind() == std::io::ErrorKind::NotFound => {
-Ok(Vec::new())
-}
-
-Err(error) => Err(RequirementsError::Io(error))?,
+Ok(Vec::new())
 }
 }
 
-pub fn check(repo: &Repo) -> Result<(), RequirementsError> {
+pub fn check(repo: &Repo) -> Result<(), HgError>

D9893: rust: Replace DirstatePackError with HgError

2021-01-27 Thread SimonSapin
SimonSapin created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9893

AFFECTED FILES
  rust/hg-core/src/dirstate/parsers.rs
  rust/hg-core/src/lib.rs
  rust/hg-cpython/src/parsers.rs

CHANGE DETAILS

diff --git a/rust/hg-cpython/src/parsers.rs b/rust/hg-cpython/src/parsers.rs
--- a/rust/hg-cpython/src/parsers.rs
+++ b/rust/hg-cpython/src/parsers.rs
@@ -15,8 +15,7 @@
 };
 use hg::{
 pack_dirstate, parse_dirstate, utils::hg_path::HgPathBuf, DirstateEntry,
-DirstatePackError, DirstateParents, DirstateParseError, FastHashMap,
-PARENT_SIZE,
+DirstateParents, DirstateParseError, FastHashMap, PARENT_SIZE,
 };
 use std::convert::TryInto;
 
@@ -128,18 +127,9 @@
 }
 Ok(PyBytes::new(py, &packed))
 }
-Err(error) => Err(PyErr::new::(
-py,
-match error {
-DirstatePackError::CorruptedParent => {
-"expected a 20-byte hash".to_string()
-}
-DirstatePackError::CorruptedEntry(e) => e,
-DirstatePackError::BadSize(expected, actual) => {
-format!("bad dirstate size: {} != {}", actual, expected)
-}
-},
-)),
+Err(error) => {
+Err(PyErr::new::(py, error.to_string()))
+}
 }
 }
 
diff --git a/rust/hg-core/src/lib.rs b/rust/hg-core/src/lib.rs
--- a/rust/hg-core/src/lib.rs
+++ b/rust/hg-core/src/lib.rs
@@ -79,19 +79,6 @@
 }
 
 #[derive(Debug, PartialEq)]
-pub enum DirstatePackError {
-CorruptedEntry(String),
-CorruptedParent,
-BadSize(usize, usize),
-}
-
-impl From for DirstatePackError {
-fn from(e: std::io::Error) -> Self {
-DirstatePackError::CorruptedEntry(e.to_string())
-}
-}
-
-#[derive(Debug, PartialEq)]
 pub enum DirstateMapError {
 PathNotFound(HgPathBuf),
 EmptyPath,
@@ -113,9 +100,9 @@
 #[derive(Debug, derive_more::From)]
 pub enum DirstateError {
 Parse(DirstateParseError),
-Pack(DirstatePackError),
 Map(DirstateMapError),
 IO(std::io::Error),
+Common(errors::HgError),
 }
 
 #[derive(Debug, derive_more::From)]
diff --git a/rust/hg-core/src/dirstate/parsers.rs 
b/rust/hg-core/src/dirstate/parsers.rs
--- a/rust/hg-core/src/dirstate/parsers.rs
+++ b/rust/hg-core/src/dirstate/parsers.rs
@@ -3,10 +3,11 @@
 // This software may be used and distributed according to the terms of the
 // GNU General Public License version 2 or any later version.
 
+use crate::errors::HgError;
 use crate::utils::hg_path::HgPath;
 use crate::{
 dirstate::{CopyMap, EntryState, StateMap},
-DirstateEntry, DirstatePackError, DirstateParents, DirstateParseError,
+DirstateEntry, DirstateParents, DirstateParseError,
 };
 use byteorder::{BigEndian, ReadBytesExt, WriteBytesExt};
 use micro_timer::timed;
@@ -90,7 +91,7 @@
 copy_map: &CopyMap,
 parents: DirstateParents,
 now: Duration,
-) -> Result, DirstatePackError> {
+) -> Result, HgError> {
 // TODO move away from i32 before 2038.
 let now: i32 = now.as_secs().try_into().expect("time overflow");
 
@@ -136,16 +137,23 @@
 new_filename.extend(copy.bytes());
 }
 
-packed.write_u8(entry.state.into())?;
-packed.write_i32::(entry.mode)?;
-packed.write_i32::(entry.size)?;
-packed.write_i32::(new_mtime)?;
-packed.write_i32::(new_filename.len() as i32)?;
+// Unwrapping because `impl std::io::Write for Vec` never errors
+packed.write_u8(entry.state.into()).unwrap();
+packed.write_i32::(entry.mode).unwrap();
+packed.write_i32::(entry.size).unwrap();
+packed.write_i32::(new_mtime).unwrap();
+packed
+.write_i32::(new_filename.len() as i32)
+.unwrap();
 packed.extend(new_filename)
 }
 
 if packed.len() != expected_size {
-return Err(DirstatePackError::BadSize(expected_size, packed.len()));
+return Err(HgError::CorruptedRepository(format!(
+"bad dirstate size: {} != {}",
+expected_size,
+packed.len()
+)));
 }
 
 Ok(packed)



To: SimonSapin, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9895: rhg: Print an error message in more cases

2021-01-27 Thread SimonSapin
SimonSapin created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9895

AFFECTED FILES
  rust/rhg/src/error.rs

CHANGE DETAILS

diff --git a/rust/rhg/src/error.rs b/rust/rhg/src/error.rs
--- a/rust/rhg/src/error.rs
+++ b/rust/rhg/src/error.rs
@@ -73,7 +73,16 @@
 )
 }
 CommandError::Abort(message) => message.to_owned(),
-_ => None,
+
+CommandError::RequirementsError(_)
+| CommandError::StdoutError
+| CommandError::StderrError
+| CommandError::Unimplemented
+| CommandError::Other(HgError::UnsupportedFeature(_)) => None,
+
+CommandError::Other(e) => {
+Some(format_bytes!(b"{}\n", e.to_string().as_bytes()))
+}
 }
 }
 



To: SimonSapin, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9892: rust: Introduce an `HgError` enum for common error cases

2021-01-27 Thread SimonSapin
SimonSapin created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9892

AFFECTED FILES
  rust/hg-core/src/errors.rs
  rust/hg-core/src/lib.rs

CHANGE DETAILS

diff --git a/rust/hg-core/src/lib.rs b/rust/hg-core/src/lib.rs
--- a/rust/hg-core/src/lib.rs
+++ b/rust/hg-core/src/lib.rs
@@ -5,6 +5,7 @@
 // GNU General Public License version 2 or any later version.
 mod ancestors;
 pub mod dagops;
+pub mod errors;
 pub use ancestors::{AncestorsIterator, LazyAncestors, MissingAncestors};
 mod dirstate;
 pub mod discovery;
diff --git a/rust/hg-core/src/errors.rs b/rust/hg-core/src/errors.rs
new file mode 100644
--- /dev/null
+++ b/rust/hg-core/src/errors.rs
@@ -0,0 +1,111 @@
+use std::fmt;
+
+/// Common error cases that can happen in many different APIs
+#[derive(Debug)]
+pub enum HgError {
+IoError {
+error: std::io::Error,
+context: IoErrorContext,
+},
+
+/// A file under `.hg/` normally only written by Mercurial
+///
+/// The given string is a short explanation for users, not intended to be
+/// machine-readable.
+CorruptedRepository(String),
+
+/// The respository or requested operation involves a feature not
+/// supported by the Rust implementation. Falling back to the Python
+/// implementation may or may not work.
+///
+/// The given string is a short explanation for users, not intended to be
+/// machine-readable.
+UnsupportedFeature(String),
+}
+
+/// Details about where an I/O error happened
+#[derive(Debug, derive_more::From)]
+pub enum IoErrorContext {
+/// A filesystem operation returned `std::io::Error`
+#[from]
+File(std::path::PathBuf),
+/// `std::env::current_dir` returned `std::io::Error`
+CurrentDir,
+}
+
+impl HgError {
+pub fn corrupted(explanation: impl Into) -> Self {
+HgError::CorruptedRepository(explanation.into())
+}
+}
+
+// TODO: use `DisplayBytes` instead to show non-Unicode filenames losslessly?
+impl fmt::Display for HgError {
+fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+match self {
+HgError::IoError { error, context } => {
+write!(f, "{}: {}", error, context)
+}
+HgError::CorruptedRepository(explanation) => {
+write!(f, "corrupted repository: {}", explanation)
+}
+HgError::UnsupportedFeature(explanation) => {
+write!(f, "unsupported feature: {}", explanation)
+}
+}
+}
+}
+
+// TODO: use `DisplayBytes` instead to show non-Unicode filenames losslessly?
+impl fmt::Display for IoErrorContext {
+fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+match self {
+IoErrorContext::File(path) => path.display().fmt(f),
+IoErrorContext::CurrentDir => f.write_str("current directory"),
+}
+}
+}
+
+pub trait IoResultExt {
+/// Annotate a possible I/O error as related to a file at the given path.
+///
+/// This allows printing something like “File not found: example.txt”
+/// instead of just “File not found”.
+///
+/// Converts a `Result` with `std::io::Error` into one with `HgError`.
+fn for_file(self, path: &std::path::Path) -> Result;
+}
+
+impl IoResultExt for std::io::Result {
+fn for_file(self, path: &std::path::Path) -> Result {
+self.map_err(|error| HgError::IoError {
+error,
+context: IoErrorContext::File(path.to_owned()),
+})
+}
+}
+
+pub trait HgResultExt {
+/// Handle missing files separately from other I/O error cases.
+///
+/// Wraps the `Ok` type in an `Option`:
+///
+/// * `Ok(x)` becomes `Ok(Some(x))`
+/// * An I/O "not found" error becomes `Ok(None)`
+/// * Other errors are unchanged
+fn io_not_found_as_none(self) -> Result, HgError>;
+}
+
+impl HgResultExt for Result {
+fn io_not_found_as_none(self) -> Result, HgError> {
+match self {
+Ok(x) => Ok(Some(x)),
+Err(HgError::IoError { error, .. })
+if error.kind() == std::io::ErrorKind::NotFound =>
+{
+Ok(None)
+}
+Err(other_error) => Err(other_error),
+}
+}
+}



To: SimonSapin, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9891: wix: tell ComponentSearch that it is finding a directory (not a file)

2021-01-27 Thread spectral (Kyle Lippincott)
spectral created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  This is to fix an issue we've noticed where fresh installations start at
  `C:\Program Files\Mercurial`, and then upgrades "walk up" the tree and end up 
in
  `C:\Program Files` and finally `C:\` (where they stay).
  
  ComponentSearch defaults to finding files, which I think means "it produces a
  string like `C:\Program Files\Mercurial`", whereas with the type being
  explicitly a directory, it would return `C:\Program Files\Mercurial\` (note 
the
  final trailing backslash). Presumably, a latter step then tries to turn that
  file name into a proper directory, by removing everything after the last `\`.
  
  This could likely also be fixed by actually searching for the component for
  hg.exe itself. That seemed a lot more complicated, as the GUID for hg.exe 
isn't
  known in this file (it's one of the "auto-derived" ones). We could also 
consider
  adding a Condition that I think could check the Property and ensure it's 
either
  empty or ends in a trailing slash, but that would be an installer runtime 
check
  and I'm not convinced it'd actually be useful.
  
  This will *not* cause existing installations that are in one of the bad
  directories to fix themselves. Doing that would require a fair amount more
  understanding of wix and windows installer than I have, and it *probably*
  wouldn't be possible to be 100% correct about it either (there's nothing
  preventing a user from intentionally installing it in C:\, though I don't know
  why they would do so).
  
  If someone wants to tackle fixing existing installations, I think that the 
first
  installation is actually the only one that shows up in "Add or Remove 
Programs",
  and that its registry keys still exist. You might be able to find something
  under HKEY_USERS that lists both the "good" and the "bad" InstallDirs. Mine 
was
  under `HKEY_USERS\S-1-5-18\Software\Mercurial\InstallDir` (C:\), and
  `HKEY_USERS\S-1-5-21-..numbers..\Software\Mercurial\InstallDir` (C:\Program
  Files\Mercurial). If you find exactly two, with one being the default path, 
and
  the other being a prefix of it, the user almost certainly hit this bug :D
  
  We had originally thought that this bug might be due to unattended
  installations/upgrades, but I no longer think that's the case. We were able to
  reproduce the issue by uninstalling all copies of Mercurial I could find,
  installing one version (it chose the correct location), and then starting the
  installer for a different version (higher or lower didn't matter). I did not
  need to deal with an unattended or headless installation/upgrade to trigger 
the
  issue, but it's possible that my system was "primed" for this bug to happen
  because of a previous unattended installation/upgrade.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9891

AFFECTED FILES
  contrib/packaging/wix/mercurial.wxs

CHANGE DETAILS

diff --git a/contrib/packaging/wix/mercurial.wxs 
b/contrib/packaging/wix/mercurial.wxs
--- a/contrib/packaging/wix/mercurial.wxs
+++ b/contrib/packaging/wix/mercurial.wxs
@@ -39,7 +39,8 @@
 
 
   
+   Guid='$(var.ComponentMainExecutableGUID)'
+   Type='directory' />
 
 
 



To: spectral, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


mercurial@46364: 11 new changesets (2 on stable)

2021-01-27 Thread Mercurial Commits
11 new changesets (2 on stable) in mercurial:

https://www.mercurial-scm.org/repo/hg/rev/b8d8fd2fe75f
changeset:   46354:b8d8fd2fe75f
parent:  46341:3b1c0c367606
user:Pierre-Yves David 
date:Fri Dec 04 10:11:01 2020 +0100
summary: perf: use the `perf--` prefix for perf command

https://www.mercurial-scm.org/repo/hg/rev/98e3a693061a
changeset:   46355:98e3a693061a
user:Martin von Zweigbergk 
date:Mon Jan 18 22:32:09 2021 -0800
summary: simplemerge: delete unused find_unconflicted()

https://www.mercurial-scm.org/repo/hg/rev/0c95b59a89f1
changeset:   46356:0c95b59a89f1
user:Martin von Zweigbergk 
date:Tue Jan 19 14:00:42 2021 -0800
summary: resolve: also detect new :mergediff conflict markers

https://www.mercurial-scm.org/repo/hg/rev/72f5280e33b6
changeset:   46357:72f5280e33b6
user:Joerg Sonnenberger 
date:Tue Jan 19 00:18:39 2021 +0100
summary: commit: look-up new revision once

https://www.mercurial-scm.org/repo/hg/rev/009130064813
changeset:   46358:009130064813
user:Joerg Sonnenberger 
date:Tue Jan 19 00:20:42 2021 +0100
summary: exchangev2: avoid second look-up by node

https://www.mercurial-scm.org/repo/hg/rev/0600e8467101
changeset:   46359:0600e8467101
user:Pierre-Yves David 
date:Sun Jan 17 23:21:33 2021 +0100
summary: discovery: add config options to control sample size

https://www.mercurial-scm.org/repo/hg/rev/1726a53a8494
changeset:   46360:1726a53a8494
user:Joerg Sonnenberger 
date:Fri Jan 15 01:20:47 2021 +0100
summary: reverse-branch-cache: switch to doubling allocating scheme

https://www.mercurial-scm.org/repo/hg/rev/dfca84970da8
changeset:   46361:dfca84970da8
user:Augie Fackler 
date:Mon May 18 17:29:53 2020 -0400
summary: cleanup: use mergestate.unresolvedcount() instead of 
bool(list(unresolved()))

https://www.mercurial-scm.org/repo/hg/rev/24a32dea6955
changeset:   46362:24a32dea6955
bookmark:@
user:Augie Fackler 
date:Thu May 28 17:31:41 2020 -0400
summary: rebase: add a config knob for forcing in-memory rebasing

https://www.mercurial-scm.org/repo/hg/rev/d6cfe45afb18
changeset:   46363:d6cfe45afb18
branch:  stable
parent:  46353:a6c5ec6b4728
user:Matt Harbison 
date:Sun Jan 24 19:08:47 2021 -0500
summary: packaging: allow specifying modules to include with py2exe

https://www.mercurial-scm.org/repo/hg/rev/5b747aa1b2be
changeset:   46364:5b747aa1b2be
branch:  stable
tag: tip
user:Matt Harbison 
date:Sun Jan 24 19:14:50 2021 -0500
summary: packaging: include `windows_curses` when building py2exe

-- 
Repository URL: https://www.mercurial-scm.org/repo/hg
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


certificate errors when accessing http://mercurial.selenic.com/release

2021-01-27 Thread Danny Schneider

This is what happens:


LC_TIME="en_EN.UTF-8" wget 
http://mercurial.selenic.com/release/mercurial-5.6.tar.gz
--2021-01-23 23:21:20-- 
http://mercurial.selenic.com/release/mercurial-5.6.tar.gz
Resolving mercurial.selenic.com (mercurial.selenic.com)... 
192.81.134.36, 2600:3c01::f03c:91ff:fedb:76b6
Connecting to mercurial.selenic.com 
(mercurial.selenic.com)|192.81.134.36|:80... connected.

HTTP request sent, awaiting response... 302 Found
Location: https://mercurial.selenic.com/release/mercurial-5.6.tar.gz 
[following]
--2021-01-23 23:21:21-- 
https://mercurial.selenic.com/release/mercurial-5.6.tar.gz
Connecting to mercurial.selenic.com 
(mercurial.selenic.com)|192.81.134.36|:443... connected.

ERROR: no certificate subject alternative name matches
    requested host name 'mercurial.selenic.com'.
To connect to mercurial.selenic.com insecurely, use 
`--no-check-certificate'.



The same happens when I try to access 
http://mercurial.selenic.com/release with a browser


--
Danny Schneider
Mit freundlichem Gruß

With best regards

Danny Schneider


OpenPGP_0xEFA3AB5B1538BD5D.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


mercurial-devel | Pipeline #17057 has failed for branch/default | 4beb4a5b

2021-01-27 Thread Heptapod


Your pipeline has failed.

Project: mercurial-devel ( https://foss.heptapod.net/octobus/mercurial-devel )
Branch: branch/default ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/commits/branch/default )

Commit: 4beb4a5b ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/commit/4beb4a5bf300dc7e1c230eb3dd23a40db61c7bcd
 )
Commit Message: convert: option to set date and time for svn co...
Commit Author: Nikita Slyusarev ( https://foss.heptapod.net/nslsrv )

Pipeline #17057 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/pipelines/17057 ) triggered 
by Pierre-Yves David ( https://foss.heptapod.net/marmoute )
had 4 failed builds.

Job #156867 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156867/raw )

Stage: tests
Name: test-py2-chg
Job #156863 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156863/raw )

Stage: tests
Name: test-py2-pure
Job #156865 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156865/raw )

Stage: tests
Name: test-py2-rust
Job #156861 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156861/raw )

Stage: tests
Name: test-py2

-- 
You're receiving this email because of your account on foss.heptapod.net.



___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9890: clang-format: issue version information in the skip message

2021-01-27 Thread marmoute (Pierre-Yves David)
marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  This will help people to configure their black

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9890

AFFECTED FILES
  tests/hghave.py

CHANGE DETAILS

diff --git a/tests/hghave.py b/tests/hghave.py
--- a/tests/hghave.py
+++ b/tests/hghave.py
@@ -591,7 +591,7 @@
 return matchoutput("pylint --help", br"Usage:[ ]+pylint", True)
 
 
-@check("clang-format", "clang-format C code formatter")
+@check("clang-format", "clang-format C code formatter (>= 11)")
 def has_clang_format():
 m = matchoutput('clang-format --version', br'clang-format version (\d+)')
 # style changed somewhere between 10.x and 11.x



To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9889: heptapod-ci: indicate which version of clang-format is used for the run

2021-01-27 Thread marmoute (Pierre-Yves David)
marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  This will help understand possible mismatch

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9889

AFFECTED FILES
  contrib/heptapod-ci.yml

CHANGE DETAILS

diff --git a/contrib/heptapod-ci.yml b/contrib/heptapod-ci.yml
--- a/contrib/heptapod-ci.yml
+++ b/contrib/heptapod-ci.yml
@@ -21,6 +21,7 @@
   - cd /tmp/mercurial-ci/
   - ls -1 tests/test-check-*.* > /tmp/check-tests.txt
   - black --version
+  - clang-format --version
 script:
 - echo "python used, $PYTHON"
 - echo "$RUNTEST_ARGS"



To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9888: black: issue version information in the skip message

2021-01-27 Thread marmoute (Pierre-Yves David)
marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  This will help people to configure their black

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9888

AFFECTED FILES
  tests/hghave.py

CHANGE DETAILS

diff --git a/tests/hghave.py b/tests/hghave.py
--- a/tests/hghave.py
+++ b/tests/hghave.py
@@ -1054,7 +1054,7 @@
 return matchoutput('emacs --version', b'GNU Emacs 2(4.4|4.5|5|6|7|8|9)')
 
 
-@check('black', 'the black formatter for python')
+@check('black', 'the black formatter for python (>= 20.8b1)')
 def has_black():
 blackcmd = 'black --version'
 version_regex = b'black, version ([0-9a-b.]+)'



To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9887: heptapod-ci: indicate which version of black is used for the run

2021-01-27 Thread marmoute (Pierre-Yves David)
marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  This will help understand possible mismatch

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9887

AFFECTED FILES
  contrib/heptapod-ci.yml

CHANGE DETAILS

diff --git a/contrib/heptapod-ci.yml b/contrib/heptapod-ci.yml
--- a/contrib/heptapod-ci.yml
+++ b/contrib/heptapod-ci.yml
@@ -20,6 +20,7 @@
   - cargo build
   - cd /tmp/mercurial-ci/
   - ls -1 tests/test-check-*.* > /tmp/check-tests.txt
+  - black --version
 script:
 - echo "python used, $PYTHON"
 - echo "$RUNTEST_ARGS"



To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


D9886: heptapod-ci: add a default value for HG_CI_IMAGE_TAG

2021-01-27 Thread marmoute (Pierre-Yves David)
marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D9886

AFFECTED FILES
  contrib/heptapod-ci.yml

CHANGE DETAILS

diff --git a/contrib/heptapod-ci.yml b/contrib/heptapod-ci.yml
--- a/contrib/heptapod-ci.yml
+++ b/contrib/heptapod-ci.yml
@@ -7,6 +7,7 @@
 variables:
 PYTHON: python
 TEST_HGMODULEPOLICY: "allow"
+HG_CI_IMAGE_TAG: "latest"
 
 .runtests_template: &runtests
 stage: tests



To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


mercurial-devel | Pipeline #17053 has failed for branch/default | 4beb4a5b

2021-01-27 Thread Heptapod


Your pipeline has failed.

Project: mercurial-devel ( https://foss.heptapod.net/octobus/mercurial-devel )
Branch: branch/default ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/commits/branch/default )

Commit: 4beb4a5b ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/commit/4beb4a5bf300dc7e1c230eb3dd23a40db61c7bcd
 )
Commit Message: convert: option to set date and time for svn co...
Commit Author: Nikita Slyusarev ( https://foss.heptapod.net/nslsrv )

Pipeline #17053 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/pipelines/17053 ) triggered 
by Administrator ( https://foss.heptapod.net/root )
had 6 failed builds.

Job #156801 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156801/raw )

Stage: tests
Name: test-py2-rust
Job #156797 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156797/raw )

Stage: tests
Name: test-py2
Job #156799 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156799/raw )

Stage: tests
Name: test-py2-pure
Job #156803 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156803/raw )

Stage: tests
Name: test-py2-chg
Job #156798 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156798/raw )

Stage: tests
Name: test-py3
Job #156804 ( 
https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/156804/raw )

Stage: tests
Name: test-py3-chg

-- 
You're receiving this email because of your account on foss.heptapod.net.



___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel