小编Fra*_*kie的帖子

为什么 Google Colab shell 命令不起作用?

重现步骤:

在 GPU 上打开新的 Colab 笔记本

!ls #works
!pip install -q turicreate
import turicreate as tc
!ls #doesn't work
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call last)
<ipython-input-22-16fdbe588ee8> in <module>()
----> 1 get_ipython().system('ls')
      2 # !nvcc --version

2 frames
/usr/local/lib/python3.6/dist-packages/google/colab/_system_commands.py in _run_command(cmd, clear_streamed_output)
    165   if locale_encoding != _ENCODING:
    166     raise NotImplementedError(
--> 167         'A UTF-8 locale is required. Got {}'.format(locale_encoding))
    168 
    169   parent_pty, child_pty = pty.openpty()

NotImplementedError: A UTF-8 locale is required. Got ANSI_X3.4-1968
Run Code Online (Sandbox Code Playgroud)

不幸的是,我对为什么会发生这种情况毫无意义。有线索吗?我还将作为 turicreate 项目中的潜在问题发布。

编辑:

它看起来确实像评论中所建议的那样覆盖了我的区域设置。在导入之前我可以这样做:

import …
Run Code Online (Sandbox Code Playgroud)

python locale google-colaboratory turi-create

19
推荐指数
3
解决办法
5万
查看次数

Swift开关模式与数组匹配

好奇如果有办法在Swift中执行以下操作.

let foo = [1, 2, 3]
let bar = [4, 5, 6]

let value = 5

switch value {
case in foo
    print("5 is in foo")
case in bar
    print("5 is in bar")
default:
    break
}
Run Code Online (Sandbox Code Playgroud)

我理解还有其他方法可以使这个人为的例子工作,比如case 4, 5, 6:使用或不使用开关而是使用,bar.contains(value)但我正在寻找一个专门涉及到数组的开关模式匹配的解决方案.谢谢!

arrays switch-statement ios swift

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

在WKWebView中检测非导航按钮单击

我已将网页加载到WKWebView.我想检测用户何时单击此特定按钮.

<div class="compacted-item">
    <button class="btn btn-lg btn-primary deploy-button" data-ember-action="1361">
        Deploy
    </button>
</div>
Run Code Online (Sandbox Code Playgroud)

decidePolicyFor navigationAction 未触发,因为它不是导航操作.

我知道如何将js消息处理程序添加到Web视图用户内容控制器,但由于我不拥有该网页,如何让它发送消息让我拦截?如:

window.webkit.messageHandlers.buttonClicked.postMessage(messageToPost);
Run Code Online (Sandbox Code Playgroud)

或者是否有其他方法可以检测到非导航按钮的点击WKWebView

javascript ios swift wkwebview

10
推荐指数
1
解决办法
2037
查看次数

Swift按键排序字典数组,其中value是可选的AnyObject

我正在直接从Parse中提取一系列字典并将它们显示在表格中.所以我真的很想处理我所掌握的数据结构(下面奇怪的结构化词典).

A PFObject[String : AnyObject?],我希望能够按任意键排序,所以我不知道对象类型,并且某些字典可能缺少密钥.因为在Parse中,如果不给属性赋值,则它根本就不存在.例如:

[
    {
        "ObjectId" : "1",
        "Name" : "Frank",
        "Age" : 32
    },
    {
        "ObjectId" : "2",
        "Name" : "Bill"
    },
    {
        "ObjectId" : "3",
        "Age" : 18
    }
    {
        "ObjectId" : "4",
        "Name" : "Susan",
        "Age" : 47
    }
Run Code Online (Sandbox Code Playgroud)

]

我希望在排序的词典之后始终按顺序排列缺少键的词典.一个例子:

原表:

ObjectId   Name       Age
1          Frank      32
2          Bill     
3                     18
4          Susan      47
Run Code Online (Sandbox Code Playgroud)

按名称排序:

ObjectId   Name       Age
2          Bill       
1          Frank      32
4          Susan      47
3                     18
Run Code Online (Sandbox Code Playgroud)

由于我对数据模型没有太多控制权,并且它的使用在整个应用程序中受到限制,我更倾向于关注算法解决方案而不是结构化.

我想出了一个方法来做到这一点,但它似乎效率低而且速度慢,我确信有人可以做得更好.

//dataModel …
Run Code Online (Sandbox Code Playgroud)

arrays sorting ios swift pfobject

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

Fabric / Crashlytics不兼容的快速版本

我已经下载并更新到最新的Fabirc / Crashlytics版本,但现在出现以下错误:

error: The following binaries use incompatible versions of Swift:
/Users/me/Library/Developer/Xcode/DerivedData/MyApp-abcdefghijk/Build/Products/SomeScheme-iphonesimulator/MyApp.app/blah/blah
/Users/me/iOS/my-project-ios/Dependencies/Fabric.framework/upload-symbols
Run Code Online (Sandbox Code Playgroud)

您可以检查更改日志,最新版本(Fabric 1.10.0,Crashlytics 3.13.0,5月10日)将以前的uploadDSYM可执行文件与结合在一起upload-symbols,这是导致问题的原因。 https://docs.fabric.io/apple/changelog.html

我已经尝试了所有典型的解决方案,清理,删除派生数据,重新启动Xcode等。

该项目在Swift 4.2中运行

有任何想法吗?

ios crashlytics swift

6
推荐指数
1
解决办法
361
查看次数

詹金斯成功,但没有生成IPA文件

我在jenkins上设置了一个mac mini slave.构建过程成功,我的.app文件和.dysm文件等都已成功创建.

Pack application and build .ipa?检查并定义了一个ipa文件名模式和一个输出目录.

当我运行构建过程时,它实际上创建了输出目录的完整路径,但是在路径的末尾,最终文件夹中没有任何内容.没有IPA.同样,.app和其他文件在工作空间构建文件夹中成功创建.

如果我将输出目录留空或将其更改为其他位置也不起作用.

詹金斯成功了解这条消息:

** BUILD SUCCEEDED **

Cleaning up previously generated .ipa files
Cleaning up previously generated .dSYM.zip files
Packaging IPA
Finished: SUCCESS
Run Code Online (Sandbox Code Playgroud)

但是,唉,没有IPA.有任何想法吗?

xcode ios jenkins ipa

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

如何在 Rails 中返回错误消息

我正在学习 rails 并且对一些基础知识感到困惑。这是我的 API 方法:

  def itunes_app_create
    begin
      app = Spaceship::Tunes::Application.create!(name: params[:itunes_app_name],
                                  primary_language: "English",
                                           version: params[:itunes_app_version],
                                               sku: params[:itunes_app_sku],
                                         bundle_id: params[:itunes_app_bundle_id],
                                           team_id: params[:itunes_team_id])
      render json: app.to_json, status: 200
    rescue
      render json: app.errors.full_messages.to_json, status: 200
    end
  end
Run Code Online (Sandbox Code Playgroud)

我的 app.errors.full_messages.to_json线路失败了,因为好吧,我只是从我看到的东西中弥补了这一点。如何返回导致方法失败的消息?

不确定它是否重要,app它不是我模型的一部分。我只需要从我的客户端应用程序调用它,然后发回结果。

作为一个附带问题,在这种情况下,我应该返回什么状态并显示错误?

error-handling ruby-on-rails fastlane

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

如何在 WKWebView httpcookiestore 中随请求发送 cookie

在 iOS 11 应用程序中,我在 WKWebView 中设置了 cookie,并通过在 safari 检查器中查看它们来验证它们是否已设置。但是,我不相信它们会在我的请求中传递。除了将它们设置webView.configuration.websiteDataStore.httpCookieStore为让它们发送请求之外,我还需要做些什么吗?

我将在这里添加我的天真代码,任何建议都会非常有帮助:

private func setCookies(for request: URLRequest) {

    // this seems to contain the session cookies I want
    guard let storedCookies = HTTPCookieStorage.shared.cookies(for: request.url!) else { return }

    if #available(iOS 11.0, *) {

        //what cookies exist currently in the webview store
        self.webView.configuration.websiteDataStore.httpCookieStore.getAllCookies({ (webViewCookies) in

            storedCookies.forEach({ (cookie) in

                if !webViewCookies.contains(cookie) {

                    //if the webview doesn't contain the stored cookie, add it
                    self.webView.configuration.websiteDataStore.httpCookieStore.setCookie(cookie, completionHandler: {

                        if let last = storedCookies.last, last == …
Run Code Online (Sandbox Code Playgroud)

cookies ios wkwebview wkwebviewconfiguration

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

Conda 不会删除包

我的命令是否做错了什么?我无法删除 Keras。

$ conda remove --name myEnv keras
Collecting package metadata (repodata.json): done
Solving environment: failed

PackagesNotFoundError: The following packages are missing from the target environment:
  - keras


$ conda list --name myEnv keras
# packages in environment at /Users/me/anaconda3/envs/myEnv:
#
# Name                    Version                   Build  Channel
keras                     2.3.1                    pypi_0    pypi
Run Code Online (Sandbox Code Playgroud)

anaconda

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

詹金斯不会使用 SSH 密钥

很抱歉不得不问这个问题,但我觉得到目前为止我已经尝试了所有关于 SO 的答案,但没有运气。

我有我的本地机器和我的远程服务器。Jenkins 已在我的服务器上启动并运行。

如果我打开终端并执行类似的操作,scp /path/to/file user@server:/path/to/wherever那么我的 ssh 无需密码即可正常工作

如果我在我的 Jenkins 工作中运行这个命令,我会得到 ' Host Key Verification Failed'

所以我知道我的 SSH 以我想要的方式正常工作,但是为什么我不能让 Jenkins 使用这个 SSH 密钥?

有趣的是,当我第一次设置 Jenkins 和密钥时它确实工作正常,然后我想我重新启动了我的本地机器,或者重新启动了 Jenkins,然后它停止了工作。很难说到底是什么原因造成的。

我还尝试了几种有关 ssh-agent 和 ssh-add 的选项,但这些选项似乎不起作用。

我验证了本地机器 .pub 位于服务器上的 /user/.ssh 文件夹中,并且也在授权密钥文件中。该文件夹归用户所有。

任何想法将不胜感激,我可以提供有关我的问题的更多信息。谢谢!

更新:

根据 Kensters 的建议,我做了su - jenkins,然后ssh server,它要求我添加到已知的主机。所以我认为这是朝着正确方向迈出的一步。但后来同样的问题仍然存在。

ssh server在使用我的myUsername帐户时没有密码之前我没有注意到的事情。但是如果我切换到jenkins用户,那么当我这样做时它会询问我的密码ssh server

我也ssh-keygen -R server按照建议尝试了无济于事。

ssh debian jenkins

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