Docs 菜单
Docs 主页
/ / /
Mongoid
/

升级 Mongoid

在此页面上

  • 版本控制
  • 如何升级 Mongoid
  • 升级之前
  • 升级 Mongoid
  • 加载默认值和功能标志
  • 弃用策略

Mongoid 为用户迁移到新版本提供了稳定的升级路径。

每个 Mongoid发布都有一个 major.minor.patch格式的版本号。 从 Mongoid 7.4开始, Mongoid 使用 语义版本控制 (SemVer) ,这通常意味着:

  • 重大更改、启用新功能和删除已弃用功能只能在主要版本中进行。

  • 将使用功能标志添加新功能,必须通过选择加入配置更改来启用功能标志。 这些功能标志可能会添加到主要版本或次要版本中。

  • 功能可能会在主要版本或次要版本中被标记为已弃用,但最早要到下一个主要版本时才会被删除。

  • 补丁版本将仅包含非重大修复和安全更新。

警告

Mongoid 7.3及更早版本不严格遵守 SemVer,即使在次要版本中也可能包含重大更改。 用户在升级到这些版本时应格外小心。

以下概述了我们推荐的升级到新 Mongoid 版本的过程:

  1. 单独升级到每个次要版本。

    示例,如果您要从 Mongoid 7.4升级到8.1 ,我们建议您按照以下步骤获取每个次要版本的最新补丁版本,例如 首先是7.5 .x,然后是8.0 .x,最后是8.1 .x。

  2. 升级之前,请确保已将load_defaults设立为当前版本。

    如果您尚未在当前版本上启用最新行为,则应在升级之前启用。

  3. 升级时请仔细查看发布说明

  4. 在新版本上测试您的应用。

    您的应用应在新的 Mongoid 版本上“按原样”进行测试并发布,而无需调整load_defaults或任何功能标志。

  5. 确认步骤4稳定后,设立load_defaults设置为新版本以启用新功能。 此时还要修复所有弃用警告。

    您还可以使用功能标志逐项启用新功能。

引入功能标志后,它将有一个保留以前(传统)功能的默认值。 目前,我们鼓励用户手动将该标志设置为新值,以尝试新功能。

在下一个主要发布,将翻转该标志的默认值以启用新功能。 此时,该标志本身将被标记为已弃用。 最后,在后续的主要版本发布中,将完全从配置中删除已弃用标志。

添加功能标志是为了方便升级,但并不打算永久支持。

Mongoid 可能会不时弃用特性、功能、方法、常量等。 为此,Mongoid 可能会执行以下一项或多项操作:

然后,Mongoid 可能会在下一个主要版本中删除已弃用的功能。

标记为@api private的方法可以在不弃用的情况下删除,即使此类方法在Ruby中为public

后退

版本说明