diff --git a/.bazelrc b/.bazelrc index a444a97c2df..b034ae8bb86 100644 --- a/.bazelrc +++ b/.bazelrc @@ -22,4 +22,6 @@ common --enable_runfiles common --registry=file:///%workspace%/misc/bazel/registry common --registry=https://bcr.bazel.build +common --@rules_dotnet//dotnet/settings:strict_deps=false + try-import %workspace%/local.bazelrc diff --git a/.bazelrc.internal b/.bazelrc.internal index cdffa9ccdea..f7718959c9d 100644 --- a/.bazelrc.internal +++ b/.bazelrc.internal @@ -2,3 +2,9 @@ common --registry=file:///%workspace%/ql/misc/bazel/registry common --registry=https://bcr.bazel.build + +# See bazelbuild/rules_dotnet#413: strict_deps in C# also appliy to 3rd-party deps, and when we pull +# in (for example) the xunit package, there's no code in this at all, it just depends transitively on +# its implementation packages without providing any code itself. +# We either can depend on internal implementation details, or turn of strict deps. +common --@rules_dotnet//dotnet/settings:strict_deps=false diff --git a/.gitattributes b/.gitattributes index 2c2f788de9a..22bd4746ab7 100644 --- a/.gitattributes +++ b/.gitattributes @@ -78,6 +78,8 @@ ruby/extractor/cargo-bazel-lock.json -merge csharp/paket.lock linguist-generated=true # needs eol=crlf, as `paket` touches this file and saves it als crlf csharp/.paket/Paket.Restore.targets linguist-generated=true eol=crlf +csharp/paket.main.bzl linguist-generated=true +csharp/paket.main_extension.bzl linguist-generated=true # ripunzip tool /misc/bazel/internal/ripunzip/ripunzip-* filter=lfs diff=lfs merge=lfs -text diff --git a/.github/workflows/build-ripunzip.yml b/.github/workflows/build-ripunzip.yml new file mode 100644 index 00000000000..aed80bac669 --- /dev/null +++ b/.github/workflows/build-ripunzip.yml @@ -0,0 +1,74 @@ +name: Build runzip + +on: + workflow_dispatch: + inputs: + ripunzip-version: + description: "what reference to checktout from google/runzip" + required: false + default: v1.2.1 + openssl-version: + description: "what reference to checkout from openssl/openssl for Linux" + required: false + default: openssl-3.3.0 + +jobs: + build: + strategy: + fail-fast: false + matrix: + os: [ubuntu-20.04, macos-12, windows-2019] + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 + with: + repository: google/ripunzip + ref: ${{ inputs.ripunzip-version }} + # we need to avoid ripunzip dynamically linking into libssl + # see https://github.com/sfackler/rust-openssl/issues/183 + - if: runner.os == 'Linux' + name: checkout openssl + uses: actions/checkout@v4 + with: + repository: openssl/openssl + path: openssl + ref: ${{ inputs.openssl-version }} + - if: runner.os == 'Linux' + name: build and install openssl with fPIC + shell: bash + working-directory: openssl + run: | + ./config -fPIC --prefix=$HOME/.local --openssldir=$HOME/.local/ssl + make -j $(nproc) + make install_sw -j $(nproc) + - if: runner.os == 'Linux' + name: build (linux) + shell: bash + run: | + env OPENSSL_LIB_DIR=$HOME/.local/lib64 OPENSSL_INCLUDE_DIR=$HOME/.local/include OPENSSL_STATIC=yes cargo build --release + mv target/release/ripunzip ripunzip-linux + - if: runner.os == 'Windows' + name: build (windows) + shell: bash + run: | + cargo build --release + mv target/release/ripunzip ripunzip-windows + - name: build (macOS) + if: runner.os == 'macOS' + shell: bash + run: | + rustup target install x86_64-apple-darwin + rustup target install aarch64-apple-darwin + cargo build --target x86_64-apple-darwin --release + cargo build --target aarch64-apple-darwin --release + lipo -create -output ripunzip-macos \ + -arch x86_64 target/x86_64-apple-darwin/release/ripunzip \ + -arch arm64 target/aarch64-apple-darwin/release/ripunzip + - uses: actions/upload-artifact@v4 + with: + name: ripunzip-${{ runner.os }} + path: ripunzip-* + - name: Check built binary + shell: bash + run: | + ./ripunzip-* --version diff --git a/BUILD.bazel b/BUILD.bazel index e69de29bb2d..8ef196cd85a 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -0,0 +1 @@ +exports_files(["LICENSE"]) diff --git a/MODULE.bazel b/MODULE.bazel index db39b358eb1..f9ffd739b46 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -23,9 +23,19 @@ bazel_dep(name = "abseil-cpp", version = "20240116.0", repo_name = "absl") bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "json") bazel_dep(name = "fmt", version = "10.0.0") bazel_dep(name = "gazelle", version = "0.36.0") +bazel_dep(name = "rules_dotnet", version = "0.15.1") bazel_dep(name = "buildifier_prebuilt", version = "6.4.0", dev_dependency = True) +dotnet = use_extension("@rules_dotnet//dotnet:extensions.bzl", "dotnet") +dotnet.toolchain(dotnet_version = "8.0.101") +use_repo(dotnet, "dotnet_toolchains") + +register_toolchains("@dotnet_toolchains//:all") + +csharp_main_extension = use_extension("//csharp:paket.main_extension.bzl", "main_extension") +use_repo(csharp_main_extension, "paket.main") + pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") pip.parse( hub_name = "codegen_deps", diff --git a/config/identical-files.json b/config/identical-files.json index d810e30c0c8..172f9b1ea66 100644 --- a/config/identical-files.json +++ b/config/identical-files.json @@ -364,5 +364,9 @@ "Python model summaries test extension": [ "python/ql/test/library-tests/dataflow/model-summaries/InlineTaintTest.ext.yml", "python/ql/test/library-tests/dataflow/model-summaries/NormalDataflowTest.ext.yml" + ], + "shared tree-sitter extractor cargo.toml": [ + "shared/tree-sitter-extractor/Cargo.toml", + "ruby/extractor/codeql-extractor-fake-crate/Cargo.toml" ] } diff --git a/csharp/BUILD.bazel b/csharp/BUILD.bazel index 657820b3395..b8a58c268e4 100644 --- a/csharp/BUILD.bazel +++ b/csharp/BUILD.bazel @@ -1,3 +1,7 @@ +load("@rules_pkg//pkg:mappings.bzl", "pkg_filegroup", "pkg_files") +load("@semmle_code//:dist.bzl", "dist") +load("//misc/bazel:pkg.bzl", "codeql_pkg_files_overlay") + package(default_visibility = ["//visibility:public"]) alias( @@ -9,3 +13,76 @@ alias( name = "dbscheme-stats", actual = "//csharp/ql/lib:dbscheme-stats", ) + +pkg_files( + name = "dbscheme-group", + srcs = [ + ":dbscheme", + ":dbscheme-stats", + ], + strip_prefix = None, +) + +pkg_files( + name = "extractor-asp", + srcs = [ + "@semmle_code//extractor-asp:extractor-asp-fat", + ], + prefix = "tools", + renames = { + "@semmle_code//extractor-asp:extractor-asp-fat": "extractor-asp.jar", + }, +) + +pkg_filegroup( + name = "db-files", + srcs = [ + ":dbscheme-group", + "//csharp/downgrades", + ], +) + +pkg_files( + name = "extra-files", + srcs = [ + ":codeql-extractor.yml", + "//:LICENSE", + ], +) + +codeql_pkg_files_overlay( + name = "extractor-arch-overlay", + srcs = [ + "//csharp/autobuilder/Semmle.Autobuild.CSharp", + "//csharp/extractor/Semmle.Extraction.CSharp.Driver", + "//csharp/extractor/Semmle.Extraction.CSharp.Standalone", + ], +) + +dist( + name = "extractor-arch", + srcs = [":extractor-arch-overlay"], +) + +dist( + name = "extractor-generic", + srcs = [ + ":dbscheme-group", + ":extra-files", + ":extractor-asp", + "//csharp/downgrades", + "//csharp/tools", + ], + prefix = "csharp", + visibility = ["//visibility:public"], +) + +test_suite( + name = "unit-tests", + tags = ["csharp"], + tests = [ + "//csharp/autobuilder/Semmle.Autobuild.CSharp.Tests", + "//csharp/autobuilder/Semmle.Autobuild.Cpp.Tests", + "//csharp/extractor/Semmle.Extraction.Tests", + ], +) diff --git a/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BUILD.bazel b/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BUILD.bazel new file mode 100644 index 00000000000..f52af066e03 --- /dev/null +++ b/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BUILD.bazel @@ -0,0 +1,18 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_xunit_test", +) + +codeql_xunit_test( + name = "Semmle.Autobuild.CSharp.Tests", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + deps = [ + "//csharp/autobuilder/Semmle.Autobuild.CSharp:bin/Semmle.Autobuild.CSharp", + "//csharp/autobuilder/Semmle.Autobuild.Shared", + "@paket.main//microsoft.net.test.sdk", + "@paket.main//system.io.filesystem", + ], +) diff --git a/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BuildScripts.cs b/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BuildScripts.cs index 1814a76bb2a..612ca2320ce 100644 --- a/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BuildScripts.cs +++ b/csharp/autobuilder/Semmle.Autobuild.CSharp.Tests/BuildScripts.cs @@ -215,9 +215,9 @@ namespace Semmle.Autobuild.CSharp.Tests internal class TestDiagnosticWriter : IDiagnosticsWriter { - public IList Diagnostics { get; } = new List(); + public IList Diagnostics { get; } = new List(); - public void AddEntry(DiagnosticMessage message) => this.Diagnostics.Add(message); + public void AddEntry(Semmle.Util.DiagnosticMessage message) => this.Diagnostics.Add(message); public void Dispose() { } } diff --git a/csharp/autobuilder/Semmle.Autobuild.CSharp/BUILD.bazel b/csharp/autobuilder/Semmle.Autobuild.CSharp/BUILD.bazel new file mode 100644 index 00000000000..904edb3ca55 --- /dev/null +++ b/csharp/autobuilder/Semmle.Autobuild.CSharp/BUILD.bazel @@ -0,0 +1,22 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_binary", +) + +codeql_csharp_binary( + name = "Semmle.Autobuild.CSharp", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + visibility = ["//csharp:__subpackages__"], + deps = [ + "//csharp/autobuilder/Semmle.Autobuild.Shared", + "//csharp/extractor/Semmle.Extraction.CSharp", + "//csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching", + "//csharp/extractor/Semmle.Extraction.CSharp.Standalone:bin/Semmle.Extraction.CSharp.Standalone", + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.build", + "@paket.main//newtonsoft.json", + ], +) diff --git a/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BUILD.bazel b/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BUILD.bazel new file mode 100644 index 00000000000..05c41a7dc0c --- /dev/null +++ b/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BUILD.bazel @@ -0,0 +1,18 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_xunit_test", +) + +codeql_xunit_test( + name = "Semmle.Autobuild.Cpp.Tests", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + deps = [ + "//csharp/autobuilder/Semmle.Autobuild.Cpp:bin/Semmle.Autobuild.Cpp", + "//csharp/autobuilder/Semmle.Autobuild.Shared", + "@paket.main//microsoft.net.test.sdk", + "@paket.main//system.io.filesystem", + ], +) diff --git a/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BuildScripts.cs b/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BuildScripts.cs index f243bdb5401..605bb58755a 100644 --- a/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BuildScripts.cs +++ b/csharp/autobuilder/Semmle.Autobuild.Cpp.Tests/BuildScripts.cs @@ -200,9 +200,9 @@ namespace Semmle.Autobuild.Cpp.Tests internal class TestDiagnosticWriter : IDiagnosticsWriter { - public IList Diagnostics { get; } = new List(); + public IList Diagnostics { get; } = new List(); - public void AddEntry(DiagnosticMessage message) => this.Diagnostics.Add(message); + public void AddEntry(Semmle.Util.DiagnosticMessage message) => this.Diagnostics.Add(message); public void Dispose() { } } diff --git a/csharp/autobuilder/Semmle.Autobuild.Cpp/BUILD.bazel b/csharp/autobuilder/Semmle.Autobuild.Cpp/BUILD.bazel new file mode 100644 index 00000000000..801e7aedbab --- /dev/null +++ b/csharp/autobuilder/Semmle.Autobuild.Cpp/BUILD.bazel @@ -0,0 +1,19 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_binary", +) + +codeql_csharp_binary( + name = "Semmle.Autobuild.Cpp", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + language_prefix = "cpp", + visibility = ["//visibility:public"], + deps = [ + "//csharp/autobuilder/Semmle.Autobuild.Shared", + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.build", + ], +) diff --git a/csharp/autobuilder/Semmle.Autobuild.Shared/BUILD.bazel b/csharp/autobuilder/Semmle.Autobuild.Shared/BUILD.bazel new file mode 100644 index 00000000000..888a14046da --- /dev/null +++ b/csharp/autobuilder/Semmle.Autobuild.Shared/BUILD.bazel @@ -0,0 +1,17 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_library", +) + +codeql_csharp_library( + name = "Semmle.Autobuild.Shared", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + visibility = ["//visibility:public"], + deps = [ + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.build", + ], +) diff --git a/csharp/downgrades/BUILD.bazel b/csharp/downgrades/BUILD.bazel new file mode 100644 index 00000000000..9feec1649b5 --- /dev/null +++ b/csharp/downgrades/BUILD.bazel @@ -0,0 +1,12 @@ +load("@rules_pkg//:mappings.bzl", "pkg_files", "strip_prefix") + +pkg_files( + name = "downgrades", + srcs = glob( + ["**"], + exclude = ["BUILD.bazel"], + ), + prefix = "downgrades", + strip_prefix = strip_prefix.from_pkg(), + visibility = ["//csharp:__pkg__"], +) diff --git a/csharp/extractor/BUILD.bazel b/csharp/extractor/BUILD.bazel new file mode 100644 index 00000000000..e69de29bb2d diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/BUILD.bazel b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/BUILD.bazel new file mode 100644 index 00000000000..670cdb96808 --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/BUILD.bazel @@ -0,0 +1,21 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_library", +) + +codeql_csharp_library( + name = "Semmle.Extraction.CSharp.DependencyFetching", + srcs = glob([ + "*.cs", + "Properties/*.cs", + "SourceGenerators/**/*.cs", + ]), + allow_unsafe_blocks = True, + internals_visible_to = ["Semmle.Extraction.Tests"], + nowarn = ["CA1822"], + visibility = ["//csharp:__subpackages__"], + deps = [ + "//csharp/extractor/Semmle.Extraction", + "//csharp/extractor/Semmle.Util", + ], +) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyStubGenerator/BUILD.bazel b/csharp/extractor/Semmle.Extraction.CSharp.DependencyStubGenerator/BUILD.bazel new file mode 100644 index 00000000000..56376804aba --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyStubGenerator/BUILD.bazel @@ -0,0 +1,18 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_binary", +) + +codeql_csharp_binary( + name = "Semmle.Extraction.CSharp.DependencyStubGenerator", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + visibility = ["//csharp:__pkg__"], + deps = [ + "//csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching", + "//csharp/extractor/Semmle.Extraction.CSharp.StubGenerator", + "//csharp/extractor/Semmle.Util", + ], +) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.Driver/BUILD.bazel b/csharp/extractor/Semmle.Extraction.CSharp.Driver/BUILD.bazel new file mode 100644 index 00000000000..a32dc3a3765 --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp.Driver/BUILD.bazel @@ -0,0 +1,16 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_binary", +) + +codeql_csharp_binary( + name = "Semmle.Extraction.CSharp.Driver", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + visibility = ["//csharp:__pkg__"], + deps = [ + "//csharp/extractor/Semmle.Extraction.CSharp", + ], +) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.Standalone/BUILD.bazel b/csharp/extractor/Semmle.Extraction.CSharp.Standalone/BUILD.bazel new file mode 100644 index 00000000000..4d375f5cdc6 --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp.Standalone/BUILD.bazel @@ -0,0 +1,18 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_binary", +) + +codeql_csharp_binary( + name = "Semmle.Extraction.CSharp.Standalone", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + visibility = ["//csharp:__subpackages__"], + deps = [ + "//csharp/extractor/Semmle.Extraction.CSharp", + "//csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching", + "//csharp/extractor/Semmle.Util", + ], +) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.StubGenerator/BUILD.bazel b/csharp/extractor/Semmle.Extraction.CSharp.StubGenerator/BUILD.bazel new file mode 100644 index 00000000000..856a7a402e8 --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp.StubGenerator/BUILD.bazel @@ -0,0 +1,20 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_library", +) + +codeql_csharp_library( + name = "Semmle.Extraction.CSharp.StubGenerator", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + internals_visible_to = ["Semmle.Extraction.Tests"], + visibility = ["//csharp:__subpackages__"], + deps = [ + "//csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching", + "//csharp/extractor/Semmle.Extraction.CSharp.Util", + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.codeanalysis.csharp", + ], +) diff --git a/csharp/extractor/Semmle.Extraction.CSharp.Util/BUILD.bazel b/csharp/extractor/Semmle.Extraction.CSharp.Util/BUILD.bazel new file mode 100644 index 00000000000..f3baa5334c0 --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp.Util/BUILD.bazel @@ -0,0 +1,17 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_library", +) + +codeql_csharp_library( + name = "Semmle.Extraction.CSharp.Util", + srcs = glob([ + "Properties/*.cs", + "*.cs", + ]), + visibility = ["//csharp:__subpackages__"], + deps = [ + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.codeanalysis.csharp", + ], +) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/BUILD.bazel b/csharp/extractor/Semmle.Extraction.CSharp/BUILD.bazel new file mode 100644 index 00000000000..dc3e549f71e --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.CSharp/BUILD.bazel @@ -0,0 +1,26 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_library", +) + +codeql_csharp_library( + name = "Semmle.Extraction.CSharp", + srcs = glob([ + "Comments/**/*.cs", + "Entities/**/*.cs", + "Extractor/**/*.cs", + "Kinds/**/*.cs", + "Populators/**/*.cs", + "Properties/**/*.cs", + "*.cs", + ]), + allow_unsafe_blocks = True, + visibility = ["//csharp:__subpackages__"], + deps = [ + "//csharp/extractor/Semmle.Extraction", + "//csharp/extractor/Semmle.Extraction.CSharp.Util", + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.build", + "@paket.main//microsoft.codeanalysis.csharp", + ], +) diff --git a/csharp/extractor/Semmle.Extraction.Tests/BUILD.bazel b/csharp/extractor/Semmle.Extraction.Tests/BUILD.bazel new file mode 100644 index 00000000000..fc32731c094 --- /dev/null +++ b/csharp/extractor/Semmle.Extraction.Tests/BUILD.bazel @@ -0,0 +1,22 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_xunit_test", +) + +codeql_xunit_test( + name = "Semmle.Extraction.Tests", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + deps = [ + "//csharp/extractor/Semmle.Extraction", + "//csharp/extractor/Semmle.Extraction.CSharp", + "//csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching", + "//csharp/extractor/Semmle.Extraction.CSharp.Standalone:bin/Semmle.Extraction.CSharp.Standalone", + "//csharp/extractor/Semmle.Extraction.CSharp.StubGenerator", + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.net.test.sdk", + "@paket.main//system.io.filesystem", + ], +) diff --git a/csharp/extractor/Semmle.Extraction/BUILD.bazel b/csharp/extractor/Semmle.Extraction/BUILD.bazel new file mode 100644 index 00000000000..1e841814d93 --- /dev/null +++ b/csharp/extractor/Semmle.Extraction/BUILD.bazel @@ -0,0 +1,36 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_library", +) + +config_setting( + name = "debug_build", + values = { + "compilation_mode": "dbg", + }, +) + +codeql_csharp_library( + name = "Semmle.Extraction", + srcs = glob([ + "Entities/**/*.cs", + "Extractor/**/*.cs", + "Properties/*.cs", + "*.cs", + ]), + # enable via -c dbg on the bazel command line/in .bazelrc.local + defines = select({ + ":debug_build": [ + "TRACE", + "DEBUG", + "DEBUG_LABELS", + ], + "//conditions:default": [], + }), + visibility = ["//csharp:__subpackages__"], + deps = [ + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.build", + "@paket.main//microsoft.codeanalysis", + ], +) diff --git a/csharp/extractor/Semmle.Extraction/Extractor/Extractor.cs b/csharp/extractor/Semmle.Extraction/Extractor/Extractor.cs index 32bbe140d00..078d5d53798 100644 --- a/csharp/extractor/Semmle.Extraction/Extractor/Extractor.cs +++ b/csharp/extractor/Semmle.Extraction/Extractor/Extractor.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; +using System.Reflection; +using System.IO; using Semmle.Util.Logging; - using CompilationInfo = (string key, string value); namespace Semmle.Extraction @@ -106,7 +107,20 @@ namespace Semmle.Extraction public ILogger Logger { get; private set; } - public static string Version => $"{ThisAssembly.Git.BaseTag} ({ThisAssembly.Git.Sha})"; + public static string Version + { + get + { + // the attribute for the git information are always attached to the entry assembly by our build system + var assembly = Assembly.GetEntryAssembly(); + var versionString = assembly?.GetCustomAttribute(); + if (versionString == null) + { + return "unknown (not built from internal bazel workspace)"; + } + return versionString.InformationalVersion; + } + } public PathTransformer PathTransformer { get; } } diff --git a/csharp/extractor/Semmle.Extraction/paket.references b/csharp/extractor/Semmle.Extraction/paket.references index 6873b65bafc..310fffb853f 100644 --- a/csharp/extractor/Semmle.Extraction/paket.references +++ b/csharp/extractor/Semmle.Extraction/paket.references @@ -1,3 +1,2 @@ Microsoft.Build Microsoft.CodeAnalysis -GitInfo diff --git a/csharp/extractor/Semmle.Util.Tests/BUILD.bazel b/csharp/extractor/Semmle.Util.Tests/BUILD.bazel new file mode 100644 index 00000000000..d2a57e1a31a --- /dev/null +++ b/csharp/extractor/Semmle.Util.Tests/BUILD.bazel @@ -0,0 +1,17 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_xunit_test", +) + +codeql_xunit_test( + name = "Semmle.Util.Tests", + srcs = glob([ + "*.cs", + "Properties/*.cs", + ]), + deps = [ + "//csharp/extractor/Semmle.Util", + "@paket.main//microsoft.net.test.sdk", + "@paket.main//newtonsoft.json", + ], +) diff --git a/csharp/extractor/Semmle.Util/BUILD.bazel b/csharp/extractor/Semmle.Util/BUILD.bazel new file mode 100644 index 00000000000..a13928c48e6 --- /dev/null +++ b/csharp/extractor/Semmle.Util/BUILD.bazel @@ -0,0 +1,19 @@ +load( + "//misc/bazel:csharp.bzl", + "codeql_csharp_library", +) + +codeql_csharp_library( + name = "Semmle.Util", + srcs = glob([ + "Logging/**/*.cs", + "ToolStatusPage/**/*.cs", + "*.cs", + "Properties/*.cs", + ]), + visibility = ["//visibility:public"], + deps = [ + "@paket.main//mono.posix.netstandard", + "@paket.main//newtonsoft.json", + ], +) diff --git a/csharp/extractor/Testrunner/BUILD.bazel b/csharp/extractor/Testrunner/BUILD.bazel new file mode 100644 index 00000000000..f2319080fb3 --- /dev/null +++ b/csharp/extractor/Testrunner/BUILD.bazel @@ -0,0 +1 @@ +exports_files(["Testrunner.cs"]) diff --git a/csharp/extractor/Testrunner/Testrunner.cs b/csharp/extractor/Testrunner/Testrunner.cs new file mode 100644 index 00000000000..c19c7f461bd --- /dev/null +++ b/csharp/extractor/Testrunner/Testrunner.cs @@ -0,0 +1,92 @@ +using System.Reflection; +using System.Threading; +using Xunit.Runners; +using System; + + +/// +/// A testrunner for xunit tests we can use with bazel. +/// This file is compiled as part of each test target, due to limitations of the bazel `csharp_test` +/// target: It cannot pull in the main method from a different target. +/// Note: We're running the tests in parallel, which currently goes counter to the bazel execution model, +/// as bazel doesn't expect us to spawm more than one active thread. This for now works fine in practice, +/// as the tests finish quickly. If this ever becomes a problem, we need to implement the bazel sharding protocol explicitly. +/// +public class Testrunner +{ + private static readonly object ConsoleLock = new(); + + private static readonly ManualResetEvent Finished = new(false); + + private static int Result = 0; + + private void OnDiscoveryComplete(DiscoveryCompleteInfo info) + { + lock (ConsoleLock) + Console.WriteLine($"Running {info.TestCasesToRun} of {info.TestCasesDiscovered} tests..."); + } + + private void OnExecutionComplete(ExecutionCompleteInfo info) + { + lock (ConsoleLock) + Console.WriteLine($"Finished: {info.TotalTests} tests in {Math.Round(info.ExecutionTime, 3)}s ({info.TestsFailed} failed, {info.TestsSkipped} skipped)"); + + Finished.Set(); + } + + private void OnTestFailed(TestFailedInfo info) + { + lock (ConsoleLock) + { + Console.ForegroundColor = ConsoleColor.Red; + + Console.WriteLine("[FAIL] {0}: {1}", info.TestDisplayName, info.ExceptionMessage); + if (info.ExceptionStackTrace != null) + Console.WriteLine(info.ExceptionStackTrace); + + Console.ResetColor(); + } + + Result = 1; + } + + private void OnTestSkipped(TestSkippedInfo info) + { + lock (ConsoleLock) + { + Console.ForegroundColor = ConsoleColor.Yellow; + Console.WriteLine("[SKIP] {0}: {1}", info.TestDisplayName, info.SkipReason); + Console.ResetColor(); + } + } + + public int RunTests() + { + var assembly = Assembly.GetExecutingAssembly(); + using (var testrunner = AssemblyRunner.WithoutAppDomain(assembly.Location)) + { + testrunner.OnDiscoveryComplete = OnDiscoveryComplete; + testrunner.OnExecutionComplete = OnExecutionComplete; + testrunner.OnTestFailed = OnTestFailed; + testrunner.OnTestSkipped = OnTestSkipped; + + Console.WriteLine("Discovering tests..."); + testrunner.Start(parallelAlgorithm: null); + + Finished.WaitOne(); + Finished.Dispose(); + + // Wait for assembly runner to finish. + // If we try to dispose while runner is executing, + // it will throw an error. + while (testrunner.Status != AssemblyRunnerStatus.Idle) + Thread.Sleep(100); + } + return Result; + } + + public static int Main(string[] args) + { + return new Testrunner().RunTests(); + } +} diff --git a/csharp/paket.dependencies b/csharp/paket.dependencies index 3b93065a4fb..5634fbc67de 100644 --- a/csharp/paket.dependencies +++ b/csharp/paket.dependencies @@ -8,6 +8,7 @@ nuget Mono.Posix.NETStandard nuget Newtonsoft.Json nuget xunit nuget xunit.runner.visualstudio +nuget xunit.runner.utility nuget Microsoft.NET.Test.Sdk nuget Microsoft.CodeAnalysis.CSharp 4.8.0 nuget Microsoft.CodeAnalysis 4.8.0 @@ -17,4 +18,3 @@ nuget System.Net.Primitives nuget System.Security.Principal nuget System.Threading.ThreadPool nuget System.IO.FileSystem -nuget GitInfo 3.3.3 diff --git a/csharp/paket.lock b/csharp/paket.lock index 060187c166f..df2c9a6585d 100644 --- a/csharp/paket.lock +++ b/csharp/paket.lock @@ -3,8 +3,6 @@ STRATEGY: MIN RESTRICTION: == net8.0 NUGET remote: https://api.nuget.org/v3/index.json - GitInfo (3.3.3) - ThisAssembly.Constants (>= 1.4.1) Humanizer.Core (2.14.1) Microsoft.Bcl.AsyncInterfaces (7.0) Microsoft.Build (17.8.3) @@ -47,7 +45,6 @@ NUGET System.IO.Pipelines (>= 7.0) System.Threading.Channels (>= 7.0) Microsoft.CodeCoverage (17.9) - Microsoft.CSharp (4.7) Microsoft.NET.StringTools (17.8.3) Microsoft.NET.Test.Sdk (17.9) Microsoft.CodeCoverage (>= 17.9) @@ -142,15 +139,11 @@ NUGET Microsoft.NETCore.Targets (>= 1.1) System.Runtime (>= 4.3) System.Threading.Tasks.Dataflow (7.0) - System.Threading.Tasks.Extensions (4.5.4) System.Threading.ThreadPool (4.3) System.Runtime (>= 4.3) System.Runtime.Handles (>= 4.3) System.Windows.Extensions (7.0) System.Drawing.Common (>= 7.0) - ThisAssembly.Constants (1.4.1) - Microsoft.CSharp (>= 4.7) - System.Threading.Tasks.Extensions (>= 4.5.4) xunit (2.8) xunit.analyzers (>= 1.13) xunit.assert (>= 2.8) @@ -165,4 +158,6 @@ NUGET xunit.abstractions (>= 2.0.3) xunit.extensibility.execution (2.8) xunit.extensibility.core (2.8) + xunit.runner.utility (2.8) + xunit.abstractions (>= 2.0.3) xunit.runner.visualstudio (2.8) diff --git a/csharp/paket.main.bzl b/csharp/paket.main.bzl new file mode 100644 index 00000000000..49f5b59e216 --- /dev/null +++ b/csharp/paket.main.bzl @@ -0,0 +1,73 @@ +"GENERATED" + +load("@rules_dotnet//dotnet:defs.bzl", "nuget_repo") + +def main(): + "main" + nuget_repo( + name = "paket.main", + packages = [ + {"name": "Humanizer.Core", "id": "Humanizer.Core", "version": "2.14.1", "sha512": "sha512-yzqGU/HKNLZ9Uvr6kvSc3wYV/S5O/IvklIUW5WF7MuivGLY8wS5IZnLPkt7D1KW8Et2Enl0I3Lzg2vGWM24Xsw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.Bcl.AsyncInterfaces", "id": "Microsoft.Bcl.AsyncInterfaces", "version": "7.0.0", "sha512": "sha512-Nb9B1lxCab0LZi0ijNLEpw4hgwt0Wl8QQM1DxIhJS2otChAtIVMfyGrYl3YzdSjspvBYPliJlr0kCtizNAVe3w==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.Build", "id": "Microsoft.Build", "version": "17.8.3", "sha512": "sha512-jRz++ltVTU9xGAYSnI7fGwLIsg/AwINaxlXaJrcMszO+fyh1xJ8gKZkDz10foT/5y26jZC6G93wyp85NVHc+lA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": ["Microsoft.Build.Framework", "Microsoft.NET.StringTools", "System.Collections.Immutable", "System.Configuration.ConfigurationManager", "System.Reflection.MetadataLoadContext", "System.Security.Principal.Windows", "System.Threading.Tasks.Dataflow", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net48": ["Microsoft.Build.Framework", "Microsoft.NET.StringTools", "System.Collections.Immutable", "System.Configuration.ConfigurationManager", "System.Reflection.MetadataLoadContext", "System.Security.Principal.Windows", "System.Threading.Tasks.Dataflow", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": ["Microsoft.Build.Framework", "Microsoft.NET.StringTools", "System.Collections.Immutable", "System.Configuration.ConfigurationManager", "System.Reflection.MetadataLoadContext", "System.Security.Principal.Windows", "System.Threading.Tasks.Dataflow", "System.Reflection.Metadata"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.Build.Framework", "id": "Microsoft.Build.Framework", "version": "17.8.3", "sha512": "sha512-xDOoj8lpNohM0Sieo4sJ47m/3SAquclF8wFZeAYYuDRHc8hII4XWPhSafFmw5A4TMGOyV08Z1TrrqES9HxMB3Q==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "net462": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "net47": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "net471": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "net472": ["System.Runtime.CompilerServices.Unsafe"], "net48": ["System.Runtime.CompilerServices.Unsafe"], "net5.0": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "net6.0": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "net7.0": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "netcoreapp2.1": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "netcoreapp2.2": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "netcoreapp3.0": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "netcoreapp3.1": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"], "netstandard2.1": ["System.Runtime.CompilerServices.Unsafe", "System.Security.Principal.Windows"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeAnalysis", "id": "Microsoft.CodeAnalysis", "version": "4.8.0", "sha512": "sha512-KETFTRJCjhDGnULVvVDbA0miI0EMnx9m9N+TAKfvVywtTcVYXEukp5NOUQNzzOpU7XH231Vv7V2k50qCz/teVw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net462": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net47": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net471": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net472": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net48": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net5.0": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net6.0": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net7.0": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "net8.0": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"], "netstandard2.1": ["Microsoft.CodeAnalysis.CSharp.Workspaces", "Microsoft.CodeAnalysis.VisualBasic.Workspaces"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeAnalysis.Analyzers", "id": "Microsoft.CodeAnalysis.Analyzers", "version": "3.3.4", "sha512": "sha512-I+Riw6/6WjNICydoiNpDjN/GGP7u4XsL6VsI9lG/OjFufH3flvSEy/fxNhGDVGwZWwq/5BlnqX+LH2dmheaPfg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeAnalysis.Common", "id": "Microsoft.CodeAnalysis.Common", "version": "4.8.0", "sha512": "sha512-R3u+gGs/RakiGqnBf80niDI56pCaN1g+2n66QmKqj6fAv6xw9uES2BtwtKOkQsiTEDqPm6Vk0OwrgsP1S+rSbA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net462": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net47": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net471": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net472": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net48": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net5.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net6.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net7.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net8.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "netstandard2.1": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeAnalysis.CSharp", "id": "Microsoft.CodeAnalysis.CSharp", "version": "4.8.0", "sha512": "sha512-1HVXCQh5b0w/KE7qni2T1k2dK/5+P9uXwOHu+NDUwX6ZplpNH94FSUQBC/wwzjFpxfmdYhen1LvGk0h40a/0aA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.Common"], "net462": ["Microsoft.CodeAnalysis.Common"], "net47": ["Microsoft.CodeAnalysis.Common"], "net471": ["Microsoft.CodeAnalysis.Common"], "net472": ["Microsoft.CodeAnalysis.Common"], "net48": ["Microsoft.CodeAnalysis.Common"], "net5.0": ["Microsoft.CodeAnalysis.Common"], "net6.0": ["Microsoft.CodeAnalysis.Common"], "net7.0": ["Microsoft.CodeAnalysis.Common"], "net8.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.Common"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.Common"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.Common"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.Common"], "netstandard2.1": ["Microsoft.CodeAnalysis.Common"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeAnalysis.CSharp.Workspaces", "id": "Microsoft.CodeAnalysis.CSharp.Workspaces", "version": "4.8.0", "sha512": "sha512-BuDq7Hcg1hRjqmK3kZQkDDJ6mR+j+C402+Vj7iBBApQAl47LuvFiJVwM1jNwMKHJs+/N3dkBV+25SAMJByohIA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net462": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net47": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net471": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net472": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net48": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net5.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net6.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net7.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "net8.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"], "netstandard2.1": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.CSharp", "Microsoft.CodeAnalysis.Workspaces.Common", "Humanizer.Core"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeAnalysis.VisualBasic", "id": "Microsoft.CodeAnalysis.VisualBasic", "version": "4.8.0", "sha512": "sha512-vMWxChp5TXtYVw3LwacOhuT8kRnzXxBnKjxTE95Xj1x1NPnBtL7sUBFFqnsCyVaaDwEAckK0QpVHhws4Zetcmg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.Common"], "net462": ["Microsoft.CodeAnalysis.Common"], "net47": ["Microsoft.CodeAnalysis.Common"], "net471": ["Microsoft.CodeAnalysis.Common"], "net472": ["Microsoft.CodeAnalysis.Common"], "net48": ["Microsoft.CodeAnalysis.Common"], "net5.0": ["Microsoft.CodeAnalysis.Common"], "net6.0": ["Microsoft.CodeAnalysis.Common"], "net7.0": ["Microsoft.CodeAnalysis.Common"], "net8.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.Common"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.Common"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.Common"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.Common"], "netstandard2.1": ["Microsoft.CodeAnalysis.Common"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeAnalysis.VisualBasic.Workspaces", "id": "Microsoft.CodeAnalysis.VisualBasic.Workspaces", "version": "4.8.0", "sha512": "sha512-KvjbWJc4bAgWfvbaIIBv1eHfjfkLxQzaCT6BtxmCZTQuFO+zEjewzbwA9QhK/PMaCOM686Fn+5fhiC6kzLwO4g==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net462": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net47": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net471": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net472": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net48": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net5.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net6.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net7.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "net8.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"], "netstandard2.1": ["Microsoft.CodeAnalysis.Common", "Microsoft.CodeAnalysis.VisualBasic", "Microsoft.CodeAnalysis.Workspaces.Common"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeAnalysis.Workspaces.Common", "id": "Microsoft.CodeAnalysis.Workspaces.Common", "version": "4.8.0", "sha512": "sha512-pTFm2FbSn0MonSJN2XxSBrMwHUWRM7wUWZczQvJdXXo1gZBaNbH8o9/tcsXc/AmMJqPtC7rY0HRJ/Mm95STaxA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net462": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net47": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net471": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net472": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net48": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net5.0": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net6.0": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net7.0": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "net8.0": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"], "netstandard2.1": ["Microsoft.CodeAnalysis.Common", "Humanizer.Core", "Microsoft.Bcl.AsyncInterfaces", "System.Composition", "System.IO.Pipelines", "System.Threading.Channels"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.CodeCoverage", "id": "Microsoft.CodeCoverage", "version": "17.9.0", "sha512": "sha512-QEb48Z408yBfe/f156te98pfHwjvLOKl+UC1Pzg7KH1PDXXgk8KN8ZOEdYGrAiG43pC99Oo39bCb2R5WE+e5VA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.NET.StringTools", "id": "Microsoft.NET.StringTools", "version": "17.8.3", "sha512": "sha512-3N/Ika66JZeORrIZ68fap6M0LSQ9+SQz277NxjA/dxETnR3dZwJXj67jAAc4FkijG6w//QzrC5NEregtIVjz1w==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": ["System.Runtime.CompilerServices.Unsafe"], "net48": ["System.Runtime.CompilerServices.Unsafe"], "net5.0": ["System.Runtime.CompilerServices.Unsafe"], "net6.0": ["System.Runtime.CompilerServices.Unsafe"], "net7.0": ["System.Runtime.CompilerServices.Unsafe"], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Runtime.CompilerServices.Unsafe"], "netcoreapp2.1": ["System.Runtime.CompilerServices.Unsafe"], "netcoreapp2.2": ["System.Runtime.CompilerServices.Unsafe"], "netcoreapp3.0": ["System.Runtime.CompilerServices.Unsafe"], "netcoreapp3.1": ["System.Runtime.CompilerServices.Unsafe"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Runtime.CompilerServices.Unsafe"], "netstandard2.1": ["System.Runtime.CompilerServices.Unsafe"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.NET.Test.Sdk", "id": "Microsoft.NET.Test.Sdk", "version": "17.9.0", "sha512": "sha512-1WsHeRGhVUDonn7uT+vAGkYmJF57QTR+0PDpoIvDPq+vJtaNzrUHJbPFrU3aV+y68D+0wlj4QRop5fzvxFBJkA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": ["Microsoft.CodeCoverage"], "net47": ["Microsoft.CodeCoverage"], "net471": ["Microsoft.CodeCoverage"], "net472": ["Microsoft.CodeCoverage"], "net48": ["Microsoft.CodeCoverage"], "net5.0": ["Microsoft.TestPlatform.TestHost", "Microsoft.CodeCoverage"], "net6.0": ["Microsoft.TestPlatform.TestHost", "Microsoft.CodeCoverage"], "net7.0": ["Microsoft.TestPlatform.TestHost", "Microsoft.CodeCoverage"], "net8.0": ["Microsoft.TestPlatform.TestHost", "Microsoft.CodeCoverage"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": ["Microsoft.TestPlatform.TestHost", "Microsoft.CodeCoverage"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.NETCore.Platforms", "id": "Microsoft.NETCore.Platforms", "version": "1.1.1", "sha512": "sha512-mDUJD1eLXIzmUnWCzWlmNQZGDp/cVGT8KyhzMcJNk2nlfdFUOoZai9idT8/FacJr8Nv8zhAmdf39FHm5qWUoGQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.NETCore.Targets", "id": "Microsoft.NETCore.Targets", "version": "1.1.3", "sha512": "sha512-pxwq8g2PYRiEF5KXVjmZFMNTqsg2Gr1puv/pR1sqAduAKHAGbaCuJ6+yc3pAJseClQUD29S2Ubrm7n/ZD78dUg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.TestPlatform.ObjectModel", "id": "Microsoft.TestPlatform.ObjectModel", "version": "17.9.0", "sha512": "sha512-Y3BIxwsZCgJp1+B2HXy+x9qNMG9XcEgMuRKGwGBH1/TxZmVW38RJTsCQ2wEbA/tzbKAzE0ebVmAZpaVFZ+BfNw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Reflection.Metadata"], "net462": ["System.Reflection.Metadata"], "net47": ["System.Reflection.Metadata"], "net471": ["System.Reflection.Metadata"], "net472": ["System.Reflection.Metadata"], "net48": ["System.Reflection.Metadata"], "net5.0": ["System.Reflection.Metadata"], "net6.0": ["System.Reflection.Metadata"], "net7.0": ["System.Reflection.Metadata"], "net8.0": ["System.Reflection.Metadata"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Reflection.Metadata"], "netcoreapp2.1": ["System.Reflection.Metadata"], "netcoreapp2.2": ["System.Reflection.Metadata"], "netcoreapp3.0": ["System.Reflection.Metadata"], "netcoreapp3.1": ["System.Reflection.Metadata"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Reflection.Metadata"], "netstandard2.1": ["System.Reflection.Metadata"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.TestPlatform.TestHost", "id": "Microsoft.TestPlatform.TestHost", "version": "17.9.0", "sha512": "sha512-yCRsmzZaiv6/NTFzVxJVY4GaPqaLGi7E2VzUSDjvsvEhvlcQJQpozrBsegUmBr/xwgKpUE7i0gz2X2ZGO0PTGg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["Microsoft.TestPlatform.ObjectModel", "Newtonsoft.Json"], "net6.0": ["Microsoft.TestPlatform.ObjectModel", "Newtonsoft.Json"], "net7.0": ["Microsoft.TestPlatform.ObjectModel", "Newtonsoft.Json"], "net8.0": ["Microsoft.TestPlatform.ObjectModel", "Newtonsoft.Json"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": ["Microsoft.TestPlatform.ObjectModel", "Newtonsoft.Json"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.Win32.Primitives", "id": "Microsoft.Win32.Primitives", "version": "4.3.0", "sha512": "sha512-Nm8Hp51y9tYcK3xD6qk43Wjftrg1mdH24CCJsTb6gr7HS21U1uA+CKPGEtUcVZbjU1y8Kynzm5eoJ7Pnx5gm8A==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net6.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net7.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net8.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp3.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp3.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.4": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.5": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.6": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.Win32.SystemEvents", "id": "Microsoft.Win32.SystemEvents", "version": "7.0.0", "sha512": "sha512-GO6SWx/wSZIFvxOn67Y6OiIGdz9JGCg5CRDDbSAAvBDQeZFbybu9sEOUb9w/vUlQv+A2XakTFZg9Ug1w+tgbWQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Mono.Posix.NETStandard", "id": "Mono.Posix.NETStandard", "version": "1.0.0", "sha512": "sha512-RtGiutQZJAmajvQ0QvBvh73VJye85iW9f9tjZlzF88idLxNMo4lAktP/4Y9ilCpais0LDO0tpoICt9Hdv6wooA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Newtonsoft.Json", "id": "Newtonsoft.Json", "version": "13.0.3", "sha512": "sha512-mbJSvHfRxfX3tR/U6n1WU+mWHXswYc+SB/hkOpx8yZZe68hNZGfymJu0cjsaJEkVzCMqePiU6LdIyogqfIn7kg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Collections.Immutable", "id": "System.Collections.Immutable", "version": "7.0.0", "sha512": "sha512-8ISvyTlddLTyUsR7fQ43jmdta4tgM6aGNrZItYgF43ct0i/x3tBdPIyFU9LnaFspt1P+HLtaMz8Bir5kIqPr+g==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Runtime.CompilerServices.Unsafe"], "net462": ["System.Runtime.CompilerServices.Unsafe"], "net47": ["System.Runtime.CompilerServices.Unsafe"], "net471": ["System.Runtime.CompilerServices.Unsafe"], "net472": ["System.Runtime.CompilerServices.Unsafe"], "net48": ["System.Runtime.CompilerServices.Unsafe"], "net5.0": ["System.Runtime.CompilerServices.Unsafe"], "net6.0": ["System.Runtime.CompilerServices.Unsafe"], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Runtime.CompilerServices.Unsafe"], "netcoreapp2.1": ["System.Runtime.CompilerServices.Unsafe"], "netcoreapp2.2": ["System.Runtime.CompilerServices.Unsafe"], "netcoreapp3.0": ["System.Runtime.CompilerServices.Unsafe"], "netcoreapp3.1": ["System.Runtime.CompilerServices.Unsafe"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Runtime.CompilerServices.Unsafe"], "netstandard2.1": ["System.Runtime.CompilerServices.Unsafe"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Composition", "id": "System.Composition", "version": "7.0.0", "sha512": "sha512-+tzE7ykR8A8zNhvCbpLwfeWv6MsbR9V3ZG9dGuQ1/DKqpeP0qQeHsqgjv20njYmyj4uoEyw1VtSGr+v++fiwhg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net462": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net47": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net471": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net472": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net48": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net5.0": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net6.0": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net7.0": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "net8.0": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "netcoreapp2.1": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "netcoreapp2.2": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "netcoreapp3.0": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "netcoreapp3.1": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"], "netstandard2.1": ["System.Composition.AttributedModel", "System.Composition.Convention", "System.Composition.Hosting", "System.Composition.Runtime", "System.Composition.TypedParts"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Composition.AttributedModel", "id": "System.Composition.AttributedModel", "version": "7.0.0", "sha512": "sha512-yAbXw0KA75IDNreMGEixHualXguXa/Qz5azb0f9QCSpjZYYh1p/whNr4ilPBUWPKlev0CcWnwBfuP1me4o5HmA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Composition.Convention", "id": "System.Composition.Convention", "version": "7.0.0", "sha512": "sha512-q+McXhN7FAsWtZ/11cgHDXEaEFSTObA6sGpxoXCAf68qza24qHfk9LMbxIljnSEw1zohPmnMcRhOxWZoe6EtYw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Composition.AttributedModel"], "net462": ["System.Composition.AttributedModel"], "net47": ["System.Composition.AttributedModel"], "net471": ["System.Composition.AttributedModel"], "net472": ["System.Composition.AttributedModel"], "net48": ["System.Composition.AttributedModel"], "net5.0": ["System.Composition.AttributedModel"], "net6.0": ["System.Composition.AttributedModel"], "net7.0": ["System.Composition.AttributedModel"], "net8.0": ["System.Composition.AttributedModel"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Composition.AttributedModel"], "netcoreapp2.1": ["System.Composition.AttributedModel"], "netcoreapp2.2": ["System.Composition.AttributedModel"], "netcoreapp3.0": ["System.Composition.AttributedModel"], "netcoreapp3.1": ["System.Composition.AttributedModel"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Composition.AttributedModel"], "netstandard2.1": ["System.Composition.AttributedModel"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Composition.Hosting", "id": "System.Composition.Hosting", "version": "7.0.0", "sha512": "sha512-bsn3YvBEQLr86nEEwbxCTYIAenNTzVjOdvlYkOAXEE9szq9s8D9QWs1a3nT0XKQrxYveVCmF6WOQWyX0dAESMg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Composition.Runtime"], "net462": ["System.Composition.Runtime"], "net47": ["System.Composition.Runtime"], "net471": ["System.Composition.Runtime"], "net472": ["System.Composition.Runtime"], "net48": ["System.Composition.Runtime"], "net5.0": ["System.Composition.Runtime"], "net6.0": ["System.Composition.Runtime"], "net7.0": ["System.Composition.Runtime"], "net8.0": ["System.Composition.Runtime"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Composition.Runtime"], "netcoreapp2.1": ["System.Composition.Runtime"], "netcoreapp2.2": ["System.Composition.Runtime"], "netcoreapp3.0": ["System.Composition.Runtime"], "netcoreapp3.1": ["System.Composition.Runtime"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Composition.Runtime"], "netstandard2.1": ["System.Composition.Runtime"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Composition.Runtime", "id": "System.Composition.Runtime", "version": "7.0.0", "sha512": "sha512-Ks9ujC23uONMqefwDOqxMJIf4m4t3r+IvPdYcphVIL07M3+j1Mjcrb3tv2PkZ04MW83yC17A/G47KMfCoX1nZw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Composition.TypedParts", "id": "System.Composition.TypedParts", "version": "7.0.0", "sha512": "sha512-OScKjiZB5A3zaOFA9aqLFeNiqFLtnv/pUHPP14yRQA71819Nk4fZ6hrrraZbmccx9+ddXLQyB/OUwV0epDMlmA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net462": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net47": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net471": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net472": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net48": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net5.0": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net6.0": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net7.0": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "net8.0": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "netcoreapp2.1": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "netcoreapp2.2": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "netcoreapp3.0": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "netcoreapp3.1": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"], "netstandard2.1": ["System.Composition.AttributedModel", "System.Composition.Hosting", "System.Composition.Runtime"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Configuration.ConfigurationManager", "id": "System.Configuration.ConfigurationManager", "version": "7.0.0", "sha512": "sha512-g3iVgTpIcjMYpH+sMq5VKjytevOJv+ABsYLKOLj0UZrXp3diFFdnPPqL+orxMD5ktyaTagg2S7ONJInu8itIaQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "net462": ["System.Security.Permissions"], "net47": ["System.Security.Permissions"], "net471": ["System.Security.Permissions"], "net472": ["System.Security.Permissions"], "net48": ["System.Security.Permissions"], "net5.0": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "net6.0": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "net7.0": ["System.Diagnostics.EventLog", "System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "net8.0": ["System.Diagnostics.EventLog", "System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "netcoreapp2.1": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "netcoreapp2.2": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "netcoreapp3.0": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "netcoreapp3.1": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"], "netstandard2.1": ["System.Security.Cryptography.ProtectedData", "System.Security.Permissions"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Diagnostics.EventLog", "id": "System.Diagnostics.EventLog", "version": "7.0.0", "sha512": "sha512-m/H4Rg7KukGEmfRpl+rXU1UbMN3GYbv42cbMHRgMwHIiUL3svKoFFR76Fk/mHN5TgrwGx64fS0Fp+p3qICKg/Q==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Security.Principal.Windows"], "net462": ["System.Security.Principal.Windows"], "net47": ["System.Security.Principal.Windows"], "net471": ["System.Security.Principal.Windows"], "net472": ["System.Security.Principal.Windows"], "net48": ["System.Security.Principal.Windows"], "net5.0": ["System.Security.Principal.Windows"], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Security.Principal.Windows"], "netcoreapp2.1": ["System.Security.Principal.Windows"], "netcoreapp2.2": ["System.Security.Principal.Windows"], "netcoreapp3.0": ["System.Security.Principal.Windows"], "netcoreapp3.1": ["System.Security.Principal.Windows"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Security.Principal.Windows"], "netstandard2.1": ["System.Security.Principal.Windows"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Drawing.Common", "id": "System.Drawing.Common", "version": "7.0.0", "sha512": "sha512-0TJd5U26gRDgGa/rqABgHC5OBAiyl7Mm3pIzPgKfpmPXFQ8CFVWyGi+4mkEaCK715ViOBDkU2pC2nAiPunLw7Q==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": ["Microsoft.Win32.SystemEvents"], "net7.0": ["Microsoft.Win32.SystemEvents"], "net8.0": ["Microsoft.Win32.SystemEvents"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.IO", "id": "System.IO", "version": "4.3.0", "sha512": "sha512-v8paIePhmGuXZbE9xvvNb4uJ5ME4OFXR1+8la/G/L1GIl2nbU2WFnddgb79kVK3U2us7q1aZT/uY/R0D/ovB5g==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "net6.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "net7.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "net8.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp3.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp3.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard": [], "netstandard1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.3": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.4": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.5": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.6": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Text.Encoding", "System.Threading.Tasks"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.IO.FileSystem", "id": "System.IO.FileSystem", "version": "4.3.0", "sha512": "sha512-T7WB1vhblSmgkaDpdGM3Uqo55Qsr5sip5eyowrwiXOoHBkzOx3ePd9+Zh97r9NzOwFCxqX7awO6RBxQuao7n7g==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": ["System.IO.FileSystem.Primitives"], "net461": ["System.IO.FileSystem.Primitives"], "net462": ["System.IO.FileSystem.Primitives"], "net47": ["System.IO.FileSystem.Primitives"], "net471": ["System.IO.FileSystem.Primitives"], "net472": ["System.IO.FileSystem.Primitives"], "net48": ["System.IO.FileSystem.Primitives"], "net5.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "net6.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "net7.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "net8.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp3.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netcoreapp3.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.4": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.5": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard1.6": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"], "netstandard2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.IO", "System.IO.FileSystem.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Text.Encoding", "System.Threading.Tasks"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.IO.FileSystem.Primitives", "id": "System.IO.FileSystem.Primitives", "version": "4.3.0", "sha512": "sha512-WIWVPQlYLP/Zc9I6IakpBk1y8ryVGK83MtZx//zGKKi2hvHQWKAB7moRQCOz5Is/wNDksiYpocf3FeA3le6e5Q==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["System.Runtime"], "net6.0": ["System.Runtime"], "net7.0": ["System.Runtime"], "net8.0": ["System.Runtime"], "netcoreapp1.0": ["System.Runtime"], "netcoreapp1.1": ["System.Runtime"], "netcoreapp2.0": ["System.Runtime"], "netcoreapp2.1": ["System.Runtime"], "netcoreapp2.2": ["System.Runtime"], "netcoreapp3.0": ["System.Runtime"], "netcoreapp3.1": ["System.Runtime"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": ["System.Runtime"], "netstandard1.4": ["System.Runtime"], "netstandard1.5": ["System.Runtime"], "netstandard1.6": ["System.Runtime"], "netstandard2.0": ["System.Runtime"], "netstandard2.1": ["System.Runtime"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.IO.Pipelines", "id": "System.IO.Pipelines", "version": "7.0.0", "sha512": "sha512-TakLfQsVpFTezcI7L++PGtFZbIsjDxr+66c5PvUzTbVZycDIg0zSFs55ewk4b0IkpTKZAK39uf0m63hOEqFp/Q==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Net.Primitives", "id": "System.Net.Primitives", "version": "4.3.1", "sha512": "sha512-BgdlyYCI7rrdh36p3lMTqbkvaafPETpB1bk9iQlFdQxYE692kiXvmseXs8ghL+gEgQF2xgDc8GH4QLkSgUUs+Q==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "net6.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "net7.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "net8.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netcoreapp1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netcoreapp1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netcoreapp3.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netcoreapp3.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netstandard": [], "netstandard1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.3": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netstandard1.4": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netstandard1.5": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netstandard1.6": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netstandard2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"], "netstandard2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime", "System.Runtime.Handles"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Reflection.Metadata", "id": "System.Reflection.Metadata", "version": "7.0.0", "sha512": "sha512-LZPIuhp4zrkNJbejuCrnx/JFKtKfSe6OHGCyvNoZ+Pbt9oaJ1CpYau9fr58QSf5egJXsmkq0iizSqVCot+wshQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Collections.Immutable"], "net462": ["System.Collections.Immutable"], "net47": ["System.Collections.Immutable"], "net471": ["System.Collections.Immutable"], "net472": ["System.Collections.Immutable"], "net48": ["System.Collections.Immutable"], "net5.0": ["System.Collections.Immutable"], "net6.0": ["System.Collections.Immutable"], "net7.0": ["System.Collections.Immutable"], "net8.0": ["System.Collections.Immutable"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Collections.Immutable"], "netcoreapp2.1": ["System.Collections.Immutable"], "netcoreapp2.2": ["System.Collections.Immutable"], "netcoreapp3.0": ["System.Collections.Immutable"], "netcoreapp3.1": ["System.Collections.Immutable"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Collections.Immutable"], "netstandard2.1": ["System.Collections.Immutable"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Reflection.MetadataLoadContext", "id": "System.Reflection.MetadataLoadContext", "version": "7.0.0", "sha512": "sha512-dqk0PmO2SGulqNpuJlALPc/5vqFVZc6As4ToHeZvd+6B/DomA1/JM1nAOpSU2hkBVytU0GlwsBr4YfKSnGSchg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net462": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net47": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net471": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net472": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net48": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net5.0": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net6.0": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net7.0": ["System.Collections.Immutable", "System.Reflection.Metadata"], "net8.0": ["System.Collections.Immutable", "System.Reflection.Metadata"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Collections.Immutable", "System.Reflection.Metadata"], "netcoreapp2.1": ["System.Collections.Immutable", "System.Reflection.Metadata"], "netcoreapp2.2": ["System.Collections.Immutable", "System.Reflection.Metadata"], "netcoreapp3.0": ["System.Collections.Immutable", "System.Reflection.Metadata"], "netcoreapp3.1": ["System.Collections.Immutable", "System.Reflection.Metadata"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Collections.Immutable", "System.Reflection.Metadata"], "netstandard2.1": ["System.Collections.Immutable", "System.Reflection.Metadata"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Runtime", "id": "System.Runtime", "version": "4.3.1", "sha512": "sha512-Al69mPDfzdD+bKGK2HAfB+lNFOHFqnkqzNnUJmmvUe1/qEPK9M7EiTT4zuycKDPy7ev11xz8XVgJWKP0hm7NIA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "net6.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "net7.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "net8.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netcoreapp1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netcoreapp1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netcoreapp3.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netcoreapp3.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard": [], "netstandard1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard1.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard1.3": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard1.4": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard1.5": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard1.6": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"], "netstandard2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Runtime.CompilerServices.Unsafe", "id": "System.Runtime.CompilerServices.Unsafe", "version": "6.0.0", "sha512": "sha512-1AVzAb5OxJNvJLnOADtexNmWgattm2XVOT3TjQTN7Dd4SqoSwai1CsN2fth42uQldJSQdz/sAec0+TzxBFgisw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Runtime.Handles", "id": "System.Runtime.Handles", "version": "4.3.0", "sha512": "sha512-CluvHdVUv54BvLTOCCyybugreDNk/rR8unMPruzXDtxSjvrQOU3M4R831/lQf4YI8VYp668FGQa/01E+Rq8PEQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net6.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net7.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net8.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp3.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp3.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.4": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.5": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.6": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Security.Cryptography.ProtectedData", "id": "System.Security.Cryptography.ProtectedData", "version": "7.0.0", "sha512": "sha512-a34SHiyaMcLRjw/1IGXokS2cH9j8XoOhs1jUYq3m+kQcnPp6fhmeuqe5U947WqojDsVMhWAsCE6rIg8grBv9BA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Security.Permissions", "id": "System.Security.Permissions", "version": "7.0.0", "sha512": "sha512-XNVTmQ9JuCRwRXRTDoOHEzEt0wmQeRudH9lThP0l3OBja4P3jmRHq/0H0N9Ns1OD6gNmKpjLdOeHCQEXv4iVrA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": ["System.Windows.Extensions"], "net7.0": ["System.Windows.Extensions"], "net8.0": ["System.Windows.Extensions"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Security.Principal", "id": "System.Security.Principal", "version": "4.3.0", "sha512": "sha512-24oe0NGJY32e+DFHVQzl2okM9uwYmn0Aa6nehqtVZ55/Al4Yva7S3BN934Kn5qATH7TVTUJkgxhisdfF7mKDfg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["System.Runtime"], "net6.0": ["System.Runtime"], "net7.0": ["System.Runtime"], "net8.0": ["System.Runtime"], "netcoreapp1.0": ["System.Runtime"], "netcoreapp1.1": ["System.Runtime"], "netcoreapp2.0": ["System.Runtime"], "netcoreapp2.1": ["System.Runtime"], "netcoreapp2.2": ["System.Runtime"], "netcoreapp3.0": ["System.Runtime"], "netcoreapp3.1": ["System.Runtime"], "netstandard": [], "netstandard1.0": ["System.Runtime"], "netstandard1.1": ["System.Runtime"], "netstandard1.2": ["System.Runtime"], "netstandard1.3": ["System.Runtime"], "netstandard1.4": ["System.Runtime"], "netstandard1.5": ["System.Runtime"], "netstandard1.6": ["System.Runtime"], "netstandard2.0": ["System.Runtime"], "netstandard2.1": ["System.Runtime"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Security.Principal.Windows", "id": "System.Security.Principal.Windows", "version": "5.0.0", "sha512": "sha512-RKkgqq8ishctQTGbtXqyuOGkUx1fAhkqb1OoHYdRJRlbYLoLWkSkWYHRN/17DzplsSlZtf2Xr8BXjNhO8nRnzQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": ["Microsoft.Win32.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Security.Principal", "System.Text.Encoding"], "netcoreapp1.1": ["Microsoft.Win32.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Security.Principal", "System.Text.Encoding"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms"], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": ["Microsoft.Win32.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Security.Principal", "System.Text.Encoding"], "netstandard1.4": ["Microsoft.Win32.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Security.Principal", "System.Text.Encoding"], "netstandard1.5": ["Microsoft.Win32.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Security.Principal", "System.Text.Encoding"], "netstandard1.6": ["Microsoft.Win32.Primitives", "System.Runtime", "System.Runtime.Handles", "System.Security.Principal", "System.Text.Encoding"], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Text.Encoding", "id": "System.Text.Encoding", "version": "4.3.0", "sha512": "sha512-b/f+7HMTpxIfeV7H03bkuHKMFylCGfr9/U6gePnfFFW0aF8LOWLDgQCY6V1oWUqDksC3mdNuyChM1vy9TP4sZw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net6.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net7.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net8.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp3.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp3.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard": [], "netstandard1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.3": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.4": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.5": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.6": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Threading.Channels", "id": "System.Threading.Channels", "version": "7.0.0", "sha512": "sha512-XXmpdJbyVCagWg3bGfUGNTxKp4EK/3C4Bt8pXhKVYZKwHPjeHPOg0u2wdqHFsojU4u4i9KByAJTyzqLCMqwpUg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Threading.Tasks", "id": "System.Threading.Tasks", "version": "4.3.0", "sha512": "sha512-fUiP+CyyCjs872OA8trl6p97qma/da1xGq3h4zAbJZk8zyaU4zyEfqW5vbkP80xG/Nimun1vlWBboMEk7XxdEw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net6.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net7.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "net8.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp2.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp3.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netcoreapp3.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard": [], "netstandard1.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.2": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.3": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.4": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.5": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard1.6": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard2.0": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"], "netstandard2.1": ["Microsoft.NETCore.Platforms", "Microsoft.NETCore.Targets", "System.Runtime"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Threading.Tasks.Dataflow", "id": "System.Threading.Tasks.Dataflow", "version": "7.0.0", "sha512": "sha512-nB6cUBEEimO35tPK+KmhUF8jxxisO1E+8KU3eDIA9/o156qulMs8YeozOTcVRYHZWvgn1YCDI/ZR2ga9ErXIfg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Threading.ThreadPool", "id": "System.Threading.ThreadPool", "version": "4.3.0", "sha512": "sha512-RQpA+UpI6Tlpeedk5JStYk2DM/M3i5HqabI/yDbfj1xDu9bIz9kdoquVpHbh/wQjOJaOCbcgRH8iQcAUv8dRWQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": ["System.Runtime", "System.Runtime.Handles"], "net6.0": ["System.Runtime", "System.Runtime.Handles"], "net7.0": ["System.Runtime", "System.Runtime.Handles"], "net8.0": ["System.Runtime", "System.Runtime.Handles"], "netcoreapp1.0": ["System.Runtime", "System.Runtime.Handles"], "netcoreapp1.1": ["System.Runtime", "System.Runtime.Handles"], "netcoreapp2.0": ["System.Runtime", "System.Runtime.Handles"], "netcoreapp2.1": ["System.Runtime", "System.Runtime.Handles"], "netcoreapp2.2": ["System.Runtime", "System.Runtime.Handles"], "netcoreapp3.0": ["System.Runtime", "System.Runtime.Handles"], "netcoreapp3.1": ["System.Runtime", "System.Runtime.Handles"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": ["System.Runtime", "System.Runtime.Handles"], "netstandard1.4": ["System.Runtime", "System.Runtime.Handles"], "netstandard1.5": ["System.Runtime", "System.Runtime.Handles"], "netstandard1.6": ["System.Runtime", "System.Runtime.Handles"], "netstandard2.0": ["System.Runtime", "System.Runtime.Handles"], "netstandard2.1": ["System.Runtime", "System.Runtime.Handles"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "System.Windows.Extensions", "id": "System.Windows.Extensions", "version": "7.0.0", "sha512": "sha512-KNnH0GX7T/oRAzOtJjefboYngi+d/bNGd63j+ZIFFTIR8RM0dwptuImNXiKqvD78kzcWAf3kd3yjcih+UTYkbw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": ["System.Drawing.Common"], "net7.0": ["System.Drawing.Common"], "net8.0": ["System.Drawing.Common"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit", "id": "xunit", "version": "2.8.0", "sha512": "sha512-pY+3288LqTgGilRPOuWdTdTAQ3URBTqlo4WJp1FwM10/x7GriewCV/wxL7NrTH4DRUVjoKY6HdcpFSdtQmirLQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net20": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net30": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net35": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net40": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net403": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net45": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net451": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net452": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net46": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net461": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net462": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net47": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net471": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net472": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net48": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net5.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net6.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net7.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "net8.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netcoreapp1.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netcoreapp1.1": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netcoreapp2.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netcoreapp2.1": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netcoreapp2.2": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netcoreapp3.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netcoreapp3.1": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard1.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard1.1": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard1.2": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard1.3": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard1.4": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard1.5": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard1.6": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard2.0": ["xunit.core", "xunit.assert", "xunit.analyzers"], "netstandard2.1": ["xunit.core", "xunit.assert", "xunit.analyzers"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit.abstractions", "id": "xunit.abstractions", "version": "2.0.3", "sha512": "sha512-PKJri5f0qEQPFvgY6CZR9XG8JROlWSdC/ZYLkkDQuID++Egn+yWjB+Yf57AZ8U6GRlP7z33uDQ4/r5BZPer2JA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit.analyzers", "id": "xunit.analyzers", "version": "1.13.0", "sha512": "sha512-GJ4gtp1hp3hpIWrK+PJ0AOG9t2WW7K2l1hlvklevMTAeZ9tKqzUGwaixZ6G/HLHWAcZo7Wy1r45Fu0v9Dwd4tA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit.assert", "id": "xunit.assert", "version": "2.8.0", "sha512": "sha512-S5571ILGuO1wZAraKjnkXyWacxwJr+9NftDNopugypT2r3UhJJVz/10WD7Xx+dDsvRS3ucd1VMI92cBIfSRjjg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit.core", "id": "xunit.core", "version": "2.8.0", "sha512": "sha512-/Ns+N8X8pffZm91IJhB1MbzStjLo8+aKnu3kzF+IlOHq850+MYG+NI23XEV4AH5Cc3pqHD4tp7wbB/s4bY7PGg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net20": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net30": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net35": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net40": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net403": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net45": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net451": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net452": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net46": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net461": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net462": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net47": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net471": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net472": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net48": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net5.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net6.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net7.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "net8.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netcoreapp1.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netcoreapp1.1": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netcoreapp2.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netcoreapp2.1": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netcoreapp2.2": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netcoreapp3.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netcoreapp3.1": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard1.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard1.1": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard1.2": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard1.3": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard1.4": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard1.5": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard1.6": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard2.0": ["xunit.extensibility.core", "xunit.extensibility.execution"], "netstandard2.1": ["xunit.extensibility.core", "xunit.extensibility.execution"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit.extensibility.core", "id": "xunit.extensibility.core", "version": "2.8.0", "sha512": "sha512-Otlt6joZ9a7QpiAB5SNRb0sd0DMndpH6ktuAVj65hz80xjoQdhdMNO51qWIdk98Ri+fiUS3EBmuSzbv0Dkws5w==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": ["xunit.abstractions"], "net451": ["xunit.abstractions"], "net452": ["xunit.abstractions"], "net46": ["xunit.abstractions"], "net461": ["xunit.abstractions"], "net462": ["xunit.abstractions"], "net47": ["xunit.abstractions"], "net471": ["xunit.abstractions"], "net472": ["xunit.abstractions"], "net48": ["xunit.abstractions"], "net5.0": ["xunit.abstractions"], "net6.0": ["xunit.abstractions"], "net7.0": ["xunit.abstractions"], "net8.0": ["xunit.abstractions"], "netcoreapp1.0": ["xunit.abstractions"], "netcoreapp1.1": ["xunit.abstractions"], "netcoreapp2.0": ["xunit.abstractions"], "netcoreapp2.1": ["xunit.abstractions"], "netcoreapp2.2": ["xunit.abstractions"], "netcoreapp3.0": ["xunit.abstractions"], "netcoreapp3.1": ["xunit.abstractions"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": ["xunit.abstractions"], "netstandard1.2": ["xunit.abstractions"], "netstandard1.3": ["xunit.abstractions"], "netstandard1.4": ["xunit.abstractions"], "netstandard1.5": ["xunit.abstractions"], "netstandard1.6": ["xunit.abstractions"], "netstandard2.0": ["xunit.abstractions"], "netstandard2.1": ["xunit.abstractions"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit.extensibility.execution", "id": "xunit.extensibility.execution", "version": "2.8.0", "sha512": "sha512-YZn5YCt3ohLPpsz/eoG92pSmt01RJpVD509eRwtt2Bz9iYvgTNIqxu2WJUKhBiMGTZ2nU+IFl6WQG2OiJ639gA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": ["xunit.extensibility.core"], "net451": ["xunit.extensibility.core"], "net452": ["xunit.extensibility.core"], "net46": ["xunit.extensibility.core"], "net461": ["xunit.extensibility.core"], "net462": ["xunit.extensibility.core"], "net47": ["xunit.extensibility.core"], "net471": ["xunit.extensibility.core"], "net472": ["xunit.extensibility.core"], "net48": ["xunit.extensibility.core"], "net5.0": ["xunit.extensibility.core"], "net6.0": ["xunit.extensibility.core"], "net7.0": ["xunit.extensibility.core"], "net8.0": ["xunit.extensibility.core"], "netcoreapp1.0": ["xunit.extensibility.core"], "netcoreapp1.1": ["xunit.extensibility.core"], "netcoreapp2.0": ["xunit.extensibility.core"], "netcoreapp2.1": ["xunit.extensibility.core"], "netcoreapp2.2": ["xunit.extensibility.core"], "netcoreapp3.0": ["xunit.extensibility.core"], "netcoreapp3.1": ["xunit.extensibility.core"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": ["xunit.extensibility.core"], "netstandard1.2": ["xunit.extensibility.core"], "netstandard1.3": ["xunit.extensibility.core"], "netstandard1.4": ["xunit.extensibility.core"], "netstandard1.5": ["xunit.extensibility.core"], "netstandard1.6": ["xunit.extensibility.core"], "netstandard2.0": ["xunit.extensibility.core"], "netstandard2.1": ["xunit.extensibility.core"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit.runner.utility", "id": "xunit.runner.utility", "version": "2.8.0", "sha512": "sha512-YJ9UEsY0NUxeYfB01AO4uJgSSelInfROv4oAsTn7z0GD6kly3HzPQC+B/JDbWUVCRJ1xIRoaYPisMvVYQBIyxA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": ["xunit.abstractions"], "net40": ["xunit.abstractions"], "net403": ["xunit.abstractions"], "net45": ["xunit.abstractions"], "net451": ["xunit.abstractions"], "net452": ["xunit.abstractions"], "net46": ["xunit.abstractions"], "net461": ["xunit.abstractions"], "net462": ["xunit.abstractions"], "net47": ["xunit.abstractions"], "net471": ["xunit.abstractions"], "net472": ["xunit.abstractions"], "net48": ["xunit.abstractions"], "net5.0": ["xunit.abstractions"], "net6.0": ["xunit.abstractions"], "net7.0": ["xunit.abstractions"], "net8.0": ["xunit.abstractions"], "netcoreapp1.0": ["xunit.abstractions"], "netcoreapp1.1": ["xunit.abstractions"], "netcoreapp2.0": ["xunit.abstractions"], "netcoreapp2.1": ["xunit.abstractions"], "netcoreapp2.2": ["xunit.abstractions"], "netcoreapp3.0": ["xunit.abstractions"], "netcoreapp3.1": ["xunit.abstractions"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": ["xunit.abstractions"], "netstandard1.2": ["xunit.abstractions"], "netstandard1.3": ["xunit.abstractions"], "netstandard1.4": ["xunit.abstractions"], "netstandard1.5": ["xunit.abstractions"], "netstandard1.6": ["xunit.abstractions"], "netstandard2.0": ["xunit.abstractions"], "netstandard2.1": ["xunit.abstractions"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "xunit.runner.visualstudio", "id": "xunit.runner.visualstudio", "version": "2.8.0", "sha512": "sha512-hEFlhPQ0BVrJkWHtGpKOqtqAvTk1FCPAIS5Z0zs+CMjNAgugpBuuddEa5gB4CzRDjGzms2UjvgzkgbnQXozFpw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": ["Microsoft.TestPlatform.ObjectModel"], "net47": ["Microsoft.TestPlatform.ObjectModel"], "net471": ["Microsoft.TestPlatform.ObjectModel"], "net472": ["Microsoft.TestPlatform.ObjectModel"], "net48": ["Microsoft.TestPlatform.ObjectModel"], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, + ], + ) diff --git a/csharp/paket.main_extension.bzl b/csharp/paket.main_extension.bzl new file mode 100644 index 00000000000..6d356fb47cd --- /dev/null +++ b/csharp/paket.main_extension.bzl @@ -0,0 +1,10 @@ +"Generated" + +load(":paket.main.bzl", _main = "main") + +def _main_impl(_ctx): + _main() + +main_extension = module_extension( + implementation = _main_impl, +) diff --git a/csharp/ql/integration-tests/posix-only/standalone_dependencies_executing_runtime/Assemblies.expected b/csharp/ql/integration-tests/posix-only/standalone_dependencies_executing_runtime/Assemblies.expected index 772f640789e..26e38291aa1 100644 --- a/csharp/ql/integration-tests/posix-only/standalone_dependencies_executing_runtime/Assemblies.expected +++ b/csharp/ql/integration-tests/posix-only/standalone_dependencies_executing_runtime/Assemblies.expected @@ -193,9 +193,3 @@ | [...]/WindowsBase.dll | | [...]/mscorlib.dll | | [...]/netstandard.dll | -| [...]/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll | -| [...]/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll | -| [...]/zh-Hant/Microsoft.CodeAnalysis.VisualBasic.Workspaces.resources.dll | -| [...]/zh-Hant/Microsoft.CodeAnalysis.VisualBasic.resources.dll | -| [...]/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll | -| [...]/zh-Hant/Microsoft.CodeAnalysis.resources.dll | diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll index 4ff4722cfcc..3548a975338 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowDispatch.qll @@ -24,19 +24,6 @@ newtype TReturnKind = TOutReturnKind(int i) { i = any(Parameter p | p.isOut()).getPosition() } or TRefReturnKind(int i) { i = any(Parameter p | p.isRef()).getPosition() } -/** - * A summarized callable where the summary should be used for dataflow analysis. - */ -class DataFlowSummarizedCallable instanceof FlowSummary::SummarizedCallable { - DataFlowSummarizedCallable() { - not this.hasBody() - or - this.hasBody() and not this.applyGeneratedModel() - } - - string toString() { result = super.toString() } -} - cached private module Cached { /** @@ -47,7 +34,7 @@ private module Cached { cached newtype TDataFlowCallable = TCallable(Callable c) { c.isUnboundDeclaration() } or - TSummarizedCallable(DataFlowSummarizedCallable sc) or + TSummarizedCallable(FlowSummary::SummarizedCallable sc) or TFieldOrPropertyCallable(FieldOrProperty f) or TCapturedVariableCallable(LocalScopeVariable v) { v.isCaptured() } diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll index 8c25ac5b186..487737e1f72 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowPrivate.qll @@ -1181,8 +1181,7 @@ private module Cached { or // Simple flow through library code is included in the exposed local // step relation, even though flow is technically inter-procedural - FlowSummaryImpl::Private::Steps::summaryThroughStepValue(nodeFrom, nodeTo, - any(DataFlowSummarizedCallable sc)) + FlowSummaryImpl::Private::Steps::summaryThroughStepValue(nodeFrom, nodeTo, _) } cached diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll index 79e39aa7df1..12702ad65af 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/ExternalFlow.qll @@ -554,7 +554,13 @@ private predicate interpretNeutral(UnboundCallable c, string kind, string proven // adapter class for converting Mad summaries to `SummarizedCallable`s private class SummarizedCallableAdapter extends SummarizedCallable { - SummarizedCallableAdapter() { interpretSummary(this, _, _, _, _, _) } + SummarizedCallableAdapter() { + exists(Provenance provenance | interpretSummary(this, _, _, _, provenance, _) | + not this.hasBody() + or + this.hasBody() and provenance.isManual() + ) + } private predicate relevantSummaryElementManual( string input, string output, string kind, string model diff --git a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/TaintTrackingPrivate.qll b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/TaintTrackingPrivate.qll index 714be21b911..11c47c1d37e 100644 --- a/csharp/ql/lib/semmle/code/csharp/dataflow/internal/TaintTrackingPrivate.qll +++ b/csharp/ql/lib/semmle/code/csharp/dataflow/internal/TaintTrackingPrivate.qll @@ -119,22 +119,19 @@ private module Cached { ( // Simple flow through library code is included in the exposed local // step relation, even though flow is technically inter-procedural - FlowSummaryImpl::Private::Steps::summaryThroughStepTaint(nodeFrom, nodeTo, - any(DataFlowSummarizedCallable sc)) + FlowSummaryImpl::Private::Steps::summaryThroughStepTaint(nodeFrom, nodeTo, _) or // Taint collection by adding a tainted element exists(DataFlow::ElementContent c | storeStep(nodeFrom, c, nodeTo) or - FlowSummaryImpl::Private::Steps::summarySetterStep(nodeFrom, c, nodeTo, - any(DataFlowSummarizedCallable sc)) + FlowSummaryImpl::Private::Steps::summarySetterStep(nodeFrom, c, nodeTo, _) ) or exists(DataFlow::Content c | readStep(nodeFrom, c, nodeTo) or - FlowSummaryImpl::Private::Steps::summaryGetterStep(nodeFrom, c, nodeTo, - any(DataFlowSummarizedCallable sc)) + FlowSummaryImpl::Private::Steps::summaryGetterStep(nodeFrom, c, nodeTo, _) | // Taint members c = any(TaintedMember m).(FieldOrProperty).getContent() diff --git a/csharp/ql/src/Language Abuse/ForeachCapture.ql b/csharp/ql/src/Language Abuse/ForeachCapture.ql index 86bf643c534..0148796a2e7 100644 --- a/csharp/ql/src/Language Abuse/ForeachCapture.ql +++ b/csharp/ql/src/Language Abuse/ForeachCapture.ql @@ -77,8 +77,7 @@ Element getAssignmentTarget(Expr e) { Element getCollectionAssignmentTarget(Expr e) { // Store into collection via method exists(DataFlowPrivate::PostUpdateNode postNode | - FlowSummaryImpl::Private::Steps::summarySetterStep(DataFlow::exprNode(e), _, postNode, - any(DataFlowDispatch::DataFlowSummarizedCallable sc)) and + FlowSummaryImpl::Private::Steps::summarySetterStep(DataFlow::exprNode(e), _, postNode, _) and result.(Variable).getAnAccess() = postNode.getPreUpdateNode().asExpr() ) or diff --git a/csharp/ql/test/library-tests/dataflow/external-models/steps.ql b/csharp/ql/test/library-tests/dataflow/external-models/steps.ql index 59d5c02258f..120ea8300c4 100644 --- a/csharp/ql/test/library-tests/dataflow/external-models/steps.ql +++ b/csharp/ql/test/library-tests/dataflow/external-models/steps.ql @@ -25,21 +25,17 @@ private class StepArgQualGenerated extends Method { query predicate summaryThroughStep( DataFlow::Node node1, DataFlow::Node node2, boolean preservesValue ) { - FlowSummaryImpl::Private::Steps::summaryThroughStepValue(node1, node2, - any(DataFlowDispatch::DataFlowSummarizedCallable sc)) and + FlowSummaryImpl::Private::Steps::summaryThroughStepValue(node1, node2, _) and preservesValue = true or - FlowSummaryImpl::Private::Steps::summaryThroughStepTaint(node1, node2, - any(DataFlowDispatch::DataFlowSummarizedCallable sc)) and + FlowSummaryImpl::Private::Steps::summaryThroughStepTaint(node1, node2, _) and preservesValue = false } query predicate summaryGetterStep(DataFlow::Node arg, DataFlow::Node out, Content c) { - FlowSummaryImpl::Private::Steps::summaryGetterStep(arg, c, out, - any(DataFlowDispatch::DataFlowSummarizedCallable sc)) + FlowSummaryImpl::Private::Steps::summaryGetterStep(arg, c, out, _) } query predicate summarySetterStep(DataFlow::Node arg, DataFlow::Node out, Content c) { - FlowSummaryImpl::Private::Steps::summarySetterStep(arg, c, out, - any(DataFlowDispatch::DataFlowSummarizedCallable sc)) + FlowSummaryImpl::Private::Steps::summarySetterStep(arg, c, out, _) } diff --git a/csharp/scripts/BUILD.bazel b/csharp/scripts/BUILD.bazel new file mode 100644 index 00000000000..88a33a0afd3 --- /dev/null +++ b/csharp/scripts/BUILD.bazel @@ -0,0 +1,17 @@ +py_binary( + name = "gen-assembly-info", + srcs = ["gen-assembly-info.py"], + deps = ["@rules_python//python/runfiles"], +) + +# this is an instance of the dbscheme kept in the bazel build tree +# this allows everything that bazel builds to be up-to-date, +# independently from whether //go:gen was already run to update the checked in files +genrule( + name = "assembly-info-src", + srcs = ["@semmle_code//:git_info"], + outs = ["AssemblyInfo.cs"], + cmd = "$(execpath :gen-assembly-info) $@ $(SRCS)", + tools = [":gen-assembly-info"], + visibility = ["//csharp:__subpackages__"], +) diff --git a/csharp/scripts/gen-assembly-info.py b/csharp/scripts/gen-assembly-info.py new file mode 100644 index 00000000000..1ea5a9ea3c4 --- /dev/null +++ b/csharp/scripts/gen-assembly-info.py @@ -0,0 +1,34 @@ +""" +Generates an `AssemblyInfo.cs` file that specifies the `AssemblyInformationalVersion` attribute. + +This attribute is set to the git version string of the repository.""" + +import pathlib +import argparse + + +def options(): + p = argparse.ArgumentParser( + description="Generate the assembly info file that contains the git SHA and branch name" + ) + p.add_argument("output", help="The path to the output file") + p.add_argument("gitinfo_files", nargs="+", help="The path to the gitinfo files") + return p.parse_args() + + +opts = options() + +gitfiles = dict() +for file in map(pathlib.Path, opts.gitinfo_files): + gitfiles[file.name] = file + +version_string = gitfiles["git-ql-describe-all.log"].read_text().strip() +version_string += f" ({gitfiles['git-ql-rev-parse.log'].read_text().strip()})" + +output_file = pathlib.Path(opts.output) +output_file_contents = f""" +using System.Reflection; + +[assembly: AssemblyInformationalVersion("{version_string}")] +""" +output_file.write_text(output_file_contents) diff --git a/csharp/tools/BUILD.bazel b/csharp/tools/BUILD.bazel new file mode 100644 index 00000000000..cad9d7793f0 --- /dev/null +++ b/csharp/tools/BUILD.bazel @@ -0,0 +1,11 @@ +load("@semmle_code//:dist.bzl", "pack_zip") + +pack_zip( + name = "tools", + srcs = glob(["**/*"]), + excludes = [ + "BUILD.bazel", + ], + prefix = "tools", + visibility = ["//csharp:__pkg__"], +) diff --git a/csharp/update-deps.sh b/csharp/update-deps.sh new file mode 100755 index 00000000000..eafd8b46370 --- /dev/null +++ b/csharp/update-deps.sh @@ -0,0 +1,16 @@ +#! /usr/bin/env bash + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +MODE=${1:-install} +if [ "$MODE" != "install" ] && [ "$MODE" != "update" ]; then + echo "Invalid mode: $MODE. Valid modes are 'install' and 'update'" + exit 1 +fi + +( + cd "$SCRIPT_DIR" || exit 1 + DEP_DIR="$(pwd)" + (dotnet tool restore && dotnet paket $MODE) || exit 1 + cd ../.. + tools/bazel run @rules_dotnet//tools/paket2bazel -- --dependencies-file "$DEP_DIR"/paket.dependencies --output-folder "$DEP_DIR" +) diff --git a/misc/bazel/csharp.bzl b/misc/bazel/csharp.bzl new file mode 100644 index 00000000000..299febf5308 --- /dev/null +++ b/misc/bazel/csharp.bzl @@ -0,0 +1,69 @@ +load("@rules_dotnet//dotnet:defs.bzl", "csharp_binary", "csharp_library", "csharp_test", "publish_binary") +load("@rules_pkg//pkg:mappings.bzl", "strip_prefix") +load("@semmle_code//:dist.bzl", "pack_zip") +load("//:defs.bzl", "codeql_platform") + +TARGET_FRAMEWORK = "net8.0" + +def codeql_csharp_library(name, **kwargs): + kwargs.setdefault("nullable", "enable") + kwargs.setdefault("target_frameworks", [TARGET_FRAMEWORK]) + csharp_library(name = name, **kwargs) + +def codeql_xunit_test(name, **kwargs): + kwargs.setdefault("nullable", "enable") + kwargs.setdefault("target_frameworks", [TARGET_FRAMEWORK]) + + srcs = kwargs.pop("srcs", []) + [ + "//csharp/extractor/Testrunner:Testrunner.cs", + ] + + deps = kwargs.pop("deps", []) + [ + "@paket.main//xunit", + "@paket.main//xunit.runner.utility", + ] + + tags = kwargs.pop("tags", []) + ["csharp"] + + csharp_test( + name = name, + deps = deps, + srcs = srcs, + tags = tags, + **kwargs + ) + +def codeql_csharp_binary(name, language_prefix = "csharp", **kwargs): + kwargs.setdefault("nullable", "enable") + kwargs.setdefault("target_frameworks", [TARGET_FRAMEWORK]) + + visibility = kwargs.pop("visibility", ["//visibility:public"]) + resources = kwargs.pop("resources", []) + srcs = kwargs.pop("srcs", []) + + # always add the assembly info file that sets the AssemblyInformationalVersion attribute to the extractor version + srcs.append("//csharp/scripts:assembly-info-src") + + csharp_binary_target = "bin/" + name + publish_binary_target = "publish/" + name + csharp_binary(name = csharp_binary_target, srcs = srcs, resources = resources, visibility = visibility, **kwargs) + publish_binary( + name = publish_binary_target, + binary = csharp_binary_target, + self_contained = True, + target_framework = TARGET_FRAMEWORK, + runtime_identifier = select( + { + "@platforms//os:macos": "osx-x64", # always force intel on macos for now, until we build universal binaries + "//conditions:default": "", + }, + ), + ) + + pack_zip( + name = name, + srcs = [publish_binary_target], + prefix = language_prefix + "/tools/" + codeql_platform, + strip_prefix = strip_prefix.files_only(), + visibility = visibility, + ) diff --git a/misc/bazel/pkg.bzl b/misc/bazel/pkg.bzl index cff037a5585..71a6d35c194 100644 --- a/misc/bazel/pkg.bzl +++ b/misc/bazel/pkg.bzl @@ -311,3 +311,39 @@ def codeql_pkg_runfiles(*, name, exes, **kwargs): exes = [internal("runfiles")], **kwargs ) + +def _pkg_overlay_impl(ctx): + destinations = {} + files = [] + depsets = [] + + for src in reversed(ctx.attr.srcs): + pfi = src[PackageFilesInfo] + dest_src_map = {k: v for k, v in pfi.dest_src_map.items() if k not in destinations} + destinations.update({k: True for k in dest_src_map}) + if dest_src_map: + new_pfi = PackageFilesInfo( + dest_src_map = dest_src_map, + attributes = pfi.attributes, + ) + files.append((new_pfi, src.label)) + depsets.append(depset(dest_src_map.values())) + return [ + PackageFilegroupInfo( + pkg_files = reversed(files), + pkg_dirs = [], + pkg_symlinks = [], + ), + DefaultInfo( + files = depset(transitive = reversed(depsets)), + ), + ] + +codeql_pkg_files_overlay = rule( + implementation = _pkg_overlay_impl, + doc = "Combine `pkg_files` targets so that later targets overwrite earlier ones without warnings", + attrs = { + # this could be updated to handle PackageFilegroupInfo as well if we ever need it + "srcs": attr.label_list(providers = [PackageFilesInfo, DefaultInfo]), + }, +) diff --git a/python/extractor/tsg-python/Cargo.Bazel.lock b/python/extractor/tsg-python/Cargo.Bazel.lock index e3b5a249e4f..1208fe8f970 100644 --- a/python/extractor/tsg-python/Cargo.Bazel.lock +++ b/python/extractor/tsg-python/Cargo.Bazel.lock @@ -1,5 +1,5 @@ { - "checksum": "35a1ce4b6c4f997c496c11d3a8fcfaadc5833dfd41bebb022941687d73dde159", + "checksum": "14572337bc5747880ff328af42451cce3549f743dc79eac7314f3b3f55b74d25", "crates": { "ahash 0.4.7": { "name": "ahash", @@ -1755,7 +1755,7 @@ ], "selects": {} }, - "edition": "2018", + "edition": "2021", "version": "0.1.0" }, "license": null, @@ -1986,7 +1986,6 @@ "crate_features": { "common": [ "consoleapi", - "errhandlingapi", "minwinbase", "minwindef", "processenv", diff --git a/python/extractor/tsg-python/Cargo.toml b/python/extractor/tsg-python/Cargo.toml index 1266f94f2b2..cca6c991566 100644 --- a/python/extractor/tsg-python/Cargo.toml +++ b/python/extractor/tsg-python/Cargo.toml @@ -4,7 +4,7 @@ name = "tsg-python" version = "0.1.0" authors = ["Taus Brock-Nannestad "] -edition = "2018" +edition = "2021" # When changing/updating these, the `Cargo.Bazel.lock` file has to be regenerated. # Run `CARGO_BAZEL_REPIN=true CARGO_BAZEL_REPIN_ONLY=py_deps ./tools/bazel sync --only=py_deps` diff --git a/python/extractor/tsg-python/rust-toolchain.toml b/python/extractor/tsg-python/rust-toolchain.toml index fe5c5df29ff..5e0bcd3a476 100644 --- a/python/extractor/tsg-python/rust-toolchain.toml +++ b/python/extractor/tsg-python/rust-toolchain.toml @@ -2,6 +2,6 @@ # extractor. It is set to the lowest version of Rust we want to support. [toolchain] -channel = "1.68" +channel = "1.74" profile = "minimal" components = [ "rustfmt" ] diff --git a/ql/Cargo.lock b/ql/Cargo.lock index 493174ac822..ed04a4a8553 100644 Binary files a/ql/Cargo.lock and b/ql/Cargo.lock differ diff --git a/ql/extractor/src/extractor.rs b/ql/extractor/src/extractor.rs index 5fa2c99ae83..487f1de08a8 100644 --- a/ql/extractor/src/extractor.rs +++ b/ql/extractor/src/extractor.rs @@ -20,12 +20,7 @@ pub struct Options { } pub fn run(options: Options) -> std::io::Result<()> { - tracing_subscriber::fmt() - .with_target(false) - .without_time() - .with_level(true) - .with_env_filter(tracing_subscriber::EnvFilter::from_default_env()) - .init(); + codeql_extractor::extractor::set_tracing_level("ql"); let extractor = simple::Extractor { prefix: "ql".to_string(), diff --git a/ql/extractor/src/generator.rs b/ql/extractor/src/generator.rs index ce5fcf1b12c..1dca6969f34 100644 --- a/ql/extractor/src/generator.rs +++ b/ql/extractor/src/generator.rs @@ -15,12 +15,7 @@ pub struct Options { } pub fn run(options: Options) -> std::io::Result<()> { - tracing_subscriber::fmt() - .with_target(false) - .without_time() - .with_level(true) - .with_env_filter(tracing_subscriber::EnvFilter::from_default_env()) - .init(); + codeql_extractor::extractor::set_tracing_level("ql"); let languages = vec![ Language { diff --git a/ql/rust-toolchain.toml b/ql/rust-toolchain.toml index 57d004b953c..699a593039b 100644 --- a/ql/rust-toolchain.toml +++ b/ql/rust-toolchain.toml @@ -2,6 +2,6 @@ # extractor. It is set to the lowest version of Rust we want to support. [toolchain] -channel = "1.70" +channel = "1.74" profile = "minimal" components = [ "rustfmt" ] \ No newline at end of file diff --git a/ruby/actions/create-extractor-pack/action.yml b/ruby/actions/create-extractor-pack/action.yml index 84f67b812af..bd9485bb578 100644 --- a/ruby/actions/create-extractor-pack/action.yml +++ b/ruby/actions/create-extractor-pack/action.yml @@ -7,12 +7,12 @@ runs: id: os_version - name: Cache entire extractor id: cache-extractor - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ruby/extractor-pack key: ${{ runner.os }}-${{ steps.os_version.outputs.version }}-extractor-${{ hashFiles('ruby/extractor/rust-toolchain.toml', 'ruby/scripts/create-extractor-pack.sh', 'ruby/extractor/**/Cargo.lock', 'ruby/actions/create-extractor-pack/action.yml') }}-${{ hashFiles('shared/tree-sitter-extractor') }}-${{ hashFiles('ruby/extractor/**/*.rs') }}-${{ hashFiles('ruby/codeql-extractor.yml', 'ruby/downgrades', 'ruby/tools', 'ruby/ql/lib/ruby.dbscheme', 'ruby/ql/lib/ruby.dbscheme.stats') }} - name: Cache cargo - uses: actions/cache@v3 + uses: actions/cache@v4 if: steps.cache-extractor.outputs.cache-hit != 'true' with: path: | @@ -24,6 +24,5 @@ runs: if: steps.cache-extractor.outputs.cache-hit != 'true' shell: bash run: | - cargo install cross --version 0.2.5 scripts/create-extractor-pack.sh working-directory: ruby diff --git a/ruby/extractor/.cargo/config.toml b/ruby/extractor/.cargo/config.toml new file mode 100644 index 00000000000..3e8c45cb78b --- /dev/null +++ b/ruby/extractor/.cargo/config.toml @@ -0,0 +1 @@ +paths = ["../../shared/tree-sitter-extractor"] diff --git a/ruby/extractor/BUILD.bazel b/ruby/extractor/BUILD.bazel index e859884085d..3ed9a0233ac 100644 --- a/ruby/extractor/BUILD.bazel +++ b/ruby/extractor/BUILD.bazel @@ -11,5 +11,7 @@ codeql_rust_binary( visibility = ["//visibility:public"], deps = all_crate_deps( normal = True, - ), + ) + [ + "//shared/tree-sitter-extractor:codeql-extractor", + ], ) diff --git a/ruby/extractor/Cargo.lock b/ruby/extractor/Cargo.lock index 589d5f847eb..95ed06c3ca8 100644 Binary files a/ruby/extractor/Cargo.lock and b/ruby/extractor/Cargo.lock differ diff --git a/ruby/extractor/Cargo.toml b/ruby/extractor/Cargo.toml index 453d34302cb..87e0a7f7af0 100644 --- a/ruby/extractor/Cargo.toml +++ b/ruby/extractor/Cargo.toml @@ -1,3 +1,4 @@ +[workspace] [package] name = "codeql-extractor-ruby" description = "CodeQL Ruby extractor" @@ -27,14 +28,8 @@ encoding = "0.2" lazy_static = "1.4.0" # Ideally, we'd like to pull this in via a relative path. # However, our bazel/rust tooling chokes on this, c.f. https://github.com/bazelbuild/rules_rust/issues/1525 -# Therefore, to break that dependency, we depend on it via a git dependency instead. -# We should change this back to a path dependency once this issue is fixed. -# We can't depend on this without a rev/branch specification, as the rules_rust code assumes the default branch -# is called `master`, and if we pull this in with `branch=main`, then `cargo` works (and pins this at th current git SHA -# of lock-file update time, but `rules_rust` pins generates a bazel rule that unconditionally downloads `main`, which -# breaks build hermeticity. So, rev-pinning it is. -# See also https://github.com/bazelbuild/rules_rust/issues/2502. -codeql-extractor = { git = "https://github.com/github/codeql.git", rev = "bc1283c7152b0bb4d27ff6a004869f493e93d2b3" } +# Therefore, we have a pretty bad hack in place instead, see README.md in the codeql-extractor-fake-crate directory. +codeql-extractor = { path = "codeql-extractor-fake-crate" } [patch.crates-io] -tree-sitter = {git = "https://github.com/redsun82/tree-sitter.git", rev = "1f5c1112ceaa8fc6aff61d1852690407670d2a96"} +tree-sitter = { git = "https://github.com/redsun82/tree-sitter.git", rev = "1f5c1112ceaa8fc6aff61d1852690407670d2a96" } diff --git a/ruby/extractor/cargo-bazel-lock.json b/ruby/extractor/cargo-bazel-lock.json index b7f5f041632..9e4e4acf6b5 100644 --- a/ruby/extractor/cargo-bazel-lock.json +++ b/ruby/extractor/cargo-bazel-lock.json @@ -1,5 +1,5 @@ { - "checksum": "c50e77889b9291b968272c6e3a2953664e4ac18807c9546bac76d51fdc2e7d6b", + "checksum": "bf577b30a6fa1893707e2384a92d21f3d271344127cb80069a477cb5308a6c64", "crates": { "adler 1.0.2": { "name": "adler", @@ -38,14 +38,14 @@ ], "license_file": null }, - "aho-corasick 1.1.2": { + "aho-corasick 1.1.3": { "name": "aho-corasick", - "version": "1.1.2", + "version": "1.1.3", "package_url": "https://github.com/BurntSushi/aho-corasick", "repository": { "Http": { - "url": "https://static.crates.io/crates/aho-corasick/1.1.2/download", - "sha256": "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" + "url": "https://static.crates.io/crates/aho-corasick/1.1.3/download", + "sha256": "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" } }, "targets": [ @@ -75,14 +75,14 @@ "deps": { "common": [ { - "id": "memchr 2.7.1", + "id": "memchr 2.7.2", "target": "memchr" } ], "selects": {} }, "edition": "2021", - "version": "1.1.2" + "version": "1.1.3" }, "license": "Unlicense OR MIT", "license_ids": [ @@ -91,6 +91,42 @@ ], "license_file": null }, + "android-tzdata 0.1.1": { + "name": "android-tzdata", + "version": "0.1.1", + "package_url": "https://github.com/RumovZ/android-tzdata", + "repository": { + "Http": { + "url": "https://static.crates.io/crates/android-tzdata/0.1.1/download", + "sha256": "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + } + }, + "targets": [ + { + "Library": { + "crate_name": "android_tzdata", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "android_tzdata", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "edition": "2018", + "version": "0.1.1" + }, + "license": "MIT OR Apache-2.0", + "license_ids": [ + "Apache-2.0", + "MIT" + ], + "license_file": null + }, "android_system_properties 0.1.5": { "name": "android_system_properties", "version": "0.1.5", @@ -120,7 +156,7 @@ "deps": { "common": [ { - "id": "libc 0.2.141", + "id": "libc 0.2.155", "target": "libc" } ], @@ -136,14 +172,14 @@ ], "license_file": null }, - "anstream 0.2.6": { + "anstream 0.6.14": { "name": "anstream", - "version": "0.2.6", + "version": "0.6.14", "package_url": "https://github.com/rust-cli/anstyle.git", "repository": { "Http": { - "url": "https://static.crates.io/crates/anstream/0.2.6/download", - "sha256": "342258dd14006105c2b75ab1bd7543a03bdf0cfc94383303ac212a04939dff6f" + "url": "https://static.crates.io/crates/anstream/0.6.14/download", + "sha256": "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b" } }, "targets": [ @@ -173,24 +209,24 @@ "deps": { "common": [ { - "id": "anstyle 0.3.5", + "id": "anstyle 1.0.7", "target": "anstyle" }, { - "id": "anstyle-parse 0.1.1", + "id": "anstyle-parse 0.2.4", "target": "anstyle_parse" }, { - "id": "concolor-override 1.0.0", - "target": "concolor_override" + "id": "anstyle-query 1.0.3", + "target": "anstyle_query" }, { - "id": "concolor-query 0.3.3", - "target": "concolor_query" + "id": "colorchoice 1.0.1", + "target": "colorchoice" }, { - "id": "is-terminal 0.4.6", - "target": "is_terminal" + "id": "is_terminal_polyfill 1.70.0", + "target": "is_terminal_polyfill" }, { "id": "utf8parse 0.2.1", @@ -200,14 +236,14 @@ "selects": { "cfg(windows)": [ { - "id": "anstyle-wincon 0.2.0", + "id": "anstyle-wincon 3.0.3", "target": "anstyle_wincon" } ] } }, "edition": "2021", - "version": "0.2.6" + "version": "0.6.14" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -216,14 +252,14 @@ ], "license_file": null }, - "anstyle 0.3.5": { + "anstyle 1.0.7": { "name": "anstyle", - "version": "0.3.5", + "version": "1.0.7", "package_url": "https://github.com/rust-cli/anstyle.git", "repository": { "Http": { - "url": "https://static.crates.io/crates/anstyle/0.3.5/download", - "sha256": "23ea9e81bd02e310c216d080f6223c179012256e5151c41db88d12c88a1684d2" + "url": "https://static.crates.io/crates/anstyle/1.0.7/download", + "sha256": "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" } }, "targets": [ @@ -250,7 +286,7 @@ "selects": {} }, "edition": "2021", - "version": "0.3.5" + "version": "1.0.7" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -259,14 +295,14 @@ ], "license_file": null }, - "anstyle-parse 0.1.1": { + "anstyle-parse 0.2.4": { "name": "anstyle-parse", - "version": "0.1.1", + "version": "0.2.4", "package_url": "https://github.com/rust-cli/anstyle.git", "repository": { "Http": { - "url": "https://static.crates.io/crates/anstyle-parse/0.1.1/download", - "sha256": "a7d1bb534e9efed14f3e5f44e7dd1a4f709384023a4165199a4241e18dff0116" + "url": "https://static.crates.io/crates/anstyle-parse/0.2.4/download", + "sha256": "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4" } }, "targets": [ @@ -302,7 +338,7 @@ "selects": {} }, "edition": "2021", - "version": "0.1.1" + "version": "0.2.4" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -311,14 +347,61 @@ ], "license_file": null }, - "anstyle-wincon 0.2.0": { + "anstyle-query 1.0.3": { + "name": "anstyle-query", + "version": "1.0.3", + "package_url": "https://github.com/rust-cli/anstyle", + "repository": { + "Http": { + "url": "https://static.crates.io/crates/anstyle-query/1.0.3/download", + "sha256": "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5" + } + }, + "targets": [ + { + "Library": { + "crate_name": "anstyle_query", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "anstyle_query", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [], + "selects": { + "cfg(windows)": [ + { + "id": "windows-sys 0.52.0", + "target": "windows_sys" + } + ] + } + }, + "edition": "2021", + "version": "1.0.3" + }, + "license": "MIT OR Apache-2.0", + "license_ids": [ + "Apache-2.0", + "MIT" + ], + "license_file": null + }, + "anstyle-wincon 3.0.3": { "name": "anstyle-wincon", - "version": "0.2.0", + "version": "3.0.3", "package_url": "https://github.com/rust-cli/anstyle.git", "repository": { "Http": { - "url": "https://static.crates.io/crates/anstyle-wincon/0.2.0/download", - "sha256": "c3127af6145b149f3287bb9a0d10ad9c5692dba8c53ad48285e5bec4063834fa" + "url": "https://static.crates.io/crates/anstyle-wincon/3.0.3/download", + "sha256": "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19" } }, "targets": [ @@ -340,21 +423,21 @@ "deps": { "common": [ { - "id": "anstyle 0.3.5", + "id": "anstyle 1.0.7", "target": "anstyle" } ], "selects": { "cfg(windows)": [ { - "id": "windows-sys 0.45.0", + "id": "windows-sys 0.52.0", "target": "windows_sys" } ] } }, "edition": "2021", - "version": "0.2.0" + "version": "3.0.3" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -363,14 +446,14 @@ ], "license_file": null }, - "autocfg 1.1.0": { + "autocfg 1.3.0": { "name": "autocfg", - "version": "1.1.0", + "version": "1.3.0", "package_url": "https://github.com/cuviper/autocfg", "repository": { "Http": { - "url": "https://static.crates.io/crates/autocfg/1.1.0/download", - "sha256": "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + "url": "https://static.crates.io/crates/autocfg/1.3.0/download", + "sha256": "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" } }, "targets": [ @@ -390,7 +473,7 @@ "**" ], "edition": "2015", - "version": "1.1.0" + "version": "1.3.0" }, "license": "Apache-2.0 OR MIT", "license_ids": [ @@ -399,56 +482,14 @@ ], "license_file": null }, - "bitflags 1.3.2": { - "name": "bitflags", - "version": "1.3.2", - "package_url": "https://github.com/bitflags/bitflags", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/bitflags/1.3.2/download", - "sha256": "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - } - }, - "targets": [ - { - "Library": { - "crate_name": "bitflags", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "bitflags", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "crate_features": { - "common": [ - "default" - ], - "selects": {} - }, - "edition": "2018", - "version": "1.3.2" - }, - "license": "MIT/Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "bstr 1.9.0": { + "bstr 1.9.1": { "name": "bstr", - "version": "1.9.0", + "version": "1.9.1", "package_url": "https://github.com/BurntSushi/bstr", "repository": { "Http": { - "url": "https://static.crates.io/crates/bstr/1.9.0/download", - "sha256": "c48f0051a4b4c5e0b6d365cd04af53aeaa209e3cc15ec2cdb69e73cc87fbd0dc" + "url": "https://static.crates.io/crates/bstr/1.9.1/download", + "sha256": "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706" } }, "targets": [ @@ -477,14 +518,14 @@ "deps": { "common": [ { - "id": "memchr 2.7.1", + "id": "memchr 2.7.2", "target": "memchr" } ], "selects": {} }, "edition": "2021", - "version": "1.9.0" + "version": "1.9.1" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -493,14 +534,14 @@ ], "license_file": null }, - "bumpalo 3.12.0": { + "bumpalo 3.16.0": { "name": "bumpalo", - "version": "3.12.0", + "version": "3.16.0", "package_url": "https://github.com/fitzgen/bumpalo", "repository": { "Http": { - "url": "https://static.crates.io/crates/bumpalo/3.12.0/download", - "sha256": "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" + "url": "https://static.crates.io/crates/bumpalo/3.16.0/download", + "sha256": "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" } }, "targets": [ @@ -526,9 +567,9 @@ "selects": {} }, "edition": "2021", - "version": "3.12.0" + "version": "3.16.0" }, - "license": "MIT/Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" @@ -607,14 +648,14 @@ ], "license_file": null }, - "chrono 0.4.24": { + "chrono 0.4.38": { "name": "chrono", - "version": "0.4.24", + "version": "0.4.38", "package_url": "https://github.com/chronotope/chrono", "repository": { "Http": { - "url": "https://static.crates.io/crates/chrono/0.4.24/download", - "sha256": "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b" + "url": "https://static.crates.io/crates/chrono/0.4.38/download", + "sha256": "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" } }, "targets": [ @@ -635,82 +676,83 @@ ], "crate_features": { "common": [ + "alloc", + "android-tzdata", "clock", "default", "iana-time-zone", "js-sys", + "now", "oldtime", "serde", "std", - "time", "wasm-bindgen", "wasmbind", - "winapi" + "winapi", + "windows-targets" ], "selects": {} }, "deps": { "common": [ { - "id": "num-integer 0.1.45", - "target": "num_integer" - }, - { - "id": "num-traits 0.2.15", + "id": "num-traits 0.2.19", "target": "num_traits" }, { - "id": "serde 1.0.159", + "id": "serde 1.0.202", "target": "serde" - }, - { - "id": "time 0.1.45", - "target": "time" } ], "selects": { "cfg(all(target_arch = \"wasm32\", not(any(target_os = \"emscripten\", target_os = \"wasi\"))))": [ { - "id": "js-sys 0.3.61", + "id": "js-sys 0.3.69", "target": "js_sys" }, { - "id": "wasm-bindgen 0.2.84", + "id": "wasm-bindgen 0.2.92", "target": "wasm_bindgen" } ], + "cfg(target_os = \"android\")": [ + { + "id": "android-tzdata 0.1.1", + "target": "android_tzdata" + } + ], "cfg(unix)": [ { - "id": "iana-time-zone 0.1.56", + "id": "iana-time-zone 0.1.60", "target": "iana_time_zone" } ], "cfg(windows)": [ { - "id": "winapi 0.3.9", - "target": "winapi" + "id": "windows-targets 0.52.5", + "target": "windows_targets" } ] } }, - "edition": "2018", - "version": "0.4.24" + "edition": "2021", + "version": "0.4.38" }, - "license": "MIT/Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" ], "license_file": null }, - "clap 4.2.1": { + "clap 4.5.4": { "name": "clap", - "version": "4.2.1", + "version": "4.5.4", "package_url": "https://github.com/clap-rs/clap", "repository": { "Http": { - "url": "https://static.crates.io/crates/clap/4.2.1/download", - "sha256": "046ae530c528f252094e4a77886ee1374437744b2bff1497aa898bbddbbb29b3" + "url": "https://static.crates.io/crates/clap/4.5.4/download", + "sha256": "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0" } }, "targets": [ @@ -745,12 +787,8 @@ "deps": { "common": [ { - "id": "clap_builder 4.2.1", + "id": "clap_builder 4.5.2", "target": "clap_builder" - }, - { - "id": "once_cell 1.17.1", - "target": "once_cell" } ], "selects": {} @@ -759,13 +797,13 @@ "proc_macro_deps": { "common": [ { - "id": "clap_derive 4.2.0", + "id": "clap_derive 4.5.4", "target": "clap_derive" } ], "selects": {} }, - "version": "4.2.1" + "version": "4.5.4" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -774,14 +812,14 @@ ], "license_file": null }, - "clap_builder 4.2.1": { + "clap_builder 4.5.2": { "name": "clap_builder", - "version": "4.2.1", + "version": "4.5.2", "package_url": "https://github.com/clap-rs/clap", "repository": { "Http": { - "url": "https://static.crates.io/crates/clap_builder/4.2.1/download", - "sha256": "223163f58c9a40c3b0a43e1c4b50a9ce09f007ea2cb1ec258a687945b4b7929f" + "url": "https://static.crates.io/crates/clap_builder/4.5.2/download", + "sha256": "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4" } }, "targets": [ @@ -814,30 +852,26 @@ "deps": { "common": [ { - "id": "anstream 0.2.6", + "id": "anstream 0.6.14", "target": "anstream" }, { - "id": "anstyle 0.3.5", + "id": "anstyle 1.0.7", "target": "anstyle" }, { - "id": "bitflags 1.3.2", - "target": "bitflags" - }, - { - "id": "clap_lex 0.4.1", + "id": "clap_lex 0.7.0", "target": "clap_lex" }, { - "id": "strsim 0.10.0", + "id": "strsim 0.11.1", "target": "strsim" } ], "selects": {} }, "edition": "2021", - "version": "4.2.1" + "version": "4.5.2" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -846,14 +880,14 @@ ], "license_file": null }, - "clap_derive 4.2.0": { + "clap_derive 4.5.4": { "name": "clap_derive", - "version": "4.2.0", + "version": "4.5.4", "package_url": "https://github.com/clap-rs/clap/tree/master/clap_derive", "repository": { "Http": { - "url": "https://static.crates.io/crates/clap_derive/4.2.0/download", - "sha256": "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4" + "url": "https://static.crates.io/crates/clap_derive/4.5.4/download", + "sha256": "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64" } }, "targets": [ @@ -881,26 +915,26 @@ "deps": { "common": [ { - "id": "heck 0.4.1", + "id": "heck 0.5.0", "target": "heck" }, { - "id": "proc-macro2 1.0.56", + "id": "proc-macro2 1.0.83", "target": "proc_macro2" }, { - "id": "quote 1.0.26", + "id": "quote 1.0.36", "target": "quote" }, { - "id": "syn 2.0.13", + "id": "syn 2.0.66", "target": "syn" } ], "selects": {} }, "edition": "2021", - "version": "4.2.0" + "version": "4.5.4" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -909,14 +943,14 @@ ], "license_file": null }, - "clap_lex 0.4.1": { + "clap_lex 0.7.0": { "name": "clap_lex", - "version": "0.4.1", + "version": "0.7.0", "package_url": "https://github.com/clap-rs/clap/tree/master/clap_lex", "repository": { "Http": { - "url": "https://static.crates.io/crates/clap_lex/0.4.1/download", - "sha256": "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1" + "url": "https://static.crates.io/crates/clap_lex/0.7.0/download", + "sha256": "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" } }, "targets": [ @@ -936,7 +970,7 @@ "**" ], "edition": "2021", - "version": "0.4.1" + "version": "0.7.0" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -949,15 +983,7 @@ "name": "codeql-extractor", "version": "0.2.0", "package_url": null, - "repository": { - "Git": { - "remote": "https://github.com/github/codeql.git", - "commitish": { - "Rev": "bc1283c7152b0bb4d27ff6a004869f493e93d2b3" - }, - "strip_prefix": "shared/tree-sitter-extractor" - } - }, + "repository": null, "targets": [ { "Library": { @@ -977,7 +1003,7 @@ "deps": { "common": [ { - "id": "chrono 0.4.24", + "id": "chrono 0.4.38", "target": "chrono" }, { @@ -985,7 +1011,7 @@ "target": "encoding" }, { - "id": "flate2 1.0.25", + "id": "flate2 1.0.30", "target": "flate2" }, { @@ -997,11 +1023,11 @@ "target": "lazy_static" }, { - "id": "num_cpus 1.15.0", + "id": "num_cpus 1.16.0", "target": "num_cpus" }, { - "id": "rayon 1.7.0", + "id": "rayon 1.10.0", "target": "rayon" }, { @@ -1009,17 +1035,21 @@ "target": "regex" }, { - "id": "serde 1.0.159", + "id": "serde 1.0.202", "target": "serde" }, { - "id": "serde_json 1.0.95", + "id": "serde_json 1.0.117", "target": "serde_json" }, { - "id": "tracing 0.1.37", + "id": "tracing 0.1.40", "target": "tracing" }, + { + "id": "tracing-subscriber 0.3.18", + "target": "tracing_subscriber" + }, { "id": "tree-sitter 0.22.6", "target": "tree_sitter" @@ -1027,6 +1057,23 @@ ], "selects": {} }, + "deps_dev": { + "common": [ + { + "id": "rand 0.8.5", + "target": "rand" + }, + { + "id": "tree-sitter-json 0.21.0", + "target": "tree_sitter_json" + }, + { + "id": "tree-sitter-ql 0.22.5", + "target": "tree_sitter_ql" + } + ], + "selects": {} + }, "edition": "2021", "version": "0.2.0" }, @@ -1048,13 +1095,9 @@ "deps": { "common": [ { - "id": "clap 4.2.1", + "id": "clap 4.5.4", "target": "clap" }, - { - "id": "codeql-extractor 0.2.0", - "target": "codeql_extractor" - }, { "id": "encoding 0.2.33", "target": "encoding" @@ -1064,7 +1107,7 @@ "target": "lazy_static" }, { - "id": "rayon 1.7.0", + "id": "rayon 1.10.0", "target": "rayon" }, { @@ -1072,11 +1115,11 @@ "target": "regex" }, { - "id": "tracing 0.1.37", + "id": "tracing 0.1.40", "target": "tracing" }, { - "id": "tracing-subscriber 0.3.16", + "id": "tracing-subscriber 0.3.18", "target": "tracing_subscriber" }, { @@ -1101,20 +1144,20 @@ "license_ids": [], "license_file": null }, - "codespan-reporting 0.11.1": { - "name": "codespan-reporting", - "version": "0.11.1", - "package_url": "https://github.com/brendanzab/codespan", + "colorchoice 1.0.1": { + "name": "colorchoice", + "version": "1.0.1", + "package_url": "https://github.com/rust-cli/anstyle", "repository": { "Http": { - "url": "https://static.crates.io/crates/codespan-reporting/0.11.1/download", - "sha256": "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" + "url": "https://static.crates.io/crates/colorchoice/1.0.1/download", + "sha256": "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" } }, "targets": [ { "Library": { - "crate_name": "codespan_reporting", + "crate_name": "colorchoice", "crate_root": "src/lib.rs", "srcs": [ "**/*.rs" @@ -1122,61 +1165,13 @@ } } ], - "library_target_name": "codespan_reporting", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "termcolor 1.2.0", - "target": "termcolor" - }, - { - "id": "unicode-width 0.1.10", - "target": "unicode_width" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.11.1" - }, - "license": "Apache-2.0", - "license_ids": [ - "Apache-2.0" - ], - "license_file": null - }, - "concolor-override 1.0.0": { - "name": "concolor-override", - "version": "1.0.0", - "package_url": "https://github.com/rust-cli/concolor", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/concolor-override/1.0.0/download", - "sha256": "a855d4a1978dc52fb0536a04d384c2c0c1aa273597f08b77c8c4d3b2eec6037f" - } - }, - "targets": [ - { - "Library": { - "crate_name": "concolor_override", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "concolor_override", + "library_target_name": "colorchoice", "common_attrs": { "compile_data_glob": [ "**" ], "edition": "2021", - "version": "1.0.0" + "version": "1.0.1" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -1185,61 +1180,14 @@ ], "license_file": null }, - "concolor-query 0.3.3": { - "name": "concolor-query", - "version": "0.3.3", - "package_url": "https://github.com/rust-cli/concolor", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/concolor-query/0.3.3/download", - "sha256": "88d11d52c3d7ca2e6d0040212be9e4dbbcd78b6447f535b6b561f449427944cf" - } - }, - "targets": [ - { - "Library": { - "crate_name": "concolor_query", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "concolor_query", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [], - "selects": { - "cfg(windows)": [ - { - "id": "windows-sys 0.45.0", - "target": "windows_sys" - } - ] - } - }, - "edition": "2021", - "version": "0.3.3" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "core-foundation-sys 0.8.4": { + "core-foundation-sys 0.8.6": { "name": "core-foundation-sys", - "version": "0.8.4", + "version": "0.8.6", "package_url": "https://github.com/servo/core-foundation-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/core-foundation-sys/0.8.4/download", - "sha256": "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" + "url": "https://static.crates.io/crates/core-foundation-sys/0.8.6/download", + "sha256": "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" } }, "targets": [ @@ -1258,24 +1206,31 @@ "compile_data_glob": [ "**" ], - "edition": "2015", - "version": "0.8.4" + "crate_features": { + "common": [ + "default", + "link" + ], + "selects": {} + }, + "edition": "2018", + "version": "0.8.6" }, - "license": "MIT / Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" ], "license_file": null }, - "crc32fast 1.3.2": { + "crc32fast 1.4.2": { "name": "crc32fast", - "version": "1.3.2", + "version": "1.4.2", "package_url": "https://github.com/srijs/rust-crc32fast", "repository": { "Http": { - "url": "https://static.crates.io/crates/crc32fast/1.3.2/download", - "sha256": "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" + "url": "https://static.crates.io/crates/crc32fast/1.4.2/download", + "sha256": "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" } }, "targets": [ @@ -1287,15 +1242,6 @@ "**/*.rs" ] } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } } ], "library_target_name": "crc32fast", @@ -1315,21 +1261,12 @@ { "id": "cfg-if 1.0.0", "target": "cfg_if" - }, - { - "id": "crc32fast 1.3.2", - "target": "build_script_build" } ], "selects": {} }, "edition": "2015", - "version": "1.3.2" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] + "version": "1.4.2" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -1338,71 +1275,14 @@ ], "license_file": null }, - "crossbeam-channel 0.5.7": { - "name": "crossbeam-channel", - "version": "0.5.7", - "package_url": "https://github.com/crossbeam-rs/crossbeam", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/crossbeam-channel/0.5.7/download", - "sha256": "cf2b3e8478797446514c91ef04bafcb59faba183e621ad488df88983cc14128c" - } - }, - "targets": [ - { - "Library": { - "crate_name": "crossbeam_channel", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "crossbeam_channel", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "crate_features": { - "common": [ - "crossbeam-utils", - "default", - "std" - ], - "selects": {} - }, - "deps": { - "common": [ - { - "id": "cfg-if 1.0.0", - "target": "cfg_if" - }, - { - "id": "crossbeam-utils 0.8.15", - "target": "crossbeam_utils" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.5.7" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "crossbeam-deque 0.8.3": { + "crossbeam-deque 0.8.5": { "name": "crossbeam-deque", - "version": "0.8.3", + "version": "0.8.5", "package_url": "https://github.com/crossbeam-rs/crossbeam", "repository": { "Http": { - "url": "https://static.crates.io/crates/crossbeam-deque/0.8.3/download", - "sha256": "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" + "url": "https://static.crates.io/crates/crossbeam-deque/0.8.5/download", + "sha256": "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" } }, "targets": [ @@ -1423,8 +1303,6 @@ ], "crate_features": { "common": [ - "crossbeam-epoch", - "crossbeam-utils", "default", "std" ], @@ -1433,22 +1311,18 @@ "deps": { "common": [ { - "id": "cfg-if 1.0.0", - "target": "cfg_if" - }, - { - "id": "crossbeam-epoch 0.9.14", + "id": "crossbeam-epoch 0.9.18", "target": "crossbeam_epoch" }, { - "id": "crossbeam-utils 0.8.15", + "id": "crossbeam-utils 0.8.20", "target": "crossbeam_utils" } ], "selects": {} }, - "edition": "2018", - "version": "0.8.3" + "edition": "2021", + "version": "0.8.5" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -1457,14 +1331,14 @@ ], "license_file": null }, - "crossbeam-epoch 0.9.14": { + "crossbeam-epoch 0.9.18": { "name": "crossbeam-epoch", - "version": "0.9.14", + "version": "0.9.18", "package_url": "https://github.com/crossbeam-rs/crossbeam", "repository": { "Http": { - "url": "https://static.crates.io/crates/crossbeam-epoch/0.9.14/download", - "sha256": "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" + "url": "https://static.crates.io/crates/crossbeam-epoch/0.9.18/download", + "sha256": "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" } }, "targets": [ @@ -1476,15 +1350,6 @@ "**/*.rs" ] } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } } ], "library_target_name": "crossbeam_epoch", @@ -1502,44 +1367,14 @@ "deps": { "common": [ { - "id": "cfg-if 1.0.0", - "target": "cfg_if" - }, - { - "id": "crossbeam-epoch 0.9.14", - "target": "build_script_build" - }, - { - "id": "crossbeam-utils 0.8.15", + "id": "crossbeam-utils 0.8.20", "target": "crossbeam_utils" - }, - { - "id": "memoffset 0.8.0", - "target": "memoffset" - }, - { - "id": "scopeguard 1.1.0", - "target": "scopeguard" } ], "selects": {} }, - "edition": "2018", - "version": "0.9.14" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "autocfg 1.1.0", - "target": "autocfg" - } - ], - "selects": {} - } + "edition": "2021", + "version": "0.9.18" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -1548,14 +1383,14 @@ ], "license_file": null }, - "crossbeam-utils 0.8.15": { + "crossbeam-utils 0.8.20": { "name": "crossbeam-utils", - "version": "0.8.15", + "version": "0.8.20", "package_url": "https://github.com/crossbeam-rs/crossbeam", "repository": { "Http": { - "url": "https://static.crates.io/crates/crossbeam-utils/0.8.15/download", - "sha256": "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" + "url": "https://static.crates.io/crates/crossbeam-utils/0.8.20/download", + "sha256": "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" } }, "targets": [ @@ -1593,18 +1428,14 @@ "deps": { "common": [ { - "id": "cfg-if 1.0.0", - "target": "cfg_if" - }, - { - "id": "crossbeam-utils 0.8.15", + "id": "crossbeam-utils 0.8.20", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.8.15" + "edition": "2021", + "version": "0.8.20" }, "build_script_attrs": { "data_glob": [ @@ -1618,267 +1449,14 @@ ], "license_file": null }, - "cxx 1.0.94": { - "name": "cxx", - "version": "1.0.94", - "package_url": "https://github.com/dtolnay/cxx", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/cxx/1.0.94/download", - "sha256": "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93" - } - }, - "targets": [ - { - "Library": { - "crate_name": "cxx", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "cxx", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "cxx 1.0.94", - "target": "build_script_build" - }, - { - "id": "link-cplusplus 1.0.8", - "target": "link_cplusplus" - } - ], - "selects": {} - }, - "edition": "2018", - "proc_macro_deps": { - "common": [ - { - "id": "cxxbridge-macro 1.0.94", - "target": "cxxbridge_macro" - } - ], - "selects": {} - }, - "version": "1.0.94" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "cc 1.0.98", - "target": "cc" - }, - { - "id": "cxxbridge-flags 1.0.94", - "target": "cxxbridge_flags" - } - ], - "selects": {} - }, - "link_deps": { - "common": [ - { - "id": "link-cplusplus 1.0.8", - "target": "link_cplusplus" - } - ], - "selects": {} - }, - "links": "cxxbridge1" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "cxx-build 1.0.94": { - "name": "cxx-build", - "version": "1.0.94", - "package_url": "https://github.com/dtolnay/cxx", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/cxx-build/1.0.94/download", - "sha256": "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b" - } - }, - "targets": [ - { - "Library": { - "crate_name": "cxx_build", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "cxx_build", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "cc 1.0.98", - "target": "cc" - }, - { - "id": "codespan-reporting 0.11.1", - "target": "codespan_reporting" - }, - { - "id": "once_cell 1.17.1", - "target": "once_cell" - }, - { - "id": "proc-macro2 1.0.56", - "target": "proc_macro2" - }, - { - "id": "quote 1.0.26", - "target": "quote" - }, - { - "id": "scratch 1.0.5", - "target": "scratch" - }, - { - "id": "syn 2.0.13", - "target": "syn" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "1.0.94" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "cxxbridge-flags 1.0.94": { - "name": "cxxbridge-flags", - "version": "1.0.94", - "package_url": "https://github.com/dtolnay/cxx", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/cxxbridge-flags/1.0.94/download", - "sha256": "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb" - } - }, - "targets": [ - { - "Library": { - "crate_name": "cxxbridge_flags", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "cxxbridge_flags", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "edition": "2018", - "version": "1.0.94" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "cxxbridge-macro 1.0.94": { - "name": "cxxbridge-macro", - "version": "1.0.94", - "package_url": "https://github.com/dtolnay/cxx", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/cxxbridge-macro/1.0.94/download", - "sha256": "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5" - } - }, - "targets": [ - { - "ProcMacro": { - "crate_name": "cxxbridge_macro", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "cxxbridge_macro", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "proc-macro2 1.0.56", - "target": "proc_macro2" - }, - { - "id": "quote 1.0.26", - "target": "quote" - }, - { - "id": "syn 2.0.13", - "target": "syn" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "1.0.94" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "either 1.8.1": { + "either 1.12.0": { "name": "either", - "version": "1.8.1", - "package_url": "https://github.com/bluss/either", + "version": "1.12.0", + "package_url": "https://github.com/rayon-rs/either", "repository": { "Http": { - "url": "https://static.crates.io/crates/either/1.8.1/download", - "sha256": "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" + "url": "https://static.crates.io/crates/either/1.12.0/download", + "sha256": "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" } }, "targets": [ @@ -1898,7 +1476,7 @@ "**" ], "edition": "2018", - "version": "1.8.1" + "version": "1.12.0" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -2222,156 +1800,14 @@ ], "license_file": null }, - "errno 0.3.0": { - "name": "errno", - "version": "0.3.0", - "package_url": "https://github.com/lambda-fairy/rust-errno", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/errno/0.3.0/download", - "sha256": "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0" - } - }, - "targets": [ - { - "Library": { - "crate_name": "errno", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "errno", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [], - "selects": { - "cfg(target_os = \"dragonfly\")": [ - { - "id": "errno-dragonfly 0.1.2", - "target": "errno_dragonfly" - } - ], - "cfg(target_os = \"hermit\")": [ - { - "id": "libc 0.2.141", - "target": "libc" - } - ], - "cfg(target_os = \"wasi\")": [ - { - "id": "libc 0.2.141", - "target": "libc" - } - ], - "cfg(unix)": [ - { - "id": "libc 0.2.141", - "target": "libc" - } - ], - "cfg(windows)": [ - { - "id": "windows-sys 0.45.0", - "target": "windows_sys" - } - ] - } - }, - "edition": "2018", - "version": "0.3.0" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "errno-dragonfly 0.1.2": { - "name": "errno-dragonfly", - "version": "0.1.2", - "package_url": "https://github.com/mneumann/errno-dragonfly-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/errno-dragonfly/0.1.2/download", - "sha256": "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" - } - }, - "targets": [ - { - "Library": { - "crate_name": "errno_dragonfly", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "errno_dragonfly", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "errno-dragonfly 0.1.2", - "target": "build_script_build" - }, - { - "id": "libc 0.2.141", - "target": "libc" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.1.2" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "cc 1.0.98", - "target": "cc" - } - ], - "selects": {} - } - }, - "license": "MIT", - "license_ids": [ - "MIT" - ], - "license_file": null - }, - "flate2 1.0.25": { + "flate2 1.0.30": { "name": "flate2", - "version": "1.0.25", + "version": "1.0.30", "package_url": "https://github.com/rust-lang/flate2-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/flate2/1.0.25/download", - "sha256": "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841" + "url": "https://static.crates.io/crates/flate2/1.0.30/download", + "sha256": "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" } }, "targets": [ @@ -2392,6 +1828,7 @@ ], "crate_features": { "common": [ + "any_impl", "default", "miniz_oxide", "rust_backend" @@ -2401,18 +1838,82 @@ "deps": { "common": [ { - "id": "crc32fast 1.3.2", + "id": "crc32fast 1.4.2", "target": "crc32fast" }, { - "id": "miniz_oxide 0.6.2", + "id": "miniz_oxide 0.7.3", "target": "miniz_oxide" } ], "selects": {} }, "edition": "2018", - "version": "1.0.25" + "version": "1.0.30" + }, + "license": "MIT OR Apache-2.0", + "license_ids": [ + "Apache-2.0", + "MIT" + ], + "license_file": null + }, + "getrandom 0.2.15": { + "name": "getrandom", + "version": "0.2.15", + "package_url": "https://github.com/rust-random/getrandom", + "repository": { + "Http": { + "url": "https://static.crates.io/crates/getrandom/0.2.15/download", + "sha256": "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" + } + }, + "targets": [ + { + "Library": { + "crate_name": "getrandom", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "getrandom", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "cfg-if 1.0.0", + "target": "cfg_if" + } + ], + "selects": { + "cfg(target_os = \"wasi\")": [ + { + "id": "wasi 0.11.0+wasi-snapshot-preview1", + "target": "wasi" + } + ], + "cfg(unix)": [ + { + "id": "libc 0.2.155", + "target": "libc" + } + ] + } + }, + "edition": "2018", + "version": "0.2.15" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -2457,15 +1958,15 @@ "deps": { "common": [ { - "id": "aho-corasick 1.1.2", + "id": "aho-corasick 1.1.3", "target": "aho_corasick" }, { - "id": "bstr 1.9.0", + "id": "bstr 1.9.1", "target": "bstr" }, { - "id": "log 0.4.20", + "id": "log 0.4.21", "target": "log" }, { @@ -2473,7 +1974,7 @@ "target": "regex_automata" }, { - "id": "regex-syntax 0.8.2", + "id": "regex-syntax 0.8.3", "target": "regex_syntax" } ], @@ -2489,14 +1990,14 @@ ], "license_file": null }, - "heck 0.4.1": { + "heck 0.5.0": { "name": "heck", - "version": "0.4.1", + "version": "0.5.0", "package_url": "https://github.com/withoutboats/heck", "repository": { "Http": { - "url": "https://static.crates.io/crates/heck/0.4.1/download", - "sha256": "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + "url": "https://static.crates.io/crates/heck/0.5.0/download", + "sha256": "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" } }, "targets": [ @@ -2515,14 +2016,8 @@ "compile_data_glob": [ "**" ], - "crate_features": { - "common": [ - "default" - ], - "selects": {} - }, - "edition": "2018", - "version": "0.4.1" + "edition": "2021", + "version": "0.5.0" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -2531,59 +2026,14 @@ ], "license_file": null }, - "hermit-abi 0.2.6": { + "hermit-abi 0.3.9": { "name": "hermit-abi", - "version": "0.2.6", - "package_url": "https://github.com/hermitcore/rusty-hermit", + "version": "0.3.9", + "package_url": "https://github.com/hermit-os/hermit-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/hermit-abi/0.2.6/download", - "sha256": "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" - } - }, - "targets": [ - { - "Library": { - "crate_name": "hermit_abi", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "hermit_abi", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "libc 0.2.141", - "target": "libc" - } - ], - "selects": {} - }, - "edition": "2021", - "version": "0.2.6" - }, - "license": "MIT/Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "hermit-abi 0.3.1": { - "name": "hermit-abi", - "version": "0.3.1", - "package_url": "https://github.com/hermitcore/rusty-hermit", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/hermit-abi/0.3.1/download", - "sha256": "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" + "url": "https://static.crates.io/crates/hermit-abi/0.3.9/download", + "sha256": "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" } }, "targets": [ @@ -2603,7 +2053,7 @@ "**" ], "edition": "2021", - "version": "0.3.1" + "version": "0.3.9" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -2612,14 +2062,14 @@ ], "license_file": null }, - "iana-time-zone 0.1.56": { + "iana-time-zone 0.1.60": { "name": "iana-time-zone", - "version": "0.1.56", + "version": "0.1.60", "package_url": "https://github.com/strawlab/iana-time-zone", "repository": { "Http": { - "url": "https://static.crates.io/crates/iana-time-zone/0.1.56/download", - "sha256": "0722cd7114b7de04316e7ea5456a0bbb20e4adb46fd27a3697adb812cff0f37c" + "url": "https://static.crates.io/crates/iana-time-zone/0.1.60/download", + "sha256": "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" } }, "targets": [ @@ -2649,17 +2099,17 @@ "selects": { "cfg(any(target_os = \"macos\", target_os = \"ios\"))": [ { - "id": "core-foundation-sys 0.8.4", + "id": "core-foundation-sys 0.8.6", "target": "core_foundation_sys" } ], "cfg(target_arch = \"wasm32\")": [ { - "id": "js-sys 0.3.61", + "id": "js-sys 0.3.69", "target": "js_sys" }, { - "id": "wasm-bindgen 0.2.84", + "id": "wasm-bindgen 0.2.92", "target": "wasm_bindgen" } ], @@ -2671,20 +2121,20 @@ ], "cfg(target_os = \"haiku\")": [ { - "id": "iana-time-zone-haiku 0.1.1", + "id": "iana-time-zone-haiku 0.1.2", "target": "iana_time_zone_haiku" } ], "cfg(target_os = \"windows\")": [ { - "id": "windows 0.48.0", - "target": "windows" + "id": "windows-core 0.52.0", + "target": "windows_core" } ] } }, "edition": "2018", - "version": "0.1.56" + "version": "0.1.60" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -2693,14 +2143,14 @@ ], "license_file": null }, - "iana-time-zone-haiku 0.1.1": { + "iana-time-zone-haiku 0.1.2": { "name": "iana-time-zone-haiku", - "version": "0.1.1", + "version": "0.1.2", "package_url": "https://github.com/strawlab/iana-time-zone", "repository": { "Http": { - "url": "https://static.crates.io/crates/iana-time-zone-haiku/0.1.1/download", - "sha256": "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" + "url": "https://static.crates.io/crates/iana-time-zone-haiku/0.1.2/download", + "sha256": "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" } }, "targets": [ @@ -2731,18 +2181,14 @@ "deps": { "common": [ { - "id": "cxx 1.0.94", - "target": "cxx" - }, - { - "id": "iana-time-zone-haiku 0.1.1", + "id": "iana-time-zone-haiku 0.1.2", "target": "build_script_build" } ], "selects": {} }, "edition": "2018", - "version": "0.1.1" + "version": "0.1.2" }, "build_script_attrs": { "data_glob": [ @@ -2751,17 +2197,8 @@ "deps": { "common": [ { - "id": "cxx-build 1.0.94", - "target": "cxx_build" - } - ], - "selects": {} - }, - "link_deps": { - "common": [ - { - "id": "cxx 1.0.94", - "target": "cxx" + "id": "cc 1.0.98", + "target": "cc" } ], "selects": {} @@ -2774,165 +2211,56 @@ ], "license_file": null }, - "io-lifetimes 1.0.10": { - "name": "io-lifetimes", - "version": "1.0.10", - "package_url": "https://github.com/sunfishcode/io-lifetimes", + "is_terminal_polyfill 1.70.0": { + "name": "is_terminal_polyfill", + "version": "1.70.0", + "package_url": "https://github.com/polyfill-rs/is_terminal_polyfill", "repository": { "Http": { - "url": "https://static.crates.io/crates/io-lifetimes/1.0.10/download", - "sha256": "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220" + "url": "https://static.crates.io/crates/is_terminal_polyfill/1.70.0/download", + "sha256": "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" } }, "targets": [ { "Library": { - "crate_name": "io_lifetimes", + "crate_name": "is_terminal_polyfill", "crate_root": "src/lib.rs", "srcs": [ "**/*.rs" ] } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } } ], - "library_target_name": "io_lifetimes", + "library_target_name": "is_terminal_polyfill", "common_attrs": { "compile_data_glob": [ "**" ], "crate_features": { "common": [ - "close", - "default", - "hermit-abi", - "libc", - "windows-sys" + "default" ], "selects": {} }, - "deps": { - "common": [ - { - "id": "io-lifetimes 1.0.10", - "target": "build_script_build" - } - ], - "selects": { - "cfg(not(windows))": [ - { - "id": "libc 0.2.141", - "target": "libc" - } - ], - "cfg(target_os = \"hermit\")": [ - { - "id": "hermit-abi 0.3.1", - "target": "hermit_abi" - } - ], - "cfg(windows)": [ - { - "id": "windows-sys 0.48.0", - "target": "windows_sys" - } - ] - } - }, - "edition": "2018", - "version": "1.0.10" + "edition": "2021", + "version": "1.70.0" }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" ], "license_file": null }, - "is-terminal 0.4.6": { - "name": "is-terminal", - "version": "0.4.6", - "package_url": "https://github.com/sunfishcode/is-terminal", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/is-terminal/0.4.6/download", - "sha256": "256017f749ab3117e93acb91063009e1f1bb56d03965b14c2c8df4eb02c524d8" - } - }, - "targets": [ - { - "Library": { - "crate_name": "is_terminal", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "is_terminal", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "io-lifetimes 1.0.10", - "target": "io_lifetimes" - } - ], - "selects": { - "cfg(not(any(windows, target_os = \"hermit\", target_os = \"unknown\")))": [ - { - "id": "rustix 0.37.7", - "target": "rustix" - } - ], - "cfg(target_os = \"hermit\")": [ - { - "id": "hermit-abi 0.3.1", - "target": "hermit_abi" - } - ], - "cfg(windows)": [ - { - "id": "windows-sys 0.45.0", - "target": "windows_sys" - } - ] - } - }, - "edition": "2018", - "version": "0.4.6" - }, - "license": "MIT", - "license_ids": [ - "MIT" - ], - "license_file": null - }, - "itoa 1.0.6": { + "itoa 1.0.11": { "name": "itoa", - "version": "1.0.6", + "version": "1.0.11", "package_url": "https://github.com/dtolnay/itoa", "repository": { "Http": { - "url": "https://static.crates.io/crates/itoa/1.0.6/download", - "sha256": "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" + "url": "https://static.crates.io/crates/itoa/1.0.11/download", + "sha256": "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" } }, "targets": [ @@ -2952,7 +2280,7 @@ "**" ], "edition": "2018", - "version": "1.0.6" + "version": "1.0.11" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -2961,14 +2289,14 @@ ], "license_file": null }, - "js-sys 0.3.61": { + "js-sys 0.3.69": { "name": "js-sys", - "version": "0.3.61", + "version": "0.3.69", "package_url": "https://github.com/rustwasm/wasm-bindgen/tree/master/crates/js-sys", "repository": { "Http": { - "url": "https://static.crates.io/crates/js-sys/0.3.61/download", - "sha256": "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" + "url": "https://static.crates.io/crates/js-sys/0.3.69/download", + "sha256": "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" } }, "targets": [ @@ -2990,16 +2318,16 @@ "deps": { "common": [ { - "id": "wasm-bindgen 0.2.84", + "id": "wasm-bindgen 0.2.92", "target": "wasm_bindgen" } ], "selects": {} }, "edition": "2018", - "version": "0.3.61" + "version": "0.3.69" }, - "license": "MIT/Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" @@ -3042,14 +2370,14 @@ ], "license_file": null }, - "libc 0.2.141": { + "libc 0.2.155": { "name": "libc", - "version": "0.2.141", + "version": "0.2.155", "package_url": "https://github.com/rust-lang/libc", "repository": { "Http": { - "url": "https://static.crates.io/crates/libc/0.2.141/download", - "sha256": "3304a64d199bb964be99741b7a14d26972741915b3649639149b2479bb46f4b5" + "url": "https://static.crates.io/crates/libc/0.2.155/download", + "sha256": "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" } }, "targets": [ @@ -3082,110 +2410,19 @@ "default", "std" ], - "selects": { - "aarch64-apple-darwin": [ - "extra_traits" - ], - "aarch64-apple-ios": [ - "extra_traits" - ], - "aarch64-apple-ios-sim": [ - "extra_traits" - ], - "aarch64-fuchsia": [ - "extra_traits" - ], - "aarch64-linux-android": [ - "extra_traits" - ], - "aarch64-unknown-linux-gnu": [ - "extra_traits" - ], - "aarch64-unknown-nixos-gnu": [ - "extra_traits" - ], - "aarch64-unknown-nto-qnx710": [ - "extra_traits" - ], - "arm-unknown-linux-gnueabi": [ - "extra_traits" - ], - "armv7-linux-androideabi": [ - "extra_traits" - ], - "armv7-unknown-linux-gnueabi": [ - "extra_traits" - ], - "i686-apple-darwin": [ - "extra_traits" - ], - "i686-linux-android": [ - "extra_traits" - ], - "i686-unknown-freebsd": [ - "extra_traits" - ], - "i686-unknown-linux-gnu": [ - "extra_traits" - ], - "powerpc-unknown-linux-gnu": [ - "extra_traits" - ], - "riscv32imc-unknown-none-elf": [ - "extra_traits" - ], - "riscv64gc-unknown-none-elf": [ - "extra_traits" - ], - "s390x-unknown-linux-gnu": [ - "extra_traits" - ], - "thumbv7em-none-eabi": [ - "extra_traits" - ], - "thumbv8m.main-none-eabi": [ - "extra_traits" - ], - "wasm32-wasi": [ - "extra_traits" - ], - "x86_64-apple-darwin": [ - "extra_traits" - ], - "x86_64-apple-ios": [ - "extra_traits" - ], - "x86_64-fuchsia": [ - "extra_traits" - ], - "x86_64-linux-android": [ - "extra_traits" - ], - "x86_64-unknown-freebsd": [ - "extra_traits" - ], - "x86_64-unknown-linux-gnu": [ - "extra_traits" - ], - "x86_64-unknown-nixos-gnu": [ - "extra_traits" - ], - "x86_64-unknown-none": [ - "extra_traits" - ] - } + "selects": {} }, "deps": { "common": [ { - "id": "libc 0.2.141", + "id": "libc 0.2.155", "target": "build_script_build" } ], "selects": {} }, "edition": "2015", - "version": "0.2.141" + "version": "0.2.155" }, "build_script_attrs": { "data_glob": [ @@ -3199,155 +2436,14 @@ ], "license_file": null }, - "link-cplusplus 1.0.8": { - "name": "link-cplusplus", - "version": "1.0.8", - "package_url": "https://github.com/dtolnay/link-cplusplus", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/link-cplusplus/1.0.8/download", - "sha256": "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" - } - }, - "targets": [ - { - "Library": { - "crate_name": "link_cplusplus", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "link_cplusplus", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "link-cplusplus 1.0.8", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "1.0.8" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "cc 1.0.98", - "target": "cc" - } - ], - "selects": {} - }, - "links": "cplusplus" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "linux-raw-sys 0.3.1": { - "name": "linux-raw-sys", - "version": "0.3.1", - "package_url": "https://github.com/sunfishcode/linux-raw-sys", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/linux-raw-sys/0.3.1/download", - "sha256": "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f" - } - }, - "targets": [ - { - "Library": { - "crate_name": "linux_raw_sys", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "linux_raw_sys", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "crate_features": { - "common": [ - "general", - "no_std" - ], - "selects": { - "aarch64-unknown-linux-gnu": [ - "errno", - "ioctl" - ], - "aarch64-unknown-nixos-gnu": [ - "errno", - "ioctl" - ], - "arm-unknown-linux-gnueabi": [ - "errno", - "ioctl" - ], - "armv7-unknown-linux-gnueabi": [ - "errno", - "ioctl" - ], - "i686-unknown-linux-gnu": [ - "errno", - "ioctl" - ], - "x86_64-unknown-linux-gnu": [ - "errno", - "ioctl" - ], - "x86_64-unknown-nixos-gnu": [ - "errno", - "ioctl" - ] - } - }, - "edition": "2018", - "version": "0.3.1" - }, - "license": "Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "log 0.4.20": { + "log 0.4.21": { "name": "log", - "version": "0.4.20", + "version": "0.4.21", "package_url": "https://github.com/rust-lang/log", "repository": { "Http": { - "url": "https://static.crates.io/crates/log/0.4.20/download", - "sha256": "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + "url": "https://static.crates.io/crates/log/0.4.21/download", + "sha256": "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" } }, "targets": [ @@ -3372,8 +2468,8 @@ ], "selects": {} }, - "edition": "2015", - "version": "0.4.20" + "edition": "2021", + "version": "0.4.21" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -3426,14 +2522,14 @@ ], "license_file": null }, - "memchr 2.7.1": { + "memchr 2.7.2": { "name": "memchr", - "version": "2.7.1", + "version": "2.7.2", "package_url": "https://github.com/BurntSushi/memchr", "repository": { "Http": { - "url": "https://static.crates.io/crates/memchr/2.7.1/download", - "sha256": "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" + "url": "https://static.crates.io/crates/memchr/2.7.2/download", + "sha256": "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" } }, "targets": [ @@ -3460,7 +2556,7 @@ "selects": {} }, "edition": "2021", - "version": "2.7.1" + "version": "2.7.2" }, "license": "Unlicense OR MIT", "license_ids": [ @@ -3469,87 +2565,14 @@ ], "license_file": null }, - "memoffset 0.8.0": { - "name": "memoffset", - "version": "0.8.0", - "package_url": "https://github.com/Gilnaa/memoffset", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/memoffset/0.8.0/download", - "sha256": "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" - } - }, - "targets": [ - { - "Library": { - "crate_name": "memoffset", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "memoffset", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "crate_features": { - "common": [ - "default" - ], - "selects": {} - }, - "deps": { - "common": [ - { - "id": "memoffset 0.8.0", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2015", - "version": "0.8.0" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "autocfg 1.1.0", - "target": "autocfg" - } - ], - "selects": {} - } - }, - "license": "MIT", - "license_ids": [ - "MIT" - ], - "license_file": null - }, - "miniz_oxide 0.6.2": { + "miniz_oxide 0.7.3": { "name": "miniz_oxide", - "version": "0.6.2", + "version": "0.7.3", "package_url": "https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide", "repository": { "Http": { - "url": "https://static.crates.io/crates/miniz_oxide/0.6.2/download", - "sha256": "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" + "url": "https://static.crates.io/crates/miniz_oxide/0.7.3/download", + "sha256": "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" } }, "targets": [ @@ -3584,7 +2607,7 @@ "selects": {} }, "edition": "2018", - "version": "0.6.2" + "version": "0.7.3" }, "license": "MIT OR Zlib OR Apache-2.0", "license_ids": [ @@ -3645,86 +2668,14 @@ ], "license_file": null }, - "num-integer 0.1.45": { - "name": "num-integer", - "version": "0.1.45", - "package_url": "https://github.com/rust-num/num-integer", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/num-integer/0.1.45/download", - "sha256": "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" - } - }, - "targets": [ - { - "Library": { - "crate_name": "num_integer", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "num_integer", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "num-integer 0.1.45", - "target": "build_script_build" - }, - { - "id": "num-traits 0.2.15", - "target": "num_traits" - } - ], - "selects": {} - }, - "edition": "2015", - "version": "0.1.45" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "autocfg 1.1.0", - "target": "autocfg" - } - ], - "selects": {} - } - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "num-traits 0.2.15": { + "num-traits 0.2.19": { "name": "num-traits", - "version": "0.2.15", + "version": "0.2.19", "package_url": "https://github.com/rust-num/num-traits", "repository": { "Http": { - "url": "https://static.crates.io/crates/num-traits/0.2.15/download", - "sha256": "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" + "url": "https://static.crates.io/crates/num-traits/0.2.19/download", + "sha256": "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" } }, "targets": [ @@ -3755,14 +2706,14 @@ "deps": { "common": [ { - "id": "num-traits 0.2.15", + "id": "num-traits 0.2.19", "target": "build_script_build" } ], "selects": {} }, - "edition": "2015", - "version": "0.2.15" + "edition": "2021", + "version": "0.2.19" }, "build_script_attrs": { "data_glob": [ @@ -3771,7 +2722,7 @@ "deps": { "common": [ { - "id": "autocfg 1.1.0", + "id": "autocfg 1.3.0", "target": "autocfg" } ], @@ -3785,14 +2736,14 @@ ], "license_file": null }, - "num_cpus 1.15.0": { + "num_cpus 1.16.0": { "name": "num_cpus", - "version": "1.15.0", + "version": "1.16.0", "package_url": "https://github.com/seanmonstar/num_cpus", "repository": { "Http": { - "url": "https://static.crates.io/crates/num_cpus/1.15.0/download", - "sha256": "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" + "url": "https://static.crates.io/crates/num_cpus/1.16.0/download", + "sha256": "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" } }, "targets": [ @@ -3814,22 +2765,22 @@ "deps": { "common": [], "selects": { - "cfg(all(any(target_arch = \"x86_64\", target_arch = \"aarch64\"), target_os = \"hermit\"))": [ - { - "id": "hermit-abi 0.2.6", - "target": "hermit_abi" - } - ], "cfg(not(windows))": [ { - "id": "libc 0.2.141", + "id": "libc 0.2.155", "target": "libc" } + ], + "cfg(target_os = \"hermit\")": [ + { + "id": "hermit-abi 0.3.9", + "target": "hermit_abi" + } ] } }, "edition": "2015", - "version": "1.15.0" + "version": "1.16.0" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -3838,14 +2789,14 @@ ], "license_file": null }, - "once_cell 1.17.1": { + "once_cell 1.19.0": { "name": "once_cell", - "version": "1.17.1", + "version": "1.19.0", "package_url": "https://github.com/matklad/once_cell", "repository": { "Http": { - "url": "https://static.crates.io/crates/once_cell/1.17.1/download", - "sha256": "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" + "url": "https://static.crates.io/crates/once_cell/1.19.0/download", + "sha256": "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" } }, "targets": [ @@ -3874,7 +2825,7 @@ "selects": {} }, "edition": "2021", - "version": "1.17.1" + "version": "1.19.0" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -3918,14 +2869,14 @@ ], "license_file": null }, - "pin-project-lite 0.2.9": { + "pin-project-lite 0.2.14": { "name": "pin-project-lite", - "version": "0.2.9", + "version": "0.2.14", "package_url": "https://github.com/taiki-e/pin-project-lite", "repository": { "Http": { - "url": "https://static.crates.io/crates/pin-project-lite/0.2.9/download", - "sha256": "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" + "url": "https://static.crates.io/crates/pin-project-lite/0.2.14/download", + "sha256": "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" } }, "targets": [ @@ -3945,7 +2896,7 @@ "**" ], "edition": "2018", - "version": "0.2.9" + "version": "0.2.14" }, "license": "Apache-2.0 OR MIT", "license_ids": [ @@ -3954,14 +2905,57 @@ ], "license_file": null }, - "proc-macro2 1.0.56": { + "ppv-lite86 0.2.17": { + "name": "ppv-lite86", + "version": "0.2.17", + "package_url": "https://github.com/cryptocorrosion/cryptocorrosion", + "repository": { + "Http": { + "url": "https://static.crates.io/crates/ppv-lite86/0.2.17/download", + "sha256": "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + } + }, + "targets": [ + { + "Library": { + "crate_name": "ppv_lite86", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "ppv_lite86", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "simd", + "std" + ], + "selects": {} + }, + "edition": "2018", + "version": "0.2.17" + }, + "license": "MIT/Apache-2.0", + "license_ids": [ + "Apache-2.0", + "MIT" + ], + "license_file": null + }, + "proc-macro2 1.0.83": { "name": "proc-macro2", - "version": "1.0.56", + "version": "1.0.83", "package_url": "https://github.com/dtolnay/proc-macro2", "repository": { "Http": { - "url": "https://static.crates.io/crates/proc-macro2/1.0.56/download", - "sha256": "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" + "url": "https://static.crates.io/crates/proc-macro2/1.0.83/download", + "sha256": "0b33eb56c327dec362a9e55b3ad14f9d2f0904fb5a5b03b513ab5465399e9f43" } }, "targets": [ @@ -3999,18 +2993,18 @@ "deps": { "common": [ { - "id": "proc-macro2 1.0.56", + "id": "proc-macro2 1.0.83", "target": "build_script_build" }, { - "id": "unicode-ident 1.0.8", + "id": "unicode-ident 1.0.12", "target": "unicode_ident" } ], "selects": {} }, - "edition": "2018", - "version": "1.0.56" + "edition": "2021", + "version": "1.0.83" }, "build_script_attrs": { "data_glob": [ @@ -4024,14 +3018,14 @@ ], "license_file": null }, - "quote 1.0.26": { + "quote 1.0.36": { "name": "quote", - "version": "1.0.26", + "version": "1.0.36", "package_url": "https://github.com/dtolnay/quote", "repository": { "Http": { - "url": "https://static.crates.io/crates/quote/1.0.26/download", - "sha256": "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" + "url": "https://static.crates.io/crates/quote/1.0.36/download", + "sha256": "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" } }, "targets": [ @@ -4043,15 +3037,6 @@ "**/*.rs" ] } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } } ], "library_target_name": "quote", @@ -4069,23 +3054,14 @@ "deps": { "common": [ { - "id": "proc-macro2 1.0.56", + "id": "proc-macro2 1.0.83", "target": "proc_macro2" - }, - { - "id": "quote 1.0.26", - "target": "build_script_build" } ], "selects": {} }, "edition": "2018", - "version": "1.0.26" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] + "version": "1.0.36" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -4094,14 +3070,190 @@ ], "license_file": null }, - "rayon 1.7.0": { + "rand 0.8.5": { + "name": "rand", + "version": "0.8.5", + "package_url": "https://github.com/rust-random/rand", + "repository": { + "Http": { + "url": "https://static.crates.io/crates/rand/0.8.5/download", + "sha256": "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rand", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rand", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "alloc", + "default", + "getrandom", + "libc", + "rand_chacha", + "std", + "std_rng" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "rand_chacha 0.3.1", + "target": "rand_chacha" + }, + { + "id": "rand_core 0.6.4", + "target": "rand_core" + } + ], + "selects": { + "cfg(unix)": [ + { + "id": "libc 0.2.155", + "target": "libc" + } + ] + } + }, + "edition": "2018", + "version": "0.8.5" + }, + "license": "MIT OR Apache-2.0", + "license_ids": [ + "Apache-2.0", + "MIT" + ], + "license_file": null + }, + "rand_chacha 0.3.1": { + "name": "rand_chacha", + "version": "0.3.1", + "package_url": "https://github.com/rust-random/rand", + "repository": { + "Http": { + "url": "https://static.crates.io/crates/rand_chacha/0.3.1/download", + "sha256": "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rand_chacha", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rand_chacha", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "ppv-lite86 0.2.17", + "target": "ppv_lite86" + }, + { + "id": "rand_core 0.6.4", + "target": "rand_core" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.3.1" + }, + "license": "MIT OR Apache-2.0", + "license_ids": [ + "Apache-2.0", + "MIT" + ], + "license_file": null + }, + "rand_core 0.6.4": { + "name": "rand_core", + "version": "0.6.4", + "package_url": "https://github.com/rust-random/rand", + "repository": { + "Http": { + "url": "https://static.crates.io/crates/rand_core/0.6.4/download", + "sha256": "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" + } + }, + "targets": [ + { + "Library": { + "crate_name": "rand_core", + "crate_root": "src/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "rand_core", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "crate_features": { + "common": [ + "alloc", + "getrandom", + "std" + ], + "selects": {} + }, + "deps": { + "common": [ + { + "id": "getrandom 0.2.15", + "target": "getrandom" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.6.4" + }, + "license": "MIT OR Apache-2.0", + "license_ids": [ + "Apache-2.0", + "MIT" + ], + "license_file": null + }, + "rayon 1.10.0": { "name": "rayon", - "version": "1.7.0", + "version": "1.10.0", "package_url": "https://github.com/rayon-rs/rayon", "repository": { "Http": { - "url": "https://static.crates.io/crates/rayon/1.7.0/download", - "sha256": "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b" + "url": "https://static.crates.io/crates/rayon/1.10.0/download", + "sha256": "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" } }, "targets": [ @@ -4123,18 +3275,18 @@ "deps": { "common": [ { - "id": "either 1.8.1", + "id": "either 1.12.0", "target": "either" }, { - "id": "rayon-core 1.11.0", + "id": "rayon-core 1.12.1", "target": "rayon_core" } ], "selects": {} }, "edition": "2021", - "version": "1.7.0" + "version": "1.10.0" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -4143,14 +3295,14 @@ ], "license_file": null }, - "rayon-core 1.11.0": { + "rayon-core 1.12.1": { "name": "rayon-core", - "version": "1.11.0", + "version": "1.12.1", "package_url": "https://github.com/rayon-rs/rayon", "repository": { "Http": { - "url": "https://static.crates.io/crates/rayon-core/1.11.0/download", - "sha256": "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d" + "url": "https://static.crates.io/crates/rayon-core/1.12.1/download", + "sha256": "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" } }, "targets": [ @@ -4181,30 +3333,22 @@ "deps": { "common": [ { - "id": "crossbeam-channel 0.5.7", - "target": "crossbeam_channel" - }, - { - "id": "crossbeam-deque 0.8.3", + "id": "crossbeam-deque 0.8.5", "target": "crossbeam_deque" }, { - "id": "crossbeam-utils 0.8.15", + "id": "crossbeam-utils 0.8.20", "target": "crossbeam_utils" }, { - "id": "num_cpus 1.15.0", - "target": "num_cpus" - }, - { - "id": "rayon-core 1.11.0", + "id": "rayon-core 1.12.1", "target": "build_script_build" } ], "selects": {} }, "edition": "2021", - "version": "1.11.0" + "version": "1.12.1" }, "build_script_attrs": { "data_glob": [ @@ -4270,11 +3414,11 @@ "deps": { "common": [ { - "id": "aho-corasick 1.1.2", + "id": "aho-corasick 1.1.3", "target": "aho_corasick" }, { - "id": "memchr 2.7.1", + "id": "memchr 2.7.2", "target": "memchr" }, { @@ -4282,7 +3426,7 @@ "target": "regex_automata" }, { - "id": "regex-syntax 0.8.2", + "id": "regex-syntax 0.8.3", "target": "regex_syntax" } ], @@ -4409,15 +3553,15 @@ "deps": { "common": [ { - "id": "aho-corasick 1.1.2", + "id": "aho-corasick 1.1.3", "target": "aho_corasick" }, { - "id": "memchr 2.7.1", + "id": "memchr 2.7.2", "target": "memchr" }, { - "id": "regex-syntax 0.8.2", + "id": "regex-syntax 0.8.3", "target": "regex_syntax" } ], @@ -4483,14 +3627,14 @@ ], "license_file": null }, - "regex-syntax 0.8.2": { + "regex-syntax 0.8.3": { "name": "regex-syntax", - "version": "0.8.2", + "version": "0.8.3", "package_url": "https://github.com/rust-lang/regex/tree/master/regex-syntax", "repository": { "Http": { - "url": "https://static.crates.io/crates/regex-syntax/0.8.2/download", - "sha256": "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" + "url": "https://static.crates.io/crates/regex-syntax/0.8.3/download", + "sha256": "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" } }, "targets": [ @@ -4525,7 +3669,7 @@ "selects": {} }, "edition": "2021", - "version": "0.8.2" + "version": "0.8.3" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -4534,126 +3678,14 @@ ], "license_file": null }, - "rustix 0.37.7": { - "name": "rustix", - "version": "0.37.7", - "package_url": "https://github.com/bytecodealliance/rustix", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/rustix/0.37.7/download", - "sha256": "2aae838e49b3d63e9274e1c01833cc8139d3fec468c3b84688c628f44b1ae11d" - } - }, - "targets": [ - { - "Library": { - "crate_name": "rustix", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "rustix", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "crate_features": { - "common": [ - "default", - "io-lifetimes", - "libc", - "std", - "termios", - "use-libc-auxv" - ], - "selects": {} - }, - "deps": { - "common": [ - { - "id": "bitflags 1.3.2", - "target": "bitflags" - }, - { - "id": "io-lifetimes 1.0.10", - "target": "io_lifetimes" - }, - { - "id": "rustix 0.37.7", - "target": "build_script_build" - } - ], - "selects": { - "cfg(all(any(target_os = \"android\", target_os = \"linux\"), any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\"))))))))": [ - { - "id": "linux-raw-sys 0.3.1", - "target": "linux_raw_sys" - } - ], - "cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))": [ - { - "id": "libc 0.2.141", - "target": "libc" - }, - { - "id": "linux-raw-sys 0.3.1", - "target": "linux_raw_sys" - } - ], - "cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))))": [ - { - "id": "errno 0.3.0", - "target": "errno", - "alias": "libc_errno" - }, - { - "id": "libc 0.2.141", - "target": "libc" - } - ], - "cfg(windows)": [ - { - "id": "windows-sys 0.45.0", - "target": "windows_sys" - } - ] - } - }, - "edition": "2018", - "version": "0.37.7" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "ryu 1.0.13": { + "ryu 1.0.18": { "name": "ryu", - "version": "1.0.13", + "version": "1.0.18", "package_url": "https://github.com/dtolnay/ryu", "repository": { "Http": { - "url": "https://static.crates.io/crates/ryu/1.0.13/download", - "sha256": "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" + "url": "https://static.crates.io/crates/ryu/1.0.18/download", + "sha256": "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" } }, "targets": [ @@ -4673,7 +3705,7 @@ "**" ], "edition": "2018", - "version": "1.0.13" + "version": "1.0.18" }, "license": "Apache-2.0 OR BSL-1.0", "license_ids": [ @@ -4682,109 +3714,14 @@ ], "license_file": null }, - "scopeguard 1.1.0": { - "name": "scopeguard", - "version": "1.1.0", - "package_url": "https://github.com/bluss/scopeguard", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/scopeguard/1.1.0/download", - "sha256": "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" - } - }, - "targets": [ - { - "Library": { - "crate_name": "scopeguard", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "scopeguard", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "edition": "2015", - "version": "1.1.0" - }, - "license": "MIT/Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "scratch 1.0.5": { - "name": "scratch", - "version": "1.0.5", - "package_url": "https://github.com/dtolnay/scratch", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/scratch/1.0.5/download", - "sha256": "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1" - } - }, - "targets": [ - { - "Library": { - "crate_name": "scratch", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "scratch", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "scratch 1.0.5", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2015", - "version": "1.0.5" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "serde 1.0.159": { + "serde 1.0.202": { "name": "serde", - "version": "1.0.159", + "version": "1.0.202", "package_url": "https://github.com/serde-rs/serde", "repository": { "Http": { - "url": "https://static.crates.io/crates/serde/1.0.159/download", - "sha256": "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065" + "url": "https://static.crates.io/crates/serde/1.0.202/download", + "sha256": "226b61a0d411b2ba5ff6d7f73a476ac4f8bb900373459cd00fab8512828ba395" } }, "targets": [ @@ -4824,23 +3761,23 @@ "deps": { "common": [ { - "id": "serde 1.0.159", + "id": "serde 1.0.202", "target": "build_script_build" } ], "selects": {} }, - "edition": "2015", + "edition": "2018", "proc_macro_deps": { "common": [ { - "id": "serde_derive 1.0.159", + "id": "serde_derive 1.0.202", "target": "serde_derive" } ], "selects": {} }, - "version": "1.0.159" + "version": "1.0.202" }, "build_script_attrs": { "data_glob": [ @@ -4854,14 +3791,14 @@ ], "license_file": null }, - "serde_derive 1.0.159": { + "serde_derive 1.0.202": { "name": "serde_derive", - "version": "1.0.159", + "version": "1.0.202", "package_url": "https://github.com/serde-rs/serde", "repository": { "Http": { - "url": "https://static.crates.io/crates/serde_derive/1.0.159/download", - "sha256": "4c614d17805b093df4b147b51339e7e44bf05ef59fba1e45d83500bcfb4d8585" + "url": "https://static.crates.io/crates/serde_derive/1.0.202/download", + "sha256": "6048858004bcff69094cd972ed40a32500f153bd3be9f716b2eed2e8217c4838" } }, "targets": [ @@ -4873,15 +3810,6 @@ "**/*.rs" ] } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } } ], "library_target_name": "serde_derive", @@ -4898,31 +3826,22 @@ "deps": { "common": [ { - "id": "proc-macro2 1.0.56", + "id": "proc-macro2 1.0.83", "target": "proc_macro2" }, { - "id": "quote 1.0.26", + "id": "quote 1.0.36", "target": "quote" }, { - "id": "serde_derive 1.0.159", - "target": "build_script_build" - }, - { - "id": "syn 2.0.13", + "id": "syn 2.0.66", "target": "syn" } ], "selects": {} }, "edition": "2015", - "version": "1.0.159" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] + "version": "1.0.202" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -4931,14 +3850,14 @@ ], "license_file": null }, - "serde_json 1.0.95": { + "serde_json 1.0.117": { "name": "serde_json", - "version": "1.0.95", + "version": "1.0.117", "package_url": "https://github.com/serde-rs/json", "repository": { "Http": { - "url": "https://static.crates.io/crates/serde_json/1.0.95/download", - "sha256": "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744" + "url": "https://static.crates.io/crates/serde_json/1.0.117/download", + "sha256": "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" } }, "targets": [ @@ -4976,26 +3895,26 @@ "deps": { "common": [ { - "id": "itoa 1.0.6", + "id": "itoa 1.0.11", "target": "itoa" }, { - "id": "ryu 1.0.13", + "id": "ryu 1.0.18", "target": "ryu" }, { - "id": "serde 1.0.159", + "id": "serde 1.0.202", "target": "serde" }, { - "id": "serde_json 1.0.95", + "id": "serde_json 1.0.117", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "1.0.95" + "edition": "2021", + "version": "1.0.117" }, "build_script_attrs": { "data_glob": [ @@ -5009,14 +3928,14 @@ ], "license_file": null }, - "sharded-slab 0.1.4": { + "sharded-slab 0.1.7": { "name": "sharded-slab", - "version": "0.1.4", + "version": "0.1.7", "package_url": "https://github.com/hawkw/sharded-slab", "repository": { "Http": { - "url": "https://static.crates.io/crates/sharded-slab/0.1.4/download", - "sha256": "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" + "url": "https://static.crates.io/crates/sharded-slab/0.1.7/download", + "sha256": "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" } }, "targets": [ @@ -5045,7 +3964,7 @@ "selects": {} }, "edition": "2018", - "version": "0.1.4" + "version": "0.1.7" }, "license": "MIT", "license_ids": [ @@ -5053,14 +3972,14 @@ ], "license_file": null }, - "smallvec 1.10.0": { + "smallvec 1.13.2": { "name": "smallvec", - "version": "1.10.0", + "version": "1.13.2", "package_url": "https://github.com/servo/rust-smallvec", "repository": { "Http": { - "url": "https://static.crates.io/crates/smallvec/1.10.0/download", - "sha256": "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" + "url": "https://static.crates.io/crates/smallvec/1.13.2/download", + "sha256": "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" } }, "targets": [ @@ -5080,7 +3999,7 @@ "**" ], "edition": "2018", - "version": "1.10.0" + "version": "1.13.2" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -5089,14 +4008,14 @@ ], "license_file": null }, - "strsim 0.10.0": { + "strsim 0.11.1": { "name": "strsim", - "version": "0.10.0", - "package_url": "https://github.com/dguo/strsim-rs", + "version": "0.11.1", + "package_url": "https://github.com/rapidfuzz/strsim-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/strsim/0.10.0/download", - "sha256": "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + "url": "https://static.crates.io/crates/strsim/0.11.1/download", + "sha256": "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" } }, "targets": [ @@ -5116,7 +4035,7 @@ "**" ], "edition": "2015", - "version": "0.10.0" + "version": "0.11.1" }, "license": "MIT", "license_ids": [ @@ -5124,104 +4043,14 @@ ], "license_file": null }, - "syn 1.0.109": { + "syn 2.0.66": { "name": "syn", - "version": "1.0.109", + "version": "2.0.66", "package_url": "https://github.com/dtolnay/syn", "repository": { "Http": { - "url": "https://static.crates.io/crates/syn/1.0.109/download", - "sha256": "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" - } - }, - "targets": [ - { - "Library": { - "crate_name": "syn", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "syn", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "crate_features": { - "common": [ - "clone-impls", - "extra-traits", - "full", - "parsing", - "printing", - "proc-macro", - "quote", - "visit", - "visit-mut" - ], - "selects": { - "wasm32-unknown-unknown": [ - "default", - "derive" - ] - } - }, - "deps": { - "common": [ - { - "id": "proc-macro2 1.0.56", - "target": "proc_macro2" - }, - { - "id": "quote 1.0.26", - "target": "quote" - }, - { - "id": "syn 1.0.109", - "target": "build_script_build" - }, - { - "id": "unicode-ident 1.0.8", - "target": "unicode_ident" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "1.0.109" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "syn 2.0.13": { - "name": "syn", - "version": "2.0.13", - "package_url": "https://github.com/dtolnay/syn", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/syn/2.0.13/download", - "sha256": "4c9da457c5285ac1f936ebd076af6dac17a61cfe7826f2076b4d015cf47bc8ec" + "url": "https://static.crates.io/crates/syn/2.0.66/download", + "sha256": "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" } }, "targets": [ @@ -5245,33 +4074,38 @@ "clone-impls", "default", "derive", + "extra-traits", "full", "parsing", "printing", "proc-macro", - "quote" + "visit-mut" ], - "selects": {} + "selects": { + "wasm32-unknown-unknown": [ + "visit" + ] + } }, "deps": { "common": [ { - "id": "proc-macro2 1.0.56", + "id": "proc-macro2 1.0.83", "target": "proc_macro2" }, { - "id": "quote 1.0.26", + "id": "quote 1.0.36", "target": "quote" }, { - "id": "unicode-ident 1.0.8", + "id": "unicode-ident 1.0.12", "target": "unicode_ident" } ], "selects": {} }, "edition": "2021", - "version": "2.0.13" + "version": "2.0.66" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -5280,61 +4114,14 @@ ], "license_file": null }, - "termcolor 1.2.0": { - "name": "termcolor", - "version": "1.2.0", - "package_url": "https://github.com/BurntSushi/termcolor", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/termcolor/1.2.0/download", - "sha256": "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" - } - }, - "targets": [ - { - "Library": { - "crate_name": "termcolor", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "termcolor", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [], - "selects": { - "cfg(windows)": [ - { - "id": "winapi-util 0.1.5", - "target": "winapi_util" - } - ] - } - }, - "edition": "2018", - "version": "1.2.0" - }, - "license": "Unlicense OR MIT", - "license_ids": [ - "MIT", - "Unlicense" - ], - "license_file": null - }, - "thread_local 1.1.7": { + "thread_local 1.1.8": { "name": "thread_local", - "version": "1.1.7", + "version": "1.1.8", "package_url": "https://github.com/Amanieu/thread_local-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/thread_local/1.1.7/download", - "sha256": "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" + "url": "https://static.crates.io/crates/thread_local/1.1.8/download", + "sha256": "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" } }, "targets": [ @@ -5360,14 +4147,14 @@ "target": "cfg_if" }, { - "id": "once_cell 1.17.1", + "id": "once_cell 1.19.0", "target": "once_cell" } ], "selects": {} }, "edition": "2021", - "version": "1.1.7" + "version": "1.1.8" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -5376,72 +4163,14 @@ ], "license_file": null }, - "time 0.1.45": { - "name": "time", - "version": "0.1.45", - "package_url": "https://github.com/time-rs/time", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/time/0.1.45/download", - "sha256": "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a" - } - }, - "targets": [ - { - "Library": { - "crate_name": "time", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "time", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "libc 0.2.141", - "target": "libc" - } - ], - "selects": { - "cfg(target_os = \"wasi\")": [ - { - "id": "wasi 0.10.0+wasi-snapshot-preview1", - "target": "wasi" - } - ], - "cfg(windows)": [ - { - "id": "winapi 0.3.9", - "target": "winapi" - } - ] - } - }, - "edition": "2015", - "version": "0.1.45" - }, - "license": "MIT/Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "tracing 0.1.37": { + "tracing 0.1.40": { "name": "tracing", - "version": "0.1.37", + "version": "0.1.40", "package_url": "https://github.com/tokio-rs/tracing", "repository": { "Http": { - "url": "https://static.crates.io/crates/tracing/0.1.37/download", - "sha256": "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" + "url": "https://static.crates.io/crates/tracing/0.1.40/download", + "sha256": "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" } }, "targets": [ @@ -5472,15 +4201,11 @@ "deps": { "common": [ { - "id": "cfg-if 1.0.0", - "target": "cfg_if" - }, - { - "id": "pin-project-lite 0.2.9", + "id": "pin-project-lite 0.2.14", "target": "pin_project_lite" }, { - "id": "tracing-core 0.1.30", + "id": "tracing-core 0.1.32", "target": "tracing_core" } ], @@ -5490,13 +4215,13 @@ "proc_macro_deps": { "common": [ { - "id": "tracing-attributes 0.1.23", + "id": "tracing-attributes 0.1.27", "target": "tracing_attributes" } ], "selects": {} }, - "version": "0.1.37" + "version": "0.1.40" }, "license": "MIT", "license_ids": [ @@ -5504,14 +4229,14 @@ ], "license_file": null }, - "tracing-attributes 0.1.23": { + "tracing-attributes 0.1.27": { "name": "tracing-attributes", - "version": "0.1.23", + "version": "0.1.27", "package_url": "https://github.com/tokio-rs/tracing", "repository": { "Http": { - "url": "https://static.crates.io/crates/tracing-attributes/0.1.23/download", - "sha256": "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" + "url": "https://static.crates.io/crates/tracing-attributes/0.1.27/download", + "sha256": "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" } }, "targets": [ @@ -5533,22 +4258,22 @@ "deps": { "common": [ { - "id": "proc-macro2 1.0.56", + "id": "proc-macro2 1.0.83", "target": "proc_macro2" }, { - "id": "quote 1.0.26", + "id": "quote 1.0.36", "target": "quote" }, { - "id": "syn 1.0.109", + "id": "syn 2.0.66", "target": "syn" } ], "selects": {} }, "edition": "2018", - "version": "0.1.23" + "version": "0.1.27" }, "license": "MIT", "license_ids": [ @@ -5556,14 +4281,14 @@ ], "license_file": null }, - "tracing-core 0.1.30": { + "tracing-core 0.1.32": { "name": "tracing-core", - "version": "0.1.30", + "version": "0.1.32", "package_url": "https://github.com/tokio-rs/tracing", "repository": { "Http": { - "url": "https://static.crates.io/crates/tracing-core/0.1.30/download", - "sha256": "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" + "url": "https://static.crates.io/crates/tracing-core/0.1.32/download", + "sha256": "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" } }, "targets": [ @@ -5593,7 +4318,7 @@ "deps": { "common": [ { - "id": "once_cell 1.17.1", + "id": "once_cell 1.19.0", "target": "once_cell" } ], @@ -5607,7 +4332,7 @@ } }, "edition": "2018", - "version": "0.1.30" + "version": "0.1.32" }, "license": "MIT", "license_ids": [ @@ -5615,14 +4340,14 @@ ], "license_file": null }, - "tracing-log 0.1.3": { + "tracing-log 0.2.0": { "name": "tracing-log", - "version": "0.1.3", + "version": "0.2.0", "package_url": "https://github.com/tokio-rs/tracing", "repository": { "Http": { - "url": "https://static.crates.io/crates/tracing-log/0.1.3/download", - "sha256": "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" + "url": "https://static.crates.io/crates/tracing-log/0.2.0/download", + "sha256": "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" } }, "targets": [ @@ -5651,22 +4376,22 @@ "deps": { "common": [ { - "id": "lazy_static 1.4.0", - "target": "lazy_static" - }, - { - "id": "log 0.4.20", + "id": "log 0.4.21", "target": "log" }, { - "id": "tracing-core 0.1.30", + "id": "once_cell 1.19.0", + "target": "once_cell" + }, + { + "id": "tracing-core 0.1.32", "target": "tracing_core" } ], "selects": {} }, "edition": "2018", - "version": "0.1.3" + "version": "0.2.0" }, "license": "MIT", "license_ids": [ @@ -5674,14 +4399,14 @@ ], "license_file": null }, - "tracing-subscriber 0.3.16": { + "tracing-subscriber 0.3.18": { "name": "tracing-subscriber", - "version": "0.3.16", + "version": "0.3.18", "package_url": "https://github.com/tokio-rs/tracing", "repository": { "Http": { - "url": "https://static.crates.io/crates/tracing-subscriber/0.3.16/download", - "sha256": "a6176eae26dd70d0c919749377897b54a9276bd7061339665dd68777926b5a70" + "url": "https://static.crates.io/crates/tracing-subscriber/0.3.18/download", + "sha256": "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" } }, "targets": [ @@ -5732,7 +4457,7 @@ "target": "nu_ansi_term" }, { - "id": "once_cell 1.17.1", + "id": "once_cell 1.19.0", "target": "once_cell" }, { @@ -5740,34 +4465,34 @@ "target": "regex" }, { - "id": "sharded-slab 0.1.4", + "id": "sharded-slab 0.1.7", "target": "sharded_slab" }, { - "id": "smallvec 1.10.0", + "id": "smallvec 1.13.2", "target": "smallvec" }, { - "id": "thread_local 1.1.7", + "id": "thread_local 1.1.8", "target": "thread_local" }, { - "id": "tracing 0.1.37", + "id": "tracing 0.1.40", "target": "tracing" }, { - "id": "tracing-core 0.1.30", + "id": "tracing-core 0.1.32", "target": "tracing_core" }, { - "id": "tracing-log 0.1.3", + "id": "tracing-log 0.2.0", "target": "tracing_log" } ], "selects": {} }, "edition": "2018", - "version": "0.3.16" + "version": "0.3.18" }, "license": "MIT", "license_ids": [ @@ -5932,6 +4657,170 @@ ], "license_file": null }, + "tree-sitter-json 0.21.0": { + "name": "tree-sitter-json", + "version": "0.21.0", + "package_url": "https://github.com/tree-sitter/tree-sitter-json", + "repository": { + "Git": { + "remote": "https://github.com/tree-sitter/tree-sitter-json", + "commitish": { + "Branch": "master" + } + } + }, + "targets": [ + { + "Library": { + "crate_name": "tree_sitter_json", + "crate_root": "bindings/rust/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "bindings/rust/build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "tree_sitter_json", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "tree-sitter 0.22.6", + "target": "tree_sitter" + }, + { + "id": "tree-sitter-json 0.21.0", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2021", + "version": "0.21.0" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "cc 1.0.98", + "target": "cc" + } + ], + "selects": {} + }, + "link_deps": { + "common": [ + { + "id": "tree-sitter 0.22.6", + "target": "tree_sitter" + } + ], + "selects": {} + } + }, + "license": "MIT", + "license_ids": [ + "MIT" + ], + "license_file": null + }, + "tree-sitter-ql 0.22.5": { + "name": "tree-sitter-ql", + "version": "0.22.5", + "package_url": "https://github.com/tree-sitter/tree-sitter-ql", + "repository": { + "Git": { + "remote": "https://github.com/tree-sitter/tree-sitter-ql", + "commitish": { + "Branch": "master" + } + } + }, + "targets": [ + { + "Library": { + "crate_name": "tree_sitter_ql", + "crate_root": "bindings/rust/lib.rs", + "srcs": [ + "**/*.rs" + ] + } + }, + { + "BuildScript": { + "crate_name": "build_script_build", + "crate_root": "bindings/rust/build.rs", + "srcs": [ + "**/*.rs" + ] + } + } + ], + "library_target_name": "tree_sitter_ql", + "common_attrs": { + "compile_data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "tree-sitter 0.22.6", + "target": "tree_sitter" + }, + { + "id": "tree-sitter-ql 0.22.5", + "target": "build_script_build" + } + ], + "selects": {} + }, + "edition": "2018", + "version": "0.22.5" + }, + "build_script_attrs": { + "data_glob": [ + "**" + ], + "deps": { + "common": [ + { + "id": "cc 1.0.98", + "target": "cc" + } + ], + "selects": {} + }, + "link_deps": { + "common": [ + { + "id": "tree-sitter 0.22.6", + "target": "tree_sitter" + } + ], + "selects": {} + } + }, + "license": "MIT", + "license_ids": [ + "MIT" + ], + "license_file": null + }, "tree-sitter-ruby 0.21.0": { "name": "tree-sitter-ruby", "version": "0.21.0", @@ -6014,14 +4903,14 @@ ], "license_file": null }, - "unicode-ident 1.0.8": { + "unicode-ident 1.0.12": { "name": "unicode-ident", - "version": "1.0.8", + "version": "1.0.12", "package_url": "https://github.com/dtolnay/unicode-ident", "repository": { "Http": { - "url": "https://static.crates.io/crates/unicode-ident/1.0.8/download", - "sha256": "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" + "url": "https://static.crates.io/crates/unicode-ident/1.0.12/download", + "sha256": "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" } }, "targets": [ @@ -6041,7 +4930,7 @@ "**" ], "edition": "2018", - "version": "1.0.8" + "version": "1.0.12" }, "license": "(MIT OR Apache-2.0) AND Unicode-DFS-2016", "license_ids": [ @@ -6051,42 +4940,6 @@ ], "license_file": null }, - "unicode-width 0.1.10": { - "name": "unicode-width", - "version": "0.1.10", - "package_url": "https://github.com/unicode-rs/unicode-width", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/unicode-width/0.1.10/download", - "sha256": "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" - } - }, - "targets": [ - { - "Library": { - "crate_name": "unicode_width", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "unicode_width", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "edition": "2015", - "version": "0.1.10" - }, - "license": "MIT/Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, "utf8parse 0.2.1": { "name": "utf8parse", "version": "0.2.1", @@ -6187,14 +5040,14 @@ ], "license_file": null }, - "wasi 0.10.0+wasi-snapshot-preview1": { + "wasi 0.11.0+wasi-snapshot-preview1": { "name": "wasi", - "version": "0.10.0+wasi-snapshot-preview1", + "version": "0.11.0+wasi-snapshot-preview1", "package_url": "https://github.com/bytecodealliance/wasi", "repository": { "Http": { - "url": "https://static.crates.io/crates/wasi/0.10.0+wasi-snapshot-preview1/download", - "sha256": "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" + "url": "https://static.crates.io/crates/wasi/0.11.0+wasi-snapshot-preview1/download", + "sha256": "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" } }, "targets": [ @@ -6213,15 +5066,8 @@ "compile_data_glob": [ "**" ], - "crate_features": { - "common": [ - "default", - "std" - ], - "selects": {} - }, "edition": "2018", - "version": "0.10.0+wasi-snapshot-preview1" + "version": "0.11.0+wasi-snapshot-preview1" }, "license": "Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT", "license_ids": [ @@ -6230,14 +5076,14 @@ ], "license_file": null }, - "wasm-bindgen 0.2.84": { + "wasm-bindgen 0.2.92": { "name": "wasm-bindgen", - "version": "0.2.84", + "version": "0.2.92", "package_url": "https://github.com/rustwasm/wasm-bindgen", "repository": { "Http": { - "url": "https://static.crates.io/crates/wasm-bindgen/0.2.84/download", - "sha256": "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" + "url": "https://static.crates.io/crates/wasm-bindgen/0.2.92/download", + "sha256": "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" } }, "targets": [ @@ -6280,7 +5126,7 @@ "target": "cfg_if" }, { - "id": "wasm-bindgen 0.2.84", + "id": "wasm-bindgen 0.2.92", "target": "build_script_build" } ], @@ -6290,34 +5136,34 @@ "proc_macro_deps": { "common": [ { - "id": "wasm-bindgen-macro 0.2.84", + "id": "wasm-bindgen-macro 0.2.92", "target": "wasm_bindgen_macro" } ], "selects": {} }, - "version": "0.2.84" + "version": "0.2.92" }, "build_script_attrs": { "data_glob": [ "**" ] }, - "license": "MIT/Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" ], "license_file": null }, - "wasm-bindgen-backend 0.2.84": { + "wasm-bindgen-backend 0.2.92": { "name": "wasm-bindgen-backend", - "version": "0.2.84", + "version": "0.2.92", "package_url": "https://github.com/rustwasm/wasm-bindgen/tree/master/crates/backend", "repository": { "Http": { - "url": "https://static.crates.io/crates/wasm-bindgen-backend/0.2.84/download", - "sha256": "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" + "url": "https://static.crates.io/crates/wasm-bindgen-backend/0.2.92/download", + "sha256": "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" } }, "targets": [ @@ -6345,54 +5191,54 @@ "deps": { "common": [ { - "id": "bumpalo 3.12.0", + "id": "bumpalo 3.16.0", "target": "bumpalo" }, { - "id": "log 0.4.20", + "id": "log 0.4.21", "target": "log" }, { - "id": "once_cell 1.17.1", + "id": "once_cell 1.19.0", "target": "once_cell" }, { - "id": "proc-macro2 1.0.56", + "id": "proc-macro2 1.0.83", "target": "proc_macro2" }, { - "id": "quote 1.0.26", + "id": "quote 1.0.36", "target": "quote" }, { - "id": "syn 1.0.109", + "id": "syn 2.0.66", "target": "syn" }, { - "id": "wasm-bindgen-shared 0.2.84", + "id": "wasm-bindgen-shared 0.2.92", "target": "wasm_bindgen_shared" } ], "selects": {} }, "edition": "2018", - "version": "0.2.84" + "version": "0.2.92" }, - "license": "MIT/Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" ], "license_file": null }, - "wasm-bindgen-macro 0.2.84": { + "wasm-bindgen-macro 0.2.92": { "name": "wasm-bindgen-macro", - "version": "0.2.84", + "version": "0.2.92", "package_url": "https://github.com/rustwasm/wasm-bindgen/tree/master/crates/macro", "repository": { "Http": { - "url": "https://static.crates.io/crates/wasm-bindgen-macro/0.2.84/download", - "sha256": "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" + "url": "https://static.crates.io/crates/wasm-bindgen-macro/0.2.92/download", + "sha256": "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" } }, "targets": [ @@ -6420,34 +5266,34 @@ "deps": { "common": [ { - "id": "quote 1.0.26", + "id": "quote 1.0.36", "target": "quote" }, { - "id": "wasm-bindgen-macro-support 0.2.84", + "id": "wasm-bindgen-macro-support 0.2.92", "target": "wasm_bindgen_macro_support" } ], "selects": {} }, "edition": "2018", - "version": "0.2.84" + "version": "0.2.92" }, - "license": "MIT/Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" ], "license_file": null }, - "wasm-bindgen-macro-support 0.2.84": { + "wasm-bindgen-macro-support 0.2.92": { "name": "wasm-bindgen-macro-support", - "version": "0.2.84", + "version": "0.2.92", "package_url": "https://github.com/rustwasm/wasm-bindgen/tree/master/crates/macro-support", "repository": { "Http": { - "url": "https://static.crates.io/crates/wasm-bindgen-macro-support/0.2.84/download", - "sha256": "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" + "url": "https://static.crates.io/crates/wasm-bindgen-macro-support/0.2.92/download", + "sha256": "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" } }, "targets": [ @@ -6475,46 +5321,46 @@ "deps": { "common": [ { - "id": "proc-macro2 1.0.56", + "id": "proc-macro2 1.0.83", "target": "proc_macro2" }, { - "id": "quote 1.0.26", + "id": "quote 1.0.36", "target": "quote" }, { - "id": "syn 1.0.109", + "id": "syn 2.0.66", "target": "syn" }, { - "id": "wasm-bindgen-backend 0.2.84", + "id": "wasm-bindgen-backend 0.2.92", "target": "wasm_bindgen_backend" }, { - "id": "wasm-bindgen-shared 0.2.84", + "id": "wasm-bindgen-shared 0.2.92", "target": "wasm_bindgen_shared" } ], "selects": {} }, "edition": "2018", - "version": "0.2.84" + "version": "0.2.92" }, - "license": "MIT/Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" ], "license_file": null }, - "wasm-bindgen-shared 0.2.84": { + "wasm-bindgen-shared 0.2.92": { "name": "wasm-bindgen-shared", - "version": "0.2.84", + "version": "0.2.92", "package_url": "https://github.com/rustwasm/wasm-bindgen/tree/master/crates/shared", "repository": { "Http": { - "url": "https://static.crates.io/crates/wasm-bindgen-shared/0.2.84/download", - "sha256": "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" + "url": "https://static.crates.io/crates/wasm-bindgen-shared/0.2.92/download", + "sha256": "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" } }, "targets": [ @@ -6545,14 +5391,14 @@ "deps": { "common": [ { - "id": "wasm-bindgen-shared 0.2.84", + "id": "wasm-bindgen-shared 0.2.92", "target": "build_script_build" } ], "selects": {} }, "edition": "2018", - "version": "0.2.84" + "version": "0.2.92" }, "build_script_attrs": { "data_glob": [ @@ -6560,7 +5406,7 @@ ], "links": "wasm_bindgen" }, - "license": "MIT/Apache-2.0", + "license": "MIT OR Apache-2.0", "license_ids": [ "Apache-2.0", "MIT" @@ -6608,14 +5454,7 @@ "errhandlingapi", "fileapi", "handleapi", - "minwinbase", - "minwindef", - "ntdef", - "processenv", - "profileapi", - "std", - "sysinfoapi", - "timezoneapi" + "processenv" ], "selects": {} }, @@ -6715,53 +5554,6 @@ ], "license_file": null }, - "winapi-util 0.1.5": { - "name": "winapi-util", - "version": "0.1.5", - "package_url": "https://github.com/BurntSushi/winapi-util", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/winapi-util/0.1.5/download", - "sha256": "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" - } - }, - "targets": [ - { - "Library": { - "crate_name": "winapi_util", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "winapi_util", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [], - "selects": { - "cfg(windows)": [ - { - "id": "winapi 0.3.9", - "target": "winapi" - } - ] - } - }, - "edition": "2018", - "version": "0.1.5" - }, - "license": "Unlicense/MIT", - "license_ids": [ - "MIT", - "Unlicense" - ], - "license_file": null - }, "winapi-x86_64-pc-windows-gnu 0.4.0": { "name": "winapi-x86_64-pc-windows-gnu", "version": "0.4.0", @@ -6821,20 +5613,20 @@ ], "license_file": null }, - "windows 0.48.0": { - "name": "windows", - "version": "0.48.0", + "windows-core 0.52.0": { + "name": "windows-core", + "version": "0.52.0", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows/0.48.0/download", - "sha256": "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" + "url": "https://static.crates.io/crates/windows-core/0.52.0/download", + "sha256": "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" } }, "targets": [ { "Library": { - "crate_name": "windows", + "crate_name": "windows_core", "crate_root": "src/lib.rs", "srcs": [ "**/*.rs" @@ -6842,7 +5634,7 @@ } } ], - "library_target_name": "windows", + "library_target_name": "windows_core", "common_attrs": { "compile_data_glob": [ "**" @@ -6850,14 +5642,14 @@ "deps": { "common": [ { - "id": "windows-targets 0.48.0", + "id": "windows-targets 0.52.5", "target": "windows_targets" } ], "selects": {} }, - "edition": "2018", - "version": "0.48.0" + "edition": "2021", + "version": "0.52.0" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -6866,14 +5658,14 @@ ], "license_file": null }, - "windows-sys 0.45.0": { + "windows-sys 0.52.0": { "name": "windows-sys", - "version": "0.45.0", + "version": "0.52.0", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows-sys/0.45.0/download", - "sha256": "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" + "url": "https://static.crates.io/crates/windows-sys/0.52.0/download", + "sha256": "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" } }, "targets": [ @@ -6896,88 +5688,23 @@ "common": [ "Win32", "Win32_Foundation", - "Win32_Storage", - "Win32_Storage_FileSystem", "Win32_System", "Win32_System_Console", "default" ], "selects": {} }, - "deps": { - "common": [], - "selects": { - "cfg(not(windows_raw_dylib))": [ - { - "id": "windows-targets 0.42.2", - "target": "windows_targets" - } - ] - } - }, - "edition": "2018", - "version": "0.45.0" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "windows-sys 0.48.0": { - "name": "windows-sys", - "version": "0.48.0", - "package_url": "https://github.com/microsoft/windows-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/windows-sys/0.48.0/download", - "sha256": "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" - } - }, - "targets": [ - { - "Library": { - "crate_name": "windows_sys", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "windows_sys", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "crate_features": { - "common": [ - "Win32", - "Win32_Foundation", - "Win32_Networking", - "Win32_Networking_WinSock", - "Win32_Security", - "Win32_Storage", - "Win32_Storage_FileSystem", - "Win32_System", - "Win32_System_IO", - "Win32_System_Threading", - "default" - ], - "selects": {} - }, "deps": { "common": [ { - "id": "windows-targets 0.48.0", + "id": "windows-targets 0.52.5", "target": "windows_targets" } ], "selects": {} }, - "edition": "2018", - "version": "0.48.0" + "edition": "2021", + "version": "0.52.0" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -6986,14 +5713,14 @@ ], "license_file": null }, - "windows-targets 0.42.2": { + "windows-targets 0.52.5": { "name": "windows-targets", - "version": "0.42.2", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows-targets/0.42.2/download", - "sha256": "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" + "url": "https://static.crates.io/crates/windows-targets/0.52.5/download", + "sha256": "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" } }, "targets": [ @@ -7017,163 +5744,56 @@ "selects": { "aarch64-pc-windows-gnullvm": [ { - "id": "windows_aarch64_gnullvm 0.42.2", + "id": "windows_aarch64_gnullvm 0.52.5", "target": "windows_aarch64_gnullvm" } ], - "aarch64-pc-windows-msvc": [ + "cfg(all(any(target_arch = \"x86_64\", target_arch = \"arm64ec\"), target_env = \"msvc\", not(windows_raw_dylib)))": [ { - "id": "windows_aarch64_msvc 0.42.2", - "target": "windows_aarch64_msvc" - } - ], - "aarch64-uwp-windows-msvc": [ - { - "id": "windows_aarch64_msvc 0.42.2", - "target": "windows_aarch64_msvc" - } - ], - "i686-pc-windows-gnu": [ - { - "id": "windows_i686_gnu 0.42.2", - "target": "windows_i686_gnu" - } - ], - "i686-pc-windows-msvc": [ - { - "id": "windows_i686_msvc 0.42.2", - "target": "windows_i686_msvc" - } - ], - "i686-uwp-windows-gnu": [ - { - "id": "windows_i686_gnu 0.42.2", - "target": "windows_i686_gnu" - } - ], - "i686-uwp-windows-msvc": [ - { - "id": "windows_i686_msvc 0.42.2", - "target": "windows_i686_msvc" - } - ], - "x86_64-pc-windows-gnu": [ - { - "id": "windows_x86_64_gnu 0.42.2", - "target": "windows_x86_64_gnu" - } - ], - "x86_64-pc-windows-gnullvm": [ - { - "id": "windows_x86_64_gnullvm 0.42.2", - "target": "windows_x86_64_gnullvm" - } - ], - "x86_64-pc-windows-msvc": [ - { - "id": "windows_x86_64_msvc 0.42.2", + "id": "windows_x86_64_msvc 0.52.5", "target": "windows_x86_64_msvc" } ], - "x86_64-uwp-windows-gnu": [ - { - "id": "windows_x86_64_gnu 0.42.2", - "target": "windows_x86_64_gnu" - } - ], - "x86_64-uwp-windows-msvc": [ - { - "id": "windows_x86_64_msvc 0.42.2", - "target": "windows_x86_64_msvc" - } - ] - } - }, - "edition": "2018", - "version": "0.42.2" - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "windows-targets 0.48.0": { - "name": "windows-targets", - "version": "0.48.0", - "package_url": "https://github.com/microsoft/windows-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/windows-targets/0.48.0/download", - "sha256": "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" - } - }, - "targets": [ - { - "Library": { - "crate_name": "windows_targets", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "windows_targets", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [], - "selects": { - "cfg(all(target_arch = \"aarch64\", target_env = \"gnu\", target_abi = \"llvm\", not(windows_raw_dylib)))": [ - { - "id": "windows_aarch64_gnullvm 0.48.0", - "target": "windows_aarch64_gnullvm" - } - ], "cfg(all(target_arch = \"aarch64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ { - "id": "windows_aarch64_msvc 0.48.0", + "id": "windows_aarch64_msvc 0.52.5", "target": "windows_aarch64_msvc" } ], - "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(windows_raw_dylib)))": [ + "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))": [ { - "id": "windows_i686_gnu 0.48.0", + "id": "windows_i686_gnu 0.52.5", "target": "windows_i686_gnu" } ], "cfg(all(target_arch = \"x86\", target_env = \"msvc\", not(windows_raw_dylib)))": [ { - "id": "windows_i686_msvc 0.48.0", + "id": "windows_i686_msvc 0.52.5", "target": "windows_i686_msvc" } ], "cfg(all(target_arch = \"x86_64\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))": [ { - "id": "windows_x86_64_gnu 0.48.0", + "id": "windows_x86_64_gnu 0.52.5", "target": "windows_x86_64_gnu" } ], - "cfg(all(target_arch = \"x86_64\", target_env = \"gnu\", target_abi = \"llvm\", not(windows_raw_dylib)))": [ + "i686-pc-windows-gnullvm": [ { - "id": "windows_x86_64_gnullvm 0.48.0", - "target": "windows_x86_64_gnullvm" + "id": "windows_i686_gnullvm 0.52.5", + "target": "windows_i686_gnullvm" } ], - "cfg(all(target_arch = \"x86_64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ + "x86_64-pc-windows-gnullvm": [ { - "id": "windows_x86_64_msvc 0.48.0", - "target": "windows_x86_64_msvc" + "id": "windows_x86_64_gnullvm 0.52.5", + "target": "windows_x86_64_gnullvm" } ] } }, - "edition": "2018", - "version": "0.48.0" + "edition": "2021", + "version": "0.52.5" }, "license": "MIT OR Apache-2.0", "license_ids": [ @@ -7182,14 +5802,14 @@ ], "license_file": null }, - "windows_aarch64_gnullvm 0.42.2": { + "windows_aarch64_gnullvm 0.52.5": { "name": "windows_aarch64_gnullvm", - "version": "0.42.2", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows_aarch64_gnullvm/0.42.2/download", - "sha256": "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + "url": "https://static.crates.io/crates/windows_aarch64_gnullvm/0.52.5/download", + "sha256": "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" } }, "targets": [ @@ -7220,14 +5840,14 @@ "deps": { "common": [ { - "id": "windows_aarch64_gnullvm 0.42.2", + "id": "windows_aarch64_gnullvm 0.52.5", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.42.2" + "edition": "2021", + "version": "0.52.5" }, "build_script_attrs": { "data_glob": [ @@ -7241,73 +5861,14 @@ ], "license_file": null }, - "windows_aarch64_gnullvm 0.48.0": { - "name": "windows_aarch64_gnullvm", - "version": "0.48.0", - "package_url": "https://github.com/microsoft/windows-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/windows_aarch64_gnullvm/0.48.0/download", - "sha256": "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" - } - }, - "targets": [ - { - "Library": { - "crate_name": "windows_aarch64_gnullvm", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "windows_aarch64_gnullvm", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "windows_aarch64_gnullvm 0.48.0", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.48.0" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "windows_aarch64_msvc 0.42.2": { + "windows_aarch64_msvc 0.52.5": { "name": "windows_aarch64_msvc", - "version": "0.42.2", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows_aarch64_msvc/0.42.2/download", - "sha256": "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + "url": "https://static.crates.io/crates/windows_aarch64_msvc/0.52.5/download", + "sha256": "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" } }, "targets": [ @@ -7338,14 +5899,14 @@ "deps": { "common": [ { - "id": "windows_aarch64_msvc 0.42.2", + "id": "windows_aarch64_msvc 0.52.5", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.42.2" + "edition": "2021", + "version": "0.52.5" }, "build_script_attrs": { "data_glob": [ @@ -7359,73 +5920,14 @@ ], "license_file": null }, - "windows_aarch64_msvc 0.48.0": { - "name": "windows_aarch64_msvc", - "version": "0.48.0", - "package_url": "https://github.com/microsoft/windows-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/windows_aarch64_msvc/0.48.0/download", - "sha256": "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" - } - }, - "targets": [ - { - "Library": { - "crate_name": "windows_aarch64_msvc", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "windows_aarch64_msvc", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "windows_aarch64_msvc 0.48.0", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.48.0" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "windows_i686_gnu 0.42.2": { + "windows_i686_gnu 0.52.5": { "name": "windows_i686_gnu", - "version": "0.42.2", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows_i686_gnu/0.42.2/download", - "sha256": "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + "url": "https://static.crates.io/crates/windows_i686_gnu/0.52.5/download", + "sha256": "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" } }, "targets": [ @@ -7456,14 +5958,14 @@ "deps": { "common": [ { - "id": "windows_i686_gnu 0.42.2", + "id": "windows_i686_gnu 0.52.5", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.42.2" + "edition": "2021", + "version": "0.52.5" }, "build_script_attrs": { "data_glob": [ @@ -7477,20 +5979,20 @@ ], "license_file": null }, - "windows_i686_gnu 0.48.0": { - "name": "windows_i686_gnu", - "version": "0.48.0", + "windows_i686_gnullvm 0.52.5": { + "name": "windows_i686_gnullvm", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows_i686_gnu/0.48.0/download", - "sha256": "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" + "url": "https://static.crates.io/crates/windows_i686_gnullvm/0.52.5/download", + "sha256": "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" } }, "targets": [ { "Library": { - "crate_name": "windows_i686_gnu", + "crate_name": "windows_i686_gnullvm", "crate_root": "src/lib.rs", "srcs": [ "**/*.rs" @@ -7507,7 +6009,7 @@ } } ], - "library_target_name": "windows_i686_gnu", + "library_target_name": "windows_i686_gnullvm", "common_attrs": { "compile_data_glob": [ "**" @@ -7515,14 +6017,14 @@ "deps": { "common": [ { - "id": "windows_i686_gnu 0.48.0", + "id": "windows_i686_gnullvm 0.52.5", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.48.0" + "edition": "2021", + "version": "0.52.5" }, "build_script_attrs": { "data_glob": [ @@ -7536,14 +6038,14 @@ ], "license_file": null }, - "windows_i686_msvc 0.42.2": { + "windows_i686_msvc 0.52.5": { "name": "windows_i686_msvc", - "version": "0.42.2", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows_i686_msvc/0.42.2/download", - "sha256": "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + "url": "https://static.crates.io/crates/windows_i686_msvc/0.52.5/download", + "sha256": "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" } }, "targets": [ @@ -7574,14 +6076,14 @@ "deps": { "common": [ { - "id": "windows_i686_msvc 0.42.2", + "id": "windows_i686_msvc 0.52.5", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.42.2" + "edition": "2021", + "version": "0.52.5" }, "build_script_attrs": { "data_glob": [ @@ -7595,73 +6097,14 @@ ], "license_file": null }, - "windows_i686_msvc 0.48.0": { - "name": "windows_i686_msvc", - "version": "0.48.0", - "package_url": "https://github.com/microsoft/windows-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/windows_i686_msvc/0.48.0/download", - "sha256": "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" - } - }, - "targets": [ - { - "Library": { - "crate_name": "windows_i686_msvc", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "windows_i686_msvc", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "windows_i686_msvc 0.48.0", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.48.0" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "windows_x86_64_gnu 0.42.2": { + "windows_x86_64_gnu 0.52.5": { "name": "windows_x86_64_gnu", - "version": "0.42.2", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows_x86_64_gnu/0.42.2/download", - "sha256": "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + "url": "https://static.crates.io/crates/windows_x86_64_gnu/0.52.5/download", + "sha256": "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" } }, "targets": [ @@ -7692,14 +6135,14 @@ "deps": { "common": [ { - "id": "windows_x86_64_gnu 0.42.2", + "id": "windows_x86_64_gnu 0.52.5", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.42.2" + "edition": "2021", + "version": "0.52.5" }, "build_script_attrs": { "data_glob": [ @@ -7713,73 +6156,14 @@ ], "license_file": null }, - "windows_x86_64_gnu 0.48.0": { - "name": "windows_x86_64_gnu", - "version": "0.48.0", - "package_url": "https://github.com/microsoft/windows-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/windows_x86_64_gnu/0.48.0/download", - "sha256": "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" - } - }, - "targets": [ - { - "Library": { - "crate_name": "windows_x86_64_gnu", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "windows_x86_64_gnu", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "windows_x86_64_gnu 0.48.0", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.48.0" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "windows_x86_64_gnullvm 0.42.2": { + "windows_x86_64_gnullvm 0.52.5": { "name": "windows_x86_64_gnullvm", - "version": "0.42.2", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows_x86_64_gnullvm/0.42.2/download", - "sha256": "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + "url": "https://static.crates.io/crates/windows_x86_64_gnullvm/0.52.5/download", + "sha256": "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" } }, "targets": [ @@ -7810,14 +6194,14 @@ "deps": { "common": [ { - "id": "windows_x86_64_gnullvm 0.42.2", + "id": "windows_x86_64_gnullvm 0.52.5", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.42.2" + "edition": "2021", + "version": "0.52.5" }, "build_script_attrs": { "data_glob": [ @@ -7831,73 +6215,14 @@ ], "license_file": null }, - "windows_x86_64_gnullvm 0.48.0": { - "name": "windows_x86_64_gnullvm", - "version": "0.48.0", - "package_url": "https://github.com/microsoft/windows-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/windows_x86_64_gnullvm/0.48.0/download", - "sha256": "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" - } - }, - "targets": [ - { - "Library": { - "crate_name": "windows_x86_64_gnullvm", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "windows_x86_64_gnullvm", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "windows_x86_64_gnullvm 0.48.0", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.48.0" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "windows_x86_64_msvc 0.42.2": { + "windows_x86_64_msvc 0.52.5": { "name": "windows_x86_64_msvc", - "version": "0.42.2", + "version": "0.52.5", "package_url": "https://github.com/microsoft/windows-rs", "repository": { "Http": { - "url": "https://static.crates.io/crates/windows_x86_64_msvc/0.42.2/download", - "sha256": "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + "url": "https://static.crates.io/crates/windows_x86_64_msvc/0.52.5/download", + "sha256": "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" } }, "targets": [ @@ -7928,73 +6253,14 @@ "deps": { "common": [ { - "id": "windows_x86_64_msvc 0.42.2", + "id": "windows_x86_64_msvc 0.52.5", "target": "build_script_build" } ], "selects": {} }, - "edition": "2018", - "version": "0.42.2" - }, - "build_script_attrs": { - "data_glob": [ - "**" - ] - }, - "license": "MIT OR Apache-2.0", - "license_ids": [ - "Apache-2.0", - "MIT" - ], - "license_file": null - }, - "windows_x86_64_msvc 0.48.0": { - "name": "windows_x86_64_msvc", - "version": "0.48.0", - "package_url": "https://github.com/microsoft/windows-rs", - "repository": { - "Http": { - "url": "https://static.crates.io/crates/windows_x86_64_msvc/0.48.0/download", - "sha256": "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" - } - }, - "targets": [ - { - "Library": { - "crate_name": "windows_x86_64_msvc", - "crate_root": "src/lib.rs", - "srcs": [ - "**/*.rs" - ] - } - }, - { - "BuildScript": { - "crate_name": "build_script_build", - "crate_root": "build.rs", - "srcs": [ - "**/*.rs" - ] - } - } - ], - "library_target_name": "windows_x86_64_msvc", - "common_attrs": { - "compile_data_glob": [ - "**" - ], - "deps": { - "common": [ - { - "id": "windows_x86_64_msvc 0.48.0", - "target": "build_script_build" - } - ], - "selects": {} - }, - "edition": "2018", - "version": "0.48.0" + "edition": "2021", + "version": "0.52.5" }, "build_script_attrs": { "data_glob": [ @@ -8011,6 +6277,7 @@ }, "binary_crates": [], "workspace_members": { + "codeql-extractor 0.2.0": "ruby/extractor/codeql-extractor-fake-crate", "codeql-extractor-ruby 0.1.0": "ruby/extractor" }, "conditions": { @@ -8042,7 +6309,6 @@ "aarch64-unknown-nto-qnx710": [ "aarch64-unknown-nto-qnx710" ], - "aarch64-uwp-windows-msvc": [], "arm-unknown-linux-gnueabi": [ "arm-unknown-linux-gnueabi" ], @@ -8052,32 +6318,16 @@ "armv7-unknown-linux-gnueabi": [ "armv7-unknown-linux-gnueabi" ], - "cfg(all(any(target_arch = \"x86_64\", target_arch = \"aarch64\"), target_os = \"hermit\"))": [], - "cfg(all(any(target_os = \"android\", target_os = \"linux\"), any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\"))))))))": [ - "aarch64-linux-android", - "armv7-linux-androideabi", - "i686-linux-android", - "powerpc-unknown-linux-gnu", - "s390x-unknown-linux-gnu", - "x86_64-linux-android" + "cfg(all(any(target_arch = \"x86_64\", target_arch = \"arm64ec\"), target_env = \"msvc\", not(windows_raw_dylib)))": [ + "x86_64-pc-windows-msvc" ], - "cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))": [ - "aarch64-unknown-linux-gnu", - "aarch64-unknown-nixos-gnu", - "arm-unknown-linux-gnueabi", - "armv7-unknown-linux-gnueabi", - "i686-unknown-linux-gnu", - "x86_64-unknown-linux-gnu", - "x86_64-unknown-nixos-gnu" - ], - "cfg(all(target_arch = \"aarch64\", target_env = \"gnu\", target_abi = \"llvm\", not(windows_raw_dylib)))": [], "cfg(all(target_arch = \"aarch64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ "aarch64-pc-windows-msvc" ], "cfg(all(target_arch = \"wasm32\", not(any(target_os = \"emscripten\", target_os = \"wasi\"))))": [ "wasm32-unknown-unknown" ], - "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(windows_raw_dylib)))": [ + "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))": [ "i686-unknown-linux-gnu" ], "cfg(all(target_arch = \"x86\", target_env = \"msvc\", not(windows_raw_dylib)))": [ @@ -8087,39 +6337,6 @@ "x86_64-unknown-linux-gnu", "x86_64-unknown-nixos-gnu" ], - "cfg(all(target_arch = \"x86_64\", target_env = \"gnu\", target_abi = \"llvm\", not(windows_raw_dylib)))": [], - "cfg(all(target_arch = \"x86_64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ - "x86_64-pc-windows-msvc" - ], - "cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))))": [ - "aarch64-apple-darwin", - "aarch64-apple-ios", - "aarch64-apple-ios-sim", - "aarch64-fuchsia", - "aarch64-linux-android", - "aarch64-pc-windows-msvc", - "aarch64-unknown-nto-qnx710", - "armv7-linux-androideabi", - "i686-apple-darwin", - "i686-linux-android", - "i686-pc-windows-msvc", - "i686-unknown-freebsd", - "powerpc-unknown-linux-gnu", - "riscv32imc-unknown-none-elf", - "riscv64gc-unknown-none-elf", - "s390x-unknown-linux-gnu", - "thumbv7em-none-eabi", - "thumbv8m.main-none-eabi", - "wasm32-unknown-unknown", - "wasm32-wasi", - "x86_64-apple-darwin", - "x86_64-apple-ios", - "x86_64-fuchsia", - "x86_64-linux-android", - "x86_64-pc-windows-msvc", - "x86_64-unknown-freebsd", - "x86_64-unknown-none" - ], "cfg(any(target_os = \"macos\", target_os = \"ios\"))": [ "aarch64-apple-darwin", "aarch64-apple-ios", @@ -8128,38 +6345,6 @@ "x86_64-apple-darwin", "x86_64-apple-ios" ], - "cfg(not(any(windows, target_os = \"hermit\", target_os = \"unknown\")))": [ - "aarch64-apple-darwin", - "aarch64-apple-ios", - "aarch64-apple-ios-sim", - "aarch64-fuchsia", - "aarch64-linux-android", - "aarch64-unknown-linux-gnu", - "aarch64-unknown-nixos-gnu", - "aarch64-unknown-nto-qnx710", - "arm-unknown-linux-gnueabi", - "armv7-linux-androideabi", - "armv7-unknown-linux-gnueabi", - "i686-apple-darwin", - "i686-linux-android", - "i686-unknown-freebsd", - "i686-unknown-linux-gnu", - "powerpc-unknown-linux-gnu", - "riscv32imc-unknown-none-elf", - "riscv64gc-unknown-none-elf", - "s390x-unknown-linux-gnu", - "thumbv7em-none-eabi", - "thumbv8m.main-none-eabi", - "wasm32-wasi", - "x86_64-apple-darwin", - "x86_64-apple-ios", - "x86_64-fuchsia", - "x86_64-linux-android", - "x86_64-unknown-freebsd", - "x86_64-unknown-linux-gnu", - "x86_64-unknown-nixos-gnu", - "x86_64-unknown-none" - ], "cfg(not(windows))": [ "aarch64-apple-darwin", "aarch64-apple-ios", @@ -8193,42 +6378,6 @@ "x86_64-unknown-nixos-gnu", "x86_64-unknown-none" ], - "cfg(not(windows_raw_dylib))": [ - "aarch64-apple-darwin", - "aarch64-apple-ios", - "aarch64-apple-ios-sim", - "aarch64-fuchsia", - "aarch64-linux-android", - "aarch64-pc-windows-msvc", - "aarch64-unknown-linux-gnu", - "aarch64-unknown-nixos-gnu", - "aarch64-unknown-nto-qnx710", - "arm-unknown-linux-gnueabi", - "armv7-linux-androideabi", - "armv7-unknown-linux-gnueabi", - "i686-apple-darwin", - "i686-linux-android", - "i686-pc-windows-msvc", - "i686-unknown-freebsd", - "i686-unknown-linux-gnu", - "powerpc-unknown-linux-gnu", - "riscv32imc-unknown-none-elf", - "riscv64gc-unknown-none-elf", - "s390x-unknown-linux-gnu", - "thumbv7em-none-eabi", - "thumbv8m.main-none-eabi", - "wasm32-unknown-unknown", - "wasm32-wasi", - "x86_64-apple-darwin", - "x86_64-apple-ios", - "x86_64-fuchsia", - "x86_64-linux-android", - "x86_64-pc-windows-msvc", - "x86_64-unknown-freebsd", - "x86_64-unknown-linux-gnu", - "x86_64-unknown-nixos-gnu", - "x86_64-unknown-none" - ], "cfg(target_arch = \"wasm32\")": [ "wasm32-unknown-unknown", "wasm32-wasi" @@ -8239,7 +6388,6 @@ "i686-linux-android", "x86_64-linux-android" ], - "cfg(target_os = \"dragonfly\")": [], "cfg(target_os = \"haiku\")": [], "cfg(target_os = \"hermit\")": [], "cfg(target_os = \"wasi\")": [ @@ -8289,6 +6437,7 @@ "i686-linux-android" ], "i686-pc-windows-gnu": [], + "i686-pc-windows-gnullvm": [], "i686-pc-windows-msvc": [ "i686-pc-windows-msvc" ], @@ -8298,8 +6447,6 @@ "i686-unknown-linux-gnu": [ "i686-unknown-linux-gnu" ], - "i686-uwp-windows-gnu": [], - "i686-uwp-windows-msvc": [], "powerpc-unknown-linux-gnu": [ "powerpc-unknown-linux-gnu" ], @@ -8352,22 +6499,29 @@ ], "x86_64-unknown-none": [ "x86_64-unknown-none" - ], - "x86_64-uwp-windows-gnu": [], - "x86_64-uwp-windows-msvc": [] + ] }, "direct_deps": [ - "clap 4.2.1", - "codeql-extractor 0.2.0", + "chrono 0.4.38", + "clap 4.5.4", "encoding 0.2.33", + "flate2 1.0.30", + "globset 0.4.14", "lazy_static 1.4.0", - "rayon 1.7.0", + "num_cpus 1.16.0", + "rayon 1.10.0", "regex 1.10.4", - "tracing 0.1.37", - "tracing-subscriber 0.3.16", + "serde 1.0.202", + "serde_json 1.0.117", + "tracing 0.1.40", + "tracing-subscriber 0.3.18", "tree-sitter 0.22.6", "tree-sitter-embedded-template 0.21.0", "tree-sitter-ruby 0.21.0" ], - "direct_dev_deps": [] + "direct_dev_deps": [ + "rand 0.8.5", + "tree-sitter-json 0.21.0", + "tree-sitter-ql 0.22.5" + ] } diff --git a/ruby/extractor/codeql-extractor-fake-crate/BUILD.bazel b/ruby/extractor/codeql-extractor-fake-crate/BUILD.bazel new file mode 100644 index 00000000000..e69de29bb2d diff --git a/ruby/extractor/codeql-extractor-fake-crate/Cargo.toml b/ruby/extractor/codeql-extractor-fake-crate/Cargo.toml new file mode 100644 index 00000000000..d51d64a3349 --- /dev/null +++ b/ruby/extractor/codeql-extractor-fake-crate/Cargo.toml @@ -0,0 +1,28 @@ +[package] +name = "codeql-extractor" +version = "0.2.0" +edition = "2021" +authors = ["GitHub"] + +[dependencies] +flate2 = "1.0" +globset = "0.4" +tree-sitter = ">= 0.22.6" +tracing = "0.1" +tracing-subscriber = { version = "0.3.3", features = ["env-filter"] } +rayon = "1.5.0" +regex = "1.7.1" +encoding = "0.2" +lazy_static = "1.4.0" +serde = { version = "1.0", features = ["derive"] } +serde_json = "1.0" +chrono = { version = "0.4.19", features = ["serde"] } +num_cpus = "1.14.0" + +[dev-dependencies] +tree-sitter-ql = { git = "https://github.com/tree-sitter/tree-sitter-ql" } +tree-sitter-json = {git = "https://github.com/tree-sitter/tree-sitter-json" } +rand = "0.8.5" + +[patch.crates-io] +tree-sitter = {git = "https://github.com/redsun82/tree-sitter.git", rev = "1f5c1112ceaa8fc6aff61d1852690407670d2a96"} diff --git a/ruby/extractor/codeql-extractor-fake-crate/README.md b/ruby/extractor/codeql-extractor-fake-crate/README.md new file mode 100644 index 00000000000..71f7ec8974b --- /dev/null +++ b/ruby/extractor/codeql-extractor-fake-crate/README.md @@ -0,0 +1,7 @@ +We're presenting a fake crate in this workspace that ensures that the correct crate dependencies from the shared tree sitter +extractor can be parsed by Bazel (which doesn't resolve path dependencies outside of the cargo workspace unfortunately). + +The sync-identical-files script keeps this up-to-date. +For local development and IDEs, we override the path to `codeql-extractor` using the `.cargo/config.toml` mechanism. +Bazel doesn't actually do anything with path dependencies except to pull in their dependency tree, so we manually +specify the dependency from the ruby extractor to the shared extractor in `BUILD.bazel`. diff --git a/ruby/extractor/codeql-extractor-fake-crate/src/lib.rs b/ruby/extractor/codeql-extractor-fake-crate/src/lib.rs new file mode 100644 index 00000000000..8b137891791 --- /dev/null +++ b/ruby/extractor/codeql-extractor-fake-crate/src/lib.rs @@ -0,0 +1 @@ + diff --git a/ruby/extractor/rust-toolchain.toml b/ruby/extractor/rust-toolchain.toml index 1295f479382..aa02ff3d0bd 100644 --- a/ruby/extractor/rust-toolchain.toml +++ b/ruby/extractor/rust-toolchain.toml @@ -2,6 +2,6 @@ # extractor. It is set to the lowest version of Rust we want to support. [toolchain] -channel = "1.70" +channel = "1.74" profile = "minimal" components = [ "rustfmt" ] diff --git a/ruby/extractor/src/extractor.rs b/ruby/extractor/src/extractor.rs index b287d297164..c8119c1679c 100644 --- a/ruby/extractor/src/extractor.rs +++ b/ruby/extractor/src/extractor.rs @@ -25,15 +25,7 @@ pub struct Options { } pub fn run(options: Options) -> std::io::Result<()> { - tracing_subscriber::fmt() - .with_target(false) - .without_time() - .with_level(true) - .with_env_filter( - tracing_subscriber::EnvFilter::try_from_default_env() - .unwrap_or_else(|_| tracing_subscriber::EnvFilter::new("ruby_extractor=warn")), - ) - .init(); + extractor::set_tracing_level("ruby"); let diagnostics = diagnostics::DiagnosticLoggers::new("ruby"); let mut main_thread_logger = diagnostics.logger(); let num_threads = match codeql_extractor::options::num_threads() { diff --git a/ruby/extractor/src/generator.rs b/ruby/extractor/src/generator.rs index 485dbd56b59..00d878243ae 100644 --- a/ruby/extractor/src/generator.rs +++ b/ruby/extractor/src/generator.rs @@ -15,12 +15,7 @@ pub struct Options { } pub fn run(options: Options) -> std::io::Result<()> { - tracing_subscriber::fmt() - .with_target(false) - .without_time() - .with_level(true) - .with_env_filter(tracing_subscriber::EnvFilter::from_default_env()) - .init(); + codeql_extractor::extractor::set_tracing_level("ruby"); let languages = vec![ Language { diff --git a/ruby/scripts/create-extractor-pack.sh b/ruby/scripts/create-extractor-pack.sh index 15efba5350e..e601a4b2dd4 100755 --- a/ruby/scripts/create-extractor-pack.sh +++ b/ruby/scripts/create-extractor-pack.sh @@ -1,11 +1,7 @@ #!/bin/bash set -eux -CARGO=cargo if [[ "$OSTYPE" == "linux-gnu"* ]]; then platform="linux64" - if which cross; then - CARGO=cross - fi elif [[ "$OSTYPE" == "darwin"* ]]; then platform="osx64" else @@ -13,15 +9,9 @@ else exit 1 fi -(cd extractor && "$CARGO" build --release) +(cd extractor && cargo build --release) -# If building via cross, the binaries will be in extractor/target//release -# If building via cargo, the binaries will be in extractor/target/release BIN_DIR=extractor/target/release -if [[ "$CARGO" == "cross" ]]; then - BIN_DIR=extractor/target/x86_64-unknown-linux-gnu/release -fi - "$BIN_DIR/codeql-extractor-ruby" generate --dbscheme ql/lib/ruby.dbscheme --library ql/lib/codeql/ruby/ast/internal/TreeSitter.qll codeql query format -i ql/lib/codeql/ruby/ast/internal/TreeSitter.qll diff --git a/shared/tree-sitter-extractor/BUILD.bazel b/shared/tree-sitter-extractor/BUILD.bazel new file mode 100644 index 00000000000..e57a9f47ca1 --- /dev/null +++ b/shared/tree-sitter-extractor/BUILD.bazel @@ -0,0 +1,16 @@ +load("@ruby_deps//:defs.bzl", "aliases", "all_crate_deps") +load("@rules_rust//rust:defs.bzl", "rust_library") + +package(default_visibility = ["//visibility:public"]) + +rust_library( + name = "codeql-extractor", + srcs = glob([ + "src/**/*.rs", + ]), + aliases = aliases(), + compile_data = [ + "src/generator/prefix.dbscheme", + ], + deps = all_crate_deps(package_name = "ruby/extractor/codeql-extractor-fake-crate"), +) diff --git a/shared/tree-sitter-extractor/Cargo.toml b/shared/tree-sitter-extractor/Cargo.toml index 515ebcd573d..d51d64a3349 100644 --- a/shared/tree-sitter-extractor/Cargo.toml +++ b/shared/tree-sitter-extractor/Cargo.toml @@ -9,6 +9,7 @@ flate2 = "1.0" globset = "0.4" tree-sitter = ">= 0.22.6" tracing = "0.1" +tracing-subscriber = { version = "0.3.3", features = ["env-filter"] } rayon = "1.5.0" regex = "1.7.1" encoding = "0.2" diff --git a/shared/tree-sitter-extractor/rust-toolchain.toml b/shared/tree-sitter-extractor/rust-toolchain.toml index 7fe5bcb46f8..fc7eb0871cd 100644 --- a/shared/tree-sitter-extractor/rust-toolchain.toml +++ b/shared/tree-sitter-extractor/rust-toolchain.toml @@ -2,6 +2,6 @@ # extractor. It is set to the lowest version of Rust we want to support. [toolchain] -channel = "1.70" +channel = "1.74" profile = "minimal" components = [ "clippy", "rustfmt" ] \ No newline at end of file diff --git a/shared/tree-sitter-extractor/src/extractor/mod.rs b/shared/tree-sitter-extractor/src/extractor/mod.rs index 54ae50fd69e..7afe5d3a0c0 100644 --- a/shared/tree-sitter-extractor/src/extractor/mod.rs +++ b/shared/tree-sitter-extractor/src/extractor/mod.rs @@ -4,12 +4,44 @@ use crate::node_types::{self, EntryKind, Field, NodeTypeMap, Storage, TypeName}; use crate::trap; use std::collections::BTreeMap as Map; use std::collections::BTreeSet as Set; +use std::env; use std::path::Path; use tree_sitter::{Language, Node, Parser, Range, Tree}; pub mod simple; +/// Sets the tracing level based on the environment variables +/// `RUST_LOG` and `CODEQL_VERBOSITY` (prioritized in that order), +/// falling back to `warn` if neither is set. +pub fn set_tracing_level(language: &str) { + tracing_subscriber::fmt() + .with_target(false) + .without_time() + .with_level(true) + .with_env_filter( + tracing_subscriber::EnvFilter::try_from_default_env().unwrap_or_else( + |_| -> tracing_subscriber::EnvFilter { + let verbosity = env::var("CODEQL_VERBOSITY") + .map(|v| match v.to_lowercase().as_str() { + "off" | "errors" => "error", + "warnings" => "warn", + "info" | "progress" => "info", + "debug" | "progress+" => "debug", + "trace" | "progress++" | "progress+++" => "trace", + _ => "warn", + }) + .unwrap_or_else(|_| "warn"); + tracing_subscriber::EnvFilter::new(format!( + "{}_extractor={}", + language, verbosity + )) + }, + ), + ) + .init(); +} + pub fn populate_file(writer: &mut trap::Writer, absolute_path: &Path) -> trap::Label { let (file_label, fresh) = writer.global_id(&trap::full_id_for_file( &file_paths::normalize_path(absolute_path),