comparison env/lib/python3.7/site-packages/bleach-3.1.4.dist-info/METADATA @ 2:6af9afd405e9 draft

"planemo upload commit 0a63dd5f4d38a1f6944587f52a8cd79874177fc1"
author shellac
date Thu, 14 May 2020 14:56:58 -0400
parents 26e78fe6e8c4
children
comparison
equal deleted inserted replaced
1:75ca89e9b81c 2:6af9afd405e9
1 Metadata-Version: 2.1
2 Name: bleach
3 Version: 3.1.4
4 Summary: An easy safelist-based HTML-sanitizing tool.
5 Home-page: https://github.com/mozilla/bleach
6 Maintainer: Will Kahn-Greene
7 Maintainer-email: willkg@mozilla.com
8 License: Apache Software License
9 Platform: UNKNOWN
10 Classifier: Development Status :: 5 - Production/Stable
11 Classifier: Environment :: Web Environment
12 Classifier: Intended Audience :: Developers
13 Classifier: License :: OSI Approved :: Apache Software License
14 Classifier: Operating System :: OS Independent
15 Classifier: Programming Language :: Python
16 Classifier: Programming Language :: Python :: 2
17 Classifier: Programming Language :: Python :: 2.7
18 Classifier: Programming Language :: Python :: 3
19 Classifier: Programming Language :: Python :: 3.5
20 Classifier: Programming Language :: Python :: 3.6
21 Classifier: Programming Language :: Python :: 3.7
22 Classifier: Programming Language :: Python :: 3.8
23 Classifier: Programming Language :: Python :: Implementation :: CPython
24 Classifier: Programming Language :: Python :: Implementation :: PyPy
25 Classifier: Topic :: Software Development :: Libraries :: Python Modules
26 Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*
27 Requires-Dist: six (>=1.9.0)
28 Requires-Dist: webencodings
29
30 ======
31 Bleach
32 ======
33
34 .. image:: https://travis-ci.org/mozilla/bleach.svg?branch=master
35 :target: https://travis-ci.org/mozilla/bleach
36
37 .. image:: https://badge.fury.io/py/bleach.svg
38 :target: http://badge.fury.io/py/bleach
39
40 Bleach is an allowed-list-based HTML sanitizing library that escapes or strips
41 markup and attributes.
42
43 Bleach can also linkify text safely, applying filters that Django's ``urlize``
44 filter cannot, and optionally setting ``rel`` attributes, even on links already
45 in the text.
46
47 Bleach is intended for sanitizing text from *untrusted* sources. If you find
48 yourself jumping through hoops to allow your site administrators to do lots of
49 things, you're probably outside the use cases. Either trust those users, or
50 don't.
51
52 Because it relies on html5lib_, Bleach is as good as modern browsers at dealing
53 with weird, quirky HTML fragments. And *any* of Bleach's methods will fix
54 unbalanced or mis-nested tags.
55
56 The version on GitHub_ is the most up-to-date and contains the latest bug
57 fixes. You can find full documentation on `ReadTheDocs`_.
58
59 :Code: https://github.com/mozilla/bleach
60 :Documentation: https://bleach.readthedocs.io/
61 :Issue tracker: https://github.com/mozilla/bleach/issues
62 :License: Apache License v2; see LICENSE file
63
64
65 Reporting Bugs
66 ==============
67
68 For regular bugs, please report them `in our issue tracker
69 <https://github.com/mozilla/bleach/issues>`_.
70
71 If you believe that you've found a security vulnerability, please `file a secure
72 bug report in our bug tracker
73 <https://bugzilla.mozilla.org/enter_bug.cgi?assigned_to=nobody%40mozilla.org&product=Webtools&component=Bleach-security&groups=webtools-security>`_
74 or send an email to *security AT mozilla DOT org*.
75
76 For more information on security-related bug disclosure and the PGP key to use
77 for sending encrypted mail or to verify responses received from that address,
78 please read our wiki page at
79 `<https://www.mozilla.org/en-US/security/#For_Developers>`_.
80
81
82 Security
83 ========
84
85 Bleach is a security-focused library.
86
87 We have a responsible security vulnerability reporting process. Please use
88 that if you're reporting a security issue.
89
90 Security issues are fixed in private. After we land such a fix, we'll do a
91 release.
92
93 For every release, we mark security issues we've fixed in the ``CHANGES`` in
94 the **Security issues** section. We include any relevant CVE links.
95
96
97 Installing Bleach
98 =================
99
100 Bleach is available on PyPI_, so you can install it with ``pip``::
101
102 $ pip install bleach
103
104
105 Upgrading Bleach
106 ================
107
108 .. warning::
109
110 Before doing any upgrades, read through `Bleach Changes
111 <https://bleach.readthedocs.io/en/latest/changes.html>`_ for backwards
112 incompatible changes, newer versions, etc.
113
114
115 Basic use
116 =========
117
118 The simplest way to use Bleach is:
119
120 .. code-block:: python
121
122 >>> import bleach
123
124 >>> bleach.clean('an <script>evil()</script> example')
125 u'an &lt;script&gt;evil()&lt;/script&gt; example'
126
127 >>> bleach.linkify('an http://example.com url')
128 u'an <a href="http://example.com" rel="nofollow">http://example.com</a> url'
129
130
131 Code of Conduct
132 ===============
133
134 This project and repository is governed by Mozilla's code of conduct and
135 etiquette guidelines. For more details please see the `CODE_OF_CONDUCT.md
136 </CODE_OF_CONDUCT.md>`_
137
138
139 .. _html5lib: https://github.com/html5lib/html5lib-python
140 .. _GitHub: https://github.com/mozilla/bleach
141 .. _ReadTheDocs: https://bleach.readthedocs.io/
142 .. _PyPI: https://pypi.org/project/bleach/
143
144
145 Bleach changes
146 ==============
147
148 Version 3.1.4 (March 24th, 2020)
149 --------------------------------
150
151 **Security fixes**
152
153 * ``bleach.clean`` behavior parsing style attributes could result in a
154 regular expression denial of service (ReDoS).
155
156 Calls to ``bleach.clean`` with an allowed tag with an allowed
157 ``style`` attribute were vulnerable to ReDoS. For example,
158 ``bleach.clean(..., attributes={'a': ['style']})``.
159
160 This issue was confirmed in Bleach versions v3.1.3, v3.1.2, v3.1.1,
161 v3.1.0, v3.0.0, v2.1.4, and v2.1.3. Earlier versions used a similar
162 regular expression and should be considered vulnerable too.
163
164 Anyone using Bleach <=v3.1.3 is encouraged to upgrade.
165
166 https://bugzilla.mozilla.org/show_bug.cgi?id=1623633
167
168 **Backwards incompatible changes**
169
170 * Style attributes with dashes, or single or double quoted values are
171 cleaned instead of passed through.
172
173 **Features**
174
175 None
176
177 **Bug fixes**
178
179 None
180
181 Version 3.1.3 (March 17th, 2020)
182 --------------------------------
183
184 **Security fixes**
185
186 None
187
188 **Backwards incompatible changes**
189
190 None
191
192 **Features**
193
194 * Add relative link to code of conduct. (#442)
195
196 * Drop deprecated 'setup.py test' support. (#507)
197
198 * Fix typo: curren -> current in tests/test_clean.py (#504)
199
200 * Test on PyPy 7
201
202 * Drop test support for end of life Python 3.4
203
204 **Bug fixes**
205
206 None
207
208 Version 3.1.2 (March 11th, 2020)
209 --------------------------------
210
211 **Security fixes**
212
213 * ``bleach.clean`` behavior parsing embedded MathML and SVG content
214 with RCDATA tags did not match browser behavior and could result in
215 a mutation XSS.
216
217 Calls to ``bleach.clean`` with ``strip=False`` and ``math`` or
218 ``svg`` tags and one or more of the RCDATA tags ``script``,
219 ``noscript``, ``style``, ``noframes``, ``iframe``, ``noembed``, or
220 ``xmp`` in the allowed tags whitelist were vulnerable to a mutation
221 XSS.
222
223 This security issue was confirmed in Bleach version v3.1.1. Earlier
224 versions are likely affected too.
225
226 Anyone using Bleach <=v3.1.1 is encouraged to upgrade.
227
228 https://bugzilla.mozilla.org/show_bug.cgi?id=1621692
229
230 **Backwards incompatible changes**
231
232 None
233
234 **Features**
235
236 None
237
238 **Bug fixes**
239
240 None
241
242 Version 3.1.1 (February 13th, 2020)
243 -----------------------------------
244
245 **Security fixes**
246
247 * ``bleach.clean`` behavior parsing ``noscript`` tags did not match
248 browser behavior.
249
250 Calls to ``bleach.clean`` allowing ``noscript`` and one or more of
251 the raw text tags (``title``, ``textarea``, ``script``, ``style``,
252 ``noembed``, ``noframes``, ``iframe``, and ``xmp``) were vulnerable
253 to a mutation XSS.
254
255 This security issue was confirmed in Bleach versions v2.1.4, v3.0.2,
256 and v3.1.0. Earlier versions are probably affected too.
257
258 Anyone using Bleach <=v3.1.0 is highly encouraged to upgrade.
259
260 https://bugzilla.mozilla.org/show_bug.cgi?id=1615315
261
262 **Backwards incompatible changes**
263
264 None
265
266 **Features**
267
268 None
269
270 **Bug fixes**
271
272 None
273
274 Bleach changes
275 ==============
276
277 Version 3.1.0 (January 9th, 2019)
278 ---------------------------------
279
280 **Security fixes**
281
282 None
283
284 **Backwards incompatible changes**
285
286 None
287
288 **Features**
289
290 * Add ``recognized_tags`` argument to the linkify ``Linker`` class. This
291 fixes issues when linkifying on its own and having some tags get escaped.
292 It defaults to a list of HTML5 tags. Thank you, Chad Birch! (#409)
293
294 **Bug fixes**
295
296 * Add ``six>=1.9`` to requirements. Thank you, Dave Shawley (#416)
297
298 * Fix cases where attribute names could have invalid characters in them.
299 (#419)
300
301 * Fix problems with ``LinkifyFilter`` not being able to match links
302 across ``&amp;``. (#422)
303
304 * Fix ``InputStreamWithMemory`` when the ``BleachHTMLParser`` is
305 parsing ``meta`` tags. (#431)
306
307 * Fix doctests. (#357)
308
309
310 Version 3.0.2 (October 11th, 2018)
311 ----------------------------------
312
313 **Security fixes**
314
315 None
316
317 **Backwards incompatible changes**
318
319 None
320
321 **Features**
322
323 None
324
325 **Bug fixes**
326
327 * Merge ``Characters`` tokens after sanitizing them. This fixes issues in the
328 ``LinkifyFilter`` where it was only linkifying parts of urls. (#374)
329
330
331 Version 3.0.1 (October 9th, 2018)
332 ---------------------------------
333
334 **Security fixes**
335
336 None
337
338 **Backwards incompatible changes**
339
340 None
341
342 **Features**
343
344 * Support Python 3.7. It supported Python 3.7 just fine, but we added 3.7 to
345 the list of Python environments we test so this is now officially supported.
346 (#377)
347
348 **Bug fixes**
349
350 * Fix ``list`` object has no attribute ``lower`` in ``clean``. (#398)
351 * Fix ``abbr`` getting escaped in ``linkify``. (#400)
352
353
354 Version 3.0.0 (October 3rd, 2018)
355 ---------------------------------
356
357 **Security fixes**
358
359 None
360
361 **Backwards incompatible changes**
362
363 * A bunch of functions were moved from one module to another.
364
365 These were moved from ``bleach.sanitizer`` to ``bleach.html5lib_shim``:
366
367 * ``convert_entity``
368 * ``convert_entities``
369 * ``match_entity``
370 * ``next_possible_entity``
371 * ``BleachHTMLSerializer``
372 * ``BleachHTMLTokenizer``
373 * ``BleachHTMLParser``
374
375 These functions and classes weren't documented and aren't part of the
376 public API, but people read code and might be using them so we're
377 considering it an incompatible API change.
378
379 If you're using them, you'll need to update your code.
380
381 **Features**
382
383 * Bleach no longer depends on html5lib. html5lib==1.0.1 is now vendored into
384 Bleach. You can remove it from your requirements file if none of your other
385 requirements require html5lib.
386
387 This means Bleach will now work fine with other libraries that depend on
388 html5lib regardless of what version of html5lib they require. (#386)
389
390 **Bug fixes**
391
392 * Fixed tags getting added when using clean or linkify. This was a
393 long-standing regression from the Bleach 2.0 rewrite. (#280, #392)
394
395 * Fixed ``<isindex>`` getting replaced with a string. Now it gets escaped or
396 stripped depending on whether it's in the allowed tags or not. (#279)
397
398
399 Version 2.1.4 (August 16th, 2018)
400 ---------------------------------
401
402 **Security fixes**
403
404 None
405
406 **Backwards incompatible changes**
407
408 * Dropped support for Python 3.3. (#328)
409
410 **Features**
411
412 None
413
414 **Bug fixes**
415
416 * Handle ambiguous ampersands in correctly. (#359)
417
418
419 Version 2.1.3 (March 5th, 2018)
420 -------------------------------
421
422 **Security fixes**
423
424 * Attributes that have URI values weren't properly sanitized if the
425 values contained character entities. Using character entities, it
426 was possible to construct a URI value with a scheme that was not
427 allowed that would slide through unsanitized.
428
429 This security issue was introduced in Bleach 2.1. Anyone using
430 Bleach 2.1 is highly encouraged to upgrade.
431
432 https://bugzilla.mozilla.org/show_bug.cgi?id=1442745
433
434 **Backwards incompatible changes**
435
436 None
437
438 **Features**
439
440 None
441
442 **Bug fixes**
443
444 * Fixed some other edge cases for attribute URI value sanitizing and
445 improved testing of this code.
446
447
448 Version 2.1.2 (December 7th, 2017)
449 ----------------------------------
450
451 **Security fixes**
452
453 None
454
455 **Backwards incompatible changes**
456
457 None
458
459 **Features**
460
461 None
462
463 **Bug fixes**
464
465 * Support html5lib-python 1.0.1. (#337)
466
467 * Add deprecation warning for supporting html5lib-python < 1.0.
468
469 * Switch to semver.
470
471
472 Version 2.1.1 (October 2nd, 2017)
473 ---------------------------------
474
475 **Security fixes**
476
477 None
478
479 **Backwards incompatible changes**
480
481 None
482
483 **Features**
484
485 None
486
487 **Bug fixes**
488
489 * Fix ``setup.py`` opening files when ``LANG=``. (#324)
490
491
492 Version 2.1 (September 28th, 2017)
493 ----------------------------------
494
495 **Security fixes**
496
497 * Convert control characters (backspace particularly) to "?" preventing
498 malicious copy-and-paste situations. (#298)
499
500 See `<https://github.com/mozilla/bleach/issues/298>`_ for more details.
501
502 This affects all previous versions of Bleach. Check the comments on that
503 issue for ways to alleviate the issue if you can't upgrade to Bleach 2.1.
504
505
506 **Backwards incompatible changes**
507
508 * Redid versioning. ``bleach.VERSION`` is no longer available. Use the string
509 version at ``bleach.__version__`` and parse it with
510 ``pkg_resources.parse_version``. (#307)
511
512 * clean, linkify: linkify and clean should only accept text types; thank you,
513 Janusz! (#292)
514
515 * clean, linkify: accept only unicode or utf-8-encoded str (#176)
516
517
518 **Features**
519
520
521 **Bug fixes**
522
523 * ``bleach.clean()`` no longer unescapes entities including ones that are missing
524 a ``;`` at the end which can happen in urls and other places. (#143)
525
526 * linkify: fix http links inside of mailto links; thank you, sedrubal! (#300)
527
528 * clarify security policy in docs (#303)
529
530 * fix dependency specification for html5lib 1.0b8, 1.0b9, and 1.0b10; thank you,
531 Zoltán! (#268)
532
533 * add Bleach vs. html5lib comparison to README; thank you, Stu Cox! (#278)
534
535 * fix KeyError exceptions on tags without href attr; thank you, Alex Defsen!
536 (#273)
537
538 * add test website and scripts to test ``bleach.clean()`` output in browser;
539 thank you, Greg Guthe!
540
541
542 Version 2.0 (March 8th, 2017)
543 -----------------------------
544
545 **Security fixes**
546
547 * None
548
549
550 **Backwards incompatible changes**
551
552 * Removed support for Python 2.6. #206
553
554 * Removed support for Python 3.2. #224
555
556 * Bleach no longer supports html5lib < 0.99999999 (8 9s).
557
558 This version is a rewrite to use the new sanitizing API since the old
559 one was dropped in html5lib 0.99999999 (8 9s).
560
561 If you're using 0.9999999 (7 9s) upgrade to 0.99999999 (8 9s) or higher.
562
563 If you're using 1.0b8 (equivalent to 0.9999999 (7 9s)), upgrade to 1.0b9
564 (equivalent to 0.99999999 (8 9s)) or higher.
565
566 * ``bleach.clean`` and friends were rewritten
567
568 ``clean`` was reimplemented as an html5lib filter and happens at a different
569 step in the HTML parsing -> traversing -> serializing process. Because of
570 that, there are some differences in clean's output as compared with previous
571 versions.
572
573 Amongst other things, this version will add end tags even if the tag in
574 question is to be escaped.
575
576 * ``bleach.clean`` and friends attribute callables now take three arguments:
577 tag, attribute name and attribute value. Previously they only took attribute
578 name and attribute value.
579
580 All attribute callables will need to be updated.
581
582 * ``bleach.linkify`` was rewritten
583
584 ``linkify`` was reimplemented as an html5lib Filter. As such, it no longer
585 accepts a ``tokenizer`` argument.
586
587 The callback functions for adjusting link attributes now takes a namespaced
588 attribute.
589
590 Previously you'd do something like this::
591
592 def check_protocol(attrs, is_new):
593 if not attrs.get('href', '').startswith('http:', 'https:')):
594 return None
595 return attrs
596
597 Now it's more like this::
598
599 def check_protocol(attrs, is_new):
600 if not attrs.get((None, u'href'), u'').startswith(('http:', 'https:')):
601 # ^^^^^^^^^^^^^^^
602 return None
603 return attrs
604
605 Further, you need to make sure you're always using unicode values. If you
606 don't then html5lib will raise an assertion error that the value is not
607 unicode.
608
609 All linkify filters will need to be updated.
610
611 * ``bleach.linkify`` and friends had a ``skip_pre`` argument--that's been
612 replaced with a more general ``skip_tags`` argument.
613
614 Before, you might do::
615
616 bleach.linkify(some_text, skip_pre=True)
617
618 The equivalent with Bleach 2.0 is::
619
620 bleach.linkify(some_text, skip_tags=['pre'])
621
622 You can skip other tags, too, like ``style`` or ``script`` or other places
623 where you don't want linkification happening.
624
625 All uses of linkify that use ``skip_pre`` will need to be updated.
626
627
628 **Changes**
629
630 * Supports Python 3.6.
631
632 * Supports html5lib >= 0.99999999 (8 9s).
633
634 * There's a ``bleach.sanitizer.Cleaner`` class that you can instantiate with your
635 favorite clean settings for easy reuse.
636
637 * There's a ``bleach.linkifier.Linker`` class that you can instantiate with your
638 favorite linkify settings for easy reuse.
639
640 * There's a ``bleach.linkifier.LinkifyFilter`` which is an htm5lib filter that
641 you can pass as a filter to ``bleach.sanitizer.Cleaner`` allowing you to clean
642 and linkify in one pass.
643
644 * ``bleach.clean`` and friends can now take a callable as an attributes arg value.
645
646 * Tons of bug fixes.
647
648 * Cleaned up tests.
649
650 * Documentation fixes.
651
652
653 Version 1.5 (November 4th, 2016)
654 --------------------------------
655
656 **Security fixes**
657
658 * None
659
660 **Backwards incompatible changes**
661
662 * clean: The list of ``ALLOWED_PROTOCOLS`` now defaults to http, https and
663 mailto.
664
665 Previously it was a long list of protocols something like ed2k, ftp, http,
666 https, irc, mailto, news, gopher, nntp, telnet, webcal, xmpp, callto, feed,
667 urn, aim, rsync, tag, ssh, sftp, rtsp, afs, data. #149
668
669 **Changes**
670
671 * clean: Added ``protocols`` to arguments list to let you override the list of
672 allowed protocols. Thank you, Andreas Malecki! #149
673
674 * linkify: Fix a bug involving periods at the end of an email address. Thank you,
675 Lorenz Schori! #219
676
677 * linkify: Fix linkification of non-ascii ports. Thank you Alexandre, Macabies!
678 #207
679
680 * linkify: Fix linkify inappropriately removing node tails when dropping nodes.
681 #132
682
683 * Fixed a test that failed periodically. #161
684
685 * Switched from nose to py.test. #204
686
687 * Add test matrix for all supported Python and html5lib versions. #230
688
689 * Limit to html5lib ``>=0.999,!=0.9999,!=0.99999,<0.99999999`` because 0.9999
690 and 0.99999 are busted.
691
692 * Add support for ``python setup.py test``. #97
693
694
695 Version 1.4.3 (May 23rd, 2016)
696 ------------------------------
697
698 **Security fixes**
699
700 * None
701
702 **Changes**
703
704 * Limit to html5lib ``>=0.999,<0.99999999`` because of impending change to
705 sanitizer api. #195
706
707
708 Version 1.4.2 (September 11, 2015)
709 ----------------------------------
710
711 **Changes**
712
713 * linkify: Fix hang in linkify with ``parse_email=True``. #124
714
715 * linkify: Fix crash in linkify when removing a link that is a first-child. #136
716
717 * Updated TLDs.
718
719 * linkify: Don't remove exterior brackets when linkifying. #146
720
721
722 Version 1.4.1 (December 15, 2014)
723 ---------------------------------
724
725 **Changes**
726
727 * Consistent order of attributes in output.
728
729 * Python 3.4 support.
730
731
732 Version 1.4 (January 12, 2014)
733 ------------------------------
734
735 **Changes**
736
737 * linkify: Update linkify to use etree type Treewalker instead of simpletree.
738
739 * Updated html5lib to version ``>=0.999``.
740
741 * Update all code to be compatible with Python 3 and 2 using six.
742
743 * Switch to Apache License.
744
745
746 Version 1.3
747 -----------
748
749 * Used by Python 3-only fork.
750
751
752 Version 1.2.2 (May 18, 2013)
753 ----------------------------
754
755 * Pin html5lib to version 0.95 for now due to major API break.
756
757
758 Version 1.2.1 (February 19, 2013)
759 ---------------------------------
760
761 * ``clean()`` no longer considers ``feed:`` an acceptable protocol due to
762 inconsistencies in browser behavior.
763
764
765 Version 1.2 (January 28, 2013)
766 ------------------------------
767
768 * ``linkify()`` has changed considerably. Many keyword arguments have been
769 replaced with a single callbacks list. Please see the documentation for more
770 information.
771
772 * Bleach will no longer consider unacceptable protocols when linkifying.
773
774 * ``linkify()`` now takes a tokenizer argument that allows it to skip
775 sanitization.
776
777 * ``delinkify()`` is gone.
778
779 * Removed exception handling from ``_render``. ``clean()`` and ``linkify()`` may
780 now throw.
781
782 * ``linkify()`` correctly ignores case for protocols and domain names.
783
784 * ``linkify()`` correctly handles markup within an <a> tag.
785
786
787 Version 1.1.5
788 -------------
789
790
791 Version 1.1.4
792 -------------
793
794
795 Version 1.1.3 (July 10, 2012)
796 -----------------------------
797
798 * Fix parsing bare URLs when parse_email=True.
799
800
801 Version 1.1.2 (June 1, 2012)
802 ----------------------------
803
804 * Fix hang in style attribute sanitizer. (#61)
805
806 * Allow ``/`` in style attribute values.
807
808
809 Version 1.1.1 (February 17, 2012)
810 ---------------------------------
811
812 * Fix tokenizer for html5lib 0.9.5.
813
814
815 Version 1.1.0 (October 24, 2011)
816 --------------------------------
817
818 * ``linkify()`` now understands port numbers. (#38)
819
820 * Documented character encoding behavior. (#41)
821
822 * Add an optional target argument to ``linkify()``.
823
824 * Add ``delinkify()`` method. (#45)
825
826 * Support subdomain whitelist for ``delinkify()``. (#47, #48)
827
828
829 Version 1.0.4 (September 2, 2011)
830 ---------------------------------
831
832 * Switch to SemVer git tags.
833
834 * Make ``linkify()`` smarter about trailing punctuation. (#30)
835
836 * Pass ``exc_info`` to logger during rendering issues.
837
838 * Add wildcard key for attributes. (#19)
839
840 * Make ``linkify()`` use the ``HTMLSanitizer`` tokenizer. (#36)
841
842 * Fix URLs wrapped in parentheses. (#23)
843
844 * Make ``linkify()`` UTF-8 safe. (#33)
845
846
847 Version 1.0.3 (June 14, 2011)
848 -----------------------------
849
850 * ``linkify()`` works with 3rd level domains. (#24)
851
852 * ``clean()`` supports vendor prefixes in style values. (#31, #32)
853
854 * Fix ``linkify()`` email escaping.
855
856
857 Version 1.0.2 (June 6, 2011)
858 ----------------------------
859
860 * ``linkify()`` supports email addresses.
861
862 * ``clean()`` supports callables in attributes filter.
863
864
865 Version 1.0.1 (April 12, 2011)
866 ------------------------------
867
868 * ``linkify()`` doesn't drop trailing slashes. (#21)
869 * ``linkify()`` won't linkify 'libgl.so.1'. (#22)
870
871