Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

Progress bars during generation #247

Closed
Delapouite opened this Issue · 4 comments

2 participants

@Delapouite

Hi

My docpad database have more than 500 documents at the moment and this number will soon double.
The generation takes about 3 minutes to complete on a not so old machine.

So the console get stuck at the info: Generating...line for a long time with no feedback of what's going on behind the scene.
The debug flag provide lots of information but is not very useful to estimate the global progress of the process.

De you reckon there should be a middle ground between the mute state and the debug state with progress bars indicating in real-time the percentage of docs processed by phases?

@balupton
Owner

Not sure how to do progress bars, but from memory they are pretty complicated.

Alternatively, we could do it so every 10 seconds we show the progress of the generation so:

Generating...
Generating... 58/500 (11%)
Generating... 90/500 (18%)
etc...

Would that work for you? This way is good to, as for people where generation happens below <10 seconds it works as normal.

@Delapouite

Yes, progress bars were just referred as eye candy.
Your proposal would already be a much appreciated enhancement.

@balupton
Owner

Sweet, will get to this in one of the upcoming releases :)

@balupton balupton was assigned
@balupton balupton referenced this issue from a commit
@balupton balupton v6.7.0. Improvement.
- v6.7.0 October 2, 2012
	- Server changes:
		- Updated [Express.js](http://expressjs.com/) from v2.5 to v3.0
			- If you're doing custom routing, you'll want to check the
[Express.js Upgrade
Guide](https://github.com/visionmedia/express/wiki/Migrating-from-2.x-to
-3.x)
			- There are now two server objects: `serverExpress` and `serverHttp`
- get them using `docpadInstance.getServer(true)`, set them using
`docpad.setServer({serverExpress,serverHttp})` - `server` in events,
and `docpadInstance.getServer()` return the `serverExpress` object for
backwards compatibility (however things like socket.io require the
`serverHttp` object)
			- Closes [#311](#311),
[#308](#308),
[#272](#272),
[#274](#274)
			- Help by [dave8401](https://github.com/dave8401) and [Ben
Harris](https://github.com/bharrisau)
		- Abstracted out the different middlewares to
`serverMiddlewareHeader`, `serverMiddlewareRouter`,
`serverMiddleware404`, and `serverMiddleware500`
		- Added the following options to the `server` actions:
			- `serverExpress` for a custom express.js server
			- `serverHttp` for a custom http server
			- `middlewareStandard` set it to `false` for us to not use any of
the standard middleware (body parse, method override, express router)
			- `middlewareBodyParser` set it to `false` for us to not add the
`bodyParser` middleware
			- `middlewareMethodOverride` set it to `false` for us to not add the
`methodOverride` middleware
			- `middlewareExpressRouter` set it to `false` for us to not add the
Express.js `router` middleware
			- `middleware404` set it to `false` for us to not add our `404`
middleware
			- `middleware500` set it to `false` for us to not add our `500`
middleware
		- Example API usage can be found
[here](https://github.com/bevry/docpad/wiki/API)
	- Added `standalone` attribute to files (defaults to `false`)
		- If you set to `true`, changes to the file will only cause
re-rendering of that file alone
	- Added a progress indicator during generation
		- Closes [#247](#247)
		- Help by [Bruno Héridet](https://github.com/Delapouite)
761229e
@balupton balupton closed this
@balupton
Owner

Now in v6.7.0 :)

@balupton balupton referenced this issue from a commit
@balupton balupton v6.7.0. Improvement.
- v6.7.0 October 2, 2012
	- Server changes:
		- Updated [Express.js](http://expressjs.com/) from v2.5 to v3.0
			- If you're doing custom routing, you'll want to check the
[Express.js Upgrade
Guide](https://github.com/visionmedia/express/wiki/Migrating-from-2.x-to
-3.x)
			- There are now two server objects: `serverExpress` and `serverHttp`
- get them using `docpadInstance.getServer(true)`, set them using
`docpad.setServer({serverExpress,serverHttp})` - `server` in events,
and `docpadInstance.getServer()` return the `serverExpress` object for
backwards compatibility (however things like socket.io require the
`serverHttp` object)
			- Closes [#311](#311),
[#308](#308),
[#272](#272),
[#274](#274)
			- Help by [dave8401](https://github.com/dave8401) and [Ben
Harris](https://github.com/bharrisau)
		- Abstracted out the different middlewares to
`serverMiddlewareHeader`, `serverMiddlewareRouter`,
`serverMiddleware404`, and `serverMiddleware500`
		- Added the following options to the `server` actions:
			- `serverExpress` for a custom express.js server
			- `serverHttp` for a custom http server
			- `middlewareStandard` set it to `false` for us to not use any of
the standard middleware (body parse, method override, express router)
			- `middlewareBodyParser` set it to `false` for us to not add the
`bodyParser` middleware
			- `middlewareMethodOverride` set it to `false` for us to not add the
`methodOverride` middleware
			- `middlewareExpressRouter` set it to `false` for us to not add the
Express.js `router` middleware
			- `middleware404` set it to `false` for us to not add our `404`
middleware
			- `middleware500` set it to `false` for us to not add our `500`
middleware
		- Example API usage can be found
[here](https://github.com/bevry/docpad/wiki/API)
	- Added `standalone` attribute to files (defaults to `false`)
		- If you set to `true`, changes to the file will only cause
re-rendering of that file alone
	- Added a progress indicator during generation
		- Closes [#247](#247)
		- Help by [Bruno Héridet](https://github.com/Delapouite)
b97db2d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.