- Fix broken handlebar
- [DEV] add a npm run serve command
- Remove space that was added for optional params
- Make the 'optional' label unselectable (#970 by Thomas Bruun)
- Fix issue with handlebar (#967)
- Use npm lockfile v2
- Update handlebar to fix vulnerability (#962)
- Fix runtime error in single page template (#944 via #945 by Ashlanfox)
- Implement apiBody parsing into multi page template (#953 by Seth Wheeler)
- Maintain comment order for @apiParam and @apiSuccess (fix #206 via #951 by Matheus Giovani)
- Add option for JavaScript output mode (#933 by refineddigital)
- Add new configuration variable
useHostUrlAsSampleUrl
(#930) by Shivam Kumar Jha - Add new favicon (#926 by Francisko Arenas)
- Implement apiBody parsing into single page template (#916 by Seth Wheeler)
- Clean up useless CSS rule (#923)
- Enable GitHub actions (#918 by @tommy87)
- Send sample url request to url hosting the documentation when no sampleUrl is provided in config (#915 by @thealphadollar)
- Add programmatic usage to README (#898 by rigwild)
- Fix page refresh on non ascii characters (#896)
- Fix output when offline (#894) by @SecretAgentKen
- Increase require.js timeout (#889) by @NicolasCARPi
- Use Prism.js instead of deprecated prettify.js (#888) by @NicolasCARPi
- Send sample request auto json body if body/json is not used but Content-Type application/json header is set (#862)
- Fix documentation not showing / Show version when withCompare is set to false (#880) Fix #879
- Add support for javascript config files (#872)
- Add support for different config files (#874)
- Fix tests for Windows (#873)
- Fix pre borders overflowing on print view (#887)
- Fix initial jump with hashed URL (#871) by @rafaelgssa
- Fix issue with newer api endpoint showing up on first page load (#869) by @Yopai
- Update Handlebars to latest version (fix security issue) (#867) by @NicolasCARPi
- Allow several path parameters (#866) by @rafaelgssa
- Add param file upload support (#850) by @aqnaruto
- Add --single option to output in a single HTML file (#840) by @eyasliu
- Avoid using container-fluid on the body if the screen is larger than 1200px (#846)
- Add
@rigwild/apidoc-markdown
converter in README (#839) - Add --watch command line option to generate doc if source changes (#835)
- Handle parsing of array fields (#829)
- Handle nested fields when sending the request (#828)
- Revert back the api Group/Name change in template (#821)
- Bring back apidoc-example as devDependencies for CI
- Update apidoc-core version in package-lock.json
- Fix documentation for filter-by option (use = instead of :)
- Fix HTML after comparison (#827)
The number of open pull requests in now 0! :D In this release you'll find one bugfix and also some new features/improvements.
-
Bugfix:
- Fix default header being sent instead of user input (#813)
-
New features:
- Add aloneDisplay config option to filter the page after clicking menu header (#820 by @sxiazb)
- Add filtering navigation bar based on URL (#820 by @sxiazb)
- Add dropdown box for the body parameter and modify to allow multiple params (#812 by @sxiazb)
- Add --filter-by option (#810 by @omaretna)
- Add possibility to define absolute url in @api (fix #201)
-
Enhancements:
- Add mjs file extension to the list of parsed files (#815 by @mons54)
- Improve the example project
- Don't output anything by default on CLI (fix #799)
This release comes after more than two years without changes to the code. A lot of things were merged and fixed, so it is possible that this changelog is not entirely complete. Refer to the git log if necessary.
-
Common
- Add Docker image and improve it (#807)
- Fix apiGroup showing instead of apiName in template
- Add support for custom markdown parser location (#714)
-
CLI
- Add kotlin to default file-filters.
- Escape content of success examples.
-
Template
- Update style.css to have horizontal scrolling for long URLs.
- Add Vietnamese translation.
- Add Turkish translation.
- Blank optional parameters omitted from sample request.
- Update template form parameter to be in form group (#669)
- Improve the sorting of names (#688)
- Avoid underscores in article titles (#764)
- Add default value of the headers in the input (#806)
- Add notes about Elixir (#658)
- Send JSON body for APIs (#559)
-
Maintenance
- Update dependencies where possible
- CLI
- Bugfix for folder problem.
- Parser
- Fix missing chars in root folder.
- Replace removed fs-extra.walkSync with klaw-sync.
- Template
- Fix missing lodash dependency.
- Template
- Fix hidden optional field.
- Template
- Fix missing type in template.
- Add check for empty header/footer nav points.
Add new @apiDeprecated annotation. Add new @apiPrivate annotation.
-
CLI
- Add
--private false|true
parameter to export@apiPrivate
marked methods. - Add .cls, .jsx, p, .pl, .vue file extensions.
- Update dependencies.
- Add
-
Parser
-
Template
- Update Bootstrap to 3.3.7.
- Navigation filter added. 562
- h2 links in Header / Footer files will now be visible in the main navigation. 525
- Fix issue of left menu displaying major function in older version. 528
- Replace lodash with only needed custom build lodash functions.
- Update italian language file. 507
Greatest improvement: Plugin support
apidoc search now in global node modules dir and local node_modules
for modules that start with apidoc-plugin-
. (local installed plugins have higher priority)
View / clone: apidoc-plugin-test With a plugin you can add features like new parsers (this was possible before only with CLI param) or filters and workers.
Start adding hooks. Hooks can be used in plugins to extend or transform data.
If you need a hook in apidoc-core please add your hook and provide a pull request. How to add a hook into apidoc-core view source code
-
CLI
- Update dependencies.
- Remove not needed js-cookie module.
- Allow for single source configuration. 458
-
Parser
- Add Plugin Loader. Extend filter, parser, worker for plugin usage. example plugin
- Add plugin hooks for found elements. available hooks
- Add support for other encodings (default ist uf8).
apidoc --encoding utf8
- Add Lua support.
- Add cpp support.
- Add Arduino support.
-
Template
- Do not use monospace for sans-serif fonts, only code fonts.
- Sort field by grouping. 457
- Add X-UA-Compatible for Internet Explorer to prevent loading only screen.
- Reformat JSON example output.
- Example table column widths set to 100%.
- Add Italian translation.
- Parser
- Bugfix: Inherit error of lodash merge / mergeWidth split.
-
CLI
- Update dependencies.
-
Parser
- Upgrade markdown parser to version 0.6.
-
Template
-
CLI
- Clarify that -c option must be a directory.
-
Parser
- Add support for
:
in @apiParam names. - Add Ruby doxygen-style support.
- Add Groovy support.
- Add Exlixir support.
- Add Parameter name array syntax.
- Add travis-ci tests for node 0.12.
- Add support for
-
Template
- Add semver for correct sort order. 335
- Add google webfontloader to fix scrollspy position after webfont loading.
- Add semver for correct sort order.
- Add Spanish translation.
- Add Chinese Simplified (zh-cn) tranlsation.
- Update to semantic tradition Chinese words.
- Update Polish translation.
- Ensure params isn't empty before sending.
- Set required defaults for sample request.
- Bugfix: Locale don't work with pt-br. 329
- Bugfix: Empty Groups for Future Versions showing when old Versions are selected. 349
- Bugfix: Add path to template variable (_col1).
- Sample requests with GET parameters need to be added to the query string.
- Fix handle bar expression to not apply html encode for data type field.
- Typo in header.md.
- Parser
- Remove p-Tags from type-Field.
- Update dependencies.
- Update fixtures (type-Fields and line endings).
- Template
- Update French and Russian translation files.
-
Important changes:
- Remove deprecated annotations (http://apidocjs.com/deprecated.html).
- Replace markdown parser markdown-it.
-
CLI
- Add path to config file (with
-c
). - Add multiple input locations (with
-i
). - Remove markdown config parameters, for custom configurations view MARKDOWN.md.
- Disable warning if packageJson.apidoc was defined.
- Add litcoffee and scala file extension.
- Add path to config file (with
-
Template
- Add
template.forceLanguage
inapidoc.json
to set a fixed language file without auto-detect the browser language. - Add word wrap for pure text examples.
- Add Brazilian, French, Polish and Russian translation files.
- Add
-
Parser
- Remove deprecated annotations (http://apidocjs.com/deprecated.html).
- Replace markdown parser with markdown-it.
- Add custom markdown parser support, view MARKDOWN.md for details.
- Add support for markdown in the type section. Example:
@apiParam {(CustomType)[http://...link-to-description.html]}
-
CLI
- Bugfix: Multiple bin parameters. 244
-
Template
- Update template vendor lib path-to-regexp.
- Bugfix: Example overlaps navigation. 240
-
Parser
- Update dependencies.
-
CLI
- Add some version information for verbose / debug output.
-
Parser
- Bugfix: Parse blocks with unknown parameters (before the block was skipped).
- Bugfix: show correct block index.
- Update dependencies.
- Parser
- Unindent strings in description fields. Mulitlines start with the same leading whitespaces. 173
-
CLI
- Add parameter
--parse-languages
for custom language regex.
- Add parameter
-
Parser
- Add Clojure parser for
.clj
files. - Extend parser to transfer own language regex.
- Update apidoc-core interface (replace arguments with setters).
- Add Clojure parser for
-
Template
- Add chinese and dutch translations files.
- Bugfix: Path to apidoc-core.
-
Split apidoc code
-
apidoc is now only the CLI-Tool with UI-Template and file creation (as you know it). You can use apidoc without change anything.
-
apidoc-core (for developers) is the parser and response the api-data.
-
apidoc-example (for developers) are the test files for the apidoc-spec.
-
-
CLI
- Replace optimist (not maintained anymore) with nomnom:
true / false parameters can now be used, e.g. enable markdown (default)
--markdown
or disable--no-markdown
. - Add parameter
--markdown
. - Replace the custom Logger with winston.
- Replace optimist (not maintained anymore) with nomnom:
true / false parameters can now be used, e.g. enable markdown (default)
-
Parser
- Bugfix: Settings to enable / disable markdown (marked-gfm was previously used).
-
Template
- Add generator.url and generator.name to the footer generator information (for custom ui-generators).
- Move handlebars_helper.js to utils/
-
Common
- Remove grunt dependencies (test run with
npm run test
). - Change grunt-apidoc (0.10.0) to use always the latest version of apiDoc.
- Remove grunt dependencies (test run with
-
Parser
- Allow overwrite of packageInfo e.g. from grunt task (apidoc#177)
-
Bugfix: Extend parser regexp to allow inline comment-code (apidoc#180)
-
Bugfix: Slash only path in api triggered error (apidoc#159)
-
Bugfix: Scrollspy offset (apidoc#176)
-
Bugfix: Get package infos from package.json or apidoc.json (apidoc#169)
-
CLI
- Allow to include an external file which can set the markdown settings. (apidoc#166)
-
Template
-
Add custom order in apidoc.json Append apiName or apiGroup in the
order
list:"order": [ "MyGroupName", "MyParameterName", "MyOtherParameterName" ]
-
Speed up rendering of subtemplates (apidoc#164)
-
Bugfix: Special char doesn't show in @apiGroup. (apidoc#163)
-
- Bugfix: apiGroupDescription from apiDefine not working. (apidoc#156)
- Bugfix: remove deprecated message for apiPermission. (apidoc#154)
- Bugfix: Testclient did not send JSON format. (apidoc#152)
- Bugfix: Python regex doublequote. (apidoc#151)
- Bugfix: Issue with multiple apiSuccessExample blocks. (apidoc#150)
-
Parameter
-
Add as replacement for all (now) deprecated define and structure methods:
@apiDefine
@apiUse
-
Deprecated:
@apiDefineErrorStructure
@apiDefineHeaderStructure
@apiDefinePermission
@apiDefineStructure
@apiDefineSuccessStructure
apiErrorTitle
apiErrorStructure
apiHeaderStructure
apiHeaderTitle
apiParamTitle
apiStructure
apiSuccessTitle
apiSuccessStructure
-
Remove unneeded methods since success and error response can be grouped:
@apiInfo
@apiInfoExample
@apiInfoTitle
-
Add for consistent usage:
@apiHeaderExample
@apiParamExample
-
Change:
@apiPermission
, multiple permission usage in a block is allowed now. Permission names must be defined with @apiDefine.
-
Extend:
@apiParam
with size and allowed values.
-
-
CLI
- Show deprecated message. Show details with
--debug
or--verbose
. - Improved error output.
- Turn off verbose output by default.
- Add debug output.
- Show deprecated message. Show details with
-
Parser
- Ignore other doc-language @-parameters (enables jsdoc, phpdoc, ... again).
- Add apidoc specification version to project file.
- Correctly handle Erlang comments.
- Bugfix: Markdown error on Empty description.
- Revised worker preProcess / postProcess functions.
- Change parser export names.
-
Template
- Show size and allowed values in field description.
- Change template sample request to handle custom named groups.
- Update template vendor files (handlebars 2, requirejs)
- Added support for using path-to-regexp in sample request.
- Add
jQueryAjaxSetup
to apidoc.json for setup ajax requests (http://apidocjs.com/#configuration-template-settings). - Hide the ul for tabs if no content.
- Bugfix: Custom parsers not working. (apidoc#113)
- Add type for
@apiExample {type} Title
,@apiSuccessExample
,@apiErrorExample
. - Add type switch in template.
- Append filetype to fields at ajax reuqest testform.
- Bugfix: Same file handling with regexp under win32. (apidoc#109)
- Add rudimentary support for direct api calls (test requests) from within the doc.
- New configuration var sampleUrl for
apidoc.json
. - @apiSampleRequest
- New configuration var sampleUrl for
- Added ability to have forward slash (/) in parameter field names.
- Add parameter
--parse
for parse only the files and return the parsed data. - Allow perl comments between "=pod" and "=cut".
- Bugfix: Change RegExp for parameter values to handle all chars. (apidoc#97)
- Bugfix: Reserved parameter names. (apidoc#96)
- Bugfix: Multiple added url to api path after compared to other version. (apidoc#87)
- Bugfix: Docs do not generate without optional @api [title]. (apidoc#82)
- Bugfix: Escape example output in
apiExample
,apiErrorExample
,apiSuccessExample
. (apidoc#78)
- Changing font include to work on HTTPS.
- Some refactors and bugfixes.
- Enable markdown for all description fields.
- Add
apidoc.json
configuration file for primary configuration overpackage.json
. (http://apidocjs.com/#configuration) - Add template specific configuration settings. (http://apidocjs.com/#configuration-template-settings)
- Add support for Perl (Doxygen) comment-style.
- Add simple CSS3 preloader.
- Add css for printing.
- Bugfix: Template IE8 compatibility. (apidoc#69)
- Update node version to 0.10.x.
- Add optional custom browser title with
apidoc.title
inpackage.json
. - Add optional url endpoint with
apidoc.url
inpackage.json
. - Bugfix: Template scrollbug. (apidoc#64)
-
Add new Functions:
-
Remove package.json path
apidocFilename
. -
Change package.json path
apidoc
. -
Add
apidoc.header
/apidoc.footer
(with custom navigation titles). (http://apidocjs.com/#headerfooter) -
Remove template basic (easier to maintain), the default template will be re-designed in a future version too.
-
Update template libraries.
-
Add test cases.
- Preserve other files when copying template files to the destination output dir.
- Added a short-circuit check. (apidoc#41)
- Bugfix: Fix parsing of multiline string. (apidoc#34)
- Add support for CoffeeScript comment-style.
-
Add support for other comment-style. Now apiDoc supports:
- Erlang
- JavaScript (JavaDoc-Style: e.g. also useable in C#, Go, Dart, Java, PHP, TypeScript)
- Python
- Ruby
-
Add some programming language test cases.
-
Remove german code comments.
-
Upgrade all used node modules.
- Replace deprecated node-markdown with marked.
- Add cli parameter for marked
--marked-...
, watch all params with--help
. - Upgrade all used node modules.
- Bugfix: executable line delimiters. (again).
- Bugfix: Allow usage of structures and titles in the same block. (apidoc#21)
- Give some indication, in case file listing with fails. (apidoc#20)
- Allow multiple structure includes.
- Split and extend test-files.
- Bugfix: Fix parsing for empty lines and removing stars on data that spans over multiple lines. (apidoc#11)
- Remove http:// link to make https compliant. (apidoc#10)
- Extend Template with url-param "compare=1" to show the compare version on page view.
- Bugfix: Minor fix with double structure examples.
- Bugfix: Template not show @apiSuccessExample @apiErrorExample.
- Bugfix: executable line delimiters.
-
Extend
@apiParam
,@apiSuccess
,@apiError
with a grouping ability. Example@apiParam (group) varname
. view @apiParam -
Add new Functions:
-
Minor Template-Bugfixes.
- Allow whitespace in apiName and apiGroup.
- Bugfix: Filter for directories.
- Update Node Modules to newer versions.
- Add
-e
exclude option for Files / Directories, exampleapidoc -e node_modules/
.
- Bugfix: Check for a valid title in Template. (apidoc#7)
- Bugfix: Whitespace before comment block. (apidoc#2)
- Change templates, enable navigation scroll.
- Add @apiIgnore.
- Update grunt Modules.
- Bugfix: OSX executable.
- Official release.