Skip to content

Commit

Permalink
Merge b6c6c92 into e4ca3ff
Browse files Browse the repository at this point in the history
  • Loading branch information
odelaere committed Nov 20, 2019
2 parents e4ca3ff + b6c6c92 commit 6c7bb2d
Show file tree
Hide file tree
Showing 29 changed files with 156 additions and 150 deletions.
32 changes: 14 additions & 18 deletions .travis.yml
@@ -1,20 +1,19 @@
dist: xenial

dist: bionic
language: python

python:
- 2.7

cache:
pip: true
directories:
- eggs
- buildout-cache/downloads
- buildout-cache/eggs

python:
- 2.7
env:
- PLONE_VERSION=4
- PLONE_VERSION=5.0
- PLONE_VERSION=5.1
- PLONE_VERSION=5.2
fast_finish: true

services:
- docker
Expand All @@ -33,27 +32,24 @@ install:
- mkdir $HOME/tmp
- chmod 777 $HOME/tmp
- export TMPDIR=$HOME/tmp
- sed -ie "s#travis-5#travis-$PLONE_VERSION#" travis.cfg
- pip install lxml --no-binary lxml
- python -V
- sed -ie "s#test-5#test-$PLONE_VERSION#" travis.cfg
- pip install -r requirements.txt
- python bootstrap.py --version=2.12.0
- python -V
- /usr/bin/python3 -V
- python bootstrap.py --version=2.13.2
- bin/buildout -N -c travis.cfg annotate
- bin/buildout -Nt 5 -c travis.cfg

before_script:
- docker run -p 127.0.0.1:2002:8997 -d --rm --name="oo_server" xcgd/libreoffice:5.1
- bin/translation-manage -c

script:
- docker ps
- make startlibreoffice lo_version=5.1
- env USE_STREAM=True bin/test
- docker stop oo_server
- docker run -p 127.0.0.1:2002:8997 -d --rm --name="oo_server" xcgd/libreoffice:latest
- docker ps
- make startlibreoffice
- env USE_STREAM=True bin/test
- docker stop oo_server
- /usr/bin/soffice --invisible --headless --nologo --nofirststartwizard --accept="socket,host=localhost,port=2002;urp" & > /dev/null 2>&1
- make stoplibreoffice
- /usr/bin/soffice --invisible --headless --accept="socket,host=localhost,port=2002;urp" & > /dev/null 2>&1
- env USE_STREAM=False bin/test
- env USE_STREAM=True bin/test

Expand Down
6 changes: 4 additions & 2 deletions Makefile
Expand Up @@ -3,12 +3,13 @@
lo_version=latest

all: run
py:=2.7

.PHONY: bootstrap buildout run test cleanall startlibreoffice stoplibreoffice
bootstrap:
virtualenv-2.7 .
if [ -f /usr/bin/virtualenv-2.7 ] ; then virtualenv-2.7 -p python$(py) .;else virtualenv -p python$(py) .;fi
bin/pip install -r requirements.txt
./bin/python bootstrap.py --version=2.12.0
./bin/python bootstrap.py --version=2.13.2

buildout:
if ! test -f bin/buildout;then make bootstrap;fi
Expand All @@ -33,6 +34,7 @@ cleanall:
startlibreoffice:
make stoplibreoffice
docker run -p 2002:8997 -d --rm --name="oo_server" xcgd/libreoffice:$(lo_version)
docker ps

stoplibreoffice:
if docker ps | grep oo_server;then docker stop oo_server;fi
3 changes: 2 additions & 1 deletion buildout.cfg
@@ -1,6 +1,7 @@
[buildout]
extends =
# https://raw.github.com/collective/buildout.plonetest/master/plone-5.x.cfg
https://raw.github.com/collective/buildout.plonetest/master/plone-5.1.x.cfg
https://raw.github.com/collective/buildout.plonetest/master/plone-5.2.x.cfg
# https://raw.github.com/collective/buildout.plonetest/master/plone-5.1.x.cfg
# https://raw.github.com/collective/buildout.plonetest/master/plone-4.3.x.cfg
buildout.d/development.cfg
5 changes: 1 addition & 4 deletions buildout.d/development.cfg
Expand Up @@ -19,9 +19,6 @@ parts +=
robot
createcoverage

extensions +=
mr.developer

sources = sources
auto-checkout +=
appy
Expand Down Expand Up @@ -80,7 +77,7 @@ recipe = zc.recipe.egg
eggs =
Pillow
${test:eggs}
plone.app.robotframework[ride,reload]
plone.app.robotframework[reload]

[createcoverage]
recipe = zc.recipe.egg
Expand Down
49 changes: 7 additions & 42 deletions buildout.d/versions.cfg
@@ -1,47 +1,12 @@
[versions]
mr.developer = 1.33
setuptools = 38.5.1
zc.buildout = 2.12.0
PyYAML = 3.11
setuptools = 41.0.1
zc.buildout = 2.13.2
appy =
argh = 0.24.1
future = 0.15.2
ipython = 2.1.0
ipdb = 0.8
pathtools = 0.1.2
plone.app.robotframework = 0.9.14
profilehooks = 1.7
robotframework = 3.0
robotframework-ride = 1.5
robotframework-selenium2library = 1.7.4
robotsuite = 1.7.0
selenium = 2.49.0
watchdog = 0.7.1
Products.PDBDebugMode = 1.3.1

infrae.i18nextract = 1.3.1
mccabe = 0.6.1
plone.recipe.codeanalysis = 1.1.1
pyflakes = 1.5.0

# Needed for travis 5.1 run
six = 1.11.0

# Required by:
# collective.documentgenerator==0.1
collective.behavior.talcondition = 0.7
collective.z3cform.datagridfield = 1.2
# plone 4.3 doesn't pin future
future =

# Required by:
# plone.recipe.codeanalysis==1.1.1
flake8 = 2.4.1

# Required by:
# collective.excelexport==1.3.dev0
xlwt = 1.0.0

createcoverage = 1.4
coverage = 3.7.1
py = 1.4.22

z3c.table = 2.0.0
# collective.documentgenerator
# because of https://github.com/zopefoundation/z3c.table/issues/9#
z3c.table = 2.1
4 changes: 2 additions & 2 deletions requirements.txt
@@ -1,2 +1,2 @@
setuptools == 38.5.1
zc.buildout == 2.12.0
setuptools==41.0.1
zc.buildout==2.13.2
4 changes: 2 additions & 2 deletions src/collective/documentgenerator/AT_renderer.py
@@ -1,13 +1,13 @@
# -*- coding: utf-8 -*-

from collective.documentgenerator.interfaces import IFieldRendererForDocument
from zope.interface import implements
from zope.interface import implementer


@implementer(IFieldRendererForDocument)
class DefaultATFieldRenderer(object):
"""
"""
implements(IFieldRendererForDocument)

def __init__(self, field, widget, context):
self.field = field
Expand Down
11 changes: 4 additions & 7 deletions src/collective/documentgenerator/DX_renderer.py
Expand Up @@ -4,17 +4,16 @@
from collective.documentgenerator.interfaces import IFieldRendererForDocument
from collective.excelexport.interfaces import IExportable
from zope.component import getMultiAdapter
from zope.interface import implements
from zope.interface import implementer

import datetime


@implementer(IFieldRendererForDocument)
class DexterityExportableAdapter(object):

"""Adapter for collective.excelexport exportables."""

implements(IFieldRendererForDocument)

def __init__(self, field, context, request):
self.field = field
self.context = context
Expand All @@ -27,12 +26,11 @@ def render_value(self):
return self.exportable.render_value(self.context)


@implementer(IFieldRendererForDocument)
class DexterityDateExportableAdapter(DexterityExportableAdapter):

"""Adapter for collective.excelexport date field exportable."""

implements(IFieldRendererForDocument)

def render_value(self):
"""Format the date."""
value = self.exportable.render_value(self.context)
Expand All @@ -42,12 +40,11 @@ def render_value(self):
return plone.toLocalizedTime(value)


@implementer(IFieldRendererForDocument)
class DexterityDatetimeExportableAdapter(DexterityExportableAdapter):

"""Adapter for collective.excelexport datetime field exportable."""

implements(IFieldRendererForDocument)

def render_value(self):
"""Format the date."""
value = self.exportable.render_value(self.context)
Expand Down
5 changes: 2 additions & 3 deletions src/collective/documentgenerator/browser/controlpanel.py
Expand Up @@ -9,7 +9,7 @@
from Products.statusmessages.interfaces import IStatusMessage
from z3c.form import button
from zope import schema
from zope.interface import implements
from zope.interface import implementer
from zope.interface import Interface

import inspect
Expand Down Expand Up @@ -91,9 +91,8 @@ class IDocumentGeneratorControlPanelSchema(Interface):
)


@implementer(IDocumentGeneratorSettings)
class DocumentGeneratorControlPanelEditForm(RegistryEditForm):
implements(IDocumentGeneratorSettings)

schema = IDocumentGeneratorControlPanelSchema
label = _(u'Document Generator settings')
description = _(u'')
Expand Down
6 changes: 3 additions & 3 deletions src/collective/documentgenerator/browser/views.py
Expand Up @@ -14,7 +14,7 @@
from z3c.form.interfaces import IFieldsAndContentProvidersForm
from zope.browserpage import ViewPageTemplateFile
from zope.contentprovider.provider import ContentProviderBase
from zope.interface import implements
from zope.interface import implementer

import os

Expand Down Expand Up @@ -113,16 +113,16 @@ def render(self):
return self.template()


@implementer(IFieldsAndContentProvidersForm)
class ViewConfigurablePodTemplate(DefaultView):
implements(IFieldsAndContentProvidersForm)
contentProviders = ContentProviders()

contentProviders['children_pod_template'] = DisplayChildrenPodTemplateProvider
contentProviders['children_pod_template'].position = 4


@implementer(IFieldsAndContentProvidersForm)
class EditConfigurablePodTemplate(DefaultEditForm):
implements(IFieldsAndContentProvidersForm)
contentProviders = ContentProviders()

contentProviders['children_pod_template'] = DisplayChildrenPodTemplateProvider
Expand Down
7 changes: 7 additions & 0 deletions src/collective/documentgenerator/config.py
Expand Up @@ -23,6 +23,13 @@

HAS_PLONE_5 = api.env.plone_version().startswith('5')
HAS_PLONE_5_1 = api.env.plone_version() > '5.1'
HAS_PLONE_5_2 = api.env.plone_version() > '5.2'

if HAS_PLONE_5_2:
import sys
from zope.deprecation import deprecation
sys.modules['collective.documentgenerator.demo.helper.ATDemoHelperView'] = \
deprecation.deprecated(deprecation, 'Archetypes was removed from Plone 5.2.')


def get_uno_path():
Expand Down
5 changes: 2 additions & 3 deletions src/collective/documentgenerator/content/condition.py
Expand Up @@ -2,14 +2,13 @@

from collective.behavior.talcondition.behavior import ITALCondition
from collective.documentgenerator.interfaces import IPODTemplateCondition
from zope.interface import implements
from zope.interface import implementer


@implementer(IPODTemplateCondition)
class PODTemplateCondition(object):
""" """

implements(IPODTemplateCondition)

def __init__(self, pod_template, context):
self.pod_template = pod_template
self.context = context
Expand Down
8 changes: 3 additions & 5 deletions src/collective/documentgenerator/content/document_factory.py
Expand Up @@ -5,18 +5,17 @@
from plone import api
from plone.namedfile.file import NamedBlobFile
from Products.CMFCore.interfaces import IFolderish
from zope.interface import implements
from zope.interface import implementer

import mimetypes


@implementer(IDocumentFactory)
class ATCTFileDocumentFactory(object):
"""
Factory to create an ATCT File (Archetypes) object persisting a generated document.
"""

implements(IDocumentFactory)

def __init__(self, context):
self.context = context

Expand All @@ -42,13 +41,12 @@ def create(self, doc_file, title='document', extension='odt'):
return document


@implementer(IDocumentFactory)
class PACTFileDocumentFactory(object):
"""
Factory to create a PACT File (dexterity) object persisting a generated document.
"""

implements(IDocumentFactory)

def __init__(self, context):
self.context = context

Expand Down
Expand Up @@ -6,7 +6,7 @@
from plone.memoize.instance import memoize
from plone.rfc822.interfaces import IPrimaryField
from zope.filerepresentation.interfaces import IRawWriteFile
from zope.interface import implements
from zope.interface import implementer
from zope.schema import getFieldsInOrder

import tempfile
Expand Down Expand Up @@ -60,8 +60,8 @@ def _getStream(self):
return out


@implementer(IRawWriteFile)
class WriteFile(DefaultWriteFile, PrimaryFileBase):
implements(IRawWriteFile)

def close(self):
self._message = self._parser.close()
Expand Down
5 changes: 2 additions & 3 deletions src/collective/documentgenerator/content/merge_templates.py
@@ -1,14 +1,13 @@
# -*- coding: utf-8 -*-

from collective.documentgenerator.interfaces import ITemplatesToMerge
from zope.interface import implements
from zope.interface import implementer


@implementer(ITemplatesToMerge)
class TemplatesToMergeForPODTemplate(object):
"""
"""
implements(ITemplatesToMerge)

def __init__(self, pod_template):
self.pod_template = pod_template

Expand Down

0 comments on commit 6c7bb2d

Please sign in to comment.