sysgears / grain

Grain is a lightweight and powerful static website generator with custom themes to help create static, SEO-friendly websites or a blog in no time.
https://sysgears.com/grain
Other
160 stars 30 forks source link

`application.properties` should be optional #20

Open altavir opened 7 years ago

altavir commented 7 years ago

Currently, application crashes if this file does not exist, but it is not really used. This file does not make sense for embedded site.

larixer commented 7 years ago

The fact that application crashes, means this file is used. I really don't get your point, why it doesn't makes sense? This file specifies which Grain version should be used to generate static website.

Do you want to specify Grain version in build.gradle, instead? Is this your point?

altavir commented 7 years ago

I looked through the code. It only checks if then file exist and then does nothing.

It makes sense if one uses Grain as a static generator with pre-built theme. Since the number of such themes is very low, in my opinion the greatest advantage of Grain is its flexibility and ability to embed. In this case it makes much more sense to define grain version in gradle build or in SiteConfig and not to add additional file and clutter up build configuration.

larixer commented 7 years ago

@altavir application.properties is used mainly for grainw script, which speeds up Grain startup times compared to gradle. If we remove application.properties we will have to drop grainw too, because we have no reliable way to get desired Grain version from build.gradle.

altavir commented 7 years ago

does grainw work faster than gradle daemon? If not, it is possible that you should drop it. I don't use it so Idon't know.

larixer commented 7 years ago

I need to take a look at latest Gradle versions, that come with Gradle daemon, if they work reasonably fast, then grainw can be dropped.

larixer commented 7 years ago

@altavir Alexander, don't you want to fix this issue yourself and submit Pull Request? I think Gradle with daemon will be almost as fast as grainw, could you check and if it is so - then drop 'application.properties' validation and grainw and update gradle wrapper to the latest version. Since you are raising issues for Grain pretty actively, I think it would be nice if you start contributing fixes, of course if you are interested and have time to do so.

altavir commented 7 years ago

I am definitely interested because I think that Grain is a very promising way to handle static site generation in a very flexible way (flexibility is a key word). I am currently maintaining two sites made with Grain. As for time, this is much more difficult, but I still will try to do something about it when I can.