-
Notifications
You must be signed in to change notification settings - Fork 101
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Patch zope.interface to remove docstrings and avoid publishing.
From Products.PloneHotfix20161129. Moved patch_persistent to the new 'patches' folder.
- Loading branch information
1 parent
117f676
commit 2a40e64
Showing
6 changed files
with
110 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# Import all patches. | ||
import persistence | ||
import publishing | ||
|
||
# Have the patches been applied yet? | ||
_patched = False | ||
|
||
|
||
def apply_patches(): | ||
global _patched | ||
if _patched: | ||
return | ||
_patched = True | ||
|
||
persistence.apply_patches() | ||
publishing.apply_patches() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# Has this patch been applied yet? | ||
_patched = False | ||
|
||
|
||
def apply_patches(): | ||
global _patched | ||
if _patched: | ||
return | ||
_patched = True | ||
|
||
from Persistence import Persistent | ||
from AccessControl.class_init import InitializeClass | ||
Persistent.__class_init__ = InitializeClass |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
# -*- coding: utf-8 -*- | ||
|
||
|
||
def delete_method_docstring(klass, method_name): | ||
# Delete the docstring from the class method. | ||
# Objects must have a docstring to be published. | ||
# So this avoids them getting published. | ||
method = getattr(klass, method_name, None) | ||
if (method is not None and hasattr(method, 'im_func') and | ||
hasattr(method.im_func, '__doc__')): | ||
del method.im_func.__doc__ | ||
|
||
|
||
element_methods = [ | ||
'getDoc', | ||
'getName', | ||
'getTaggedValue', | ||
'getTaggedValueTags', | ||
'queryTaggedValue', | ||
'setTaggedValue', | ||
] | ||
interface_methods = [ | ||
'changed', | ||
'dependents', | ||
'direct', | ||
'extends', | ||
'get', | ||
'getBases', | ||
'getDescriptionFor', | ||
'implementedBy', | ||
'interfaces', | ||
'isEqualOrExtendedBy', | ||
'isOrExtends', | ||
'names', | ||
'namesAndDescriptions', | ||
'providedBy', | ||
'queryDescriptionFor', | ||
'subscribe', | ||
'unsubscribe', | ||
'validateInvariants', | ||
'weakref', | ||
] | ||
|
||
# Has this patch been applied yet? | ||
_patched = False | ||
|
||
|
||
def apply_patches(): | ||
global _patched | ||
if _patched: | ||
return | ||
_patched = True | ||
|
||
from zope.interface import Attribute | ||
from zope.interface import Interface | ||
from zope.interface.interface import Element | ||
from zope.interface.interface import Method | ||
|
||
for klass in [Element, Attribute, Interface, Method]: | ||
try: | ||
del klass.__doc__ | ||
except: | ||
pass | ||
for method_name in element_methods: | ||
delete_method_docstring(klass, method_name) | ||
|
||
for method_name in interface_methods: | ||
delete_method_docstring(Interface, method_name) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters