라라벨 6.3이 릴리즈 되었습니다~ 새로 추가된 기능을 알아봅시다.
모델에 setPasswordAttribute 같은 뮤테이터가 있으면 패스워드 재설정할 때 비밀번호 해싱이 두 번 되는 문제가 있어서 setUserPassword()
매서드를 추가했다고 합니다. 코드를 보고 열심히 머리를 굴려봤는데, 도대체 이 커밋이 문제를 어떻게 해결해준다는 건지 이해가 안되네요 ㅠㅠ
Illuminate/Database/Eloquent/Relations/MorphPivot::delete()
매서드에 걸린 이벤트가 없었다고 하네요. 이제는 deleting
과 deleted
이벤트가 발생한다고 합니다.
라라벨은 캐시 원자 잠금장치 기능을 제공합니다. 이를 이용하면 경쟁 조건에 대한 걱정없이 분산 잠금장치(lock)를 조작할 수 있습니다. 하지만, 잠금 기능을 사용하려면 이를 지원하는 memcached
, dynamodb
, redis
캐시 드라이버를 사용해야 했습니다.
단위 테스트를 할 때는 memcached
, dynamodb
, redis
를 실제로 사용하는 대신 배열 캐시 드라이버로 목킹을 하는 편이 훨씬 편리합니다. 하지만 배열 캐시 드라이버는 잠금 기능을 제공하지 않기 때문에 테스트나 애플리케이션이 잠금 기능을 사용하는 경우 배열 캐시 드라이버로 대체해서 사용할 수가 없었습니다.
이번 기능 추가로 캐시 잠금 기능을 사용하는 애플리케이션도 배열 캐시 드라이버로 편리하게 테스트할 수 있게 되었습니다.
Illuminate\Database\Schema\SqlServerBuilder
에 dropAllViews()
매서드를 오버라이드해서 SQL 서버 데이터베이스에서도 사용할 수 있게 됐습니다.
1일 1식 라라벨 76호
2019년 10월 21일
메쉬 코리아 개발자. 바쁜 팀장님 대신 알려주는 신입 PHP 개발자 안내서를 쓰고, 클린 아키텍처 인 PHP를 번역했습니다. 처음부터 제대로 배우는 라라벨(Laravel Up & Running 2nd Edition)을 번역했습니다.