[python-committers] Re: The Night’s Watch is Fixing the CIs in the Darkness for You

2020-04-07 Thread Steve Dower

On 06Apr2020 1750, Victor Stinner wrote:

Le lun. 6 avr. 2020 à 13:31, Steve Dower  a écrit :

The CI configuration is loaded from the PR head, at least on GitHub
Actions (where you can validate config changes in PR) and Azure
Pipelines. I just validated this by re-running an old PR and watched it
choose OpenSSL 1.1.1d instead of 1.1.1f (and then fail to check out a
reference - see the logs at
https://github.com/python/cpython/pull/18909/checks?check_run_id=564079685)

So I think it's an issue, and probably does require PRs to merge in
master to get back in sync. But probably the best we can do is post a
message in older PRs warning that they need to do it. Maybe we close
them at the same time?


That's bad :-(


So is leaving them there when we know they can't be merged :(


We could also move some of these CI configuration variables out of the
CI files and into separate scripts - many already are. This is annoying
for anyone who forks and runs their own build, but it should mean that
updates like the OpenSSL version get merged in during CI even for older PRs.


That sounds like a sane plan.


Provided there are options/environment variables available to override 
these without having to modify source files, I agree that it's sane.


Though we then need an explicit policy in our CI configurations to not 
put information in those - I've already noticed that people contribute 
changes to them that don't follow the existing conventions, so we'll 
have to be more explicit about it.


Cheers,
Steve
___
python-committers mailing list -- python-committers@python.org
To unsubscribe send an email to python-committers-le...@python.org
https://mail.python.org/mailman3/lists/python-committers.python.org/
Message archived at 
https://mail.python.org/archives/list/python-committers@python.org/message/54GYHPY56IHJWXX3VNRRDLVCX2SQZ4JD/
Code of Conduct: https://www.python.org/psf/codeofconduct/


[python-committers] Re: The Night’s Watch is Fixing the CIs in the Darkness for You

2020-04-06 Thread Victor Stinner
Le lun. 6 avr. 2020 à 13:31, Steve Dower  a écrit :
> The CI configuration is loaded from the PR head, at least on GitHub
> Actions (where you can validate config changes in PR) and Azure
> Pipelines. I just validated this by re-running an old PR and watched it
> choose OpenSSL 1.1.1d instead of 1.1.1f (and then fail to check out a
> reference - see the logs at
> https://github.com/python/cpython/pull/18909/checks?check_run_id=564079685)
>
> So I think it's an issue, and probably does require PRs to merge in
> master to get back in sync. But probably the best we can do is post a
> message in older PRs warning that they need to do it. Maybe we close
> them at the same time?

That's bad :-(

> We could also move some of these CI configuration variables out of the
> CI files and into separate scripts - many already are. This is annoying
> for anyone who forks and runs their own build, but it should mean that
> updates like the OpenSSL version get merged in during CI even for older PRs.

That sounds like a sane plan.

The OpenSSL version is just one example of our CI flaw. Yet another
example: new Sphinx breaks Python 3.8 CI.
https://bugs.python.org/issue40204

The Sphinx version is not pinned in 3.8 (it is in master).

Victor
-- 
Night gathers, and now my watch begins. It shall not end until my death.
___
python-committers mailing list -- python-committers@python.org
To unsubscribe send an email to python-committers-le...@python.org
https://mail.python.org/mailman3/lists/python-committers.python.org/
Message archived at 
https://mail.python.org/archives/list/python-committers@python.org/message/4ZNICIADFDJPKNQT5AGFCDRHAZ5HQ2OB/
Code of Conduct: https://www.python.org/psf/codeofconduct/


[python-committers] Re: The Night’s Watch is Fixing the CIs in the Darkness for You

2020-04-06 Thread Steve Dower

On 03Apr2020 1948, Nathaniel Smith wrote:

On Fri, Apr 3, 2020 at 11:32 AM Victor Stinner  wrote:

I had to update the OpenSSL version in the CI configuration which
lives in the same Git repository than Python code base. Since our CI
currently runs on unmodified PRs, maybe the 1090 pending pull requests
must now be rebased manually on the master branch to get these CI
configuration updates. Otherwise, the CI would fail which prevents to
merge a PR. I'm not sure at this point.


In general CI systems run on merge(PR-head, target-branch-head),
rather than directly on PR-head. So this may not be an issue at all.


The CI configuration is loaded from the PR head, at least on GitHub 
Actions (where you can validate config changes in PR) and Azure 
Pipelines. I just validated this by re-running an old PR and watched it 
choose OpenSSL 1.1.1d instead of 1.1.1f (and then fail to check out a 
reference - see the logs at 
https://github.com/python/cpython/pull/18909/checks?check_run_id=564079685)


So I think it's an issue, and probably does require PRs to merge in 
master to get back in sync. But probably the best we can do is post a 
message in older PRs warning that they need to do it. Maybe we close 
them at the same time?


We could also move some of these CI configuration variables out of the 
CI files and into separate scripts - many already are. This is annoying 
for anyone who forks and runs their own build, but it should mean that 
updates like the OpenSSL version get merged in during CI even for older PRs.


Cheers,
Steve
___
python-committers mailing list -- python-committers@python.org
To unsubscribe send an email to python-committers-le...@python.org
https://mail.python.org/mailman3/lists/python-committers.python.org/
Message archived at 
https://mail.python.org/archives/list/python-committers@python.org/message/Y4IHDFSVRC7NN4GJ3YQUUTNQA7ZGTCEK/
Code of Conduct: https://www.python.org/psf/codeofconduct/


[python-committers] Re: The Night’s Watch is Fixing the CIs in the Darkness for You

2020-04-03 Thread Terry Reedy

On 4/3/2020 2:32 PM, Victor Stinner wrote:

Hi,

tl; dr Maybe the 1090 pending pull requests will have to be rebased on
master to be able to be merged, unless we enhance our CI to always
test PRs after rebasing them on the master branch.


I hope you mean doing an update merge rather than a rebase.

I am otherwise not sure what you are saying.  Sometimes when I request 
an up-to-date webpage for a PR, it has a notice that there is a merge 
conflict and that the PR cannot be merged even though all tests, when 
last run, were green.  The tests do not have to be rerun for this to happen.


The latest occurrence was for a PR that modified a blurb file that was 
deleted after the blurb was moved to the master log for 3.9.0a5.  (This 
was not nice to fix, so I will avoid in the future by not commit such 
edits until otherwise reade to merge.)  So my impression is that github 
tries to merge the PR into master on every page request.


I very much appreciate the work being done to prevent spurious CI failures.
___
python-committers mailing list -- python-committers@python.org
To unsubscribe send an email to python-committers-le...@python.org
https://mail.python.org/mailman3/lists/python-committers.python.org/
Message archived at 
https://mail.python.org/archives/list/python-committers@python.org/message/VM7PJYFS3HXKKKEWZIXZIXFXUZ6KLJ3D/
Code of Conduct: https://www.python.org/psf/codeofconduct/


[python-committers] Re: The Night’s Watch is Fixing the CIs in the Darkness for You

2020-04-03 Thread Antoine Pitrou

Le 03/04/2020 à 20:48, Nathaniel Smith a écrit :
> On Fri, Apr 3, 2020 at 11:32 AM Victor Stinner  wrote:
>> I had to update the OpenSSL version in the CI configuration which
>> lives in the same Git repository than Python code base. Since our CI
>> currently runs on unmodified PRs, maybe the 1090 pending pull requests
>> must now be rebased manually on the master branch to get these CI
>> configuration updates. Otherwise, the CI would fail which prevents to
>> merge a PR. I'm not sure at this point.
> 
> In general CI systems run on merge(PR-head, target-branch-head),
> rather than directly on PR-head. So this may not be an issue at all.

That was my impression as well.

Regards

Antoine.
___
python-committers mailing list -- python-committers@python.org
To unsubscribe send an email to python-committers-le...@python.org
https://mail.python.org/mailman3/lists/python-committers.python.org/
Message archived at 
https://mail.python.org/archives/list/python-committers@python.org/message/3AOO2UKQE5AQMMUF46P2EYAGHDPLNPZ4/
Code of Conduct: https://www.python.org/psf/codeofconduct/


[python-committers] Re: The Night’s Watch is Fixing the CIs in the Darkness for You

2020-04-03 Thread Nathaniel Smith
On Fri, Apr 3, 2020 at 11:32 AM Victor Stinner  wrote:
> I had to update the OpenSSL version in the CI configuration which
> lives in the same Git repository than Python code base. Since our CI
> currently runs on unmodified PRs, maybe the 1090 pending pull requests
> must now be rebased manually on the master branch to get these CI
> configuration updates. Otherwise, the CI would fail which prevents to
> merge a PR. I'm not sure at this point.

In general CI systems run on merge(PR-head, target-branch-head),
rather than directly on PR-head. So this may not be an issue at all.

-n

-- 
Nathaniel J. Smith -- https://vorpus.org
___
python-committers mailing list -- python-committers@python.org
To unsubscribe send an email to python-committers-le...@python.org
https://mail.python.org/mailman3/lists/python-committers.python.org/
Message archived at 
https://mail.python.org/archives/list/python-committers@python.org/message/WEZGVOFIBKPO357UGNFLC2I3Y3NFKWPI/
Code of Conduct: https://www.python.org/psf/codeofconduct/