发布于 2026-01-05 9 阅读
0

Hacktoberfest 已结束。感谢所有参与者!新增通过环境变量设置网站图标的功能 #4665;为首页搜索栏添加焦点边框样式 #4668;将所有缓存键从 Memcache 迁移到 Redis #4670

Hacktoberfest 已经结束了。感谢所有参与者!

添加通过环境变量设置网站图标的功能 #4665

为首页搜索栏添加焦点时的边框样式 #4668

将所有缓存键从 Memcache 迁移到 Redis #4670

又一届精彩的Hacktoberfest活动圆满结束。请跳转至文章末尾查看有关个人资料徽章的重要信息

这是DEV首次成为该活动的联合主办方。很高兴能与DigitalOcean合作,共同打造一个尽可能包容和以社区为导向的活动。

参与开源项目是学习、结识新朋友和挑战自我的绝佳机会。同时,它也是维护世界上最强大软件可及性的重要组成部分。我们有时会想当然地认为任何人都可以使用一些有史以来最杰出的软件。但情况并非一直如此,如果我们不维护好这种环境,这种情况可能还会持续下去。

开源之所以成为可能,是因为我们齐心协力,共同努力。没有任何一项技术能够做到普世皆宜,但开源领域如果能吸引合适的人参与,就能带来诸多益处。我们非常乐意推广开源的精髓。

在今年的 Hacktoberfest 活动中,DEV 代码库在一个月内收到了 500 个 pull request 。我们合并了其中的 276 个,并且仍在处理积压的未合并 pull request。当然,由于各种原因,有些 pull request 在处理过程中被关闭了,但我们仍然非常感谢这些提交的 pull request。

开发团队将发布关于我们提供该平台作为可重用社区建设软件的路线图的更新,我们希望最终能够赋能网络上成千上万个积极、建设性的社区。

像这样简单直接的拉取请求能让我们朝着目标迈进……

添加通过环境变量设置网站图标的功能 #4665

这是哪种类型的公关稿?(可多选)

  • [ ] 重构
  • [x] 功能
  • [ ] 错误修复
  • [ ] 文档更新

描述

为了实现平台的通用化,技术管理员现在可以提供指向他们选择的自定义网站图标的 URL。

相关票务和文件

解决 #4659

已添加到文档中?

  • [ ] docs.dev.to
  • [ ] 自述文件
  • [x] 无需任何文件

感谢@nadiyaka促成此事。

另一个我非常喜欢的小型 pull request 是为网站主搜索栏添加自定义焦点轮廓,这提升了网站的易用性和设计感。只需几行新代码,我们就拥有了全新的功能。

为首页搜索栏添加焦点时的边框样式 #4668

这是哪种类型的公关稿?(可多选)

  • [ ] 重构
  • [x] 功能
  • [ ] 错误修复
  • [ ] 文档更新

描述

如 #4663 中所述,首页搜索栏在获得焦点时应该设置样式,以便更好地表明它已获得焦点。该问题中的示例建议使用不同的背景颜色,但我希望提出一个解决方案,即使用边框来实现焦点样式。我认为这更符合浏览器的默认样式以及许多网站的样式(因此用户更容易接受这种模式)。我使用了与导航控件边框相同的颜色。截图如下。

相关票务和文件

#4663

移动端和桌面端屏幕截图/录制视频(如有界面更改)

  • 默认主题:2019年10月30日 22-23-08

  • 其他主题:

屏幕截图 2019-10-31 11:57:48

屏幕截图 2019-10-31 11:59:28

屏幕截图 2019-10-31 12:00:15

屏幕截图 2019-10-31 12:02:16

已添加到文档中?

  • [ ] docs.dev.to
  • [ ] 自述文件
  • [x] 无需任何文件

[可选] 哪个 GIF 最能描述这条公关稿或者它带给你的感受?

雨盒

感谢@emi_codes提供的信息。

当然,这只是本月合并的 276 个拉取请求中的几个,但我们还有很多工作要做。

我们团队成员 @molly_struve 的这个项目是一个值得大家贡献的新课题。

将所有缓存键从 Memcache 迁移到 Redis #4670

我们为什么要迁移到 Redis

Memcache 在缓存方面有点像个黑匣子。我们很难了解它内部存储了什么数据,以及我们是如何使用它的。因此,我们选择将应用程序缓存切换到 Redis。Redis 可以让我们更深入地了解缓存的使用情况,并更好地控制缓存键。它还具有一些很棒的功能,例如后台删除和用于处理复杂逻辑的 Lua 脚本。此外,如果我们将来需要使用 Sidekiq 之类的 worker/job 服务,它还可以作为该服务的数据存储。

转移钥匙的策略

为了迁移到 Redis,我们大部分情况下会一次迁移一个键。这样可以确保不会因为缓存过大而导致速度变慢。同时,这也有助于我们评估缓存的使用情况,并确保每次使用都是必要的。

这个 PR中,我创建了第二个缓存存储RedisRailsCache ,它的行为与 Rails.cache 完全相同,但指向的是 Redis。目标是将所有 Rails.cache 调用替换为 RedisRailsCache,最终将 Rails.cache 也指向 Redis。

您可以如何提供帮助!

有很多缓存键需要迁移,为了最大程度地降低风险,我倾向于逐个迁移,所以我非常需要大家的帮助。欢迎大家帮忙把缓存键迁移到 Redis!

移动钥匙的注意事项

这些只是编写代码时的一个通用指南,旨在启发你的思考。如果你对其中任何一点有疑问,请提交一个 PR,让 DEV 核心团队参与讨论。提交 PR 时,欢迎随时提及我 (mstruve) 或 SRE 团队!

  • 这个储藏点可以安全冷却吗?
  • 这个缓存键合理吗?有没有更好/更清晰的缓存键?
  • 这到底需不需要缓存?有些情况下我们可能不需要缓存,直接移除缓存或许比切换到 Redis 更好。
  • 目前的到期期限合理吗?

更新!!!

移动任何包含时间戳的键时,请您重新格式化时间戳,.rfc3339以免缓存键中出现奇怪的空格。谢谢!

示例 PR

移动键:https://github.com/thepracticaldev/dev.to/pull/4684 https://github.com/thepracticaldev/dev.to/pull/4690(注意:有相应的删除命令!) 删除键:https://github.com/thepracticaldev/dev.to/pull/4689

如果你想了解更多为 DEV 做贡献的方式,那方面有很多机会。

徽章即将推出

Hacktoberfest徽章

参与 2019 年 Hacktoberfest 即可获得 DEV 个人资料徽章!徽章将在几天后拉取请求验证期结束后立即发放。如果您已通过 Twitter 验证 DEV 帐户,则还需要在设置中添加 GitHub 身份验证,才能获得参与积分。

我再说一遍:您需要在个人资料设置中添加 GitHub 身份验证,才能获得参与徽章。

当然,如果您参加了 Hacktoberfest 但尚未注册成为 DEV 会员,请使用 GitHub 身份验证注册。😄

祝您编程愉快!

文章来源:https://dev.to/devteam/hacktoberfest-has-finished-thanks-to-all-those-who-took-part-2fbj