从 Vapor 3 到 Vapor 4 的 LingoVapor 包

Posted

技术标签:

【中文标题】从 Vapor 3 到 Vapor 4 的 LingoVapor 包【英文标题】:LingoVapor package from Vapor 3 to Vapor 4 【发布时间】:2020-07-13 08:58:09 【问题描述】:

我是 swift 新手。另外,还有一个带有vapor 3的项目。现在我们应该将它升级到新版本。 我对从“Vapor 3”到“Vapor 4”的 LingoVapor 包有疑问:

我按照说明更改“Package.swift”中的以下行:

   dependencies: [
        // ???? A server-side Swift web framework.
        .package(url: "https://github.com/vapor/vapor.git", from: "4.0.0"),
        .package(url: "https://github.com/vapor/fluent.git", from: "4.0.0-rc"),
        .package(url: "https://github.com/vapor/leaf.git", from: "3.0.0"),
        .package(url: "https://github.com/vapor-community/wkhtmltopdf.git", from: "3.0.0"),
        .package(url: "https://github.com/vapor-community/lingo-vapor.git", from: "3.0.0"),
        .package(url: "https://github.com/skelpo/CSV.git", from: "1.0.0")
    ],
    targets: [
        .target(
            name: "App",
            dependencies: [
                .product(name: "Fluent", package: "fluent"),
                .product(name: "Vapor", package: "vapor"),
                .product(name: "Leaf", package: "leaf"),
                .product(name:  "wkhtmltopdf", package: "wkhtmltopdf"),
                .product(name: "LongoVapor", package: "lingo-vapor"),
                .product(name:  "CSV", package: "CSV")
            ],

当我推送“重置包缓存”时,我收到以下错误:

Resaving package dependencies
    because lingo-vapor >=3.0.0 depends on vapor 3.0.0..<4.0.0 and root depends on vapor 4.0.0..<5.0.0, lingo-vapor >=3.0.0 is forbidden.
    And because root depends on lingo-vapor 3.0.0..<4.0.0, version solving failed.

有什么办法吗?

【问题讨论】:

我建议加入 Vapor 的不和谐聊天以获得帮助 vapor-community/Lingo-Vapor 依赖于 miroslavkovac/Lingo,它的最后一次提交为 Mar 18, 2018 ...因此需要一些努力才能与 Swift5/Vapor4 一起使用。 【参考方案1】:

我已经创建了 LingoVapor 包的 Vapor 4 版本并创建了一个 PR,https://github.com/vapor-community/Lingo-Vapor/pull/10。

如果您现在想使用它,请使用分叉的 repo URL:

https://github.com/abhidsm/lingo-vapor.git 版本为 4.0.0

请通过自述文件进行设置和使用。谢谢。

【讨论】:

以上是关于从 Vapor 3 到 Vapor 4 的 LingoVapor 包的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Vapor 3 处理多部分请求

使用Swift 4.1向Heroku部署Vapor 3 beta应用程序的问题

Vapor 3 Swift 4 如何制作计时器

Vapor 不适用于 xcode 9 和 swift 4

为啥从 Psql 通过 Swift (Vapor) 到通过 Ajax 的 JQuery 的日期落后了 31 年?

如何从 Vapor 3 中的 JSON 响应中保存父子关系