Commit graph

1037 commits

Author SHA1 Message Date
Arseny Kapoulkine
6558c271dd
Create SECURITY.md
Fixes #197.
2021-11-15 12:04:26 -08:00
ThePotato
d11e8277c2
Fixes IFTODT error while compiling from an android device (#199)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-11-12 06:58:34 -08:00
Arseny Kapoulkine
b7d26b371a
Use -Werror in CI only (#201)
We keep getting compat reports for warnings in various compiler
versions. While we can keep merging PRs to resolve these warnings, it
would be nice if the users of other compilers or compiler versions weren't
blocked on us fixing this.

As such, this change disables Werror by default and only enables it when
requested, which happens in CI in test builds.
2021-11-12 06:56:25 -08:00
Arseny Kapoulkine
70ffc8a01d
RFC: Do not allow method call on string literals (#145) 2021-11-12 06:54:00 -08:00
Arseny Kapoulkine
d47b2f1dfe
Sync to upstream/release/504 (#200)
- Type mismatch errors now show detailed information for compound types, highlighting the mismatching component
- Fix string.pack bug on ARM when packing negative numbers using unsigned formats
- Implement bit32.countlz/countrz (RFC RFC: bit32.countlz/countrz #89)
- Minor compiler throughput optimization (~2% faster compilation)
- Improve transpiler behavior for edge cases and better test coverage (not exposed through CLI at the moment)
- Improve error recovery when parsing invalid assignments
- Build fixes for fuzzing targets
2021-11-12 06:27:34 -08:00
Arseny Kapoulkine
3c3541aba8 Add a comment 2021-11-11 20:36:53 -08:00
Arseny Kapoulkine
863d3ff6ff Attempt to work around non-sensical error 2021-11-11 19:42:50 -08:00
Arseny Kapoulkine
8fe0dc0b6d Fix build 2021-11-11 18:23:34 -08:00
Arseny Kapoulkine
8db1b03acc Merge branch 'upstream' into merge 2021-11-11 18:23:03 -08:00
Arseny Kapoulkine
ce0bbdda59 Merge branch 'master' into merge 2021-11-11 18:21:14 -08:00
Arseny Kapoulkine
82d74e6f73 Sync to upstream/release/504 2021-11-11 18:12:39 -08:00
LoganDark
a6a2b86c9b
Fix build on Clang 12 by removing unused variables (#195) 2021-11-11 06:29:59 -08:00
dcope-rbx
68fb2bdfde
Addressed typecasting documentation feedback (#192) 2021-11-10 11:53:43 -08:00
dcope-rbx
4957812b62
Added documentation related to typecasting (#191) 2021-11-10 09:26:20 -08:00
Pelanyo Kamara
aec8fbfd0f
Feature: Web REPL using Emscripten (#138)
Currently doesn't include the new page into navigation since we aren't building the .js files anywhere.
2021-11-10 08:40:46 -08:00
LoganDark
d6b3346f58
move static_assert from ltable.h to ltable.cpp (#189) 2021-11-09 17:02:46 -08:00
Arseny Kapoulkine
f3468be92b Small follow code cleanup for Repl.cpp 2021-11-09 15:11:52 -08:00
NotDSF
3ba0bdf708
Save bytecode to file through CLI (#170)
Using --compile=binary it's now possible to produce binary bytecode so that it can be compiled offline and loaded into the VM.
2021-11-09 14:54:53 -08:00
Arseny Kapoulkine
fe1bf43b54
RFC: bit32.countlz/countrz (#89)
Co-authored-by: vegorov-rbx <75688451+vegorov-rbx@users.noreply.github.com>
2021-11-09 10:40:14 -08:00
LoganDark
9523670e63
Remove Roblox-specific mutable globals (#185)
Instead the code that calls the compiler needs to use Compiler::mutableGlobals to disable GETIMPORT optimization.
2021-11-09 07:06:25 -08:00
LoganDark
773fb5bd6f
Don't allow registry to be set to readonly (#184) 2021-11-08 15:30:51 -08:00
Arseny Kapoulkine
7816f2596f
Update config.yml
Rename "help and support" to "questions"
2021-11-08 15:01:57 -08:00
LoganDark
7ca09ec100
Fix lbuiltins.cpp comment (#180) 2021-11-08 11:09:30 -08:00
LoganDark
f1649a43cd
Add userdata to lua_Callbacks (#168) 2021-11-08 08:26:03 -08:00
Arseny Kapoulkine
46244d2ea7
Update getting-started.md
Update file extension from .lua to .luau

Contributes to #97
2021-11-07 23:21:34 -08:00
ThePotato
f27580c74b
Fix linux typo in README.md "Linus" to "Linux" (#174) 2021-11-07 23:19:28 -08:00
Arseny Kapoulkine
16753a78f4
Update navigation.yml
Add GitHub link to top bar
2021-11-07 08:07:57 -08:00
Arseny Kapoulkine
c6de3bd2e4
Update sandbox.md
Remove section on thread identity: this is not part of open-source Luau and as such is now confusing.
2021-11-05 19:50:29 -07:00
Rerumu
96b1707f87
Fix CLI analysis reporting wrong file names (#146) 2021-11-05 19:11:56 -07:00
Roni N. (Kittenz)
1e1d1f58e9
Look for .luau before .lua in REPL & Analyze (#97) (#124)
As discussed in the issue, Luau has evolved from Lua to the point
where a new default extension `.luau` would be needed.

This change makes the REPL and Analyze look for `.luau`
extension first and if not found, fall back to `.lua`.
2021-11-05 19:11:26 -07:00
Rerumu
6342913533
Fix small assert ordering (#143) 2021-11-05 14:38:08 -07:00
bmcq-0
ad9b47b72f
Fold length operations when argument is a constant string (#141)
Co-authored-by: Arseny Kapoulkine <arseny.kapoulkine@gmail.com>
2021-11-05 13:24:30 -07:00
Arseny Kapoulkine
a80fc93646
Fix unused variable treatment (#139)
Right now our CMake infra specifies -Wno-unused only for GCC builds, but Makefile specifies it for all builds.
The intent has been to use it just for GCC, so we now do that by detecting the compiler version - this should
equalize the behavior across different types of builds.

Separately, latest version of clang appears to expose an unused variable that clang-10 was okay with, so fix that. (change from upstream)
2021-11-05 12:39:27 -07:00
Arseny Kapoulkine
aea1f6a718
Update README.md
Add `make` commandline as well.
2021-11-05 10:16:28 -07:00
Arseny Kapoulkine
279855df91
Sync to upstream/release/503 (#135)
- A series of major optimizations to type checking performance on complex
programs/types (up to two orders of magnitude speedup for programs
involving huge tagged unions)
- Fix a few issues encountered by UBSAN (and maybe fix s390x builds)
- Fix gcc-11 test builds
- Fix a rare corner case where luau_load wouldn't wake inactive threads
which could result in a use-after-free due to GC
- Fix CLI crash when error object that's not a string escapes to top level
- Fix Makefile suffixes on macOS

Co-authored-by: Rodactor <rodactor@roblox.com>
2021-11-05 08:47:21 -07:00
Arseny Kapoulkine
c0b95b8961
Update profile.md
Too much future.
2021-11-04 23:24:39 -07:00
Arseny Kapoulkine
22dd6b8e48 Merge branch 'upstream' into merge 2021-11-04 19:49:07 -07:00
Arseny Kapoulkine
3c4758f7bb Merge branch 'master' into merge 2021-11-04 19:47:46 -07:00
Arseny Kapoulkine
34cf695fbc Sync to upstream/release/503
- A series of major optimizations to type checking performance on complex
programs/types (up to two orders of magnitude speedup for programs
involving huge tagged unions)
- Fix a few issues encountered by UBSAN (and maybe fix s390x builds)
- Fix gcc-11 test builds
- Fix a rare corner case where luau_load wouldn't wake inactive threads
which could result in a use-after-free due to GC
- Fix CLI crash when error object that's not a string escapes to top level
2021-11-04 19:47:13 -07:00
Arseny Kapoulkine
49b0c59eec
Sync to upstream/release/502 (#134)
Changes:
- Support for time tracing for analysis/compiler (not currently exposed
  through CLI)
- Support for type pack arguments in type aliases (#83)
- Basic support for require(path) in luau-analyze
- Add a lint warning for table.move with 0 index as part of
  TableOperation lint
- Remove last STL dependency from Luau.VM
- Minor VS2022 performance tuning

Co-authored-by: Rodactor <rodactor@roblox.com>
2021-11-04 19:34:35 -07:00
Arseny Kapoulkine
5f7504c040 Merge branch 'upstream' into merge 2021-11-04 19:23:29 -07:00
Arseny Kapoulkine
08c66ef2e1 Sync to upstream/release/502
Changes:
- Support for time tracing for analysis/compiler (not currently exposed
  through CLI)
- Support for type pack arguments in type aliases (#83)
- Basic support for require(path) in luau-analyze
- Add a lint warning for table.move with 0 index as part of
  TableOperation lint
- Remove last STL dependency from Luau.VM
- Minor VS2022 performance tuning

Co-authored-by: Rodactor <rodactor@roblox.com>
2021-11-04 19:12:52 -07:00
Arseny Kapoulkine
adacdcdf4e
Update profile.md
Remove incorrect sentence copied from the incorrect internal documentation :)
2021-11-04 18:07:34 -07:00
Arseny Kapoulkine
dc509b9849
Update navigation.yml
Add profiling page to nav bar
2021-11-04 17:28:24 -07:00
Arseny Kapoulkine
7c76a5a70a
Create profile.md
Add profiler documentation.
2021-11-04 17:27:56 -07:00
Arseny Kapoulkine
e0c4f33217
Add chess-profile.lua 2021-11-04 17:22:04 -07:00
Arseny Kapoulkine
98fa75e911 Fix fallout from #114: T is the right thread to use 2021-11-04 10:09:25 -07:00
Josh Soref
278e848cc2
Spelling (#119)
Fixed various spelling errors.

Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2021-11-04 09:50:46 -05:00
Tommy Vadakumchery
57a42c4cb9
Fix HATRA '21 README.md formatting (#118)
A misplaced backtick was causing the last two codeblocks from displaying correctly.
2021-11-04 09:00:41 -05:00
Arseny Kapoulkine
3462a08d4a
Update CONTRIBUTING.md
Add a section on performance.
2021-11-03 22:08:23 -07:00