# RubySpecs

**URL:** <https://www.ruby-forum.com/t/rubyspecs/213386>\
**Category:** IronRuby\
**Created:** [October 31, 2011, 9:32pm UTC](https://www.ruby-forum.com/t/rubyspecs/213386 "2011-10-31T21:32:23Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![luislavena](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/0ea827/32.png) [@luislavena](https://www.ruby-forum.com/u/luislavena)\
**Post date:** [October 31, 2011, 9:32pm UTC](https://www.ruby-forum.com/t/rubyspecs/213386/1 "2011-10-31T21:32:23Z")

</div>

I’ve just run mspec under the Languages\Ruby\Tests\mspec\rubyspec\core  
folder against MRI 1.9.2p0 (which is checked into the ironlanguages-main  
git repo), and it crashes with a segfault in putc\_spec.rb

I then tried running against MRI 1.9.2p290 and I get the following:

```
   1518 files, 9618 examples, 28229 expectations, 339 failures, 256

```

errors

Running against the dev build of IronRuby stalls running tests in the  
array subfolder, so I can’t even complete the run.

I’d like to try fixing some of the spec failures that IronRuby has, but  
these results raise several questions:

1. Are the specs in the mspec\rubyspec folder up to date? How would  
someone find this out and/or update them?

- Also, I added a few specs the other day for the marshalling code. Do  
these need to somehow get pushed upstream into some “master” rubyspec  
repository??

1. Shouldn’t we check the latest build of MRI into the ironlangauges  
git-repo? Either the latest 1.9.2 or the just-released 1.9.3 instead?

2. Isn’t MRI the “definitive” ruby? How can the specs be failing against  
MRI?

3. If I update some IronRuby code to pass the specs, how do I know that  
the specs are even correct?

Thanks, Orion

---

<div class="post-metadata">

**Author:** ![Orion\_E](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/o/65b543/32.png) [@Orion\_E](https://www.ruby-forum.com/u/Orion_E)\
**Post date:** [October 31, 2011, 10:16pm UTC](https://www.ruby-forum.com/t/rubyspecs/213386/2 "2011-10-31T22:16:17Z")

</div>

1. Partly. We are in progress of updating them. Since we’ve added more  
specs and sometimes corrected existing ones this needs to be done with  
care. The current progress is captured here:

> <https://gist.github.com/tmat/1159998>

After we are done with this process of bringing the specs up to date we  
can submit a path to RubySpec containing the changed we made. The plan  
is also to make the RubySpec dir a submodule so that merging with  
RubySpec is easier.

1. Or maybe we should just remove MRI completely? You can always use one  
on your system. I need to check if we need CRuby for anything in the  
infrastructure.

2. Well, that would be a question for RubySpec maintainers. I found some  
specs be failures Windows specific, which means the specs are not  
properly written. Feel free to contribute to RubySpecs git repo - I bet  
they are happy to accept fixes.

3. Well, you need to figure out if the behavior makes sense. If it  
doesn’t feel free to file a bug on CRuby and let them decide if the  
behavior is intentional or not. Then CRuby might get fixed, specs might  
get fixed, or IronRuby might get fixed.

Which specs particularly are you working on? Is it marshal related?

Tomas

From: removed\_email\_address@domain.invalid  
[[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)] On Behalf Of Orion E.  
Sent: Monday, October 31, 2011 1:19 PM  
To: removed\_email\_address@domain.invalid  
Subject: [Ironruby-core] RubySpecs

I’ve just run mspec under the Languages\Ruby\Tests\mspec\rubyspec\core  
folder against MRI 1.9.2p0 (which is checked into the ironlanguages-main  
git repo), and it crashes with a segfault in putc\_spec.rb

I then tried running against MRI 1.9.2p290 and I get the following:

```
   1518 files, 9618 examples, 28229 expectations, 339 failures, 256 

```

errors

Running against the dev build of IronRuby stalls running tests in the  
array subfolder, so I can’t even complete the run.

I’d like to try fixing some of the spec failures that IronRuby has, but  
these results raise several questions:

1. Are the specs in the mspec\rubyspec folder up to date? How would  
someone find this out and/or update them?

- Also, I added a few specs the other day for the marshalling code. Do  
these need to somehow get pushed upstream into some “master” rubyspec  
repository??

1. Shouldn’t we check the latest build of MRI into the ironlangauges  
git-repo? Either the latest 1.9.2 or the just-released 1.9.3 instead?

2. Isn’t MRI the “definitive” ruby? How can the specs be failing against  
MRI?

3. If I update some IronRuby code to pass the specs, how do I know that  
the specs are even correct?

Thanks, Orion

---

<div class="post-metadata">

**Author:** ![Orion\_E](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/o/65b543/32.png) [@Orion\_E](https://www.ruby-forum.com/u/Orion_E)\
**Post date:** [November 1, 2011, 12:43am UTC](https://www.ruby-forum.com/t/rubyspecs/213386/3 "2011-11-01T00:43:57Z")

</div>

Thanks for that.

After the code review comments about Exception#== I was running the  
Exception specs. 3 fail against ruby 1.9.2p290 (2011-07-09)  
[i386-mingw32]

I don’t have access to a linux/mac system at work to check if they pass  
on  
non-windows platforms, but it doesn’t look like there’s anything  
platform  
related in those errors, so I’d doubt it.

Random comment:  
It appears that there’s a lot more work to be done in IronRuby  
particularly relating to Errno and SystemCallErrors - I could do this  
work, but there’s a blocking problem:

- Various bits of IronRuby core code call helper methods such as  
RubyExceptions.CreateEINVAL, RubyExceptions.CreateEEXIST, etc, etc.  
These  
are supposed to return Errno::EINVAL, but they can’t, because the Errno  
classes are defined in IronRuby.Libraries and the  
RubyExceptions.CreateXYZ  
methods are defined in IronRuby.dll. We’d have to move the Errno stuff  
out  
of Libraries and into IronRuby.dll I think

From: Tomas M. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
To: “removed\_email\_address@domain.invalid” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
Date: 01/11/2011 10:16 a.m.  
Subject: Re: [Ironruby-core] RubySpecs  
Sent by: removed\_email\_address@domain.invalid

1. Partly. We are in progress of updating them. Since we?ve added more  
specs and sometimes corrected existing ones this needs to be done with  
care. The current progress is captured here:

> <https://gist.github.com/tmat/1159998>

After we are done with this process of bringing the specs up to date we  
can submit a path to RubySpec containing the changed we made. The plan  
is  
also to make the RubySpec dir a submodule so that merging with RubySpec  
is  
easier.

1. Or maybe we should just remove MRI completely? You can always use one  
on your system. I need to check if we need CRuby for anything in the  
infrastructure.

2. Well, that would be a question for RubySpec maintainers. I found some  
specs be failures Windows specific, which means the specs are not  
properly  
written. Feel free to contribute to RubySpecs git repo ? I bet they are  
happy to accept fixes.

3. Well, you need to figure out if the behavior makes sense. If it  
doesn?t  
feel free to file a bug on CRuby and let them decide if the behavior is  
intentional or not. Then CRuby might get fixed, specs might get fixed,  
or  
IronRuby might get fixed.

Which specs particularly are you working on? Is it marshal related?

Tomas

From: removed\_email\_address@domain.invalid [  
[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)] On Behalf Of Orion E.  
Sent: Monday, October 31, 2011 1:19 PM  
To: removed\_email\_address@domain.invalid  
Subject: [Ironruby-core] RubySpecs

I’ve just run mspec under the Languages\Ruby\Tests\mspec\rubyspec\core  
folder against MRI 1.9.2p0 (which is checked into the ironlanguages-main  
git repo), and it crashes with a segfault in putc\_spec.rb

I then tried running against MRI 1.9.2p290 and I get the following:

```
   1518 files, 9618 examples, 28229 expectations, 339 failures, 256

```

errors

Running against the dev build of IronRuby stalls running tests in the  
array subfolder, so I can’t even complete the run.

I’d like to try fixing some of the spec failures that IronRuby has, but  
these results raise several questions:

1. Are the specs in the mspec\rubyspec folder up to date? How would  
someone find this out and/or update them?

- Also, I added a few specs the other day for the marshalling code. Do  
these need to somehow get pushed upstream into some “master” rubyspec  
repository??

1. Shouldn’t we check the latest build of MRI into the ironlangauges  
git-repo? Either the latest 1.9.2 or the just-released 1.9.3 instead?

2. Isn’t MRI the “definitive” ruby? How can the specs be failing against  
MRI?

3. If I update some IronRuby code to pass the specs, how do I know that  
the specs are even correct?

Thanks, Orion\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_  
Ironruby-core mailing list  
removed\_email\_address@domain.invalid  
[http://rubyforge.org/mailman/listinfo/ironruby-core](http://rubyforge.org/mailman/listinfo/ironruby-core)

---

<div class="post-metadata">

**Author:** ![Orion\_E](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/o/65b543/32.png) [@Orion\_E](https://www.ruby-forum.com/u/Orion_E)\
**Post date:** [November 1, 2011, 1:12am UTC](https://www.ruby-forum.com/t/rubyspecs/213386/4 "2011-11-01T01:12:56Z")

</div>

There is a lot of work to do around exceptions in general. I wouldn’t  
start digging into it if I were you :). I’m thinking of some core  
changes in how we map Ruby to .NET exceptions… it will take me some  
time to get to it though. I would not worry about all these Errno  
exceptions for now unless your application is blocked by some specific  
bug. Certainly not if a few specs fail here and there (we have thousands  
of specs failing, which might be more important to fix).

Time to file a bug on CRuby to get some input from MRI guys what they  
think the behavior should really be if it doesn’t make sense. Or  
RubySpec guys if the MRI behavior is reasonable.

Tomas

From: removed\_email\_address@domain.invalid  
[[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)] On Behalf Of Orion E.  
Sent: Monday, October 31, 2011 4:40 PM  
To: removed\_email\_address@domain.invalid  
Subject: Re: [Ironruby-core] RubySpecs

Thanks for that.

After the code review comments about Exception#== I was running the  
Exception specs. 3 fail against ruby 1.9.2p290 (2011-07-09)  
[i386-mingw32]

I don’t have access to a linux/mac system at work to check if they pass  
on non-windows platforms, but it doesn’t look like there’s anything  
platform related in those errors, so I’d doubt it.

Random comment:  
It appears that there’s a lot more work to be done in IronRuby  
particularly relating to Errno and SystemCallErrors - I could do this  
work, but there’s a blocking problem:

- Various bits of IronRuby core code call helper methods such as  
RubyExceptions.CreateEINVAL, RubyExceptions.CreateEEXIST, etc, etc.  
These are supposed to return Errno::EINVAL, but they can’t, because the  
Errno classes are defined in IronRuby.Libraries and the  
RubyExceptions.CreateXYZ methods are defined in IronRuby.dll. We’d have  
to move the Errno stuff out of Libraries and into IronRuby.dll I think

From: Tomas M.  
\<removed\_email\_address@domain.invalid[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)\>  
To:  
“removed\_email\_address@domain.invalid[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)”  
\<removed\_email\_address@domain.invalid[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)\>  
Date: 01/11/2011 10:16 a.m.  
Subject: Re: [Ironruby-core] RubySpecs  
Sent by:  
removed\_email\_address@domain.invalid[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

* * *

1. Partly. We are in progress of updating them. Since we’ve added more  
specs and sometimes corrected existing ones this needs to be done with  
care. The current progress is captured here:

> <https://gist.github.com/tmat/1159998>

After we are done with this process of bringing the specs up to date we  
can submit a path to RubySpec containing the changed we made. The plan  
is also to make the RubySpec dir a submodule so that merging with  
RubySpec is easier.

1. Or maybe we should just remove MRI completely? You can always use one  
on your system. I need to check if we need CRuby for anything in the  
infrastructure.

2. Well, that would be a question for RubySpec maintainers. I found some  
specs be failures Windows specific, which means the specs are not  
properly written. Feel free to contribute to RubySpecs git repo - I bet  
they are happy to accept fixes.

3. Well, you need to figure out if the behavior makes sense. If it  
doesn’t feel free to file a bug on CRuby and let them decide if the  
behavior is intentional or not. Then CRuby might get fixed, specs might  
get fixed, or IronRuby might get fixed.

Which specs particularly are you working on? Is it marshal related?

Tomas

From:  
removed\_email\_address@domain.invalid[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
[[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)] On Behalf Of Orion E.  
Sent: Monday, October 31, 2011 1:19 PM  
To: removed\_email\_address@domain.invalid[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
Subject: [Ironruby-core] RubySpecs

I’ve just run mspec under the Languages\Ruby\Tests\mspec\rubyspec\core  
folder against MRI 1.9.2p0 (which is checked into the ironlanguages-main  
git repo), and it crashes with a segfault in putc\_spec.rb

I then tried running against MRI 1.9.2p290 and I get the following:

```
  1518 files, 9618 examples, 28229 expectations, 339 failures, 256 

```

errors

Running against the dev build of IronRuby stalls running tests in the  
array subfolder, so I can’t even complete the run.

I’d like to try fixing some of the spec failures that IronRuby has, but  
these results raise several questions:

1. Are the specs in the mspec\rubyspec folder up to date? How would  
someone find this out and/or update them?

- Also, I added a few specs the other day for the marshalling code. Do  
these need to somehow get pushed upstream into some “master” rubyspec  
repository??

1. Shouldn’t we check the latest build of MRI into the ironlangauges  
git-repo? Either the latest 1.9.2 or the just-released 1.9.3 instead?

2. Isn’t MRI the “definitive” ruby? How can the specs be failing against  
MRI?

3. If I update some IronRuby code to pass the specs, how do I know that  
the specs are even correct?

Thanks, Orion\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_  
Ironruby-core mailing list  
removed\_email\_address@domain.invalid[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
[http://rubyforge.org/mailman/listinfo/ironruby-core](http://rubyforge.org/mailman/listinfo/ironruby-core)
