새로운 기능 제안¶
가능한 한 많은 정보를 입력한 후 "생성"을 클릭하여 보고서를 제출하세요.
조사해 보세요¶
첫 번째 단계는 BeeWare 이슈 트래커에서 기존 기능 관련 이슈(‘enhancement’ 태그가 지정된 이슈), 문서 관련 이슈(‘documentation’ 태그가 지정된 이슈), 또는 토론 스레드를 검색하여 해당 아이디어가 이전에 제안된 적이 있는지 확인하는 것입니다. 이미 제안된 경우, 새로운 맥락이나 아이디어가 있다면 기존 스레드에 추가하세요. 조사에 도움이 필요하면 BeeWare Discord의 #dev 채널에서 문의할 수 있습니다. 기존 스레드를 안내하거나, 여러분이 알지 못할 수 있는 맥락을 제공하거나, 당장 관련이 없어 보이는 다른 아이디어와 여러분의 아이디어를 연결해 드릴 수 있습니다.
아이디어를 논의하다¶
기존에 해당 아이디어에 대한 언급을 찾지 못하셨다면, 토론 스레드를 시작하세요. 아이디어의 목적과 사용 사례에 대한 개요를 제공하십시오. 구현 시 기능의 형태(예: API의 일반적인 구조, 기능의 시각적 외관, 추가될 문서 등)에 대한 생각도 포함시키세요. 해당되는 경우, 아이디어가 다양한 플랫폼에서 어떻게 구현될지에 대한 연구 결과도 포함해야 합니다.
토론 스레드가 개설되면 BeeWare 팀과 커뮤니티 구성원들이 답변을 드릴 것입니다. 핵심 팀은 귀하의 아이디어에 대해 최소한 초기 의견을 업무일 기준 2일 이내에 제공하기 위해 노력할 것입니다. 아이디어가 특히 복잡한 경우, 보다 상세한 분석에는 최대 일주일이 소요될 수 있습니다. 휴일이나 컨퍼런스 같은 행사로 인해 해당 일정이 다소 지연될 수 있습니다.
여러분의 아이디어에 대한 대화에 참여할 수 있는 기회입니다. 저희가 추가적인 세부사항이나 배경 정보를 요청할 수 있습니다. 커뮤니티의 다른 구성원들도 토론에 참여하여 다른 관점, 제안 또는 대안을 제시할 수 있습니다. 이 논의의 결과가 향후 진행 방향을 결정하게 됩니다.
모든 아이디어가 받아들여지는 것은 아니라는 점을 이해하는 것이 중요합니다. 이 과정이 제안서 제출로 시작되는 이유는, 여러분이 모든 작업을 마친 후에야 변경 사항이 받아들여지지 않는 이유가 있다는 사실을 알게 되는 상황을 피하기 위함입니다.
그렇다고 해서 좋은 아이디어가 아니었다는 뜻은 아닙니다! 기술적인 이유로 구현이 불가능할 수도 있습니다. 예를 들어, 다음과 같은 경우에는 아이디어를 거부할 수 있습니다:
- 모든 지원 플랫폼에서 안정적으로 구현하기 어렵거나 불가능할 수 있습니다; 또는
- 유지 관리가 어려울 수 있거나, 유지 관리를 위해서는 널리 보급되지 않은 기술이나 소프트웨어에 대한 접근이 필요할 수 있습니다; 또는
- 특정 사용자층을 대상으로 하지만, 다른 사용자에게 상당한 부담을 가중시킵니다.
만약 귀하의 아이디어가 적합하지 않다고 판단되더라도, 반드시 포기해야 한다는 의미는 아닙니다. 특정 아이디어를 거절할 수는 있지만, 플러그인 인터페이스나 기타 확장 지점을 추가하여 동일한 기능을 외부 라이브러리로 유지할 수 있도록 하는 방안에는 훨씬 더 개방적일 수 있습니다. 이렇게 하면 해당 기능을 유지하면서도, 기능 자체의 유지보수 문제나 제약이 프로젝트에 부담이 되는 상황을 피할 수 있습니다.
공식 기능 요청으로 전환¶
특징의 형태에 대한 논의가 합의에 도달하면, beeware 이슈 트래커에서 논의 내용을 요약하고 맥락을 위해 해당 논의로 연결되는 링크를 포함하는 새로운 기능 요청 이슈를 생성할 수 있습니다.
기능 제안 사항을 직접 구현할 필요는 없습니다. 제안 내용의 세부 사항을 담은 이슈를 생성하면 됩니다. 다만, 단순히 이슈를 게시한다고 해서 해당 기능이 반드시 구현되는 것은 아닙니다. 동일한 기능에 관심 있는 다른 커뮤니티 구성원이나 핵심 팀원이 이를 채택할 가능성을 기다려야 합니다. 다만 이는 보장되지 않습니다. 확실한 구현을 원한다면 직접 구현하거나, 다른 사람에게 구현을 의뢰해야 합니다.
관심이 있으시다면, 새로운 기능 구현을 시작하실 수 있습니다.