UNPKG

7.61 kBMarkdownView Raw
1# Changelog
2
3### v0.26.0
4
5- Export maps, you can now import `webnative/path` instead of `webnative/dist/path`
6- Move library files from `dist` to `lib`
7- Use a better and faster build system
8- Fix issues with `Buffer`
9- Switch from the borc library to cborg
10
11
12### v0.25.2
13
14Typescript output to `dist/` instead of `dist/src/`
15
16
17### v0.25.1
18
19Fix naming for minified UMD build
20
21
22### v0.25.0
23
24- Allow raw UCANs
25- Expose functions for looking up stored UCANs
26- Add function to look up user's root DID
27- Default browser build to minified UMD
28- Build CJS & ES5 for node
29
30
31
32### v0.24.2
33
34Fixed issue with browser detection, didn't work in web/service workers.
35
36
37### v0.24.1
38
39Fix a couple of bugs in dependency injection
40
41
42### v0.24.0
43
44- Dependency injection for crypto and storage functions to allow for use in Node.js
45- Fix race condition in private tree that would occasionally drop filesystem nodes
46- Improved path management (`webnative.path` module)
47- Add support for Ed25519 & BLS DIDs
48- Allow permissioning of files
49
50
51
52### v0.23.2
53
54Don't keep old UCANs around.
55
56
57### v0.23.1
58
59More detailed error message for NoPermissionError.
60
61
62### v0.23.0
63
64- **UCAN permission system and improved security**.
65- Show alert when leaving the page while publishing changes, to avoid data loss.
66- Fix issue with urls that were too long while redirecting back from the lobby.
67- Better usage of the `Ucan` type in the UCAN functions.
68- Data root update function returns `{ success }` boolean.
69- Improved username validation
70
71
72
73### v0.21.5
74
75Fix regex of username validation and allow non-prefixed underscores in usernames.
76
77
78### v0.21.4
79
80Does not cancel data-root updates anymore, slightly increasing the performance of concurrent writes.
81
82
83### v0.21.3
84
85- IPFS connection and pinning improvements
86- Don't show the "failed to update dnslink" debug message when cancelling a dnslink update
87
88
89### v0.21.2
90
91- `fs.mv` will no longer overwrite existing files, but instead throw an error.
92- `initialise` will return a rejected Promise if the browser, or context, is not supported.
93- DNSLink updated debug statement will no longer be shown if it failed to update.
94- Hide iframe completely
95
96
97### v0.21.1
98
99Fix issue with `leave` function, `withoutRedirect` option should not be required.
100
101
102### v0.21.0
103
104Local IPFS data is shared across all browser tabs through the use of a shared web worker.
105
106
107
108### v0.20.5
109
110Adds the `read` and `write` methods to trees.
111
112
113### v0.20.4
114
115Fix `mv` issue.
116
117
118### v0.20.3
119
120Re-enable the `mv` filesystem function.
121
122
123### v0.20.2
124
125Fixed dependency loading issue.
126
127
128### v0.20.1
129
130Added versioning info to the README.
131
132
133### v0.20.0
134
135- Adds versioning
136- Allows for concurrent filesystem operations
137
138
139
140### v0.19.12
141
142- Adds facts `fct` to the UCANs (v0.3.1)
143- Update IPFS to v0.51.0
144
145
146### v0.19.11
147
148- Fixes `isUsernameAvailable` function (was broken due to adjusted `dataRoot.lookup` behaviour)
149- Fixes issue with clearing data from browser.
150- Tries reconnecting to Fission gateway if initial connection fails
151- Removes `yarn` as a dependency (should've been devDependency)
152
153
154### v0.19.10
155
156Support the decoding of the url-safe base64 encoded read-key from the auth lobby.
157
158
159### v0.19.9
160
161The expiration timestamp of a UCAN cannot exceed that of its proof.
162
163
164### v0.19.8
165
166Bugfix: clear all data when using the `leave` function.
167
168
169### v0.19.7
170
171Bugfix: updates to files on public side were failing.
172
173
174### v0.19.6
175
176Bugfix: changes to public tree were not being reflected in pretty tree.
177
178
179### v0.19.5
180
181Don't error on failed pins.
182
183
184### v0.19.2
185
186Do not recursively pin content.
187
188
189### v0.19.1
190
191Permissions should be optional for `redirectToLobby` and `loadFileSystem` as well.
192
193
194### v0.19
195
196- Reliability & performance improvements
197- Permissions are now optional
198
199
200
201### v0.18.1
202
203Added proofs to JWT for app routes (index, create & delete)
204
205
206### v0.18.0
207
208###### Breaking changes
209
210- Renamed `publicise`/`publicize` to `publish`
211- Renamed `prerequisites` to `permissions`
212- The `app` and `fs` params to `initialise` are now grouped together by passing the `permissions` parameter.
213- Decrypt `readKey` from auth lobby (behind the scenes)
214
215
216
217### v0.17.3
218
219Upgrade to js-ipfs v0.50
220
221
222### v0.17.2
223
224Connect to signaling server to find your other devices more easily.
225
226
227### v0.17.1
228
229Upgrade to CIDv1.
230
231
232### v0.17
233
234###### Changes
235
236- `initialise` now accepts two additional options, named "prerequisites":
237 ```javascript
238 const { prerequisites, scenario, state } = await wn.initialise({
239 // Will ask the user permission to store
240 // your apps data in `private/Apps/Nullsoft/Winamp`
241 app: {
242 name: "Winamp",
243 creator: "Nullsoft"
244 },
245
246 // Ask the user permission for additional filesystem paths
247 fs: {
248 privatePaths: [ "Music" ],
249 publicPaths: [ "Mixtapes" ]
250 }
251 })
252 ```
253- Those prerequisites are passed to the `wn.redirectToLobby` function.
254 (So the auth lobby has the correct parameters to determine the permissions to ask the user)
255- Adds the ability to use multiple apps with one file system (closes #73)
256- The SDK now handles multiple UCANs
257- Works offline (fixes #82)
258- Added `initialize` (american spelling) as an alias for `initialise`
259- Adds ability to set the potency `ptc` of a UCAN
260- Uses the Fission gateway as a [delegate node](https://github.com/ipfs/js-ipfs/blob/2b24f590041a0df9da87b75ae2344232fe22fe3a/docs/CONFIG.md#delegates)
261
262###### Breaking changes
263
264- File system actions (ie. POSIX interface methods) throw an error when they are missing the necessary permissions (read UCAN)
265- Does no longer automatically call the `fs.publicise()` method. You have to call this yourself from now on.
266- Changed the `fs.appPath` function (see README)
267- Renamed `scenario.isAuthenticated` to `scenario.isAuthorised`
268- Renamed `scenario.continuum` to `scenario.continuation`
269- The first parameter to `redirectToLobby` has now become the second parameter.
270- Replaced `deauthenticate` with `leave`, which now redirects to the auth lobby automatically, so you can "sign out" there as well.
271
272
273### v0.16.x
274
275- Fixed issue with private trees
276- Improved connectivity
277- Switched from AES-128 read keys to AES-256
278
279
280### v0.16
281
282- Big rewrite of filesystem
283 - private side derives names using bloomfilters and stores nodes in an MMPT
284 - reorganize header info on public side and store metadata/skeleton as cbor data
285- Improved `fs.write` method, is an alias for `add` now (because `add` overwrites by default)
286- Improved file system loading and saving
287
288
289### v0.15
290
291- Skipped because of a botched npm publish
292
293
294### v0.14.3
295
296- Added apps API `apps.create`, `apps.index`, `apps.deleteByURL`
297
298
299### v0.14.2
300
301- Improved DNSLink lookup error handling
302- Reduced time-to-save for the file system to 3 seconds instead of 5
303- Removed unnecessary `console.log` calls
304- Updated default `js-ipfs` to `v0.48.1` (was `v0.48.0`)
305
306
307### v0.14.1
308
309Removed the default import from the index file. Now you use the SDK as follows, browser stays the same.
310
311```js
312import * as sdk from 'fission-sdk'
313import { initialise } from 'fission-sdk'
314
315sdk.initialise()
316initialise()
317```
318
319
320### v0.14.0
321
322- Renamed `isAuthenticated` to `initialise`
323- `initialise` will return an instance of the file system (can be disabled in case you use web workers)
324- Adds `loadFileSystem` to load a file system (called automatically from `initialise` unless disabled). This function is responsible for caching the file system locally and making a file system if the user hasn't got one yet.
325- Adds the `fs.appPath.private` and `fs.appPath.public` function to build paths.
326- Adds the `fs.exists`, `fs.read` and `fs.write` file system methods