2023/03/18

[npm] 解決 npm glob-parent 版本過舊的安全性問題

markdown ### 問題 最近在一個舊的專案採用 webpack 4.x 的版本,最近要修改檔案,要在能正常執行下,想要一併更新一下開發套件版本。 原本環境: - typescript 3.9.5 - ts-loader 7.0.5 - webpack 4.43.0 - webpack-cli 4.9.1 執行 `npm audit fix` 之後,已修正不少套件相依版本,但仍有安全性相依版本的問題,即便依照指令再做一次 fix 的動作仍無法更新修正。
glob-parent  <5.1.2
Severity: high
glob-parent before 5.1.2 vulnerable to Regular Expression Denial of Service in enclosure regex - https://github.com/advisories/GHSA-ww39-953v-wcq6
fix available via `npm audit fix`
node_modules/watchpack-chokidar2/node_modules/glob-parent
  chokidar  1.0.0-rc1 - 2.1.8
  Depends on vulnerable versions of glob-parent
  node_modules/watchpack-chokidar2/node_modules/chokidar
    watchpack-chokidar2  *
    Depends on vulnerable versions of chokidar
    node_modules/watchpack-chokidar2
      watchpack  1.7.2 - 1.7.5
      Depends on vulnerable versions of watchpack-chokidar2
      node_modules/watchpack
        webpack  4.44.0 - 4.46.0
        Depends on vulnerable versions of watchpack
        node_modules/webpack
由於 GitHub 的機器人找出這個安全性問題,而且風險值很高,雖然不更新時,可正確產出結果,但是總是有個風險在。 當然直接升級 webpack v5.x 後,此安全問題可以解決,但是在跑專案時會出錯,以暫時不升版的狀況下,該如何更新版本而不出錯才是當前要解決的問題。

程式開發者不能不知道的 GitHub Copilot

markdown ### 前言 GitHub 在 2021 六月時推出 AI 程式碼工具 Copilot。它可以幫助開發者在寫程式時提供自動完成程式建議。基於 OpenAI Codex 可即時在編輯器作用。相較於現在超及熱門的 ChatGPT,[GitHub Copilot](https://github.com/features/copilot) 是更適合開發人員使用的工具。然而 Microsoft 就在昨日還隆重介紹了 [Microsoft 365 Copilot](https://blogs.microsoft.com/blog/2023/03/16/introducing-microsoft-365-copilot-your-copilot-for-work/?WT.mc_id=DT-MVP-5002629),要把它融入日常工作流程中,現在完全不能忽視 Copilot 了呀~ 首先還是先來把工具搭配 Copilot 搞定吧!

2023/02/28

[Visual Studio 2022] v17.5 新功能 - Dev Tunnels 開發人員通道

markdown 開發網站專案,若是要暫時展示開發進度,要想各種方法把網站對外開放。不管是架在測試機,或是佈署到雲端,又或是透過 ngrok 或自架 nginx 伺服器反向代理。目前在 v17.5 版本中可以輕易達到了。 ### 必要條件 - Visual Studio 2022 v17.5 版本 (Visual Studio for Mac 不支援) - 啟用開發人員通道預覽功能 - 僅支援 ASP.NET Core 網站專案 (一個或多個)

2023/02/27

[macOS] PHP 7.4 在 Homebrew 近期更新升版後發生 Library not loaded 錯誤

markdown ### 問題 在月初更新了 PHP 的版本,而最新版本來到了 PHP 8.2。近期開發的專案都以 PHP 8.1 為主,也並未發現異常。剛好最近在修改舊專案,是跑在 PHP 7.4 的版本,這時才發現無法正常運作。

[Visual Studio 2022] v17.5 新功能 - Markdown

markdown 在 Visual Studio Code 已經用得很習慣的 Markdown 編輯預覽,終於也在 Visual Studio 2022 出現了。 只能說 VS Code 把編輯器功能做得太棒,養大了開發者的胃口,在編輯器都有的功能,怎麼能在地表最強 IDE 沒有呢? 搭啦~ 不用開外掛,預覽 Markdown 內建囉! ### Markdown 預覽 開啟任何 *.md 的檔案,即可看到 "Preview" 按鈕,點擊即在右方出現預覽內容,或是按快速鍵 Shift+F7 開啟預覽
以後不用再多開 VS Code 來編輯 Markdown 了

[Visual Studio 2022] v17.5 新功能 - Quick Add New Files 快速新增檔案

markdown ### 前言 過去在 Visual Studio 要新增檔案都要在目錄上按右鍵再一層一層增加目錄或檔案,著實沒有效率。 超希望在 Visual Studio Code 新增檔案的方式能夠出現在 Visual Stduio 上。 在 Visual Studio v17.5 版終於把這項功能補上了,甚至比預期的更加方便及好用。

2023/02/26

[Visual Studio 2022] v17.5 新功能 - ASP.NET Core 輸出整合內建 Terminal

markdown ### 前言 有在開發 ASP.NET Core 網站的朋友們,在 Visual Studio 上開發時,應該對於那個跳出來不能關掉的 Console 視窗感到很煩。 若是本身就用 VS Code 來開發或是原先就在 Terminal 下操作,是不會有這種困擾的。 一直想敲碗很久的功能,終於在 v17.5 的版本聽見開發者的許願~ 現在能把 output 到外跳出來的視窗導到內建的 Terminal 視窗去囉。