Lucien Greathouse
8bf59e5cbb
Release v7.0.0-alpha.1
2021-02-19 00:29:59 -05:00
Lucien Greathouse
8f71d13714
Remove unused CFrame constructor alias
2021-02-19 00:03:08 -05:00
Lucien Greathouse
f4a790eb50
Change rojo upload to upload binary files
2021-02-18 23:48:22 -05:00
Lucien Greathouse
0d951c8ad1
Update to latest rbx_dom_lua
2021-02-18 23:41:14 -05:00
Lucien Greathouse
59ef5f05ea
Upgrade to rbx_dom_weak 2.0 ( #377 )
...
* Mostly mechanical port bits
* Almost there
* It builds again!
* Turn on all the code again
* Tests compiling but not passing
* Stub work for value resolution
* Implement resolution minus enums and derived properties
* Implement property descriptor resolution
* Update referent snapshots
* Update unions test project
Using a place file instead of a model yields better
error messages in Roblox Studio.
* Add easy shortcut to testing with local rbx-dom
* Update rbx-dom
* Add enum resolution
* Update init.meta.json to use UnresolvedValue
* Expand value resolution support, add test
* Filter SharedString values from web API
* Add 'property' builder method to InstanceSnapshot
* Change InstanceSnapshot/InstanceBuilder boundary
* Fix remove_file crash
* rustfmt
* Update to latest rbx_dom_lua
* Update dependencies, including rbx_dom_weak
* Update to latest rbx-dom
* Update dependencies
* Update rbx-dom, fixing more bugs
* Remove experimental warning on binary place builds
* Remove unused imports
2021-02-18 20:56:09 -05:00
Lucien Greathouse
b84aab0960
Release v6.0.2
2021-02-09 11:45:58 -05:00
Lucien Greathouse
0e89b91c38
Implement CSRF challenge support in upload
2021-02-09 11:36:59 -05:00
Lucien Greathouse
7888a704e1
Release 6.0.1
2021-01-22 13:47:39 -07:00
Lucien Greathouse
804fd3de8e
Remove Requester header to handle API change
2021-01-22 13:41:55 -07:00
Lucien Greathouse
4992c36f08
Delete ErrorDisplay, use anyhow instead!
2021-01-18 14:54:12 -07:00
Lucien Greathouse
27af0c841b
Release 6.0.0
2021-01-16 18:35:27 -07:00
Lucien Greathouse
cc4f4df4f9
Support changing ClassName in Reconciler.diff
2021-01-16 18:26:30 -07:00
Lucien Greathouse
5989ab3b85
Add project to test that plugin skips unwritable properties
2021-01-16 15:34:59 -07:00
Lucien Greathouse
040b9c1452
Delete accidentally committed test bash script
2021-01-14 11:55:24 -07:00
Lucien Greathouse
bb7bd2e27e
plugin: Update reflection database
2021-01-13 23:31:57 -07:00
tacheometry
02dbd4ba75
fix hyphen ( #378 )
...
This uses an em dash instead of double lines (--)
2021-01-06 13:49:05 -07:00
Lucien Greathouse
3b149cc875
Drop SnapshotError in favor of anyhow::Error
2020-12-18 12:16:05 -08:00
Lucien Greathouse
f3745c68d2
Turn rbxm/rbxmx errors into error variants
2020-12-18 11:39:41 -08:00
Lucien Greathouse
eddbe7d0cf
Release 6.0.0-rc.4
2020-12-14 14:15:09 -08:00
Lucien Greathouse
faf86d006a
Remove outdated warning from Rojo 0.5.0 alpha 14
2020-12-14 13:16:34 -08:00
Lucien Greathouse
71e4dfeb14
Change logo to be brand color on dark theme
2020-12-14 12:59:53 -08:00
Lucien Greathouse
da8ed6ddf9
Update Changelog
2020-12-14 11:22:43 -08:00
Lucien Greathouse
503e687c55
Fix repository link
2020-12-14 11:20:28 -08:00
Lucien Greathouse
dd667cce0b
Add images from plugin rewrite
2020-12-14 11:20:07 -08:00
Lucien Greathouse
f911009752
Remove clibrojo, as it's broken
2020-12-14 11:13:44 -08:00
Reselim
cae4c46669
New UI ( #367 )
...
* Add Flipper
* Remove old UI
* Add boilerplate UI
* Change plugin version
* Merge upstream
* Bunch of new UI changes
Too lazy to list them all in individual commits
* Touch ripple for buttons and a few other things
* Make the close button on the PluginGui work
* Set button state to guiEnabled
* Implement Connecting, NotConnected; add Header; don't update plugin button on render
* Replace mapLerpColor with mapLerp
* Update blendAlpha to be 0 without any values
* Add ActionFillTransparency to Theme.Button
* Suffix all Theme entries
* Update Flipper
* Add disconnect button
* Remove cancel button
* Add settings page
* Add scrollbar and dark theme support to settings
* Include settings in startSession
* Set context default value to nil
I always thought this was the name, lol...
* Add Error page
* Fix preloadAssets
* Fix preloadAssets import
* Update checkbox colors a little
* Add setting descriptions
* Fix scrolling frame in settings panel
* Remove .vscode
* Rename Throbber to Spinner
* Update merge
* Move Spinner images to assets
* Change casing of directories
* Remove old directories
* Add comments to getDerivedStateFromProps
* Account for offset in host TextBox size
* Turn width variables into constants
* Attempt to fix the comments
* Add a missing comma in Settings
* Remove a double space
* Remove Dummy object
* Move most of the Studio logic out of render
* Don't truncate port input
* Replace merge with Dictionary.merge
* Replace "Got it!" with "Okay"
* Add projectName to setStatus call
* Add Flipper to build.rs
2020-12-14 11:07:39 -08:00
Lucien Greathouse
a937fc38db
Update Changelog
2020-12-14 10:22:45 -08:00
Lucien Greathouse
ff43ffce07
Update to insta 1.3.0
2020-12-14 10:22:40 -08:00
Lucien Greathouse
5bb3dc258a
Add projectName to serve output
2020-12-14 10:17:52 -08:00
Lucien Greathouse
98238e4516
Fix longstanding message_queue warning
2020-12-14 10:12:51 -08:00
Lucien Greathouse
23b8308282
Fix lockfile not being updated for 6.0.0-rc.3
2020-11-19 11:50:06 -08:00
Lucien Greathouse
a1f7cdc2b6
Release 6.0.0-rc.3
2020-11-19 11:47:07 -08:00
Lucien Greathouse
dcb30351c5
Fix null referent handling
2020-11-19 11:44:53 -08:00
Lucien Greathouse
1c0dc60071
Update CHANGELOG
2020-11-19 11:31:46 -08:00
Lucien Greathouse
0401c3ac0e
Mark HttpEnabled as not scriptable as well
2020-11-19 11:20:30 -08:00
Lucien Greathouse
3b800d1cd7
Patch ReflectionDatabase to turn off SourceAssetId
2020-11-19 11:06:03 -08:00
Lucien Greathouse
35efb464e5
Fix incorrect tag in CHANGELOG
2020-11-19 10:33:09 -08:00
Lucien Greathouse
19a955a327
Release memofs 0.1.3
2020-11-19 10:26:37 -08:00
Lucien Greathouse
836b18e68a
Release 6.0.0-rc.2
2020-11-19 10:25:25 -08:00
Lucien Greathouse
046dc0d598
plugin: Fix grammar in comments a bit :)
2020-11-16 11:49:30 -08:00
Lucien Greathouse
039d92ce78
plugin: Support ClassName changes in applyPatch
2020-11-16 11:44:56 -08:00
Lucien Greathouse
2136da15d6
plugin: Ensure InstanceMap deletes existing entries before inserting
2020-11-16 11:44:39 -08:00
Lucien Greathouse
e5041d80ef
plugin: Fix warning in applyPatch.lua
2020-11-11 17:11:34 -08:00
Lucien Greathouse
f66860bdfe
Break apart plugin reconciler ( #332 )
...
* Start splitting apart reconciler, with tests
* Reify children in reify
* Baseline hydrate implementation
* Remove debug print
* Scaffold out diff implementation, just supporting name changes
* invariant -> error in decodeValue
* Flesh out diff and add getProperty
* Clear out top-level reconciler interface, start updating code that touches it
* Address review feedback
* Add (experimental) Selene configuration
* Add emptiness checks to PatchSet, remove unimplement invert method
* Improve descendant destruction behavior in InstanceMap
* Track instanceId on all reify errors
* Base implementation of applyPatch, returning partial patches on failure
* Change reify to accept InstanceMap and insert instances into it
* Start testing applyPatch for removals
* Add test for applyPatch adding instances successfully and not
* Add , which is just error with formatting
* Correctly use new diff and applyPatch APIs
* Improve applyPatch logging and fix field name typo
* Better debug output when reify fails
* Print out unapplied patch in debug mode
* Don't write properties if their values are not different.
This was exposed trying to sync the Rojo plugin, which
has a gigantic ModuleScript in it with the reflection
database. This workaround was present in some form in
many versions of Rojo, and I guess we still need it.
This time, I actually documented why it's here so that
I don't forget for the umpteenth time...
* Add placeholder test that needs to happen still
* Introduce easier plugin testing, write applyPatch properties test
* Delete legacy get/setCanonicalProperty files
* Fix trying to remove numbers instead of instances
* Change applyPatch to return partial patches instead of binary success
* Work towards being able to decode and apply refs
* Add helpers for PatchSet assertions
* Apply refs in reify, test all cases
* Improve diagnostics when patches fail to apply
* Stop logging when destroying untracked instances, it's ok
* Remove read before setting property in applyPatch
* Fix diff thinking all properties are changed
2020-11-11 16:30:23 -08:00
Lucien Greathouse
50f0a2bd2e
Update CLI dependencies
2020-10-29 10:36:20 -07:00
Lucien Greathouse
7cd9bd383e
Update to latest reflection database
2020-10-29 10:35:55 -07:00
Lucien Greathouse
45a20a1633
Remove outdated notices
2020-09-09 17:39:24 -07:00
Lucien Greathouse
ec5b3f80ef
Fix theme component error regression
2020-07-03 12:21:49 -07:00
Lucien Greathouse
3b257ea87a
Update repo references after Roblox move
2020-06-23 11:55:46 -07:00
Lucien Greathouse
6b82cead9c
Move from rojo-rbx org to Roblox org
2020-06-22 14:14:42 -07:00
cliffchapmanrbx
79ae4c52cd
Enable CLA bot ( #333 )
2020-06-22 14:11:53 -07:00
Lucien Greathouse
a4616cda7d
Fix test place's CharacterAutoLoads value
2020-06-20 22:16:35 -07:00
Lucien Greathouse
95648361be
Recreate test place, just running in Studio
2020-06-20 21:51:26 -07:00
Lucien Greathouse
0c41e9c10b
Depend on latest Rojo release from Rojo
2020-06-20 21:50:25 -07:00
Lucien Greathouse
61c7ef3cb0
plugin: lazily access settings() to help with testing
2020-06-20 21:50:14 -07:00
Lucien Greathouse
65898125d0
Update changelog
2020-06-17 23:14:24 -07:00
Lucien Greathouse
da05078ff3
Load project file from VFS instead of through fs.
...
Fixes #320 .
Previously, the root project file was loaded via methods on Project
(which do not know about the VFS) instead of through the VFS like
all other disk access.
This meant that Rojo was unable to build its own plugin because
there is no project file on the real disk, only in the VFS.
2020-06-17 23:13:29 -07:00
Lucien Greathouse
badb5c3636
Stop redundantly adding ignore paths when starting ServeSession
2020-06-17 22:54:35 -07:00
Lucien Greathouse
9453588ab1
Load built-in plugin from absolute path to make errors more apparent
2020-06-17 22:54:13 -07:00
Lucien Greathouse
4cbb3874a4
Use anyhow error reporting instead of custom
2020-06-17 14:56:09 -07:00
Lucien Greathouse
940aff7ef4
Enable globIgnorePaths by default
2020-06-17 14:42:46 -07:00
Lucien Greathouse
a3edb93273
Update Changelog
2020-06-17 14:38:39 -07:00
Lucien Greathouse
782b054b1a
Pass build watch argument into Vfs
2020-06-17 14:11:48 -07:00
Lucien Greathouse
fc27b2911e
Allow turning off file watching in memofs.
...
Also preemptively bumping version to 0.1.3 so I don't forget on next release
2020-06-17 14:06:44 -07:00
Lucien Greathouse
486b067567
Flatten snapshot middleware to be much simpler ( #324 )
...
* First take at flattening middleware for simpler code and better perf
* Undo debug prints
* Fix using wrong path in snapshot_from_vfs
* Disable some broken tests
* Re-enable (mistakenly?) disabled CSV test
* Fix some tests
* Update project file tests
* Fix benchmark
2020-06-17 13:47:09 -07:00
Lucien Greathouse
bdd1afea57
Run CI on master and PRs to master only
2020-05-20 15:30:44 -07:00
Lucien Greathouse
5ccd02939b
Replace rojo-test with regular tests folder again ( #323 )
...
* Replace rojo-test with regular tests folder again
* Bump MSRV to 1.43.1
2020-05-20 15:30:05 -07:00
Lucien Greathouse
ca5b8ab309
Restore improperly tested dependency on rojo from rojo-test
2020-05-20 11:56:34 -07:00
Lucien Greathouse
9481fdd38d
Add missing Cargo.lock change
2020-05-02 21:47:36 -07:00
Lucien Greathouse
56bf6d282b
Stop building Rojo in rojo-test, since it doesn't work as intended
2020-05-02 21:39:13 -07:00
Lucien Greathouse
5364c9c1bc
Fix Lua string escaping.
...
Closes #314 .
2020-04-16 12:00:02 -07:00
Lucien Greathouse
a4d4beeb97
Update default place template
2020-03-30 11:34:41 -07:00
Lucien Greathouse
30a01381be
Fix malformed CSV files causing crashes; fixes #310
2020-03-30 11:12:20 -07:00
Lucien Greathouse
def99a9e4d
Update release job to fix 6.0.0 release
2020-03-29 17:09:52 -07:00
Lucien Greathouse
1214fc8b0d
Release 6.0.0-rc.1
...
This change also includes some minor packaging changes in order to make Cargo happy.
2020-03-29 16:58:37 -07:00
Lucien Greathouse
5a5b1268d3
Update changelog
2020-03-29 16:03:58 -07:00
jeparlefrancais
6a1fffd1ce
Infer class name ( #210 )
...
* infer service names
* Update project code and add support for StarterPlayer
* Store parent_class in InstigatingSource
* Update snapshots
Co-authored-by: Lucien Greathouse <me@lpghatguy.com >
2020-03-29 16:03:15 -07:00
Lucien Greathouse
571ef3060a
Update Changelog
2020-03-29 13:46:27 -07:00
jeparlefrancais
3cf82e112f
Install plugin from CLI ( #304 )
...
* add install command
* cargo fmt
* filter spec files
* Update src/cli/plugin.rs
Co-Authored-By: Lucien Greathouse <me@lpghatguy.com >
* Update src/cli/plugin.rs
Co-Authored-By: Lucien Greathouse <me@lpghatguy.com >
* fix comments
* encode plugin with rbx_binary
* update build script
* refactor pathbuf error into io error
* fix rojo typo
* remove snafu
* Update `snapshot_from_fs_path`
* Print `rerun-if-changed` even for directories, in order to run the
build.rs script when files are added.
* Switch `filter_map` loop to a regular for loop. I like the FP-style
iterator stuff in Rust, but I think Result handling is easier in a
normal loop. Also, I don't believe the result of read_dir implements
`ExactSizedIterator`, so some of the wins of map+collect aren't there.
* Replace Result::unwrap with ? in build.rs
* Simplify error handling code in runtime
* Checkout with submodules
Co-authored-by: Lucien Greathouse <me@lpghatguy.com >
2020-03-29 13:41:54 -07:00
Lucien Greathouse
9b459c20d6
Fix GHA only running on pushes to master
2020-03-29 13:17:06 -07:00
Lucien Greathouse
5c85cd27c3
Fix default place project.
...
Closes #311 .
2020-03-29 12:21:55 -07:00
Lucien Greathouse
4bf73c7a8a
Implement support for turning .json files into Lua modules ( #308 )
...
* Stub implementation
* Flesh out feature and add tests. Other snapshots currently failing.
* Blacklist .meta.json in JSON handler
* Write to correct property (Source) instead of Value
* Update changelog
2020-03-28 00:36:01 -07:00
Lucien Greathouse
62e51b7535
Upgrade to latest rbx-dom
2020-03-27 23:58:31 -07:00
Lucien Greathouse
729a7f0053
Turn panics into errors in ServeSession
2020-03-26 12:16:55 -07:00
Lucien Greathouse
03c297190d
Make ServeSession::new fallible
2020-03-26 12:07:44 -07:00
Lucien Greathouse
9c790eddd7
Tidy up ServeSession now that trait bounds are gone
2020-03-26 12:06:16 -07:00
Lucien Greathouse
8ebe7e332b
Update Changelog
2020-03-25 17:02:32 -07:00
Lucien Greathouse
f43777e37e
Require a Rojo project again ( #307 )
2020-03-25 17:01:28 -07:00
Lucien Greathouse
691a8fcdeb
Upgrade lockfile using latest rustc
2020-03-25 16:15:21 -07:00
Lucien Greathouse
69c0e8d70e
Fix warnings
2020-03-21 17:49:56 -07:00
Lucien Greathouse
330c92c9a8
Refactor ChangeProcessor loop to get rid of panics
2020-03-21 17:47:25 -07:00
Lucien Greathouse
cf0ff60d31
plugin: Add simple signal implementation for future work
2020-03-18 23:31:22 -07:00
Lucien Greathouse
9e9cf5dd1f
plugin: Add support for pausing updates tracked by InstanceMap
2020-03-18 23:27:30 -07:00
Lucien Greathouse
5768d8e4a4
plugin: Miscellaneous cleanup
2020-03-18 23:15:03 -07:00
Lucien Greathouse
3b433e53be
Memofs v0.1.1
2020-03-18 18:35:44 -07:00
Lucien Greathouse
28ddf40344
memofs: Update fs-err and use it more
2020-03-18 18:06:58 -07:00
Lucien Greathouse
c1286db9c1
Update Changelog
2020-03-18 16:26:41 -07:00
Lucien Greathouse
f13940262e
Update CHANGELOG
2020-03-18 12:03:50 -07:00
Lucien Greathouse
9f0a6101b8
Add configurable color options
2020-03-18 12:03:07 -07:00
Lucien Greathouse
0b0fe01a7c
Tidy up root repository files
2020-03-18 11:40:12 -07:00
Lucien Greathouse
85e098d5c8
Update README
2020-03-18 11:36:50 -07:00
Lucien Greathouse
e8d1faf4e2
Update changelog
2020-03-18 10:43:42 -07:00
Lucien Greathouse
2a46df1110
Expose two-way sync.
...
- Convert plugin DevSettings flag to settings panel feature
- Remove server feature, always enable write API
2020-03-18 10:39:40 -07:00
Lucien Greathouse
1601e6d26e
Update changelog
2020-03-17 23:20:40 -07:00
Lucien Greathouse
0e4f6dea2b
plugin: Add setting for opening scripts externally
2020-03-17 23:20:05 -07:00
Lucien Greathouse
a2356773dc
Add checkbox and fill out settings panel
2020-03-17 23:14:32 -07:00
Lucien Greathouse
4a4da4737d
Fix plugin settings persistent
2020-03-17 23:03:59 -07:00
Lucien Greathouse
2cefd1bf2e
plugin: Add PluginSettings context item, render it in settings screen
2020-03-17 23:03:01 -07:00
Lucien Greathouse
c5ce15fe34
plugin: Add dummy settings panel
2020-03-17 22:38:53 -07:00
Lucien Greathouse
76dea568c9
Update changelog
2020-03-17 22:30:00 -07:00
Lucien Greathouse
8e81140eff
Increase verbosity of logging
2020-03-17 22:29:23 -07:00
Lucien Greathouse
d58e1f0792
Add logging when running rojo build
2020-03-17 22:28:38 -07:00
Lucien Greathouse
830c242751
plugin: Stop using codename in dev mode
2020-03-17 22:25:04 -07:00
Lucien Greathouse
91d45afd0f
Add plugin feature 'UnstableOpenScriptsExternally'
2020-03-17 18:13:52 -07:00
Lucien Greathouse
102c77b23e
Implement /api/open/{id} to open a script by ID in your default editor
2020-03-17 17:50:54 -07:00
Lucien Greathouse
aa4039a2e7
bye snafu
2020-03-16 23:37:00 -07:00
Lucien Greathouse
c065ded440
Tidy up SnapshotError a lot
2020-03-16 21:35:46 -07:00
Lucien Greathouse
f69096dadb
Use thiserror and anyhow for command-level error types
2020-03-16 21:13:38 -07:00
Lucien Greathouse
363f95ba14
memofs: Use fs_err instead of std::fs when possible
2020-03-16 20:35:58 -07:00
Lucien Greathouse
dcc15e8911
Refactor upload to use ServeSession and drop common_setup
2020-03-16 20:20:12 -07:00
Lucien Greathouse
bd13047b58
Release 0.6.0-alpha.3
2020-03-13 23:50:54 -07:00
Lucien Greathouse
1a83789c01
Update Changelog
2020-03-13 20:50:03 -07:00
Lucien Greathouse
1cbe272e19
Fix malformed meta files causing panics.
...
Fixes #280 .
2020-03-13 20:38:06 -07:00
Lucien Greathouse
6de74b41b3
Update snapshot error type and handle serde_json errors in JSON models
2020-03-13 20:31:31 -07:00
Lucien Greathouse
b0fc9ee507
Rename 'src/common' in default place template to 'src/shared'
2020-03-13 20:25:50 -07:00
Lucien Greathouse
a95ffe1d31
Add snapshot error handling to ChangeProcessor
2020-03-13 20:24:14 -07:00
Lucien Greathouse
4119a510f5
Fix broken error source tracking
2020-03-13 20:12:42 -07:00
Lucien Greathouse
cfa7f03815
Add help link to default model project
2020-03-13 20:11:08 -07:00
Lucien Greathouse
9b4c89820d
Fix extra Git output in rojo init and update place template
2020-03-13 20:10:31 -07:00
Lucien Greathouse
fe874720aa
Upgrade rojo init to create README.md and create Git repo
2020-03-13 20:00:48 -07:00
Lucien Greathouse
f7c0f33eb5
Add brand new rojo init command
2020-03-13 19:33:43 -07:00
Lucien Greathouse
c1bf9d9dfc
Update duplicate env_logger dep
2020-03-12 19:39:27 -07:00
Lucien Greathouse
255bf439d3
Add 'rojo doc' command
2020-03-12 16:02:19 -07:00
Lucien Greathouse
2a31937b81
Use CARGO_PKG_REPOSITORY instead of hard-coded URL
2020-03-12 15:48:30 -07:00
Lucien Greathouse
eb8964e1d1
Improve panic messaging and process behavior.
...
- Replaced main() to use custom panic hook
- Updated log formatting
- Switched to panic=abort, since we don't need to unwind now.
- Process will now abort if any thread panics.
2020-03-12 15:42:56 -07:00
Lucien Greathouse
fe0ca280a1
Update disabled CSV middleware test
2020-03-10 23:52:55 -07:00
Lucien Greathouse
e8e3b7b985
plugin: Fix dark theme when resized to be wide
2020-03-10 20:34:12 -07:00
Lucien Greathouse
c437507442
Update changelogs
2020-03-10 18:15:06 -07:00
Lucien Greathouse
ca151b434e
Update memofs dependency
2020-03-10 18:13:34 -07:00
Lucien Greathouse
10ba74c21e
memofs: Add description
2020-03-10 18:11:39 -07:00
Lucien Greathouse
6191b6371d
Update using cargo-readme
2020-03-10 18:09:04 -07:00
Lucien Greathouse
5be4175ac3
Rename vfs -> memofs across the codebase
2020-03-10 18:05:31 -07:00
Lucien Greathouse
f61f3671a6
Choose 'memofs' as the vfs name
2020-03-10 17:57:57 -07:00
Lucien Greathouse
477e0ada32
VFS in external crate ( #297 )
...
* vroom
* Port dir middleware
* Filter rules
* Directory metadata
* Project support
* Enable Lua support
* StringValue support
* CSV
* rbxm, rbxmx, and rbxlx
* JSON models
* Clean up some warnings
* Strip out PathMap
* Unwatch paths when they're reported as removed
* Fix 'rojo upload' behavior
* Upgrade to Insta 0.13.1
* Update dependencies
* Release 0.6.0-alpha.2
* Fix bad merge
* Replace MemoryBackend with InMemoryFs
* Sledgehammer tests into passing for now
* Txt middleware
* Update easy snapshot tests
* Lua tests
* Project middleware tests
* Try to fix test failures by sorting
* Port first set of serve session tests
* Add InMemoryFs::raise_event
* Finish porting serve session tests
* Remove UI code for introspecting VFS for now
* VFS docs
2020-03-10 17:38:49 -07:00
Lucien Greathouse
a884f693ae
Update changelog
2020-03-08 18:34:11 -07:00
Lucien Greathouse
3107b1b21b
Dynamic theming. Closes #241 .
...
Upgrades to Roact master and introduces dynamic theme switching.
We branch on the theme name in order to try to use Rojo's brand
colors instead of Studio's. I kind of winged it with these colors
and we might want to choose slightly nicer dark theme colors
in the future.
I also took the opportunity to reorganize the color naming scheme
since it didn't really work for dark theme.
2020-03-08 18:32:42 -07:00
Lucien Greathouse
04529de7b3
Update Changelog
2020-03-08 17:48:50 -07:00
Lucien Greathouse
199a39208c
Implement 'rojo build --watch' ( #284 )
...
* Refactor build command to reproduce model more easily
* Spawn ServeSession for building
2020-03-08 17:48:14 -07:00
Lucien Greathouse
0187da5f24
Release 0.6.0-alpha.2
2020-03-06 13:56:21 -08:00
Lucien Greathouse
2e1c37ffff
Update dependencies
2020-03-06 13:54:04 -08:00
Lucien Greathouse
4b0189dd55
Upgrade to Insta 0.13.1
2020-03-06 13:52:23 -08:00
Lucien Greathouse
d4a39674de
Fix 'rojo upload' behavior
2020-03-06 13:23:49 -08:00
Lucien Greathouse
07c6fd3711
Update docs repo link
2020-03-04 15:00:10 -08:00
Lucien Greathouse
cf5b72aa9a
Docs have moved to https://github.com/rojo-rbx/rojo.space
2020-02-27 22:57:06 -08:00
Lucien Greathouse
cdfbebd637
Update changelog for 0.5.4 release
2020-02-27 10:29:41 -08:00
Lucien Greathouse
e86e3316a9
Update changelog to include 0.5.x versions
2020-02-26 17:56:33 -08:00
Lucien Greathouse
bb2dcbaea0
vfs: Flesh out MemoryBackend
2020-02-21 23:52:11 -08:00
Lucien Greathouse
fefc7a69cd
vfs: Expand documentation
2020-02-21 23:34:56 -08:00
Lucien Greathouse
1b24cd36e0
vfs: Snapshots, roughly
2020-02-19 23:58:09 -08:00
Lucien Greathouse
6322c1f46d
vfs: Add stub MemoryBackend
2020-02-19 23:35:45 -08:00
Lucien Greathouse
00a29bb6be
Unwatch paths when they're reported as removed
2020-02-19 23:34:57 -08:00
Lucien Greathouse
3a029caf2b
Bump MSRV to 1.40.0
2020-02-19 23:22:51 -08:00
Lucien Greathouse
57263905e7
Add IoResultExt, fix mutability and Send-ness
2020-02-19 10:11:43 -08:00
Lucien Greathouse
4f46012c11
Complete an unfinished
2020-02-19 09:49:18 -08:00
Lucien Greathouse
7ea9a1e3e8
Expose metadata, remove_file, and remove_dir_all
2020-02-19 09:43:39 -08:00
Lucien Greathouse
c7510e12c4
Removal API
2020-02-19 09:39:49 -08:00
Lucien Greathouse
89b5d9294c
Event receiving/committing infrastructure
2020-02-19 09:36:38 -08:00
Lucien Greathouse
339e1060b7
Clean up Vfs methods that defer to VfsLock
2020-02-19 09:17:21 -08:00
Lucien Greathouse
52e1dbd846
Flesh out crate
2020-02-18 23:16:56 -08:00
Lucien Greathouse
b4963f4ff7
Watching
2020-02-18 22:42:31 -08:00
Lucien Greathouse
838e8f6bde
VFS crate
2020-02-18 22:30:12 -08:00
Lucien Greathouse
8f21514855
two-way-sync: Add super special case script syncing
2020-02-18 18:19:08 -08:00
Lucien Greathouse
44041f33e3
Start trying to sync parenting-to-nil (deleting)
2020-02-14 18:29:43 -08:00
Lucien Greathouse
5d9bc4473c
two-way-sync: Track Parent property for value objects
2020-02-14 18:25:54 -08:00
Lucien Greathouse
a3e0d42e86
two-way-sync: Handle deleting non-project node files.
...
This is the tiniest step towards this feature and not even
very useful, but an important proof of concept.
2020-02-14 18:24:03 -08:00
Lucien Greathouse
4a9c1d0d1b
two-way sync: allow changedProperties to be null to avoid array/object issues
2020-02-14 18:15:18 -08:00
Lucien Greathouse
ff47f79c62
Fix serverVersion in snapshots failing tests
2020-02-14 17:57:01 -08:00
Lucien Greathouse
f46a391873
Build releases on tag push instead of release creation
2020-01-22 10:20:37 -08:00
Lucien Greathouse
99b8ada42b
Release v0.6.0-alpha.1
2020-01-22 10:09:07 -08:00
Lucien Greathouse
f2227aa7cb
Use static OpenSSL for macOS binaries, too
2020-01-22 09:58:30 -08:00
Lucien Greathouse
a9f6c20113
Support Linux release binaries
2020-01-22 09:55:21 -08:00
Lucien Greathouse
e261e7a2c7
Implement glob ignores ( #272 )
...
* Add Glob wrapper type with better serialization
* Introduce PathIgnoreRule struct
* Implement equality for Glob type
* Add PathIgnoreRule to InstanceContext
* Implement glob ignores in directory middleware
* Fix up filters
* Use Iterator::all instead of loop
* Add project-level configuration for glob ignores
* Add test project for glob ignores
* Wire up project file and snapshots to make glob ignores work
* Better codepaths for adding ignore rules with empty iterators
* Add test for globs inherited from parent projects
* Add test details, support glob ignores in nested projects
* Add feature flag for globs
* Switch to use ExactSizeIterator instead of size_hint
* Remove glob visitor
2020-01-08 17:58:37 -08:00
Lucien Greathouse
ae811aafd0
Make ChangeProcessor abort gracefully on RecvError
2020-01-05 23:46:12 -08:00
Lucien Greathouse
cc593b465d
Delete unused plugin place project
2020-01-04 21:31:36 -08:00
Lucien Greathouse
f81e8339e3
Add 'homepage' and 'documentation' links to Cargo.toml
2019-12-20 16:52:56 -08:00
Lucien Greathouse
cdc5513726
Rename dev-live-assets feature to dev_live_assets
2019-12-20 14:26:08 -08:00
Lucien Greathouse
a398338c02
Two way sync V0 ( #282 )
...
* Unfinished two-way sync API
* In-memory two-way sync complete
* Move PatchSet application into ChangeProcessor thread, where it can be synchronous
* Stop InstanceMap's signals when a ServeSession terminates
* Apply patch in ChangeProcessor
* Feature flag
* Fix error in ChangeProcessor due to wrong drop order
2019-12-20 14:24:28 -08:00
Lucien Greathouse
26e2e81188
Refactor ChangeProcessor to be easier to follow
2019-12-19 17:41:35 -08:00
Lucien Greathouse
46d7bba87d
Add .rbxl.lock and .rbxlx.lock files to gitignore
2019-12-19 14:46:34 -08:00
Lucien Greathouse
57d5610a58
plugin: Improve HTTP error messages by using response body
2019-12-19 14:41:57 -08:00
Lucien Greathouse
1968e1fdb7
Fix bad formatting string in plugin HTTP module
2019-12-19 14:40:29 -08:00
Lucien Greathouse
f2584cf807
Fix live sync.
...
The refactor to use StructOpt instead of plain Clap had some absolute
vs relative path issues that slipped through. This commit adds getters
to each StructOpt struct that exposes an explicitly absolute version
of each path value.
2019-12-18 17:52:16 -08:00
Lucien Greathouse
dd592d1d6d
Break pathing everywhere (fix coming soon), fix verbosity argument
2019-12-18 17:44:47 -08:00
Lucien Greathouse
cfff08cdfd
Add plugin half of script-only, existing-instance-only, two way sync
2019-12-18 17:39:04 -08:00
Lucien Greathouse
e83437c193
Add debug formatter for instances
2019-12-18 17:38:31 -08:00
Lucien Greathouse
1d900a6a3c
Update benchmarks to use new CLI API
2019-12-18 15:56:24 -08:00
Lucien Greathouse
859c7bea8a
Update most dependencies
2019-12-18 15:52:47 -08:00
Lucien Greathouse
1b9e90e786
Port from Failure to Snafu ( #281 )
...
* Failure -> Snafu for build command
* Port skeletal remains of init to snafu
* failure -> snafu for serve
* failure -> snafu for upload, remove impl_from macro
* failure -> custom error in vfs
* Bye bye, failure
* Fix Rust 1.36 build regression
2019-12-18 15:44:46 -08:00
Lucien Greathouse
41396367ac
Tell Cargo to use Rojo's README.md
2019-12-17 13:59:59 -08:00
Lucien Greathouse
16c9a23d55
Shuffle around Rojo's public API
2019-12-17 13:58:46 -08:00
Lucien Greathouse
ce338a2a72
Remove impl_from macro from public API
2019-12-17 13:40:52 -08:00
Lucien Greathouse
1f7f2b22e7
Rewrite Project, remove SourceProject ( #274 )
...
* Rewrite project file to have relative paths and drop SourceProject
* Redo project error types
* Tidy up and document Project type
* Strip out init command
2019-12-12 14:45:15 -08:00
Lucien Greathouse
47c7f63d75
Switch everything to StructOpt ( #277 )
...
* Add types for Rojo's subcommands
* Flesh out CLI types
* Port everything to structopt instead of clap
2019-12-12 14:30:47 -08:00
Lucien Greathouse
8b1e85fbb4
Upgrade dependencies
2019-12-11 18:05:44 -08:00
Lucien Greathouse
ff4e9fb027
Stop overriding default-members in CI
2019-12-10 17:13:37 -08:00
Lucien Greathouse
d15ef40988
Upgrade dependencies correctly this time
2019-12-10 17:02:08 -08:00
Lucien Greathouse
eadfb18f74
Update rbx_xml and rbx_reflection
2019-12-10 13:39:55 -08:00
Lucien Greathouse
4b89bb087a
Attach context to instances produced by middleware ( #273 )
2019-12-04 11:38:28 -08:00
Lucien Greathouse
f0a602b48b
Revert "Remove some PartialEq derives"
...
This reverts commit fe10da9a6c .
2019-12-03 16:47:19 -08:00
Lucien Greathouse
fe10da9a6c
Remove some PartialEq derives
2019-12-03 16:34:46 -08:00
Lucien Greathouse
948303aac8
Remove InstanceSnapshotContext in favor of InstanceContext ( #271 )
...
* Drop plugin context on the floor
* Remove redirect from old context to new context
* Pass InstanceContext via & instead of &mut reference
* Re-use context value in ChangeProcessor from metadata
2019-12-03 16:11:51 -08:00
Lucien Greathouse
12df80da56
Introduce InstanceContext ( #270 )
...
* Add instance context with dummy field
* Remove stub field
2019-12-03 15:30:20 -08:00
Lucien Greathouse
a48c238ed7
Add InstanceMetadata builder ( #269 )
...
* Add InstanceMetadata builder, with context field for globbing
* Revert snapshot changes
* Port snapshot functions to InstanceMetadata builder-ish pattern
* Remove IgnoreGlob struct
* Elide lifetime
2019-12-03 14:49:40 -08:00
Lucien Greathouse
da6c7b4d7a
Fix Insta snapshot files having their line endings truncated when edited
2019-11-25 18:10:39 -08:00
Lucien Greathouse
15cbbacc2f
Refcount entries in snapshot context, moving towards sharing
2019-11-25 15:11:58 -08:00
Lucien Greathouse
c3f6a17bae
Add builder-ish methods to InstanceSnapshot to make middleware code more readable
2019-11-19 14:02:57 -08:00
Lucien Greathouse
0fbeb70865
Remove erroneous comment in SnapshotJsonModel
2019-11-19 13:53:48 -08:00
Lucien Greathouse
02f98a4053
Remove lifetime from SnapshotInstanceResult
2019-11-19 13:06:31 -08:00
Lucien Greathouse
d2e2a13479
Start stripping out lifetimes in InstanceSnapshot
2019-11-19 13:05:18 -08:00
Lucien Greathouse
f32cb592e2
Remove ownership stuff from InstanceSnapshot
2019-11-19 13:02:35 -08:00
Lucien Greathouse
72342f3118
Trim vestigial middleware method
2019-11-19 12:55:55 -08:00
Lucien Greathouse
246fd5f6c4
Add init scripts as relevant paths to all directories.
...
This doesn't feel ideal. Though it's true that all directories are influenced by
any init scripts they have, the directory middleware shouldn't need to know
about Lua.
I don't really want to go back into working on the middleware chain since it
mostly feels like busywork when there are other things to build on in Rojo.
also all of this feels really complicated
2019-11-18 18:28:36 -08:00
Lucien Greathouse
715022def5
Make init files copy metadata from folder.
...
Fixes #267 .
2019-11-18 18:16:37 -08:00
Lucien Greathouse
78b2bafde1
Add test for #267 .
2019-11-18 18:11:33 -08:00
Lucien Greathouse
2d7ebac8e6
Enable test for removing files
2019-11-18 18:08:18 -08:00
Lucien Greathouse
bcffd2eb99
Add support for removing files, handled in ChangeProcessor
2019-11-18 18:08:12 -08:00
Lucien Greathouse
459bf62fab
Add missing contents for disabled remove_file test
2019-11-18 16:52:19 -08:00
Lucien Greathouse
bdaa671823
Plugin: Pipe InstanceMap around, improve debug output, fix session ID bug
2019-11-18 16:30:57 -08:00
Lucien Greathouse
463bf9b116
Make errors scrollable when too long
2019-11-18 15:57:22 -08:00
Lucien Greathouse
0c7a94c062
Update more code to new formatting machinery
2019-11-18 15:18:06 -08:00
Lucien Greathouse
af866f0665
Fix request timeout in long polling causing error to bubble to console
2019-11-15 15:54:58 -08:00
Lucien Greathouse
2493c70241
Fix log special case for empty tables
2019-11-15 15:43:42 -08:00
Lucien Greathouse
3c3359999c
Fix hydration patch incorrectly comparing properties
2019-11-15 15:42:11 -08:00
Lucien Greathouse
2467004dc2
Update HTTP logs
2019-11-15 15:40:03 -08:00
Lucien Greathouse
3a9f438390
Integrate fmt into log
2019-11-15 15:39:15 -08:00
Lucien Greathouse
3126de2c37
Build out real formatting machinery
2019-11-15 15:00:54 -08:00
Lucien Greathouse
b7d026b98e
Partial implementation of better formatting machinery
2019-11-14 18:43:51 -08:00
Lucien Greathouse
3f8b178f88
Add support for computing property and name changes in hydration patch computation
2019-11-14 18:18:38 -08:00
Lucien Greathouse
6184f4ce4f
Improve debug output for initialization of ServeSession
2019-11-14 18:18:24 -08:00
Lucien Greathouse
fa736697a9
Introduce early Lua formatting library inspired by Rust
2019-11-14 18:18:07 -08:00
Lucien Greathouse
2c88c700ca
Work around plugins loading too early by searching for DevSettings via ChildAdded
2019-11-14 18:16:48 -08:00
Lucien Greathouse
0b2e9ce1ad
Improve InstanceMap tracking of ValueBase instances
2019-11-14 18:16:17 -08:00
Lucien Greathouse
ccafdf250e
Add counterpart to setCanonicalProperty for reading
2019-11-14 18:15:53 -08:00
Lucien Greathouse
57b28faa74
Update ApiSubcribeMessage signature
2019-11-14 18:15:33 -08:00
Lucien Greathouse
d0d7c58af1
Start tracking property changes in plugin
2019-11-13 18:34:48 -08:00
Lucien Greathouse
339fc979f5
Add disabled test for removing file that currently hangs
2019-11-11 18:03:31 -08:00
Lucien Greathouse
47614c3102
Update names in subscribe portion of sync protocol
2019-11-11 17:52:09 -08:00
Lucien Greathouse
94e1501329
Stop having clibrojo as a default project, update docs
2019-11-07 18:24:16 -08:00
Lucien Greathouse
dfb015acc2
Add Rojo C API experiment
2019-11-07 18:20:55 -08:00
Lucien Greathouse
f1daafbf9e
Fix ordering not being preserved in Vfs
2019-11-03 00:00:50 -07:00
Lucien Greathouse
432e10c205
Scrap old project load tests
2019-11-02 23:47:03 -07:00
Lucien Greathouse
62b626a931
Remove Project::load_from_str in favor of from_slice
2019-11-02 23:43:24 -07:00
Lucien Greathouse
9a2893c6bc
Remove warnings for upgrading from 0.4.x
2019-11-02 23:41:32 -07:00
Lucien Greathouse
3a538f98ed
Tightened project discovery behavior
2019-11-02 23:36:28 -07:00
Lucien Greathouse
7c71708de7
Drop support for roblox-project.json
2019-11-02 23:16:01 -07:00
Lucien Greathouse
b64d97e808
Force PathMap to have deterministic ordering by using BTreeSet instead of HashSet
2019-10-21 16:25:34 -07:00
Lucien Greathouse
428a19789d
Enable 'move folder of stuff' test
2019-10-21 16:00:43 -07:00
Lucien Greathouse
7cc4055d94
Upgrade to Insta master to get bugfix.
...
Map sorting in Insta was previously not recursive.
As of this PR, it is!
https://github.com/mitsuhiko/insta/pull/80
Since it hasn't made it into a release yet, but is
important for Rojo to have snapshot determinism,
we're moving temporarily to depend on Insta via Git.
2019-10-21 15:29:33 -07:00
Lucien Greathouse
114c93fa46
Fix non-portable path serialization in ProjectNode.
...
This was failing snapshot tests on the Linux CI machines,
since I committed snapshots with backslashes.
I think the old path serializer was still the wrong approach,
this one is sort of a middleground but I'm still not super
happy with it.
2019-10-18 19:40:47 -07:00
Lucien Greathouse
07801a0283
Add support for updating instances defined in project nodes
2019-10-18 18:06:40 -07:00
Lucien Greathouse
30c8ea583b
Remove special path serialization for ProjectNode
2019-10-18 18:06:25 -07:00
Lucien Greathouse
d54a5f647e
Improve tree explorer UI
2019-10-18 16:49:03 -07:00
Lucien Greathouse
457ed05174
Fix missed references to IMFS in CSS instead of VFS
2019-10-18 15:37:38 -07:00
Lucien Greathouse
44c94da2d8
Fix clippy warnings
2019-10-17 18:22:53 -07:00
Lucien Greathouse
ec614e1912
Remove last unused warning. Closes #245 .
2019-10-17 17:48:30 -07:00
Lucien Greathouse
559b509a03
Upgrade to latest rbx-dom
2019-10-17 17:37:49 -07:00
Lucien Greathouse
e2e9209655
rojo-test: Add disabled test for moving big folder of stuff
2019-10-17 16:03:21 -07:00
Lucien Greathouse
e55b72f73f
rojo-test: Move settings closer to where settings are applied
2019-10-17 16:01:03 -07:00
Lucien Greathouse
85e30cc968
Write tests and ensure adding instances works
2019-10-17 13:46:59 -07:00
Lucien Greathouse
51dcfbab75
Fix rustfmt on benches
2019-10-16 19:32:10 -07:00
Lucien Greathouse
7c0aa45057
Add support for adding new instances, very pedantically
2019-10-16 18:28:38 -07:00
Lucien Greathouse
a5fdc2a9cc
Add logging, fix flipped condition on child add
2019-10-16 18:28:11 -07:00
Lucien Greathouse
64fd2f9cf8
Add disabled test for adding a folder, currently failing
2019-10-16 17:54:10 -07:00
Lucien Greathouse
a77495c562
Add names to serve test snapshots
2019-10-16 17:41:21 -07:00
Lucien Greathouse
3880708e1d
Improve serve snapshot test ergonomics
2019-10-16 17:36:13 -07:00
Lucien Greathouse
cc68d57f11
Remove insta dependency for rojo-insta-ext
2019-10-16 17:03:21 -07:00
Lucien Greathouse
56f5a61362
Add test for folder of scripts being mutated
2019-10-16 16:55:55 -07:00
Lucien Greathouse
40540c3637
Improve serve test, add single txt file test
2019-10-16 16:21:33 -07:00
Lucien Greathouse
82678235ab
VFS Improvements ( #259 )
...
This PR refactors all of the methods on `Vfs` from accepting `&mut self` to
accepting `&self` and keeping data wrapped in a mutex. This builds on previous
changes to make reference count file contents and cleans up the last places
where we're returning borrowed data out of the VFS interface.
Once this change lands, there are two possible directions we can go that I see:
* Conservative: Refactor all remaining `&mut Vfs` handles to `&Vfs`
* Interesting: Embrace ref counting by changing `Vfs` methods to accept `self:
Arc<Self>`, which makes the `VfsEntry` API no longer need an explicit `Vfs`
argument for its operations.
* Change VfsFetcher to be immutable with internal locking
* Refactor Vfs::would_be_resident
* Refactor Vfs::read_if_not_exists
* Refactor Vfs::raise_file_removed
* Refactor Vfs::raise_file_changed
* Add Vfs::get_internal as bits of Vfs::get
* Switch Vfs to use internal locking
* Migrate all Vfs methods from &mut self to &self
* Make VfsEntry access Vfs immutably
* Remove outer VFS locking (#260 )
* Refactor all snapshot middleware to accept &Vfs instead of &mut Vfs
* Remove outer VFS Mutex across the board
2019-10-16 15:45:23 -07:00
Lucien Greathouse
5123d21290
Rename Vfs::inner to Vfs::data, use Self more
2019-10-14 16:46:15 -07:00
Lucien Greathouse
b0dcf515f0
Refactor plugins, port message dropping bugfix from 0.5.1
2019-10-14 14:05:25 -07:00
Lucien Greathouse
9aafccc946
Update CHANGELOG
2019-10-14 13:46:02 -07:00
Lucien Greathouse
ccf98d7283
Move and tidy up small place benchmark
2019-10-14 11:38:16 -07:00
Lucien Greathouse
1b35c98be5
Add build tests for init.meta.json
2019-10-12 23:54:39 -07:00
Lucien Greathouse
db23c3d35a
Mark init.meta.json as relevant path for directories
2019-10-12 23:46:49 -07:00
Lucien Greathouse
1c6c1298d5
Add init.meta.json support, untested
2019-10-12 23:45:38 -07:00
Lucien Greathouse
b9ebed14a5
Add documentation for AdjacentMetadata
2019-10-12 23:31:33 -07:00
Lucien Greathouse
7077f0f1f3
Load user plugins on startup instead of lazily at snapshot time
2019-10-12 23:27:12 -07:00
Lucien Greathouse
d1887c6cd3
Merge branch 'vfs-arc'
2019-10-12 15:29:54 -07:00
Lucien Greathouse
9278c81611
Merge branch 'master' into vfs-arc
2019-10-12 15:28:33 -07:00
Lucien Greathouse
dec9ec32df
Add small place benchmark
2019-10-12 15:24:57 -07:00
Lucien Greathouse
1967f738a8
Make all file contents be Arc<Vec<u8>> instead of &[u8]
2019-10-12 14:17:52 -07:00
Lucien Greathouse
1031600c63
Batch rename: imfs -> vfs
2019-10-12 13:58:00 -07:00
Lucien Greathouse
24c697bea7
Port commands to use common setup code
...
Initialization logic needed for serve, build, and upload is now
much more clear than it was when these functions were written.
This commit refactors all of them to use a new common_setup
module for all of their initialization that's the same.
2019-10-11 18:35:10 -07:00
Lucien Greathouse
83665018d4
Compute snapshot context from project in build
2019-10-11 18:25:12 -07:00
Lucien Greathouse
b093626a21
User plugin foundations for 0.6.0 ( #257 )
...
Starts work on #55 .
This is similar to the previous work in #125 . It's gated behind a new Cargo
feature, `user-plugins`. This time, the config gate is much smaller. The
`plugins` member of projects is still accessible when plugins aren't enabled,
but is always empty. Additionally, user plugins are only enabled if there's a
Lua state present in the snapshot context when the `SnapshotUserPlugins`
snapshot middleware runs. This not ever the case currently.
This code has very little possibility of rotting while we focus on other work,
since it'll be guaranteed to still compile and can be tested in isolation
without the feature being turned on.
2019-10-11 15:45:02 -07:00
Lucien Greathouse
f3dc78b7cd
Make InstanceSnapshotContext mutable through whole middleware pipeline
2019-10-10 14:07:10 -07:00
Lucien Greathouse
f0cd4333c3
Thread InstanceSnapshotContext through all SnapshotMiddleware
2019-10-10 11:44:33 -07:00
Lucien Greathouse
6d38a785ed
Make SnapshotMiddleware::from_instance have a default impl
2019-10-10 10:44:46 -07:00
Lucien Greathouse
e46f9fd94f
Simplify snapshot code using match_file_name utility
2019-10-09 18:27:52 -07:00
Lucien Greathouse
6b620ddcef
Add utility for working with file names, port JSON model to use it
2019-10-09 18:22:58 -07:00
Lucien Greathouse
e5684ad947
Add error for malformed project files
2019-10-09 18:15:07 -07:00
Lucien Greathouse
dfabc07044
More consistent handling of non-Unicode file names (should be rare)
2019-10-09 17:15:34 -07:00
Lucien Greathouse
dca88e8272
Port Project snapshot to use with_not_found
2019-10-09 15:30:03 -07:00
Lucien Greathouse
9f947ae2c5
Improve bad Unicode error handling in txt, CSV, and directory handling
2019-10-09 12:55:24 -07:00
Lucien Greathouse
28156bcaf2
Switch SnapshotMiddleware over to SnapshotError
2019-10-09 12:42:08 -07:00
Lucien Greathouse
a14aacbcf9
Improve SnapshotError in preparation for moving middleware to it
2019-10-09 12:39:36 -07:00
boyned//Kampfkarren
321e026e43
Fix failing snapshot ( #256 )
2019-10-09 12:29:33 -07:00
Lucien Greathouse
30351f7b9d
Add support for .meta.json files associated with .txt files
2019-10-08 17:44:23 -07:00
Lucien Greathouse
2393a1a114
Add support for .meta.json files affecting .csv LocalizationTables
2019-10-08 16:48:49 -07:00
Lucien Greathouse
479476561e
Fix errors in 'Sync Details' page
2019-10-08 16:16:06 -07:00
Lucien Greathouse
a02f485040
Add end-to-end build test for Script.Disabled via .meta.json
2019-10-08 16:05:15 -07:00
Lucien Greathouse
2957e8ad73
Make Lua snapshot middleware test sort maps
2019-10-08 16:03:15 -07:00
Lucien Greathouse
f83abe15cb
Add test for ensuring that scripts can be disabled with .meta.json files
2019-10-08 15:46:51 -07:00
Lucien Greathouse
709cba45ce
Remove className from adjacent meta files, which is not supported in 0.5.x
2019-10-08 15:44:47 -07:00
Lucien Greathouse
8a9a72fd50
Refactor .meta.json into AdjacentMetadata type more strongly
2019-10-08 15:42:44 -07:00
Lucien Greathouse
13cb0a27a0
Make .meta.json changes cause scripts to be updated
2019-10-08 15:30:16 -07:00
Lucien Greathouse
fa817e3cdd
Add baseline support for adjacent meta files for scripts
2019-10-08 14:14:44 -07:00
Lucien Greathouse
3bd8549f41
Add ServeSession test for project with folder
2019-10-08 13:57:40 -07:00
Lucien Greathouse
4e47655b17
Refactor MessageQueue API to return a oneshot receiver
2019-10-08 13:49:41 -07:00
Lucien Greathouse
18533d5944
Improve ServeSession test using async and Tokio
2019-10-08 13:26:21 -07:00
Lucien Greathouse
c5839c94ca
Add test-only MessageQueue::subscribe_any.
...
This makes writing tests that do async things easier.
2019-10-08 13:25:34 -07:00
Lucien Greathouse
ffc146ff9b
Add ServeSession test for changing text file
2019-10-07 18:23:39 -07:00
Lucien Greathouse
7b82e3d641
Add TestFetcher for mocking more filesystem operations than NoopFetcher
2019-10-07 18:22:29 -07:00
Lucien Greathouse
ab6cedb659
Move some serve code into serve_session.rs, start writing serve session tests
2019-10-07 16:24:36 -07:00
Lucien Greathouse
e60be94be0
Move patch apply test utility into tree_view module
2019-10-07 16:21:25 -07:00
Lucien Greathouse
f830b024d5
Add ImfsSnapshot::empty_dir() for debugging the Imfs
2019-10-07 16:20:04 -07:00
Lucien Greathouse
98519da7d9
Reintroduce instigating paths for snapshot middleware
2019-10-04 18:36:04 -07:00
Lucien Greathouse
cb3211cf46
Mark project node as instigating source for instances from project
2019-10-04 18:10:45 -07:00
Lucien Greathouse
c051153a1f
Mark project file as instigating source for top-level instances
2019-10-04 18:05:27 -07:00
Lucien Greathouse
956d7e0918
Fix warning in JSON model snapshot test
2019-10-04 17:52:05 -07:00
Lucien Greathouse
530a7aa834
Rename 'contributing paths' to 'relevant paths'
2019-10-04 17:36:26 -07:00
Lucien Greathouse
052ca52cc3
Move instigating source out of contributing paths ( #253 )
...
* Refactor contributing_paths into contributing_sources, deleting project node sources
* Instead of changing contributing_paths, add instigating_source
* Remove InstanceMetadata::project_node
* Stop pushing project path to front of contributing_paths since it doesn't matter now
* Remove accidental UI change for path display
2019-10-04 17:34:05 -07:00
Lucien Greathouse
2025b8a494
Fix patch I missed project_node change
2019-10-04 15:49:12 -07:00
Lucien Greathouse
238233ca81
Stop serializing project_node if it's None
2019-10-04 15:12:34 -07:00
Lucien Greathouse
938c8259c3
Include project node in debug UI
2019-10-04 14:29:02 -07:00
Lucien Greathouse
35df5f25c7
Show metadata in web interface, take one
2019-10-04 14:14:45 -07:00
Lucien Greathouse
cd84fb9fc1
Bring forward 0.5.1 release notes
2019-10-04 13:19:14 -07:00
Lucien Greathouse
8bcf12e317
Update dependencies
2019-10-04 13:18:42 -07:00
Lucien Greathouse
10ed353e0a
Add TODO for JSON model metadata
2019-10-03 18:30:10 -07:00
Lucien Greathouse
72d88200e4
Snapshot tests for JSON models
2019-10-03 18:28:58 -07:00
Lucien Greathouse
6ef832b3a9
Improve documentation for SnapshotProject
2019-10-03 18:25:06 -07:00
Lucien Greathouse
17d91563d5
Port project file tests to use insta
2019-10-03 18:22:20 -07:00
Lucien Greathouse
fb65693627
Propagate metadata in project files correctly
2019-10-03 18:12:52 -07:00
Lucien Greathouse
079fc738ad
plugin: Properly handle removals in patches
2019-10-03 18:12:36 -07:00
Lucien Greathouse
ae0f3b0b02
Assign contributing paths in simple cases for snapshots
2019-10-03 17:34:33 -07:00
Lucien Greathouse
b2c515f2e6
plugin: Prevent HTTP timeout cascading after session stop
2019-10-03 17:28:34 -07:00
Lucien Greathouse
6f1469a551
plugin: Implement patch application, which makes live sync work
2019-10-03 17:13:29 -07:00
Lucien Greathouse
1d441b86d2
plugin: Fix type bindings for instance Parent
2019-10-03 17:13:17 -07:00
Lucien Greathouse
b72e6e54e6
plugin: Add debugging function for InstanceMap state
2019-10-03 17:12:43 -07:00
Lucien Greathouse
1ee679395d
Add 'invariant' function for debugging
2019-10-03 17:12:08 -07:00
Lucien Greathouse
cf62ee5ccb
plugin: Add Id and ParentId to ApiInstance type definitions
2019-10-03 15:54:49 -07:00
Lucien Greathouse
995685adfe
Expose instance ID and parent ID in web API
2019-10-03 15:54:11 -07:00
Lucien Greathouse
f0eb955628
Expose parent from RojoTree instances
2019-10-03 15:53:50 -07:00
Lucien Greathouse
923f661428
Start rewriting plugin on top of new sync protocol
2019-10-02 18:41:52 -07:00
Lucien Greathouse
b562d11994
plugin: Remove Logging alias and update imports
2019-10-02 11:10:34 -07:00
Lucien Greathouse
3554112f31
plugin: Add test that loads all modules
2019-10-02 11:07:22 -07:00
Lucien Greathouse
7cada2608f
plugin: Refactor HTTP and ApiContext foundations
2019-10-02 11:04:40 -07:00
Lucien Greathouse
21d4acebc3
Move .luacheckrc for better editor detection
2019-10-02 10:42:10 -07:00
Lucien Greathouse
73bbaaf0af
Add script for installing release plugin
2019-10-01 18:42:25 -07:00
Lucien Greathouse
40105515d2
plugin: Unify test running code
2019-10-01 18:41:33 -07:00
Lucien Greathouse
79f09deecb
Add strong type checking to plugin API client
2019-10-01 18:37:35 -07:00
Lucien Greathouse
c4a7f8675f
Fix log level in plugin dev mode
2019-10-01 18:37:25 -07:00
Lucien Greathouse
f9a5fee364
Reorganize and clean up plugin
2019-10-01 18:23:29 -07:00
Lucien Greathouse
bdd9c58cae
Update all CI scripts and mark as executable
2019-10-01 18:07:32 -07:00
Lucien Greathouse
09368e87cf
Further update contributing guide on tools
2019-10-01 17:54:53 -07:00
Lucien Greathouse
46858c45b8
Add note about tools for contributing
2019-10-01 17:52:36 -07:00
Lucien Greathouse
fe1a96f850
Improve plugin test running, reducing project duplication
2019-10-01 17:44:24 -07:00
Lucien Greathouse
581449d992
Port more code over to use strict
2019-10-01 17:13:43 -07:00
Lucien Greathouse
15e848d4bf
Add new scripts and machinery to make working on plugin easier
2019-10-01 17:13:28 -07:00
Lucien Greathouse
0dbbf44ab2
plugin: Add API interface for strongly typing responses
2019-10-01 16:55:45 -07:00
Lucien Greathouse
c62a5d15ad
Add script to build plugin as changes occur
2019-10-01 16:55:15 -07:00
Lucien Greathouse
53bd02a890
Add script to quickly install plugin into LocalAppData
2019-10-01 16:52:20 -07:00
Lucien Greathouse
099aa26ef8
Rough pass on transforming applied patches into API responses
2019-10-01 14:45:24 -07:00
Lucien Greathouse
2598ea3577
Add contributing paths to SnapshotLua, switch to Insta tests
2019-10-01 14:09:05 -07:00
Lucien Greathouse
7be5b36494
Fix unreachable pattern warning
2019-10-01 14:07:50 -07:00
Lucien Greathouse
3dff4d1061
Generate and apply patches, routing them through message queue
2019-10-01 13:59:10 -07:00
Lucien Greathouse
5b7037550d
Start ChangeProcessor pumping work
2019-10-01 13:48:16 -07:00
Lucien Greathouse
b94f21402c
Expose RojoTree::get_metadata publicly
2019-10-01 13:47:25 -07:00
Lucien Greathouse
9f5875d4bb
imfs: move debugging messages outside of converter thread
2019-10-01 13:47:14 -07:00
Lucien Greathouse
694b6101ca
New Imfs event type
2019-10-01 11:29:09 -07:00
Lucien Greathouse
1737da9c1f
Move ImfsEvent into its own module
2019-10-01 10:44:35 -07:00
Lucien Greathouse
bcf4fea598
Add RojoTree::get_ids_at_path
2019-10-01 10:37:06 -07:00
Lucien Greathouse
90e41f3ce9
Fix bounds on MultiMap::get
2019-10-01 10:36:20 -07:00
Lucien Greathouse
5f5fb51eae
Make up terminology for 'instigating path' in instance metadata
2019-10-01 10:32:05 -07:00
Lucien Greathouse
95f06d56d8
Port SnapshotDir tests to use insta snapshots
2019-09-30 18:33:46 -07:00
Lucien Greathouse
1c6788ea45
Migrate from source_path to contributing_paths
2019-09-30 18:12:19 -07:00
Lucien Greathouse
457a8a5cf8
Fix warning in serve_test
2019-09-30 17:37:16 -07:00
Lucien Greathouse
282caf10a5
Expand patch_apply tests
2019-09-30 17:36:37 -07:00
Lucien Greathouse
b2fc6c165b
Improve patch application test
2019-09-30 17:22:54 -07:00
Lucien Greathouse
0a1fa9588f
Test for AppliedPatchSet result
2019-09-30 17:13:56 -07:00
Lucien Greathouse
5f5bfadf2b
Add compute_patch tests for adding/removing children
2019-09-30 17:04:45 -07:00
Lucien Greathouse
b512e707a5
First round of snapshot tests for patch_compute
2019-09-30 17:00:12 -07:00
Lucien Greathouse
3678ddfa36
Break redaction stuff out into separate crate
2019-09-30 16:27:31 -07:00
Lucien Greathouse
ab8aa89f2a
Add real networked message type
2019-09-29 20:16:54 -07:00
Lucien Greathouse
fd22482f06
Goodbye Travis
2019-09-27 15:09:35 -07:00
Lucien Greathouse
e741f7b557
Actually generate AppliedPatchSet objects ( #250 )
...
* Start actually computing AppliedPatchSet values
* Improve patch_apply documentation and flesh out applied patch code
* Add file link notes
* Stub out where tests for snapshot subsystem will go
* Create baseline tests
* Fix build failure by silencing Clippy
2019-09-27 15:07:11 -07:00
Lucien Greathouse
a70b7ee150
Add GitHub Actions badge
2019-09-27 15:03:57 -07:00
Lucien Greathouse
87227c96ed
Document snapshot pipeline
2019-09-26 14:28:04 -07:00
Lucien Greathouse
91d12aeb4f
Break out expandable section into a component thing
2019-09-25 17:29:47 -07:00
Lucien Greathouse
b3f132201b
Better expandables for the instance debugger
2019-09-25 14:47:07 -07:00
Lucien Greathouse
24b9f552eb
Improve imfs debugging page
2019-09-25 11:05:56 -07:00
Lucien Greathouse
b4a8dec68c
Track watched paths in ImfsFetcher, exposed via ImfsDebug interface
2019-09-25 10:45:14 -07:00
Lucien Greathouse
c140823bea
Move Imfs snapshotting into ImfsDebug
2019-09-24 18:14:48 -07:00
Lucien Greathouse
f166cc93cd
Remove unused MessageQueue method
2019-09-24 18:08:32 -07:00
Lucien Greathouse
125c9767f1
Fix warnings around ChangeProcessor
2019-09-24 18:07:33 -07:00
Lucien Greathouse
7b7c978db6
Fix warning and make 'rojo serve' output to stdout
2019-09-24 18:06:31 -07:00
Lucien Greathouse
26fc097672
Add visualizer for IMFS state
2019-09-24 18:04:25 -07:00
Lucien Greathouse
0f2e2406e8
imfs: Correctly mark children_enumerated when calling get_children
2019-09-24 17:58:46 -07:00
Lucien Greathouse
061a096600
Add PathMap::orphans for traversing the map's roots
2019-09-24 17:55:39 -07:00
Lucien Greathouse
07fe963bed
Don't include CSS in live asset mode
2019-09-24 17:53:39 -07:00
Lucien Greathouse
7a1eda98ca
Implement instance tree visualization
2019-09-24 16:46:19 -07:00
Lucien Greathouse
e8a5e44319
Add abstraction for files to make iteration on UI easier
2019-09-24 14:00:48 -07:00
Lucien Greathouse
486319407a
Refactor web UI to be more readable
2019-09-24 11:29:13 -07:00
Lucien Greathouse
4f3d917c9b
Add support for snapshotting rbxlx files
2019-09-23 18:13:38 -07:00
Lucien Greathouse
e2761965d5
Add support for serving non-project files directly
2019-09-23 18:00:54 -07:00
Lucien Greathouse
171ab196c8
Update changelog
2019-09-23 17:54:49 -07:00
Lucien Greathouse
5630cea9a0
Improve command line and web interface
2019-09-23 17:54:04 -07:00
Lucien Greathouse
5a4189a770
Move ChangeReceiver main block into its own function
2019-09-23 16:13:19 -07:00
Lucien Greathouse
2440d9fc48
Create ChangeProcessor for routing events from imfs to tree to message queue
2019-09-23 16:09:58 -07:00
Lucien Greathouse
bd33aebc3d
Turn messages into stub SubscribeMessage struct
2019-09-23 10:53:11 -07:00
boyned//Kampfkarren
a46d467b75
Fix broken link to sync details ( #248 )
2019-09-22 17:37:00 -07:00
Lucien Greathouse
8c6981da0d
Fix guide to point to release versions instead of alphas
2019-09-20 11:08:01 -07:00
Lucien Greathouse
500a9f647f
Fix snapshot test with new version number
2019-09-19 15:26:31 -07:00
Lucien Greathouse
71968fca0d
Fold imfs::new back into imfs
2019-09-19 15:25:07 -07:00
Lucien Greathouse
fc6f84897f
Update docs link to rojo.space
2019-09-19 14:02:02 -07:00
Lucien Greathouse
b31ad4b1f8
Update version to 0.6.0-dev
2019-09-19 13:58:53 -07:00
Lucien Greathouse
aababf37a8
Catch more HTTP API errors
2019-09-19 13:50:42 -07:00
Lucien Greathouse
44a42a177a
Change API errors to be JSON
2019-09-19 13:20:58 -07:00
Lucien Greathouse
e773a92e53
Connect message queue to frontend API
2019-09-19 13:12:21 -07:00
Lucien Greathouse
196d27b959
Allow IMFS testing features to be unused
2019-09-19 11:13:27 -07:00
Lucien Greathouse
ec8861e983
Apply patch sets by value in preparation for AppliedPatchSet
2019-09-19 11:10:25 -07:00
Lucien Greathouse
9b601eb9fe
Tidy up patch structs, add AppliedPatchSet
2019-09-19 10:56:10 -07:00
Lucien Greathouse
c80d9cbf01
Add default-members to make 'cargo t' work better
2019-09-19 10:46:09 -07:00
Lucien Greathouse
717c15256f
Update GH workflows, bump minimum Rust to 1.36.0
2019-09-17 18:31:02 -07:00
Lucien Greathouse
13dafc2091
Bump minimum Rust in GitHub actions to 1.36.0
2019-09-17 17:31:00 -07:00
Lucien Greathouse
cfc3bcfa41
Switch to single quotes for GitHub action workflow
2019-09-17 16:51:40 -07:00
Lucien Greathouse
2e052e97c5
Experimental GitHub Action
2019-09-17 16:48:51 -07:00
Lucien Greathouse
5d48d05287
Update Changelog
2019-09-13 17:31:53 -07:00
Lucien Greathouse
e34ba844c5
Improve diagnostics for failed instance creation
2019-09-13 17:16:16 -07:00
Lucien Greathouse
1d84d3e440
Wrap RojoTree in Mutex
2019-09-13 12:57:37 -07:00
Lucien Greathouse
7a7e9087e6
Expose imfs from ServeSession
2019-09-13 12:57:22 -07:00
Lucien Greathouse
8481caa67c
Add Imfs to ServeSession, threading through generic ImfsFetcher
2019-09-13 12:52:15 -07:00
Lucien Greathouse
651e63a0fb
Tidy up docs links in readme
2019-09-11 11:37:58 -07:00
Lucien Greathouse
88e462c4e5
Add help page to direct people to Discord, GitHub, and Twitter
2019-09-11 11:34:52 -07:00
Lucien Greathouse
8ef797d1a4
Start writing real serve tests
2019-09-10 18:04:05 -07:00
Lucien Greathouse
877fd1af35
Make /api/subscribe hang forever instead of returning no messages
2019-09-10 16:42:14 -07:00
Lucien Greathouse
fc01eecdcb
Use real Rojo metadata for live sync
2019-09-10 15:59:36 -07:00
Lucien Greathouse
e6ba6203bb
Expose tree in API, with hacks to make initial sync-in work sort of
2019-09-10 15:39:50 -07:00
Lucien Greathouse
6a786f18e6
Update plugin protocl version, fix error in error
2019-09-10 15:37:21 -07:00
Lucien Greathouse
57d46287d7
Glue message queue onto ServeSession, simplify some HTTP
2019-09-09 18:32:44 -07:00
Lucien Greathouse
bb6ab74c19
Clean up warnings, add RojoTree into ServeSession
2019-09-09 15:17:03 -07:00
Lucien Greathouse
3e759b3e8e
Finish off bulk of metadata tracking in snapshot system
2019-09-09 15:04:57 -07:00
Lucien Greathouse
47ee8d54a8
Clean up some of the instance wrapper APIs
2019-09-09 13:59:36 -07:00
Lucien Greathouse
824b984a64
First pass converting snapshot code over to RojoTree from RbxTree
2019-09-09 13:50:39 -07:00
Lucien Greathouse
618185a52d
Start using multimap correctly for path tracking in RojoTree
2019-09-09 11:50:58 -07:00
Lucien Greathouse
8dbc6ab7d3
Start MapSet work
2019-09-06 17:05:01 -07:00
Lucien Greathouse
5eb6754b7c
Implement metadata, replacing source field and laying foundations
2019-09-06 14:21:47 -07:00
Lucien Greathouse
a914a92cea
Add SnapshotSource property
2019-09-05 11:27:16 -07:00
Lucien Greathouse
439a1a758e
Upgrade all snapshots to insta 0.11.0 format
2019-09-03 18:15:53 -07:00
Lucien Greathouse
9383240627
Move rojo-test snapshots into partitioned folders
2019-09-03 18:11:28 -07:00
Lucien Greathouse
ea765eb929
Add serve snapshot test for empty project
2019-09-03 17:56:23 -07:00
Lucien Greathouse
d5c816f24d
Document and expose public members for Rojo API
2019-09-03 14:20:12 -07:00
Lucien Greathouse
cf5f20bbb5
Upgrade depdendencies, removing need for opt-level in debug
2019-09-03 14:09:35 -07:00
Lucien Greathouse
27839dfd21
Shuffle web_interface into web::interface
2019-09-03 14:00:31 -07:00
Lucien Greathouse
27517e1aee
Rename web::interface to web::ui
2019-09-03 13:58:44 -07:00
Lucien Greathouse
a31bfbefa7
Start extracting web interface from implementation
2019-09-03 13:57:28 -07:00
Lucien Greathouse
f1729163cf
Add foundations for 'rojo serve' tests
2019-09-03 13:48:27 -07:00
Lucien Greathouse
6747d97d60
Factor out test utilities in preparation for serve tests
2019-09-03 10:25:48 -07:00
Lucien Greathouse
2fb2342fd4
Fix Lua snapshot code to work with children.
...
It's also way easier to read now
2019-08-29 17:13:36 -07:00
Lucien Greathouse
0f530b7e80
Add deep-nesting test for folders in folders
2019-08-29 16:38:41 -07:00
Lucien Greathouse
78e3cf4ffb
Fix rojo-test tests not running on CI
2019-08-29 16:38:04 -07:00
Lucien Greathouse
4e512b7023
Revert to using Reqwest, reimplement upload command
2019-08-29 16:31:42 -07:00
Lucien Greathouse
ee3fed97e0
Fix parsing of auth cookie data
2019-08-29 16:31:32 -07:00
Jaguar
b45d4f6401
Correct capitalization/typos ( #240 )
...
* Fix typo
* Correct capitalization
* Correct capitalization
2019-08-28 21:29:48 -07:00
Lucien Greathouse
d4c28de2c4
Update changelog
2019-08-28 14:34:14 -07:00
Lucien Greathouse
b7d613ace6
Correct bug report repository link
2019-08-28 13:55:12 -07:00
Lucien Greathouse
68dbb31272
Add verbosity level argument
2019-08-28 13:34:20 -07:00
Lucien Greathouse
8fe1fa48b8
Let Rojo pull auth cookie from registry on Windows
2019-08-28 13:21:30 -07:00
Lucien Greathouse
e5575b782c
Hide project module, moving towards Rojo API
2019-08-28 12:20:20 -07:00
Lucien Greathouse
ea112dd93d
Mark security cookie as optional
2019-08-28 12:09:12 -07:00
Lucien Greathouse
056fc5e087
Remove old 'scratch project' test script, clean up .gitignore
2019-08-27 18:23:05 -07:00
Lucien Greathouse
cacb02b7c8
Fix incorrect license in Cargo.toml
2019-08-27 18:12:15 -07:00
Lucien Greathouse
c0b6ec8ccb
Clean up more old plugin gunk
2019-08-27 18:10:15 -07:00
Lucien Greathouse
f4c8f0a3d8
Mark bin/run-plugin-tests.sh as executable
2019-08-27 18:05:17 -07:00
Lucien Greathouse
81407ffe3c
Goodbye Lemur and other cruft, hello run-in-roblox-based testing
2019-08-27 18:04:58 -07:00
Lucien Greathouse
6f7dbe99fe
Move Rojo server into root of the repository
2019-08-27 16:56:52 -07:00
Lucien Greathouse
ec9afba029
Remove unfinished plugin scaffolding
2019-08-27 16:44:40 -07:00
Lucien Greathouse
6164c5d78d
Update dependencies
2019-08-27 16:30:35 -07:00
Lucien Greathouse
94dbcd5c06
Remove unused dependencies, reqwest and rlua (for now)
2019-08-27 16:30:10 -07:00
Lucien Greathouse
4d0dee7ee8
Fix or_fun clippy lint
2019-08-27 16:23:58 -07:00
Lucien Greathouse
49e10698b1
Mark bin/run-tests.sh as executable
2019-08-27 16:06:30 -07:00
Lucien Greathouse
8e1536b59b
Restructure Travis config to fail fast
2019-08-27 15:42:55 -07:00
Lucien Greathouse
aed160994a
Fix rustfmt error
2019-08-27 15:42:20 -07:00
Lucien Greathouse
b2b3173420
Fix editorconfig to stop fighting rustfmt
2019-08-27 15:42:07 -07:00
Lucien Greathouse
f465af964a
Make Travis test rustfmt and clippy
2019-08-27 15:27:25 -07:00
Lucien Greathouse
5a7d6a673a
Fix bug caught by clippy
2019-08-27 15:26:51 -07:00
Lucien Greathouse
7fb9aa2115
rustfmt the codebase
2019-08-27 15:10:34 -07:00
Lucien Greathouse
fea303ac8b
Major Subsystem Rewrite (Reconciler Mk5) ( #217 )
2019-08-27 15:00:37 -07:00
Lucien Greathouse
8e8291a0bd
Add more stern warning about docs from master branch
2019-08-27 14:52:40 -07:00
Lucien Greathouse
4dc175fcd2
Update docs home for 0.5.x
2019-08-27 14:38:51 -07:00
Lucien Greathouse
009a99a8eb
Fix date on Changelog (oops)
2019-08-27 14:26:00 -07:00
Lucien Greathouse
91caa67e04
Release 0.5.0 stable ( #234 )
...
* This should be everything?
* Add contributing guide
2019-08-27 14:14:48 -07:00
Lucien Greathouse
53793f7dd2
Update and improve reference documentation
2019-08-26 17:23:59 -07:00
Lucien Greathouse
32af8783ba
Update Changelog
2019-08-26 13:52:16 -07:00
Lucien Greathouse
d6f51f8eba
Upgrade rbx_dom_lua
2019-08-26 13:52:06 -07:00
Lucien Greathouse
f40b7361e8
Update Changelog
2019-08-21 16:08:58 -07:00
Lucien Greathouse
0231e114d5
Upgrade rbx_dom_lua. Fixes #201 .
2019-08-21 15:59:57 -07:00
Lucien Greathouse
ca61a3e83f
Add test case for #201
2019-08-21 15:45:22 -07:00
Lucien Greathouse
6979f5c82d
Add build tests for init Lua files
2019-08-16 12:50:11 -07:00
Lucien Greathouse
7d45b45667
Change JSON model naming behavior.
...
- JSON model names now come from the file name
- The 'Name' field is now optional for the top-level instance
- Snapshot tests run way faster by executing Rojo directly instead of Cargo
2019-08-15 14:09:16 -07:00
Lucien Greathouse
7575504b80
Add build test for JSON model
2019-08-14 18:03:19 -07:00
Lucien Greathouse
36bcb611f1
Port CSV regression tests to insta
2019-08-14 15:50:28 -07:00
Lucien Greathouse
cc34c36794
Add CSV snapshot test
2019-08-14 15:34:25 -07:00
Lucien Greathouse
b84cb93d2c
Remove test warning
2019-08-14 15:33:00 -07:00
Lucien Greathouse
08211a7740
Add rbxm build test
2019-08-14 15:07:37 -07:00
Lucien Greathouse
97985dd458
Fix test warning that's been in the codebase forever
2019-08-13 11:00:33 -07:00
Lucien Greathouse
edf157215c
docs: Embed RDC 2019 video into 'Why Rojo' page.
...
Closes #227 .
2019-08-12 10:28:50 -07:00
Lucien Greathouse
89671c71fa
Add basic rbxmx snapshot test
2019-08-10 00:52:16 -07:00
Lucien Greathouse
eeedcc50ab
Update rbx-dom dependency URL
2019-08-08 21:36:21 -07:00
Lucien Greathouse
de0bb069aa
Reduce Travis-CI build load
...
- Remove testing with --all-features, no features are supported
- Remove testing beta, it isn't useful and takes up valuable CI time
2019-08-08 21:08:10 -07:00
Lucien Greathouse
5d53f8bfb3
Add script build tests
2019-08-08 18:30:53 -07:00
Lucien Greathouse
d4a7de8070
Update dependencies
2019-08-08 16:57:01 -07:00
Lucien Greathouse
3fe15641c7
Ignore new insta snaps
2019-08-07 17:54:15 -07:00
Lucien Greathouse
08df71a7e4
Change rojo-test to be macro-based
2019-08-07 17:50:05 -07:00
Lucien Greathouse
77db25b4d9
Add end-to-end build tests
2019-08-07 17:41:17 -07:00
Lucien Greathouse
62bb5a28aa
v0.5.0-alpha.13
2019-08-02 15:05:58 -07:00
Lucien Greathouse
f768b200d2
Nudge README, hopefully to fix Travis too
2019-08-01 18:07:38 -07:00
Lucien Greathouse
a5b6db74e5
Bump minimum Rust version to 1.34.0
2019-08-01 17:57:13 -07:00
Lucien Greathouse
cbe4467a22
Upgrade dependencies and add SpawnLocation test case
2019-08-01 17:53:29 -07:00
Lucien Greathouse
8417d18eec
Upgrade to latest rbx_dom_lua
2019-08-01 17:53:15 -07:00
Lucien Greathouse
93ae8187cd
Update CHANGELOG
2019-08-01 16:11:21 -07:00
nukropina
972338d86a
Corrected folder name. ( #220 )
...
* Corrected folder name.
* Update docs/guide/new-game.md
Co-Authored-By: Lucien Greathouse <me@lpghatguy.com >
2019-07-31 13:18:24 -07:00
Lucien Greathouse
a4a6e3b8f6
Fix serve help message. Fixes #219 .
2019-07-31 12:54:46 -07:00
Gskartwii
d788dd3042
Fix broken link in existing-game.md ( #218 )
2019-07-17 14:30:15 -07:00
Lucien Greathouse
974760f020
Fix installation link from new game guide
2019-07-15 16:34:42 -07:00
Lucien Greathouse
65569c4a60
Update dependencies
2019-07-12 18:21:48 -07:00
Lucien Greathouse
39da45f0bd
Fix broken logo
2019-07-08 18:34:26 -07:00
Lucien Greathouse
dc7c27e619
Remove old crusty docs
2019-07-03 14:39:25 -07:00
Lucien Greathouse
90661b7743
Release 0.5.0-alpha.12
2019-07-02 16:46:11 -07:00
Lucien Greathouse
d07571ea7e
Theme adjustments
2019-07-02 16:29:59 -07:00
Lucien Greathouse
fbf29e336f
Adjust theme colors with new brand, not very pretty yet
2019-07-02 16:27:19 -07:00
Lucien Greathouse
09a0a803a1
Update image branding in the plugin
2019-07-02 16:22:01 -07:00
Lucien Greathouse
dd0327ba85
Update Changelog in prep for next release
2019-07-02 16:18:04 -07:00
Lucien Greathouse
d900887d97
Add a test for meta files attached to Lua scripts
2019-07-02 16:15:24 -07:00
Lucien Greathouse
2a0efe70a5
Add rough tests to ensure broken projects stay broken
2019-07-02 16:09:49 -07:00
Lucien Greathouse
ce09e57315
Tighten up meta files a bit more
2019-07-02 15:53:44 -07:00
Lucien Greathouse
91023c5239
Update more repository links
2019-07-02 15:37:10 -07:00
Lucien Greathouse
714fb10fac
Remove old docs scripts and update links to new repo
2019-07-02 15:35:29 -07:00
Lucien Greathouse
aa3e43207f
Update documentation to include meta docs
2019-07-02 15:30:56 -07:00
Lucien Greathouse
e045989d39
Update Changelog
2019-06-27 22:31:05 -07:00
Lucien Greathouse
ad5695210d
More strict .meta.json files
2019-06-27 22:24:44 -07:00
Lucien Greathouse
4dab6e5008
Update README
2019-06-24 11:27:40 -07:00
Lucien Greathouse
522f26cf4e
Update docs config for new repo
2019-06-22 23:41:16 -07:00
Lucien Greathouse
3eca4bc439
Rework README
2019-06-21 18:02:09 -07:00
Lucien Greathouse
b374f67b52
Merge branch 'onboarding-docs'
2019-06-21 17:54:01 -07:00
Lucien Greathouse
c68277be2c
Update docs links
2019-06-21 17:51:38 -07:00
Lucien Greathouse
bb8a3e82e6
New doc site
2019-06-21 17:44:08 -07:00
Lucien Greathouse
b511d4ba53
Update dependencies
2019-06-21 17:20:38 -07:00
Lucien Greathouse
fd997d4bda
Update README
2019-06-20 15:34:35 -07:00
Lucien Greathouse
21d04a9f85
Add another bullet point
2019-06-19 10:41:44 -07:00
Lucien Greathouse
dcb5c12197
Fill out some new docs
2019-06-17 16:06:25 -07:00
Lucien Greathouse
125e8766c5
Fix failing snapshot test from previous change
2019-06-16 16:46:38 -07:00
Lucien Greathouse
7bce1f6df4
docs: Fix typos on 'Why Rojo' page
2019-06-16 16:29:08 -07:00
Lucien Greathouse
8f66fb6fef
Set source path on rbxm/rbxmx models
2019-06-13 17:40:28 -07:00
Lucien Greathouse
711e009e6d
Rename InitMeta to ExtraMetadata
2019-06-12 18:33:59 -07:00
Lucien Greathouse
212fe31cb3
Tweak mechanism that ignores .meta.json files
2019-06-12 18:29:48 -07:00
boyned//Kampfkarren
a3dc4fa001
Support for .meta.json files other than init ( #189 )
...
* Support for .meta.json files other than init
* Localize .meta.json application
2019-06-12 18:22:47 -07:00
Lucien Greathouse
ff53113358
Add test project for recent project strictness change
2019-06-12 16:02:27 -07:00
Lucien Greathouse
94cbe15b54
Reserve names starting with a dollar sign, closes #191 .
2019-06-12 15:54:28 -07:00
Lucien Greathouse
90516e035d
Refactor project to start making a little more sense
2019-06-12 15:11:19 -07:00
Lucien Greathouse
c77c754f6d
Give plugin GUI a name
2019-06-11 18:00:12 -07:00
Lucien Greathouse
288c52a2cd
Updated changelog
2019-06-11 17:56:06 -07:00
Lucien Greathouse
f0fa7326dd
Add an icon to the plugin toolbar button
2019-06-11 17:52:12 -07:00
Lucien Greathouse
f29b0f2f26
New UI, simpler
2019-06-11 17:31:42 -07:00
Lucien Greathouse
5dcac24f99
Add a square Rojo logo with transparent background
2019-06-11 15:00:21 -07:00
Lucien Greathouse
1eb11ac377
Add R logo icons
2019-06-11 15:00:09 -07:00
Lucien Greathouse
2e89cdcfad
Fix malformed Enum being emitted when using Project::save
2019-06-10 18:05:10 -07:00
Lucien Greathouse
1b0beccd3d
Update Changelog
2019-06-10 17:52:44 -07:00
Lucien Greathouse
abb5a72fc4
Update Changelog
2019-06-10 17:47:04 -07:00
Lucien Greathouse
bf706f7586
plugin: Upgrade Roact and rbx-dom
2019-06-10 17:29:03 -07:00
Lucien Greathouse
4459663510
Upgrade rbx-dom dependencies
2019-06-10 17:26:34 -07:00
Lucien Greathouse
68a34dc28b
Add a test project with unions
2019-06-10 16:46:05 -07:00
Lucien Greathouse
ba1826587c
docs: Add TypeScript section to 'Why Rojo?'
2019-06-07 20:45:59 -07:00
Lucien Greathouse
2e7a8d50b0
Add a warning when trying to load 0.4.x projects
2019-06-07 18:45:30 -07:00
Lucien Greathouse
2a4ca21050
Substantial documentation improvements
2019-06-07 18:29:09 -07:00
boyned//Kampfkarren
0ed6c57c7f
init.meta.json support ( #183 )
...
* A minimum viable product for init.meta.json
* Properties support
* Add ignoreUnknownChildren support
* Apply requested changes
* Use reflection guiding
* Add a script to the test
* Change to ignoreUnknownInstances
* Apply requested changes
2019-06-06 16:58:58 -07:00
Lucien Greathouse
983d44947e
Upgrade rbx-dom
2019-05-31 13:34:54 -07:00
Lucien Greathouse
5bd88dc82f
plugin: Switch to Roact refactored bindings branch, with real joinBindings!
2019-05-31 13:23:17 -07:00
Lucien Greathouse
51bbab803f
Update CHANGELOG
2019-05-30 23:59:14 -07:00
Lucien Greathouse
a587ba4558
Add warning for rojo build to rbxl
2019-05-30 23:57:35 -07:00
Lucien Greathouse
075b6cca30
Use new rbx_dom_lua API
2019-05-30 18:37:56 -07:00
Lucien Greathouse
4c263bbb3e
plugin: Update to newer rbx-dom with better error handling
2019-05-29 18:40:58 -07:00
Lucien Greathouse
420627d892
0.5.0-alpha.11
2019-05-29 14:07:15 -07:00
Lucien Greathouse
ce3a409997
Undo 0.5.0-alpha.10 release due to regression
2019-05-29 13:38:36 -07:00
Lucien Greathouse
0f9f1782ae
0.5.0-alpha.10
2019-05-29 13:24:06 -07:00
Lucien Greathouse
d4704a02c5
Upgrade dependencies
2019-05-29 13:15:22 -07:00
Lucien Greathouse
9ca2ed2c93
plugin: upgrade Roact
2019-05-16 18:45:35 -07:00
Lucien Greathouse
ae12ffdefb
Work around Roact bug
2019-05-16 18:45:00 -07:00
Lucien Greathouse
1e13097126
plugin: update rbx-dom
2019-05-16 18:33:37 -07:00
Lucien Greathouse
9b8a6b1168
Add terrain test project
2019-05-16 18:03:11 -07:00
Lucien Greathouse
8f6dda5cd3
Use rbx_xml 0.9.0's config to read unknown properties
2019-05-16 17:58:32 -07:00
Lucien Greathouse
91780f236e
Update dependencies
2019-05-16 17:58:19 -07:00
Lucien Greathouse
f16474815c
plugin: update rbx-dom
2019-05-15 11:19:05 -07:00
Lucien Greathouse
a8ff6d7e6e
Update dependencies
2019-05-14 18:23:01 -07:00
Lucien Greathouse
8395782a2e
Use Display instead of Debug for rbx_xml errors now
2019-05-14 17:55:18 -07:00
Lucien Greathouse
28ea625b01
Plugin: Port reconciler to use rbx_dom_lua
2019-05-14 14:22:55 -07:00
Lucien Greathouse
efc569f6ed
Plugin: Update rbx-dom
2019-05-14 14:22:44 -07:00
Lucien Greathouse
d377e10771
Update rbx-dom
2019-05-13 17:35:55 -07:00
Lucien Greathouse
fef85877e6
Add safeguards against accidentally committing model or place files
2019-05-13 17:29:41 -07:00
Lucien Greathouse
19135bfaf4
Add RbxDom library as piece of plugin
2019-05-13 17:29:41 -07:00
Lucien Greathouse
5a147fccc2
Add rbx-dom as Git submodule to plugin
2019-05-13 17:29:41 -07:00
Lucien Greathouse
20976814ba
Upgrade a bunch of small dependencies
2019-05-12 12:57:59 -07:00
Lucien Greathouse
27e2612fc9
Upgrade rbx_dom_weak, rbx_reflection, and rbx_xml
2019-05-12 12:57:24 -07:00
Lucien Greathouse
3ea432ef2d
Fix up docs on model/place files a little
2019-05-09 13:29:03 -07:00
Lucien Greathouse
fe6acbc1e3
Clean up repo cruft
2019-05-04 21:01:10 -07:00
Lucien Greathouse
379b162e64
Fix dependency paths changing.
...
Roact 1.0 changed from lib to src!
t changed from lib/t.lua to lib/init.lua, so we just use lib
2019-05-04 19:33:08 -07:00
Lucien Greathouse
84832955dd
Upgrade to Roact 1.0 and latest t
2019-05-04 00:05:45 -07:00
Lucien Greathouse
34b99a51c3
Relax debug assert in IMFS, since paths can alias now
2019-04-30 23:06:59 -07:00
Lucien Greathouse
fb5245e2af
Update dependencies
2019-04-22 18:26:28 -07:00
Diego Alpízar
ff0a830e0c
Minor typo fix ( #156 )
...
Fix repeated "available available"
2019-04-06 23:38:29 -07:00
eryn L. K
a365f071a4
Update installation.md ( #155 )
2019-04-05 17:20:53 -07:00
Lucien Greathouse
f290e7b5b2
Support implicit values in JSON models ( #154 )
...
* Support implicit values in JSON models
* Update Changelog
2019-04-05 15:17:58 -07:00
Lucien Greathouse
83a0ae673c
0.5.0-alpha.9
2019-04-04 21:20:00 -07:00
Lucien Greathouse
7de646c290
Upgrade dependencies
2019-04-04 18:35:18 -07:00
Lucien Greathouse
5d681a72ac
Rewrite CSV conversion to dodge Serde ( #152 )
...
* Rewrite CSV conversion to dodge Serde
* Update CHANGELOG
2019-04-04 18:21:55 -07:00
Lucien Greathouse
d725970e6e
Fix handling of CSV files with empty columns and rows ( #149 )
...
* Fix #147
* Add localization test project, fix empty rows in general
* Fill out 'normal' CSV in localization test project
* Update Changelog
2019-04-04 13:16:10 -07:00
Lucien Greathouse
54b82760cd
Switch 'rojo build' to use BufWriter, magic performance increase
2019-04-01 18:02:46 -07:00
Lucien Greathouse
77f79fa913
0.5.0-alpha.8
2019-03-29 17:36:43 -07:00
Lucien Greathouse
6db714a2b1
Special-case Lighting.Technology in setCanonicalProperty, temporary fix
2019-03-29 17:25:57 -07:00
Lucien Greathouse
913ac7c9f5
Update dependencies
2019-03-28 15:44:56 -07:00
Lucien Greathouse
eecbfd29e7
Update dependencies, adding a bunch of new features
2019-03-27 13:31:12 -07:00
Lucien Greathouse
41025225b2
Rewrite message queue with oneshot futures ( #139 )
2019-03-27 13:27:50 -07:00
Lucien Greathouse
07c7b28c03
Fix plugin unloading
2019-03-21 22:35:30 -07:00
Lucien Greathouse
3faf3d2a56
Update Changelog for #135
2019-03-20 10:42:18 -07:00
Lucien Greathouse
be094d5b7c
Make snapshot application communicative ( #135 )
...
* Add children sorting to snapshot_reconciler
* Update snapshot tests to include stable children order
* Bump dependencies, which should make this PR work
2019-03-20 10:39:53 -07:00
Lucien Greathouse
459673bd59
0.5.0-alpha.6
2019-03-19 18:24:30 -07:00
Lucien Greathouse
2968b70e6b
Listen to Plugin.Unloading.
...
Closes #127 .
2019-03-19 18:17:03 -07:00
Lucien Greathouse
b6989a18fc
Add conditionally-enabled typechecking using t
2019-03-19 17:57:19 -07:00
Lucien Greathouse
4d6a504836
Remove Rodux and Roact-Rodux, add t dependency
2019-03-19 16:34:53 -07:00
Lucien Greathouse
6c3737df68
Update Changelog
2019-03-19 16:31:34 -07:00
Lucien Greathouse
9f382ed9bd
Iterate on plugin reconciler
...
- Renamed setProperty to setCanonicalProperty, which is more usefully
descriptive. Also added a detailed comment.
- Fixed reconciler behavior with regards to removing known instances
when $ignoreUnknownInstances is set
2019-03-19 16:30:06 -07:00
Lucien Greathouse
f9e86e58d6
Add InstanceMap:destroyInstance for forgetting and destroying in one step
2019-03-19 16:29:56 -07:00
Lucien Greathouse
469f9c927f
Improve plugin place project for testing
2019-03-19 16:29:31 -07:00
Lucien Greathouse
312724189b
Remove ignore from old doc generator script
2019-03-14 14:20:38 -07:00
Lucien Greathouse
ec0a1f1ce4
New snapshot tests ( #134 )
...
* Changes project-related structures to use `BTreeMap` instead of `HashMap` for children to aid determiniusm
* Changes imfs-related structures to have total ordering and use `BTreeSet` instead of `HashSet`
* Upgrades dependencies to `bx_dom_weak`1.2.0 and rbx_xml 0.5.0 to aid in more determinism stuff
* Re-exposes the `RbxSession`'s root project via `root_project()`
* Implements `Default` for a couple things
* Tweaks visualization code to support visualizing trees not attached to an `RbxSession`
* Adds an ID-invariant comparison method for `rbx_tree` relying on previous determinism changes
* Adds a (disabled) test to start finding issues in the reconciler with regards to communicativity of snapshot application
* Adds a snapshot testing system that operates on `RbxTree` and associated metadata, which are committed in this change
2019-03-14 14:20:03 -07:00
Lucien Greathouse
ad93631ef8
Port to futures channel instead of std one.
...
Fixes #133 .
2019-03-12 11:45:39 -07:00
Lucien Greathouse
3b6238ff93
Add more types to plugin
2019-03-11 16:55:42 -07:00
Lucien Greathouse
5b9facee00
Fix up variable naming in serialize_unresolved_minimal
2019-03-11 16:35:54 -07:00
Lucien Greathouse
376f2a554a
Better default project, including minimal property types
2019-03-11 16:28:40 -07:00
Lucien Greathouse
5fd0bd3db9
Update/prune dependencies with help of cargo-outdated
2019-03-11 14:12:49 -07:00
Lucien Greathouse
2deb3bbf23
Add notable feature from dependency upgrade
2019-03-11 13:48:02 -07:00
Lucien Greathouse
01bef0c2b8
Update dependencies
2019-03-11 13:47:33 -07:00
Lucien Greathouse
b65a8ce680
0.5.0-alpha.5
2019-03-01 15:40:30 -08:00
Lucien Greathouse
5fc4f63238
Upgrade dependencies
2019-03-01 15:34:16 -08:00
Lucien Greathouse
9b0e0c175b
Add missing CHANGELOG note
2019-02-27 17:32:36 -08:00
Lucien Greathouse
eb97e925e6
Flip LiveSession::session_id private, add getter
2019-02-27 14:54:05 -08:00
Lucien Greathouse
16f8975b18
Flip project field of LiveSession private to prepare for multi-project future
2019-02-27 14:51:53 -08:00
Lucien Greathouse
5073fce2f7
Implement LiveSession::restart_with_new_project as foundation for reloading
2019-02-27 14:42:41 -08:00
Lucien Greathouse
cf5036eec6
Fix warnings compiling server
2019-02-27 00:49:38 -08:00
Lucien Greathouse
20be37dd8b
Improve error messages from bad snapshots
2019-02-27 00:47:02 -08:00
Lucien Greathouse
93349ae2dc
Use rbx_reflection to allow type inference on projects ( #130 )
...
* Start dependency on rbx_reflection
* Alive and working, all tests pass
* Update CHANGELOG
2019-02-26 22:51:21 -08:00
Lucien Greathouse
be81de74cd
Disable Lua tests for now, since they need features Lemur doesn't have
2019-02-24 00:58:02 -08:00
Lucien Greathouse
88e739090d
WIP: Server plugins via rlua (Lua 5.3) ( #125 )
...
* Add 'plugins' field to project and add rlua
* Scaffold out new SnapshotContext type (again) with plugin state
* Almost functional snapshot system with rlua proof-of-concept
* Gate plugin config on 'plugins-enabled' feature, tell Travis to test all features
* Guard remaining plugin setup code behind feature
* Bump minimum version to 1.33, should've caught this before
* Whoops, latest Rust is 1.32, not 1.33
2019-02-24 00:31:58 -08:00
Lucien Greathouse
7f324f1957
Update CHANGELOG
2019-02-22 15:57:46 -08:00
Lucien Greathouse
4f31c9e72f
Fix /api/read and /api/subscribe, re-add debug output
2019-02-22 15:56:24 -08:00
Lucien Greathouse
c9a663ed39
Remove Rouille and port everything to Hyper
2019-02-22 15:11:27 -08:00
Lucien Greathouse
105d8aeb6b
Start to stub out sub-services
2019-02-22 13:08:07 -08:00
Lucien Greathouse
6ea1211bc5
It's alive!
2019-02-22 10:50:14 -08:00
Lucien Greathouse
c13291a598
Break apart web interface between UI and API
2019-02-19 11:44:24 -08:00
Lucien Greathouse
aaa78c618c
Move diagnostics page to use Ritz, show server version
2019-02-19 11:27:22 -08:00
Lucien Greathouse
2890c677d4
Bump dependency from rbx_tree 0.2.0 to rbx_dom_weak 0.3.0
2019-02-14 17:22:44 -08:00
Lucien Greathouse
51a010de00
Update CHANGELOG
2019-02-11 13:48:20 -08:00
Lucien Greathouse
ca0aabd814
Preload plugin assets at start.
...
Closes #121 .
2019-02-11 13:47:49 -08:00
Lucien Greathouse
91d1ba1910
Add test for rojoValueToRobloxValue, fails Lemur because of missing APIs right now
2019-02-11 11:43:17 -08:00
Lucien Greathouse
c7c739dc00
Fix test bootstrap script for testing in Studio
2019-02-11 11:43:06 -08:00
Lucien Greathouse
7a8389bf11
Update CHANGELOG
2019-02-11 11:42:40 -08:00
Lucien Greathouse
5f062b8ea3
Make the plugin support non-primitive types
2019-02-11 10:55:03 -08:00
Lucien Greathouse
b9ee14a0f9
Remove unused Cargo features section
2019-02-11 10:27:09 -08:00
Lucien Greathouse
c3baf73455
Update documentation for alpha 4
2019-02-08 18:29:23 -08:00
Lucien Greathouse
4a597e0ba7
0.5.0-alpha.4
2019-02-08 18:20:48 -08:00
Lucien Greathouse
d5f3e25bea
New docs
2019-02-08 18:03:46 -08:00
Lucien Greathouse
5e4c1a8359
Flatten out docs
2019-02-08 15:41:17 -08:00
Lucien Greathouse
d86e655ad2
Update CHANGELOG
2019-02-08 14:07:21 -08:00
Lucien Greathouse
80154bbf9f
Build with static CRT on Windows, fixes #89 .
2019-02-08 13:52:57 -08:00
Lucien Greathouse
be853ba2a7
Improve docs, add internals guide
2019-02-07 17:11:35 -08:00
Lucien Greathouse
4d3036d030
Add more design documentation into the codebase for high-level concepts
2019-02-07 15:26:01 -08:00
Lucien Greathouse
ecb9b5e28f
Support nested partitions and partitions directly targeting services ( #122 )
...
* Do the nested partition thing
* Tidy up touched code
* Add nested partition test project, not fully functional
* Clean up variable names, move path_metadata mutation strictly into snapshot_reconciler
* Remove path_metadata, snapshotting is now pure
* Factor out snapshot metadata storage to fix a missing case
* Pull instance_name out of per_path_metadata, closer to what we need
* Refactor to make metadata make more sense, part one
* All appears to be well
* Cull 'metadata_per_path' in favor of 'instances_per_path'
* Remove SnapshotContext
* InstanceMetadata -> PublicInstanceMetadata in web module
* Build in snapshot testing system for testing... snapshots?
* Remove pretty_assertions to see if it fixes a snapshot comparison bug
* Reintroduce pretty assertions, it's not the cause of inequality
* Fix snapshot tests with custom relative path serializer
2019-02-07 14:55:01 -08:00
Lucien Greathouse
38e3c198f2
Update README
2019-02-05 10:30:09 -08:00
Lucien Greathouse
2f64501556
Add Rust 1.31.1 as fixed build target to Travis-CI
2019-02-05 10:17:13 -08:00
Lucien Greathouse
2c2554d73d
Update docs to talk about default.project.json
2019-02-01 18:03:41 -08:00
Lucien Greathouse
69d1accf3f
0.5.0-alpha.3
2019-02-01 17:19:00 -08:00
Lucien Greathouse
785bdb8ecb
Implement new project file name, default.project.json ( #120 )
...
* Implement new project file name, default.project.json
* Rename all test projects to default.project.json
* Update CHANGELOG
* Fix warning message typo
2019-02-01 17:06:03 -08:00
Lucien Greathouse
78a1947cec
Update CHANGELOG
2019-02-01 13:07:15 -08:00
Paul Doyle
0ff59ecb4e
Fix issue w/ existing files not being updated in imfs ( #119 )
...
* Fix issue w/ existing files not being updated in imfs
* Add a test for updating files
2019-01-31 20:24:42 -08:00
Lucien Greathouse
b58fed16b4
Fix uses using failure::Error
2019-01-30 10:29:38 -08:00
Lucien Greathouse
6719be02c3
Fall back to showing GraphViz source when GraphViz is not installed
2019-01-29 18:10:14 -08:00
Lucien Greathouse
8757834e07
Improve error reporting for IO issues
2019-01-29 17:29:47 -08:00
Lucien Greathouse
aa243d1b8a
Add sweet new live sync homepage
2019-01-28 18:30:42 -08:00
Lucien Greathouse
aeb18eb124
Refactor web code to make routing more clear
2019-01-28 18:23:57 -08:00
Lucien Greathouse
6c3e118ee3
Sort inputs in LiveSession
2019-01-28 17:50:47 -08:00
Lucien Greathouse
3c0fe4d684
Reduce number of threads needed for FsWatcher
2019-01-28 17:11:01 -08:00
Lucien Greathouse
12fd9aa1ef
Tack on Cargo.lock, missing from previous commit
2019-01-28 16:03:12 -08:00
Lucien Greathouse
821122a33d
0.5.0-alpha.2
2019-01-28 15:45:52 -08:00
Lucien Greathouse
0d9406d991
Update docs links in README
2019-01-28 15:40:54 -08:00
Lucien Greathouse
350eec3bc7
Update docs and generator to be even smarter
2019-01-28 15:39:11 -08:00
Lucien Greathouse
e700b3105a
New, less-kludgy doc generator
2019-01-28 15:31:20 -08:00
Lucien Greathouse
dd2a730b4a
Update documentation
2019-01-28 15:16:42 -08:00
Lucien Greathouse
c6766bbe77
Fix timeout issue for real this time
2019-01-28 14:55:56 -08:00
Lucien Greathouse
e5d3204b6c
Implement .model.json files
...
Closes #97 .
2019-01-28 14:37:35 -08:00
Lucien Greathouse
4767cbd12b
Fix composing-models XML to only contain stuff implemented so far
2019-01-28 14:36:17 -08:00
Lucien Greathouse
deb4118c5d
Fix long-polling mixup
...
Fixes #110 .
2019-01-28 14:00:22 -08:00
Lucien Greathouse
4516df5aac
Fix message in rbx_session
2019-01-28 13:58:24 -08:00
Lucien Greathouse
663df7bdc2
Remove redundant debug assertions in imfs
2019-01-28 11:23:19 -08:00
Lucien Greathouse
e81f0a4a95
Improve IMFS robustness with out-of-order events
...
Fixes #111 .
2019-01-28 11:03:52 -08:00
Lucien Greathouse
38cd13dc0c
0.5.0-alpha.1
2019-01-25 18:01:37 -08:00
Lucien Greathouse
14fd470363
Upgrade all dependencies, including new rbx_ crates
2019-01-25 17:54:16 -08:00
Lucien Greathouse
fc8d9dc1fe
Wrap main call in a panic handler to show a nice error message on panic
2019-01-25 10:54:54 -08:00
Lucien Greathouse
1659adb419
Refactor entrypoint to be a bit easier to read
2019-01-25 10:32:10 -08:00
Lucien Greathouse
6490b77d4c
plugin: Hide placeholder inputs when focused
2019-01-23 18:18:00 -08:00
Lucien Greathouse
23463b620e
Rename test-plugin-project to place-project.json
2019-01-23 18:14:05 -08:00
Lucien Greathouse
6bc331be75
Update formatting of test plugin project
2019-01-23 18:10:59 -08:00
Lucien Greathouse
87f6410877
Clean up error handling in plugin
2019-01-23 18:10:53 -08:00
Lucien Greathouse
b1ddfc3a49
Fix adding/removing files in folders that have init scripts
2019-01-23 18:10:29 -08:00
Lucien Greathouse
d01e757d2f
UI visual tweaks
2019-01-21 18:34:10 -08:00
Lucien Greathouse
e593ce0420
Redesign UI
2019-01-21 17:50:49 -08:00
Lucien Greathouse
578abfabb3
Partial plugin retheme
2019-01-21 16:02:51 -08:00
Lucien Greathouse
aa7b7e43ff
Move CHANGELOG closer to keepachangelog.com format
2019-01-21 13:08:50 -08:00
Lucien Greathouse
af4d4e0246
Revamp CHANGES, rename to CHANGELOG
2019-01-21 13:06:14 -08:00
Lucien Greathouse
fecb11cba4
Adjust logging and error handling in the client
...
* HTTP responses in the error range (400+) now properly turn into errors
* ROJO_EPIPHANY_DEV_CREATE now creates more verbose configuration
* Default configuration values are now much more explicit
* Errors that cause session termination are labeled more clearly.
2019-01-21 10:57:03 -08:00
Lucien Greathouse
614f886008
Fix misnamed metadata coming from server
2019-01-21 10:56:01 -08:00
Lucien Greathouse
6fcb895d70
Tweak bottom of README, move LICENSE to LICENSE.txt
2019-01-18 20:57:19 -08:00
Lucien Greathouse
5a98ede45e
Tweak features section of README
2019-01-18 13:49:47 -08:00
Lucien Greathouse
779d462932
Rename Session to LiveSession, a better name
2019-01-17 18:24:49 -08:00
Lucien Greathouse
e301116e87
Make rbx visualization less noisy, removing paths
2019-01-17 17:45:24 -08:00
Lucien Greathouse
bd3a4a719d
Normalize metadata into metadata per instance and metadata per path ( #107 )
...
* Begin the metadata merge trek
* Tidy up path metadata, entry API, begin implementing
* Flesh out use of PathMap Entry API
* Metadata per instance is a go
* Tidy up naming for metadata per instance
* SnapshotMetadata -> SnapshotContext
2019-01-17 16:48:49 -08:00
Lucien Greathouse
4cfdc72c00
Fix folders having empty names
2019-01-16 17:28:06 -08:00
Lucien Greathouse
3620a9d256
Thread Cow<'str> through for naming nodes
2019-01-16 16:36:22 -08:00
Lucien Greathouse
f254a51d59
Remove unused config button
2019-01-16 00:01:40 -08:00
Lucien Greathouse
99bbe58255
Fix server to correctly resolve module script names
2019-01-15 23:58:25 -08:00
Lucien Greathouse
a400abff4c
Switch assets to use custom rounded rectangle
2019-01-15 23:58:10 -08:00
Lucien Greathouse
585806837e
Port over to new snapshot system
2019-01-15 18:04:06 -08:00
Lucien Greathouse
249aa999a3
Refactor mostly complete
2019-01-15 17:26:51 -08:00
Lucien Greathouse
aae1d8b34f
Add impl_from! macro to shorten up error code
2019-01-15 13:08:02 -08:00
Lucien Greathouse
9d3638fa46
Remove remaining 'extern crate' declarations
2019-01-15 12:44:49 -08:00
Lucien Greathouse
5b2a830d2d
Remove #[macro_use] from log crate
2019-01-15 12:43:02 -08:00
Lucien Greathouse
b87943e39d
Clean up and document code throughout the server
2019-01-15 12:38:31 -08:00
Lucien Greathouse
c421fd0b25
Add docs link for 0.5.x to complement 0.4.x
2019-01-14 18:36:04 -08:00
Lucien Greathouse
a1395a382a
Support semver metadata in plugin version
2019-01-14 18:23:10 -08:00
Lucien Greathouse
a54364642a
Upgrade to rbx_tree and friends 0.1.0
2019-01-14 18:21:01 -08:00
Lucien Greathouse
14ab85adbd
Remove instanceMetadataMap from ApiContext
2019-01-14 17:23:43 -08:00
Lucien Greathouse
c284b7de40
Remove instanceMetadataMap from plugin
2019-01-14 17:23:43 -08:00
Lucien Greathouse
e23056ac2f
Change API to message metadata inline and add visualization
2019-01-14 17:23:43 -08:00
Lucien Greathouse
8ce2e605a2
Remove site_url
2019-01-12 16:34:02 -08:00
Lucien Greathouse
9408247708
Update CHANGELOG
2019-01-12 15:58:45 -08:00
Lucien Greathouse
3e1c467b65
Upgrade and pin deps so that rbx-tree can break some APIs
2019-01-11 18:19:06 -08:00
Lucien Greathouse
811db2e668
0.5.0-alpha.0
2019-01-11 17:53:47 -08:00
Lucien Greathouse
f833642733
Adjust sizing on connection box
2019-01-11 15:51:25 -08:00
Lucien Greathouse
30ce927621
Refactor Session and ApiContext to allow cancelation
2019-01-11 15:45:32 -08:00
Lucien Greathouse
f21f01be1a
Factor out form text input
2019-01-11 15:26:25 -08:00
Lucien Greathouse
d81eaa6c13
Revamp UI using Kenney UI assets
2019-01-11 14:10:02 -08:00
Lucien Greathouse
5ad830a6d7
Set up icons, make UI a little more resiliant
2019-01-11 11:57:15 -08:00
Lucien Greathouse
14e1829164
Upgrade dependencies, which makes some rbxm models now work
2019-01-10 18:31:43 -08:00
Lucien Greathouse
0a2810a98b
Scaffold out model file support, still needs working decoders
2019-01-10 17:48:19 -08:00
Lucien Greathouse
7b84fce737
Fix syncing projects that mention properties with elevated permissions.
...
Permission errors aren't reported since I'm not sure what the user could do about them.
Some properties can be set in the model format but not in live-sync mode, like HttpEnabled.
2019-01-10 16:57:44 -08:00
Lucien Greathouse
1e1b409f8b
Add support for StringValue instances
...
Closes #93 .
2019-01-10 16:56:43 -08:00
Lucien Greathouse
5f91a8fdfe
Fix bug where HTTP being disabled would cause stickiness
2019-01-10 16:12:52 -08:00
Lucien Greathouse
5bb70c2675
Fix up plugin project naming
2019-01-10 15:32:50 -08:00
Lucien Greathouse
ed6d8415bd
Make plugin output less verbose
2019-01-10 15:29:38 -08:00
Lucien Greathouse
d53ffd8da2
Add support for uploading models, rename place_id to asset_id
2019-01-10 14:31:41 -08:00
Lucien Greathouse
d52ecaa050
Stop building documentation root, only version-specific docs
2019-01-10 11:15:11 -08:00
Lucien Greathouse
9ac001bd3e
Stupid workaround for Git statting files on branch switch
2019-01-09 23:22:42 -08:00
Lucien Greathouse
4b81166782
Pull after switching branches in generate-docs
2019-01-09 23:19:52 -08:00
Lucien Greathouse
95866d0f2e
Multiple versions of the docs
2019-01-09 23:14:59 -08:00
Lucien Greathouse
54b8a1aea5
Upgrade to latest MkDocs
2019-01-09 23:10:15 -08:00
Lucien Greathouse
0822aa9240
Update docs for Epiphany
2019-01-09 22:25:04 -08:00
Lucien Greathouse
c883850142
Support -o for build as an --output alias
2019-01-09 22:04:24 -08:00
Lucien Greathouse
54da826447
Implement rojo init for models
2019-01-09 21:30:00 -08:00
Lucien Greathouse
ce5ea92076
Add maplit, flesh out 'init' place command
2019-01-09 21:27:10 -08:00
Lucien Greathouse
98f8c5c0f2
Working 'init' command for places
2019-01-09 21:16:08 -08:00
Lucien Greathouse
6ced8f32b1
Make rojo-e2e a lib so 'cargo run' works again
2019-01-09 20:52:00 -08:00
Lucien Greathouse
f870107c66
Foundations for actual 'rojo init' implementation
2019-01-09 18:16:58 -08:00
Lucien Greathouse
4e7aa5d0a9
Expand changelog
2019-01-09 16:56:39 -08:00
Lucien Greathouse
779bcaeccb
Fix CI build (hopefully), migrate to using Cargo workspace
2019-01-09 16:49:23 -08:00
Lucien Greathouse
f2849357f8
Remove crusty example, add property to single-sync-point
2019-01-09 16:28:44 -08:00
Lucien Greathouse
998fca721a
Add support for properties metadata in project files
2019-01-09 16:28:31 -08:00
Lucien Greathouse
a83c68f2fc
Update dependencies
2019-01-09 16:28:17 -08:00
Lucien Greathouse
665809e11a
Remove accidental place file
2019-01-09 16:18:56 -08:00
Lucien Greathouse
a306fa26e0
Add extra diagnostic trace for path_created_or_updated
2019-01-09 13:47:58 -08:00
Lucien Greathouse
9574f8ebd7
Improve snapshot error robustness
...
* Unknown files are now ignored
* Errors bubble up a level higher
2019-01-09 13:40:46 -08:00
Lucien Greathouse
b62d946f83
Stub out new 'init' command
2019-01-09 11:23:00 -08:00
Lucien Greathouse
b26b36da5d
Update CHANGES
2019-01-09 10:52:18 -08:00
Lucien Greathouse
8d640ab467
Add more alternative projects to README
2019-01-09 10:18:21 -08:00
Lucien Greathouse
eff4301027
Add case in reconciler to handle LocalizationTable Contents
2019-01-08 18:30:09 -08:00
Lucien Greathouse
0be4e6921d
Implement CSV-format LocalizationTable serialization
2019-01-08 18:16:04 -08:00
Lucien Greathouse
049875e8fc
Update plugin config to work with Git master Rojo
2019-01-08 17:19:26 -08:00
Lucien Greathouse
b9f7d3d889
Smarter reconciliation algorithm
2019-01-08 14:23:48 -08:00
Lucien Greathouse
70ba101fe1
Add more types in rbx_snapshot
2019-01-08 11:28:57 -08:00
Lucien Greathouse
b2753cb268
Tidy and document RbxSession more
2019-01-08 11:18:35 -08:00
Lucien Greathouse
11f398b553
Improve init script support
...
- init.server.lua and init.client.lua are now supported again
- Updating an init script no longer nukes its parent
2019-01-08 10:53:36 -08:00
Lucien Greathouse
24a4099d82
Add TODOs to upload
2019-01-07 14:13:02 -08:00
Lucien Greathouse
99ea374fc5
Add 'upload' command to publish places to Roblox for you
2019-01-07 14:01:53 -08:00
Lucien Greathouse
1992ce1cfb
server: Update dependencies
2019-01-07 14:01:34 -08:00
Lucien Greathouse
2724534156
Factor out reconciliation into separate module
2019-01-04 18:34:48 -08:00
Lucien Greathouse
c57989a790
plugin: Title bar in session window, clean up Config
2019-01-04 18:23:11 -08:00
Lucien Greathouse
1888c83b6e
server: Update dependencies
2019-01-04 18:22:53 -08:00
Lucien Greathouse
837fd22254
Update README to indicate that the new year happened
2019-01-04 15:44:59 -08:00
Lucien Greathouse
02a3da111a
plugin: Fix test runner for new TestEZ
2019-01-04 14:55:53 -08:00
Lucien Greathouse
5c2bf65eaa
protocol/config: ignoreUnknown -> ignoreUnknownInstances
2019-01-04 14:30:00 -08:00
Lucien Greathouse
b5ae6a5785
server: Fix broken test from adding more Project fields
2019-01-04 14:21:16 -08:00
Lucien Greathouse
699e07a0f7
plugin: Add support for expectedPlaceIds in the protocol
2019-01-04 14:11:33 -08:00
Lucien Greathouse
b8025452bf
server: Make servePlaceId into a list of IDs, servePlaceIds
2019-01-04 14:11:06 -08:00
Lucien Greathouse
1138c05dff
plugin: Remove unused import
2019-01-04 13:49:08 -08:00
Lucien Greathouse
ae36688bf2
server: Add servePlaceId for verifying correct place IDs
2019-01-04 13:48:50 -08:00
Lucien Greathouse
64e2ef3d3b
Fix build issue, add servePort project option
2019-01-04 13:40:10 -08:00
Lucien Greathouse
9cfeee0577
server: Make 'rojo serve' respect --port option
2019-01-04 13:26:09 -08:00
Lucien Greathouse
86e0f3fabe
plugin: UI pretty much done
2019-01-04 11:54:12 -08:00
Lucien Greathouse
edcb3d8638
plugin: ConnectPanel now accepts button callbacks
2019-01-04 11:02:54 -08:00
Lucien Greathouse
1582d8f504
plugin: Migrate 'merge' utility into Dictionary module
2019-01-04 10:59:47 -08:00
Lucien Greathouse
5816bb64dc
Start work on plugin UI, this is pretty painful
2019-01-03 18:06:24 -08:00
Lucien Greathouse
b7a28aa511
Upgrade all plugin dependencies
2019-01-03 18:06:11 -08:00
Lucien Greathouse
37ed80055b
Remove unused import
2019-01-03 16:28:25 -08:00
Lucien Greathouse
e6c2f1c15d
Cleaned up and polished session flow
...
- Sessions can now be restarted if they error
- Terminology is much easier to follow in the plugin
- More change cases are handled correctly
2019-01-03 15:23:23 -08:00
Lucien Greathouse
a74c11aef5
Expand visualization to show IDs
2019-01-03 15:22:38 -08:00
Lucien Greathouse
ad3999066d
Expand diagnostics and exploratively fix some edge cases
2019-01-02 15:16:23 -08:00
Lucien Greathouse
77c10d14c9
Support changing instance ClassName
2019-01-02 14:19:41 -08:00
Lucien Greathouse
8c2e430a56
Add more diagnostics
2019-01-02 14:19:26 -08:00
Lucien Greathouse
0aaefe9a66
C:/Program Files/Git/api/visualize -> /visualize/rbx, added /visualize/imfs
2019-01-02 14:00:35 -08:00
Lucien Greathouse
14db86e4b7
Fix luacheck errors
2019-01-02 13:11:29 -08:00
Lucien Greathouse
9949a6c9ee
Implement more reconciliation
2019-01-02 00:21:19 -08:00
Lucien Greathouse
9bf5bd11e2
Add visualization stuff using GraphViz at /api/visualize
2019-01-02 00:18:28 -08:00
Lucien Greathouse
a3cc39cd92
Attempt to preserve sync point names
2019-01-01 23:46:15 -08:00
Lucien Greathouse
45af35cccd
Enable stable Rust again
2019-01-01 17:02:46 -08:00
Lucien Greathouse
20e9688268
Fininsh config -> metadata migration
2019-01-01 15:59:26 -08:00
Lucien Greathouse
3be5988083
config_map -> instance_metadata_map
2019-01-01 14:13:21 -08:00
Lucien Greathouse
474d877290
Plugin half of configMap
2018-12-30 22:58:12 -08:00
Lucien Greathouse
b6a2b7dded
Fix naming for InstanceProjectNodeConfig
2018-12-30 22:57:22 -08:00
Lucien Greathouse
2e42c28485
Add execute permission to test-scratch-project
2018-12-30 22:57:08 -08:00
Lucien Greathouse
4453211c0d
Server component of config maps
2018-12-30 22:43:23 -08:00
Lucien Greathouse
01dd603bd5
Vertically align output for monospace consoles
2018-12-30 21:25:40 -08:00
Lucien Greathouse
fff71e1de0
Accept connections from all addresses
2018-12-30 21:25:22 -08:00
Lucien Greathouse
c0ffbd360e
Fix name assignment for sync points
2018-12-30 20:21:46 -08:00
Lucien Greathouse
2f1aadd497
Tinkering with zero testing
2018-12-29 22:59:41 -08:00
Lucien Greathouse
645ab0ae98
Fix up test scratch project snippet to accept a project as an arg
2018-12-17 18:38:29 -08:00
Lucien Greathouse
9ac7ebc335
Hacky reify/reconcile stuff, mostly works
2018-12-17 18:37:38 -08:00
Lucien Greathouse
d807d22350
Basic reification, works for model-like projects but not place-like ones
2018-12-17 17:52:00 -08:00
Lucien Greathouse
05594ecca0
Update timeout detection
2018-12-17 17:51:25 -08:00
Lucien Greathouse
a511a5b259
Upgrade dependencies
2018-12-17 17:36:03 -08:00
Lucien Greathouse
9125f96302
Get rid of intermediate 'modules' folder in plugin
2018-12-17 17:23:07 -08:00
Lucien Greathouse
1b9ab43b6d
Path and change tracking working
2018-12-17 17:06:14 -08:00
Lucien Greathouse
1176c9bbf1
Add little harness to test against a new project without accidentally committing junk
2018-12-17 17:05:58 -08:00
Lucien Greathouse
65e551c5cf
Move InstanceChanges into rbx_snapshot
2018-12-17 14:20:19 -08:00
Lucien Greathouse
8fadafcd24
Track instance changes inside rbx_snapshot
2018-12-17 14:18:32 -08:00
Lucien Greathouse
57442a4848
Make MessageQueue generic, collapse Message into a single struct
2018-12-17 13:22:29 -08:00
Lucien Greathouse
7154f2c328
Reorganize and clean up rbx_snapshot a bit
2018-12-17 13:02:40 -08:00
Lucien Greathouse
e3e4809446
Flesh out project loading tests
2018-12-17 12:50:40 -08:00
Lucien Greathouse
5707b8c7e8
Descent-based create/update mechanism
2018-12-14 23:34:31 -08:00
Lucien Greathouse
f125814847
Trim up dead/dying code
2018-12-14 21:42:38 -08:00
Lucien Greathouse
893587040d
Permute order of FS change events semi-exhaustively
2018-12-14 21:31:48 -08:00
Lucien Greathouse
308369b14f
Implement more tests, fix up removal
2018-12-14 18:37:11 -08:00
Lucien Greathouse
9516a1aeea
Rework Imfs and expand tests a bit
2018-12-14 18:03:56 -08:00
Lucien Greathouse
f43dc99f7a
Imfs test
2018-12-14 14:33:45 -08:00
Lucien Greathouse
3feb8c3344
Fix midnight naming
2018-12-13 15:39:39 -08:00
Lucien Greathouse
4d0a2b806c
Remove RbxSnapshotValue for RbxValue
...
We can always change RbxValue to use Cow<'a, str> instead of String later if perf needs it
2018-12-13 10:53:32 -08:00
Lucien Greathouse
a89fff1a22
Add missing pieces of commit
2018-12-12 23:37:06 -08:00
Lucien Greathouse
52f01da400
Flesh out reconciler routine
2018-12-12 23:11:59 -08:00
Lucien Greathouse
b732c43274
Trimming of stuff to get into the snapshotting mood
2018-12-12 13:56:11 -08:00
Lucien Greathouse
ee0a5cada3
Snapshot madness
2018-12-11 23:30:53 -08:00
Lucien Greathouse
dbd499701f
Snapshot tinkering, this is an idea
2018-12-11 18:23:20 -08:00
Lucien Greathouse
fc3f750efb
Tweak logic in RbxSession to distinguish create and update
2018-12-03 18:09:01 -08:00
Lucien Greathouse
457f3c8f54
Break out PathMap from RbxSession
2018-12-03 17:39:55 -08:00
Lucien Greathouse
e4d3c3b045
Field name fix, clean up project paths
2018-12-03 17:19:44 -08:00
Lucien Greathouse
e4379e29af
Refactor upgrade messaging and version display
2018-12-03 17:04:08 -08:00
Lucien Greathouse
4542febaaf
Remove global logging variable
2018-12-03 16:59:04 -08:00
Lucien Greathouse
f691d8a6a5
Clean up DevSettings
2018-12-03 16:57:28 -08:00
Lucien Greathouse
503d7400f3
Add a dev settings feature, keyed off codename right now
2018-12-03 16:54:21 -08:00
Lucien Greathouse
061ea0e7a3
Unify logging
2018-12-03 16:24:28 -08:00
Lucien Greathouse
dd4d542d7e
Clean up and start work on Epiphany plugin
2018-12-03 13:54:54 -08:00
Lucien Greathouse
75359e2b83
Upgrade to latest rbx_tree (underscores! )
2018-12-03 11:58:09 -08:00
Lucien Greathouse
db7f8ffb1b
Update to latest rbx-tree
2018-12-03 11:52:06 -08:00
Lucien Greathouse
f59a9040fc
Update plugin project files, remove outdated DESIGN doc
2018-12-03 11:48:30 -08:00
Lucien Greathouse
5114d12daf
Start using failure for error management
2018-12-03 10:38:26 -08:00
boyned//Kampfkarren
13a7c1ba81
Fixed clippy warnings ( #90 )
...
* Fixed clippy warnings
* Fix as per review
2018-12-03 10:35:40 -08:00
Lucien Greathouse
26a7bb9746
Stub out RbxSession::path_updated a bit
2018-12-01 00:01:31 -08:00
Lucien Greathouse
d427f01224
Add Rojo 0.5.0+ config to plugin
2018-11-30 20:33:41 -08:00
Lucien Greathouse
25c73ed917
Add support for binary (rbxl and rbxm) build output
2018-11-30 18:08:03 -08:00
Lucien Greathouse
ce6a9dc448
Update dependencies
2018-11-30 18:02:30 -08:00
Lucien Greathouse
c50922e90c
Add ignoreUnknown to project nodes
2018-11-27 23:21:16 -08:00
Lucien Greathouse
bcd5fab33c
Add $properties to project nodes, unsure the full ramifications yet
2018-11-27 23:08:37 -08:00
Lucien Greathouse
49a2bc8ace
Fix example test
2018-11-27 21:17:38 -08:00
Lucien Greathouse
f1c5268670
Support init.lua and client/server scripts
2018-11-27 17:44:17 -08:00
Lucien Greathouse
29fe7492cc
Generate correct names for Lua scripts
2018-11-27 15:51:25 -08:00
Lucien Greathouse
2340a07408
Use project name for root object name
2018-11-27 15:16:48 -08:00
Lucien Greathouse
797c39347f
Upgrade dependencies
2018-11-27 15:15:02 -08:00
Lucien Greathouse
5a9d3959e2
Rework RbxSession to drop top-level garbage node, upgrade test-model
2018-11-27 15:11:10 -08:00
Lucien Greathouse
1e0a7dea73
Add test model, shore up 'build' command more
2018-11-27 14:40:19 -08:00
Lucien Greathouse
c61d6a5804
Build out 'build' command
2018-11-27 14:22:06 -08:00
Lucien Greathouse
8aee5c769f
Implement build command, shuffle around some internals to make it easier
2018-11-27 14:07:00 -08:00
Lucien Greathouse
7c585fcbce
Clean up bin, print better help text
2018-11-27 13:28:43 -08:00
Lucien Greathouse
f7689f3154
Take advantage of 2018 edition.
...
- Remove explicit 'extern crate' fields where useful
- Fix mutability of variable (unrelated?)
- Add rbxmx dependency, which needs 2018 edition
2018-11-27 10:50:52 -08:00
Lucien Greathouse
6617b8b6c4
Move server to (temporarily) require Rust Beta or stable 1.31+
2018-11-27 10:45:02 -08:00
Lucien Greathouse
9db31c9191
Stub out build command for generating rbxmx files
2018-11-27 10:38:44 -08:00
Lucien Greathouse
767a59a481
Handle removing folders and their path-to-ID associations better
2018-11-17 20:17:24 -08:00
Lucien Greathouse
f632444a0e
Update design graph
2018-11-17 14:58:07 -08:00
Lucien Greathouse
16c3c1f498
Vfs -> Imfs, clean up and document a bit
2018-11-17 13:51:22 -08:00
Lucien Greathouse
c8bb9bf2e9
Break out file watching into FsWatcher object
2018-11-17 13:46:56 -08:00
Lucien Greathouse
729ab25581
Expose more project stuff via the API
2018-11-17 01:14:07 -08:00
Lucien Greathouse
38e0f82812
Clean up VFS code to make it much more robust
2018-11-17 00:04:44 -08:00
Lucien Greathouse
b4fd2e31b3
Cleanup old modules and create more focused code
2018-11-16 23:27:19 -08:00
Lucien Greathouse
e09d23d6c2
RbxSession refactoring stuff
2018-11-16 23:14:32 -08:00
Lucien Greathouse
9ad0eabb85
Syncing sort of works
2018-11-16 20:32:39 -08:00
Lucien Greathouse
fb950cb007
Update test projects
2018-11-16 15:11:24 -08:00
Lucien Greathouse
60c5c2d344
Iterating on project format to make it friendlier
2018-11-16 14:51:14 -08:00
Lucien Greathouse
a29c4f2b65
Fix test warning
2018-11-08 13:25:50 -08:00
Lucien Greathouse
5a99281e23
Make Rojo build with rbx_tree
2018-11-08 13:22:09 -08:00
Lucien Greathouse
31e1f61548
Start refining RbxTree operations, going to be a new crate
2018-10-31 18:07:02 -07:00
Lucien Greathouse
dbad0a16c4
Comment out roblox_studio mechanisms for now, start using env_logger
2018-09-21 18:00:41 -07:00
Lucien Greathouse
a69cbf45df
Remove line break in HTTP debug output that studio messes up anyways
2018-08-26 22:17:30 -07:00
Lucien Greathouse
284f423220
Rename 'integration' to 'rojo-e2e'
2018-08-26 01:13:57 -07:00
Lucien Greathouse
81a18e88ad
Cooler sounding README
2018-08-26 01:13:20 -07:00
Lucien Greathouse
72bc77f1d5
WIP: Epiphany Refactor ( #85 )
2018-08-26 01:03:53 -07:00
Lucien Greathouse
80b9b7594b
Fix test failure due to bad test
2018-08-14 00:48:53 -07:00
Lucien Greathouse
7e671ee76a
Update to latest Lemur
2018-08-14 00:41:37 -07:00
Lucien Greathouse
5d608cb498
Remove old garbage code
2018-08-14 00:41:09 -07:00
Lucien Greathouse
c6982f70b4
Move test projects out of server folder
2018-08-13 15:35:04 -07:00
Lucien Greathouse
ef0d1e7cec
Update to latest Lemur
2018-08-13 15:31:36 -07:00
Lucien Greathouse
1db06194c7
Fix module layout to make more sense
2018-08-13 15:24:35 -07:00
Lucien Greathouse
f3e7e54675
Add useless comment
2018-07-17 20:25:04 -07:00
Lucien Greathouse
2bd64db8d9
Add test for modifying file a partition is pointing at directly
2018-07-03 16:32:45 -07:00
Lucien Greathouse
ae8098b80a
Do a bit of tinkering with instance names relative to files and partitions
2018-07-03 16:01:34 -07:00
Lucien Greathouse
bfe8dcd224
Try out some nonsense with services being special-ish cased
2018-07-02 18:34:12 -07:00
Lucien Greathouse
8a26994084
Simplify plugin installation by using Plugins instead of InstalledPlugins
2018-06-25 22:10:03 -07:00
Lucien Greathouse
77d0865d58
Remove redundnant comment and unused variable
2018-06-25 18:22:36 -07:00
Lucien Greathouse
bece337d79
Implement rudimentary reifer against new APIs
2018-06-25 17:58:30 -07:00
Lucien Greathouse
5a5da3240f
Add plugin bundling, sourced from target/plugin.rbxm
2018-06-25 00:53:21 -07:00
Lucien Greathouse
4138bb7ee1
install_location -> get_install_location
2018-06-24 23:55:13 -07:00
Lucien Greathouse
4088bb47f0
Add comment about roblox_studio::install_location
2018-06-24 23:54:40 -07:00
Lucien Greathouse
d10b6d324e
Add roblox_studio module for locating and interacting with install
2018-06-24 21:06:00 -07:00
Lucien Greathouse
43b27831eb
Update Lemur and TestEZ
2018-06-24 20:29:51 -07:00
Lucien Greathouse
20c9c89b27
RbxTree robustness
...
* delete_instance is no longer O(n)
* renamed get_instance to get_instance_and_descendants, which is more accurate
2018-06-24 20:26:58 -07:00
Lucien Greathouse
e1c420d37d
Switch RbxValue to an enum
2018-06-24 19:40:50 -07:00
Lucien Greathouse
be58598a3e
Make web tests no longer mutate original files
2018-06-24 19:37:30 -07:00
Lucien Greathouse
5e08093609
Update README and CHANGES from 0.4.12 release
2018-06-24 14:09:57 -07:00
Lucien Greathouse
f5599b95b3
Add TODOs to web tests
2018-06-11 15:37:59 -07:00
Lucien Greathouse
ba930ea584
Add TODO
2018-06-11 00:15:49 -07:00
Lucien Greathouse
ba3fa24f9a
Tests for modifying projects and using /subscribe
2018-06-11 00:15:15 -07:00
Lucien Greathouse
ff0f5cd49c
Test for children, make child matching more robust
2018-06-10 23:44:03 -07:00
Lucien Greathouse
284f5cfb71
Test /read endpoint for single partition case
2018-06-10 23:36:38 -07:00
Lucien Greathouse
871796f172
Merge branch 'master' of github.com:LPGhatguy/rojo
2018-06-10 23:24:19 -07:00
Lucien Greathouse
9733f059c2
Do something wrong instead of crashing for partitions pointing at files
2018-06-10 23:22:07 -07:00
Lucien Greathouse
db71bdfde7
Protocol v2 (0.5.0) ( #56 )
2018-06-10 23:11:10 -07:00
Lucien Greathouse
9aa27f4c11
Finish merging impl-v2
2018-06-10 23:10:41 -07:00
Lucien Greathouse
8893d0ddde
Update README
2018-06-10 23:07:33 -07:00
Lucien Greathouse
0b46860cdd
merge impl-v2: DESIGN.md and design.gv
2018-06-10 23:00:51 -07:00
Lucien Greathouse
ec1f9bd706
merge impl-v2: server
2018-06-10 22:59:04 -07:00
Lucien Greathouse
e30545c132
merge impl-v2: plugin
2018-06-10 22:53:22 -07:00
Lucien Greathouse
7d7f671920
merge impl-v2: .editorconfig
2018-06-10 22:50:37 -07:00
Lucien Greathouse
fb7bfa928a
Release 0.4.11
2018-06-10 15:54:57 -07:00
Lucien Greathouse
100d69262c
Update CHANGES
2018-06-10 15:52:42 -07:00
Lucien Greathouse
5e01658846
Remove straggling debug message
2018-06-10 15:50:30 -07:00
Lucien Greathouse
ccec93aee8
Untangle route terminology a bit
2018-06-10 15:50:03 -07:00
Lucien Greathouse
a089d82023
Fix incorrect route being assigned to init.lua and init.model.json files
2018-06-10 15:44:56 -07:00
Lucien Greathouse
82ba583fa0
Fix incorrect synchronization for Plugin:_pull that would make polling flaky
2018-06-10 15:13:49 -07:00
Lucien Greathouse
1b82044d7d
Defensively insert existing instances into RouteMap
2018-06-10 15:03:36 -07:00
Lucien Greathouse
0d49a2e0af
Mention VS Code extension in getting started guide
2018-06-02 01:04:31 -07:00
Lucien Greathouse
1343d3a2a9
Pick up rest of changes for 0.4.10, oops
2018-06-02 00:50:35 -07:00
Lucien Greathouse
a86001b85c
Release 0.4.10
2018-06-01 23:51:35 -07:00
Lucien Greathouse
d6dd46c467
Fix JsonModelPlugin marking paths as changed correctly
2018-06-01 23:38:49 -07:00
Lucien Greathouse
320974074c
Update docs
2018-06-01 23:33:36 -07:00
Lucien Greathouse
7b824abe52
Update CHANGES
2018-06-01 23:30:59 -07:00
Lucien Greathouse
bfd33f4b8d
Support init.model.json
...
Closes #66 .
2018-06-01 23:29:39 -07:00
Lucien Greathouse
d5a21a0513
Update plugin .luacheckrc to be more strict
2018-06-01 23:11:58 -07:00
Lucien Greathouse
c894b38f06
Improve plugin API robustness
2018-06-01 23:11:50 -07:00
Lucien Greathouse
a86347ea32
Add typechecks to reconciler and improve robustness a touch
2018-06-01 22:34:11 -07:00
Lucien Greathouse
b60bfc7495
Make nil checks more robust.
...
This represents an evolution in how I've been thinking about Lua -- using boolean coercion
is generally a bad idea I think because it obscures the underlying types.
It also makes it so that if a boolean is eronneously passed into a function, and it
happens to be a 'false' value, it will be coerced into the nil case instead of being
reported as an error, no matter how unintuitive the resulting error might be.
2018-06-01 22:21:59 -07:00
Lucien Greathouse
4b2f27b26d
Fix error when targeting invalid services
2018-06-01 22:17:54 -07:00
Lucien Greathouse
f4d7dda8e3
Make docs on JSON model versioning more explicit
2018-05-26 17:19:37 -07:00
Lucien Greathouse
0d6e3e66ce
Release 0.4.9
2018-05-26 17:02:04 -07:00
Lucien Greathouse
7e4d451765
Update Sync Details docs
2018-05-26 17:00:23 -07:00
Lucien Greathouse
804bbc93b7
Make JSON models less strict
2018-05-26 16:59:09 -07:00
Lucien Greathouse
e7fe4ac3ec
Remove vestigial backwards syncing functionality.
...
This functionality won't be present until the refactor in 0.5.0
2018-05-26 16:44:25 -07:00
Lucien Greathouse
40c41b4400
Update Sync Details docs to mention how JSON models work.
...
Closes #71 .
2018-05-26 16:41:38 -07:00
Lucien Greathouse
0936c7c97d
Fix indentation in CHANGES
2018-05-26 16:23:13 -07:00
Lucien Greathouse
9ac537d38f
Add entry to CHANGES
2018-05-26 16:23:09 -07:00
Lucien Greathouse
fcfd55ff76
Fix error in RouteMap
...
Closes #72 .
2018-05-26 16:19:58 -07:00
Lucien Greathouse
c2495ed57f
Release 0.4.8 (oops)
2018-05-25 23:42:31 -07:00
Lucien Greathouse
6ad763fc01
Fix flip-flopped arguments in RouteMap:_removeInternal
2018-05-25 23:40:34 -07:00
Lucien Greathouse
c856a3e361
Release 0.4.7
2018-05-25 23:31:01 -07:00
Lucien Greathouse
aa5f0cc335
Issue a warning if no partitions are specified during serve.
...
Closes #40
2018-05-22 11:04:53 -07:00
Lucien Greathouse
b067335bbf
Update CHANGES
2018-05-22 10:55:23 -07:00
Jonathan Holmes
7d24a14004
Added plugin icons to Rojo ( #70 )
2018-05-22 10:52:55 -07:00
Lucien Greathouse
910be640e9
Release 0.4.6
2018-05-21 13:26:25 -07:00
Lucien Greathouse
3137753afa
Update CHANGES
2018-05-21 13:09:00 -07:00
Lucien Greathouse
000ff351a5
Improve plugin handling with regards to restarts and UI
...
Closes #67 .
2018-05-21 13:05:52 -07:00
Lucien Greathouse
533c8ddaf7
Update CHANGES
2018-05-21 12:55:41 -07:00
Lucien Greathouse
f777d1b6c6
Update CHANGES
2018-05-21 12:52:46 -07:00
Lucien Greathouse
8b17d3b7d9
Intense robustness pass
2018-05-21 12:48:25 -07:00
Lucien Greathouse
6fbe1daf8e
Add folder for testing script duplication bug
2018-05-21 12:47:51 -07:00
Lucien Greathouse
3bd191414b
Update CHANGES
2018-05-21 11:45:55 -07:00
Lucien Greathouse
fd2cb3495b
Make reconciler more robust with regards to RouteMap
2018-05-21 11:21:31 -07:00
Lucien Greathouse
e9d33bdc02
Skip reparenting if parent is the same
2018-05-21 11:16:56 -07:00
Lucien Greathouse
c0f4b31ab3
Make sure all descendants get removed from the RouteMap
2018-05-21 10:40:06 -07:00
Lucien Greathouse
78de30dcf2
Fix missing colon in plugin stopped polling message
2018-05-01 14:36:25 -07:00
Lucien Greathouse
23c59dcae7
0.4.5
2018-05-01 12:29:48 -07:00
Lucien Greathouse
274ba5810b
Update to Rouille 2.1 and latest dependencies
2018-04-22 17:35:21 -07:00
Lucien Greathouse
3661d0daec
Show name of project when starting server
2018-04-22 17:19:21 -07:00
Lucien Greathouse
f215df891c
Decrease debounce timeout, which will make polling much snappier
2018-04-22 16:43:32 -07:00
Lucien Greathouse
ce5fe00a66
Delete Promise.spec.lua
2018-04-21 01:16:19 -07:00
Lucien Greathouse
2d71e3ebea
Switch to library version of Promise
2018-04-20 23:26:50 -07:00
Lucien Greathouse
187194a615
Keep track of actual file name in VfsItem.
...
This should fix the case of a partition pointed directly at a file
turning the object into a `StringValue`.
Fixes #57 .
2018-04-20 23:13:43 -07:00
Lucien Greathouse
9e956e593d
Expand test project to have a partition targeting a script directly
2018-04-20 23:13:01 -07:00
Lucien Greathouse
c2cfcc7a2c
Prevent syncing while a sync is already in progress.
...
I'm fairly confident that there will be zero cases where the plugin gets
into a bad state where you can't sync.
This change also prefixes most of Rojo's messages with `Rojo:` to make
them easier to identify.
Fixes #61 .
2018-04-20 22:29:58 -07:00
Lucien Greathouse
8c482f75dd
Improve error messages for 'serve' command.
...
Rojo now throws an error if no project file could be found.
Fixes #63 .
2018-04-20 21:45:48 -07:00
Lucien Greathouse
29a83cb626
Update LICENSE
2018-04-12 00:18:45 -07:00
Lucien Greathouse
a563e4c381
Update LICENSE
2018-04-12 00:13:09 -07:00
Lucien Greathouse
9cee587f22
Remove documentation from README and point to snazzy new documentation website
2018-04-08 00:16:21 -07:00
Lucien Greathouse
b5cc243466
Flesh out documentation, normalize markdown indentation
2018-04-08 00:09:28 -07:00
Lucien Greathouse
73c6b5a08c
0.4.4
2018-04-07 22:58:58 -07:00
Lucien Greathouse
1f5a686570
Fix small regression that I missed for 0.4.3
2018-04-07 22:57:48 -07:00
Lucien Greathouse
6fc497f95e
0.4.3
2018-04-07 22:54:59 -07:00
Lucien Greathouse
52eea667a7
Make plugin connection much more robust, with better errors
2018-04-07 22:24:42 -07:00
Lucien Greathouse
c2f7e268ff
Update changelog
2018-04-07 20:13:07 -07:00
Validark
31e5c558ab
Open Http Properties upon HttpEnabled prompt ( #58 )
2018-04-07 20:10:55 -07:00
Lucien Greathouse
7a7ac9550d
Update server dependencies
2018-04-04 23:09:02 -07:00
Lucien Greathouse
4d0fdf0dfd
0.4.2
2018-04-04 23:06:57 -07:00
Lucien Greathouse
b448e8007e
Fix duplication 0.4.x duplication bug for good
2018-04-04 23:05:01 -07:00
Lucien Greathouse
bad0e67266
Remove extra spawn in server code
2018-04-04 23:02:46 -07:00
Lucien Greathouse
3dee3dd627
Fix README whitespace inconsistency
2018-04-04 00:14:23 -07:00
Lucien Greathouse
4772350968
Version 0.4.1
2018-04-01 23:39:19 -07:00
Lucien Greathouse
eabcc0bd1d
Add root gitignore to ignore mkdocs generated site
2018-04-01 23:36:04 -07:00
Lucien Greathouse
3a3af6ab10
Introduce mkdocs documentation
2018-04-01 23:35:18 -07:00
Lucien Greathouse
9723622b66
Bump server to version 0.4.1, update dependencies
2018-04-01 23:30:33 -07:00
Lucien Greathouse
3b1d647acb
Bump license year
2018-04-01 23:30:25 -07:00
Lucien Greathouse
6fa925a402
Merge plugin back into main repository ( #49 )
2018-04-01 23:22:04 -07:00
Lucien Greathouse
c8f837d726
Add dates to each release in CHANGELOG
2018-04-01 21:23:22 -07:00
Lucien Greathouse
4557396564
Improve README in slight ways
...
Closes #14 .
2018-03-27 01:51:15 -07:00
Lucien Greathouse
d3d67d47e1
Add new plugin logo
2018-03-27 01:11:18 -07:00
Lucien Greathouse
42107e0715
Update changes again, one day we'll release 0.4.0
2018-03-27 00:57:20 -07:00
Lucien Greathouse
ed183e0805
Update CHANGES, 0.4.0
2018-03-27 00:55:52 -07:00
Lucien Greathouse
116be16392
Improve error message when a partition target doesn't exist.
...
Closes #46
2018-03-27 00:50:44 -07:00
Lucien Greathouse
2c188738e6
Document JSON syncing and fix README typos
2018-02-21 23:48:37 -08:00
Lucien Greathouse
ebffba9589
Add bi-directional syncing note from Quenty
2018-02-04 08:55:19 -08:00
Lucien Greathouse
ab644c3dfa
Update model.json example
2018-02-04 07:31:33 -08:00
Lucien Greathouse
c6cdd8a815
Change test project to test another edge case
2018-02-04 07:26:30 -08:00
Lucien Greathouse
d99df59d9b
'Wildcard' type in DefaultPlugin, change to PascalCase in API
2018-02-04 07:10:59 -08:00
Lucien Greathouse
c5f8247543
Add support for Bool and Number primitive types.
2018-02-03 23:16:29 -08:00
Lucien Greathouse
72557c9d23
Hip logo, totally not riffing on Babel
2018-01-29 15:57:10 -08:00
Lucien Greathouse
1a1b6d923f
Fix JsonModelPlugin setting the name of the resulting RbxInstance
2018-01-09 16:40:39 -08:00
Lucien Greathouse
27cf2c8740
Add error context to output for JsonModelPlugin
2018-01-09 11:31:48 -08:00
Lucien Greathouse
c08a598d3f
Fix broken file watcher implementation
...
This one took a little bit of tracking down; the VfsWatcher used to spawn a new
thread and then stall/park forever. With one of the recent changes to get rid of
the extra thread, VfsWatcher started getting dropped, which in turn dropped the
watchers created by the notify crate.
Because the threads only tie back to the VfsWatcher was a cloned
Arc<Mutex<VfsSession>>, everything was fine, except that their mpsc::Receiver
objects were no longer receiving events.
This manifested itself as the file watcher magically not watching any files.
Oops.
2018-01-08 12:33:36 -08:00
Lucien Greathouse
1318842c36
Update dependencies
2018-01-08 12:33:33 -08:00
Lucien Greathouse
86d7d033d7
Add 'route' to each RbxInstance, which tags how the instance was generated
2018-01-05 13:07:09 -08:00
Lucien Greathouse
2df1dfa1cb
Insulate VFS internals a little bit
2018-01-03 18:13:49 -08:00
Lucien Greathouse
78a1c658d8
Simplify and collapse some code from 'rojo serve'
2018-01-03 18:05:00 -08:00
Lucien Greathouse
f52f43fe90
Eliminate extra thread for VfsWatcher
2018-01-03 18:02:56 -08:00
Lucien Greathouse
58b244b7e9
Reorganize some of the unwieldly parts of the codebase
...
* Moved commands into their own folder to reduce `bin.rs`'s size
* Moved all of the VFS-related functionality into its own folder
* Documented a lot of functions, including a few very obscure ones
2018-01-03 16:45:46 -08:00
Lucien Greathouse
d8bcbee463
Rename RbxItem -> RbxInstance
2018-01-03 16:01:48 -08:00
Lucien Greathouse
f00152a9ac
Add a bit of documentation, this code is lacking it
2018-01-03 16:00:27 -08:00
Lucien Greathouse
9720c56765
Change each VfsItem to keep a full route instead of just its name
2018-01-03 15:56:19 -08:00
Lucien Greathouse
13ce04abb2
Add 'Contributing' section to README
2018-01-03 11:46:07 -08:00
Lucien Greathouse
ab22b55b84
Add further logging in verbose mode
2018-01-02 18:17:44 -08:00
Lucien Greathouse
73117edbe7
Enable JsonModelPlugin by default as a test
2018-01-02 15:41:10 -08:00
Lucien Greathouse
d7e2a3542c
Make notes about compatibility breakage and version 0.4.0
2018-01-02 14:52:51 -08:00
Lucien Greathouse
fe240ed577
Prototype JsonModelPlugin, untested
...
Also cleaned up all of the warnings in the other plugin code
2017-12-21 17:09:32 -08:00
Lucien Greathouse
5e98cbe68f
More detail in DESIGN.md
2017-12-21 16:10:47 -08:00
Lucien Greathouse
7a372dc50c
Add forgotten change about CPU usage
2017-12-21 14:21:03 -08:00
Lucien Greathouse
958b6660be
Update README and DESIGN
2017-12-20 23:00:48 -08:00
Lucien Greathouse
e731811911
Add changes from serve-instances merge
2017-12-20 22:54:10 -08:00
Lucien Greathouse
66144cef2f
Merge branch 'serve-instances'
2017-12-20 22:52:32 -08:00
Lucien Greathouse
13925f5879
Publish 0.3.2
2017-12-20 22:41:23 -08:00
Lucien Greathouse
68ba3fee6c
Fix max body size typo
2017-12-20 22:36:12 -08:00
Lucien Greathouse
95581dbaa6
Pass common plugin chain into web handler
2017-12-20 22:35:26 -08:00
Lucien Greathouse
aaaf3ba0b9
Implement handle_rbx_change API for plugins as a pass
2017-12-20 22:11:46 -08:00
Lucien Greathouse
b885cae086
Rename TransformResult -> TransformFileResult in preparation for two-way syncing
2017-12-20 22:01:38 -08:00
Lucien Greathouse
0f78eb933a
DESIGN doc, stub out /write endpoint
2017-12-20 22:00:01 -08:00
Lucien Greathouse
6ee9a48e20
Use plugin chain code in Vfs
2017-12-18 01:52:13 -08:00
Lucien Greathouse
f90c51e923
Move web server onto main thread
2017-12-18 01:20:04 -08:00
Lucien Greathouse
6472a2cbce
Add handle_file_change to plugin API
...
This solves the problem I was running into with the ScriptPlugin implementation -- if foo/init.lua changes, foo needs to be requested, not 'foo/init.lua' (which would then erroneously create a ModuleScript before this commit)
2017-12-17 22:47:16 -08:00
Lucien Greathouse
c75cbebbf0
Merge branch 'master' into serve-instances
2017-12-17 22:12:04 -08:00
Lucien Greathouse
2e340ff78c
Merge pull request #22 from Quenty/fix-21-high-cpu
...
Fix #21 : High CPU usage in a small project
2017-12-17 21:42:21 -08:00
James Onnen
5a20646c57
Address code review, remove unnecessary import
2017-12-17 23:40:32 -06:00
James Onnen
199ebda689
Use ::park() instead of ::sleep()
2017-12-17 14:34:31 -06:00
James Onnen
ae6ca6fb23
Fix #21 : High CPU usage in a small project
2017-12-17 14:20:24 -06:00
Lucien Greathouse
12bfcd7b66
Implement init.lua support in ScriptPlugin
2017-12-14 01:11:44 -08:00
Lucien Greathouse
d365bc076e
Add VfsItem::name to make comparisons easier
2017-12-14 01:11:44 -08:00
Lucien Greathouse
67ac6b7cec
First implementation of 'ScriptPlugin', which serves script files as scripts
2017-12-14 01:11:44 -08:00
Lucien Greathouse
01325c8c7e
Implement PluginChain
2017-12-14 01:11:44 -08:00
Lucien Greathouse
21e9625c36
Prototype plugin architecture, switch instance-based stuff to that
2017-12-14 01:11:44 -08:00
Lucien Greathouse
5bf1f11190
Hacky first go at it -- keeping the existing VfsItem infrastructure
...
I think this is actually a pretty reasonable flow.
2017-12-14 01:11:44 -08:00
Lucien Greathouse
b4e31ea35d
Fix serve path failing to be absolute when given as a relative path
2017-12-14 01:09:10 -08:00
Lucien Greathouse
7c6fe38346
CLI version 0.3.1
2017-12-14 00:24:01 -08:00
Lucien Greathouse
f89d491f29
Run rustfmt
...
I ignored some odd formatting it introduced relating to putting braces on newlines in if-let blocks. This might be a bug, but I didn't find any way to turn that off.
2017-12-13 12:05:11 -08:00
Lucien Greathouse
59b2401c2c
Add more detailed error reporting around invalid projects
2017-12-13 11:56:06 -08:00
Lucien Greathouse
b74ba141d1
Update dependencies, server v0.3.0
2017-12-12 15:01:36 -08:00
Lucien Greathouse
b60f06aa88
Update changelog to represent refactoring of server/client
2017-12-11 15:50:22 -08:00
Lucien Greathouse
f00bcc6d7e
Point to the rojo-plugin repository
2017-12-08 16:52:13 -08:00
Lucien Greathouse
d5b41e2bd4
Remove plugin source, moved to rojo-plugin
2017-12-08 16:50:30 -08:00
Lucien Greathouse
c9a53debc3
Add small config test
2017-12-08 16:32:32 -08:00
Lucien Greathouse
edd45ca02e
Update to Lemur master, 'fixes' Promise tests
2017-12-08 15:53:25 -08:00
Lucien Greathouse
f88cb67210
Back to being custom, since the 'Rust' image has a really old Python version
2017-12-08 15:46:50 -08:00
Lucien Greathouse
302c6cf663
Hybrid build script between Travis and custom installation...
2017-12-08 15:42:56 -08:00
Lucien Greathouse
7995b6eca4
Try radically changing the Travis script
2017-12-08 15:39:17 -08:00
Lucien Greathouse
fd7e737c20
Put back the original Rust config, maybe this will work
2017-12-08 14:26:29 -08:00
Lucien Greathouse
68b3d56619
Remove extra stuff I accidentally added :D
2017-12-08 14:23:58 -08:00
Lucien Greathouse
059ff1777b
Try some random fixes I saw on StackOverflow to work around Travis-CI bug
2017-12-08 14:23:37 -08:00
Lucien Greathouse
dd16cadb4c
Fix indentation, yaml is mean
2017-12-08 14:01:09 -08:00
Lucien Greathouse
551f75f39c
Implement Lua unit tests, this may fail
2017-12-08 13:59:36 -08:00
Lucien Greathouse
23ae0bc186
Wrap warning earlier in Promise
2017-12-08 11:34:22 -08:00
Lucien Greathouse
713a199419
Add spec.lua for testing -- Promise tests are currently broken
2017-12-07 18:08:03 -08:00
Lucien Greathouse
4dc705ee45
Update Rojo project paths to point to new dependencies
2017-12-07 17:36:47 -08:00
Lucien Greathouse
fe4678fdc5
Re-add dependencies with their new path
2017-12-07 17:36:06 -08:00
Lucien Greathouse
97682108aa
Update git module paths, still fighting git submodules a bit
2017-12-07 17:29:00 -08:00
Lucien Greathouse
23d4f45ac9
Fix use of services as partition targets
2017-12-07 16:56:20 -08:00
Lucien Greathouse
9fd6799f93
Fix Travis-CI README link
2017-12-07 15:53:45 -08:00
Lucien Greathouse
5898780e8e
Add note about testing to CHANGES
2017-12-07 15:52:24 -08:00
Lucien Greathouse
1ad20421e9
Move Windows-specific path test into its own file
2017-12-07 15:50:55 -08:00
Lucien Greathouse
4ff9033916
Update dependencies
2017-12-07 15:47:18 -08:00
Lucien Greathouse
37bb0d1aa9
Add Travis-CI configuration to start running tests
2017-12-07 14:48:02 -08:00
Lucien Greathouse
7042680a0a
Fixed usage of a partition pointing to a file instead of a folder
2017-12-07 14:42:30 -08:00
Lucien Greathouse
cafb547894
v0.2.3
2017-12-04 00:19:17 -08:00
Lucien Greathouse
35543c2790
Structured test-folder project
2017-12-04 00:17:46 -08:00
Lucien Greathouse
88efdb5ba4
Make tests compatible with TestEZ, provide 'runTests' script
2017-12-04 00:09:30 -08:00
Lucien Greathouse
eeff7cfd92
Add dependencies to rojo.json for development
2017-12-03 23:57:23 -08:00
Lucien Greathouse
f66cbe0049
Add dependencies:
...
* Roact
* Rodux
* RoactRodux
* TestEZ
2017-12-03 23:50:54 -08:00
Lucien Greathouse
d0c6f2a470
Clean up development a little bit -- when 'dev' is set to true, port 8001 is used
2017-12-03 19:20:54 -08:00
Lucien Greathouse
34d5de9f2c
Tighten init file handling, fixes some buggy edge cases by not supporting them
2017-12-03 19:02:58 -08:00
Lucien Greathouse
16676ebfa1
Add Studio Bridge to README, forgot it!
2017-12-03 13:35:18 -08:00
Lucien Greathouse
bf9be6ccae
Fix reconciler with init files, v0.2.2
2017-12-01 15:18:36 -08:00
Lucien Greathouse
974ebc33c2
Major documentation facelift, should be usable now
2017-12-01 14:07:06 -08:00
Lucien Greathouse
4b03a79cfe
Change config to work with plugin version v0.2.1
2017-12-01 02:49:49 -08:00
Lucien Greathouse
43cc350b7a
0.2.1
2017-12-01 02:48:43 -08:00
Lucien Greathouse
5685619c3a
Switch to using the latest Rojo release to sync itself
2017-12-01 02:40:08 -08:00
Lucien Greathouse
f3483ee2e0
0.2.0
2017-12-01 02:02:39 -08:00
Lucien Greathouse
60a9135452
Robust init.lua support
2017-12-01 01:55:34 -08:00
Lucien Greathouse
c3d6dc0e2c
First past at implementing init.lua support
2017-12-01 01:28:23 -08:00
Lucien Greathouse
2681972976
Much more robust reconciliation implementation
2017-12-01 00:53:41 -08:00
Lucien Greathouse
5e64773784
Improve plugin accuracy
2017-12-01 00:18:11 -08:00
Lucien Greathouse
c7171ef513
Add Rojo config for testing
2017-12-01 00:17:45 -08:00
Lucien Greathouse
63b21b90ff
Ripple verbosity flags through the server
2017-12-01 00:17:29 -08:00
Lucien Greathouse
7f3aaf4680
Fix Cargo metadata
2017-11-29 17:41:30 -08:00