如何在不改变数组的情况下完成以下操作:
let array = ['item1'];
console.log(array); // ['item1']
array[2] = 'item2'; // array is mutated
console.log(array); // ['item1', undefined, 'item2']
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,array变量是变异的.如何在不改变阵列的情况下执行相同的操作?
我正在尝试使用ldap3版本'0.9.7.4' 将一些代码更新为python3 .(https://pypi.python.org/pypi/ldap3)
以前,我使用python-ldap和python2来验证这样的用户:
import ldap
address = "ldap://HOST:389"
con = ldap.initialize(address)
base_dn = "ourDN=jjj"
con.protocol_version = ldap.VERSION3
search_filter = "(uid=USERNAME)"
result = con.search_s(base_dn, ldap.SCOPE_SUBTREE, search_filter, None)
user_dn = result[0][0] # get the user DN
con.simple_bind_s(user_dn, "PASSWORD")
Run Code Online (Sandbox Code Playgroud)
这将正确返回(97, [], 2, [])正确的密码,并ldap.INVALID_CREDENTIALS使用不正确的密码引发绑定尝试.
ldap3在python3中使用我正在做以下事情:
from ldap3 import Server, Connection, AUTH_SIMPLE, STRATEGY_SYNC, ALL
s = Server(HOST, port=389, get_info=ALL)
c = Connection(s, authentication=AUTH_SIMPLE, user=user_dn, password=PASSWORD, check_names=True, lazy=False, client_strategy=STRATEGY_SYNC, raise_exceptions=True)
c.open()
c.bind()
Run Code Online (Sandbox Code Playgroud)
它引发了以下异常:
ldap3.core.exceptions.LDAPInvalidCredentialsResult: LDAPInvalidCredentialsResult - …Run Code Online (Sandbox Code Playgroud) 我今天早上醒来收到 GitHub Actions BETA 邀请(wooo)并开始玩它,目的是迁移我目前在 CircleCI 上运行的一些简单的构建、测试和部署管道。
我仍在尝试了解 Actions,但我想到的流程是,在推送之后,工作流中的第一个 Action 将启动一个 Docker 容器。在该容器内,我将运行一些简单的构建过程,例如最小化资产和删除人工制品。然后,下一个操作将对构建运行一些测试。管道中的下一个操作将部署到多个环境之一,具体取决于我推送到的分支。
我已经按照https://developer.github.com/actions/creating-github-actions/creating-a-docker-container/ 上的文档进行操作,并有一个基本的工作流程,可以启动 Docker 容器并在其中运行一些构建命令WORKDIR. 我也可以从内部运行部署(通过 rsync)WORKDIR。
但是,我想将其拆分为单独的步骤/操作,但我无法找到解决此问题的方法。
本质上,这类似于我正在使用的 CircleCI 作业/工作流模型。但是,使用 CircleCI,第一个作业运行构建,然后在整个工作流的其余部分中保留生成的目录结构,如下所示:
# Persist dist directory
- persist_to_workspace:
root: ~/project
paths:
- .
Run Code Online (Sandbox Code Playgroud)
所以,我有点将 CircleCI 的 Jobs 等同于 GitHub 的 Actions,这可能是错误的做法?本质上,我想知道的是我是否可以WORKDIR在第一个 Action 的 Docker 容器中保留 a并使其WORKDIR可用于后续的 Action。
这是可能的,还是我想像 GitHub Actions 可以做的事情?
谢谢!
如何使用Vim VS Code突出显示当前行?
这个功能真棒.任何人都知道在Vim VS Code中是否可以进行此配置?http://vim.wikia.com/wiki/Highlight_current_line
特别是在光标移动后停留的高亮显示:
:nnoremap <silent> <Leader>l ml:execute 'match Search /\%'.line('.').'l/'<CR>
Run Code Online (Sandbox Code Playgroud) 我使用Box API JWT服务器身份验证:
IAccessTokenCache accessTokenCache = new InMemoryLRUAccessTokenCache(100);
Reader reader = new FileReader("D:\\config.json");
BoxConfig boxConfig = BoxConfig.readFrom(reader);
BoxAPIConnection api = BoxDeveloperEditionAPIConnection.getAppUserConnection(USER_ID,boxConfig);
Run Code Online (Sandbox Code Playgroud)
但是盒子例外:
{"error":"unauthorized_client","error_description":"This app is not authorized by the enterprise admin"}
Run Code Online (Sandbox Code Playgroud)

我正在尝试访问SECRET发送到 GitHub 操作的s的值,但我很挣扎。[FILTERED]无论键或原始值是什么,每次都会返回值。
我可以ENVIRONMENT VARIABLES毫无问题地访问,所以我一定是在其他地方搞砸了。
本质上,我想要做的是向我的操作/容器发送一个 ssh 密钥,但是在将任何其他密钥/值作为秘密发送时我遇到了同样的问题。
我的(简化的)GitHub Action 如下:
action "Test" {
uses = "./.github/actions/test"
secrets = [
"SSH_PRIVATE_KEY",
"SSH_PUBLIC_KEY",
]
env = {
SSH_PUBLIC_KEY_TEST = "thisisatestpublickey"
}
}
Run Code Online (Sandbox Code Playgroud)
Dockerfile:
FROM ubuntu:latest
# Args
ARG SSH_PRIVATE_KEY
ARG SSH_PUBLIC_KEY
ARG SSH_PUBLIC_KEY_TEST
# Copy entrypoint
ADD entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
Run Code Online (Sandbox Code Playgroud)
入口点.sh:
#! /bin/sh
SSH_PATH="$HOME/.ssh"
mkdir "$SSH_PATH"
touch "$SSH_PATH/known_hosts"
echo "$SSH_PRIVATE_KEY" > "$SSH_PATH/id_rsa"
echo "$SSH_PUBLIC_KEY" > "$SSH_PATH/id_rsa.pub"
echo "$SSH_PUBLIC_KEY_TEST" > "$SSH_PATH/id_rsa_test.pub" …Run Code Online (Sandbox Code Playgroud) 我最近读到的一篇文章指出,将 a 保存为字段的结构Box<T>不是Copy.
这让我很困惑,因为我认为任何大小已知的类型都可以存储在堆栈上 - 因此是Copy.
的大小不是Box总是一样吗?我认为它只是对堆分配内存的引用 - 因此总是具有相同的大小。
如何使用JMH计算CPU时间和内存量?例如,我有:代码:
@State(Scope.Thread)
@BenchmarkMode(Mode.All)
public class JMHSample_My {
int x = 1;
int y = 2;
@GenerateMicroBenchmark
public int measureAdd() {
return (x + y);
}
@GenerateMicroBenchmark
public int measureMul() {
return (x * y);
}
public static void main(String[] args) throws RunnerException {
Options opt = new OptionsBuilder()
.include(".*" + JMHSample_My.class.getSimpleName() + ".*")
.warmupIterations(5)
.measurementIterations(5)
.forks(1)
.build();
new Runner(opt).run();
}
}
Run Code Online (Sandbox Code Playgroud)
结果:
Benchmark Mode Samples Mean Mean error Units
JMHSample_My.measureAdd thrpt 5 1060579.757 39506.950 ops/ms
JMHSample_My.measureMul thrpt 5 1046872.684 79805.116 …Run Code Online (Sandbox Code Playgroud) 在Apache NiFi中,使用FetchS3Object从S3存储桶读取,我发现它可以读取存储桶中的所有对象并添加它们.可能吗:
NiFi看起来很棒,只是缺少他们的文档中至少流行的处理器的例子.
我刚开始探索GraphQL作为我的分析平台API层的一个选项.
我的UI主要是从表格和图表构建的.大多数情况下,数据表示按维度分组的某些数据库列.
我从Microsoft 找到了以下文章https://www.microsoft.com/developerblog/2017/09/28/data-independent-graphql-using-view-model-based-schemas/,描述了他们对如何吮吸的看法应该设计GraphQL模式(见下文).
type Query {
channels(source: String!, query:String!, appId:String!, apiKey:String!): [Channel]
lineCharts(source: String!, query:String!, appId:String!, apiKey:String!, filterKey:String, filterValues:[String]): [LineChart]
pieCharts(source: String!, query:String!, appId:String!, apiKey:String!): [PieChart]
barCharts(source: String!, query:String!, appId:String!, apiKey:String!, filterKey:String, filterValues:[String]): [BarChart]
}
type Channel {
name: String
id: Int
}
type LineChart {
id: String
seriesData : [Series]
}
type PieChart {
id: String
labels: [String]
values: [Int]
}
type BarChart {
id: String
seriesData : [Series]
}
type Series {
label: String
x_values: …Run Code Online (Sandbox Code Playgroud) github ×2
amazon-s3 ×1
analytics ×1
apache-nifi ×1
arrays ×1
benchmarking ×1
box ×1
copy ×1
cpu-usage ×1
ecmascript-6 ×1
graphql ×1
immutability ×1
java ×1
javascript ×1
jmh ×1
jwt ×1
ldap ×1
ldap3 ×1
python ×1
python-3.x ×1
reference ×1
rust ×1
schema ×1
struct ×1
vim ×1