Coder Social home page Coder Social logo

Comments (17)

berkowski avatar berkowski commented on July 29, 2024 1

Ubuntu Focal doesn't seem too bad and I think I've gotten most of the linux build iterations working now. I've put together a few tables of what's being built at

https://github.com/berkowski/MB-System/blob/master/ci/README.md

from mb-system.

berkowski avatar berkowski commented on July 29, 2024

@schwehr, any thoughts? Builds are ticking over at https://travis-ci.com/berkowski/MB-System . Docker images are at https://hub.docker.com/r/zberkowitz/mbsystem-deps/tags . The framework for the single-repo approach seems to be working, so figuring out what you'd like for coverage and when things are built would seem to be the next step.

from mb-system.

dwcaress avatar dwcaress commented on July 29, 2024

from mb-system.

berkowski avatar berkowski commented on July 29, 2024

Dave,

Right now I'm just using whatever is available as "standard" for each repo, except for Xenial which doesn't have a new enough version of GMT:

  • Ubuntu 19.04
    • GCC: 8.3.0
    • PROJ: 5.2.0
    • GMT: 5.4.5
  • Ubuntu 18.04
    • GCC: 7.4.0
    • PROJ: 4.9.3
    • GMT: 5.4.3
  • Ubuntu 16.04
    • GCC: 5.4.0
    • PROJ: 4.9.2
    • GMT: 6.0.0 (from source)
  • CentOS 7
    • GCC: 4.8.5
    • PROJ: 4.8.0
    • GMT: 5.4.4

I think if you want to test against specific combinations of PROJ and GMT it'd be best to pick a single distribution and install those project versions from source. That's easily doable.

from mb-system.

dwcaress avatar dwcaress commented on July 29, 2024

from mb-system.

berkowski avatar berkowski commented on July 29, 2024

Sure. I'll start putting together two more images with the intention on tracking the latest versions of PROJ and GMT on Ubuntu and CentOS and update the list.

from mb-system.

schwehr avatar schwehr commented on July 29, 2024

Anything with a 2nd config is better that the single configuration that we have now, so wishing... :)

My wish for the short term would be to have builds that cover at least once the following. The GEOS CI system builds 33 different configs, but that's nuts.

  • MB-System configs
    • With gsf, with trn*, default debugging and optimization (-g -O2)
    • disable-gsf, without trn, -g0 no debugging, -O3 aggressive optimization, -DNDEBUG
  • Compiler
    • recent llvm/clang
    • recent gcc
  • OS
    • ubuntu 20.04LTS
    • ubuntu 18.04LTS
    • CentOS something
    • Mac OSX whatever is easiest on Travis
  • PROJ
    • 6.3
    • 5.[2-9].[0-9]
    • 4.9.?
    • Eventually Proj 7
  • GMT
    • 6.x
    • 5.4.x

I think we should not have a Ubuntu 16.04LTS build. And as soon as there is an Ubuntu 20.04LTS, we should not have 19.04 or 19.10.

from mb-system.

berkowski avatar berkowski commented on July 29, 2024

I've got an image with Ubuntu 18.04 using PROJ 6.3, GMT 6.0.0, and GDAL 3.0.3 now. CentOS 7 would require building sqlite3 from sources to satisfy PROJ 6.3 requirements. The machinery is there for CentOS 8, but I guess I'd like to see what their pre-built packages are going to look like first.

For selfish reasons I'd like to keep Ubuntu 16.04 on the list, though I don't think it needs to be built every push to master. I'd be quite happy with it being built only for new tag releases as part of the PR approval. Could even make it "fail ok"

I think the individual MB-System config builds (-O2, -O3, etc) should use a single base image, along with the clang target and the build case against the latest PROJ and GMT. Do you have a preference?

Anything with a 2nd config is better that the single configuration that we have now, so wishing... :)

My wish for the short term would be to have builds that cover at least once the following. The GEOS CI system builds 33 different configs, but that's nuts.

* MB-System configs
  
  * With gsf, with trn*, default debugging and optimization (-g -O2)
  * disable-gsf, without trn, -g0 no debugging, -O3 aggressive optimization, -DNDEBUG

* Compiler
  
  * recent llvm/clang
  * recent gcc

* OS
  
  * ubuntu 20.04LTS
  * ubuntu 18.04LTS
  * CentOS something
  * Mac OSX whatever is easiest on Travis

* PROJ
  
  * 6.3
  * 5.[2-9].[0-9]
  * 4.9.?
  * Eventually Proj 7

* GMT
  
  * 6.x
  * 5.4.x

I think we should not have a Ubuntu 16.04LTS build. And as soon as there is an Ubuntu 20.04LTS, we should not have 19.04 or 19.10.

from mb-system.

schwehr avatar schwehr commented on July 29, 2024

My pref would be Ubuntu 20.04LTS Focal if that's possible. Assuming that it's not still a mess from development

from mb-system.

schwehr avatar schwehr commented on July 29, 2024

Very cool! But, GDAL 1? Eeek. That's really scary. We should probably put something in the MB-System configure that just says no to GDAL < 2. There were literally thousands of bugs fixed since then.

from mb-system.

berkowski avatar berkowski commented on July 29, 2024

I'd only ask that you add the GDAL check after making a final 5.7.6 release as we need the EM2040 capability.

At this point it seems like the major linux targets have been addressed. If someone wants to do a quick writeup of how they compile from source on OSX I can add that process too. Otherwise I think we're at the point to start the PR process.

There's still work to do, like migrating the images to a new account on hub.docker.com and creating some new API keys for the travis config, but those can be tickboxes in the PR.

from mb-system.

schwehr avatar schwehr commented on July 29, 2024

from mb-system.

berkowski avatar berkowski commented on July 29, 2024

It's not that the EM2040 needs gdal 1.x, it's just that the Sentry AUV switched to the EM2040 and we're still using 16.04. There is the desire to move to a newer Ubuntu but no definite plan. Introducing the GDAL version requirement would force us to either use the last-good (for us) beta version or an unplanned update to our processing OS.

from mb-system.

schwehr avatar schwehr commented on July 29, 2024

Ok. Makes sense to not actively ban GDAL less than 2. However, as a maintainer of GDAL, I strongly urge you to make a plan to upgrade GDAL.

from mb-system.

dwcaress avatar dwcaress commented on July 29, 2024

GDAL is only in the mix because it is required by GMT. MB-System does not make any GDAL calls directly, and in common usage does not trigger any use of GDAL through GMT. This could change of course, but for now what version of GDAL is there is really a GMT package manager issue.

from mb-system.

berkowski avatar berkowski commented on July 29, 2024

I hadn't expected #866 to be merged so quickly without migrating the Docker images to an MB-System controlled account. I don't mind keeping them there for now but I figure at some point you'll want to "own" the whole stack.

I'm going to make a small PR to ensure that docker images are only built by travis when triggered by dwcaress/MB-System and close this issue.

from mb-system.

berkowski avatar berkowski commented on July 29, 2024

PR mentioned above is up at #868

from mb-system.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.