view tests/test-empty-group.t @ 43678:52e4bfebc4ba

setup: conditionalize access to `sys.dllhandle` when building extensions This code is only run on Windows, and was crashing PyOxidizer when running in `setup-py-install` mode. Now an oxidized binary can be built by simply pointing to setup.py. Something is slightly different now that it's not being built from a virtualenv. Previously, `hg version` could print to the screen, but now it aborts saying "Incorrect function". But I can see the output if redirected to a file, and it's not complaining about missing C extensions, so I think those are loading now (unlike from the virtualenv). The interesting this about this incorrect function output is that it failed when initially built. I then went back and did a `make clean` and `make local` with py3 and then py2 to ensure I didn't break the existing code. At that point I ran the oxidized executable again and it was able to print to the screen normally! So I ran `pyoxidizer build` again, it only output the following, and then running the executable failed to output again: (pyO2_venv) C:\Users\Matt\hg3\hg_pyO2>pyoxidizer build Finished dev [unoptimized + debuginfo] target(s) in 0.12s packaging application into C:/Users/Matt/hg3/hg_pyO2\build\apps\hg_pyO2\x86_64-pc-windows-msvc\debug purging C:/Users/Matt/hg3/hg_pyO2\build\apps\hg_pyO2\x86_64-pc-windows-msvc\debug copying C:/Users/Matt/hg3/hg_pyO2\build\target\x86_64-pc-windows-msvc\debug\hg_pyO2.exe to C:/Users/Matt/hg3/hg_pyO2\build\apps\hg_pyO2\x86_64-pc-windows-msvc\debug\hg_pyO2.exe resolving packaging state... writing license for [...] hg_pyO2 packaged into C:/Users/Matt/hg3/hg_pyO2\build\apps\hg_pyO2\x86_64-pc-windows-msvc\debug executable path: C:/Users/Matt/hg3/hg_pyO2\build\apps\hg_pyO2\x86_64-pc-windows-msvc\debug\hg_pyO2.exe Differential Revision: https://phab.mercurial-scm.org/D7444
author Matt Harbison <matt_harbison@yahoo.com>
date Sat, 16 Nov 2019 12:19:43 -0500
parents eb586ed5d8ce
children
line wrap: on
line source

#  A          B
#
#  3  4       3
#  |\/|       |\
#  |/\|       | \
#  1  2       1  2
#  \ /        \ /
#   0          0
#
# if the result of the merge of 1 and 2
# is the same in 3 and 4, no new manifest
# will be created and the manifest group
# will be empty during the pull
#
# (plus we test a failure where outgoing
# wrongly reported the number of csets)

  $ hg init a
  $ cd a
  $ touch init
  $ hg ci -A -m 0
  adding init
  $ touch x y
  $ hg ci -A -m 1
  adding x
  adding y

  $ hg update 0
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
  $ touch x y
  $ hg ci -A -m 2
  adding x
  adding y
  created new head

  $ hg merge 1
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
  (branch merge, don't forget to commit)
  $ hg ci -A -m m1

  $ hg update -C 1
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ hg merge 2
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
  (branch merge, don't forget to commit)
  $ hg ci -A -m m2
  created new head

  $ cd ..

  $ hg clone -r 3 a b
  adding changesets
  adding manifests
  adding file changes
  added 4 changesets with 3 changes to 3 files
  new changesets 5fcb73622933:d15a0c284984
  updating to branch default
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved

  $ hg clone -r 4 a c
  adding changesets
  adding manifests
  adding file changes
  added 4 changesets with 3 changes to 3 files
  new changesets 5fcb73622933:1ec3c74fc0e0
  updating to branch default
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved

  $ hg -R a outgoing b
  comparing with b
  searching for changes
  changeset:   4:1ec3c74fc0e0
  tag:         tip
  parent:      1:79f9e10cd04e
  parent:      2:8e1bb01c1a24
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     m2
  
  $ hg -R a outgoing c
  comparing with c
  searching for changes
  changeset:   3:d15a0c284984
  parent:      2:8e1bb01c1a24
  parent:      1:79f9e10cd04e
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     m1
  
  $ hg -R b outgoing c
  comparing with c
  searching for changes
  changeset:   3:d15a0c284984
  tag:         tip
  parent:      2:8e1bb01c1a24
  parent:      1:79f9e10cd04e
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     m1
  
  $ hg -R c outgoing b
  comparing with b
  searching for changes
  changeset:   3:1ec3c74fc0e0
  tag:         tip
  parent:      1:79f9e10cd04e
  parent:      2:8e1bb01c1a24
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     m2
  

  $ hg -R b pull a
  pulling from a
  searching for changes
  adding changesets
  adding manifests
  adding file changes
  added 1 changesets with 0 changes to 0 files (+1 heads)
  new changesets 1ec3c74fc0e0
  (run 'hg heads' to see heads, 'hg merge' to merge)

  $ hg -R c pull a
  pulling from a
  searching for changes
  adding changesets
  adding manifests
  adding file changes
  added 1 changesets with 0 changes to 0 files (+1 heads)
  new changesets d15a0c284984
  (run 'hg heads' to see heads, 'hg merge' to merge)