aspera-cli 4.15.0 → 4.16.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/BUGS.md +29 -3
  4. data/CHANGELOG.md +292 -228
  5. data/CONTRIBUTING.md +69 -18
  6. data/README.md +1102 -952
  7. data/bin/ascli +13 -31
  8. data/bin/asession +3 -1
  9. data/examples/dascli +2 -2
  10. data/lib/aspera/aoc.rb +28 -33
  11. data/lib/aspera/ascmd.rb +3 -6
  12. data/lib/aspera/assert.rb +45 -0
  13. data/lib/aspera/cli/extended_value.rb +5 -5
  14. data/lib/aspera/cli/formatter.rb +26 -13
  15. data/lib/aspera/cli/hints.rb +4 -3
  16. data/lib/aspera/cli/main.rb +16 -3
  17. data/lib/aspera/cli/manager.rb +45 -36
  18. data/lib/aspera/cli/plugin.rb +20 -13
  19. data/lib/aspera/cli/plugins/aoc.rb +103 -73
  20. data/lib/aspera/cli/plugins/ats.rb +4 -3
  21. data/lib/aspera/cli/plugins/config.rb +114 -119
  22. data/lib/aspera/cli/plugins/cos.rb +2 -2
  23. data/lib/aspera/cli/plugins/faspex.rb +23 -19
  24. data/lib/aspera/cli/plugins/faspex5.rb +75 -43
  25. data/lib/aspera/cli/plugins/node.rb +28 -15
  26. data/lib/aspera/cli/plugins/orchestrator.rb +4 -2
  27. data/lib/aspera/cli/plugins/preview.rb +9 -7
  28. data/lib/aspera/cli/plugins/server.rb +6 -3
  29. data/lib/aspera/cli/plugins/shares.rb +30 -26
  30. data/lib/aspera/cli/sync_actions.rb +9 -9
  31. data/lib/aspera/cli/transfer_agent.rb +21 -14
  32. data/lib/aspera/cli/transfer_progress.rb +2 -3
  33. data/lib/aspera/cli/version.rb +1 -1
  34. data/lib/aspera/command_line_builder.rb +13 -11
  35. data/lib/aspera/cos_node.rb +3 -2
  36. data/lib/aspera/coverage.rb +22 -0
  37. data/lib/aspera/data_repository.rb +33 -2
  38. data/lib/aspera/environment.rb +4 -2
  39. data/lib/aspera/fasp/{agent_aspera.rb → agent_alpha.rb} +29 -39
  40. data/lib/aspera/fasp/agent_base.rb +17 -7
  41. data/lib/aspera/fasp/agent_direct.rb +88 -84
  42. data/lib/aspera/fasp/agent_httpgw.rb +4 -3
  43. data/lib/aspera/fasp/agent_node.rb +3 -2
  44. data/lib/aspera/fasp/agent_trsdk.rb +79 -37
  45. data/lib/aspera/fasp/installation.rb +51 -12
  46. data/lib/aspera/fasp/management.rb +11 -6
  47. data/lib/aspera/fasp/parameters.rb +53 -47
  48. data/lib/aspera/fasp/resume_policy.rb +7 -5
  49. data/lib/aspera/fasp/sync.rb +273 -0
  50. data/lib/aspera/fasp/transfer_spec.rb +10 -8
  51. data/lib/aspera/fasp/uri.rb +2 -2
  52. data/lib/aspera/faspex_gw.rb +11 -8
  53. data/lib/aspera/faspex_postproc.rb +6 -5
  54. data/lib/aspera/id_generator.rb +3 -1
  55. data/lib/aspera/json_rpc.rb +10 -8
  56. data/lib/aspera/keychain/encrypted_hash.rb +46 -11
  57. data/lib/aspera/keychain/macos_security.rb +15 -13
  58. data/lib/aspera/log.rb +4 -3
  59. data/lib/aspera/nagios.rb +7 -2
  60. data/lib/aspera/node.rb +17 -16
  61. data/lib/aspera/node_simulator.rb +214 -0
  62. data/lib/aspera/oauth.rb +22 -19
  63. data/lib/aspera/persistency_action_once.rb +13 -14
  64. data/lib/aspera/persistency_folder.rb +3 -2
  65. data/lib/aspera/preview/file_types.rb +53 -267
  66. data/lib/aspera/preview/generator.rb +7 -5
  67. data/lib/aspera/preview/terminal.rb +14 -5
  68. data/lib/aspera/preview/utils.rb +8 -7
  69. data/lib/aspera/proxy_auto_config.rb +6 -3
  70. data/lib/aspera/rest.rb +29 -13
  71. data/lib/aspera/rest_error_analyzer.rb +1 -0
  72. data/lib/aspera/rest_errors_aspera.rb +2 -0
  73. data/lib/aspera/secret_hider.rb +5 -2
  74. data/lib/aspera/ssh.rb +10 -8
  75. data/lib/aspera/temp_file_manager.rb +1 -1
  76. data/lib/aspera/web_server_simple.rb +2 -1
  77. data.tar.gz.sig +0 -0
  78. metadata +96 -45
  79. metadata.gz.sig +0 -0
  80. data/lib/aspera/sync.rb +0 -219
data/CHANGELOG.md CHANGED
@@ -1,285 +1,349 @@
1
1
  # Changes (Release notes)
2
2
 
3
+ * 4.16.0
4
+
5
+ * New Features:
6
+ * **global**: option `output` to redirect result to a file instead of `stdout`
7
+ * **global**: new option `silent_insecure`
8
+ * `config`: keys added to `config ascp info`
9
+ * `config`: added command `pubkey` to extract public key from private key
10
+ * `config`: new command `vault info`
11
+ * `faspex5`: added `shared_folders` management
12
+ * `faspex5`: if package has content protection, ask passphrase interactively, unless `content_protection=null` in `ts`
13
+ * `faspex`: added `INIT` for `once_only`
14
+ * `aoc`: added `INIT` for `once_only`
15
+ * `aoc`: more list commands honor option `query`
16
+ * Issues Fixed:
17
+ * `config`: wizard was failing due to `require` of optional gem.
18
+ * `aoc`: use paging to list entities, instead of just one page(e.g. retrieve all packages)
19
+ * `faspex5`: When receiving ALL packages, only get those with status `completed`.
20
+ * `direct` agent: better support for WSS
21
+ * Breaking Changes:
22
+ * `shares`: option `type` for users and groups is replaced with mandatory positional argument with same value.
23
+ * `aoc`, `faspex`: package `recv` command changed to `receive`, for consistency with faspex5 (`recv` is now an alias command)
24
+
3
25
  * 4.15.0
4
26
 
5
27
  * General: removed many redundant options, more consistency between plugins, see below in "break".
6
28
  * New Features:
7
- * global: added resolution hints for well known issues.
8
- * global: extended value expression `@extend:` finds and replace extended values in a string (e.g. for JSON)
9
- * global: option `fields` now supports `RegExp`
10
- * global: option `home` to set the main folder for configuration and cache
11
- * global: option `ignore_certificate` to specify specific URLs instead of global option `insecure`
12
- * global: option `cert_stores` to specify alternate certificate stores
13
- * global: uniform progress bar for any type of transfer.
14
- * global: add extended value types: `re` and `yaml`
15
- * global: option `pid_file` to write tool's PID during execution, deleted on exit
16
- * config: command `remote_certificate` to retrieve a remote certificate
17
- * config: added logger level `trace1` and `trace2`
18
- * wizard: can detect multiple applications at the same address or url.
19
- * aoc: wizard accepts public links
20
- * aoc: support private links, and possibility to list shared folder with workspace `@json:null`
21
- * orchestrator: error analysis for workflow start
22
- * httpgw: now supports pseudo file for testing: e.g. `faux:///testfile?1k`
23
- * node: added command `transfer sessions` to list all sessions of all transfers
24
- * node: generate bearer token from private key and user information
25
- * node: access node API with bearer token as credentials
26
- * agent: `direct` allows ignoring certificate for wss using http options
27
- * preview: command `show` generates a preview and displays it in terminal
29
+ * **global**: added resolution hints for well known issues.
30
+ * **global**: extended value expression `@extend:` finds and replace extended values in a string (e.g. for JSON)
31
+ * **global**: option `fields` now supports `RegExp`
32
+ * **global**: option `home` to set the main folder for configuration and cache
33
+ * **global**: option `ignore_certificate` to specify specific URLs instead of global option `insecure`
34
+ * **global**: option `cert_stores` to specify alternate certificate stores
35
+ * **global**: uniform progress bar for any type of transfer.
36
+ * **global**: add extended value types: `re` and `yaml`
37
+ * **global**: option `pid_file` to write tool's PID during execution, deleted on exit
38
+ * `config`: command `remote_certificate` to retrieve a remote certificate
39
+ * `config`: added logger level `trace1` and `trace2`
40
+ * `config`: `wizard` can detect multiple applications at the same address or url.
41
+ * `aoc`: wizard accepts public links
42
+ * `aoc`: support private links, and possibility to list shared folder with workspace `@json:null`
43
+ * `orchestrator`: error analysis for workflow start
44
+ * `httpgw`: now supports pseudo file for testing: e.g. `faux:///testfile?1k`
45
+ * `node`: added command `transfer sessions` to list all sessions of all transfers
46
+ * `node`: generate bearer token from private key and user information
47
+ * `node`: access node API with bearer token as credentials
48
+ * **global**: agent `direct` allows ignoring certificate for wss using http options
49
+ * `preview`: command `show` generates a preview and displays it in terminal
28
50
  * Issues Fixed:
29
51
  * Ruby warning: `net/protocol.rb:68: warning: already initialized constant Net::ProtocRetryError` solved by removing dependency on `net-smtp` from gem spec (already in base ruby).
30
52
  * Breaking Changes:
31
- * global: commands `detect` and `wizard` takes now a mandatory argument: address or url instead of option `url`.
32
- * global: renamed option `pkeypath` to `key_path`
33
- * global: renamed option `notif_to` to `notify_to` and `notif_template` to `notify_template`
34
- * global: removed extended value handler `incps`, as it is never used (use `extend` instead).
35
- * global: option `fields`: `+prop` is replaced with: `DEF,prop` and `-field` is replaced with: `DEF,-field`, and whole list is evaluated.
36
- * global: replaced option `progress` with option `progressbar` (bool)
37
- * global: removed option `rest_debug` and `-r`, replaced with `--log-level=trace2`
38
- * global: the default file name for private key when using wizard is change from `aspera_aoc_key` to `my_private_key.pem`
39
- * faspex5: removed option and `auth` type `link`: simply provide the public link as `url`
40
- * faspex: remote source selection now uses percent selector instead of parameter `id` or `name`
41
- * faspex: option `source_name` is now `remote_source`
42
- * aoc: selection by name uses percent selector instead of option or parameter `name`
43
- * aoc: removed option `link`: use `url` instead
44
- * aoc: in command `short_link`, place type before command, e.g. `short_link private create /blah`
45
- * aoc: replaced option `operation` with mandatory positional parameter for command `files transfer`
46
- * aoc: replaced option `from_folder` with mandatory positional parameter for command `files transfer`
47
- * orchestrator: workflow start takes arguments as optional positional extended value instead of option `param`
48
- * node: `find` command now takes an optional `@ruby:` extended value instead of option `query` with prefix: `exec:`
49
- * sync: plugin `sync` is removed: actions are available through `server` and `node` plugins.
50
- * sync: replaced option `sync_session` with optional positional parameter.
51
- * preview: command `scan`, `events` and `trevents` replaced option `query` with optional positional parameter for filter (like `find`).
52
- * trsdk: parameters `host` and `port` in option `transfer_info` are replaced with parameter `url`, like `grpc://host:port`
53
+ * **global**: commands `detect` and `wizard` takes now a mandatory argument: address or url instead of option `url`.
54
+ * **global**: renamed option `pkeypath` to `key_path`
55
+ * **global**: renamed option `notif_to` to `notify_to` and `notif_template` to `notify_template`
56
+ * **global**: removed extended value handler `incps`, as it is never used (use `extend` instead).
57
+ * **global**: option `fields`: `+prop` is replaced with: `DEF,prop` and `-field` is replaced with: `DEF,-field`, and whole list is evaluated.
58
+ * **global**: replaced option `progress` with option `progressbar` (bool)
59
+ * **global**: removed option `rest_debug` and `-r`, replaced with `--log-level=trace2`
60
+ * **global**: the default file name for private key when using wizard is change from `aspera_aoc_key` to `my_private_key.pem`
61
+ * `faspex5`: removed option and `auth` type `link`: simply provide the public link as `url`
62
+ * `faspex`: remote source selection now uses percent selector instead of parameter `id` or `name`
63
+ * `faspex`: option `source_name` is now `remote_source`
64
+ * `aoc`: selection by name uses percent selector instead of option or parameter `name`
65
+ * `aoc`: removed option `link`: use `url` instead
66
+ * `aoc`: in command `short_link`, place type before command, e.g. `short_link private create /blah`
67
+ * `aoc`: replaced option `operation` with mandatory positional parameter for command `files transfer`
68
+ * `aoc`: replaced option `from_folder` with mandatory positional parameter for command `files transfer`
69
+ * `orchestrator`: workflow start takes arguments as optional positional extended value instead of option `param`
70
+ * `node`: `find` command now takes an optional `@ruby:` extended value instead of option `query` with prefix: `exec:`
71
+ * `sync`: plugin `sync` is removed: actions are available through `server` and `node` plugins.
72
+ * `sync`: replaced option `sync_session` with optional positional parameter.
73
+ * `preview`: command `scan`, `events` and `trevents` replaced option `query` with optional positional parameter for filter (like `find`).
74
+ * **global**: agent `trsdk` parameters `host` and `port` in option `transfer_info` are replaced with parameter `url`, like `grpc://host:port`
53
75
 
54
76
  * 4.14.0
55
77
 
56
- * new: server: option `passphrase` for simpler command line (#114)
57
- * new: percent selector for entities identifier
58
- * new: faspex5: shared inbox and workgroup membership management
59
- * new: faspex5: invite external user to shared inbox
60
- * new: faspex5: package list and receive from workgroup and shared inbox
61
- * new: config: Command `ascp info` shows default transfer spec.
62
- * new: httpgw: synchronous and asynchronous upload modes
63
- * new: node: command `bandwidth_average` to get average bandwidth of node, per periods
64
- * fix: option `ts`: deep add and remove of keys. (#117)
65
- * fix: faspex5: user lookup for `packages send` shall be exact match (#120)
66
- * fix: direct: if transfer spec contains "paths" and elements with "destination", but first element has only "source", then destinations were ignored. Now "destination" all or none is enforced.
67
- * change: using `aoc files` or node gen4 operations (`browse`, `delete`) on a link will follow the link only if path ends with /
68
- * change: shares: command `repository` is changed to `files` for consistency with aoc and upcoming faspex5, but is still available as alias
69
- * change: aoc: better handling of shared links
70
- * change: global: option `value` is deprecated. Use positional parameter for creation data and option `query` for list/delete operations.
71
- * change: config: remove deprecated command: `export_to_cli`
72
- * change: config: removed all legacy preset command, newer command `preset` shall be used now.
73
- * change: config: SDK is now installed in $HOME/.aspera/sdk instead of $HOME/.aspera/ascli/sdk
74
- * change(break): aoc/node: Simplification: gen4 operations: show modify permission thumbnail are now directly under node gen 4 command. Command `file` is suppressed. Option `path` is suppressed. The default expected argument is a path. To provide a file id, use selector syntax: %id:_file_id_
75
- * change(break): node: option `token_type` is removed, as starting with HSTS 4.3 basic token is only allowed with access keys, so use gen4 operations: `acc do self`
78
+ * New Features:
79
+ * `server`: option `passphrase` for simpler command line (#114)
80
+ * percent selector for entities identifier
81
+ * `faspex5`: shared inbox and workgroup membership management
82
+ * `faspex5`: invite external user to shared inbox
83
+ * `faspex5`: package list and receive from workgroup and shared inbox
84
+ * `config`: Command `ascp info` shows default transfer spec.
85
+ * **global**: agent `httpgw` synchronous and asynchronous upload modes
86
+ * `node`: command `bandwidth_average` to get average bandwidth of node, per periods
87
+ * Issues Fixed:
88
+ * option `ts`: deep add and remove of keys. (#117)
89
+ * `faspex5`: user lookup for `packages send` shall be exact match (#120)
90
+ * **global**: agent `direct` if transfer spec contains "paths" and elements with "destination", but first element has only "source", then destinations were ignored. Now "destination" all or none is enforced.
91
+ * Breaking Changes:
92
+ * using `aoc files` or node gen4 operations (`browse`, `delete`) on a link will follow the link only if path ends with /
93
+ * `shares`: command `repository` is changed to `files` for consistency with aoc and upcoming faspex5, but is still available as alias
94
+ * `aoc`: better handling of shared links
95
+ * **global**: option `value` is deprecated. Use positional parameter for creation data and option `query` for list/delete operations.
96
+ * `config`: remove deprecated command: `export_to_cli`
97
+ * `config`: removed all legacy preset command, newer command `preset` shall be used now.
98
+ * `config`: SDK is now installed in $HOME/.aspera/sdk instead of $HOME/.aspera/ascli/sdk
99
+ * `aoc`, `node`: Simplification: gen4 operations: show modify permission thumbnail are now directly under node gen 4 command. Command `file` is suppressed. Option `path` is suppressed. The default expected argument is a path. To provide a file id, use selector syntax: %id:_file_id_
100
+ * `node`: option `token_type` is removed, as starting with HSTS 4.3 basic token is only allowed with access keys, so use gen4 operations: `acc do self`
76
101
 
77
102
  * 4.13.0
78
103
 
79
- * new: preview: option `reencode_ffmpeg` allows overriding all re-encoding options
80
- * new: faspex5: package delete (#107)
81
- * new: faspex5: package recv for inboxes and regular users (#108)
82
- * new: faspex5: smtp management
83
- * new: faspex5: use public link for authorization of package download, using option `link`
84
- * new: faspex5: list content of package, and allow partial download of package
85
- * new: faspex5: list packages support multiple pages and items limitations (`max` and `pmax`)
86
- * new: aoc: files operations with workspace-less user (#109)
87
- * new: node: async with gen3 token (#110)
88
- * new: node: display of preview of file in terminal for access keys
89
- * change: option `transfer_info` is now cumulative, setting several times merge values
90
- * change(deprecation): Removed support of Ruby 2.4 and 2.5 : too old, no security update since a long time. If you need older ruby version use older gem version.
91
- * fix: cos: do not use refresh token when not supported
92
- * fix: container: SDK installed in other folder than `ascli` (#106)
104
+ * New Features:
105
+ * `preview`: option `reencode_ffmpeg` allows overriding all re-encoding options
106
+ * `faspex5`: package delete (#107)
107
+ * `faspex5`: package recv for inboxes and regular users (#108)
108
+ * `faspex5`: smtp management
109
+ * `faspex5`: use public link for authorization of package download, using option `link`
110
+ * `faspex5`: list content of package, and allow partial download of package
111
+ * `faspex5`: list packages support multiple pages and items limitations (`max` and `pmax`)
112
+ * `aoc`: files operations with workspace-less user (#109)
113
+ * `node`: async with gen3 token (#110)
114
+ * `node`: display of preview of file in terminal for access keys
115
+ * Issues Fixed:
116
+ * `cos`: do not use refresh token when not supported
117
+ * **container**: SDK installed in other folder than `ascli` (#106)
118
+ * Breaking Changes:
119
+ * option `transfer_info` is now cumulative, setting several times merge values
120
+ * change(deprecation): Removed support of Ruby 2.4 and 2.5 : too old, no security update since a long time. If you need older ruby version use older gem version.
93
121
 
94
122
  * 4.12.0
95
123
 
96
- * new: docker: build image from official gem version, possibility to deploy beta as well
97
- * new: generic: `delete` operation supports option `value` for deletion parameters
98
- * new: aoc: command `aoc packages recv` accepts option `query` to specify a shared inbox
99
- * new: faspex: (v4) user delete accepts option `value` with value `{"destroy":true}` to delete users permanently
100
- * new: faspex: (v4) gateway to faspex 5 for package send
101
- * new: faspex5: possibility to change email templates
102
- * new: faspex5: shared folder list and browse
103
- * new: faspex5: emulate faspex 4 postprocessing, plugin: `faspex5` command: `postprocessing`
104
- * new: faspex5: send package from remote source
105
- * new: shares: option `type` for command `shares admin user`
106
- * new: shares: full support for shares admin operations
107
- * change(break): shares: command `shares admin user saml_import` replaced with `shares admin user import --type=saml`
108
- * change(break): shares: command `shares admin user ldap_import` replaced with `shares admin user add --type=ldap`
109
- * change(break): shares: command `app_authorizations` now has sub commands `show` and `modify`
110
- * change(break): shares: similar changes for `shares admin share user show`
111
- * change(break): option `ascp_opts` is removed, and replaced with `transfer_info` parameter `ascp_args`
124
+ * New Features:
125
+ * **container**: build image from official gem version, possibility to deploy beta as well
126
+ * **global**: `delete` operation supports option `value` for deletion parameters
127
+ * `aoc`: command `aoc packages recv` accepts option `query` to specify a shared inbox
128
+ * `faspex`: (v4) user delete accepts option `value` with value `{"destroy":true}` to delete users permanently
129
+ * `faspex`: (v4) gateway to faspex 5 for package send
130
+ * `faspex5`: possibility to change email templates
131
+ * `faspex5`: shared folder list and browse
132
+ * `faspex5`: emulate faspex 4 postprocessing, plugin: `faspex5` command: `postprocessing`
133
+ * `faspex5`: send package from remote source
134
+ * `shares`: option `type` for command `shares admin user`
135
+ * `shares`: full support for shares admin operations
136
+ * Breaking Changes:
137
+ * `shares`: command `shares admin user saml_import` replaced with `shares admin user import --type=saml`
138
+ * `shares`: command `shares admin user ldap_import` replaced with `shares admin user add --type=ldap`
139
+ * `shares`: command `app_authorizations` now has sub commands `show` and `modify`
140
+ * `shares`: similar changes for `shares admin share user show`
141
+ * option `ascp_opts` is removed, and replaced with `transfer_info` parameter `ascp_args`
112
142
 
113
143
  * 4.11.0
114
144
 
115
- * new: vault: secret finder, migration from config file
116
- * new: allow removal of transfer spec parameter by setting value to `null`
117
- * new: option `ascp_opts` allows to provide native `ascp` options on command line
118
- * new: command `sync` added to `node` (gen4) and `server` plugins, also available in `aoc`
119
- * fix: security: no shell interpolation
120
- * fix: when WSS and node agent: no localhost (certificate)
121
- * fix: #99 `aoc file download` for single shared folder
122
- * fix: due to change of API in faspex 5 for send package (paths is mandatory for any type of transfer now)
123
- * fix: Oauth web authentication was broken, fixed now
124
- * change(break): container image has entry point
125
- * change(break): `aoc admin res node` commands `v3` and `v4` replaced with `do` and command `v3` moved inside `do`
126
- * change(break): renamed options for `sync`
127
- * change: node gen4 operations are moved from aoc plugin to node plugin but made available where gen4 is used
128
- * change: if wss is enabled on server, use wss
129
- * lots of cleanup and refactoring
145
+ * New Features:
146
+ * **global**: `vault`: secret finder, migration from config file
147
+ * **global**: allow removal of transfer spec parameter by setting value to `null`
148
+ * **global**: option `ascp_opts` allows to provide native `ascp` options on command line
149
+ * `node`, `server`: command `sync` added to `node` (gen4) and `server` plugins, also available in `aoc`
150
+ * Issues Fixed:
151
+ * **global**: security: no shell interpolation
152
+ * **global**: agent `node`: when WSS is used: no localhost (certificate)
153
+ * `aoc`: #99 `file download` for single shared folder
154
+ * `faspex5`: change of API in faspex 5 for send package (paths is mandatory for any type of transfer now)
155
+ * **global**: Oauth web authentication was broken, fixed now
156
+ * Breaking Changes:
157
+ * **container**: image has entry point
158
+ * `aoc`: `admin res node` commands `v3` and `v4` replaced with `do` and command `v3` moved inside `do`
159
+ * renamed options for `sync`
160
+ * node gen4 operations are moved from aoc plugin to node plugin but made available where gen4 is used
161
+ * if wss is enabled on server, use wss
162
+ * lots of cleanup and refactoring
130
163
 
131
164
  * 4.10.0
132
165
 
133
- * new: httpgw transfer agent: support api v2, support transfer through http proxy, including proxy password
134
- * new: faspex5: get bearer token
135
- * updates: for docker container version
136
- * break: option `secrets` is renamed to `vault`
166
+ * New Features:
167
+ * httpgw transfer agent: support api v2, support transfer through http proxy, including proxy password
168
+ * `faspex5`: get bearer token
169
+ * Issues Fixed:
170
+ * **container**: container version
171
+ * Breaking Changes:
172
+ * `config`: option `secrets` is renamed to `vault`
137
173
 
138
174
  * 4.9.0
139
175
 
140
- * new: shares: import of SAML users and LDAP users
141
- * new: M1 apple silicon support SDK install (uses x86 ascp)
142
- * new: support bulk operation more globally (create/delete), not all ops , though
143
- * new: added missing transfer spec parameters, e.g. `src_base`, `password`
144
- * new: improved documentation on faspex and aoc package send
145
- * fix: `node do` command fixed
146
- * fix: improved secret hiding from logs
147
- * change(break): removed rarely commands `nodeadmin`, `configuration`, `userdata`, `ctl` from plugin `server`
148
- as well as option `cmd_prefix`
149
- * change: `ascli` runs as user `cliuser` instead of `root` in container
150
- * change: default access right for config folder is now user only, including private keys
176
+ * New Features:
177
+ * `shares`: import of SAML users and LDAP users
178
+ * M1 apple silicon support SDK install (uses x86 ascp)
179
+ * support bulk operation more globally (create/delete), not all ops , though
180
+ * added missing transfer spec parameters, e.g. `src_base`, `password`
181
+ * improved documentation on faspex and aoc package send
182
+ * Issues Fixed:
183
+ * `node do` command fixed
184
+ * improved secret hiding from logs
185
+ * Breaking Changes:
186
+ * removed rarely commands `nodeadmin`, `configuration`, `userdata`, `ctl` from plugin `server`
187
+ as well as option `cmd_prefix`
188
+ * `ascli` runs as user `cliuser` instead of `root` in container
189
+ * default access right for config folder is now user only, including private keys
151
190
 
152
191
  * 4.8.0
153
192
 
154
- * new: #76 add resource `group_membership` in `aoc`
155
- * new: add resource `metadata_profile` in `faspex5`
156
- * new: add command `user profile` in `faspex5`
157
- * new: add config wizard for `faspex5`
158
- * new: #75 gem is signed
159
- * change(break): removed dependency on gem `grpc` which is used only for the `trsdk` transfer agent. Users can install the gem manually if needed.
160
- * change(break): hash vault keys are string instead of symbol
161
- * change: cleanup with rubocop, all strings are immutable now by default, list constants are frozen
162
- * change: removed Hash.dig implementation because it is by default in Ruby >= 2.3
163
- * change: default is now to hide secrets on command output. Set option `show_secrets` to reveal secrets.
164
- * change: option `insecure` displays a warning
193
+ * New Features:
194
+ * #76 add resource `group_membership` in `aoc`
195
+ * add resource `metadata_profile` in `faspex5`
196
+ * add command `user profile` in `faspex5`
197
+ * add config wizard for `faspex5`
198
+ * #75 gem is signed
199
+ * Breaking Changes:
200
+ * removed dependency on gem `grpc` which is used only for the `trsdk` transfer agent. Users can install the gem manually if needed.
201
+ * hash vault keys are string instead of symbol
202
+ * cleanup with rubocop, all strings are immutable now by default, list constants are frozen
203
+ * removed Hash.dig implementation because it is by default in Ruby >= 2.3
204
+ * default is now to hide secrets on command output. Set option `show_secrets` to reveal secrets.
205
+ * option `insecure` displays a warning
165
206
 
166
207
  * 4.7.0
167
208
 
168
- * new: option to specify font used to generate image of text file in `preview`
169
- * new: #66 improvement for content protection (support standard transfer spec options for direct agent)
170
- * new: option `fpac` is now applicable to all ruby based HTTP connections, i.e. API calls
171
- * new: option `show_secrets` to reveal secrets in command output
172
- * new: added and updated commands for Faspex 5
173
- * new: option `cache_tokens`
174
- * new: Faspex4 dropbox packages can now be received by id
175
- * change(break): command `conf gem path` replaces `conf gem_path`
176
- * change(break): option `fpac` expects a value instead of URL
177
- * change(break): option `cipher` in transfer spec must have hyphen
178
- * change(break): renamed option `log_passwords` to `log_secrets`
179
- * change(break): removed plugin `shares2` as products is now EOL
180
- * fix: After AoC version update, wizard did not detect AoC properly
209
+ * New Features:
210
+ * option to specify font used to generate image of text file in `preview`
211
+ * #66 improvement for content protection (support standard transfer spec options for direct agent)
212
+ * option `fpac` is now applicable to all ruby based HTTP connections, i.e. API calls
213
+ * option `show_secrets` to reveal secrets in command output
214
+ * added and updated commands for Faspex 5
215
+ * option `cache_tokens`
216
+ * Faspex4 dropbox packages can now be received by id
217
+ * Issues Fixed:
218
+ * After AoC version update, wizard did not detect AoC properly
219
+ * Breaking Changes:
220
+ * command `conf gem path` replaces `conf gem_path`
221
+ * option `fpac` expects a value instead of URL
222
+ * option `cipher` in transfer spec must have hyphen
223
+ * renamed option `log_passwords` to `log_secrets`
224
+ * removed plugin `shares2` as products is now EOL
181
225
 
182
226
  * 4.6.0
183
227
 
184
- * new: command `conf plugin create`
185
- * new: global option `plugin_folder`
186
- * new: global option `transpose_single`
187
- * new: simplified metadata passing for shared inbox package creation in AoC
188
- * change(break): command `aoc packages shared_inboxes list` replaces `aoc user shared_inboxes`
189
- * change(break): command `aoc user profile` replaces `aoc user info`
190
- * change(break): command `aoc user workspaces list` replaces `aoc user workspaces`
191
- * change(break): command `aoc user workspaces current` replaces `aoc workspace`
192
- * change(break): command `conf plugin list` replaces `conf plugins`
193
- * change(break): command `conf connect` simplified
194
- * fix: #60 ascli executable was not installed by default in 4.5.0
195
- * fix: add password hiding case in logs
228
+ * New Features:
229
+ * command `conf plugin create`
230
+ * global option `plugin_folder`
231
+ * global option `transpose_single`
232
+ * simplified metadata passing for shared inbox package creation in AoC
233
+ * Issues Fixed:
234
+ * #60 ascli executable was not installed by default in 4.5.0
235
+ * add password hiding case in logs
236
+ * Breaking Changes:
237
+ * command `aoc packages shared_inboxes list` replaces `aoc user shared_inboxes`
238
+ * command `aoc user profile` replaces `aoc user info`
239
+ * command `aoc user workspaces list` replaces `aoc user workspaces`
240
+ * command `aoc user workspaces current` replaces `aoc workspace`
241
+ * command `conf plugin list` replaces `conf plugins`
242
+ * command `conf connect` simplified
196
243
 
197
244
  * 4.5.0
198
245
 
199
- * new: support transfer agent: [Transfer SDK](README.md#agt_trsdk)
200
- * new: support [http socket options](README.md#http_options)
201
- * new: logs hide passwords and secrets, option `log_passwords` to enable logging secrets
202
- * new: `config vault` supports encrypted passwords, also macos keychain
203
- * new: `config preset` command for consistency with id
204
- * new: identifier can be provided using either option `id` or directly after the command, e.g. `delete 123` is the same as `delete --id=123`
205
- * change: when using wss, use [ruby's CA certs](README.md#certificates)
206
- * change: unexpected parameter makes exit code not zero
207
- * change(break): options `id` and `name` cannot be specified at the same time anymore, use [positional identifier or name selection](README.md#res_select)
208
- * change(break): `aoc admin res node` does not take workspace main node as default node if no `id` specified.
209
- * change(break): : `orchestrator workflow status` requires id, and supports special id `ALL`
210
- * fix: various smaller fixes and renaming of some internal classes (transfer agents and few other)
246
+ * New Features:
247
+ * support transfer agent: [Transfer SDK](README.md#agt_trsdk)
248
+ * support [http socket options](README.md#http_options)
249
+ * logs hide passwords and secrets, option `log_passwords` to enable logging secrets
250
+ * `config vault` supports encrypted passwords, also macos keychain
251
+ * `config preset` command for consistency with id
252
+ * identifier can be provided using either option `id` or directly after the command, e.g. `delete 123` is the same as `delete --id=123`
253
+ * Issues Fixed:
254
+ * various smaller fixes and renaming of some internal classes (transfer agents and few other)
255
+ * Breaking Changes:
256
+ * when using wss, use [ruby's CA certs](README.md#certificates)
257
+ * unexpected parameter makes exit code not zero
258
+ * options `id` and `name` cannot be specified at the same time anymore, use [positional identifier or name selection](README.md#res_select)
259
+ * `aoc admin res node` does not take workspace main node as default node if no `id` specified.
260
+ * : `orchestrator workflow status` requires id, and supports special id `ALL`
211
261
 
212
262
  * 4.4.0
213
263
 
214
- * new: `aoc packages list` add possibility to add filter with option `query`
215
- * new: `aoc admin res xxx list` now get all items by default #50
216
- * new: `preset` option can specify name or hash value
217
- * new: `node` plugin accepts bearer token and access key as credential
218
- * new: `node` option `token_type` allows using basic token in addition to aspera type.
219
- * change: `server`: option `username` not mandatory anymore: xfer user is by default. If transfer spec token is provided, password or keys are optional, and bypass keys are used by default.
220
- * change(break): resource `apps_new` of `aoc` replaced with `application` (more clear)
264
+ * New Features:
265
+ * `aoc packages list` add possibility to add filter with option `query`
266
+ * `aoc admin res xxx list` now get all items by default #50
267
+ * `preset` option can specify name or hash value
268
+ * `node` plugin accepts bearer token and access key as credential
269
+ * `node` option `token_type` allows using basic token in addition to aspera type.
270
+ * Breaking Changes:
271
+ * `server`: option `username` not mandatory anymore: xfer user is by default. If transfer spec token is provided, password or keys are optional, and bypass keys are used by default.
272
+ * resource `apps_new` of `aoc` replaced with `application` (more clear)
221
273
 
222
274
  * 4.3.0
223
275
 
224
- * new: parameter `multi_incr_udp` for option `transfer_info`: control if UDP port is incremented when multi-session is used on [`direct`](README.md#agt_direct) transfer agent.
225
- * new: command `aoc files node_info` to get node information for a given folder in the Files application of AoC. Allows cross-org or cross-workspace transfers.
276
+ * New Features:
277
+ * parameter `multi_incr_udp` for option `transfer_info`: control if UDP port is incremented when multi-session is used on [`direct`](README.md#agt_direct) transfer agent.
278
+ * command `aoc files node_info` to get node information for a given folder in the Files application of AoC. Allows cross-org or cross-workspace transfers.
226
279
 
227
280
  * 4.2.2
228
281
 
229
- * new: `faspex package list` retrieves the whole list, not just first page
230
- * new: support web based auth to aoc and faspex 5 using HTTPS, new dependency on gem `webrick`
231
- * new: the error "Remote host is not who we expected" displays a special remediation message
232
- * new: `conf ascp spec` displays supported transfer spec
233
- * new: options `notif_to` and `notif_template` to send email notifications on transfer (and other events)
234
- * fix: space character in `faspe:` url are percent encoded if needed
235
- * fix: `preview scan`: if file_id is unknown, ignore and continue scan
236
- * change: for commands that potentially execute several transfers (`package recv --id=ALL`), if one transfer fails then ascli exits with code 1 (instead of zero=success)
237
- * change(break): option `notify` or `aoc` replaced with `notif_to` and `notif_template`
282
+ * New Features:
283
+ * `faspex package list` retrieves the whole list, not just first page
284
+ * support web based auth to aoc and faspex 5 using HTTPS, new dependency on gem `webrick`
285
+ * the error "Remote host is not who we expected" displays a special remediation message
286
+ * `conf ascp spec` displays supported transfer spec
287
+ * options `notif_to` and `notif_template` to send email notifications on transfer (and other events)
288
+ * Issues Fixed:
289
+ * space character in `faspe:` url are percent encoded if needed
290
+ * `preview scan`: if file_id is unknown, ignore and continue scan
291
+ * Breaking Changes:
292
+ * for commands that potentially execute several transfers (`package recv --id=ALL`), if one transfer fails then ascli exits with code 1 (instead of zero=success)
293
+ * option `notify` or `aoc` replaced with `notif_to` and `notif_template`
238
294
 
239
295
  * 4.2.1
240
296
 
241
- * new: command `faspex package recv` supports link of type: `faspe:`
242
- * new: command `faspex package recv` supports option `recipient` to specify dropbox with leading `*`
297
+ * New Features:
298
+ * command `faspex package recv` supports link of type: `faspe:`
299
+ * command `faspex package recv` supports option `recipient` to specify dropbox with leading `*`
243
300
 
244
301
  * 4.2.0
245
302
 
246
- * new: command `aoc remind` to receive organization membership by email
247
- * new: in `preview` option `value` to filter out on file name
248
- * new: `initdemo` to initialize for demo server
249
- * new: [`direct`](README.md#agt_direct) transfer agent options: `spawn_timeout_sec` and `spawn_delay_sec`
250
- * fix: on Windows `conf ascp use` expects ascp.exe
251
- * fix: (break) multi_session_threshold is Integer, not String
252
- * fix: `conf ascp install` renames sdk folder if it already exists (leftover shared lib may make fail)
253
- * fix: removed replace_illegal_chars from default aspera.conf causing "Error creating illegal char conversion table"
254
- * change(break): `aoc apiinfo` is removed, use `aoc servers` to provide the list of cloud systems
255
- * change(break): parameters for resume in `transfer-info` for [`direct`](README.md#agt_direct) are now in sub-key `"resume"`
303
+ * New Features:
304
+ * command `aoc remind` to receive organization membership by email
305
+ * in `preview` option `value` to filter out on file name
306
+ * `initdemo` to initialize for demo server
307
+ * [`direct`](README.md#agt_direct) transfer agent options: `spawn_timeout_sec` and `spawn_delay_sec`
308
+ * Issues Fixed:
309
+ * on Windows `conf ascp use` expects ascp.exe
310
+ * (break) multi_session_threshold is Integer, not String
311
+ * `conf ascp install` renames sdk folder if it already exists (leftover shared lib may make fail)
312
+ * removed replace_illegal_chars from default aspera.conf causing "Error creating illegal char conversion table"
313
+ * Breaking Changes:
314
+ * `aoc apiinfo` is removed, use `aoc servers` to provide the list of cloud systems
315
+ * parameters for resume in `transfer-info` for [`direct`](README.md#agt_direct) are now in sub-key `"resume"`
256
316
 
257
317
  * 4.1.0
258
318
 
259
- * fix: remove keys from transfer spec and command line when not needed
260
- * fix: default to create_dir:true so that sending single file to a folder does not rename file if folder does not exist
261
- * new: update documentation with regard to offline and docker installation
262
- * new: renamed command `nagios_check` to `health`
263
- * new: agent `http_gw` now supports upload
264
- * new: added option `sdk_url` to install SDK from local file for offline install
265
- * new: check new gem version periodically
266
- * new: the --fields= option, support -_field_name_ to remove a field from default fields
267
- * new: Oauth tokens are discarded automatically after 30 minutes (useful for COS delegated refresh tokens)
268
- * new: `mimemagic` is now optional, needs manual install for `preview`, compatible with version 0.4.x
269
- * new: AoC a password can be provided for a public link
270
- * new: `conf doc` take an optional parameter to go to a section
271
- * new: initial support for Faspex 5 Beta 1
319
+ * New Features:
320
+ * update documentation with regard to offline and docker installation
321
+ * renamed command `nagios_check` to `health`
322
+ * agent `http_gw` now supports upload
323
+ * added option `sdk_url` to install SDK from local file for offline install
324
+ * check new gem version periodically
325
+ * the --fields= option, support -_field_name_ to remove a field from default fields
326
+ * Oauth tokens are discarded automatically after 30 minutes (useful for COS delegated refresh tokens)
327
+ * `mimemagic` is now optional, needs manual install for `preview`, compatible with version 0.4.x
328
+ * AoC a password can be provided for a public link
329
+ * `conf doc` take an optional parameter to go to a section
330
+ * initial support for Faspex 5 Beta 1
331
+ * Issues Fixed:
332
+ * remove keys from transfer spec and command line when not needed
333
+ * default to create_dir:true so that sending single file to a folder does not rename file if folder does not exist
272
334
 
273
335
  * 4.0.0
274
336
 
275
- * now available as open source (github) with general cleanup
276
- * changed default tool name from `mlia` to `ascli`
277
- * changed `aspera` command to `aoc`
278
- * changed gem name from `asperalm` to `aspera-cli`
279
- * changed module name from `Asperalm` to `Aspera`
280
- * removed command `folder` in `preview`, merged to `scan`
281
- * persistency files go to sub folder instead of main folder
282
- * added possibility to install SDK: `config ascp install`
337
+ * New Features:
338
+ * now available as open source (github) with general cleanup
339
+ * added possibility to install SDK: `config ascp install`
340
+ * Breaking Changes:
341
+ * changed default tool name from `mlia` to `ascli`
342
+ * changed `aspera` command to `aoc`
343
+ * changed gem name from `asperalm` to `aspera-cli`
344
+ * changed module name from `Asperalm` to `Aspera`
345
+ * removed command `folder` in `preview`, merged to `scan`
346
+ * persistency files go to sub folder instead of main folder
283
347
 
284
348
  * 0.11.8
285
349
 
@@ -296,12 +360,12 @@
296
360
 
297
361
  * 0.11.6
298
362
 
299
- * orchestrator : added more choice in auth type
300
- * preview: cleanup in generator (removed and renamed parameters)
301
- * preview: better documentation
302
- * preview: animated thumbnails for video (option: `video_png_conv=animated`)
303
- * preview: new event trigger: `trevents` (`events` seems broken)
304
- * preview: unique tmp folder to avoid clash of multiple instances
363
+ * `orchestrator`: added more choice in auth type
364
+ * `preview`: cleanup in generator (removed and renamed parameters)
365
+ * `preview`: better documentation
366
+ * `preview`: animated thumbnails for video (option: `video_png_conv=animated`)
367
+ * `preview`: new event trigger: `trevents` (`events` seems broken)
368
+ * `preview`: unique tmp folder to avoid clash of multiple instances
305
369
  * repo: added template for secrets used for testing
306
370
 
307
371
  * 0.11.5