• R David Murray's avatar
    #14731: refactor email policy framework. · c27e5226
    R David Murray yazdı
    This patch primarily does two things: (1) it adds some internal-interface
    methods to Policy that allow for Policy to control the parsing and folding of
    headers in such a way that we can construct a backward compatibility policy
    that is 100% compatible with the 3.2 API, while allowing a new policy to
    implement the email6 API.  (2) it adds that backward compatibility policy and
    refactors the test suite so that the only differences between the 3.2
    test_email.py file and the 3.3 test_email.py file is some small changes in
    test framework and the addition of tests for bugs fixed that apply to the 3.2
    API.
    
    There are some additional teaks, such as moving just the code needed for the
    compatibility policy into _policybase, so that the library code can import
    only _policybase.  That way the new code that will be added for email6
    will only get imported when a non-compatibility policy is imported.
    c27e5226
architecture.rst 9.33 KB