Re: [R-pkg-devel] Travis/appveyor with CXX14/17

2019-06-07 Thread Tim Keitt
On Fri, Jun 7, 2019 at 11:09 AM Dirk Eddelbuettel  wrote:

>
> On 7 June 2019 at 10:13, Tim Keitt wrote:
> | I bumped a package to CXX14/17 and it failed on Travis/Appveyor while
> | checking fine locally. I assume I need to request different compilers or
>
> Correct.
>
> Working with a seriously outdated base layer of Ubuntu is a key
> bug^Hfeature
> of Travis.  Maddening, really.
>
> | something like that. Anyone have a quick recipe for that?
>
> Yes.  In fact, two different ways.
>
> i)  If you use the old Travis set up which is more shell-script alike, then
> one way is to use a PPA for nighlies/more current gcc or clang
> versions. I used to do that some client packages that needed newer
> compilers. An older example is still here
>
> https://github.com/eddelbuettel/cpptoml/blob/master/.travis.yml
>
> ii) Screw Travis and use the fact that you can now bring your own Docker
> container.  That is much preferable as you are in _complete_ control of
> the test environment. I switched a few packages to this, particularly
> when they needed additional libraries which I was building / providing
> via a PPA anyway. Two examples:
>
>   https://github.com/eddelbuettel/rquantlib/blob/master/.travis.yml
>   https://github.com/rcppmlpack/rcppmlpack2/blob/master/.travis.yml
>
> If you don't need extra libraries then something like this container
> have
> R, recent toolchain and support for PPAs. I have been meaning to blog
> about it with an example:
>
>   https://hub.docker.com/r/rocker/r-apt
>
> Obviously you can also start from vanilla Rocker's r-base, or any other
> Debian container.  Again,  your control, possibly also your initial
> work.
>
> A scheme I found helpful in a few repos is to create
>
>   docker/ci/Dockerfile -- base layer for CI, used by Travis
>   docker/run/Dockerfile-- above plus the actual repo code
>
> where the latter one is a simple container for users of the package.
>

That's super helpful. Thanks.

THK


>
> Hth, Dirk
>
> --
> http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org
>

[[alternative HTML version deleted]]

__
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel


Re: [R-pkg-devel] Travis/appveyor with CXX14/17

2019-06-07 Thread Dirk Eddelbuettel


On 7 June 2019 at 10:13, Tim Keitt wrote:
| I bumped a package to CXX14/17 and it failed on Travis/Appveyor while
| checking fine locally. I assume I need to request different compilers or

Correct.

Working with a seriously outdated base layer of Ubuntu is a key bug^Hfeature
of Travis.  Maddening, really.

| something like that. Anyone have a quick recipe for that?

Yes.  In fact, two different ways.

i)  If you use the old Travis set up which is more shell-script alike, then
one way is to use a PPA for nighlies/more current gcc or clang
versions. I used to do that some client packages that needed newer
compilers. An older example is still here

https://github.com/eddelbuettel/cpptoml/blob/master/.travis.yml

ii) Screw Travis and use the fact that you can now bring your own Docker
container.  That is much preferable as you are in _complete_ control of
the test environment. I switched a few packages to this, particularly
when they needed additional libraries which I was building / providing
via a PPA anyway. Two examples:

  https://github.com/eddelbuettel/rquantlib/blob/master/.travis.yml
  https://github.com/rcppmlpack/rcppmlpack2/blob/master/.travis.yml

If you don't need extra libraries then something like this container have
R, recent toolchain and support for PPAs. I have been meaning to blog
about it with an example:

  https://hub.docker.com/r/rocker/r-apt

Obviously you can also start from vanilla Rocker's r-base, or any other
Debian container.  Again,  your control, possibly also your initial work.

A scheme I found helpful in a few repos is to create

  docker/ci/Dockerfile -- base layer for CI, used by Travis
  docker/run/Dockerfile-- above plus the actual repo code

where the latter one is a simple container for users of the package.

Hth, Dirk

-- 
http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org

__
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel


[R-pkg-devel] Travis/appveyor with CXX14/17

2019-06-07 Thread Tim Keitt
I bumped a package to CXX14/17 and it failed on Travis/Appveyor while
checking fine locally. I assume I need to request different compilers or
something like that. Anyone have a quick recipe for that?

THK

[[alternative HTML version deleted]]

__
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel