Simon Hausmann
4a9cd954b8
Rework the Rust entry point API for the interpreter
...
Switch to the stateful `ComponentCompiler` concept that we discussed for the C++ API.
2021-03-18 18:20:50 +01:00
Olivier Goffart
0e351de1a6
Create a new crate to expose the C++
2021-03-16 16:34:02 +01:00
Simon Hausmann
79aefcb303
Fix compilation of tests
2021-03-15 20:02:31 +01:00
Olivier Goffart
fef4a10ebd
Use the new API for the interpreter in wasm
...
Improve the ComponenetDefinition::from_source
2021-03-15 17:57:46 +01:00
Olivier Goffart
48333370a6
Use the new interpreter API in things that depends on it
2021-03-15 17:29:27 +01:00
Simon Hausmann
70ff7baa85
Fix compilation after diagnostics API changes
2021-03-15 10:43:26 +01:00
Olivier Goffart
096f55e365
Change behavior of percent sice within the layout
...
So that size with percentages don't affect the maximum/minimum size
Fixes #117
2021-02-11 20:32:26 +01:00
Olivier Goffart
49c7300907
Support for if else
in statements
2021-02-05 13:53:37 +01:00
Olivier Goffart
4fd3eaf9d1
Add a SIXTYFPS_TEST_FILTER macro to be able to limit the tests we compile in
...
Quite usefull to quicly compile some tests for the rust backend which is slow to compile
2021-02-03 10:41:19 +01:00
Olivier Goffart
a143656dc9
Test driver: move some common code in the lib
2021-02-03 10:32:25 +01:00
Olivier Goffart
f2ab456a7b
Test the .60 snippet in the documentation
2021-02-02 14:56:22 +01:00
Olivier Goffart
7613b9231f
Rename the rust test driver in a consistant way
2021-02-01 18:45:14 +01:00
Olivier Goffart
50ce2d08fd
Split the nodejs and the interpreter test driver
2021-02-01 18:43:48 +01:00
Olivier Goffart
c25f383308
WIP: split interpreter and nodejs
2021-02-01 18:37:24 +01:00
Olivier Goffart
6b20d05efb
Move the C++ driver to its own crate
2021-02-01 18:34:49 +01:00
Olivier Goffart
09ce4142a5
Some reorganization of the testdriver
2021-02-01 18:13:19 +01:00
Olivier Goffart
efd6a5479c
don't make xtask depends on the test driver lib
2021-02-01 18:13:08 +01:00
Olivier Goffart
c2dc0cef2c
Finish return statement handling
2021-01-25 15:32:00 +01:00
Olivier Goffart
0d2d48be4f
Rename "signal" to "callback"
2020-12-18 09:51:01 +01:00
Simon Hausmann
5f9f1ce047
Fix the build
...
Fix the remaining CompilerConfiguration uses that I missed :(
2020-12-10 16:13:17 +01:00
Olivier Goffart
7113187864
C++: Fix warnings
2020-11-19 13:50:15 +01:00
Olivier Goffart
359f42c5f7
Prepare the compiler to be async
...
This will allow the online editor to load imports from URL asynchroniously later
Since currently the compiler is only working on a single thread, and that we
never await on a future that could block, it is allowed to use the spin_on executor
2020-10-30 15:00:04 +01:00
Simon Hausmann
c188851b45
Fix nodejs tests on Windows
...
npm is in fact `npm.cmd` and Rust's std::process::Command doesn't look
for executables with .cmd extension. This is a common issue but also a deliberate choice
it appears (due to emulating CreateProcess).
2020-10-20 16:30:16 +02:00
Simon Hausmann
279ce560f9
Convert NodeJS API to use & export TypeScript
...
This will make the types available to API consumers and makes the
documentation clearer.
2020-10-20 15:57:50 +02:00
Simon Hausmann
309fa8aef1
Fix build
2020-10-14 15:34:38 +02:00
Olivier Goffart
1138c9dbed
Normalize the spelling of SixtyFPS
2020-10-13 07:48:55 +02:00
Simon Hausmann
c16f2f2185
Clean up test cases
...
Instead of all files collected in a flat directory, restructure them
into categories and thus sub-directories.
2020-09-29 17:00:48 +02:00
Olivier Goffart
2275cd638a
C++ Test: make sure to re-run cbindgen in case of changes
...
Also add -g to ease debugging
2020-09-15 12:18:36 +02:00
Olivier Goffart
67764f8250
Fix the build of the C++ testcases
2020-09-06 14:50:56 +02:00
Olivier Goffart
c80975c85c
Use C++17 in the msvc tests
2020-09-06 00:07:53 +02:00
Olivier Goffart
5759e912d0
On windows, we must close the file otherwise the compiler won't be able to open it
2020-09-05 23:47:08 +02:00
Olivier Goffart
82bfcc388a
Add some debug to find out why the test is failling to compile
2020-09-05 23:12:08 +02:00
Olivier Goffart
9c32de9fac
Attempt to pass the right options to MSVC
2020-09-05 22:40:40 +02:00
Olivier Goffart
103e5659e4
More escaping for slashes in path
2020-09-05 19:56:56 +02:00
Olivier Goffart
3c46df46d9
Attempt to fix window build by properly escaping backslashes
2020-09-05 17:42:12 +02:00
Olivier Goffart
4f5e8c7aff
Do not print the warnings from tests.
...
Warning as expected as even code with warning need to be tested.
If anything, we could ensure that warning were indeed expected
by testing against a `^warning` comment
2020-09-05 17:29:00 +02:00
Simon Hausmann
ff9c118e07
Propagate warnings to the end of the compilation step and print them
2020-09-04 20:34:20 +02:00
Simon Hausmann
628426aded
Rename cpp.rs to cppdriver.rs
...
This makes completion better :-)
2020-09-03 12:58:52 +02:00
Olivier Goffart
2ef7cd6d96
Fix interpreter test
2020-09-01 12:47:40 +02:00
Olivier Goffart
6d41b1981d
Move the Qt style to a new backend: the Qt backend
...
Currently the Qt backend still redirect everything to the GL backend,
but the goal is to use QPainter and QWindow
This also adds a "default" backend, whose goal is to select the proper
backend at compile time
2020-08-31 17:26:04 +02:00
Olivier Goffart
65acdd78b0
Use xtask to generate the headers instead of build.rs of each lib
...
Fixes #14
2020-08-27 11:50:09 +02:00
Olivier Goffart
58cdaeb8dd
Update license header to mention that commertial option are available
2020-08-26 13:23:42 +02:00
Simon Hausmann
66dce1a1bc
Don't build the nodejs API when running tests
...
Assume that it is already build and pick up the library in the same directory where we pick
up the C++ libraries.
2020-08-25 14:01:57 +02:00
Olivier Goffart
ea1f215367
Some polishinbg of the .toml files
...
- Give all the sixtyfps-* create a 0.0.1 version
- Make sure that the internal dependences are using the exact same version
(so "=0.0.1")
- Add the description/homepage/repository fields in the .toml files
- Set publish=false to crates that are not meant to be published on crates.io
2020-08-24 16:28:11 +02:00
Simon Hausmann
7f1d9f5252
Commit correct license tags to Cargo.toml
...
For now that's GPL-3.0 only, but this can be changed :-)
2020-08-18 10:12:59 +02:00
Simon Hausmann
2823f32692
Apply license headers to all non-binary/non-json sources
2020-08-17 17:55:20 +02:00
Simon Hausmann
09cae799d3
Fix return type of compile_syntax_node
...
All call sites are only interested in the root component, so might
as well return that.
2020-07-28 09:21:32 +02:00
Olivier Goffart
05c5f7c53d
Test and fix animations on properties
...
The animation should not start when the property is initialized, only when the
property is set by the setter
2020-07-23 11:45:34 +02:00
Simon Hausmann
da85889c74
Make sure to re-run tests if an external include path changed
2020-07-19 18:36:36 +02:00
Simon Hausmann
cb081a6bda
Test that loading types from the include path works
...
This uses the recently added "hooks" or APIs to pass an include path that's specified in the test case itself.
2020-07-19 18:31:10 +02:00