即使有法拉第0.16.2
和@BobbyMcWho的修复,fastlane 也有测试失败:
Failures:
1) Spaceship::Portal::Persons should change role
Failure/Error: expect { person.change_role("member") }.to_not(raise_error)
expected no Exception, got #<RuntimeError: can't modify frozen String> with backtrace:
# ./spaceship/lib/spaceship/client.rb:811:in `force_encoding'
# ./spaceship/lib/spaceship/client.rb:811:in `log_response'
# ./spaceship/lib/spaceship/client.rb:846:in `block in send_request'
# ./spaceship/lib/spaceship/client.rb:620:in `with_retry'
# ./spaceship/lib/spaceship/client.rb:844:in `send_request'
# ./spaceship/lib/spaceship/client.rb:688:in `request'
# ./spaceship/lib/spaceship/portal/portal_client.rb:449:in `team_set_role'
# ./spaceship/lib/spaceship/portal/person.rb:45:in `change_role'
# ./spaceship/spec/portal/person_spec.rb:58:in `block (3 levels) in <top (required)>'
# ./spaceship/spec/portal/person_spec.rb:58:in `block (2 levels) in <top (required)>'
# ./spaceship/spec/portal/person_spec.rb:58:in `block (2 levels) in <top (required)>'
2) Spaceship::Tunes::IAPList IAPList can delete
Failure/Error: deleted = app.in_app_purchases.find("go.find.me").delete!
RuntimeError:
can't modify frozen String
# ./spaceship/lib/spaceship/client.rb:811:in `force_encoding'
# ./spaceship/lib/spaceship/client.rb:811:in `log_response'
# ./spaceship/lib/spaceship/client.rb:846:in `block in send_request'
# ./spaceship/lib/spaceship/client.rb:620:in `with_retry'
# ./spaceship/lib/spaceship/client.rb:844:in `send_request'
# ./spaceship/lib/spaceship/client.rb:688:in `request'
# ./spaceship/lib/spaceship/tunes/tunes_client.rb:1235:in `delete_iap!'
# ./spaceship/lib/spaceship/tunes/iap_list.rb:72:in `delete!'
# ./spaceship/spec/tunes/iap_list_spec.rb:28:in `block (3 levels) in <top (required)>'
3) Spaceship::Tunes::Members members creates a new member role: admin, apps: all
Failure/Error: Spaceship::Members.create!(firstname: "Helmut", lastname: "Januschka", email_address: "[email protected]")
RuntimeError:
can't modify frozen String
# ./spaceship/lib/spaceship/client.rb:811:in `force_encoding'
# ./spaceship/lib/spaceship/client.rb:811:in `log_response'
# ./spaceship/lib/spaceship/client.rb:846:in `block in send_request'
# ./spaceship/lib/spaceship/client.rb:620:in `with_retry'
# ./spaceship/lib/spaceship/client.rb:844:in `send_request'
# ./spaceship/lib/spaceship/client.rb:688:in `request'
# ./spaceship/lib/spaceship/tunes/tunes_client.rb:502:in `create_member!'
# ./spaceship/lib/spaceship/tunes/members.rb:26:in `create!'
# ./spaceship/spec/tunes/members_spec.rb:19:in `block (4 levels) in <top (required)>'
...
PR 供参考: https ://github.com/fastlane/fastlane/pull/15407
请注意,我们的测试在 macOS 和 Ubuntu 上的 ruby 2.3 上没有失败。
这应该由 fastlane/fastlane#15403 中的这一行修复,我认为这是某处冻结字符串文字魔术注释的副作用
编辑:~直到 lostisland/faraday_middleware#196 被批准和发布后才能发布~ Edit2:它是向后兼容的
是的,前进的道路在这里非常明确 - 我们将尽快推出一个新版本。
但是现在有成千上万的 Fastlane 安装(和其他软件)被破坏,这就是为什么我认为再次明确报告这一点很重要。
有没有办法在 0.16.3 中再次进行这项工作?
我不在一个可以使用计算机的地方,但是粗略地浏览一下手机上的文件,在我看来,在法拉第的某个地方,我们正在将请求正文设置为冻结的字符串。 如果我们可以找到将请求正文设置为冻结字符串的位置,那么这应该可以解决快速通道中的问题
@janpio我怀疑#1039 应该解决正文中冻结字符串文字的问题。
感谢您在修复出现时挂在那里。 感谢 BobbyMcWho 实施!
我很好奇其他适配器中是否需要任何_更多_可变的主体字符串?
我浏览了该项目,没有其他任何东西立即引起我的注意,大多数冻结的文字都是错误消息,或者以不希望它们可变的方式使用
我在使用法拉第 0.16.2 和 elasticsearch-transport(searchkick 的依赖项)时也遇到过这种情况。 感谢您在@BobbyMcWho 中添加补丁!
@zspencer如果您现在需要它,您可能必须指向 gemfile 中的 0.16.x 分支,直到维护者有机会发布 0.16.3
谢谢! 我已经这样做了。 我想确保遇到这个问题并在他们的谷歌查询中添加诸如 searchkick 和 elasticsearch 之类的词的人会发现这个问题。 (和修复!)
大家好,对于 v0.16.x 版本造成的所有干扰,我们深表歉意。
我们刚刚执行了一个 ROLLBACK RELEASE v0.17.0,它直接跟随最新的工作版本 v0.15.4。
请更新到该版本以解决向后兼容性问题。
更多信息在这里: https ://github.com/lostisland/faraday/releases/tag/v0.17.0
感谢@iMacTia ,这是否也适用于faraday_middleware
,到目前为止我们一直保持与faraday
相同的版本?
@janpio对不起,我不确定我是否理解。 这个问题不应该以任何方式影响faraday_middleware
,因为我们自 2 月以来没有发布任何新版本。
我知道这个 PR旨在增加与 0.16 的兼容性,但不会再发布了。
一旦我们发布 Faraday v1.0,我们还将更新 Faraday Middleware 并发布兼容的 v1.0。
如果您要问其他问题,请告诉我😄
或多或少 - 在我们的 gemspec 中faraday_middleware
被注释为in sync with faraday
所以我想知道是否真的需要一个更新的版本。 如果不是这种情况,我们将继续使用旧的。
Faraday Middleware v0.13.1 在 Faraday v0.15.4 上运行良好,所以我希望它在 v0.17.0 上也能正常运行。 我会触发一个主构建虽然只是为了确定👍
@janpio触发了https://travis-ci.org/lostisland/faraday_middleware/builds/595051325 ,您可以在日志中看到使用了 Faraday v0.17.0 并且所有测试都通过了🎉
最有用的评论
@janpio我怀疑#1039 应该解决正文中冻结字符串文字的问题。