재우니 개발자 블로그

 

2025년부로 AutoMapper와 MediatR은 일부 최신 버전에서 듀얼 라이선스(RPL + Commercial)를 채택했습니다. 과거 MIT 시절의 버전(v14 이하 / v12.5 이하)은 상용(Production)에서도 자유롭게 사용 가능하지만, 최신 버전 사용 시에는 조직·운영 조건에 따라 라이선스 키 또는 유료 구매가 필요합니다. 


1. 배경 — 왜 확인해야 하나

  • 프로젝트에 직접적인 비용·법적 책임이 생길 수 있습니다.
  • 최신 버전으로 업그레이드하면 기능·보안은 좋아지지만 라이선스 의무가 바뀔 수 있습니다.
  • 실무 의사결정(버전 고정 vs 유료 전환 vs 대체) 시 근거 자료로 쓰기 쉽도록 정리합니다.

2. 핵심 사실 (빠르게)

  • AutoMapper: v15부터 듀얼 라이선스/라이선스 키 요구.
  • MediatR: v13부터 듀얼 라이선스/라이선스 키 요구.
  • 과거 버전(예: AutoMapper v14 이하, MediatR v12.5 이하)은 MIT — 상용 환경 사용에 제약 없음.
  • Community(무료) 조건은 조직 연간 매출(또는 예산) 기준 등으로 제한되며, 일반적으로 $5,000,000 USD 전후의 기준이 적용됨(공식 조건 확인 필요).

3. 현장 진단 — 5분 체크리스트

  1. 프로젝트에서 사용 중인 패키지 버전 확인: dotnet list package
  2. 해당 패키지의 사용 범위: 개발/테스트만 사용인가, 아니면 production에서 실제 동작 중인가?
  3. 회사 연간 매출(또는 제품 관련 예산) — Community 조건 충족 여부 판단 근거.
  4. 법무/컴플라이언스와 공유(내부 기록 남기기).

4. 선택지(실무적 장단점)

  1. 버전 고정(pinning) — (예: AutoMapper 14.x, MediatR 12.5)
    • 장점: 즉시 리스크 회피, 라이선스 비용 없음.
    • 단점: 장기적으로 보안·기능 면에서 기술부채 발생 가능.
  2. 업그레이드 + Community 등록(또는 유료 구매)
    • 장점: 최신 기능, 공식 지원.
    • 단점: 조건 불충족시 비용 발생, 라이선스 관리 필요.
  3. 대체 라이브러리 도입(예: Mapster, Mapperly 등)
    • 장점: 오픈 라이선스(MIT 등), 유지비 절감 가능.
    • 단점: 마이그레이션 비용·리스크 존재.
  4. 수동 매핑 또는 소스제너레이터 활용
    • 장점: 의존성 최소화, 성능·통제성 확보.
    • 단점: 초기 개발·유지 비용 증가.

5. 실무 실행 가이드

5-1. 버전 확인 / 고정 (예시)

  • 현재 버전 확인:dotnet list package
  • v14 / v12.5로 고정(예시): 
    dotnet add package AutoMapper --version 14.*
    dotnet add package MediatR --version 12.5.*

 

5-2. 최신 버전 사용 시 라이선스 키 등록(예시)

  • Program.cs(ASP.NET Core) 예시 — AutoMapper 라이선스 키 환경변수에서 읽기:
// Program.cs
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddAutoMapper(cfg =>
{
    cfg.LicenseKey = Environment.GetEnvironmentVariable("AUTOMAPPER_LICENSE_KEY");
});

 

5-3. Community 자격 검토 프로세스(실무 문서화)

문서: 재무팀으로부터 ‘연간 매출/예산 증빙 자료’ 수집 → 법무에 Community 자격 여부 검토 요청 → 결과 기록(프로젝트 리포지토리의 LICENSE_DECISION.md).


6. 권장 실행 플랜 (짧고 실무적)

  1. 즉시(0~2일): 패키지 버전·프로덕션 사용 여부·매출자료 수집(진단).
  2. 의사결정(3일 이내): 법무·재무와 함께 ‘Community 조건 충족 여부’ 결정.
  3. 실행(1~2주):
    • Community 충족 → 최신 버전 업그레이드 후 라이선스 키 등록 및 테스트.
    • 미충족 → (a) v14/v12.5로 고정 후 중장기 마이그레이션 계획 수립 또는 (b) 유료 라이선스 구매.
    • 대체 검토 필요 → Mapster/Mapperly POC(1주) 진행.
  4. 모니터링(계속): 보안 공지·라이선스 업데이트 모니터링, 연 1회 재검토.

7. 실무 팁(짧게)

  • 로그 경고: 라이선스 키 미입력 시 런타임 경고(개발/테스트는 허용) — production 배포 전 반드시 확인하세요.
  • 법적 근거 문서화: 결정 사유(예: ‘v12.5 고정: 비용·호환성 문제로 2025-09 기준 고정’)를 리포지토리에 남기세요.
  • 대체 라이브러리 POC: 핵심 매핑 5~10개 케이스로 성능·테스트 커버 검증 후 결정하세요.
  • 보안 패치 우선순위: 버전 고정 시에도 보안 이슈 발생하면 즉시 패치 계획을 수립해야 합니다.

8. 결론(권장)

  • 단기: 리스크 최소화(v14 / v12.5 고정) → 빠른 의사결정·문서화.
  • 중장기: 정책 선택(Community 등록 또는 유료 구매 또는 마이그레이션).

 

 

 

 

https://github.com/LuckyPennySoftware/AutoMapper?utm_source=chatgpt.com

 

GitHub - LuckyPennySoftware/AutoMapper: A convention-based object-object mapper in .NET.

A convention-based object-object mapper in .NET. . Contribute to LuckyPennySoftware/AutoMapper development by creating an account on GitHub.

github.com

 

 

AutoMapper and MediatR Commercial Editions Launch Today (Jul 2, 2025 • 3 min read)

https://www.jimmybogard.com/automapper-and-mediatr-commercial-editions-launch-today/?utm_source=chatgpt.com

 

AutoMapper and MediatR Commercial Editions Launch Today

Today I'm excited to announce the official launch and release of the commercial editions of AutoMapper and MediatR. Both of these libraries have moved under their new corporate owner (me), Lucky Penny Software. I formed this company to house these projects

www.jimmybogard.com