Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature wishlist from msharron #12

Closed
2 tasks done
ghost opened this issue Jun 19, 2017 · 24 comments
Closed
2 tasks done

Feature wishlist from msharron #12

ghost opened this issue Jun 19, 2017 · 24 comments
Milestone

Comments

@ghost
Copy link

ghost commented Jun 19, 2017

I'm carrying this list over from #11 as that issue will be closed pending @msharron's review. Anyway, I'm currently working on these.

  • Render via user specified urls (quite helpful ;) )
  • Only render pages that have changed/been modified.

I think the second one there was fulfilled in v0.6.0. Correct me if I'm wrong.

@ghost ghost added the enhancement label Jun 19, 2017
@ghost ghost changed the title Feature Wishlist from msharron Feature wishlist from msharron Jun 19, 2017
@ghost
Copy link
Author

ghost commented Jun 19, 2017

@msharron If you need to overwrite all of your pages using the -d flag, I would start with v0.6.0, because v0.7.0 implements the feature to only regenerate modified pages. The custom -d doesn't count as a modification to the file so in v0.7.0 it won't do anything unless you've modified the page.

@ghost
Copy link
Author

ghost commented Jun 19, 2017

Mkdir errors just got fixed.

Force the plugin to render a page on the site to avoid the "no page on site loaded" error (would be really helpful)

I'm not sure what you mean here. I have not had this happen. Where are you seeing that error? I'm just trying to better understand it because right now I wouldn't know how to fix it.

@ghost
Copy link
Author

ghost commented Jun 19, 2017

Wow, that sounds high tech. While I tried to keep the code as optimized as I could, I've really only tested it with about 3 pages lol

@ghost
Copy link
Author

ghost commented Jun 23, 2017

Thanks for doing that. Nobody else has submitted any issues so that's a good thing.

@ghost ghost self-assigned this Jun 25, 2017
@ghost ghost modified the milestone: v1.0.0 Jun 25, 2017
@MrMacStripe
Copy link

Is there a possibility to generate a whole site with all the CSS, JS and the images in place? The plugin puts out the pages nicely, but does not care for the assets.

@ghost
Copy link
Author

ghost commented Jul 19, 2017

@MrMacStripe I like the thought, I'm just not sure of a good way to implement is such that it would work for everybody. Easier said than done, depending on how you use Grav. I suppose if people are using Grav to manage their images and don't put any of them outside of where they belong, that part could be done, however, some people store site images on a CDN or a different server altogether.

As for CSS and JS, every theme has the freedom to put these anywhere, so the only effective way I could see to do this would be to scan the entire theme directory and copy the directory structure including only the CSS and JS files. What could be cool, is if the location of the assets was relocated into a new folder for the generated site, and then all pages would reflect the changes to the asset location. Additional processing could be done on the assets then, such as minifying.

Speaking of minifying... I should really have the plugin minify the outputted pages. This deserves a new issue to be created, and I would like to close this one if the remaining issue doesn't stand. I will plan to close it soonish if I don't hear back.

@ghost ghost mentioned this issue Jul 19, 2017
@ghost
Copy link
Author

ghost commented Jul 19, 2017

@msharron to my knowledge, there isn't a way to multithread in PHP. If there is, then I'm clueless.

@ghost ghost closed this as completed Jul 19, 2017
@ghost
Copy link
Author

ghost commented Jul 19, 2017

#13 and #14 carry on the most recent feature ideas discussed here.

@ghost
Copy link
Author

ghost commented Jul 31, 2017

@msharron v0.8.0 should be the multithreaded answer you've been looking for.

@ghost
Copy link
Author

ghost commented Jul 31, 2017

@msharron if it needs to be less intensive, let me know. I put a limit on it to 20 files at a time, but I can shrink that if it's too much.

@Quanatee
Copy link

Quanatee commented Aug 1, 2017

@msharron was the problem with generating 30,000 pages at once? What about generating them in parts? E.g. 10,000 at a time

@ghost
Copy link
Author

ghost commented Aug 1, 2017

I have something to try first before adding any options. I noticed an option in RollingCurl to keep memory from growing too large. Adding this above the simultaneous limit should fix the problem:

$rollingCurl->clearCompleted();
$rollingCurl->prunePendingRequestQueue();

@ghost ghost added suggestion and removed enhancement labels Sep 21, 2017
@ghost ghost modified the milestone: v1.0.0 Sep 21, 2017
@ghost ghost added enhancement and removed suggestion labels Sep 21, 2017
@ghost ghost modified the milestone: v1.0.0 Sep 25, 2017
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants
@Quanatee @MrMacStripe and others