lottie-ios 3.4.1 → 3.4.2

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.
Files changed (180) hide show
  1. package/.github/workflows/stale_issues.yml +17 -0
  2. package/.swiftpm/xcode/package.xcworkspace/xcuserdata/calstephens.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  3. package/Lottie.xcodeproj/project.pbxproj +24 -16
  4. package/Lottie.xcodeproj/xcshareddata/xcschemes/Lottie (macOS).xcscheme +2 -2
  5. package/Lottie.xcworkspace/xcshareddata/swiftpm/Package.resolved +0 -81
  6. package/Lottie.xcworkspace/xcuserdata/calstephens.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  7. package/Lottie.xcworkspace/xcuserdata/calstephens.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +0 -17
  8. package/Lottie.xcworkspace/xcuserdata/calstephens.xcuserdatad/xcdebugger/Expressions.xcexplist +114 -1
  9. package/Package.swift +1 -6
  10. package/Rakefile +41 -2
  11. package/Sources/Private/CoreAnimation/Animations/CALayer+addAnimation.swift +1 -2
  12. package/Sources/Private/CoreAnimation/Animations/CombinedShapeAnimation.swift +28 -0
  13. package/Sources/Private/CoreAnimation/Animations/EllipseAnimation.swift +31 -4
  14. package/Sources/Private/CoreAnimation/Animations/GradientAnimations.swift +2 -2
  15. package/Sources/Private/CoreAnimation/Animations/RectangleAnimation.swift +34 -7
  16. package/Sources/Private/CoreAnimation/Animations/ShapeAnimation.swift +25 -14
  17. package/Sources/Private/CoreAnimation/Animations/StarAnimation.swift +61 -32
  18. package/Sources/Private/CoreAnimation/Animations/StrokeAnimation.swift +4 -1
  19. package/Sources/Private/CoreAnimation/CoreAnimationLayer.swift +6 -1
  20. package/Sources/Private/CoreAnimation/Extensions/KeyframeGroup+exactlyOneKeyframe.swift +2 -2
  21. package/Sources/Private/CoreAnimation/Extensions/Keyframes+combinedIfPossible.swift +107 -26
  22. package/Sources/Private/CoreAnimation/Layers/BaseCompositionLayer.swift +2 -1
  23. package/Sources/Private/CoreAnimation/Layers/CALayer+setupLayerHierarchy.swift +48 -12
  24. package/Sources/Private/CoreAnimation/Layers/GradientRenderLayer.swift +1 -1
  25. package/Sources/Private/CoreAnimation/Layers/LayerModel+makeAnimationLayer.swift +4 -0
  26. package/Sources/Private/CoreAnimation/Layers/MaskCompositionLayer.swift +1 -1
  27. package/Sources/Private/CoreAnimation/Layers/RepeaterLayer.swift +85 -0
  28. package/Sources/Private/CoreAnimation/Layers/ShapeItemLayer.swift +17 -4
  29. package/Sources/Private/CoreAnimation/Layers/ShapeLayer.swift +124 -53
  30. package/Sources/Private/CoreAnimation/Layers/TextLayer.swift +1 -1
  31. package/Sources/Private/MainThread/LayerContainers/CompLayers/CompositionLayer.swift +1 -1
  32. package/Sources/Private/MainThread/LayerContainers/Utility/CoreTextRenderLayer.swift +29 -0
  33. package/Sources/Private/MainThread/LayerContainers/Utility/InvertedMatteLayer.swift +1 -0
  34. package/Sources/Private/MainThread/NodeRenderSystem/Extensions/ItemsExtension.swift +5 -0
  35. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift +5 -0
  36. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/RenderNodes/GradientFillNode.swift +3 -0
  37. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/RenderNodes/GradientStrokeNode.swift +1 -1
  38. package/Sources/Private/MainThread/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift +17 -1
  39. package/Sources/Private/Model/Animation.swift +4 -4
  40. package/Sources/Private/Model/Keyframes/KeyframeGroup.swift +25 -0
  41. package/Sources/Private/Model/ShapeItems/Ellipse.swift +0 -1
  42. package/Sources/Private/Model/ShapeItems/Fill.swift +1 -1
  43. package/Sources/Private/Model/ShapeItems/GradientFill.swift +14 -1
  44. package/Sources/Private/Model/ShapeItems/GradientStroke.swift +0 -1
  45. package/Sources/Private/Model/ShapeItems/Merge.swift +0 -1
  46. package/Sources/Private/Model/ShapeItems/Rectangle.swift +0 -1
  47. package/Sources/Private/Model/ShapeItems/Repeater.swift +0 -1
  48. package/Sources/Private/Model/ShapeItems/ShapeTransform.swift +0 -1
  49. package/Sources/Private/Model/ShapeItems/Star.swift +0 -1
  50. package/Sources/Private/Model/ShapeItems/Stroke.swift +0 -1
  51. package/Sources/Private/Model/ShapeItems/Trim.swift +0 -1
  52. package/Sources/Private/{MainThread/NodeRenderSystem/NodeProperties/ValueProviders → Utility/Interpolatable}/KeyframeInterpolator.swift +0 -0
  53. package/Sources/Public/Animation/AnimationView.swift +1 -1
  54. package/Sources/Public/iOS/BundleImageProvider.swift +2 -2
  55. package/Sources/Public/iOS/FilepathImageProvider.swift +1 -1
  56. package/Sources/Public/macOS/BundleImageProvider.macOS.swift +1 -1
  57. package/Sources/Public/macOS/FilepathImageProvider.macOS.swift +1 -1
  58. package/Tests/AnimationKeypathTests.swift +10 -1
  59. package/Tests/PerformanceTests.swift +19 -20
  60. package/Tests/Samples/9squares_AlBoardman.json +1 -0
  61. package/Tests/Samples/Boat_Loader.json +1 -0
  62. package/Tests/Samples/HamburgerArrow.json +1 -0
  63. package/Tests/Samples/IconTransitions.json +1 -0
  64. package/Tests/Samples/Images/dog.png +0 -0
  65. package/Tests/Samples/Issues/issue_1125.json +1 -0
  66. package/Tests/Samples/Issues/issue_1260.json +1 -0
  67. package/Tests/Samples/Issues/issue_1403.json +1 -0
  68. package/Tests/Samples/Issues/issue_1407.json +1 -0
  69. package/Tests/Samples/Issues/issue_1460.json +1 -0
  70. package/Tests/Samples/Issues/issue_1488.json +1 -0
  71. package/Tests/Samples/Issues/issue_1505.json +1 -0
  72. package/Tests/Samples/Issues/issue_1541.json +1 -0
  73. package/Tests/Samples/Issues/issue_1557.json +1 -0
  74. package/Tests/Samples/Issues/issue_1603.json +1 -0
  75. package/Tests/Samples/Issues/issue_1628.json +1 -0
  76. package/Tests/Samples/Issues/issue_1636.json +1 -0
  77. package/Tests/Samples/Issues/issue_1643.json +1 -0
  78. package/Tests/Samples/Issues/issue_1655.json +1 -0
  79. package/Tests/Samples/Issues/issue_1664.json +1 -0
  80. package/Tests/Samples/Issues/issue_1683.json +1 -0
  81. package/Tests/Samples/Issues/issue_1687.json +1 -0
  82. package/Tests/Samples/Issues/issue_1711.json +1 -0
  83. package/Tests/Samples/Issues/issue_1717.json +1 -0
  84. package/Tests/Samples/Issues/issue_769.json +1 -0
  85. package/Tests/Samples/Issues/issue_885.json +1 -0
  86. package/Tests/Samples/Issues/issue_965.json +1 -0
  87. package/Tests/Samples/Issues/pr_1536.json +1 -0
  88. package/Tests/Samples/Issues/pr_1563.json +8439 -0
  89. package/Tests/Samples/Issues/pr_1592.json +5527 -0
  90. package/Tests/Samples/Issues/pr_1599.json +738 -0
  91. package/Tests/Samples/Issues/pr_1604_1.json +1 -0
  92. package/Tests/Samples/Issues/pr_1604_2.json +1 -0
  93. package/Tests/Samples/Issues/pr_1632_1.json +1 -0
  94. package/Tests/Samples/Issues/pr_1632_2.json +1 -0
  95. package/Tests/Samples/Issues/pr_1686.json +513 -0
  96. package/Tests/Samples/Issues/pr_1698.json +1 -0
  97. package/Tests/Samples/Issues/pr_1699.json +1 -0
  98. package/Tests/Samples/LottieFiles/LICENSE.md +14 -0
  99. package/Tests/Samples/LottieFiles/bounce_strokes.json +1 -0
  100. package/Tests/Samples/LottieFiles/cactus.json +1 -0
  101. package/Tests/Samples/LottieFiles/dog_car_ride.json +1 -0
  102. package/Tests/Samples/LottieFiles/draft_icon.json +1 -0
  103. package/Tests/Samples/LottieFiles/fireworks.json +1 -0
  104. package/Tests/Samples/LottieFiles/gradient_1.json +1 -0
  105. package/Tests/Samples/LottieFiles/gradient_2.json +1 -0
  106. package/Tests/Samples/LottieFiles/gradient_pill.json +1 -0
  107. package/Tests/Samples/LottieFiles/gradient_shapes.json +1 -0
  108. package/Tests/Samples/LottieFiles/gradient_square.json +1 -0
  109. package/Tests/Samples/LottieFiles/growth.json +1 -0
  110. package/Tests/Samples/LottieFiles/infinity_loader.json +1 -0
  111. package/Tests/Samples/LottieFiles/loading_dots_1.json +1 -0
  112. package/Tests/Samples/LottieFiles/loading_dots_2.json +1 -0
  113. package/Tests/Samples/LottieFiles/loading_dots_3.json +1 -0
  114. package/Tests/Samples/LottieFiles/loading_gradient_strokes.json +1 -0
  115. package/Tests/Samples/LottieFiles/settings_slider.json +1 -0
  116. package/Tests/Samples/LottieFiles/shop.json +1 -0
  117. package/Tests/Samples/LottieFiles/step_loader.json +1 -0
  118. package/Tests/Samples/LottieLogo1.json +1 -0
  119. package/Tests/Samples/LottieLogo1_masked.json +1 -0
  120. package/Tests/Samples/LottieLogo2.json +1 -0
  121. package/Tests/Samples/MotionCorpse_Jrcanest.json +1 -0
  122. package/Tests/Samples/Nonanimating/BasicLayers.json +1 -0
  123. package/Tests/Samples/Nonanimating/DisableNodesTest.json +1 -0
  124. package/Tests/Samples/Nonanimating/FirstText.json +1 -0
  125. package/Tests/Samples/Nonanimating/GeometryTransformTest.json +1 -0
  126. package/Tests/Samples/Nonanimating/Text_AnimatedProperties.json +1 -0
  127. package/Tests/Samples/Nonanimating/Text_Glyph.json +1 -0
  128. package/Tests/Samples/Nonanimating/Text_NoAnimation.json +1 -0
  129. package/Tests/Samples/Nonanimating/Text_NoGlyph.json +1 -0
  130. package/Tests/Samples/Nonanimating/Zoom.json +1 -0
  131. package/Tests/Samples/Nonanimating/_dog.json +1 -0
  132. package/Tests/Samples/Nonanimating/base64Test.json +1 -0
  133. package/Tests/Samples/Nonanimating/blend_mode_test.json +1 -0
  134. package/Tests/Samples/Nonanimating/keypathTest.json +1 -0
  135. package/Tests/Samples/Nonanimating/verifyLineHeight.json +1 -0
  136. package/Tests/Samples/PinJump.json +1 -0
  137. package/Tests/Samples/Switch.json +1 -0
  138. package/Tests/Samples/Switch_States.json +1 -0
  139. package/Tests/Samples/TwitterHeart.json +1 -0
  140. package/Tests/Samples/TwitterHeartButton.json +1 -0
  141. package/Tests/Samples/TypeFace/A.json +1 -0
  142. package/Tests/Samples/TypeFace/Apostrophe.json +1 -0
  143. package/Tests/Samples/TypeFace/B.json +1 -0
  144. package/Tests/Samples/TypeFace/BlinkingCursor.json +1 -0
  145. package/Tests/Samples/TypeFace/C.json +1 -0
  146. package/Tests/Samples/TypeFace/Colon.json +1 -0
  147. package/Tests/Samples/TypeFace/Comma.json +1 -0
  148. package/Tests/Samples/TypeFace/D.json +1 -0
  149. package/Tests/Samples/TypeFace/E.json +1 -0
  150. package/Tests/Samples/TypeFace/F.json +1 -0
  151. package/Tests/Samples/TypeFace/G.json +1 -0
  152. package/Tests/Samples/TypeFace/H.json +1 -0
  153. package/Tests/Samples/TypeFace/I.json +1 -0
  154. package/Tests/Samples/TypeFace/J.json +1 -0
  155. package/Tests/Samples/TypeFace/K.json +1 -0
  156. package/Tests/Samples/TypeFace/L.json +1 -0
  157. package/Tests/Samples/TypeFace/M.json +1 -0
  158. package/Tests/Samples/TypeFace/N.json +1 -0
  159. package/Tests/Samples/TypeFace/O.json +1 -0
  160. package/Tests/Samples/TypeFace/P.json +1 -0
  161. package/Tests/Samples/TypeFace/Q.json +1 -0
  162. package/Tests/Samples/TypeFace/R.json +1 -0
  163. package/Tests/Samples/TypeFace/S.json +1 -0
  164. package/Tests/Samples/TypeFace/T.json +1 -0
  165. package/Tests/Samples/TypeFace/U.json +1 -0
  166. package/Tests/Samples/TypeFace/V.json +1 -0
  167. package/Tests/Samples/TypeFace/W.json +1 -0
  168. package/Tests/Samples/TypeFace/X.json +1 -0
  169. package/Tests/Samples/TypeFace/Y.json +1 -0
  170. package/Tests/Samples/TypeFace/Z.json +1 -0
  171. package/Tests/Samples/Watermelon.json +1 -0
  172. package/Tests/Samples/setValueTest.json +1 -0
  173. package/Tests/Samples/timeremap.json +1 -0
  174. package/Tests/Samples/vcTransition1.json +1 -0
  175. package/Tests/Samples/vcTransition2.json +1 -0
  176. package/Tests/SnapshotConfiguration.swift +5 -0
  177. package/lottie-ios.podspec +2 -1
  178. package/package.json +1 -1
  179. package/.swift-version +0 -1
  180. package/Package.resolved +0 -88
@@ -0,0 +1 @@
1
+ {"assets":[],"layers":[{"ddd":0,"ind":0,"ty":4,"nm":"outLayer","ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"n":"0p833_0p833_0p333_0","t":0,"s":[207,368,0],"e":[527,368,0],"to":[53.3333320617676,0,0],"ti":[-53.3333320617676,0,0]},{"t":13}]},"a":{"k":[0,0,0]},"s":{"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":0,"s":[1175.566,1175.566,100],"e":[4.648,4.648,100]},{"t":13}]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[104.875,104.875]},"p":{"k":[0,0]},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse"},{"ty":"fl","fillEnabled":true,"c":{"k":[1,0,0,1]},"o":{"k":100},"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":2,"mn":"ADBE Vector Group"}],"ip":0,"op":15,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":1,"ty":4,"nm":"outLayer 10","ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"n":"0p833_0p833_0p333_0","t":4,"s":[207,368,0],"e":[687,368,0],"to":[80,0,0],"ti":[-80,0,0]},{"t":17}]},"a":{"k":[0,0,0]},"s":{"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":4,"s":[1175.566,1175.566,100],"e":[4.648,4.648,100]},{"t":17}]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[104.875,104.875]},"p":{"k":[0,0]},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse"},{"ty":"fl","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":2,"mn":"ADBE Vector Group"}],"ip":4,"op":19,"st":4,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":4,"nm":"inLayer","ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[207,368,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"k":[1042.203,1042.203]},"p":{"k":[0,0]},"r":{"k":0},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect"},{"ty":"fl","fillEnabled":true,"c":{"k":[0,0.01,0.82,1]},"o":{"k":100},"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"mn":"ADBE Vector Group"}],"ip":0,"op":77,"st":0,"bm":0,"sr":1}],"v":"4.5.0","ddd":0,"ip":0,"op":22,"fr":24,"w":414,"h":736}
@@ -44,6 +44,7 @@ extension SnapshotConfiguration {
44
44
  "Nonanimating/FirstText": .precision(0.99),
45
45
  "Nonanimating/verifyLineHeight": .precision(0.99),
46
46
  "Nonanimating/blend_mode_test": .precision(0.99),
47
+ "Issues/issue_885": .precision(0.99),
47
48
 
48
49
  /// Test cases for the `AnimationKeypath` / `AnyValueProvider` system
49
50
  "Nonanimating/keypathTest": .customValueProviders([
@@ -62,6 +63,10 @@ extension SnapshotConfiguration {
62
63
  ]),
63
64
  ]),
64
65
 
66
+ "Issues/issue_1664": .customValueProviders([
67
+ AnimationKeypath(keypath: "**.base_color.**.Color"): ColorValueProvider(.black),
68
+ ]),
69
+
65
70
  // Test cases for `AnimatedImageProvider`
66
71
  "Nonanimating/_dog": .customImageProvider(HardcodedImageProvider(imageName: "Samples/Images/dog.png")),
67
72
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  Pod::Spec.new do |s|
10
10
  s.name = 'lottie-ios'
11
- s.version = '3.4.1'
11
+ s.version = '3.4.2'
12
12
  s.summary = 'A library to render native animations from bodymovin json'
13
13
 
14
14
  s.description = <<-DESC
@@ -22,6 +22,7 @@ Lottie enables designers to create and ship beautiful animations without an engi
22
22
  s.author = { 'Brandon Withrow' => 'buba447@gmail.com' }
23
23
  s.source = { :git => 'https://github.com/airbnb/lottie-ios.git', :tag => s.version.to_s }
24
24
 
25
+ s.swift_version = '5.3'
25
26
  s.ios.deployment_target = '11.0'
26
27
  s.osx.deployment_target = '10.10'
27
28
  s.tvos.deployment_target = '11.0'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lottie-ios",
3
- "version": "3.4.1",
3
+ "version": "3.4.2",
4
4
  "description": "Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with bodymovin and renders the vector animations natively on mobile and through React Native!",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/.swift-version DELETED
@@ -1 +0,0 @@
1
- 5.3
package/Package.resolved DELETED
@@ -1,88 +0,0 @@
1
- {
2
- "object": {
3
- "pins": [
4
- {
5
- "package": "SourceKitten",
6
- "repositoryURL": "https://github.com/jpsim/SourceKitten.git",
7
- "state": {
8
- "branch": null,
9
- "revision": "817dfa6f2e09b0476f3a6c9dbc035991f02f0241",
10
- "version": "0.32.0"
11
- }
12
- },
13
- {
14
- "package": "AirbnbSwift",
15
- "repositoryURL": "https://github.com/airbnb/swift",
16
- "state": {
17
- "branch": "master",
18
- "revision": "b844956fd69f05e550038469a5d498462176f87a",
19
- "version": null
20
- }
21
- },
22
- {
23
- "package": "swift-argument-parser",
24
- "repositoryURL": "https://github.com/apple/swift-argument-parser.git",
25
- "state": {
26
- "branch": null,
27
- "revision": "e394bf350e38cb100b6bc4172834770ede1b7232",
28
- "version": "1.0.3"
29
- }
30
- },
31
- {
32
- "package": "SwiftSyntax",
33
- "repositoryURL": "https://github.com/apple/swift-syntax.git",
34
- "state": {
35
- "branch": null,
36
- "revision": "0b6c22b97f8e9320bca62e82cdbee601cf37ad3f",
37
- "version": "0.50600.1"
38
- }
39
- },
40
- {
41
- "package": "SwiftFormat",
42
- "repositoryURL": "https://github.com/calda/SwiftFormat",
43
- "state": {
44
- "branch": null,
45
- "revision": "2a9ed335450d3b3f66b2699d65124b9089195f5d",
46
- "version": "0.49.11-beta-2"
47
- }
48
- },
49
- {
50
- "package": "SwiftLint",
51
- "repositoryURL": "https://github.com/realm/SwiftLint",
52
- "state": {
53
- "branch": "e497f1f",
54
- "revision": "e497f1f5b161af96ba439049d21970c6204d06c6",
55
- "version": null
56
- }
57
- },
58
- {
59
- "package": "SwiftyTextTable",
60
- "repositoryURL": "https://github.com/scottrhoyt/SwiftyTextTable.git",
61
- "state": {
62
- "branch": null,
63
- "revision": "c6df6cf533d120716bff38f8ff9885e1ce2a4ac3",
64
- "version": "0.9.0"
65
- }
66
- },
67
- {
68
- "package": "SWXMLHash",
69
- "repositoryURL": "https://github.com/drmohundro/SWXMLHash.git",
70
- "state": {
71
- "branch": null,
72
- "revision": "6469881a3f30417c5bb02404ea4b69207f297592",
73
- "version": "6.0.0"
74
- }
75
- },
76
- {
77
- "package": "Yams",
78
- "repositoryURL": "https://github.com/jpsim/Yams.git",
79
- "state": {
80
- "branch": null,
81
- "revision": "9ff1cc9327586db4e0c8f46f064b6a82ec1566fa",
82
- "version": "4.0.6"
83
- }
84
- }
85
- ]
86
- },
87
- "version": 1
88
- }