UNPKG

38.6 kBMarkdownView Raw
1# [4.3.0](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...4.3.0) (2019-08-05)
2
3
4### Bug Fixes
5
6* **State Channels:** Fix onChainTx event params ([#566](https://github.com/aeternity/aepp-sdk-js/issues/566)) ([11c85eb](https://github.com/aeternity/aepp-sdk-js/commit/11c85eb))
7* **State Channels:** Fix websocket url ([#558](https://github.com/aeternity/aepp-sdk-js/issues/558)) ([33c1fd8](https://github.com/aeternity/aepp-sdk-js/commit/33c1fd8))
8* **Swagger:** Pass query params in case of get request ([#570](https://github.com/aeternity/aepp-sdk-js/pull/570))
9
10### Code Refactoring
11
12* **State Channel:** Do not include white space for outgoing websocket messages ([#559](https://github.com/aeternity/aepp-sdk-js/pull/559))
13
14
15### Features
16
17* **ACI:** Implement sophia `variant` type ([#567](https://github.com/aeternity/aepp-sdk-js/issues/567)) ([8505dcf](https://github.com/aeternity/aepp-sdk-js/commit/8505dcf))
18* **Contract:** add ability to use call-static/dry-run without keyPair ([#577](https://github.com/aeternity/aepp-sdk-js/issues/577)) ([c38edd9](https://github.com/aeternity/aepp-sdk-js/commit/c38edd9))
19* **NodePool:** Implement NodePool stamp ([#574](https://github.com/aeternity/aepp-sdk-js/issues/574)) ([674166c](https://github.com/aeternity/aepp-sdk-js/commit/674166c))
20* **State Channel:** make state channel compatible with aeternity@4.0.0 ([#568](https://github.com/aeternity/aepp-sdk-js/issues/568)) ([0d0e09b](https://github.com/aeternity/aepp-sdk-js/commit/0d0e09b))
21* **TxBuilder:** Add helper for producing tx hash ([#579](https://github.com/aeternity/aepp-sdk-js/issues/579)) ([e1b405e](https://github.com/aeternity/aepp-sdk-js/commit/e1b405e))
22* **AE** Make all AE stamps composed with Accounts ([#581](https://github.com/aeternity/aepp-sdk-js/pull/581))
23
24
25### Docs
26
27* **ACI** Add some additional clarification to `getContractInstance`
28
29
30
31# [4.2.0](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...4.2.0) (2019-07-15)
32
33
34### Bug Fixes
35
36* **package:** update libsodium-wrappers-sumo to version 0.7.5 ([#541](https://github.com/aeternity/aepp-sdk-js/issues/541)) ([956ed75](https://github.com/aeternity/aepp-sdk-js/commit/956ed75))
37* **rpc-server:** Fix type 'object' check ([#526](https://github.com/aeternity/aepp-sdk-js/issues/526)) ([48c42e4](https://github.com/aeternity/aepp-sdk-js/commit/48c42e4))
38
39
40### Code Refactoring
41
42* **swagger:** Speedup initialisation
43* **AENS:** Remove unused param from claim method
44* **AENS:** Fix exception if not waiting for mining(claim)
45* **Test:** Add test for contract namespaces
46
47### Features
48
49* **Node:** Add 4.0.0 node compatibility
50* **Compiler:** Add compatibility with compiler 3.2.0
51* **Channel:** Implement GA awareness of State Channels
52
53
54
55# [4.1.0](https://github.com/aeternity/aepp-sdk-js/compare/4.0.1...4.1.0) (2019-06-22)
56
57
58### Bug Fixes
59
60* **Node:** Do not throw error if `internalUrl` not provided. Instead use `url` ([#503](https://github.com/aeternity/aepp-sdk-js/issues/503)) ([053faae](https://github.com/aeternity/aepp-sdk-js/commit/053faae))
61* **TXBuilder:** Fix payload serialization if you try to unpack and pack tx. ([#498](https://github.com/aeternity/aepp-sdk-js/issues/498)) ([73552e5](https://github.com/aeternity/aepp-sdk-js/commit/73552e5))
62* **TxValidator:** Fix validation of state channel open transaction ([#496](https://github.com/aeternity/aepp-sdk-js/issues/496)) ([325cc90](https://github.com/aeternity/aepp-sdk-js/commit/325cc90))
63
64
65### Features
66
67* **ACI:** Refactor ACI module. Split to separated files. ([#505](https://github.com/aeternity/aepp-sdk-js/issues/505)) ([fb7bc00](https://github.com/aeternity/aepp-sdk-js/commit/fb7bc00))
68* **Selector:** If default account `address` not provided use the first
69* **ACI:** Handle ACI without init function
70* **ACI:** Automatically decide to send transaction on-chai or call-static.
71Add `options` object like last arguments of generate fn under `instance.methods`
72 ```
73 const instance = await client.getContractInstance(source)
74 // Deploy contract
75 await.contract.init(100, 'test', options)
76 //or
77 await.contract.deploy([100, 'test], options)
78 // Call function
79 const result = await instance.call('sum', [2, 5], options)
80 //
81 // Automatically decide to send tx on-chain or call-static(dry-run) base on if function stateful or not
82 const result = await instance.methods.sum(2, 5, options)
83 // Manually make on-chain
84 const result = await instance.methods.sum.send(2, 5, options)
85 // Manually make call-static
86 const result = await instance.methods.sum.get(2, 5, options)
87 //
88 ```
89
90### Docs
91
92* **Usage:**: Add instructions about how to include directly the `SDK` in a `html page`
93
94
95
96## [4.0.1](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...4.0.1) (2019-06-13)
97
98
99### Bug Fixes
100
101* **RPC:** Add contract contractDecodeCallResultAPI to RPC ([#482](https://github.com/aeternity/aepp-sdk-js/issues/482)) ([7eb6bd8](https://github.com/aeternity/aepp-sdk-js/commit/7eb6bd8))
102* **README:** Fix flavor link ([#480](https://github.com/aeternity/aepp-sdk-js/pull/480))
103
104### Code Refactoring
105
106* **Compiler:** Fix compiler compatibility mechanism ([#479](https://github.com/aeternity/aepp-sdk-js/issues/479)) ([78cc990](https://github.com/aeternity/aepp-sdk-js/commit/78cc990))
107* **Utils:** Move json-bigint implementation to `utils` ([#486](https://github.com/aeternity/aepp-sdk-js/issues/486)) ([1538867](https://github.com/aeternity/aepp-sdk-js/commit/1538867))
108
109### Build
110
111* **webpack:** Add another bundle(`dist/aepp-sdk.browser-script.js`) for using in `<script>` tag ([#485](https://github.com/aeternity/aepp-sdk-js/pull/485))
112
113
114
115# [4.0.0](https://github.com/aeternity/aepp-sdk-js/compare/3.4.1...4.0.0) (2019-06-12)
116
117
118### Bug Fixes
119
120* **Ae:** Fix exception when it used without Contract stamp
121
122### Code Refactoring
123
124* **SCM:** Update compatibility range for node: 3.0.1 - 4 and compiler 3.1.0 - 4 ([#474](https://github.com/aeternity/aepp-sdk-js/issues/474)) ([a1494fd](https://github.com/aeternity/aepp-sdk-js/commit/a1494fd))
125* **Test:** Simplify client creation
126
127### Features
128
129* **Docs** chore(Docs): new docs ([#370](https://github.com/aeternity/aepp-sdk-js/pull/370))
130* **Compiler:** Add `getCompilerVersion` to compiler stamp
131* **ACI:** Make compatible with compiler 3.1.0 ([#457](https://github.com/aeternity/aepp-sdk-js/issues/457)) ([d92f2c7](https://github.com/aeternity/aepp-sdk-js/commit/d92f2c7)), closes [#458](https://github.com/aeternity/aepp-sdk-js/issues/458)
132* **ACI:** Generate JS function proto for each of contract function ([#439](https://github.com/aeternity/aepp-sdk-js/issues/439)) ([2f47b4d](https://github.com/aeternity/aepp-sdk-js/commit/2f47b4d))
133* **Compiler/ACI:** Make ACI compatible with compiler 3.0.0 ([#441](https://github.com/aeternity/aepp-sdk-js/issues/441)) ([2a8eb1a](https://github.com/aeternity/aepp-sdk-js/commit/2a8eb1a))
134* **Node:** Avoid usage of "universal-url" package ([#434](https://github.com/aeternity/aepp-sdk-js/issues/434)) ([a8268d5](https://github.com/aeternity/aepp-sdk-js/commit/a8268d5))
135* **TX:** encode payload as base64 ([#460](https://github.com/aeternity/aepp-sdk-js/issues/460)) ([ad490af](https://github.com/aeternity/aepp-sdk-js/commit/ad490af))
136* **TX_BUILDER:** Fix bug related to contract fee calculation. ([#472](https://github.com/aeternity/aepp-sdk-js/issues/472)) ([7214cfb](https://github.com/aeternity/aepp-sdk-js/commit/7214cfb))
137
138
139### BREAKING CHANGES
140
141* **DOCS** Restructure and rework sdk documentation
142* **SCM:** This change will make the release not compatible with older version of the node and
143compiler
144* **ACI:** Change Contract low lvl API:
145 - change `contractDecodeData` interface from:
146 - `(type:String, data: String) => Any` to `(source: String, fn: String, callValue: String, callResult:String) => Any`.
147 (`callResult` is `callType` from call result, can be `ok`, `revert`, ...)
148
149
150
151## [3.4.1](https://github.com/aeternity/aepp-sdk-js/compare/3.4.0...3.4.1) (2019-06-05)
152
153
154### Bug Fixes
155
156* **Deps:** Update axios lib to 0.19.0 due to security issue ([f951765](https://github.com/aeternity/aepp-sdk-js/commit/f951765))
157
158
159
160# [3.4.0](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...3.4.0) (2019-05-22)
161
162
163### Bug Fixes
164
165* **State Channels:** Remove automatic pinging to fix browser compatibility ([#432](https://github.com/aeternity/aepp-sdk-js/issues/432)) ([0700f3a](https://github.com/aeternity/aepp-sdk-js/commit/0700f3a))
166
167
168### Features
169
170* **Transaction Builder:** Improve min fee calculation(Reduce the fee) ([#424](https://github.com/aeternity/aepp-sdk-js/pull/424))
171* **AXIOS:** Add ability to intercept error from axios ([#431](https://github.com/aeternity/aepp-sdk-js/pull/431))
172 > Added additional param to sdk initialization `axiosConfig`
173
174 > Example: `Universal({ axiosConfig: { config: { // axios config object }, errorHandler: (err) => throw err }})`
175* **Transaction Builder:** Implement vm/abi validation for contract/oracle tx based on consensus protocol version. Add custom verification based on transaction type ([#425](https://github.com/aeternity/aepp-sdk-js/pull/425)) ([#426](https://github.com/aeternity/aepp-sdk-js/pull/426))
176
177
178
179# [3.3.0](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...3.3.0) (2019-05-17)
180
181
182### Bug Fixes
183
184* **AEP exampe:** Fix contract in AEPP example ([e2fec19](https://github.com/aeternity/aepp-sdk-js/commit/e2fec19))
185fix(AEP exampe): Fix contract in AEPP example
186
187### Features
188
189* **Consensus:** Add function to get consensus version. ([#413](https://github.com/aeternity/aepp-sdk-js/issues/413)) ([46027cd](https://github.com/aeternity/aepp-sdk-js/commit/46027cd))
190* **State Channels:** Make state channels compatible with aeternity 3.0.0 ([#415](https://github.com/aeternity/aepp-sdk-js/issues/415)) ([668e7f1](https://github.com/aeternity/aepp-sdk-js/commit/668e7f1))
191* **Transaction Builder:** Add serializations for transactions introd… ([#416](https://github.com/aeternity/aepp-sdk-js/issues/416)) ([fd7b8ce](https://github.com/aeternity/aepp-sdk-js/commit/fd7b8ce))
192
193
194### BREAKING CHANGES
195
196* **NODE** Change compatibility from `2.3.0` to `3.0.0`
197
198
199# [3.2.1](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...3.2.1) (2019-05-16)
200
201
202### Bug Fixes
203
204* **Joi:** Add `JOI` browser comparability
205
206
207
208# [3.2.0](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...3.2.0) (2019-05-16)
209
210
211### Bug Fixes
212
213* **ACI:** Add ability to pass zero address as number. ([#396](https://github.com/aeternity/aepp-sdk-js/issues/396)) ([b5b5c61](https://github.com/aeternity/aepp-sdk-js/commit/b5b5c61))
214* **ACI:** Fix address type transformation when decoding data ([#335](https://github.com/aeternity/aepp-sdk-js/issues/335)) ([e37cdfc](https://github.com/aeternity/aepp-sdk-js/commit/e37cdfc))
215* **Contract:** Add error handling(decoding) in low lvl contract API ([#386](https://github.com/aeternity/aepp-sdk-js/issues/386)) ([e1fdce0](https://github.com/aeternity/aepp-sdk-js/commit/e1fdce0))
216* **Dependencies:** Use URL class instead of "url" package
217* **Dependencies:** Use custom version of json-bigint
218* **Dependencies:** Avoid usage of semver package and cleanup deps
219* **RPC:** rpc client: Handle case if aepp opened without wallet
220* **Channels:** Fix state channel test's
221
222### Features
223
224* **KEYSTORE:** Add browser compatibility
225* **TX:** Handle VM/ABI fields serialization and validation basaed on tx type and node version
226* **ACI:** Add `contract`, `address`, `record` types argument/result transformation ([#349](https://github.com/aeternity/aepp-sdk-js/issues/349)) ([0599d7d](https://github.com/aeternity/aepp-sdk-js/commit/0599d7d))
227* **WEBPACK:** webpack configs: Mark all dependencies as external
228* **WEBPACK:** Setup webpack-bundle-analyzer plugin
229* **ACI:** Add `Option` sophia type to ACI ([#390](https://github.com/aeternity/aepp-sdk-js/issues/390)) ([83f5279](https://github.com/aeternity/aepp-sdk-js/commit/83f5279))
230* **ACI:** Implement arguments validation for generic sophia types(list, map, tuple, record) ([#384](https://github.com/aeternity/aepp-sdk-js/issues/384)) ([956e59e](https://github.com/aeternity/aepp-sdk-js/commit/956e59e))
231* **ACI:** Update due to compiler API changes ([#331](https://github.com/aeternity/aepp-sdk-js/issues/331)) ([e047f3b](https://github.com/aeternity/aepp-sdk-js/commit/e047f3b))
232* **AE:** Allow to spend % of balance. ([#371](https://github.com/aeternity/aepp-sdk-js/issues/371)) ([f97a2ae](https://github.com/aeternity/aepp-sdk-js/commit/f97a2ae)), closes [#336](https://github.com/aeternity/aepp-sdk-js/issues/336)
233* **Aepp:** Add Compiler to Aepp rpc methods. Update example app ([#312](https://github.com/aeternity/aepp-sdk-js/issues/312)) ([9c72521](https://github.com/aeternity/aepp-sdk-js/commit/9c72521))
234* **Aepp:** Refactor Aepp example app. Allow to spend with payload and add reverse iframe approach.
235* **Compiler:** Add decode CallData by source/bytecode ([#354](https://github.com/aeternity/aepp-sdk-js/issues/354)) ([761f36b](https://github.com/aeternity/aepp-sdk-js/commit/761f36b))
236* **Fortuna:** Node 3.0.0 compatibility ([#397](https://github.com/aeternity/aepp-sdk-js/issues/397)) ([17b78d5](https://github.com/aeternity/aepp-sdk-js/commit/17b78d5))
237* **RPC:** Add `getNodeInfo` to AEPP stamp through RPC ([#359](https://github.com/aeternity/aepp-sdk-js/issues/359)) ([2ddeea8](https://github.com/aeternity/aepp-sdk-js/commit/2ddeea8))
238* **State Channels:** Add cleanContractCalls method ([#338](https://github.com/aeternity/aepp-sdk-js/issues/338)) ([778159a](https://github.com/aeternity/aepp-sdk-js/commit/778159a))
239* **State Channels:** Ping every 10 seconds to persist connection ([#324](https://github.com/aeternity/aepp-sdk-js/issues/324)) ([6d0e156](https://github.com/aeternity/aepp-sdk-js/commit/6d0e156)), closes [#276](https://github.com/aeternity/aepp-sdk-js/issues/276) [#299](https://github.com/aeternity/aepp-sdk-js/issues/299) [#300](https://github.com/aeternity/aepp-sdk-js/issues/300) [#303](https://github.com/aeternity/aepp-sdk-js/issues/303) [#302](https://github.com/aeternity/aepp-sdk-js/issues/302) [#279](https://github.com/aeternity/aepp-sdk-js/issues/279) [#275](https://github.com/aeternity/aepp-sdk-js/issues/275) [#276](https://github.com/aeternity/aepp-sdk-js/issues/276) [#299](https://github.com/aeternity/aepp-sdk-js/issues/299) [#300](https://github.com/aeternity/aepp-sdk-js/issues/300)
240* **State Channels:** Remove endpoint param ([#391](https://github.com/aeternity/aepp-sdk-js/issues/391)) ([8d9ea7e](https://github.com/aeternity/aepp-sdk-js/commit/8d9ea7e))
241
242
243### BREAKING CHANGES
244
245* **State Channels:** Endpoint param is removed and no longer defaults to "/channel". This means that
246"/channel" (or other path) must be appendend to url para
247
248
249
250# [3.1.0](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...3.1.0) (2019-04-24)
251
252
253### Bug Fixes
254
255* **ACI:** Fix address type transformation when decoding data ([#335](https://github.com/aeternity/aepp-sdk-js/issues/335)) ([e37cdfc](https://github.com/aeternity/aepp-sdk-js/commit/e37cdfc))
256
257
258### Features
259
260* **ACI:** Add `contract`, `address`, `record` types argument/result transformation ([#349](https://github.com/aeternity/aepp-sdk-js/issues/349)) ([0599d7d](https://github.com/aeternity/aepp-sdk-js/commit/0599d7d))
261* **ACI:** Update due to compiler API changes ([#331](https://github.com/aeternity/aepp-sdk-js/issues/331)) ([e047f3b](https://github.com/aeternity/aepp-sdk-js/commit/e047f3b))
262* **Aepp:** Add Compiler to Aepp rpc methods. Update example app ([#312](https://github.com/aeternity/aepp-sdk-js/issues/312)) ([9c72521](https://github.com/aeternity/aepp-sdk-js/commit/9c72521))
263* **Compiler:** Add decode CallData by source/bytecode ([#354](https://github.com/aeternity/aepp-sdk-js/issues/354)) ([761f36b](https://github.com/aeternity/aepp-sdk-js/commit/761f36b))
264* **RPC:** Add getNodeInfo and getNetworkId to AEPP stamp through RPC ([#359](https://github.com/aeternity/aepp-sdk-js/issues/359)) ([2ddeea8](https://github.com/aeternity/aepp-sdk-js/commit/2ddeea8))
265* **State Channels:** Add cleanContractCalls method ([#338](https://github.com/aeternity/aepp-sdk-js/issues/338)) ([778159a](https://github.com/aeternity/aepp-sdk-js/commit/778159a))
266* **State Channels:** Ping every 10 seconds to persist connection ([#324](https://github.com/aeternity/aepp-sdk-js/issues/324)) ([6d0e156](https://github.com/aeternity/aepp-sdk-js/commit/6d0e156))
267
268
269
270# [3.0.0](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...3.0.0) (2019-04-17)
271
272
273### Bug Fixes
274
275* **ACI:** Fix address type transformation when decoding data ([#335](https://github.com/aeternity/aepp-sdk-js/issues/335)) ([e37cdfc](https://github.com/aeternity/aepp-sdk-js/commit/e37cdfc))
276
277
278### Features
279
280* **TX_BUILDER:** Channel tx serializations
281* **TxValidator:** Add minGasPrice validation to contract transactions
282* **ACI:** Update due to compiler API changes ([#331](https://github.com/aeternity/aepp-sdk-js/issues/331)) ([e047f3b](https://github.com/aeternity/aepp-sdk-js/commit/e047f3b))
283* **Aepp:** Add Compiler to Aepp rpc methods. Update example app ([#312](https://github.com/aeternity/aepp-sdk-js/issues/312)) ([9c72521](https://github.com/aeternity/aepp-sdk-js/commit/9c72521))
284* **State Channels:** Add cleanContractCalls method ([#338](https://github.com/aeternity/aepp-sdk-js/issues/338)) ([778159a](https://github.com/aeternity/aepp-sdk-js/commit/778159a))
285
286
287### BREAKING CHANGES
288
289* **ACI** Remove 2.0.0 compiler compatibility
290
291
292
293# [2.4.1](https://github.com/aeternity/aepp-sdk-js/compare/2.4.0...2.4.1) (2019-04-17)
294
295
296### Features
297
298* **ACI:** Add transform decoded data for 'address' type
299* **AEPP:** Add Compiler to Aepp rpc methods. Update example app
300* **Channel:** Add call contract static support
301* **Channel:** Add get contract state support
302* **Channel:** Get full channel state support
303* **DOCS:** Adjust ACI, Contract and Usage
304
305
306### Bug Fixes
307
308* **HTTP:** Handle no response in http stamp error handler
309* **Crypto:** Fix crypto `formatAddress`
310* **Crypto:** Move ADDRESS_FORMAT to crypto
311
312
313### BREAKING CHANGES
314
315* **Channels:**
316 - `channel.state()` now returns offchain state instead of last co-signed offchain transaction
317 - `channel.update(...).state` has been renamed to `signedTx`
318 - `channel.withdraw(...).state` has been renamed to `signedTx`
319 - `channel.deposit(...).state` has been renamed to `signedTx`
320 - `channel.leave().state` has been renamed to `signedTx`
321 - `channel.createContract(...).state` has been renamed to `signedTx`
322 - `channel.callContract(...).state` has been renamed to `signedTx`
323
324
325# [2.4.0](https://github.com/aeternity/aepp-sdk-js/compare/2.3.2...2.4.0) (2019-04-17)
326
327
328### Features
329
330* **Chore:** Install and configure `commitizen`
331* **Crypto:** Add `formatAddress` function to `Crypto`
332* **Contract:** Add Contract Compiler API stamp to `es/contract` (now using instead contract node API)
333* **Utils:** Add basic `http` client stamp (`es/utils/http`)
334* **Contract:** ACI stamp (New Contract interface base on contract ACI schema)
335 ```
336 const contractIns = await client.getContractInstance(contractSourceCode)
337 console.log(contract)
338 {
339 interface: String, // Contract interface source code
340 aci: String, // Contract interface json schema
341 source: String, // Contract source code
342 compiled: String, // Compiled contract code
343 deployInfo: { address: contractAddress } // Object with deploy transaction,
344 // Function
345 compile: () => this, // Compile contract,
346 deploy: (init = [], options = { skipArgsConvert: false }) => this, // Deploy contract (compile before if needed)
347 call: (fn, params = [], options = { skipArgsConvert: false, skipTransformDecoded: false, callStatic: false } => CallRersult: Object // Call contract function
348 }
349 ```
350* **Account:** Extend `Account.address()` with `accountFormatter` now you can do
351 ```
352 export const ADDRESS_FORMAT = {
353 sophia: 1, // return address like `0xHEX_ADDRESS`
354 api: 2, // return address like `ak_9LJ8ne9tks78hTD2Tp571f7w2MJmzQMRsiZxKCkMA2d2Sbrc4`
355 }
356
357 //
358
359 export { ADDRESS_FORMAT } from 'es/account'
360 await account.address(format: ADDRESS_FORMAT) // default ADDRESS_FORMAT.api
361 ```
362* **Channel:** Improve channel rpc usage
363* **Channel:** Improve channel tests and error handling
364* **Channel:** Improve state channel params handling
365* **Chain:** Add ability to get `account/balance` on specific block `hash/height`
366* **Universal:** Add `{ compilerUrl }` to `Universal, Contract, Wallet` stamp initialization
367
368
369### Bug Fixes
370
371* **Contract:** decode node error coming from contract `call` and `callStatic`
372* **Chain:** Throw native error instead of object in chain `chain.sendTransaction`
373* **Crypto:** fix arguments parsing in `Crypto.sing`
374* **Crypto:** Fix `name hash` function arguments parsing in `Crypto`
375
376
377 ### BREAKING CHANGES
378 * **Contract:** Remove `ContractNodeAPI` stamp
379 * **Contract:** Change Contract stamp API
380 ```
381 1) Use Compiler instead of node API for encode/decode call-data and compile.
382 2) Change Contract interface:
383 - contractCallStatic (address, abi = 'sophia-address', name, { top, args = '()', call, options = {} } = {}) -> (source, address, name, args = [], { top, options = {} } = {}))
384 - contractCall (code, abi, address, name, { args = '()', options = {}, call } = {}) -> (source, address, name, args = [], options = {})
385 - contractDeploy (code, abi, { initState = '()', options = {} } = {}) -> (code, source, initState = [], options = {})
386 - contractEncodeCall (code, abi, name, args, call) -> (source, name, args) // 'source' is -> Contract source code or ACI interface source
387 ```
388
389
390## [2.3.2](https://github.com/aeternity/aepp-sdk-js/compare/2.3.1...2.3.2) (2019-03-04)
391
392
393### Features
394
395* **Contract:** Change default `gasPrice` from `1e6` to `1e9z
396* **AEPP:** Fix `AEPP` example app
397* **Build:** Force `image` pull before `builds`
398
399
400# [2.3.1](https://github.com/aeternity/aepp-sdk-js/compare/2.3.0...2.3.1) (2019-02-22)
401
402
403### Features
404
405* **Oracle:** `Oracle` fee calculation
406* **Tx:** `getAccountNonce` function to `tx` stamp
407* **TX_BUILDER:** Change `FEE_BYTE_SIZE` from 1 to 8 bytes in `fee` calculation
408* **TX_BUILDER:** Improve error handling in `tx` builder
409
410
411# [2.3.0](https://github.com/aeternity/aepp-sdk-js/compare/2.3.0-next...2.3.0) (2019-02-22)
412
413
414### Features
415
416* **Node:** `Minerva` comparability
417* **Utils:** `Mnemonic` wallet implementation `es/utils/hd-wallet`
418* **Oracle:** Change Channel `legacy` API to `JSON RPC`
419* **Oracle:** Change default `gasPrice` to `1e6`
420* **Oracle:** Change `minFee` calculation, multiply min fee by `1e9`
421
422### BREAKING CHANGES
423
424* **Node:** Change supported node version range to `1.4.0 <= version < 3.0.0`
425* This release contain changes from: [2.3.0-next](https://github.com/aeternity/aepp-sdk-js/releases/tag/2.3.0-next), [2.2.1-next](https://github.com/aeternity/aepp-sdk-js/releases/tag/2.2.1-next), [2.1.1-0.1.0-next](https://github.com/aeternity/aepp-sdk-js/releases/tag/2.1.1-0.1.0-next), [2.1.0](https://github.com/aeternity/aepp-sdk-js/releases/tag/2.1.0)
426
427
428
429# [2.3.0-next](https://github.com/aeternity/aepp-sdk-js/compare/2.2.1-next...2.3.0-next) (2019-02-21)
430
431
432### Features
433
434* **Channel:** `channel` `withdraw` and `deposit` methods
435* **TX_BUILDER:** Change default `gasPrice` in `Contract` stamp and `Tx` stamp to `1e9`
436* **TX:** Fix `contract` tx `fee` calculation
437* **Chain:** Refactor error handling in `sendTransaction` function
438* **Contract:** Change default `gasPrice` to `1e9`
439* **TX_BUILDER:** Change `Fee` byte_size to 1
440
441
442
443# [2.2.1-next](https://github.com/aeternity/aepp-sdk-js/compare/2.1.1-0.1.0-next...2.2.1-next) (2019-02-21)
444
445
446### Feature
447
448* **TX_BUILDER:** Add `deserialization` schema for `Channel` transactions(`channelCreate`, `channelCloseMutual`, `channelDeposit`, `channelWithdraw`, `channelSettle`)
449* **Chain:** Add `rawTx` and `verifyTx` to error from poll function(when you wait for transaction will mined)
450* **Chore:** Depend on `bip39` from npm instead of git repo
451* **Channel:** Change Channel `legacy` API to `JSON RPC`
452* **TX_BUILDER:** Change `minFee` calculation, multiply min fee by 10^9
453
454
455# [2.1.1-0.1.0-next](https://github.com/aeternity/aepp-sdk-js/compare/2.1.0...2.1.1-0.1.0-next) (2019-02-21)
456
457
458### Bug Fixes
459* **Chore:** Fix linter errors
460
461
462
463# [2.1.0](https://github.com/aeternity/aepp-sdk-js/compare/2.0.0...2.1.0) (2019-02-21)
464
465
466### Features
467
468* **Node:** `Minerva` comparability
469* **Utils:** Add `Mnemonic` wallet implementation `es/utils/hd-wallet`
470
471
472### BREAKING CHANGES
473
474* **Node:** Change supported node version range to `1.4.0 <= version < 3.0.0`
475
476
477
478# [2.0.0](https://github.com/aeternity/aepp-sdk-js/compare/1.3.2...2.0.0) (2019-02-21)
479
480
481### Features
482
483* **TX_BUILDER:** Add `unpackedTx`, `txType` and `signature` to `validate` transaction function
484* **Contract:** Add `top` param to contract `static call(dry-run)`
485* **Contract:** Add errors handling for `dry-run`
486* **Docs:** Add `keystore` docs
487* **Ae:** Add `verify` options to `send` function which verify tx before broadcasting and throw error if tx is invalid
488* **Rpc:** Add `dryRun` to `RPC` methods
489* **Rpc:** Add `Oracle` transaction creation to `Aepp` rpc
490* **Docs:** Add `tx builder` docs
491* **Docs:** Add doc's for `utils/bytes` and tx builder `schema`
492* **TX_BUILDER:** refactor `calculateFee` function in `TxBuilder`(use BigNumber)
493* **TX_BUILDER:** Extend response of `Oracle`, `Aens`, `Contrat` with `rawTx`
494* **Ae:** Change response of `send` function now it's and object with transaction data(hash, rawTxHash, ...)
495* **Chain:** Move `Contract` and `Oracle` API wrapper's to `Chain` stamp
496* **Chore:** Rename `epoch` in `CHANGELOG`, `README`, `HACKING`
497
498
499### Bug Fixes
500
501* **Rpc:** `RpcServer`: Avoid storing of `window` in `instance` properties
502* **Chain:** Disable `balance formatting` by default
503* **Chain:** Move `verification of transaction` to `chain` stamp
504* **Node:** Retrieve `node` version from `/api`
505* **Chore:** Fix unpack tx example in `bin/aecrypto.js`
506* **Chore:** Remove unused function's from `crypto.js`
507
508
509### BREAKING CHANGES
510
511* **TX:** Remove old transaction builder `es/tx/js.js` (Please use `es/tx/builder` instead)
512* **Chore:** Rename `es/epoch.js` to `es/node.js`
513* **Chore:** Rename `Oracle`, `Contract`, `Chain` API wrapper files from `epoch` to `node`
514* **Chore:** Rename `Contract` api wrapper method's
515
516
517
518## [1.3.2](https://github.com/aeternity/aepp-sdk-js/compare/1.3.1...1.3.2) (2019-02-01)
519
520
521### Features
522
523* **Ae:** Add `destroyInstance` function to `Ae` stamp which remove all listeners for RPC event's
524* **Docs:** Add docs for `TransactionValidator` and `TxBuilder` stamp's
525* **Build:** Add `TxBuilderHelper` to bundle
526* **Chore:** Contract call static now using `dry-run` API
527* **Test:** Improve test's for Transaction verification
528
529
530### Changed
531
532* **Docs:** Adjust doc's for `Contract` and `Aens` stamp's
533* **Chore:** Fix decoding of address from contract call
534
535
536
537## [1.3.1](https://github.com/aeternity/aepp-sdk-js/compare/1.3.0...1.3.1) (2019-01-29)
538
539
540### Features
541
542* **Build:** Remove KeyStore from bundle due to build issue(for now you can export it only using tree-shaking `import * as Keystore from '@aeternity/aepp-sdk/utils/keystore'`)
543
544
545
546# [1.3.0](https://github.com/aeternity/aepp-sdk-js/compare/1.2.1...1.3.0) (2019-01-29)
547
548
549### Features
550
551* **Channel:** Add support for State Channels
552* **TX_BUILDER:** New transaction builder going through schema(build, unpack)
553* **TX_VALIDATOR:** Add new stamp `TransactionValidator` which can verify your transaction
554* **Chore:** Rename epoch to aeternity node(docker configs, some docs)
555* **Tx:** Use new tx builder in TX stamp
556* **Contract:** Set default values for amount and deposit to 0 for `contract` transaction
557* **Rpc:** Improve RPC server
558
559
560### Notes and known Issues
561- Old transaction builder `es/tx/js.js` will be removed in next major release.
562
563
564
565## [1.2.1](https://github.com/aeternity/aepp-sdk-js/compare/1.1.2...1.2.1) (2018-12-21)
566
567
568### Features
569
570* **Chain:** amount formatter
571* **Chain:** amount format balance `client.balance('AK_PUBLICKEY', { format: true })`
572* **Aepp:** Oracle and Contracts API to Aepp stamp
573* **Chore:** Use `prepare` instead of `postinstall-build` (thanks @davidyuk)
574* **Docs:** Refreshed Docs: README.md + docs/usage.md
575
576
577### Bug Fixes
578
579* **Chr:** Fix Import RLP package (thanks @davidyuk)
580* **Rpc:** Fix for NetworkId propagation and override
581* **Tx:** TxJS is not a stamp anymore, and instead: it exports helper functions
582
583
584### BREAKING CHANGES
585
586* **Tx:** TxJs stamp (not a stamp anymore)
587* **Chain:** balance now answer a formatted string composed of `AMOUNT + ' ' + unit` (eg. `10 exa` for 10 AE)
588
589### Notes and known Issues
590
591* **Chore:** `10 exa` should be `10 ae`
592* **Chain:** format shouldn't be a flag, but a request for `unit` eg. `{ format: `ae` }`
593
594
595
596## [1.1.2](https://github.com/aeternity/aepp-sdk-js/compare/1.1.1...1.1.2) (2018-12-15)
597
598
599### Feature
600
601* **Chore:** isAddressValid check
602* **Tx:** Tx Fee formulas
603
604
605### Bug Fixes
606
607* **Rpc:** Fixed networkId propagation (and overriding on init of Flavors)
608* **Crypto:** Fixed encodeBase58Check by feeding Buffered input
609
610
611### BREAKING CHANGES
612
613* **Chore:** Compatibility with Node >= 1.0.0 and <= 1.1.0
614
615
616
617## [1.1.1](https://github.com/aeternity/aepp-sdk-js/compare/1.1.0...1.1.1) (2018-12-11)
618
619
620### Features
621
622* **Rpc:** Added a command to remove images after CI testing
623
624
625### Bug Fixes
626
627* **Rpc:** Fix Testing
628* **Rpc:** Fixed Oracle error for Wallet flavor
629
630
631
632# [1.1.0](https://github.com/aeternity/aepp-sdk-js/compare/1.0.1...1.1.0) (2018-12-11)
633
634
635### Features
636
637* **Oracle:** Oracles functionality and flavor
638* **Aepp:** Simple example of aepp-in-aepp (see `/examples` folder)
639
640### Bug Fixes
641
642* **Tx:** Fixed issue with big numbers and `TX`
643
644
645
646## [1.0.1](https://github.com/aeternity/aepp-sdk-js/compare/1.0.0...1.0.1) (2018-11-30)
647
648
649
650### Features
651
652* **Node:** ability to support Node range(s) using semver package (see https://www.npmjs.com/package/semver#ranges)
653
654
655### BREAKING CHANGES
656
657* **Node:** Support for Node >= 1.0.0 and < 2.0.0
658
659
660
661## [1.0.0](https://github.com/aeternity/aepp-sdk-js/compare/0.25.0-0.1.1...1.0.0) (2018-11-30)
662
663
664
665### Features
666
667* **Contract:** Contract native Transactions
668
669
670### Bug Fixes
671
672* **BigNumber:** Rolled back to bignumbers.js for easier fix with axios.get/post
673
674
675### BREAKING CHANGES
676
677* **Node:** Support for Node < 1.0.0
678* **Build:** New NETWORK_ID (also used in docker/sdk.env for CI tests)
679* **Protocol:** Encoding of transaction (and other objects) [changed from base58check to base64check](https://github.com/aeternity/protocol/blob/master/node/api/api_encoding.md)
680
681
682### Notes and known Issues
683
684* **Channel:** State Channels have been excluded for problems with CI, will be included in next release
685
686
687
688## [0.25.0-0.1.1](https://github.com/aeternity/aepp-sdk-js/compare/0.25.0-0.1.0...0.25.0-0.1.1) (2018-11-30)
689
690
691### Notes and known Issues
692
693* **Chore:** See [0.25.0-0.1.0]
694
695
696
697## [0.25.0-0.1.0](https://github.com/aeternity/aepp-sdk-js/compare/0.25.0-0.1.0-next...0.25.0-0.1.0) (2018-11-30)
698
699
700### Features
701
702* **Utils** Parsing of `fee` using `bignum.js`
703* **Account** Add `networkId` as param to `Account` flavor(default: `ae_mainnet`)
704* **Tx** Implement native build of `AENS` transaction.
705* **Keystore** Update keystore for new [requirements](https://www.pivotaltracker.com/n/projects/2124891/stories/155155204)
706
707
708### BREAKING CHANGES
709
710* **CLI** [AE CLI](https://github.com/aeternity/aecli-js) and [AE PROJECT CLI](https://github.com/aeternity/aeproject) moved to separate repos and packages
711* **Node** Support for < 0.25.0
712
713
714
715## [0.25.0-0.1.0-next](https://github.com/aeternity/aepp-sdk-js/compare/0.24.0-0.2.0...0.25.0-0.1.0-next) (2018-11-30)
716
717
718### Features
719
720* **Contract** Contract type checked call (Ability to call contract using contract address)
721* **Contract** Use ES methods instead of Ramda, where possible
722
723### Bug Fixes
724
725* **Contract** Fixed keystore by adding a salt param for derivedKey function
726
727
728### Breaking Changes
729
730* **Contract** Support for < 0.25.0
731* **Contract** Aens use domain `.test` instead of `.aet` (see [here](https://github.com/aeternity/aepp-sdk-js/commit/9c252f937f7ea501c4aaacbbef53c4c1833e48e4#diff-8ef3b328d008ef3dbb72a0bca42eba37L24))
732* **Contract** Use NETWORK_ID for signing (see [here](https://github.com/aeternity/aepp-sdk-js/commit/9c252f937f7ea501c4aaacbbef53c4c1833e48e4#diff-ffb275ebb09085c85c59f140998199e0R28))
733
734
735
736# [0.24.0-0.2.0](https://github.com/aeternity/aepp-sdk-js/compare/v0.24.0-0.1.0...v0.24.0-0.2.0) (2018-10-30)
737
738
739
740### Features
741
742* **Rpc** RPC Client improvements
743* **Rpc** `onContract` Guard
744* **CLI** born
745* **CLI** `Host` parameter became `Url`. (`-u` for hostname, `-U` for internal)
746* **CLI** New keystore following these specifications: https://www.pivotaltracker.com/n/projects/2124891/stories/155155204
747
748
749### BREAKING CHANGES
750
751* **Chore** The `Cli` flavor is now `Universal`
752* **Chore** the keypair keys changed from `{ pub, priv }` to `{ publicKey, secretKey }` for consistency with other systems using them (eg. AirGap and [HD Wallet](https://github.com/aeternity/hd-wallet-js))
753
754### Notes and known Issues
755
756* **Chore** CLI and AE PROJECT CLI will move to a separate package
757
758
759
760
761# [0.24.0-0.1.0](https://github.com/aeternity/aepp-sdk-js/compare/0.22.0-0.1.0-beta.1...v0.24.0-0.1.0) (2018-10-23)
762
763
764### Features
765
766* **Node** Full support of [Node-0.24.0](https://github.com/aeternity/aeternity/releases/tag/v0.24.0)
767* **CLI** Develop `decode base58` address command in `crypto` module
768* **CLI** Add `nonce` param to all tx command's
769* **CLI** Add `gas` param to `deploy` and `call` commands
770* **Tx** Add ability to create `spend` transaction natively
771* **Keystore** Implement `ethereum keystore` using `AES-126-CTR` and `SCRYPT` as key derivation function
772* **CLI** Change `--privateKey` to `flag` on `ACCOUNT ADDRESS` command
773* **Build** Change `node version` in `Dockerfile`
774* **Node** API endpoints to meet new Node specifications
775* **Chore** Update `docco` config and change `rename` package to `recursive-rename`
776* **Docs** Improved documentation
777
778
779### BREAKING CHANGES
780
781* **Node** Support for < 0.24.0
782* **Keystore** `ethereum keystore` usage will be removed in the next release
783* **CLI** CLI will move to a separate package
784
785
786
787# [0.22.0-0.1.0-beta.1](https://github.com/aeternity/aepp-sdk-js/compare/v0.18.0-0.1.1...0.22.0-0.1.0-beta.1) (2018-10-02)
788
789### Features
790
791* **CLI** Add **CLI** implementation
792* **Crypto** nameId function for commitment hash calculations
793* **Node** API endpoints to meet new Node specifications
794* **Tx** Add Nonce calculation on SDK side
795* **Contract** Add check for MAX_GAS in call and deploy contract
796* **Chore** change hash prefix separator from $ to _
797* **Chore** Add keywords ('SDK', 'CLI') to package.json
798* **CLI** Link aecli to `./bin/aecli.js` in package.json (After "npm link" you can use CLI globally)
799* **Aens** Wait until pre-claim transaction block was mined before send claim transaction
800* **Build** Updated `webpack`, `webpack-cli` and added new dev deps accordingly
801* **Node** Add Node Compatibility Check
802
803### Bug Fixes
804
805* **Crypto** Fixes commitment hash calculations in naming system, to be `Hash(nameId(name) + name_salt)` instead of `Hash(Hash(name + name_salt))`.
806
807### BREAKING CHANGES
808
809* **Node** Support for < 0.22.0
810
811
812
813# [0.18.0-0.1.1](https://github.com/aeternity/aepp-sdk-js/compare/v0.18.0-0.1.0...v0.18.0-0.1.1) (2018-07-31)
814
815### Features
816
817* **Docs** Lots of new documentation (prose and API)
818* **Docs** Fancy badges to README
819* **Build** Transitive dev dependencies for standard-loader not covered by pnpm
820* **Build** CI Dockerfile to include pnpm
821* **Docs** Fancy-shmancy diagram in README
822* **Docs**Generated documentation files since they are linked in static docs
823* **Build** Switch from Yarn to pnpm for building
824* **Docs** Structure of documentation
825* **Docs** Generate Markdown from Docco
826
827
828
829# [0.18.0-0.1.0](https://github.com/aeternity/aepp-sdk-js/compare/v0.15.0-0.1.0...v0.18.0-0.1.0) (2018-07-24)
830
831
832### Features
833
834* **Node** Support for Node 0.18.0 (changed endpoints)
835* **RPC** Wallet/Aepp RPC support
836* **Contract** Contract call result decoding support
837* **Docs** Per-module API documentation (Markdown based on JSDoc)
838* **Docs** More API documentation (still incomplete)
839* **Build** SDK entrypoint factories (in `/es/ae/universal.js`)
840* **Build** Module load path (src -> es)
841* **Chore** Lower mining rate (5s) in docker-compose
842
843
844### Bug Fixes
845
846* **Crypto** Symmetric key encryption/decryption
847
848
849### BREAKING CHANGES
850
851* **Node** Support for < 0.18.0 (changed endpoints)
852
853
854
855
856# [0.15.0-0.1.0](https://github.com/aeternity/aepp-sdk-js/compare/v0.14.0-0.1.0...v0.15.0-0.1.0) (2018-06-12)
857
858
859### Features
860
861* **Node** Legacy Swagger file loading
862* **Node** Compatibility with < 0.15.0
863
864
865### Bug Fixes
866
867* **Contract** Contract unit state initialization
868* **Node** Missing required parameter for name transfers (workaround for
869 [Swagger file bug](https://www.pivotaltracker.com/n/projects/2124891))
870
871
872
873# [0.14.0-0.1.0](https://github.com/aeternity/aepp-sdk-js/compare/v0.13.0-0.1.1...v0.14.0-0.1.0) (2018-06-11)
874
875
876### Features
877
878* **API** New, opinionated top-level API
879* **API** Rest of legacy API now uses new API as well
880* **API** Generated API now encapsulated in `api` object
881* **API** Automatic case conversion for remote parameter names
882* **API** Remaining tests to use new API
883* **API** Adapted new method of obtaining transaction hash, breaks compatibility (see
884 below)
885
886
887### Bug Fixes
888
889* **API** [GH-49]: Handle existing path components correctly
890
891
892### BREAKING CHANGES
893* **API** Remove Oracle API (for the time being)
894* **API** Remove Legacy API and tests
895* **API** Remove Compatibility with older versions of Node which provide the transaction hash
896 the old way
897
898
899
900# [0.13.0-0.1.1](https://github.com/aeternity/aepp-sdk-js/compare/v0.13.0-0.1.0...v0.13.0-0.1.1) (2018-05-24)
901
902
903### Features
904
905* **Node** Switch to curve ed25519 (from secp256k1) to align with Node protocol changes
906* **Node** Generate basic API directly from Swagger files, also validate input data
907* **Build** Compiled library now self-contained with all dependencies
908* **Build** Use Webpack 4 based cross-platform (Node/Web) compilation
909* **Docs** Package description now reads `SDK for the æternity blockchain`
910* **Chore** Authors are now taken from `AUTHORS` instead of `package.json`
911* **Docs** Moved code examples from README to separate file in docs
912
913
914### BREAKING CHANGES
915
916* **Node** Defunct scripts; will be brought back later
917
918
919### Bug Fixes
920
921* **Chore** More consistent code examples
922
\No newline at end of file