Hyde 1.0

182 views
Skip to first unread message

Lakshmi

unread,
Jan 8, 2011, 7:19:04 AM1/8/11
to Hyde, Tero Piirainen
Folks,

I have finally made the move to get hyde 1.0 rolling. While its still
not feature complete and probably has alpha level bugs,
you can see the code at https://github.com/hydepy/hyde.

You can see a reference implementation here:
https://github.com/tipiirai/cloudpanic/tree/refactor.

I am still putting together some docs for using the new version. But I
wanted to share this with you all to get some early feedback.

Also, Tero Piirainen (http://twitter.com/#!/cloudpanic) and Flowplayer
are sponsoring the development of this version of hyde.
It wouldn't have gotten to completion without their support and
inspiration.

---------

Here is a brief summary of features:

1. Multiple template support (It now has Jinja2 implemented, but it
can work with any template engine)
2. Robust plugin architecture (All the different processors are now
combined into a single plugin with a event lifecycle)
3. Better Auto generation and serving (The previous code base was
unnecessarily complex because everything was built around
autogeneration. The new hyde solves this problem by auto generating
just in time)
4. Command line - hyde's command line is a lot better with argparse,
commando and subcommands for create, gen and serve.
5. Better tests - Hyde uses nose and simple test functions. With
autogeneration gone, the tests are more dependeble and easier to
write.
6. Sorting - Sorting has been a problem with hyde. Its possible that
its the most requested support item in the past. Hyde 1.0 introduces a
sorter plugin that dynamically adds sorting methods to use in
templates.

Overall, I think this is a huge improvement over the current version
of hyde and I can't wait to see and hear what you guys think.

Thanks
Lakshmi

Valentin Jacquemin

unread,
Jan 8, 2011, 10:49:26 AM1/8/11
to hyde...@googlegroups.com, Hyde, Tero Piirainen
I don't have time to test nowadays but I wanted to thank you Lakshmi for leading Hyde dev it's an awesome tool and your features listing sounds awesome!

Thanks a lot!

Valentin

Sent from my iPhone

> --
> You received this message because you are subscribed to the Google Groups "Hyde" group.
> To post to this group, send email to hyde...@googlegroups.com.
> To unsubscribe from this group, send email to hyde-dev+u...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/hyde-dev?hl=en.
>

Mandaris Moore

unread,
Jan 8, 2011, 11:11:51 AM1/8/11
to hyde...@googlegroups.com, Tero Piirainen
The readme and doc are all empty files.

Mandaris Moore
Email: Mandari...@gmail.com
Phone: (916) 538 - 2611

Lakshmi Vyas

unread,
Jan 8, 2011, 1:18:05 PM1/8/11
to hyde...@googlegroups.com, Tero Piirainen
Hi,

I am working on the docs as we speak. For installation and working with hyde, you can look at the readme in the cloudpanic repository:
https://github.com/tipiirai/cloudpanic/blob/refactor/readme.markdown

You can also do python setup.py to get hyde up and running after cloning the repo.

Thanks
Lakshmi

Lakshmi Vyas

unread,
Jan 8, 2011, 1:19:01 PM1/8/11
to hyde...@googlegroups.com, Tero Piirainen
Thanks Valentin :)

Mandaris Moore

unread,
Jan 8, 2011, 6:02:31 PM1/8/11
to hyde...@googlegroups.com
Hey,
It's me again. I was playing attempting to set it up using the instructions you pointed me to and I get the following error when I run the pip install -r dev-req.txt command

Downloading/unpacking commando==0.1.1a (from -r dev-req.txt (line 1))
Downloading commando-0.1.1a.tar.gz
Running setup.py egg_info for package commando
Traceback (most recent call last):
File "<string>", line 14, in <module>
File "/Users/mando/.virtualenvs/hyde/build/commando/setup.py", line 2, in <module>
import commando
File "commando.py", line 5, in <module>
from argparse import ArgumentParser
ImportError: No module named argparse
Complete output from command python setup.py egg_info:
Traceback (most recent call last):

File "<string>", line 14, in <module>

File "/Users/mando/.virtualenvs/hyde/build/commando/setup.py", line 2, in <module>

import commando

File "commando.py", line 5, in <module>

from argparse import ArgumentParser

ImportError: No module named argparse

----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /Users/mando/.pip/pip.log


Here is my pip log

pip.zip

Lakshmi Vyas

unread,
Jan 8, 2011, 10:06:03 PM1/8/11
to hyde...@googlegroups.com, hyde...@googlegroups.com
Hi,


I forgot to mention that, Python 2.7 is required.

You don't have to explain yourself at all. I am the one that's grateful that you are taking the time to look at the project at an early stage with zero docs.

Thanks so much,
Lakshmi

> I'm not trying to bash the project, I just want to get it up because I really love the idea of a static site.


>
> Mandaris Moore
> Email: Mandari...@gmail.com
> Phone: (916) 538 - 2611
>

> <pip.zip>

Lakshmi

unread,
Jan 14, 2011, 4:12:22 AM1/14/11
to Hyde
I added 2.6 compatibility. It now works with both 2.6 and 2.7.

For 2.6, you need to install argparse first before installing the rest
of them as mentioned here:
https://github.com/hydepy/hyde/blob/master/dev-req.txt

(note that line # 9 - 15 are not required if you are not developing
hyde)

Thanks
Lakshmi

On Jan 9, 8:06 am, Lakshmi Vyas <lakshmi.v...@gmail.com> wrote:
> Hi,
>
> I forgot to mention that, Python 2.7 is required.
>
> You don't have to explain yourself at all. I am the one that's grateful that you are taking the time to look at the project at an early stage with zero docs.
>
> Thanks so much,
> Lakshmi
>
> > Email: Mandaris.Mo...@gmail.com
> > Phone: (916) 538 - 2611
>
> > On Jan 8, 2011, at 10:19 AM, Lakshmi Vyas wrote:
>
> >> Thanks Valentin :)
>
> >> On 08-Jan-2011, at 9:19 PM, Valentin Jacquemin wrote:
>
> >>> I don't have time to test nowadays but I wanted to thank you Lakshmi for leading Hyde dev it's an awesome tool and your features listing sounds awesome!
>
> >>> Thanks a lot!
>
> >>> Valentin
>
> >>> Sent from my iPhone
>
> >>> On 8 janv. 2011, at 13:19, Lakshmi <lakshmi.v...@gmail.com> wrote:
>
> >>>> Folks,
>
> >>>> I have finally made the move to get hyde 1.0 rolling. While its still
> >>>> not feature complete and probably has alpha level bugs,
> >>>> you can see the code athttps://github.com/hydepy/hyde.
> >>>> For more options, visit this group athttp://groups.google.com/group/hyde-dev?hl=en.
>
> >>> --
> >>> You received this message because you are subscribed to the Google Groups "Hyde" group.
> >>> To post to this group, send email to hyde...@googlegroups.com.
> >>> To unsubscribe from this group, send email to hyde-dev+u...@googlegroups.com.
> >>> For more options, visit this group athttp://groups.google.com/group/hyde-dev?hl=en.
>
> >> --
> >> You received this message because you are subscribed to the Google Groups "Hyde" group.
> >> To post to this group, send email to hyde...@googlegroups.com.
> >> To unsubscribe from this group, send email to hyde-dev+u...@googlegroups.com.
> >> For more options, visit this group athttp://groups.google.com/group/hyde-dev?hl=en.

Mandaris Moore

unread,
Jan 17, 2011, 9:58:02 AM1/17/11
to hyde...@googlegroups.com
I think the dev-req.txt should include argparse as well.

Downloading/unpacking commando==0.1.1a (from -r dev-req.txt (line 2))


Running setup.py egg_info for package commando
Traceback (most recent call last):
File "<string>", line 14, in <module>
File "/Users/mando/.virtualenvs/hyde/build/commando/setup.py", line 2, in <module>
import commando
File "commando.py", line 5, in <module>
from argparse import ArgumentParser
ImportError: No module named argparse
Complete output from command python setup.py egg_info:
Traceback (most recent call last):

File "<string>", line 14, in <module>

File "/Users/mando/.virtualenvs/hyde/build/commando/setup.py", line 2, in <module>

import commando

File "commando.py", line 5, in <module>

from argparse import ArgumentParser

ImportError: No module named argparse


........


(hyde)quote:hydepy mando$ sudo pip install argparse
Password:
Downloading/unpacking argparse
Downloading argparse-1.1.zip (151Kb): 151Kb downloaded
Running setup.py egg_info for package argparse
Installing collected packages: argparse
Running setup.py install for argparse
Successfully installed argparse
Cleaning up...


After that I was about to run the pip install -r dev-req.txt command fine.


Mandaris Moore
Email: Mandari...@gmail.com

Lakshmi Vyas

unread,
Jan 17, 2011, 10:03:39 AM1/17/11
to hyde...@googlegroups.com
Yes, thats correct. - For Python 2.6, argparse is a required installation. (It got bundled with python 2.7).

I am not sure if there is a way to specify extra modules for specific python versions (other than having two different requirement files)


Thanks
Lakshmi.

Mandaris Moore

unread,
Jan 17, 2011, 10:13:22 AM1/17/11
to hyde...@googlegroups.com, Mandaris Moore III
Ok, I've done the requirements (even set up a different virtual environment) and run the set up.

But I don't know where to go from here. In the previous version, I knew there was a hyde.py and I could generate and run with that.

Right now I'm lost, because I don't know all the changes that have happened and I'm not a beginner when it comes to python... I'm a novice.

Where should I go next?

Mandaris Moore
Email: Mandari...@gmail.com

Mandaris Moore

unread,
Jan 20, 2011, 2:23:46 AM1/20/11
to Mandaris Moore, hyde...@googlegroups.com
Ok, so I'm going to admit that I don't know what to do.

In the original source listing (https://github.com/lakshmivyas/hyde) for hyde it included a hyde.py that you could use to generate and start a project.

The new source (https://github.com/hydepy/hyde) does not.

Am I supposed to switch branches or copy the files over the new release? I don't know.

Lakshmi Vyas

unread,
Jan 20, 2011, 2:27:07 AM1/20/11
to hyde...@googlegroups.com, Mandaris Moore
Hi,

Sorry about the delayed response.

There are a few options.

1. You can do python setup.py install and then just run:

hyde create, hyde gen or hyde serve

2. You can also run the script directly by calling python main.py gen


Note that the default template is pretty much empty right now. But the test template has some content.


Hope that helps. I will soon get some docs and nice layouts added.

Thanks
Lakshmi.

Lakshmi Vyas

unread,
Feb 5, 2011, 10:47:06 PM2/5/11
to Mandaris Moore, hyde...@googlegroups.com
HI,

I am unable to reproduce this issue:

 hyde -s test_site create
 09:07:26 hyde Creating site at [/Users/lvfp/test_site] with layout [/Users/lvfp/.virtualenv/fp/src/hyde/hyde/layouts/basic]
 09:07:26 hyde Site creation complete
==========
hyde -s test_site create -l test
 09:12:42 hyde Creating site at [/Users/lvfp/test_site] with layout [/Users/lvfp/.virtualenv/fp/src/hyde/hyde/layouts/test]
 09:12:42 hyde Site creation complete
==========
ls test_site/
content info.yaml layout media site.yaml

----------------

The best way to debug this is to check out your site package source.


cdsitepackages
cd ../../../src/hyde

Make sure your hyde package is installed properly.

=============

HYDE_DATA is just an environment variable that points to any custom layouts or plugins you may have that hyde must consider 
in its commands.

You can add this to your bash profile and keep your layouts in there:

export HYDE_DATA = ~/.hyde


.hyde
layouts


In future, site and system wide configuration defaults will also go in the HYDE_DATA directory.


Thanks
Lakshmi.





On 06-Feb-2011, at 8:00 AM, Mandaris wrote:

This is the error that I'm getting in my new build environment.
(hyde)quote:test_site developer$ hyde -s ~/new_test create -l test -f
 18:27:31 hyde Creating site at [/Users/developer/new_test] with layout [None]
Traceback (most recent call last):
  File "/Users/developer/.virtualenv/hyde/bin/hyde", line 8, in <module>
    load_entry_point('hyde==0.6.0', 'console_scripts', 'hyde')()
  File "/Users/developer/.virtualenv/hyde/lib/python2.6/site-packages/hyde-0.6.0-py2.6.egg/EGG-INFO/scripts/main.py", line 10, in main
    Engine().run()
  File "/Library/Python/2.6/site-packages/commando.py", line 193, in run
    args.run(self, args)
  File "/Users/developer/.virtualenv/hyde/lib/python2.6/site-packages/hyde-0.6.0-py2.6.egg/hyde/engine.py", line 64, in create
    " layouts" % HYDE_DATA)
hyde.exceptions.HydeException: The given layout is invalid. Please check if you have the `layout` in the right place and the environment variable(HYDE_DATA) has been setup properly if you are using custom path for layouts


Is there a way that I can set HYDE_DATA?

How can I debug this so I don't constantly bug you?

On Wed, Jan 26, 2011 at 11:40 PM, Mandaris Moore <mandari...@gmail.com> wrote:
Thanks!
This looks good and I'll have to look them over later (it's 11:30 here)


Mandaris Moore
Email: Mandari...@gmail.com
Phone: (916) 538 - 2611

On Jan 26, 2011, at 11:17 PM, Lakshmi Vyas wrote:

> Some initial docs:
>
> http://hydepy.github.com/hyde/overview.html
> http://hydepy.github.com/hyde/install.html
> http://hydepy.github.com/hyde/commandline.html
>
> On 27-Jan-2011, at 10:04 AM, Mandaris Moore wrote:
>
>> Hello again,
>>
>> I create a new account and ran the following in the terminal. Could you look it over when you get a chance?
>>
>> <terminal_output.zip>

Mandaris

unread,
Feb 5, 2011, 11:28:41 PM2/5/11
to Lakshmi Vyas, hyde...@googlegroups.com
I did some digging around and this is what I found.

(hyde)quote:site-packages developer$ pwd; ls -l
/Users/developer/.virtualenv/hyde/lib/python2.6/site-packages
total 680
-rw-r--r--  1 developer  staff     479 Feb  2 19:39 easy-install.pth
drwxr-xr-x  4 developer  staff     136 Feb  5 19:56 hyde-0.6.0-py2.6.egg
drwxr-xr-x  4 developer  staff     136 Feb  2 19:37 pip-0.8.1-py2.6.egg
-rw-r--r--  1 developer  staff  333447 Jan  8 13:20 setuptools-0.6c11-py2.6.egg
-rw-r--r--  1 developer  staff      30 Feb  2 19:37 setuptools.pth
-rw-r--r--  1 developer  staff      49 Feb  5 18:23 typogrify.egg-link

(hyde)quote:site-packages developer$ cd ../../../src ; ls -l
total 8
-rw-r--r--   1 developer  staff  185 Feb  2 19:39 pip-delete-this-directory.txt
drwxr-xr-x  12 developer  staff  408 Feb  2 19:39 typogrify


I attempted to install again.

(hyde)quote:src developer$ pip install -e git://github.com/hyde/hyde.git#egg=hyde
Obtaining hyde from git+git://github.com/hyde/hyde.git#egg=hyde
  Cloning git://github.com/hyde/hyde.git to ./hyde
  Running setup.py egg_info for package hyde
Requirement already satisfied (use --upgrade to upgrade): argparse in /Library/Python/2.6/site-packages (from hyde)
Requirement already satisfied (use --upgrade to upgrade): commando in /Library/Python/2.6/site-packages (from hyde)
Requirement already satisfied (use --upgrade to upgrade): jinja2 in /Library/Python/2.6/site-packages (from hyde)
Requirement already satisfied (use --upgrade to upgrade): pyYAML in /Library/Python/2.6/site-packages/PyYAML-3.09-py2.6-macosx-10.6-universal.egg (from hyde)
Requirement already satisfied (use --upgrade to upgrade): markdown in /Library/Python/2.6/site-packages/Markdown-2.0.3-py2.6.egg (from hyde)
Requirement already satisfied (use --upgrade to upgrade): smartypants in /Library/Python/2.6/site-packages (from hyde)
Requirement already satisfied (use --upgrade to upgrade): pygments in /Library/Python/2.6/site-packages/Pygments-1.3.1-py2.6.egg (from hyde)
Installing collected packages: hyde
  Running setup.py develop for hyde
    Creating /Users/developer/.virtualenv/hyde/lib/python2.6/site-packages/hyde.egg-link (link to .)
    Removing hyde 0.6.0 from easy-install.pth file
    Adding hyde 0.6.0 to easy-install.pth file
    Installing hyde script to /Users/developer/.virtualenv/hyde/bin
    Installing main.py script to /Users/developer/.virtualenv/hyde/bin
    
    Installed /Users/developer/.virtualenv/hyde/src/hyde
Successfully installed hyde
Cleaning up...

I ran hyde again, and it looked like it was all an installation problem. 

(hyde)quote:~ developer$ hyde -s ~/another create -l test
 20:11:16 hyde Creating site at [/Users/developer/another] with layout [/Users/developer/.virtualenv/hyde/src/hyde/hyde/layouts/test]
 20:11:16 hyde Site creation complete


So it's up!

Sorta!

Could you send me some test content to around with?


Once again, I'd like to thank everyone who attempted to help. In the end, it was a difference between using the pip installer and attempting to use github to get the source to build and install myself.

I'll be quiet for a while.

Lakshmi Vyas

unread,
Feb 5, 2011, 11:40:35 PM2/5/11
to Mandaris, hyde...@googlegroups.com
Perfect :) 

The installation cycle will get better as the code base improves. If anyone has ideas / suggestions on making the installation / package management smoother I am all ears.

I have also requested that hyde's branch of typogrify be merged with the original.

Thanks
Lakshmi.

Lakshmi Vyas

unread,
Feb 5, 2011, 11:47:30 PM2/5/11
to Mandaris Moore, hyde...@googlegroups.com
For test content, you can use the doc layout.

hyde -s ~/another create -l doc


It has the layout and content that powers: http://hyde.github.com/overview

Thanks
Lakshmi
Reply all
Reply to author
Forward
0 new messages