1.5로 넘어오면서 이슈가 되고 있는것이 '새로움'이 아닌 '호환성' 이라는것에 대해서는 참으로 안타깝습니다. 과거에 코어가 지켜야할 규칙들이 제대로 지켜지지않아 습관처럼 만들어놓은 외부자료들이 코어가 확실하게 규칙을 지킴으로 인해 호환성이 결여되는 결과가 나왔는데요.
아래와 같은 제안을 해봅니다.
해당 제안은 호환성 문제를 해결해보자는 것이 아닌 문제원인을 코어와 비코어간 분리할 수 있도록 하기 위한 제안입니다.
[제안] 1. xe_autoinstall_packages에 호환성관련 정보를 추가
쉬운설치 조회시 호환성여부도 전달하도록 서버측에 정보를 추가 생성
설치된 모듈, 설치된 애드온에 한하여 각 리스트마다 버그리포트 아이콘을 생성
- 제일 하단의 버그리포트와는 다르게 버그를 던지기전에 제목과 내용에 간단히 해당 프로그램의 정보를 자동기재시킴. POST/GET처리가 안된다면 API나 다른 접근방법을 통하여, 사용자는
(1) 원클릭 (2) 안된다는 내용기재 (3) submit
3번의 수행을 통해 간단히 버그리포트에 도달하도록 함
※ 현재는 구글 계정로그인이 나오며 영문으로되어있어 가입 후 다시 버그리포트에 제목과 글을 쓰고 등록을 누르는 복잡한 절차임, 이것을 공용 시스템 계정을 만들어 제목, 내용 기재시 등록하는 계정을 시스템 계정으로 지정하여 자동 등록시킴
등록된 내용이 정말로 안되는지 XE개발팀은 이슈로써 테스트 (사용자가 마구잡이로 내용을 던질 수 있기에 이슈등록건이 많아질 수는 있지만 외부프로그램이 어떤 상태인지 보다 객관적인 유추도 되며, 동일 건에 대해서는 일정시간에 한번에 완료처리 등 시스템 계정이기에 유연하게 대응이 가능하다는 생각)
객관적으로 해당 프로그램이 최신코어에 호환성 문제를 일으킨다면 XE개발팀은 [2번] 정보에 호환성 문제의 값을 기재(구분값을 커밋리비전으로 할지 단순화할지는 고민이 필요)
5번에 기재된 내용은 새로이 쉬운설치 조회시에 반영되며 xe_autoinstall_packages에 반영된 값을 통해 설치된 모듈, 설치된 애드온과 비교하여 호환성 정보를 표시함 (설치된 모듈,애드온 리스트 정렬방식을 기존 정렬방식에서 호환성 문제 순으로 우선 표시되도록 정렬방식을 조정)
호환상 최악의 경우 사이트가 먹통이 되는 경우가 있으니 비 호환상태라면 해당 모듈과 애드온을 수행시키지 않도록 코어상에서 조정
비 호환상태가 된 프로그램의 개발자가 XE 다운로드 게시판 시스템을 통하여 호환성이 반영된 새로운 버전을 재등록
재등록 후 호환성 재심사 신청을 진행하는 프로세스 통해 XE개발팀 그룹메일로 일정 양식의 포멧이 담긴 내용을 보냄
XE개발팀이 재심사를 통해 해당 호환성 문제의 값을 원상태로 돌림 (※ 7에서 사용여부를 사용자가 선택하게할지 아니면 8~10번의 수행이 이루어지기 전까지는 수행을 못하게 할지는 고민이 필요)
[전제조건] - 최초 설치시 관리자 페이지 상단의 사용자 동의를 통하여 버전 호환문제가 있는 외부 프로그램을 수행 중단시킬 수 있다는 동의를 포함시킴 - 공식자료실에 등록되지 않은 자료에 대해서는 사전에 설치된 모듈, 애드온에서 비등록자료라고 표시(호환을 장담못한다는 안전장치)
[다른 의견] http://www.xpressengine.com/devForum/20367211 misol님 의견
호환성문제를 해결해보자는 좋은 의견입니다. 우려점은 새로운 규칙을 반영시키고 각 외부 개발자가 그 규칙을 적용하지 않거나 잘못 적용되면 또다시 과도한 호환문제가 일어나며, 코어와 비코어간의 정보처리가 보다 복잡해진다고 생각합니다. 이것은 서로 끌려다녀야 하는 구조일 수 밖에 없다고 생각합니다.
[여담] v1.6, v1.7 하나하나 올릴때마다 호환성 문제는 따라다닙니다. 문제점은 그 호환문제가 코어에 있다는게 아닌 비코어에 있다는 인식을 심어야 코어개발자측이 개선주도권을 확실하게 생성할 수 있다고 보고요, 앞으로 수없이 쏟아질 외부 프로그램들을 XE개발팀측에서 인력부족 등의 이유로 관리하기 힘들다는 인식과 숨막힐듯한 답답함은 생각하지 말아주시기 바라며, 호환성은 코어의 안전을 위해, 외부로부터 코어를 지키기위해 감시한다는 역할로 인식하시기 바랍니다.
[정리] 1. 쉬운설치에 사용되는 서버, 클라이언트 프로세스 개선 2. 관리자페이지 버그 리포트 프로세스 개선 3. 비 호환이 되는 대상을 처리할 프로세스 개선
끝
Comment #1
Posted on Jan 18, 2012 by Happy Rhino(No comment was entered for this change.)
Comment #2
Posted on Mar 2, 2012 by Quick Lionxe_autoinstall_packages 보다는 각 모듈의 info.xml 에서 설정이 필요할 듯 합니다.
Comment #3
Posted on Jun 14, 2012 by Quick Camel(No comment was entered for this change.)
Comment #4
Posted on Aug 2, 2012 by Quick Camel(No comment was entered for this change.)
Comment #5
Posted on Nov 9, 2012 by Quick Camel(No comment was entered for this change.)
Comment #6
Posted on Mar 15, 2013 by Helpful Horse3번의 경우 굳이 공용 계정을 쓸 필요 없이 본인의 아이디로 로그인하는 절차만 넣어주면 될 것 같은데요.
Status: Accepted
Labels:
Type-Enhancement
Priority-Medium
UIUX
module-autoinstall
Milestone-Release-NeoSky