view .gitlab-ci.yml @ 5602:e25394b6d021 stable

ngtip: fix TypeError: make revset from revs, not nodes (issue6405) This commit does two things: - Firstly, it tweaks the ngtip revset test to exercise the -G/--graph flag. This successfully triggers the bug when it is present. - Secondly, it changes the `ngtip` revset to return a revset made from integer revs instead of node hash bytes. The test now passes. Details: The TypeError was triggered by running hg log -r 'ngtip("default")' --graph in a repository with more than one changeset. The --graph tag caused the flow of control to call `reachableroots2` with the changeset ID found by the `ngtip` revset. Because the changeset ID was a node hash (bytes) instead of a rev (int), reachableroots2 raised the following error: TypeError: an integer is required (got type bytes)
author Sietse Brouwer <sbbrouwer@gmail.com>
date Wed, 07 Oct 2020 09:34:59 +0200
parents 2f572645b6d5
children 98e2613d797d
line wrap: on
line source

flake8:
    image: octobus/ci-py2-hgext3rd
    script:
        - hg files -0 'set:(**.py or grep("^#!.*python")) - removed()' -X hgext3rd/evolve/thirdparty | xargs -0 flake8

pytype:
    image: octobus/ci-py3-hgext3rd
    script:
        - hg pull -R /ci/repos/mercurial/
        - hg_rev=$(tests/testlib/map-hg-rev.sh "$(hg log -r . -T '{branch}')")
        - hg -R /ci/repos/mercurial/ update "$hg_rev"
        - echo testing with mercurial branch="$hg_rev", revision="$(hg log -R /ci/repos/mercurial/ -r . -T '{node}')"
        - jobs=$(python -c 'import multiprocessing; print multiprocessing.cpu_count()')
        - pytype -P /ci/repos/mercurial/:hgext3rd -k hgext3rd -x hgext3rd/evolve/thirdparty -j $jobs || true
    when: manual

tests-py2-cext:
    image: octobus/ci-py2-hgext3rd
    script:
        - hg pull -R /ci/repos/mercurial/
        - hg_rev=$(tests/testlib/map-hg-rev.sh "$(hg log -r . -T '{branch}')")
        - hg -R /ci/repos/mercurial/ update "$hg_rev"
        - echo testing with mercurial branch="$hg_rev", revision="$(hg log -R /ci/repos/mercurial/ -r . -T '{node}')"
        - (cd tests; /ci/repos/mercurial/tests/run-tests.py --color=always)

tests-py2-pure:
    image: octobus/ci-py2-hgext3rd
    script:
        - hg pull -R /ci/repos/mercurial/
        - hg_rev=$(tests/testlib/map-hg-rev.sh "$(hg log -r . -T '{branch}')")
        - hg -R /ci/repos/mercurial/ update "$hg_rev"
        - echo testing with mercurial branch="$hg_rev", revision="$(hg log -R /ci/repos/mercurial/ -r . -T '{node}')"
        - (cd tests; /ci/repos/mercurial/tests/run-tests.py --color=always --pure)

tests-py3-cext:
    image: octobus/ci-py3-hgext3rd
    script:
        - hg pull -R /ci/repos/mercurial/
        - hg_rev=$(tests/testlib/map-hg-rev.sh "$(hg log -r . -T '{branch}')")
        - hg -R /ci/repos/mercurial/ update "$hg_rev"
        - echo testing with mercurial branch="$hg_rev", revision="$(hg log -R /ci/repos/mercurial/ -r . -T '{node}')"
        - (cd tests; python3 /ci/repos/mercurial/tests/run-tests.py --color=always)

tests-py3-pure:
    image: octobus/ci-py3-hgext3rd
    script:
        - hg pull -R /ci/repos/mercurial/
        - hg_rev=$(tests/testlib/map-hg-rev.sh "$(hg log -r . -T '{branch}')")
        - hg -R /ci/repos/mercurial/ update "$hg_rev"
        - echo testing with mercurial branch="$hg_rev", revision="$(hg log -R /ci/repos/mercurial/ -r . -T '{node}')"
        - (cd tests; python3 /ci/repos/mercurial/tests/run-tests.py --color=always --pure)

doc:
    image: octobus/ci-py2-evolve-doc
    script:
        - cd docs/
        - make
    variables:
        LANG: en_us.UTF-8
        PYTHONPATH: "/ci/repos/mercurial:$PYTHONPATH"
    artifacts:
        paths:
            - html/*