🌐 English|한국어

변경 이력

PhyloForester의 모든 주요 변경 사항을 여기에 기록해요.

이 문서는 Keep a Changelog 형식을 따르며, 이 프로젝트는 `Semantic Versioning <https://semver.org/spec/v2.0.0.html>`_을 준수해요.

[0.1.0] - 2025-11-03

추가

데이터 행렬 편집기 개선:

  • 탭 구분 형식을 사용하는 Excel 스타일 복사/붙여넣기 기능 (Ctrl+C/V)

  • Qt의 QUndoStack 프레임워크를 사용한 전문적인 실행 취소/다시 실행 시스템

  • Delete 키로 선택한 셀 지우기

  • 컨텍스트 메뉴를 통해 여러 셀에 값 채우기

  • 분류군과 형질 순서 변경을 위한 위로/아래로 버튼 (↑/↓)

  • 실행 취소, 다시 실행, 복사, 붙여넣기, 지우기, 채우기 동작이 포함된 컨텍스트 메뉴

  • 형질 및 분류군 이름을 위한 전체 너비 입력 필드

  • 강력한 데이터 행렬 동기화를 위한 메타데이터 추적

CI/CD 파이프라인:

  • Python 3.9, 3.10, 3.11을 위한 자동화된 테스트 워크플로우

  • Linux에서 xvfb를 사용한 PyQt5 GUI 테스트

  • Ruff 린터 통합

  • Codecov를 사용한 코드 커버리지 보고

  • 크로스 플랫폼 빌드 자동화 (Windows/macOS/Linux)

  • Git 태그에 대한 자동화된 GitHub 릴리스

  • GitHub Actions UI를 통한 수동 릴리스 워크플로우

  • 릴리스를 위한 SHA256 체크섬 생성

  • Windows Inno Setup 설치 프로그램 생성

테스트 인프라:

  • 유틸리티, 모델, 대화상자를 포괄하는 82개의 자동화된 테스트

  • 테스트 마커 (unit/model/dialog)가 있는 pytest 구성

  • 개별 타임아웃을 사용한 테스트 분리

  • GUI 테스트를 위한 pytest-qt

빌드 시스템:

  • 크로스 플랫폼 빌드를 위한 통합 build.py 스크립트

  • ``version.py``에서 버전 추출

  • 플랫폼별 최적화

  • 버전 및 빌드 번호를 포함한 아티팩트 명명

버전 관리:

  • ``version.py``를 사용한 시맨틱 버저닝 (Semantic Versioning) 시스템

  • 자동화된 버전 업데이트를 위한 manage_version.py 스크립트

  • CHANGELOG.md 통합

  • Git 커밋 및 태그 자동화

오류 처리:

  • 커스텀 예외 클래스를 사용한 27개의 오류 핸들러

  • 모듈 전반에 걸친 포괄적인 오류 관리

로깅 시스템:

  • 파일 및 콘솔 핸들러를 사용한 전문적인 로깅

  • 200개 이상의 print() 문을 구조화된 로깅으로 대체

  • 적절한 로그 수준 (DEBUG/INFO/WARNING/ERROR)

변경

  • 데이터 행렬 대화상자가 이제 분류군/형질 목록 변경 사항을 데이터 행렬 JSON과 올바르게 동기화해요

  • 형질 및 분류군 입력 필드가 버튼 위에 전체 너비 레이아웃으로 표시돼요

  • 대화상자에서 데이터 행렬 편집 후 메인 테이블이 자동으로 새로고침돼요

  • 분류군 필드의 입력 필드 플레이스홀더 텍스트가 수정됐어요

  • 환경 변수 버전 지원이 추가된 개선된 Inno Setup 스크립트

  • PyInstaller spec 파일 최적화

수정

  • 셀 시각 상태 (노란색 강조 표시)가 이제 실행 취소/다시 실행 시 올바르게 복원돼요

  • 대화상자의 데이터 행렬 변경 사항이 메인 테이블 뷰에 올바르게 반영돼요

  • 분류군 및 형질 목록 수정 사항이 기본 데이터 행렬 구조를 올바르게 업데이트해요

  • 실제 데이터 행렬 데이터와 목록 위젯 동기화

[Pre-0.1.0] - 개발 버전

초기 개발은 핵심 기능에 중점을 두었어요:

  • PyQt5 기반 데스크톱 애플리케이션 프레임워크

  • Peewee ORM을 사용한 SQLite 데이터베이스

  • 프로젝트/데이터 행렬/분석 계층 구조

  • TNT, IQTree, MrBayes와의 통합

  • Nexus/Phylip/TNT 파일 형식 지원

  • SVG 렌더링을 사용한 트리 시각화

  • 형질 상태 매핑

  • 조상 재구성을 위한 Fitch 알고리즘

미출시

향후 릴리스를 위해 계획된 기능:

  • 추가 파일 형식 지원 (FASTA, Stockholm)

  • 고급 형질 매핑 옵션

  • 대화형 트리 편집

  • 일괄 분석 작업

  • 대용량 데이터셋을 위한 성능 최적화

  • macOS 코드 서명

  • Linux AppImage 패키징

  • 포괄적인 사용자 문서

  • API 문서

버전 히스토리

버전

날짜

주요 내용

0.1.0

2025-11-03

Excel 스타일 편집, CI/CD 파이프라인, 테스트 인프라

사전 릴리스

2024-2025

핵심 계통 분석 기능

참고