ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] broken ruby-rpm?
@ 2010-10-11  8:14 Igor Zubkov
  2010-10-11 19:18 ` Alexey I. Froloff
  0 siblings, 1 reply; 2+ messages in thread
From: Igor Zubkov @ 2010-10-11  8:14 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Hi!

$ cat 1.rb
require 'rpm'

file = "padevchooser-0.9.3-alt3.src.rpm"

rpm = RPM::Package::open(file)

puts rpm.changelog.count

rpm.changelog.each do |c|
  puts c.name.inspect
  puts c.text.inspect
  begin
    puts c.time
  rescue ArgumentError
    puts "Bad Argument"
  end
end
$ ruby 1.rb
3
"Igor Zubkov <icesik@altlinux.org> 0.9.3-alt3"
"- apply patch from repocop"
Bad Argument
"Igor Zubkov <icesik@altlinux.org> 0.9.3-alt2"
"- fix desktop file\n- buildreq"
Bad Argument
"Igor Zubkov <icesik@altlinux.org> 0.9.3-alt1"
"- Initial build for Sisyphus"
Bad Argument
$

Это на ruby 1.8.7 EE поставленный через rvm.

$ /usr/bin/ruby 1.rb
3
"Igor Zubkov <icesik@altlinux.org> 0.9.3-alt3"
"- apply patch from repocop"
165467921207-03-18 19:00:00 +0300
"Igor Zubkov <icesik@altlinux.org> 0.9.3-alt2"
"- fix desktop file\n- buildreq"
261302899890-02-16 12:50:56 +0300
"Igor Zubkov <icesik@altlinux.org> 0.9.3-alt1"
"- Initial build for Sisyphus"
74125651477-04-07 11:52:00 +0400
$ /usr/bin/ruby -v
ruby 1.9.2p0 (2010-08-18) [x86_64-linux-gnu]
$

Это с версией из Сизифа. На лицо баг обработки поля time из
%changelog. Помогите починить. Это мешает появления полной поддержки
/:locale/srpm/:Branch/changelog в prometheus2.0.

-- 
Igor Zubkov
http://hi.im/ice


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [devel] broken ruby-rpm?
  2010-10-11  8:14 [devel] broken ruby-rpm? Igor Zubkov
@ 2010-10-11 19:18 ` Alexey I. Froloff
  0 siblings, 0 replies; 2+ messages in thread
From: Alexey I. Froloff @ 2010-10-11 19:18 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 924 bytes --]

On Mon, Oct 11, 2010 at 11:14:03AM +0300, Igor Zubkov wrote:
> Это с версией из Сизифа. На лицо баг обработки поля time из
> %changelog.
На 32-х битах это естественно не повторяется?

ruby-rpm/ext/rpm/package.c:
689  char **times,**names,**texts;
...
695  if (!headerGetEntryMinMemory(RPM_HEADER(pkg), RPMTAG_CHANGELOGTIME, (hTYP_t)&timetype,
696                       (hPTR_t*)&times, (hCNT_t)&count)) {
697      return cl;
698  }
...
711  for (i = 0; i < count; i++) {
712      VALUE chglog = rb_struct_new(
713          rpm_sChangeLog,
714          rb_time_new((time_t)times[i], (time_t)0),
715          rb_str_new2(names[i]),
716          rb_str_new2(texts[i]));
717      rb_ary_push(cl, chglog);
718  }

times, видимо, надо превратить в int_32 *.  Я этим заняться смогу
не раньше вечера четверга.  У тебя права есть.

-- 
Regards,    --
Sir Raorn.   --- http://thousandsofhate.blogspot.com/

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-10-11 19:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-10-11  8:14 [devel] broken ruby-rpm? Igor Zubkov
2010-10-11 19:18 ` Alexey I. Froloff

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git