Skip to main content

Electron 13.0.0

· 6 min read

Electron 13.0.0이 출시되었습니다! 이번 버전은 Chromium 91과 V8 9.1로 업그레이드되었으며, 여러 API 업데이트, 버그 수정, 그리고 전반적인 개선 사항이 포함되어 있습니다. 자세한 내용은 아래를 참고하세요!


Electron 팀은 Electron 13.0.0의 출시를 기쁘게 발표합니다. npm install electron@latest 명령어를 통해 npm으로 설치하거나 릴리스 웹사이트에서 다운로드할 수 있습니다. 이번 릴리스에 대한 자세한 내용을 계속 읽어보시고, 여러분의 피드백을 공유해 주세요!

주요 변경 사항

스택 변경 사항

주요 기능

  • 현재 렌더러 컨텍스트에서 contextIsolation이 활성화되었는지 여부를 나타내는 process.contextIsolated 속성을 추가했다. #28252
  • 세션별 데이터를 위한 디스크 경로를 가져오는 새로운 session.storagePath API를 추가했다. #28866
  • WebContentsnew-window 이벤트를 더 이상 사용하지 않는다. 이는 webContents.setWindowOpenHandler()로 대체되었다.
  • @electron/remote에서 사용하는 process.contextId를 추가했다. #28251

새로운 기능과 변경 사항의 전체 목록은 13.0.0 릴리스 노트를 참고한다.

주요 변경 사항

  • window.open()frameName 매개변수가 윈도우 제목으로 설정되지 않도록 변경됨. #27481
  • session.setPermissionCheckHandler(handler)의 첫 번째 매개변수인 webContentsnull을 허용하도록 변경됨. #19903

이러한 변경 사항과 향후 예정된 변경에 대한 자세한 내용은 Planned Breaking Changes 페이지에서 확인할 수 있다.

API 변경 사항

  • BrowserWindowroundedCorners 옵션 추가. #27572
  • 세션별 데이터를 저장하는 디스크 경로를 얻기 위한 새로운 session.storagePath API 추가. #28866
  • 컨텍스트 브리지를 통해 DOM 엘리먼트를 전달하는 기능 추가. #26776
  • 샌드박스된 렌더러에서 process.uptime() 지원 추가. #26684
  • context-menu 이벤트의 일부로 전달되는 파라미터에 누락된 필드 추가. #26788
  • Manifest V3 확장 서비스 워커 등록 지원 추가.
  • ServiceWorkers에 'registration-completed' 이벤트 추가. #27562

제거/사용 중단된 변경 사항

다음 API는 제거되었거나 이제 사용 중단되었다:

  • WebContentsnew-window 이벤트를 사용 중단했다. 이제 webContents.setWindowOpenHandler()로 대체한다.

  • 더 이상 사용되지 않는 shell.moveItemToTrash()를 제거했다. #26723

  • 다음은 더 이상 사용되지 않는 BrowserWindow 확장 API를 제거했다:

    • BrowserWindow.addExtension(path)
    • BrowserWindow.addDevToolsExtension(path)
    • BrowserWindow.removeExtension(name)
    • BrowserWindow.removeDevToolsExtension(name)
    • BrowserWindow.getExtensions()
    • BrowserWindow.getDevToolsExtensions()

    대신 session API를 사용한다:

    • ses.loadExtension(path)
    • ses.removeExtension(extension_id)
    • ses.getAllExtensions()
  • 다음 systemPreferences 메서드를 사용 중단했다:

    • systemPreferences.isDarkMode()
    • systemPreferences.isInvertedColorScheme()
    • systemPreferences.isHighContrastColorScheme()

    대신 다음 nativeTheme 속성을 사용한다:

    • nativeTheme.shouldUseDarkColors
    • nativeTheme.shouldUseInvertedColorScheme
    • nativeTheme.shouldUseHighContrastColors

Electron 10.x.y 지원 종료 안내

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

다음 단계

단기적으로, 팀은 Chromium, Node, V8 등 Electron을 구성하는 주요 컴포넌트의 개발 속도를 따라잡는 데 계속 집중할 예정이다. 출시 일정에 대한 약속은 신중히 하겠지만, 대략 분기별로 이러한 컴포넌트의 새 버전과 함께 Electron의 주요 버전을 출시할 계획이다. Electron 14.0.0의 예정된 일정은 Electron 14.0 개발 주기의 주요 날짜를 보여준다. 또한, 버전 관리 문서에서 Electron의 버전 관리에 대한 더 자세한 정보를 확인할 수 있다.

예정된 Electron 버전에서의 주요 변경 사항에 대한 정보는 예정된 주요 변경 사항 문서를 참고하면 된다.