Tags: docpad/docpad
Tags
v6.83.2 2020 September 8 - If the source path is missing, the correct and useful error is now displayed - The deprecated `srcPath` is now removed, use `sourcePaths` to write and `getPath('source')` and `getPath('sources')` to read - Extra debugging for when getting a path fails - Updated documentation and website links to their new locations
v6.83.1 2020 August 5 - Add a new `loadPlugins` event for use in the [`docpad-plugintester`](https://github.com/docpad/docpad-plugintester) to make sure all test plugins are properly loaded before `docpadReady` and other events are fired
v6.83.0 2020 August 5 - Removed superflous option aliases - `outPath` => `outpath` - `configPaths`, `configPath`, `c` => `config` - `environment`, `e` => `env` - `logLevel` => `log` - `render --out`, `render -o` => `render --output` - Removed `offline` option, it can be re-added later if anyone uses it - Removed the last bits of docpad cloud helper functionality - Removed skeleton functionality, just clone the repo from github instead - `docpad skeleton` => `docpad init` (same functionality as selecting no sekleton) - Removed version check - Updated dependencies, [base files](https://github.com/bevry/base), and [editions](https://editions.bevry.me) using [boundation](https://github.com/bevry/boundation) - This will bring a massive performance boost to DocPad, especially with [Caterpillar](https://github.com/bevry/caterpillar) v6 which allows DocPad to disable fetching line information (a very expensive process) for log messages we don't care about - Minimum required node version changed from `node: >=6` to `node: >=10` to keep up with mandatory ecosystem changes
v6.82.2 2018 September 8 - Add logging support to the pluginloader to make debugging plugin resolutions easier - Fixed failures of plugin loading and creation not being reported correctly - Ensure all dependencies are the latest right now, to help fix false negatives in plugin resolution - Close [thread #248](https://discuss.bevry.me/t/plugins-broken-in-6-82-1/248)
v6.82.1 2018 September 7 - Fixed initialising new projects (regression from v6.82.0) - `docpad init` will now prompt for skeletons (before v6.82.0 this was done via `docpad skeleton`, which was removed) - Upgraded remaining dependencies - Upgraded `promptly` dependency from v2 to v3 - Swapped `superagent` for `node-fetch` - Close [issue #1091](#1091)
v6.82.0 2018 September 7 - This release focuses on eliminating the situation where DocPad would initiate with invalid configuration that would then need to be overwritten later, this could cause plugins to not load correctly, invalid configuration persisting, and general instability until the correct configuration was loaded. Now the correct configuration is loaded from commencement. - Due to new dependency requirements, the minimum supported Node version is now Node version 6, which drops support for Node versions 0.10, 0.12, and 4. - Closes [issue #1086](#1086) - Fix DocPad not working on windows (regression since v6.81.0) - Closes [issue #1088](#1088), [thread #240](https://discuss.bevry.me/t/error-cannot-find-module-editions/240), [issue #1085](#1085), [issue #1084](#1084) - Progress indicator will now pause once the action has completed, and resume on new actions, this allows for cleaner shutdowns with no change of ability - Graceful shutdown is now offered by the `destroyOnExit` configuration option, which uses `process.on('beforeExit', docpad.onBeforeExit)` to destroy DocPad gracefully. This is now possible as we don't have to support Node 0.10. Before we had to do graceful shutdowns in a more complex and manual manner, which resulted in less graceful shutdowns. - DocPad will now longer output `The action completed successfully.`, as unless an error has displayed, then evidently everything remains successful - Debug log file will now only be removed if it needs to be replaced with another one - Fixed `--no-color` CLI argument and `color` configuration option not working - Closes [issue #938](#938) - Color now correctly defaults to environment support - Also now supports `--colour` and `--no-colour` - Removed `--prompts` CLI argument and `prompts` config option in favour of the `--progress` CLI argument and `progress` config option (as that is all `prompts` did really) - The CLI has been rewritten and simplified - The [`commander` package](https://github.com/tj/commander.js) has been swapped out for the [`cac` package](https://github.com/cacjs/cac) - Closes [issue #1048](#1048) - Customisation of the out path via a CLI option now occurs via `--outPath` to remove ambiguity with `docpad render` out file customisation - Introduced `--verbose` and `--debug` CLI options, such that one can do `--silent --debug` - For `docpad render` there is no longer a delay to check for stdin, however if you are using stdin, you must now provide the `--stdin` CLI argument - `stdin` reading abilities has been moved into the docpad `renderStdin` method, and `render` has gained support for it, as well as support for writing an output file - Global CLI options are now parsed before DocPad is instantiated, to ensure configuration is correct from initiation, rather than incorrect at instantiation then made correct later - This removes built in support for customising this, however, no one should be customising global CLI options anyway - As expected, `consoleSetup` event fires after DocPad is ready, and commands can be added to the `cac` instance in the event options - CLI commands are executed after this event resolves - Configuration parsing improvements - Paths will now be resolved when requested, rather than having their resolutions cached, this results in more reliable path resolution across configuration changes - Fixed user configuration never actually being applied (regression since v6.80.1) - Fixed user configuration never loading if it was in your home folder yet you had Dropbox present - Closes [issue #799](#799) - Fixed the loaded user and env configuration debug messages still saying loading - The method `loadConfigPath` now receives a string as its first argument - The method `getConfigPath` has been replaced with the new `getPath('config')` - Leftover DocPad configuration and Plugin configuration will now be correctly removed, before it would linger due to new configuration always being merged into the old, now new configuration swaps out the old - Plugins are now determined via your project's `package.json` dependencies, rather than scanning the `node_modules` directory - This new approach is dramatically faster, and also allows us to concisely warn on plugin skips - Closes [pull request #903](#903) - Instantiation has removed unneeded complexity (and paired with the aforementioned CLI changes) this ensures DocPad always results in a valid state - Removed the configuration option `loggers` that allowed users to swap our caterpillar for something else - No one used it, nor is it optimal to do so. It just introduced a lot of unnecessary complexity and fragility - Removed the method `setLoggers` - Constructing DocPad will now always perform the `load` and `ready` actions - Removed the construction option `action` that allowed one to override the initiation actions - Removed the `docpadLoaded` event. It was poorly named, non-optimal, and only used by a single outdated plugin. - Fixed `docpad clean` not cleaning a custom `outPath` - DocPad now also outputs which paths were cleaned - Path cleaning now uses a more robust way of ensuring DocPad doesn't clean a parent outPath - Closes [issue #727](#727) - The Plugin Loader class has been abstracted out to [pluginloader](https://github.com/bevry/pluginloader) and made generic - Removes `require('docpad').PluginLoader` use `require('@bevry/pluginloader')` instead - Removes the methods: `loadPluginsIn`, `loadedPlugin` - Removes the configuration options: `pluginsPaths`, `enableUnlistedPlugins`, `skipUnsupportedPlugins`, `warnUncompiledPrivatePlugins`, `enabledPlugins` - Closes [issue #391](#391) - Removed the `--force` CLI option, it was unnecessary customisation - Simplified the installer methods: `initGitRepo`, `initNodeModules`, `installNodeModule`, `uninstallNodeModule` - Removed some long standing deprecations - Removed `require('docpad').BasePlugin` use `require('docpad-baseplugin')` instead - Removed `require('docpad').createInstance` use `require('docpad').create` instead - Removed `docpadUtil.setImmediate` (existed for node 0.8 compat which hasn't been there since DocPad 6.72) use `setImmediate` instead - Renamed `docpad.inspector` to `docpad.inspect` and removed `docpadUtil.inspect` - Removed the unstable node.js version warning from DocPad v6.55.6 - Removed leftover `.babelrc` file that was causing everything to be compiled against `es2015` instead of what we desire from our `package.json` configuration - Updated base files and [editions](https://github.com/bevry/editions) using [boundation](https://github.com/bevry/boundation)
v6.81.0 2018 August 21 - This release accomplishes the removal of some long standing deprecations, for background reading refer to: - [Deprecating In-Memory DocPad Importers & Exporters](https://discuss.bevry.me/t/deprecating-in-memory-docpad-importers-exporters/87) - [Abstract out Server functionality into pluginland](#1081) - [Operation Disassemble & Diversify](#821) - To maintain static server functionality, install the [`serve` plugin](https://github.com/docpad/docpad-plugin-serve) - Changes: - Added `runBefore` and `runAfter` events - DocPad is now verbose about when it has to perform an mtime change - Migrations / Removals: - Progress on [issue #691](#691) and [issue #391](#391) - Abstracted out base plugin into [docpad-baseplugin](https://github.com/docpad/docpad-baseplugin) - Abstracted out testers into [docpad-plugintester](https://github.com/docpad/docpad-plugintester) - Close [issue #1081](#1081) - Removed the deprecated dynamic server abilities - Abstracted out the static server abilities into the new [`serve` plugin](https://github.com/docpad/docpad-plugin-serve) - Removes the following properties: `serverExpress`, `serverHttp`, `filesByUrl`, `filesBySelector`, `filesByOutPath` - Removes the following methods: `getServer`, `setServer`, `destroyServer`, `getFileByUrl`, `getFileByRoute`, `getPort`, `getHostname`, `getServerUrl`, `getSimpleServerUrl`, `serverDocument`, `serverMiddlewareHeader`, `serverMiddlewareRouter`, `serverMiddleware404`, `serverMiddleware500`, `server` - Removes the following events: `serverBefore`, `serverExtend`, `serverAfter` - Removes the following options: `databaseCachePath`, `port`, `hostname`, `maxAge`, `serverHttp`, `serverExpress`, `extendServer`, `middlewareStandard`, `middlewareBodyParser`, `middlewareMethodOverride`, `middlewareExpressRouter`, `middleware404`, `middleware500` - Removes the following document properties: `dynamic` - `templateData.site.url` will now default to an empty string - Removes the `docpad-server` executable, use `docpad run` with the `server` plugin instead - Removed the deprecated ability to load uncompiled plugins - Removed the deprecated DocPad database cache, it never worked well - Removes the following properties: `databaseTempCache` - Removes the following methods: `getDatabaseSafe` - Removes the following `generate` event properties: `cache` - Removed the deprecated `docpad-compile` executable, no one used it - Removed leftover `hashKey` property - New Deprecations: - `require('docpad').require('testers')` will be removed in an upcoming release - Use `require('docpad-plugintester')` instead - A warning will be outputted - `require('docpad').BasePlugin` will be removed in an upcoming release - Use `require('docpad-baseplugin')` instead - No warning will be outputted
PreviousNext