Firefox, XPCOM 플러그인 지원 중단

Mozilla 커뮤니티에서 Firefox 3.6 이상 부터 XPCOM Plugin API의 지원을 중단한다.

XPCOM이란 여러 운영 체제에 동일한 기능을 하기 위해 만든 파이어폭스 자체 개발 모델로서 쉽게 인터페이스를 정의해서 외부 플러그인 프로그램을 만들 수도 있다. 이는 마이크로소프트의 ActiveX 기술에 대응되는 것이다.

하지만, 2004년에 어도비, 썬, Mozilla, 애플, 오페라가 플러그인 규격을 NPAPI로 일원화 함으로서 장기적으로 지원이 중단될 가능성이 있었다. 올해 4월에 관련한 토론이 있고 난 후 지난 8월에 Firefox 3.6 이상 부터 지원이 중단되도록 코드 수정이 일어났다.

We’re currently planning to remove OJI, LiveConnect, and the XPCOM
plugin API from Gecko 1.9.2. We’ve worked hard to get to a point where this would be possible and I believe we can make these changes in Gecko 1.9.2.

We are planning to remove those components because they are largely unmaintained, they have few consumers, and there are better alternatives.

지원 중단 이유로 코드 유지 보수가 안되고 있고 플러그인 숫자도 적고 더 나은 방법이 있기 때문이다라는 것이다.

문제는 결국 또 한국이다. jshin님으로 부터 이 소식을 전해 듣고 확인을 해 보니 국내에 XPCOM 기반으로 플러그인을 제작하는 회사들이 적지 않다는 점이다.

일단 전자정부와 대법원 사이트에 들어가 있는 소프트포럼의 플러그인이 당장 XPCOM Plugin 기반이다. Firefox 3.6 테스트 버전을 설치하고 웹 사이트에 가보니 Firefox 3.5에서는 동작하는 공인 인증 로그인 기능으 동작하지 않는다. 유사하게 Firefox 사용자들이 많이 이용하는 IETab도 마찬가지다.

두 확장 기능 개발 회사에 연락을 취해 관련 정보를 제공한 후, 행정안전부 웹 표준 종합 대책을 보니 ActiveX 대체 기술 항목 대부분이 XPCOM 이라는 또 다른 플러그인으로 대체하는 것이었다.


지난 미래웹포럼에서도 오페라 소프트웨어의 조만영 차장님이 “Plugin은 악(Evil)이다”라는 말이 생각난다. 예전에 행안부 회의에 갔을 때 ActiveX 대안 기술로서 또 다른 종속적인 플러그인으로 만드는 것을 반대 했지만 현실적인 구현 대안이라는 점에서 결국 설득이 되지 않더라. 2년 전에도 이미 여러 대안을 제시한 적이 있지만 늘 근시안적인 현실이라는 벽에 부딫히고 있다.

이 부분에 대해 담당자인 Josh와 Chris Blizzard에게 확인 결과 이 기능을 빼기 위한 조사를 했는데 전 세계적으로 3개사만 해당 사항이 있었고 관련해서 작업이 끝나서 했다는 이야기였다. 우리 정부가 조사한 것만 해도 소프트포럼 이외 위의 표에 있는 대로 십 여개는 된다.

물론 XPCOM 플러그인이 제외된다고 해서 Firefox에서 플러그인을 완전히 없애는 것은 아니다. 어도비, 썬, 윈도우미디어 같은 주요 소프트웨어가 여전히 플러그인으로 제공되고 있고 이들은 비 IE 브라우저의 표준인 NPAPI를 통해 만들어지고 있기 때문이다.

현재 XPCOM으로 만들어진 것도 NPAPI로 쉽게 코드 변경이 가능할 것이다. 또한 웹 페이지 스크립팅도 XPCOM 보다는 어렵지만 NPRuntime으로 구현 가능하다. 하지만, 문제는 그 다음이다.

크리스 블리자드가 토론 메일에 적은 내용을 보면…

사용자 삽입 이미지“Our world of multi-process plugins is going to make their lift harder come 3.7, though”

즉, 앞으로 파이어폭스에서 플러그인이 동작하는 건 더 어려워질 것이다라는 점이다.

- ;

Disclaimer- 본 글은 개인적인 의견일 뿐 제가 재직했거나 하고 있는 기업의 공식 입장을 대변하거나 그 의견을 반영하는 것이 아닙니다. 사실 확인 및 개인 투자의 판단에 대해서는 독자 개인의 책임에 있으며, 상업적 활용 및 뉴스 매체의 인용 역시 금지함을 양해해 주시기 바랍니다. 본 채널은 광고를 비롯 어떠한 수익도 창출하지 않습니다. (The opinions expressed here are my own and do not necessarily represent those of current or past employers. Please note that you are solely responsible for your judgment on checking facts for your investments and prohibit your citations as commercial content or news sources. This channel does not monetize via any advertising.)

여러분의 생각 (3개)

  1. 떠돌이 댓글:

    음… 아직 출발도 하지 않았는데.. 또 뒤떨어지는 격이네요…..
    무엇보다 이런 것에 휘둘리지 않도록 근본적인 해결 방법은 정말 없는 것인지.. 저로서는 개발자도 아니고 기술자도 아니기에 모르겠습니다..

  2. Mono 댓글:

    학주니님의 블로그에서 봤던 내용과 비슷한 맥락이네요. 결국 표준을 위해서 자신의 최강점을 포기할 줄 아는 모질라의 대인배 스러움이랄까. 멀리 보는 안목이랄까.. 이게 정말 대단해보입니다.

  3. 야간비행 댓글:

    트윗으로도 질문을 드렸는데요.
    오래전 글에 이렇게 질문을 드려서 죄송합니다.
    최근 XPCOM과 관련된 일을 하고 있다가 팀내 토론이 벌어져서 질문 드리게 됩니다.

    이 글이 요지는 XPCOM 플러그인 API의 중단이겠죠?
    혹자는 XPCOM자체가 중단이 된다는 말이 있어서 그 근원지를 찾으면 윤석찬님의 글로 연결이 되어서 질문을 드립니다.

    XPCOM은 모질라의 구조 그 자체가 아닌가 하는 생각인데, 제가 잘못 알고 있는 걸까요?
    답변 부탁 드립니다.

    트윗 : @Dr_rainer