Skip to main content

Electron 27.0.0

· 6 min read

Electron 27.0.0이 출시되었습니다! 이번 버전은 Chromium 118.0.5993.32, V8 11.8, 그리고 Node.js 18.17.1로 업그레이드되었습니다.


Electron 팀은 Electron 27.0.0 출시를 발표하게 되어 기쁩니다. npm install electron@latest 명령어를 통해 npm으로 설치하거나 릴리스 웹사이트에서 다운로드할 수 있습니다. 이번 릴리스에 대한 자세한 내용은 계속 읽어보세요.

피드백이 있다면 TwitterMastodon을 통해 공유하거나, 커뮤니티 Discord에 참여해 주세요. 버그나 기능 요청은 Electron의 이슈 트래커에 보고할 수 있습니다.

주요 변경 사항

스택 변경 사항

주요 변경 사항

삭제: macOS 10.13 / 10.14 지원 중단

macOS 10.13 (High Sierra)와 macOS 10.14 (Mojave)는 더 이상 Chromium에서 지원하지 않는다.

이전 버전의 Electron은 해당 운영체제에서 계속 실행할 수 있지만, Electron v27.0.0 이상 버전을 실행하려면 macOS 10.15 (Catalina) 이상이 필요하다.

더 이상 사용되지 않음: ipcRenderer.sendTo()

ipcRenderer.sendTo() API는 더 이상 사용되지 않는다. 이제는 두 렌더러 사이에 MessageChannel을 설정해 사용해야 한다.

IpcRendererEventsenderIdsenderIsMainFrame 속성도 더 이상 사용되지 않는다.

제거됨: systemPreferences의 컬러 스킴 이벤트

다음 systemPreferences 이벤트가 제거됐다:

  • inverted-color-scheme-changed
  • high-contrast-color-scheme-changed

대신 nativeTheme 모듈의 새로운 updated 이벤트를 사용한다.

// 제거됨
systemPreferences.on('inverted-color-scheme-changed', () => {
/* ... */
});
systemPreferences.on('high-contrast-color-scheme-changed', () => {
/* ... */
});

// 대체 코드
nativeTheme.on('updated', () => {
/* ... */
});

제거됨: webContents.getPrinters

webContents.getPrinters 메서드는 더 이상 사용되지 않는다. 대신 webContents.getPrintersAsync를 사용한다.

const w = new BrowserWindow({ show: false });

// 제거됨
console.log(w.webContents.getPrinters());
// 대체 코드
w.webContents.getPrintersAsync().then((printers) => {
console.log(printers);
});

제거된 기능: systemPreferences.{get,set}AppLevelAppearancesystemPreferences.appLevelAppearance

systemPreferences.getAppLevelAppearancesystemPreferences.setAppLevelAppearance 메서드, 그리고 systemPreferences.appLevelAppearance 프로퍼티가 제거되었다. 이제는 nativeTheme 모듈을 사용해야 한다.

// 제거됨
systemPreferences.getAppLevelAppearance();
// 대체 코드
nativeTheme.shouldUseDarkColors;

// 제거됨
systemPreferences.appLevelAppearance;
// 대체 코드
nativeTheme.shouldUseDarkColors;

// 제거됨
systemPreferences.setAppLevelAppearance('dark');
// 대체 코드
nativeTheme.themeSource = 'dark';

제거됨: systemPreferences.getColoralternate-selected-control-text

systemPreferences.getColoralternate-selected-control-text 값이 제거되었다. 대신 selected-content-background를 사용한다.

// 제거됨
systemPreferences.getColor('alternate-selected-control-text');
// 대체
systemPreferences.getColor('selected-content-background');

새로운 기능

  • 앱 접근성 투명도 설정 API 추가 #39631
  • chrome.scripting 확장 API 지원 추가 #39675
  • WaylandWindowDecorations 기본값 활성화 #39644

24.x.y 지원 종료 안내

Electron 24.x.y는 프로젝트의 지원 정책에 따라 지원이 종료되었다. 개발자와 애플리케이션은 더 새로운 버전의 Electron으로 업그레이드하는 것을 권장한다.

E27 (2023년 10월)E28 (2023년 12월)E29 (2024년 2월)
27.x.y28.x.y29.x.y
26.x.y27.x.y28.x.y
25.x.y26.x.y27.x.y

22.x.y 버전의 확장 지원 종료

올해 초, Electron 팀은 Windows 7/8/8.1에 대한 Chrome의 확장 지원 기간과 맞추기 위해 Electron 22의 지원 종료 예정일을 2023년 5월 30일에서 2023년 10월 10일로 연장했다. 자세한 내용은 Windows 7/8/8.1 지원 종료 공지를 참고하면 된다.

Electron 22.x.y는 프로젝트의 지원 정책과 이번 확장 지원에 따라 지원이 종료되었다. 이로 인해 지원 범위가 최신 3개의 안정적인 메이저 버전으로 축소되었으며, Windows 7/8/8.1에 대한 공식 지원도 종료되었다.

다음 단계

앞으로도 Electron 팀은 Chromium, Node, V8 등 주요 컴포넌트의 개발 속도를 따라가기 위해 계속 노력할 것이다.

Electron의 공개 타임라인에서 더 자세한 정보를 확인할 수 있다.

향후 예정된 변경 사항에 대한 자세한 내용은 Planned Breaking Changes 페이지에서 찾아볼 수 있다.