[INFO] crate whitenoise_runtime 0.1.1 is already in cache [INFO] testing whitenoise_runtime-0.1.1 against 1.44.0 for beta-1.45-1 [INFO] extracting crate whitenoise_runtime 0.1.1 into /workspace/builds/worker-7/source [INFO] validating manifest of crates.io crate whitenoise_runtime 0.1.1 on toolchain 1.44.0 [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate whitenoise_runtime 0.1.1 [INFO] finished tweaking crates.io crate whitenoise_runtime 0.1.1 [INFO] tweaked toml for crates.io crate whitenoise_runtime 0.1.1 written to /workspace/builds/worker-7/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 9f070def706d3ec905b606152ef2e88938dac483dc4d40f5ce98830468ed594b [INFO] running `"docker" "start" "-a" "9f070def706d3ec905b606152ef2e88938dac483dc4d40f5ce98830468ed594b"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling fixedbitset v0.1.9 [INFO] [stderr] Compiling cbindgen v0.9.1 [INFO] [stderr] Compiling multimap v0.4.0 [INFO] [stderr] Compiling gmp-mpfr-sys v1.2.3 [INFO] [stderr] Compiling random v0.12.2 [INFO] [stderr] Compiling ieee754 v0.2.6 [INFO] [stderr] Compiling num-bigint v0.2.6 [INFO] [stderr] Compiling num-rational v0.2.4 [INFO] [stderr] Compiling num-iter v0.1.40 [INFO] [stderr] Compiling build-deps v0.1.4 [INFO] [stderr] Compiling noisy_float v0.1.12 [INFO] [stderr] Compiling special v0.8.1 [INFO] [stderr] Compiling libmath v0.2.1 [INFO] [stderr] Compiling serde_json v1.0.53 [INFO] [stderr] Compiling bstr v0.2.13 [INFO] [stderr] Compiling which v2.0.1 [INFO] [stderr] Compiling ffi-support v0.3.5 [INFO] [stderr] Compiling statrs v0.12.0 [INFO] [stderr] Compiling petgraph v0.4.13 [INFO] [stderr] Compiling ndarray-stats v0.3.0 [INFO] [stderr] Compiling probability v0.17.0 [INFO] [stderr] Compiling prost-build v0.5.0 [INFO] [stderr] Compiling csv v1.1.3 [INFO] [stderr] Compiling num v0.2.1 [INFO] [stderr] Compiling prost-derive v0.5.0 [INFO] [stderr] Compiling prost v0.5.0 [INFO] [stderr] Compiling prost-types v0.5.0 [INFO] [stderr] Compiling whitenoise_validator v0.1.1 [INFO] [stderr] error: failed to run custom build command for `whitenoise_validator v0.1.1` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/target/debug/build/whitenoise_validator-b3e751f8a1fb1f54/build-script-main` (exit code: 101) [INFO] [stderr] --- stdout [INFO] [stderr] cargo:rerun-if-changed=prototypes [INFO] [stderr] cargo:rerun-if-changed=prototypes/api.proto [INFO] [stderr] cargo:rerun-if-changed=prototypes/base.proto [INFO] [stderr] cargo:rerun-if-changed=prototypes/components [INFO] [stderr] cargo:rerun-if-changed=prototypes/value.proto [INFO] [stderr] cargo:rerun-if-changed=prototypes/components [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Abs.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Add.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/And.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Bin.json_x [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Cast.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Clamp.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Count.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Covariance.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPCount.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPCovariance.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPHistogram.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPMaximum.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPMean.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPMedian.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPMinimum.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPMomentRaw.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPSum.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/DPVariance.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Digitize.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Divide.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Equal.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/ExponentialMechanism.json_x [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Filter.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/GaussianMechanism.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/GreaterThan.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Histogram.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Impute.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Index.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/KthRawSampleMoment.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/LaplaceMechanism.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/LessThan.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Literal.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Log.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Materialize.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Maximum.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Mean.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Minimum.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Modulo.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Multiply.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Negate.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Negative.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Or.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Partition.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Power.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Quantile.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Reshape.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Resize.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/RowMax.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/RowMin.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/SimpleGeometricMechanism.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Stack.json_x [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Subtract.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Sum.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/ToBool.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/ToFloat.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/ToInt.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/ToString.json [INFO] [stderr] cargo:rerun-if-changed=prototypes/components/Variance.json [INFO] [stderr] component ComponentJSON { id: "Abs", name: "abs", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Add", name: "add", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Cast", name: "cast", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data to be cast to another type.") }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Minimum allowable imputation value. Used only if casting to `i64`.") }, "true_label": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Positive class (class to be mapped to `true`) for each column. Used only if casting to `bool`.") }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Maximum allowable imputation value. Used only if casting to `i64`.") }}, options: {"atomic_type": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: None, default_python: None, description: Some("Type to which data should be cast. One of [`string`, `int`, `bool`, `float`]") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Cast data to an atomic type.") } [INFO] [stderr] component ComponentJSON { id: "Clamp", name: "clamp", arguments: {"categories": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The set of categories you want to be represented for each column of the data.") }, "data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data to be clamped.") }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Desired lower bound for each column of the data. Used only if `categories` is `None`.") }, "null_value": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The value to which elements not included in `categories` will be mapped for each column of the data. Used only if `categories` is not `None`.") }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Desired upper bound for each column of the data. Used only if `categories` is `None`.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Clamped data.") }, description: Some("Clamps data to the provided bounds.\n\nIf data are numeric, clamping maps elements outside of an interval `[lower, upper]` to the closer endpoint.\nIf data are categorical, clamping maps elements outside of the `categories` argument to the associated `null`.\nUsing clamp sets the `categories` property for the analysis with value `categories` plus `null_value` in the last position.") } [INFO] [stderr] component ComponentJSON { id: "Count", name: "count", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Returns the number of rows in the data.") } [INFO] [stderr] component ComponentJSON { id: "Covariance", name: "covariance", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("2D data array used to construct covariance matrix.") }, "left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Left data array used to calculate cross-covariance matrix. Used only if `data` not provided.") }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Right data array used to calculate cross-covariance matrix. Used only if `data` not provided.") }}, options: {"finite_sample_correction": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("true"), default_python: Some("True"), description: Some("Whether or not to use the finite sample correction (Bessel\'s correction).") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Flattened covariance or cross-covariance matrix.") }, description: Some("Calculate covariance.\n\nIf `data` argument is provided as a 2D array, calculate covariance matrix. Otherwise, `left` and `right` 1D arrays are used to calculate a cross-covariance matrix between elements of the two arrays.") } [INFO] [stderr] component ComponentJSON { id: "Digitize", name: "digitize", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data to be binned.") }, "edges": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Values representing the edges of bins.") }, "inclusive_left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: Some("True"), description: Some("Whether or not the left edge of the bin is inclusive, i.e. the bins are of the form [lower, upper).") }, "null_value": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Value to which to map if there is no valid bin (e.g. if the element falls outside the bin range). The null value is the final category.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Maps data to bins.\n\nBins will be of the form [lower, upper) or (lower, upper]. The null value is the final category.") } [INFO] [stderr] component ComponentJSON { id: "Divide", name: "divide", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "DPCount", name: "dp_count", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: Some("0"), description: Some("Estimated minimum possible size of the data.") }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Estimated maximum possible size of the data.") }}, options: {"enforce_constant_time": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("false"), default_python: Some("False"), description: Some("Whether or not to require Geometric mechanism to run in constant time.") }, "mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"SimpleGeometric\")"), default_python: Some("\"SimpleGeometric\""), description: Some("Privatizing mechanism to use. One of [`SimpleGeometric`, `Laplace`, `Gaussian`]") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Differentially private row count.") }, description: Some("Returns a differentially private row count.") } [INFO] [stderr] component ComponentJSON { id: "DPCovariance", name: "dp_covariance", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("2D data array used to construct covariance matrix.") }, "left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Left data array used to calculate cross-covariance matrix. Used only if `data` not provided.") }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Right data array used to calculate cross-covariance matrix. Used only if `data` not provided.") }}, options: {"finite_sample_correction": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("true"), default_python: Some("True"), description: Some("Whether or not to use the finite sample correction (Bessel\'s correction).") }, "mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"Laplace\")"), default_python: Some("\"Laplace\""), description: Some("Privatizing mechanism to use. One of [`Laplace`, `Gaussian`]") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Flattened covariance or cross-covariance matrix.") }, description: Some("Calculate differentially private covariance.\n\nIf `data` argument is provided as a 2D array, calculate covariance matrix. Otherwise, `left` and `right` 1D arrays are used to calculate a cross-covariance matrix between elements of the two arrays.") } [INFO] [stderr] component ComponentJSON { id: "DPHistogram", name: "dp_histogram", arguments: {"categories": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Set of categories in data. Used only if data are of `categorical` nature.") }, "data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "edges": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Set of edges to bin continuous-valued data. Used only if data are of `continuous` nature.") }, "inclusive_left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: Some("True"), description: Some("Whether or not the left edge of the bin is inclusive. If `true` bins are of the form [lower, upper). Otherwise, bins are of the form (lower, upper]. Used only if data are of `continuous` nature.") }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: Some("0"), description: Some("Estimated minimum possible size of bin counts.") }, "null_value": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The value to which elements not included in `categories` will be mapped for each column of the data. Used only if `categories` is not `None`. The null value is the final category- counts for the null category are at the end of the vector of counts.") }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Estimated maximum possible size of bin counts.") }}, options: {"enforce_constant_time": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("false"), default_python: Some("False"), description: Some("Whether or not to require Geometric mechanism to run in constant time.") }, "mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"SimpleGeometric\")"), default_python: Some("\"SimpleGeometric\""), description: Some("Privatizing mechanism to use. One of [`SimpleGeometric`, `Laplace`, `Gaussian`]") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Differentially private histogram.") }, description: Some("Returns a differentially private histogram over user-defined categories. The final cell contains the counts for null values (outside the set of categories).") } [INFO] [stderr] component ComponentJSON { id: "DPMaximum", name: "dp_maximum", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"Laplace\")"), default_python: Some("\"Laplace\""), description: Some("Privatizing mechanism to use. One of [`Laplace`, `Gaussian`]") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Differentially private estimates of the maximum elements of the data.") }, description: Some("Returns differentially private estimates of the maximum elements of each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "DPMean", name: "dp_mean", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"implementation": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"resized\")"), default_python: Some("\"resized\""), description: Some("Privatizing algorithm to use. One of [`resized`, `plug-in`]") }, "mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"Laplace\")"), default_python: Some("\"Laplace\""), description: Some("Privatizing mechanism to use. One of [`Laplace`, `Gaussian`]") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Differentially private estimate of the mean of each column of the data.") }, description: Some("Returns differentially private estimates of the means of each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "DPMedian", name: "dp_median", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"interpolation": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"midpoint\")"), default_python: Some("\"midpoint\""), description: Some("Interpolation strategy. One of [`lower`, `upper`, `midpoint`, `nearest`, `linear`]") }, "mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"Laplace\")"), default_python: Some("\'Laplace\'"), description: Some("Privatizing mechanism to use.") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Differentially private estimates of the median of each column of the data.") }, description: Some("Returns differentially private estimates of the median of each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "DPMinimum", name: "dp_minimum", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"Laplace\")"), default_python: Some("\"Laplace\""), description: Some("Privatizing mechanism to use. One of [`Laplace`, `Gaussian`]") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Differentially private estimates of the minimum elements of the data.") }, description: Some("Returns differentially private estimates of the minimum elements of each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "DPMomentRaw", name: "dp_moment_raw", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"Laplace\")"), default_python: Some("\"Laplace\""), description: Some("Privatizing mechanism to use. One of [`Laplace`, `Gaussian`]") }, "order": ArgumentJSON { nature: None, type_value: None, type_proto: Some("uint32"), type_rust: Some("u32"), default_rust: None, default_python: None, description: Some("Integer statistical moment indicator.") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Sample estimate of raw moment for each column of the data.") }, description: Some("Returns sample estimate of a raw moment for each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "DPSum", name: "dp_sum", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Estimated minimum possible sum for the geometric mechanism, when doing an integer sum.") }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Estimated maximum possible sum for the geometric mechanism, when doing an integer sum.") }}, options: {"mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"Laplace\")"), default_python: Some("\"Laplace\""), description: Some("Privatizing mechanism to use. One of [`Laplace`, `Gaussian`, `SimpleGeometric`]") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Differentially private sum over elements for each column of the data.") }, description: Some("Returns differentially private estimates of the sums of each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "DPVariance", name: "dp_variance", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"finite_sample_correction": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("true"), default_python: Some("True"), description: Some("Whether or not to use the finite sample correction (Bessel\'s correction).") }, "mechanism": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"Laplace\")"), default_python: Some("\"Laplace\""), description: Some("Privatizing mechanism to use. One of [`Laplace`, `Gaussian`]") }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Differentially private sample variance for each column of the data.") }, description: Some("Returns a differentially private estimate of the variance for each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "Equal", name: "equal", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Filter", name: "filter", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "mask": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Boolean mask giving whether or not each row should be kept.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data with only the desired rows.") }, description: Some("Filters data down into only the desired rows.") } [INFO] [stderr] component ComponentJSON { id: "GaussianMechanism", name: "gaussian_mechanism", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Result to be released privately via the Gaussian mechanism.") }}, options: {"privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Original data perturbed with Gaussian noise.") }, description: Some("Privatizes a result by returning it perturbed with Gaussian noise.") } [INFO] [stderr] component ComponentJSON { id: "GreaterThan", name: "greater_than", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Histogram", name: "histogram", arguments: {"categories": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: None, default_python: Some("None"), description: Some("Set of categories in data. Used only if data are of `categorical` nature.") }, "data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "edges": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: None, default_python: Some("None"), description: Some("Set of edges to bin continuous-valued data. Used only if data are of `continuous` nature.") }, "inclusive_left": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: None, default_rust: None, default_python: Some("True"), description: Some("Whether or not the left edge of the bin is inclusive. If `true` bins are of the form [lower, upper). Otherwise, bins are of the form (lower, upper]. Used only if data are of `continuous` nature.") }, "null_value": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: Some("None"), description: Some("The value to which elements not included in `categories` will be mapped for each column of the data. Used only if `categories` is not `None`.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Impute", name: "impute", arguments: {"categories": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The set of categories you want to be represented for each column of the data, if the data is categorical.") }, "data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("The data for which null values will be imputed.") }, "distribution": ArgumentJSON { nature: None, type_value: Some("String"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The distribution to be used when imputing records. Used only if `categories` is `None`.") }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("A lower bound on data elements for each column. Used only if `categories` is `None`.") }, "scale": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The standard deviation of the Gaussian distribution to be used for imputation. Used only if `distribution` is `Gaussian`.") }, "shift": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The expectation of the Gaussian distribution to be used for imputation. Used only if `distribution` is `Gaussian`.") }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("An upper bound on data elements for each column. Used only if `categories` is `None`.") }, "weights": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Optional. The weight of each category when imputing. Uniform weights are used if not specified.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data with null values replaced by imputed values.") }, description: Some("Replaces null values with draws from a specified distribution.\n\nIf the `categories` argument is provided, the data are considered to be categorical regardless of atomic type and the elements provided in `null_value` will be replaced with those in `categories` according to `weights`.\n\nIf the `categories` argument is not provided, the data are considered to be numeric and elements that are `f64::NAN` will be replaced according to the specified distribution.") } [INFO] [stderr] component ComponentJSON { id: "Index", name: "index", arguments: {"columns": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "data": ArgumentJSON { nature: None, type_value: Some("Hashmap"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Index into data frames, partitions and arrays to retrieve homogeneously typed contiguous arrays") } [INFO] [stderr] component ComponentJSON { id: "KthRawSampleMoment", name: "kth_raw_sample_moment", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data for which you would like the kth raw moments.") }}, options: {"k": ArgumentJSON { nature: None, type_value: None, type_proto: Some("uint32"), type_rust: Some("u32"), default_rust: None, default_python: None, description: Some("Integer statistical moment indicator.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("kth raw sample moment for each column.") }, description: Some("Returns sample estimate of kth raw moment for each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "LaplaceMechanism", name: "laplace_mechanism", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("True value to be released privately via the Laplace mechanism.") }}, options: {"privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Original data perturbed with Laplace noise.") }, description: Some("Privatizes a result by returning it perturbed with Laplace noise.") } [INFO] [stderr] component ComponentJSON { id: "LessThan", name: "less_than", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Literal", name: "literal", arguments: {}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Log", name: "log", arguments: {"base": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: Some("2.71828"), description: None }, "data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "And", name: "logical_and", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Or", name: "logical_or", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Materialize", name: "materialize", arguments: {"column_names": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"data_source": ArgumentJSON { nature: None, type_value: None, type_proto: Some("DataSource"), type_rust: Some("Option"), default_rust: None, default_python: None, description: None }, "dataset_id": ArgumentJSON { nature: None, type_value: None, type_proto: Some("I64Null"), type_rust: Some("Option"), default_rust: Some("None"), default_python: Some("None"), description: Some("when set, data with unknown number of records may still conform to data with the same dataset_id") }, "public": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("false"), default_python: Some("False"), description: None }, "skip_row": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("true"), default_python: Some("True"), description: Some("when set, skip the first line (header) in a csv") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Hashmap"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Load a tabular frame from a data source") } [INFO] [stderr] component ComponentJSON { id: "Maximum", name: "maximum", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data for which you want the maximum value in each column.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Maximum of each column in the data.") }, description: Some("Find the maximum value of each column in the data.") } [INFO] [stderr] component ComponentJSON { id: "Mean", name: "mean", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Arithmetic mean for each column of the data in question.") }, description: Some("Calculates the arithmetic mean of each column in the provided data.") } [INFO] [stderr] component ComponentJSON { id: "Minimum", name: "minimum", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data for which you want the maximum value in each column.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Maximum of each column in the data.") }, description: Some("Find the minimum value of each column in the data.") } [INFO] [stderr] component ComponentJSON { id: "Modulo", name: "modulo", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Multiply", name: "multiply", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Negate", name: "negate", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Negative", name: "negative", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Partition", name: "partition", arguments: {"by": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: None }, "data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "num_partitions": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Hashmap"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Split the rows of data into either into k equally sized partitions, or by the categories of a vector") } [INFO] [stderr] component ComponentJSON { id: "Power", name: "power", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "radical": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Quantile", name: "quantile", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"alpha": ArgumentJSON { nature: None, type_value: None, type_proto: Some("double"), type_rust: Some("f64"), default_rust: None, default_python: None, description: Some("Desired quantiles, defined on `[0,1]`.") }, "interpolation": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"midpoint\")"), default_python: Some("\"midpoint\""), description: Some("Interpolation strategy. One of [`lower`, `upper`, `midpoint`, `nearest`, `linear`]") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Quantile values for each column.") }, description: Some("Get values corresponding to specified quantiles for each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "Reshape", name: "reshape", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Vector of data to stack into a matrix. A Hashmap of matrices will be emitted if multiple rows are provided.") }}, options: {"layout": ArgumentJSON { nature: None, type_value: None, type_proto: Some("string"), type_rust: Some("String"), default_rust: Some("String::from(\"row\")"), default_python: Some("\'row\'"), description: Some("Consecutive elements of either the `row` or `column` reside next to each other.") }, "shape": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated uint32"), type_rust: Some("Vec"), default_rust: None, default_python: None, description: Some("The shape of the output matrix.") }, "symmetric": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("false"), default_python: Some("False"), description: Some("Set if data are elements from the upper triangle of a symmetric matrix.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Reshape of data.") }, description: Some("Reshapes a row vector into a matrix.") } [INFO] [stderr] component ComponentJSON { id: "Resize", name: "resize", arguments: {"categories": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The set of categories you want to be represented for each column of the data, if the data is categorical.") }, "data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("The data to be resized.") }, "distribution": ArgumentJSON { nature: None, type_value: Some("String"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The distribution to be used when imputing records.") }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("A lower bound on data elements for each column.") }, "n": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("An estimate of the number of rows in the data. This could be the guess of the user, or the result of a DP release.") }, "scale": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The standard deviation of the Gaussian distribution used for imputation (used only if `distribution = Gaussian`).") }, "shift": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("The expectation of the Gaussian distribution used for imputation (used only if `distribution = Gaussian`).") }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("An upper bound on data elements for each column.") }, "weights": ArgumentJSON { nature: None, type_value: Some("Jagged"), type_proto: None, type_rust: None, default_rust: Some("None"), default_python: Some("None"), description: Some("Optional. The weight of each category when imputing. Uniform weights are used if not specified.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("A resized version of data consistent with the provided `n`") }, description: Some("Resizes the data in question to be consistent with a provided sample size, `n`.\n\nThe library does not, in general, assume that the sample size of the data being analyzed is known. This introduces a number of problems around how to calculate statistics that are a function of the sample size.\n\nTo address this problem, the library asks the user to provide `n`, an estimate of the true sample size based on their own beliefs about the data or a previous differentially private count of the number of rows in the data. This component then either subsamples or appends to the data in order to make it consistent with the provided `n`.") } [INFO] [stderr] component ComponentJSON { id: "RowMax", name: "row_max", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Returns the maximum of the left and right arguments, per row.") } [INFO] [stderr] component ComponentJSON { id: "RowMin", name: "row_min", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Returns the minimum of the left and right arguments, per row.") } [INFO] [stderr] component ComponentJSON { id: "SimpleGeometricMechanism", name: "simple_geometric_mechanism", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Result to be released privately via the Geometric mechanism.") }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"enforce_constant_time": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("false"), default_python: Some("False"), description: None }, "privacy_usage": ArgumentJSON { nature: None, type_value: None, type_proto: Some("repeated PrivacyUsage"), type_rust: Some("Vec"), default_rust: None, default_python: Some("None"), description: Some("Object describing the type and amount of privacy to be used for the mechanism release.") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Original data perturbed with Geometric noise.") }, description: Some("Privatizes a result by returning it perturbed with Geometric noise.") } [INFO] [stderr] component ComponentJSON { id: "Subtract", name: "subtract", arguments: {"left": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, "right": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: None } [INFO] [stderr] component ComponentJSON { id: "Sum", name: "sum", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data for which you want the sum of each column.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Sum of each column of the data.") }, description: Some("Calculates the sum of each column of the data.") } [INFO] [stderr] component ComponentJSON { id: "ToBool", name: "to_bool", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data to be cast to another type.") }, "true_label": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Positive class (class to be mapped to `true`) for each column.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Cast data to a bool atomic type.") } [INFO] [stderr] component ComponentJSON { id: "ToFloat", name: "to_float", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data to be cast to another type.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Cast data to a float atomic type.") } [INFO] [stderr] component ComponentJSON { id: "ToInt", name: "to_int", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data to be cast to another type.") }, "lower": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Minimum allowable imputation value. Integers cannot represent null, so values that cannot be parsed are imputed.") }, "upper": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Maximum allowable imputation value.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Cast data to a int atomic type.") } [INFO] [stderr] component ComponentJSON { id: "ToString", name: "to_string", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Data to be cast to another type.") }}, options: {}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }, description: Some("Cast data to a string atomic type.") } [INFO] [stderr] component ComponentJSON { id: "Variance", name: "variance", arguments: {"data": ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: None }}, options: {"finite_sample_correction": ArgumentJSON { nature: None, type_value: None, type_proto: Some("bool"), type_rust: Some("bool"), default_rust: Some("true"), default_python: Some("True"), description: Some("Whether or not to use the finite sample correction (Bessel\'s correction).") }}, arg_return: ArgumentJSON { nature: None, type_value: Some("Array"), type_proto: None, type_rust: None, default_rust: None, default_python: None, description: Some("Sample variance for each column of the data.") }, description: Some("Calculates the sample variance for each column of the data.") } [INFO] [stderr] [INFO] [stderr] --- stderr [INFO] [stderr] thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: Other, message: "Read-only file system" }', /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/whitenoise_validator-0.1.1/build/protobuf.rs:97:24 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x56496a1d1994 - backtrace::backtrace::libunwind::trace::hc1c4a1d8ad423b97 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x56496a1d1994 - backtrace::backtrace::trace_unsynchronized::h82274781060cb056 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x56496a1d1994 - std::sys_common::backtrace::_print_fmt::h2a45d89b653a4da8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x56496a1d1994 - ::fmt::h41a0a93ab85e6aa1 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x56496a1faefc - core::fmt::write::hdaea18585065a96d [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x56496a1ce413 - std::io::Write::write_fmt::h0cea70c809005252 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x56496a1d44a5 - std::sys_common::backtrace::_print::hd95f9978cc145ca4 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x56496a1d44a5 - std::sys_common::backtrace::print::hfb25ca2291be47d0 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x56496a1d44a5 - std::panicking::default_hook::{{closure}}::h44f76cee5dc8591c [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x56496a1d41e2 - std::panicking::default_hook::h198e1a712910f1e6 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x56496a1d4ab2 - std::panicking::rust_panic_with_hook::hc0b4730bb8013f9d [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x56496a1d469b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x56496a1f9671 - core::panicking::panic_fmt::h1ac71ad045d55416 [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x56496a1f9493 - core::option::expect_none_failed::hb40004d71d61b685 [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x56496a036acb - core::result::Result::unwrap::h4cdd38aa75f67852 [INFO] [stderr] at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4/src/libcore/result.rs:1005 [INFO] [stderr] 15: 0x56496a0247f4 - build_script_main::protobuf::build_protobuf::h1cc6d6f3bddceb16 [INFO] [stderr] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/whitenoise_validator-0.1.1/build/protobuf.rs:97 [INFO] [stderr] 16: 0x56496a072ac1 - build_script_main::main::h980a505e67729020 [INFO] [stderr] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/whitenoise_validator-0.1.1/build/main.rs:99 [INFO] [stderr] 17: 0x56496a018b0b - std::rt::lang_start::{{closure}}::h15d1d5938593999f [INFO] [stderr] at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4/src/libstd/rt.rs:67 [INFO] [stderr] 18: 0x56496a1d4ef8 - std::rt::lang_start_internal::{{closure}}::h7a212202ff76034b [INFO] [stderr] at src/libstd/rt.rs:52 [INFO] [stderr] 19: 0x56496a1d4ef8 - std::panicking::try::do_call::h6d214a73427d759b [INFO] [stderr] at src/libstd/panicking.rs:331 [INFO] [stderr] 20: 0x56496a1d4ef8 - std::panicking::try::hc078f0e11721d1cb [INFO] [stderr] at src/libstd/panicking.rs:274 [INFO] [stderr] 21: 0x56496a1d4ef8 - std::panic::catch_unwind::hb31c05be30625612 [INFO] [stderr] at src/libstd/panic.rs:394 [INFO] [stderr] 22: 0x56496a1d4ef8 - std::rt::lang_start_internal::hcf7fb98a775d5af0 [INFO] [stderr] at src/libstd/rt.rs:51 [INFO] [stderr] 23: 0x56496a018ae7 - std::rt::lang_start::h9afb25bd13f3824a [INFO] [stderr] at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4/src/libstd/rt.rs:67 [INFO] [stderr] 24: 0x56496a0797ba - main [INFO] [stderr] 25: 0x7f22967fe0b3 - __libc_start_main [INFO] [stderr] 26: 0x564969ff61ae - _start [INFO] [stderr] 27: 0x0 - [INFO] [stderr] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [ERROR] error running command: no output for 300 seconds [INFO] running `"docker" "inspect" "9f070def706d3ec905b606152ef2e88938dac483dc4d40f5ce98830468ed594b"` [INFO] running `"docker" "rm" "-f" "9f070def706d3ec905b606152ef2e88938dac483dc4d40f5ce98830468ed594b"` [INFO] [stdout] 9f070def706d3ec905b606152ef2e88938dac483dc4d40f5ce98830468ed594b