ovalhub / pyicu

The PyICU project repository has moved to https://pyicu.org.
Other
133 stars 49 forks source link

Expand Travis-CI scope #118

Closed SethMMorton closed 4 years ago

SethMMorton commented 4 years ago

This is intended to address and close issue #117.

This PR will take many iterations to get correct, so I have prefixed the title with WIP to indicate it is a work-in-progress. I will remove WIP when I think it is read to merge.

SethMMorton commented 4 years ago

OK. I will try that. If that doesn't work, then I will hand what I have over to you.

ovalhub commented 4 years ago

On Nov 17, 2019, at 10:50, Seth Morton notifications@github.com wrote:

From the logs, it looks like you're building a bunch of different windows configurations.

I don't think you are reading the logs correctly. I am only trying to get ICU built with MSVC. I attempted to do this with either cygwin (as in this build: https://travis-ci.com/SethMMorton/pyicu/jobs/257411610, which fails because it thinks the C compiler doesn't work) or the VS studio suite (as in this build: https://travis-ci.com/SethMMorton/pyicu/builds/136856342 which fails for who knows why) and neither worked. Each of these were in separate builds, e.g. different commits. At no point did I try to do both at the same time, that would be stupid.

I think you should pick just one, say 64-bit, non UWP, Release, build so that the MSVC compiler is used (it has been the source of issues in the past). Then, follow the ICU instructions to build using the command line using msbuild or devenv.com.

That is exactly what I did in the job I linked to... have you taken a look at the code I am commiting? If not, here's a link to the line where I use the msbuild command (which I did read from the ICU README).

https://github.com/ovalhub/pyicu/blob/f394b35cecb3012f1effb5e29b81a775eaedb5db/ci-prepare-environment.bash#L114

And here's the line where that failed due to an error I have no idea how to debug: https://travis-ci.com/SethMMorton/pyicu/jobs/257412314#L3593.

That link doesn't give me any line. Maybe that could explain our disconnect ?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

SethMMorton commented 4 years ago

It's line 3593 (the last part of the URL).

SethMMorton commented 4 years ago

I am done.

Here is the state of things:

Python 3.8 is hard-coded in a few places. Be aware when 3.9 comes out.

I still have email notifications turned off, but I highly recommend turning them on (just delete the notifications: email: false from .travis-ci.yml. Travis only sends an email:

Assuming you don't have too many failed builds, you won't get many emails.

ovalhub commented 4 years ago

On Nov 17, 2019, at 11:05, Seth Morton notifications@github.com wrote:

It's line 3593 (the last part of the URL).

Here is a screenshot of where your link sends me (and, no, I didn't notice the line number in it):

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

ovalhub commented 4 years ago

Thank you for your work and contribution !

On Nov 17, 2019, at 11:55, Seth Morton notifications@github.com wrote:

I am done.

Here is the state of things:

All jobs are defined explicitly in the jobs: key, rather than using a build matrix. I did this because there was so much picking and choosing going on All ICU versions are tested against Python 3.8 All Python versions are tested against ICU 65 MacOS tests ICU versions 65 and 55 on Python 3.8 Windows (currently disabled) tests ICU versions 65 and 55 on Python 3.8 All the logic to build ICU (and to build Python on MacOS and Windows) is in the bash script ci-prepare-environment.bash. It is called in the before_install: section It is in this file where building ICU in Windows needs to be modified if that is something you will do The ICU build and the (Python build on MacOS) is cached I still have email notifications turned off, but I highly recommend turning them on (just delete the notifications: email: false from .travis-ci.yml. Travis only sends an email:

On tagged releases When your build fails On the first successful build after a failure Assuming you don't have too many failed builds, you won't get many emails.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.