https://redmine.ruby-lang.org/https://redmine.ruby-lang.org/favicon.ico?17113305112010-10-07T00:00:59ZRuby Issue Tracking SystemBackport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=136412010-10-07T00:00:59Zluislavena (Luis Lavena)luislavena@gmail.com
<ul></ul><p>=begin<br>
Just to clarify.</p>
<p>is not Ruby install (the installers) that lack the patchlevel version you're asking but instead the executable and DLLs itself are lacking it.</p>
<p>E.g:</p>
<p>installers:<br>
rubyinstaller-1.9.2-p0 contains as version information 1.9.2.0<br>
rubyinstaller-1.8.7-p302 contains as version information 1.8.7.302</p>
<p>The problem is that ruby.exe, msvcrt-ruby1x.dll and rubyw.exe only contains 1.8.7.0, not exposing the patchlevel.</p>
<p>Also, is a good practice to introduce the problem here and introduce references to other links, that ways make the ticket one-pass read instead of back and forth between links.</p>
<p>--<br>
Luis Lavena</p>
<p>=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=138482010-10-21T15:32:37Znaruse (Yui NARUSE)naruse@airemix.jp
<ul><li><strong>ruby -v</strong> set to <i>all</i></li></ul><p>=begin<br>
It has the patchlevel information to provide the Ruby level constant: RUBY_PATCHLEVEL, doesn't it?<br>
=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=138612010-10-21T23:40:38Zluislavena (Luis Lavena)luislavena@gmail.com
<ul></ul><p>=begin<br>
Hello Yui,</p>
<p>I believe the OP refers to the resource file (.rc) that is attached to the DLL and executables. These lack the patchlevel information and it reports 1.8.7.0 for every single patchlevel released of 1.8.7</p>
<p>The same applies to 1.9.2</p>
<p>RubyInstaller decided to put in the resource information MAJOR.MINOR.BUILD.PATCHLEVEL as expected by these tools, but we didn't alter Ruby own resource file (.rc)</p>
<p>This only affects Windows executables and dlls. External tools cannot invoke "ruby -v" because these could not be the right ones, so the resource information is used to compare the authenticity of the executable</p>
<p>=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=138632010-10-22T14:31:34Znaruse (Yui NARUSE)naruse@airemix.jp
<ul><li><strong>Category</strong> set to <i>build</i></li><li><strong>Status</strong> changed from <i>Open</i> to <i>Assigned</i></li><li><strong>Assignee</strong> set to <i>shyouhei (Shyouhei Urabe)</i></li></ul><p>=begin<br>
The resource file you said is ruby.rc, I think.<br>
And ruby.rc is generated by win32/resource.rb.</p>
<p>1.9.2's win32/resource.rb writes its PATCHLEVEL.<br>
So 1.9.2 is fixed this bug.<br>
Please try with ruby_1_9_2 branch's head.</p>
<p>1.8.7's situation seems a but.<br>
r26172 but it didn't merge at least r22932.<br>
So this ticket move to Backport187.<br>
=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=141832010-11-17T16:44:59Zshyouhei (Shyouhei Urabe)shyouhei@ruby-lang.org
<ul></ul><p>=begin<br>
Hi Yui, I happen to realize this issue being assigned to me (sorry being lazy).<br>
Which revision should I backport? I suspect r29421 has something to do with it.<br>
=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=142492010-11-23T16:30:39Zshyouhei (Shyouhei Urabe)shyouhei@ruby-lang.org
<ul><li><strong>Status</strong> changed from <i>Assigned</i> to <i>Feedback</i></li></ul><p>=begin<br>
I think I've backported what's necessary, but I don't have an environment to check it. Can someone confirm?<br>
=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=142642010-11-24T09:23:59Zluislavena (Luis Lavena)luislavena@gmail.com
<ul></ul><p>=begin<br>
Hello Shyouhei,</p>
<p>The following is a patch that corrects a small typo introduced in r29421, revision.h do not exist on 1.8.7 but instead is called version.h</p>
<p>This patch corrects the issue</p>
<p>diff --git a/cygwin/GNUmakefile.in b/cygwin/GNUmakefile.in<br>
index fb322c4..734d870 100644<br>
--- a/cygwin/GNUmakefile.in<br>
+++ b/cygwin/GNUmakefile.in<br>
@@ -38,7 +38,7 @@ $(RUBY_EXP) $(LIBRUBY_SO): $(DLL_BASE_NAME).res.@OBJEXT@<br>
%.res.@OBJEXT@: %.rc<br>
@WINDRES@ --include-dir . --include-dir $(<D) --include-dir $(srcdir)/win32 $< $@</p>
<p>-$(RCFILES): $(RBCONFIG) $(srcdir)/revision.h $(srcdir)/win32/resource.rb<br>
+$(RCFILES): $(RBCONFIG) $(srcdir)/version.h $(srcdir)/win32/resource.rb<br>
@$(MINIRUBY) $(srcdir)/win32/resource.rb <br>
-ruby_name=$(RUBY_INSTALL_NAME) -rubyw_name=$(RUBYW_INSTALL_NAME) <br>
-so_name=$(DLL_BASE_NAME) <br>
diff --git a/win32/Makefile.sub b/win32/Makefile.sub<br>
index cfbecc9..792481a 100644<br>
--- a/win32/Makefile.sub<br>
+++ b/win32/Makefile.sub<br>
@@ -615,7 +615,7 @@ distclean-local::<br>
@$(RM) ext\config.cache $(RBCONFIG:/=) $(CONFIG_H:/=)<br>
@$(RM) $(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc</p>
<p>-$(RCFILES): $(RBCONFIG) $(srcdir)/revision.h $(srcdir)/win32/resource.rb<br>
+$(RCFILES): $(RBCONFIG) $(srcdir)/version.h $(srcdir)/win32/resource.rb<br>
@$(MINIRUBY) $(srcdir)/win32/resource.rb <br>
-ruby_name=$(RUBY_INSTALL_NAME) <br>
-rubyw_name=$(RUBYW_INSTALL_NAME) \</p>
<p>However, PATCHLEVEL is still missing because config.status is not adding it to rbconfig.rb</p>
<p>=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=142722010-11-24T14:49:27Zshyouhei (Shyouhei Urabe)shyouhei@ruby-lang.org
<ul></ul><p>=begin<br>
Thank you.</p>
<blockquote>
<p>However, PATCHLEVEL is still missing because config.status is not adding it to rbconfig.rb</p>
</blockquote>
<p>Hmm, so this original issue (<a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Backport: Wrong version numer in windows installer file. (Closed)" href="https://redmine.ruby-lang.org/issues/3912">#3912</a>) isn't fixed yet, is it? I'll manage to work around.<br>
=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=143002010-11-25T13:15:33Zluislavena (Luis Lavena)luislavena@gmail.com
<ul></ul><p>=begin<br>
Hello Urabe,</p>
<p>With the backport of r22932 (commit at r29908) this issue is solved:</p>
<p>Partial contents of msvcrt-ruby18.rc:</p>
<p>BEGIN<br>
VALUE "FileDescription", "Ruby interpreter (DLL) 1.8.7.326 [i386-mingw32]\0"<br>
VALUE "FileVersion", "1,8,7,326\0"<br>
...<br>
VALUE "ProductVersion", "1,8,7,326\0"</p>
<p>Thank you.<br>
=end</p> Backport187 - Backport #3912: Wrong version numer in windows installer file.https://redmine.ruby-lang.org/issues/3912?journal_id=143012010-11-25T13:21:08Zshyouhei (Shyouhei Urabe)shyouhei@ruby-lang.org
<ul><li><strong>Status</strong> changed from <i>Feedback</i> to <i>Closed</i></li></ul><p>=begin<br>
OK, closed. Thanks for confirmation.<br>
=end</p>