[pylons-discuss] Cloud 19 tel. 2019-04-08

2019-04-08 Thread Jens W. Klein




---
schaufler




---
dollfuss multiclienten shop/mandante faehig
startup
nachaltige mode

logistikanbindung logsta https://www.logsta.com/
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/q8fbd8%24oun%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Testing Pyramid Traversal App with ZODB

2019-03-07 Thread Jens W. Klein
On 26.02.19 23:28, Gerhard Schmidt wrote:
> Am 25.02.2019 um 10:51 schrieb Jens W. Klein:
>> On 24.02.19 08:48, Gerhard Schmidt wrote:> Hi,
[...]>>> Is there a way to test if a persistent object would be saved
when the
>>> transaction is committed.
>>
>> _p_changed is meant as a trigger, but it is not meant to read a status.
>> Triggering _p_changed joins the object to a transaction manager which
>> then on commit saves the object.
> 
> In the normal code I don't read it, but for testing purposes it would be
> quite handy.
> 
>> What your're looking for is probably _p_status which is "saved" or
>> "unsaved".
> 
> it's always 'unsaved' while testing, because all objects are brand new
> as the database is new for every test. Even after calling
> transaction.commit() it's still unsaved. Is there a way to query the
> transaction manager if a object is in the to be saved list.

Sorry, I am not sure what it means in testing and if the bahvior here is
different.

>> For dicts/lists Thierry is right, better use
>> PersistentList/PersistentDict in order to not to have to trigger
>> _p_changed manually.
> 
> For most purposes I use PersistenList/Dict, but first there is no
> PersistentSet. PersistenList and PeristentDict (especial PeristentDicts
> in a PersistentList) tend to fill the ZODB with many small objects and
> remove other from the cache. So I use the not persistent ones when they
> don't change often (most of the Time never) but even code that called
> once a month or once a year has to be tested. And when _p_changed is not
> used often the chance of forgetting increases and testing it is rather
> useful.

You may want touse the BTrees package https://pypi.org/project/BTrees/
where different kinds of persistent BTrees and persistent Sets are
implemented in a very efficient way (also using C-Extension).
Documentation at https://btrees.readthedocs.io/en/latest/

hth Jens


-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/q5qnt6%2465ip%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Testing Pyramid Traversal App with ZODB

2019-02-25 Thread Jens W. Klein
On 24.02.19 08:48, Gerhard Schmidt wrote:> Hi,
>
> I'm writing a pyramid app using  traversal and ZODB. Right now i writing
> unit tests and try to test if the _p_changed attribute is set after a
> method that changes a persistent object.
>
> The problem is that _p_changed is always False when running in the
> testrunner. Even after I do obj._p_changed = True obj._p_changed is
> still False.
>
> In running environment everything works fine. But I often forget the
> self._p_changed = True after modifying lists or dicts inside a
> persistent object. So i really like to test if it's get set.
>
> Is there a way to test if a persistent object would be saved when the
> transaction is committed.

_p_changed is meant as a trigger, but it is not meant to read a status.
Triggering _p_changed joins the object to a transaction manager which
then on commit saves the object.

What your're looking for is probably _p_status which is "saved" or
"unsaved".

For dicts/lists Thierry is right, better use
PersistentList/PersistentDict in order to not to have to trigger
_p_changed manually.

hth Jens
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/q50dqk%2460r4%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Pyramid Registry Creates Too many connections To the Same Server with pysimplesoap

2018-11-16 Thread Jens W. Klein
On 14.11.18 17:42,
bher...@uniqueinsuranceco.com wrote:
> We are using pyramid for our insured portal at Unique Insurance.
> We have had great success with pyramid and still use it to this day!
> However we have hit a problem, when we use the pyramid.registry and
> register an SOAP object to the registry object our server seems to block
> us because we are making to many connections to the server.
> I have tried using a singleton, which I will try again today. Is there a
> way in the registry to force it to only create one instance of the object?
[...]

I do not know you SOAP Client implementation and can't help in detail here.

But recently I had a similar use-case
I used the Zeep library https://python-zeep.readthedocs.io/ for our SOAP
connections. It is a very cleanly written, well documented and easy to
use SOAP client library. It is using the famous Requests library for all
HTTP connections. So, it offers all session/connection pooling features
Requests has. This really helps getting the number of connections down.

hth Jens
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/psm7o7%2424s%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: WebSockets API Framework Similar To Cornice

2018-05-08 Thread Jens W. Klein
On 2018-05-08 02:27, Guillermo Cruz wrote:
>
> I have a REST API built with Cornice that serves as a Web3 endpoint with
> Web3.py. And now I would like to add WebSockets support.
> 
> I'm a total newbie when it comes to WebSockets, so I was wondering if
> anyone knows of a simple framework like Cornice or similar but for
> WebSockets. 

I never used this on my own, but since I may have a similar need soon I
stubled over "aiopyramid" + its websockets. It looks very promising, is
simple and could be worth a try:
https://aiopyramid.readthedocs.io/features.html#websockets

Jens

-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/pcs4o7%24l86%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Cornice: define CORS policy in configuration?

2018-01-08 Thread Jens W. Klein
I have a small application where I want to configure `cors_origins`
different dependent on the server its running on (dev/ staging/ live)
without allowing access cross those domains.

At the moment I have a policy defined in Python in a base.py, import it
and use it in my classes with the enpoint like so:

CORS_POLICY = {
'origins': ('*.dev.myserver'.com,),
#'origins': ('*.stage.customerserver.com',),
#'origins': ('*.livedomain.com',),
...,
}

---

@resource(path='/api/menu', cors_policy=CORS_POLICY)
class Menu(object):

def get(self):
...
return menu_def
---

Question: is there a way to define the `cors_origin` in the INI-files?

TIA Jens
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/p2vk75%242bt%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Porting a ZOPE (2.13) application into PYRAMID

2017-09-21 Thread Jens W. Klein
On 2017-09-14 18:12, roberto@gmail.com
wrote:
> Hello to everybody,
> I have an alive application running in (on) ZOPE 2.13.
...
> Since ZOPE is dead, or so it seems (at least as own product),
> I'm looking for a little-painful-solution to run away from ZOPE.

I do not think Zope is dead. There is a community pushing Zope forward,
porting it to Python 3. There were several sprints happening the last
years, the last one ended just a few days ago.

Zope 4.0 beta1 was released after this sprint.

For more information consult
https://zope.readthedocs.io/en/latest/changes.html

You should consider looking at it, as it may save you lots of work.

Jens
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/oq09rb%24nm7%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: SOAP - spyne

2016-04-29 Thread Jens W. Klein
On 2016-04-29 19:36, Andrew Sawyers wrote:
> On 4/29/16 8:57 AM, Miguel Branco wrote:
>> I need to integrate my aplication with other that only comunicates by
>> soap protocol. My application will be de master and the other will be
>> consumer.
>>
>> From what I have been looking it seems that spyne is the most promisse
>> using pyramid. I'm correct with this?
>>
>> Could you point me some examples, using pyramid with soap.
> I used suds in my current project that required soap integration; i was
> very happy.

suds was also my choice and all worked. I found the suds-jurko fork more
advanced and used it. Does anybody knows if there is recent activity on
the suds code base?

Jens
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/ng0qc8%24uvn%241%40ger.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Traversal over a filesystem

2016-03-01 Thread Jens W. Klein
On 2015-08-23 16:24, Mike Orr wrote:
> Has anyone used traversal over a filesystem for non-static content?

One extension in our "node-family" - node.ext.directory[1] - can be used
for filesystem traversal in Pyramid - and we're doing so in a Pyramid
based framework written by us called Cone[2].
Here you have full CRUD access to the filesystem.

Node abstracts the underlying data as a tree with children and
attributes and so we have different node implementations for different
cases such as ldap[3], filesystem, zodb[4] and so on.

A node can be seen as a unified data access object and container. Data
access is always done with x.attrs[key] and childs are accessed by
x.[childname]. independent if its ldap, zodb, filesystem or a custom
sqlalchemy based node implemenation.

[1] https://github.com/bluedynamics/node.ext.directory
[2] https://github.com/bluedynamics/cone.app
[3] https://github.com/bluedynamics/node.ext.ldap
[4] https://github.com/bluedynamics/node.ext.zodb

hth Jens
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at https://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: dynamic domain cookie with authtkt?

2016-02-20 Thread Jens W. Klein
On 2016-02-19 19:32, Bert JW Regeer wrote:
> AuthTktAuthenticationPolicy by default pulls the domain out of the the WSGI 
> environment using WebOb. If you leave the domain setting blank, it should do 
> the right thing, so long as your WSGI server correctly sets up the HTTP_HOST 
> environment variable.

Thanks for the hint, unfortunately the header this company reverse proxy
sets is different and there is no HTTP_HOST set. And since its a bigger
company its outside of projects scope to change this *shrug*.

Making the header used configurable would help...

best Jens


> Bert
> 
>> On Feb 19, 2016, at 07:18, Jens W. Klein <j...@bluedynamics.com> wrote:
>>
>> I fear did get all the details of authtkt in pyramid.authentication.
>>
>> I have a Pyramid based service authenticating users against LDAP in
>> order to grant them access to a webservice.
>>
>> Until know the service was only for one domain valid. There is a reverse
>> proxy in front and I may fetch the domain from the "X-Forwarded-For"
>> header.
>>
>> But since domain is set usually on service startup/configuration time I
>> hard coded the domain name in the ini-file and set it like so::
>>
>>authn_policy = AuthTktAuthenticationPolicy(
>>secret=settings.get('auth.secret'),
>>cookie_name=settings.get('auth.cookie_name'),
>>hashalg=settings.get('auth.hashalg'),
>>callback=groupfinder,
>>domain=settings.get('auth.cookie.domain'),
>>)
>>config.set_authentication_policy(authn_policy)
>>
>>
>> From now on I need to have the domain dynamic based on the header
>> mentioned above (cookie has to be valid mutually exclusive for: 'foo.de'
>> or 'bar.de').
>>
>> Looking at pyramid.authentication and AuthTKTHelper I did not find an
>> easy way to plug in a callable or something dynamic to get the domain
>> for the cookie.
>>
>> What I did - and what works fine - is to patch the domain attribute on
>> AuthTKTHelper like so::
>>
>> def _domain_getter(self):
>>req = get_current_request()
>>return req.headers.get('X-Forwarded-Server', 'localhost')
>>
>>
>> def _domain_setter(self, value):
>>pass
>>
>>
>> _domain_patch = property(fget=_domain_getter, fset=_domain_setter)
>>
>> # patch pyramid.authentication.AuthTktCookieHelper
>> AuthTktCookieHelper.domain = _domain_patch
>>
>>
>> But in my opinion this is far from elegant or pluggable. Did I miss
>> something? Is there a better method to achieve the same goal?
>>
>> regards Jens
>> -- 
>> Klein & Partner KG, member of BlueDynamics Alliance
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "pylons-discuss" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to pylons-discuss+unsubscr...@googlegroups.com.
>> To post to this group, send email to pylons-discuss@googlegroups.com.
>> Visit this group at https://groups.google.com/group/pylons-discuss.
>> For more options, visit https://groups.google.com/d/optout.
> 


-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at https://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] dynamic domain cookie with authtkt?

2016-02-19 Thread Jens W. Klein
I fear did get all the details of authtkt in pyramid.authentication.

I have a Pyramid based service authenticating users against LDAP in
order to grant them access to a webservice.

Until know the service was only for one domain valid. There is a reverse
proxy in front and I may fetch the domain from the "X-Forwarded-For"
header.

But since domain is set usually on service startup/configuration time I
hard coded the domain name in the ini-file and set it like so::

authn_policy = AuthTktAuthenticationPolicy(
secret=settings.get('auth.secret'),
cookie_name=settings.get('auth.cookie_name'),
hashalg=settings.get('auth.hashalg'),
callback=groupfinder,
domain=settings.get('auth.cookie.domain'),
)
config.set_authentication_policy(authn_policy)


>From now on I need to have the domain dynamic based on the header
mentioned above (cookie has to be valid mutually exclusive for: 'foo.de'
or 'bar.de').

Looking at pyramid.authentication and AuthTKTHelper I did not find an
easy way to plug in a callable or something dynamic to get the domain
for the cookie.

What I did - and what works fine - is to patch the domain attribute on
AuthTKTHelper like so::

def _domain_getter(self):
req = get_current_request()
return req.headers.get('X-Forwarded-Server', 'localhost')


def _domain_setter(self, value):
pass


_domain_patch = property(fget=_domain_getter, fset=_domain_setter)

# patch pyramid.authentication.AuthTktCookieHelper
AuthTktCookieHelper.domain = _domain_patch


But in my opinion this is far from elegant or pluggable. Did I miss
something? Is there a better method to achieve the same goal?

regards Jens
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at https://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: How to use Single Sign-On (SSO) with pyramid

2016-02-10 Thread Jens W. Klein
On 2016-02-10 13:15, Sami Pietilä wrote:
[...]
> How can I authenticate user against external SSO in pyramid app? Pyramid
> docs search gave nothing when I tried with "single sign-on" or "SSO".

As already commented SSO is a generic concept. If youre SSO is OpenID,
OAuth1 or OAuth2 there is the really good package Authomatic
http://peterhudec.github.io/authomatic/examples/pyramid-simple.html
around which solves this very clean.

Jens
-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at https://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: What do you use for storage abstraction

2015-12-21 Thread Jens W. Klein
I'am not sure if this helps, but if it comes to file system abstraction
I really like to use 'fs'

https://pypi.python.org/pypi/fs
http://docs.pyfilesystem.org/en/latest/

But it does not help with the pyramid/upload/web part - its just a
powerful file system abstraction layer/ api

hth Jens

On 2015-12-19 20:10, Rachid Belaid wrote:
> Hi,
> 
> For file storage abstraction, I used few times pyramid_storage and it
> did it the job.. 
> 
> Recently I tried filedepot because I wanted something which can be
> initialised outside the registry but I hit few problems: 
>  - Dislike the global setup
>  - Require a bit of plumbing to play nice with ini file
>  - If you don't use s3 then the local storage make serving files through
> nginx (or other) a bit challenging due to the way that it's stored.
> 
> I'll get back to use pyramid storage but I thought that I would ask what
> you are using on your projects? 
> 
> Thanks.


-- 
Klein & Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at https://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: What do folks use for build tools? (buildout alternatives?)

2015-07-21 Thread Jens W. Klein
On 2015-07-21 01:05, Iain Duncan wrote:
 Hi, we're embarking on a project that will stitch together many apps,
 and I figured I should do my due diligence on hunting for the
 state-of-the-nation in python build tools. I've personally used buildout
 in the past and liked it, but I know for other team members something
 that was more pip/virtualenv based would be preferable. Just curious
 what folks are using?

I use primary zc.buildout. It is really powerful, but also complex. I
love the swiff-knife like features.

But for a smaller project I recently used just pip, requirements.txt and
make. It really depends on the projects complexity.

Jens
-- 
Klein  Partner KG, member of BlueDynamics Alliance

-- 
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Pyramid translation do Brazilian Portuguese

2014-08-18 Thread Jens W. Klein

On 2014-08-18 20:06, Chris McDonough wrote:

On 08/18/2014 02:03 PM, Ivan Neto wrote:

Hi (sorry for the crossposting),

I am part of the Pyramid Brazilian community, and we are planning to
translate Pylons project docs, starting with Pyramid, to Brazilian
Portuguese.

I would like to know how can we start it. Should we create a new
repository and put the portuguese docs there or are there some existing
repo we can mess with?


Thanks for giving this a shot!

There are no repos for docs translation in the Pylons project.  I'm not
entirely sure what to suggest for this.

Anyone have any ideas?


You may want to look at the new Plone documentation (its also 
sphinx-based). The doc-team did some awesome work, also (but not only) 
in making it translatable using transifex.

https://www.transifex.com/projects/p/MLS_Plone/

Read also the section in the styleguide
http://docs.plone.org/about/styleguide.html#line-length-translations

hth Jens
--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Traversal root path

2014-05-20 Thread Jens W. Klein

On 2014-05-20 09:00, uralbash wrote:

Hello,

I'm trying to go to home page (http://localhost:6543/) through
traversal. What should be the key of context to traversal choice it?


Root is not a key in the dict: the dict object itself is root (context).

So the root is a dict - or dict-like - and all 'contained' are fetched 
by calling __getitem__ on root (and for subpaths on the subobjects, it's 
a tree).


HTH Jens


config.add_route('pages_view',  '/*traverse',
factory='sacrud_pages.routes.root_factory')

My context {'': About company, 'foo12': foo12}

1) http://localhost:6543/ - not choice About company

  PATH_INFO = '/'
  PATH_INFO.split('/')
['', '']

2) http://localhost:6543/foo12 - It OK (choice foo12)

  PATH_INFO = '/foo12'
  PATH_INFO.split('/')
['', 'foo12']



--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Pyramid with traversal an BTree

2014-03-20 Thread Jens W. Klein

Hi,

just how we are using BTrees and traversal. I hope it may help or give 
inspirations.


We developed zodict[1][2] and are using it with great success in pyramid 
applications together with node.ext.zodb[4][5] (which is based on 
zodict) as the foundation for traversal based applications.


For a ZODB Storage for (lots of) searchable (light weight) data we 
developed souper[5][6], but it does not target on traversal (so maybe OT 
here, just to to paint the whole picture).


[1] https://github.com/bluedynamics/zodict
[2] https://pypi.python.org/pypi/zodict
[3] https://github.com/bluedynamics/node.ext.zodb
[4] https://pypi.python.org/pypi/node.ext.zodb/1.0
[5] https://github.com/bluedynamics/souper
[6] https://pypi.python.org/pypi/souper

HTH Jens

On 2013-12-24 10:39, Gerhard Schmidt wrote:

Hi

i'm building a web application based on pyramid and traversal in a ZODB.
So far it's working fine with Container derived from Persitent Mapping.
But some containers will get many children so i'm trying to use a BTree
based Container. So far no success.

I've tried

from BTrees.OOBTree import BTree
from persistent import Persistent

class container(BTree, Persistent)

I'ts working but changes don't geht stored in the zodb.

I there a example how to do this out there or can someone get mit a Hint
what im missing.

Regards
Estartu

--
You received this message because you are subscribed to the Google
Groups pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send
an email to
pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to
pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/groups/opt_out.



--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: Starting Background Thread with zodb

2014-03-20 Thread Jens W. Klein

On 2014-03-18 14:39, Gerhard Schmidt wrote:

On 18.03.2014 14:08, Chris Rossi wrote:

It should start its own connection via the standard ZODB API.  You might
consider moving the extra work to a different process.  Redis pub/sub or
list objects are good ways to communicate and set up a primitive, simple
queue.  I prefer that to more complex queue/messaging frameworks.  YMMV.


Right now I have no ZEO running. In Production there will be a ZEO but
while developing a ZEO server simply adds to complexity and makes
debugging even more pain in the ass.


Well, really? A ZEO-Client-Server in development enables you to connect 
with two threads, i.e. one debugging console, one serving requests. I 
prefer this way of debugging. But yes - the zeoserver needs to be 
started, thats all. Using buildout setup/configuration is very easy.



It might solve me problem if I could start a worker thread at
application start an send the task via queue there but there is still
the problem to get a thread with access to the zodb started. I know that
it's possible to use one ZODB connection in multiple threads, Zope does
it and pyramid does it. The question is how to fork a new subconnection
or transaction and pass it to the new thread.


Using ZEO and if youre running exact one worker thread: Let the 
request-process(s) store the tasks in the ZODB and fetch it task by task 
in a worker process. Dont forget to keep transaction (begin to commit) 
time at both, request and worker, as short as possible to avoid database 
conflicts.


If you need more than one worker there are solutions around AMQP (i.e. 
rabbitmq) or redis helping you with queue management. I used such only 
with Zope2 so far, but the principle is very basic. So I'am sure it 
works in a pyramid environment well.


regards Jens



Regards
Estartu




--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.


[pylons-discuss] Re: passwords in .ini files?

2014-02-27 Thread Jens W. Klein

Hi Chris,

we're using buildout for our setups here and are generating the config 
files using collective.recipe.template. Now the usernames, passwords and 
other dynamic elements are in buildout.cfg - no advantage so far.


But: We are using a base.cfg and then inheriting dev.cfg, rc.cfg and 
live.cfg from it. On the actual server we're creating a minimal (few 
lines) non-version controlled buildout.cfg, just inheriting from one of 
the three targets flavors, and putting the password in there.


I hope there we're a simpler solution, but its works fine anyway.

regards Jens

On 2014-02-27 09:03, Chris Withers wrote:

Hi All,

I'd like to source control my .ini configs, but they have a sqlalchemy
url in them which contains a username and password.

Obviously, I don't want those in source control.

What's the best practice for handling this situation?

cheers,

Chris




--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/groups/opt_out.


Re: AngularJS and Pyramid: Directory Structure

2013-07-29 Thread Jens W. Klein

On 2013-07-25 22:00, Raoul Snyman wrote:

Hi folks,

I'm starting a project using AngularJS, and I was wondering what
others using AngularJS do for directory structure? Do you follow the
app/, etc. directories used by AngularJS?

I started with my own directory structure, but things don't seem to
want to work nicely. I'm trying to use AngularJS UI/bootstrap.



We are using gruntjs with a bunch of plugins to merge all js and lesscss 
from an outside-the-egg location to the eggs target directories. So in 
deployment the structure is reduced to some files. In development the 
default angularjs structure is kept and symlinked only for 
developement/debugging purposes to the egg structure.


hth Jens

--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Pyramid authentication and rest api

2013-05-22 Thread Jens W. Klein

On 2013-05-15 17:16, tonthon wrote:

Hi,

one of our web applications based on pyramid is actually handling
authentication through the SessionAuthenticationPolicy.

We've built a rest API that's reached by ajax calls.

We'd like to use the same one from a kivy based application.

Any idea how we could cleanly implement the authentication part ?


I use pyramid_multiauth and an own oauth2 authentication policy. This 
works fine


Jens
--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Pyramid routing resolver error

2013-04-29 Thread Jens W. Klein

On 2013-04-29 12:46, Andreas Jung wrote:

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

huh? Why should I have one route for two completely different
functionalities and make a decision on the view to call further down
the road?

Does not make sense


In pyramid you configure one route and then make a difference based on 
the predicates in the view_config whats used to render the route.


Thus you can define two or more different views i.e. based on 
http-method. I used this for rest APIs already, so a get, put and delete 
all are different views on the same route.


Otherwise you could skip the add_route at all and define it in the 
view_config. Then it would not makes sense :/


hth Jens



Andreas

Joel Kaiser wrote:

Hi,

I don't know why you are using two different routes for the same
url. You can delete your 'journal_delete_entry_api' and use your
'journal_entry_api' in your delete view.

Joel


2013/4/29 Andreas Jung li...@zopyx.com mailto:li...@zopyx.com

Hi there,

running Pyramid 1.4.1 with the following two routes:

config.add_route( 'journal_entry_api',
'/api/user/{username}/journal/{entryid}', factory=UserFactory,
traverse='/{username}/dailyjournal/{entryid}')

config.add_route( 'journal_delete_entry_api',
'/api/user/{username}/journal/{entryid}', factory=UserFactory,
traverse='/{username}/dailyjournal/{entryid}')

The related views are defined as

@view_config(route_name='journal_entry_api', renderer=json,
request_method=GET, permission=VIEW_DAILY_JOURNAL) def
daily_journal_entry_api(self):.

@view_config(route_name='journal_delete_entry_api',
permission=MANAGE_DAILY_JOURNAL, request_method='DELETE',
renderer='json') def api_delete_blog_entry(self):

Both views are called through the same URL - only the request method
GET vs. DELETE differs...in theory this is supposed to work. But in
real life a GET request to

http://localhost:8080/api/user/my-id/journal/i2uz3i13zi123z1i

leads to a 404 error.

Changing the path configuration of the first route from


'/api/user/{username}/journal/{entryid}'

to let's say

'/api/user/{username}/journal2/{entryid}'

fixes the problemthere must be some problem in the route
configuration resolver for routes having the same path specs... or am
I missing something?

Andreas





-- You received this message because you are subscribed to the
Google Groups pylons-discuss group. To unsubscribe from this group
and stop receiving emails from it, send an email to
pylons-discuss+unsubscr...@googlegroups.com
mailto:pylons-discuss%2bunsubscr...@googlegroups.com. To post to
this group, send email to pylons-discuss@googlegroups.com
mailto:pylons-discuss@googlegroups.com. Visit this group at
http://groups.google.com/group/pylons-discuss?hl=en. For more
options, visit https://groups.google.com/groups/opt_out.



-- You received this message because you are subscribed to the
Google Groups pylons-discuss group. To unsubscribe from this group
and stop receiving emails from it, send an email to
pylons-discuss+unsubscr...@googlegroups.com. To post to this group,
send email to pylons-discuss@googlegroups.com. Visit this group at
http://groups.google.com/group/pylons-discuss?hl=en. For more
options, visit https://groups.google.com/groups/opt_out.




- --
ZOPYX Limited | Python | Zope | Plone | MongoDB
Hundskapfklinge 33| Consulting  Development
D-72074 Tübingen  | Electronic Publishing Solutions
www.zopyx.com | Scalable Web Solutions
- --
Produce  Publish - www.produce-and-publish.com


-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQGUBAEBAgAGBQJRfk+XAAoJEADcfz7u4AZjITULviNCkc9W9W7SNKsUJhxukzc0
C4/XUY66joGqvBDiFajGoNTSjQmnLcTsze+L4Ce4PBypwd/peJIS+6pd6dXJxZzt
Yu1QaJ3cIqjU5742GkN0/+70M4WZOPjdQ/dqSBUTnx4jkpiT8RmQlYyjPfTQuM2J
umuT00XnPmzh+YlqdLTHVJetBhNJBFd45WwJx8SJBsk4cb2NtdZ0a4ERchxKNtbN
AKNSfhR1dqZ+gDtUIWgcWWt+IVToRB7qqaWDyVPEaDcsaZeenH3nz7Vanun2wE7b
qYR6LADA8DwSrwJzgGBOagSjznFZSxwFjndpuiN+CCVTB7jKswPTlSlMirU7n8Bw
oJBps4AJkXy1jsRUm+jUzpdoGu598kHLadvk2S26Rf//eOrQzEgaMMIEHr/dsbY2
NQXvf8HltBIfsYbgGVqfE+ai8MKmz61mbHyklkswf6GKmTWn/h8nZB5H3t0KZo36
lMetfznrky9noISVbugAe0bnGV7G3Iw=
=0oNo
-END PGP SIGNATURE-




--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




Re: response from a string ?

2013-04-29 Thread Jens W. Klein

On 2013-04-29 23:37, John Anderson wrote:


On Mon, Apr 29, 2013 at 2:24 PM, Jonathan Vanasco
jonat...@findmeon.com
mailto:jonat...@findmeon.com wrote:

what's the best way to create a response from a string ?  it's not a
file to serve or a template to render.  it's driving me a bit crazy
trying to figure out a simple/idiomatic way to do this.  ( i can do
it in a complex , obtuse way that will be a pain to maintain )


Are you looking for something other than:

from pyramid.response import Response
return Response(Hey!)


documented here:

https://pyramid.readthedocs.org/en/latest/narr/views.html#view-callable-responses

Jens
--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Pyramid, App Engine, Buildout and Nose Tests

2013-03-09 Thread Jens W. Klein

Hi Raoul,

this works for me too now! Thanks for the hint!

Jens

On 2013-03-08 13:20, Raoul Snyman wrote:

Ah, solved!

I threw out pbp.recipe.noserunner in favour of zc.recipe.egg, and now
things are working.

Updated configuration so that others can get nose working with
pyramid_appengine (nsupport is the project name):

[nosetests]
recipe = zc.recipe.egg
eggs =
 nose
 nosegae
 nsupport
extra-paths =
 ${buildout:directory}/parts/nsupport
 ${buildout:directory}/parts/google_appengine
 ${buildout:directory}/parts/google_appengine/lib/fancy_urllib
 ${buildout:directory}/parts/google_appengine/lib/yaml/lib


--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Pyramid, App Engine, Buildout and Nose Tests

2013-03-05 Thread Jens W. Klein

Hi Raoul,

I'am using pyramid on appengine and tried a lot to get NoseGAE 
http://farmdev.com/projects/nosegae/ running, but finally failed.


I'am using a buildout, which I described here in its base:
https://github.com/jensens/pyramid-gae-tutorial

I ended up using my own testrunner, but I'am not that happy with this 
solution, because it feels like reinventing the wheel. The gist below 
contains the main elements of my testrunner, hope that help a bit.

https://gist.github.com/jensens/5092543

If you find a better solution it would be great if you can tell me. I 
also would like to enhance the pyramid-gae-tutorial example with a 
working solution.


best regards

Jens

On 2013-03-05 11:12, Raoul Snyman wrote:

Hi guys,

I used the pyramid_appengine module and buildout to create a Pyramid
app running on App Engine. Now that I have a minimum viable system I'm
trying to add tests to the project using Nose, but it's not quite
working.

I'm using the pbp.recipe.noserunner recipe for Nose, but it doesn't
seem to be pulling in all the dependencies necessary for Pyramid and
my app.

Here's the error I get when running the nosetests generated script
(which may or may not be correct, I've messed with it to get it this
far):

[...]


--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




pyramid_layout: slots and macros in panels

2012-12-12 Thread Jens W. Klein
pyramid_layout is a handy addon i like very much. 

Unfortunately chameleon zpts macros and fill-slots of the master template 
are not available in a panel.

Is it technically possible to make it work?
Is there any good argument why it shall not work that way?

tia Jens

-- 
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/pylons-discuss/-/_VEh92mqtFcJ.
To post to this group, send email to pylons-discuss@googlegroups.com.
To unsubscribe from this group, send email to 
pylons-discuss+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en.



Re: Chameleon on Google App Engine

2012-12-11 Thread Jens W. Klein


Am Dienstag, 11. Dezember 2012 01:59:57 UTC+1 schrieb Michael Lenaghan:

 I'm starting to put together a Pyramid-based app that's meant to run on 
 Google App Engine. I'd like to be able to use Chameleon for templates, but 
 I've seen reports of it being slow in that environment. The problem is that 
 the reports I've come across all seem to be a couple of years old; in the 
 meantime Google has introduced the 2.7 runtime (with some key bytecode 
 modification changes: 
 https://developers.google.com/appengine/docs/python/python25/diff27#Bytecode_Modification),
  
 and Chameleon itself has continued to evolve.

 My question, then, is this: does anyone know if Chameleon is competitive 
 with Jinja2 *on App Engine*?


Slightly OT (I did not benchmark it) but to make it work with the local 
developemt app-server running in debug mode I had to do the following tweak:

# disable chameleon debug module loader, gae does not allow tempdirs
import chameleon.template
from chameleon.loader import MemoryLoader
chameleon.template._make_module_loader = MemoryLoader
chameleon.template.BaseTemplate.loader = MemoryLoader()

hth anyway 
Jensens

-- 
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/pylons-discuss/-/aDxLqwfkKwkJ.
To post to this group, send email to pylons-discuss@googlegroups.com.
To unsubscribe from this group, send email to 
pylons-discuss+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en.



Re: Good form library for pyramid ? Better doing it by hand ?

2012-12-11 Thread Jens W. Klein
Am Dienstag, 11. Dezember 2012 17:03:16 UTC+1 schrieb Nicolas Di Pietro:

 Hi Jensens,

 This sounds nice, but, reading the doc (a bit fast, I've to admit) it 
 sounds like to define new widgets, you have to define it using YAML, right 
 ? 


No, you do not need any YAML - it is only an option for those who do not 
like to write forms in python.

Writings forms in YAML is also not in YAFOWIL core, it is only an addon for 
yafowil. 

hth Jens
 

 Thank you for your previews answer

 Regards, Nicolas

 Le vendredi 7 décembre 2012 16:48:45 UTC+1, Jens W. Klein a écrit :

 Anyway, not that popular yet, but I recommend to use YAFOWIL for forms in 
 pyramid. Ok, I'am biased, because I'am one of the authors.

 Include the yafowil.webob and yafowil.bootstrap packages and get started. 
 Dcumentation and live-example are at http://yafowil.info

 Example registration form here: http://pastebin.com/GFqrZj0r

 template has to have i.e.

 div class=row
 div class=span12
h1Register/h1
${structure: view.form()}   
 /div

 Questions? Just ask. I try to help. 

 regards Jensens



-- 
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/pylons-discuss/-/8GjwRQZVkw0J.
To post to this group, send email to pylons-discuss@googlegroups.com.
To unsubscribe from this group, send email to 
pylons-discuss+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en.



Re: Good form library for pyramid ? Better doing it by hand ?

2012-12-07 Thread Jens W. Klein
Anyway, not that popular yet, but I recommend to use YAFOWIL for forms in 
pyramid. Ok, I'am biased, because I'am one of the authors.

Include the yafowil.webob and yafowil.bootstrap packages and get started. 
Dcumentation and live-example are at http://yafowil.info

Example registration form here: http://pastebin.com/GFqrZj0r

template has to have i.e.

div class=row
div class=span12
   h1Register/h1
   ${structure: view.form()}   
/div

Questions? Just ask. I try to help. 

regards Jensens

-- 
You received this message because you are subscribed to the Google Groups 
pylons-discuss group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/pylons-discuss/-/0Tkr0heyflcJ.
To post to this group, send email to pylons-discuss@googlegroups.com.
To unsubscribe from this group, send email to 
pylons-discuss+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en.



Re: Pyramid with GAE error

2012-11-05 Thread Jens W. Klein

On 2012-10-05 04:56, Jacob Hite wrote:

Thanks Alejandro for the tip. Indeed things work well with pyramid
1.3. Not so well with 1.4.


I run in similar problems with 1.4 and tried to fix them. Even if not 
tested in-depth, here are my working results.


https://github.com/jensens/pyramid-gae-tutorial

comments and further help is welcome.

hth anyone
Jens



On Wed, Oct 3, 2012 at 6:15 AM, Alejandro Jatib aja...@gmail.com wrote:

Thanks Thomas.
I solve this issue deleting all files and creating a brand new virtualenv
with a new installation of pyramid_appengine (a few week ago with pyramid
1.4 this not work, but with 1.3.4 yes)

I not understand deeply how buildout works but i can do the salad with
buildout/appengine/pyramid and works fine!

Alejandro

El miércoles, 26 de septiembre de 2012 13:23:16 UTC-3, Thomas G. Willis
escribió:


I suppose the explanation for what you are doing(or should be) should
go here then to make it more obvious.


http://docs.pylonsproject.org/projects/pyramid_cookbook/en/latest/deployment/gae_buildout.html#bootstrap-the-buildout

~/ $ cd newproject
~/newproject $ /usr/bin/python2.7 bootstrap.py --distribute

pyramid_appengine merely generates a buildout directory based on
templates, once the project is generated, it's does not have
pyramid_appengine as a dependency.

installing pyramid/associated libs like pyramid_appengine in a
virtualenv is generally good practice so that you avoid polluting your
system install of python

maybe it's a miss on the expected experience level of the reader. If I
documented why you should use buildout and why you should use
virtualenv and why appengine apps are structured the way they are it
would be very long documentation that would be quickly out of date
because it would have to be copied from other sources.

So I'm open to suggestions on how to make this bit clearer, but I'm
not too keen on documenting virtualenv, appengine apps and buildout.
especially since all 3 are in a state of flux at the moment.



Thomas G. Willis


On Tue, Sep 25, 2012 at 2:25 AM, Jacob Hite jrh...@gmail.com wrote:

I've encountered the same problem.

The pyramid docs here specifically document using virtualenv and
buildout together. Docs should probably be fixed...


http://docs.pylonsproject.org/projects/pyramid_cookbook/en/latest/deployment/gae_buildout.html



On Sun, Sep 16, 2012 at 10:05 PM, Thomas G. Willis tom.w...@gmail.com
wrote:

As far as I know, buildout and virtualenv dont play well together.
buildout
and virtualenv do share some of the same goals such as isolating your
development environment libraries from your system. there's no reason I
can
think of to use both.

I would suggest trying to bootstrap the buildout with the system
python2.7.
like so


$ /usr/bin/python2.7 bootstrap.py --distribute  ./bin/buildout

If that doesn't work, file an issue @
https://github.com/Batterii/pyramid_appengine/issues and I'll see if I
can
help you out.



On Saturday, September 15, 2012 11:43:41 PM UTC-4, Alejandro Jatib
wrote:


Hi guys,
I'm making a new project with pyramid_appengine (I have a few other
and
these are working fine) and when i try to buildout a skeleton empty
project i have this error:


.
rod.recipe.appengine: Google App Engine distribution already
downloaded.
While:
   Installing mascotanube.
An internal error occurred due to a bug in either zc.buildout or in a
recipe being used:
Traceback (most recent call last):
   File

/Users/alejandro/Development/Python/enviroments/mascotanube/mascotanube/eggs/zc.buildout-1.6.3-py2.7.egg/zc/buildout/buildout.py,
line 1852, in main
 getattr(buildout, command)(args)
   File

/Users/alejandro/Development/Python/enviroments/mascotanube/mascotanube/eggs/zc.buildout-1.6.3-py2.7.egg/zc/buildout/buildout.py,
line 618, in install
 installed_files = self[part]._call(recipe.install)
   File

/Users/alejandro/Development/Python/enviroments/mascotanube/mascotanube/eggs/zc.buildout-1.6.3-py2.7.egg/zc/buildout/buildout.py,
line 1327, in _call
 return f()
   File

/Users/alejandro/Development/Python/enviroments/mascotanube/mascotanube/eggs/rod.recipe.appengine-2.0.0-py2.7.egg/rod/recipe/appengine/__init__.py,
line 327, in install
 self.copy_packages(ws, temp_dir)
   File

/Users/alejandro/Development/Python/enviroments/mascotanube/mascotanube/eggs/rod.recipe.appengine-2.0.0-py2.7.egg/rod/recipe/appengine/__init__.py,
line 234, in copy_packages
 self.write_pkg_resources(ws, lib)
   File

/Users/alejandro/Development/Python/enviroments/mascotanube/mascotanube/eggs/rod.recipe.appengine-2.0.0-py2.7.egg/rod/recipe/appengine/__init__.py,
line 217, in write_pkg_resources
 assert len(setuptools_eggs) == 1, setuptools not found
AssertionError: setuptools not found



Any suggestion?
I use virtualenv and I have setuptools installed in the same
virtualenv.

Thanks!

--
Klein  Partner KG, member of BlueDynamics Alliance

--
You received this message because you are subscribed to the Google Groups