[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

please unblock webhelpers 1.1-1



Hi,

Please unblock webhelpers 1.1-1 for Squeeze.

It's a new upstream version that fixes licensing problem
(I've missed "The Software shall be used for Good, not Evil."
previously). There are no other upstream changes in the code
(except removing one meaningless import line).
-- 
Piotr Ożarowski                         Debian GNU/Linux Developer
www.ozarowski.pl          www.griffith.cc           www.debian.org
GPG Fingerprint: 1D2F A898 58DA AF62 1786 2DF7 AEF6 F1A2 A745 7645
diff -Nru webhelpers-1.0/CHANGELOG webhelpers-1.1/CHANGELOG
--- webhelpers-1.0/CHANGELOG	2010-06-02 07:41:08.000000000 +0200
+++ webhelpers-1.1/CHANGELOG	2010-08-10 02:48:14.000000000 +0200
@@ -6,6 +6,24 @@
 
 No changes yet.
 
+1.1 (2010-08-09)
+----------------
+
+* webhelpers.paginate:
+
+  - Remove stray Routes import. (Other conditional Routes imports remain for
+    backward compatibility; see module docstring.)
+
+* webhelpers.pylonslib.minify:
+
+  - Remove _jsmin module due to licensing issues. Details are in
+    webhelpers/pylonslib/_jsmin.py .  You can install the "jsmin" package in
+    PyPI (which has the same license), and the helper will use it. If that
+    package is installed, the helper will use it.  Otherwise the helper will
+    emit a warning and leave the Javascript unchanged. CSS minification is not
+    affected.
+
+
 1.0 (2010-06-01)
 -----------------
 
diff -Nru webhelpers-1.0/debian/changelog webhelpers-1.1/debian/changelog
--- webhelpers-1.0/debian/changelog	2010-08-13 19:44:07.000000000 +0200
+++ webhelpers-1.1/debian/changelog	2010-08-13 19:44:08.000000000 +0200
@@ -1,3 +1,13 @@
+webhelpers (1.1-1) unstable; urgency=low
+
+  * New upstream release
+    - webhelpers.pylonslib._jsmin module removed due to licensing issues
+  * debian/copyright file updated
+  * Standards-Version bumped to 3.9.1:
+    - BSD license included directly in debian/copyright
+
+ -- Piotr Ożarowski <piotr@debian.org>  Fri, 13 Aug 2010 18:58:48 +0200
+
 webhelpers (1.0-1) unstable; urgency=low
 
   * New upstream release
diff -Nru webhelpers-1.0/debian/control webhelpers-1.1/debian/control
--- webhelpers-1.0/debian/control	2010-08-13 19:44:07.000000000 +0200
+++ webhelpers-1.1/debian/control	2010-08-13 19:44:08.000000000 +0200
@@ -5,7 +5,7 @@
 Uploaders: Oleksandr Moskalenko <malex@debian.org>, Piotr Ożarowski <piotr@debian.org>
 Build-Depends: debhelper (>= 5)
 Build-Depends-Indep: python-all (>= 2.5.4), python-support (>= 0.6.4), python-setuptools (>= 0.6b3)
-Standards-Version: 3.8.4
+Standards-Version: 3.9.1
 Vcs-Svn: svn://svn.debian.org/python-modules/packages/webhelpers/trunk/
 Vcs-Browser: http://svn.debian.org/viewsvn/python-modules/packages/webhelpers/trunk/
 Homepage: http://pylonshq.com/WebHelpers/
diff -Nru webhelpers-1.0/debian/copyright webhelpers-1.1/debian/copyright
--- webhelpers-1.0/debian/copyright	2010-08-13 19:44:07.000000000 +0200
+++ webhelpers-1.1/debian/copyright	2010-08-13 19:44:08.000000000 +0200
@@ -13,36 +13,202 @@
 
 License:
 
- Most of this package is licensed under the 3-clause BSD License.
-
- On Debian GNU/Linux systems, the complete text of the BSD license can be
- found in `/usr/share/common-licenses/BSD'.
-
-
- JavaScript scripts in webhelpers/rails/javascripts/ are licensed under the
- MIT license:
-
- Permission is hereby granted, free of charge, to any person obtaining
- a copy of this software and associated documentation files (the
- "Software"), to deal in the Software without restriction, including
- without limitation the rights to use, copy, modify, merge, publish,
- distribute, sublicense, and/or sell copies of the Software, and to
- permit persons to whom the Software is furnished to do so, subject to
- the following conditions:
-
- The above copyright notice and this permission notice shall be
- included in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ Copyright (c) 2005-2009 Ben Bangert, James Gardner, Philip Jenvey,
+                         Mike Orr, Jon Rosenbaugh, Christoph Haas, 
+                         and other contributors.
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ 1. Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in the
+    documentation and/or other materials provided with the distribution.
+ 3. The name of the author or contributors may not be used to endorse or
+    promote products derived from this software without specific prior
+    written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ SUCH DAMAGE.
+
+
+ ------------------------------------------------------------------------------
+
+
+ Portions of WebHelpers covered by the following license::
+
+ Copyright (c) 2005, the Lawrence Journal-World
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without modification,
+ are permitted provided that the following conditions are met:
+
+     1. Redistributions of source code must retain the above copyright notice, 
+        this list of conditions and the following disclaimer.
+    
+     2. Redistributions in binary form must reproduce the above copyright 
+        notice, this list of conditions and the following disclaimer in the
+        documentation and/or other materials provided with the distribution.
+
+     3. Neither the name of Django nor the names of its contributors may be used
+        to endorse or promote products derived from this software without
+        specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+-----------------------------------------------------------
+
+webhelpers/paginate.py file:
+
+ Copyright (c) 2007,2008 Christoph Haas <email@christoph-haas.de>
+
+  License:
+
+  This software can be used under the terms of the MIT license:
+
+  Permission is hereby granted, free of charge, to any person obtaining a 
+  copy of this software and associated documentation files (the 
+  "Software"), to deal in the Software without restriction, including 
+  without limitation the rights to use, copy, modify, merge, publish, 
+  distribute, sublicense, and/or sell copies of the Software, and to 
+  permit persons to whom the Software is furnished to do so, subject to 
+  the following conditions:
+
+  The above copyright notice and this permission notice shall be included 
+  in all copies or substantial portions of the Software.
+
+  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 
+  OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
+  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
+  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 
+  CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
+  TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
+  SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+-----------------------------------------------------------
+
+webhelpers/textile.py file:
+
+ Copyright (c) 2004, Roberto A. F. De Almeida, http://dealmeida.net/
+ Copyright (c) 2003, Mark Pilgrim, http://diveintomark.org/
+ All rights reserved.
+ 
+ Original PHP version (Version 1.0, 21 Feb, 2003):
+ 
+ Copyright (c) 2003, Dean Allen, www.textism.com
+ All rights reserved.
+ 
+ Parts of the documentation and some of the regular expressions are (c) Brad
+ Choate, http://bradchoate.com/. Thanks, Brad!
+ 
+ License:
+
+ Redistribution and use in source and binary forms, with or without 
+ modification, are permitted provided that the following conditions are met:
+ 
+ * Redistributions of source code must retain the above copyright notice, 
+   this list of conditions and the following disclaimer.
+ 
+ * Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+ 
+ * Neither the name Textile nor the names of its contributors may be used to
+   endorse or promote products derived from this software without specific
+   prior written permission.
+ 
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+
+-----------------------------------------------------------
+
+webhelpers/feedgenerator.py file:
+
+  Copyright (c) Django Software Foundation and individual contributors.
+  All rights reserved.
+  
+  Redistribution and use in source and binary forms, with or without modification,
+  are permitted provided that the following conditions are met:
+  
+      1. Redistributions of source code must retain the above copyright notice, 
+         this list of conditions and the following disclaimer.
+      
+      2. Redistributions in binary form must reproduce the above copyright 
+         notice, this list of conditions and the following disclaimer in the
+         documentation and/or other materials provided with the distribution.
+  
+      3. Neither the name of Django nor the names of its contributors may be used
+         to endorse or promote products derived from this software without
+         specific prior written permission.
+  
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+  DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+  ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+  ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+-----------------------------------------------------------
+
+webhelpers/html/render.py file:
+
+  Copyright (c) 2005 Imaginary Landscape LLC and Contributors.
+ 
+  Permission is hereby granted, free of charge, to any person obtaining
+  a copy of this software and associated documentation files (the
+  "Software"), to deal in the Software without restriction, including
+  without limitation the rights to use, copy, modify, merge, publish,
+  distribute, sublicense, and/or sell copies of the Software, and to
+  permit persons to whom the Software is furnished to do so, subject to
+  the following conditions:
+ 
+  The above copyright notice and this permission notice shall be
+  included in all copies or substantial portions of the Software.
+ 
+  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+  LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+  OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
+-----------------------------------------------------------
 
 Debian packaging:
 
- The Debian packaging is (C) 2006-2010, Oleksandr Moskalenko
+ The Debian packaging is © 2006-2010, Oleksandr Moskalenko
  <malex@debian.org> and is licensed under the BSD license as above.
diff -Nru webhelpers-1.0/docs/build webhelpers-1.1/docs/build
--- webhelpers-1.0/docs/build	2010-02-22 18:21:52.000000000 +0100
+++ webhelpers-1.1/docs/build	1970-01-01 01:00:00.000000000 +0100
@@ -1,4 +0,0 @@
-#!/bin/sh -e
-mkdir -p _build/html _build/doctrees
-PYTHONPATH=.. sphinx-build -b html -d _build/doctrees  . _build/html
-echo "The build is finished; HTML files are in _build/html ."
diff -Nru webhelpers-1.0/docs/conf.py webhelpers-1.1/docs/conf.py
--- webhelpers-1.0/docs/conf.py	2010-06-02 07:45:51.000000000 +0200
+++ webhelpers-1.1/docs/conf.py	2010-08-10 02:24:59.000000000 +0200
@@ -41,9 +41,9 @@
 # other places throughout the built documents.
 #
 # The short X.Y version.
-version = '1.0'
+version = '1.1'
 # The full version, including alpha/beta/rc tags.
-release = '1.0'
+release = '1.1'
 
 # There are two options for replacing |today|: either, you set today to some
 # non-false value, then it is used:
diff -Nru webhelpers-1.0/docs/conf.py.1 webhelpers-1.1/docs/conf.py.1
--- webhelpers-1.0/docs/conf.py.1	2010-06-02 07:40:30.000000000 +0200
+++ webhelpers-1.1/docs/conf.py.1	1970-01-01 01:00:00.000000000 +0100
@@ -1,185 +0,0 @@
-# -*- coding: utf-8 -*-
-#
-# WebHelpers documentation build configuration file
-#
-# This file is execfile()d with the current directory set to its containing dir.
-#
-# The contents of this file are pickled, so don't put values in the namespace
-# that aren't pickleable (module imports are okay, they're removed automatically).
-#
-# All configuration values have a default value; values that are commented out
-# serve to show the default value.
-
-import sys, os
-
-# If your extensions are in another directory, add it here. If the directory
-# is relative to the documentation root, use os.path.abspath to make it
-# absolute, like shown here.
-#sys.path.append(os.path.abspath('.'))
-
-# General configuration
-# ---------------------
-
-# Add any Sphinx extension module names here, as strings. They can be extensions
-# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
-extensions = ['sphinx.ext.autodoc']
-
-# Add any paths that contain templates here, relative to this directory.
-templates_path = ['_templates']
-
-# The suffix of source filenames.
-source_suffix = '.rst'
-
-# The master toctree document.
-master_doc = 'contents'
-
-# General substitutions.
-project = 'WebHelpers'
-copyright = '2009-2010, Ben Bangert and Mike Orr'
-
-# The default replacements for |version| and |release|, also used in various
-# other places throughout the built documents.
-#
-# The short X.Y version.
-version = '1.0.1'
-# The full version, including alpha/beta/rc tags.
-release = '1.0.1'
-
-# There are two options for replacing |today|: either, you set today to some
-# non-false value, then it is used:
-#today = ''
-# Else, today_fmt is used as the format for a strftime call.
-today_fmt = '%B %d, %Y'
-
-# List of documents that shouldn't be included in the build.
-#unused_docs = []
-
-# If true, '()' will be appended to :func: etc. cross-reference text.
-#add_function_parentheses = True
-
-# If true, the current module name will be prepended to all description
-# unit titles (such as .. function::).
-#add_module_names = True
-
-# If true, sectionauthor and moduleauthor directives will be shown in the
-# output. They are ignored by default.
-#show_authors = False
-
-# The name of the Pygments (syntax highlighting) style to use.
-pygments_style = 'sphinx'
-
-
-# Options for HTML output
-# -----------------------
-
-# The style sheet to use for HTML and HTML Help pages. A file of that name
-# must exist either in Sphinx' static/ path, or in one of the custom paths
-# given in html_static_path.
-html_style = 'default.css'
-
-# Add any paths that contain custom static files (such as style sheets) here,
-# relative to this directory. They are copied after the builtin static files,
-# so a file named "default.css" will overwrite the builtin "default.css".
-html_static_path = ['_static']
-
-# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
-# using the given strftime format.
-#html_last_updated_fmt = '%b %d, %Y'
-
-# If true, SmartyPants will be used to convert quotes and dashes to
-# typographically correct entities.
-#html_use_smartypants = True
-
-html_index = 'index.html'
-
-# Custom sidebar templates, maps document names to template names.
-html_sidebars = {'index': 'indexsidebar.html'}
-
-# Additional templates that should be rendered to pages, maps page names to
-# template names.
-html_additional_pages = {'index': 'index.html'}
-
-html_theme_options = {
-    "bgcolor": "#fff",
-    "footertextcolor": "#666",
-    "relbarbgcolor": "#fff",
-    "relbarlinkcolor": "#590915",
-    "relbartextcolor": "#FFAA2D",
-    "sidebarlinkcolor": "#590915",
-    "sidebarbgcolor": "#fff",
-    "sidebartextcolor": "#333",
-    "footerbgcolor": "#fff",
-    "linkcolor": "#590915",
-    "bodyfont": "helvetica, 'bitstream vera sans', sans-serif",
-    "headfont": "georgia, 'bitstream vera sans serif', 'lucida grande', helvetica, verdana, sans-serif",
-    "headbgcolor": "#fff",
-    "headtextcolor": "#12347A",
-    "codebgcolor": "#fff",
-}
-
-# If false, no module index is generated.
-#html_use_modindex = True
-
-# If false, no index is generated.
-#html_use_index = True
-
-# If true, the index is split into individual pages for each letter.
-#html_split_index = False
-
-# If true, the reST sources are included in the HTML build as _sources/<name>.
-#html_copy_source = True
-
-# If true, an OpenSearch description file will be output, and all pages will
-# contain a <link> tag referring to it.  The value of this option must be the
-# base URL from which the finished HTML is served.
-html_use_opensearch = 'http://webhelpers.groovie.org/'
-
-# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
-#html_file_suffix = ''
-
-# Output file base name for HTML help builder.
-htmlhelp_basename = 'WebHelpersdoc'
-
-
-# Options for LaTeX output
-# ------------------------
-
-# The paper size ('letter' or 'a4').
-#latex_paper_size = 'letter'
-
-# The font size ('10pt', '11pt' or '12pt').
-#latex_font_size = '10pt'
-
-# Grouping the document tree into LaTeX files. List of tuples
-# (source start file, target name, title, author, document class [howto/manual]).
-latex_documents = [
-  ('contents', 'WebHelpers.tex', u'WebHelpers Documentation',
-   u'Ben Bangert', 'manual'),
-]
-
-# The name of an image file (relative to this directory) to place at the top of
-# the title page.
-#latex_logo = None
-
-# For "manual" documents, if this is true, then toplevel headings are parts,
-# not chapters.
-#latex_use_parts = False
-
-# Additional stuff for the LaTeX preamble.
-latex_preamble = '''
-\usepackage{palatino}
-\definecolor{TitleColor}{rgb}{0.7,0,0}
-\definecolor{InnerLinkColor}{rgb}{0.7,0,0}
-\definecolor{OuterLinkColor}{rgb}{0.8,0,0}
-\definecolor{VerbatimColor}{rgb}{0.985,0.985,0.985}
-\definecolor{VerbatimBorderColor}{rgb}{0.8,0.8,0.8}
-'''
-
-# Documents to append as an appendix to all manuals.
-#latex_appendices = []
-
-# If false, no module index is generated.
-latex_use_modindex = False
-
-# Added to handle docs in middleware.py
-autoclass_content = "both"
diff -Nru webhelpers-1.0/docs/_templates/index.html webhelpers-1.1/docs/_templates/index.html
--- webhelpers-1.0/docs/_templates/index.html	2010-06-02 07:28:40.000000000 +0200
+++ webhelpers-1.1/docs/_templates/index.html	2010-08-10 02:48:53.000000000 +0200
@@ -8,9 +8,8 @@
   
 <p>WebHelpers is a wide variety of utility functions for web applications and
 other applications. It can be used with any web framework.  <strong>Version
-1.0</strong> was released 2009-06-01, and contains many enhancements compared
-to 0.6.4 while remaining compatible.  See <a href="whats_new.html">What's
-New</a> for a list of changes in 1.0 and upgrading hints.  (The helpers
+1.1</strong> was released 2009-08-09.  See <a href="whats_new.html">What's
+New</a> for a list of changes and upgrading hints.  (The helpers
 deprecated in 0.6 are removed in 1.0, including the entire rails suite.)</p>
 
 <p>WebHelpers includes the widely-used HTML tag builder with smart escaping and
diff -Nru webhelpers-1.0/docs/whats_new.rst webhelpers-1.1/docs/whats_new.rst
--- webhelpers-1.0/docs/whats_new.rst	2010-06-02 07:42:50.000000000 +0200
+++ webhelpers-1.1/docs/whats_new.rst	2010-08-10 03:20:36.000000000 +0200
@@ -5,6 +5,18 @@
 in boldface;** these may require modifying your application.  See `Changelog
 <changelog.html>`_ for the full changelog.
 
+Version 1.1
+-----------
+
+*webhelpers.pylonslib.minify*
+
+    **The ``_jsmin`` module was removed due to a licensing issue.** (Fedora
+    could not distribute it due to a non-free clause in the license.) **To
+    minify Javascript, you must install the external "jsmin" package from
+    PyPI.** Otherwise the helper will pass Javascript through unchanged
+    and issue a warning. CSS minification is not affected.
+
+
 Version 1.0
 -----------
 
diff -Nru webhelpers-1.0/PKG-INFO webhelpers-1.1/PKG-INFO
--- webhelpers-1.0/PKG-INFO	2010-06-02 07:46:15.000000000 +0200
+++ webhelpers-1.1/PKG-INFO	2010-08-10 03:24:31.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.0
 Name: WebHelpers
-Version: 1.0
+Version: 1.1
 Summary: Web Helpers
 Home-page: http://webhelpers.groovie.org/
 Author: Mike Orr, Ben Bangert, Phil Jenvey
diff -Nru webhelpers-1.0/setup.py webhelpers-1.1/setup.py
--- webhelpers-1.0/setup.py	2010-06-02 07:45:51.000000000 +0200
+++ webhelpers-1.1/setup.py	2010-08-10 02:24:30.000000000 +0200
@@ -5,7 +5,7 @@
     use_setuptools()
     from setuptools import setup, find_packages
 
-version = '1.0'
+version = '1.1'
 
 setup(
     name="WebHelpers",
diff -Nru webhelpers-1.0/webhelpers/paginate.py webhelpers-1.1/webhelpers/paginate.py
--- webhelpers-1.0/webhelpers/paginate.py	2010-05-16 11:32:07.000000000 +0200
+++ webhelpers-1.1/webhelpers/paginate.py	2010-07-16 21:59:19.000000000 +0200
@@ -791,7 +791,6 @@
         text
             Text to be printed in the A-HREF tag
         """
-        from routes import url_for, request_config
         # Let the url_for() from webhelpers create a new link and set
         # the variable called 'page_param'. Example:
         # You are in '/foo/bar' (controller='foo', action='bar')
diff -Nru webhelpers-1.0/webhelpers/pylonslib/_jsmin.py webhelpers-1.1/webhelpers/pylonslib/_jsmin.py
--- webhelpers-1.0/webhelpers/pylonslib/_jsmin.py	2010-05-16 04:22:37.000000000 +0200
+++ webhelpers-1.1/webhelpers/pylonslib/_jsmin.py	2010-08-10 01:51:32.000000000 +0200
@@ -1,240 +1,21 @@
 #!/usr/bin/python
-"""A Javascript minification utility.
 
-Users should not use this module directly; see the ``minify`` module instead.
-
-Minification squeezes out spaces and other characters not significant to
-Javascript.  This results in a shorter file size.
-
-Usage::
-
-    jsm = JavascriptMinify()
-    jsm.minify(input_file_object, output_file_object)
-
-Or if the Javascript is in a string (slightly less efficient)::
-
-    js = jsmin(js)
-
-This is a wrapper around ``JavscriptMinify``, so if your input and output are
-already file objects, it's more efficient to use ``JavascriptMinify`` directly.
-
-Originally written in C by Douglas Crockford, and ported to Python by Baruch 
-Even.
-"""
-
-# This code is original from jsmin by Douglas Crockford, it was translated to
-# Python by Baruch Even. The original code had the following copyright and
-# license.
-#
-# /* jsmin.c
-#    2007-05-22
-#
-# Copyright (c) 2002 Douglas Crockford  (www.crockford.com)
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy of
-# this software and associated documentation files (the "Software"), to deal in
-# the Software without restriction, including without limitation the rights to
-# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-# of the Software, and to permit persons to whom the Software is furnished to do
-# so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in all
-# copies or substantial portions of the Software.
-#
-# The Software shall be used for Good, not Evil.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-# */
-
-from StringIO import StringIO
-
-def jsmin(js):
-    ins = StringIO(js)
-    outs = StringIO()
-    JavascriptMinify().minify(ins, outs)
-    str = outs.getvalue()
-    if len(str) > 0 and str[0] == '\n':
-        str = str[1:]
-    return str
-
-def isAlphanum(c):
-    """return true if the character is a letter, digit, underscore,
-           dollar sign, or non-ASCII character.
-    """
-    return ((c >= 'a' and c <= 'z') or (c >= '0' and c <= '9') or
-            (c >= 'A' and c <= 'Z') or c == '_' or c == '$' or c == '\\' or (c is not None and ord(c) > 126));
-
-class UnterminatedComment(Exception):
-    pass
-
-class UnterminatedStringLiteral(Exception):
-    pass
-
-class UnterminatedRegularExpression(Exception):
-    pass
-
-class JavascriptMinify(object):
-
-    def _outA(self):
-        self.outstream.write(self.theA)
-    def _outB(self):
-        self.outstream.write(self.theB)
-
-    def _get(self):
-        """return the next character from stdin. Watch out for lookahead. If
-           the character is a control character, translate it to a space or
-           linefeed.
-        """
-        c = self.theLookahead
-        self.theLookahead = None
-        if c == None:
-            c = self.instream.read(1)
-        if c >= ' ' or c == '\n':
-            return c
-        if c == '': # EOF
-            return '\000'
-        if c == '\r':
-            return '\n'
-        return ' '
-
-    def _peek(self):
-        self.theLookahead = self._get()
-        return self.theLookahead
-
-    def _next(self):
-        """get the next character, excluding comments. peek() is used to see
-           if a '/' is followed by a '/' or '*'.
-        """
-        c = self._get()
-        if c == '/':
-            p = self._peek()
-            if p == '/':
-                c = self._get()
-                while c > '\n':
-                    c = self._get()
-                return c
-            if p == '*':
-                c = self._get()
-                while 1:
-                    c = self._get()
-                    if c == '*':
-                        if self._peek() == '/':
-                            self._get()
-                            return ' '
-                    if c == '\000':
-                        raise UnterminatedComment()
-
-        return c
-
-    def _action(self, action):
-        """do something! What you do is determined by the argument:
-           1   Output A. Copy B to A. Get the next B.
-           2   Copy B to A. Get the next B. (Delete A).
-           3   Get the next B. (Delete B).
-           action treats a string as a single character. Wow!
-           action recognizes a regular expression if it is preceded by ( or , or =.
-        """
-        if action <= 1:
-            self._outA()
-
-        if action <= 2:
-            self.theA = self.theB
-            if self.theA == "'" or self.theA == '"':
-                while 1:
-                    self._outA()
-                    self.theA = self._get()
-                    if self.theA == self.theB:
-                        break
-                    if self.theA <= '\n':
-                        raise UnterminatedStringLiteral()
-                    if self.theA == '\\':
-                        self._outA()
-                        self.theA = self._get()
-
-
-        if action <= 3:
-            self.theB = self._next()
-            if self.theB == '/' and (self.theA == '(' or self.theA == ',' or
-                                     self.theA == '=' or self.theA == ':' or
-                                     self.theA == '[' or self.theA == '?' or
-                                     self.theA == '!' or self.theA == '&' or
-                                     self.theA == '|' or self.theA == ';' or
-                                     self.theA == '{' or self.theA == '}' or
-                                     self.theA == '\n'):
-                self._outA()
-                self._outB()
-                while 1:
-                    self.theA = self._get()
-                    if self.theA == '/':
-                        break
-                    elif self.theA == '\\':
-                        self._outA()
-                        self.theA = self._get()
-                    elif self.theA <= '\n':
-                        raise UnterminatedRegularExpression()
-                    self._outA()
-                self.theB = self._next()
-
-
-    def _jsmin(self):
-        """Copy the input to the output, deleting the characters which are
-           insignificant to JavaScript. Comments will be removed. Tabs will be
-           replaced with spaces. Carriage returns will be replaced with linefeeds.
-           Most spaces and linefeeds will be removed.
-        """
-        self.theA = '\n'
-        self._action(3)
-
-        while self.theA != '\000':
-            if self.theA == ' ':
-                if isAlphanum(self.theB):
-                    self._action(1)
-                else:
-                    self._action(2)
-            elif self.theA == '\n':
-                if self.theB in ['{', '[', '(', '+', '-']:
-                    self._action(1)
-                elif self.theB == ' ':
-                    self._action(3)
-                else:
-                    if isAlphanum(self.theB):
-                        self._action(1)
-                    else:
-                        self._action(2)
-            else:
-                if self.theB == ' ':
-                    if isAlphanum(self.theA):
-                        self._action(1)
-                    else:
-                        self._action(3)
-                elif self.theB == '\n':
-                    if self.theA in ['}', ']', ')', '+', '-', '"', '\'']:
-                        self._action(1)
-                    else:
-                        if isAlphanum(self.theA):
-                            self._action(1)
-                        else:
-                            self._action(3)
-                else:
-                    self._action(1)
-
-    def minify(self, instream, outstream):
-        self.instream = instream
-        self.outstream = outstream
-        self.theA = '\n'
-        self.theB = None
-        self.theLookahead = None
-
-        self._jsmin()
-        self.instream.close()
-
-if __name__ == '__main__':
-    import sys
-    jsm = JavascriptMinify()
-    jsm.minify(sys.stdin, sys.stdout)
+raise ImportError("""\
+_jsmin has been removed from WebHelpers due to licensing issues
+Details are in this module's comments.
+A standalone "jsmin" package is available in PyPI.""")
+
+# This module used to contain an algorithm for compressing Javascript code
+# to minimize network bandwidth. It was written in C by Douglas Crockford
+# (www.crockford.com) in 1992. Baruch Even later ported it to Python, and
+# that version was added to WebHelpers. However, it retained Crockford's
+# license, which was MIT-style but contained the clause, "The Software shall be
+# used for Good, not Evil."  Fedora's lawyers have declared this clause
+# incompatible with its free-software distribution guidelines. Debian and
+# other distributions have similar guidelines. Thus, it can't be included in
+# popular Linux distributions we want WebHelpers to be in. The legal argument
+# is that while the clause is unenforceably vague ("What is an Evil purpose?"),
+# it's an implied restriction on use, which could expose users to trivial
+# harassment.  Both the WebHelpers maintainer and Fedora maintainers contacted
+# Mr Crockford and asked him to change the license. He refused, and so we have
+# removed his code.
diff -Nru webhelpers-1.0/webhelpers/pylonslib/minify.py webhelpers-1.1/webhelpers/pylonslib/minify.py
--- webhelpers-1.0/webhelpers/pylonslib/minify.py	2010-05-16 04:22:37.000000000 +0200
+++ webhelpers-1.1/webhelpers/pylonslib/minify.py	2010-08-10 02:35:55.000000000 +0200
@@ -13,7 +13,11 @@
   reduce page load time.
 * **beaker_kwargs** (dict): arguments to pass to ``beaker_cache``.
 
-Dependencies: ``Pylons``, ``Beaker``, and ``cssutils`` (all available in PyPI).
+Dependencies: ``Pylons``, ``Beaker``, ``jsmin``, and ``cssutils`` (all
+available in PyPI). If "jsmin" is not installed, the helper issues a warning
+and passes Javascript through unchanged. (Changed in WebHelpers 1.1: removed
+built-in "_jsmin" package due to licensing issues; details in 
+webhelpers/pylonslib/_jsmin.py .)
 
 Contributed by Pedro Algarvio and Domen Kozar <ufs@ufsoft.org>.
 URL: http://docs.fubar.si/minwebhelpers/
@@ -23,10 +27,26 @@
 import os
 import logging
 import StringIO
+import warnings
 
 from webhelpers.html.tags import javascript_link as __javascript_link
 from webhelpers.html.tags import stylesheet_link as __stylesheet_link
-from webhelpers.pylonslib._jsmin import JavascriptMinify
+
+try:
+    from jsmin import JavascriptMinify
+except ImportError:
+    class JavascriptMinify(object):
+        def minify(self, instream, outstream):
+            warnings.warn(JSMIN_MISSING_MESSAGE, UserWarning)
+            data = instream.read()
+            outstream.write(data)
+            instream.close()
+
+JSMIN_MISSING_MESSAGE = """\
+_jsmin has been removed from WebHelpers due to licensing issues
+Your Javascript code has been passed through unchanged.
+You can install the "jsmin" package from PyPI, and this helper will use it.
+"""
 
 
 __all__ = ['javascript_link', 'stylesheet_link']
diff -Nru webhelpers-1.0/WebHelpers.egg-info/PKG-INFO webhelpers-1.1/WebHelpers.egg-info/PKG-INFO
--- webhelpers-1.0/WebHelpers.egg-info/PKG-INFO	2010-06-02 07:46:13.000000000 +0200
+++ webhelpers-1.1/WebHelpers.egg-info/PKG-INFO	2010-08-10 03:24:19.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.0
 Name: WebHelpers
-Version: 1.0
+Version: 1.1
 Summary: Web Helpers
 Home-page: http://webhelpers.groovie.org/
 Author: Mike Orr, Ben Bangert, Phil Jenvey
diff -Nru webhelpers-1.0/WebHelpers.egg-info/SOURCES.txt webhelpers-1.1/WebHelpers.egg-info/SOURCES.txt
--- webhelpers-1.0/WebHelpers.egg-info/SOURCES.txt	2010-06-02 07:46:13.000000000 +0200
+++ webhelpers-1.1/WebHelpers.egg-info/SOURCES.txt	2010-08-10 03:24:19.000000000 +0200
@@ -13,10 +13,8 @@
 WebHelpers.egg-info/not-zip-safe
 WebHelpers.egg-info/top_level.txt
 docs/Makefile
-docs/build
 docs/changelog.rst
 docs/conf.py
-docs/conf.py.1
 docs/contents.rst
 docs/development.rst
 docs/third_party.rst

Reply to: