Re: CI server on GitHub repos

2017-06-27 Thread Svetlana Tkachenko
David Chisnall wrote:
> Note: Travis has an open issue tracking their lack of FreeBSD support. 
> The more people who +1 it, the more likely it is to happen.

Link please?

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-27 Thread Ivan Vučica
On Mon, Jun 26, 2017 at 9:47 PM, Daniel Ferreira (theiostream)
 wrote:
> On Mon, Jun 26, 2017 at 2:11 PM, Niels Grewe  
> wrote:
>> This seems to be missing some visibility, but there are all ready working 
>> Travis CI jobs for base (both for the legacy runtime and libobjc2): 
>> https://travis-ci.org/gnustep/libs-base
>
> Wow, I'm embarassed I hadn't noticed that. Could Ivan or someone else
> with owner access to the repo set up a Travis CI hook for pull
> requests then?

I've looked at it and we have the 'integration' activated in Github
UI. Pull requests are also being built:
https://travis-ci.org/gnustep/libs-base/pull_requests

At this point, I wonder what else could be done?

(Other than the existing setup for libs-base, I would leave
configuration of each repository to individual packagers.)

> A build status badge on the readme would be interesting as well.

We currently don't have a markdown based readme, but there's also a
question about whether there would be pushback for promoting Travis.

Consider that Github is a temporary stop for us, anyway.

>
> I suppose the only thing missing then is configuring an environment
> for the "old gcc" (which is, apparently, 3.4.5). Despite the current
> gcc environment being on version 4.8 I'll assume this can be treated
> as "modern gcc" (or should it not?).

Modern enough. I would, however, assume that 'apt-get install'ing a
newer GCC isn't a big issue.

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread Daniel Ferreira (theiostream)
On Mon, Jun 26, 2017 at 2:11 PM, Niels Grewe  wrote:
> This seems to be missing some visibility, but there are all ready working 
> Travis CI jobs for base (both for the legacy runtime and libobjc2): 
> https://travis-ci.org/gnustep/libs-base

Wow, I'm embarassed I hadn't noticed that. Could Ivan or someone else
with owner access to the repo set up a Travis CI hook for pull
requests then? A build status badge on the readme would be interesting as well.

I suppose the only thing missing then is configuring an environment
for the "old gcc" (which is, apparently, 3.4.5). Despite the current
gcc environment being on version 4.8 I'll assume this can be treated
as "modern gcc" (or should it not?).

-- Daniel.

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread Riccardo Mottola

Hi,

Daniel Ferreira (theiostream) wrote:

True. I'll see if I can come up quickly with a CI setup for gcc 3.4.5,
as Riccardo suggested -- we really don't need to go any older than
that, right?

I'll try this out with base for now, and it'll look something like:
1) GNU/Linux + gcc 3.4.5
2) GNU/Linux + gcc 6.x
3) GNU/Linux + clang 4.0


This looks looks like a nice "mix" if it is easy enough to set up. We 
know Linux is a stable OS so this is much easier to test e.g. mingw or 
solaris with aging 3.4x and 4.x gcc series and thus separate compiler 
from OS issues.


Thanks,

Riccardo

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread Niels Grewe
This seems to be missing some visibility, but there are all ready working 
Travis CI jobs for base (both for the legacy runtime and libobjc2): 
https://travis-ci.org/gnustep/libs-base

Cheers,

Niels

Von: thera...@sucs.org
Gesendet: 26. Juni 2017 5:21 nachm.
An: bnm...@gmail.com
Cc: gnustep-dev@gnu.org
Betreff: Re: CI server on GitHub repos


On 26 Jun 2017, at 15:42, Daniel Ferreira (theiostream)  
wrote:
>
> True. I'll see if I can come up quickly with a CI setup for gcc 3.4.5,
> as Riccardo suggested -- we really don't need to go any older than
> that, right?
>
> I'll try this out with base for now, and it'll look something like:
> 1) GNU/Linux + gcc 3.4.5
> 2) GNU/Linux + gcc 6.x
> 3) GNU/Linux + clang 4.0
>
> With Docker it should be easy to set up a cross-compilation setup for
> MinGW as well later.
>
> I appreciate the setup ease of Travis plus its seamless integration
> with GitHub (don't know about GitLab), so in the long term I'd favor
> keeping whatever Travis supports in Travis and use a Jenkins setup for
> the hosts Travis doesn't support (FreeBSD and Solaris are the two I
> can think of, but there may be more).

I would very much doubt that there are any platforms with a gcc older than 4.2 
that we should spend our (very) limited resources caring about.  With regard to 
clang, it’s usually easy to install a newer one (even though FreeBSD 9 ships 
with 3.4 in the base system, it has 4.0 in packages).

David


___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev
___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread David Chisnall
On 26 Jun 2017, at 15:42, Daniel Ferreira (theiostream)  
wrote:
> 
> True. I'll see if I can come up quickly with a CI setup for gcc 3.4.5,
> as Riccardo suggested -- we really don't need to go any older than
> that, right?
> 
> I'll try this out with base for now, and it'll look something like:
> 1) GNU/Linux + gcc 3.4.5
> 2) GNU/Linux + gcc 6.x
> 3) GNU/Linux + clang 4.0
> 
> With Docker it should be easy to set up a cross-compilation setup for
> MinGW as well later.
> 
> I appreciate the setup ease of Travis plus its seamless integration
> with GitHub (don't know about GitLab), so in the long term I'd favor
> keeping whatever Travis supports in Travis and use a Jenkins setup for
> the hosts Travis doesn't support (FreeBSD and Solaris are the two I
> can think of, but there may be more).

I would very much doubt that there are any platforms with a gcc older than 4.2 
that we should spend our (very) limited resources caring about.  With regard to 
clang, it’s usually easy to install a newer one (even though FreeBSD 9 ships 
with 3.4 in the base system, it has 4.0 in packages).

David


___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread Daniel Ferreira (theiostream)
> [...] I'd say testing /something/ on Travis is better than testing nothing on 
> Travis, while Jenkins would be the long term solution.

True. I'll see if I can come up quickly with a CI setup for gcc 3.4.5,
as Riccardo suggested -- we really don't need to go any older than
that, right?

I'll try this out with base for now, and it'll look something like:
1) GNU/Linux + gcc 3.4.5
2) GNU/Linux + gcc 6.x
3) GNU/Linux + clang 4.0

With Docker it should be easy to set up a cross-compilation setup for
MinGW as well later.

I appreciate the setup ease of Travis plus its seamless integration
with GitHub (don't know about GitLab), so in the long term I'd favor
keeping whatever Travis supports in Travis and use a Jenkins setup for
the hosts Travis doesn't support (FreeBSD and Solaris are the two I
can think of, but there may be more).

-- Daniel.

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread Ivan Vučica
We could run qemu with FreeBSD inside Docker. Or we can run our own
Jenkins-based CI infra interacting with Github (and later Gitlab etc
depending on the level of CI support these systems may or may not have).

This all depends on how much time one is willing to spend on setting this
infrastructure up. I'd say testing /something/ on Travis is better than
testing nothing on Travis, while Jenkins would be the long term solution.

On Mon, Jun 26, 2017, 15:11 Daniel Ferreira (theiostream) 
wrote:

> On Mon, Jun 26, 2017 at 5:26 AM, David Chisnall  wrote:
> > Note: Travis has an open issue tracking their lack of FreeBSD support.
> The more people who +1 it, the more likely it is to happen.
>
> All issues I can find about that have been locked to collaborator-only
> comments, so I can't +1. They've also made it very clear that they
> don't intend to add support for it in the near future.
>
> Someone suggested using a FreeBSD Docker container on top of the
> Ubuntu host kernel to make the tests, but that just does not work.
>
___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread Daniel Ferreira (theiostream)
On Mon, Jun 26, 2017 at 5:26 AM, David Chisnall  wrote:
> Note: Travis has an open issue tracking their lack of FreeBSD support.  The 
> more people who +1 it, the more likely it is to happen.

All issues I can find about that have been locked to collaborator-only
comments, so I can't +1. They've also made it very clear that they
don't intend to add support for it in the near future.

Someone suggested using a FreeBSD Docker container on top of the
Ubuntu host kernel to make the tests, but that just does not work.

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread Riccardo Mottola

Hi,

Daniel Ferreira (theiostream) wrote:

1) GNU/Linux with oldest gcc we intend to support
2) FreeBSD with oldest gcc we intend to support


possibly we can just use Linux to test old gcc? Could be easier.
GCC 4 is recommended, but currently all core stuff compiles (and runs 
fine) with gcc 3.4.5 and I'd appreciate if we can keep it that way.
It is a compiler still common on some more esoteric platforms, like 
MinGW, older Solaris and for certain stranger architectures of 
mainstream BSDs.
Testing the old compiler on a "known" OS like Linux would make my life 
easier when trying to get things working on odder things.


Thanks,
Riccardo

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread Marcus Müller

> […]
> I just wonder what sort of setup should be used. For base/gui/back I
> can envision, ideally:
> 
> 1) GNU/Linux with oldest gcc we intend to support
> 2) FreeBSD with oldest gcc we intend to support

For FreeBSD, I think you could leave out "oldest gcc". FreeBSD 9.3, which was 
the last FreeBSD release to have gcc 4.2 in its base system, is EoL'ed, 
already. Regarding FreeBSD, it's probably sensible to check whether GNUstep 
compiles with clang 3.4, as FreeBSD 10.3, which is still supported, has clang 
3.4 in its base system.

A while ago I setup a GNUstep [Jenkins] 
 job (matrix style) 
which I used myself in order to check that my commits didn't break anything.


Cheers,

  Marcus

--
Marcus Müller  .  .  .  http://www.mulle-kybernetik.com/znek/ 






smime.p7s
Description: S/MIME cryptographic signature
___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-26 Thread David Chisnall

> On 25 Jun 2017, at 23:31, Daniel Ferreira (theiostream)  
> wrote:
> 
> On Sun, Jun 25, 2017 at 7:18 PM, Ivan Vučica  wrote:
>> I wouldn't mind a pull request setting up an off-the-shelf CI system,
>> in addition to Gregory's existing setup. (I don't know where the
>> 'stuff is broken' emails are going these days.)
> 
> I just wonder what sort of setup should be used. For base/gui/back I
> can envision, ideally:
> 
> 1) GNU/Linux with oldest gcc we intend to support
> 2) FreeBSD with oldest gcc we intend to support
> 
> and for base/gui/back plus all the others:
> 
> 3) GNU/Linux with modern gcc
> 4) GNU/Linux with modern clang
> 5) FreeBSD with modern gcc
> 6) FreeBSD with modern clang
> 
> I'd appreciate help in determining what that "oldest gcc" would be.
> Also, we have the problem that Travis CI does not build on top of any
> BSD aside from OSX itself, or on some targets like SunOS which I
> believe we still support. I don't know if we officially support
> Windows despite our win32 code in the codebase, and how tricky *that*
> would be to set up in any CI server.

Note: Travis has an open issue tracking their lack of FreeBSD support.  The 
more people who +1 it, the more likely it is to happen.

David


___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-25 Thread Daniel Ferreira (theiostream)
On Sun, Jun 25, 2017 at 7:18 PM, Ivan Vučica  wrote:
> I wouldn't mind a pull request setting up an off-the-shelf CI system,
> in addition to Gregory's existing setup. (I don't know where the
> 'stuff is broken' emails are going these days.)

I just wonder what sort of setup should be used. For base/gui/back I
can envision, ideally:

1) GNU/Linux with oldest gcc we intend to support
2) FreeBSD with oldest gcc we intend to support

and for base/gui/back plus all the others:

3) GNU/Linux with modern gcc
4) GNU/Linux with modern clang
5) FreeBSD with modern gcc
6) FreeBSD with modern clang

I'd appreciate help in determining what that "oldest gcc" would be.
Also, we have the problem that Travis CI does not build on top of any
BSD aside from OSX itself, or on some targets like SunOS which I
believe we still support. I don't know if we officially support
Windows despite our win32 code in the codebase, and how tricky *that*
would be to set up in any CI server.

I'd appreciate insight on what sorts of tests the current CI runs (and
where to find it.)

-- Daniel.

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-25 Thread Ivan Vučica
On Sun, Jun 25, 2017 at 9:01 PM, Daniel Ferreira (theiostream)
 wrote:
> Hi everyone,
>
> Now that our repos have been migrated to GitHub, it should be trivial
> to setup an integrated CI server for GNUstep projects.

I wouldn't mind a pull request setting up an off-the-shelf CI system,
in addition to Gregory's existing setup. (I don't know where the
'stuff is broken' emails are going these days.)

___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: CI server on GitHub repos

2017-06-25 Thread David Chisnall
On 25 Jun 2017, at 21:01, Daniel Ferreira (theiostream)  
wrote:
> 
> Hi everyone,
> 
> Now that our repos have been migrated to GitHub, it should be trivial
> to setup an integrated CI server for GNUstep projects.

I believe Gregory was already running some CI stuff for GNUstep.  libobjc2 uses 
Travis for some testing.

David


___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev