Awestruct refactor (aka awestructx)

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Awestruct refactor (aka awestructx)

bobmcwhirter
Administrator
Howdy Everyone--

Due to several issues with awestruct, notably the deprecation of FSSM, the not-very-complete regeneration, an occasional big-ass-loop, plus a severe lack of tests, I took some time to "refactor" using copy/paste, a new version of Awestruct.

It's currently hanging its hat on the awestructx branch in the regular repo:

        https://github.com/awestruct/awestruct/tree/awestructx

I'd like everyone to give it a whirl, and let me know if you find issues.  I've tried real hard to maintain backwards-compatibility with only a minimum of changes (mostly regarding testing class of a page)

These sites seem to generate fine, with a few small changes:

        awestruct.org
        projectodd.org
        torquebox.org
        ceylon.org
        arquillian.org

I have some pull-requests for these projects in my local pipeline.  I'll organize them and submit them to each project.

Notable deficiencies:

        a) Haven't pulled org-mode over.
        b) Post-render transformers aren't in the pipeline yet.

Implementationally, we've created our own Struct, called AStruct (which is really a plain Hash + AStructMixin).  AStruct can (optionally) cascade more AStructs of nils (like OpenCascade).  It can also access members with indifference as keys (struct[:taco] or struct['taco']) and of course as methods (struct.taco).

Additionally, we have split a Page from the Handlers that can render them, ultimately through a chain of handlers.  (File->Interpolating->Markdown, on a Page).

This Page abstraction helps sites like Arquillian, also, which want to treat layouts as boiler-plate page content, and not just as renderable root layouts.

At this point, clone the repo, checkout the awestructx branch, rake, and gem install the locally-produced gem.  Maybe smart to use RVM.

Thanks,

        -Bob
---------------------------------------------------------------------
Archives: http://talk-archive.awestruct.org/
To unsubscribe, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Awestruct refactor (aka awestructx)

Emmanuel Bernard
I have not investigated further but http://github.com/emmanuelbernard/emmanuelbernard.com does not build.
I used to call page.tags.join(',') on my blog layout but page.tags seems to be null.


On 2 mai 2012, at 21:52, Bob McWhirter wrote:

> Howdy Everyone--
>
> Due to several issues with awestruct, notably the deprecation of FSSM, the not-very-complete regeneration, an occasional big-ass-loop, plus a severe lack of tests, I took some time to "refactor" using copy/paste, a new version of Awestruct.
>
> It's currently hanging its hat on the awestructx branch in the regular repo:
>
> https://github.com/awestruct/awestruct/tree/awestructx
>
> I'd like everyone to give it a whirl, and let me know if you find issues.  I've tried real hard to maintain backwards-compatibility with only a minimum of changes (mostly regarding testing class of a page)
>
> These sites seem to generate fine, with a few small changes:
>
> awestruct.org
> projectodd.org
> torquebox.org
> ceylon.org
> arquillian.org
>
> I have some pull-requests for these projects in my local pipeline.  I'll organize them and submit them to each project.
>
> Notable deficiencies:
>
> a) Haven't pulled org-mode over.
> b) Post-render transformers aren't in the pipeline yet.
>
> Implementationally, we've created our own Struct, called AStruct (which is really a plain Hash + AStructMixin).  AStruct can (optionally) cascade more AStructs of nils (like OpenCascade).  It can also access members with indifference as keys (struct[:taco] or struct['taco']) and of course as methods (struct.taco).
>
> Additionally, we have split a Page from the Handlers that can render them, ultimately through a chain of handlers.  (File->Interpolating->Markdown, on a Page).
>
> This Page abstraction helps sites like Arquillian, also, which want to treat layouts as boiler-plate page content, and not just as renderable root layouts.
>
> At this point, clone the repo, checkout the awestructx branch, rake, and gem install the locally-produced gem.  Maybe smart to use RVM.
>
> Thanks,
>
> -Bob
> ---------------------------------------------------------------------
> Archives: http://talk-archive.awestruct.org/
> To unsubscribe, e-mail: [hidden email]
>


---------------------------------------------------------------------
Archives: http://talk-archive.awestruct.org/
To unsubscribe, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Awestruct refactor (aka awestructx)

wesleyhales
In reply to this post by bobmcwhirter
bobmcwhirter wrote
I'd like everyone to give it a whirl, and let me know if you find issues.
Works fine for me: https://github.com/wesleyhales/wesleyhales.com
Reply | Threaded
Open this post in threaded view
|

Re: Awestruct refactor (aka awestructx)

bobmcwhirter
Administrator
In reply to this post by Emmanuel Bernard

This ended up being two issues:

a) Like a dork, I hadn't pulled .erb handlers across.
b) You using a copy pasta of the Tagger, which required some changes upstream.  If you can move back to the upstream (and submit your changes to us) we can avoid this in the future, hopefully.

Try this:

        https://github.com/emmanuelbernard/emmanuelbernard.com/pull/1

On May 2, 2012, at 7:38 PM, Emmanuel Bernard wrote:

> I have not investigated further but http://github.com/emmanuelbernard/emmanuelbernard.com does not build.
> I used to call page.tags.join(',') on my blog layout but page.tags seems to be null.
>
>
> On 2 mai 2012, at 21:52, Bob McWhirter wrote:
>
>> Howdy Everyone--
>>
>> Due to several issues with awestruct, notably the deprecation of FSSM, the not-very-complete regeneration, an occasional big-ass-loop, plus a severe lack of tests, I took some time to "refactor" using copy/paste, a new version of Awestruct.
>>
>> It's currently hanging its hat on the awestructx branch in the regular repo:
>>
>> https://github.com/awestruct/awestruct/tree/awestructx
>>
>> I'd like everyone to give it a whirl, and let me know if you find issues.  I've tried real hard to maintain backwards-compatibility with only a minimum of changes (mostly regarding testing class of a page)
>>
>> These sites seem to generate fine, with a few small changes:
>>
>> awestruct.org
>> projectodd.org
>> torquebox.org
>> ceylon.org
>> arquillian.org
>>
>> I have some pull-requests for these projects in my local pipeline.  I'll organize them and submit them to each project.
>>
>> Notable deficiencies:
>>
>> a) Haven't pulled org-mode over.
>> b) Post-render transformers aren't in the pipeline yet.
>>
>> Implementationally, we've created our own Struct, called AStruct (which is really a plain Hash + AStructMixin).  AStruct can (optionally) cascade more AStructs of nils (like OpenCascade).  It can also access members with indifference as keys (struct[:taco] or struct['taco']) and of course as methods (struct.taco).
>>
>> Additionally, we have split a Page from the Handlers that can render them, ultimately through a chain of handlers.  (File->Interpolating->Markdown, on a Page).
>>
>> This Page abstraction helps sites like Arquillian, also, which want to treat layouts as boiler-plate page content, and not just as renderable root layouts.
>>
>> At this point, clone the repo, checkout the awestructx branch, rake, and gem install the locally-produced gem.  Maybe smart to use RVM.
>>
>> Thanks,
>>
>> -Bob
>> ---------------------------------------------------------------------
>> Archives: http://talk-archive.awestruct.org/
>> To unsubscribe, e-mail: [hidden email]
>>
>
>
> ---------------------------------------------------------------------
> Archives: http://talk-archive.awestruct.org/
> To unsubscribe, e-mail: [hidden email]
>


---------------------------------------------------------------------
Archives: http://talk-archive.awestruct.org/
To unsubscribe, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Awestruct refactor (aka awestructx)

Emmanuel Bernard
TRied and it works.
Going back to upstream is my plan and I my changes are already in. I'm waiting for an official 0.2.19 release with them.

On 3 mai 2012, at 15:54, Bob McWhirter wrote:

>
> This ended up being two issues:
>
> a) Like a dork, I hadn't pulled .erb handlers across.
> b) You using a copy pasta of the Tagger, which required some changes upstream.  If you can move back to the upstream (and submit your changes to us) we can avoid this in the future, hopefully.
>
> Try this:
>
> https://github.com/emmanuelbernard/emmanuelbernard.com/pull/1
>
> On May 2, 2012, at 7:38 PM, Emmanuel Bernard wrote:
>
>> I have not investigated further but http://github.com/emmanuelbernard/emmanuelbernard.com does not build.
>> I used to call page.tags.join(',') on my blog layout but page.tags seems to be null.
>>
>>
>> On 2 mai 2012, at 21:52, Bob McWhirter wrote:
>>
>>> Howdy Everyone--
>>>
>>> Due to several issues with awestruct, notably the deprecation of FSSM, the not-very-complete regeneration, an occasional big-ass-loop, plus a severe lack of tests, I took some time to "refactor" using copy/paste, a new version of Awestruct.
>>>
>>> It's currently hanging its hat on the awestructx branch in the regular repo:
>>>
>>> https://github.com/awestruct/awestruct/tree/awestructx
>>>
>>> I'd like everyone to give it a whirl, and let me know if you find issues.  I've tried real hard to maintain backwards-compatibility with only a minimum of changes (mostly regarding testing class of a page)
>>>
>>> These sites seem to generate fine, with a few small changes:
>>>
>>> awestruct.org
>>> projectodd.org
>>> torquebox.org
>>> ceylon.org
>>> arquillian.org
>>>
>>> I have some pull-requests for these projects in my local pipeline.  I'll organize them and submit them to each project.
>>>
>>> Notable deficiencies:
>>>
>>> a) Haven't pulled org-mode over.
>>> b) Post-render transformers aren't in the pipeline yet.
>>>
>>> Implementationally, we've created our own Struct, called AStruct (which is really a plain Hash + AStructMixin).  AStruct can (optionally) cascade more AStructs of nils (like OpenCascade).  It can also access members with indifference as keys (struct[:taco] or struct['taco']) and of course as methods (struct.taco).
>>>
>>> Additionally, we have split a Page from the Handlers that can render them, ultimately through a chain of handlers.  (File->Interpolating->Markdown, on a Page).
>>>
>>> This Page abstraction helps sites like Arquillian, also, which want to treat layouts as boiler-plate page content, and not just as renderable root layouts.
>>>
>>> At this point, clone the repo, checkout the awestructx branch, rake, and gem install the locally-produced gem.  Maybe smart to use RVM.
>>>
>>> Thanks,
>>>
>>> -Bob
>>> ---------------------------------------------------------------------
>>> Archives: http://talk-archive.awestruct.org/
>>> To unsubscribe, e-mail: [hidden email]
>>>
>>
>>
>> ---------------------------------------------------------------------
>> Archives: http://talk-archive.awestruct.org/
>> To unsubscribe, e-mail: [hidden email]
>>
>
>
> ---------------------------------------------------------------------
> Archives: http://talk-archive.awestruct.org/
> To unsubscribe, e-mail: [hidden email]
>


---------------------------------------------------------------------
Archives: http://talk-archive.awestruct.org/
To unsubscribe, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Awestruct refactor (aka awestructx)

bobmcwhirter
Administrator
In reply to this post by bobmcwhirter
Relatedly, I've pulled over all of the markups now.

Asciidoc and RST are *not* adequately tested, since I was unable to easily install them on my out-of-date MBP, and I doubt they'd work under Travis CI, also.

Could someone check the support for .adoc and .rst locally?  And figure out a way to only run the specs if the related CLI tools are found on the local machine?

Thanks!

        -Bob

https://gist.github.com/2586331




On May 3, 2012, at 9:54 AM, Bob McWhirter wrote:

>
> This ended up being two issues:
>
> a) Like a dork, I hadn't pulled .erb handlers across.
> b) You using a copy pasta of the Tagger, which required some changes upstream.  If you can move back to the upstream (and submit your changes to us) we can avoid this in the future, hopefully.
>
> Try this:
>
> https://github.com/emmanuelbernard/emmanuelbernard.com/pull/1
>
> On May 2, 2012, at 7:38 PM, Emmanuel Bernard wrote:
>
>> I have not investigated further but http://github.com/emmanuelbernard/emmanuelbernard.com does not build.
>> I used to call page.tags.join(',') on my blog layout but page.tags seems to be null.
>>
>>
>> On 2 mai 2012, at 21:52, Bob McWhirter wrote:
>>
>>> Howdy Everyone--
>>>
>>> Due to several issues with awestruct, notably the deprecation of FSSM, the not-very-complete regeneration, an occasional big-ass-loop, plus a severe lack of tests, I took some time to "refactor" using copy/paste, a new version of Awestruct.
>>>
>>> It's currently hanging its hat on the awestructx branch in the regular repo:
>>>
>>> https://github.com/awestruct/awestruct/tree/awestructx
>>>
>>> I'd like everyone to give it a whirl, and let me know if you find issues.  I've tried real hard to maintain backwards-compatibility with only a minimum of changes (mostly regarding testing class of a page)
>>>
>>> These sites seem to generate fine, with a few small changes:
>>>
>>> awestruct.org
>>> projectodd.org
>>> torquebox.org
>>> ceylon.org
>>> arquillian.org
>>>
>>> I have some pull-requests for these projects in my local pipeline.  I'll organize them and submit them to each project.
>>>
>>> Notable deficiencies:
>>>
>>> a) Haven't pulled org-mode over.
>>> b) Post-render transformers aren't in the pipeline yet.
>>>
>>> Implementationally, we've created our own Struct, called AStruct (which is really a plain Hash + AStructMixin).  AStruct can (optionally) cascade more AStructs of nils (like OpenCascade).  It can also access members with indifference as keys (struct[:taco] or struct['taco']) and of course as methods (struct.taco).
>>>
>>> Additionally, we have split a Page from the Handlers that can render them, ultimately through a chain of handlers.  (File->Interpolating->Markdown, on a Page).
>>>
>>> This Page abstraction helps sites like Arquillian, also, which want to treat layouts as boiler-plate page content, and not just as renderable root layouts.
>>>
>>> At this point, clone the repo, checkout the awestructx branch, rake, and gem install the locally-produced gem.  Maybe smart to use RVM.
>>>
>>> Thanks,
>>>
>>> -Bob
>>> ---------------------------------------------------------------------
>>> Archives: http://talk-archive.awestruct.org/
>>> To unsubscribe, e-mail: [hidden email]
>>>
>>
>>
>> ---------------------------------------------------------------------
>> Archives: http://talk-archive.awestruct.org/
>> To unsubscribe, e-mail: [hidden email]
>>
>
>
> ---------------------------------------------------------------------
> Archives: http://talk-archive.awestruct.org/
> To unsubscribe, e-mail: [hidden email]
>


---------------------------------------------------------------------
Archives: http://talk-archive.awestruct.org/
To unsubscribe, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Awestruct refactor (aka awestructx)

Toby Crawley
awestructx builds immutant.org, with one small change (to immutant.org, not awestruct): _site/ doesn't exist at the time the documentation extension runs, so it now creates it if needed.

- Toby
 
On May 3, 2012, at 1:57 PM, Bob McWhirter wrote:

> Relatedly, I've pulled over all of the markups now.
>
> Asciidoc and RST are *not* adequately tested, since I was unable to easily install them on my out-of-date MBP, and I doubt they'd work under Travis CI, also.
>
> Could someone check the support for .adoc and .rst locally?  And figure out a way to only run the specs if the related CLI tools are found on the local machine?
>
> Thanks!
>
> -Bob
>
> https://gist.github.com/2586331
>
>
>
>
> On May 3, 2012, at 9:54 AM, Bob McWhirter wrote:
>
>>
>> This ended up being two issues:
>>
>> a) Like a dork, I hadn't pulled .erb handlers across.
>> b) You using a copy pasta of the Tagger, which required some changes upstream.  If you can move back to the upstream (and submit your changes to us) we can avoid this in the future, hopefully.
>>
>> Try this:
>>
>> https://github.com/emmanuelbernard/emmanuelbernard.com/pull/1
>>
>> On May 2, 2012, at 7:38 PM, Emmanuel Bernard wrote:
>>
>>> I have not investigated further but http://github.com/emmanuelbernard/emmanuelbernard.com does not build.
>>> I used to call page.tags.join(',') on my blog layout but page.tags seems to be null.
>>>
>>>
>>> On 2 mai 2012, at 21:52, Bob McWhirter wrote:
>>>
>>>> Howdy Everyone--
>>>>
>>>> Due to several issues with awestruct, notably the deprecation of FSSM, the not-very-complete regeneration, an occasional big-ass-loop, plus a severe lack of tests, I took some time to "refactor" using copy/paste, a new version of Awestruct.
>>>>
>>>> It's currently hanging its hat on the awestructx branch in the regular repo:
>>>>
>>>> https://github.com/awestruct/awestruct/tree/awestructx
>>>>
>>>> I'd like everyone to give it a whirl, and let me know if you find issues.  I've tried real hard to maintain backwards-compatibility with only a minimum of changes (mostly regarding testing class of a page)
>>>>
>>>> These sites seem to generate fine, with a few small changes:
>>>>
>>>> awestruct.org
>>>> projectodd.org
>>>> torquebox.org
>>>> ceylon.org
>>>> arquillian.org
>>>>
>>>> I have some pull-requests for these projects in my local pipeline.  I'll organize them and submit them to each project.
>>>>
>>>> Notable deficiencies:
>>>>
>>>> a) Haven't pulled org-mode over.
>>>> b) Post-render transformers aren't in the pipeline yet.
>>>>
>>>> Implementationally, we've created our own Struct, called AStruct (which is really a plain Hash + AStructMixin).  AStruct can (optionally) cascade more AStructs of nils (like OpenCascade).  It can also access members with indifference as keys (struct[:taco] or struct['taco']) and of course as methods (struct.taco).
>>>>
>>>> Additionally, we have split a Page from the Handlers that can render them, ultimately through a chain of handlers.  (File->Interpolating->Markdown, on a Page).
>>>>
>>>> This Page abstraction helps sites like Arquillian, also, which want to treat layouts as boiler-plate page content, and not just as renderable root layouts.
>>>>
>>>> At this point, clone the repo, checkout the awestructx branch, rake, and gem install the locally-produced gem.  Maybe smart to use RVM.
>>>>
>>>> Thanks,
>>>>
>>>> -Bob
>>>> ---------------------------------------------------------------------
>>>> Archives: http://talk-archive.awestruct.org/
>>>> To unsubscribe, e-mail: [hidden email]
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> Archives: http://talk-archive.awestruct.org/
>>> To unsubscribe, e-mail: [hidden email]
>>>
>>
>>
>> ---------------------------------------------------------------------
>> Archives: http://talk-archive.awestruct.org/
>> To unsubscribe, e-mail: [hidden email]
>>
>
>
> ---------------------------------------------------------------------
> Archives: http://talk-archive.awestruct.org/
> To unsubscribe, e-mail: [hidden email]
>


---------------------------------------------------------------------
Archives: http://talk-archive.awestruct.org/
To unsubscribe, e-mail: [hidden email]