Coding Like A Bitch: Mephisto Plugins Upgraded and Fridaycities/EventWax Beta Biznizz
31 JAN
Just a quick note to say that I’ve just upgraded to the newest version of Mephisto which has forced me to update my Mephisto plugins to work with the new updates to Liquid. Sorry for being slack on that. I’ve had a ton of email about it but hadn’t had the chance to fix these since my new venture into the freelance world has started.
In unrelated news, most of my coding effort has been going into a site called Fridaycities which is a cool site where Londoners ask questions and get insider info about all things London-ish. It’s great to browse around…Apparently there’s an Elvis Chinese restaurant on Old Kent Rd and a naked disco in Vauxhall. Who’d a thunk it? It’s still in very early stages at the moment but the FC people have got big plans and myself and Mr Tanner are beavering away on it as we speak. It’s invite only but you can check out the posts without registering so go have a squizz.
Finally, EventWax has been going great guns. It’s great to see a load of events running on there including @media2007 and BarCampLondon2. We been collecting lots of feedback and slowly introducing features but there’s going to be some cool changes in the near future so keep an eye out there.
Finally, I’m stacking up a few patches for Prototype and Rails that I need to finish up. Hopefully I’ll get chance to do that soon. Writing patches for Rails is weird. I tend to find myself spending 20 seconds on getting the patch done and 3 hours trying to bash tests together. Does anyone else find writing tests for the Rails core a bit of a pain in the arse?
16 Comments (Closed)
Hey, I just updated my trunk and installed the delicious plugin, and while mephisto now recognizes the liquid tag, I get a mile-long list of errors (instead of it just not recognizing the tag). It says its a liquid error that has issues with many files and many lines in ruby and mephisto. Ideas?
Liz at 31.01.07 / 19PM
I’m not seeing the same problem as Liz but I am seeing the following:
‘Liquid error: wrong number of arguments (2 for 3)’
My template code looks like:
<ul> {% delrecentlinks tag: '' as link, count: '10' as count %} <li><a href="{{ link.href }}">{{ link.description | escape_html }}</a> {{ link.extended }}</li> {% enddelrecentlinks %} </ul>
Scott at 01.02.07 / 06AM
Yup. Same as Scott.
Kevin at 01.02.07 / 07AM
Liz: If you pastie me what code you have in your template and what the error is I’ll take a look.
Scott: I’m not sure this is what causing your problem but your syntax is a bit wrong:
{% delrecentlinks count: 10 as link %}
Is more like what it should be.
In general though it looks as though your (and Kevin’s) Mephisto installation may not be new enough now :) Liquids API seems to be a bit of a moving target at the moment so there’s not much I can do about this. Try upgrading to the newest version of Mephisto.
Dan at 01.02.07 / 08AM
I have the latest stable. What I’m wondering if the install is happening properly. For instance, I used the command:
script/plugin install http://svn.danwebb.net/exte…/trunk/
Which is different that what the readme says, but what is listed mephisto wiki.
It installs everything into a folder call trunk under vendor/plugins
Thanks for your time Dan—i feel this is an important plugin to the adoption of mephisto.
Kevin at 01.02.07 / 14PM
Thanks for the tip Dan. It didn’t end up panning out for me (I tried with a clean trunk version of Mephisto, the latest plugin along with the latest edge Rails), but I managed to fix the problem anyway.
“Moving target” sounds about right ;-)
Scott at 01.02.07 / 16PM
@Scott: What’d you do to resolve it?
Kevin at 01.02.07 / 16PM
@kevin: I emailed scott for the same reason, and this worked for me as well:
change line 13 in the recent_links.rb file from:
def initialize(tag_name, markup, tokens)
to
def initialize(markup, tokens)
Jared at 03.02.07 / 03AM
Jared: It seems that Liquid’s API has very recently changed because thats how the plugin was before but when I ran in with edge Mephisto (as this site is on) it complained about the wrong number of arguments so I added in the tag_name argument.
Seems that the Liquid guys are making some crazy changes at the moment. Still, thanks for posting the solution here. Hopefully people will find it useful.
Dan at 03.02.07 / 11AM
Does anyone else find writing tests for the Rails core a bit of a pain in the arse?
You kidding? ;)
Tim Lucas at 06.02.07 / 22PM
I totally agree Dan, writing tests for Core Rails is a pain … :-)
Sandro Paganotti at 07.02.07 / 22PM
Hi, unfortunately I get the following error:
Liquid error: Request failed with error: undefined method `use_ssl=' for #<Net::HTTP api.del.icio.us:443 open=false
I’ using latest mephisto and as well as latest delicious plugin.
Any help appreciated. Regards, theworkisdone
theworkisdone at 13.02.07 / 16PM
Okay, so I tried installing and tried the change suggested in the comments… it can’t seem to locate the plugin. In the production.log I get a SyntaxError (Unknown tag ‘delrecentlinks’):...
and then a 500 error. Any thoughts on why that might be happening? I am using Mephisto 0.7.3
akatsuki at 18.02.07 / 21PM
I keep getting the error:
Liquid error: Request failed with error: #
then a big long stack trace and
Declarations can only occur in the doctype declaration. Line: Position: Last 80 unconsumed characters:
it doesn’t say which characters…
Peter at 23.02.07 / 16PM
Hi Peter,
I was getting this error too – a little debugging later and I found that the response was being returned from delicious saying I wasn’t authenticated;
“this server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn’t understand how to supply the credentials required.”
Tracing out the username and password around line #81 of delicious.rb – I found that they were blank; so I set the auth (line 38) to;
@@auth = {:username => ‘myusername’, :password => ‘mypassword’}
Seemed to work ok from then on.
Matt at 25.02.07 / 22PM
Hi Matt / Peter,
Actually, there’s a nice way to do that thats detailed in the README file.
MephistoDelicious.authenticate :username => 'xxx', :password => 'xxx'
Dan at 25.02.07 / 23PM