출시 — 스키마 지원, 정리된 내부 및 앞으로의 계획

발행: (2026년 1월 31일 오전 03:07 GMT+9)
5 min read
원문: Dev.to

Source: Dev.to

RunAPI가 크게 업그레이드되었습니다.

최신 버전에서는 스키마 지원을 도입하고, 내부 아키텍처를 개선했으며, 더 나은 테스트와 데이터베이스 확장성을 위한 기반을 마련했습니다 — 여전히 RunAPI는 가볍고 개발자 친화적입니다.

Python으로 API를 만들면서 파일 기반 라우팅 + FastAPI를 선호한다면 이번 릴리스를 주목하세요.

✨ 이번 릴리스의 새로운 기능

✅ 스키마 지원 (대형 업데이트)

RunAPI가 이제 스키마를 지원하므로 다음이 쉬워집니다:

  • 요청 및 응답 모델 정의
  • 입력을 일관되게 검증
  • API가 성장함에 따라 구조를 유지

실제 운영 환경의 요구에 한 걸음 더 다가가면서도 여전히 간단하게 사용할 수 있습니다.

🧹 코드 품질 개선

내부 개선 사항이 다수 병합되어 정리가 이루어졌습니다:

  • Python 3.12 호환성 수정 (datetime.utcnow()datetime.now(timezone.utc))
  • Pydantic이 아닌 모델에 대한 안전한 처리
  • 더 이상 사용되지 않는 Pydantic v1 패턴 제거
  • 모듈 로딩 안전성 검사 강화
  • 라우트 이름 생성 로직 정리

이 변경은 공개 API에 영향을 주지 않으며 RunAPI를 보다 견고하고 미래 지향적으로 만들어 줍니다.

🗄️ 스토리지: In‑Memory + SQLAlchemy (선택 사항)

RunAPI는 현재 두 가지 스토리지 백엔드를 지원합니다:

  • InMemory 스토리지 (기본값, 의존성 없음)
  • SQLAlchemy 스토리지 (SQLAlchemy가 설치된 경우에만 사용)

SQLAlchemy가 없을 경우 RunAPI는 자동으로 인‑메모리 스토리지로 전환되어 충돌이나 예기치 않은 동작이 발생하지 않습니다.

이를 통해 RunAPI는:

  • 기본적으로 가볍게 유지
  • 보다 진지한 사용 사례에도 유연하게 대응

🧠 다음에 개선할 내용

스키마 지원이 구현된 만큼, 다음은 집중할 영역입니다:

🔍 테스트 커버리지 확대

  • 스키마 관련 테스트 추가
  • 라우팅 및 인증에 대한 엣지 케이스 테스트
  • 기능이 늘어날수록 신뢰성 강화

🧩 명확한 스토리지 추상화

InMemory와 SQLAlchemy 백엔드가 이미 존재하지만, 우리는 다음을 원합니다:

  • 명확한 공통 인터페이스
  • 더 깔끔한 백엔드 선택 로직
  • 향후 확장(예: Redis 등) 용이성

📚 문서 및 예제 개선

  • 스키마 사용 가이드
  • 스토리지 동작에 대한 명확한 설명
  • 실제 CRUD 예제 제공

🤝 기여하고 싶으신가요?

RunAPI는 아직 발전 중이며 기여를 적극 환영합니다.

시작하기 좋은 분야:

  • 테스트 🧪

  • 문서 📖

  • 스토리지 추상화 🗄️

  • 예제 및 템플릿 🧱

  • GitHub repo:

  • Issues:

🏁 마무리 생각

이번 릴리스는 화려한 기능보다는 탄탄한 기반을 다지는 데 초점을 맞췄습니다.

  • 스키마는 더 안전한 API를 가능하게 합니다.
  • 정리된 내부 구조는 개발 속도를 높입니다.

로드맵은 RunAPI를 부풀리지 않으면서도 유연하게 유지하도록 설계되었습니다. 직접 사용해 보시고 피드백을 주시면 언제든 환영합니다 🙌

즐거운 개발 되세요! 🚀

Back to Blog

관련 글

더 보기 »