[Python-modules-commits] r34190 - in packages/web2py/trunk/debian (10 files)
piotr at users.alioth.debian.org
piotr at users.alioth.debian.org
Mon Sep 7 21:40:03 UTC 2015
Date: Monday, September 7, 2015 @ 21:40:02
Author: piotr
Revision: 34190
add changes from 1.99.7-1 upload
Modified:
packages/web2py/trunk/debian/README.Debian
packages/web2py/trunk/debian/changelog
packages/web2py/trunk/debian/control
packages/web2py/trunk/debian/copyright
packages/web2py/trunk/debian/patches/avoid_upgrading
packages/web2py/trunk/debian/patches/avoid_write_translations
packages/web2py/trunk/debian/patches/fix_interpreters
packages/web2py/trunk/debian/patches/gtk_gui
packages/web2py/trunk/debian/patches/launcher
packages/web2py/trunk/debian/python-web2py.install
Modified: packages/web2py/trunk/debian/README.Debian
===================================================================
--- packages/web2py/trunk/debian/README.Debian 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/README.Debian 2015-09-07 21:40:02 UTC (rev 34190)
@@ -16,8 +16,8 @@
Two Apache2 configuration files are provided at /usr/share/doc/python-gluon/examples/
web2py.apache and web2py.apache-subdir.
-The former allows to configure a new site running web2py, and the later
-allows to add a web2py application as a subdir of a running apache server.
+The former allows one to configure a new site running web2py, and the later
+is to add a web2py application as a subdir of a running apache server.
To use these files:
Modified: packages/web2py/trunk/debian/changelog
===================================================================
--- packages/web2py/trunk/debian/changelog 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/changelog 2015-09-07 21:40:02 UTC (rev 34190)
@@ -1,10 +1,27 @@
-web2py (1.99.2-3) UNRELEASED; urgency=low
+web2py (1.99.7-1) unstable; urgency=low
- * Use canonical URIs for Vcs-* fields.
- * Use empty lines to separate paragraphs in debian/control.
+ * New upstream release
+ * Refreshed gtk_gui and fix_interpreters patches
+
+ -- José L. Redrejo RodrÃguez <jredrejo at debian.org> Mon, 12 Mar 2012 12:44:02 +0100
- -- Jakub Wilk <jwilk at debian.org> Sun, 05 May 2013 18:48:43 +0200
+web2py (1.99.4-1) unstable; urgency=low
+ * New upstream release
+ * Refreshed gtk_gui and avoid_upgrading patches
+ * Fixed bug in debian/patches/launcher (Closes: #650721)
+
+ -- José L. Redrejo RodrÃguez <jredrejo at debian.org> Wed, 14 Dec 2011 18:14:45 +0100
+
+web2py (1.99.2.1-1) unstable; urgency=low
+
+ * Updated upstream sources with real 1.99.2 version
+ * Ensure python-gtk2 is not needed to run web2py, fixing
+ debian/patches/gtk_gui (Closes: #646931)
+ * Refreshed debian/patches/avoid_updating patch
+
+ -- José L. Redrejo RodrÃguez <jredrejo at debian.org> Fri, 04 Nov 2011 10:12:01 +0100
+
web2py (1.99.2-2) unstable; urgency=low
* Fixed paths in Vcs* fields (Closes: #643924)
Modified: packages/web2py/trunk/debian/control
===================================================================
--- packages/web2py/trunk/debian/control 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/control 2015-09-07 21:40:02 UTC (rev 34190)
@@ -3,12 +3,12 @@
Priority: optional
Maintainer: José L. Redrejo RodrÃguez <jredrejo at debian.org>
Uploaders: Debian Python Modules Team <python-modules-team at lists.alioth.debian.org>
-Build-Depends: debhelper (>= 7.0.50~), python-support, python (>= 2.5), quilt
+Build-Depends: debhelper (>= 7.0.50~), python-support, python (>= 2.5)
Build-Depends-Indep: libjs-jquery, python-feedparser
-Standards-Version: 3.9.2
+Standards-Version: 3.9.3
Homepage: http://www.web2py.com
-Vcs-Svn: svn://anonscm.debian.org/python-modules/packages/web2py/trunk/
-Vcs-Browser: http://anonscm.debian.org/viewvc/python-modules/packages/web2py/trunk/
+Vcs-Svn: svn://svn.debian.org/python-modules/packages/web2py/trunk/
+Vcs-Browser: http://svn.debian.org/viewsvn/python-modules/packages/web2py/trunk/
Package: python-web2py
Architecture: all
@@ -24,7 +24,7 @@
.
This package includes an example site, an internal web server and the
administration tools to develop web sites with web2py.
-
+
Package: python-gluon
Architecture: all
Depends: ${misc:Depends}, ${python:Depends}
Modified: packages/web2py/trunk/debian/copyright
===================================================================
--- packages/web2py/trunk/debian/copyright 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/copyright 2015-09-07 21:40:02 UTC (rev 34190)
@@ -7,7 +7,7 @@
http://www.web2py.com/examples/default/download
-Upstream Author(s):
+Upstream Author:
Massimo Di Pierro <mdipierro at cs.depaul.edu>
Modified: packages/web2py/trunk/debian/patches/avoid_upgrading
===================================================================
--- packages/web2py/trunk/debian/patches/avoid_upgrading 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/patches/avoid_upgrading 2015-09-07 21:40:02 UTC (rev 34190)
@@ -1,8 +1,81 @@
-Index: web2py-1.96.1/applications/admin/controllers/default.py
+Index: web2py-1.99.4/applications/admin/views/default/site.html
===================================================================
---- web2py-1.96.1.orig/applications/admin/controllers/default.py 2011-06-02 17:38:26.000000000 +0200
-+++ web2py-1.96.1/applications/admin/controllers/default.py 2011-06-02 17:39:09.000000000 +0200
-@@ -220,18 +220,6 @@
+--- web2py-1.99.4.orig/applications/admin/views/default/site.html 2011-12-14 15:45:47.000000000 +0100
++++ web2py-1.99.4/applications/admin/views/default/site.html 2011-12-14 18:32:10.695469587 +0100
+@@ -59,14 +59,6 @@
+ {{if is_manager():}}
+ <div class="box">
+ <h3>{{="Version %s.%s.%s (%s) %s" % myversion}}</h3>
+- {{if session.check_version:}}
+- <p id="check_version">
+- {{=T('Checking for upgrades...')}}
+- <script>ajax('{{=URL('check_version')}}',[],'check_version');</script>{{session.check_version=False}}
+- {{else:}}
+- <p id="check_version">
+- {{=button("javascript:ajax('"+URL('check_version')+"',[],'check_version')", T('Check for upgrades'))}}
+- {{pass}}
+ </p>
+ <div class="formfield">
+ Running on {{=request.env.server_software}}
+Index: web2py-1.99.4/applications/admin/controllers/default.py
+===================================================================
+--- web2py-1.99.4.orig/applications/admin/controllers/default.py 2011-12-14 18:31:44.647340425 +0100
++++ web2py-1.99.4/applications/admin/controllers/default.py 2011-12-14 18:32:15.447493151 +0100
+@@ -14,11 +14,11 @@
+ import shutil
+ import platform
+
+-if DEMO_MODE and request.function in ['change_password','pack','pack_plugin','upgrade_web2py','uninstall','cleanup','compile_app','remove_compiled_app','delete','delete_plugin','create_file','upload_file','update_languages','reload_routes']:
++if DEMO_MODE and request.function in ['change_password','pack','pack_plugin','uninstall','cleanup','compile_app','remove_compiled_app','delete','delete_plugin','create_file','upload_file','update_languages','reload_routes']:
+ session.flash = T('disabled in demo mode')
+ redirect(URL('site'))
+
+-if not is_manager() and request.function in ['change_password','upgrade_web2py']:
++if not is_manager() and request.function in ['change_password']:
+ session.flash = T('disabled in multi user mode')
+ redirect(URL('site'))
+
+@@ -69,11 +69,7 @@
+ if verify_password(request.vars.password):
+ session.authorized = True
+ login_record(True)
+-
+- if CHECK_VERSION:
+- session.check_version = True
+- else:
+- session.check_version = False
++ session.check_version = False
+
+ session.last_time = t0
+ if isinstance(send, list): # ## why does this happen?
+@@ -93,26 +89,6 @@
+ return dict(send=send)
+
+
+-def check_version():
+- """ Checks if web2py is up to date """
+-
+- session.forget()
+- session._unlock(response)
+-
+- new_version, version_number = check_new_version(request.env.web2py_version,
+- WEB2PY_VERSION_URL)
+-
+- if new_version == -1:
+- return A(T('Unable to check for upgrades'), _href=WEB2PY_URL)
+- elif new_version != True:
+- return A(T('web2py is up to date'), _href=WEB2PY_URL)
+- elif platform.system().lower() in ('windows','win32','win64') and os.path.exists("web2py.exe"):
+- return SPAN('You should upgrade to version %s' % version_number)
+- else:
+- return sp_button(URL('upgrade_web2py'), T('upgrade now')) \
+- + XML(' <strong class="upgrade_version">%s</strong>' % version_number)
+-
+-
+ def logout():
+ """ Logout handler """
+ session.authorized = None
+@@ -250,18 +226,6 @@
session.flash = T('internal error')
redirect(URL('plugin',args=request.args))
@@ -21,22 +94,3 @@
def uninstall():
app = get_app()
if 'delete' in request.vars:
-Index: web2py-1.96.1/applications/admin/views/default/site.html
-===================================================================
---- web2py-1.96.1.orig/applications/admin/views/default/site.html 2011-06-02 17:39:49.000000000 +0200
-+++ web2py-1.96.1/applications/admin/views/default/site.html 2011-06-02 17:40:28.000000000 +0200
-@@ -58,14 +58,6 @@
- {{if is_manager():}}
- <div class="box">
- <h3>{{=myversion}}</h3>
-- {{if session.check_version:}}
-- <p id="check_version">
-- {{=T('Checking for upgrades...')}}
-- <script>ajax('{{=URL('check_version')}}',[],'check_version');</script>{{session.check_version=False}}
-- {{else:}}
-- <p id="check_version">
-- {{=button("javascript:ajax('"+URL('check_version')+"',[],'check_version')", T('check for upgrades'))}}
-- {{pass}}
- </p>
- <div class="formfield">
- Running on {{=request.env.server_software}}
Modified: packages/web2py/trunk/debian/patches/avoid_write_translations
===================================================================
--- packages/web2py/trunk/debian/patches/avoid_write_translations 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/patches/avoid_write_translations 2015-09-07 21:40:02 UTC (rev 34190)
@@ -1,9 +1,9 @@
-Index: web2py-1.94.4/gluon/languages.py
+Index: web2py-1.99.7/gluon/languages.py
===================================================================
---- web2py-1.94.4.orig/gluon/languages.py 2011-03-18 08:29:32.000000000 +0100
-+++ web2py-1.94.4/gluon/languages.py 2011-03-18 08:44:46.000000000 +0100
-@@ -279,7 +279,8 @@
- if mt == None:
+--- web2py-1.99.7.orig/gluon/languages.py 2012-03-12 12:38:30.378575167 +0100
++++ web2py-1.99.7/gluon/languages.py 2012-03-12 12:48:07.666187086 +0100
+@@ -291,7 +291,8 @@
+ if mt is None:
self.t[message] = mt = tokens[0]
if self.language_file and not is_gae:
- write_dict(self.language_file, self.t)
Modified: packages/web2py/trunk/debian/patches/fix_interpreters
===================================================================
--- packages/web2py/trunk/debian/patches/fix_interpreters 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/patches/fix_interpreters 2015-09-07 21:40:02 UTC (rev 34190)
@@ -1,50 +1,60 @@
-Index: web2py-1.92.1/gluon/dal.py
+Index: web2py-1.99.7/gluon/dal.py
===================================================================
---- web2py-1.92.1.orig/gluon/dal.py 2011-02-28 17:25:51.000000000 +0000
-+++ web2py-1.92.1/gluon/dal.py 2011-02-28 17:26:46.000000000 +0000
+--- web2py-1.99.7.orig/gluon/dal.py 2012-03-13 10:12:18.898896088 +0100
++++ web2py-1.99.7/gluon/dal.py 2012-03-13 10:12:23.015023024 +0100
@@ -1,4 +1,4 @@
-#!/bin/env python
+#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
-Index: web2py-1.92.1/gluon/main.py
+Index: web2py-1.99.7/gluon/main.py
===================================================================
---- web2py-1.92.1.orig/gluon/main.py 2011-02-28 17:27:00.000000000 +0000
-+++ web2py-1.92.1/gluon/main.py 2011-02-28 17:27:11.000000000 +0000
+--- web2py-1.99.7.orig/gluon/main.py 2012-03-13 10:12:18.886895718 +0100
++++ web2py-1.99.7/gluon/main.py 2012-03-13 10:12:23.015023024 +0100
@@ -1,4 +1,4 @@
-#!/bin/env python
+#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
-Index: web2py-1.92.1/gluon/rewrite.py
+Index: web2py-1.99.7/gluon/rewrite.py
===================================================================
---- web2py-1.92.1.orig/gluon/rewrite.py 2011-02-28 17:27:22.000000000 +0000
-+++ web2py-1.92.1/gluon/rewrite.py 2011-02-28 17:27:33.000000000 +0000
+--- web2py-1.99.7.orig/gluon/rewrite.py 2012-03-13 10:12:18.878895471 +0100
++++ web2py-1.99.7/gluon/rewrite.py 2012-03-13 10:12:23.019023147 +0100
@@ -1,4 +1,4 @@
-#!/bin/env python
+#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
-Index: web2py-1.92.1/gluon/tools.py
+Index: web2py-1.99.7/gluon/tools.py
===================================================================
---- web2py-1.92.1.orig/gluon/tools.py 2011-02-28 17:27:51.000000000 +0000
-+++ web2py-1.92.1/gluon/tools.py 2011-02-28 17:28:54.000000000 +0000
+--- web2py-1.99.7.orig/gluon/tools.py 2012-03-13 10:12:18.874895348 +0100
++++ web2py-1.99.7/gluon/tools.py 2012-03-13 10:12:23.019023147 +0100
@@ -1,4 +1,4 @@
-#!/bin/python
+#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
-Index: web2py-1.92.1/gluon/validators.py
+Index: web2py-1.99.7/gluon/validators.py
===================================================================
---- web2py-1.92.1.orig/gluon/validators.py 2011-02-28 17:28:15.000000000 +0000
-+++ web2py-1.92.1/gluon/validators.py 2011-02-28 17:28:24.000000000 +0000
+--- web2py-1.99.7.orig/gluon/validators.py 2012-03-13 10:12:18.890895842 +0100
++++ web2py-1.99.7/gluon/validators.py 2012-03-13 10:12:23.019023147 +0100
@@ -1,4 +1,4 @@
-#!/bin/env python
+#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
+Index: web2py-1.99.7/gluon/tests/test_html.py
+===================================================================
+--- web2py-1.99.7.orig/gluon/tests/test_html.py 2012-03-13 10:12:48.563809623 +0100
++++ web2py-1.99.7/gluon/tests/test_html.py 2012-03-13 10:13:36.925292552 +0100
+@@ -1,4 +1,4 @@
+-#!/bin/python
++#!/usr/bin/env python
+ # -*- coding: utf-8 -*-
+
+ """
Modified: packages/web2py/trunk/debian/patches/gtk_gui
===================================================================
--- packages/web2py/trunk/debian/patches/gtk_gui 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/patches/gtk_gui 2015-09-07 21:40:02 UTC (rev 34190)
@@ -1,7 +1,7 @@
-Index: web2py-1.93.2/gluon/contrib/gtk_presentation.py
+Index: web2py-1.99.7/gluon/contrib/gtk_presentation.py
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ web2py-1.93.2/gluon/contrib/gtk_presentation.py 2011-03-13 17:55:04.000000000 +0100
++++ web2py-1.99.7/gluon/contrib/gtk_presentation.py 2012-03-13 10:23:02.450076782 +0100
@@ -0,0 +1,52 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
@@ -55,11 +55,11 @@
+ label.show()
+ return label
+
-Index: web2py-1.93.2/gluon/widget.py
+Index: web2py-1.99.7/gluon/widget.py
===================================================================
---- web2py-1.93.2.orig/gluon/widget.py 2011-03-13 17:06:11.000000000 +0100
-+++ web2py-1.93.2/gluon/widget.py 2011-03-13 17:55:04.000000000 +0100
-@@ -34,6 +34,12 @@
+--- web2py-1.99.7.orig/gluon/widget.py 2012-03-13 10:21:10.000000000 +0100
++++ web2py-1.99.7/gluon/widget.py 2012-03-13 10:23:41.987213834 +0100
+@@ -33,6 +33,12 @@
except:
pass
@@ -72,314 +72,306 @@
try:
BaseException
-@@ -93,8 +99,292 @@
+@@ -89,9 +95,296 @@
+ print 'starting browser...'
try_start_browser('http://%s:%s' % (ip, port))
-
-+class web2pyGtkDialog(gtk.Window):
-+ """Main gtk window dialog"""
-+ def __init__(self,options):
-+
-+ super(web2pyGtkDialog, self).__init__()
-+ gobject.threads_init()
-+ self.options=options
-+ httplog = os.path.join(self.options.folder, 'httpserver.log')
-+
-+ self.set_title("web2py server")
-+ vbox = gtk.VBox(False, 2)
-+
-+ # Building the Menu
-+ self.menu = gtk.MenuBar()
++def setup_gtk(*args):
++
++
++
+
-+ servermenu = gtk.Menu()
-+ severm = gtk.MenuItem("Server")
-+ severm.set_submenu(servermenu)
-+
-+ item = lambda(x): try_start_browser(httplog)
-+ log_item = gtk.MenuItem("View httpserver.log")
-+ log_item .connect("activate", item)
-+ quit_item = gtk.MenuItem("Quit (pid: %i)" % os.getpid())
-+ quit_item.connect("activate", self.quit)
-+ servermenu.append(log_item)
-+ servermenu.append(quit_item)
-+ self.menu.append(severm)
-+
-+ self.pagesmenu = gtk.Menu()
-+ pagesm = gtk.MenuItem("Pages")
-+ pagesm.set_submenu(self.pagesmenu)
-+ self.menu.append(pagesm)
++ class web2pyGtkDialog(gtk.Window):
++ """Main gtk window dialog"""
++ def __init__(self,options):
++
++ super(web2pyGtkDialog, self).__init__()
++ gobject.threads_init()
++ self.options=options
++ httplog = os.path.join(self.options.folder, 'httpserver.log')
++
++ self.set_title("web2py server")
++ vbox = gtk.VBox(False, 2)
++
++ # Building the Menu
++ self.menu = gtk.MenuBar()
+
-+ helpmenu = gtk.Menu()
-+ helpm = gtk.MenuItem("Info")
-+ helpm.set_submenu(helpmenu)
-+ self.menu.append(helpm)
-+
-+ # Home Page
-+ item = lambda(x): try_start_browser('http://www.web2py.com')
-+ home_item= gtk.MenuItem('Home Page')
-+ home_item.connect("activate", item)
-+
-+ # About
-+ about=gtk.AboutDialog()
-+ about.set_version(ProgramVersion)
-+ about.set_copyright(ProgramAuthor)
-+ about.set_program_name(ProgramName)
-+ item = lambda(x): self.about_dialog(about)
-+ about_item= gtk.MenuItem('About')
-+ about_item.connect("activate", item)
-+ helpmenu.append(home_item)
-+ helpmenu.append(about_item)
++ servermenu = gtk.Menu()
++ severm = gtk.MenuItem("Server")
++ severm.set_submenu(servermenu)
++
++ item = lambda(x): try_start_browser(httplog)
++ log_item = gtk.MenuItem("View httpserver.log")
++ log_item .connect("activate", item)
++ quit_item = gtk.MenuItem("Quit (pid: %i)" % os.getpid())
++ quit_item.connect("activate", self.quit)
++ servermenu.append(log_item)
++ servermenu.append(quit_item)
++ self.menu.append(severm)
++
++ self.pagesmenu = gtk.Menu()
++ pagesm = gtk.MenuItem("Pages")
++ pagesm.set_submenu(self.pagesmenu)
++ self.menu.append(pagesm)
+
-+ vbox.pack_start(self.menu, False, False, 0)
++ helpmenu = gtk.Menu()
++ helpm = gtk.MenuItem("Info")
++ helpm.set_submenu(helpmenu)
++ self.menu.append(helpm)
++
++ # Home Page
++ item = lambda(x): try_start_browser('http://www.web2py.com')
++ home_item= gtk.MenuItem('Home Page')
++ home_item.connect("activate", item)
++
++ # About
++ about=gtk.AboutDialog()
++ about.set_version(ProgramVersion)
++ about.set_copyright(ProgramAuthor)
++ about.set_program_name(ProgramName)
++ item = lambda(x): self.about_dialog(about)
++ about_item= gtk.MenuItem('About')
++ about_item.connect("activate", item)
++ helpmenu.append(home_item)
++ helpmenu.append(about_item)
+
-+ table = gtk.Table(3, 2, True)
-+ vbox.add(table)
-+ # IP
-+ ip_label = gtk.Label('Server IP:')
-+ ip_label.set_alignment(xalign=0.0, yalign=0.5)
-+ self.ip = gtk.Entry()
-+ self.ip.set_text(self.options.ip)
-+ table.attach(ip_label,0, 1, 0, 1)
-+ table.attach(self.ip,1, 2, 0, 1)
-+ ip_label.show()
-+ self.ip.show()
-+
-+ # Port
-+ port_label = gtk.Label('Server Port:')
-+ port_label.set_alignment(xalign=0.0, yalign=0.5)
-+ self.port_number = gtk.Entry()
-+ self.port_number.set_text(str(self.options.port))
-+ table.attach(port_label,0, 1, 1, 2)
-+ table.attach(self.port_number,1, 2, 1, 2)
-+ port_label.show()
-+ self.port_number.show()
-+
-+ # Password
-+ passwd_label = gtk.Label('Choose Password:')
-+ passwd_label.set_alignment(xalign=0.0, yalign=0.5)
-+ self.password = gtk.Entry()
-+ self.password.set_visibility(False)
-+ self.password.connect("activate", lambda e: self.start())
-+ table.attach(passwd_label,0, 1, 2, 3)
-+ table.attach(self.password ,1, 2, 2, 3)
-+ passwd_label.show()
-+ self.password.show()
++ vbox.pack_start(self.menu, False, False, 0)
+
-+ # Prepare the canvas
-+ self.canvas = gtk.DrawingArea()
-+ self.canvas.set_size_request(300, 101)
-+ self.canvas.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse("black"))
-+ vbox.add(self.canvas)
-+ self.gc = None # initialized in realize-event handler
-+ self.canvas.connect('expose-event', self.on_expose_event)
-+ self.canvas.connect('realize', self.on_realize)
-+ self.canvas.show()
-+
-+ # Prepare the frame
-+ frame = gtk.HButtonBox()
-+ vbox.add(frame)
-+ frame.show()
-+
-+ # Start button
-+ start_image=gtk.Image()
-+ start_image.set_from_icon_name(gtk.STOCK_EXECUTE,gtk.ICON_SIZE_BUTTON)
-+ self.button_start = gtk.Button(label='start server')
-+ self.button_start.set_image(start_image)
-+ frame.add(self.button_start)
-+ self.button_start.show()
-+ self.button_start.connect("clicked", self.start)
-+
-+ # Stopt button
-+ stop_image=gtk.Image()
-+ stop_image.set_from_icon_name(gtk.STOCK_STOP,gtk.ICON_SIZE_BUTTON)
-+ self.button_stop = gtk.Button(label='stop server')
-+ self.button_stop.set_image(stop_image)
-+ self.button_stop.set_sensitive(False)
-+ frame.add(self.button_stop)
-+ self.button_stop.show()
-+ self.button_stop.connect("clicked", self.stop)
++ table = gtk.Table(3, 2, True)
++ vbox.add(table)
++ # IP
++ ip_label = gtk.Label('Server IP:')
++ ip_label.set_alignment(xalign=0.0, yalign=0.5)
++ self.ip = gtk.Entry()
++ self.ip.set_text(self.options.ip)
++ table.attach(ip_label,0, 1, 0, 1)
++ table.attach(self.ip,1, 2, 0, 1)
++ ip_label.show()
++ self.ip.show()
++
++ # Port
++ port_label = gtk.Label('Server Port:')
++ port_label.set_alignment(xalign=0.0, yalign=0.5)
++ self.port_number = gtk.Entry()
++ self.port_number.set_text(str(self.options.port))
++ table.attach(port_label,0, 1, 1, 2)
++ table.attach(self.port_number,1, 2, 1, 2)
++ port_label.show()
++ self.port_number.show()
++
++ # Password
++ passwd_label = gtk.Label('Choose Password:')
++ passwd_label.set_alignment(xalign=0.0, yalign=0.5)
++ self.password = gtk.Entry()
++ self.password.set_visibility(False)
++ self.password.connect("activate", lambda e: self.start())
++ table.attach(passwd_label,0, 1, 2, 3)
++ table.attach(self.password ,1, 2, 2, 3)
++ passwd_label.show()
++ self.password.show()
+
-+ self.add(vbox)
-+ table.show()
-+ self.password.grab_focus()
-+ self.connect("destroy", self.quit)
-+
-+ def about_dialog(self,dialog):
-+ dialog.run()
-+ dialog.hide()
++ # Prepare the canvas
++ self.canvas = gtk.DrawingArea()
++ self.canvas.set_size_request(300, 101)
++ self.canvas.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse("black"))
++ vbox.add(self.canvas)
++ self.gc = None # initialized in realize-event handler
++ self.canvas.connect('expose-event', self.on_expose_event)
++ self.canvas.connect('realize', self.on_realize)
++ self.canvas.show()
++
++ # Prepare the frame
++ frame = gtk.HButtonBox()
++ vbox.add(frame)
++ frame.show()
++
++ # Start button
++ start_image=gtk.Image()
++ start_image.set_from_icon_name(gtk.STOCK_EXECUTE,gtk.ICON_SIZE_BUTTON)
++ self.button_start = gtk.Button(label='start server')
++ self.button_start.set_image(start_image)
++ frame.add(self.button_start)
++ self.button_start.show()
++ self.button_start.connect("clicked", self.start)
++
++ # Stopt button
++ stop_image=gtk.Image()
++ stop_image.set_from_icon_name(gtk.STOCK_STOP,gtk.ICON_SIZE_BUTTON)
++ self.button_stop = gtk.Button(label='stop server')
++ self.button_stop.set_image(stop_image)
++ self.button_stop.set_sensitive(False)
++ frame.add(self.button_stop)
++ self.button_stop.show()
++ self.button_stop.connect("clicked", self.stop)
+
-+ def error(self, message):
-+ """ Show error message """
-+ md = gtk.MessageDialog(self, gtk.DIALOG_DESTROY_WITH_PARENT,
-+ gtk.MESSAGE_WARNING, gtk.BUTTONS_CLOSE, message)
-+ md.format_secondary_text('web2py start server')
-+ md.run()
-+ md.destroy()
++ self.add(vbox)
++ table.show()
++ self.password.grab_focus()
++ self.connect("destroy", self.quit)
++
++ def about_dialog(self,dialog):
++ dialog.run()
++ dialog.hide()
+
-+ def quit(self, menu_item):
-+ """ Finish the program execution """
++ def error(self, message):
++ """ Show error message """
++ md = gtk.MessageDialog(self, gtk.DIALOG_DESTROY_WITH_PARENT,
++ gtk.MESSAGE_WARNING, gtk.BUTTONS_CLOSE, message)
++ md.format_secondary_text('web2py start server')
++ md.run()
++ md.destroy()
+
-+ try:
-+ self.server.stop()
-+ except:
-+ pass
++ def quit(self, menu_item):
++ """ Finish the program execution """
+
-+ gtk.main_quit()
-+ sys.exit()
-+
-+ def start(self,item=None):
-+ """ Start web2py server """
++ try:
++ self.server.stop()
++ except:
++ pass
+
-+ password = self.password.get_text()
++ gtk.main_quit()
++ sys.exit()
++
++ def start(self,item=None):
++ """ Start web2py server """
+
-+ if not password:
-+ self.error('no password, no web admin interface')
++ password = self.password.get_text()
+
-+ ip = self.ip.get_text()
++ if not password:
++ self.error('no password, no web admin interface')
+
-+ regexp = '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}'
-+ if ip and not re.compile(regexp).match(ip):
-+ return self.error('invalid host ip address')
++ ip = self.ip.get_text()
+
-+ try:
-+ port = int(self.port_number.get_text())
-+ except:
-+ return self.error('invalid port number')
++ regexp = '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}'
++ if ip and not re.compile(regexp).match(ip):
++ return self.error('invalid host ip address')
+
-+ self.url = 'http://%s:%s' % (ip, port)
-+ self.connect_pages()
-+ self.button_start.set_sensitive(False)
++ try:
++ port = int(self.port_number.get_text())
++ except:
++ return self.error('invalid port number')
+
-+ try:
-+ options = self.options
-+ req_queue_size = options.request_queue_size
-+ self.server = main.HttpServer(
-+ ip,
-+ port,
-+ password,
-+ pid_filename=options.pid_filename,
-+ log_filename=options.log_filename,
-+ profiler_filename=options.profiler_filename,
-+ ssl_certificate=options.ssl_certificate,
-+ ssl_private_key=options.ssl_private_key,
-+ min_threads=options.minthreads,
-+ max_threads=options.maxthreads,
-+ server_name=options.server_name,
-+ request_queue_size=req_queue_size,
-+ timeout=options.timeout,
-+ shutdown_timeout=options.shutdown_timeout,
-+ path=options.folder,
-+ interfaces=options.interfaces)
++ self.url = 'http://%s:%s' % (ip, port)
++ self.connect_pages()
++ self.button_start.set_sensitive(False)
+
-+ thread.start_new_thread(self.server.start, ())
-+ except Exception, e:
-+ self.button_start.set_sensitive(True)
-+ return self.error(str(e))
++ try:
++ options = self.options
++ req_queue_size = options.request_queue_size
++ self.server = main.HttpServer(
++ ip,
++ port,
++ password,
++ pid_filename=options.pid_filename,
++ log_filename=options.log_filename,
++ profiler_filename=options.profiler_filename,
++ ssl_certificate=options.ssl_certificate,
++ ssl_private_key=options.ssl_private_key,
++ min_threads=options.minthreads,
++ max_threads=options.maxthreads,
++ server_name=options.server_name,
++ request_queue_size=req_queue_size,
++ timeout=options.timeout,
++ shutdown_timeout=options.shutdown_timeout,
++ path=options.folder,
++ interfaces=options.interfaces)
+
-+ self.button_stop.set_sensitive(True)
-+ if not options.taskbar:
-+ thread.start_new_thread(start_browser, (ip, port))
++ thread.start_new_thread(self.server.start, ())
++ except Exception, e:
++ self.button_start.set_sensitive(True)
++ return self.error(str(e))
+
-+ self.password.set_sensitive(False)
-+ self.ip.set_sensitive(False)
-+ self.port_number.set_sensitive(False)
-+
-+ gobject.timeout_add(1000, self.update_canvas)
-+
-+ def stop(self,item=None):
-+ self.button_stop.set_sensitive(False)
-+ self.button_start.set_sensitive(True)
-+ self.password.set_sensitive(True)
-+ self.ip.set_sensitive(True)
-+ self.port_number.set_sensitive(True)
-+ self.server.stop()
-+
-+ def connect_pages(self):
-+ """ Connect pages """
-+ def get_label(menu_item):
-+ url=menu_item.get_child().get_label()
-+ try_start_browser(url)
++ self.button_stop.set_sensitive(True)
++ if not options.taskbar:
++ thread.start_new_thread(start_browser, (ip, port))
++
++ self.password.set_sensitive(False)
++ self.ip.set_sensitive(False)
++ self.port_number.set_sensitive(False)
+
-+ for arq in os.listdir('applications/'):
-+ if os.path.exists('applications/%s/__init__.py' % arq):
-+ url = self.url + '/' + arq
-+ start_browser = lambda u =url: get_label(u)
-+ page_item = gtk.MenuItem(url)
-+ page_item.connect("activate", start_browser)
-+ page_item.show()
-+ self.pagesmenu.append(page_item)
++ gobject.timeout_add(1000, self.update_canvas)
++
++ def stop(self,item=None):
++ self.button_stop.set_sensitive(False)
++ self.button_start.set_sensitive(True)
++ self.password.set_sensitive(True)
++ self.ip.set_sensitive(True)
++ self.port_number.set_sensitive(True)
++ self.server.stop()
++
++ def connect_pages(self):
++ """ Connect pages """
++ def get_label(menu_item):
++ url=menu_item.get_child().get_label()
++ try_start_browser(url)
+
-+
-+ def update_canvas(self):
++ for arq in os.listdir('applications/'):
++ if os.path.exists('applications/%s/__init__.py' % arq):
++ url = self.url + '/' + arq
++ start_browser = lambda u =url: get_label(u)
++ page_item = gtk.MenuItem(url)
++ page_item.connect("activate", start_browser)
++ page_item.show()
++ self.pagesmenu.append(page_item)
++
++
++ def update_canvas(self):
+
-+ self.queue_draw()
-+ gobject.timeout_add(1000, self.update_canvas)
-+
-+ def on_expose_event(self, widget, event):
++ self.queue_draw()
++ gobject.timeout_add(1000, self.update_canvas)
++
++ def on_expose_event(self, widget, event):
+
-+ try:
-+ t1 = os.path.getsize('httpserver.log')
++ try:
++ t1 = os.path.getsize('httpserver.log')
+
-+ except:
-+ gobject.timeout_add(1000, self.update_canvas)
-+ return
-+
++ except:
++ gobject.timeout_add(1000, self.update_canvas)
++ return
++
+
++ try:
++ fp = open('httpserver.log', 'r')
++ fp.seek(self.t0)
++ data = fp.read(t1 - self.t0)
++ fp.close()
++ value = self.p0[1:] + [10 +int( 90.0 / math.sqrt(1 + data.count('\n')))]
++ self.p0 = value
++ points=[]
+
-+ try:
-+ fp = open('httpserver.log', 'r')
-+ fp.seek(self.t0)
-+ data = fp.read(t1 - self.t0)
-+ fp.close()
-+ value = self.p0[1:] + [10 +int( 90.0 / math.sqrt(1 + data.count('\n')))]
-+ self.p0 = value
-+ points=[]
++ for i in xrange(len(self.p0)-1):
++ points.append((i,value[i]))
++
++ self.t0 = t1
++ widget.window.draw_lines(self.gc, points)
+
-+ for i in xrange(len(self.p0)-1):
-+ points.append((i,value[i]))
-+
-+ self.t0 = t1
-+ widget.window.draw_lines(self.gc, points)
-+
-+
+
-+ except BaseException:
-+ self.t0 = time.time()
-+ self.t0 = t1
-+ self.p0 = [100] * 320
-+
-+
-+
-+ def on_realize(self, widget):
-+ self.gc = widget.window.new_gc()
-+ self.gc.set_rgb_fg_color(gtk.gdk.color_parse("green"))
-+ self.gc.set_line_attributes(1, gtk.gdk.LINE_SOLID,
-+ gtk.gdk.CAP_PROJECTING, gtk.gdk.JOIN_MITER)
-+
-+def setup_gtk(*args):
-+ options=args[0]
-+ main=web2pyGtkDialog(options)
-+ gobject.timeout_add(5000, main.show_all)
++ except BaseException:
++ self.t0 = time.time()
++ self.t0 = t1
++ self.p0 = [100] * 320
++
++
++ def on_realize(self, widget):
++ self.gc = widget.window.new_gc()
++ self.gc.set_rgb_fg_color(gtk.gdk.color_parse("green"))
++ self.gc.set_line_attributes(1, gtk.gdk.LINE_SOLID,
++ gtk.gdk.CAP_PROJECTING, gtk.gdk.JOIN_MITER)
++
+
++ options=args[0]
++ mymain=web2pyGtkDialog(options)
++ gobject.timeout_add(5000, mymain.show_all)
++
++
def presentation(root):
- """ Draw the splash screen """
+ """ Draw the splash screen Tk"""
root.withdraw()
-@@ -438,7 +728,6 @@
+@@ -913,18 +1206,44 @@
- self.canvas.after(1000, self.update_canvas)
-
--
- def console():
- """ Defines the behavior of the console web2py execution """
- import optparse
-@@ -834,21 +1123,49 @@
- sys.exit(1)
-
- root = None
-+ splash = None
-
if not options.nogui:
try:
- import Tkinter
@@ -408,8 +400,8 @@
+ logger.warn('GUI not available because neither gtk nor Tk libraries are not installed')
+ havetk = False
+ haveUI=havegtk or havetk
-+
-+
++
++ splash = None
+ if options.password == '<ask>' and haveUI or options.taskbar and haveUI:
+ if havegtk:
+ splash=contrib.gtk_presentation.Presentation('splashlogo.gif', ProgramName,ProgramAuthor,ProgramVersion)
@@ -418,7 +410,6 @@
+ root = Tkinter.Tk()
+ except:
+ pass
-+
+ #if gtk interface:
+ if splash:
+ # ensure it is rendered immediately
@@ -428,9 +419,9 @@
+ gobject.timeout_add(5000, splash.hide) # 5*1000 miliseconds
+ gobject.idle_add(setup_gtk,options)
+
-+ gtk.main()
-+ sys.exit()
-+
++ gtk.main()
++ sys.exit()
++
+ #if tk interface:
if root:
root.focus_force()
Modified: packages/web2py/trunk/debian/patches/launcher
===================================================================
--- packages/web2py/trunk/debian/patches/launcher 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/patches/launcher 2015-09-07 21:40:02 UTC (rev 34190)
@@ -1,8 +1,8 @@
-Index: web2py-1.96.4/web2py
+Index: web2py-1.99.4/web2py
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ web2py-1.96.4/web2py 2011-06-27 10:34:18.000000000 +0200
-@@ -0,0 +1,120 @@
++++ web2py-1.99.4/web2py 2011-12-14 19:09:48.018663053 +0100
+@@ -0,0 +1,124 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+##############################################################################
@@ -65,15 +65,19 @@
+def copy_skeleton(app_name):
+ new_dir=os.path.join(web2py_applications,app_name)
+ if not create_dir(new_dir):
-+ for subfolder in ('controllers', 'languages','models','static','views'):
++ for subfolder in ('controllers', 'languages','models','static','views','private'):
+ folder_path = os.path.join(new_dir, subfolder)
+ if not os.path.exists(folder_path):
+ original_path=os.path.join(web2py_skeleton,app_name,subfolder)
-+ os.symlink(original_path,folder_path)
++ if os.path.exists(original_path):
++ os.symlink(original_path,folder_path)
+
+ for subfolder in ('databases','modules', 'cron', 'errors', 'sessions',
-+ 'private', 'uploads'):
-+ os.mkdir(os.path.join(new_dir,subfolder))
++ 'private', 'uploads'):
++ try:
++ os.mkdir(os.path.join(new_dir,subfolder))
++ except:
++ pass #the dir has been previously symlinked
+
+web2py_skeleton="/usr/share/web2py/applications"
+home_user=pwd.getpwuid(os.getuid())[5]
Modified: packages/web2py/trunk/debian/python-web2py.install
===================================================================
--- packages/web2py/trunk/debian/python-web2py.install 2015-09-07 11:31:26 UTC (rev 34189)
+++ packages/web2py/trunk/debian/python-web2py.install 2015-09-07 21:40:02 UTC (rev 34190)
@@ -1,4 +1,4 @@
-applications/examples/static/img/favicon.png usr/share/pixmaps
+applications/examples/static/images/favicon.png usr/share/pixmaps
applications usr/share/web2py
VERSION usr/share/web2py
web2py.py usr/share/web2py
More information about the Python-modules-commits
mailing list