Fix tests and use concrete versions of azure_core and azure_identity
This commit is contained in:
Родитель
9e45fff548
Коммит
be8f78b097
|
@ -108,3 +108,5 @@ Cargo.lock
|
||||||
# End of https://www.toptal.com/developers/gitignore/api/intellij+iml,rust
|
# End of https://www.toptal.com/developers/gitignore/api/intellij+iml,rust
|
||||||
.env
|
.env
|
||||||
.vscode
|
.vscode
|
||||||
|
|
||||||
|
.idea
|
||||||
|
|
|
@ -13,11 +13,11 @@ categories = ["api-bindings"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
arrow = { version = "15.0.0", optional = true }
|
arrow = { version = "15.0.0", optional = true }
|
||||||
azure_core = { git = "https://github.com/Azure/azure-sdk-for-rust", rev = "8586a66b20fba463c39156f0390e583ec305ab2d", features = [
|
azure_core = { version = "0.3.0", features = [
|
||||||
"enable_reqwest",
|
"enable_reqwest",
|
||||||
"enable_reqwest_gzip",
|
"enable_reqwest_gzip",
|
||||||
] }
|
] }
|
||||||
azure_identity = { git = "https://github.com/Azure/azure-sdk-for-rust", rev = "8586a66b20fba463c39156f0390e583ec305ab2d" }
|
azure_identity = "0.4.0"
|
||||||
async-trait = "0.1.56"
|
async-trait = "0.1.56"
|
||||||
async-convert = "1.0.0"
|
async-convert = "1.0.0"
|
||||||
bytes = "1.1.0"
|
bytes = "1.1.0"
|
||||||
|
|
|
@ -45,7 +45,9 @@ impl Policy for AuthorizationPolicy {
|
||||||
let token = self.credential.get_token(&self.resource).await?;
|
let token = self.credential.get_token(&self.resource).await?;
|
||||||
let auth_header_value = format!("Bearer {}", token.token.secret());
|
let auth_header_value = format!("Bearer {}", token.token.secret());
|
||||||
|
|
||||||
request.insert_header(AUTHORIZATION, HeaderValue::from(auth_header_value));
|
request
|
||||||
|
.headers_mut()
|
||||||
|
.insert(AUTHORIZATION, HeaderValue::from(auth_header_value));
|
||||||
|
|
||||||
next[0].send(ctx, request, &next[1..]).await
|
next[0].send(ctx, request, &next[1..]).await
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,9 +12,10 @@ use arrow::record_batch::RecordBatch;
|
||||||
use async_convert::TryFrom;
|
use async_convert::TryFrom;
|
||||||
use azure_core::error::Error as CoreError;
|
use azure_core::error::Error as CoreError;
|
||||||
use azure_core::prelude::*;
|
use azure_core::prelude::*;
|
||||||
use azure_core::{collect_pinned_stream, Request, Response as HttpResponse, Url};
|
use azure_core::{collect_pinned_stream, Request, Response as HttpResponse};
|
||||||
use futures::future::BoxFuture;
|
use futures::future::BoxFuture;
|
||||||
use futures::TryFutureExt;
|
use futures::TryFutureExt;
|
||||||
|
use http::Uri;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
||||||
|
@ -238,7 +239,7 @@ impl TryFrom<HttpResponse> for KustoResponseDataSetV1 {
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
|
|
||||||
pub fn prepare_request(uri: Url, http_method: http::Method) -> Request {
|
pub fn prepare_request(uri: Uri, http_method: http::Method) -> Request {
|
||||||
const API_VERSION: &str = "2019-02-13";
|
const API_VERSION: &str = "2019-02-13";
|
||||||
|
|
||||||
let mut request = Request::new(uri, http_method);
|
let mut request = Request::new(uri, http_method);
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
#![cfg(feature = "mock_transport_framework")]
|
#![cfg(feature = "mock_transport_framework")]
|
||||||
use azure_core::auth::{AccessToken, TokenCredential, TokenResponse};
|
use azure_core::auth::{TokenCredential, TokenResponse};
|
||||||
use azure_core::error::Error as CoreError;
|
use azure_core::error::Error as CoreError;
|
||||||
use azure_kusto_data::prelude::*;
|
use azure_kusto_data::prelude::*;
|
||||||
use chrono::Utc;
|
use chrono::Utc;
|
||||||
use dotenv::dotenv;
|
use dotenv::dotenv;
|
||||||
|
use oauth2::AccessToken;
|
||||||
use std::path::Path;
|
use std::path::Path;
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
|
@ -19,6 +20,7 @@ impl TokenCredential for DummyCredential {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[must_use]
|
||||||
pub fn create_kusto_client(transaction_name: &str) -> (KustoClient, String) {
|
pub fn create_kusto_client(transaction_name: &str) -> (KustoClient, String) {
|
||||||
let transaction_path = Path::new(&workspace_root().expect("Failed to get workspace root"))
|
let transaction_path = Path::new(&workspace_root().expect("Failed to get workspace root"))
|
||||||
.join(format!("test/transactions/{}", transaction_name));
|
.join(format!("test/transactions/{}", transaction_name));
|
||||||
|
@ -57,7 +59,7 @@ pub fn create_kusto_client(transaction_name: &str) -> (KustoClient, String) {
|
||||||
let credential = Arc::new(DummyCredential {});
|
let credential = Arc::new(DummyCredential {});
|
||||||
let database = String::from_utf8_lossy(
|
let database = String::from_utf8_lossy(
|
||||||
&std::fs::read(&db_path)
|
&std::fs::read(&db_path)
|
||||||
.expect(&format!("Could not read db path {}", db_path.display())),
|
.unwrap_or_else(|_| panic!("Could not read db path {}", db_path.display())),
|
||||||
)
|
)
|
||||||
.to_string();
|
.to_string();
|
||||||
(String::new(), credential, database)
|
(String::new(), credential, database)
|
||||||
|
|
Различия файлов скрыты, потому что одна или несколько строк слишком длинны
|
@ -1 +1 @@
|
||||||
{"status":200,"headers":{"content-type":"application/json","date":"Wed, 08 Jun 2022 05:46:30 GMT","server":"Kestrel","strict-transport-security":"max-age=2592000; includeSubDomains","transfer-encoding":"chunked","vary":"Accept-Encoding","x-ms-activity-id":"29b1ada2-8503-4fa7-becc-50bb336aa168","x-ms-client-request-id":"unspecified;b3626d7f-93bf-4271-9737-b158838c2309"},"body":"eyJUYWJsZXMiOlt7IlRhYmxlTmFtZSI6IlRhYmxlXzAiLCJDb2x1bW5zIjpbeyJDb2x1bW5OYW1lIjoiRXh0ZW50SWQiLCJEYXRhVHlwZSI6Ikd1aWQiLCJDb2x1bW5UeXBlIjoiZ3VpZCJ9LHsiQ29sdW1uTmFtZSI6Ik9yaWdpbmFsU2l6ZSIsIkRhdGFUeXBlIjoiRG91YmxlIiwiQ29sdW1uVHlwZSI6InJlYWwifSx7IkNvbHVtbk5hbWUiOiJFeHRlbnRTaXplIiwiRGF0YVR5cGUiOiJEb3VibGUiLCJDb2x1bW5UeXBlIjoicmVhbCJ9LHsiQ29sdW1uTmFtZSI6IkNvbXByZXNzZWRTaXplIiwiRGF0YVR5cGUiOiJEb3VibGUiLCJDb2x1bW5UeXBlIjoicmVhbCJ9LHsiQ29sdW1uTmFtZSI6IkluZGV4U2l6ZSIsIkRhdGFUeXBlIjoiRG91YmxlIiwiQ29sdW1uVHlwZSI6InJlYWwifSx7IkNvbHVtbk5hbWUiOiJSb3dDb3VudCIsIkRhdGFUeXBlIjoiSW50NjQiLCJDb2x1bW5UeXBlIjoibG9uZyJ9XSwiUm93cyI6W1siZDFiODY5NzktNDg4YS00MDQyLTg1MmQtNDM2NWU4NDBmYWI2IiwyMS4wLDgwMC4wLDI0Ni4wLDU1NC4wLDFdXX1dfQ=="}
|
{"status":200,"headers":{"content-type":"application/json","date":"Sun, 26 Jun 2022 06:34:11 GMT","server":"Kestrel","strict-transport-security":"max-age=2592000; includeSubDomains","transfer-encoding":"chunked","vary":"Accept-Encoding","x-ms-activity-id":"bd151318-120e-4ae4-984c-82c7e1b685ad","x-ms-client-request-id":"unspecified;e46efcbf-a8fe-49f0-90c6-9aa3155a8ad3"},"body":"eyJUYWJsZXMiOlt7IlRhYmxlTmFtZSI6IlRhYmxlXzAiLCJDb2x1bW5zIjpbeyJDb2x1bW5OYW1lIjoiRXh0ZW50SWQiLCJEYXRhVHlwZSI6Ikd1aWQiLCJDb2x1bW5UeXBlIjoiZ3VpZCJ9LHsiQ29sdW1uTmFtZSI6Ik9yaWdpbmFsU2l6ZSIsIkRhdGFUeXBlIjoiRG91YmxlIiwiQ29sdW1uVHlwZSI6InJlYWwifSx7IkNvbHVtbk5hbWUiOiJFeHRlbnRTaXplIiwiRGF0YVR5cGUiOiJEb3VibGUiLCJDb2x1bW5UeXBlIjoicmVhbCJ9LHsiQ29sdW1uTmFtZSI6IkNvbXByZXNzZWRTaXplIiwiRGF0YVR5cGUiOiJEb3VibGUiLCJDb2x1bW5UeXBlIjoicmVhbCJ9LHsiQ29sdW1uTmFtZSI6IkluZGV4U2l6ZSIsIkRhdGFUeXBlIjoiRG91YmxlIiwiQ29sdW1uVHlwZSI6InJlYWwifSx7IkNvbHVtbk5hbWUiOiJSb3dDb3VudCIsIkRhdGFUeXBlIjoiSW50NjQiLCJDb2x1bW5UeXBlIjoibG9uZyJ9XSwiUm93cyI6W1siN2EwZmNlZDUtNTU0My00YjQyLWE3OGUtMmVjODFkZGM4MDA1IiwyMS4wLDgwMC4wLDI0Ni4wLDU1NC4wLDFdXX1dfQ=="}
|
Различия файлов скрыты, потому что одна или несколько строк слишком длинны
|
@ -1 +1 @@
|
||||||
{"status":200,"headers":{"content-type":"application/json","date":"Wed, 08 Jun 2022 05:46:34 GMT","server":"Kestrel","strict-transport-security":"max-age=2592000; includeSubDomains","transfer-encoding":"chunked","vary":"Accept-Encoding","x-ms-activity-id":"dda8f0b6-958b-4613-b039-216fec5f6bd2","x-ms-client-request-id":"unspecified;4229e206-7b2b-47f1-ae75-b57e5c537ccf"},"body":"W3siRnJhbWVUeXBlIjoiRGF0YVNldEhlYWRlciIsIklzUHJvZ3Jlc3NpdmUiOmZhbHNlLCJWZXJzaW9uIjoidjIuMCJ9LHsiRnJhbWVUeXBlIjoiRGF0YVRhYmxlIiwiVGFibGVJZCI6MCwiVGFibGVLaW5kIjoiUXVlcnlQcm9wZXJ0aWVzIiwiVGFibGVOYW1lIjoiQEV4dGVuZGVkUHJvcGVydGllcyIsIkNvbHVtbnMiOlt7IkNvbHVtbk5hbWUiOiJUYWJsZUlkIiwiQ29sdW1uVHlwZSI6ImludCJ9LHsiQ29sdW1uTmFtZSI6IktleSIsIkNvbHVtblR5cGUiOiJzdHJpbmcifSx7IkNvbHVtbk5hbWUiOiJWYWx1ZSIsIkNvbHVtblR5cGUiOiJkeW5hbWljIn1dLCJSb3dzIjpbWzEsIlZpc3VhbGl6YXRpb24iLCJ7XCJWaXN1YWxpemF0aW9uXCI6bnVsbCxcIlRpdGxlXCI6bnVsbCxcIlhDb2x1bW5cIjpudWxsLFwiU2VyaWVzXCI6bnVsbCxcIllDb2x1bW5zXCI6bnVsbCxcIkFub21hbHlDb2x1bW5zXCI6bnVsbCxcIlhUaXRsZVwiOm51bGwsXCJZVGl0bGVcIjpudWxsLFwiWEF4aXNcIjpudWxsLFwiWUF4aXNcIjpudWxsLFwiTGVnZW5kXCI6bnVsbCxcIllTcGxpdFwiOm51bGwsXCJBY2N1bXVsYXRlXCI6ZmFsc2UsXCJJc1F1ZXJ5U29ydGVkXCI6ZmFsc2UsXCJLaW5kXCI6bnVsbCxcIlltaW5cIjpcIk5hTlwiLFwiWW1heFwiOlwiTmFOXCIsXCJYbWluXCI6bnVsbCxcIlhtYXhcIjpudWxsfSJdXX0seyJGcmFtZVR5cGUiOiJEYXRhVGFibGUiLCJUYWJsZUlkIjoxLCJUYWJsZUtpbmQiOiJQcmltYXJ5UmVzdWx0IiwiVGFibGVOYW1lIjoiUHJpbWFyeVJlc3VsdCIsIkNvbHVtbnMiOlt7IkNvbHVtbk5hbWUiOiJzdHIiLCJDb2x1bW5UeXBlIjoic3RyaW5nIn1dLCJSb3dzIjpbWyJIZWxsbywgV29ybGQhIl1dfSx7IkZyYW1lVHlwZSI6IkRhdGFUYWJsZSIsIlRhYmxlSWQiOjIsIlRhYmxlS2luZCI6IlF1ZXJ5Q29tcGxldGlvbkluZm9ybWF0aW9uIiwiVGFibGVOYW1lIjoiUXVlcnlDb21wbGV0aW9uSW5mb3JtYXRpb24iLCJDb2x1bW5zIjpbeyJDb2x1bW5OYW1lIjoiVGltZXN0YW1wIiwiQ29sdW1uVHlwZSI6ImRhdGV0aW1lIn0seyJDb2x1bW5OYW1lIjoiQ2xpZW50UmVxdWVzdElkIiwiQ29sdW1uVHlwZSI6InN0cmluZyJ9LHsiQ29sdW1uTmFtZSI6IkFjdGl2aXR5SWQiLCJDb2x1bW5UeXBlIjoiZ3VpZCJ9LHsiQ29sdW1uTmFtZSI6IlN1YkFjdGl2aXR5SWQiLCJDb2x1bW5UeXBlIjoiZ3VpZCJ9LHsiQ29sdW1uTmFtZSI6IlBhcmVudEFjdGl2aXR5SWQiLCJDb2x1bW5UeXBlIjoiZ3VpZCJ9LHsiQ29sdW1uTmFtZSI6IkxldmVsIiwiQ29sdW1uVHlwZSI6ImludCJ9LHsiQ29sdW1uTmFtZSI6IkxldmVsTmFtZSIsIkNvbHVtblR5cGUiOiJzdHJpbmcifSx7IkNvbHVtbk5hbWUiOiJTdGF0dXNDb2RlIiwiQ29sdW1uVHlwZSI6ImludCJ9LHsiQ29sdW1uTmFtZSI6IlN0YXR1c0NvZGVOYW1lIiwiQ29sdW1uVHlwZSI6InN0cmluZyJ9LHsiQ29sdW1uTmFtZSI6IkV2ZW50VHlwZSIsIkNvbHVtblR5cGUiOiJpbnQifSx7IkNvbHVtbk5hbWUiOiJFdmVudFR5cGVOYW1lIiwiQ29sdW1uVHlwZSI6InN0cmluZyJ9LHsiQ29sdW1uTmFtZSI6IlBheWxvYWQiLCJDb2x1bW5UeXBlIjoic3RyaW5nIn1dLCJSb3dzIjpbWyIyMDIyLTA2LTA4VDA1OjQ2OjM0LjE0MzA2MThaIiwidW5zcGVjaWZpZWQ7NDIyOWUyMDYtN2IyYi00N2YxLWFlNzUtYjU3ZTVjNTM3Y2NmIiwiZGRhOGYwYjYtOTU4Yi00NjEzLWIwMzktMjE2ZmVjNWY2YmQyIiwiNTU1OTBmMTUtMWFmYS00ZmI5LWE5MWUtZGQzYjdhZTJjZDU1IiwiNDU3NzNiMjctZjZmOC00OTI3LTk3NWQtM2RkYjE3OGRhY2JmIiw0LCJJbmZvIiwwLCJTX09LICgwKSIsNCwiUXVlcnlJbmZvIiwie1wiQ291bnRcIjoxLFwiVGV4dFwiOlwiUXVlcnkgY29tcGxldGVkIHN1Y2Nlc3NmdWxseVwifSJdLFsiMjAyMi0wNi0wOFQwNTo0NjozNC4xNDI1NjA5WiIsInVuc3BlY2lmaWVkOzQyMjllMjA2LTdiMmItNDdmMS1hZTc1LWI1N2U1YzUzN2NjZiIsImRkYThmMGI2LTk1OGItNDYxMy1iMDM5LTIxNmZlYzVmNmJkMiIsIjU1NTkwZjE1LTFhZmEtNGZiOS1hOTFlLWRkM2I3YWUyY2Q1NSIsIjQ1NzczYjI3LWY2ZjgtNDkyNy05NzVkLTNkZGIxNzhkYWNiZiIsNiwiU3RhdHMiLDAsIlNfT0sgKDApIiwwLCJRdWVyeVJlc291cmNlQ29uc3VtcHRpb24iLCJ7XCJFeGVjdXRpb25UaW1lXCI6MC4wNDY4NzIzLFwicmVzb3VyY2VfdXNhZ2VcIjp7XCJjYWNoZVwiOntcIm1lbW9yeVwiOntcImhpdHNcIjowLFwibWlzc2VzXCI6MCxcInRvdGFsXCI6MH0sXCJkaXNrXCI6e1wiaGl0c1wiOjAsXCJtaXNzZXNcIjowLFwidG90YWxcIjowfSxcInNoYXJkc1wiOntcImhvdFwiOntcImhpdGJ5dGVzXCI6ODcxLFwibWlzc2J5dGVzXCI6MCxcInJldHJpZXZlYnl0ZXNcIjowfSxcImNvbGRcIjp7XCJoaXRieXRlc1wiOjAsXCJtaXNzYnl0ZXNcIjowLFwicmV0cmlldmVieXRlc1wiOjB9LFwiYnlwYXNzYnl0ZXNcIjowfX0sXCJjcHVcIjp7XCJ1c2VyXCI6XCIwMDowMDowMFwiLFwia2VybmVsXCI6XCIwMDowMDowMFwiLFwidG90YWwgY3B1XCI6XCIwMDowMDowMFwifSxcIm1lbW9yeVwiOntcInBlYWtfcGVyX25vZGVcIjoxNTczMjAwfSxcIm5ldHdvcmtcIjp7XCJpbnRlcl9jbHVzdGVyX3RvdGFsX2J5dGVzXCI6MjE5NSxcImNyb3NzX2NsdXN0ZXJfdG90YWxfYnl0ZXNcIjowfX0sXCJpbnB1dF9kYXRhc2V0X3N0YXRpc3RpY3NcIjp7XCJleHRlbnRzXCI6e1widG90YWxcIjoxLFwic2Nhbm5lZFwiOjEsXCJzY2FubmVkX21pbl9kYXRldGltZVwiOlwiMjAyMi0wNi0wOFQwNTo0NjozMC4zODcyNTM3WlwiLFwic2Nhbm5lZF9tYXhfZGF0ZXRpbWVcIjpcIjIwMjItMDYtMDhUMDU6NDY6MzAuMzg3MjUzN1pcIn0sXCJyb3dzXCI6e1widG90YWxcIjoxLFwic2Nhbm5lZFwiOjF9LFwicm93c3RvcmVzXCI6e1wic2Nhbm5lZF9yb3dzXCI6MCxcInNjYW5uZWRfdmFsdWVzX3NpemVcIjowfSxcInNoYXJkc1wiOntcInF1ZXJpZXNfZ2VuZXJpY1wiOjEsXCJxdWVyaWVzX3NwZWNpYWxpemVkXCI6MH19LFwiZGF0YXNldF9zdGF0aXN0aWNzXCI6W3tcInRhYmxlX3Jvd19jb3VudFwiOjEsXCJ0YWJsZV9zaXplXCI6MTN9XX0iXV19LHsiRnJhbWVUeXBlIjoiRGF0YVNldENvbXBsZXRpb24iLCJIYXNFcnJvcnMiOmZhbHNlLCJDYW5jZWxsZWQiOmZhbHNlfV0="}
|
{"status":200,"headers":{"content-type":"application/json","date":"Sun, 26 Jun 2022 06:34:13 GMT","server":"Kestrel","strict-transport-security":"max-age=2592000; includeSubDomains","transfer-encoding":"chunked","vary":"Accept-Encoding","x-ms-activity-id":"67843ee9-781d-4792-be62-c5de86505f04","x-ms-client-request-id":"unspecified;c05f8e23-3435-48e0-a724-72f590214ba0"},"body":"W3siRnJhbWVUeXBlIjoiRGF0YVNldEhlYWRlciIsIklzUHJvZ3Jlc3NpdmUiOmZhbHNlLCJWZXJzaW9uIjoidjIuMCJ9LHsiRnJhbWVUeXBlIjoiRGF0YVRhYmxlIiwiVGFibGVJZCI6MCwiVGFibGVLaW5kIjoiUXVlcnlQcm9wZXJ0aWVzIiwiVGFibGVOYW1lIjoiQEV4dGVuZGVkUHJvcGVydGllcyIsIkNvbHVtbnMiOlt7IkNvbHVtbk5hbWUiOiJUYWJsZUlkIiwiQ29sdW1uVHlwZSI6ImludCJ9LHsiQ29sdW1uTmFtZSI6IktleSIsIkNvbHVtblR5cGUiOiJzdHJpbmcifSx7IkNvbHVtbk5hbWUiOiJWYWx1ZSIsIkNvbHVtblR5cGUiOiJkeW5hbWljIn1dLCJSb3dzIjpbWzEsIlZpc3VhbGl6YXRpb24iLCJ7XCJWaXN1YWxpemF0aW9uXCI6bnVsbCxcIlRpdGxlXCI6bnVsbCxcIlhDb2x1bW5cIjpudWxsLFwiU2VyaWVzXCI6bnVsbCxcIllDb2x1bW5zXCI6bnVsbCxcIkFub21hbHlDb2x1bW5zXCI6bnVsbCxcIlhUaXRsZVwiOm51bGwsXCJZVGl0bGVcIjpudWxsLFwiWEF4aXNcIjpudWxsLFwiWUF4aXNcIjpudWxsLFwiTGVnZW5kXCI6bnVsbCxcIllTcGxpdFwiOm51bGwsXCJBY2N1bXVsYXRlXCI6ZmFsc2UsXCJJc1F1ZXJ5U29ydGVkXCI6ZmFsc2UsXCJLaW5kXCI6bnVsbCxcIlltaW5cIjpcIk5hTlwiLFwiWW1heFwiOlwiTmFOXCIsXCJYbWluXCI6bnVsbCxcIlhtYXhcIjpudWxsfSJdXX0seyJGcmFtZVR5cGUiOiJEYXRhVGFibGUiLCJUYWJsZUlkIjoxLCJUYWJsZUtpbmQiOiJQcmltYXJ5UmVzdWx0IiwiVGFibGVOYW1lIjoiUHJpbWFyeVJlc3VsdCIsIkNvbHVtbnMiOlt7IkNvbHVtbk5hbWUiOiJzdHIiLCJDb2x1bW5UeXBlIjoic3RyaW5nIn1dLCJSb3dzIjpbWyJIZWxsbywgV29ybGQhIl1dfSx7IkZyYW1lVHlwZSI6IkRhdGFUYWJsZSIsIlRhYmxlSWQiOjIsIlRhYmxlS2luZCI6IlF1ZXJ5Q29tcGxldGlvbkluZm9ybWF0aW9uIiwiVGFibGVOYW1lIjoiUXVlcnlDb21wbGV0aW9uSW5mb3JtYXRpb24iLCJDb2x1bW5zIjpbeyJDb2x1bW5OYW1lIjoiVGltZXN0YW1wIiwiQ29sdW1uVHlwZSI6ImRhdGV0aW1lIn0seyJDb2x1bW5OYW1lIjoiQ2xpZW50UmVxdWVzdElkIiwiQ29sdW1uVHlwZSI6InN0cmluZyJ9LHsiQ29sdW1uTmFtZSI6IkFjdGl2aXR5SWQiLCJDb2x1bW5UeXBlIjoiZ3VpZCJ9LHsiQ29sdW1uTmFtZSI6IlN1YkFjdGl2aXR5SWQiLCJDb2x1bW5UeXBlIjoiZ3VpZCJ9LHsiQ29sdW1uTmFtZSI6IlBhcmVudEFjdGl2aXR5SWQiLCJDb2x1bW5UeXBlIjoiZ3VpZCJ9LHsiQ29sdW1uTmFtZSI6IkxldmVsIiwiQ29sdW1uVHlwZSI6ImludCJ9LHsiQ29sdW1uTmFtZSI6IkxldmVsTmFtZSIsIkNvbHVtblR5cGUiOiJzdHJpbmcifSx7IkNvbHVtbk5hbWUiOiJTdGF0dXNDb2RlIiwiQ29sdW1uVHlwZSI6ImludCJ9LHsiQ29sdW1uTmFtZSI6IlN0YXR1c0NvZGVOYW1lIiwiQ29sdW1uVHlwZSI6InN0cmluZyJ9LHsiQ29sdW1uTmFtZSI6IkV2ZW50VHlwZSIsIkNvbHVtblR5cGUiOiJpbnQifSx7IkNvbHVtbk5hbWUiOiJFdmVudFR5cGVOYW1lIiwiQ29sdW1uVHlwZSI6InN0cmluZyJ9LHsiQ29sdW1uTmFtZSI6IlBheWxvYWQiLCJDb2x1bW5UeXBlIjoic3RyaW5nIn1dLCJSb3dzIjpbWyIyMDIyLTA2LTI2VDA2OjM0OjEzLjg1NDY1MDFaIiwidW5zcGVjaWZpZWQ7YzA1ZjhlMjMtMzQzNS00OGUwLWE3MjQtNzJmNTkwMjE0YmEwIiwiNjc4NDNlZTktNzgxZC00NzkyLWJlNjItYzVkZTg2NTA1ZjA0IiwiMWQzYmMzZTQtMTFmYy00ODk0LTkxYTMtZDk1ZGNjMWMwMGIxIiwiMzg0ZWYyZDMtZWI5Mi00ZjhmLTlmMDQtZDcwYWVjYjJhZjdhIiw0LCJJbmZvIiwwLCJTX09LICgwKSIsNCwiUXVlcnlJbmZvIiwie1wiQ291bnRcIjoxLFwiVGV4dFwiOlwiUXVlcnkgY29tcGxldGVkIHN1Y2Nlc3NmdWxseVwifSJdLFsiMjAyMi0wNi0yNlQwNjozNDoxMy44NTM4MDc4WiIsInVuc3BlY2lmaWVkO2MwNWY4ZTIzLTM0MzUtNDhlMC1hNzI0LTcyZjU5MDIxNGJhMCIsIjY3ODQzZWU5LTc4MWQtNDc5Mi1iZTYyLWM1ZGU4NjUwNWYwNCIsIjFkM2JjM2U0LTExZmMtNDg5NC05MWEzLWQ5NWRjYzFjMDBiMSIsIjM4NGVmMmQzLWViOTItNGY4Zi05ZjA0LWQ3MGFlY2IyYWY3YSIsNiwiU3RhdHMiLDAsIlNfT0sgKDApIiwwLCJRdWVyeVJlc291cmNlQ29uc3VtcHRpb24iLCJ7XCJFeGVjdXRpb25UaW1lXCI6MC4wNjI0MjU2LFwicmVzb3VyY2VfdXNhZ2VcIjp7XCJjYWNoZVwiOntcIm1lbW9yeVwiOntcImhpdHNcIjowLFwibWlzc2VzXCI6MCxcInRvdGFsXCI6MH0sXCJkaXNrXCI6e1wiaGl0c1wiOjAsXCJtaXNzZXNcIjowLFwidG90YWxcIjowfSxcInNoYXJkc1wiOntcImhvdFwiOntcImhpdGJ5dGVzXCI6ODcwLFwibWlzc2J5dGVzXCI6MCxcInJldHJpZXZlYnl0ZXNcIjowfSxcImNvbGRcIjp7XCJoaXRieXRlc1wiOjAsXCJtaXNzYnl0ZXNcIjowLFwicmV0cmlldmVieXRlc1wiOjB9LFwiYnlwYXNzYnl0ZXNcIjowfX0sXCJjcHVcIjp7XCJ1c2VyXCI6XCIwMDowMDowMFwiLFwia2VybmVsXCI6XCIwMDowMDowMFwiLFwidG90YWwgY3B1XCI6XCIwMDowMDowMFwifSxcIm1lbW9yeVwiOntcInBlYWtfcGVyX25vZGVcIjoxNTczMjAwfSxcIm5ldHdvcmtcIjp7XCJpbnRlcl9jbHVzdGVyX3RvdGFsX2J5dGVzXCI6MjE5NSxcImNyb3NzX2NsdXN0ZXJfdG90YWxfYnl0ZXNcIjowfX0sXCJpbnB1dF9kYXRhc2V0X3N0YXRpc3RpY3NcIjp7XCJleHRlbnRzXCI6e1widG90YWxcIjoxLFwic2Nhbm5lZFwiOjEsXCJzY2FubmVkX21pbl9kYXRldGltZVwiOlwiMjAyMi0wNi0yNlQwNjozNDoxMS43OTExNTU2WlwiLFwic2Nhbm5lZF9tYXhfZGF0ZXRpbWVcIjpcIjIwMjItMDYtMjZUMDY6MzQ6MTEuNzkxMTU1NlpcIn0sXCJyb3dzXCI6e1widG90YWxcIjoxLFwic2Nhbm5lZFwiOjF9LFwicm93c3RvcmVzXCI6e1wic2Nhbm5lZF9yb3dzXCI6MCxcInNjYW5uZWRfdmFsdWVzX3NpemVcIjowfSxcInNoYXJkc1wiOntcInF1ZXJpZXNfZ2VuZXJpY1wiOjEsXCJxdWVyaWVzX3NwZWNpYWxpemVkXCI6MH19LFwiZGF0YXNldF9zdGF0aXN0aWNzXCI6W3tcInRhYmxlX3Jvd19jb3VudFwiOjEsXCJ0YWJsZV9zaXplXCI6MTN9XX0iXV19LHsiRnJhbWVUeXBlIjoiRGF0YVNldENvbXBsZXRpb24iLCJIYXNFcnJvcnMiOmZhbHNlLCJDYW5jZWxsZWQiOmZhbHNlfV0="}
|
Различия файлов скрыты, потому что одна или несколько строк слишком длинны
Загрузка…
Ссылка в новой задаче