project = Project.new
won't work as it will create a new local var instead of using the provided setter. Thats why we use this right now:
project(Project.new)
I will go and attach all these properties to another object, so we can do stuff like this:
gator.project = Project.new
gator.config = ...
We then could think about introducin something like this:
gator.project do |p|
p.name = "name"
end
Additionally I want to get rid of the require syntax to add generators as it is probably better to associate extensions to a project, so a generator for example can be configured via a property it adds to gator.project.
gator.project.generators do |g|
g.test_with :asunit4
end
Ihave been working on this over the weekend, but it's quite a big change which will affect a lot of internal things of gator. For the better i hope!
Cheers