Spec URL: http://jbowes.dangerouslyinc.com/tmp/python-elixir.spec SRPM URL: http://jbowes.dangerouslyinc.com/tmp/python-elixir-0.3.0-1.fc7.src.rpm Description: Elixir is a declarative layer on top of SQLAlchemy. It is a fairly thin wrapper, which provides the ability to define model objects following the Active Record design pattern, and using a DSL syntax similar to that of the Ruby on Rails ActiveRecord system. Elixir does not intend to replace SQLAlchemy's core features, but instead focuses on providing a simpler syntax for defining model objects when you do not need the full expressiveness of SQLAlchemy's manual mapper definitions.
rpmlint output: $ rpmlint ~/rpmbuild/SRPMS/python-elixir-0.3.0-1.fc7.src.rpm $ rpmlint ~/rpmbuild/RPMS/noarch/python-elixir-0.3.0-1.fc7.noarch.rpm $
I built from the src rpm provided by James and was able to run the example application with no modification. [steve@psycho tmp]$ rpm -qa | grep elixir python-elixir-0.3.0-1.fc7 [steve@psycho tmp]$ svn export http://elixir.ematia.de/svn/elixir/trunk/examples/ A examples A examples/videostore A examples/videostore/videostore A examples/videostore/videostore/json.py A examples/videostore/videostore/tests A examples/videostore/videostore/tests/__init__.py A examples/videostore/videostore/tests/test_model.py A examples/videostore/videostore/tests/test_controllers.py A examples/videostore/videostore/config A examples/videostore/videostore/config/log.cfg A examples/videostore/videostore/config/__init__.py A examples/videostore/videostore/config/app.cfg A examples/videostore/videostore/__init__.py A examples/videostore/videostore/controllers A examples/videostore/videostore/controllers/__init__.py A examples/videostore/videostore/controllers/root.py A examples/videostore/videostore/model.py A examples/videostore/videostore/release.py A examples/videostore/videostore/static A examples/videostore/videostore/static/images A examples/videostore/videostore/static/images/ok.png A examples/videostore/videostore/static/images/favicon.ico A examples/videostore/videostore/static/images/info.png A examples/videostore/videostore/static/javascript A examples/videostore/videostore/static/css A examples/videostore/videostore/static/css/login.css A examples/videostore/videostore/static/css/style.css A examples/videostore/videostore/templates A examples/videostore/videostore/templates/director.kid A examples/videostore/videostore/templates/master.kid A examples/videostore/videostore/templates/movie.kid A examples/videostore/videostore/templates/__init__.py A examples/videostore/videostore/templates/index.kid A examples/videostore/videostore/templates/actor.kid A examples/videostore/videostore/templates/login.kid A examples/videostore/start-videostore.py A examples/videostore/setup.py A examples/videostore/devdata.sqlite A examples/videostore/dev.cfg A examples/videostore/videostore.egg-info A examples/videostore/videostore.egg-info/SOURCES.txt A examples/videostore/videostore.egg-info/sqlobject.txt A examples/videostore/videostore.egg-info/top_level.txt A examples/videostore/videostore.egg-info/PKG-INFO A examples/videostore/videostore.egg-info/dependency_links.txt A examples/videostore/videostore.egg-info/not-zip-safe A examples/videostore/videostore.egg-info/paster_plugins.txt A examples/videostore/videostore.egg-info/requires.txt A examples/__init__.py Exported revision 136. [steve@psycho tmp]$ cd examples/videostore [steve@psycho videostore]$ python start-videostore.py 2007-06-27 22:20:50,668 cherrypy.msg INFO CONFIG: Server parameters: 2007-06-27 22:20:50,669 cherrypy.msg INFO CONFIG: server.environment: development 2007-06-27 22:20:50,669 cherrypy.msg INFO CONFIG: server.log_to_screen: True 2007-06-27 22:20:50,669 cherrypy.msg INFO CONFIG: server.log_file: 2007-06-27 22:20:50,669 cherrypy.msg INFO CONFIG: server.log_tracebacks: True 2007-06-27 22:20:50,670 cherrypy.msg INFO CONFIG: server.log_request_headers: True 2007-06-27 22:20:50,670 cherrypy.msg INFO CONFIG: server.protocol_version: HTTP/1.0 2007-06-27 22:20:50,670 cherrypy.msg INFO CONFIG: server.socket_host: 2007-06-27 22:20:50,670 cherrypy.msg INFO CONFIG: server.socket_port: 8080 2007-06-27 22:20:50,671 cherrypy.msg INFO CONFIG: server.socket_file: 2007-06-27 22:20:50,671 cherrypy.msg INFO CONFIG: server.reverse_dns: False 2007-06-27 22:20:50,671 cherrypy.msg INFO CONFIG: server.socket_queue_size: 5 2007-06-27 22:20:50,671 cherrypy.msg INFO CONFIG: server.thread_pool: 10 2007-06-27 22:20:50,686 turbogears.visit INFO Visit Tracking starting 2007-06-27 22:20:50,688 turbogears.visit INFO Visit filter initialised 2007-06-27 22:20:50,691 turbogears.identity INFO Identity starting 2007-06-27 22:20:50,693 turbogears.identity.saprovider INFO Loading: videostore.model.VisitIdentity 2007-06-27 22:20:50,749 turbogears.identity INFO Identity visit plugin initialised 2007-06-27 22:20:50,755 turbogears.identity.saprovider INFO Loading: videostore.model.VisitIdentity 2007-06-27 22:20:50,957 cherrypy.msg INFO HTTP: Serving HTTP on http://localhost:8080/ 127.0.0.1 - - "GET / HTTP/1.1" 403 982 "" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.4) Gecko/20070603 Fedora/2.0.0.4-2.fc7 Firefox/2.0.0.4" 127.0.0.1 - - "GET /static/css/login.css HTTP/1.1" 200 872 "http://localhost:8080/" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.4) Gecko/20070603 Fedora/2.0.0.4-2.fc7 Firefox/2.0.0.4" 127.0.0.1 - - "GET /favicon.ico HTTP/1.1" 200 1081 "" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.4) Gecko/20070603 Fedora/2.0.0.4-2.fc7 Firefox/2.0.0.4" 2007-06-27 22:21:18,835 cherrypy.msg INFO ENGINE: <Ctrl-C> hit: shutting down autoreloader 2007-06-27 22:21:18,836 cherrypy.msg INFO ENGINE: <Ctrl-C> hit: shutting down autoreloader 2007-06-27 22:21:18,837 cherrypy.msg INFO HTTP: HTTP Server shut down 2007-06-27 22:21:18,841 turbogears.identity INFO Identity shutting down 2007-06-27 22:21:18,843 cherrypy.msg INFO ENGINE: CherryPy shut down 2007-06-27 22:21:18,885 cherrypy.msg INFO HTTP: HTTP Server shut down 2007-06-27 22:21:18,886 turbogears.visit INFO Visit Tracking shutting down [steve@psycho videostore]$ 2007-06-27 22:21:18,912 turbogears.identity INFO Identity shutting down 2007-06-27 22:21:18,914 cherrypy.msg INFO ENGINE: CherryPy shut down [steve@psycho videostore]$
Thanks to Steve for the test output; I'd have no idea how to test this myself. The only issues I can see are a few documentation files which should probably be included: CHANGES and TODO. If you agree, just go ahead and add them when you check in. Review: * source files match upstream: ee5feb9ecd7a0991528fbb3d2d781be4e5f0389f11a62bce11641d70bdbc444b Elixir-0.3.0.tar.gz * package meets naming and versioning guidelines. * specfile is properly named, is cleanly written and uses macros consistently. * summary is OK. * description is OK. * dist tag is present. * build root is OK. * license field matches the actual license. * license is open source-compatible. * license text included in package. * latest version is being packaged. * BuildRequires are proper. * %clean is present. * package builds in mock (development, x86_64). * package installs properly * rpmlint is silent. * final provides and requires are sane: python-elixir = 0.3.0-1.fc8 = python(abi) = 2.5 python-sqlalchemy * %check is not present (no test suite upstream) but see above for manual testing. * owns the directories it creates. * doesn't own any directories it shouldn't. * no duplicates in %files. * file permissions are appropriate. * no scriptlets present. * code, not content. * documentation is small, so no -docs subpackage is necessary. * %docs are not necessary for the proper functioning of the package. APPROVED
New Package CVS Request ======================= Package Name: python-elixir Short Description: A declarative mapper for SQLAlchemy Owners: jbowes Branches: F-7 InitialCC:
cvs done.
Package Change Request ====================== Package Name: python-elixir Updated Fedora Owners: jbowes, smilner
Package Change Request ====================== Package Name: python-elixir New Branches: EL-5