From Fedora Project Wiki
Line 119: Line 119:
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this change depends?  In other words, completion of another change owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel change)? -->
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this change depends?  In other words, completion of another change owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel change)? -->
* No other RPMs packages depends on this.
* No other RPMs packages depends on this.
* Glibc upstream release 2.21 with this patch is going to miss Fedora 22 release deadline. We are going forward by patching Fedora glibc version.
* This patch won't be able to make it into glibc upstream release 2.21, so we're going to maintain it as a patch for Fedora 22.
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->



Revision as of 11:38, 16 January 2015


Glibc Unicode 7.0

Summary

We are updating Glibc Unicode data from Unicode 5.1 to Unicode 7.0 version. It took long time since there was not much documentation on how to update Unicode data and also there was chance of loosing backward compatibility. Most of the issues are resolved now and patches are ready for inclusion. This update adds around 8000 number of character support in Glibc and also correcting the Unicode data of many characters as per latest Unicode standard.

Owner

Current status

  • Targeted release: Fedora 22
  • Last updated: 14 Jan 2015
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

In this update we are planning to update Glibc's the Unicode locale data - character map and LC_CTYPE information to Unicode 7.0 version. This data is used almost in all locales and going to affect all applications using these locales. It is system wide change since it impacting glibc and application dependent on it. Glibc provides two files for Unicode data, UTF-8 and i18n. UTF-8 file provides information about CHARMAP and WIDTH for Unicode characters. i18n file provides CTYPE (uppercase, lowercase, punct etc.) information for all Unicode characters. It has been long time this is not updated due to incomplete documentation and also possible chances of loosing backward compatibility. Work has been started on this 5-6 months back and now most of the issues are resolved.

Respective bugs in upstream for more information.

Github repo for scripts.

Benefit to Fedora

With this change users and developers of Fedora will get Unicode 7.0 support through Glibc. Though we are upgrading from Unicode 5.1 to 7.0, users will get an updated Unicode data from Glibc locales. No new functionality is added. Fedora is leading distribution when it comes to internationalization. By including this change Fedora users and developers will get latest Unicode locale data.


Scope

  • Proposal owners:
  1. Writing scripts for generating UTF-8 and i18n files from Unicode character database.
  2. Preparing patch for UTF-8 and i18n files.
  3. Preparing backward compatibility report.
  4. Applying patches to Fedora.
  5. Testing whether does it breaks anything around.
  • Other developers: This change impacting glibc and all applications that using locales. Other Developers do not need to do any changes from there end but they need to watch how there application behave with improved localedata. We need proper testing to see it does not break any application.
  • Release engineering: No work required from Release engineering.
  • Policies and guidelines: No, this change does not required any updates to Policies or packaging guideline updates.

Upgrade/compatibility impact

Upgrade will be smooth. Users will get exact things with updated Unicode data.

How To Test

User Experience

Dependencies

  • No other RPMs packages depends on this.
  • This patch won't be able to make it into glibc upstream release 2.21, so we're going to maintain it as a patch for Fedora 22.

Contingency Plan

  • Contingency mechanism: Will drop patches from Glibc build.
  • Contingency deadline: Before F22 Beta release. (not a System Wide Change)
  • Blocks release? No
  • Blocks product? product No

Documentation

  • This will be available with backward compatibility report.
  • Backward compatibility report for UTF-8 file.


Release Notes