Devise OTP 플러그인 2.0 업데이트: 새로운 기능 및 업그레이드 가이드

devise-otp 2.0 released

작성자
발행일
2025년 10월 21일

핵심 요약

  • 1 Devise OTP 플러그인 2.0 버전이 출시되었으며, lockable 전략 지원, 로케일 개선, Hotwire 및 Remember me 버그 수정 등 주요 기능이 업데이트되었습니다.
  • 2 브라우저 지속성(browser persistence) 기능이 전용 컨트롤러로 리팩토링되고 라우팅이 표준화되었으며, link_to 대신 button_to를 사용하는 등 주요 변경 사항이 포함되어 있습니다.
  • 3 업그레이드를 위해서는 사용자 정의 컨트롤러 및 뷰 재생성(rails g devise_otp:controllers, rails g devise_otp:views)과 로케일 파일 업데이트가 필요합니다.

도입

Devise OTP 플러그인이 주요 업데이트를 거쳐 2.0 버전으로 출시되었습니다. 이 글은 새로운 기능과 변경 사항, 그리고 기존 사용자를 위한 업그레이드 방법을 상세히 안내합니다. 이번 릴리스는 기능 개선뿐만 아니라 코드 품질 향상에도 중점을 두었으며, 특히 몇 가지 호환성을 깨는 변경 사항이 포함되어 있어 업그레이드 시 주의가 필요합니다.

이번 Devise OTP 2.0 릴리스에서는 다음과 같은 주요 개선 사항과 변경 사항이 적용되었습니다.

새로운 기능 및 개선 사항

  • Lockable 전략 지원: devise-otplockable 전략을 지원하여, 실패한 로그인 시도 카운터를 lockable과 공유하게 됩니다. 이는 로그인 실패를 통합적으로 관리하는 방식으로, 보안 강화에 기여합니다.

  • 로케일 파일 개선: 다국어 지원을 위한 로케일 파일이 개선되어, 번역 및 지역화 작업이 더욱 용이해졌습니다.

  • Hotwire 및 Remember me 지원 강화: Hotwire 및 Remember me 기능과의 호환성 및 안정성이 향상되었습니다.

  • 코드 리팩토링 및 품질 향상: ERB 뷰 정리, Rubocop 및 린팅 도구 도입을 통한 코드 품질 향상 작업이 이루어졌습니다.

주요 Breaking Changes

  • 브라우저 지속성 리팩토링: Laney Stroup의 기여로 브라우저 지속성(browser persistence) 기능이 전용 컨트롤러로 완전히 리팩토링되었습니다.

  • 라우팅 및 액션 변경: 브라우저 지속성 라우팅이 표준화되었으며, 관련 액션들이 link_to 대신 HTML button_to를 사용하도록 변경되었습니다. 이는 사용자 인터페이스 및 동작 방식에 영향을 미칩니다.

업그레이드 절차

  1. 컨트롤러 및 뷰 재생성: 사용자 정의 컨트롤러나 뷰를 사용하는 경우, 다음 명령어를 통해 재생성해야 합니다. bash rails g devise_otp:controllers rails g devise_otp:views 이때, 브라우저 지속성 제어 요소들이 button_to를 사용하도록 변경되었음을 유의해야 합니다.

  2. 로케일 파일 업데이트: 로케일 파일에서 *_persistence 관련 키들을 devise.otp.otp_tokens에서 devise.otp.otp_persistence로 이동해야 합니다.

결론

Devise OTP 2.0은 Devise OTP 플러그인의 안정성과 기능성을 크게 향상시킨 중요한 업데이트입니다. 특히 `lockable` 전략과의 통합과 브라우저 지속성 기능의 리팩토링은 사용자 경험과 보안 측면에서 긍정적인 변화를 가져올 것입니다. 업그레이드 시에는 위에서 언급된 Breaking Changes와 업그레이드 절차를 면밀히 검토하여 원활한 전환을 이루시길 권장합니다. 문제가 발생하면 이슈를 보고하여 커뮤니티에 기여할 수 있습니다.

댓글 0

로그인이 필요합니다

댓글을 작성하거나 대화에 참여하려면 로그인이 필요합니다.

로그인 하러 가기

아직 댓글이 없습니다

첫 번째 댓글을 작성해보세요!