You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by "Pepijn Van Eeckhoudt (JIRA)" <ji...@apache.org> on 2010/05/31 17:48:36 UTC

[jira] Created: (BUILDR-449) Fix failing specs on Windows

Fix failing specs on Windows
----------------------------

                 Key: BUILDR-449
                 URL: https://issues.apache.org/jira/browse/BUILDR-449
             Project: Buildr
          Issue Type: Improvement
          Components: Core features
    Affects Versions: 1.4
            Reporter: Pepijn Van Eeckhoudt
             Fix For: 1.4
         Attachments: spec_fixes.patch

The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (BUILDR-449) Fix failing specs on Windows

Posted by "Pepijn Van Eeckhoudt (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874810#action_12874810 ] 

Pepijn Van Eeckhoudt commented on BUILDR-449:
---------------------------------------------

BTW do you still have buildr checked out to a path with spaces in them? I noticed in one of the previous logs that it was in D:\Documents and Settings\...
If that's still the case I'll try that on my work machine tomorrow. Since I've had a couple of other issues when there's a space in the path that might be worth testing.
How long is your path BTW? I followed the existing example in the posix implementation and used the ansi variant of the win32 function CreateFile, not the unicode one. As it goes with historical stuff, the ansi variant is limited to 256 character paths. Maybe I should fix the code to use the unicode variant instead with extended length paths just to be on the safe side. If you're curious, see http://msdn.microsoft.com/en-us/library/aa365247(v=VS.85).aspx for all the absurd details.

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (BUILDR-449) Fix failing specs on Windows

Posted by "Antoine Toulme (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874781#action_12874781 ] 

Antoine Toulme commented on BUILDR-449:
---------------------------------------

It sounds better, I now have 5 failures instead of 13.

Buildr::CompileTask#invoke should not force compilation if dependencies older than compiled
Buildr::RSpec should read passed specs from result yaml
Buildr::RSpec should read result yaml to obtain the list of failed specs
Buildr#install should re-install artifact when "from" is newer
Rake::Task package should create package in target directory

These are the "new" ones:
Buildr::CompileTask#invoke should not force compilation if dependencies older than compiled
Buildr#install should re-install artifact when "from" is newer
Rake::Task package should create package in target directory

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (BUILDR-449) Fix failing specs on Windows

Posted by "Pepijn Van Eeckhoudt (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874567#action_12874567 ] 

Pepijn Van Eeckhoudt commented on BUILDR-449:
---------------------------------------------

After some further investigation I've backtracked on my first fix attempt. I had assumed that utime to a time in the past was not working but in actuality it was utime on directories that was simply not working at all. I patched JRuby to fix this and have restarted my testing effort from scratch.

I first wrote some specs to check that utime works on files, directories, in the past and in the future. Once those were working I reran all the specs and hooray most of them worked immediately.

I've fixed a number of misc other things to get the remaining failing ones to work:
- Disabled ZipTask:'should preserve file permissions' on windows as this cannot be implemented correctly yet.
- Added URI.escape() around all file:// URLs in the specs to make sure directories with spaces are handled correctly
- Patched FILE#real_path to return an unescaped version of the path so that we don't get %20 directories on the local FS
- Allowed mode flags to be passed to Buildr#read. Due to CRLF to LF conversion the signature validation spec was failing. This spec now uses 'rb' as mode flags 

spec_fixes2.patch includes all this stuff and supersedes the previous patch (spec_fixes.patch)

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (BUILDR-449) Fix failing specs on Windows

Posted by "Pepijn Van Eeckhoudt (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Pepijn Van Eeckhoudt updated BUILDR-449:
----------------------------------------

    Attachment: spec_fixes.patch

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (BUILDR-449) Fix failing specs on Windows

Posted by "Antoine Toulme (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874819#action_12874819 ] 

Antoine Toulme commented on BUILDR-449:
---------------------------------------

For this bug, I'm not taking chances and am using a path without spaces.

I get those failures:
Buildr::RSpec should read passed specs from result yaml
Buildr::RSpec should read result yaml to obtain the list of failed specs
Buildr::Scala::Specs should include public objects extending org.specs.Specification
Buildr::Scala::Specs should include public objects extending org.specs.Specification even with companion classes
Buildr::Scala::Specs should pass when spec passes
scala compiler (installed in SCALA_HOME) requires present SCALA_HOME

The first two are transient failures I have seen happen on Linux as well. The last ones are Scala failures as Scala wasn't configured on that xp box.

I think we're good: we have good coverage of xp.
It still looks like we have a few oddities on windows 7 but that's fine, we'll fix them in the next release.

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (BUILDR-449) Fix failing specs on Windows

Posted by "Antoine Toulme (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874279#action_12874279 ] 

Antoine Toulme commented on BUILDR-449:
---------------------------------------

On Windows 7, here is what I get:

Before:
Buildr::Filter should not touch target directory unless running
Buildr::CompileTask#invoke should force compilation if target empty
Buildr::CompileTask#invoke should timestamp target directory if specified
Buildr::CompileTask#invoke should not touch target if nothing compiled
Buildr::CompileTask#invoke should not touch target if failed to compile
Buildr::TestTask#invoke when there was a successful test run already should not run tests if nothing changed
Buildr::TestTask#invoke when there was a successful test run already should not run tests if buildfile changed but IGNORE_BUILDFILE is true
Buildr::RSpec should read passed specs from result yaml
Buildr::RSpec should read result yaml to obtain the list of failed specs
Buildr::Cobertura project-specific instrumentation should not touch instrumented directory if nothing instrumented
Buildr::Emma project-specific instrumentation should not touch instrumented directory if nothing instrumented
Buildr::ZipTask should preserve file permissions
Rake::Task upload should upload signatures for artifact and POM

After:
Buildr::Project#resources should copy new resources to target directory
Buildr::Project#resources should copy updated resources to target directory
Buildr::TestTask#invoke when there was a successful test run already should run tests if main compile target changed
Buildr::TestTask#invoke when there was a successful test run already should run tests if test compile target changed
Buildr::TestTask#invoke when there was a successful test run already should run tests if main resources changed
Buildr::TestTask#invoke when there was a successful test run already should run tests if test resources changed
Buildr::TestTask#invoke when there was a successful test run already should run tests if compile-dependent project changed
Buildr::TestTask#invoke when there was a successful test run already should not run tests if buildfile changed but IGNORE_BUILDFILE is true
Buildr::RSpec should read passed specs from result yaml
Buildr::RSpec should read result yaml to obtain the list of failed specs
Buildr::ZipTask should preserve file permissions
Buildr#install should re-install artifact when "from" is newer
Rake::Task package should create package in target directory
Rake::Task upload should upload signatures for artifact and POM

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (BUILDR-449) Fix failing specs on Windows

Posted by "Antoine Toulme (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874804#action_12874804 ] 

Antoine Toulme commented on BUILDR-449:
---------------------------------------

Good idea, I will test on xp.

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (BUILDR-449) Fix failing specs on Windows

Posted by "Pepijn Van Eeckhoudt (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Pepijn Van Eeckhoudt updated BUILDR-449:
----------------------------------------

    Attachment: spec_fixes2.patch

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (BUILDR-449) Fix failing specs on Windows

Posted by "Pepijn Van Eeckhoudt (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874567#action_12874567 ] 

Pepijn Van Eeckhoudt edited comment on BUILDR-449 at 6/2/10 8:47 AM:
---------------------------------------------------------------------

After some further investigation I've backtracked on my first fix attempt. I had assumed that utime to a time in the past was not working but in actuality it was utime on directories that was simply not working at all. I patched JRuby to fix this and have restarted my testing effort from scratch.

I first wrote some specs to check that utime works on files, directories, in the past and in the future. Once those were working I reran all the specs and hooray most of them worked immediately.

I've fixed a number of misc other things to get the remaining failing ones to work:
- Disabled ZipTask:'should preserve file permissions' on windows as this cannot be implemented correctly yet.
- Added URI.escape() around all file:// URLs in the specs to make sure directories with spaces are handled correctly
- Patched FILE#real_path to return an unescaped version of the path so that we don't get %20 directories on the local FS
- Allowed mode flags to be passed to Buildr#read. Due to CRLF to LF conversion the signature validation spec was failing. This spec now uses 'rb' as mode flags 

spec_fixes2.patch includes all this stuff and supersedes the previous patch (spec_fixes.patch). This is dependent on JRUBY-4837.

      was (Author: pepijnve):
    After some further investigation I've backtracked on my first fix attempt. I had assumed that utime to a time in the past was not working but in actuality it was utime on directories that was simply not working at all. I patched JRuby to fix this and have restarted my testing effort from scratch.

I first wrote some specs to check that utime works on files, directories, in the past and in the future. Once those were working I reran all the specs and hooray most of them worked immediately.

I've fixed a number of misc other things to get the remaining failing ones to work:
- Disabled ZipTask:'should preserve file permissions' on windows as this cannot be implemented correctly yet.
- Added URI.escape() around all file:// URLs in the specs to make sure directories with spaces are handled correctly
- Patched FILE#real_path to return an unescaped version of the path so that we don't get %20 directories on the local FS
- Allowed mode flags to be passed to Buildr#read. Due to CRLF to LF conversion the signature validation spec was failing. This spec now uses 'rb' as mode flags 

spec_fixes2.patch includes all this stuff and supersedes the previous patch (spec_fixes.patch)
  
> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (BUILDR-449) Fix failing specs on Windows

Posted by "Pepijn Van Eeckhoudt (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874802#action_12874802 ] 

Pepijn Van Eeckhoudt commented on BUILDR-449:
---------------------------------------------

I've never had any of those fail on my xp box. Do you have an easy way to test on xp or vista? I would like to have an idea of whether this is specific to windows 7 or not.

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (BUILDR-449) Fix failing specs on Windows

Posted by "Antoine Toulme (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Antoine Toulme reassigned BUILDR-449:
-------------------------------------

    Assignee: Antoine Toulme

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (BUILDR-449) Fix failing specs on Windows

Posted by "Antoine Toulme (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874281#action_12874281 ] 

Antoine Toulme commented on BUILDR-449:
---------------------------------------

Am I missing something ? Any changes I need to apply to jruby ?

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (BUILDR-449) Fix failing specs on Windows

Posted by "Antoine Toulme (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/BUILDR-449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Antoine Toulme resolved BUILDR-449.
-----------------------------------

    Resolution: Fixed

Marking issue as fixed:
14:47:40/Volumes/Backup/shared_vm/buildr>svn ci CHANGELOG spec lib/buildr/core lib/buildr/ide/eclipse.rb -m "BUILDR-449 Fix failing specs on Windows (Pepijn Van Eeckhoudt)"
Sending        CHANGELOG
Sending        lib/buildr/core/common.rb
Sending        lib/buildr/core/transports.rb
Sending        lib/buildr/ide/eclipse.rb
Sending        spec/core/transport_spec.rb
Sending        spec/core/util_spec.rb
Sending        spec/packaging/archive_spec.rb
Sending        spec/packaging/packaging_spec.rb
Transmitting file data ........
Committed revision 950781.

I take note that we need a new release of jruby to be safe.

Thanks Pepijn, that's a very cool contribution!

> Fix failing specs on Windows
> ----------------------------
>
>                 Key: BUILDR-449
>                 URL: https://issues.apache.org/jira/browse/BUILDR-449
>             Project: Buildr
>          Issue Type: Improvement
>          Components: Core features
>    Affects Versions: 1.4
>            Reporter: Pepijn Van Eeckhoudt
>            Assignee: Antoine Toulme
>             Fix For: 1.4
>
>         Attachments: spec_fixes.patch, spec_fixes2.patch
>
>
> The attached spec resolves a number of failing specs on Windows. These fixes have not yet been tested on other platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.