버전 4.1.6

릴리즈 날짜: 2022년 1월 3일

CodeIgniter4의 4.1.6 릴리즈

보안

  • old() 함수에서 발견된 신뢰할 수 없는 데이터의 역직렬화 문제가 수정되었습니다. 자세한 내용은 보안 권고사항을 참조하십시오.

주요 변경사항

  • 여러 테이블 이름이 더 이상 BaseBuilder::$tableName에 저장되지 않으며, 대신 빈 문자열이 사용됩니다.

유효성 검사 변경 사항

  • 이전 버전의 유효성 검사는 배열 항목을 처리하지 못했습니다. 버그 수정으로 인해 유효성 검사 결과가 다르거나 TypeError가 발생할 수 있습니다. 하지만 이전 버전의 결과는 아마도 잘못된 것이었습니다.

  • 유효성 검사는 contacts.*.name과 같은 복수 필드와 단일 필드의 유효성 검사 프로세스를 분리했습니다. 단일 필드에 배열 데이터가 있을 때, 이전 버전은 배열의 각 요소를 검사했으며 유효성 검사 규칙은 배열의 요소를 파라미터로 받았습니다. 반면 현재 버전은 배열 전체를 유효성 검사 규칙에 전달합니다.

개선 사항

  • PHP 8.1에 대한 완전한 지원이 추가되었습니다.

  • 디버그 툴바의 데이터베이스 패널에 이제 쿼리가 호출된 위치가 표시됩니다. 또한 전체 백트레이스도 표시됩니다.

  • QueryBuilder의 서브쿼리가 이제 BaseBuilder 클래스의 인스턴스일 수 있습니다.

  • Kint가 ^3.3에서 ^4.0으로 업데이트되었습니다.

변경 사항

  • 쿠키 전송 프로세스가 Response 클래스로 이동되었습니다. 이제 SecurityCookieStore 클래스는 쿠키를 전송하지 않고, Response에 설정합니다.

사용 중단

  • Seeder::faker()Seeder::$faker가 사용 중단되었습니다.

  • BaseBuilder::cleanClone()이 사용 중단되었습니다.

쿠키 전송

쿠키 전송 프로세스가 Response 클래스로 이동되었습니다. 또한 다음 메서드들이 사용 중단되었습니다:

  • CookieStore::dispatch()

  • CookieStore::setRawCookie()

  • CookieStore::setCookie()

  • Security::sendCookie()

  • Security::doSendCookie()

버그 수정

수정된 버그의 전체 목록은 저장소의 CHANGELOG_4.1.md을 참조하십시오.