어느덧 올해도 절반이 지나가 버렸네요.

 

2015년에 태어난 라이믹스도 벌써 다섯 살을 앞두고 있습니다.

 

1.8~1.9까지는 XE 새 버전이 나올 때마다 라이믹스도 그대로 따라갔고, XE가 1.10을 건너뛰고 1.11로 넘어간 후에는 1.9.9.x 버전을 만들어 쓰고 있었습니다만 이제는 정말로 XE1과 결별하고 라이믹스만의 독자적인 버전 체계와 업데이트 주기, 서드파티 자료 생태계를 시작할 때가 된 것 같습니다.

 

 

올해 3분기 안에 라이믹스 2.0이 발표될 예정입니다.

 

 

아래와 같은 기능들이 이미 개발되었거나 개발될 예정입니다.

 

1. 짧은주소 대폭 개선

- 글쓰기, 댓글 수정, 검색 등 대부분의 화면에 짧은주소가 적용됩니다.

- 서드파티 모듈 개발자도 자기 모듈 내에서 쓰고 싶은 짧은주소 형식을 직접 지정할 수 있습니다.

 

2. 모바일 푸시알림 지원

- 알림센터에 구글 FCM을 연동하여 푸시알림을 발송할 수 있게 됩니다.

- 푸시앱 모듈의 서버단 기능을 상당부분 대체할 수 있습니다.

- 앱은 직접 개발하셔야 합니다. 연동하는 API 매뉴얼은 추후 공개됩니다.


3. DB 연동 기능 대폭 강화

- 더 다양한 XML 스키마/쿼리 문법을 지원합니다. 기존의 XML 스키마/쿼리도 모두 그대로 사용할 수 있습니다.

- XML을 사용하지 않아도 쉽고 안전하게 커스텀 쿼리를 실행할 수 있도록 지원합니다.

- 외부 DB에서 데이터를 불러오거나, 대량의 데이터를 배열에 담지 않고 순차적으로 처리하는 방식도 지원합니다.

- 다른 프레임워크들과 동일한 PDO 기반이므로, 개발자들의 진입 장벽이 낮아질 것으로 보입니다.

 

4. 테마 도입

- 서로 연관된 레이아웃과 스킨을 하나의 폴더에 넣어서 쉽게 관리할 수 있도록 합니다.

- 테마에서는 더 강력해진 템플릿 문법을 지원합니다.

- 추후 Twig와 같은 외부 템플릿 엔진도 사용할 수 있도록 기초를 닦습니다. (실제 적용은 나중에...)


5. 게시판 기능 강화

- 전체공지 등 사용 빈도가 높은 기능 몇 가지를 기본 탑재할 예정입니다.

 

6. 알림센터 기능 강화

- 웹 알림, 메일 알림, SMS 알림, 푸시알림 등을 통합 관리할 수 있도록 정리할 예정입니다.

 

그 밖에도 자잘한 수정 및 개선사항들이 많습니다.

쉬운설치 및 자료실과 관련해서는 아직 결정된 바가 없습니다.

 

 

호환성을 깨뜨리는 부분이 있습니다.

 

그동안 개발팀의 발목을 잡아온 하위호환성 문제 중 몇 가지를 이번 기회에 정리하고 넘어가려고 합니다. 절대 다수의 사용자분들께는 아무 영향이 없을 것으로 추정됩니다.

 

1. nginx 사용자의 경우, 개선된 짧은주소를 사용하려면 rewrite 규칙을 업데이트해야 합니다. (아파치에서는 .htaccess 파일만 제대로 들어 있으면 자동 적용되므로 크게 신경쓰지 않아도 됩니다.)

 

2. 서버에 PDO 확장모듈이 설치되어 있어야 합니다. mysqli 함수는 더이상 사용하지 않습니다. (i가 없는 mysql 함수는 예전에 PHP 5.x 지원을 중단하면서 이미 버렸습니다.) 라라벨, 코드이그나이터 등 대부분의 프레임워크가 PDO를 기본으로 사용하기 때문에, 절대 다수의 국내외 웹호스팅 업체들은 PDO를 이미 지원합니다. PDO가 별도의 패키지로 분리되어 있는 CentOS 사용자분들만 조심하시면 됩니다.


3. SSL "선택적 사용" 옵션은 더이상 지원되지 않습니다. "선택적 사용"으로 설정되어 있던 사이트는 "항상 사용" 또는 "사용하지 않음"을 선택해야 합니다. 선택적으로라도 SSL을 사용해 왔다면 당연히 SSL 사용이 가능한 서버이고 인증서도 이미 구해 놓으셨다는 뜻일 테니, 가능하면 "항상 사용"으로 전환하시기를 권장합니다.


4. XE 1.8 미만 버전에서 라이믹스 2.0으로 직접 업데이트하는 것을 공식적으로 지원하지 않습니다. XE 1.8 미만 사용자는 우선 XE 1.8 이상 버전으로 업데이트하고 대시보드에서 모듈 업데이트를 모두 클릭한 후에 라이믹스를 덮어씌워야 합니다. 지나치게 오래된 버전의 DB 스키마를 계속 지원하기 어렵기 때문입니다.

5. module extend 기능을 사용하는 서드파티 모듈은 작동이 중지됩니다. 최근까지 꾸준히 사용되어 온 자료들 중 이 기능에 의존하는 것은 전무한 것으로 파악됩니다. (회원가입 확장 모듈 join_extend는 이 기능과 무관합니다.)


6. files/config/db.config.php 파일을 직접 인클루드하여 사용하는 외부 자료는 더이상 작동하지 않습니다. 라이믹스가 files/config/config.php로 변경한 지 4년 이상 지났는데도 여전히 db.config.php를 수정하다가 혼란을 겪는 분들이 많아서, 중복되는 설정파일은 아예 삭제할 예정입니다.


7. 유지보수가 원활하게 이루어지지 않고 있는 simple_world, rx_prn 등의 스킨은 외부 저장소로 옮겨집니다. git으로 업데이트하면 스킨 폴더가 사라질 수 있으니 외부 저장소에서 다시 다운로드하시기 바랍니다.

 

초창기부터 라이믹스의 개발 방향은 "현상유지"가 아니라 "과감하게 수정하고, 사용자들이 따라올 수 있도록 도와준다" + "싫으면 XE1 쓰세요"를 일관성있게 유지해 왔습니다. 이번 업데이트도 마찬가지입니다. 위에서 언급한 대부분의 항목들은 대부분의 사이트에서 아무 문제가 되지 않는 것들이지만, 만약 문제가 있다면 XE타운 질문게시판이나 깃허브 등을 통해 적극적으로 제보해 주시고, 해결 과정에 참여해 주시면 감사하겠습니다.

 

업데이트가 부담스러우신 분은 당분간 XE1 또는 라이믹스 1.9.9.x 버전에 머무르셔도 됩니다. 만약 1.9.9.x 버전에 영향을 주는 심각한 보안취약점이라도 발견된다면 2.0이 나온 후에라도 1.9.9.x 버전을 한 번 더 업데이트할 수 있습니다. (단, 연말에 나올 예정인 PHP 8.0에 대응하는 작업은 라이믹스 2.0에서만 이루어질 예정입니다.)

 

기진곰

profile
GitHub @kijin 사람을 위한 인터넷 생태계의 발전에 많은 관심을 갖고 있습니다.
우리가 만들어 가는 XE의 새 이름, 라이믹스(Rhymix) 프로젝트에 참여하고 있습니다.
오픈소스 도로명주소 검색서버 및 API Postcodify를 개발, 운영중입니다.
국내외 서버 및 클라우드서버 세팅, 이전, 튜닝해 드립니다.
  • profile
    기대 됩니다^^ 항상 고생 많으십니다.
  • profile
    오오 라이믹스 2.0 기대됩니다! 항상 고생하시는 라이믹스 개발진들 진심으로 감사드립니다. :)
  • ?

    돈받고 파는 유료 모듈도 이러진 못하는데 코어를...정말로 대단하십니다.
    라이믹스 덕분에 여지껏 사이트 운영 잘 하고 있는 것도 고마운데 더 고맙습니다..
    크게 신세를 지고 있다는 표현을 드리고 싶습니다.

  • profile
    PDO로 교체되는건 반갑네요 ^^
  • profile profile
    네, mysqli는 파라미터 바인딩하는 과정이 복잡해서 안전하게 사용하기가 너무 어렵습니다.
    PDO를 사용하면 인젝션 공격의 위험을 덜면서도 커스텀 쿼리의 문을 열어줄 수 있을 것 같네요.
    https://github.com/rhymix/rhymix/pull/1332
  • profile
    올 가을이 기대되는군요.
    라이믹스로 넘어온 것이 정말 신의 한수인듯합니다.
  • profile
    우와! 정말 기대됩니다~! 늘 수고가 많으세요~
    개발자님들요 ^^ 감사합니다!~
  • profile

    안그래도 디벨롭 버전에서 파일 다운로드시 짧은주소 사용 했더니 안되더라구요ㅜㅜ
    업데이트도 예고된 김에 최신 rewrite 규칙으로 업데이트 해야겠네요

  • profile
    라이믹스 개발진 여러분 항상 감사드립니다.
  • profile
    고생이 많으십니다. 항상 응원 합니다. 홧팅요!!!!
  • profile
    XML 추가 지원이 기대 되네요.
    항상 감사하고 있습니다.
  • profile profile
    DB 관련해서 어마어마한 패치를 진행중입니다. ㅎㅎ
    https://github.com/rhymix/rhymix/pull/1332
  • profile profile
    와 정말 어마 어마 하네요 ㅎㅎ
    정말 기대 됩니다 ㅎ
  • profile
    기진곰님 항상 수고가 많으시네요.
  • profile
    너무너무 기대하고 있습니다.
    개발자분들의 노고에 감사드립니다!
  • profile
    개발진 여러분들 파이팅!!
  • profile
    라라벨 개발하면서 가장 라이믹스에 추가됬으면 하던게 PDO랑 커스텀 쿼리였는데 이게 추가가 되네요 ㄷㄷ

    응원합니다!!
  • profile
    twig 템플릿 엔진이 들어온다면 기존에 있던 xe 템플릿 엔진은 어떻게 되는지 궁금합니다.
  • profile profile

    2.0에서 다른 템플릿 엔진을 도입할 생각은 없습니다. 나중에 도입하더라도 기존의 템플릿 엔진을 대체하지는 않을 것입니다. 그보다도 기존 템플릿 엔진의 기능을 강화하고 자주 문제를 일으키는 부분을 정리하여 RXE 템플릿 엔진 v2를 만드는 것이 시급한 과제입니다.

     

    {$array|join:,|escape|nl2br} 필터 기능을 이미 오래 전에 만들어 놓았는데 쓰는 분이 거의 없네요. ㅎㅎ

  • profile profile
    아 그런 필터기능이 있는지조차 몰랐네요.
    개인적인 생각이지만 지금 XE 템플릿은 너무 난잡한 느낌이 들어서 Jinja 같은 느낌의 템플릿으로 리뉴얼 됬으면 좋겠는데..

    여튼 라이믹스파로써 발전하는 모습 보기 좋습니다. 응원합니다.
  • profile profile
    아 참 그리고 개발자를 위한 문서는 없나요? 물론 github에도 있긴 하지만 알려주지 않는게 너무 많고..직접 제가 코드를 일일히 뜯어봐야해서 불편할때가 많더군요
  • profile profile
    XE에서 예전에 배포한 개발자 매뉴얼은 있는데, 라이믹스용으로 업데이트할 필요가 있지요..
    일단은 https://github.com/rhymix/rhymix-docs 여기에 모으고 있습니다.
  • profile
    이제 XE1과는 결별해야 할 시간... 라이믹스 2.0 많이 기대하고 있습니다. 늘 감사합니다.
  • profile
    드디어 2.0시대 !!! 너무 반가운 소식입니다. 일단 저는 구체적인 업데이트 및 변경사항은 읽어도 전혀 이해를 못하지만 버전이 높으면 높을 수록 좋겠죠? ㅋㅋ 그리고 정말 작은 바램이 있는데 혹시 코어에 오썸폰트 5 적용을 하는건 어렵나요? 레이아웃이나 그리고 게시판 같은 경우가 대부분 4.5를 지원하는데 공식 사이트에 5버전을 운영중인 사이트에 어찌 적용을 하는지도 모르니 ... 그냥 그림에 떡인거 같아서 이렇게 문의를 해봅니다 ㅠㅠ
  • profile profile
    아이콘폰트는 코어에서 강제하는 것이 아닙니다. 레이아웃이나 스킨 제작자분들이 각자 원하는 버전을 넣어서 배포하는 것입니다.
  • profile profile
    예썰 ~~ 그럼 디자이너들한테 징징대겠습니다 ㅋ
  • profile
    얼마 전 라이믹스로 갈아타길 잘했다는 생각이 다시 한번 드네요 ^^;;
    정말 코알못이지만 이렇게 헌신하시는 분들, 응원합니다. ~~~
  • profile
    우와~ 기진곰님 최고!
  • profile
    대박이네요!
  • ?
    화이팅!!!
  • profile
    이 글을 봤더니 "지금 이 순간"에 뜨네요!^^*
    라이믹스 2.0 변경사항 찾아보다가 왔습니다~
    파이팅!!