@zio.dev/zio-blocks 0.0.29 → 0.0.30
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.
- package/guides/compile-time-resource-safety-with-scope.md +997 -0
- package/guides/query-dsl-extending.md +1 -1
- package/guides/query-dsl-fluent-builder.md +203 -203
- package/guides/query-dsl-reified-optics.md +1 -1
- package/guides/query-dsl-sql.md +1 -1
- package/guides/zio-schema-migration.md +6 -6
- package/index.md +20 -14
- package/package.json +1 -1
- package/reference/codec.md +7 -7
- package/reference/context.md +1 -1
- package/reference/docs.md +1 -1
- package/reference/dynamic-schema.md +39 -42
- package/reference/media-type.md +2 -2
- package/reference/resource-management/defer-handle.md +246 -0
- package/reference/resource-management/finalization.md +286 -0
- package/reference/resource-management/finalizer.md +167 -0
- package/reference/{resource-management-di → resource-management}/index.md +3 -8
- package/reference/{resource-management-di → resource-management}/resource.md +532 -50
- package/reference/resource-management/scope.md +3026 -0
- package/reference/resource-management/unscoped.md +125 -0
- package/reference/{resource-management-di → resource-management}/wire.md +74 -28
- package/reference/schema-evolution/as.md +4 -4
- package/reference/schema-evolution/into.md +2 -2
- package/reference/schema-expr.md +2 -2
- package/reference/streams.md +989 -0
- package/reference/type-class-derivation.md +1 -1
- package/ringbuffer.md +1 -1
- package/sidebars.js +9 -4
- package/reference/resource-management-di/scope.md +0 -1423
|
@@ -52,7 +52,7 @@ Since `SchemaExpr` is a sealed trait, you cannot add new cases to it. Instead, w
|
|
|
52
52
|
This guide builds on [Part 1: Expressions](./query-dsl-reified-optics.md) and [Part 2: SQL Generation](./query-dsl-sql.md). You should be comfortable building `SchemaExpr` values and translating them to SQL.
|
|
53
53
|
|
|
54
54
|
```scala
|
|
55
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.
|
|
55
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.30"
|
|
56
56
|
```
|
|
57
57
|
|
|
58
58
|
```scala
|
|
@@ -57,7 +57,7 @@ In this guide, we solve both problems: bridge extensions eliminate `.toExpr`, an
|
|
|
57
57
|
This guide builds on [Part 1: Expressions](./query-dsl-reified-optics.md), [Part 2: SQL Generation](./query-dsl-sql.md), and [Part 3: Extending the Expression Language](./query-dsl-extending.md).
|
|
58
58
|
|
|
59
59
|
```scala
|
|
60
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.
|
|
60
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.30"
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
## Domain Setup
|
|
@@ -338,42 +338,42 @@ val condition =
|
|
|
338
338
|
// name = "name",
|
|
339
339
|
// value = Primitive(
|
|
340
340
|
// primitiveType = String(None),
|
|
341
|
-
// typeId =
|
|
342
|
-
//
|
|
343
|
-
//
|
|
344
|
-
//
|
|
345
|
-
//
|
|
346
|
-
//
|
|
347
|
-
//
|
|
348
|
-
//
|
|
349
|
-
//
|
|
350
|
-
//
|
|
351
|
-
//
|
|
352
|
-
//
|
|
353
|
-
//
|
|
354
|
-
//
|
|
355
|
-
//
|
|
356
|
-
//
|
|
357
|
-
//
|
|
358
|
-
//
|
|
359
|
-
//
|
|
360
|
-
//
|
|
361
|
-
//
|
|
362
|
-
//
|
|
363
|
-
//
|
|
364
|
-
//
|
|
365
|
-
//
|
|
366
|
-
//
|
|
367
|
-
//
|
|
368
|
-
//
|
|
369
|
-
//
|
|
370
|
-
//
|
|
371
|
-
//
|
|
372
|
-
//
|
|
373
|
-
//
|
|
374
|
-
//
|
|
375
|
-
//
|
|
376
|
-
//
|
|
341
|
+
// typeId = String,
|
|
342
|
+
// primitiveBinding = Primitive(),
|
|
343
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
344
|
+
// modifiers = List(),
|
|
345
|
+
// storedDefaultValue = None,
|
|
346
|
+
// storedExamples = List()
|
|
347
|
+
// ),
|
|
348
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
349
|
+
// modifiers = List()
|
|
350
|
+
// ),
|
|
351
|
+
// Term(
|
|
352
|
+
// name = "price",
|
|
353
|
+
// value = Primitive(
|
|
354
|
+
// primitiveType = Double(None),
|
|
355
|
+
// typeId = Double,
|
|
356
|
+
// primitiveBinding = Primitive(),
|
|
357
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
358
|
+
// modifiers = List(),
|
|
359
|
+
// storedDefaultValue = None,
|
|
360
|
+
// storedExamples = List()
|
|
361
|
+
// ),
|
|
362
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
363
|
+
// modifiers = List()
|
|
364
|
+
// ),
|
|
365
|
+
// Term(
|
|
366
|
+
// name = "category",
|
|
367
|
+
// value = Primitive(
|
|
368
|
+
// primitiveType = String(None),
|
|
369
|
+
// typeId = String,
|
|
370
|
+
// primitiveBinding = Primitive(),
|
|
371
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
372
|
+
// modifiers = List(),
|
|
373
|
+
// storedDefaultValue = None,
|
|
374
|
+
// storedExamples = List()
|
|
375
|
+
// ),
|
|
376
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
377
377
|
// ...
|
|
378
378
|
|
|
379
379
|
exprToSql(condition)
|
|
@@ -506,41 +506,41 @@ val basicSelect = select(Product.table)
|
|
|
506
506
|
// name = "name",
|
|
507
507
|
// value = Primitive(
|
|
508
508
|
// primitiveType = String(None),
|
|
509
|
-
// typeId =
|
|
510
|
-
//
|
|
511
|
-
//
|
|
512
|
-
//
|
|
513
|
-
//
|
|
514
|
-
//
|
|
515
|
-
//
|
|
516
|
-
//
|
|
517
|
-
//
|
|
518
|
-
//
|
|
519
|
-
//
|
|
520
|
-
//
|
|
521
|
-
//
|
|
522
|
-
//
|
|
523
|
-
//
|
|
524
|
-
//
|
|
525
|
-
//
|
|
526
|
-
//
|
|
527
|
-
//
|
|
528
|
-
//
|
|
529
|
-
//
|
|
530
|
-
//
|
|
531
|
-
//
|
|
532
|
-
//
|
|
533
|
-
//
|
|
534
|
-
//
|
|
535
|
-
//
|
|
536
|
-
//
|
|
537
|
-
//
|
|
538
|
-
//
|
|
539
|
-
//
|
|
540
|
-
//
|
|
541
|
-
//
|
|
542
|
-
//
|
|
543
|
-
//
|
|
509
|
+
// typeId = String,
|
|
510
|
+
// primitiveBinding = Primitive(),
|
|
511
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
512
|
+
// modifiers = List(),
|
|
513
|
+
// storedDefaultValue = None,
|
|
514
|
+
// storedExamples = List()
|
|
515
|
+
// ),
|
|
516
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
517
|
+
// modifiers = List()
|
|
518
|
+
// ),
|
|
519
|
+
// Term(
|
|
520
|
+
// name = "price",
|
|
521
|
+
// value = Primitive(
|
|
522
|
+
// primitiveType = Double(None),
|
|
523
|
+
// typeId = Double,
|
|
524
|
+
// primitiveBinding = Primitive(),
|
|
525
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
526
|
+
// modifiers = List(),
|
|
527
|
+
// storedDefaultValue = None,
|
|
528
|
+
// storedExamples = List()
|
|
529
|
+
// ),
|
|
530
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
531
|
+
// modifiers = List()
|
|
532
|
+
// ),
|
|
533
|
+
// Term(
|
|
534
|
+
// name = "category",
|
|
535
|
+
// value = Primitive(
|
|
536
|
+
// primitiveType = String(None),
|
|
537
|
+
// typeId = String,
|
|
538
|
+
// primitiveBinding = Primitive(),
|
|
539
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
540
|
+
// modifiers = List(),
|
|
541
|
+
// storedDefaultValue = None,
|
|
542
|
+
// storedExamples = List()
|
|
543
|
+
// ),
|
|
544
544
|
// ...
|
|
545
545
|
|
|
546
546
|
renderSelect(basicSelect)
|
|
@@ -572,39 +572,39 @@ val advancedSelect = select(Product.table)
|
|
|
572
572
|
// name = "name",
|
|
573
573
|
// value = Primitive(
|
|
574
574
|
// primitiveType = String(None),
|
|
575
|
-
// typeId =
|
|
576
|
-
//
|
|
577
|
-
//
|
|
578
|
-
//
|
|
579
|
-
//
|
|
580
|
-
//
|
|
581
|
-
//
|
|
582
|
-
//
|
|
583
|
-
//
|
|
584
|
-
//
|
|
585
|
-
//
|
|
586
|
-
//
|
|
587
|
-
//
|
|
588
|
-
//
|
|
589
|
-
//
|
|
590
|
-
//
|
|
591
|
-
//
|
|
592
|
-
//
|
|
593
|
-
//
|
|
594
|
-
//
|
|
595
|
-
//
|
|
596
|
-
//
|
|
597
|
-
//
|
|
598
|
-
//
|
|
599
|
-
//
|
|
600
|
-
//
|
|
601
|
-
//
|
|
602
|
-
//
|
|
603
|
-
//
|
|
604
|
-
//
|
|
605
|
-
//
|
|
606
|
-
//
|
|
607
|
-
//
|
|
575
|
+
// typeId = String,
|
|
576
|
+
// primitiveBinding = Primitive(),
|
|
577
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
578
|
+
// modifiers = List(),
|
|
579
|
+
// storedDefaultValue = None,
|
|
580
|
+
// storedExamples = List()
|
|
581
|
+
// ),
|
|
582
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
583
|
+
// modifiers = List()
|
|
584
|
+
// ),
|
|
585
|
+
// Term(
|
|
586
|
+
// name = "price",
|
|
587
|
+
// value = Primitive(
|
|
588
|
+
// primitiveType = Double(None),
|
|
589
|
+
// typeId = Double,
|
|
590
|
+
// primitiveBinding = Primitive(),
|
|
591
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
592
|
+
// modifiers = List(),
|
|
593
|
+
// storedDefaultValue = None,
|
|
594
|
+
// storedExamples = List()
|
|
595
|
+
// ),
|
|
596
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
597
|
+
// modifiers = List()
|
|
598
|
+
// ),
|
|
599
|
+
// Term(
|
|
600
|
+
// name = "category",
|
|
601
|
+
// value = Primitive(
|
|
602
|
+
// primitiveType = String(None),
|
|
603
|
+
// typeId = String,
|
|
604
|
+
// primitiveBinding = Primitive(),
|
|
605
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
606
|
+
// modifiers = List(),
|
|
607
|
+
// storedDefaultValue = None,
|
|
608
608
|
// ...
|
|
609
609
|
|
|
610
610
|
renderSelect(advancedSelect)
|
|
@@ -671,37 +671,37 @@ val basicUpdate =
|
|
|
671
671
|
// name = "name",
|
|
672
672
|
// value = Primitive(
|
|
673
673
|
// primitiveType = String(None),
|
|
674
|
-
// typeId =
|
|
675
|
-
//
|
|
676
|
-
//
|
|
677
|
-
//
|
|
678
|
-
//
|
|
679
|
-
//
|
|
680
|
-
//
|
|
681
|
-
//
|
|
682
|
-
//
|
|
683
|
-
//
|
|
684
|
-
//
|
|
685
|
-
//
|
|
686
|
-
//
|
|
687
|
-
//
|
|
688
|
-
//
|
|
689
|
-
//
|
|
690
|
-
//
|
|
691
|
-
//
|
|
692
|
-
//
|
|
693
|
-
//
|
|
694
|
-
//
|
|
695
|
-
//
|
|
696
|
-
//
|
|
697
|
-
//
|
|
698
|
-
//
|
|
699
|
-
//
|
|
700
|
-
//
|
|
701
|
-
//
|
|
702
|
-
//
|
|
703
|
-
//
|
|
704
|
-
//
|
|
674
|
+
// typeId = String,
|
|
675
|
+
// primitiveBinding = Primitive(),
|
|
676
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
677
|
+
// modifiers = List(),
|
|
678
|
+
// storedDefaultValue = None,
|
|
679
|
+
// storedExamples = List()
|
|
680
|
+
// ),
|
|
681
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
682
|
+
// modifiers = List()
|
|
683
|
+
// ),
|
|
684
|
+
// Term(
|
|
685
|
+
// name = "price",
|
|
686
|
+
// value = Primitive(
|
|
687
|
+
// primitiveType = Double(None),
|
|
688
|
+
// typeId = Double,
|
|
689
|
+
// primitiveBinding = Primitive(),
|
|
690
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
691
|
+
// modifiers = List(),
|
|
692
|
+
// storedDefaultValue = None,
|
|
693
|
+
// storedExamples = List()
|
|
694
|
+
// ),
|
|
695
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
696
|
+
// modifiers = List()
|
|
697
|
+
// ),
|
|
698
|
+
// Term(
|
|
699
|
+
// name = "category",
|
|
700
|
+
// value = Primitive(
|
|
701
|
+
// primitiveType = String(None),
|
|
702
|
+
// typeId = String,
|
|
703
|
+
// primitiveBinding = Primitive(),
|
|
704
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
705
705
|
// ...
|
|
706
706
|
|
|
707
707
|
renderUpdate(basicUpdate)
|
|
@@ -733,38 +733,38 @@ val multiUpdate =
|
|
|
733
733
|
// name = "name",
|
|
734
734
|
// value = Primitive(
|
|
735
735
|
// primitiveType = String(None),
|
|
736
|
-
// typeId =
|
|
737
|
-
//
|
|
738
|
-
//
|
|
739
|
-
//
|
|
740
|
-
//
|
|
741
|
-
//
|
|
742
|
-
//
|
|
743
|
-
//
|
|
744
|
-
//
|
|
745
|
-
//
|
|
746
|
-
//
|
|
747
|
-
//
|
|
748
|
-
//
|
|
749
|
-
//
|
|
750
|
-
//
|
|
751
|
-
//
|
|
752
|
-
//
|
|
753
|
-
//
|
|
754
|
-
//
|
|
755
|
-
//
|
|
756
|
-
//
|
|
757
|
-
//
|
|
758
|
-
//
|
|
759
|
-
//
|
|
760
|
-
//
|
|
761
|
-
//
|
|
762
|
-
//
|
|
763
|
-
//
|
|
764
|
-
//
|
|
765
|
-
//
|
|
766
|
-
//
|
|
767
|
-
//
|
|
736
|
+
// typeId = String,
|
|
737
|
+
// primitiveBinding = Primitive(),
|
|
738
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
739
|
+
// modifiers = List(),
|
|
740
|
+
// storedDefaultValue = None,
|
|
741
|
+
// storedExamples = List()
|
|
742
|
+
// ),
|
|
743
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
744
|
+
// modifiers = List()
|
|
745
|
+
// ),
|
|
746
|
+
// Term(
|
|
747
|
+
// name = "price",
|
|
748
|
+
// value = Primitive(
|
|
749
|
+
// primitiveType = Double(None),
|
|
750
|
+
// typeId = Double,
|
|
751
|
+
// primitiveBinding = Primitive(),
|
|
752
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
753
|
+
// modifiers = List(),
|
|
754
|
+
// storedDefaultValue = None,
|
|
755
|
+
// storedExamples = List()
|
|
756
|
+
// ),
|
|
757
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
758
|
+
// modifiers = List()
|
|
759
|
+
// ),
|
|
760
|
+
// Term(
|
|
761
|
+
// name = "category",
|
|
762
|
+
// value = Primitive(
|
|
763
|
+
// primitiveType = String(None),
|
|
764
|
+
// typeId = String,
|
|
765
|
+
// primitiveBinding = Primitive(),
|
|
766
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
767
|
+
// modifiers = List(),
|
|
768
768
|
// ...
|
|
769
769
|
|
|
770
770
|
renderUpdate(multiUpdate)
|
|
@@ -854,41 +854,41 @@ val del = deleteFrom(Product.table)
|
|
|
854
854
|
// name = "name",
|
|
855
855
|
// value = Primitive(
|
|
856
856
|
// primitiveType = String(None),
|
|
857
|
-
// typeId =
|
|
858
|
-
//
|
|
859
|
-
//
|
|
860
|
-
//
|
|
861
|
-
//
|
|
862
|
-
//
|
|
863
|
-
//
|
|
864
|
-
//
|
|
865
|
-
//
|
|
866
|
-
//
|
|
867
|
-
//
|
|
868
|
-
//
|
|
869
|
-
//
|
|
870
|
-
//
|
|
871
|
-
//
|
|
872
|
-
//
|
|
873
|
-
//
|
|
874
|
-
//
|
|
875
|
-
//
|
|
876
|
-
//
|
|
877
|
-
//
|
|
878
|
-
//
|
|
879
|
-
//
|
|
880
|
-
//
|
|
881
|
-
//
|
|
882
|
-
//
|
|
883
|
-
//
|
|
884
|
-
//
|
|
885
|
-
//
|
|
886
|
-
//
|
|
887
|
-
//
|
|
888
|
-
//
|
|
889
|
-
//
|
|
890
|
-
//
|
|
891
|
-
//
|
|
857
|
+
// typeId = String,
|
|
858
|
+
// primitiveBinding = Primitive(),
|
|
859
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
860
|
+
// modifiers = List(),
|
|
861
|
+
// storedDefaultValue = None,
|
|
862
|
+
// storedExamples = List()
|
|
863
|
+
// ),
|
|
864
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
865
|
+
// modifiers = List()
|
|
866
|
+
// ),
|
|
867
|
+
// Term(
|
|
868
|
+
// name = "price",
|
|
869
|
+
// value = Primitive(
|
|
870
|
+
// primitiveType = Double(None),
|
|
871
|
+
// typeId = Double,
|
|
872
|
+
// primitiveBinding = Primitive(),
|
|
873
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
874
|
+
// modifiers = List(),
|
|
875
|
+
// storedDefaultValue = None,
|
|
876
|
+
// storedExamples = List()
|
|
877
|
+
// ),
|
|
878
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
879
|
+
// modifiers = List()
|
|
880
|
+
// ),
|
|
881
|
+
// Term(
|
|
882
|
+
// name = "category",
|
|
883
|
+
// value = Primitive(
|
|
884
|
+
// primitiveType = String(None),
|
|
885
|
+
// typeId = String,
|
|
886
|
+
// primitiveBinding = Primitive(),
|
|
887
|
+
// doc = Doc(blocks = IndexedSeq(), metadata = Map()),
|
|
888
|
+
// modifiers = List(),
|
|
889
|
+
// storedDefaultValue = None,
|
|
890
|
+
// storedExamples = List()
|
|
891
|
+
// ),
|
|
892
892
|
// ...
|
|
893
893
|
|
|
894
894
|
renderDelete(del)
|
|
@@ -43,7 +43,7 @@ In this guide, we'll solve this by using ZIO Blocks' `SchemaExpr` and reified op
|
|
|
43
43
|
Add the ZIO Blocks Schema dependency:
|
|
44
44
|
|
|
45
45
|
```scala
|
|
46
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.
|
|
46
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.30"
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
```scala
|
package/guides/query-dsl-sql.md
CHANGED
|
@@ -43,7 +43,7 @@ Since `SchemaExpr` is a sealed trait, we can write a single interpreter that tra
|
|
|
43
43
|
This guide builds on [Part 1: Expressions](./query-dsl-reified-optics.md). You should be comfortable building `SchemaExpr` values with optic operators (`===`, `>`, `&&`, etc.).
|
|
44
44
|
|
|
45
45
|
```scala
|
|
46
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.
|
|
46
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.30"
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
```scala
|
|
@@ -38,13 +38,13 @@ libraryDependencies += "dev.zio" %% "zio-schema-avro" % "1.x.x"
|
|
|
38
38
|
**After (ZIO Blocks Schema):**
|
|
39
39
|
|
|
40
40
|
```scala
|
|
41
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.
|
|
41
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.30"
|
|
42
42
|
// Optional codec modules:
|
|
43
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-avro" % "0.0.
|
|
44
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-thrift" % "0.0.
|
|
45
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-bson" % "0.0.
|
|
46
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-messagepack" % "0.0.
|
|
47
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-toon" % "0.0.
|
|
43
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-avro" % "0.0.30"
|
|
44
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-thrift" % "0.0.30"
|
|
45
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-bson" % "0.0.30"
|
|
46
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-messagepack" % "0.0.30"
|
|
47
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-toon" % "0.0.30"
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
Key points:
|
package/index.md
CHANGED
|
@@ -82,14 +82,14 @@ val thriftCodec = Schema[Person].derive(ThriftFormat) // Thrift
|
|
|
82
82
|
### Installation
|
|
83
83
|
|
|
84
84
|
```scala
|
|
85
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.
|
|
85
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema" % "0.0.30"
|
|
86
86
|
|
|
87
87
|
// Optional format modules:
|
|
88
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-avro" % "0.0.
|
|
89
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-toon" % "0.0.
|
|
90
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-messagepack" % "0.0.
|
|
91
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-thrift" % "0.0.
|
|
92
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-schema-bson" % "0.0.
|
|
88
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-avro" % "0.0.30"
|
|
89
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-toon" % "0.0.30"
|
|
90
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-messagepack" % "0.0.30"
|
|
91
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-thrift" % "0.0.30"
|
|
92
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-schema-bson" % "0.0.30"
|
|
93
93
|
```
|
|
94
94
|
|
|
95
95
|
### Example: Optics
|
|
@@ -144,7 +144,7 @@ Chunk is designed for:
|
|
|
144
144
|
### Installation
|
|
145
145
|
|
|
146
146
|
```scala
|
|
147
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-chunk" % "0.0.
|
|
147
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-chunk" % "0.0.30"
|
|
148
148
|
```
|
|
149
149
|
|
|
150
150
|
### Example
|
|
@@ -233,7 +233,7 @@ Scope.global.scoped { scope =>
|
|
|
233
233
|
### Installation
|
|
234
234
|
|
|
235
235
|
```scala
|
|
236
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-scope" % "0.0.
|
|
236
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-scope" % "0.0.30"
|
|
237
237
|
```
|
|
238
238
|
|
|
239
239
|
### Example: Basic Resource Management
|
|
@@ -310,6 +310,12 @@ Scope.global.scoped { connScope =>
|
|
|
310
310
|
// Connection closed here
|
|
311
311
|
```
|
|
312
312
|
|
|
313
|
+
### Getting Started
|
|
314
|
+
|
|
315
|
+
New to Scope? Check out the [Scope Tutorial](./guides/compile-time-resource-safety-with-scope.md) for a comprehensive step-by-step guide that walks you through the concepts, patterns, and real-world examples. The tutorial is designed for newcomers and covers everything from basic resource management to advanced dependency injection.
|
|
316
|
+
|
|
317
|
+
For detailed API documentation, see the [Scope Reference](./reference/resource-management/scope.md).
|
|
318
|
+
|
|
313
319
|
---
|
|
314
320
|
|
|
315
321
|
## Docs
|
|
@@ -336,7 +342,7 @@ Generating documentation, README files, or any Markdown content programmatically
|
|
|
336
342
|
### Installation
|
|
337
343
|
|
|
338
344
|
```scala
|
|
339
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-docs" % "0.0.
|
|
345
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-docs" % "0.0.30"
|
|
340
346
|
```
|
|
341
347
|
|
|
342
348
|
### Example
|
|
@@ -420,7 +426,7 @@ Compile-time type identity with rich metadata. TypeId captures comprehensive inf
|
|
|
420
426
|
### Installation
|
|
421
427
|
|
|
422
428
|
```scala
|
|
423
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-typeid" % "0.0.
|
|
429
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-typeid" % "0.0.30"
|
|
424
430
|
```
|
|
425
431
|
|
|
426
432
|
### Example
|
|
@@ -463,7 +469,7 @@ A type-indexed heterogeneous collection that stores values by their types with c
|
|
|
463
469
|
### Installation
|
|
464
470
|
|
|
465
471
|
```scala
|
|
466
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-context" % "0.0.
|
|
472
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-context" % "0.0.30"
|
|
467
473
|
```
|
|
468
474
|
|
|
469
475
|
### Example
|
|
@@ -515,7 +521,7 @@ Standard `java.util.concurrent` queues use node allocation (`ConcurrentLinkedQue
|
|
|
515
521
|
### Installation
|
|
516
522
|
|
|
517
523
|
```scala
|
|
518
|
-
libraryDependencies += "dev.zio" %% "zio-blocks-ringbuffer" % "0.0.
|
|
524
|
+
libraryDependencies += "dev.zio" %% "zio-blocks-ringbuffer" % "0.0.30"
|
|
519
525
|
```
|
|
520
526
|
|
|
521
527
|
### Example
|
|
@@ -614,8 +620,8 @@ ZIO Blocks supports **Scala 2.13** and **Scala 3.x** with full source compatibil
|
|
|
614
620
|
### Other Blocks
|
|
615
621
|
|
|
616
622
|
- [Chunk](./reference/chunk.md) - High-performance immutable sequences
|
|
617
|
-
- [Scope](./reference/resource-management
|
|
618
|
-
- [Wire](./reference/resource-management
|
|
623
|
+
- [Scope](./reference/resource-management/scope.md) - Compile-time safe resource management and DI
|
|
624
|
+
- [Wire](./reference/resource-management/wire.md) - Recipes for constructing services and dependencies
|
|
619
625
|
- [TypeId](./reference/typeid.md) - Type identity and metadata
|
|
620
626
|
- [Context](./reference/context.md) - Type-indexed heterogeneous collections
|
|
621
627
|
- [Docs (Markdown)](./reference/docs.md) - Markdown parsing and rendering
|