Commit graph

78 commits

Author SHA1 Message Date
Joe
f08a4d21e7 Update file extensions from .lua to .luau and adjust README for glob ignore tests
- Changed return statements in `init.client.lua` and `init.lua` files to reflect the new .luau extension.
- Updated README in `ignore_glob_spec` to specify that glob ignores now work with .spec.luau files instead of .spec.lua.
- Modified various test files to transition from .json to .json5 format, ensuring consistency across project configurations.
2026-01-30 09:19:35 -06:00
Joe
84f76d48fc Add project configuration and test files in JSON5 format
- Introduced new configuration files for testing, including `default.project.json5`, `client_in_folder`, and others.
- Updated existing project files to use JSON5 format, ensuring consistency across configurations.
- Added new Lua scripts and model files to support various test cases.
- Adjusted snapshot files to align with the new project structure and properties.
2026-01-30 09:16:46 -06:00
Joe
8ede87e1cf Update dependencies and improve CLI argument handling
- Updated various dependencies in Cargo.toml and Cargo.lock, including `env_logger`, `fs-err`, and `clap`, to their latest versions for enhanced functionality and security.
- Refactored CLI argument handling in `build.rs` and `mod.rs` to align with the new `clap` version, improving error reporting and verbosity options.
- Added new packages such as `anstream`, `colorchoice`, and `jiff` to enhance project capabilities.
2026-01-30 05:22:39 -06:00
Joe
7c6c4a0e85 Refactor path handling in sourcemap processing
- Canonicalized project directory once for consistent comparison, improving the logic for generating relative paths.
- Enhanced fallback mechanism for absolute paths when files are outside the project directory, increasing robustness in path management.
2026-01-23 04:36:30 -06:00
Joe
4a6fdaa02d Improve path handling in sourcemap processing
- Enhanced the logic for creating output file paths by attempting to generate relative paths from the project directory.
- Added a fallback to absolute paths for files outside the project directory, improving robustness in path management.
2026-01-22 23:05:39 -06:00
Joe
9abc0e4728 Switch from JSON5 to standard JSON for sourcemaps to ensure compatibility with external tools like LSPs 2026-01-22 22:50:57 -06:00
Joe
fdd1d145cf json5 work 2026-01-22 22:19:00 -06:00
Micah
a99e877b7c
Actually skip .gitignore if --skip-git is passed to init (#1172) 2025-11-26 13:59:12 -08:00
Ken Loeffler
93e9c51204
Fix rojo plugin install by adding Vfs::exists (#1169) 2025-11-21 07:04:34 -08:00
Micah
9b5a07191b
Implement Syncback to support converting Roblox files to a Rojo project (#937)
This is a very large commit.
Consider checking the linked PR for more information.
2025-11-19 09:21:33 -08:00
Micah
f3c423d77d
Fix the various lints (#1124) 2025-10-10 13:00:56 -07:00
Micah
beb497878b
Add flag for skipping git initialization to init command (#1122) 2025-10-07 17:12:22 -07:00
Micah
6ea95d487c
Refactor init command (#1117) 2025-09-30 14:38:38 -07:00
ffrostfall
2ddb21ec5f
Add option for emitting absolute paths to rojo sourcemap (#1092)
Co-authored-by: Micah <micah@uplift.games>
2025-08-04 11:33:35 -07:00
Micah
9598553e5d
Normalize paths in sourcemap generation (#1085) 2025-07-31 09:19:57 -07:00
Micah
833320de64
Update rbx-dom (#1023) 2025-04-02 11:32:27 -07:00
Micah
5ca1573e2e
Correct mistake in build command docs (#977) 2024-10-18 14:08:58 -07:00
Micah
c9ce996626
Update workflow and tooling versions (#910) 2024-09-03 15:36:36 -07:00
Micah
3ca975d81d
Correct issue with default.project.json files with no name being named default after change (#917)
Co-authored-by: Kenneth Loeffler <kenloef@gmail.com>
2024-07-15 09:24:51 -07:00
Micah
c0a96e3811
Release v7.4.0 (#837) 2024-01-16 12:12:40 -08:00
Barış
269272983b
Changed file extensions of init command from lua to luau (#831) 2024-01-05 16:00:49 -08:00
Filip Tibell
e897f524dc
Skip sourcemap generation when unaffected by changes in watch mode (#800) 2023-10-13 08:38:21 -07:00
Micah
eab7c607cd
Don't include package author in CLI help (#793)
LPG is at the moment listed by name and email in the `help` for Rojo. We
should probably remove that before cutting a new release.
2023-10-03 10:22:47 -04:00
Micah
e11ad476fc
Use conflicts_with for build flags (#779) 2023-09-11 13:32:43 -07:00
Micah
f6fc5599c0
Add plugin template (#738)
Adds a new plugin template to the `init` command: `rojo init --kind
plugin`.
2023-07-23 17:12:48 -07:00
Micah
dc17a185ca
Add plugin build flag (#735)
Resolves #715.
2023-07-17 19:15:40 -07:00
Kenneth Loeffler
b7a1f82f56
Fix cli clippy lints (#681)
The second in a series of PRs that aim to get CI passing
2023-06-30 11:03:37 -07:00
Filip Tibell
305423b856
Sourcemap performance improvements (#668)
This PR brings two performance improvements to the `rojo sourcemap`
command:

- Use `rayon` with a small threadpool to parallelize sourcemap
generation while still keeping startup cost very low
- Remove conversions to owned strings and use lifetimes tied to the dom
instead, which mostly improves performance with the
`--include-non-scripts` flag enabled

From my personal testing on an M1 mac this decreases the sourcemap
generation time of our games by 2x or more, from ~20ms to ~8ms on one
project and ~30ms to ~15ms on another. Generation is pretty fast to
begin with but since sourcemaps are heavily used in interactive tools
(like luau-lsp) a difference of a couple frames can be great for ux.
2023-05-06 01:01:15 -07:00
JohnnyMorganz
2a6a8b42a6
Add --watch to sourcemap generation (#602)
* Implement watch argument

* Add forget call

* Clippy fixes

* Update changelog
2022-08-01 04:07:07 -04:00
wackbyte
411d1a89c1
Really default to the current directory in 'rojo fmt-project' (#581)
Co-authored-by: Lucien Greathouse <me@lpghatguy.com>
2022-07-18 19:47:30 -04:00
Watermelon
04fa5e2719
Added address reference to CLI output (#556)
* Added address reference to CLI output

* Stored loopback check address as a variable

* Changed other loopback references to the new variable

* Fixed mistake on address_string variable

* Merge write calls

Co-authored-by: Lucien Greathouse <me@lpghatguy.com>
2022-06-29 19:04:28 -04:00
Lucien Greathouse
10341e3776
Major Performance Improvements (#548)
* Use WeakDom::into_raw for faster snapshot generation from models

* Make compute_patch_set take snapshots by value

* Stop deferring property application in apply_patch_set

* Use InstanceBuilder::empty to avoid extra name allocations

* Git dependencies, skip dropping ServeSession

* Use std::mem::forget instead of ManuallyDrop

* Switch to latest rbx-dom crates.io dependencies

* Update other dependencies
2022-06-05 17:47:31 -04:00
Lucien Greathouse
7aa7a35aa5 Add profiling info and optional profiling with Tracy 2022-05-27 03:08:54 -04:00
Lucien Greathouse
c7aeffe586 Switch from structopt to clap 2022-05-26 04:19:51 -04:00
Filip Tibell
3cef2fe9aa
Fix sourcemap command not stripping paths correctly (#544)
* Fix sourcemap command not stripping paths correctly

* Use ServeSession to get the proper root dir to strip for sourcemap
2022-05-23 15:19:30 -04:00
Lucien Greathouse
eaac539087 Update to reqwest 0.11.10 2022-05-22 19:16:43 -04:00
Filip Tibell
256aba4bc1
Implement sourcemap CLI command (#530)
* Initial implementation of sourcemap CLI command

* Update src/cli/sourcemap.rs

Co-authored-by: JohnnyMorganz <johnnymorganz@outlook.com>

* Update src/cli/sourcemap.rs

Co-authored-by: JohnnyMorganz <johnnymorganz@outlook.com>

* Tidy up sourcemap command

* Update CHANGELOG

Co-authored-by: JohnnyMorganz <johnnymorganz@outlook.com>
Co-authored-by: Lucien Greathouse <me@lpghatguy.com>
2022-04-19 17:45:29 -04:00
Ashton Miller
49f8845105
Add ability to specify address in default.project.json (#507)
* Allow for setting the default port in project json

set as
```json
"serveAddress": "0.0.0.0"
```

* Update CHANGELOG.md

* cargo fmt

Co-authored-by: Lucien Greathouse <me@lpghatguy.com>
2022-04-19 16:54:03 -04:00
Ashton Miller
12370846b4
Support the new Open Cloud API (#504)
* Add support for the new Open Cloud API

* Cleanup Open Cloud variables

* Avoid cloning buffer for do_upload_open_cloud

* Satisfy cargo fmt

* Actually correct cargo fmt

Apparently my earlier fix did not fix everything.

* Update CHANGELOG.md

* Update CHANGELOG.md

Forgot to add the link to issue #486 in the previous commit :/

* Cleanup & improve code for open cloud api

* Commit to force GH Actions to run (?)

Co-authored-by: Lucien Greathouse <me@lpghatguy.com>
2022-04-19 16:02:40 -04:00
Lucien Greathouse
5d62bf9b60
Upgrade to Tokio 1.x, futures 0.3, Hyper 0.14, etc (#459)
* Upgrade dependencies, oneshot channel ref

* New service style?

* Fix warning

* A server is running again

* Working server with async blocks

* UI working again

* Finish upgrade

* Bump MSRV to 1.46.0 for if/match in const fn

* Update the README as part of this
2021-07-28 12:29:46 -04:00
Lucien Greathouse
672d207961 Update to stable rbx-dom libraries 2021-06-29 01:20:09 -04:00
Lucien Greathouse
d0482a004e Modernize upload command 2021-06-08 21:53:56 -04:00
Lucien Greathouse
561a3e3256 Modernize serve subcommand 2021-06-08 17:05:55 -04:00
Lucien Greathouse
158dac5e1c Move subcommand branching into Options struct 2021-06-08 16:53:03 -04:00
Lucien Greathouse
1413f8c0b6 Tidy up build command further 2021-06-08 16:50:21 -04:00
Lucien Greathouse
ffb2aa332a Modernize build subcommand 2021-06-08 16:48:20 -04:00
Lucien Greathouse
45e8208e9c Improve CLI help text 2021-06-08 15:37:59 -04:00
Lucien Greathouse
7f230a8bf4 Modernize the plugin subcommand 2021-05-21 13:09:07 -04:00
Lucien Greathouse
afe26b8c16 Modernize the doc subcommand 2021-05-21 12:45:07 -04:00
Lucien Greathouse
d153f62b8a Modernize the init subcommand 2021-05-20 17:34:45 -04:00