小编Pyv*_*ves的帖子

如何在github repos中添加徽章/盾牌?

我看到像shields.io或类似的网站,他们有这些标记的剪辑来显示徽章...但如果我剪切'粘贴这些它只是演示值.我怎样才能使它"真实".

例如,Bintray有他们自己的"最新版本徽章"降价,工作正常.我认为"盾牌"网站正试图标准化这些徽章的外观,并声称Bintray是他们支持的服务之一.

我怎样才能真正使用他们漂亮的徽章并从Bintray中提取我的版本数据?

markdown github bintray shields.io

19
推荐指数
1
解决办法
6525
查看次数

gnuplot堆积直方图重叠

我有以下两个我想用gnuplot绘制的数据文件.

timings0.log:

41420
32587
4082
4668
81
547
325
Run Code Online (Sandbox Code Playgroud)

timings1.log:

41297
32393
4106
4720
75
502
266
Run Code Online (Sandbox Code Playgroud)

它们表示一个软件的不同组件的时序,其中每个文件由具有不同配置的执行生成,并且文件中的每一行对应于不同的组件.我使用sed命令能够提取计时文件中的特定行(遵循此处建议的方法),并且能够显示仅显示某些组件的图.我想以堆叠直方图的方式在同一个图中显示两组时序.

这是我目前的代码:

set terminal svg size 500,500 enhanced font 'Times-Roman,14'

set key vertical maxrows 3

set style data histograms
set style histogram rowstacked title offset 0,-1 gap 1
set boxwidth 0.5 relative
set style fill solid 1.0

set xlabel offset 0,1
set xrange [-1:2]

set xtics 0,1
set xtics add ("1st Config"0)
set xtics add …
Run Code Online (Sandbox Code Playgroud)

plot gnuplot histogram

11
推荐指数
1
解决办法
607
查看次数

在GCC中循环展开行为

这个问题部分是GCC 5.1循环展开的后续问题.

根据GCC文档,并且如我在上述问题的答案中所述,标志如-funroll-loops打开"完全循环剥离(即完全去除具有少量恒定迭代次数的循环)".因此,当启用这样的标志时,如果确定这将优化给定代码段的执行,则编译器可以选择展开循环.

尽管如此,我注意到在我的一个项目中,即使没有启用相关标志,GCC有时会展开循环.例如,考虑以下简单的代码:

int main(int argc, char **argv)
{
  int k = 0;
  for( k = 0; k < 5; ++k )
  {
    volatile int temp = k;
  }
}
Run Code Online (Sandbox Code Playgroud)

在编译时-O1,循环展开,并使用任何现代版本的GCC生成以下汇编代码:

main:
        movl    $0, -4(%rsp)
        movl    $1, -4(%rsp)
        movl    $2, -4(%rsp)
        movl    $3, -4(%rsp)
        movl    $4, -4(%rsp)
        movl    $0, %eax
        ret
Run Code Online (Sandbox Code Playgroud)

即使在使用附加-fno-unroll-loops -fno-peel-loops程序进行编译以确保禁用标志时,GCC仍然意外地仍在上述示例中执行循环展开.

这一观察引出了以下密切相关的问题.为什么GCC执行循环展开,即使禁用了与此行为相对应的标志?展开是否也受其他标志控制,这些标志可以使编译器在某些情况下展开循环,即使-funroll-loops被禁用?有没有办法完全禁用GCC中的循环展开(编译的一部分-O0)?

有趣的是,Clang编译器在此处具有预期的行为,并且似乎仅在-funroll-loops启用时执行展开,而在其他情况下不执行. …

c++ gcc compiler-optimization loop-unrolling

9
推荐指数
1
解决办法
3020
查看次数

Golang致命错误:并发映射读取和映射写入

我在Go中编写minecraft服务器,当服务器受到2000多个连接的压力时,我得到了这个崩溃:

致命错误:并发映射读取和映射写入/ root/work/src/github.com/user/imoobler/limbo.go:78 + 0x351由main.main /root/work/src/github.com/user/imoobler创建/limbo.go:33 + 0x368

我的代码:

package main

import (
    "log"
    "net"
    "bufio"
    "time"
    "math/rand"
    "fmt"
)

var (
    connCounter = 0
)

func main() {
    InitConfig()
    InitPackets()

    port := int(config["port"].(float64))
    ln, err := net.Listen("tcp", fmt.Sprintf(":%d", port))
    if err != nil {
        log.Fatal(err)
    }
    log.Println("Server launched on port", port)
    go KeepAlive()
    for {
        conn, err := ln.Accept()
        if err != nil {
            log.Print(err)
        } else {
            connCounter+=1
            go HandleConnection(conn, connCounter)
        }
    }
}

func KeepAlive() {
    r …
Run Code Online (Sandbox Code Playgroud)

dictionary go

9
推荐指数
1
解决办法
1万
查看次数

在readme.md中显示github构建状态

我正在使用Jenkins来运行我的构建,并更新我的项目的github状态.

这很好用.

我想在我的网站上使用http://shields.io/显示构建的状态README.md,就像Travis那样.

想过我怎么能这样做?

我不想在我的项目中使用特拉维斯,我想保留詹金斯.

谢谢 !

github jenkins shields.io

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

8
推荐指数
3
解决办法
1486
查看次数

AWS Lambda中的S3客户端初始化缓慢

我目前正在研究用Java编写的AWS Lambda函数。它需要从S3获取对象,因此,我设置了IAM角色,并在Lambda的处理程序中构建了S3客户端:

import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3ClientBuilder;

public class Example implements RequestHandler<Void, Void> {

    @Override
    public Void handleRequest(Void nothing, Context ctx) {
        long start = System.currentTimeMillis();
        AmazonS3 amazonS3 = AmazonS3ClientBuilder.defaultClient();
        ctx.getLogger().log("Creating S3 client took " + (System.currentTimeMillis() - start) + "ms");
        ...
        return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,由于使用AmazonS3ClientBuilder速度非常慢,因此在向该函数分配192MB时,log语句会打印出以下时序:

Creating S3 client took 13541ms
Creating S3 client took 16482ms
Creating S3 client took 13617ms
Creating S3 client took 16380ms
Run Code Online (Sandbox Code Playgroud)

即使将内存增加到3008MB以获得最大处理能力(AWS为Lambdas分配与内存成正比的CPU能力),获取客户端仍然需要1-2秒:

Creating S3 client took 1413ms
Creating S3 …
Run Code Online (Sandbox Code Playgroud)

java amazon-web-services aws-lambda

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

自定义 Reactor Netty 主机名验证器

我需要查询证书/DNS 名称不匹配的第三方 API。证书中指定的主机名的最左侧标签事先未知(即CN=some-random-hash.example.com),因此我想使用自定义主机名验证器配置 HTTP 客户端。

当使用通过 获取的默认Reactor NettyHttpClient.create()客户端时,HostnameChecker类会失败证书验证并导致抛出异常:

java.security.cert.CertificateException: No subject alternative DNS name matching XXX found.
    at sun.security.util.HostnameChecker.matchDNS(HostnameChecker.java:214)
    at sun.security.util.HostnameChecker.match(HostnameChecker.java:96)
    at sun.security.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java:455)
    at sun.security.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java:436)
    at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:252)
    at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:136)
    at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1626)
    ... 30 more
Run Code Online (Sandbox Code Playgroud)

这个相关答案建议按如下方式实现 SNIMatcher:

HttpClient.create()
        .secure(sslContextSpec -> sslContextSpec
                .sslContext(sslContext)
                .handlerConfigurator((handler) -> {
                    SSLEngine engine = handler.engine();
                    SSLParameters params = new SSLParameters();
                    List<SNIMatcher> matchers = new LinkedList<>();
                    SNIMatcher matcher = new SNIMatcher(0) {
                        @Override
                        public boolean matches(SNIServerName serverName) {
                            return true; …
Run Code Online (Sandbox Code Playgroud)

java ssl netty reactor-netty

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

Firefox内容脚本未在某些页面中加载

上下文

我目前正在开发一个浏览器扩展程序,它正在按照Chrome和Opera的预期运行,但我遇到了Firefox的问题.这是manifest.json重现问题所需的最小版本:

{
    "name": "Example",
    "version": "0.0.1",
    "author": "Pyves",
    "content_scripts": [
        {
            "all_frames": true,
            "matches": [
                "<all_urls>"
            ],
            "js": [
                "content.js"
            ]
        }
    ],
    "manifest_version": 2
}
Run Code Online (Sandbox Code Playgroud)

这是相关的content.js:

console.log("Content script loaded");
Run Code Online (Sandbox Code Playgroud)

问题

Content script loaded在使用Chrome和Opera时,无论访问过的页面如何,系统地都会记录.然而,在使用Firefox时,内容脚本似乎不会在某些页面中加载,例如以下的原始GitHub页面:https: //raw.githubusercontent.com/badges/shields/master/README.md

Firefox控制台中没有错误消息说明为什么内容脚本未在该特定页面上执行.

问题

  • 为什么Firefox扩展无法将内容脚本加载到某些页面?

  • 需要进行哪些更改才能使扩展程序在所有浏览器上始终如一?

在此先感谢,任何帮助将不胜感激!

firefox firefox-addon

4
推荐指数
1
解决办法
1382
查看次数

如何在我的 github 自述文件中设置 pyversions 图标?

我正在尝试将我的 pyversion 图标设置为我的 github README,类似于:

预期徽章

我一直在尝试对coveralls-python 项目中的设置进行逆向工程。

我的 .travis.yaml 文件如下所示:

language: python
python:
  - "2.7"
  - "3.3"
  - "3.4"
  - "3.5"
  - "3.6"
install: 
  - pip install tox-travis
  - pip install python-coveralls

script:
  - tox
  - coverage run --source ibm_analytics_engine -m ibm_analytics_engine.iae
  - coverage report -m

after_success:
  - coveralls
Run Code Online (Sandbox Code Playgroud)

我的自述文件有:

[![Pyversions](https://img.shields.io/pypi/pyversions/ibm-analytics-engine-python.svg?style=flat-square)](https://pypi.python.org/pypi/ibm-analytics-engine-python)
Run Code Online (Sandbox Code Playgroud)

但是,我的输出如下所示:

实际徽章

pyversions 信息从哪里获取?它来自pypi页面吗?如果没有,我如何让 shields.io 反映我的库支持的 python 版本?

python pypi travis-ci shields.io

3
推荐指数
1
解决办法
697
查看次数

java.lang.IllegalStateException:无法转换名称为Class_Name的类

使用Maven 3.5.4运行Java测试时,我遇到以下问题。和OpenJdk 11。

以下是使用的版本:

org.powermock:powermock-module-junit4:jar:1.6.5
org.powermock:powermock-api-mockito-common:jar:1.6.5
org.powermock:powermock-core:jar:1.6.5
org.javassist:javassist:jar:3.23.1-GA
Run Code Online (Sandbox Code Playgroud)

这是执行堆栈跟踪:

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.541 sec <<< FAILURE! - in <Class_Name(hidden)>
    initializationError(<Class_Name(hidden)>)  Time elapsed: 0.018 sec  <<< ERROR!
    java.lang.IllegalStateException: Failed to transform class with name <Class_Name(hidden)>. Reason: null
        at org.powermock.core.classloader.MockClassLoader.loadMockClass(MockClassLoader.java:296)
        at org.powermock.core.classloader.MockClassLoader.loadModifiedClass(MockClassLoader.java:204)
        at org.powermock.core.classloader.DeferSupportingClassLoader.loadClass1(DeferSupportingClassLoader.java:89)
        at org.powermock.core.classloader.DeferSupportingClassLoader.loadClass(DeferSupportingClassLoader.java:79)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Class.java:398)
        at org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.createDelegatorFromClassloader(JUnit4TestSuiteChunkerImpl.java:154)
        at org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.createDelegatorFromClassloader(JUnit4TestSuiteChunkerImpl.java:47)
        at org.powermock.tests.utils.impl.AbstractTestSuiteChunkerImpl.createTestDelegators(AbstractTestSuiteChunkerImpl.java:107)
        at org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.<init>(JUnit4TestSuiteChunkerImpl.java:69)
        at org.powermock.modules.junit4.common.internal.impl.AbstractCommonPowerMockRunner.<init>(AbstractCommonPowerMockRunner.java:36)
        at org.powermock.modules.junit4.PowerMockRunner.<init>(PowerMockRunner.java:34)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) …
Run Code Online (Sandbox Code Playgroud)

powermock

3
推荐指数
1
解决办法
1530
查看次数