본문으로 건너뛰기

"소프트웨어 업데이트" 태그로 연결된 4개 게시물개의 게시물이 있습니다.

모든 태그 보기

Beancount v3: 새로운 기능은?

· 약 3분
Mike Thrift
Mike Thrift
Marketing Manager

Beancount 버전 3은 2024년 중반에 출시되어 인기 있는 플레인 텍스트 회계 도구의 아키텍처가 크게 진화했습니다. 사용자 원장 파일에 대한 이전 버전 호환성을 유지하면서도, 내부 구조와 부수적인 도구들이 크게 변경되었습니다. 아래는 Beancount v3에서 새롭게 추가된 내용의 요약입니다.

보다 모듈식이고 간소화된 아키텍처

2025-06-06-whats-new-in-beancount-v3

Beancount v3에서 가장 큰 변화는 보다 모듈식 생태계로 전환한 것입니다. 이전에 코어와 함께 번들되어 있던 여러 핵심 기능이 별도의 독립 프로젝트로 분리되었습니다. 이를 통해 Beancount 코어는 가벼워지고, 개별 구성 요소에 대한 집중적인 개발이 가능해졌습니다.

현재 별도 패키지로 제공되는 주요 구성 요소는 다음과 같습니다:

  • beanquery: 원장 파일을 대상으로 하는 강력한 SQL‑유사 쿼리 도구가 이제 별도 패키지로 제공됩니다.
  • beangulp: 기존 beancount.ingest 모듈을 대체하는 데이터 가져오기 프레임워크의 새로운 홈입니다.
  • beanprice: 상품 및 주식 가격을 가져오는 전용 도구입니다.

이러한 분리로 인해 사용자는 기존 버전 2에서 사용하던 전체 기능을 유지하려면 beancount 자체와 함께 위 패키지들을 추가로 설치해야 합니다.

명령줄 도구 및 워크플로우 변경

새로운 모듈식 아키텍처를 반영하여 명령줄 도구에도 몇 가지 눈에 띄는 변화가 있습니다:

  • bean-report 가 사라짐: 이 도구는 제거되었습니다. 이제 보고서 작성을 위해 bean-query ( beanquery 패키지 제공) 를 사용하도록 권장합니다.
  • 새로운 Importer 워크플로우: bean-extractbean-identify 명령이 코어에서 삭제되었습니다. beangulp 를 활용한 스크립트 기반 접근 방식으로 전환되었습니다. 사용자는 은행 명세서와 같은 외부 데이터 소스를 가져오기 위해 자체 Python 스크립트를 작성해야 합니다.

구문 및 기능 향상

코어 회계 원칙은 그대로 유지되지만, Beancount v3에서는 구문에 몇 가지 유연성이 추가되었습니다:

  • 통화 코드 유연성 확대: 이전에 통화 이름의 길이와 문자에 제한이 있었으나, 이제는 단일 문자 통화 기호도 지원됩니다.
  • 거래 플래그 확장: 거래에 대해 A부터 Z까지의 대문자를 자유롭게 플래그로 사용할 수 있어 보다 세분화된 분류가 가능합니다.

이러한 변경 사항은 모두 이전 버전과 호환되므로, 기존 Beancount v2 원장 파일은 그대로 사용할 수 있습니다.

C++ 재작성 및 성능

Beancount의 장기 목표 중 하나는 성능에 민감한 구성 요소를 C++ 로 재작성하는 것이었습니다. 현재 진행 중인 작업이지만, Beancount v3 최초 릴리스에는 C++ 기반 코어가 포함되지 않습니다. 따라서 현재 v3의 성능은 v2와 비슷합니다. C++ 코드는 향후 통합을 위해 별도 개발 브랜치에 유지됩니다.

v2 에서 v3 로의 마이그레이션

대부분의 사용자에게는 Beancount v2 에서 v3 로의 마이그레이션이 비교적 간단합니다:

  1. 원장 파일: .beancount 파일에 별도의 변경이 필요 없습니다.
  2. 설치: beanquery, beangulp 와 같은 새로운 별도 패키지를 pip 로 설치해야 합니다.
  3. Importer 스크립트: 사용자 정의 Importer 가 있다면 새로운 beangulp API 로 업데이트해야 합니다. 주로 상속받는 기본 클래스를 교체하고 메서드 시그니처를 조정하면 됩니다.
  4. Fava: Beancount 의 인기 웹 인터페이스인 Fava 가 v3 와 호환되도록 업데이트되었습니다. 원활한 사용을 위해 최신 버전의 Fava 를 설치하세요.

요약하면, Beancount v3 은 프로젝트 아키텍처를 보다 모듈화하고 유지·확장이 쉬운 기반 릴리스입니다. 데이터 가져오기와 같은 워크플로우에 약간의 조정이 필요하지만, 향후 강력한 회계 도구 개발을 위한 토대를 마련합니다.

Beancount에서 다중 파일 지원 도입

· 약 2분
Mike Thrift
Mike Thrift
Marketing Manager

우리 고객 중 많은 분들이 2월부터 하나의 원장에 여러 파일을 추가하는 방법을 문의해 왔습니다. 파일 구조를 통해 거래를 보관하거나 분류하고자 했습니다. 그래서 몇 달간의 작업 끝에, 이 기능을 무료로 출시하게 되어 기쁩니다.

사용 방법은 다음과 같습니다:

파일 > 새 파일 만들기

2021-09-24-multi-file-one-ledger

왼쪽 탐색 사이드바의 파일 편집기 탭으로 이동합니다. 그런 다음 “파일” 드롭다운을 따라 “새 파일 만들기”를 클릭합니다.

File > create a new file

새 파일 이름 지정

유효한 파일명을 입력하고 저장합니다. 모든 파일명은 “.bean”으로 끝나야 합니다.

Name your new file

파일 포함하기

여기서 중요한 단계입니다. 새로 만든 파일을 main.bean에 포함시켜야 합니다.

예를 들어 stock.bean을 추가했다면, main.beaninclude "stock.bean" 를 지정합니다.

Include the file

새로 고침 후 파일 이동

페이지를 새로 고침하면 “파일” 드롭다운에 파일이 나타납니다.

Refresh and go to file

파일 이름 바꾸기 또는 삭제하기

파일로 이동한 뒤 “편집” 드롭다운에서 파일 이름을 바꾸거나 삭제할 수 있습니다.

Rename or delete the file

문제가 있나요?

https://t.me/beancount 에서 질문해 주세요.

Fava 버전 1.19 업그레이드: 주요 변경 사항 및 개선점

· 약 1분
Mike Thrift
Mike Thrift
Marketing Manager

우리는 MIT 라이선스 오픈소스 소프트웨어인 Fava를 버전 1.19로 업그레이드했습니다. 지난 업데이트 이후 변경 사항은 다음과 같습니다:

  • v1.19 (2021-05-18)
    • conversioninterval 옵션에서 default-page 옵션으로 마이그레이션
    • invert-income-liabilities-equity 옵션 추가
    • CodeMirror 6으로 업그레이드
    • 불가리아어 번역 추가
    • 기타 작은 개선 및 버그 수정
  • v1.18 (2021-01-16)
    • 몇 가지 작은 개선 및 다양한 버그 수정.

흥분되시나요? 지금 바로 https://beancount.io/ledger/에서 사용해 보세요

2021-07-16-upgrade-fava-to-1-19

질문이 있으신가요? https://t.me/beancount 에서 언제든 도와드리겠습니다 :)

Beancount.io 향상: 성능 및 보안 업그레이드

· 약 1분
Mike Thrift
Mike Thrift
Marketing Manager

보안이 강화되고 성능이 뛰어난 온라인 서비스를 유지하는 일은 일회성 작업이 아닙니다. 새로운 기능을 개발하는 것뿐만 아니라 기존 기능을 갱신하는 데에도 노력이 필요합니다.

오래된 소프트웨어는 고객을 보안 취약점 위험에 노출시킵니다. 이 위험을 어떻게 줄일 수 있을까요? 한편으로는, 우리는 보안 연구원들과 적극적으로 협력하여 예상치 못한 문제를 찾아 해결합니다. 다른 한편으로는, 정기적으로 상위 소프트웨어의 최신 버전을 병합합니다.

오늘은 Beancount.io를 개선하기 위해 우리가 만든 몇 가지 향상을 공유하게 되어 기쁩니다.

2021-01-07-upgrade-fava-to-1-17

  1. 서버를 업그레이드하여 서비스 속도를 최대 30%까지 높였습니다. 서비스 가용성 또한 크게 개선되었습니다.
  2. MIT 라이선스 오픈소스 소프트웨어인 Fava를 버전 1.17로 업그레이드했습니다. 다양한 버그가 수정되고 많은 새로운 기능이 추가되었습니다.

흥미롭나요? 지금 바로 https://beancount.io/ledger/에서 사용해 보세요.

궁금한 점이 있나요? https://t.me/beancount 에서 언제든지 도와드리겠습니다 :)