solid_objects 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +23 -0
- data/README.md +223 -15
- data/benchmark/adoption_latency.rb +5 -0
- data/benchmark/support.rb +35 -0
- data/docs/architecture.md +62 -15
- data/docs/authorization.md +98 -0
- data/docs/benchmarks.md +75 -1
- data/docs/correctness.md +19 -1
- data/docs/database-schema.md +5 -0
- data/docs/development.md +45 -4
- data/docs/fit.md +98 -0
- data/docs/migrating-existing-state.md +140 -0
- data/docs/operations.md +94 -4
- data/docs/roadmap.md +12 -3
- data/docs/security.md +28 -3
- data/docs/state-migrations.md +6 -0
- data/lib/generators/solid_objects/templates/solid_objects.rb +45 -0
- data/lib/solid_objects/activation.rb +33 -4
- data/lib/solid_objects/actor.rb +47 -6
- data/lib/solid_objects/actor_definition.rb +2 -0
- data/lib/solid_objects/actor_snapshot.rb +10 -4
- data/lib/solid_objects/application_write_guard.rb +24 -0
- data/lib/solid_objects/caller_process.rb +28 -0
- data/lib/solid_objects/cli.rb +44 -5
- data/lib/solid_objects/client.rb +98 -5
- data/lib/solid_objects/commit_action_registry.rb +42 -0
- data/lib/solid_objects/configuration.rb +27 -1
- data/lib/solid_objects/database_adapter.rb +28 -1
- data/lib/solid_objects/database_adapters/mysql.rb +46 -0
- data/lib/solid_objects/database_adapters/postgresql.rb +29 -0
- data/lib/solid_objects/database_adapters/sqlite.rb +28 -0
- data/lib/solid_objects/doctor.rb +311 -0
- data/lib/solid_objects/errors.rb +144 -0
- data/lib/solid_objects/executor.rb +64 -4
- data/lib/solid_objects/instance_pruner.rb +97 -0
- data/lib/solid_objects/message_pruner.rb +97 -0
- data/lib/solid_objects/message_reference.rb +9 -0
- data/lib/solid_objects/process_pruner.rb +49 -0
- data/lib/solid_objects/reference.rb +5 -0
- data/lib/solid_objects/state_snapshot.rb +41 -0
- data/lib/solid_objects/sync_deadline.rb +57 -0
- data/lib/solid_objects/sync_diagnostics.rb +133 -0
- data/lib/solid_objects/synchronous_invocation.rb +26 -7
- data/lib/solid_objects/test_helper.rb +78 -0
- data/lib/solid_objects/version.rb +1 -1
- data/lib/solid_objects/worker.rb +1 -1
- data/lib/solid_objects.rb +34 -0
- data/lib/tasks/solid_objects_tasks.rake +10 -0
- data/sig/generated/lib/solid_objects/activation.rbs +3 -0
- data/sig/generated/lib/solid_objects/actor.rbs +26 -0
- data/sig/generated/lib/solid_objects/application_write_guard.rbs +8 -0
- data/sig/generated/lib/solid_objects/caller_process.rbs +11 -0
- data/sig/generated/lib/solid_objects/cli.rbs +11 -2
- data/sig/generated/lib/solid_objects/client.rbs +15 -0
- data/sig/generated/lib/solid_objects/commit_action_registry.rbs +43 -0
- data/sig/generated/lib/solid_objects/configuration.rbs +27 -7
- data/sig/generated/lib/solid_objects/database_adapter.rbs +9 -0
- data/sig/generated/lib/solid_objects/database_adapters/mysql.rbs +8 -0
- data/sig/generated/lib/solid_objects/database_adapters/postgresql.rbs +8 -0
- data/sig/generated/lib/solid_objects/database_adapters/sqlite.rbs +8 -0
- data/sig/generated/lib/solid_objects/doctor.rbs +111 -0
- data/sig/generated/lib/solid_objects/errors.rbs +118 -0
- data/sig/generated/lib/solid_objects/executor.rbs +12 -0
- data/sig/generated/lib/solid_objects/instance_pruner.rbs +36 -0
- data/sig/generated/lib/solid_objects/message_pruner.rbs +42 -0
- data/sig/generated/lib/solid_objects/message_reference.rbs +3 -0
- data/sig/generated/lib/solid_objects/process_pruner.rbs +27 -0
- data/sig/generated/lib/solid_objects/reference.rbs +3 -0
- data/sig/generated/lib/solid_objects/state_snapshot.rbs +30 -0
- data/sig/generated/lib/solid_objects/sync_deadline.rbs +31 -0
- data/sig/generated/lib/solid_objects/sync_diagnostics.rbs +34 -0
- data/sig/generated/lib/solid_objects/synchronous_invocation.rbs +3 -0
- data/sig/generated/lib/solid_objects/test_helper.rbs +25 -0
- data/sig/generated/lib/solid_objects.rbs +12 -0
- metadata +26 -1
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: solid_objects
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Lucas Carlson
|
|
@@ -278,6 +278,7 @@ files:
|
|
|
278
278
|
- app/views/solid_objects/instances/index.html.erb
|
|
279
279
|
- app/views/solid_objects/instances/show.html.erb
|
|
280
280
|
- benchmark/activation_cache.rb
|
|
281
|
+
- benchmark/adoption_latency.rb
|
|
281
282
|
- benchmark/claim.rb
|
|
282
283
|
- benchmark/cold_actors.rb
|
|
283
284
|
- benchmark/concurrent_actors.rb
|
|
@@ -303,11 +304,14 @@ files:
|
|
|
303
304
|
- docs/adr/0012-not-active-jobs.md
|
|
304
305
|
- docs/adr/0013-database-adapters.md
|
|
305
306
|
- docs/architecture.md
|
|
307
|
+
- docs/authorization.md
|
|
306
308
|
- docs/benchmarks.md
|
|
307
309
|
- docs/correctness.md
|
|
308
310
|
- docs/database-schema.md
|
|
309
311
|
- docs/development.md
|
|
312
|
+
- docs/fit.md
|
|
310
313
|
- docs/implementation-plan.md
|
|
314
|
+
- docs/migrating-existing-state.md
|
|
311
315
|
- docs/operations.md
|
|
312
316
|
- docs/realtime.md
|
|
313
317
|
- docs/research/solid_queue.md
|
|
@@ -338,10 +342,12 @@ files:
|
|
|
338
342
|
- lib/solid_objects/actor_registry.rb
|
|
339
343
|
- lib/solid_objects/actor_snapshot.rb
|
|
340
344
|
- lib/solid_objects/actor_view.rb
|
|
345
|
+
- lib/solid_objects/application_write_guard.rb
|
|
341
346
|
- lib/solid_objects/broadcast_executor.rb
|
|
342
347
|
- lib/solid_objects/caller_process.rb
|
|
343
348
|
- lib/solid_objects/cli.rb
|
|
344
349
|
- lib/solid_objects/client.rb
|
|
350
|
+
- lib/solid_objects/commit_action_registry.rb
|
|
345
351
|
- lib/solid_objects/configuration.rb
|
|
346
352
|
- lib/solid_objects/context.rb
|
|
347
353
|
- lib/solid_objects/database_adapter.rb
|
|
@@ -349,31 +355,40 @@ files:
|
|
|
349
355
|
- lib/solid_objects/database_adapters/postgresql.rb
|
|
350
356
|
- lib/solid_objects/database_adapters/sqlite.rb
|
|
351
357
|
- lib/solid_objects/dead_letter_manager.rb
|
|
358
|
+
- lib/solid_objects/doctor.rb
|
|
352
359
|
- lib/solid_objects/dom_identity.rb
|
|
353
360
|
- lib/solid_objects/effect_executor.rb
|
|
354
361
|
- lib/solid_objects/effect_registry.rb
|
|
355
362
|
- lib/solid_objects/engine.rb
|
|
356
363
|
- lib/solid_objects/errors.rb
|
|
357
364
|
- lib/solid_objects/executor.rb
|
|
365
|
+
- lib/solid_objects/instance_pruner.rb
|
|
358
366
|
- lib/solid_objects/instrumentation.rb
|
|
359
367
|
- lib/solid_objects/lease.rb
|
|
360
368
|
- lib/solid_objects/lease_renewer.rb
|
|
361
369
|
- lib/solid_objects/log_subscriber.rb
|
|
362
370
|
- lib/solid_objects/mailbox.rb
|
|
371
|
+
- lib/solid_objects/message_pruner.rb
|
|
363
372
|
- lib/solid_objects/message_reference.rb
|
|
373
|
+
- lib/solid_objects/process_pruner.rb
|
|
364
374
|
- lib/solid_objects/process_registry.rb
|
|
365
375
|
- lib/solid_objects/reference.rb
|
|
366
376
|
- lib/solid_objects/reminder_scheduler.rb
|
|
367
377
|
- lib/solid_objects/serialization.rb
|
|
368
378
|
- lib/solid_objects/state.rb
|
|
379
|
+
- lib/solid_objects/state_snapshot.rb
|
|
369
380
|
- lib/solid_objects/stream_name.rb
|
|
370
381
|
- lib/solid_objects/stream_token.rb
|
|
371
382
|
- lib/solid_objects/supervisor.rb
|
|
383
|
+
- lib/solid_objects/sync_deadline.rb
|
|
384
|
+
- lib/solid_objects/sync_diagnostics.rb
|
|
372
385
|
- lib/solid_objects/synchronous_invocation.rb
|
|
386
|
+
- lib/solid_objects/test_helper.rb
|
|
373
387
|
- lib/solid_objects/turbo_stream_renderer.rb
|
|
374
388
|
- lib/solid_objects/version.rb
|
|
375
389
|
- lib/solid_objects/wake_up.rb
|
|
376
390
|
- lib/solid_objects/worker.rb
|
|
391
|
+
- lib/tasks/solid_objects_tasks.rake
|
|
377
392
|
- sig/generated/controllers/solid_objects/application_controller.rbs
|
|
378
393
|
- sig/generated/controllers/solid_objects/dead_letters_controller.rbs
|
|
379
394
|
- sig/generated/controllers/solid_objects/instances_controller.rbs
|
|
@@ -389,10 +404,12 @@ files:
|
|
|
389
404
|
- sig/generated/lib/solid_objects/actor_registry.rbs
|
|
390
405
|
- sig/generated/lib/solid_objects/actor_snapshot.rbs
|
|
391
406
|
- sig/generated/lib/solid_objects/actor_view.rbs
|
|
407
|
+
- sig/generated/lib/solid_objects/application_write_guard.rbs
|
|
392
408
|
- sig/generated/lib/solid_objects/broadcast_executor.rbs
|
|
393
409
|
- sig/generated/lib/solid_objects/caller_process.rbs
|
|
394
410
|
- sig/generated/lib/solid_objects/cli.rbs
|
|
395
411
|
- sig/generated/lib/solid_objects/client.rbs
|
|
412
|
+
- sig/generated/lib/solid_objects/commit_action_registry.rbs
|
|
396
413
|
- sig/generated/lib/solid_objects/configuration.rbs
|
|
397
414
|
- sig/generated/lib/solid_objects/context.rbs
|
|
398
415
|
- sig/generated/lib/solid_objects/database_adapter.rbs
|
|
@@ -400,27 +417,35 @@ files:
|
|
|
400
417
|
- sig/generated/lib/solid_objects/database_adapters/postgresql.rbs
|
|
401
418
|
- sig/generated/lib/solid_objects/database_adapters/sqlite.rbs
|
|
402
419
|
- sig/generated/lib/solid_objects/dead_letter_manager.rbs
|
|
420
|
+
- sig/generated/lib/solid_objects/doctor.rbs
|
|
403
421
|
- sig/generated/lib/solid_objects/dom_identity.rbs
|
|
404
422
|
- sig/generated/lib/solid_objects/effect_executor.rbs
|
|
405
423
|
- sig/generated/lib/solid_objects/effect_registry.rbs
|
|
406
424
|
- sig/generated/lib/solid_objects/engine.rbs
|
|
407
425
|
- sig/generated/lib/solid_objects/errors.rbs
|
|
408
426
|
- sig/generated/lib/solid_objects/executor.rbs
|
|
427
|
+
- sig/generated/lib/solid_objects/instance_pruner.rbs
|
|
409
428
|
- sig/generated/lib/solid_objects/instrumentation.rbs
|
|
410
429
|
- sig/generated/lib/solid_objects/lease.rbs
|
|
411
430
|
- sig/generated/lib/solid_objects/lease_renewer.rbs
|
|
412
431
|
- sig/generated/lib/solid_objects/log_subscriber.rbs
|
|
413
432
|
- sig/generated/lib/solid_objects/mailbox.rbs
|
|
433
|
+
- sig/generated/lib/solid_objects/message_pruner.rbs
|
|
414
434
|
- sig/generated/lib/solid_objects/message_reference.rbs
|
|
435
|
+
- sig/generated/lib/solid_objects/process_pruner.rbs
|
|
415
436
|
- sig/generated/lib/solid_objects/process_registry.rbs
|
|
416
437
|
- sig/generated/lib/solid_objects/reference.rbs
|
|
417
438
|
- sig/generated/lib/solid_objects/reminder_scheduler.rbs
|
|
418
439
|
- sig/generated/lib/solid_objects/serialization.rbs
|
|
419
440
|
- sig/generated/lib/solid_objects/state.rbs
|
|
441
|
+
- sig/generated/lib/solid_objects/state_snapshot.rbs
|
|
420
442
|
- sig/generated/lib/solid_objects/stream_name.rbs
|
|
421
443
|
- sig/generated/lib/solid_objects/stream_token.rbs
|
|
422
444
|
- sig/generated/lib/solid_objects/supervisor.rbs
|
|
445
|
+
- sig/generated/lib/solid_objects/sync_deadline.rbs
|
|
446
|
+
- sig/generated/lib/solid_objects/sync_diagnostics.rbs
|
|
423
447
|
- sig/generated/lib/solid_objects/synchronous_invocation.rbs
|
|
448
|
+
- sig/generated/lib/solid_objects/test_helper.rbs
|
|
424
449
|
- sig/generated/lib/solid_objects/turbo_stream_renderer.rbs
|
|
425
450
|
- sig/generated/lib/solid_objects/version.rbs
|
|
426
451
|
- sig/generated/lib/solid_objects/wake_up.rbs
|