Proposal for TurboGears2 port

Thomas De Schampheleire patrickdepinguin at gmail.com
Mon Feb 8 19:56:32 UTC 2016


Hi Alessandro,

On Sat, Jan 30, 2016 at 1:27 PM, Mads Kiilerich <mads at kiilerich.com> wrote:
> On 01/23/2016 12:00 AM, Alessandro Molina wrote:
>>
>> For this reason TurboGears2 might be a good option for Kallithea future
>
>
> Some of the core developers met right before Fosdem and discussed this too (
> https://bitbucket.org/conservancy/kallithea/wiki/DeveloperMeeting2016January
> ).
>
> We agree that it seems like a very good match. TurboGears seems like the
> best way forward for Kallithea. Thanks for proposing it. We have put it on
> the roadmap ( https://bitbucket.org/conservancy/kallithea/wiki/Home ) and
> encourage everybody to work on making that happen.
>
> We want TG ... but we also don't want to be left with our development branch
> with neither Pylons nor TurboGears working. We can do preparatory work on
> the main branch but would like to see a fully working TG port on a dev
> branch before we switch.
>
> I expect further experiments on the kallithea-tg branch to  show how we
> could change and refactor Kallithea to make a switch to TG easier. Such
> changes should be upstreamed on the main Kallithea development branch ASAP
> while still using Pylons. The first goal for Kallithea on TG should be to
> towards making a minimal (and thus optimally reviewable) PR for switching
> from Pylons to TG. Later we can remove compatibility hacks and really start
> utilizing TG.

I have taken your changes and was able to start up Kallithea from
them, using an existing database.
Even though very limited, I have some time to spare that I want to
dedicate to helping with the TurboGears porting.

If you have specific tasks that you want to offload, don't hesitate to
let me know. I can see if I have the knowledge to help with them.
Meanwhile I'll already browse around and see what is not working. For
example, I notice that opening the Changelog of a repository causes an
internal server error:

  File "/home/tdescham/repo/contrib/kallithea/kallithea-tg/kallithea/lib/base.py",
line 466, in _call
    return super(BaseController, self)._call(controller, params,
remainder, context)
  File "/home/tdescham/repo/contrib/kallithea/venv/kallithea-tg/lib/python2.7/site-packages/TurboGears2-2.3.7-py2.7.egg/tg/controllers/decoratedcontroller.py",
line 93,
 in _call
    remainder = tuple(map(url2pathname, remainder or []))
  File "/usr/lib64/python2.7/urllib.py", line 56, in url2pathname
    return unquote(pathname)
  File "/usr/lib64/python2.7/urllib.py", line 1238, in unquote
    bits = s.split('%')
AttributeError: 'NoneType' object has no attribute 'split'


Regarding the database setup code: do you have an idea what needs to
be done to get that step working? What is different about Turbogears2
from Pylons that makes it fail?

Another task I add for myself is to read the Turbogears website and
documentation.

Thanks for your input,
Thomas


More information about the kallithea-general mailing list