새로운 설치에서는 프로덕션 환경에 기본적으로 Ember CLI 빌드가 적용됩니다

오늘부터 모든 새로운 자체 호스팅 Discourse 설치 환경에서는 기본적으로 프로덕션에서 Ember CLI 빌드를 사용하게 됩니다.

우리는 이미 상당 기간 동안 프로덕션 환경에서 이 빌드를 직접 사용해 왔으며, 안정적이며 모든 주요 플러그인과 호환됩니다. 문제가 발생하여 기능을 비활성화해야 하는 경우, app.yml 파일을 편집하고 EMBER_CLI_PROD_ASSETS: 1을 제거하세요.

그 외에는 버그를 우리에게 보고해 주시면 신속하게 수정하겠습니다.

가까운 미래에는 모든 Discourse 설치 환경에서 Ember CLI 빌드를 사용할 예정입니다.

18개의 좋아요

현재 자체 호스팅 중인 사이트의 경우, 전환을 위해 재빌드 또는 관리자 업그레이드가 필요한가요?

3개의 좋아요

제 해석은 기존 설치 환경에서는 다음 두 가지 방법 중 하나를 수행하여 Ember CLI 사용으로 전환할 수 있다는 것입니다.

  1. app.yml 파일을 편집하여 EMBER_CLI_PROD_ASSETS: 1 줄을 추가한 후 다시 빌드하거나,
  2. 이것이 표준이 될 때까지 "가까운 미래"를 기다린 후 다시 빌드하는 것입니다
5개의 좋아요

네, @Simon_Manning 님이 말씀하신 대로입니다. 원하시면 직접 수동으로 활성화할 수도 있고, 기본 설정이 될 때까지 기다릴 수도 있습니다. 모든 버그를 사전에 발견하기 위해 점진적으로 배포하고 있습니다.

7개의 좋아요

네, 설치 완료했습니다. 특별히 주의할 점이 있을까요?

1개의 좋아요
Browserslist: caniuse-lite가 오래되었습니다. 다음을 실행하세요:
npx browserslist@latest --update-db

정기적으로 실행해야 하는 이유:
https://github.com/browserslist/browserslist#browsers-data-updating
1개의 좋아요

무엇이든 문제가 있으면 알려주세요.

4개의 좋아요

Ember 생태계에 익숙하지 않은 사람들을 위해, 이것이 무엇을 포함하는지 그리고 왜 중요한지도 설명해 주실 수 있을까요?

9개의 좋아요

안녕하세요, 예상 완료 시점이 있나요? 감사합니다.

1개의 좋아요

이미 구현할 수 있습니다.

app.yml에 한 줄을 추가하고 다시 빌드하기만 하면 됩니다.

2개의 좋아요

약 한 달 후 기존 사이트에서도 이를 활성화할 예정입니다.

8개의 좋아요

이번 변경 사항에 대해 정말 설레고, Discourse의 미래를 위해 좋은 일이라고 생각합니다.

다음과 같이 간단히 권장합니다: 서드파티 테마 컴포넌트나 플러그인을 사용 중이라면, 메인 사이트에서 Ember CLI로 전환하기 전에 동일한 구성을 가진 별도의 테스트 인스턴스를 만들어서 먼저 모든 것을 확인해 보시기 바랍니다.

최근 제 테마 컴포넌트 중 하나에 상당한 변경 사항을 배포했는데, 이 변경 사항이 없었더라면 호스트 사이트가 깨졌을 것입니다.

14개의 좋아요

여기에 더 많은 정보가 있습니다:

간단히 말하면, 이것은 Ember 애플리케이션을 개발하는 공식적으로 지원되는 방식이며, 사람들이 기여하기 쉬워지고 향후 Ember를 업그레이드하는 데에도 도움이 될 것입니다.

9개의 좋아요

네, EMBER_CLI_PROD_ASSETS: 1을 설정했지만 Dracula 테마가 제대로 작동하지 않았습니다.
그래서 이 기능을 제거했습니다. :frowning:

3개의 좋아요

Dracula a Dark Theme for Discourse 에 게시물을 올려서 수정되도록 해야 합니다.

5개의 좋아요

이 변경 사항으로 인해 깨질 가능성이 있는 테마 컴포넌트는 Wyeth JavaScript가 포함된 것들뿐이라는 말이 사실인가요?

JavaScript가 포함된 테마 컴포넌트를 찾기 위한 쿼리를 실행할 수 있는 간단한 방법이 있을까요? Data Explorer나 Rails 쿼리 같은 것 말이에요. 어떤 사이트들이 이 문제로 인해 피해를 입을 가능성이 있는지 파악하고, 프로덕션 사이트를 업그레이드하기 전에 스테이징 사이트를 설치하여 테스트해볼 수 있도록 제 새로운 제품을 무료로 제공하여 테스트에 참여할 수 있도록 하고 싶습니다.

1개의 좋아요

맞습니다. 이 Ember CLI 변경 사항은 테마/컴포넌트의 HTML 또는 CSS 부분에 영향을 주지 않습니다.

일반적으로 이전의 비-ember-cli 환경에서 브라우저 JS 콘솔의 노란색 비추천(deprecation) 알림을 확인하여 문제 있는 테마 컴포넌트를 식별할 수 있습니다. (Ember CLI로의 전환이 이러한 비추천 기능을 도입한 이유입니다)

Meta는 이미 수 주 동안 Ember CLI를 사용 중이며, 모든 공식 테마/플러그인이 새 환경에서 정상적으로 작동하도록 노력해 왔습니다.

6개의 좋아요

알겠습니다. 그러면 /admin/customize/themes.json(또는 실제 경로가 무엇이든)을 가져오면 경고가 표시되겠네요. 업그레이드 시 실패할 수 있음에도 경고가 표시되지 않는 오탐(false negative) 가능성이 있을까요?

아, 그리고 실제로 실패할 경우 환경 변수만 다시 끄면 됩니다.

플러그인의 경우, JavaScript 콘솔에서 비추천(deprecation) 경고를 보고 있다면 드디어 그 의미를 파악해야 할 것 같습니다. 제 코드에서 비롯된 것이 아니라 제가 사용 중인 컴포넌트에서 나오는 것처럼 보였는데, Ember와 JavaScript는 여전히 저에게 꽤나 수수께끼 같은 존재입니다. (적어도 대부분 제가 작성한 코드가 꽤 있다는 점을 감안하더라도요).

2개의 좋아요

아니요, 비추천(deprecation) 경고는 브라우저 콘솔에서 런타임에 표시됩니다. 테마 REST API에는 표시되지 않습니다.

지금은 그렇게 하셔도 됩니다. 하지만 우리는 곧 이것이 선택 사항이 아닌 기본값이 되도록 할 계획이므로, 최선의 해결책은 근본 원인을 수정하는 것입니다.

예, 안타깝게도 그렇습니다. 코어 컴포넌트에서 비롯된 것으로 생각되거나, 원인을 찾는데 어려움을 겪고 있다면, 세부 정보를 포함하여 Development 토픽을 열어 주십시오.

5개의 좋아요

하. 운이 좋으면요. 운이 좋지 않으면 완전한 오류가 발생하고 JavaScript 실행이 완전히 중단됩니다. 이로 인해 페이지가 하얗게 보이거나 깨질 수 있습니다.

지금까지 다양한 문제를 발견했지만, 대부분은 Discourse 객체의 일부 속성이 사라진 것이었습니다. 따라서 사이트 및 사용자 속성에 접근하는 다른 방법을 찾아야 합니다. (힌트: 이 속성들은 컴포넌트 내에서 접근 가능합니다. 최근 TLP TC에서 제가 진행한 작업을 확인해 보실 수 있습니다.)

2개의 좋아요