Commit 4ba09362 authored by Martijn Pieters's avatar Martijn Pieters

Clean up indentation and trailing whitespace.

parent a034b0a5
...@@ -64,4 +64,3 @@ class DebugLogger: ...@@ -64,4 +64,3 @@ class DebugLogger:
def log(*args): pass def log(*args): pass
...@@ -764,6 +764,3 @@ class FCGIPipe: ...@@ -764,6 +764,3 @@ class FCGIPipe:
#---------------------------------------------------------------------- #----------------------------------------------------------------------
...@@ -122,10 +122,3 @@ class FTPRequest(HTTPRequest): ...@@ -122,10 +122,3 @@ class FTPRequest(HTTPRequest):
if os.sep != '/': if os.sep != '/':
path=path.replace(os.sep,'/') path=path.replace(os.sep,'/')
return path return path
...@@ -308,4 +308,3 @@ def make_response(request, headers): ...@@ -308,4 +308,3 @@ def make_response(request, headers):
request.header).lower() request.header).lower()
response._server_version=request.channel.server.SERVER_IDENT response._server_version=request.channel.server.SERVER_IDENT
return response return response
...@@ -372,4 +372,3 @@ class zhttp_server(http_server): ...@@ -372,4 +372,3 @@ class zhttp_server(http_server):
# override asyncore limits for nt's listen queue size # override asyncore limits for nt's listen queue size
self.accepting = 1 self.accepting = 1
return self.socket.listen (num) return self.socket.listen (num)
...@@ -102,4 +102,3 @@ class file_close_producer: ...@@ -102,4 +102,3 @@ class file_close_producer:
file.close() file.close()
self.file=None self.file=None
return '' return ''
...@@ -35,4 +35,3 @@ def Wakeup(thunk=None): ...@@ -35,4 +35,3 @@ def Wakeup(thunk=None):
del socket_map[the_trigger._fileno] del socket_map[the_trigger._fileno]
the_trigger = simple_trigger() # adds itself back into socket_map the_trigger = simple_trigger() # adds itself back into socket_map
the_trigger.pull_trigger(thunk) the_trigger.pull_trigger(thunk)
...@@ -22,4 +22,3 @@ print '-'*78 ...@@ -22,4 +22,3 @@ print '-'*78
print 'Building extension modules' print 'Building extension modules'
do('%s setup.py build_ext -i' % sys.executable) do('%s setup.py build_ext -i' % sys.executable)
...@@ -29,7 +29,3 @@ def main(home, user='', group=''): ...@@ -29,7 +29,3 @@ def main(home, user='', group=''):
print 'creating default database' print 'creating default database'
open(db_path,'wb').write(open(dd_path,'rb').read()) open(db_path,'wb').write(open(dd_path,'rb').read())
ch(db_path, user, group) ch(db_path, user, group)
...@@ -39,4 +39,3 @@ INSTANCE_HOME=%(cwd)s ...@@ -39,4 +39,3 @@ INSTANCE_HOME=%(cwd)s
''' % vars()) ''' % vars())
ch(name, user, group, 0755) ch(name, user, group, 0755)
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# #
############################################################################## ##############################################################################
# Compatibility module # Compatibility module
# $Id: Xaq.py,v 1.2 2002/06/10 22:48:46 jeremy Exp $ # $Id: Xaq.py,v 1.3 2002/08/14 21:24:48 mj Exp $
import Acquisition import Acquisition
Acquirer = Acquisition.Explicit Acquirer = Acquisition.Explicit
...@@ -14,8 +14,8 @@ ...@@ -14,8 +14,8 @@
__doc__='''Examples from the Acquisition Algebra Presentation __doc__='''Examples from the Acquisition Algebra Presentation
$Id: test_AqAlg.py,v 1.4 2002/06/10 22:48:47 jeremy Exp $''' $Id: test_AqAlg.py,v 1.5 2002/08/14 21:24:48 mj Exp $'''
__version__='$Revision: 1.4 $'[11:-2] __version__='$Revision: 1.5 $'[11:-2]
import Acquisition import Acquisition
...@@ -99,4 +99,3 @@ def main(): ...@@ -99,4 +99,3 @@ def main():
if __name__=='__main__': if __name__=='__main__':
main() main()
...@@ -27,4 +27,3 @@ x=bar() ...@@ -27,4 +27,3 @@ x=bar()
hi=x.hi hi=x.hi
print type(hi) print type(hi)
hi(1,2,3,name='spam') hi(1,2,3,name='spam')
...@@ -30,4 +30,3 @@ try: ...@@ -30,4 +30,3 @@ try:
A().hi() A().hi()
raise 'Program error', 'spam' raise 'Program error', 'spam'
except AttributeError: pass except AttributeError: pass
...@@ -18,4 +18,3 @@ def pickle_complex(c): ...@@ -18,4 +18,3 @@ def pickle_complex(c):
return complex, (c.real, c.imag) return complex, (c.real, c.imag)
pickle(type(1j), pickle_complex, complex) pickle(type(1j), pickle_complex, complex)
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
# #
############################################################################## ##############################################################################
__version__='$Revision: 1.6 $'[11:-2] __version__='$Revision: 1.7 $'[11:-2]
import sha, binascii import sha, binascii
from binascii import b2a_base64, a2b_base64 from binascii import b2a_base64, a2b_base64
......
...@@ -12,8 +12,8 @@ ...@@ -12,8 +12,8 @@
############################################################################## ##############################################################################
'''Add security system support to Document Templates '''Add security system support to Document Templates
$Id: DTML.py,v 1.9 2001/11/28 15:50:51 matt Exp $''' $Id: DTML.py,v 1.10 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.9 $'[11:-2] __version__='$Revision: 1.10 $'[11:-2]
from DocumentTemplate import DT_Util from DocumentTemplate import DT_Util
import SecurityManagement, string, math, whrandom, random import SecurityManagement, string, math, whrandom, random
...@@ -127,4 +127,3 @@ class DTMLSecurityAPI: ...@@ -127,4 +127,3 @@ class DTMLSecurityAPI:
return r return r
DT_Util.TemplateDict.__dict__.update(DTMLSecurityAPI.__dict__) DT_Util.TemplateDict.__dict__.update(DTMLSecurityAPI.__dict__)
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
__doc__='''Support for owned objects __doc__='''Support for owned objects
$Id: Owned.py,v 1.17 2002/06/12 18:14:39 shane Exp $''' $Id: Owned.py,v 1.18 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.17 $'[11:-2] __version__='$Revision: 1.18 $'[11:-2]
import Globals, urlparse, SpecialUsers, ExtensionClass import Globals, urlparse, SpecialUsers, ExtensionClass
from AccessControl import getSecurityManager, Unauthorized from AccessControl import getSecurityManager, Unauthorized
...@@ -253,4 +253,3 @@ def ownerInfo(user, ...@@ -253,4 +253,3 @@ def ownerInfo(user,
path.reverse() path.reverse()
return path, uid return path, uid
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
__doc__='''short description __doc__='''short description
$Id: Permission.py,v 1.9 2001/12/13 14:24:26 andreasjung Exp $''' $Id: Permission.py,v 1.10 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.9 $'[11:-2] __version__='$Revision: 1.10 $'[11:-2]
import string, Products, Globals import string, Products, Globals
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
__doc__='''Objects that implement Permission-based roles. __doc__='''Objects that implement Permission-based roles.
$Id: PermissionRole.py,v 1.15 2001/12/13 14:24:41 andreasjung Exp $''' $Id: PermissionRole.py,v 1.16 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.15 $'[11:-2] __version__='$Revision: 1.16 $'[11:-2]
_use_python_impl = 0 _use_python_impl = 0
import os import os
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
############################################################################## ##############################################################################
"""Constant definitions for built-in Zope permissions""" """Constant definitions for built-in Zope permissions"""
__version__='$Revision: 1.4 $'[11:-2] __version__='$Revision: 1.5 $'[11:-2]
access_contents_information='Access contents information' access_contents_information='Access contents information'
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
############################################################################## ##############################################################################
"""Access control support""" """Access control support"""
__version__='$Revision: 1.54 $'[11:-2] __version__='$Revision: 1.55 $'[11:-2]
from Globals import DTMLFile, MessageDialog, Dictionary from Globals import DTMLFile, MessageDialog, Dictionary
...@@ -562,4 +562,3 @@ def gather_permissions(klass, result, seen): ...@@ -562,4 +562,3 @@ def gather_permissions(klass, result, seen):
seen[name]=None seen[name]=None
gather_permissions(base, result, seen) gather_permissions(base, result, seen)
return result return result
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
__doc__='''short description __doc__='''short description
$Id: SecurityManagement.py,v 1.6 2001/11/28 15:50:51 matt Exp $''' $Id: SecurityManagement.py,v 1.7 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.6 $'[11:-2] __version__='$Revision: 1.7 $'[11:-2]
def getSecurityManager(): def getSecurityManager():
"""Get a security manager, for the current thread. """Get a security manager, for the current thread.
...@@ -68,5 +68,3 @@ class SecurityContext: ...@@ -68,5 +68,3 @@ class SecurityContext:
self.stack=[] self.stack=[]
self.user=user self.user=user
self.objectCache = {} self.objectCache = {}
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
__doc__='''short description __doc__='''short description
$Id: SecurityManager.py,v 1.12 2001/12/13 14:23:44 andreasjung Exp $''' $Id: SecurityManager.py,v 1.13 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.12 $'[11:-2] __version__='$Revision: 1.13 $'[11:-2]
import ZopeSecurityPolicy, os import ZopeSecurityPolicy, os
......
...@@ -12,8 +12,8 @@ ...@@ -12,8 +12,8 @@
############################################################################## ##############################################################################
__doc__='''Collect rules for access to objects that don\'t have roles. __doc__='''Collect rules for access to objects that don\'t have roles.
$Id: SimpleObjectPolicies.py,v 1.11 2002/03/12 19:37:14 evan Exp $''' $Id: SimpleObjectPolicies.py,v 1.12 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.11 $'[11:-2] __version__='$Revision: 1.12 $'[11:-2]
_noroles=[] # this is imported from various places _noroles=[] # this is imported from various places
...@@ -58,4 +58,3 @@ def allow_type(Type, allowed=1): ...@@ -58,4 +58,3 @@ def allow_type(Type, allowed=1):
if not (isinstance(allowed, IntType) or isinstance(allowed, DictType)): if not (isinstance(allowed, IntType) or isinstance(allowed, DictType)):
raise ValueError, "The 'allowed' argument must be an int or dict." raise ValueError, "The 'allowed' argument must be an int or dict."
ContainerAssertions[Type] = allowed ContainerAssertions[Type] = allowed
...@@ -13,5 +13,5 @@ ...@@ -13,5 +13,5 @@
__doc__='''Place to find special users __doc__='''Place to find special users
This is needed to avoid a circular import problem. This is needed to avoid a circular import problem.
$Id: SpecialUsers.py,v 1.3 2001/11/28 15:50:52 matt Exp $''' $Id: SpecialUsers.py,v 1.4 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.3 $'[11:-2] __version__='$Revision: 1.4 $'[11:-2]
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
############################################################################## ##############################################################################
"""Access control package""" """Access control package"""
__version__='$Revision: 1.169 $'[11:-2] __version__='$Revision: 1.170 $'[11:-2]
import Globals, socket, SpecialUsers,re import Globals, socket, SpecialUsers,re
import os import os
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
# #
############################################################################## ##############################################################################
__version__='$Revision: 1.10 $'[11:-2] __version__='$Revision: 1.11 $'[11:-2]
from RestrictedPython.Guards import safe_builtins, _full_read_guard, \ from RestrictedPython.Guards import safe_builtins, _full_read_guard, \
full_write_guard full_write_guard
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
__doc__='''Define Zope\'s default security policy __doc__='''Define Zope\'s default security policy
$Id: ZopeSecurityPolicy.py,v 1.18 2002/01/11 17:14:27 evan Exp $''' $Id: ZopeSecurityPolicy.py,v 1.19 2002/08/14 21:29:07 mj Exp $'''
__version__='$Revision: 1.18 $'[11:-2] __version__='$Revision: 1.19 $'[11:-2]
_use_python_impl = 0 _use_python_impl = 0
......
...@@ -16,7 +16,7 @@ class ResultObject: ...@@ -16,7 +16,7 @@ class ResultObject:
""" result object used for keeping results from the """ result object used for keeping results from the
ZPublisher.Zope() calls ZPublisher.Zope() calls
$Id: ResultObject.py,v 1.3 2001/11/28 15:50:52 matt Exp $ $Id: ResultObject.py,v 1.4 2002/08/14 21:27:32 mj Exp $
""" """
def __str__(self,expected=-1,with_output=1): def __str__(self,expected=-1,with_output=1):
...@@ -36,4 +36,3 @@ class ResultObject: ...@@ -36,4 +36,3 @@ class ResultObject:
def __call__(self,expected=-1): def __call__(self,expected=-1):
return self.__str__(expected) return self.__str__(expected)
...@@ -39,7 +39,7 @@ __bobo_before__=AccessControl.SecurityManagement.noSecurityManager ...@@ -39,7 +39,7 @@ __bobo_before__=AccessControl.SecurityManagement.noSecurityManager
class SecurityBase(unittest.TestCase) : class SecurityBase(unittest.TestCase) :
""" Base class for all security tests """ Base class for all security tests
$Id: SecurityBase.py,v 1.6 2001/11/28 15:50:52 matt Exp $ $Id: SecurityBase.py,v 1.7 2002/08/14 21:27:32 mj Exp $
""" """
status_regex = re.compile("Status: ([0-9]{1,4}) (.*)",re.I)\ status_regex = re.compile("Status: ([0-9]{1,4}) (.*)",re.I)\
......
...@@ -42,5 +42,3 @@ if not sys.modules.has_key('Testing'): ...@@ -42,5 +42,3 @@ if not sys.modules.has_key('Testing'):
import Testing, unittest import Testing, unittest
execfile(os.path.join(os.path.split(Testing.__file__)[0], 'common.py')) execfile(os.path.join(os.path.split(Testing.__file__)[0], 'common.py'))
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
# #
############################################################################## ##############################################################################
# $Id: regressionSecurity.py,v 1.4 2001/11/28 15:50:52 matt Exp $ # $Id: regressionSecurity.py,v 1.5 2002/08/14 21:27:32 mj Exp $
import os, sys, unittest import os, sys, unittest
......
############################################################################## ##############################################################################
# #
# Copyright (c) 2001 Zope Corporation and Contributors. All Rights Reserved. # Copyright (c) 2001 Zope Corporation and Contributors. All Rights Reserved.
...@@ -17,8 +16,8 @@ To be removed together with the API in due time. ...@@ -17,8 +16,8 @@ To be removed together with the API in due time.
""" """
__rcs_id__='$Id: testDeprecatedAPI.py,v 1.3 2001/11/28 15:50:52 matt Exp $' __rcs_id__='$Id: testDeprecatedAPI.py,v 1.4 2002/08/14 21:28:08 mj Exp $'
__version__='$Revision: 1.3 $'[11:-2] __version__='$Revision: 1.4 $'[11:-2]
import ZODB # Sigh. Persistent needs to be set, so we import ZODB. import ZODB # Sigh. Persistent needs to be set, so we import ZODB.
from AccessControl import User from AccessControl import User
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
"""Module Import Tests """Module Import Tests
""" """
__rcs_id__='$Id: testModuleSecurity.py,v 1.2 2002/01/11 17:14:27 evan Exp $' __rcs_id__='$Id: testModuleSecurity.py,v 1.3 2002/08/14 21:28:08 mj Exp $'
__version__='$Revision: 1.2 $'[11:-2] __version__='$Revision: 1.3 $'[11:-2]
import os, sys, unittest import os, sys, unittest
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
"""Test of AuthEncoding """Test of AuthEncoding
""" """
__rcs_id__='$Id: testPasswordDigest.py,v 1.3 2001/11/28 15:50:52 matt Exp $' __rcs_id__='$Id: testPasswordDigest.py,v 1.4 2002/08/14 21:28:08 mj Exp $'
__version__='$Revision: 1.3 $'[11:-2] __version__='$Revision: 1.4 $'[11:-2]
import os, sys, unittest import os, sys, unittest
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
"""Tests of PermissionRole """Tests of PermissionRole
""" """
__rcs_id__='$Id: testPermissionRole.py,v 1.2 2001/11/28 15:50:52 matt Exp $' __rcs_id__='$Id: testPermissionRole.py,v 1.3 2002/08/14 21:28:08 mj Exp $'
__version__='$Revision: 1.2 $'[11:-2] __version__='$Revision: 1.3 $'[11:-2]
import os, sys, unittest import os, sys, unittest
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
"""Document Template Tests """Document Template Tests
""" """
__rcs_id__='$Id: testSecurity.py,v 1.9 2002/04/03 20:59:49 shane Exp $' __rcs_id__='$Id: testSecurity.py,v 1.10 2002/08/14 21:28:08 mj Exp $'
__version__='$Revision: 1.9 $'[11:-2] __version__='$Revision: 1.10 $'[11:-2]
import os, sys, unittest import os, sys, unittest
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
"""User folder tests """User folder tests
""" """
__rcs_id__='$Id: testUserFolder.py,v 1.4 2001/11/28 15:50:52 matt Exp $' __rcs_id__='$Id: testUserFolder.py,v 1.5 2002/08/14 21:28:08 mj Exp $'
__version__='$Revision: 1.4 $'[11:-2] __version__='$Revision: 1.5 $'[11:-2]
import os, sys, unittest import os, sys, unittest
......
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
"""Tests of ZopeSecurityPolicy """Tests of ZopeSecurityPolicy
""" """
__rcs_id__='$Id: testZopeSecurityPolicy.py,v 1.4 2002/01/11 17:14:27 evan Exp $' __rcs_id__='$Id: testZopeSecurityPolicy.py,v 1.5 2002/08/14 21:28:08 mj Exp $'
__version__='$Revision: 1.4 $'[11:-2] __version__='$Revision: 1.5 $'[11:-2]
import os, sys, unittest import os, sys, unittest
...@@ -255,4 +255,3 @@ def main(): ...@@ -255,4 +255,3 @@ def main():
if __name__ == '__main__': if __name__ == '__main__':
main() main()
...@@ -31,4 +31,3 @@ class Unauthorized(zExceptions.Unauthorized): ...@@ -31,4 +31,3 @@ class Unauthorized(zExceptions.Unauthorized):
c = getattr(v, '__class__', type(v)) c = getattr(v, '__class__', type(v))
c = getattr(c, '__name__', 'object') c = getattr(c, '__name__', 'object')
return "a particular %s" % c return "a particular %s" % c
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
# #
############################################################################## ##############################################################################
__doc__="""System management components""" __doc__="""System management components"""
__version__='$Revision: 1.80 $'[11:-2] __version__='$Revision: 1.81 $'[11:-2]
import sys,os,time,Globals, Acquisition, os, Undo import sys,os,time,Globals, Acquisition, os, Undo
...@@ -441,4 +441,3 @@ class ApplicationManager(Folder,CacheManager): ...@@ -441,4 +441,3 @@ class ApplicationManager(Folder,CacheManager):
self._objects = tuple(lst) self._objects = tuple(lst)
return Folder.objectIds(self, spec) return Folder.objectIds(self, spec)
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
__doc__='''Cache management support __doc__='''Cache management support
$Id: CacheManager.py,v 1.25 2002/06/10 20:20:43 shane Exp $''' $Id: CacheManager.py,v 1.26 2002/08/14 21:31:40 mj Exp $'''
__version__='$Revision: 1.25 $'[11:-2] __version__='$Revision: 1.26 $'[11:-2]
import Globals, time, sys import Globals, time, sys
from DateTime import DateTime from DateTime import DateTime
...@@ -362,4 +362,3 @@ class CacheManager: ...@@ -362,4 +362,3 @@ class CacheManager:
Globals.default__class_init__(CacheManager) Globals.default__class_init__(CacheManager)
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
"""Commonly used utility functions.""" """Commonly used utility functions."""
__version__='$Revision: 1.14 $'[11:-2] __version__='$Revision: 1.15 $'[11:-2]
import sys, os, time import sys, os, time
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
# #
############################################################################## ##############################################################################
__version__ = "$Revision: 1.7 $"[11:-2] __version__ = "$Revision: 1.8 $"[11:-2]
import OFS, Acquisition, Globals import OFS, Acquisition, Globals
from AccessControl import getSecurityManager, ClassSecurityInfo from AccessControl import getSecurityManager, ClassSecurityInfo
......
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
target='_top') target='_top')
</PRE>""" </PRE>"""
__version__='$Revision: 1.7 $'[11:-2] __version__='$Revision: 1.8 $'[11:-2]
from Globals import HTML from Globals import HTML
......
...@@ -14,8 +14,8 @@ __doc__='''Standard routines for handling extensions. ...@@ -14,8 +14,8 @@ __doc__='''Standard routines for handling extensions.
Extensions currently include external methods and pluggable brains. Extensions currently include external methods and pluggable brains.
$Id: Extensions.py,v 1.18 2002/02/07 17:37:10 andreasjung Exp $''' $Id: Extensions.py,v 1.19 2002/08/14 21:31:40 mj Exp $'''
__version__='$Revision: 1.18 $'[11:-2] __version__='$Revision: 1.19 $'[11:-2]
import os, zlib, rotor, imp import os, zlib, rotor, imp
import Products import Products
......
...@@ -12,8 +12,8 @@ ...@@ -12,8 +12,8 @@
############################################################################## ##############################################################################
__doc__='''Factory objects __doc__='''Factory objects
$Id: Factory.py,v 1.25 2001/11/28 15:50:52 matt Exp $''' $Id: Factory.py,v 1.26 2002/08/14 21:31:40 mj Exp $'''
__version__='$Revision: 1.25 $'[11:-2] __version__='$Revision: 1.26 $'[11:-2]
import OFS.SimpleItem, Acquisition, Globals, AccessControl.Role import OFS.SimpleItem, Acquisition, Globals, AccessControl.Role
import Products, Product import Products, Product
...@@ -112,4 +112,3 @@ class Factory( ...@@ -112,4 +112,3 @@ class Factory(
) )
class ProductFactory(Factory): pass class ProductFactory(Factory): pass
...@@ -109,5 +109,3 @@ class ofWrapper(ExtensionClass.Base): ...@@ -109,5 +109,3 @@ class ofWrapper(ExtensionClass.Base):
self._o=o self._o=o
def __of__(self, parent): return self.__dict__['_o'] def __of__(self, parent): return self.__dict__['_o']
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
"""Commonly used utility functions.""" """Commonly used utility functions."""
__version__='$Revision: 1.10 $'[11:-2] __version__='$Revision: 1.11 $'[11:-2]
import os, sys, Products import os, sys, Products
from Common import package_home, realpath from Common import package_home, realpath
......
...@@ -57,4 +57,3 @@ def beforeApplyHotfix(id, req_major, req_minor, req_micro): ...@@ -57,4 +57,3 @@ def beforeApplyHotfix(id, req_major, req_minor, req_micro):
apply_hotfix = APPLY apply_hotfix = APPLY
logHotfix(id, apply_hotfix) logHotfix(id, apply_hotfix)
return apply_hotfix return apply_hotfix
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
############################################################################## ##############################################################################
"""Image object that is stored in a file""" """Image object that is stored in a file"""
__version__='$Revision: 1.17 $'[11:-2] __version__='$Revision: 1.18 $'[11:-2]
from OFS.content_types import guess_content_type from OFS.content_types import guess_content_type
from Globals import package_home from Globals import package_home
...@@ -100,4 +100,3 @@ class ImageFile(Acquisition.Explicit): ...@@ -100,4 +100,3 @@ class ImageFile(Acquisition.Explicit):
def __str__(self): def __str__(self):
return '<img src="%s" alt="" />' % self.__name__ return '<img src="%s" alt="" />' % self.__name__
...@@ -13,9 +13,9 @@ ...@@ -13,9 +13,9 @@
"""Standard management interface support """Standard management interface support
$Id: Management.py,v 1.60 2002/04/12 19:45:33 Brian Exp $""" $Id: Management.py,v 1.61 2002/08/14 21:31:40 mj Exp $"""
__version__='$Revision: 1.60 $'[11:-2] __version__='$Revision: 1.61 $'[11:-2]
import sys, Globals, ExtensionClass, urllib import sys, Globals, ExtensionClass, urllib
from Dialogs import MessageDialog from Dialogs import MessageDialog
......
...@@ -12,8 +12,8 @@ ...@@ -12,8 +12,8 @@
############################################################################## ##############################################################################
__doc__='''Zope registerable permissions __doc__='''Zope registerable permissions
$Id: Permission.py,v 1.7 2001/11/28 15:50:52 matt Exp $''' $Id: Permission.py,v 1.8 2002/08/14 21:31:40 mj Exp $'''
__version__='$Revision: 1.7 $'[11:-2] __version__='$Revision: 1.8 $'[11:-2]
import OFS.SimpleItem, Acquisition, Globals, ExtensionClass, AccessControl.Role import OFS.SimpleItem, Acquisition, Globals, ExtensionClass, AccessControl.Role
...@@ -89,4 +89,3 @@ class PermissionManager(ExtensionClass.Base): ...@@ -89,4 +89,3 @@ class PermissionManager(ExtensionClass.Base):
self._setObject(id,i) self._setObject(id,i)
if REQUEST is not None: if REQUEST is not None:
return self.manage_main(self,REQUEST,update_menu=1) return self.manage_main(self,REQUEST,update_menu=1)
...@@ -333,5 +333,3 @@ class ProductContext: ...@@ -333,5 +333,3 @@ class ProductContext:
continue continue
ht=APIHelpTopic.APIHelpTopic(file, '', os.path.join(path, file)) ht=APIHelpTopic.APIHelpTopic(file, '', os.path.join(path, file))
self.registerHelpTopic(file, ht) self.registerHelpTopic(file, ht)
...@@ -175,5 +175,3 @@ class ProductRegistry(ProductRegistryMixin): ...@@ -175,5 +175,3 @@ class ProductRegistry(ProductRegistryMixin):
return setattr(self, name, v) return setattr(self, name, v)
else: else:
raise AttributeError, name raise AttributeError, name
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
############################################################################## ##############################################################################
''' '''
Functions for refreshing products. Functions for refreshing products.
$Id: RefreshFuncs.py,v 1.5 2002/06/16 01:56:00 shane Exp $ $Id: RefreshFuncs.py,v 1.6 2002/08/14 21:31:40 mj Exp $
''' '''
import os, sys import os, sys
...@@ -329,4 +329,3 @@ def setupAutoRefresh(jar): ...@@ -329,4 +329,3 @@ def setupAutoRefresh(jar):
connection_open_hooks.append(autoRefresh) connection_open_hooks.append(autoRefresh)
# Init mod times. # Init mod times.
checkAutoRefresh(jar) checkAutoRefresh(jar)
...@@ -12,8 +12,8 @@ ...@@ -12,8 +12,8 @@
############################################################################## ##############################################################################
__doc__='''short description __doc__='''short description
$Id: Undo.py,v 1.30 2002/02/08 18:58:23 andreasjung Exp $''' $Id: Undo.py,v 1.31 2002/08/14 21:31:40 mj Exp $'''
__version__='$Revision: 1.30 $'[11:-2] __version__='$Revision: 1.31 $'[11:-2]
import Globals, ExtensionClass import Globals, ExtensionClass
from DateTime import DateTime from DateTime import DateTime
......
...@@ -192,4 +192,3 @@ class DTMLFile(Bindings, Explicit, ClassicHTMLFile): ...@@ -192,4 +192,3 @@ class DTMLFile(Bindings, Explicit, ClassicHTMLFile):
HTMLFile = ClassicHTMLFile HTMLFile = ClassicHTMLFile
...@@ -12,8 +12,8 @@ ...@@ -12,8 +12,8 @@
############################################################################## ##############################################################################
__doc__='''Simple module for writing tar files __doc__='''Simple module for writing tar files
$Id: tar.py,v 1.5 2002/02/07 17:37:10 andreasjung Exp $''' $Id: tar.py,v 1.6 2002/08/14 21:31:41 mj Exp $'''
__version__='$Revision: 1.5 $'[11:-2] __version__='$Revision: 1.6 $'[11:-2]
import sys, time, zlib import sys, time, zlib
try: try:
......
...@@ -73,4 +73,3 @@ def getZopeVersion(): ...@@ -73,4 +73,3 @@ def getZopeVersion():
""" """
_prep_version_data() _prep_version_data()
return _zope_version return _zope_version
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
############################################################################## ##############################################################################
"""Encapsulation of date/time values""" """Encapsulation of date/time values"""
__version__='$Revision: 1.78 $'[11:-2] __version__='$Revision: 1.79 $'[11:-2]
import re,sys, os, math, DateTimeZone import re,sys, os, math, DateTimeZone
...@@ -1671,6 +1671,3 @@ class strftimeFormatter: ...@@ -1671,6 +1671,3 @@ class strftimeFormatter:
def Timezones(): def Timezones():
"""Return the list of recognized timezone names""" """Return the list of recognized timezone names"""
return _cache._zlst return _cache._zlst
# To run these tests, use: # To run these tests, use:
# python unittest.py DateTime.tests.suite # python unittest.py DateTime.tests.suite
......
...@@ -269,5 +269,3 @@ def trim_doc_string(text): ...@@ -269,5 +269,3 @@ def trim_doc_string(text):
for line in lines[1:]: for line in lines[1:]:
nlines.append(line[min_indent:]) nlines.append(line[min_indent:])
return '\n'.join(nlines) return '\n'.join(nlines)
...@@ -255,4 +255,3 @@ class ImageTopic(HelpTopic): ...@@ -255,4 +255,3 @@ class ImageTopic(HelpTopic):
def SearchableText(self): def SearchableText(self):
"The full text of the Help Topic, for indexing purposes" "The full text of the Help Topic, for indexing purposes"
return '' return ''
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
############################################################################## ##############################################################################
"""Help system support module""" """Help system support module"""
__version__='$Revision: 1.11 $'[11:-2] __version__='$Revision: 1.12 $'[11:-2]
import Globals, Acquisition import Globals, Acquisition
...@@ -418,10 +418,3 @@ def _chAttribute(name, ob): ...@@ -418,10 +418,3 @@ def _chAttribute(name, ob):
if name[0]=='_': if name[0]=='_':
return 0 return 0
return 1 return 1
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
############################################################################## ##############################################################################
"""Object Reference implementation""" """Object Reference implementation"""
__version__='$Revision: 1.9 $'[11:-2] __version__='$Revision: 1.10 $'[11:-2]
import sys, os, Globals, Acquisition import sys, os, Globals, Acquisition
...@@ -140,4 +140,3 @@ class ObjectRef(HelpBase): ...@@ -140,4 +140,3 @@ class ObjectRef(HelpBase):
def __getitem__(self, key): def __getitem__(self, key):
return self.__dict__[key].__of__(self) return self.__dict__[key].__of__(self)
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: Attribute.py,v 1.4 2002/06/11 15:34:28 chrism Exp $ $Id: Attribute.py,v 1.5 2002/08/14 21:35:32 mj Exp $
""" """
from _Element import Element from _Element import Element
...@@ -27,5 +27,3 @@ class Attribute(Element): ...@@ -27,5 +27,3 @@ class Attribute(Element):
# infrastructure in place. # infrastructure in place.
# #
#__implements__ = IAttribute #__implements__ = IAttribute
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: Mapping.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: Mapping.py,v 1.3 2002/08/14 21:35:33 mj Exp $
""" """
from Interface import Interface from Interface import Interface
......
...@@ -11,4 +11,3 @@ ...@@ -11,4 +11,3 @@
# FOR A PARTICULAR PURPOSE. # FOR A PARTICULAR PURPOSE.
# #
############################################################################## ##############################################################################
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: BaseTestMapping.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: BaseTestMapping.py,v 1.3 2002/08/14 21:35:33 mj Exp $
""" """
from operator import __getitem__ from operator import __getitem__
......
...@@ -11,4 +11,3 @@ ...@@ -11,4 +11,3 @@
# FOR A PARTICULAR PURPOSE. # FOR A PARTICULAR PURPOSE.
# #
############################################################################## ##############################################################################
...@@ -17,7 +17,7 @@ This module provides a function, asStructuredText, for rendering an ...@@ -17,7 +17,7 @@ This module provides a function, asStructuredText, for rendering an
interface as structured text. interface as structured text.
Revision information: Revision information:
$Id: Document.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: Document.py,v 1.3 2002/08/14 21:35:32 mj Exp $
""" """
from string import maketrans from string import maketrans
...@@ -116,11 +116,3 @@ def _justify_and_indent(text, level, munge=0, width=72): ...@@ -116,11 +116,3 @@ def _justify_and_indent(text, level, munge=0, width=72):
lines.append( (" " * level) + line) lines.append( (" " * level) + line)
return '\n'.join(lines) return '\n'.join(lines)
...@@ -61,4 +61,3 @@ class BadImplements(TypeError): ...@@ -61,4 +61,3 @@ class BadImplements(TypeError):
because it doesn't contain an interface or a sequence of valid because it doesn't contain an interface or a sequence of valid
implementation assertions. implementation assertions.
""" """
...@@ -14,11 +14,10 @@ ...@@ -14,11 +14,10 @@
""" """
Revision information: Revision information:
$Id: IAttribute.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: IAttribute.py,v 1.3 2002/08/14 21:35:32 mj Exp $
""" """
from IElement import IElement from IElement import IElement
class IAttribute(IElement): class IAttribute(IElement):
"""Attribute descriptors""" """Attribute descriptors"""
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: IElement.py,v 1.4 2002/06/11 15:34:28 chrism Exp $ $Id: IElement.py,v 1.5 2002/08/14 21:35:32 mj Exp $
""" """
from _Interface import Interface from _Interface import Interface
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: IInterface.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: IInterface.py,v 1.3 2002/08/14 21:35:32 mj Exp $
""" """
from IElement import IElement from IElement import IElement
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: IMethod.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: IMethod.py,v 1.3 2002/08/14 21:35:32 mj Exp $
""" """
from IAttribute import IAttribute from IAttribute import IAttribute
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
"""Implemantation assertion facilities. """Implemantation assertion facilities.
Revision information: Revision information:
$Id: Implements.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: Implements.py,v 1.3 2002/08/14 21:35:32 mj Exp $
""" """
import Exceptions import Exceptions
...@@ -156,4 +156,3 @@ def implements(klass, interface, check=1): ...@@ -156,4 +156,3 @@ def implements(klass, interface, check=1):
klass.__implements__ = interface klass.__implements__ = interface
else: else:
klass.__implements__ = old, interface klass.__implements__ = old, interface
import Basic, Util import Basic, Util
class Mapping(Basic.Base): class Mapping(Basic.Base):
...@@ -79,4 +78,3 @@ class Sequential(Sequence): ...@@ -79,4 +78,3 @@ class Sequential(Sequence):
Util.assertTypeImplements(type(()), (Sequence, Sized, Basic.HashKey)) Util.assertTypeImplements(type(()), (Sequence, Sized, Basic.HashKey))
Util.assertTypeImplements(type([]), (Sequence, Sized, MutableMapping)) Util.assertTypeImplements(type([]), (Sequence, Sized, MutableMapping))
Util.assertTypeImplements(type({}), (Mapping, Sized, MutableMapping)) Util.assertTypeImplements(type({}), (Mapping, Sized, MutableMapping))
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
"""Method interfaces """Method interfaces
Revision information: Revision information:
$Id: Method.py,v 1.11 2002/06/11 15:34:28 chrism Exp $ $Id: Method.py,v 1.12 2002/08/14 21:35:32 mj Exp $
""" """
import Exceptions import Exceptions
from Attribute import Attribute from Attribute import Attribute
...@@ -104,28 +104,3 @@ def fromFunction(func, interface='', imlevel=0): ...@@ -104,28 +104,3 @@ def fromFunction(func, interface='', imlevel=0):
def fromMethod(meth, interface=''): def fromMethod(meth, interface=''):
func = meth.im_func func = meth.im_func
return fromFunction(func, interface, imlevel=1) return fromFunction(func, interface, imlevel=1)
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: _Element.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: _Element.py,v 1.3 2002/08/14 21:35:32 mj Exp $
""" """
from _object import object from _object import object
...@@ -57,4 +57,3 @@ class Element(object): ...@@ -57,4 +57,3 @@ class Element(object):
def setTaggedValue(self, tag, value): def setTaggedValue(self, tag, value):
""" Associates 'value' with 'key'. """ """ Associates 'value' with 'key'. """
self.__tagged_values[tag] = value self.__tagged_values[tag] = value
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
"""Interface object implementation """Interface object implementation
Revision information: Revision information:
$Id: _Interface.py,v 1.4 2002/06/11 15:34:28 chrism Exp $ $Id: _Interface.py,v 1.5 2002/08/14 21:35:32 mj Exp $
""" """
from _InterfaceClass import Interface as InterfaceClass from _InterfaceClass import Interface as InterfaceClass
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
"""Interface object implementation """Interface object implementation
Revision information: Revision information:
$Id: _InterfaceClass.py,v 1.5 2002/06/11 15:34:28 chrism Exp $ $Id: _InterfaceClass.py,v 1.6 2002/08/14 21:35:32 mj Exp $
""" """
from inspect import currentframe from inspect import currentframe
......
...@@ -64,10 +64,9 @@ There is also a script, pyself.py in the package that can be used to ...@@ -64,10 +64,9 @@ There is also a script, pyself.py in the package that can be used to
create interface skeletins. Run it without arguments to get documentation. create interface skeletins. Run it without arguments to get documentation.
Revision information: Revision information:
$Id: __init__.py,v 1.8 2002/06/11 15:34:28 chrism Exp $ $Id: __init__.py,v 1.9 2002/08/14 21:35:32 mj Exp $
""" """
from _Interface import Interface from _Interface import Interface
from Attribute import Attribute from Attribute import Attribute
Base = Interface # XXX We need to stamp out Base usage Base = Interface # XXX We need to stamp out Base usage
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
############################################################################## ##############################################################################
"""Provide a halfway believable rendition of Python 2.2's object """Provide a halfway believable rendition of Python 2.2's object
$Id: _object.py,v 1.3 2002/06/10 20:15:14 shane Exp $ $Id: _object.py,v 1.4 2002/08/14 21:35:32 mj Exp $
""" """
class _x: class _x:
...@@ -56,4 +56,3 @@ else: ...@@ -56,4 +56,3 @@ else:
ClassTypes += (type(_x), ) ClassTypes += (type(_x), )
MethodTypes += (type(_x.m), ) MethodTypes += (type(_x.m), )
""" Pretty-Print an Interface object as structured text (Yum) """ """ Pretty-Print an Interface object as structured text (Yum) """
import string import string
...@@ -80,10 +79,3 @@ def interface_as_stx(I, munge=0): ...@@ -80,10 +79,3 @@ def interface_as_stx(I, munge=0):
outp = outp + justify_and_indent(trim_doc_string(item), level, munge) + "\n\n" outp = outp + justify_and_indent(trim_doc_string(item), level, munge) + "\n\n"
return outp return outp
...@@ -25,7 +25,7 @@ Example: ...@@ -25,7 +25,7 @@ Example:
The dotted name is the module name and interface object name connected The dotted name is the module name and interface object name connected
with a dot. with a dot.
Revision information: $Id: pyskel.py,v 1.5 2002/07/09 12:14:42 gvanrossum Exp $ Revision information: $Id: pyskel.py,v 1.6 2002/08/14 21:35:32 mj Exp $
""" """
import sys, os, re import sys, os, re
...@@ -187,5 +187,3 @@ def getAttributesInOrder(interface, order): ...@@ -187,5 +187,3 @@ def getAttributesInOrder(interface, order):
if __name__ == '__main__': if __name__ == '__main__':
for a in sys.argv[1:]: for a in sys.argv[1:]:
skel(a) skel(a)
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: testDocument.py,v 1.4 2002/06/11 15:34:28 chrism Exp $ $Id: testDocument.py,v 1.5 2002/08/14 21:35:33 mj Exp $
""" """
from unittest import TestCase, TestSuite, main, makeSuite from unittest import TestCase, TestSuite, main, makeSuite
......
...@@ -144,4 +144,3 @@ def main(): ...@@ -144,4 +144,3 @@ def main():
if __name__=="__main__": if __name__=="__main__":
main() main()
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
""" """
Revision information: Revision information:
$Id: testVerify.py,v 1.2 2002/06/07 17:18:29 jim Exp $ $Id: testVerify.py,v 1.3 2002/08/14 21:35:33 mj Exp $
""" """
from __future__ import nested_scopes from __future__ import nested_scopes
......
...@@ -64,4 +64,3 @@ class DebugLogger: ...@@ -64,4 +64,3 @@ class DebugLogger:
def log(*args): pass def log(*args): pass
...@@ -764,6 +764,3 @@ class FCGIPipe: ...@@ -764,6 +764,3 @@ class FCGIPipe:
#---------------------------------------------------------------------- #----------------------------------------------------------------------
...@@ -122,10 +122,3 @@ class FTPRequest(HTTPRequest): ...@@ -122,10 +122,3 @@ class FTPRequest(HTTPRequest):
if os.sep != '/': if os.sep != '/':
path=path.replace(os.sep,'/') path=path.replace(os.sep,'/')
return path return path
...@@ -308,4 +308,3 @@ def make_response(request, headers): ...@@ -308,4 +308,3 @@ def make_response(request, headers):
request.header).lower() request.header).lower()
response._server_version=request.channel.server.SERVER_IDENT response._server_version=request.channel.server.SERVER_IDENT
return response return response
...@@ -372,4 +372,3 @@ class zhttp_server(http_server): ...@@ -372,4 +372,3 @@ class zhttp_server(http_server):
# override asyncore limits for nt's listen queue size # override asyncore limits for nt's listen queue size
self.accepting = 1 self.accepting = 1
return self.socket.listen (num) return self.socket.listen (num)
...@@ -102,4 +102,3 @@ class file_close_producer: ...@@ -102,4 +102,3 @@ class file_close_producer:
file.close() file.close()
self.file=None self.file=None
return '' return ''
...@@ -35,4 +35,3 @@ def Wakeup(thunk=None): ...@@ -35,4 +35,3 @@ def Wakeup(thunk=None):
del socket_map[the_trigger._fileno] del socket_map[the_trigger._fileno]
the_trigger = simple_trigger() # adds itself back into socket_map the_trigger = simple_trigger() # adds itself back into socket_map
the_trigger.pull_trigger(thunk) the_trigger.pull_trigger(thunk)
...@@ -63,4 +63,3 @@ if __name__ == '__main__': ...@@ -63,4 +63,3 @@ if __name__ == '__main__':
else: else:
from string import joinfields from string import joinfields
spew(joinfields(sys.argv[1:],' ')) spew(joinfields(sys.argv[1:],' '))
...@@ -343,4 +343,3 @@ def fixpickle(p, oid): ...@@ -343,4 +343,3 @@ def fixpickle(p, oid):
p=newp.getvalue() p=newp.getvalue()
return p return p
...@@ -330,4 +330,3 @@ def main(argv): ...@@ -330,4 +330,3 @@ def main(argv):
forgive=1, export=export) forgive=1, export=export)
if __name__=='__main__': main(sys.argv[1:]) if __name__=='__main__': main(sys.argv[1:])
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
""" script to consistency of a ZCatalog """ """ script to consistency of a ZCatalog """
__version__='$Revision: 1.4 $'[11:-2] __version__='$Revision: 1.5 $'[11:-2]
import Zope import Zope
import os,sys,re,getopt import os,sys,re,getopt
......
...@@ -89,4 +89,3 @@ def main(): ...@@ -89,4 +89,3 @@ def main():
pos=pos+tlen pos=pos+tlen
if __name__=='__main__': main() if __name__=='__main__': main()
...@@ -300,5 +300,3 @@ upload_jpg=upload_gif ...@@ -300,5 +300,3 @@ upload_jpg=upload_gif
upload_png=upload_gif upload_png=upload_gif
if __name__=='__main__': main() if __name__=='__main__': main()
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
""" Request log profiler script """ """ Request log profiler script """
__version__='$Revision: 1.16 $'[11:-2] __version__='$Revision: 1.17 $'[11:-2]
import string, sys, time, getopt, tempfile, math, cPickle import string, sys, time, getopt, tempfile, math, cPickle
try: import gzip try: import gzip
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment