2024년 5월 5일에 등록된 릴리즈 노트입니다.
- “ 라이믹스 2.1 버전대의 버그 수정 및 기능 개선 릴리즈입니다.
”
새 기능과 변경 사항[편집 / 원본 편집]
- 구글 Firebase (FCM) 푸시알림 전송을 위한 HTTP v1 API 지원 (#2323)
- 구글에서 2024년 6월 20일경에 기존 API 운영을 중단한다고 하니, 미리 HTTP v1 API로 변경하시기 바랍니다.
- Firebase 콘솔의 "서비스 계정" 메뉴에서 "새 비공개 키"를 발급받아, 관리자 화면에 입력하시기 바랍니다.
- 푸시알림 발송 규격이 변경된 것뿐이므로, 알림을 받는 모바일 애플리케이션 쪽은 수정하지 않아도 될 가능성이 높습니다.
CKEditor
에 붙여넣거나 드래그앤드롭한 이미지를 첨부파일로 자동 변환 (#2324)- SEO를 위한
og:image
메타 태그를 생성할 때, 본문에 첨부된 WebP 이미지도 인식하도록 개선 (#2328) - 관리자 파일 목록에서 WebP 이미지 및 MP4 동영상도 썸네일을 표시하고, 썸네일이 찌그러지지 않도록 개선 (#2329)
- 모듈 설정 화면을 관리자 레이아웃으로 볼 때, 홈페이지로 돌아가는 버튼 추가 (#2331)
- 권한이 제한되어 있는 메뉴는 관리자 화면에서 자물쇠 아이콘으로 구분 (#2333)
- 해당 메뉴 또는 인접한 메뉴를 최소 한 차례 수정하거나, 캐시파일을 재생성해야 표시됩니다.
- 게시판에서 익명 닉네임을 생성할 때, 숫자와 알파벳을 모두 사용하는 16진수 형식도 지원
- 게시판에서 특정 카테고리를 기본 카테고리로 설정하여, 새 글 작성 시 자동 선택되도록 하는 기능 추가 (#2335)
- 게시판에서 글을 작성하거나 수정/삭제할 때마다 해당 카테고리의 글 수를 다시 계산하느라 서버 부하가 발생하는 증상 완화
- DB에서 임의로 글을 이동할 경우, 카테고리의 글 수가 맞지 않게 될 수 있습니다.
- 레이아웃 초기화 버튼 클릭 시 확인 창을 띄우도록 개선
개발자를 위한 새 기능과 변경 사항[편집 / 원본 편집]
- 확장변수 입력 폼 소스 커스터마이징 지원
Extravar
모듈에 스킨을 추가하여 확장변수 입력 폼의 형태를 자유롭게 변경할 수 있습니다.Extravar
모듈 스킨은 템플릿 v2 문법으로 작성되어야 합니다. 기본 스킨을 참고하여 작성하세요.- 회원 확장변수와 문서 확장변수 입력 폼 소스를 각각 커스터마이징할 수 있습니다.
- 라이믹스에서 설정한 캐시 방법을 기반으로 PSR-6 캐싱 인터페이스를 구현하는
CacheItemPoolHelper
클래스 추가 - FCM 메시지 발송 시,
token
이 아닌topic
을 받는이로 지정할 수 있도록 지원 - FCM 메시지 발송 시, 기본으로 표시할 이미지를 지정할 수 있도록 지원
CKEditor
와 업로더를 초기화하는 코드에서 인라인 스크립트를 모두 제거하여, 다른 자료가 일으킨 스크립트 오류에 영향을 덜 받도록 변경CKEditor
로딩 직후 및 파일 업로드/삭제 후 파일 목록을 갱신하는file.getFileList
API 요청을 최소화하기 위해, 업로더 HTML 소스 및 업로드/삭제 요청의 응답값에 파일 목록을 포함하여 반환하도록 변경FileHandler::removeFilesInDir()
등의 메소드에 빈 값을 넘길 경우, 아무것도 삭제하지 않도록 안전장치 추가SessionHelper
클래스에getProfileImage()
메소드 및 자주 사용하는 속성들 추가 (#2279)- 한 칸짜리 전화번호 입력란 사용 시, 전화번호와 무관한 알파벳이나 한글 등을 입력할 수 없도록 변경 (#2306)
- 디버깅용 <!--#TemplateStart--> <!--#TemplateEnd--> 주석에서 SSI (server-side include) 문법으로 오인할 수 있는 "#" 문자 제거 (#2307)
- 추천 또는 비추천 취소 API 호출 시, 취소 후의 추천수 또는 비추천수를 반환 (#2321)
- XE 1.x에서 업그레이드할 때 FTP 접속 정보를 저장하지 않도록 변경
- JSON 및 XML 응답 마지막에 개행 문자를 출력하여, 터미널에서
curl
로 호출할 때 편의성 개선 Context::addLink()
메소드를 추가하여 레이아웃 등에서 사용하는<link rel="preconnect">
등의 speculative loading 태그를 미리 등록할 수 있도록 지원하고, 본문 영역에 이미 출력된 speculative loading 태그도 자동 인식하여 동일하게 처리
버그 수정[편집 / 원본 편집]
- 댓글 내용이 "0"인 경우, 위젯 등에서 내용이 없는 댓글이라고 표시되는 문제 수정
- 기본 게시판 스킨에서 글쓰기 화면, 글 삭제 화면 등의 URL에 불필요한 변수가 추가되는 문제 수정
- 특정한 상황에서 스크랩 보기 화면 접근 시 치명적인 오류가 발생하는 문제 수정
- 모듈 클래스가
ModuleObject
를 상속받지 않는 경우 치명적인 오류가 발생하는 문제 수정 <pre></pre>
태그가 포함된 문서를 수정할 때 불필요한 공백이 추가되는 문제 수정- 오랫동안 설정을 변경하지 않은 XE 1.x에서 업그레이드할 때, SSL "항상 사용" 상태가 기본값으로 지정되는 문제 수정
- 문서 확장변수에 국제전화번호 입력 시, 동일한 국가번호를 사용하는 미국/캐나다, 러시아/카자흐스탄 등을 구분하지 못하는 문제 수정 (#1257, #2306)
- jQuery 3.x 사용 시
SimpleEditor
와Textarea
에디터에서 "내용 값은 필수입니다"라는 오류가 발생하는 문제 수정 (#2303) - 에디터 스킨의 메인 파일명을
editor.blade.php
로 설정할 수 없는 문제 수정 (#2309) - 템플릿 v2에서 상위 경로를 인클루드할 때, 특정한 형태의 경로가 잘못 해석되는 문제 수정 (#2310)
- 회원가입 시 적용되는 이메일 검증 규칙이 실제 DB 입력 시 적용되는 규칙과 달라서 쿼리 오류가 발생할 수 있는 문제 수정 (#2313)
- DB 오류 등으로 최근 댓글을 불러오지 못한 경우, 관리자 대시보드에서 치명적인 오류가 발생하는 문제 수정
- 과거에
mid
를 생성했던 모듈이 더 이상 설치되어 있지 않은 경우, 사이트 디자인 설정이 저장되지 않는 문제 수정 (#2327) - 글 작성 후 긴 주소로 리다이렉트되는 문제 수정 (#2330)
- 레이아웃 초기화 후 잘못된 주소로 리다이렉트되는 문제 수정
정리[편집 / 원본 편집]
- 코어에 흡수된 고급 메일 발송 모듈과 알림센터 모듈의 제작자 이름을 Rhymix로 통일
- 쉬운설치 모듈을 사용하여 자료를 삭제할 때, FTP 정보를 입력하라는 불필요한 안내문 삭제
ModuleAdminModel::getLangCode()
에서 serialize된 배열을 처리하는 기능 삭제admin.procAdminRemoveIcons
액션 삭제- 코어 내부적으로 사용하는
realpath()
함수 중 불필요한 것은 삭제 (#2310)- 단, 템플릿 v1은 변경하지 않습니다.
- 관리자 화면에서 사용하는
exec_xml()
을exec_json()
으로 변경 (#2314) - 잘못된 주석 수정 (#2320)
- 최신 PHP에서 발생하는
TypeError
,Warning
등 수정 (#2340, #2341) - 불필요한 파일 정리