Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1766771 - Review Request: libicu64 - ICU Library version 64
Summary: Review Request: libicu64 - ICU Library version 64
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nobody's working on this, feel free to take it
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1755114
TreeView+ depends on / blocked
 
Reported: 2019-10-29 20:57 UTC by Stephen Gallagher
Modified: 2019-11-06 20:06 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-11-06 20:06:05 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Stephen Gallagher 2019-10-29 20:57:09 UTC
Spec URL: https://sgallagh.fedorapeople.org/packagereview/libicu64/libicu64.spec
SRPM URL: https://sgallagh.fedorapeople.org/packagereview/libicu64/libicu64-64.2-0.fc32.1.src.rpm
Description: ICU Library version 64 
Fedora Account System Username: sgallagh

Comment 1 Stephen Gallagher 2019-10-29 20:59:06 UTC
Needed to have i18n support in Node.js 12.x

Comment 2 Stephen Gallagher 2019-10-29 22:12:40 UTC
Scratch build at https://koji.fedoraproject.org/koji/taskinfo?taskID=38650383 is failing on s390x (big endian problems, it seems). I'll see if I can debug that. It's building fine on little-endian platforms.

Comment 3 Stephen Gallagher 2019-10-30 13:29:00 UTC
Spec URL: https://sgallagh.fedorapeople.org/packagereview/libicu64/libicu64.spec
SRPM URL: https://sgallagh.fedorapeople.org/packagereview/libicu64/libicu64-64.2-0.fc32.2.src.rpm
Scratch Build: https://koji.fedoraproject.org/koji/taskinfo?taskID=38661704

Turns out that it wasn't an endianness issue. The s390x build for some reason didn't create a source/data/out directory before trying to write files into it. I couldn't figure out the origin of the problem in the complicated Makefile environment, so I just pre-created the missing directories in the specfile to work around it. Seems to be building successfully now.

Comment 4 Miro Hrončok 2019-10-30 22:34:40 UTC
BuildRequires: python2

:scream:

Comment 5 Stephen Gallagher 2019-10-31 12:20:36 UTC
(In reply to Miro Hrončok from comment #4)
> BuildRequires: python2
> 
> :scream:

Oops, I actually didn't notice that. I copied the spec originally from https://src.fedoraproject.org/rpms/compat-libicu62/blob/f30/f/compat-libicu62.spec and didn't notice the python2 BR.

I'm checking to see whether it's actually required or if it can work with py3 right now.

Comment 6 Stephen Gallagher 2019-10-31 12:30:24 UTC
Spec URL: https://sgallagh.fedorapeople.org/packagereview/libicu64/libicu64.spec
SRPM URL: https://sgallagh.fedorapeople.org/packagereview/libicu64/libicu64-64.2-0.fc32.3.src.rpm

OK, good news. It does not in fact actually need Python 2. The build tools work with python3 just fine.

Comment 7 Miro Hrončok 2019-10-31 12:33:17 UTC
Thanks!

Comment 8 Pete Walter 2019-11-01 12:53:09 UTC
Hi Stephen,

Does nodejs need exactly libicu 64, or does it work with newer libicu 65 that just landed in rawhide?

If it needs exactly libicu 64, maybe a better solution would be to bundle it in nodejs?

Thanks,
Pete

Comment 9 Stephen Gallagher 2019-11-01 13:14:04 UTC
(In reply to Pete Walter from comment #8)
> Hi Stephen,
> 
> Does nodejs need exactly libicu 64, or does it work with newer libicu 65
> that just landed in rawhide?
> 
> If it needs exactly libicu 64, maybe a better solution would be to bundle it
> in nodejs?
> 
> Thanks,
> Pete

It might work with libicu 65, but I still need to have i18n support for F30 and F31, so I'd still like to carry this package on at least those releases.

Comment 10 Pete Walter 2019-11-01 13:25:01 UTC
OK, but can you bundle libicu 64 in nodejs and install it to a private dir under /usr/lib64 that is only available for nodejs? This seems like a perfect opportunity for bundling.

I'd rather not have two libicu versions available in Fedora that packages can link to (there is no symbol versioning in libicu so you can't load two different versions at runtime into the same process afaik).

Adding Eike to CC as well.

Comment 11 Stephen Gallagher 2019-11-01 13:45:43 UTC
I *can* bundle it privately (fairly easily, in fact; the Node.js build-system can statically link it in). However, libicu is *large*. I figured it made more sense to provide the compat library on the system in case there are any other packages out there that need something newer that 62 to run and were therefore unavailable on Fedora.

Having each package that needs it bundle an extra 70MiB of unicode data seems pretty excessive.

Comment 12 Pete Walter 2019-11-01 13:48:58 UTC
Right, but that's exactly what I want to avoid -- I do not want to provide another version of libicu for other packages to link against as that can lead to symbol conflicts. Please just do the private bundling here.

Comment 13 Stephen Gallagher 2019-11-06 20:06:05 UTC
Abandoning this package.


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