debian/control
author Denis Laxalde <denis.laxalde@logilab.fr>
Thu, 09 Mar 2017 16:36:33 +0100
changeset 12053 c3c9f2e1424c
parent 11987 d432911e3c26
child 12069 82f7d583e5a3
permissions -rw-r--r--
[pyramid] Add a "pyramid" instance configuration type In a new module 'cubicweb.pyramid.config' we define a "pyramid" instance configuration type. The noticeable feature of this configuration is that it manages a 'development.ini' file that gets installed in application home (along with `.conf` file). This file is templated and includes generated values for secrets of session and authtk tokens. This means that we can just call: pserve etc/cubicweb.d/<appname>/development.ini or gunicorn --paste etc/cubicweb.d/<appname>/development.ini -b :8080 just after instance creation to get a pyramid instance running without having to hack around a 'pyramid.ini' file. This patch drops 'development.ini' from skeleton and moves it in cubicweb/pyramid so that it gets installed at instance creation which is more appropriate than in cube creation. The new configuration class sets "cubicweb.bwcompat" setting to false so it is not intended to replace the "all-in-one" configuration type (which would require a bit more work). This configuration is close to the the 'repository' configuration type with just a couple of options from WebConfiguration that are needed for Pyramid (anonymous user/password plus some miscellaneous options that I'm not so sure are really needed). Note, in particular, that we do not pull CORS settings to be injected as a WSGI middleware like in wsgi_application_from_cwconfig() since I believe this should be left as an end-user responsibility and since this can be defined in a standard way in paste configuration. This configuration inherits from ServerConfiguration but registers the same appobjects as WebConfiguration. In cubicweb.web.request._CubicWebRequestBase, we guard against access to "uiprops" and "datadir_url" of the config because this new "pyramid" config does not have these (this does not make sense without bwcompat mode). At some point, we should either avoid using `cw_request`'s pyramid request attribute or make cubicweb's web request really independant of existing implementation and drop these assumptions.

Source: cubicweb
Section: web
Priority: optional
Maintainer: Logilab S.A. <contact@logilab.fr>
Uploaders: Sylvain Thenault <sylvain.thenault@logilab.fr>,
           David Douard <david.douard@logilab.fr>,
Build-Depends:
 debhelper (>= 9),
 dh-python,
 dh-systemd,
 python-all,
 python-setuptools,
 python-six (>= 1.4.0),
 python-docutils,
 python-sphinx,
 python-logilab-common (>= 1.2.2),
 python-unittest2 (>= 0.7.0),
 python-logilab-mtconverter,
 python-markdown,
 python-tz,
 python-rql (>= 0.34.0),
 python-yams (>= 0.44.0),
 python-lxml,
 python-setuptools,
 python-pyramid,
 python-pyramid-multiauth,
 python-waitress,
 python-passlib (>= 1.7.0),
 python-repoze.lru,
 python-wsgicors,
 sphinx-common,
Standards-Version: 3.9.6
Homepage: https://www.cubicweb.org
X-Python-Version: >= 2.7


Package: python-cubicweb
Architecture: all
Depends:
 ${misc:Depends},
 ${python:Depends},
 python-six (>= 1.4.0),
 python-logilab-mtconverter (>= 0.8.0),
 python-logilab-common (>= 1.2.2),
 python-logilab-database (>= 1.15.0),
 python-yams (>= 0.44.0),
 python-rql (>= 0.34.0),
 python-unittest2 (>= 0.7.0),
 python-lxml,
 python-markdown,
 python-passlib,
 python-tz,
 graphviz,
 gettext,
Recommends:
 cubicweb-ctl (= ${source:Version}),
 python-cubicweb-postgresql-support (= ${source:Version})
 | sqlite3,
 python-cubicweb-pyramid (= ${source:Version}),
# common recommends
 python-simpletal (>= 4.0),
 python-crypto,
# web recommends (mostly)
 python-docutils (>= 0.6),
 python-vobject,
 fckeditor,
 python-fyzz,
 python-imaging,
 python-rdflib,
 python-werkzeug,
# dev recommends
 python-pysqlite2,
Suggests:
 python-zmq,
 python-cwclientlib (>= 0.4.0),
 python-cubicweb-twisted (= ${source:Version}),
 python-cubicweb-documentation (= ${source:Version}),
 w3c-dtd-xhtml,
 xvfb,
Replaces:
 cubicweb (<< 3.24.0-1~),
 cubicweb-server (<< 3.24.0-1~),
 cubicweb-twisted (<< 3.24.0-1~),
 cubicweb-web (<< 3.24.0-1~),
 cubicweb-core,
 cubicweb-common (<< 3.24.0-1~),
Breaks:
 cubicweb (<< 3.24.0-1~),
 cubicweb-server (<< 3.24.0-1~),
 cubicweb-twisted (<< 3.24.0-1~),
 cubicweb-inlinedit (<< 1.1.1),
 cubicweb-bootstrap (<< 0.6.6),
 cubicweb-folder (<< 1.10.0),
 cubicweb-web (<< 3.24.0-1~),
 cubicweb-comment (<< 1.9.1),
 cubicweb-person (<< 1.8.0),
 cubicweb-geocoding (<< 0.2.0),
 cubicweb-invoice (<< 0.6.1),
 cubicweb-mercurial-server (<< 0.4.2),
 cubicweb-forgotpwd (<< 0.4.3),
 cubicweb-registration (<< 0.4.3),
 cubicweb-vcsfile (<< 1.15.0),
 cubicweb-bootstrap (<< 0.6),
 cubicweb-common (<< 3.24.0-1~),
Provides:
 cubicweb,
 cubicweb-server,
 cubicweb-web-frontend,
 cubicweb-web,
 cubicweb-common,
Conflicts:
 cubicweb-multisources,
 cubicweb-core,
Description: the complete CubicWeb framework
 CubicWeb is a semantic web application framework.
 .
 This metapackage will install all the components you need to run cubicweb on a
 single machine. You can also deploy cubicweb by running the different process
 on different computers, in which case you need to install the corresponding
 packages on the different hosts.


Package: python-cubicweb-postgresql-support
Architecture: all
# postgresql-client packages for backup/restore of non local database
Replaces: cubicweb-postgresql-support (<< 3.24.0-1~)
Breaks: cubicweb-postgresql-support (<< 3.24.0-1~)
Provides: cubicweb-postgresql-support
Depends:
 ${misc:Depends},
 ${python:Depends},
 python-psycopg2,
 postgresql-client
Description: postgres support for the CubicWeb framework
 CubicWeb is a semantic web application framework.
 .
 This virtual package provides dependencies to use PostgreSQL for the
 cubicweb repository.


Package: python-cubicweb-twisted
Architecture: all
Depends:
 python-cubicweb (= ${source:Version}),
 python-twisted-web (<< 16.0.0),
Description: meta package to use Twisted as HTTP server for CubicWeb
 CubicWeb is a semantic web application framework.
 .
 This package includes dependencies to run a Twisted based HTTP server to serve
 the adaptative web interface.


Package: python-cubicweb-pyramid
Architecture: all
Depends:
 python-cubicweb (= ${source:Version}),
 python-pyramid (>= 1.5.0),
 python-pyramid-multiauth,
 python-waitress (>= 0.8.9),
 python-wsgicors,
 python-repoze.lru,
Recommends:
 python-pyramid-debugtoolbar
Conflicts:
 pyramid-cubicweb
Replaces:
 pyramid-cubicweb
Description: meta package to use Pyramid as HTTP server for CubicWeb
 Provides pyramid extensions to load a CubicWeb instance and serve it through
 the pyramid stack.


Package: cubicweb-ctl
Architecture: all
Depends:
 ${misc:Depends},
 ${python:Depends},
 python-cubicweb (= ${source:Version})
Description: tool to manage the CubicWeb framework
 CubicWeb is a semantic web application framework.
 .
 This package provides a control script to manage (create, upgrade, start,
 stop, etc) CubicWeb applications. It also include the init.d script
 to automatically start and stop CubicWeb applications on boot or shutdown.


Package: python-cubicweb-documentation
Architecture: all
Section: doc
Replaces: cubicweb-documentation (<< 3.24.0-1~)
Breaks: cubicweb-documentation (<< 3.24.0-1~)
Provides: cubicweb-documentation
Depends:
 ${misc:Depends},
 ${sphinxdoc:Depends},
Recommends:
 doc-base
Description: documentation for the CubicWeb framework
 CubicWeb is a semantic web application framework.
 .
 This package provides the system's documentation.


# Transitional packages after renaming of (most) binary packages

Package: cubicweb
Architecture: all
Priority: extra
Section: oldlibs
Depends:
 python-cubicweb, ${misc:Depends}
Description: transitional package
  This is a transitional package. It can safely be removed.


Package: cubicweb-server
Architecture: all
Priority: extra
Section: oldlibs
Depends:
 python-cubicweb, ${misc:Depends}
Description: transitional package
  This is a transitional package. It can safely be removed.


Package: cubicweb-postgresql-support
Architecture: all
Priority: extra
Section: oldlibs
Depends:
 python-cubicweb-postgresql-support, ${misc:Depends}
Description: transitional package
  This is a transitional package. It can safely be removed.


Package: cubicweb-twisted
Architecture: all
Priority: extra
Section: oldlibs
Depends:
 python-cubicweb-twisted, ${misc:Depends}
Description: transitional package
  This is a transitional package. It can safely be removed.


Package: cubicweb-web
Architecture: all
Priority: extra
Section: oldlibs
Depends:
 python-cubicweb, ${misc:Depends}
Description: transitional package
  This is a transitional package. It can safely be removed.


Package: cubicweb-common
Architecture: all
Priority: extra
Section: oldlibs
Depends:
 python-cubicweb, ${misc:Depends}
Description: transitional package
  This is a transitional package. It can safely be removed.


Package: cubicweb-dev
Architecture: all
Priority: extra
Section: oldlibs
Depends:
 python-cubicweb, ${misc:Depends}
Description: transitional package
  This is a transitional package. It can safely be removed.


Package: cubicweb-documentation
Architecture: all
Priority: extra
Section: oldlibs
Depends:
 python-cubicweb-documentation, ${misc:Depends}
Description: transitional package
  This is a transitional package. It can safely be removed.