Software zum Installieren eines Smart-Mirror Frameworks , zum Nutzen von hochschulrelevanten Informationen, auf einem Raspberry-Pi.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CHANGELOG.md 16KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385
  1. # Changelog
  2. All notable changes to this project will be documented in this file.
  3. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
  4. and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). (Format adopted after v3.0.0.)
  5. <!-- markdownlint-disable MD024 -->
  6. ## [5.1.0] (2020-04-25)
  7. ### Added
  8. - support for multiple command aliases, the first of which is shown in the auto-generated help ([#531], [#1236])
  9. - configuration support in `addCommand()` for `hidden` and `isDefault` ([#1232])
  10. ### Fixed
  11. - omit masked help flags from the displayed help ([#645], [#1247])
  12. - remove old short help flag when change help flags using `helpOption` ([#1248])
  13. ### Changed
  14. - remove use of `arguments` to improve auto-generated help in editors ([#1235])
  15. - rename `.command()` configuration `noHelp` to `hidden` (but not remove old support) ([#1232])
  16. - improvements to documentation
  17. - update dependencies
  18. - update tested versions of node
  19. - eliminate lint errors in TypeScript ([#1208])
  20. ## [5.0.0] (2020-03-14)
  21. ### Added
  22. * support for nested commands with action-handlers ([#1] [#764] [#1149])
  23. * `.addCommand()` for adding a separately configured command ([#764] [#1149])
  24. * allow a non-executable to be set as the default command ([#742] [#1149])
  25. * implicit help command when there are subcommands (previously only if executables) ([#1149])
  26. * customise implicit help command with `.addHelpCommand()` ([#1149])
  27. * display error message for unknown subcommand, by default ([#432] [#1088] [#1149])
  28. * display help for missing subcommand, by default ([#1088] [#1149])
  29. * combined short options as single argument may include boolean flags and value flag and value (e.g. `-a -b -p 80` can be written as `-abp80`) ([#1145])
  30. * `.parseOption()` includes short flag and long flag expansions ([#1145])
  31. * `.helpInformation()` returns help text as a string, previously a private routine ([#1169])
  32. * `.parse()` implicitly uses `process.argv` if arguments not specified ([#1172])
  33. * optionally specify where `.parse()` arguments "from", if not following node conventions ([#512] [#1172])
  34. * suggest help option along with unknown command error ([#1179])
  35. * TypeScript definition for `commands` property of `Command` ([#1184])
  36. * export `program` property ([#1195])
  37. * `createCommand` factory method to simplify subclassing ([#1191])
  38. ### Fixed
  39. * preserve argument order in subcommands ([#508] [#962] [#1138])
  40. * do not emit `command:*` for executable subcommands ([#809] [#1149])
  41. * action handler called whether or not there are non-option arguments ([#1062] [#1149])
  42. * combining option short flag and value in single argument now works for subcommands ([#1145])
  43. * only add implicit help command when it will not conflict with other uses of argument ([#1153] [#1149])
  44. * implicit help command works with command aliases ([#948] [#1149])
  45. * options are validated whether or not there is an action handler ([#1149])
  46. ### Changed
  47. * *Breaking* `.args` contains command arguments with just recognised options removed ([#1032] [#1138])
  48. * *Breaking* display error if required argument for command is missing ([#995] [#1149])
  49. * tighten TypeScript definition of custom option processing function passed to `.option()` ([#1119])
  50. * *Breaking* `.allowUnknownOption()` ([#802] [#1138])
  51. * unknown options included in arguments passed to command action handler
  52. * unknown options included in `.args`
  53. * only recognised option short flags and long flags are expanded (e.g. `-ab` or `--foo=bar`) ([#1145])
  54. * *Breaking* `.parseOptions()` ([#1138])
  55. * `args` in returned result renamed `operands` and does not include anything after first unknown option
  56. * `unknown` in returned result has arguments after first unknown option including operands, not just options and values
  57. * *Breaking* `.on('command:*', callback)` and other command events passed (changed) results from `.parseOptions`, i.e. operands and unknown ([#1138])
  58. * refactor Option from prototype to class ([#1133])
  59. * refactor Command from prototype to class ([#1159])
  60. * changes to error handling ([#1165])
  61. * throw for author error, not just display message
  62. * preflight for variadic error
  63. * add tips to missing subcommand executable
  64. * TypeScript fluent return types changed to be more subclass friendly, return `this` rather than `Command` ([#1180])
  65. * `.parseAsync` returns `Promise<this>` to be consistent with `.parse()` ([#1180])
  66. * update dependencies
  67. ### Removed
  68. * removed EventEmitter from TypeScript definition for Command, eliminating implicit peer dependency on `@types/node` ([#1146])
  69. * removed private function `normalize` (the functionality has been integrated into `parseOptions`) ([#1145])
  70. * `parseExpectedArgs` is now private ([#1149])
  71. ### Migration Tips
  72. If you use `.on('command:*')` or more complicated tests to detect an unrecognised subcommand, you may be able to delete the code and rely on the default behaviour.
  73. If you use `program.args` or more complicated tests to detect a missing subcommand, you may be able to delete the code and rely on the default behaviour.
  74. If you use `.command('*')` to add a default command, you may be be able to switch to `isDefault:true` with a named command.
  75. ## [5.0.0-4] (2020-03-03)
  76. (Released in 5.0.0)
  77. ## [5.0.0-3] (2020-02-20)
  78. (Released in 5.0.0)
  79. ## [5.0.0-2] (2020-02-10)
  80. (Released in 5.0.0)
  81. ## [5.0.0-1] (2020-02-08)
  82. (Released in 5.0.0)
  83. ## [5.0.0-0] (2020-02-02)
  84. (Released in 5.0.0)
  85. ## [4.1.1] (2020-02-02)
  86. ### Fixed
  87. * TypeScript definition for `.action()` should include Promise for async ([#1157])
  88. ## [4.1.0] (2020-01-06)
  89. ### Added
  90. * two routines to change how option values are handled, and eliminate name clashes with command properties ([#933] [#1102])
  91. * see storeOptionsAsProperties and passCommandToAction in README
  92. * `.parseAsync` to use instead of `.parse` if supply async action handlers ([#806] [#1118])
  93. ### Fixed
  94. * Remove trailing blanks from wrapped help text ([#1096])
  95. ### Changed
  96. * update dependencies
  97. * extend security coverage for Commander 2.x to 2020-02-03
  98. * improvements to README
  99. * improvements to TypeScript definition documentation
  100. * move old versions out of main CHANGELOG
  101. * removed explicit use of `ts-node` in tests
  102. ## [4.0.1] (2019-11-12)
  103. ### Fixed
  104. * display help when requested, even if there are missing required options ([#1091])
  105. ## [4.0.0] (2019-11-02)
  106. ### Added
  107. * automatically wrap and indent help descriptions for options and commands ([#1051])
  108. * `.exitOverride()` allows override of calls to `process.exit` for additional error handling and to keep program running ([#1040])
  109. * support for declaring required options with `.requiredOptions()` ([#1071])
  110. * GitHub Actions support ([#1027])
  111. * translation links in README
  112. ### Changed
  113. * dev: switch tests from Sinon+Should to Jest with major rewrite of tests ([#1035])
  114. * call default subcommand even when there are unknown options ([#1047])
  115. * *Breaking* Commander is only officially supported on Node 8 and above, and requires Node 6 ([#1053])
  116. ### Fixed
  117. * *Breaking* keep command object out of program.args when action handler called ([#1048])
  118. * also, action handler now passed array of unknown arguments
  119. * complain about unknown options when program argument supplied and action handler ([#1049])
  120. * this changes parameters to `command:*` event to include unknown arguments
  121. * removed deprecated `customFds` option from call to `child_process.spawn` ([#1052])
  122. * rework TypeScript declarations to bring all types into imported namespace ([#1081])
  123. ### Migration Tips
  124. #### Testing for no arguments
  125. If you were previously using code like:
  126. ```js
  127. if (!program.args.length) ...
  128. ```
  129. a partial replacement is:
  130. ```js
  131. if (program.rawArgs.length < 3) ...
  132. ```
  133. ## [4.0.0-1] Prerelease (2019-10-08)
  134. (Released in 4.0.0)
  135. ## [4.0.0-0] Prerelease (2019-10-01)
  136. (Released in 4.0.0)
  137. ## [2.20.1] (2019-09-29)
  138. ### Fixed
  139. * Improve tracking of executable subcommands.
  140. ### Changed
  141. * update development dependencies
  142. ## [3.0.2] (2019-09-27)
  143. ### Fixed
  144. * Improve tracking of executable subcommands.
  145. ### Changed
  146. * update development dependencies
  147. ## [3.0.1] (2019-08-30)
  148. ### Added
  149. * .name and .usage to README ([#1010])
  150. * Table of Contents to README ([#1010])
  151. * TypeScript definition for `executableFile` in CommandOptions ([#1028])
  152. ### Changed
  153. * consistently use `const` rather than `var` in README ([#1026])
  154. ### Fixed
  155. * help for sub commands with custom executableFile ([#1018])
  156. ## [3.0.0] / 2019-08-08
  157. * Add option to specify executable file name ([#999])
  158. * e.g. `.command('clone', 'clone description', { executableFile: 'myClone' })`
  159. * Change docs for `.command` to contrast action handler vs git-style executable. ([#938] [#990])
  160. * **Breaking** Change TypeScript to use overloaded function for `.command`. ([#938] [#990])
  161. * Change to use straight quotes around strings in error messages (like 'this' instead of `this') ([#915])
  162. * Add TypeScript "reference types" for node ([#974])
  163. * Add support for hyphen as an option argument in subcommands ([#697])
  164. * Add support for a short option flag and its value to be concatenated for action handler subcommands ([#599])
  165. * e.g. `-p 80` can also be supplied as `-p80`
  166. * Add executable arguments to spawn in win32, for git-style executables ([#611])
  167. * e.g. `node --harmony myCommand.js clone`
  168. * Add parent command as prefix of subcommand in help ([#980])
  169. * Add optional custom description to `.version` ([#963])
  170. * e.g. `program.version('0.0.1', '-v, --vers', 'output the current version')`
  171. * Add `.helpOption(flags, description)` routine to customise help flags and description ([#963])
  172. * e.g. `.helpOption('-e, --HELP', 'read more information')`
  173. * Fix behavior of --no-* options ([#795])
  174. * can now define both `--foo` and `--no-foo`
  175. * **Breaking** custom event listeners: `--no-foo` on cli now emits `option:no-foo` (previously `option:foo`)
  176. * **Breaking** default value: defining `--no-foo` after defining `--foo` leaves the default value unchanged (previously set it to false)
  177. * allow boolean default value, such as from environment ([#987])
  178. * Increment inspector port for spawned subcommands ([#991])
  179. * e.g. `node --inspect myCommand.js clone`
  180. ### Migration Tips
  181. The custom event for a negated option like `--no-foo` is `option:no-foo` (previously `option:foo`).
  182. ```js
  183. program
  184. .option('--no-foo')
  185. .on('option:no-foo', () => {
  186. console.log('removing foo');
  187. });
  188. ```
  189. When using TypeScript, adding a command does not allow an explicit `undefined` for an unwanted executable description (e.g
  190. for a command with an action handler).
  191. ```js
  192. program
  193. .command('action1', undefined, { noHelp: true }) // No longer valid
  194. .command('action2', { noHelp: true }) // Correct
  195. ```
  196. ## 3.0.0-0 Prerelease / 2019-07-28
  197. (Released as 3.0.0)
  198. ## Older versions
  199. * [2.x](./changelogs/CHANGELOG-2.md)
  200. * [1.x](./changelogs/CHANGELOG-1.md)
  201. * [0.x](./changelogs/CHANGELOG-0.md)
  202. [#1]: https://github.com/tj/commander.js/issues/1
  203. [#432]: https://github.com/tj/commander.js/issues/432
  204. [#508]: https://github.com/tj/commander.js/issues/508
  205. [#512]: https://github.com/tj/commander.js/issues/512
  206. [#531]: https://github.com/tj/commander.js/issues/531
  207. [#599]: https://github.com/tj/commander.js/issues/599
  208. [#611]: https://github.com/tj/commander.js/issues/611
  209. [#645]: https://github.com/tj/commander.js/issues/645
  210. [#697]: https://github.com/tj/commander.js/issues/697
  211. [#742]: https://github.com/tj/commander.js/issues/742
  212. [#764]: https://github.com/tj/commander.js/issues/764
  213. [#795]: https://github.com/tj/commander.js/issues/795
  214. [#802]: https://github.com/tj/commander.js/issues/802
  215. [#806]: https://github.com/tj/commander.js/issues/806
  216. [#809]: https://github.com/tj/commander.js/issues/809
  217. [#915]: https://github.com/tj/commander.js/issues/915
  218. [#938]: https://github.com/tj/commander.js/issues/938
  219. [#948]: https://github.com/tj/commander.js/issues/948
  220. [#962]: https://github.com/tj/commander.js/issues/962
  221. [#963]: https://github.com/tj/commander.js/issues/963
  222. [#974]: https://github.com/tj/commander.js/issues/974
  223. [#980]: https://github.com/tj/commander.js/issues/980
  224. [#987]: https://github.com/tj/commander.js/issues/987
  225. [#990]: https://github.com/tj/commander.js/issues/990
  226. [#991]: https://github.com/tj/commander.js/issues/991
  227. [#993]: https://github.com/tj/commander.js/issues/993
  228. [#995]: https://github.com/tj/commander.js/issues/995
  229. [#999]: https://github.com/tj/commander.js/issues/999
  230. [#1010]: https://github.com/tj/commander.js/pull/1010
  231. [#1018]: https://github.com/tj/commander.js/pull/1018
  232. [#1026]: https://github.com/tj/commander.js/pull/1026
  233. [#1027]: https://github.com/tj/commander.js/pull/1027
  234. [#1028]: https://github.com/tj/commander.js/pull/1028
  235. [#1032]: https://github.com/tj/commander.js/issues/1032
  236. [#1035]: https://github.com/tj/commander.js/pull/1035
  237. [#1040]: https://github.com/tj/commander.js/pull/1040
  238. [#1047]: https://github.com/tj/commander.js/pull/1047
  239. [#1048]: https://github.com/tj/commander.js/pull/1048
  240. [#1049]: https://github.com/tj/commander.js/pull/1049
  241. [#1051]: https://github.com/tj/commander.js/pull/1051
  242. [#1052]: https://github.com/tj/commander.js/pull/1052
  243. [#1053]: https://github.com/tj/commander.js/pull/1053
  244. [#1062]: https://github.com/tj/commander.js/pull/1062
  245. [#1071]: https://github.com/tj/commander.js/pull/1071
  246. [#1081]: https://github.com/tj/commander.js/pull/1081
  247. [#1088]: https://github.com/tj/commander.js/issues/1088
  248. [#1091]: https://github.com/tj/commander.js/pull/1091
  249. [#1096]: https://github.com/tj/commander.js/pull/1096
  250. [#1102]: https://github.com/tj/commander.js/pull/1102
  251. [#1118]: https://github.com/tj/commander.js/pull/1118
  252. [#1119]: https://github.com/tj/commander.js/pull/1119
  253. [#1133]: https://github.com/tj/commander.js/pull/1133
  254. [#1138]: https://github.com/tj/commander.js/pull/1138
  255. [#1145]: https://github.com/tj/commander.js/pull/1145
  256. [#1146]: https://github.com/tj/commander.js/pull/1146
  257. [#1149]: https://github.com/tj/commander.js/pull/1149
  258. [#1153]: https://github.com/tj/commander.js/issues/1153
  259. [#1157]: https://github.com/tj/commander.js/pull/1157
  260. [#1159]: https://github.com/tj/commander.js/pull/1159
  261. [#1165]: https://github.com/tj/commander.js/pull/1165
  262. [#1169]: https://github.com/tj/commander.js/pull/1169
  263. [#1172]: https://github.com/tj/commander.js/pull/1172
  264. [#1179]: https://github.com/tj/commander.js/pull/1179
  265. [#1180]: https://github.com/tj/commander.js/pull/1180
  266. [#1184]: https://github.com/tj/commander.js/pull/1184
  267. [#1191]: https://github.com/tj/commander.js/pull/1191
  268. [#1195]: https://github.com/tj/commander.js/pull/1195
  269. [#1208]: https://github.com/tj/commander.js/pull/1208
  270. [#1232]: https://github.com/tj/commander.js/pull/1232
  271. [#1235]: https://github.com/tj/commander.js/pull/1235
  272. [#1236]: https://github.com/tj/commander.js/pull/1236
  273. [#1247]: https://github.com/tj/commander.js/pull/1247
  274. [#1248]: https://github.com/tj/commander.js/pull/1248
  275. [Unreleased]: https://github.com/tj/commander.js/compare/master...develop
  276. [5.1.0]: https://github.com/tj/commander.js/compare/v5.0.0..v5.1.0
  277. [5.0.0]: https://github.com/tj/commander.js/compare/v4.1.1..v5.0.0
  278. [5.0.0-4]: https://github.com/tj/commander.js/compare/v5.0.0-3..v5.0.0-4
  279. [5.0.0-3]: https://github.com/tj/commander.js/compare/v5.0.0-2..v5.0.0-3
  280. [5.0.0-2]: https://github.com/tj/commander.js/compare/v5.0.0-1..v5.0.0-2
  281. [5.0.0-1]: https://github.com/tj/commander.js/compare/v5.0.0-0..v5.0.0-1
  282. [5.0.0-0]: https://github.com/tj/commander.js/compare/v4.1.1..v5.0.0-0
  283. [4.1.1]: https://github.com/tj/commander.js/compare/v4.1.0..v4.1.1
  284. [4.1.0]: https://github.com/tj/commander.js/compare/v4.0.1..v4.1.0
  285. [4.0.1]: https://github.com/tj/commander.js/compare/v4.0.0..v4.0.1
  286. [4.0.0]: https://github.com/tj/commander.js/compare/v3.0.2..v4.0.0
  287. [4.0.0-1]: https://github.com/tj/commander.js/compare/v4.0.0-0..v4.0.0-1
  288. [4.0.0-0]: https://github.com/tj/commander.js/compare/v3.0.2...v4.0.0-0
  289. [3.0.2]: https://github.com/tj/commander.js/compare/v3.0.1...v3.0.2
  290. [3.0.1]: https://github.com/tj/commander.js/compare/v3.0.0...v3.0.1
  291. [3.0.0]: https://github.com/tj/commander.js/compare/v2.20.1...v3.0.0
  292. [2.20.1]: https://github.com/tj/commander.js/compare/v2.20.0...v2.20.1