Add live syncback functionality and optimize service encoding

- Introduced a new endpoint `/api/syncback` for one-click full sync from Roblox Studio to the filesystem, eliminating the need for an active WebSocket connection.
- Implemented `SyncbackRequest` and `ServiceChunk` structures to handle service-level properties and child instances during syncback.
- Enhanced `encodeService` to include ObjectValue carriers for accurate reference handling and prevent data loss.
- Updated the syncback process to utilize Luau-style relative paths for reference attributes, improving path management and consistency.
- Integrated session caching in the matching algorithm to optimize performance during syncback operations.

These changes significantly improve the live syncback experience, ensuring reliable data synchronization and enhanced performance during development.
This commit is contained in:
Joe 2026-02-18 22:34:52 -06:00
parent 7f4b5c4941
commit b47eef1173
165 changed files with 5205 additions and 206 deletions

View file

@ -0,0 +1,21 @@
# RFCs
{% assign sortedPages = site.pages | sort: 'title' %}
Luau uses RFCs to discuss and document the language evolution process. They are hosted [in a GitHub repository](https://github.com/luau-lang/rfcs) which accepts pull requests for corrections to existing RFCs as well as new RFCs.
If you'd like to submit a benign (grammatical, stylistic) correction, please open a pull request; all RFCs are in [docs folder in the repository](https://github.com/luau-lang/rfcs/tree/master/docs).
If you'd like to submit a new RFC, please [read our guidelines first](https://github.com/luau-lang/rfcs/blob/master/README.md); RFCs often require a significant amount of design effort and precision to be considered.
Note that if you'd like to submit a substantial change to an existing RFC that is already implemented according to its Status field, you would need to submit a new amendment RFC instead of editing an existing one.
<ul>
{% for page in sortedPages %}
{% assign ext = page.name | split:'.' | last %}
{% if ext == 'md' and page.name != 'index.md' %}
<li>
<a href="{{ page.url }}">{{ page.title }}</a>
</li>
{% endif %}
{% endfor %}