[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