simonk
(Simon King)
10월 24, 2023, 9:33오전
1
어제 3.2.0.beta2가 실행 중인 사이트에서 category-banners 구성 요소를 업데이트했는데, 이제 배너가 더 이상 표시되지 않습니다. 이 변경 사항 때문이라고 생각 합니다:
main ← theme_review
merged 04:17AM - 23 Oct 23 UTC
This commits introduces the follow changes:
1. Use the `renderInOutlet` API ove… r the connectors convention
1. Renames `discourse-category-banners` component to `category-banner`
which is more appropriate cause we are only rendering banner for one
category.
1. Adds system tests
특히 이 변경 사항으로 인해 구성 요소가 API 버전 1.15.0을 요구하게 되는 반면, 최신 베타 버전은 1.14.0에 불과하다고 생각합니다.
간단히 살펴본 결과, renderInOutlet에는 1.13.0이 요구되는 것을 볼 수 있지만, 1.14.0이나 1.15.0을 요구해야 하는 것은 아니지 않나요?
pfaffman
(Jay Pfaffman)
10월 24, 2023, 10:19오전
2
최근에 리빌드를 해보셨나요? 새로운 베이스 이미지가 필요할 것 같습니다.
2개의 좋아요
simonk
(Simon King)
10월 24, 2023, 10:37오전
3
답변해 주셔서 정말 감사합니다. 해당 컴포넌트가 최신 tests-passed 버전에서 정상 작동한다는 점이 맞을 것이라고 생각하지만, 가능할 때는 베타 릴리스를 사용하길 선호합니다. 제 게시글은 저처럼 베타 버전을 고수하는 다른 사용자에게 경고를 보내고자 한 부분도 있었고, 동시에 이 컴포넌트의 API 버전 요구 사항이 필요한 것보다 더 엄격하게 설정되어 있을 수 있다는 점을 팀에게 힌트로 전달하고자 한 부분도 있었습니다.
.discourse-compatibility 파일 에서 명시적으로 리비전 1398eeeff550c1da186a47b6d3878d3230f62340이 3.2.0.beta2와 호환된다고 나와 있는데, 제 생각에는 그렇게 될 수 있는 방법이 없다고 보기 때문에 버그라고 생각합니다.
1개의 좋아요
tgxworld
(Alan Tan)
10월 26, 2023, 6:20오전
4
특정 베타 태그 버전을 사용 중이신가요? 그렇다면 제가 확인해 볼 수 있도록 어떤 베타 태그를 사용 중인지 알려 주실 수 있나요?
호환성 파일에는 < 3.2.0.beta2: 1398eeeff550c1da186a47b6d3878d3230f62340 항목이 있으며, 이는 3.2.0.beta2보다 작은 버전의 Discourse를 사용할 경우 테마가 1398eeeff550c1da186a47b6d3878d3230f62340 커밋 해시로 고정된다는 것을 의미합니다.
simonk
(Simon King)
10월 26, 2023, 9:27오전
5
Hi @tgxworld , 답변 주셔서 감사합니다.
네, v3.2.0.beta2 태그(be04154838 )를 실행 중입니다:
이 릴리스에서 지원하는 플러그인 API 버전은 1.14.0입니다:
} from "discourse-common/lib/icon-library";
import I18n from "I18n";
import { CUSTOM_USER_SEARCH_OPTIONS } from "select-kit/components/user-chooser";
import { modifySelectKit } from "select-kit/mixins/plugin-api";
// If you add any methods to the API ensure you bump up the version number
// based on Semantic Versioning 2.0.0. Please update the changelog at
// docs/CHANGELOG-JAVASCRIPT-PLUGIN-API.md whenever you change the version
// using the format described at https://keepachangelog.com/en/1.0.0/.
export const PLUGIN_API_VERSION = "1.14.0";
// This helper prevents us from applying the same `modifyClass` over and over in test mode.
function canModify(klass, type, resolverName, changes) {
if (!changes.pluginId) {
// eslint-disable-next-line no-console
console.warn(
consolePrefix(),
"To prevent errors in tests, add a `pluginId` key to your `modifyClass` call. This will ensure the modification is only applied once."
);
return true;
discourse-category-banners의 리비전 1398eeeff550c1da186a47b6d3878d3230f62340은 v3.2.0.beta2에서 사용할 수 없는 API 버전 1.15.0을 요구합니다.
import { apiInitializer } from "discourse/lib/api";
import CategoryBanner from "../components/category-banner";
export default apiInitializer("1.15.0", (api) => {
api.renderInOutlet(settings.plugin_outlet, CategoryBanner);
});
API 버전 1.15.0은 이 커밋에서 추가되었습니다:
committed 04:23AM - 19 Oct 23 UTC
This commit adds a new admin UI under the route `/admin-revamp`, which is
only … accessible if the user is in a group defined by the new `enable_experimental_admin_ui_groups` site setting. It
also adds a special `admin` sidebar panel that is shown instead of the `main`
forum one when the admin is in this area.

We also add an "Admin Revamp" sidebar link to the community section, which
will only appear if the user is in the setting group:

Within this there are subroutes defined like `/admin-revamp/config/:area`,
these areas could contain any UI imaginable, this is just laying down an
initial idea of the structure and how the sidebar will work. Sidebar links are
currently hardcoded.
Some other changes:
* Changed the `main` and `chat` panels sidebar panel keys to use exported const values for reuse
* Allowed custom sidebar sections to hide their headers with the `hideSectionHeader` option
* Add a `groupSettingArray` setting on `this.siteSettings` in JS, which accepts a group site setting name
and splits it by `|` then converts the items in the array to integers, similar to the `_map` magic for ruby
group site settings
* Adds a `hidden` option for sidebar panels which prevents them from showing in separated mode and prevents
the switch button from being shown
---------
Co-authored-by: Krzysztof Kotlarek <kotlarek.krzysztof@gmail.com>
…아직 베타로 출시되지 않았습니다.
이를 해결하려면, 테마 구성 요소가 v3.2.0.beta2에 포함된 api.renderInOutlet을 도입한 API 버전 1.13.0을 요구하도록 변경하면 될 것 같습니다.
committed 10:56AM - 05 Oct 23 UTC
Until now, plugins/themes had to follow very specific directory structures to se… t up plugin outlet connectors. This commit introduces a new `api.renderInOutlet` API which makes things much more flexible. Any Ember component definition can be passed to this API, and will then be rendered into the named outlet.
For example:
```javascript
import MyComponent from "discourse/plugins/my-plugin/components/my-component";
api.renderInOutlet('user-profile-primary', MyComponent);
```
When using this API alongside the gjs file format, components can be defined inline like
```javascript
api.renderInOutlet('user-profile-primary', <template>Hello world</template>);
```
4개의 좋아요
tgxworld
(Alan Tan)
10월 26, 2023, 11:36오후
6
@simonk 조사해 주셔서 감사합니다. 저희 쪽의 버그였고, 다음 PR에서 수정했습니다.
main ← fix_api_version
merged 12:09AM - 27 Oct 23 UTC
Plugin API versions > 1.13 is not released in any beta versions.
3개의 좋아요
simonk
(Simon King)
10월 27, 2023, 9:33오전
7
@tgxworld 감사합니다! v3.2.0.beta2를 실행 중인 제 사이트에서 해당 컴포넌트가 다시 정상 작동하는 것을 확인했습니다
다만 .discourse-compatibility 파일을 수정해야 하지 않을까 싶습니다. 현재 3.1.999부터 3.2.0.beta2 사이의 버전을 실행하는 사용자에게는 플러그인 API 버전 1.15.0에 의존하는 버전이 제공되고 있습니다. 대신 리팩토링 이전 커밋인 65a2cfc43fb5f6ffd2f8db3888552594ed21c501으로 고정하는 것이 더 적절할 것 같습니다.
이 주제는 20시간 후 자동으로 닫혔습니다. 더 이상 새 답글을 작성할 수 없습니다.