Comments (4)
Oops this wasn't supposed to close. We now have a change that allows us to build Repl with Emscripten. I'm going to take a look at integrating this change into the build process, and figure out how to best integrate it with the web site.
The current top two contenders are:
- Maybe it's feasible to fetch the GH release artifact, directly or using something like jsdelivr
- Maybe we should make an npm package and just publish new versions of that package; unpkg can be used after that to source the file.
from luau.
Sounds good! Let me know what the end decision is.
from luau.
We've tested this lightly and it seems like it should be possible to just load the script from releases, e.g.
<script src="https://github.com/Roblox/luau/releases/download/<TAG>/luau.js"></script>
We could hardcode the tag to latest
and make sure we move the tag with each release. Then we can simply upload build artifact with each release as we do with .zip archives for other artifacts.
This leaves the build setup. The only issue with the action that was in the earlier PR was the reliance on a third-party emsdk setup action. Is it possible to simply clone emsdk repository and run install & activate manually? (and maybe use GHA cache to speed this up, although maybe it's already pretty fast?)
from luau.
Oh, I should say that I don't know OTOH if the setup above works with .wasm but Emscripten has an option to embed ,wasm into .js so I'm assuming we could use that, which would also make it easier for us as it's just a single file we need to upload with releases.
from luau.
Related Issues (20)
- `and` `or` expression causes type pack error with new type solver's strict mode
- `table.freeze` returns type `{+ +}` with new solver's strict mode HOT 1
- failed assert in script file crashes repl HOT 1
- Stack overflow in parser HOT 3
- `buffer` library `TypeError` when buffer is function parameter with new solver's non-strict mode
- Cyclic union with upvalue not reducing `TypeError` with new solver's strict mode
- TypeError: Type pack '...any' could not be converted into 'a...' in new solver's strict mode
- Comment in lgc.h wrongly describes the GC invariant? HOT 1
- Test doesn't do what it says it does HOT 2
- TypeError when indexing table with union/intersection type of identical types
- Variables pack not inferred correctly for `__iter` metamethod
- Add type checking to `Luau.Web.js`
- Incorrect type widening with multiple arguments to generic `T` with new solver HOT 4
- String keys are not checked against table indexer
- Cannot cast into union with literal with new solver's strict mode
- Type refinement rememberance for statically labeled variables assigned to Engine API.
- `luacode.h` uses code not valid in C HOT 2
- Unassigned Generic Types break types unification in new type solver
- "Free Types and {- -}" causes the "autocomplete type and owning area MainModule" to be appended in the old type solver, and don't work in the new type solver HOT 1
- Unable to Table Assign and Locally Assign Variables at the Same Time While Unpacking HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from luau.