<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body><div>Hello,<br /><br />The current version of reportlab has a mandatory dependency on a library called "chardet" for guessing character encodings.<br />Chardet is released under the LGPL. This is a more restrictive license than the BSD license used by reportlab. It effectively prohibits using reportlab to those unable to comply with the lgpl. <br /><br />There is another popular library for addressing the character encodings called charset_normalizer (https://pypi.org/project/charset-normalizer/), which is released under a more permissive MIT license. It offers a compatibility interface with chardet, such that the only code changes required should be switching the module name. According to the author's tests, charset_normalizer also runs faster and supports more encodings. As a proxy for general popularity, according to https://piptrends.com/compare/charset-normalizer-vs-chardet, charset_normalizer is  downloaded approximately ten times more frequently than chardet. <br /><br />Would there be any openness to swapping out the dependency? <br /><br />Thanks<br />Josiah Kane</div><div dir="ltr" style="mso-line-height-rule:exactly;-webkit-text-size-adjust:100%;font-size:1px;direction:ltr;"><table dir="ltr" cellpadding="0" cellspacing="0" border="0" style="width:100%;direction:ltr;border-collapse:collapse;font-size:1px;"><tr style="font-size:0;"><td align="left" style="vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;"><tr style="font-size:0;"><td align="left" style="padding:15px 0 0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;"><tr style="font-size:0;"><td align="left" style="padding:0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="width:100%;border-collapse:collapse;font-size:0;"><tr style="font-size:0;"><td align="left" style="vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;color:#000001;font-style:normal;font-weight:700;white-space:nowrap;"><tr style="font-size:12px;"><td align="left" style="vertical-align:top;font-family:Arial;">Josiah Kane</td></tr></table></td></tr><tr style="font-size:0;"><td align="left" style="vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;color:#000001;font-style:normal;font-weight:400;white-space:nowrap;"><tr style="font-size:12px;"><td align="left" style="padding:5px 0 0;vertical-align:top;font-family:Arial;">Principal Algorithm Engineer</td></tr></table></td></tr></table></td></tr><tr style="font-size:0;"><td align="left" style="padding:0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;"><tr style="font-size:0;"><td align="left" style="padding:10px 0 0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;color:#599CD4;font-style:normal;font-weight:400;white-space:nowrap;"><tr style="font-size:12px;"><td align="left" style="padding:0;vertical-align:top;font-family:Arial;"><a href="mailto:josiah.kane@refeyn.com" target="_blank" id="LPlnk689713" style="text-decoration:none;color:#599CD4;">josiah.kane@refeyn.com</a></td></tr></table></td></tr></table></td></tr><tr style="font-size:0;"><td align="left" style="padding:0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="width:100%;border-collapse:collapse;font-size:0;color:#000001;font-style:normal;font-weight:400;white-space:nowrap;"><tr style="font-size:12px;"><td align="left" style="vertical-align:top;font-family:Arial;">+447474509563</td></tr><tr style="font-size:0;"><td align="left" style="vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;color:#000001;font-style:normal;font-weight:400;white-space:nowrap;"><tr style="font-size:12px;"><td align="left" style="padding:5px 0 0;vertical-align:top;font-family:Arial;">+44 (0)1865 203956 </td></tr></table></td></tr></table></td></tr><tr style="font-size:0;"><td align="left" style="padding:0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;color:#000001;font-style:normal;font-weight:400;white-space:nowrap;"><tr style="font-size:12px;"><td align="left" style="padding:10px 0 0;vertical-align:top;font-family:Arial,sans-serif;"><span style="background-color:#FFFFFF;">Refeyn Ltd, Unit 9, Trade City Oxford, Sandy Lane West<span style="color:#5893C1;">, </span>Oxford, OX4 6FF, UK</span><br /></td></tr></table></td></tr><tr style="font-size:0;"><td align="left" style="padding:5px 0 0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;color:#599CD4;font-style:normal;font-weight:400;white-space:nowrap;"><tr style="font-size:12px;"><td align="left" style="vertical-align:top;font-family:Arial,sans-serif;"><span style="background-color:#FFFFFF;"><a href="https://uk.content.exclaimer.net/?url=https%3A%2F%2Fwww.refeyn.com%2F&tenantid=AQkrWuu_EeunrSgYeLFIdQ&templateid=c6b433fd9589ec1194f6281878b13d33&excomponentid=RuzmAq81hBj3yYDP6DaAzfQqcRY6qFcJwVx9fsHHiX8&excomponenttype=Link&signature=oFGOcoeh5GI83uiN2C6Qb_4rvU9KEfUnEHYaetzdySF4jo06iMZT9S4qqupYxYbckt2T_f2qNFy5pQzm-HmD7U-kWlp_e7R72BG7AMNckGMn6eRBkNBNnUSj1mw-eNrJQB_KrFkk-n_OE3yQkwqWz91BKh4zvX6rf7QiFU0KX8T2ZcQntSq-u0ANKRwbqXDOEF599g0tpvqVmKL8AdfM70_rKM0nWUPwTGTcvnVOSS6J2_hvAdNIViMUa24ZpjBKSkDsUrfSQRRBfdDyMywy36znKeS-aoz2IjGAHtgc1LEtmmXOdEGa_ojjSJpt7RoiAa8D-xuNR0YWK27Dsgwp2A&v=1&imprintMessageId=d2fbc6be-6a49-48bb-850f-adec3d4041e6" target="_blank" id="LPlnk689713" title="Refeyn" style="text-decoration:none;color:#599CD4;">www.refeyn.com</a></span><br /></td><td align="left" style="vertical-align:top;font-size:0;"><table cellpadding="0" cellspacing="0" border="0" style="border-collapse:collapse;font-size:0;color:#599CD4;font-style:normal;font-weight:400;white-space:nowrap;"><tr style="font-size:12px;"><td align="left" style="padding:0 5px;vertical-align:top;font-family:Arial,sans-serif;">•<br /></td></tr></table></td><td align="left" style="vertical-align:top;font-family:Arial,sans-serif;"><a href="https://uk.content.exclaimer.net/?url=https%3A%2F%2Ftwitter.com%2Frefeynit&tenantid=AQkrWuu_EeunrSgYeLFIdQ&templateid=c6b433fd9589ec1194f6281878b13d33&excomponentid=HHhalHtbPJi5FUZraKBPUYPF2yOB2jLd1oQf78dKBVw&excomponenttype=Link&signature=EI-JrPcz3zgzcOmr4lFRDLlnaq1FrGHUcDf0tca2_5YnRSAcpzgmJ0jSkwDxV_QBIKivqdzj7cnwmh4Lts51KVi0WDvCZMA6O6a4DUjMx1twZYDHHw4Loh6iaUq-DGdOTs33704VZlY99hxEpkMuGZfhFeFRo7s5ta5ihV3CYGAhvPbsZ2wXM4mHdyTLBIr_9sH7LoL4sXzGKkq4l-ChqDbHvCuj3UMcuaznzhpFnma75hFHdqK14S7gQcBVrvYdHcEwwCwVeonaCR-UtwkNttJ0082x06zeZnOde6MmTl_GkpI2qdF_XjQONzMKi0nmyFK_cN2nopW63fS4HQYVNw&v=1&imprintMessageId=d2fbc6be-6a49-48bb-850f-adec3d4041e6" target="_blank" id="LPlnk689713" title="Refeyn Twitter" style="text-decoration:none;color:#599CD4;">@refeynit</a><br /></td></tr></table></td></tr><tr style="font-size:0;line-height:normal;"><td align="left" style="padding:0;vertical-align:top;"><a href="https://uk.content.exclaimer.net/?url=https%3A%2F%2Fwww.refeyn.com%2F&tenantid=AQkrWuu_EeunrSgYeLFIdQ&templateid=c6b433fd9589ec1194f6281878b13d33&excomponentid=sm_02o2TiMz4pQ81Sh99mCn5co5bwcqjALo7vu-7oeA&excomponenttype=Image&signature=oFGOcoeh5GI83uiN2C6Qb_4rvU9KEfUnEHYaetzdySF4jo06iMZT9S4qqupYxYbckt2T_f2qNFy5pQzm-HmD7U-kWlp_e7R72BG7AMNckGMn6eRBkNBNnUSj1mw-eNrJQB_KrFkk-n_OE3yQkwqWz91BKh4zvX6rf7QiFU0KX8T2ZcQntSq-u0ANKRwbqXDOEF599g0tpvqVmKL8AdfM70_rKM0nWUPwTGTcvnVOSS6J2_hvAdNIViMUa24ZpjBKSkDsUrfSQRRBfdDyMywy36znKeS-aoz2IjGAHtgc1LEtmmXOdEGa_ojjSJpt7RoiAa8D-xuNR0YWK27Dsgwp2A&v=1&imprintMessageId=d2fbc6be-6a49-48bb-850f-adec3d4041e6" target="_blank" id="LPlnk689713" style="text-decoration:none;"><img src="cid:image041176.png@5DB019D8.5F4A42D3" width="700" height="175" border="0" alt="" style="width:700px;min-width:700px;max-width:700px;height:175px;min-height:175px;max-height:175px;font-size:0;" /></a></td></tr><tr style="font-size:0;"><td align="left" style="padding:0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="width:100%;border-collapse:collapse;font-size:0;"><tr style="font-size:0;"><td align="left" style="vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="width:100%;border-collapse:collapse;font-size:0;"><tr style="font-size:0;"><td align="left" style="padding:10px 0 0;vertical-align:top;"><table cellpadding="0" cellspacing="0" border="0" style="white-space:normal;color:#000001;font-size:16px;font-family:Arial;font-weight:400;font-style:normal;text-align:justify;width:100%;border-collapse:collapse;"><tr style="font-size:10.67px;"><td style="font-family:Arial,sans-serif;">Refeyn has a zero-tolerance policy towards sexual harassment, including by third parties. We insist that third parties treat our Employees professionally and with respect. Sexual harassment will not be tolerated and any complaint of sexual harassment by a third party will be fully investigated. In the interest of employee safety, we may pause all dealings with the third party until the investigation has been concluded. <br />​<br />​Refeyn Ltd is a company registered in England & Wales with company number 11333643 and its registered address at c/o Penningtons Manches, Oxford Business Park, 9400 Garsington Road, Oxford, Oxfordshire, United Kingdom, OX4 2HN. This message is intended only for the use of the person(s) ("the Intended Recipient") to whom it is addressed. It may contain information that is privileged and confidential within the meaning of the applicable law. Accordingly any dissemination, distribution, copying or other use of this message or any of its content by any person other than the Intended Recipient may constitute a breach of civil or criminal law and is strictly prohibited. If you are not the Intended Recipient please contact the sender as soon as possible.<br />  <br /> Please consider the environment before printing this email.<br /></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table><span style="font-family:remialcxesans;"> <span style="font-family:'template-_TO0xomVEeyU9igYeLE9Mw';"> </span><span style="font-family:'zone-1';"> </span><span style="font-family:'zones-AQ';"> </span></span></div></body></html>