写点什么

自建开发工具系列 -Webkit 内存动量监控 UI(六)

用户头像
Tim
关注
发布于: 19 小时前
自建开发工具系列-Webkit内存动量监控UI(六)

有了工程 0.1 版,就可以发布在仓库中供用户反馈和根据反馈来改进了,一般常见的这种改进意见的互动在 github 上的 issues 里可以看到。本篇先把发布流程和维护流程连接起来。


本篇介绍发布工具的环节


NPM 发布


如果没有 npm 账号,需要在https://www.npmjs.com上注册一个自己发布用的账号,需要绑定邮箱,如图



接着需要明确设置 npm 的源


> npm config set registry http://registry.npmjs.org
复制代码


然后检查设置结果是否正确


> npm config get registryhttp://registry.npmjs.org
复制代码


然后登录 npm 账号


tim@Tim ~ % npm loginUsername: windbringersPassword: Email: (this IS public) windbringers@163.comLogged in as windbringers on https://registry.npmjs.org/.
复制代码


成功登录会显示用户名和仓库源地址。


长期维护一个工具,需要改进意见的互动在 github 上的 issues 里可以看到,这个时候就需要更改一下 package.json 中的提交信息, 下面示范了从原 package.json 做的更改


--- a/package.json+++ b/package.json@@ -1,7 +1,19 @@ {   "name": "tools-webkit-memory",   "version": "0.1.0",-  "private": true,+  "description": "Webkit memory monitor",+  "main": "lib/App.js",+  "private": false,+  "author": "windbringers",+  "license": "ISC",+  "repository": {+    "type": "git",+    "url": "https://gitee.com/windbringer/tools-webkit-memory.git"+  },+  "bugs": {+    "url": "https://gitee.com/windbringer/tools-webkit-memory/issues"+  },+  "homepage": "https://gitee.com/windbringer/tools-webkit-memory",   "dependencies": {     "@testing-library/jest-dom": "^5.11.4",     "@testing-library/react": "^11.1.0",
复制代码



输出的模块名和在 index.js 的名字也统一改一下(只是为了维护时看起来清晰)


--- a/src/App.tsx+++ b/src/App.tsx@@ -3,7 +3,7 @@ import './App.css'; import displayPanel from './utils'; import { TWMProps, UtilsInterfaces } from './config/api'; -class App extends React.Component {+class TWM extends React.Component {   toolsNode: React.RefObject<HTMLDivElement>;   twm: UtilsInterfaces;   @@ -35,4 +35,4 @@ class App extends React.Component {   } } -export default App;+export default TWM;diff --git a/src/index.js b/src/index.jsindex ef2edf8..15fe1a0 100644--- a/src/index.js+++ b/src/index.js@@ -1,12 +1,12 @@ import React from 'react'; import ReactDOM from 'react-dom'; import './index.css';-import App from './App';+import TWM from './App'; import reportWebVitals from './reportWebVitals';  ReactDOM.render(   <React.StrictMode>-    <App />+    <TWM />   </React.StrictMode>,   document.getElementById('root') );
复制代码


修改完成后进行 npm publish 提交


tim@Tim tools-webkit-memory % npm publish      npm notice npm notice 📦  tools-webkit-memory@0.1.0npm notice === Tarball Contents === npm notice 1.7kB change                npm notice 564B  src/App.css           npm notice 366B  src/index.css         npm notice 1.7kB public/index.html     npm notice 3.9kB public/favicon.ico    npm notice 77B   lib/config/api.js     npm notice 3.1kB lib/App.js            npm notice 246B  src/App.test.js       npm notice 500B  src/index.js          npm notice 362B  src/reportWebVitals.jsnpm notice 241B  src/setupTests.js     npm notice 4.0kB lib/utils.js          npm notice 492B  public/manifest.json  npm notice 1.4kB package.json          npm notice 321B  tsconfig.json         npm notice 3.4kB README.md             npm notice 5.3kB public/logo192.png    npm notice 9.7kB public/logo512.png    npm notice 2.6kB src/logo.svg          npm notice 286B  lib/config/api.d.ts   npm notice 267B  src/config/api.ts     npm notice 342B  lib/App.d.ts          npm notice 40B   src/react-app-env.d.tsnpm notice 112B  lib/utils.d.ts        npm notice 3.9kB src/utils.ts          npm notice 972B  src/App.tsx           npm notice 67B   public/robots.txt     npm notice === Tarball Details === npm notice name:          tools-webkit-memory                     npm notice version:       0.1.0                                   npm notice package size:  30.7 kB                                 npm notice unpacked size: 45.8 kB                                 npm notice shasum:        4764bc395c693f287abac961f66ae76218925c51npm notice integrity:     sha512-MsHx4tt8vFnj6[...]8LukTg/J+uGyg==npm notice total files:   27                                      npm notice + tools-webkit-memory@0.1.0tim@Tim tools-webkit-memory % 
复制代码


现在就提交成功了,可以到搜索一下


tim@Tim tools-webkit-memory % npm info "tools-webkit-memory"
tools-webkit-memory@0.1.0 | ISC | deps: 12 | versions: 1Webkit memory monitorhttps://gitee.com/windbringer/tools-webkit-memory
dist.tarball: https://registry.npmjs.org/tools-webkit-memory/-/tools-webkit-memory-0.1.0.tgz.shasum: 4764bc395c693f287abac961f66ae76218925c51.integrity: sha512-MsHx4tt8vFnj6dOybpQGi5JtXXIXtmdvWX91RP1qD8MDMhqra2hFPBglnwI8lRsR4mYJMQgIX8LukTg/J+uGyg==.unpackedSize: 45.8 kB
dependencies:@testing-library/jest-dom: ^5.11.4 @types/react: ^17.0.14 @testing-library/react: ^11.1.0 react-dom: ^17.0.2 @testing-library/user-event: ^12.1.10 react-scripts: 4.0.3 @types/jest: ^26.0.24 react: ^17.0.2 @types/node: ^16.3.1 typescript: ^4.3.5 @types/react-dom: ^17.0.9 web-vitals: ^1.0.1
maintainers:- windbringers <windbringers@163.com>
dist-tags:latest: 0.1.0
published a minute ago by windbringers <windbringers@163.com>tim@Tim tools-webkit-memory %
复制代码


这个时候,到 npm 官方页搜索,可以找到这个库的页面,首页和改进意见的互动入口也可以看到:



写到这里,大家也发现好像哪里有些不对。确实,readme 文件没写,被发布到仓库了。。。


这里就更改一下 readme,帮助用户使用。


然后再更改一下 package.json 中的版本,这个版本规则可以参考semver


..."version": "0.1.1",...
复制代码


修改以后,再进行 npm publish,就可以看到 npm 上的页面更新了



今天发布工具就先介绍到这里,有了这套流程,工具的长期迭代就可以有迹可循了。

发布于: 19 小时前阅读数: 9
用户头像

Tim

关注

还未添加个人签名 2018.05.01 加入

还未添加个人简介

评论

发布
暂无评论
自建开发工具系列-Webkit内存动量监控UI(六)