Bug 447566 - Review Request: libuninum - Library for converting unicode strings to numbers
Review Request: libuninum - Library for converting unicode strings to numbers
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Parag AN(पराग)
Fedora Extras Quality Assurance
Depends On:
Blocks: 447567
  Show dependency treegraph
Reported: 2008-05-20 11:15 EDT by Terje Røsten
Modified: 2008-05-25 16:37 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-05-25 16:37:21 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
panemade: fedora‑review+
kevin: fedora‑cvs+

Attachments (Terms of Use)

  None (edit)
Description Terje Røsten 2008-05-20 11:15:36 EDT
Spec URL: http://terjeros.fedorapeople.org/libuninum/libuninum.spec
SRPM URL: http://terjeros.fedorapeople.org/libuninum/libuninum-2.7-2.fc9.src.rpm

libuninum is a library for converting Unicode strings to
numbers. Internal computation is done using arbitrary precision
arithmetic, so there is no limit on the size of the integer that can
be converted. The value is returned as an ASCII decimal string, a GNU
MP object, or an unsigned long integer.  Auto-detection of the number
system is provided. The number systems supported include Arabic,
Armenian, Balinese, Bengali, Burmese, Chinese, Cyrillic, Devanagari,
Egyptian, Ethiopic, Glagolitic, Greek, Gujarati, Gurmukhi, Hebrew,
Kannada, Khmer, Klingon, Lao, Limbu, Malayalam, Mongolian, New Tai
Lue, Nko, Old Italic, Old Persian, Oriya, Osmanya, Perso-Arabic,
Phoenician, Roman Numerals, Tamil, Telugu, Tengwar, Thai, and Tibetan.


This package is needed by msort (also in review).
Comment 1 Parag AN(पराग) 2008-05-21 07:15:44 EDT
When I installed this on F9 and tried to compile examples
[parag@localhost Download]$ gcc -Wall -g -o MinimalExample MinimalExample.c -luninum
MinimalExample.c: In function ‘main’:
MinimalExample.c:20: warning: pointer targets in passing argument 2 of
‘StringToInt’ differ in signedness
MinimalExample.c:22: warning: format ‘%u’ expects type ‘unsigned int’, but
argument 2 has type ‘long unsigned int’
[parag@localhost Download]$ ./MinimalExample 
Segmentation fault

GDB gave me
Breakpoint 1, main () at MinimalExample.c:20
20	  StringToInt(&val,str,NS_TYPE_ULONG,NS_ANY);
(gdb) n

Program received signal SIGSEGV, Segmentation fault.
wcStripSeparators (s=0x8048648) at uninum.c:241
241	      *t++ = c;
(gdb) bt
#0  wcStripSeparators (s=0x8048648) at uninum.c:241
#1  0x0011c840 in StringToInt (rvalp=0xbfee1d14, s=0x8048644, ReturnType=0,
NumberSystem=69) at uninum.c:5116
#2  0x08048549 in main () at MinimalExample.c:20

Am I missing something?
Comment 2 Terje Røsten 2008-05-21 16:30:56 EDT
Upstream is looking at the problem, first guess is that problem is in the
example code. The included numconv tools works fine. Continue review?
Comment 3 Parag AN(पराग) 2008-05-22 03:29:31 EDT
+ package builds in mock (rawhide i386).
koji build => http://koji.fedoraproject.org/koji/taskinfo?taskID=622193
+ rpmlint is silent for SRPM and for RPM.
+ source files match upstream url
5a34c5cf6a6307274dad0ce52b40f94c  libuninum-2.7.tar.gz
+ package meets naming and packaging guidelines.
+ specfile is properly named, is cleanly written
+ Spec file is written in American English.
+ Spec file is legible.
+ dist tag is present.
+ build root is correct.
+ license is open source-compatible.
+ License text is included in package.
+ BuildRequires are proper.
+ Compiler flags used correctly.
+ defattr usage is correct.
+ %clean is present.
+ package installed properly.
+ Macro use appears rather consistent.
+ Package contains code, not content.
+ no static libraries.
+ no .pc file present.
+ -devel subpackage exists.
+ no .la files.
+ no translations are available.
+ Does owns the directories it creates.
+ ldconfig scriptlets present.
+ no duplicates in %files.
+ file permissions are appropriate.
+ Package libuninum-2.7-2.fc10 ->
  Provides: libuninum.so.5
+ Package libuninum-devel-2.7-2.fc10  ->
  Requires: libuninum = 2.7-2.fc10 libuninum.so.5
+ Not a GUI App.

   Change libuninum rpm group to System Environment/Libraries

Comment 4 Parag AN(पराग) 2008-05-22 03:32:10 EDT
Even example from README is not working. Hope to see upstream will resolve this
issues as early as possible.
for time being I am approving this package.
Comment 5 Terje Røsten 2008-05-22 12:57:06 EDT
Things are getting better, examples don't crash anymore, however results are
not correct on x86_64. Upstream is pinged about that. I have removed the
tcl tool from the package.

Updated package:

spec: http://terjeros.fedorapeople.org/libuninum/libuninum.spec
srpm: http://terjeros.fedorapeople.org/libuninum/libuninum-2.7-3.fc9.src.rpm
Comment 6 Parag AN(पराग) 2008-05-23 05:22:14 EDT
Koji build http://koji.fedoraproject.org/koji/taskinfo?taskID=625953

Please file bugs for x86_64 once package got built and bugzilla gets component
entry libuninum.
Any reason to remove tcl support?

Comment 7 Terje Røsten 2008-05-23 17:19:59 EDT
> Please file bugs for x86_64 once package got built and bugzilla gets component
> entry libuninum.


> Any reason to remove tcl support?

Did not seem to work and my focus is as a library for msort.


New Package CVS Request
Package Name: libuninum
Short Description: Library for converting unicode strings to numbers
Owners: terjeros
Branches: F-8 F-9
Cvsextras Commits: yes

Comment 8 Kevin Fenzi 2008-05-24 14:02:07 EDT
cvs done.
Comment 9 Terje Røsten 2008-05-25 16:37:21 EDT
Built and pending for testing in bodhi.

Note You need to log in before you can comment on or make changes to this bug.