Okay, yes, that is the right place. Just make sure you pull the latest updates, 
as we have been moving things around in branches preparing for release. The 
"master" branch should include the right code which will not have the bug 
anymore.

Let me know,

Dane

On Nov 3, 2010, at 4:03 PM, Christoph Lingg | komoot wrote:

> Hi Dane,
> 
> I downloaded the archive at https://github.com/mapnik/Cascadenik unpacked it 
> and followed the install instructions:
>> python setup.py install
> Maybe I got something wrong?
> 
> Christoph
> 
> 
> Am 03.11.2010 um 22:42 schrieb Dane Springmeyer:
> 
>> Hmm, looks like I guessed wrong which Cascadenik version you are running. 
>> 
>> How did you download and install Cascadenik?
>> 
>> Dane
>> 
>> On Nov 3, 2010, at 12:21 PM, Christoph Lingg | komoot wrote:
>> 
>>> Hi Dane,
>>> 
>>> thank you for your answer! I installed lxml and i can successfully import 
>>> the bindings in python:
>>>> import lxml.etree
>>> 
>>> I changed the corresponding code in cascadenik-compile.py:
>>>> #try:
>>>> #    import xml.etree.ElementTree as ElementTree
>>>> #    from xml.etree.ElementTree import Element
>>>> #except ImportError:
>>>> try:
>>>>     import lxml.etree as ElementTree
>>>>     from lxml.etree import Element
>>>> except ImportError:
>>>>     import elementtree.ElementTree as ElementTree
>>>>     from elementtree.ElementTree import Element
>>> 
>>> But still, I get a different error:
>>>> cascadenik-compile.py example.mml > test.xml
>>>> Traceback (most recent call last):
>>>>   File "/usr/local/bin/cascadenik-compile.py", line 114, in <module>
>>>>     sys.exit(main(layersfile, **options.__dict__))
>>>>   File "/usr/local/bin/cascadenik-compile.py", line 46, in main
>>>>     doc.write(f)
>>>> AttributeError: 'lxml.etree._Element' object has no attribute 'write'
>>> 
>>> 
>>> The corresponding code looks like:
>>>>     if kwargs.get('pretty'):
>>>>         doc = ElementTree.fromstring(open(filename, 'rb').read())
>>>>         print doc
>>>>         cascadenik._compile.indent(doc)
>>>>         f = open(filename, 'wb')
>>>>         doc.write(f)
>>>>         f.close()
>>> 
>>> I have never worked with lxml yet, but it seems weird: the _Element Class 
>>> doesn't has a write function, see
>>>> http://codespeak.net/lxml/api/lxml.etree._Element-class.html
>>> 
>>> But the ElementTree does it, and I think this was in mind.
>>>> http://codespeak.net/lxml/api/lxml.etree._ElementTree-class.html
>>> 
>>> Well, the pretty option didn't seem to be important, I skipped the if block 
>>> and now compile.py works without errors. I assume this change doesn't 
>>> affect the result, I will have to check it!
>>> 
>>> Thanks Dane for your help, If i can contribute anything to fix this bug, 
>>> let me know!
>>> 
>>> Bye,
>>> Christoph
>>> 
>>> Am 03.11.2010 um 00:21 schrieb Dane Springmeyer:
>>> 
>>>> Hi Christoph,
>>>> 
>>>> Yes, sorry this is a bug, fixed in the Cascadenik development version (but 
>>>> I don't recommed using the dev version yet).
>>>> 
>>>> Basically it looks like you are using the latest release via pypi and in 
>>>> that version there are several imports at the top of cascadenik/compile.py 
>>>> which attempt to allow fallbacks to different xml parsers that implement 
>>>> an etree interface.
>>>> 
>>>> lxml (python bindings to libxml2) is preferred and it turns out its 
>>>> interface is slightly different and while it has doc.write() others may 
>>>> not.
>>>> 
>>>> So, the easiest way to fix this issues is to install lxml. On ubuntu I 
>>>> think that is:
>>>> 
>>>> sudo apt-get install python-lxml
>>>> 
>>>> Dane
>>>> 
>>>> 
>>>> On Nov 2, 2010, at 2:10 PM, Christoph Lingg | komoot wrote:
>>>> 
>>>>> Hi list,
>>>>> 
>>>>> I recently installed cascadenik on a new server and encountered an error 
>>>>> while compiling my mml file. First I thought this might be due a wrong 
>>>>> mml file, but even the example given by cascadenik doesn't work:
>>>>> 
>>>>>> christ...@server:~/mapnik-Cascadenik-796acf2$ cascadenik-compile.py 
>>>>>> example.mml > test.xml
>>>>>> Traceback (most recent call last):
>>>>>>   File "/usr/local/bin/cascadenik-compile.py", line 114, in <module>
>>>>>>     sys.exit(main(layersfile, **options.__dict__))
>>>>>>   File "/usr/local/bin/cascadenik-compile.py", line 46, in main
>>>>>>     doc.write(f)
>>>>>> AttributeError: _ElementInterface instance has no attribute 'write'
>>>>> 
>>>>> 
>>>>> I am quite lost and would be very happy if somebody knows more about this 
>>>>> issue!
>>>>> 
>>>>> Thanks a lot in advance!
>>>>> Christoph
>>>>> 
>>>>> PS:
>>>>> I am running Ubuntu 10.10 and the content of test.xml looks like:
>>>>>> cat test.xml
>>>>>> <Element Map at 26c7fc8>
>>>>> 
>>>>> _______________________________________________
>>>>> Mapnik-users mailing list
>>>>> [email protected]
>>>>> https://lists.berlios.de/mailman/listinfo/mapnik-users
>>> 
>> 
> 
> Christoph Lingg
> 
> [email protected]     |  komoot GmbH
> http://www.komoot.de    |  Friedrich-Wilhelm-Boelcke-Straße 2
> mobil: +34 644 28 45 05 |  14473 Potsdam
> 
> Amtsgericht Potsdam HRB 23672 P
> USt-IdNr. DE270695170
> Geschäftsführer: Markus Hallermann
> 
> _______________________________________________
> Mapnik-users mailing list
> [email protected]
> https://lists.berlios.de/mailman/listinfo/mapnik-users

_______________________________________________
Mapnik-users mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/mapnik-users

Reply via email to