小编Soh*_* Si的帖子

什么是不透明令牌?

它们处于“专有格式”是什么意思?我正在阅读有关 JWT 刷新令牌的信息,它们是不透明的令牌,但我不理解该术语。

oauth token oauth-2.0 jwt

31
推荐指数
2
解决办法
2万
查看次数

声纳中的coverage_exclusions 与排除之间有什么区别?

声纳中的coverage_exclusionsvs 有什么区别exclusions?例子:

"sonar": {
    "exclusions": "gulpfile.js, ...",
    "coverage_exclusions": "gulpfile.js, ..., server/models/*.js",
    "quality_gate": "...",
    "server_id": "SONAR-main"
  },
Run Code Online (Sandbox Code Playgroud)

javascript node.js sonarqube sonarqube-scan

8
推荐指数
1
解决办法
7046
查看次数

如何判断RxJS的版本号

如何从代码中告知已安装的RxJS的版本?例如:

var Rx = require('rxjs/Rx');
console.log(Rx.rev);   // undefined
console.log(Rx.version);  // undefined
Run Code Online (Sandbox Code Playgroud)

第二个问题:如何判断它是否是rxjs5?

javascript node.js rxjs rxjs5

7
推荐指数
3
解决办法
9826
查看次数

如何直接从本机JavaScript前端与Emscripten Web Worker进行交互

如何从本机JavaScript有效地将参数列表发送到Emscripten Web Worker?我的数据(组参数)是大型阵列的不均匀组合Float32Array,UInt16Array,int,等下面作品中的例子,但我不能用一个列表,字典,或进行与INT混合TypedArrays的元组的任何其他方式.目前,除非输入是单个TypedArray,否则它将转换为几个字节.例如,以下行将发送三个单个字节,每个参数一个.

        test_data_worker([b8verts, 150000, b8faces]);  // doesn't work
Run Code Online (Sandbox Code Playgroud)

我的问题实际上是如何将元组编码为C结构.我可以使用诸如struct.js之类的库,但它们效率低下(需要转换,并且参数不可转移).Emscripten对这种情况有什么解决方案.请注意,我的特殊要求是我希望我的JavaScript postMessage()直接进入Emscripten编译的C++函数,而不是由正面的发送者C++程序或工作者端的接收器JavaScript代码调解.

<html>
<script>
    'use strict';
    var worker = new Worker('./emworker.compiled.js');

    var api_info = {
        test: {
            funcName: "worker_function",
            callbackId: 3,
        },
    };

    function test_data_worker(arguments_data_buffer) {
        // The protocol used by Emscripten
        worker.postMessage( {
                funcName: api_info.test.funcName,
                callbackId: api_info.test.callbackId,
                data: arguments_data_buffer,
                // 'finalResponse': false,
        }
        // , [arguments_data_buffer]  //uncommet for transferable
       );
    }

    function demo_request() {
        var verts = new Float32Array([3.141592651234567890123456780,1,2, 3,4,5, 6,7,8, 9,0.5,1.5]);
        var …
Run Code Online (Sandbox Code Playgroud)

javascript c++ web-worker emscripten

5
推荐指数
1
解决办法
516
查看次数

在 MacOS(或 Linux)的笔记本电脑睡眠模式期间,如何调查哪个进程会导致唤醒?

我的 MacBook 在风扇活动频繁的情况下自发地从睡眠模式中唤醒。

我想在 RTC 或电源设置中对此进行调查吗?或者通过跟踪进程等(使用一些进程/内核魔法!)。

提示:它可能由“rtcwake”管理。

我什至不确定这是计划任务,还是来自 WiFi 唤醒,或其他什么。

我不想猜测通常在 Mojave 等中导致这种情况的原因。相反:我需要在我的 MacOS (Mojave) 上对此进行系统调查。与 Linux 相关的答案也很受欢迎。

这是关于系统待机、睡眠模式、暂停模式。(请注意,这与独立进程的启动和唤醒无关。整个笔记本电脑会自动开启。)

linux power-management standby real-time-clock macos-mojave

5
推荐指数
1
解决办法
1746
查看次数

Jenkinsfile 是纯 Groovy 中的吗?Jenkinsfile 的“steps”中使用什么 Groovy 语言结构?

Jenkinsfile 中的以下代码片段使用了什么 Groovy 语言构造、语法或控制结构?

stage('Stage 1') {
    steps {
        // One or more steps
    }
}
Run Code Online (Sandbox Code Playgroud)

即,就纯 Groovy 语言而言,Jenkinsfile 中的块是什么?

什么是“步骤”?或者stage?是调用函数吗?或定义?或者带有匿名(lambda)参数的函数调用?

这个问题本质上是另一个问题:

问题2:

Jenkinsfile 是 groovy 语言的代码片段吗?

换句话说, 1. Jenkinsfile 是否遵循纯 Groovy 的所有语法和控制结构?(也许通过隐式库 import-ed 或 #include d 在开始时默默地),

与 DSL 相反: 2. Jenkinsfile 几乎是一个 Groovy 源文件,增加了新的 Jenkins 特定结构,而这些结构最初并非在 Groovy 中,例如使用预处理的 Jenkins。

以上两者哪一个成立?

有关的:

groovy jenkins-job-dsl jenkins-pipeline

5
推荐指数
1
解决办法
6301
查看次数

如何从现有的 package-lock.json 中提取最接近的 node.js 版本?

我的package-lock.json并且package.json没有指定用于在我的存储库中生成的node.js 版本package-lock.json

我可以使用迭代node版本来nvm查看哪个版本git diff对我的存储库中的前一个package-lock文件的产量最小。我想知道是否有一种不那么详尽和繁琐的方法可以做到这一点。是否有任何提示可以从锁定文件中“逆向工程”或“提取”节点版本?

动机:我不想package-lock.json在每次提交时不断更改我的版本,并且在 CI 中始终使用相同的节点版本。

node.js node-modules npm-shrinkwrap npm-install package-lock.json

5
推荐指数
0
解决办法
1022
查看次数

如何验证函数是否由C++编译器内联展开?

如何验证函数是否在C++程序中内联展开?我的编译器是Emscripten,但答案g++可能有效.

理想情况下,在内联模式下运行的代码不同(尽管它不应该有任何副作用).

c++ llvm emscripten c++14

2
推荐指数
1
解决办法
100
查看次数

如何在Googletest框架的多个测试中将全局变量用于“配置”

我正在使用C ++的Google测试框架。每个文件都包含一个config.hpp,它定义了一个全局配置变量。我想在变量而不是编译时const或中定义我的配置constexpr。如何定义依赖项,以便在链接在一起的不同文件中具有相同的变量?我必须使用单身人士吗?我可以避免吗?有没有更好的推荐方法来使用多个测试文件的xUnit样式?

我的配置文件 config.hpp

#pragma once
struct {
    const float tolerance = 0.001;
    // ...
} CONFIG_VAR;
Run Code Online (Sandbox Code Playgroud)

每个测试* .cpp源文件都类似于:

#include "gtest/gtest.h"
#include "core/config.hpp"
TEST(a, b) { ... }
Run Code Online (Sandbox Code Playgroud)

我的主文件:

#include "gtest/gtest.h"
int main(int argc, char **argv) {
    ::testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}
Run Code Online (Sandbox Code Playgroud)

我使用以下命令进行编译和链接:

em++  -I $GTEST_ROOT/googletest/include main_all_tests.cpp test_*.cpp
Run Code Online (Sandbox Code Playgroud)

PS。我的问题是变量CONFIG_VAR的多个定义。

我的解决方案基于一个相关的问题

c++ googletest emscripten

2
推荐指数
1
解决办法
2011
查看次数

静态类成员无法识别,但仅适用于新版本的 C++ 编译

static_member以下代码中无法识别静态类成员。

但是,它适用于旧版本的编译器。我使用的编译器是基于clang.

class my_class {
  public:
    static int static_member;
};

int main() {
  my_class::static_member = 0;
}
Run Code Online (Sandbox Code Playgroud)

要重现该错误,请将以上文件另存为c1.cpp并运行:

VER_TAG=latest # or VER_TAG=3.1.8

docker run --rm -v $(pwd):/src emscripten/emsdk::$VER_TAG emcc /src/c1.cpp
Run Code Online (Sandbox Code Playgroud)

导致错误:

wasm-ld:错误:/tmp/emscripten_temp_o3wmmq8k/c1_0.o:未定义符号:my_class::static_member

但是,如果我使用 VER_TAG=2.0.22(编译器的早期版本),它工作得很好。

我的代码有什么问题吗?还是与编译器实现有关?

c++ clang c++14

2
推荐指数
2
解决办法
229
查看次数

在Haskell中同步并行进程

在Haskell中,如何print并行运行多个(monad?)函数(例如)并按照完成时间的顺序查看它们的输出?我想要三个进程,每个进程最终都在打印函数中.

import Control.Parallel
main = a `par` b `pseq` (a,b)
    where
        a = print("ack",ack 3 10)
        b = print("fac",fac 42)
Run Code Online (Sandbox Code Playgroud)

如果我不使用pseq,它将显示par组合指定的最后一个.我想确保在程序结束之前完成所有进程.我试过这个,但它没有显示a,b的输出:

...
main = a `par` b `pseq` print("done.")
...
Run Code Online (Sandbox Code Playgroud)

注意:我的程序以以下行结束:

fac 0 = 1
fac n = n * fac (n-1)
ack 0 n = n+1
ack m 0 = ack (m-1) 1
ack m n = ack (m-1) (ack m (n-1))
Run Code Online (Sandbox Code Playgroud)

parallel-processing monads haskell

0
推荐指数
1
解决办法
140
查看次数

#if 指令如何在 C++ 中具有 constexpr 输入?

constexpr有没有办法在编译器指令之前定义它#if作为其输入?换句话说,可以#if有来自 的输入constexpr吗?如果不是,是否意味着#if指令在 之前被评估constexpr

constexpr int enable_debug = true;

#if (enable_debug)
std::string debug_logs;
#endif
for(int i=0;i<10;i++) {
   f(i);
   #if (enable_debug)
   debug_logs += std::to_string(i);
   #endif
}
#if (enable_debug)
std::court << debug_logs;
#endif
Run Code Online (Sandbox Code Playgroud)

这个问题有两个目的:

  • “指令时间”或“编译指示时间”是否早于编译时间?

  • 我只想有条件地构建一些代码,但代码定义了一个变量,所以我不能使用if constexpr().

c++ constexpr c++17

0
推荐指数
1
解决办法
90
查看次数