14 years agoAnd mangle things such that the actual app test works master use_interface_roles mirror/master mirror/use_interface_roles
t0m [Sun, 7 Jun 2009 22:36:00 +0000]
And mangle things such that the actual app test works

14 years agoAnd get the other strategy from master implemented
t0m [Sun, 7 Jun 2009 22:31:54 +0000]
And get the other strategy from master implemented

14 years agoFix bugs introduced previously
t0m [Sun, 7 Jun 2009 22:18:55 +0000]
Fix bugs introduced previously

14 years agoDo not munge config
t0m [Sun, 7 Jun 2009 22:02:40 +0000]
Do not munge config

14 years agoFirst hack at factoring the strategy out, broke the config munging test..
t0m [Sun, 7 Jun 2009 20:47:01 +0000]
First hack at factoring the strategy out, broke the config munging test..

14 years agoRemove unused autobox
t0m [Sun, 7 Jun 2009 02:36:12 +0000]
Remove unused autobox

14 years agoAble to use strings rather than having to use hash refs
t0m [Sun, 7 Jun 2009 02:35:26 +0000]
Able to use strings rather than having to use hash refs

14 years agoAdjust to not munge config
t0m [Sun, 7 Jun 2009 02:05:01 +0000]
Adjust to not munge config

14 years agoWe don't use structures types any more
t0m [Sun, 7 Jun 2009 01:59:49 +0000]
We don't use structures types any more

14 years agoFix tests, add autobox to flatten interface roles so you can use a string or array...
t0m [Sun, 7 Jun 2009 01:58:56 +0000]
Fix tests, add autobox to flatten interface roles so you can use a string or array ref (need to apply this everywhere else we mangle config also), allow app wide config of interface roles

14 years agoRemove the types stuff
t0m [Sun, 7 Jun 2009 01:21:52 +0000]
Remove the types stuff

14 years agoAdd code from gists 12311[56]
t0m [Sun, 7 Jun 2009 01:17:19 +0000]
Add code from gists 12311[56]

14 years agoAdd shell for a more complex testapp
t0m [Sun, 7 Jun 2009 01:11:01 +0000]
Add shell for a more complex testapp

14 years agoWhoops, add the demo type library and the trivial test also
t0m [Thu, 28 May 2009 00:34:33 +0000]
Whoops, add the demo type library and the trivial test also

14 years agoMake the generated action method fit better into what the StompTestApp::Controller...
t0m [Thu, 28 May 2009 00:28:24 +0000]
Make the generated action method fit better into what the StompTestApp::Controller::TestController does, viz getting stuff out of ->req->data, and returning ->stash->{response} - this is the correct basic protocol yes?

Also add a type check to the input document (i.e. the deserialized message) using structured and lexical
type constraints. I do this in a method modifier, to illustrate that we can get the reflector
(or something) to apply a modifier like this around every model method.

Tada, instant explosion when the data incoming is bad.

You can do this in the controller action with the response document before you stash it also.

This isn't quite as elegant as applying the types as part of the interface role, but I'm sure we
can work through that if this is considered useful.

14 years agoAnd lets have a test that the reflector works in interface role mode
t0m [Wed, 27 May 2009 23:45:09 +0000]
And lets have a test that the reflector works in interface role mode

14 years agoThe code which offended me is expunged
t0m [Wed, 27 May 2009 23:42:24 +0000]
The code which offended me is expunged

14 years agoNow the config isn't eaten whilst building the model, we can get the interface roles...
t0m [Wed, 27 May 2009 23:41:44 +0000]
Now the config isn't eaten whilst building the model, we can get the interface roles from it

14 years agoShitting all over the application config in the model generator was somewhat unfriend...
t0m [Wed, 27 May 2009 23:40:16 +0000]
Shitting all over the application config in the model generator was somewhat unfriendly to everything else. Lets add a test for this, which will be a pita to maintain, so pull the config out to YAML and read that in the test? Anyway, this crap explains the difficulty in getting interface_roles out the config..

14 years agoMerge commit 'chris/master' into use_interface_roles
t0m [Wed, 27 May 2009 23:14:23 +0000]
Merge commit 'chris/master' into use_interface_roles

14 years agoDon't clobber the "config" method - it's pretty important. This is
Chris Andrews [Wed, 27 May 2009 09:24:10 +0000]
Don't clobber the "config" method - it's pretty important. This is
a working approach, but the problem of accessing generated component
configs needs more work.

14 years agoMerge commit 'chris/master' into use_interface_roles
t0m [Wed, 27 May 2009 08:56:15 +0000]
Merge commit 'chris/master' into use_interface_roles

14 years agoTake dispatchable methods from the role(s) applied to the class.
Chris Andrews [Wed, 27 May 2009 08:27:23 +0000]
Take dispatchable methods from the role(s) applied to the class.
Stashes the config away on the generated classes so it's accessible
even once we've app-namespace-qualified the class name.
Appears to break Catalyst::Action::REST...

14 years agoIgnore emacs
Chris Andrews [Tue, 26 May 2009 09:25:26 +0000]
Ignore emacs

14 years agoMerge branch 'master' of git@github.com:bobtfish/catalyst-dynamicappdemo
t0m [Mon, 25 May 2009 21:28:37 +0000]
Merge branch 'master' of git@github.com:bobtfish/catalyst-dynamicappdemo

14 years agoUpdate DynamicComponent so that you just ask for 'Model::Foo' not 'MyApp::Model:...
Tomas Doran (t0m) [Mon, 25 May 2009 19:57:30 +0000]
Update DynamicComponent so that you just ask for 'Model::Foo' not 'MyApp::Model::Foo', as the component generator is called on  anyway so can find 'MyApp for itself

14 years agoPut controllergeneratingmodel in the right place
Tomas Doran (t0m) [Mon, 25 May 2009 19:50:29 +0000]
Put controllergeneratingmodel in the right place

14 years agoMore template pod
Tomas Doran (t0m) [Mon, 25 May 2009 18:08:24 +0000]
More template pod

14 years agoHack some of my current thoughts into the TODO
t0m [Mon, 25 May 2009 17:11:21 +0000]
Hack some of my current thoughts into the TODO

14 years agoDon't use CMA anywhere any more
t0m [Mon, 25 May 2009 16:53:42 +0000]
Don't use CMA anywhere any more

14 years agoStart adding pod to ModelsFromConfig
t0m [Mon, 25 May 2009 16:53:16 +0000]
Start adding pod to ModelsFromConfig

14 years agoNuke the now unused controller role. This will probably be back at some point, but...
t0m [Mon, 25 May 2009 16:44:28 +0000]
Nuke the now unused controller role. This will probably be back at some point, but right now it's unused so killing.

14 years agomove the model to controller reflector into a namespace under dynamiccomponent
t0m [Mon, 25 May 2009 16:41:03 +0000]
move the model to controller reflector into a namespace under dynamiccomponent

14 years agoWhilst the 'nominate individual methods as dispatchable by their metaclass' strategy...
t0m [Mon, 25 May 2009 16:26:43 +0000]
Whilst the 'nominate individual methods as dispatchable by their metaclass' strategy is reasonable, we actually want to be able to make the strategies pluggable, and encourage 'class consumes an interface role' as the default way of doing it. Therefore, as I have no intention of documenting it, or really maintaining it to be more useable than as a test case for an alternate method finding implementation, then I'm moving the relevant code to generate those methods down into the tests

14 years agoAdd include/exclude options so that havingModelsFromConfig loaded doesn't involve...
t0m [Mon, 25 May 2009 16:20:23 +0000]
Add include/exclude options so that havingModelsFromConfig loaded doesn't involve trying to auto-borg every model which in any way has config. Should I just ignore models which have already been loaded into the app by Catalyst (i.e. have a real 'on disk' class) - I guess so, thoughts chris?

14 years agoMove CatalystX::ModelsFromConfig => ::DynamicComponent::ModelsFromConfig
t0m [Mon, 25 May 2009 15:58:01 +0000]
Move CatalystX::ModelsFromConfig => ::DynamicComponent::ModelsFromConfig

14 years agoFix test when run with make test
t0m [Mon, 25 May 2009 02:56:49 +0000]
Fix test when run with make test

14 years agoWrite CatalystX::ModelsFromConfig::InterfaceRoles
t0m [Mon, 25 May 2009 02:49:08 +0000]
Write CatalystX::ModelsFromConfig::InterfaceRoles

Your model configurations have to have 'interface_roles => [qw/ AtLeast OneRole /]',
and the class has to do those roles, or it all goes bang in a big way.

14 years agoGive SomeModelClass an interface role which requires a method
t0m [Mon, 25 May 2009 02:47:43 +0000]
Give SomeModelClass an interface role which requires a method

14 years agoApply roles to component after adding the methods, so methods can advise roles
t0m [Mon, 25 May 2009 02:46:44 +0000]
Apply roles to component after adding the methods, so methods can advise roles

14 years agoAdd a load more POD
t0m [Mon, 25 May 2009 02:08:59 +0000]
Add a load more POD

14 years agoThe fake example is now broken as we're not smashing random methods. Fix method gener...
t0m [Mon, 25 May 2009 01:21:33 +0000]
The fake example is now broken as we're not smashing random methods. Fix method generation to use the public API for adding attributes, and what do you know, the rest of it works. Add a lower level test for this

14 years agoAdd more tests for config replacement and make them pass. I seem to have made 10_app...
t0m [Mon, 25 May 2009 01:08:59 +0000]
Add more tests for config replacement and make them pass. I seem to have made 10_app.t start to fail at some point

14 years agoGet rid of all messing with action registration by just stuffing the attributes onto...
t0m [Mon, 25 May 2009 00:28:51 +0000]
Get rid of all messing with action registration by just stuffing the attributes onto the methods straight after their generated, rather than messing with the action registration process itself. This elegantly cures all cases of accidental methods getting given attributes and so becoming dispatchable

14 years agoSome more changes needed by the controller reflector, no tests for them yet
t0m [Mon, 25 May 2009 00:23:42 +0000]
Some more changes needed by the controller reflector, no tests for them yet

14 years agoWe already need 0004, use the new shiny in test app, and turn off debug
t0m [Sun, 24 May 2009 23:55:21 +0000]
We already need 0004, use the new shiny in test app, and turn off debug

14 years agoFix POD
t0m [Sun, 24 May 2009 23:44:12 +0000]
Fix POD

14 years agoConvert the two DynamicComponent clients to use the new protocol. This significantly...
t0m [Sun, 24 May 2009 23:41:20 +0000]
Convert the two DynamicComponent clients to use the new protocol. This significantly cleans up the controller reflector

14 years agoMake the extended tests pass. This is now fairly frightning code ;)
t0m [Sun, 24 May 2009 22:28:56 +0000]
Make the extended tests pass. This is now fairly frightning code ;)

14 years agoRemove COMPONENT feature, add tests for making the other features generic from curryi...
t0m [Sun, 24 May 2009 21:08:54 +0000]
Remove COMPONENT feature, add tests for making the other features generic from currying and config when component generator is invoked + strategies for merging curried / passed component config

14 years agoRename app test to run later
t0m [Sun, 24 May 2009 20:47:41 +0000]
Rename app test to run later

14 years agoAdd repos to Makefile.PL, other tweaks
t0m [Sun, 24 May 2009 20:45:09 +0000]
Add repos to Makefile.PL, other tweaks

14 years agoAdd more tests for DynamicComponent, and make the config for a new dynamic component...
Tomas Doran (t0m) [Sun, 24 May 2009 18:41:51 +0000]
Add more tests for DynamicComponent, and make the config for a new dynamic component saner

14 years agoTest COMPONENT functionality
Tomas Doran (t0m) [Sun, 24 May 2009 18:12:51 +0000]
Test COMPONENT functionality

14 years agoStart trivial tests for dynamiccomponent
Tomas Doran (t0m) [Sun, 24 May 2009 18:03:20 +0000]
Start trivial tests for dynamiccomponent

14 years agoAdd some thoughts / notes to TODO
Tomas Doran (t0m) [Sun, 24 May 2009 17:22:18 +0000]
Add some thoughts / notes to TODO

14 years agoAdd a load of POD
Tomas Doran (t0m) [Sun, 24 May 2009 17:21:30 +0000]
Add a load of POD

14 years agoThis is for the tests, move over there
Tomas Doran (t0m) [Sun, 24 May 2009 16:41:46 +0000]
This is for the tests, move over there

14 years agoFix so that superclasses and roles get applied from config. This is where the method...
Tomas Doran (t0m) [Sat, 23 May 2009 20:28:17 +0000]
Fix so that superclasses and roles get applied from config. This is where the method smashing shows itself as untenable, but I think I have a strategy for that..

14 years agoMake superclasses and roles tests pass
Tomas Doran (t0m) [Sat, 23 May 2009 19:55:49 +0000]
Make superclasses and roles tests pass

14 years agoFailing tests for configured base classes and roles.
Tomas Doran (t0m) [Sat, 23 May 2009 19:17:39 +0000]
Failing tests for configured base classes and roles.

14 years agoIgnore stuff I have open in my editor
Tomas Doran (t0m) [Sat, 23 May 2009 19:17:13 +0000]
Ignore stuff I have open in my editor

14 years agoMX::Role::Parameterized fixed the bug which meant I had to mention the parameterized...
Tomas Doran (t0m) [Sat, 23 May 2009 19:16:00 +0000]
MX::Role::Parameterized fixed the bug which meant I had to mention the parameterized role here to get it to compose, by composing right, and as it had no parameters, crapped itself. Bump required version so all the hate goes away

14 years agoBump Catalyst dep
Tomas Doran (t0m) [Sat, 23 May 2009 18:56:20 +0000]
Bump Catalyst dep

14 years agoAdd a base class and a controller role, and some config for the controller builder...
Tomas Doran (t0m) [Sat, 23 May 2009 18:54:26 +0000]
Add a base class and a controller role, and some config for the controller builder, so I can write failing tests

14 years agoInitial capture of discussion as TODOs.
Chris Andrews [Fri, 22 May 2009 20:29:55 +0000]
Initial capture of discussion as TODOs.

14 years agoMake the test work like I want it too. It's a gross hack currently, but now does...
Tomas Doran (t0m) [Wed, 13 May 2009 11:55:28 +0000]
Make the test work like I want it too. It's a gross hack currently, but now does what it says on the tin

14 years agoBad kitty, ->can't('has')
Tomas Doran (t0m) [Wed, 13 May 2009 11:48:05 +0000]
Bad kitty, ->can't('has')

14 years agoAdd auto_install so I get make installdeps
Tomas Doran (t0m) [Wed, 13 May 2009 11:33:23 +0000]
Add auto_install so I get make installdeps

14 years agoFAIL
t0m [Thu, 30 Apr 2009 23:02:12 +0000]
FAIL

14 years agoFix scripts. I also appear to have fucked things so we're getting actions we shouldn...
t0m [Thu, 30 Apr 2009 22:32:43 +0000]
Fix scripts. I also appear to have fucked things so we're getting actions we shouldn't registered. Fail, and the tests don't. DOUBLE FAIL.

14 years agoWhole lotta reorganisation. Moved the app demo down into t/lib, added Module::Install...
t0m [Thu, 30 Apr 2009 22:28:43 +0000]
Whole lotta reorganisation. Moved the app demo down into t/lib, added Module::Install::ExtraTests, as it will goad me into adding POD tests, rip configloader out the test app, I know it works already

14 years agoConvert the controller base class into a role applied to the controller meta. There...
t0m [Thu, 30 Apr 2009 22:12:55 +0000]
Convert the controller base class into a role applied to the controller meta. There needs to be a way to config how controllers are generated / their superclass + extra roles and stuff like that

15 years agoActually only find methods which have been defined with the 'command' syntax..
t0m [Sun, 26 Apr 2009 21:59:56 +0000]
Actually only find methods which have been defined with the 'command' syntax..

15 years agoOk, I don't feel so dirty now. Still need to implement method filtering, such that...
t0m [Sun, 26 Apr 2009 19:16:13 +0000]
Ok, I don't feel so dirty now. Still need to implement method filtering, such that only methods created with the appropriate metaclass get used

15 years agoAnother piece of insantiy factored out
t0m [Sun, 26 Apr 2009 19:01:15 +0000]
Another piece of insantiy factored out

15 years agoGet rid of the insanity of passing the compoenent method as a subref - instead it...
t0m [Sun, 26 Apr 2009 18:57:14 +0000]
Get rid of the insanity of passing the compoenent method as a subref - instead it becomes a role parameter. This gets rid of the insane hack to remove the COMPONENT method from the local package in controllers

15 years agoFirst step switch to MX::Role::Parameterized
t0m [Sun, 26 Apr 2009 18:39:46 +0000]
First step switch to MX::Role::Parameterized

15 years agoDid I mention that I'm rubbish at naming things. I'll start caring about that when...
t0m [Fri, 24 Apr 2009 22:51:16 +0000]
Did I mention that I'm rubbish at naming things. I'll start caring about that when I start pulling this shit apart into components for the CPAN when it's past prototype stage. Add stuff to give me syntax to generate methods with a custom metaclass, so that when I introspect - I don't have to use a fucking regex to work out what methods to exclude. We could then sanely support role application, which would be nice - although doing modifiers right is hard. This is also waaay more involved than it should need to be.

15 years agoHmm...
t0m [Fri, 24 Apr 2009 22:43:26 +0000]
Hmm...

15 years agoFactor out to smaller routines
t0m [Fri, 24 Apr 2009 22:33:12 +0000]
Factor out to smaller routines

15 years agoIgnore more crap
t0m [Fri, 24 Apr 2009 22:32:48 +0000]
Ignore more crap

15 years agoAdd more epic comments in the 3am badlands code
t0m [Fri, 24 Apr 2009 22:24:03 +0000]
Add more epic comments in the 3am badlands code

15 years agoAdd stuff to .gitignore
t0m [Fri, 24 Apr 2009 22:04:31 +0000]
Add stuff to .gitignore

15 years agoFuck you pod coverage
t0m [Fri, 24 Apr 2009 21:56:10 +0000]
Fuck you pod coverage

15 years agoSwitch everything to autoclean. Add sanity tests to ensure appropriate modern perl...
t0m [Fri, 24 Apr 2009 21:41:35 +0000]
Switch everything to autoclean. Add sanity tests to ensure appropriate modern perl policy compliance ;)

15 years agoAdd types::structured, as we need a calling convention.. Add namespace::autoclean...
t0m [Fri, 24 Apr 2009 21:31:31 +0000]
Add types::structured, as we need a calling convention.. Add namespace::autoclean as it's less typing, and rafl nagged me to use it

15 years agoThe basis for the one true type of controller
t0m [Fri, 24 Apr 2009 21:30:36 +0000]
The basis for the one true type of controller

15 years agoRemove hardcoded 'DynamicAppDemo' from reflector - ControllerBase still
Chris Andrews [Fri, 24 Apr 2009 08:05:36 +0000]
Remove hardcoded 'DynamicAppDemo' from reflector - ControllerBase still
hardcoded.

15 years agoRemove LIES in comment
t0m [Thu, 23 Apr 2009 01:16:53 +0000]
Remove LIES in comment

15 years agoAnd works, with tests. 4 hours start to finish, that was fun :)
t0m [Thu, 23 Apr 2009 01:07:31 +0000]
And works, with tests. 4 hours start to finish, that was fun :)

15 years agoAlmost there, builds controllers with methods in them...
t0m [Thu, 23 Apr 2009 01:00:37 +0000]
Almost there, builds controllers with methods in them...

15 years agoAlmost works generating controllers
t0m [Thu, 23 Apr 2009 00:27:46 +0000]
Almost works generating controllers

15 years agoStart my reflector. Factor out the component generation from the other shit into...
t0m [Thu, 23 Apr 2009 00:14:30 +0000]
Start my reflector. Factor out the component generation from the other shit into a role

15 years agoThats action registration sorted out. Now I just need to introspect all the models...
t0m [Wed, 22 Apr 2009 23:44:55 +0000]
Thats action registration sorted out. Now I just need to introspect all the models, and generate shim controllers, piece of piss :)

15 years agoAdd .gitignore
t0m [Wed, 22 Apr 2009 22:32:05 +0000]
Add .gitignore

15 years agoWell, thats dynamic model class loading from 100% config, with tests. Should be CPANa...
t0m [Wed, 22 Apr 2009 22:31:06 +0000]
Well, thats dynamic model class loading from 100% config, with tests. Should be CPANable by itself :)

15 years agoBase class for controllers we auto-generate
t0m [Wed, 22 Apr 2009 21:36:33 +0000]
Base class for controllers we auto-generate

15 years agoStrip code down to the bare minimum to start from
t0m [Wed, 22 Apr 2009 21:36:00 +0000]
Strip code down to the bare minimum to start from

15 years agoScaffold
Tomas Doran (t0m) [Wed, 22 Apr 2009 21:28:50 +0000]
Scaffold