SlideShare a Scribd company logo
1 of 14
Download to read offline
Glibc Unicode and CLDRGlibc Unicode and CLDR
Pravin SatputePravin Satpute
Senior Software EngineerSenior Software Engineer
Globalization TeamGlobalization Team
Red HatRed Hat
AgendaAgenda
●
What was the problem?What was the problem?
●
Why so?Why so?
●
How we resolved issue?How we resolved issue?
● Analysis
● Development
●
Getting patch into upstreamGetting patch into upstream
●
Question and AnswersQuestion and Answers
What was the problem?What was the problem?
What was the problem?What was the problem?
● Updating Glibc localedata from Unicode 5.1 to
Unicode 7.0
● /usr/share/i18n/locales/i18n (LC_CTYPE)
● /usr/share/i18n/charmaps/UTF-8.gz
Why So?Why So?
What were the issues?What were the issues?
● No Documentation.
● Risk of missing backward compatibility.
● No expert.
How we resolved it?How we resolved it?
How we resolved it?How we resolved it?
AnalysisAnalysis
● Started gathering Changelog, Git logs for all changes
happened over the time. Specific fixes.
● Found hints, information written in Localedata files.
● Comments on Bugzilla
● Unicode source files providing raw information for Glibc
Localedata
● UnicodeData.txt
● DerivedCoreProperties.txt
● EastAsianWidth.txt
How we resolved it?How we resolved it?
Started with LC_CTYPE (i18n)Started with LC_CTYPE (i18n)
● Wrote script gen-unicode-ctype.py to update output
generated from gen-unicode-ctype.c
● Backward Compatiblity
● This script was comparing existing data with newly
generated and generating easy to understand report.
● Later Mike modify gen-unicode-ctype.py to deprecate
gen-unicode-ctype.c
● Repeated same process for UTF-8 charmap and WIDTH.
Patch prepared whatPatch prepared what
next?next?
Patch prepared what next?Patch prepared what next?
● Later Mike Fabian stepped into it.
● He reviewed scripts. Improved it.
● Glibc upstream further improved it.
● We proposed System wide change for Fedora 22
Patch prepared what next?Patch prepared what next?
● Patch got committed in upstream Feb last week.
● Collaborative work from Me, Mike Fabian,
Alexandre Oliva supported by Carlos and Jens
Petersen
● Users will get this update through Fedora 22 and
other upstream distros latest releases.
Questions??Questions??
ReferencesReferences
● https://github.com/pravins/glibc-i18n
● https://sourceware.org/bugzilla/show_bug.cgi?id=14094
● https://fedoraproject.org/wiki/Changes/Glibc_Unicode_7
● https://sourceware.org/git/?p=glibc.git;a=commit;h=4a4839c94a4c
93ffc0d5b95c69a08b02a57007f2

More Related Content

What's hot

Looking back at 6.5 years of #devopsdays
Looking back at 6.5 years of #devopsdaysLooking back at 6.5 years of #devopsdays
Looking back at 6.5 years of #devopsdaysKris Buytaert
 
I Love APIs 2015: Getting **IT Done Workshop
I Love APIs 2015: Getting **IT Done WorkshopI Love APIs 2015: Getting **IT Done Workshop
I Love APIs 2015: Getting **IT Done WorkshopApigee | Google Cloud
 
Build great products
Build great productsBuild great products
Build great productsAdam Culp
 
London Java Community 2016 - Testing with Spock: The logical choice
London Java Community 2016 - Testing with Spock: The logical choiceLondon Java Community 2016 - Testing with Spock: The logical choice
London Java Community 2016 - Testing with Spock: The logical choiceIván López Martín
 
How to get your talk accepted at Devoxx UK
How to get your talk accepted at Devoxx UKHow to get your talk accepted at Devoxx UK
How to get your talk accepted at Devoxx UKDaniel Bryant
 
What we can offer as Vappar
What we can offer as VapparWhat we can offer as Vappar
What we can offer as VapparUmairIftikhar19
 
RigaDevDay 2016 - Testing with Spock: The Logical Choice
RigaDevDay 2016 - Testing with Spock: The Logical ChoiceRigaDevDay 2016 - Testing with Spock: The Logical Choice
RigaDevDay 2016 - Testing with Spock: The Logical ChoiceIván López Martín
 
Pro Tools Tier 4 Music
Pro Tools Tier 4 MusicPro Tools Tier 4 Music
Pro Tools Tier 4 MusicShawn Stutler
 
Git for .Net Developers
Git for .Net DevelopersGit for .Net Developers
Git for .Net DevelopersPeteShearer
 
Using Go in DevOps
Using Go in DevOpsUsing Go in DevOps
Using Go in DevOpsEficode
 
Dead Zone (v1.1 in English for AgileEE 2013)
Dead Zone (v1.1 in English for AgileEE 2013)Dead Zone (v1.1 in English for AgileEE 2013)
Dead Zone (v1.1 in English for AgileEE 2013)Sergey Prokhorenko
 
Soil pollution activities
Soil pollution activitiesSoil pollution activities
Soil pollution activitiesSoils FAO-GSP
 
2017 06 rajab_rulla_portfolio
2017 06 rajab_rulla_portfolio2017 06 rajab_rulla_portfolio
2017 06 rajab_rulla_portfolioRulla Rajab
 
Tales from the Workshops
Tales from the WorkshopsTales from the Workshops
Tales from the WorkshopsRussel Winder
 
Strategie di testing: Spring Boot loves Kotlin
Strategie di testing: Spring Boot loves KotlinStrategie di testing: Spring Boot loves Kotlin
Strategie di testing: Spring Boot loves KotlinMarco Fracassi
 
Relay baton - Good example of one piece continous flow
Relay baton - Good example of one piece continous flowRelay baton - Good example of one piece continous flow
Relay baton - Good example of one piece continous flowTomas Rybing
 
Gil - the responsible to unable paralellism
Gil - the responsible to unable paralellismGil - the responsible to unable paralellism
Gil - the responsible to unable paralellismGeison Goes
 

What's hot (20)

Looking back at 6.5 years of #devopsdays
Looking back at 6.5 years of #devopsdaysLooking back at 6.5 years of #devopsdays
Looking back at 6.5 years of #devopsdays
 
I Love APIs 2015: Getting **IT Done Workshop
I Love APIs 2015: Getting **IT Done WorkshopI Love APIs 2015: Getting **IT Done Workshop
I Love APIs 2015: Getting **IT Done Workshop
 
Build great products
Build great productsBuild great products
Build great products
 
London Java Community 2016 - Testing with Spock: The logical choice
London Java Community 2016 - Testing with Spock: The logical choiceLondon Java Community 2016 - Testing with Spock: The logical choice
London Java Community 2016 - Testing with Spock: The logical choice
 
How to get your talk accepted at Devoxx UK
How to get your talk accepted at Devoxx UKHow to get your talk accepted at Devoxx UK
How to get your talk accepted at Devoxx UK
 
What we can offer as Vappar
What we can offer as VapparWhat we can offer as Vappar
What we can offer as Vappar
 
RigaDevDay 2016 - Testing with Spock: The Logical Choice
RigaDevDay 2016 - Testing with Spock: The Logical ChoiceRigaDevDay 2016 - Testing with Spock: The Logical Choice
RigaDevDay 2016 - Testing with Spock: The Logical Choice
 
Pro Tools Tier 4 Music
Pro Tools Tier 4 MusicPro Tools Tier 4 Music
Pro Tools Tier 4 Music
 
Git for .Net Developers
Git for .Net DevelopersGit for .Net Developers
Git for .Net Developers
 
Using Go in DevOps
Using Go in DevOpsUsing Go in DevOps
Using Go in DevOps
 
Dead Zone (v1.1 in English for AgileEE 2013)
Dead Zone (v1.1 in English for AgileEE 2013)Dead Zone (v1.1 in English for AgileEE 2013)
Dead Zone (v1.1 in English for AgileEE 2013)
 
Soil pollution activities
Soil pollution activitiesSoil pollution activities
Soil pollution activities
 
Mobile design system in Figma for Kiwi.com
Mobile design system in Figma for Kiwi.comMobile design system in Figma for Kiwi.com
Mobile design system in Figma for Kiwi.com
 
2017 06 rajab_rulla_portfolio
2017 06 rajab_rulla_portfolio2017 06 rajab_rulla_portfolio
2017 06 rajab_rulla_portfolio
 
Tales from the Workshops
Tales from the WorkshopsTales from the Workshops
Tales from the Workshops
 
Strategie di testing: Spring Boot loves Kotlin
Strategie di testing: Spring Boot loves KotlinStrategie di testing: Spring Boot loves Kotlin
Strategie di testing: Spring Boot loves Kotlin
 
iRail at hack democracy
iRail at hack democracyiRail at hack democracy
iRail at hack democracy
 
Relay baton - Good example of one piece continous flow
Relay baton - Good example of one piece continous flowRelay baton - Good example of one piece continous flow
Relay baton - Good example of one piece continous flow
 
plone.api
plone.apiplone.api
plone.api
 
Gil - the responsible to unable paralellism
Gil - the responsible to unable paralellismGil - the responsible to unable paralellism
Gil - the responsible to unable paralellism
 

Similar to Pravin s glibc-unicode_and_cldr

Continuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageContinuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageRan Levy
 
Nightmare on Docker street
Nightmare on Docker streetNightmare on Docker street
Nightmare on Docker streetKris Buytaert
 
Advanced Video Production with FOSS
Advanced Video Production with FOSSAdvanced Video Production with FOSS
Advanced Video Production with FOSSKirk Kimmel
 
Continuous Infrastructure First
Continuous Infrastructure FirstContinuous Infrastructure First
Continuous Infrastructure FirstKris Buytaert
 
Polar talks: code generation
Polar talks: code generationPolar talks: code generation
Polar talks: code generationStojan Peshov
 
Open Source Monitoring in 2019
Open Source Monitoring in 2019 Open Source Monitoring in 2019
Open Source Monitoring in 2019 Kris Buytaert
 
My talk at Linux Piter 2015
My talk at Linux Piter 2015My talk at Linux Piter 2015
My talk at Linux Piter 2015Alex Chistyakov
 
Build your own low latency live platform
Build your own low latency live platformBuild your own low latency live platform
Build your own low latency live platformJordi Cenzano
 
Continuous Infrastructure First Ignite Edition
Continuous Infrastructure First  Ignite EditionContinuous Infrastructure First  Ignite Edition
Continuous Infrastructure First Ignite EditionKris Buytaert
 
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaert
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaertDevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaert
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaertMykola Marzhan
 
Devopsdays Amsterdam 2017 Keynote, looking back at 5 years of AMS
Devopsdays Amsterdam 2017 Keynote, looking back at 5 years of AMSDevopsdays Amsterdam 2017 Keynote, looking back at 5 years of AMS
Devopsdays Amsterdam 2017 Keynote, looking back at 5 years of AMSKris Buytaert
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme ProgrammingKnoldus Inc.
 
SFScon18 - Gerhard Sulzberger - Jason Tevnan - gitops with gitlab + terraform
SFScon18 - Gerhard Sulzberger - Jason Tevnan  - gitops with gitlab + terraformSFScon18 - Gerhard Sulzberger - Jason Tevnan  - gitops with gitlab + terraform
SFScon18 - Gerhard Sulzberger - Jason Tevnan - gitops with gitlab + terraformSouth Tyrol Free Software Conference
 
Get your FLOSS problems solved
Get your FLOSS problems solvedGet your FLOSS problems solved
Get your FLOSS problems solvedRex Tsai
 
Container Patching: Cloud Native Security Con 2023
Container Patching: Cloud Native Security Con 2023Container Patching: Cloud Native Security Con 2023
Container Patching: Cloud Native Security Con 2023Greg Castle
 
Passing the Joel Test in the PHP World (phpbnl10)
Passing the Joel Test in the PHP World (phpbnl10)Passing the Joel Test in the PHP World (phpbnl10)
Passing the Joel Test in the PHP World (phpbnl10)Lorna Mitchell
 
Moby is killing your devops efforts
Moby is killing your devops effortsMoby is killing your devops efforts
Moby is killing your devops effortsKris Buytaert
 

Similar to Pravin s glibc-unicode_and_cldr (20)

Continuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageContinuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritage
 
Nightmare on Docker street
Nightmare on Docker streetNightmare on Docker street
Nightmare on Docker street
 
Advanced Video Production with FOSS
Advanced Video Production with FOSSAdvanced Video Production with FOSS
Advanced Video Production with FOSS
 
Continuous Infrastructure First
Continuous Infrastructure FirstContinuous Infrastructure First
Continuous Infrastructure First
 
Polar talks: code generation
Polar talks: code generationPolar talks: code generation
Polar talks: code generation
 
Open Source Monitoring in 2019
Open Source Monitoring in 2019 Open Source Monitoring in 2019
Open Source Monitoring in 2019
 
My talk at Linux Piter 2015
My talk at Linux Piter 2015My talk at Linux Piter 2015
My talk at Linux Piter 2015
 
Build your own low latency live platform
Build your own low latency live platformBuild your own low latency live platform
Build your own low latency live platform
 
Linux Sucks
Linux SucksLinux Sucks
Linux Sucks
 
Linux Sucks
Linux SucksLinux Sucks
Linux Sucks
 
Write in Go
Write in GoWrite in Go
Write in Go
 
Continuous Infrastructure First Ignite Edition
Continuous Infrastructure First  Ignite EditionContinuous Infrastructure First  Ignite Edition
Continuous Infrastructure First Ignite Edition
 
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaert
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaertDevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaert
DevOps Days Kyiv 2019 -- continuous Infrafirstructure First //Kris buytaert
 
Devopsdays Amsterdam 2017 Keynote, looking back at 5 years of AMS
Devopsdays Amsterdam 2017 Keynote, looking back at 5 years of AMSDevopsdays Amsterdam 2017 Keynote, looking back at 5 years of AMS
Devopsdays Amsterdam 2017 Keynote, looking back at 5 years of AMS
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
SFScon18 - Gerhard Sulzberger - Jason Tevnan - gitops with gitlab + terraform
SFScon18 - Gerhard Sulzberger - Jason Tevnan  - gitops with gitlab + terraformSFScon18 - Gerhard Sulzberger - Jason Tevnan  - gitops with gitlab + terraform
SFScon18 - Gerhard Sulzberger - Jason Tevnan - gitops with gitlab + terraform
 
Get your FLOSS problems solved
Get your FLOSS problems solvedGet your FLOSS problems solved
Get your FLOSS problems solved
 
Container Patching: Cloud Native Security Con 2023
Container Patching: Cloud Native Security Con 2023Container Patching: Cloud Native Security Con 2023
Container Patching: Cloud Native Security Con 2023
 
Passing the Joel Test in the PHP World (phpbnl10)
Passing the Joel Test in the PHP World (phpbnl10)Passing the Joel Test in the PHP World (phpbnl10)
Passing the Joel Test in the PHP World (phpbnl10)
 
Moby is killing your devops efforts
Moby is killing your devops effortsMoby is killing your devops efforts
Moby is killing your devops efforts
 

More from Pravin Satpute

Globalization autdi for Fedora Atomic
Globalization autdi for Fedora AtomicGlobalization autdi for Fedora Atomic
Globalization autdi for Fedora AtomicPravin Satpute
 
Development activities - Fedora globalization DevConf CZ 2016
Development activities - Fedora globalization  DevConf CZ 2016Development activities - Fedora globalization  DevConf CZ 2016
Development activities - Fedora globalization DevConf CZ 2016Pravin Satpute
 
Fedora globalization - Road ahead
Fedora globalization - Road aheadFedora globalization - Road ahead
Fedora globalization - Road aheadPravin Satpute
 
Fedora Globalization status and discussion
Fedora Globalization status and discussionFedora Globalization status and discussion
Fedora Globalization status and discussionPravin Satpute
 
Basics of-foss-fedora-introduction
Basics of-foss-fedora-introductionBasics of-foss-fedora-introduction
Basics of-foss-fedora-introductionPravin Satpute
 
Introduction to Fedora project and Fedora.Next
Introduction to Fedora project and Fedora.NextIntroduction to Fedora project and Fedora.Next
Introduction to Fedora project and Fedora.NextPravin Satpute
 
Lohit2 : Project to create reusable OpenType tables for complex script fonts
Lohit2 : Project to create reusable OpenType tables for complex script fontsLohit2 : Project to create reusable OpenType tables for complex script fonts
Lohit2 : Project to create reusable OpenType tables for complex script fontsPravin Satpute
 
Why globalization? World wide picture
Why globalization? World wide pictureWhy globalization? World wide picture
Why globalization? World wide picturePravin Satpute
 

More from Pravin Satpute (12)

Fedora 29 features
Fedora 29 featuresFedora 29 features
Fedora 29 features
 
Fedora 28 changes
Fedora 28 changesFedora 28 changes
Fedora 28 changes
 
Flock 2017-g11n
Flock 2017-g11nFlock 2017-g11n
Flock 2017-g11n
 
Globalization autdi for Fedora Atomic
Globalization autdi for Fedora AtomicGlobalization autdi for Fedora Atomic
Globalization autdi for Fedora Atomic
 
Development activities - Fedora globalization DevConf CZ 2016
Development activities - Fedora globalization  DevConf CZ 2016Development activities - Fedora globalization  DevConf CZ 2016
Development activities - Fedora globalization DevConf CZ 2016
 
Fedora globalization - Road ahead
Fedora globalization - Road aheadFedora globalization - Road ahead
Fedora globalization - Road ahead
 
Fedora Globalization status and discussion
Fedora Globalization status and discussionFedora Globalization status and discussion
Fedora Globalization status and discussion
 
How to-contribute
How to-contributeHow to-contribute
How to-contribute
 
Basics of-foss-fedora-introduction
Basics of-foss-fedora-introductionBasics of-foss-fedora-introduction
Basics of-foss-fedora-introduction
 
Introduction to Fedora project and Fedora.Next
Introduction to Fedora project and Fedora.NextIntroduction to Fedora project and Fedora.Next
Introduction to Fedora project and Fedora.Next
 
Lohit2 : Project to create reusable OpenType tables for complex script fonts
Lohit2 : Project to create reusable OpenType tables for complex script fontsLohit2 : Project to create reusable OpenType tables for complex script fonts
Lohit2 : Project to create reusable OpenType tables for complex script fonts
 
Why globalization? World wide picture
Why globalization? World wide pictureWhy globalization? World wide picture
Why globalization? World wide picture
 

Recently uploaded

Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 

Recently uploaded (20)

Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 

Pravin s glibc-unicode_and_cldr

  • 1. Glibc Unicode and CLDRGlibc Unicode and CLDR Pravin SatputePravin Satpute Senior Software EngineerSenior Software Engineer Globalization TeamGlobalization Team Red HatRed Hat
  • 2. AgendaAgenda ● What was the problem?What was the problem? ● Why so?Why so? ● How we resolved issue?How we resolved issue? ● Analysis ● Development ● Getting patch into upstreamGetting patch into upstream ● Question and AnswersQuestion and Answers
  • 3. What was the problem?What was the problem?
  • 4. What was the problem?What was the problem? ● Updating Glibc localedata from Unicode 5.1 to Unicode 7.0 ● /usr/share/i18n/locales/i18n (LC_CTYPE) ● /usr/share/i18n/charmaps/UTF-8.gz
  • 6. What were the issues?What were the issues? ● No Documentation. ● Risk of missing backward compatibility. ● No expert.
  • 7. How we resolved it?How we resolved it?
  • 8. How we resolved it?How we resolved it? AnalysisAnalysis ● Started gathering Changelog, Git logs for all changes happened over the time. Specific fixes. ● Found hints, information written in Localedata files. ● Comments on Bugzilla ● Unicode source files providing raw information for Glibc Localedata ● UnicodeData.txt ● DerivedCoreProperties.txt ● EastAsianWidth.txt
  • 9. How we resolved it?How we resolved it? Started with LC_CTYPE (i18n)Started with LC_CTYPE (i18n) ● Wrote script gen-unicode-ctype.py to update output generated from gen-unicode-ctype.c ● Backward Compatiblity ● This script was comparing existing data with newly generated and generating easy to understand report. ● Later Mike modify gen-unicode-ctype.py to deprecate gen-unicode-ctype.c ● Repeated same process for UTF-8 charmap and WIDTH.
  • 10. Patch prepared whatPatch prepared what next?next?
  • 11. Patch prepared what next?Patch prepared what next? ● Later Mike Fabian stepped into it. ● He reviewed scripts. Improved it. ● Glibc upstream further improved it. ● We proposed System wide change for Fedora 22
  • 12. Patch prepared what next?Patch prepared what next? ● Patch got committed in upstream Feb last week. ● Collaborative work from Me, Mike Fabian, Alexandre Oliva supported by Carlos and Jens Petersen ● Users will get this update through Fedora 22 and other upstream distros latest releases.
  • 14. ReferencesReferences ● https://github.com/pravins/glibc-i18n ● https://sourceware.org/bugzilla/show_bug.cgi?id=14094 ● https://fedoraproject.org/wiki/Changes/Glibc_Unicode_7 ● https://sourceware.org/git/?p=glibc.git;a=commit;h=4a4839c94a4c 93ffc0d5b95c69a08b02a57007f2