view tests/test-sparse-requirement.t @ 49437:e4e33b779fa2 stable

automation: set PATH when building on Windows Sometime in the 6.2 release cycle the Windows building automation broke. Building the wheel and even PyOxidizer based installers now fails with: ``` Exception: PowerShell execution failed: error: subprocess-exited-with-error Getting requirements to build wheel did not run successfully. exit code: 1 [1 lines of output] Unable to find a working hg binary to extract the version from the repository tags [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ``` I have a hunch this is a regression from upgrading pip in 1c00777702da, but I haven't verified this. It may not be, as PyOxidizer has its own bundled Python/pip. So maybe it is something in `setup.py`.
author Gregory Szorc <gregory.szorc@gmail.com>
date Tue, 19 Jul 2022 18:32:40 -0700
parents 7ee07e1a25c0
children
line wrap: on
line source

  $ hg init repo
  $ cd repo

  $ touch a.html b.html c.py d.py

  $ cat > frontend.sparse << EOF
  > [include]
  > *.html
  > EOF

  $ hg -q commit -A -m initial

  $ echo 1 > a.html
  $ echo 1 > c.py
  $ hg commit -m 'commit 1'

Enable sparse profile

  $ hg debugrequires
  dotencode
  dirstate-v2 (dirstate-v2 !)
  fncache
  generaldelta
  persistent-nodemap (rust !)
  revlog-compression-zstd (zstd !)
  revlogv1
  share-safe
  sparserevlog
  store
  testonly-simplestore (reposimplestore !)

  $ hg debugsparse --config extensions.sparse= --enable-profile frontend.sparse
  $ ls -A
  .hg
  a.html
  b.html

Requirement for sparse added when sparse is enabled

  $ hg debugrequires --config extensions.sparse=
  dotencode
  dirstate-v2 (dirstate-v2 !)
  exp-sparse
  fncache
  generaldelta
  persistent-nodemap (rust !)
  revlog-compression-zstd (zstd !)
  revlogv1
  share-safe
  sparserevlog
  store
  testonly-simplestore (reposimplestore !)

Client without sparse enabled reacts properly

  $ hg files
  abort: repository is using sparse feature but sparse is not enabled; enable the "sparse" extensions to access
  [255]

Requirement for sparse is removed when sparse is disabled

  $ hg debugsparse --reset --config extensions.sparse=

  $ hg debugrequires
  dotencode
  dirstate-v2 (dirstate-v2 !)
  fncache
  generaldelta
  persistent-nodemap (rust !)
  revlog-compression-zstd (zstd !)
  revlogv1
  share-safe
  sparserevlog
  store
  testonly-simplestore (reposimplestore !)

And client without sparse can access

  $ hg files
  a.html
  b.html
  c.py
  d.py
  frontend.sparse