버전 4.0.0-alpha.5

출시일: 2019년 1월 30일

CodeIgniter4의 다음 알파 릴리스

주요 사항

  • app/Config/Toolbar.php에 $maxQueries 설정 추가됨

  • PHP 의존성이 7.2로 업데이트됨

  • 이메일 및 큐 모듈을 위한 새로운 기능 브랜치가 생성되어 4.0.0 릴리스에 영향을 주지 않습니다

  • 사용되지 않는 언어 메시지 일부가 제거되고(예: Migrations.missingTable) 새로운 메시지가 추가됨(예: Migrations.invalidType)

  • 특히 데이터베이스 지원과 관련된 다수의 버그 수정

  • 제공되는 필터(CSRF, Honeypot, DebugToolbar)가 app/Filters/에서 system/Filters/로 이동됨

  • 사용자 가이드의 설치 및 튜토리얼 섹션이 재검토됨

  • 코드 커버리지가 77%에 도달… 목표인 80%에 점점 가까워지고 있습니다 :)

이번이 마지막 알파 릴리스가 되고, 다음 사전 릴리스는 첫 번째 베타가 되길 바랍니다 … 행운을 빕니다!

변경된 파일

PR 번호와 함께 변경된 파일 목록이 아래에 나열됩니다.

  • admin/
    • starter/
      • README.md #1637

      • app/Config/Paths.php #1685

    • release-appstarter #1685

  • app/
    • Config/
      • Filters #1686

      • Modules #1665

      • Services #614216
        • Toolbar

  • contributing/
    • guidelines.rst #1671, #1673

    • internals.rst #1671

  • public/
    • index.php #1648, #1670

  • system/
    • Autoloader/
      • Autoloader #1665, #1672

      • FileLocator #1665

    • Commands/
      • Database/MigrationRollback #1683

    • Config/
      • BaseConfig #1635

      • BaseService #1635, #1665

      • Paths #1626

      • Services #614216, #3a4ade, #1643

      • View #1616

    • Database/
      • BaseBuilder #1640, #1663, #1677

      • BaseConnection #1677

      • Config #6b8b8b, #1660

      • MigrationRunner #81d371, #1660

      • Query #1677

    • Database/Postgre/
      • Builder #d2b377

    • Debug/Toolbar/Collectors/
      • Logs #1654

      • Views #3a4ade

    • Events/
      • Events #1635

    • Exceptions/
      • ConfigException #1660

    • Files/
      • Exceptions/FileException #1636

      • File #1636

    • Filters/
      • Filters #1635, #1625, #6dab8f

      • CSRF #1686

      • DebugToolbar #1686

      • Honeypot #1686

    • Helpers/
      • form_helper #1633

      • html_helper #1538

      • xml_helper #1641

    • HTTP/
      • ContentSecurityPolicy #1641, #1642

      • URI #2e698a

    • Language/
      • /en/Files #1636

      • Language #1641

    • Log/
      • Handlers/FileHandler #1641

    • Router/
      • RouteCollection #1665, #5951c3

      • Router #9e435c, #7993a7, #1678

    • Session/
      • Handlers/BaseHandler #1684

      • Handlers/FileHandler #1684

      • Handlers/MemcachedHandler #1679

      • Session #1679

    • bootstrap #81d371, #1665

    • Common #1660

    • Entity #1623, #1622

    • Model #1617, #1632, #1656, #1689

  • tests/
    • README.md #1671

  • tests/system/
    • API/
      • ResponseTraitTest #1635

    • Autoloader/
      • AutoloaderTest #1665

      • FileLocatorTest #1665, #1686

    • CLI/
      • CommandRunnerTest #1635

      • CommandsTest #1635

    • Config/
      • BaseConfigTest #1635

      • ConfigTest #1643

      • ServicesTest #1635, #1643

    • Database/Builder/
      • AliasTest #bea1dd

      • DeleteTest #1677

      • GroupTest #1640

      • InsertTest #1640, #1677

      • LikeTest #1640, #1677

      • SelectTest #1663

      • UpdateTest #1640, #1677

      • WhereTest #1640, #1677

    • Database/Live/
      • AliasTest #1675

      • ConnectTest #1660, #1675

      • ForgeTest #6b8b8b

      • InsertTest #1677

      • Migrations/MigrationRunnerTest #1660, #1675

      • ModelTest #1617, #1689

    • Events/
      • EventTest #1635

    • Filters/
      • CSRFTest #1686

      • DebugToolbarTest #1686

      • FiltersTest #1635, #6dab8f, #1686

      • HoneypotTest #1686

    • Helpers/
      • FormHelperTest #1633

      • XMLHelperTest #1641

    • Honeypot/
      • HoneypotTest #1686

    • HTTP/
      • ContentSecurityPolicyTest #1641

      • IncomingRequestTest #1641

    • Language/
      • LanguageTest #1643

    • Router/
      • RouteCollectionTest #5951c3

      • RouterTest #9e435c

    • Validation/
      • RulesTest #1689

    • View/
      • ParserPluginTest #1669

      • ParserTest #1669

  • user_guide_src/

    • concepts/
      • autoloader #1665

      • structure #1648

    • database/
      • connecting #1660

      • transactions #1645

    • general/
      • configuration #1643

      • managing_apps #5f305a, #1648

      • modules #1613, #1665

    • helpers/
      • form_helper #1633

    • incoming/
      • filters #1686

      • index #4a1886

      • methodspoofing #4a1886

    • installation/
      • index #1690, #1693

      • installing_composer #1673, #1690

      • installing_git #1673, #1690

      • installing_manual #1673, #1690

      • repositories #1673, #1690

      • running #1690, #1691

      • troubleshooting #1690, #1693

    • libraries/
      • honeypot #1686

      • index #1643, #1690

      • throttler #1686

    • tutorial/
      • create_news_item #1693

      • index #1693

      • news_section #1693

      • static_pages #1693

  • composer.json #1670

  • contributing.md #1670

  • README.md #1670

  • spark #1648

  • .travis.yml #1649, #1670

병합된 PR

  • #1693 문서/튜토리얼

  • #5951c3 도메인/서브도메인 라우트가 기존 라우트를 덮어쓸 수 있도록 허용

  • #1691 실행 문서 업데이트

  • #1690 설치 문서 재작성

  • #bea1dd 잠재적인 LeftJoin 문제에 대한 추가 AliasTest

  • #1689 모델 유효성 검사 수정

  • #1687 필터에 저작권 블록 추가

  • #1686 필터 리팩토링

  • #1685 관리자 - 앱 스타터 생성 문제 수정

  • #1684 파일 핸들러의 세션 ID 정리 업데이트

  • #1683 migrate:refresh 버그 수정

  • #d2b377 새로운 바인딩 저장 방식에 맞게 Postgres replace 명령 수정

  • #4a1886 메서드 스푸핑 문서화

  • #2e698a URI 값뿐만 아니라 키도 urldecode 처리

  • #1679 memcached용 save_path 처리

  • #1678 라우트가 슬래시를 교체하지 않는 문제 수정

  • #1677 데이터베이스 엔진에 이스케이프 방지 기능 구현

  • #1675 누락된 테스트 그룹 지시어 추가

  • #1674 변경 로그 업데이트

  • #1673 다운로드 및 설치 문서 업데이트

  • #1672 Autoloader.php 업데이트

  • #1670 PHP 의존성을 7.2로 업데이트

  • #1671 문서 업데이트

  • #1669 Parser 및 Plugin 테스트 강화

  • #1665 Composer PSR4 네임스페이스가 이제 모듈 자동 검색의 일부로 포함됨

  • #6dab8f 필터가 대소문자를 구분하지 않고 매칭됨

  • #1663 whereIn 사용 시 발생하던 바인딩 문제 수정

  • #1660 마이그레이션 테스트 및 데이터베이스 조정

  • #1656 __get()에서 DBGroup 처리, 모델 외부에서 “database” 데이터 유효성 검사 허용

  • #1654 Toolbar - Logger::$logCache 항목 반환

  • #1649 travis 설정의 “allow_failures”에서 PHP 7.3 제거

  • #1648 “앱 관리” 문서 업데이트

  • #1645 트랜잭션 활성화 관련 혼란스러운 문서 수정

  • #1643 이메일 모듈 제거

  • #1642 CSP nonce 속성 값을 빈 따옴표로 처리

  • #81d371 자동 로드 및 마이그레이션 중 설정 파일에 대한 안전성 검사

  • #1641 추가 단위 테스트 조정

  • #1640 BaseBuilder의 getCompiledX 메서드 업데이트

  • #1637 스타터 README 수정

  • #1636 Files 모듈 리팩토링

  • #5f305a 사용자 가이드 - 앱 관리 섹션 오타 수정

  • #1635 단위 테스트 개선

  • #1633 csrf_field 및 form_hidden 사용

  • #1632 DBGroup은 ->setRules 대신 ->run에 전달되어야 함

  • #1631 UploadedFile 클래스에서 use 구문을 라이선스 주석 뒤로 이동

  • #1630 저작권을 2019년으로 업데이트

  • #1629 문서 및 주석에서 “application” 디렉터리를 “app”으로 변경

  • #3a4ade view()가 이제 앱 설정을 올바르게 다시 읽음

  • #7993a7 translateURIDashes가 올바르게 동작하도록 하는 마지막 수정

  • #9e435c TranslateURIDashes 수정

  • #1626 Paths::$viewDirectory 프로퍼티 정리

  • #1625 매칭 후 빈 값으로 설정되지 않는 문제 수정

  • #1623 nullable로 정의된 프로퍼티가 캐스팅되지 않던 문제 수정

  • #1622 __set에 nullable 지원 추가

  • #1617 countAllResults()가 소프트 삭제를 고려하도록 수정

  • #1616 View 설정 병합 순서 수정

  • #614216 honeypot 서비스를 앱 Services 파일에서 시스템 Services로 이동

  • #6b8b8b db forge 및 유틸리티가 그룹 이름 대신 연결 정보 배열을 받을 수 있도록 허용

  • #1613 문서의 오타 수정

  • #1538 img 수정(?) - html_helper