the "protocols" modules in the various framework wrappers should be hidden

Issue #25 resolved
Ronald Oussoren
repo owner created an issue

The "protocols" modules in framework wrappers only contain informal protocol objects, even when there is a formal protocol with the same name.

Informal protocol objects aren't useful for end-users anyway and should be hidden (with the new lazy modules the informal protocols don't have to be visible at all).


  1. Document that users should always use objc.protocolNamed

  2. Deprecate the protocols submodules in pyobjc 2.5 (likely documentation only, I'm not sure if I can generate deprecation warnings for them because the module objects are created in code)

  3. Remove the protocols submodules in pyobjc 3.0

Comments (4)

  1. Ronald Oussoren reporter
    • changed version to 3.0


    • Added deprecation notice to the documentation for PyObjC 2.5

    • Will change wrapper code to use warnings.warn in PyObjC 2.6

    • Will remove the module in 3.0

  2. Ronald Oussoren reporter

    Explicitly mention that 'Foundation.protocols' (and similar modules in other wrappers) are deprecated

    See issue #25 for more information. I'll add a call to warnings.warn in PyObjC 2.6, and then remove these modules in PyObjC 3.0.

    → <<cset 19e5fba60e9c>>

  3. Log in to comment