라이믹스/릴리즈 노트/2.1.18

2024년 10월 14일에 등록된 릴리즈 노트입니다.
-

라이믹스 2.1 버전대의 버그 수정 및 기능 개선 릴리즈입니다. 최소 PHP 버전 변경이 임박하였으니, PHP 7.3 이하를 사용하고 계신 분은 서둘러 PHP 7.4 또는 상위 버전으로 변경하시기 바랍니다.

새 기능과 변경 사항[편집 / 원본 편집]

  • 확장변수 강화 (#2412)
    • 파일 업로드 타입 추가 (#1404)
    • 여러줄 입력(textarea), URL, 이메일 주소 타입의 확장변수에 기본값을 지정할 수 있도록 지원 (#1467)
    • 숫자만 입력할 수 있는 number 타입 추가 (#1631)
    • 단일 선택, 다중 선택 항목에 관리자가 지정한 선택지 외에는 저장되지 않도록 하는 옵션 추가 (#2391)
    • 단일 선택, 다중 선택 항목에서 기본값 입력란과 선택지 입력란을 따로 두고, 여러 선택지를 쉼표 대신 줄바꿈으로 구분하도록 변경
  • 비동기 작업 기능 추가 (#2414)
    • 메일, SMS, 푸시알림 발송 등 시간이 오래 걸리는 작업을 백그라운드 프로세스에서 처리
    • crontab, systemd timer, 웹크론 등의 실행 방식을 지원하며, 큐(queue) 관리에는 DB 또는 Redis를 사용 가능
    • 실험적인 기능으로, 2.2에서 안정화 예정
  • 새로고침 없이 댓글 페이지를 불러오더라도 해당 페이지에 포함된 댓글과 관련된 알림을 읽음 처리 (#2337)
  • exec() 함수를 사용할 수 없는 경우 ffmpeg와 연동하지 못하는 문제를 구분하여 에러 메시지 표시 (#2396)
  • 동영상 썸네일도 SEO용 이미지로 사용하도록 개선 (#2405)
  • 컨텐츠 위젯에서 썸네일 생성 방식으로 "fill"을 선택할 수 있도록 하고, 기본값으로 지정 (#2406)
  • SEO 설정에서 글읽기 화면 제목에 카테고리명을 포함할 수 있도록 개선 (#2407)
  • 빈 변수로 인해 SEO 제목에 하이픈(-)이 연달아 나타나는 경우 하나의 하이픈으로 합침
  • 로봇 방문시 하단목록을 정확하게 계산하지 않는 옵션의 기본값을 ON으로 변경
  • GoogleOther, meta-externalagent 등 최신 크롤러를 로봇으로 인식
  • 지나치게 긴 data URL을 제한하여 (기본값 64KB), 첨부 용량이나 확장자 제한 우회 방지
    • 기존 게시물 수정 시 주의 필요
  • 권한이 없는 게시물을 수정/삭제하려고 할 때, 비밀번호 입력 폼 대신 "권한이 없습니다." 화면 표시
  • 대댓글 깊이를 제한하는 기능 추가
  • 주소 확장변수 입력 양식에 "삭제" 버튼 추가 (#2410)
  • RSS 모듈 설정 화면에 실제 게시판 이름을 표시 (#2413)

개발자를 위한 새 기능과 변경 사항[편집 / 원본 편집]

  • 게시판에서 활성화된 기능(추천, 비추천 등)을 파악할 수 있는 $board_features 변수 제공
    • 비활성화된 기능은 기본 스킨에서 버튼 숨김 처리 (#2399)
  • 서드파티 자료에서 composer를 자유롭게 사용 가능
    • rhymix/composer-stub의 안내문 참고
    • 각 모듈은 자신의 설치 경로 안에서 composer 사용, 코어의 composer.json 수정 금지
  • Solapi 문자 API 사용 시 추가 변수를 전달할 수 있도록 개선 Green tick@dewekk (#2397)
  • DocumentItem::getComments() 호출 시 원하는 페이지의 댓글 불러오기 지원
  • FileModel::getFileList() 호출 시 upload_target_type으로 필터링 가능
    • 문서 첨부 파일은 doc, 확장변수는 ev:doc 등 구분
  • FileController::setFilesValid() 호출 시 특정 file_srl만 처리 가능
  • 파일 첨부가 포함된 폼을 rx_ajax로 제출할 때 iframe 대신 AJAX로 전송
  • JSON 요청에서 인코딩 불가능한 데이터를 반환하려고 할 경우 에러 메시지 표시
  • Github Actions 테스트 환경을 Ubuntu 20.04에서 Ubuntu 22.04로 변경
  • git 저장소 master와 develop 브랜치 통합 (#2408)
    • 2.1.18 이후 develop 사용자는 master로 변경 필요

버그 수정[편집 / 원본 편집]

  • 회원가입 폼의 추가 항목이 필수로 설정된 경우, 사용 해제하여도 저장되지 않는 문제 수정 Green tick@dewekk (#2398)
  • 통합게시판 글읽기 화면에서 하위 게시판의 카테고리를 인식하지 못하는 문제 수정 Green tick@seung (#2400)
  • SimpleEditor 업로드 미디어 본문 자동 삽입 문제 수정
  • 댓글 삭제 시 신고 로그가 삭제되지 않는 문제 수정
  • jQuery 3.x에서 카테고리 분류(simpletree) 기능 작동 불가 문제 수정
  • FileController::setFilesValid()upload_target_type을 잘못 처리하는 문제 수정
  • 2차원 배열 파일 업로드 시 key 삭제 문제 수정
  • 주소 확장변수 입력하지 않을 때 회원정보 화면 항목 밀림 문제 수정 (#2411)
  • 특정 아이디 로그인 실패 시 member_count_history 테이블 비대화 문제 수정
  • 글읽기 화면 짧은주소 뒤 슬래시(/) 인식 문제 수정
  • 로그인 실패 에러 메시지
    태그 노출 문제 수정
  • 페이지네이션 COUNT(*) 쿼리 오류 발생 시 디버깅 어려움 문제 수정
  • 첨부파일 이름에 작은따옴표(') 포함 시 인코딩 문제 수정
  • 정의되지 않은 속성 참조 문제 수정 Green tick@malmani (#2394, #2409)

정리[편집 / 원본 편집]

  • BaseObject::add()BaseObject::set()의 alias로 조정 (#2393)
  • 사이트 디자인 설정 메뉴에서 레이아웃 소스 편집 링크 삭제
  • 레이아웃 최초 설정 시 사본 생성 안내문 삭제
  • jQuery fileUpload 스크립트에서 불필요한 console.log() 삭제
  • 설치된 애드온, 레이아웃, 모듈, 위젯 목록의 "삭제" 컬럼 숨김
  • CONTRIBUTING.md에 GPL 관련 안내글 링크 추가