Skip Menu |

CC: yoanlin93 [...] gmail.com
From: cornelius.howl [...] gmail.com
Date: Tue, 3 Mar 2015 10:36:38 +0800 (CST)
To: perlbug [...] perl.org
Subject: [PATCH] f8210d2 Add a simple .travis.yml
Download (untitled) / with headers
text/plain 5.8k
This patch adds a simple .travis.yml config file Summary: People want to contribute to perl don't have a machine for contiuous integration, This patch adds a simple .travis.yml, this way people can fork perl on GitHub and see the building status directly on travis-ci service without waiting the time-consuming test process on local machine. This is a bug report for perl from yoanlin93@gmail.com, generated with the help of perlbug 1.40 running under perl 5.21.10. From f8210d2226c534ffd5b7701c27b6c6cd968df741 Mon Sep 17 00:00:00 2001 From: c9s <yoanlin93@gmail.com> Date: Tue, 3 Mar 2015 10:11:08 +0800 Subject: [PATCH] Add a simple .travis.yml MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------2.1.2" This is a multi-part message in MIME format. --------------2.1.2 Content-Type: text/plain; charset=UTF-8; format=fixed Content-Transfer-Encoding: 8bit --- .travis.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .travis.yml --------------2.1.2 Content-Type: text/x-patch; name="0001-Add-a-simple-.travis.yml.patch" Content-Transfer-Encoding: 8bit Content-Disposition: attachment; filename="0001-Add-a-simple-.travis.yml.patch" diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..aa8a493 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,28 @@ +language: c + +compiler: + - gcc + +matrix: + include: + - compiler: gcc + env: CONFIGURE_OPTION='-Duse64bitall' COVERALLS=yes VALGRIND=no DEBUG=yes + - compiler: gcc + env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads' COVERALLS=yes VALGRIND=no DEBUG=yes + - compiler: clang + +install: + - sudo apt-get update -qq + - sudo apt-get install -qq automake pkg-config build-essential libtool automake autoconf m4 gnulib + - sudo apt-get build-dep perl perl-base + +before_script: + - ./Configure -des -Dusedevel $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead +script: + - make +after_script: +cache: + apt: true --------------2.1.2-- --- Flags: category=core severity=medium --- Site configuration information for perl 5.21.10: Configured by c9s at Fri Feb 27 12:59:15 CST 2015. Summary of my perl5 (revision 5 version 21 subversion 10) configuration: Commit id: e2bb786192adfa315ea974b5f630d7040aa6f6ac Platform: osname=darwin, osvers=14.1.0, archname=darwin-2level uname='darwin c9smba.local 14.1.0 darwin kernel version 14.1.0: mon dec 22 23:10:38 pst 2014; root:xnu-2782.10.72~2release_x86_64 x86_64 ' config_args='-des -Dusedevel -Dprefix=/Users/c9s/perl-blead' hint=recommended, useposix=true, d_sigaction=define useithreads=undef, usemultiplicity=undef use64bitint=define, use64bitall=define, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -I/opt/local/include', optimize='-O3', cppflags='-fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -I/opt/local/include' ccversion='', gccversion='4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.54)', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678, doublekind=3 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16, longdblkind=3 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags =' -fstack-protector -L/usr/local/lib -L/opt/local/lib' libpth=/usr/local/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib /usr/lib /opt/local/lib libs=-lpthread -lgdbm -ldbm -ldl -lm -lutil -lc perllibs=-lpthread -ldl -lm -lutil -lc libc=, so=dylib, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', lddlflags=' -bundle -undefined dynamic_lookup -L/usr/local/lib -L/opt/local/lib -fstack-protector' --- @INC for perl 5.21.10: lib /Users/c9s/perl-blead/lib/site_perl/5.21.10/darwin-2level /Users/c9s/perl-blead/lib/site_perl/5.21.10 /Users/c9s/perl-blead/lib/5.21.10/darwin-2level /Users/c9s/perl-blead/lib/5.21.10 . --- Environment for perl 5.21.10: DYLD_LIBRARY_PATH (unset) HOME=/Users/c9s LANG=en_US.UTF-8 LANGUAGE (unset) LC_ALL=en_US.UTF-8 LC_CTYPE=UTF-8 LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/Users/c9s/src/google/depot_tools:/Users/c9s/src/google/depot_tools/gclient:/Users/c9s/perl5/perlbrew/bin:/Users/c9s/perl5/perlbrew/perls/perl-5.18.2/bin:/Users/c9s/.phpbrew/php/php-5.5.17/bin:/Users/c9s/.rvm/bin:/usr/local/texlive/2013/bin/x86_64-darwin:/Users/c9s/Library/Haskell/bin:/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin:/Users/c9s/.phpbrew/bin:/opt/local/lib/postgresql92/bin:/opt/local/bin:/opt/local/sbin:/Users/c9s/bin:/Users/c9s/Library/Haskell/bin:/opt/local/bin:/opt/local/apache2/bin:/Users/c9s/.rvm/bin:/Users/c9s/.rvm/gems/ruby-2.1.1/bin:/Users/c9s/.rvm/gems/ruby-2.1.1@global/bin:/Users/c9s/.rvm/rubies/ruby-2.1.1/bin:/Users/c9s/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/usr/local/go/bin:/usr/local/MacGPG2/bin:/usr/texbin:/Users/c9s/.rvm/bin PERLBREW_BASHRC_VERSION=0.73 PERLBREW_HOME=/Users/c9s/.perlbrew PERLBREW_MANPATH=/Users/c9s/perl5/perlbrew/perls/perl-5.18.2/man PERLBREW_PATH=/Users/c9s/perl5/perlbrew/bin:/Users/c9s/perl5/perlbrew/perls/perl-5.18.2/bin PERLBREW_PERL=perl-5.18.2 PERLBREW_ROOT=/Users/c9s/perl5/perlbrew PERLBREW_VERSION=0.73 PERLDOC=-otext PERL_BADLANG (unset) PERL_CPANM_OPT=-n --mirror http://cpan.nctu.edu.tw/ PERL_MM_USE_DEFAULT=1 SHELL=/bin/zsh
RT-Send-CC: perl5-porters [...] perl.org
On Wed Mar 04 00:21:41 2015, yoanlin93@gmail.com wrote: Show quoted text
> > This patch adds a simple .travis.yml config file > > Summary: > > People want to contribute to perl don't have a machine for contiuous > integration, This patch adds a simple .travis.yml, this way people can > fork > perl on GitHub and see the building status directly on travis-ci > service > without waiting the time-consuming test process on local machine.
git complained that the patch was corrupted when I extracted it from your message. I created the .travis.yml file and ran some tests and made some adjustments to produce the attached. The changes: - perl's build process doesn't pay any attention to the CC environment variable, so the build was always done with cc (probably gcc), I added -Dcc=... to each build - run the test suite and install and test that with perlivp - trim the installed dependencies, perl doesn't use the GNU auto* tools. Unfortunatly io/eintr.t fails on the travis VMs. The real question is whether we want this in the tree... Tony
Subject: 0001-perl-123981-Travis-CI-support.patch
From f8e9d3554ecf0d8542651c3e91a6102adf783990 Mon Sep 17 00:00:00 2001 From: Tony Cook <tony@develop-help.com> Date: Thu, 5 Mar 2015 14:16:10 +1100 Subject: [perl #123981] Travis-CI support Build and test perl under four different configurations. This isn't compatible with "container based infrastructure" I didn't use test_harness and TEST_JOBS since the four jobs specified are already run in parallel on the virtual host. io/eintr.t fails on the travis VMs. --- .travis.yml | 26 ++++++++++++++++++++++++++ MANIFEST | 1 + 2 files changed, 27 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..f36617b --- /dev/null +++ b/.travis.yml @@ -0,0 +1,26 @@ +language: c + +compiler: + - gcc + +matrix: + include: + - compiler: gcc + env: CONFIGURE_OPTION='-Duse64bitall' + - compiler: gcc + env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads' + - compiler: clang + +install: + - sudo apt-get update -qq + - sudo apt-get install -qq build-essential libtool + - sudo apt-get build-dep perl perl-base + +before_script: + - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING +script: + - make test && make install && $HOME/perl-blead/bin/perlivp +after_script: +cache: + apt: true + diff --git a/MANIFEST b/MANIFEST index aad1be4..5e0d672 100644 --- a/MANIFEST +++ b/MANIFEST @@ -5481,6 +5481,7 @@ t/porting/regen.t Check that regen.pl doesn't need running t/porting/ss_dup.t Check that sv.c:ss_dup handle everything t/porting/test_bootstrap.t Test that the instructions for test bootstrapping aren't accidentally overlooked. t/porting/utils.t Check that utility scripts still compile +.travis.yml continuous integration on github (where enabled) t/README Instructions for regression tests t/re/charset.t See if regex modifiers like /d, /u work properly t/re/fold_grind.t See if case folding works properly -- 1.7.10.4
RT-Send-CC: perl5-porters [...] perl.org
See https://travis-ci.org/tonycoz/perl for some sample builds. Tony
From: Yo-An Lin <yoanlin93 [...] gmail.com>
CC: perl5-porters [...] perl.org
Date: Thu, 5 Mar 2015 11:27:23 +0800
To: perlbug-followup [...] perl.org
Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
Download (untitled) / with headers
text/plain 3.9k
Hi Tony,

Thanks!   since we have the perl5 repository mirror on GitHub, there is a huge community using GitHub as their daily life platform, if we can help people who want to contribute to perl5 have their travis-ci support,  then they can just fork from GitHub and use their repository to continuously test the changes and send back to upstream without the pain of running tests on their machine.  

About the io/eintr.t failure, I guess maybe we can just skip this test by export PERLIO=stdio ? or add another environment variable to skip this test?

Cheers,
Yo-An

On Thu, Mar 5, 2015 at 11:16 AM, Tony Cook via RT <perlbug-followup@perl.org> wrote:
Show quoted text
On Wed Mar 04 00:21:41 2015, yoanlin93@gmail.com wrote:
>
> This patch adds a simple .travis.yml config file
>
> Summary:
>
> People want to contribute to perl don't have a machine for contiuous
> integration, This patch adds a simple .travis.yml, this way people can
> fork
> perl on GitHub and see the building status directly on travis-ci
> service
> without waiting the time-consuming test process on local machine.

git complained that the patch was corrupted when I extracted it from your message.

I created the .travis.yml file and ran some tests and made some adjustments to produce the attached.

The changes:

- perl's build process doesn't pay any attention to the CC environment variable,
  so the build was always done with cc (probably gcc), I added -Dcc=... to each build

- run the test suite and install and test that with perlivp

- trim the installed dependencies, perl doesn't use the GNU auto* tools.

Unfortunatly io/eintr.t fails on the travis VMs.

The real question is whether we want this in the tree...

Tony

---
via perlbug:  queue: perl5 status: new
https://rt.perl.org/Ticket/Display.html?id=123981

From f8e9d3554ecf0d8542651c3e91a6102adf783990 Mon Sep 17 00:00:00 2001
From: Tony Cook <tony@develop-help.com>
Date: Thu, 5 Mar 2015 14:16:10 +1100
Subject: [perl #123981] Travis-CI support

Build and test perl under four different configurations.

This isn't compatible with "container based infrastructure"

I didn't use test_harness and TEST_JOBS since the four jobs specified
are already run in parallel on the virtual host.

io/eintr.t fails on the travis VMs.
---
 .travis.yml |   26 ++++++++++++++++++++++++++
 MANIFEST    |    1 +
 2 files changed, 27 insertions(+)
 create mode 100644 .travis.yml

diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..f36617b
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,26 @@
+language: c
+
+compiler:
+  - gcc
+
+matrix:
+  include:
+    - compiler: gcc
+      env: CONFIGURE_OPTION='-Duse64bitall'
+    - compiler: gcc
+      env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads'
+    - compiler: clang
+
+install:
+  - sudo apt-get update -qq
+  - sudo apt-get install -qq build-essential libtool
+  - sudo apt-get build-dep perl perl-base
+
+before_script:
+  - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING
+script:
+  - make test && make install && $HOME/perl-blead/bin/perlivp
+after_script:
+cache:
+  apt: true
+
diff --git a/MANIFEST b/MANIFEST
index aad1be4..5e0d672 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -5481,6 +5481,7 @@ t/porting/regen.t         Check that regen.pl doesn't need running
 t/porting/ss_dup.t             Check that sv.c:ss_dup handle everything
 t/porting/test_bootstrap.t     Test that the instructions for test bootstrapping aren't accidentally overlooked.
 t/porting/utils.t              Check that utility scripts still compile
+.travis.yml            continuous integration on github (where enabled)
 t/README                       Instructions for regression tests
 t/re/charset.t                 See if regex modifiers like /d, /u work properly
 t/re/fold_grind.t              See if case folding works properly
--
1.7.10.4



To: perlbug-followup [...] perl.org
Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
From: Lin Yo-an <yoanlin93 [...] gmail.com>
CC: Yo-An Lin <yoanlin93 [...] gmail.com>, perl5-porters [...] perl.org
Date: Thu, 5 Mar 2015 14:14:56 +0800
Download (untitled) / with headers
text/plain 4.5k
Hi Tony, 

I added some improvements based on your changes:

I am now waiting the tests to pass here:

Show quoted text
On Mar 5, 2015, at 11:27, Yo-An Lin <yoanlin93@gmail.com> wrote:

Hi Tony,

Thanks!   since we have the perl5 repository mirror on GitHub, there is a huge community using GitHub as their daily life platform, if we can help people who want to contribute to perl5 have their travis-ci support,  then they can just fork from GitHub and use their repository to continuously test the changes and send back to upstream without the pain of running tests on their machine.  

About the io/eintr.t failure, I guess maybe we can just skip this test by export PERLIO=stdio ? or add another environment variable to skip this test?

Cheers,
Yo-An

On Thu, Mar 5, 2015 at 11:16 AM, Tony Cook via RT <perlbug-followup@perl.org> wrote:
On Wed Mar 04 00:21:41 2015, yoanlin93@gmail.com wrote:
>
> This patch adds a simple .travis.yml config file
>
> Summary:
>
> People want to contribute to perl don't have a machine for contiuous
> integration, This patch adds a simple .travis.yml, this way people can
> fork
> perl on GitHub and see the building status directly on travis-ci
> service
> without waiting the time-consuming test process on local machine.

git complained that the patch was corrupted when I extracted it from your message.

I created the .travis.yml file and ran some tests and made some adjustments to produce the attached.

The changes:

- perl's build process doesn't pay any attention to the CC environment variable,
  so the build was always done with cc (probably gcc), I added -Dcc=... to each build

- run the test suite and install and test that with perlivp

- trim the installed dependencies, perl doesn't use the GNU auto* tools.

Unfortunatly io/eintr.t fails on the travis VMs.

The real question is whether we want this in the tree...

Tony

---
via perlbug:  queue: perl5 status: new
https://rt.perl.org/Ticket/Display.html?id=123981

From f8e9d3554ecf0d8542651c3e91a6102adf783990 Mon Sep 17 00:00:00 2001
From: Tony Cook <tony@develop-help.com>
Date: Thu, 5 Mar 2015 14:16:10 +1100
Subject: [perl #123981] Travis-CI support

Build and test perl under four different configurations.

This isn't compatible with "container based infrastructure"

I didn't use test_harness and TEST_JOBS since the four jobs specified
are already run in parallel on the virtual host.

io/eintr.t fails on the travis VMs.
---
 .travis.yml |   26 ++++++++++++++++++++++++++
 MANIFEST    |    1 +
 2 files changed, 27 insertions(+)
 create mode 100644 .travis.yml

diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..f36617b
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,26 @@
+language: c
+
+compiler:
+  - gcc
+
+matrix:
+  include:
+    - compiler: gcc
+      env: CONFIGURE_OPTION='-Duse64bitall'
+    - compiler: gcc
+      env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads'
+    - compiler: clang
+
+install:
+  - sudo apt-get update -qq
+  - sudo apt-get install -qq build-essential libtool
+  - sudo apt-get build-dep perl perl-base
+
+before_script:
+  - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING
+script:
+  - make test && make install && $HOME/perl-blead/bin/perlivp
+after_script:
+cache:
+  apt: true
+
diff --git a/MANIFEST b/MANIFEST
index aad1be4..5e0d672 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -5481,6 +5481,7 @@ t/porting/regen.t         Check that regen.pl doesn't need running
 t/porting/ss_dup.t             Check that sv.c:ss_dup handle everything
 t/porting/test_bootstrap.t     Test that the instructions for test bootstrapping aren't accidentally overlooked.
 t/porting/utils.t              Check that utility scripts still compile
+.travis.yml            continuous integration on github (where enabled)
 t/README                       Instructions for regression tests
 t/re/charset.t                 See if regex modifiers like /d, /u work properly
 t/re/fold_grind.t              See if case folding works properly
--
1.7.10.4




Date: Thu, 5 Mar 2015 14:32:07 +0800
From: Lin Yo-an <yoanlin93 [...] gmail.com>
CC: Yo-An Lin <yoanlin93 [...] gmail.com>, perl5-porters [...] perl.org
Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
To: perlbug-followup [...] perl.org
Download (untitled) / with headers
text/plain 4.9k
yada! the tests pass now! https://travis-ci.org/c9s/perl5/jobs/53149445

Show quoted text
On Mar 5, 2015, at 14:14, Lin Yo-an <yoanlin93@gmail.com> wrote:

Hi Tony, 

I added some improvements based on your changes:

I am now waiting the tests to pass here:

On Mar 5, 2015, at 11:27, Yo-An Lin <yoanlin93@gmail.com> wrote:

Hi Tony,

Thanks!   since we have the perl5 repository mirror on GitHub, there is a huge community using GitHub as their daily life platform, if we can help people who want to contribute to perl5 have their travis-ci support,  then they can just fork from GitHub and use their repository to continuously test the changes and send back to upstream without the pain of running tests on their machine.  

About the io/eintr.t failure, I guess maybe we can just skip this test by export PERLIO=stdio ? or add another environment variable to skip this test?

Cheers,
Yo-An

On Thu, Mar 5, 2015 at 11:16 AM, Tony Cook via RT <perlbug-followup@perl.org> wrote:
On Wed Mar 04 00:21:41 2015, yoanlin93@gmail.com wrote:
>
> This patch adds a simple .travis.yml config file
>
> Summary:
>
> People want to contribute to perl don't have a machine for contiuous
> integration, This patch adds a simple .travis.yml, this way people can
> fork
> perl on GitHub and see the building status directly on travis-ci
> service
> without waiting the time-consuming test process on local machine.

git complained that the patch was corrupted when I extracted it from your message.

I created the .travis.yml file and ran some tests and made some adjustments to produce the attached.

The changes:

- perl's build process doesn't pay any attention to the CC environment variable,
  so the build was always done with cc (probably gcc), I added -Dcc=... to each build

- run the test suite and install and test that with perlivp

- trim the installed dependencies, perl doesn't use the GNU auto* tools.

Unfortunatly io/eintr.t fails on the travis VMs.

The real question is whether we want this in the tree...

Tony

---
via perlbug:  queue: perl5 status: new
https://rt.perl.org/Ticket/Display.html?id=123981

From f8e9d3554ecf0d8542651c3e91a6102adf783990 Mon Sep 17 00:00:00 2001
From: Tony Cook <tony@develop-help.com>
Date: Thu, 5 Mar 2015 14:16:10 +1100
Subject: [perl #123981] Travis-CI support

Build and test perl under four different configurations.

This isn't compatible with "container based infrastructure"

I didn't use test_harness and TEST_JOBS since the four jobs specified
are already run in parallel on the virtual host.

io/eintr.t fails on the travis VMs.
---
 .travis.yml |   26 ++++++++++++++++++++++++++
 MANIFEST    |    1 +
 2 files changed, 27 insertions(+)
 create mode 100644 .travis.yml

diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..f36617b
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,26 @@
+language: c
+
+compiler:
+  - gcc
+
+matrix:
+  include:
+    - compiler: gcc
+      env: CONFIGURE_OPTION='-Duse64bitall'
+    - compiler: gcc
+      env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads'
+    - compiler: clang
+
+install:
+  - sudo apt-get update -qq
+  - sudo apt-get install -qq build-essential libtool
+  - sudo apt-get build-dep perl perl-base
+
+before_script:
+  - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING
+script:
+  - make test && make install && $HOME/perl-blead/bin/perlivp
+after_script:
+cache:
+  apt: true
+
diff --git a/MANIFEST b/MANIFEST
index aad1be4..5e0d672 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -5481,6 +5481,7 @@ t/porting/regen.t         Check that regen.pl doesn't need running
 t/porting/ss_dup.t             Check that sv.c:ss_dup handle everything
 t/porting/test_bootstrap.t     Test that the instructions for test bootstrapping aren't accidentally overlooked.
 t/porting/utils.t              Check that utility scripts still compile
+.travis.yml            continuous integration on github (where enabled)
 t/README                       Instructions for regression tests
 t/re/charset.t                 See if regex modifiers like /d, /u work properly
 t/re/fold_grind.t              See if case folding works properly
--
1.7.10.4





Date: Thu, 5 Mar 2015 14:33:52 +0800 (CST)
From: yoanlin93 [...] gmail.com
CC: yoanlin93 [...] gmail.com
Subject: [PATCH] bd6c821 More improvement for testing on Travis-CI
To: perlbug [...] perl.org
Download (untitled) / with headers
text/plain 9.9k
This is a bug report for perl from yoanlin93@gmail.com, generated with the help of perlbug 1.40 running under perl 5.21.10. From bd6c821336721c806bdac349cfda810734886c19 Mon Sep 17 00:00:00 2001 From: c9s <yoanlin93@gmail.com> Date: Tue, 3 Mar 2015 10:11:08 +0800 Subject: [PATCH] More improvement for testing on Travis-CI MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------2.1.2" This is a multi-part message in MIME format. --------------2.1.2 Content-Type: text/plain; charset=UTF-8; format=fixed Content-Transfer-Encoding: 8bit Summary: This is for skipping some unnecessary / container incompatible tests for perl5 forks on GitHub : - Add PERL_SKIP_AUTHORS_TEST, PERL_SKIP_MANIFEST_TEST environment variable - Skip eintr.t test when TRAVIS environment variable is defined. the test isn't compatible with Travis-CI machine (container based infrastructure) - Skip authors.t, manifest.t and pending-author.t when testing on Travis-CI - Update .travis.yml changes from @tonycoz - Clean up env vars - Document travis ci environment variable - Turn off optimization to get faster build --- .travis.yml | 14 +++++++++----- t/io/eintr.t | 4 ++++ t/porting/authors.t | 2 ++ t/porting/manifest.t | 1 + t/porting/pending-author.t | 2 ++ 5 files changed, 18 insertions(+), 5 deletions(-) --------------2.1.2 Content-Type: text/x-patch; name="0001-More-improvement-for-testing-on-Travis-CI.patch" Content-Transfer-Encoding: 8bit Content-Disposition: attachment; filename="0001-More-improvement-for-testing-on-Travis-CI.patch" diff --git a/.travis.yml b/.travis.yml index f36617b..38dd30b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,6 +3,9 @@ language: c compiler: - gcc +# Environment variable definitions can be found here: +# http://docs.travis-ci.com/user/environment-variables/ + matrix: include: - compiler: gcc @@ -10,17 +13,18 @@ matrix: - compiler: gcc env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads' - compiler: clang - + env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads' install: - sudo apt-get update -qq - sudo apt-get install -qq build-essential libtool - sudo apt-get build-dep perl perl-base - before_script: - - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING + - ./Configure -des -Dusedevel -Uversiononly -Uoptimize -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING + - make -j4 script: - - make test && make install && $HOME/perl-blead/bin/perlivp + - PERL_SKIP_AUTHORS_TEST=1 PERL_SKIP_MANIFEST_TEST=1 TEST_JOBS=4 make test + - make install + - $HOME/perl-blead/bin/perlivp after_script: cache: apt: true - diff --git a/t/io/eintr.t b/t/io/eintr.t index ca15232..b2d800c 100644 --- a/t/io/eintr.t +++ b/t/io/eintr.t @@ -11,8 +11,12 @@ BEGIN { @INC = '../lib'; require './test.pl'; skip_all_without_dynamic_extension('Fcntl'); + + # The environment variable is defined in http://docs.travis-ci.com/user/ci-environment/ + skip_all("eintr tests can't be run inside travis-CI VMs") if $ENV{TRAVIS}; } + use warnings; use strict; use Config; diff --git a/t/porting/authors.t b/t/porting/authors.t index bc69e3a..58ec201 100644 --- a/t/porting/authors.t +++ b/t/porting/authors.t @@ -10,6 +10,8 @@ use strict; require 't/test.pl'; find_git_or_skip('all'); +skip_all("Skip authors test") if $ENV{PERL_SKIP_AUTHORS_TEST}; + # This is the subset of "pretty=fuller" that checkAUTHORS.pl actually needs: my $quote = $^O =~ /^mswin/i ? q(") : q('); system("git log --pretty=format:${quote}Author: %an <%ae>%n${quote} | $^X Porting/checkAUTHORS.pl --tap -"); diff --git a/t/porting/manifest.t b/t/porting/manifest.t index 01cbd1c..6a9f83e 100644 --- a/t/porting/manifest.t +++ b/t/porting/manifest.t @@ -35,6 +35,7 @@ require 't/test.pl'; skip_all("Cross-compiling, the entire source might not be available") if $Config{usecrosscompile}; +skip_all("Skip manifest tests") if $ENV{PERL_SKIP_MANIFEST_TEST}; plan('no_plan'); diff --git a/t/porting/pending-author.t b/t/porting/pending-author.t index 4dceaf6..f2135ec 100644 --- a/t/porting/pending-author.t +++ b/t/porting/pending-author.t @@ -30,6 +30,8 @@ use File::Spec; require 't/test.pl'; find_git_or_skip('all'); +skip_all("Skip author tests") if $ENV{PERL_SKIP_AUTHORS_TEST}; + my $devnull = File::Spec->devnull; my $changes; foreach (`git status --porcelain 2>$devnull`) { --------------2.1.2-- --- Flags: category=core severity=medium --- Site configuration information for perl 5.21.10: Configured by c9s at Thu Mar 5 12:30:20 CST 2015. Summary of my perl5 (revision 5 version 21 subversion 10) configuration: Derived from: 38a30b326082ab6f181dbea74f043652cb26ab3b Ancestor: a4722461b306457400dff9a3bd54fa35eed5c706 Platform: osname=darwin, osvers=14.1.0, archname=darwin-2level uname='darwin c9smba.local 14.1.0 darwin kernel version 14.1.0: mon dec 22 23:10:38 pst 2014; root:xnu-2782.10.72~2release_x86_64 x86_64 ' config_args='-des -Duse64bitall -Dusedevel -Uoptimize -Dprefix=/Users/c9s/perl-blead' hint=previous, useposix=true, d_sigaction=define useithreads=undef, usemultiplicity=undef use64bitint=define, use64bitall=define, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -I/opt/local/include', optimize=' ', cppflags='-fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -I/opt/local/include -fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -I/opt/local/include -fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -I/opt/local/include -fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -I/opt/local/include -fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -I/opt/local/include' ccversion='', gccversion='4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.56)', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678, doublekind=3 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16, longdblkind=3 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags =' -fstack-protector -L/usr/local/lib -L/opt/local/lib' libpth=/usr/local/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib /usr/lib /opt/local/lib /usr/local/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib /usr/lib /usr/local/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib /usr/lib /usr/local/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib /usr/lib /usr/local/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/us r/bin/../lib/clang/6.0/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib /usr/lib libs=-lpthread -lgdbm -ldbm -ldl -lm -lutil -lc perllibs=-lpthread -ldl -lm -lutil -lc libc=, so=dylib, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', lddlflags=' -bundle -undefined dynamic_lookup -L/usr/local/lib -L/opt/local/lib -fstack-protector' Locally applied patches: uncommitted-changes d5db9e0b3e3170be5413d11cd722abe7332beea9 f1775e8bde58536b79ddc89f1d5e9c7b4951bae7 4961719cbd8503061d9d963e40224a7f4a2ff4bd 0ded6edd9a09ebbe9b4e4bd9a58d58bb207df2f1 fac3edd31efb964223893a33acf180e66a5adf1c c5e2628dfabdb98242f20b842e6b59b9e8ad5fdc 38a30b326082ab6f181dbea74f043652cb26ab3b --- @INC for perl 5.21.10: lib /Users/c9s/perl-blead/lib/site_perl/5.21.10/darwin-2level /Users/c9s/perl-blead/lib/site_perl/5.21.10 /Users/c9s/perl-blead/lib/5.21.10/darwin-2level /Users/c9s/perl-blead/lib/5.21.10 . --- Environment for perl 5.21.10: DYLD_LIBRARY_PATH (unset) HOME=/Users/c9s LANG=en_US.UTF-8 LANGUAGE (unset) LC_ALL=en_US.UTF-8 LC_CTYPE=UTF-8 LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/Users/c9s/perl5/perlbrew/bin:/Users/c9s/perl5/perlbrew/perls/perl-5.18.2/bin:/Users/c9s/.phpbrew/php/php-5.5.17/bin:/Users/c9s/.rvm/bin:/Users/c9s/src/google/depot_tools:/usr/local/texlive/2013/bin/x86_64-darwin:/Users/c9s/Library/Haskell/bin:/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin:/Users/c9s/.phpbrew/bin:/opt/local/lib/postgresql92/bin:/opt/local/bin:/opt/local/sbin:/Users/c9s/bin:/Users/c9s/Library/Haskell/bin:/opt/local/bin:/opt/local/apache2/bin:/Users/c9s/.rvm/bin:/Users/c9s/.rvm/gems/ruby-2.1.1/bin:/Users/c9s/.rvm/gems/ruby-2.1.1@global/bin:/Users/c9s/.rvm/rubies/ruby-2.1.1/bin:/Users/c9s/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/usr/local/go/bin:/usr/local/MacGPG2/bin:/usr/texbin:/Users/c9s/.rvm/bin PERLBREW_BASHRC_VERSION=0.73 PERLBREW_HOME=/Users/c9s/.perlbrew PERLBREW_MANPATH=/Users/c9s/perl5/perlbrew/perls/perl-5.18.2/man PERLBREW_PATH=/Users/c9s/perl5/perlbrew/bin:/Users/c9s/perl5/perlbrew/perls/perl-5.18.2/bin PERLBREW_PERL=perl-5.18.2 PERLBREW_ROOT=/Users/c9s/perl5/perlbrew PERLBREW_VERSION=0.73 PERLDOC=-otext PERL_BADLANG (unset) PERL_CPANM_OPT=-n --mirror http://cpan.nctu.edu.tw/ PERL_MM_USE_DEFAULT=1 SHELL=/bin/zsh
Subject: Re: [PATCH] bd6c821 More improvement for testing on Travis-CI
To: Yo-An Lin <yoanlin93 [...] gmail.com>
Date: Thu, 5 Mar 2015 16:08:29 +0800
From: Lin Yo-an <yoanlin93 [...] gmail.com>
CC: perlbug [...] perl.org
Download (untitled) / with headers
text/plain 10.7k
Download (untitled) / with headers
text/html 15.5k

Message body is not shown because it is too large.

Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
To: perl5-porters [...] perl.org
Date: Thu, 05 Mar 2015 09:17:57 -0300
CC: yoanlin93 [...] gmail.com
From: Vincent Pit <net [...] profvince.com>
Download (untitled) / with headers
text/plain 906b
Le 05/03/2015 00:27, Yo-An Lin a écrit : Show quoted text
> Hi Tony, > > Thanks! since we have the perl5 repository mirror on GitHub, there is > a huge community using GitHub as their daily life platform, if we can > help people who want to contribute to perl5 have their travis-ci > support, then they can just fork from GitHub and use their repository > to continuously test the changes and send back to upstream without the > pain of running tests on their machine. >
Please note that the github mirror is not maintained by the perl5 porters but by Github itself. As it can be (and has been) out of date with regards to the canonical perl5.git.perl.org repository, it is not advised to base your contributions on it. About that change particularly, the porters already maintains two ways of running the test suite (make test, and make test_harness). I don't think they need to maintain one more. Vincent
From: Ricardo Signes <perl.p5p [...] rjbs.manxome.org>
CC: perl5-porters [...] perl.org, yoanlin93 [...] gmail.com
Date: Thu, 5 Mar 2015 09:37:32 -0500
To: Vincent Pit <net [...] profvince.com>
Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
Download (untitled) / with headers
text/plain 688b
* Vincent Pit <net@profvince.com> [2015-03-05T07:17:57] Show quoted text
> Please note that the github mirror is not maintained by the perl5 porters > but by Github itself. As it can be (and has been) out of date with regards > to the canonical perl5.git.perl.org repository, it is not advised to base > your contributions on it.
Not addressing anything but the above: The mirror that GitHub was running has been shut down at our request, some time ago. There is now github.com/Perl/perl5, which we do run. This was done, though, so that we could get control over the pull requests that were getting filed. We tend to direct people to RT and close them. (You can't disable PRs on GitHub.) -- rjbs
Download signature.asc
application/pgp-signature 473b

Message body not shown because it is not plain text.

To: perlbug-followup [...] perl.org
Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
From: Lin Yo-an <yoanlin93 [...] gmail.com>
CC: Yo-An Lin <yoanlin93 [...] gmail.com>
Date: Mon, 16 Mar 2015 23:48:46 +0900
Download (untitled) / with headers
text/plain 887b
Hi Ricardo, Will we merge this patch? Cheers, Yo-An Lin Show quoted text
> On Mar 5, 2015, at 23:37, Ricardo Signes via RT <perlbug-followup@perl.org> wrote: > > * Vincent Pit <net@profvince.com> [2015-03-05T07:17:57]
>> Please note that the github mirror is not maintained by the perl5 porters >> but by Github itself. As it can be (and has been) out of date with regards >> to the canonical perl5.git.perl.org repository, it is not advised to base >> your contributions on it.
> > Not addressing anything but the above: > > The mirror that GitHub was running has been shut down at our request, some time > ago. There is now github.com/Perl/perl5, which we do run. This was done, > though, so that we could get control over the pull requests that were getting > filed. We tend to direct people to RT and close them. (You can't disable PRs > on GitHub.) > > -- > rjbs > > <signature.asc>
RT-Send-CC: perl5-porters [...] perl.org
On Wed Mar 04 22:34:15 2015, yoanlin93@gmail.com wrote: Show quoted text
> > This is a bug report for perl from yoanlin93@gmail.com, > generated with the help of perlbug 1.40 running under perl 5.21.10. > > From bd6c821336721c806bdac349cfda810734886c19 Mon Sep 17 00:00:00 2001 > From: c9s <yoanlin93@gmail.com> > Date: Tue, 3 Mar 2015 10:11:08 +0800 > Subject: [PATCH] More improvement for testing on Travis-CI > MIME-Version: 1.0 > Content-Type: multipart/mixed; boundary="------------2.1.2"
Please attach patches rather than inlining them. Show quoted text
> - Add PERL_SKIP_AUTHORS_TEST, PERL_SKIP_MANIFEST_TEST environment > variable > > - Skip eintr.t test when TRAVIS environment variable is defined. > the test isn't compatible with Travis-CI machine (container based > infrastructure) > > - Skip authors.t, manifest.t and pending-author.t when testing on > Travis-CI
The manifest test shouldn't be skipped. Skipping the author tests can be a problem with older gits, since you can end up with nonsense email addresses in the commits. Also, I think a more general mechanism in t/TEST should be created to skip tests, so we might set: PERL_SKIP_TESTS='porting/authors.t io/eintr.t' to skip those two tests, rather than modifying each test we want to skip. Show quoted text
> before_script: > - - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC > $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING > + - ./Configure -des -Dusedevel -Uversiononly -Uoptimize -Dcc=$CC > $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING > + - make -j4
This should probably be: - ./Configure -des -Dusedevel -Uversiononly -Uoptimize -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING && make -j4 so that the make is only run if the Configure is successful. Show quoted text
> script: > - - make test && make install && $HOME/perl-blead/bin/perlivp > + - PERL_SKIP_AUTHORS_TEST=1 PERL_SKIP_MANIFEST_TEST=1 TEST_JOBS=4 > make test
make test ignores TEST_JOBS, you need make test_harness for parallel testing. Show quoted text
> + - make install > + - $HOME/perl-blead/bin/perlivp
Again, these should be joined by &&, since there's no point in running perlivp if make install failed. Tony
To: perlbug-followup [...] perl.org
Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
CC: Yo-An Lin <yoanlin93 [...] gmail.com>, perl5-porters [...] perl.org
From: Lin Yo-an <yoanlin93 [...] gmail.com>
Date: Sat, 4 Apr 2015 19:30:05 +0800
Download (untitled) / with headers
text/plain 5.4k
HI Tony, hmmm sadly I found that I can't reply on rt.perl.org, so I just copied the content and reply in a new mail: Show quoted text
> On Wed Mar 04 22:34:15 2015, yoanlin93@gmail.com wrote: > > Please attach patches rather than inlining them.
I was using perlbug to send the patch, doesn't it work for you? if so, I can send another one. Show quoted text
> Show quoted text > > The manifest test shouldn't be skipped.
OK, I will update according to this. Show quoted text
> Skipping the author tests can be a problem with older gits, since you can end up with nonsense email addresses in the commits. > > Also, I think a more general mechanism in t/TEST should be created to skip tests, so we might set: > > PERL_SKIP_TESTS='porting/authors.t io/eintr.t' > > to skip those two tests, rather than modifying each test we want to skip.
Sounds great, I will do it instead of skipping the test separately. Show quoted text
> This should probably be: > > - ./Configure -des -Dusedevel -Uversiononly -Uoptimize -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING && make -j4 > > so that the make is only run if the Configure is successful.
Actually Travis-CI will stop to run the reset commands if any command failed, separating them into a list improves the readibility and does the same thing. :) Show quoted text
> > > Show quoted text > > make test ignores TEST_JOBS, you need make test_harness for parallel testing.
OK Show quoted text
> On Mar 5, 2015, at 11:27, Yo-An Lin <yoanlin93@gmail.com> wrote: > > Hi Tony, > > Thanks! since we have the perl5 repository mirror on GitHub, there is a huge community using GitHub as their daily life platform, if we can help people who want to contribute to perl5 have their travis-ci support, then they can just fork from GitHub and use their repository to continuously test the changes and send back to upstream without the pain of running tests on their machine. > > About the io/eintr.t failure, I guess maybe we can just skip this test by export PERLIO=stdio ? or add another environment variable to skip this test? > > Cheers, > Yo-An > > On Thu, Mar 5, 2015 at 11:16 AM, Tony Cook via RT <perlbug-followup@perl.org> wrote: > On Wed Mar 04 00:21:41 2015, yoanlin93@gmail.com wrote:
> > > > This patch adds a simple .travis.yml config file > > > > Summary: > > > > People want to contribute to perl don't have a machine for contiuous > > integration, This patch adds a simple .travis.yml, this way people can > > fork > > perl on GitHub and see the building status directly on travis-ci > > service > > without waiting the time-consuming test process on local machine.
> > git complained that the patch was corrupted when I extracted it from your message. > > I created the .travis.yml file and ran some tests and made some adjustments to produce the attached. > > The changes: > > - perl's build process doesn't pay any attention to the CC environment variable, > so the build was always done with cc (probably gcc), I added -Dcc=... to each build > > - run the test suite and install and test that with perlivp > > - trim the installed dependencies, perl doesn't use the GNU auto* tools. > > Unfortunatly io/eintr.t fails on the travis VMs. > > The real question is whether we want this in the tree... > > Tony > > --- > via perlbug: queue: perl5 status: new > https://rt.perl.org/Ticket/Display.html?id=123981 > > From f8e9d3554ecf0d8542651c3e91a6102adf783990 Mon Sep 17 00:00:00 2001 > From: Tony Cook <tony@develop-help.com> > Date: Thu, 5 Mar 2015 14:16:10 +1100 > Subject: [perl #123981] Travis-CI support > > Build and test perl under four different configurations. > > This isn't compatible with "container based infrastructure" > > I didn't use test_harness and TEST_JOBS since the four jobs specified > are already run in parallel on the virtual host. > > io/eintr.t fails on the travis VMs. > --- > .travis.yml | 26 ++++++++++++++++++++++++++ > MANIFEST | 1 + > 2 files changed, 27 insertions(+) > create mode 100644 .travis.yml > > diff --git a/.travis.yml b/.travis.yml > new file mode 100644 > index 0000000..f36617b > --- /dev/null > +++ b/.travis.yml > @@ -0,0 +1,26 @@ > +language: c > + > +compiler: > + - gcc > + > +matrix: > + include: > + - compiler: gcc > + env: CONFIGURE_OPTION='-Duse64bitall' > + - compiler: gcc > + env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads' > + - compiler: clang > + > +install: > + - sudo apt-get update -qq > + - sudo apt-get install -qq build-essential libtool > + - sudo apt-get build-dep perl perl-base > + > +before_script: > + - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING > +script: > + - make test && make install && $HOME/perl-blead/bin/perlivp > +after_script: > +cache: > + apt: true > + > diff --git a/MANIFEST b/MANIFEST > index aad1be4..5e0d672 100644 > --- a/MANIFEST > +++ b/MANIFEST > @@ -5481,6 +5481,7 @@ t/porting/regen.t Check that regen.pl doesn't need running > t/porting/ss_dup.t Check that sv.c:ss_dup handle everything > t/porting/test_bootstrap.t Test that the instructions for test bootstrapping aren't accidentally overlooked. > t/porting/utils.t Check that utility scripts still compile > +.travis.yml continuous integration on github (where enabled) > t/README Instructions for regression tests > t/re/charset.t See if regex modifiers like /d, /u work properly > t/re/fold_grind.t See if case folding works properly > -- > 1.7.10.4 > > >
CC: Yo-An Lin <yoanlin93 [...] gmail.com>, perl5-porters [...] perl.org
From: Lin Yo-an <yoanlin93 [...] gmail.com>
Date: Sat, 4 Apr 2015 19:42:48 +0800
To: perlbug-followup [...] perl.org
Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
I just updated the patch in the attachment. please take a look.

Message body is not shown because sender requested not to inline it.

Download (untitled) / with headers
text/plain 5.6k
Show quoted text
> On Apr 4, 2015, at 19:30, Lin Yo-an <yoanlin93@gmail.com> wrote: > > HI Tony, hmmm sadly I found that I can't reply on rt.perl.org, so I just copied the content and reply in a new mail: >
>> On Wed Mar 04 22:34:15 2015, yoanlin93@gmail.com wrote: >> >> Please attach patches rather than inlining them.
> > I was using perlbug to send the patch, doesn't it work for you? if so, I can send another one. >
>> Show quoted text >> >> The manifest test shouldn't be skipped.
> OK, I will update according to this. >
>> Skipping the author tests can be a problem with older gits, since you can end up with nonsense email addresses in the commits. >> >> Also, I think a more general mechanism in t/TEST should be created to skip tests, so we might set: >> >> PERL_SKIP_TESTS='porting/authors.t io/eintr.t' >> >> to skip those two tests, rather than modifying each test we want to skip.
> > Sounds great, I will do it instead of skipping the test separately. >
>> This should probably be: >> >> - ./Configure -des -Dusedevel -Uversiononly -Uoptimize -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING && make -j4 >> >> so that the make is only run if the Configure is successful.
> > Actually Travis-CI will stop to run the reset commands if any command failed, separating them into a list improves the readibility and does the same thing. :) >
>> >> >> Show quoted text >> >> make test ignores TEST_JOBS, you need make test_harness for parallel testing.
> OK >
>> On Mar 5, 2015, at 11:27, Yo-An Lin <yoanlin93@gmail.com> wrote: >> >> Hi Tony, >> >> Thanks! since we have the perl5 repository mirror on GitHub, there is a huge community using GitHub as their daily life platform, if we can help people who want to contribute to perl5 have their travis-ci support, then they can just fork from GitHub and use their repository to continuously test the changes and send back to upstream without the pain of running tests on their machine. >> >> About the io/eintr.t failure, I guess maybe we can just skip this test by export PERLIO=stdio ? or add another environment variable to skip this test? >> >> Cheers, >> Yo-An >> >> On Thu, Mar 5, 2015 at 11:16 AM, Tony Cook via RT <perlbug-followup@perl.org> wrote: >> On Wed Mar 04 00:21:41 2015, yoanlin93@gmail.com wrote:
>>> >>> This patch adds a simple .travis.yml config file >>> >>> Summary: >>> >>> People want to contribute to perl don't have a machine for contiuous >>> integration, This patch adds a simple .travis.yml, this way people can >>> fork >>> perl on GitHub and see the building status directly on travis-ci >>> service >>> without waiting the time-consuming test process on local machine.
>> >> git complained that the patch was corrupted when I extracted it from your message. >> >> I created the .travis.yml file and ran some tests and made some adjustments to produce the attached. >> >> The changes: >> >> - perl's build process doesn't pay any attention to the CC environment variable, >> so the build was always done with cc (probably gcc), I added -Dcc=... to each build >> >> - run the test suite and install and test that with perlivp >> >> - trim the installed dependencies, perl doesn't use the GNU auto* tools. >> >> Unfortunatly io/eintr.t fails on the travis VMs. >> >> The real question is whether we want this in the tree... >> >> Tony >> >> --- >> via perlbug: queue: perl5 status: new >> https://rt.perl.org/Ticket/Display.html?id=123981 >> >> From f8e9d3554ecf0d8542651c3e91a6102adf783990 Mon Sep 17 00:00:00 2001 >> From: Tony Cook <tony@develop-help.com> >> Date: Thu, 5 Mar 2015 14:16:10 +1100 >> Subject: [perl #123981] Travis-CI support >> >> Build and test perl under four different configurations. >> >> This isn't compatible with "container based infrastructure" >> >> I didn't use test_harness and TEST_JOBS since the four jobs specified >> are already run in parallel on the virtual host. >> >> io/eintr.t fails on the travis VMs. >> --- >> .travis.yml | 26 ++++++++++++++++++++++++++ >> MANIFEST | 1 + >> 2 files changed, 27 insertions(+) >> create mode 100644 .travis.yml >> >> diff --git a/.travis.yml b/.travis.yml >> new file mode 100644 >> index 0000000..f36617b >> --- /dev/null >> +++ b/.travis.yml >> @@ -0,0 +1,26 @@ >> +language: c >> + >> +compiler: >> + - gcc >> + >> +matrix: >> + include: >> + - compiler: gcc >> + env: CONFIGURE_OPTION='-Duse64bitall' >> + - compiler: gcc >> + env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads' >> + - compiler: clang >> + >> +install: >> + - sudo apt-get update -qq >> + - sudo apt-get install -qq build-essential libtool >> + - sudo apt-get build-dep perl perl-base >> + >> +before_script: >> + - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING >> +script: >> + - make test && make install && $HOME/perl-blead/bin/perlivp >> +after_script: >> +cache: >> + apt: true >> + >> diff --git a/MANIFEST b/MANIFEST >> index aad1be4..5e0d672 100644 >> --- a/MANIFEST >> +++ b/MANIFEST >> @@ -5481,6 +5481,7 @@ t/porting/regen.t Check that regen.pl doesn't need running >> t/porting/ss_dup.t Check that sv.c:ss_dup handle everything >> t/porting/test_bootstrap.t Test that the instructions for test bootstrapping aren't accidentally overlooked. >> t/porting/utils.t Check that utility scripts still compile >> +.travis.yml continuous integration on github (where enabled) >> t/README Instructions for regression tests >> t/re/charset.t See if regex modifiers like /d, /u work properly >> t/re/fold_grind.t See if case folding works properly >> -- >> 1.7.10.4 >> >> >>
>
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 339b
On Sat Apr 04 04:43:59 2015, yoanlin93@gmail.com wrote: Show quoted text
> I just updated the patch in the attachment. please take a look. > >
TonyC: Could we get an update on this ticket (which is in the "consider for 5.23.1" meta ticket (https://rt.perl.org/Ticket/Display.html?id=124092)? Thank you very much. -- James E Keenan (jkeenan@cpan.org)
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 286b
I am probably on board with this patch. I don't think it will hurt, and might help. Why does it skip some porting tests? I thought they'd work with or without a git checkout present, and if possible I'd like to see people being told they didn't update AUTHORS, for example. -- rjbs
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 609b
On Sat Apr 04 04:31:39 2015, yoanlin93@gmail.com wrote: Show quoted text
> > - ./Configure -des -Dusedevel -Uversiononly -Uoptimize -Dcc=$CC > > $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING && make -j4 > > > > so that the make is only run if the Configure is successful.
> > Actually Travis-CI will stop to run the reset commands if any command > failed, separating them into a list improves the readibility and does > the same thing. :)
Actually it continues to run, see https://travis-ci.org/tonycoz/perl/jobs/79207906 where I deliberately failed, and the process continued to install and run perlivp. Tony
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 676b
On Fri Jun 12 15:12:28 2015, rjbs wrote: Show quoted text
> I am probably on board with this patch. I don't think it will hurt, > and might help. > > Why does it skip some porting tests? I thought they'd work with or > without a git checkout present, and if possible I'd like to see people > being told they didn't update AUTHORS, for example.
The attached updates the whole patch: - don't skip porting tests I just committed a separate patch to write the unknown author to STDERR so the user doesn't need to run authors.t separately to get the unknown author - make the stages of the build require the previous stages success travis doesn't abort the build if one step fails Tony
Subject: 0001-perl-123981-Travis-CI-support.patch
From 9bfad6c14935dd0be3c6d03cfe8ad60209b49b58 Mon Sep 17 00:00:00 2001 From: Tony Cook <tony@develop-help.com> Date: Tue, 8 Sep 2015 15:40:54 +1000 Subject: [perl #123981] Travis-CI support Build and test perl under four different configurations. This isn't compatible with "container based infrastructure" Skip io/eintr.t since it fails on the travis VMs. make the build process depend on the previous steps, since travis does NOT stop the build process if a step fails This is largely based on work done by "c9s <yoanlin93@gmail.com>" --- .travis.yml | 26 ++++++++++++++++++++++++++ MANIFEST | 1 + t/io/eintr.t | 3 +++ 3 files changed, 30 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..842931e --- /dev/null +++ b/.travis.yml @@ -0,0 +1,26 @@ +language: c + +compiler: + - gcc + +matrix: + include: + - compiler: gcc + env: CONFIGURE_OPTION='-Duselongdouble' + - compiler: gcc + env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads' + - compiler: clang + env: CONFIGURE_OPTION='-Duselongdouble' + - compiler: clang + env: CONFIGURE_OPTION='-Duse64bitall -Dusethreads' + +install: + - sudo apt-get update -qq + - sudo apt-get install -qq build-essential libtool + +script: + - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_OPTION -Dprefix=$HOME/perl-blead -DDEBUGGING && TEST_JOBS=2 make -j2 test_harness && make install && $HOME/perl-blead/bin/perlivp +after_script: +cache: + apt: true + diff --git a/MANIFEST b/MANIFEST index 870d729..7ac09e9 100644 --- a/MANIFEST +++ b/MANIFEST @@ -5420,6 +5420,7 @@ t/porting/regen.t Check that regen.pl doesn't need running t/porting/ss_dup.t Check that sv.c:ss_dup handle everything t/porting/test_bootstrap.t Test that the instructions for test bootstrapping aren't accidentally overlooked. t/porting/utils.t Check that utility scripts still compile +.travis.yml continuous integration on github (where enabled) t/README Instructions for regression tests t/re/charset.t See if regex modifiers like /d, /u work properly t/re/fold_grind.t See if case folding works properly diff --git a/t/io/eintr.t b/t/io/eintr.t index 1a81cdf..19527c2 100644 --- a/t/io/eintr.t +++ b/t/io/eintr.t @@ -11,6 +11,9 @@ BEGIN { @INC = '../lib'; require './test.pl'; skip_all_without_dynamic_extension('Fcntl'); + + # The environment variable is defined in http://docs.travis-ci.com/user/ci-environment/ + skip_all("eintr tests can't be run inside travis-CI VMs") if $ENV{TRAVIS}; } use warnings; -- 2.1.4
From: Dennis Kaarsemaker <dennis [...] kaarsemaker.net>
To: perlbug-followup [...] perl.org
CC: perl5-porters [...] perl.org
Subject: Re: [perl #123981] [PATCH] f8210d2 Add a simple .travis.yml
Date: Thu, 22 Oct 2015 20:30:07 +0200
Download (untitled) / with headers
text/plain 1.2k
On ma, 2015-09-07 at 22:50 -0700, Tony Cook via RT wrote: Show quoted text
> On Fri Jun 12 15:12:28 2015, rjbs wrote:
> > I am probably on board with this patch. I don't think it will > > hurt, > > and might help. > > > > Why does it skip some porting tests? I thought they'd work with or > > without a git checkout present, and if possible I'd like to see > > people > > being told they didn't update AUTHORS, for example.
> > The attached updates the whole patch: > > - don't skip porting tests > I just committed a separate patch to write the unknown author to > STDERR > so the user doesn't need to run authors.t separately to get the > unknown author > > - make the stages of the build require the previous stages success > travis doesn't abort the build if one step fails
Having played a bit with travis, I think the patch could use some improvement. Attached is a patch which imho is a bit better: - Uses the container based builds and better dependencies - Doesn't skip eintr tests as it's not needed - Let travis build the build matrix based on os/compiler/env (consensus needed on useful ./Configure arguments - Set up notifications (definitely consensus needed before applying!) - Build on osx and linux - Only test blead/maint/smoke-me -- Dennis Kaarsemaker www.kaarsemaker.net

Message body is not shown because sender requested not to inline it.

RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 1.4k
On Thu Oct 22 11:30:43 2015, dennis@kaarsemaker.net wrote: Show quoted text
> Having played a bit with travis, I think the patch could use some > improvement. Attached is a patch which imho is a bit better: > > - Uses the container based builds and better dependencies > - Doesn't skip eintr tests as it's not needed > - Let travis build the build matrix based on os/compiler/env (consensus > needed on useful ./Configure arguments > - Set up notifications (definitely consensus needed before applying!) > - Build on osx and linux > - Only test blead/maint/smoke-me
+# No testing of random branches, just blead, maint and smoke-me/* +branches: + only: + - blead + - /^maint-5.*$/ + - /^smoke-me.*$/ This won't necessarily be used by perl5-porters members, it might be used by someone outside who's preparing a patch to be submitted. I don't think we should expect such a user to name their branch to match the above to get travis coverage. +# Minimal notifications (well, almost: email: false and leaving out the irc +# section would disable notifications completely) +notifications: + email: + recipients: + - perl5-porters@perl.org + on_failure: change + irc: + channels: + - "irc.perl.org#p5p" + on_failure: change Similar to the above, the user might not know about the IRC channel and might not be a member of the list. + # CC is exported by travis based on compuler section above "compiler". Tony
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 1.6k
On Sun Dec 06 15:54:29 2015, tonyc wrote: Show quoted text
> On Thu Oct 22 11:30:43 2015, dennis@kaarsemaker.net wrote:
> > Having played a bit with travis, I think the patch could use some > > improvement. Attached is a patch which imho is a bit better: > > > > - Uses the container based builds and better dependencies > > - Doesn't skip eintr tests as it's not needed > > - Let travis build the build matrix based on os/compiler/env > > (consensus > > needed on useful ./Configure arguments > > - Set up notifications (definitely consensus needed before applying!) > > - Build on osx and linux > > - Only test blead/maint/smoke-me
> > +# No testing of random branches, just blead, maint and smoke-me/* > +branches: > + only: > + - blead > + - /^maint-5.*$/ > + - /^smoke-me.*$/ > > This won't necessarily be used by perl5-porters members, it might be > used by someone outside who's preparing a patch to be submitted. > > I don't think we should expect such a user to name their branch to > match the above to get travis coverage. > > +# Minimal notifications (well, almost: email: false and leaving out > the irc > +# section would disable notifications completely) > +notifications: > + email: > + recipients: > + - perl5-porters@perl.org > + on_failure: change > + irc: > + channels: > + - "irc.perl.org#p5p" > + on_failure: change > > Similar to the above, the user might not know about the IRC channel > and might not be a member of the list. > > + # CC is exported by travis based on compuler section above > > "compiler". > > Tony
Any progress on this? -- Karl Williamson
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 835b
On Sat Aug 06 16:47:46 2016, khw wrote: Show quoted text
> Any progress on this?
Here's a new patch. One issue the restrictions in Seveas's patch brings up - if we add this to blead, every new topic branch will have .travis.yml, every clone of the perl repository will end up with copies of each of those topic (and smoke-me branches). Travis doesn't seem to be smart enough to avoid re-testing duplicate copies of the same branch in the same repository (eg, https://travis-ci.org/tonycoz/perl/builds/150542678 vs https://travis-ci.org/tonycoz/perl/builds/150533957) So if we add this, and someone enables travis on their repository and does a mirror, it's going to start a ridiculous number of probably duplicate travis jobs. The restrictions from Seveas' patch limits that to blead/maint/smoke-me, but that last can be a fairly large list. Tony
Subject: 0001-perl-123981-Travis-CI-support.patch
From 57e4d871864da993f757f3d6079c49793602d534 Mon Sep 17 00:00:00 2001 From: Tony Cook <tony@develop-help.com> Date: Mon, 8 Aug 2016 15:11:55 +1000 Subject: [perl #123981] Travis-CI support This is largely based on work done by "c9s <yoanlin93@gmail.com>" and Dennis Kaarsemaker (Seveas) --- .travis.yml | 31 +++++++++++++++++++++++++++++++ MANIFEST | 1 + 2 files changed, 32 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..d1fdd23 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,31 @@ +language: c + +os: + - linux + - osx + +compiler: + - gcc + - clang + +env: + - CONFIGURE_ARGS='-Uusethreads' + - CONFIGURE_ARGS='-Dusethreads' + - CONFIGURE_ARGS='-Duselongdouble' + - CONFIGURE_ARGS='-Duse64bitall' + - CONFIGURE_ARGS='-Dusethreads -Duselongdouble' + - CONFIGURE_ARGS='-Dusethreads -Duse64bitall' + - CONFIGURE_ARGS='-Dusethreads -Duse64bitall -Duselongdouble' + +script: + - ./Configure -des -Dusedevel -Uversiononly -Dcc=$CC $CONFIGURE_ARGS -Dprefix=$HOME/perl-blead -DDEBUGGING && TEST_JOBS=4 make -j4 test_harness && make install && $HOME/perl-blead/bin/perlivp + +addons: + apt: + packages: + - file + - cpio + - libdb-dev + - libgdbm-dev + - zlib1g-dev + - libbz2-dev diff --git a/MANIFEST b/MANIFEST index 4cec28b..ead1f9a 100644 --- a/MANIFEST +++ b/MANIFEST @@ -1,4 +1,5 @@ .dir-locals.el Emacs control file +.travis.yml continuous integration on github (where enabled) amigaos4/amigaio.c AmigaOS4 port amigaos4/amigaio.h AmigaOS4 port amigaos4/amigaos.c AmigaOS4 port -- 2.1.4
RT-Send-CC: perl5-porters [...] perl.org
On Sun, 07 Aug 2016 23:41:27 -0700, tonyc wrote: Show quoted text
> On Sat Aug 06 16:47:46 2016, khw wrote:
> > Any progress on this?
> > Here's a new patch. > > One issue the restrictions in Seveas's patch brings up - if we add > this to blead, every new topic branch will have .travis.yml, every > clone > of the perl repository will end up with copies of each of those > topic (and smoke-me branches). > > Travis doesn't seem to be smart enough to avoid re-testing duplicate > copies of the same branch in the same repository (eg, https://travis- > ci.org/tonycoz/perl/builds/150542678 vs https://travis- > ci.org/tonycoz/perl/builds/150533957) > > So if we add this, and someone enables travis on their repository and > does a mirror, it's going to start a ridiculous number of probably > duplicate travis jobs.
This doesn't appear to be a problem unless maybe if you try to git push --mirror. Forking a repo using the github UI won't run travis (since you can't have travis enabled yet.) I've pushed my patch as 3135e2b23ba431c10d896ed61732e67ce830481b. Tony
Download (untitled) / with headers
text/plain 317b
Thank you for filing this report. You have helped make Perl better. With the release yesterday of Perl 5.28.0, this and 185 other issues have been resolved. Perl 5.28.0 may be downloaded via: https://metacpan.org/release/XSAWYERX/perl-5.28.0 If you find that the problem persists, feel free to reopen this ticket.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org