-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI fixes #1744
CI fixes #1744
Conversation
f7be8c4
to
d3f2110
Compare
Thanks for taking a stab at this. That said, switching to |
Travis killed container based ( |
I’ll get back to working on this after I finish traveling. It’s not easy to work on CI on a plane ;) |
8e28174
to
726e57d
Compare
At least build 7 is easy - CLANG should be set to 5.1. I haven't looked at the others in detail, but build 6 is complaining that it can't find @wjakob |
FYI #1725 could be closed pending solution of the For this bit, though, it looks like Ubuntu Trusty may only provide EDIT: Sorry, didn't see the EDIT 2: Is there a reason why Trusty is still being used, when Travis has Xenial available? (I'd be happy to help upgrade.) Re: @bstaletic's comment, I'd be happy to help there too. Is there another place / issue in which we can discuss this? |
725933b
to
82349ce
Compare
Thanks for the help! I can add you to my fork if you'd like to tinker. I'm working on this off and on. I'll try to use Using language=Python, python=3.6 works on Travis Trusty, but we use CPP. I'm not sure why deadsnakes seems to work in some places but not all (the PPA is still there, and I think there would be a clear error if it was no longer whitelisted by Travis). I'm checking to see if we can use LLVM 7. |
Maybe we should try a different thing for python - |
b33d1bc
to
90ad218
Compare
I've just activated TravisCi on my fork, so I'll see if I can refine stuff there to avoid clobbering: eacousineau#2 UPDATE: At least failures on *.6 (can't find "python3.6-dev") and *.7 are the same (can't find "libstdc++7") on mine. Perhaps C++17 somehow clobbers things?
I'm going to try (a variant of) @bstaletic's suggestion of (pyenv) and switch over to That being said, I realize now that the PyPy stuff is functionally broken; will try that out of hashing out the other bits. |
Fixed the Switching from Other changes:
For now, avoided doing any |
@bstaletic : I'll try to find some time to merge important PRs in the next weeks, and I agree that a discussion about which ones are important could be useful to have. I am very ambivalent about handing out commit rights to solve a perceived bottleneck at the maintainer level, however. To be honest, many of the 90 open PRs are simply not up to the quality standards of this project. An important thing to consider is that this is a header file library, where minimizing bloat should be a key criterion both to minimize compile time and object code size in dependent projects. This is also a very mature project -- many of the open PRs add features with limited use for 99% of users of this project, but they would add bloat that affects everyone downstream. So the fact that development has slowed down is also partly a consequence of the maturity and special cost-benefit situation of a header file library. |
@wjakob I agree with everything you said, but consider one more thing. Some PRs are just abandoned, by either the PR author or the maintainers. More specifically, I'm interested in #864, #781 and #1210 . Out of these three #1210 would reduce bloat if one only needs a caster for I would have polished up these PR, but so far I decided not to, because I thought they just wouldn't get merged. Then there's Python 2 end of life nearing and dropping it, though it's debatable whether it should happen as soon as possible after 01.01.2020, would reduce a ton of complexity. To make my point clear, my request for more maintainers wasn't about merging all the PRs. I, myself, many times said that pybind's goal isn't to be exactly what Boost.Python is. My request was more about allowing PRs that would be really nice to have to finally get merged. Like I said, I understand the concern about making pybind bloated for the benefits of a tiny minority of users, but I was hoping that could be "fixed" by carefully choosing the new maintainers. |
@wjakob One example is 2.3.0; it's been a very long time since 2.2.x was released, and only the master branch (so 2.3.x candidate) works with nvcc & CUDA. It would be nice to have someone prepare and release 2.3.0. |
I'm traveling again to another conference so will revisit sporadically for the next week. |
@henryiii I'm still ironing out the PyPy CI errors (reverting back to 5.8.0 still yields odd download errors...) If you'd like, once I have that working, I can push a single commit on top of yours? @wjakob All of that makes sense. It would still be nice to have a list of people who are available to respond promptly to / triage PRs and issues, even if overall development slows down. It would also be excellent to have the "maintenance mode" be made more visible, either through the README / docs / whatever. At present,
This is fine as well, but it would be excellent to enable people to know what those quality standards are, objectively. CI passing of course, if the design is nailed down. But there could be other things that could facilitate feature development in an iterative fashion - if it's merited. If it conflicts with the roadmap, then it'd be excellent to say as much? |
@eacousineau, I've added you to my fork. Feel free to push to this PR. Let me know if you need help or are not working on some part, otherwise I'll probably just wait till you push. |
Sorry for the delay, and thanks! EDIT: I think I have the fixes. Will await the WIP build, then push here. |
Think it's working now: wip branch CI results Just pushed the commit delta on this branch (added details to the commit). |
* Fix warning that not including a cmake source or build dir will be a fatal error (it is now on newest CMakes) * Fixes appveyor * Travis uses CMake 3.9 for more than a year now * Travis dropped sudo: false in December * Dropping Sphinx 2
- clang7: Suppress self-assign warnings; fix missing virtual dtors - pypy: - Keep old version (newer stuff breaks) - Pin packages to extra index for speed - travis: - Make docker explicit; remove docker if not needed - Make commands more verbose (for debugging / repro) - Make Ubuntu dist explicit per job
Did Travis really add a name field?!?!?!? Wow, yes they did. Finally! |
We'll need to open an issue for adding PyPy 7 support at some point (outside the scope of this already large PR). Probably should start checking GCC 8 and 9, too; again, in a later PR. |
@wjakob This passes! Ready for review and merge. |
Ping? The warning bugs on newer compilers are very irritating, I'd like to get it fixed, as well as it would be very good to fix the PyPy support. No that can happen until the CI starts passing again. |
Hi @henryiii, thank you very much for fixing the CI issues (it looks like it was a lot of work!). I'll merge this right away. Best, |
@henryiii : after merging the PR, the AppVeyor build didn't pass due to a deprecation warning. |
It should be a harmless warning and the transaction finished verification before it excecuted. That's odd. I'll see if I can fix it. I think it started happening recently (the question I found when googling it is a day old). The fix will be released next week. But it still should not kill the install! |
Note: quite a bit of the work was from @eacousineau too! |
@wjakob Looks like we got unlucky; the PR build was with Conda 4.6.9, which is fine, and the master build was with Conda 4.6.11, which has a bug. I've made a new PR (#1757), which sidesteps the issue by removing the initial conda update (conda still gets updated, but since it all happens at once, the transaction is executed by 4.5.4 and succeeds). The conda bug should be fixed next week. See conda/conda#8512. |
Working on fixing the CI failures.