UPGRADE_TO_2_2 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. This document details all the possible changes that you should investigate when
  2. updating your project from Doctrine Common 2.1 to 2.2:
  3. ## Annotation Changes
  4. - AnnotationReader::setIgnoreNotImportedAnnotations has been removed, you need to
  5. add ignore annotation names which are supposed to be ignored via
  6. AnnotationReader::addGlobalIgnoredName
  7. - AnnotationReader::setAutoloadAnnotations was deprecated by the AnnotationRegistry
  8. in 2.1 and has been removed in 2.2
  9. - AnnotationReader::setEnableParsePhpImports was added to ease transition to the new
  10. annotation mechanism in 2.1 and is removed in 2.2
  11. - AnnotationReader::isParsePhpImportsEnabled is removed (see above)
  12. - AnnotationReader::setDefaultAnnotationNamespace was deprecated in favor of explicit
  13. configuration in 2.1 and will be removed in 2.2 (for isolated projects where you
  14. have full-control over _all_ available annotations, we offer a dedicated reader
  15. class ``SimpleAnnotationReader``)
  16. - AnnotationReader::setAnnotationCreationFunction was deprecated in 2.1 and will be
  17. removed in 2.2. We only offer two creation mechanisms which cannot be changed
  18. anymore to allow the same reader instance to work with all annotations regardless
  19. of which library they are coming from.
  20. - AnnotationReader::setAnnotationNamespaceAlias was deprecated in 2.1 and will be
  21. removed in 2.2 (see setDefaultAnnotationNamespace)
  22. - If you use a class as annotation which has not the @Annotation marker in it's
  23. class block, we will now throw an exception instead of silently ignoring it. You
  24. can however still achieve the previous behavior using the @IgnoreAnnotation, or
  25. AnnotationReader::addGlobalIgnoredName (the exception message will contain detailed
  26. instructions when you run into this problem).
  27. ## Cache Changes
  28. - Renamed old AbstractCache to CacheProvider
  29. - Dropped the support to the following functions of all cache providers:
  30. - CacheProvider::deleteByWildcard
  31. - CacheProvider::deleteByRegEx
  32. - CacheProvider::deleteByPrefix
  33. - CacheProvider::deleteBySuffix
  34. - CacheProvider::deleteAll will not remove ALL entries, it will only mark them as invalid
  35. - CacheProvider::flushAll will remove ALL entries, namespaced or not
  36. - Added support to MemcachedCache
  37. - Added support to WincacheCache
  38. ## ClassLoader Changes
  39. - ClassLoader::fileExistsInIncludePath() no longer exists. Use the native stream_resolve_include_path() PHP function