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
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
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
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
4516df5aac
Fix message in rbx_session
2019-01-28 13:58:24 -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
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
3620a9d256
Thread Cow<'str> through for naming nodes
2019-01-16 16:36:22 -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
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
a54364642a
Upgrade to rbx_tree and friends 0.1.0
2019-01-14 18:21:01 -08:00
Lucien Greathouse
e23056ac2f
Change API to message metadata inline and add visualization
2019-01-14 17:23: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
1e1b409f8b
Add support for StringValue instances
...
Closes #93 .
2019-01-10 16:56:43 -08:00
Lucien Greathouse
998fca721a
Add support for properties metadata in project files
2019-01-09 16:28:31 -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
0be4e6921d
Implement CSV-format LocalizationTable serialization
2019-01-08 18:16:04 -08:00
Lucien Greathouse
b9f7d3d889
Smarter reconciliation algorithm
2019-01-08 14:23:48 -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
37ed80055b
Remove unused import
2019-01-03 16:28:25 -08:00
Lucien Greathouse
ad3999066d
Expand diagnostics and exploratively fix some edge cases
2019-01-02 15:16:23 -08:00
Lucien Greathouse
8c2e430a56
Add more diagnostics
2019-01-02 14:19:26 -08:00
Lucien Greathouse
a3cc39cd92
Attempt to preserve sync point names
2019-01-01 23:46:15 -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
4453211c0d
Server component of config maps
2018-12-30 22:43:23 -08:00
Lucien Greathouse
c0ffbd360e
Fix name assignment for sync points
2018-12-30 20:21:46 -08:00
Lucien Greathouse
1b9ab43b6d
Path and change tracking working
2018-12-17 17:06:14 -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
5707b8c7e8
Descent-based create/update mechanism
2018-12-14 23:34:31 -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
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
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
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
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