cloudsmith-api 2.0.32 → 2.0.34

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 (311) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/README.md +15 -4
  4. data/build.json +1 -1
  5. data/docs/AlpinePackageUpload.md +1 -2
  6. data/docs/AlpinePackageUploadRequest.md +0 -2
  7. data/docs/CargoPackageUpload.md +1 -2
  8. data/docs/CargoPackageUploadRequest.md +0 -2
  9. data/docs/CocoapodsPackageUpload.md +1 -2
  10. data/docs/CocoapodsPackageUploadRequest.md +0 -2
  11. data/docs/ComposerPackageUpload.md +1 -2
  12. data/docs/ComposerPackageUploadRequest.md +0 -2
  13. data/docs/ConanPackageUpload.md +1 -2
  14. data/docs/ConanPackageUploadRequest.md +0 -2
  15. data/docs/CondaPackageUpload.md +1 -2
  16. data/docs/CondaPackageUploadRequest.md +0 -2
  17. data/docs/ConnectedRepository.md +3 -0
  18. data/docs/ConnectedRepositoryTargetSummary.md +11 -0
  19. data/docs/ConnectedRepositoryUpstream.md +9 -0
  20. data/docs/CranPackageUpload.md +1 -2
  21. data/docs/CranPackageUploadRequest.md +0 -2
  22. data/docs/DartPackageUpload.md +1 -2
  23. data/docs/DartPackageUploadRequest.md +0 -2
  24. data/docs/DebPackageUpload.md +1 -2
  25. data/docs/DebPackageUploadRequest.md +0 -2
  26. data/docs/DockerPackageUpload.md +1 -2
  27. data/docs/DockerPackageUploadRequest.md +0 -2
  28. data/docs/GenericPackageUpload.md +1 -2
  29. data/docs/GenericPackageUploadRequest.md +0 -2
  30. data/docs/GoPackageUpload.md +1 -2
  31. data/docs/GoPackageUploadRequest.md +0 -2
  32. data/docs/HelmPackageUpload.md +1 -2
  33. data/docs/HelmPackageUploadRequest.md +0 -2
  34. data/docs/HexPackageUpload.md +1 -2
  35. data/docs/HexPackageUploadRequest.md +0 -2
  36. data/docs/HuggingfacePackageUpload.md +1 -2
  37. data/docs/HuggingfacePackageUploadRequest.md +0 -2
  38. data/docs/LuarocksPackageUpload.md +1 -2
  39. data/docs/LuarocksPackageUploadRequest.md +0 -2
  40. data/docs/MavenPackageUpload.md +1 -2
  41. data/docs/MavenPackageUploadRequest.md +0 -2
  42. data/docs/McpPackageUpload.md +1 -2
  43. data/docs/McpPackageUploadRequest.md +0 -2
  44. data/docs/NixPackageUpload.md +1 -2
  45. data/docs/NixPackageUploadRequest.md +0 -2
  46. data/docs/NpmPackageUpload.md +1 -2
  47. data/docs/NpmPackageUploadRequest.md +0 -2
  48. data/docs/NugetPackageUpload.md +1 -2
  49. data/docs/NugetPackageUploadRequest.md +0 -2
  50. data/docs/OrganizationApiKeyRule.md +16 -0
  51. data/docs/OrganizationApiKeyRuleRequest.md +12 -0
  52. data/docs/OrganizationApiKeyRuleRequestPatch.md +12 -0
  53. data/docs/OrgsApi.md +377 -0
  54. data/docs/P2PackageUpload.md +1 -2
  55. data/docs/P2PackageUploadRequest.md +0 -2
  56. data/docs/Package.md +1 -0
  57. data/docs/PackageCopy.md +1 -2
  58. data/docs/PackageCopyRequest.md +0 -2
  59. data/docs/PackageDetail.md +1 -0
  60. data/docs/PackageLicense.md +0 -2
  61. data/docs/PackageLicenseRequestPatch.md +0 -2
  62. data/docs/PackageMove.md +1 -2
  63. data/docs/PackageMoveRequest.md +0 -2
  64. data/docs/PackageQuarantine.md +1 -2
  65. data/docs/PackageQuarantineRequest.md +0 -2
  66. data/docs/PackageResync.md +1 -2
  67. data/docs/PackageTag.md +1 -2
  68. data/docs/PackageTagRequest.md +0 -2
  69. data/docs/PackageVulnerability.md +0 -2
  70. data/docs/PackagesApi.md +2 -2
  71. data/docs/PythonPackageUpload.md +1 -2
  72. data/docs/PythonPackageUploadRequest.md +0 -2
  73. data/docs/RawPackageUpload.md +1 -2
  74. data/docs/RawPackageUploadRequest.md +0 -2
  75. data/docs/RpmPackageUpload.md +1 -2
  76. data/docs/RpmPackageUploadRequest.md +0 -2
  77. data/docs/RubyPackageUpload.md +1 -2
  78. data/docs/RubyPackageUploadRequest.md +0 -2
  79. data/docs/SwiftPackageUpload.md +1 -2
  80. data/docs/SwiftPackageUploadRequest.md +0 -2
  81. data/docs/TerraformPackageUpload.md +1 -2
  82. data/docs/TerraformPackageUploadRequest.md +0 -2
  83. data/docs/VagrantPackageUpload.md +1 -2
  84. data/docs/VagrantPackageUploadRequest.md +0 -2
  85. data/docs/VsxPackageUpload.md +1 -2
  86. data/docs/VsxPackageUploadRequest.md +0 -2
  87. data/lib/cloudsmith-api/api/orgs_api.rb +353 -0
  88. data/lib/cloudsmith-api/api/packages_api.rb +2 -2
  89. data/lib/cloudsmith-api/models/alpine_package_upload.rb +11 -20
  90. data/lib/cloudsmith-api/models/alpine_package_upload_request.rb +4 -23
  91. data/lib/cloudsmith-api/models/cargo_package_upload.rb +11 -20
  92. data/lib/cloudsmith-api/models/cargo_package_upload_request.rb +4 -23
  93. data/lib/cloudsmith-api/models/cocoapods_package_upload.rb +11 -20
  94. data/lib/cloudsmith-api/models/cocoapods_package_upload_request.rb +4 -23
  95. data/lib/cloudsmith-api/models/composer_package_upload.rb +11 -20
  96. data/lib/cloudsmith-api/models/composer_package_upload_request.rb +4 -23
  97. data/lib/cloudsmith-api/models/conan_package_upload.rb +11 -20
  98. data/lib/cloudsmith-api/models/conan_package_upload_request.rb +4 -23
  99. data/lib/cloudsmith-api/models/conda_package_upload.rb +11 -20
  100. data/lib/cloudsmith-api/models/conda_package_upload_request.rb +4 -23
  101. data/lib/cloudsmith-api/models/connected_repository.rb +35 -4
  102. data/lib/cloudsmith-api/models/connected_repository_target_summary.rb +211 -0
  103. data/lib/cloudsmith-api/models/connected_repository_upstream.rb +194 -0
  104. data/lib/cloudsmith-api/models/cran_package_upload.rb +11 -20
  105. data/lib/cloudsmith-api/models/cran_package_upload_request.rb +4 -23
  106. data/lib/cloudsmith-api/models/dart_package_upload.rb +11 -20
  107. data/lib/cloudsmith-api/models/dart_package_upload_request.rb +4 -23
  108. data/lib/cloudsmith-api/models/deb_package_upload.rb +11 -20
  109. data/lib/cloudsmith-api/models/deb_package_upload_request.rb +4 -23
  110. data/lib/cloudsmith-api/models/docker_package_upload.rb +11 -20
  111. data/lib/cloudsmith-api/models/docker_package_upload_request.rb +4 -23
  112. data/lib/cloudsmith-api/models/generic_package_upload.rb +11 -20
  113. data/lib/cloudsmith-api/models/generic_package_upload_request.rb +4 -23
  114. data/lib/cloudsmith-api/models/go_package_upload.rb +11 -20
  115. data/lib/cloudsmith-api/models/go_package_upload_request.rb +4 -23
  116. data/lib/cloudsmith-api/models/go_upstream.rb +2 -2
  117. data/lib/cloudsmith-api/models/go_upstream_request.rb +2 -2
  118. data/lib/cloudsmith-api/models/go_upstream_request_patch.rb +2 -2
  119. data/lib/cloudsmith-api/models/helm_package_upload.rb +11 -20
  120. data/lib/cloudsmith-api/models/helm_package_upload_request.rb +4 -23
  121. data/lib/cloudsmith-api/models/hex_package_upload.rb +11 -20
  122. data/lib/cloudsmith-api/models/hex_package_upload_request.rb +4 -23
  123. data/lib/cloudsmith-api/models/huggingface_package_upload.rb +11 -20
  124. data/lib/cloudsmith-api/models/huggingface_package_upload_request.rb +4 -23
  125. data/lib/cloudsmith-api/models/luarocks_package_upload.rb +11 -20
  126. data/lib/cloudsmith-api/models/luarocks_package_upload_request.rb +4 -23
  127. data/lib/cloudsmith-api/models/maven_package_upload.rb +11 -20
  128. data/lib/cloudsmith-api/models/maven_package_upload_request.rb +4 -23
  129. data/lib/cloudsmith-api/models/mcp_package_upload.rb +11 -20
  130. data/lib/cloudsmith-api/models/mcp_package_upload_request.rb +4 -23
  131. data/lib/cloudsmith-api/models/nix_package_upload.rb +11 -20
  132. data/lib/cloudsmith-api/models/nix_package_upload_request.rb +4 -23
  133. data/lib/cloudsmith-api/models/npm_package_upload.rb +11 -20
  134. data/lib/cloudsmith-api/models/npm_package_upload_request.rb +4 -23
  135. data/lib/cloudsmith-api/models/nuget_package_upload.rb +11 -20
  136. data/lib/cloudsmith-api/models/nuget_package_upload_request.rb +4 -23
  137. data/lib/cloudsmith-api/models/organization_api_key_rule.rb +302 -0
  138. data/lib/cloudsmith-api/models/organization_api_key_rule_request.rb +264 -0
  139. data/lib/cloudsmith-api/models/organization_api_key_rule_request_patch.rb +259 -0
  140. data/lib/cloudsmith-api/models/p2_package_upload.rb +11 -20
  141. data/lib/cloudsmith-api/models/p2_package_upload_request.rb +4 -23
  142. data/lib/cloudsmith-api/models/package.rb +11 -1
  143. data/lib/cloudsmith-api/models/package_copy.rb +11 -20
  144. data/lib/cloudsmith-api/models/package_copy_request.rb +4 -23
  145. data/lib/cloudsmith-api/models/package_detail.rb +11 -1
  146. data/lib/cloudsmith-api/models/package_license.rb +4 -23
  147. data/lib/cloudsmith-api/models/package_license_request_patch.rb +4 -23
  148. data/lib/cloudsmith-api/models/package_move.rb +11 -20
  149. data/lib/cloudsmith-api/models/package_move_request.rb +4 -23
  150. data/lib/cloudsmith-api/models/package_quarantine.rb +11 -20
  151. data/lib/cloudsmith-api/models/package_quarantine_request.rb +4 -23
  152. data/lib/cloudsmith-api/models/package_resync.rb +11 -20
  153. data/lib/cloudsmith-api/models/package_tag.rb +11 -20
  154. data/lib/cloudsmith-api/models/package_tag_request.rb +4 -23
  155. data/lib/cloudsmith-api/models/package_vulnerability.rb +4 -23
  156. data/lib/cloudsmith-api/models/python_package_upload.rb +11 -20
  157. data/lib/cloudsmith-api/models/python_package_upload_request.rb +4 -23
  158. data/lib/cloudsmith-api/models/raw_package_upload.rb +11 -20
  159. data/lib/cloudsmith-api/models/raw_package_upload_request.rb +4 -23
  160. data/lib/cloudsmith-api/models/rpm_package_upload.rb +11 -20
  161. data/lib/cloudsmith-api/models/rpm_package_upload_request.rb +4 -23
  162. data/lib/cloudsmith-api/models/ruby_package_upload.rb +11 -20
  163. data/lib/cloudsmith-api/models/ruby_package_upload_request.rb +4 -23
  164. data/lib/cloudsmith-api/models/swift_package_upload.rb +11 -20
  165. data/lib/cloudsmith-api/models/swift_package_upload_request.rb +4 -23
  166. data/lib/cloudsmith-api/models/terraform_package_upload.rb +11 -20
  167. data/lib/cloudsmith-api/models/terraform_package_upload_request.rb +4 -23
  168. data/lib/cloudsmith-api/models/vagrant_package_upload.rb +11 -20
  169. data/lib/cloudsmith-api/models/vagrant_package_upload_request.rb +4 -23
  170. data/lib/cloudsmith-api/models/vsx_package_upload.rb +11 -20
  171. data/lib/cloudsmith-api/models/vsx_package_upload_request.rb +4 -23
  172. data/lib/cloudsmith-api/version.rb +1 -1
  173. data/lib/cloudsmith-api.rb +5 -0
  174. data/spec/api/orgs_api_spec.rb +79 -0
  175. data/spec/api/packages_api_spec.rb +1 -1
  176. data/spec/models/alpine_package_upload_request_spec.rb +0 -12
  177. data/spec/models/alpine_package_upload_spec.rb +6 -12
  178. data/spec/models/cargo_package_upload_request_spec.rb +0 -12
  179. data/spec/models/cargo_package_upload_spec.rb +6 -12
  180. data/spec/models/cocoapods_package_upload_request_spec.rb +0 -12
  181. data/spec/models/cocoapods_package_upload_spec.rb +6 -12
  182. data/spec/models/composer_package_upload_request_spec.rb +0 -12
  183. data/spec/models/composer_package_upload_spec.rb +6 -12
  184. data/spec/models/conan_package_upload_request_spec.rb +0 -12
  185. data/spec/models/conan_package_upload_spec.rb +6 -12
  186. data/spec/models/conda_package_upload_request_spec.rb +0 -12
  187. data/spec/models/conda_package_upload_spec.rb +6 -12
  188. data/spec/models/connected_repository_spec.rb +18 -0
  189. data/spec/models/connected_repository_target_summary_spec.rb +59 -0
  190. data/spec/models/connected_repository_upstream_spec.rb +47 -0
  191. data/spec/models/cran_package_upload_request_spec.rb +0 -12
  192. data/spec/models/cran_package_upload_spec.rb +6 -12
  193. data/spec/models/dart_package_upload_request_spec.rb +0 -12
  194. data/spec/models/dart_package_upload_spec.rb +6 -12
  195. data/spec/models/deb_package_upload_request_spec.rb +0 -12
  196. data/spec/models/deb_package_upload_spec.rb +6 -12
  197. data/spec/models/docker_package_upload_request_spec.rb +0 -12
  198. data/spec/models/docker_package_upload_spec.rb +6 -12
  199. data/spec/models/generic_package_upload_request_spec.rb +0 -12
  200. data/spec/models/generic_package_upload_spec.rb +6 -12
  201. data/spec/models/go_package_upload_request_spec.rb +0 -12
  202. data/spec/models/go_package_upload_spec.rb +6 -12
  203. data/spec/models/go_upstream_request_patch_spec.rb +1 -1
  204. data/spec/models/go_upstream_request_spec.rb +1 -1
  205. data/spec/models/go_upstream_spec.rb +1 -1
  206. data/spec/models/helm_package_upload_request_spec.rb +0 -12
  207. data/spec/models/helm_package_upload_spec.rb +6 -12
  208. data/spec/models/hex_package_upload_request_spec.rb +0 -12
  209. data/spec/models/hex_package_upload_spec.rb +6 -12
  210. data/spec/models/huggingface_package_upload_request_spec.rb +0 -12
  211. data/spec/models/huggingface_package_upload_spec.rb +6 -12
  212. data/spec/models/luarocks_package_upload_request_spec.rb +0 -12
  213. data/spec/models/luarocks_package_upload_spec.rb +6 -12
  214. data/spec/models/maven_package_upload_request_spec.rb +0 -12
  215. data/spec/models/maven_package_upload_spec.rb +6 -12
  216. data/spec/models/mcp_package_upload_request_spec.rb +0 -12
  217. data/spec/models/mcp_package_upload_spec.rb +6 -12
  218. data/spec/models/nix_package_upload_request_spec.rb +0 -12
  219. data/spec/models/nix_package_upload_spec.rb +6 -12
  220. data/spec/models/npm_package_upload_request_spec.rb +0 -12
  221. data/spec/models/npm_package_upload_spec.rb +6 -12
  222. data/spec/models/nuget_package_upload_request_spec.rb +0 -12
  223. data/spec/models/nuget_package_upload_spec.rb +6 -12
  224. data/spec/models/organization_api_key_rule_request_patch_spec.rb +69 -0
  225. data/spec/models/organization_api_key_rule_request_spec.rb +69 -0
  226. data/spec/models/organization_api_key_rule_spec.rb +93 -0
  227. data/spec/models/p2_package_upload_request_spec.rb +0 -12
  228. data/spec/models/p2_package_upload_spec.rb +6 -12
  229. data/spec/models/package_copy_request_spec.rb +0 -12
  230. data/spec/models/package_copy_spec.rb +6 -12
  231. data/spec/models/package_detail_spec.rb +6 -0
  232. data/spec/models/package_license_request_patch_spec.rb +0 -12
  233. data/spec/models/package_license_spec.rb +0 -12
  234. data/spec/models/package_move_request_spec.rb +0 -12
  235. data/spec/models/package_move_spec.rb +6 -12
  236. data/spec/models/package_quarantine_request_spec.rb +0 -12
  237. data/spec/models/package_quarantine_spec.rb +6 -12
  238. data/spec/models/package_resync_spec.rb +6 -12
  239. data/spec/models/package_spec.rb +6 -0
  240. data/spec/models/package_tag_request_spec.rb +0 -12
  241. data/spec/models/package_tag_spec.rb +6 -12
  242. data/spec/models/package_vulnerability_spec.rb +0 -12
  243. data/spec/models/python_package_upload_request_spec.rb +0 -12
  244. data/spec/models/python_package_upload_spec.rb +6 -12
  245. data/spec/models/raw_package_upload_request_spec.rb +0 -12
  246. data/spec/models/raw_package_upload_spec.rb +6 -12
  247. data/spec/models/rpm_package_upload_request_spec.rb +0 -12
  248. data/spec/models/rpm_package_upload_spec.rb +6 -12
  249. data/spec/models/ruby_package_upload_request_spec.rb +0 -12
  250. data/spec/models/ruby_package_upload_spec.rb +6 -12
  251. data/spec/models/swift_package_upload_request_spec.rb +0 -12
  252. data/spec/models/swift_package_upload_spec.rb +6 -12
  253. data/spec/models/terraform_package_upload_request_spec.rb +0 -12
  254. data/spec/models/terraform_package_upload_spec.rb +6 -12
  255. data/spec/models/vagrant_package_upload_request_spec.rb +0 -12
  256. data/spec/models/vagrant_package_upload_spec.rb +6 -12
  257. data/spec/models/vsx_package_upload_request_spec.rb +0 -12
  258. data/spec/models/vsx_package_upload_spec.rb +6 -12
  259. data/vendor/bundle/ruby/2.6.0/cache/bigdecimal-4.1.3.gem +0 -0
  260. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/autotest-fsevent-0.3.2/gem_make.out +1 -1
  261. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/bigdecimal-4.1.3/bigdecimal.so +0 -0
  262. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/gem_make.out +97 -84
  263. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/mkmf.log +8 -8
  264. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/ffi-1.17.4/gem_make.out +2 -2
  265. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/ffi-1.17.4/mkmf.log +1 -1
  266. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/json-2.7.6/gem_make.out +2 -2
  267. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/json-2.7.6/mkmf.log +1 -1
  268. data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/bigdecimal.gemspec +2 -0
  269. data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/Makefile +2 -2
  270. data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/bigdecimal.c +26 -10
  271. data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/bigdecimal.h +5 -5
  272. data/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal/bigdecimal.o +0 -0
  273. data/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal/bigdecimal.so +0 -0
  274. data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/div.h +61 -34
  275. data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/missing.o +0 -0
  276. data/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/lib/bigdecimal/math/erf.rb +291 -0
  277. data/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/lib/bigdecimal/math/gamma.rb +513 -0
  278. data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/lib/bigdecimal/math.rb +8 -219
  279. data/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/lib/bigdecimal.so +0 -0
  280. data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/sig/big_decimal.rbs +3 -1
  281. data/vendor/bundle/ruby/2.6.0/gems/ffi-1.17.4/ext/ffi_c/Makefile +2 -2
  282. data/vendor/bundle/ruby/2.6.0/gems/json-2.7.6/ext/json/ext/generator/Makefile +2 -2
  283. data/vendor/bundle/ruby/2.6.0/gems/json-2.7.6/ext/json/ext/parser/Makefile +2 -2
  284. data/vendor/bundle/ruby/2.6.0/specifications/{bigdecimal-4.1.2.gemspec → bigdecimal-4.1.3.gemspec} +2 -2
  285. metadata +65 -43
  286. data/vendor/bundle/ruby/2.6.0/cache/bigdecimal-4.1.2.gem +0 -0
  287. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/bigdecimal-4.1.2/bigdecimal.so +0 -0
  288. data/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal/bigdecimal.o +0 -0
  289. data/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal/bigdecimal.so +0 -0
  290. data/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/lib/bigdecimal.so +0 -0
  291. /data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/gem.build_complete +0 -0
  292. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/LICENSE +0 -0
  293. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/.sitearchdir.time +0 -0
  294. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/bits.h +0 -0
  295. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/extconf.rb +0 -0
  296. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/feature.h +0 -0
  297. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/missing/dtoa.c +0 -0
  298. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/missing.c +0 -0
  299. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/missing.h +0 -0
  300. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/ntt.h +0 -0
  301. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/ext/bigdecimal/static_assert.h +0 -0
  302. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/lib/bigdecimal/jacobian.rb +0 -0
  303. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/lib/bigdecimal/ludcmp.rb +0 -0
  304. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/lib/bigdecimal/newton.rb +0 -0
  305. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/lib/bigdecimal/util.rb +0 -0
  306. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/lib/bigdecimal.rb +0 -0
  307. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/sample/linear.rb +0 -0
  308. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/sample/nlsolve.rb +0 -0
  309. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/sample/pi.rb +0 -0
  310. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/sig/big_decimal_util.rbs +0 -0
  311. /data/vendor/bundle/ruby/2.6.0/gems/{bigdecimal-4.1.2 → bigdecimal-4.1.3}/sig/big_math.rbs +0 -0
@@ -92,6 +92,12 @@ describe 'VsxPackageUpload' do
92
92
  end
93
93
  end
94
94
 
95
+ describe 'test attribute "display_source"' do
96
+ it 'should work' do
97
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
98
+ end
99
+ end
100
+
95
101
  describe 'test attribute "distro"' do
96
102
  it 'should work' do
97
103
  # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
@@ -206,12 +212,6 @@ describe 'VsxPackageUpload' do
206
212
  end
207
213
  end
208
214
 
209
- describe 'test attribute "is_malware_detected"' do
210
- it 'should work' do
211
- # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
212
- end
213
- end
214
-
215
215
  describe 'test attribute "is_moveable"' do
216
216
  it 'should work' do
217
217
  # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
@@ -564,12 +564,6 @@ describe 'VsxPackageUpload' do
564
564
  end
565
565
  end
566
566
 
567
- describe 'test attribute "vulnerability_counts"' do
568
- it 'should work' do
569
- # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
570
- end
571
- end
572
-
573
567
  describe 'test attribute "vulnerability_scan_results_url"' do
574
568
  it 'should work' do
575
569
  # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
@@ -1,5 +1,5 @@
1
1
  current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/autotest-fsevent-0.3.2/ext/fsevent
2
- /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.6.0 -r ./siteconf20260825-866-1udon35.rb extconf.rb
2
+ /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.6.0 -r ./siteconf20260922-867-1ws7hhw.rb extconf.rb
3
3
 
4
4
  current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/autotest-fsevent-0.3.2/ext/fsevent
5
5
  make DESTDIR\= clean
@@ -1,5 +1,5 @@
1
- current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal
2
- /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.6.0 -r ./siteconf20260825-866-1q44dmd.rb extconf.rb
1
+ current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal
2
+ /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.6.0 -r ./siteconf20260922-867-wf90e6.rb extconf.rb
3
3
  checking for __builtin_clz()... yes
4
4
  checking for __builtin_clzl()... yes
5
5
  checking for __builtin_clzll()... yes
@@ -22,10 +22,10 @@ checking for RB_WARN_CATEGORY_DEPRECATED in ruby.h... no
22
22
  checking for RUBY_TYPED_EMBEDDABLE in ruby.h... no
23
23
  creating Makefile
24
24
 
25
- current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal
25
+ current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal
26
26
  make DESTDIR\= clean
27
27
 
28
- current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal
28
+ current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal
29
29
  make DESTDIR\=
30
30
  compiling bigdecimal.c
31
31
  In file included from bigdecimal.c:32:
@@ -46,153 +46,166 @@ ntt.h:184:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration
46
46
  | ^~~~~~~~
47
47
  In file included from bigdecimal.c:33:
48
48
  div.h: In function ‘newton_raphson_inverse’:
49
- div.h:6:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
50
- 6 | VALUE one = bdone.bigdecimal;
49
+ div.h:21:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
50
+ 21 | VALUE one = bdone.bigdecimal;
51
51
  | ^~~~~
52
52
  In file included from bigdecimal.c:11:
53
53
  bigdecimal.h:21:20: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
54
54
  21 | #define DECDIG_DBL uint64_t
55
55
  | ^~~~~~~~
56
- div.h:12:5: note: in expansion of macro ‘DECDIG_DBL’
57
- 12 | DECDIG_DBL numerator = (DECDIG_DBL)BIGDECIMAL_BASE * 100;
56
+ div.h:37:5: note: in expansion of macro ‘DECDIG_DBL’
57
+ 37 | DECDIG_DBL inv_lead = (base_sq - 1) / (x_lead / BIGDECIMAL_BASE);
58
58
  | ^~~~~~~~~~
59
59
  In file included from bigdecimal.c:33:
60
- div.h:20:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
61
- 20 | VALUE inv = inv0.bigdecimal;
60
+ div.h:39:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
61
+ 39 | BDVALUE inv0 = NewZeroWrap(1, 2 * BIGDECIMAL_COMPONENT_FIGURES);
62
+ | ^~~~~~~
63
+ div.h:47:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
64
+ 47 | VALUE inv = inv0.bigdecimal;
65
+ | ^~~~~
66
+ div.h:55:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
67
+ 55 | const size_t margin = 4;
62
68
  | ^~~~~
63
- div.h:29:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
64
- 29 | VALUE one_minus_x_inv = BigDecimal_sub2(
69
+ div.h:63:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
70
+ 63 | VALUE one_minus_x_inv = BigDecimal_sub2(
65
71
  | ^~~~~
66
- div.h: In function ‘slice_copy’:
67
- div.h:69:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
68
- 69 | size_t max_length = (size_t)((ssize_t)src->Prec - start);
69
- | ^~~~~~
70
72
  div.h: In function ‘divmod_newton’:
71
- div.h:93:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
72
- 93 | size_t n = x_digits / y_digits;
73
+ div.h:123:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
74
+ 123 | size_t n = x_digits / y_digits;
73
75
  | ^~~~~~
74
- div.h:108:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
75
- 108 | BDVALUE bdmod = GetBDValueMust(mod);
76
+ div.h:138:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
77
+ 138 | BDVALUE bdmod = GetBDValueMust(mod);
76
78
  | ^~~~~~~
77
- div.h:118:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
78
- 118 | VALUE div;
79
+ div.h:148:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
80
+ 148 | VALUE div;
79
81
  | ^~~~~
80
- div.h:120:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
81
- 120 | BDVALUE bddiv = GetBDValueMust(div);
82
+ div.h:150:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
83
+ 150 | BDVALUE bddiv = GetBDValueMust(div);
82
84
  | ^~~~~~~
83
85
  bigdecimal.c: In function ‘GetBDValueWithPrecInternal’:
84
- bigdecimal.c:318:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
85
- 318 | Real *vp = VpPtr(v);
86
+ bigdecimal.c:321:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
87
+ 321 | Real *vp = VpPtr(v);
86
88
  | ^~~~
87
89
  In file included from bigdecimal.c:11:
88
90
  bigdecimal.c: In function ‘VpCountPrecisionAndScale’:
89
91
  bigdecimal.h:20:16: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
90
92
  20 | #define DECDIG uint32_t
91
93
  | ^~~~~~~~
92
- bigdecimal.c:381:5: note: in expansion of macro ‘DECDIG’
93
- 381 | DECDIG x;
94
+ bigdecimal.c:384:5: note: in expansion of macro ‘DECDIG’
95
+ 384 | DECDIG x;
94
96
  | ^~~~~~
95
- bigdecimal.c:387:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
96
- 387 | int nlz = BASE_FIG;
97
- | ^~~
98
97
  bigdecimal.c:390:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
99
- 390 | int ntz = 0;
98
+ 390 | int nlz = BASE_FIG;
100
99
  | ^~~
101
- bigdecimal.c:429:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
102
- 429 | ssize_t ex = p->exponent;
100
+ bigdecimal.c:393:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
101
+ 393 | int ntz = 0;
102
+ | ^~~
103
+ bigdecimal.c:432:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
104
+ 432 | ssize_t ex = p->exponent;
103
105
  | ^~~~~~~
104
106
  bigdecimal.c: In function ‘BigDecimal_n_significant_digits’:
105
- bigdecimal.c:576:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
106
- 576 | ssize_t n = v.real->Prec; /* The length of frac without trailing zeros. */
107
+ bigdecimal.c:579:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
108
+ 579 | ssize_t n = v.real->Prec; /* The length of frac without trailing zeros. */
107
109
  | ^~~~~~~
108
110
  In file included from bigdecimal.c:11:
109
111
  bigdecimal.h:20:16: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
110
112
  20 | #define DECDIG uint32_t
111
113
  | ^~~~~~~~
112
- bigdecimal.c:580:5: note: in expansion of macro ‘DECDIG’
113
- 580 | DECDIG x;
114
+ bigdecimal.c:583:5: note: in expansion of macro ‘DECDIG’
115
+ 583 | DECDIG x;
114
116
  | ^~~~~~
115
- bigdecimal.c:584:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
116
- 584 | int ntz = 0;
117
+ bigdecimal.c:587:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
118
+ 587 | int ntz = 0;
117
119
  | ^~~
118
- bigdecimal.c:588:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
119
- 588 | ssize_t n_significant_digits = BASE_FIG*n - nlz - ntz;
120
+ bigdecimal.c:591:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
121
+ 591 | ssize_t n_significant_digits = BASE_FIG*n - nlz - ntz;
120
122
  | ^~~~~~~
121
123
  bigdecimal.c: In function ‘GetAddSubPrec’:
122
- bigdecimal.c:966:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
123
- 966 | ssize_t min_a = a->exponent - a->Prec;
124
+ bigdecimal.c:970:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
125
+ 970 | ssize_t min_a = a->exponent - a->Prec;
124
126
  | ^~~~~~~
125
127
  bigdecimal.c: In function ‘BigDecimal_addsub_with_coerce’:
126
- bigdecimal.c:1285:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
127
- 1285 | size_t pl = VpGetPrecLimit();
128
+ bigdecimal.c:1289:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
129
+ 1289 | size_t pl = VpGetPrecLimit();
128
130
  | ^~~~~~
129
131
  bigdecimal.c: In function ‘BigDecimal_DoDivmod’:
130
- bigdecimal.c:1675:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
131
- 1675 | VALUE nan = BigDecimal_nan();
132
+ bigdecimal.c:1679:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
133
+ 1679 | VALUE nan = BigDecimal_nan();
132
134
  | ^~~~~
133
135
  bigdecimal.c: In function ‘rb_uint64_convert_to_BigDecimal’:
134
- bigdecimal.c:2583:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
135
- 2583 | const size_t exp = len + ntz;
136
+ bigdecimal.c:2587:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
137
+ 2587 | const size_t exp = len + ntz;
136
138
  | ^~~~~
137
139
  bigdecimal.c: In function ‘rb_big_convert_to_BigDecimal’:
138
- bigdecimal.c:2612:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
139
- 2612 | int leading_zeros;
140
+ bigdecimal.c:2616:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
141
+ 2616 | int leading_zeros;
140
142
  | ^~~
141
143
  bigdecimal.c: In function ‘rb_float_convert_to_BigDecimal’:
142
- bigdecimal.c:2666:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
143
- 2666 | double d = RFLOAT_VALUE(val);
144
+ bigdecimal.c:2670:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
145
+ 2670 | double d = RFLOAT_VALUE(val);
144
146
  | ^~~~~~
145
- bigdecimal.c:2701:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
146
- 2701 | char buf[BIGDECIMAL_DOUBLE_FIGURES + BASE_FIG + 2 + 1]; /* sizeof(buf) == 28 in the typical case */
147
+ bigdecimal.c:2705:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
148
+ 2705 | char buf[BIGDECIMAL_DOUBLE_FIGURES + BASE_FIG + 2 + 1]; /* sizeof(buf) == 28 in the typical case */
147
149
  | ^~~~
148
- bigdecimal.c:2714:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
149
- 2714 | VALUE inum;
150
+ bigdecimal.c:2718:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
151
+ 2718 | VALUE inum;
150
152
  | ^~~~~
151
- bigdecimal.c:2771:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
152
- 2771 | const size_t ntz10 = prec * BASE_FIG - len10;
153
+ bigdecimal.c:2775:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
154
+ 2775 | const size_t ntz10 = prec * BASE_FIG - len10;
153
155
  | ^~~~~
154
- bigdecimal.c:2791:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
155
- 2791 | const size_t nlz10 = decpt % BASE_FIG;
156
+ bigdecimal.c:2795:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
157
+ 2795 | const size_t nlz10 = decpt % BASE_FIG;
156
158
  | ^~~~~
157
- bigdecimal.c:2794:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
158
- 2794 | const size_t ntz10 = prec * BASE_FIG - nlz10 - len10;
159
+ bigdecimal.c:2798:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
160
+ 2798 | const size_t ntz10 = prec * BASE_FIG - nlz10 - len10;
159
161
  | ^~~~~
160
- bigdecimal.c:2807:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
161
- 2807 | VALUE bd = rb_inum_convert_to_BigDecimal(inum);
162
+ bigdecimal.c:2811:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
163
+ 2811 | VALUE bd = rb_inum_convert_to_BigDecimal(inum);
162
164
  | ^~~~~
163
165
  bigdecimal.c: In function ‘rb_rational_convert_to_BigDecimal’:
164
- bigdecimal.c:2829:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
165
- 2829 | VALUE num = rb_inum_convert_to_BigDecimal(rb_rational_num(val));
166
+ bigdecimal.c:2833:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
167
+ 2833 | VALUE num = rb_inum_convert_to_BigDecimal(rb_rational_num(val));
168
+ | ^~~~~
169
+ bigdecimal.c: In function ‘rb_str_convert_to_BigDecimal’:
170
+ bigdecimal.c:2852:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
171
+ 2852 | const char *c_str = StringValueCStr(val);
166
172
  | ^~~~~
167
173
  bigdecimal.c: In function ‘rb_convert_to_BigDecimal’:
168
- bigdecimal.c:2874:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
169
- 2874 | Real *vp = VpPtr(val);
174
+ bigdecimal.c:2883:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
175
+ 2883 | Real *vp = VpPtr(val);
170
176
  | ^~~~
171
- bigdecimal.c:2911:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
172
- 2911 | VALUE str = rb_check_convert_type(val, T_STRING, "String", "to_str");
177
+ bigdecimal.c:2920:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
178
+ 2920 | VALUE str = rb_check_convert_type(val, T_STRING, "String", "to_str");
173
179
  | ^~~~~
174
180
  bigdecimal.c: In function ‘f_BigDecimal’:
175
- bigdecimal.c:2974:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
176
- 2974 | int exception = opts_exception_p(opts);
181
+ bigdecimal.c:2983:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
182
+ 2983 | int exception = opts_exception_p(opts);
177
183
  | ^~~
184
+ bigdecimal.c: In function ‘BigDecimal_s_interpret_loosely’:
185
+ bigdecimal.c:3020:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
186
+ 3020 | const char *p = RSTRING_PTR(str);
187
+ | ^~~~~
188
+ bigdecimal.c:3023:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
189
+ 3023 | char const *c_str = StringValueCStr(str);
190
+ | ^~~~
178
191
  bigdecimal.c: In function ‘VpAlloc’:
179
- bigdecimal.c:4197:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
180
- 4197 | NULLABLE_BDVALUE special_bd = bigdecimal_parse_special_string(szVal);
192
+ bigdecimal.c:4212:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
193
+ 4212 | NULLABLE_BDVALUE special_bd = bigdecimal_parse_special_string(szVal);
181
194
  | ^~~~~~~~~~~~~~~~
182
- bigdecimal.c:4365:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
183
- 4365 | VALUE obj = BigDecimal_allocate(nalloc);
195
+ bigdecimal.c:4380:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
196
+ 4380 | VALUE obj = BigDecimal_allocate(nalloc);
184
197
  | ^~~~~
185
198
  In file included from bigdecimal.c:11:
186
199
  bigdecimal.c: In function ‘VpMult’:
187
200
  bigdecimal.h:21:20: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
188
201
  21 | #define DECDIG_DBL uint64_t
189
202
  | ^~~~~~~~
190
- bigdecimal.c:4906:13: note: in expansion of macro ‘DECDIG_DBL’
191
- 4906 | DECDIG_DBL carry = 0;
203
+ bigdecimal.c:4921:13: note: in expansion of macro ‘DECDIG_DBL’
204
+ 4921 | DECDIG_DBL carry = 0;
192
205
  | ^~~~~~~~~~
193
206
  bigdecimal.c: In function ‘VpToString’:
194
- bigdecimal.c:5537:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
195
- 5537 | size_t ex_n = Vp_ulltoa(ex, ulltoa_buf_end - 1);
207
+ bigdecimal.c:5553:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
208
+ 5553 | size_t ex_n = Vp_ulltoa(ex, ulltoa_buf_end - 1);
196
209
  | ^~~~~~
197
210
  bigdecimal.c: At top level:
198
211
  cc1: warning: unrecognized command line option ‘-Wno-self-assign’
@@ -201,6 +214,6 @@ cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand
201
214
  compiling missing.c
202
215
  linking shared-object bigdecimal.so
203
216
 
204
- current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal
217
+ current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal
205
218
  make DESTDIR\= install
206
- /usr/bin/install -c -m 0755 bigdecimal.so ./.gem.20260825-866-hvjhst
219
+ /usr/bin/install -c -m 0755 bigdecimal.so ./.gem.20260922-867-1kn939f
@@ -111,8 +111,8 @@ checked program was:
111
111
  have_func: checking for _lzcnt_u32() in x86intrin.h... -------------------- no
112
112
 
113
113
  "gcc -o conftest -I/usr/local/include/ruby-2.6.0/x86_64-linux -I/usr/local/include/ruby-2.6.0/ruby/backward -I/usr/local/include/ruby-2.6.0 -I. -O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC conftest.c -L. -L/usr/local/lib -Wl,-rpath,/usr/local/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/usr/local/lib -L/usr/local/lib -lruby -lm -lc"
114
- /usr/bin/ld: /tmp/ccbJ3it6.o: in function `t':
115
- /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal/conftest.c:16: undefined reference to `_lzcnt_u32'
114
+ /usr/bin/ld: /tmp/ccaN5nRt.o: in function `t':
115
+ /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal/conftest.c:16: undefined reference to `_lzcnt_u32'
116
116
  collect2: error: ld returned 1 exit status
117
117
  checked program was:
118
118
  /* begin */
@@ -173,8 +173,8 @@ checked program was:
173
173
  have_func: checking for _lzcnt_u64() in x86intrin.h... -------------------- no
174
174
 
175
175
  "gcc -o conftest -I/usr/local/include/ruby-2.6.0/x86_64-linux -I/usr/local/include/ruby-2.6.0/ruby/backward -I/usr/local/include/ruby-2.6.0 -I. -O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC conftest.c -L. -L/usr/local/lib -Wl,-rpath,/usr/local/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/usr/local/lib -L/usr/local/lib -lruby -lm -lc"
176
- /usr/bin/ld: /tmp/ccK7zGRj.o: in function `t':
177
- /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal/conftest.c:16: undefined reference to `_lzcnt_u64'
176
+ /usr/bin/ld: /tmp/ccWt0tC7.o: in function `t':
177
+ /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal/conftest.c:16: undefined reference to `_lzcnt_u64'
178
178
  collect2: error: ld returned 1 exit status
179
179
  checked program was:
180
180
  /* begin */
@@ -380,8 +380,8 @@ checked program was:
380
380
  /* end */
381
381
 
382
382
  "gcc -o conftest -I/usr/local/include/ruby-2.6.0/x86_64-linux -I/usr/local/include/ruby-2.6.0/ruby/backward -I/usr/local/include/ruby-2.6.0 -I. -O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC conftest.c -L. -L/usr/local/lib -Wl,-rpath,/usr/local/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/usr/local/lib -L/usr/local/lib -lruby -lm -lc"
383
- /usr/bin/ld: /tmp/ccDfJxzR.o: in function `t':
384
- /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal/conftest.c:17: undefined reference to `rb_opts_exception_p'
383
+ /usr/bin/ld: /tmp/ccyr7tIz.o: in function `t':
384
+ /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal/conftest.c:17: undefined reference to `rb_opts_exception_p'
385
385
  collect2: error: ld returned 1 exit status
386
386
  checked program was:
387
387
  /* begin */
@@ -439,8 +439,8 @@ checked program was:
439
439
  /* end */
440
440
 
441
441
  "gcc -o conftest -I/usr/local/include/ruby-2.6.0/x86_64-linux -I/usr/local/include/ruby-2.6.0/ruby/backward -I/usr/local/include/ruby-2.6.0 -I. -O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC conftest.c -L. -L/usr/local/lib -Wl,-rpath,/usr/local/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/usr/local/lib -L/usr/local/lib -lruby -lm -lc"
442
- /usr/bin/ld: /tmp/ccloT3Jl.o: in function `t':
443
- /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.2/ext/bigdecimal/conftest.c:17: undefined reference to `rb_category_warn'
442
+ /usr/bin/ld: /tmp/ccFymG7k.o: in function `t':
443
+ /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/bigdecimal-4.1.3/ext/bigdecimal/conftest.c:17: undefined reference to `rb_category_warn'
444
444
  collect2: error: ld returned 1 exit status
445
445
  checked program was:
446
446
  /* begin */
@@ -1,5 +1,5 @@
1
1
  current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/ffi-1.17.4/ext/ffi_c
2
- /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.6.0 -r ./siteconf20260825-866-4o0p1c.rb extconf.rb
2
+ /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.6.0 -r ./siteconf20260922-867-12jypd2.rb extconf.rb
3
3
  checking for ffi_prep_closure_loc() in -lffi... yes
4
4
  checking for ffi_prep_cif_var()... yes
5
5
  checking for ffi_raw_call()... yes
@@ -41,4 +41,4 @@ linking shared-object ffi_c.so
41
41
 
42
42
  current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/ffi-1.17.4/ext/ffi_c
43
43
  make DESTDIR\= install
44
- /usr/bin/install -c -m 0755 ffi_c.so ./.gem.20260825-866-og87qe
44
+ /usr/bin/install -c -m 0755 ffi_c.so ./.gem.20260922-867-aed8jo
@@ -247,7 +247,7 @@ checked program was:
247
247
  /* end */
248
248
 
249
249
  "gcc -o conftest -I/usr/local/include/ruby-2.6.0/x86_64-linux -I/usr/local/include/ruby-2.6.0/ruby/backward -I/usr/local/include/ruby-2.6.0 -I. -O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC conftest.c -L. -L/usr/local/lib -Wl,-rpath,/usr/local/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -lffi -lffi -Wl,-rpath,/usr/local/lib -L/usr/local/lib -lruby -lffi -lffi -lm -lc"
250
- /usr/bin/ld: /tmp/cc4OirJB.o: in function `t':
250
+ /usr/bin/ld: /tmp/ccmaQv1z.o: in function `t':
251
251
  /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/ffi-1.17.4/ext/ffi_c/conftest.c:15: undefined reference to `rb_gc_mark_movable'
252
252
  collect2: error: ld returned 1 exit status
253
253
  checked program was:
@@ -1,5 +1,5 @@
1
1
  current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/json-2.7.6/ext/json/ext/parser
2
- /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.6.0 -r ./siteconf20260825-866-ket2ve.rb extconf.rb
2
+ /usr/local/bin/ruby -I /usr/local/lib/ruby/site_ruby/2.6.0 -r ./siteconf20260922-867-rc955t.rb extconf.rb
3
3
  checking for rb_enc_raise() in ruby.h... yes
4
4
  checking for rb_enc_interned_str() in ruby.h... no
5
5
  checking for whether -std=c99 is accepted as CFLAGS... yes
@@ -26,4 +26,4 @@ linking shared-object json/ext/parser.so
26
26
 
27
27
  current directory: /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/json-2.7.6/ext/json/ext/parser
28
28
  make DESTDIR\= install
29
- /usr/bin/install -c -m 0755 parser.so ./.gem.20260825-866-wh2bvj/json/ext
29
+ /usr/bin/install -c -m 0755 parser.so ./.gem.20260922-867-mpele3/json/ext
@@ -100,7 +100,7 @@ checked program was:
100
100
  /* end */
101
101
 
102
102
  "gcc -o conftest -I/usr/local/include/ruby-2.6.0/x86_64-linux -I/usr/local/include/ruby-2.6.0/ruby/backward -I/usr/local/include/ruby-2.6.0 -I. -O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wrestrict -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC conftest.c -L. -L/usr/local/lib -Wl,-rpath,/usr/local/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/usr/local/lib -L/usr/local/lib -lruby -lm -lc"
103
- /usr/bin/ld: /tmp/ccDkH1wJ.o: in function `t':
103
+ /usr/bin/ld: /tmp/cccK9fTQ.o: in function `t':
104
104
  /home/circleci/project/bindings/ruby/src/vendor/bundle/ruby/2.6.0/gems/json-2.7.6/ext/json/ext/parser/conftest.c:17: undefined reference to `rb_enc_interned_str'
105
105
  collect2: error: ld returned 1 exit status
106
106
  checked program was:
@@ -29,6 +29,8 @@ Gem::Specification.new do |s|
29
29
  lib/bigdecimal/jacobian.rb
30
30
  lib/bigdecimal/ludcmp.rb
31
31
  lib/bigdecimal/math.rb
32
+ lib/bigdecimal/math/erf.rb
33
+ lib/bigdecimal/math/gamma.rb
32
34
  lib/bigdecimal/newton.rb
33
35
  lib/bigdecimal/util.rb
34
36
  sample/linear.rb
@@ -31,8 +31,8 @@ rubyhdrdir = $(includedir)/$(RUBY_VERSION_NAME)
31
31
  vendorarchdir = $(vendorlibdir)/$(sitearch)
32
32
  vendorlibdir = $(vendordir)/$(ruby_version)
33
33
  vendordir = $(rubylibprefix)/vendor_ruby
34
- sitearchdir = $(DESTDIR)./.gem.20260825-866-hvjhst
35
- sitelibdir = $(DESTDIR)./.gem.20260825-866-hvjhst
34
+ sitearchdir = $(DESTDIR)./.gem.20260922-867-1kn939f
35
+ sitelibdir = $(DESTDIR)./.gem.20260922-867-1kn939f
36
36
  sitedir = $(rubylibprefix)/site_ruby
37
37
  rubyarchdir = $(rubylibdir)/$(arch)
38
38
  rubylibdir = $(rubylibprefix)/$(ruby_version)
@@ -33,7 +33,7 @@
33
33
  #include "div.h"
34
34
  #include "static_assert.h"
35
35
 
36
- #define BIGDECIMAL_VERSION "4.1.2"
36
+ #define BIGDECIMAL_VERSION "4.1.3"
37
37
 
38
38
  /* Make sure VPMULT_BATCH_SIZE*BASE*BASE does not overflow DECDIG_DBL */
39
39
  #define VPMULT_BATCH_SIZE 16
@@ -68,7 +68,6 @@ static ID id_banker;
68
68
  static ID id_ceiling;
69
69
  static ID id_ceil;
70
70
  static ID id_floor;
71
- static ID id_to_r;
72
71
  static ID id_eq;
73
72
  static ID id_half;
74
73
 
@@ -209,6 +208,10 @@ BigDecimal_memsize(const void *ptr)
209
208
  #endif
210
209
  }
211
210
 
211
+ #ifndef RUBY_TYPED_THREAD_SAFE_FREE
212
+ #define RUBY_TYPED_THREAD_SAFE_FREE RUBY_TYPED_FREE_IMMEDIATELY
213
+ #endif
214
+
212
215
  static const rb_data_type_t BigDecimal_data_type = {
213
216
  .wrap_struct_name = "BigDecimal",
214
217
  .function = {
@@ -216,7 +219,7 @@ static const rb_data_type_t BigDecimal_data_type = {
216
219
  .dfree = RUBY_DEFAULT_FREE,
217
220
  .dsize = BigDecimal_memsize,
218
221
  },
219
- .flags = RUBY_TYPED_FREE_IMMEDIATELY | RUBY_TYPED_FROZEN_SHAREABLE | RUBY_TYPED_WB_PROTECTED | RUBY_TYPED_EMBEDDABLE,
222
+ .flags = RUBY_TYPED_THREAD_SAFE_FREE | RUBY_TYPED_FROZEN_SHAREABLE | RUBY_TYPED_WB_PROTECTED | RUBY_TYPED_EMBEDDABLE,
220
223
  };
221
224
 
222
225
  static VALUE
@@ -669,6 +672,7 @@ BigDecimal_load(VALUE self, VALUE str)
669
672
  }
670
673
  }
671
674
  v = bdvalue_nonnullable(CreateFromString((char *)pch, self, true, true));
675
+ RB_GC_GUARD(str);
672
676
  return CheckGetValue(v);
673
677
  }
674
678
 
@@ -1735,13 +1739,13 @@ BigDecimal_DoDivmod(VALUE self, VALUE r, NULLABLE_BDVALUE *div, NULLABLE_BDVALUE
1735
1739
  *div = bdvalue_nullable(dv);
1736
1740
  *mod = bdvalue_nullable(md);
1737
1741
  }
1742
+ RB_GC_GUARD(dv.bigdecimal);
1743
+ RB_GC_GUARD(md.bigdecimal);
1744
+ RB_GC_GUARD(res.bigdecimal);
1738
1745
 
1739
1746
  Done:
1740
1747
  RB_GC_GUARD(a.bigdecimal);
1741
1748
  RB_GC_GUARD(b.bigdecimal);
1742
- RB_GC_GUARD(dv.bigdecimal);
1743
- RB_GC_GUARD(md.bigdecimal);
1744
- RB_GC_GUARD(res.bigdecimal);
1745
1749
  return true;
1746
1750
  }
1747
1751
 
@@ -2842,8 +2846,13 @@ rb_cstr_convert_to_BigDecimal(const char *c_str, int raise_exception)
2842
2846
  static inline VALUE
2843
2847
  rb_str_convert_to_BigDecimal(VALUE val, int raise_exception)
2844
2848
  {
2849
+ StringValue(val);
2850
+ rb_must_asciicompat(val);
2851
+ if (!raise_exception && memchr(RSTRING_PTR(val), '\0', RSTRING_LEN(val))) return Qnil;
2845
2852
  const char *c_str = StringValueCStr(val);
2846
- return rb_cstr_convert_to_BigDecimal(c_str, raise_exception);
2853
+ VALUE bd = rb_cstr_convert_to_BigDecimal(c_str, raise_exception);
2854
+ RB_GC_GUARD(val);
2855
+ return bd;
2847
2856
  }
2848
2857
 
2849
2858
  static VALUE
@@ -2895,7 +2904,7 @@ rb_convert_to_BigDecimal(VALUE val, size_t digs, int raise_exception)
2895
2904
  else if (RB_TYPE_P(val, T_COMPLEX)) {
2896
2905
  VALUE im = rb_complex_imag(val);
2897
2906
  if (!is_zero(im)) {
2898
- /* TODO: handle raise_exception */
2907
+ if (!raise_exception) return Qnil;
2899
2908
  rb_raise(rb_eArgError,
2900
2909
  "Unable to make a BigDecimal from non-zero imaginary number");
2901
2910
  }
@@ -3005,8 +3014,15 @@ f_BigDecimal(int argc, VALUE *argv, VALUE self)
3005
3014
  static VALUE
3006
3015
  BigDecimal_s_interpret_loosely(VALUE klass, VALUE str)
3007
3016
  {
3017
+ StringValue(str);
3018
+ rb_must_asciicompat(str);
3019
+ /* Like String#to_f, ignore everything after an embedded NUL */
3020
+ const char *p = RSTRING_PTR(str);
3021
+ const char *nul = memchr(p, '\0', RSTRING_LEN(str));
3022
+ if (nul) str = rb_str_subseq(str, 0, nul - p);
3008
3023
  char const *c_str = StringValueCStr(str);
3009
3024
  NULLABLE_BDVALUE v = CreateFromString(c_str, klass, false, true);
3025
+ RB_GC_GUARD(str);
3010
3026
  if (v.bigdecimal_or_nil == Qnil)
3011
3027
  return Qnil;
3012
3028
  else
@@ -3658,7 +3674,6 @@ Init_bigdecimal(void)
3658
3674
 
3659
3675
  #undef ROUNDING_MODE
3660
3676
 
3661
- id_to_r = rb_intern_const("to_r");
3662
3677
  id_eq = rb_intern_const("==");
3663
3678
  id_half = rb_intern_const("half");
3664
3679
 
@@ -5121,6 +5136,7 @@ VpNmlz(Real *a)
5121
5136
  NoVal:
5122
5137
  a->frac[0] = 0;
5123
5138
  a->Prec = 1;
5139
+ a->exponent = 0;
5124
5140
  return 0;
5125
5141
  }
5126
5142
 
@@ -6005,7 +6021,7 @@ VpMidRound(Real *y, unsigned short f, ssize_t nf)
6005
6021
  y->frac[ix] = div;
6006
6022
  VpNmlz(y);
6007
6023
  }
6008
- if (exptoadd > 0) {
6024
+ if (exptoadd > 0 && !VpIsZero(y)) {
6009
6025
  y->exponent += (SIGNED_VALUE)(exptoadd / BASE_FIG);
6010
6026
  exptoadd %= (ssize_t)BASE_FIG;
6011
6027
  for (i = 0; i < exptoadd; i++) {
@@ -267,21 +267,21 @@ VP_EXPORT inline BDVALUE rbd_allocate_struct_zero_wrap(int sign, size_t const di
267
267
  #define VpIsPosZero(a) ((a)->sign==VP_SIGN_POSITIVE_ZERO)
268
268
  #define VpIsNegZero(a) ((a)->sign==VP_SIGN_NEGATIVE_ZERO)
269
269
  #define VpIsZero(a) (VpIsPosZero(a) || VpIsNegZero(a))
270
- #define VpSetPosZero(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_POSITIVE_ZERO)
271
- #define VpSetNegZero(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NEGATIVE_ZERO)
270
+ #define VpSetPosZero(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->exponent=0,(a)->sign=VP_SIGN_POSITIVE_ZERO)
271
+ #define VpSetNegZero(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->exponent=0,(a)->sign=VP_SIGN_NEGATIVE_ZERO)
272
272
  #define VpSetZero(a,s) (void)(((s)>0)?VpSetPosZero(a):VpSetNegZero(a))
273
273
 
274
274
  /* NaN */
275
275
  #define VpIsNaN(a) ((a)->sign==VP_SIGN_NaN)
276
- #define VpSetNaN(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NaN)
276
+ #define VpSetNaN(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->exponent=0,(a)->sign=VP_SIGN_NaN)
277
277
 
278
278
  /* Infinity */
279
279
  #define VpIsPosInf(a) ((a)->sign==VP_SIGN_POSITIVE_INFINITE)
280
280
  #define VpIsNegInf(a) ((a)->sign==VP_SIGN_NEGATIVE_INFINITE)
281
281
  #define VpIsInf(a) (VpIsPosInf(a) || VpIsNegInf(a))
282
282
  #define VpIsDef(a) ( !(VpIsNaN(a)||VpIsInf(a)) )
283
- #define VpSetPosInf(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_POSITIVE_INFINITE)
284
- #define VpSetNegInf(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NEGATIVE_INFINITE)
283
+ #define VpSetPosInf(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->exponent=0,(a)->sign=VP_SIGN_POSITIVE_INFINITE)
284
+ #define VpSetNegInf(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->exponent=0,(a)->sign=VP_SIGN_NEGATIVE_INFINITE)
285
285
  #define VpSetInf(a,s) (void)(((s)>0)?VpSetPosInf(a):VpSetNegInf(a))
286
286
  #define VpHasVal(a) (a->frac[0])
287
287
  #define VpIsOne(a) ((a->Prec==1)&&(a->frac[0]==1)&&(a->exponent==1))