Discourse 테마에서 잘못된 버전 목록

업그레이드 후 이 항목들을 발견했습니다. 사실 꽤 오래전 일이지만, 이번에는 로그를 남겼습니다.

[db:default] 'Messages section for sidebar' -  checking...
Invalid version list in /tmp/discourse_theme_c64ff70a4cc7d614d9e88b106805c78f

[db:default] 'Unhide composer fullscreen toggle for tablets' -  checking...
Invalid version list in /tmp/discourse_theme_4f18f6036fb93a7e2c8eca368c66ad09


[db:default] 'Discourse Highlight to Search' -  checking...
Invalid version list in /tmp/discourse_theme_f7e393183be5f0189adb336c4602f071

[db:default] 'Discourse Wikipedia Lookup' -  checking...
Invalid version list in /tmp/discourse_theme_8cf76b5d4fe5eac70cd636ee2487be35

[db:default] 'Accent' -  checking...
Invalid version list in /tmp/discourse_theme_9796e5491667b1c43c7b9c680fc68ff3

걱정해야 하나요?

정확히 말하면 아니지만, 그렇다고 볼 수도 있습니다.

그 에러가 발생하는 이유는 여러 가지가 있습니다. 가장 흔한 이유는 아마도 .discourse-compatibility 파일이 비어 있기 때문일 것입니다. [1], [2], [3]. (앞의 #는 주석 라인입니다)

실제로 이 경고는 Discourse가 현재 컴포넌트/플러그인의 “최신” 버전이 현재 Discourse 버전과 호환되는지, 아니면 컴포넌트/플러그인의 이전 버전으로 체크아웃해야 하는지 판단할 수 없음을 의미합니다.

컴포넌트/플러그인의 .discourse-compatibility 파일에는 Discourse 버전 범위를 해당 컴포넌트/플러그인의 특정 리비전으로 매핑하는 내용이 포함될 수 있습니다. Discourse가 매핑을 찾으면 최신 버전 대신 해당 리비전을 사용합니다. 이는 개발자가 이전 Discourse 버전과 호환되지 않는 변경 사항을 도입할 때 파일을 업데이트해야 함을 의미합니다. 호환성을 깨뜨리는 변경 사항을 하지 않았다면 파일은 비어 있게 되며, 따라서 해당 경고 메시지가 생성됩니다.

컴포넌트/플러그인이 최신 버전의 Discourse와 항상 호환되는지는 추측에 불과합니다.

저는 2026.1용 플러그인 개발을 시작했으므로, 이것이 Discourse의 최소 버전이 될 것입니다. 여전히 해당 버전(그리고 현재 최신 버전)을 기준으로 개발하고 테스트하고 있습니다. 더 이상 지원되지 않는 이전 Discourse 버전이 없으므로 .discourse-compatibility 파일은 비어 있으며, 이로 인해 이 경고 메시지가 생성됩니다. 2026.1의 지원이 종료되면 새로운 ESR으로 전환할 예정입니다. 그 시점부터 2026.1을 대상으로 테스트하지 않을 것이며, 따라서 .discourse-compatibility 파일을 업데이트하여 마침내 비어 있지 않게 만들 것입니다. 그때서야 제 플러그인에 대한 이 경고가 사라질 것입니다.

이 .discourse-compatibility 파일에 대한 추가 정보: Introducing .discourse-compatibility: pinned plugin/theme versions for older Discourse versions

Kokeilin tuota. Tein forkin komponentista Discourse Wikipedia Lookup ja lisäsin sinne .discourse-compatibility-tiedoston. Kopioin sisällön yhdestä toisesta komponentista. Tuo varoitus poistui. Joten siitä oli tosiaan kyse.

Kiitos.

Mutta vilkaisin muutaman muunkin TC:n ja niistä joko .discourse-compatibility puuttui kokonaan tai oli täysin tyhjä. Ne eivät kuitenkaan antaneet varoitusta.

Asia kuitenkin selvisi ja jatketaan elämää.

다른 컴포넌트의 호환성 파일에서 내용을 복사하면, 특정 Discourse 버전이 참조하는 커밋이 복사한 저장소에 존재하지 않아 오류가 발생할 수 있습니다.

아직 테마 스켈레톤에 Arkshine이 추가한 수정 사항을 반영하지 않아서, 제 저장소에서 호환성 브랜치의 워크플로가 실패했습니다. 목록에 있는 제 저장소 두 곳 모두 현재 이 문제로 인해 영향을 받는 것으로 보입니다.

이 변경 사항은 주석만 포함된 파일에 대한 경고 로그 기록을 중단합니다:

.discourse-compatibility는 여전히 지원되지만, 현재 주제/플러그인 호환성을 위해 d-compat/* 기반의 브랜치 전략을 따르는 것을 권장합니다. 자세한 내용은 다음 링크에서 확인하실 수 있습니다:

따라서 파일에 실제 항목이 없다면 삭제하는 것을 권장합니다.

네. 그 포크를 실제로 사용할 계획은 없어요. 템플릿/보일러플레이트 파일 사용이 문제의 원인인지 확인하기 위한 테스트였을 뿐입니다. 실제 커밋과 올바른 문법을 사용했는지 확인하고 싶었거든요.