I think the most important changes in Grails 1.2 are the inclusion of Spring 3.0 and the pre-compilation of GSPs when building a .war.
These aren't my favorites (I'll get to those in a moment), but they are important. The Spring 3 inclusion will allow the use a several new Spring annotations which will make it much easier to integrate existing Spring MVC apps with Grails. The compilation of GSPs in a .war will eliminate the lag on the first access of a page and, more importantly, reduce the use of permgen space in Grails applications.
Oh, another important Spring related improvement in 1.2, which is also one of my favorites, is method level transaction support in services. So we will be able to have some methods in a service be transactional and others not. And we get more control over the transaction properties too!
Some of my favorite improvements are: failOnError - Passing failOnError:true to a domainInstance.save() call will cause an exception to raised if the instance can't be saved. This can be helpful in a lot of areas, but I am especially looking forward to it in bootstrap.groovy, which I use extensively in development. Another improvement that related to bootstraping, is environments in bootstrap.groovy. Inside the init block we will be able to declare separate code blocks per environment. The code to do environment specific stuff now is not difficult but this will be much cleaner. Another one that I am looking forward to is the improved Boolean dynamic finders. Instead of:
We will be able to do something more like:
Again, not a big thing but very nice.