[Checkins] SVN: zc.form/trunk/ Got rid of ``zope.app.form`` dependency by requiring at least ``zope.formlib`` 4.0.

Michael Howitz mh at gocept.com
Thu Sep 22 10:54:56 EST 2011


Log message for revision 122897:
  Got rid of ``zope.app.form`` dependency by requiring at least ``zope.formlib`` 4.0.
  
  

Changed:
  U   zc.form/trunk/CHANGES.txt
  U   zc.form/trunk/setup.py
  U   zc.form/trunk/src/zc/form/README.txt
  U   zc.form/trunk/src/zc/form/browser/combinationwidget.py
  U   zc.form/trunk/src/zc/form/browser/combinationwidget.txt
  U   zc.form/trunk/src/zc/form/browser/configure.zcml
  U   zc.form/trunk/src/zc/form/browser/exceptionviews.py
  U   zc.form/trunk/src/zc/form/browser/exceptionviews.txt
  U   zc.form/trunk/src/zc/form/browser/ftesting.zcml
  U   zc.form/trunk/src/zc/form/browser/ftests.py
  U   zc.form/trunk/src/zc/form/browser/mruwidget.py
  U   zc.form/trunk/src/zc/form/browser/overrides.zcml
  U   zc.form/trunk/src/zc/form/browser/tests.py
  U   zc.form/trunk/src/zc/form/browser/tzwidget.py
  U   zc.form/trunk/src/zc/form/browser/unionwidget.py
  U   zc.form/trunk/src/zc/form/browser/widgetapi.py
  U   zc.form/trunk/src/zc/form/interfaces.py

-=-
Modified: zc.form/trunk/CHANGES.txt
===================================================================
--- zc.form/trunk/CHANGES.txt	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/CHANGES.txt	2011-09-22 15:54:56 UTC (rev 122897)
@@ -7,6 +7,9 @@
 
 - Got rid of ``zope.app.zapi`` dependency.
 
+- Got rid of ``zope.app.form`` dependency by requiring at least
+  ``zope.formlib`` 4.0.
+
 - Depending on ``zope.catalog`` instead of ``zope.app.catalog``.
 
 - Fixed tests to run with ``zope.schema`` >= 3.6.

Modified: zc.form/trunk/setup.py
===================================================================
--- zc.form/trunk/setup.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/setup.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -31,12 +31,11 @@
         'zope.annotation',
         'zope.app.principalannotation',
         'zope.catalog',
-        'zope.app.form',
         'zope.app.pagetemplate',
         'zope.cachedescriptors',
         'zope.component',
         'zope.exceptions',
-        'zope.formlib',
+        'zope.formlib >= 4.0',
         'zope.i18n',
         'zope.i18nmessageid',
         'zope.index',

Modified: zc.form/trunk/src/zc/form/README.txt
===================================================================
--- zc.form/trunk/src/zc/form/README.txt	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/README.txt	2011-09-22 15:54:56 UTC (rev 122897)
@@ -1,5 +1,5 @@
-The form package is a possibly temporary appendage used to hold extra
+The zc.form package is a possibly temporary appendage used to hold extra
 browser widgets and alternative approaches to code found in the
-zope.app.form package.  Most or all of the code is created by Zope
+zope.formlib package.  Most or all of the code is created by Zope
 Corporation and is intended for eventual folding into the main Zope 3
 release.

Modified: zc.form/trunk/src/zc/form/browser/combinationwidget.py
===================================================================
--- zc.form/trunk/src/zc/form/browser/combinationwidget.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/combinationwidget.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -22,8 +22,8 @@
 from zope import component
 import zope.schema.interfaces
 import zope.cachedescriptors.property
-from zope.app.form.interfaces import WidgetInputError
-from zope.app.form.interfaces import IInputWidget, IDisplayWidget
+from zope.formlib.interfaces import WidgetInputError
+from zope.formlib.interfaces import IInputWidget, IDisplayWidget
 from zope.app.pagetemplate import ViewPageTemplateFile
 
 from zope.formlib import namedtemplate

Modified: zc.form/trunk/src/zc/form/browser/combinationwidget.txt
===================================================================
--- zc.form/trunk/src/zc/form/browser/combinationwidget.txt	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/combinationwidget.txt	2011-09-22 15:54:56 UTC (rev 122897)
@@ -16,8 +16,8 @@
     >>> from zope.schema import Int
     >>> from zope.schema.interfaces import IInt
     >>> from zope.publisher.interfaces.browser import IBrowserRequest
-    >>> from zope.app.form.interfaces import IInputWidget
-    >>> from zope.app.form.browser.textwidgets import IntWidget
+    >>> from zope.formlib.interfaces import IInputWidget
+    >>> from zope.formlib.textwidgets import IntWidget
     >>> ztapi.provideView(
     ...     IInt, IBrowserRequest, IInputWidget, '', IntWidget)
     >>> from zope import interface
@@ -121,13 +121,11 @@
     WidgetInputError: ('acceptable_count', u'Acceptable Count',
     WidgetInputError('combination_00', u'Minimum',
     RequiredMissing('combination_00')))
-    >>> import zope.app.form.browser.interfaces
-    >>> import zope.app.form.interfaces
+    >>> import zope.formlib.interfaces
     >>> import zope.publisher.interfaces.browser
     >>> class SnippetView(object):
-    ...     interface.implements(
-    ...         zope.app.form.browser.interfaces.IWidgetInputErrorView)
-    ...     component.adapts(zope.app.form.interfaces.WidgetInputError,
+    ...     interface.implements(zope.formlib.interfaces.IWidgetInputErrorView)
+    ...     component.adapts(zope.formlib.interfaces.WidgetInputError,
     ...         zope.publisher.interfaces.browser.IBrowserRequest)
     ...     def __init__(self, context, request):
     ...         self.context = context
@@ -176,8 +174,8 @@
 There's also a display version of the widget::
 
     >>> request = TestRequest()
-    >>> from zope.app.form.browser.widget import DisplayWidget
-    >>> from zope.app.form.interfaces import IDisplayWidget
+    >>> from zope.formlib.widget import DisplayWidget
+    >>> from zope.formlib.interfaces import IDisplayWidget
     >>> ztapi.provideView(
     ...     IInt, IBrowserRequest, IDisplayWidget, '', DisplayWidget)
     >>> widget = CombinationDisplayWidget(IDemo['acceptable_count'], request)

Modified: zc.form/trunk/src/zc/form/browser/configure.zcml
===================================================================
--- zc.form/trunk/src/zc/form/browser/configure.zcml	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/configure.zcml	2011-09-22 15:54:56 UTC (rev 122897)
@@ -8,7 +8,7 @@
   <view
       type="zope.publisher.interfaces.browser.IBrowserRequest"
       for="zc.form.interfaces.IUnionField"
-      provides="zope.app.form.interfaces.IInputWidget"
+      provides="zope.formlib.interfaces.IInputWidget"
       factory=".unionwidget.UnionWidget"
       permission="zope.Public"
       />
@@ -17,7 +17,7 @@
   <view
       type="zope.publisher.interfaces.browser.IBrowserRequest"
       for="zc.form.interfaces.ICombinationField"
-      provides="zope.app.form.interfaces.IInputWidget"
+      provides="zope.formlib.interfaces.IInputWidget"
       factory=".combinationwidget.CombinationWidget"
       permission="zope.Public"
       />
@@ -26,7 +26,7 @@
   <view
       type="zope.publisher.interfaces.browser.IBrowserRequest"
       for="zc.form.interfaces.ICombinationField"
-      provides="zope.app.form.interfaces.IDisplayWidget"
+      provides="zope.formlib.interfaces.IDisplayWidget"
       factory=".combinationwidget.CombinationDisplayWidget"
       permission="zope.Public"
       />
@@ -63,11 +63,11 @@
       type="zope.publisher.interfaces.browser.IBrowserRequest"
       for="zope.schema.interfaces.IChoice
            zc.form.interfaces.AvailableTimeZones"
-      provides="zope.app.form.interfaces.IInputWidget"
+      provides="zope.formlib.interfaces.IInputWidget"
       factory=".tzwidget.TimeZoneWidget"
       permission="zope.Public"
       />
-  
+
   <adapter factory=".tzwidget.TimeZoneQueryView" />
 
 </configure>

Modified: zc.form/trunk/src/zc/form/browser/exceptionviews.py
===================================================================
--- zc.form/trunk/src/zc/form/browser/exceptionviews.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/exceptionviews.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -17,11 +17,11 @@
 """
 
 from zope import interface, component, i18n
-from zope.app.form.browser.interfaces import IWidgetInputErrorView
+from zope.formlib.interfaces import IWidgetInputErrorView
 from zope.publisher.interfaces.browser import IBrowserRequest
 from cgi import escape
 from zope.schema.interfaces import ValidationError
-from zope.app.form.interfaces import ConversionError
+from zope.formlib.interfaces import ConversionError
 from zope.exceptions.interfaces import UserError
 
 

Modified: zc.form/trunk/src/zc/form/browser/exceptionviews.txt
===================================================================
--- zc.form/trunk/src/zc/form/browser/exceptionviews.txt	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/exceptionviews.txt	2011-09-22 15:54:56 UTC (rev 122897)
@@ -18,9 +18,9 @@
     >>> view = ValidationErrorView(err, None)
     >>> view.snippet()
     u'<span class="error">F\xe4lscher!</span>'
-    
-HTML characters are quoted correctly::   
 
+HTML characters are quoted correctly::
+
     >>> err = ValidationError(u"The <error> & me.")
     >>> view = ValidationErrorView(err, None)
     >>> view.snippet()
@@ -29,7 +29,7 @@
 
 The ConversionError has an exception as argument which is converted as well::
 
-    >>> from zope.app.form.interfaces import ConversionError
+    >>> from zope.formlib.interfaces import ConversionError
     >>> err = ConversionError(ValidationError("not valid"))
     >>> view = ValidationErrorView(err, None)
     >>> view.snippet()

Modified: zc.form/trunk/src/zc/form/browser/ftesting.zcml
===================================================================
--- zc.form/trunk/src/zc/form/browser/ftesting.zcml	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/ftesting.zcml	2011-09-22 15:54:56 UTC (rev 122897)
@@ -22,7 +22,6 @@
   <include package="zope.app.publication" />
   <include package="zope.app.pagetemplate" file="meta.zcml" />
   <include package="zope.app.appsetup" />
-  <include package="zope.app.form.browser" />
   <include package="zope.formlib" />
   <include package="zope.traversing" />
   <include package="zope.app.basicskin" />

Modified: zc.form/trunk/src/zc/form/browser/ftests.py
===================================================================
--- zc.form/trunk/src/zc/form/browser/ftests.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/ftests.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -11,17 +11,19 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""functional test harness for zc.mruwidget
-"""
-import os
-
+"""functional test harness for zc.mruwidget"""
 from zope import interface, component
 from zope.app.testing.functional import FunctionalDocFileSuite, ZCMLLayer
 import doctest
+import os
+import zope.browser.interfaces
+import zope.formlib.interfaces
 import zope.schema.interfaces
 
+
 colors = ['red', 'green', 'cerulean blue']
 
+
 class AvailableColors(object):
     interface.implements(zope.schema.interfaces.ISource)
 
@@ -40,7 +42,7 @@
 class ColorTerms(object):
     """Term and value support needed by query widgets."""
 
-    interface.implements(zope.app.form.browser.interfaces.ITerms)
+    interface.implements(zope.browser.interfaces.ITerms)
     component.adapts(zope.schema.interfaces.ISource,
                      zope.publisher.interfaces.browser.IBrowserRequest)
 
@@ -56,7 +58,7 @@
         return token.split('_')[0]
 
 class SimpleColorSourceQueryView(object):
-    interface.implements(zope.app.form.browser.interfaces.ISourceQueryView)
+    interface.implements(zope.formlib.interfaces.ISourceQueryView)
     component.adapts(zope.schema.interfaces.ISource,
                      zope.publisher.interfaces.browser.IBrowserRequest)
 

Modified: zc.form/trunk/src/zc/form/browser/mruwidget.py
===================================================================
--- zc.form/trunk/src/zc/form/browser/mruwidget.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/mruwidget.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -13,15 +13,15 @@
 ##############################################################################
 """source input widget with most recently used (MRU) value support"""
 from BTrees import OOBTree
-from zope.app.form.browser.source import SourceInputWidget
+from zope.formlib.source import SourceInputWidget
 from zope.schema.interfaces import ISourceQueriables, ValidationError
 import cgi
 import persistent.list
 import zc.resourcelibrary
 import zope.annotation.interfaces
-import zope.app.form.browser.interfaces
-import zope.app.form.interfaces
+import zope.browser.interfaces
 import zope.component
+import zope.formlib.interfaces
 
 
 class MruSourceInputWidget(SourceInputWidget):
@@ -52,7 +52,7 @@
         """
         tokens = self.getMostRecentlyUsedTokens()
         terms = zope.component.getMultiAdapter(
-            (self.source, self.request), zope.app.form.browser.interfaces.ITerms)
+            (self.source, self.request), zope.browser.interfaces.ITerms)
         mru = []
         for token in tokens:
             try:

Modified: zc.form/trunk/src/zc/form/browser/overrides.zcml
===================================================================
--- zc.form/trunk/src/zc/form/browser/overrides.zcml	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/overrides.zcml	2011-09-22 15:54:56 UTC (rev 122897)
@@ -5,7 +5,7 @@
       type="zope.publisher.interfaces.browser.IBrowserRequest"
       for="zope.schema.interfaces.IChoice
            zope.schema.interfaces.ISource"
-      provides="zope.app.form.interfaces.IInputWidget"
+      provides="zope.formlib.interfaces.IInputWidget"
       factory=".mruwidget.MruSourceInputWidget"
       permission="zope.Public"
       />

Modified: zc.form/trunk/src/zc/form/browser/tests.py
===================================================================
--- zc.form/trunk/src/zc/form/browser/tests.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/tests.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -25,9 +25,9 @@
 from zope.schema import TextLine, Int
 from zope.publisher.interfaces.browser import IBrowserRequest
 from zope.app.testing import ztapi
-from zope.app.form.browser.textwidgets import TextWidget, IntWidget
+from zope.formlib.textwidgets import TextWidget, IntWidget
 from zope.schema.interfaces import ITextLine, IInt
-from zope.app.form.interfaces import IInputWidget
+from zope.formlib.interfaces import IInputWidget
 from zope.publisher.browser import TestRequest
 
 from zope.configuration import xmlconfig
@@ -38,8 +38,6 @@
 from zc.form.browser.unionwidget import UnionWidget
 
 from zope import component
-import zope.app.form.interfaces
-import zope.app.form.browser
 import zope.schema.interfaces
 import zope.publisher.interfaces.browser
 

Modified: zc.form/trunk/src/zc/form/browser/tzwidget.py
===================================================================
--- zc.form/trunk/src/zc/form/browser/tzwidget.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/tzwidget.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -15,16 +15,16 @@
 
 $Id: tzwidget.py 3872 2005-11-05 04:41:55Z gary $
 """
-import pytz
-
 from zope import interface, component
-import zope.publisher.interfaces.browser
 from zope.app import pagetemplate
-import zope.interface.common.idatetime
-
+import pytz
 import zc.form.browser.mruwidget
 import zc.form.interfaces
+import zope.formlib.interfaces
+import zope.interface.common.idatetime
+import zope.publisher.interfaces.browser
 
+
 ALL_TIMEZONES = frozenset(pytz.all_timezones)
 
 # XXX argh.
@@ -40,7 +40,7 @@
 # end argh.
 
 class TimeZoneWidget(zc.form.browser.mruwidget.MruSourceInputWidget):
-        
+
     def getMostRecentlyUsedTerms(self):
         mru = super(TimeZoneWidget, self).getMostRecentlyUsedTerms()
         # add ones from locale
@@ -58,8 +58,7 @@
         return mru
 
 class TimeZoneQueryView(object):
-    interface.implements(
-            zope.app.form.browser.interfaces.ISourceQueryView)
+    interface.implements(zope.formlib.interfaces.ISourceQueryView)
 
     component.adapts(zc.form.interfaces.AvailableTimeZones,
                      zope.publisher.interfaces.browser.IBrowserRequest)

Modified: zc.form/trunk/src/zc/form/browser/unionwidget.py
===================================================================
--- zc.form/trunk/src/zc/form/browser/unionwidget.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/unionwidget.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -17,10 +17,10 @@
 """
 
 from zope import component
-from zope.app.form.interfaces import WidgetInputError
+from zope.formlib.interfaces import WidgetInputError
 
 from widgetapi import BaseWidget
-from zope.app.form.interfaces import IInputWidget
+from zope.formlib.interfaces import IInputWidget
 from zope.app.pagetemplate import ViewPageTemplateFile
 
 from zope.formlib import namedtemplate
@@ -46,12 +46,12 @@
         return None
 
 class UnionWidget(BaseWidget):
-    
+
     _field_index = None
-    
+
     no_value_label = _('union_field_label-no_value', "Not specified")
     no_value_hint = _('union_field_hint-no_value', '')
-    
+
     def loadValueFromRequest(self):
         field = self.context
         missing_value = field.missing_value
@@ -82,9 +82,9 @@
                         self.label,
                         e.errors)
         return missing_value
-    
+
     template = namedtemplate.NamedTemplate('default')
-    
+
     def render(self, value):
         # choices = ({selected, identifier, widget},)
         # widget may be None, name may be None.

Modified: zc.form/trunk/src/zc/form/browser/widgetapi.py
===================================================================
--- zc.form/trunk/src/zc/form/browser/widgetapi.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/browser/widgetapi.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -22,10 +22,10 @@
 from zope.interface import implements
 from zope.schema.interfaces import ValidationError
 
-from zope.app.form import InputWidget
-from zope.app.form.browser.widget import BrowserWidget
-from zope.app.form.browser.interfaces import IBrowserWidget
-from zope.app.form.interfaces import IWidget, IInputWidget, WidgetInputError
+from zope.formlib.widget import InputWidget
+from zope.formlib.widget import BrowserWidget
+from zope.formlib.interfaces import IBrowserWidget
+from zope.formlib.interfaces import IWidget, IInputWidget, WidgetInputError
 
 from zc.form.i18n import _
 
@@ -44,7 +44,7 @@
     # Note to previous users of widgetapi:
     # .translate -> ._translate; .__prefix -> ._prefix;  NullValue ->
     # ._data_marker; .__initial_value and .__calculated_value -> replaced
-    # with ._data (because zope.app.form.utility.setUpWidget behavior changed
+    # with ._data (because zope.formlib.utility.setUpWidget behavior changed
     # for the better)
     implements(IBrowserWidget, IInputWidget)
 

Modified: zc.form/trunk/src/zc/form/interfaces.py
===================================================================
--- zc.form/trunk/src/zc/form/interfaces.py	2011-09-22 15:32:24 UTC (rev 122896)
+++ zc.form/trunk/src/zc/form/interfaces.py	2011-09-22 15:54:56 UTC (rev 122897)
@@ -11,18 +11,15 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""interfaces.py: interfaces for the package
-
-$Id: interfaces.py 4634 2006-01-06 20:21:15Z fred $"""
+from zc.form.i18n import _
+from zope import interface, component, schema
 import datetime
 import pytz
-
-from zope import interface, component, schema
+import zope.browser.interfaces
 import zope.publisher.interfaces.browser
 import zope.schema.interfaces
-import zope.app.form.browser.interfaces
-from zc.form.i18n import _
 
+
 class IExtendedField(zope.schema.interfaces.IField):
 
     constraints = schema.Tuple(
@@ -48,23 +45,23 @@
     value = interface.Attribute(
         """the value for this field; one and only one of value and
         value_getter must be non-None""")
-    
+
     value_getter = interface.Attribute(
         """a callable, taking a context, return the option's value; or None.
         one and only one of value and value_getter must be non-None""")
-    
+
     identity_comparison = schema.Bool(
         description=_("""Whether validation comparison should be identity
         (as opposed to equality) based"""))
-    
+
     def getValue():
         "return value for option field"
 
 class IUnionField(IExtendedField):
-    u"""A field that may have one of many field types of values.  
+    u"""A field that may have one of many field types of values.
     Order is important, in that the first field from left to right that
     validates a value is considered to be the "active" field."""
-    
+
     fields = schema.Tuple(
         title=_("Composite Fields"),
         description=_("""\
@@ -80,7 +77,7 @@
             be displayed instead.
 
             Default: False"""))
-    
+
     def validField(value):
         u"returns first valid field for the given value, or None"
 
@@ -111,7 +108,7 @@
 class TimeZoneTerms:
     """Term and value support needed by query widgets."""
 
-    interface.implements(zope.app.form.browser.interfaces.ITerms)
+    interface.implements(zope.browser.interfaces.ITerms)
     component.adapts(AvailableTimeZones,
                      zope.publisher.interfaces.browser.IBrowserRequest)
 
@@ -128,14 +125,14 @@
 
 class IHTMLSnippet(zope.schema.interfaces.IText):
     """HTML excerpt that can be placed within an HTML document's body element.
-    
+
     Snippet should have no dangling open tags.
-    
+
     XHTML preferred; field may have version attribute in future.
     """
 
 class IHTMLDocument(zope.schema.interfaces.IText):
     """HTML Document.
-    
+
     XHTML preferred; field may have version attribute in future.
     """



More information about the checkins mailing list