Commit Graph

2150 Commits

Author SHA1 Message Date
Alex Crichton
bf8a380264
Merge pull request #1226 from Pauan/optimize-catch
Simplifying the error handling code
2019-02-04 08:23:57 +01:00
Pauan
e4294babeb Simplifying the error handling code 2019-02-04 02:08:08 +01:00
Alex Crichton
9f00664d81
Merge pull request #1219 from fitzgen/UnwrapThrowExt
Add the `UnwrapThrowExt<T>` trait
2019-02-01 15:19:27 -06:00
Alex Crichton
2e80313aa3
Merge pull request #1221 from rhysd/format-dts-file
Format .d.ts file
2019-02-01 09:24:49 -06:00
Alex Crichton
66be3d3f66
Merge pull request #1220 from carlosdp/patch-1
Fix version number in travis instruction
2019-02-01 09:14:08 -06:00
rhysd
6e2f10440e give 2 space indentations to each enum variant 2019-02-01 16:25:25 +09:00
rhysd
a1995cafd4 remove unnecessary blank lines in .d.ts file 2019-02-01 16:07:31 +09:00
rhysd
23ccd3b5c1 remove unnecessary space before function name in .d.ts file 2019-02-01 16:07:12 +09:00
rhysd
019a0863c4 give class members 2 spaces indentation in .d.ts files 2019-02-01 15:45:01 +09:00
Carlos Diaz-Padron
11db255e47
Fix version number in travis instruction 2019-01-31 18:00:49 -08:00
Nick Fitzgerald
0e11e4a3bd Add the UnwrapThrowExt<T> trait
An extension trait for `Option<T>` and `Result<T, E>` for unwraping the `T`
value, or throwing a JS error if it is not available.

These methods should have a smaller code size footprint than the normal
`Option::unwrap` and `Option::expect` methods, but they are specific to
working with wasm and JS.

On non-wasm32 targets, defaults to the normal unwrap/expect calls.
2019-01-31 13:26:21 -08:00
Alex Crichton
92072bf03c
Merge pull request #1218 from rustwasm/dependabot/npm_and_yarn/@wasm-tool/wasm-pack-plugin-0.2.3
Update @wasm-tool/wasm-pack-plugin requirement from 0.2.2 to 0.2.3
2019-01-31 10:14:17 -06:00
dependabot[bot]
08e7560f72
Update @wasm-tool/wasm-pack-plugin requirement from 0.2.2 to 0.2.3
Updates the requirements on [@wasm-tool/wasm-pack-plugin](https://github.com/wasm-tool/wasm-pack-plugin) to permit the latest version.
- [Release notes](https://github.com/wasm-tool/wasm-pack-plugin/releases)
- [Commits](https://github.com/wasm-tool/wasm-pack-plugin/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-31 08:12:51 +00:00
Alex Crichton
33fda01625
Merge pull request #1217 from rustwasm/dependabot/npm_and_yarn/@wasm-tool/wasm-pack-plugin-0.2.2
Update @wasm-tool/wasm-pack-plugin requirement from 0.2.1 to 0.2.2
2019-01-30 07:10:43 -08:00
dependabot[bot]
5d188e4c0f
Update @wasm-tool/wasm-pack-plugin requirement from 0.2.1 to 0.2.2
Updates the requirements on [@wasm-tool/wasm-pack-plugin](https://github.com/wasm-tool/wasm-pack-plugin) to permit the latest version.
- [Release notes](https://github.com/wasm-tool/wasm-pack-plugin/releases)
- [Commits](https://github.com/wasm-tool/wasm-pack-plugin/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-30 08:15:57 +00:00
Alex Crichton
cf1e1e0dc1
Merge pull request #1214 from alexcrichton/enum-option
Support `Option` with custom enums in JS
2019-01-29 09:57:51 -06:00
Alex Crichton
5fbcad48d0
Merge pull request #1215 from eminence/webaudio_fix
Fix webaudio example
2019-01-29 09:04:56 -06:00
Andrew Chin
153acdb4fd Fix webaudio example
The rust set_* functions except numbers, not strings.
2019-01-28 23:54:40 -05:00
Alex Crichton
9224455077 Support Option with custom enums in JS
Find a hole automatically to use a sentinel value for `None`, and then
just wire everything up!

Closes #1198
2019-01-28 14:27:57 -08:00
Alex Crichton
03e52c7045
Merge pull request #1212 from Ivshti/master
browser-support: warn about the performance hit of the polyfill
2019-01-28 14:30:07 -06:00
Alex Crichton
3e5280243f
Merge pull request #1208 from alexcrichton/expand-recursive
Fix conditional #[wasm_bindgen] in impls
2019-01-28 14:29:26 -06:00
Alex Crichton
c35d6f4b0a Fix conditional #[wasm_bindgen] in impls
Reported in #1191 the fix requires us to get a bit creative I think. The
general gist is that a block like this:

    #[wasm_bindgen]
    impl Foo {
        pub fn foo() {}
    }

was previously expanded all in one go. Now, however, it's expanded into:

    impl Foo {
        #[__wasm_bindgen_class_marker(Foo = "Foo")]
        pub fn foo() {}
    }

    // goop generated by orginal #[wasm_bindgen]

This method of expansion takes advantage of rustc's recursive expansion
feature. It also allows us to expand `impl` blocks and allow inner items
to not be fully expanded yet, such as still having `#[cfg]` attributes
(like in the original bug report).

We use theinternal `__wasm_bindgen_class_marker` to indicate that we're
parsing an `ImplItemMethod` unconditionally, and then generation
proceeds as usual. The only final catch is that when we're expanding in
an `impl` block we have to generate tokens for the `Program`
(wasm-bindgen injected goop like the custom section) inside the body
of the function itself instead of next to it. Otherwise we'd get syntax
errors inside of impl blocks!

Closes #1191
2019-01-28 12:29:01 -08:00
Ivo Georgiev
b3e97a7e45
browser-support: warn about the performance hit of using the polyfill~ 2019-01-28 20:55:11 +01:00
Alex Crichton
c56dff8ede
Merge pull request #1204 from chocolatkey/patch-1
minor typo in js-sys lib.rs
2019-01-25 08:05:00 -07:00
Henry
2a6d2004e1
minor typo in js-sys lib.rs 2019-01-24 15:35:21 -08:00
Alex Crichton
f8dabfcae9
Merge pull request #1201 from rhysd/fix-optional-value-types
Add '| undefined' to optional types in generated .d.ts
2019-01-23 09:52:40 -07:00
rhysd
3300301b3f add '| undefined' to optional types in generated .d.ts 2019-01-23 20:49:52 +09:00
Alex Crichton
78c4075e40 Bump to 0.2.33 2019-01-18 15:32:17 -08:00
dependabot[bot]
b8c91ab0d3 Update @wasm-tool/wasm-pack-plugin requirement from 0.2.0 to 0.2.1
Updates the requirements on [@wasm-tool/wasm-pack-plugin](https://github.com/wasm-tool/wasm-pack-plugin) to permit the latest version.
- [Release notes](https://github.com/wasm-tool/wasm-pack-plugin/releases)
- [Commits](https://github.com/wasm-tool/wasm-pack-plugin/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-18 08:35:22 +00:00
Alex Crichton
71ed305455
Merge pull request #1159 from alexcrichton/webpack
Convert all examples to using wasm-pack
2019-01-17 21:13:50 -08:00
Alex Crichton
ba732a8a72
Merge pull request #1161 from derekdreery/debug_output
Better output from `impl Debug for JsValue`.
2019-01-17 16:52:13 -08:00
Alex Crichton
d3057c7c42
Merge pull request #1193 from fitzgen/ci-docs-on-stable
ci: build docs on stable
2019-01-17 16:51:57 -08:00
Nick Fitzgerald
222d5ca00d ci: build docs on stable
This avoids https://github.com/rust-lang/rust/issues/57628 and also generally
makes sense since wasm-bindgen buils on stable.
2019-01-17 14:56:52 -08:00
Richard Dodd (dodj)
f8680a0c10
remove is array function 2019-01-17 21:08:32 +00:00
Richard Dodd (dodj)
867b13b65e
remove array check 2019-01-17 21:07:23 +00:00
Alex Crichton
32c611d16d Convert all examples to using wasm-pack
This commit migrates all our examples to using `wasm-pack build` to
compile their code and run `wasm-bindgen`. This should make it a bit
easier to understand the examples as there's less to follow during the
build step.

Webpack projects are all using `@wasm-tool/wasm-pack-plugin` as well so
the build step is simple `npm run serve`. Other examples which retain
`build.sh` are just using `wasm-pack build` now
2019-01-17 08:37:32 -08:00
Richard Dodd (dodj)
7fe76061af
Update node to support Array.values in tests. 2019-01-17 12:59:16 +00:00
Nick Fitzgerald
d79ca22234
Merge pull request #1190 from sagan-software/issue-1186
js-sys: JSON::stringify_with_replacer[_and_space]
2019-01-16 16:38:59 -08:00
Liam Curry
6226e6959f js-sys: JSON::stringify_with_replacer[_and_space]
This commit adds two new externs for `JSON.stringify`:
`JSON::stringify_with_replacer` and
`JSON::stringify_with_replacer_and_space`.

Fixes #1186
2019-01-16 18:03:03 -05:00
Alex Crichton
50d2422309
Merge pull request #1188 from fitzgen/bump-to-0.2.32
Bump to 0.2.32
2019-01-16 13:17:42 -08:00
Nick Fitzgerald
31fdede9fc Bump to 0.2.32 2019-01-16 13:11:13 -08:00
Nick Fitzgerald
86ef3f75dd Add 0.2.32 entry to CHANGELOG.md 2019-01-16 13:06:17 -08:00
Richard Dodd
b0906fddba Better recognition of error type. 2019-01-16 15:36:13 +00:00
Richard Dodd
5f2ba3f98e Add better support for errors. 2019-01-16 10:46:26 +00:00
Richard Dodd
5bffc28631 Add a proper test.
And fix loads of bugs.
2019-01-16 10:16:29 +00:00
Richard Dodd
f3dd38690a Remove Array.isArray test. 2019-01-16 10:16:29 +00:00
Richard Dodd
fab9d1dff6 Resolve what to do with no_std. 2019-01-16 10:16:29 +00:00
Richard Dodd
b60d82a531 Implement suggestings from @fitzgen. 2019-01-16 10:16:29 +00:00
Richard Dodd
72765757ef Fix tests again. 2019-01-16 10:16:29 +00:00
Richard Dodd
36cb50445f Make clear it's a JsValue. 2019-01-16 10:16:29 +00:00