musicboy9 / fl_viewer

FL Viewer
0 stars 0 forks source link

레포 관련 질문 #34

Open musicboy9 opened 1 year ago

musicboy9 commented 1 year ago

현 상황: Flower라고 하는 오픈소스 프레임워크를 이용해서 시뮬레이션 프로그램을 만들었다. 클라이언트와 서버 내의 특정 이벤트를 기록하기 위해 multiprocessing하게 생성되느 process들이 공유하는 딕셔너리를 만들었다. 해당 딕셔너리를 라이브러리 메소드 argument에 추가하여 dictionary에 타임 스탬프를 찍고, Viewer는 일정 주기마다 딕셔너리를 fetch해서 이를 Show한다.

문제: 라이브러리를 수정한 것을 어떻게 추적 관리할 것인가?

방법

  1. 라이브러리를 잘 수정해서 flower 라이브러리 자체에 PR을 보내서 contribution한다 - 가능은 하나, 해당 딕셔너리가 다른 곳에서 전혀 쓰이지가 않기 때문에 이런 방식으로 simulation 기능을 지원하기 위해서는 전혀 새로운 방식으로 프로그램을 설계해야 할듯. 코딩 기준도 훨씬 꼼꼼해야 한다. contribution baseline of flower
  2. 라이브러리를 내 레포에 포크하고, 해당 레포에 현재 시뮬레이션 소스코드를 병합하여 함께 관리한다. - 가장 현실적인 방법. 수정하지 않은 라이브러리 파일까지 레포에 포함해야 한다는 점, 레포에 포함된 파일의 수가 많아지는 것이 싫긴 하지만 현실적이다.
  3. 라이브러리를 내 레포에 포크한 후, 내가 수정한 라이브러리 코드를 반영한 custom_flower 레포를 만든다. - 새로운 사용자는 requirements.txt를 통해 내 깃에서 커스텀 라이브러리르 다운받을 수 있다. 그러나 라이브러리와 소스코드를 모두 수정할 일이 생기면 두 레포를 한꺼번에 관리하는 것이 번거롭다. (이 방식이 옳은 방식인지 잘 모르겠다)
musicboy9 commented 1 year ago

변형된 3번으로 구현. #54 참고