JHipster v5.0.0 正式发布

JHipster v5.0.0 正式发布

(译者:2018 年 6 月 20 日,JHipster 5.0 在经历了近一年的准备后终于正式 release 了,之前几个月几个大佬 Julien,Deepu,Matt,以及新加入的 Christophe,一直在不断定蓝图、编码、步道,终于在经过了 4 个 beta 版本后正式发布了,以下为 JHipster 中文化站的引用,原译文请访问官网

JHipster 5 第一个稳定版正式发布了!

下面是我们 JHipster 5.0.0 前 4 个 beta 版本的 release notes。

前端

  • 支持了 React #6044 (已经不是实验性特性了)
    • 同样支持了 Angular 的特性 (包括下面提到的对话框和目录结构)
    • 使用 Redux 做状态管理
    • 使用 React Router v4 做路由
    • 使用 Typescript
    • 使用 Webpack 4 编译,和之前的 Angular 设置类似
    • Jest + Mocha + Chai 单元测试以及极高测试覆盖率
  • 增强了 Angular 支持
    • 升级到 Angular 6,感谢 William Marques in #7582
    • 包含迁移到 Webpack 4, 带来更佳的性能表现 (it varies depending on your situation, but you can expect a noticeable positive impact) #7186
    • admin 模块延迟加载 #7235
    • 重新设计了实体的 创建/编辑 页面,它们现在是普通页面而不再是弹出页面了 #7368
    • 优化了 AOT (Ahead of Time,预编译)技术
    • 实体对象的目录结构改进了,尤其是微服务目前根据服务分组了。增加了个 --skip-ui-grouping 标志来保留原来的结构 #7079
  • 使 Webpack 4 同时支持 Angular 和 React,编译更快。
  • 支持了 Jest ,替代了原来的 Puppeteer (以及 PhantomJS) ,Angular 和 React 都将安装和测试得更快 (以及并行测试)。这同时解决了 CI 做前端测试时的一些问题 (尤其是和 Jenkins 一起使用时),不再需要本地包安装。参考 #7636 and #7663 from William Marques.
  • 支持了 Prettier #6906
    • Angular 和 React 现在开始使用 Prettier 来做代码格式化。
    • 同时增加了 Husky 并 list-staged 来做提交检测钩子
    • 生成应用时请使用 skip-commit-hook 来禁用提交检测
    • Prettier 也配置检测了 CSS 和 SCSS 文件 #7451.
  • 更新到 Font Awesome 5 #7516.
  • 移除了 AngularJS
    • 目前我们关注在 Angular 5+ 了,我们已经移除了老的 AngularJS 1.x 支持
    • 连带的移除了 Bower 和 Gulp 支持

后端

  • 支持了 Spring Boot 2.0.0 #7061
    • 所有的 Spring 组件都更新了,包括 Spring Data, Spring Security 和 Spring Cloud
    • Spring Boot 的相关设置也更新了
  • 概述了 REST 支持,删除了用注解 @PutMapping 来创建实体 #7425.
  • 更好地支持了 OAuth2,感谢 Fabien Arrault ,由 Matt Raible 集成。参考 #7666.
  • 迁移了 swagger-codegen 到 openapi-generator (新组件是 swagger-codegen 的社区分支) 由 Christophe Bornet 支持,他也是 JHipster 核心组成员以及 openapi-generator 团队成员。参考 #7728.
  • 支持了 Memcached,作为 Spring Cache 实现的一个可选项。这个在 Heroku, GCP and AWS 等平台上使用比用 Ehcache/Hazelcast/Infinispan 更方便。

子命令和工具

子命令(Sub-generators)

  • JDL v2 支持了创建应用 #7339
    • 所以语言也进化了,现在可以通过 JDL 来创建引用了,而不只是实体对象。这对于希望分享和重用 JHipster 配置的场景来说是个大消息。
  • 新的 JHipster 蓝图(blueprints)
    • 蓝图系统使得扩展或替换 JHipster 模板更方便了,新的 JHipster Kotlin 工作于此。目前文档还没有完整,但是 JHipster Kotlin 已经给出了例子。
  • 新的之命令(Sub-generator)来发布到 AWS 容器 #7035
  • 初级的 Istio 支持 #7337#7695 由 Google 的 Ray Tsang 增加,以及 #7697 by Srinivasa Vasu. 以及 Pierre Besson.
  • 支持了 Google App Engine 上部署 monoliths,由 Google 的 Ray Tsang 提供,参考 #7765.

所有的 ticket 以及 PR

PR (pull requests)

如同以往, 请在这里查看所有的 tickets 和 pull requests.

如何更新

自动更新

自动更新参考 JHipster upgrade sub-generator,在一个已有项目上:

升级 JHipster 版本:

yarn global upgrade generator-jhipster

运行之命令:

jhipster upgrade

手动升级

要手动升级,首先升级 JHipster 版本:

yarn global upgrade generator-jhipster

如果已有项目,还继续使用原来的 JHipster 版本。 要升级项目,首先删除 node_modules 目录,然后运行:

jhipster

也可以升级整个项目以及实体对象:

jhipster --with-entities

也可以一个个升级实体对象,比如升级对象 Foo

jhipster entity Foo

帮助和问题

如果发现此版本的问题,请:

如果是一个非常紧急或安全问题,请:

上篇用 Docker 构建禅道环境
下篇用 starred 生成 GitHub star 的 Awesome List