Commit graph

205 commits

Author SHA1 Message Date
Cheng XU
83cd850782 libquickjs-sys: use cc to build quickjs directly 2020-05-25 13:26:53 +02:00
Noah
1284f7b041
Allow specifying the path to libquickjs.a (#63)
* Allow specifying the path to libquickjs.a
2020-05-04 10:27:43 +02:00
Cheng XU
2e0ee4da4d fix CI 2020-04-13 11:54:10 +02:00
Cheng XU
d705b7f85f libquickjs-sys: use cc to determine the proper compiler
This allows us to build quickjs for the following targets:
* `x86_64-unknown-linux-musl`
* `x86_64-pc-windows-gnu` (through cross-compilation)
2020-04-13 11:54:10 +02:00
Christoph Herzog
3a0d1747b5 quick-js v0.3.1 release 2020-03-24 23:29:13 +01:00
Christoph Herzog
b0b54e73f9 libquickjs-sys v0.5.0 release 2020-03-24 23:20:08 +01:00
Christoph Herzog
86207cc0a0 Finish the quickjs update to 2020-03-16 2020-03-24 22:14:36 +00:00
Rail Khusnutdinov
e1982fc724 impl TryFrom<JsValue> for HashMap<String, V> 2020-03-24 22:14:36 +00:00
Rail Khusnutdinov
2973b0e1c8 Update quickjs to 2020-03-16 2020-03-24 22:14:36 +00:00
Mrmaxmeier
ceab2c9251 fix build for log feature 2020-01-28 21:00:26 +01:00
Mrmaxmeier
0284b12036 fix build for bignum feature 2020-01-28 21:00:26 +01:00
Mrmaxmeier
8b1b6fbd46 Update quickjs to 2020-01-19 2020-01-28 21:00:26 +01:00
Christoph Herzog
306835e393 release: prepare v0.3.0 2019-11-02 23:47:33 +01:00
Christoph Herzog
870d45fb3d chore: Add _NonExhaustive variant to Value
BREAKING CHANGE : the new variant ensures that we can add new value types
without a semver break in the future.
2019-11-02 23:44:22 +01:00
Christoph Herzog
5578af79a9 Update quickjs to 2019-10-27 2019-11-02 22:59:17 +01:00
Alexander Rodin
6afaa8ff7e fix: Typo in README 2019-10-15 12:31:54 +02:00
Alexander Rodin
4d6451b22d fix: Use c_char instead of architecture-specific i8 2019-10-15 12:31:28 +02:00
theduke
da08c05ba0
Merge pull request #49 from a-rodin/patch-4
fix: Use space instead of comma as a separator
2019-10-06 11:20:35 +02:00
Alexander Rodin
59fac31256
fix: Use space instead of comma as a separator 2019-10-04 18:37:22 +03:00
Christoph Herzog
65cf630c15 docs: Add Github Actions badge, remove old ones 2019-10-02 19:35:49 +02:00
theduke
5e5a50e05c
Merge pull request #46 from theduke/console
Console support
2019-10-02 19:30:37 +02:00
Christoph Herzog
4307fd83a8 chore: Remove outdated TODOs 2019-10-02 19:23:26 +02:00
Christoph Herzog
b028bd6b10 ci: Switch to Github Actions 2019-10-02 19:16:19 +02:00
Christoph Herzog
e039582a72 (feat) Console support
This commit implements console support.

A ConsoleBackend trait can be implemented and registered in the
ContextBuilder.

A implementation that forwards to the `log` crate is available with the
new `log` feature.
2019-10-02 17:28:42 +02:00
Christoph Herzog
0abd08b4e6 (feat) Support vararg callbacks with the Arguments wrapper type
Callbacks accepting a undetermined amount of arguments can now be
created by using a closure that takes a single callbacks::Arguments arg.
2019-10-02 14:04:35 +02:00
Alexander Rodin
142af5003a chore: Deny warnings and missing docs for tests using cfg_attr 2019-10-01 22:41:58 +02:00
theduke
31ad871241
docs: Document bigint feature in README 2019-09-26 18:33:05 +02:00
Christoph Herzog
10a53ad3af chore: Remove redundant #[cfg] attributes 2019-09-26 18:08:51 +02:00
Alexander Rodin
308686035b feat: Arbitrary Precision Integer Support
Implement support for the arbitrary precision integers feature of
quickjs.

In Rust, values are represented with the num-bignum::BigInt type.
2019-09-26 18:08:06 +02:00
Alexander Rodin
a2d8e1c3e1 Free runtime if context cannot be created 2019-09-21 15:02:46 +02:00
Christoph Herzog
f65c702428 Update quickjs to 2019-09-18 2019-09-21 14:52:01 +02:00
Christoph Herzog
7f31c267ff Update quickjs to 2019-09-01 release 2019-09-05 09:20:24 +02:00
Christoph Herzog
6866eed041 Prepare 0.2.3 2019-08-30 20:29:58 +02:00
Christoph Herzog
223a28fa27 (docs) Add note about future property iterator 2019-08-30 20:29:06 +02:00
Alexander Rodin
4a13c76415 Add Valgrind to CI 2019-08-30 20:29:06 +02:00
Alexander Rodin
5fd3bc7c72 Use RAII-style approach to free JS enum on errors 2019-08-30 20:29:06 +02:00
Alexander Rodin
be7fffaf14 Free atoms returned by q::JS_GetPropertyInternal 2019-08-30 20:29:06 +02:00
theduke
03e0db2427
Add Charlie Gordon attribution to README 2019-08-21 08:30:35 +02:00
Christoph Herzog
52a26ae639 Use JS_DefineProperty instead of SetProperty for new objects
This is the safe way to do it according to the QuickJS mailing list.
(might cause bugs if base object already has a similar property)
2019-08-20 13:45:43 +02:00
Christoph Herzog
4a87e54c66 release: v0.2.2 2019-08-13 11:19:40 +02:00
Christoph Herzog
273c60066a fix: Fix timetstamp conversion logic for JsValue::Date
A wrong multiplication factor was used to convert timestamps, which resulted
in treating nanoseconds as milliseconds instead.

Fixed by switching to millisecond helper functions in chrono.
2019-08-13 11:17:53 +02:00
Christoph Herzog
f05e738c44 v0.2.1 release 2019-08-13 01:40:29 +02:00
Christoph Herzog
cd42e0665d Add chrono integration 2019-08-13 01:34:49 +02:00
theduke
e4643a6aa1
Merge pull request #19 from a-rodin/stack-overflow-signed
Implement patched feature and fix stackoverflow in quickjs.
2019-08-13 00:14:39 +02:00
Christoph Herzog
a309c90d69 ci: Fix up circleci config for new patched features testing 2019-08-13 00:08:39 +02:00
Alexander Rodin
9afa90d30a ci: Test patched and default features on CI 2019-08-13 00:08:07 +02:00
Alexander Rodin
fd24e206f2 Add "patched" feature with "stack-overflow-signed.patch"
This commit adds a new "patched" feature to both the
bindings and the main crate.

This feature applies patches to the embedded version that fix up/extend quickjs.

All patches are in libquickjs-sys/embed/patches.
2019-08-13 00:06:25 +02:00
Christoph Herzog
e9475d5f4e Implement resolving of async values. 2019-08-12 19:39:20 +02:00
theduke
a43ab71d6a
Merge pull request #20 from theduke/deserialize-values
Upgrade quickjs + implement object deserializiation
2019-08-12 17:14:11 +02:00
Christoph Herzog
7098e1ab7e Formatting... 2019-08-12 17:08:45 +02:00