写点什么

GitHub Satellite 2020:让 GitHub 和 NPM 为 JavaScript 开发者带来更多价值

  • 2020-10-02
  • 本文字数:1155 字

    阅读完需:约 4 分钟

GitHub Satellite 2020:让GitHub和NPM为JavaScript开发者带来更多价值

GitHub 的 npm 产品经理 Edward Thomson 在最近举行的 GitHub Satellite 2020 大会上解释了 npm 被 GitHub 收购后对 JavaScript 开发者的影响,以及如何在开源和非开源的工作中充分发挥 GitHub 的作用。


GitHub 在今年 4 月完成了对 npm 的收购。GitHub 随后表示计划从三个方面发展 npm:基础设施、开发者体验和社区。Thomson 在讲话中详细介绍了 GitHub 目前为改进 npm CLI 和 npm 注册表所采取的行动。


Thomson 对 CLI 方面所做的努力发表了评论:


现在,团队正在开发 npm v7,CLI 的下一个版本。这实际上是一个非常大的转变。CLI 团队正在进行一些重大的重构,对正确性和性能进行了改进。他们正在让软件变得更安全,并试图提高与生态系统中其他工具的兼容性。


npm CLI 团队正在改进 npm audit 的体验,Thomson 通过展示 npm v6 和 npm v7 之间不同的 CLI 输出来演示新的功能。在 npm v6 中,minimist 包的漏洞以表格形式显示出来。将 minimist 作为依赖项的包都出现了这个问题。在 npm v7 中,有关安全漏洞以及如何修复它们的信息以更简洁的形式显示出来。minimist 的安全问题只显示一次。npm v7 意识到 minimist 是导致问题的唯一包,所以会提示用户运行 npm audit fix 来自动修复问题。


npm 6 可能会推荐通过依赖更新来修复问题——一个包含重大变化的更新,可能需要开发人员重构他们的代码,但 npm 7 可能会尝试通过降级包版本来自动修复问题。此外,npm v7 可以更好地与 yarn(及 yarn 锁文件)共存。Thomson 解释说:


我们希望确保这两个工具之间能够尽可能完美地兼容。这两个命令行接口(yarn 和 npm)曾经是相互独立的,但是在 npm 7 中,我们将看到它们在兼容性方面的巨大改进。


npm v7 也将支持工作区特性,这是一个在大型项目中很流行的特性。npm v7 将至少支持 yarn 工作区特性,并为 v8 中的更高级的工作区特性奠定基础。有了工作区特性,开发人员只需要运行一次安装脚本(例如,yarn install)就可以配置多个包,并一次性安装所有包。多个项目可以使用单个锁文件而不是使用多个不同的锁文件,这样就可以减少冲突,评审起来也更容易。


至于 npm 注册中心,GitHub 尝试更好地整合 npm 和 GitHub,加强 npm 的基础设施,让 npm 的付费客户转到 GitHub。Thomson 解释说:


npm 有几种私人托管包付费计划,我们准备让付费的 npm 客户转到 GitHub。这样我们就可以让每种代码库发挥它们各自的优势,GitHub 成为托管私有包的一个很好的解决方案,而 npm 继续专注于成为开源包的一个很好的公共注册中心。


Thomson 邀请开发者针对 GitHub 的这些举措提供反馈。开发者可以查看npm RFCnpm博客。Thomson 的演讲视频可以在网上找到,其中包含了 GitHub 针对 npm 的举措的更多信息。


原文 l 链接


The JavaScript Coder’s Guide to Getting More from GitHub and Npm - GitHub Satellite 2020


2020-10-02 10:002911

评论

发布
暂无评论
发现更多内容

OpenGauss与NVM

daydayup

SSM框架——使用MyBatis Generator自动创建代码

java易二三

编程 程序员 mybatis 计算机

明道云联合Kyligence结合示范性场景应用

明道云

JSP的内置对象

java易二三

编程 程序员 计算机

北航基于openEuler构建工业机器人操作系统,打造“开箱即用”的机器人基础软件平台

openEuler

Linux 操作系统 机器人 嵌入式 openEuler

产业共振 智能涌现!8月16日飞桨携手生态伙伴带来大模型企业应用创新实践

飞桨PaddlePaddle

人工智能 百度飞桨 百度AI 文心大模型

一文详述流媒体传输网络MediaUni

阿里云视频云

云计算 视频云

NKD:容器云集群与 OS 一体化运维利器

openEuler

Linux Kubernetes 云原生 操作系统 openEuler

山东布谷科技直播系统源码热点分析:不同芯片实现高质量编码与渲染视频的GPU加速功能

山东布谷科技

Java日记——使用强大的Elastisearch搜索引擎

java易二三

Java 编程 程序员 计算机

【我和openGauss的故事】SpringBoot连接openGauss项目实战

daydayup

BenchmarkSQL 5.0 压测 openGauss 5.0.0 案例分享

daydayup

GitOps 与 DevOps:了解关键差异,为企业做出最佳选择

SEAL安全

DevOps 运维 gitops 企业号 8 月 PK 榜

内卷和躺平之外,职场还有其他选择

老张

职场成长

分享实录 | 将 NGINX 打造成功能强大的 API 网关(上)

NGINX开源社区

nginx 微服务 k8s API api 网关

选择FastAPI或Flask:Python Web开发框架的终极指南

Apifox

Python flask 框架 web开发 FastApi

国产 etl engine 监控面板 为管理者掌握平台运行情况,决策执行方案提供即时数据支撑

weigeonlyyou

数据库 数据交换 物联网 ETL 云数据迁移

【我和openGauss的故事】openGauss容灾集群搭建过程代码学习记录

daydayup

透过源码,捋清楚循环依赖到底是如何解决的!

江南一点雨

Java spring

移动云操作系统改造技术实践分享,跨操作系统云主机迁移优化(一)

openEuler

Linux centos 操作系统 迁移 openEuler

研发提测前测试到底能做些什么 | 京东云技术团队

京东科技开发者

测试 测试开发 企业号 8 月 PK 榜

【我与openGauss的故事系列】openGauss 5.0.0全密态数据库应用小试

daydayup

鸿蒙智联再出发,携手伙伴共赢空间智能化,创造无限可能

HarmonyOS开发者

HarmonyOS

Java中final、finally和finalize的区别

java易二三

Java 程序员 计算机 final

买量业务福音:自有App运行小游戏

FinFish

小游戏 App运行小游戏 游戏买量

OpenSSL 3.0.0 设计(二)|Core 和 Provider 设计

铜锁开源密码库

开源 开发者 算法 信息安全 密码学

哪些项目管理工具领跑2023年中国市场?全新榜单揭秘

爱吃小舅的鱼

项目管理 项目管理软件

英特尔CEO称AI PC时代于今秋开启 联想将首批发布

E科讯

GitHub Satellite 2020:让GitHub和NPM为JavaScript开发者带来更多价值_大前端_Bruno Couriol_InfoQ精选文章