Repository: kedro-org/kedro
File: kedro/io/data_catalog.py (Python)

Code before:
            load_versions: A mapping between dataset names and versions
                to load. Has no effect on datasets without enabled versioning.
            save_version: Version string to be used for ``save`` operations
                by all datasets with enabled versioning. It must: a) be a
                case-insensitive string that conforms with operating system
                filename limitations, b) always return the latest version when
                sorted in lexicographical order.
            default_pattern: A dictionary of the default catch-all pattern that overrides the default
                pattern provided through the runners.
            config_resolver: An instance of CatalogConfigResolver to resolve dataset patterns and configurations.


        Example:
        ::

            >>> from kedro_datasets.pandas import CSVDataset
            >>>
            >>> cars = CSVDataset(filepath="cars.csv",
            >>>                   load_args=None,
            >>>                   save_args={"index": False})
            >>> catalog = DataCatalog(datasets={'cars': cars})
        """
        warnings.warn(
            "`DataCatalog` has been deprecated and will be replaced by an improved alternative, `KedroDataCatalog`, in Kedro 1.0.0."
            "After this change, the `DataCatalog` name will persist, but its functionality will align with `KedroDataCatalog`. "
            "For more details, refer to the documentation: https://docs.kedro.org/en/stable/data/index.html#kedrodatacatalog-experimental-feature",
            KedroDeprecationWarning,
        )
        self._config_resolver = config_resolver or CatalogConfigResolver()
        # Kept to avoid breaking changes
        if not config_resolver:
            self._config_resolver._dataset_patterns = dataset_patterns or {}
            self._config_resolver._default_pattern = default_pattern or {}

        self._load_versions, self._save_version = _validate_versions(
            datasets, load_versions or {}, save_version
        )

        self._datasets: dict[str, AbstractDataset] = {}
        self.datasets: _FrozenDatasets | None = None

        self.add_all(datasets or {})

        self._use_rich_markup = _has_rich_handler()

        if feed_dict:
            self.add_feed_dict(feed_dict)

    def __repr__(self) -> str:
        return self.datasets.__repr__()


Review comment (suggestion):
```suggestion
            "`DataCatalog` has been deprecated and will be replaced by `KedroDataCatalog` in Kedro 1.0.0."
            "After this change, the `DataCatalog` name will persist, but its functionality will align with `KedroDataCatalog`. "
            "For more details, refer to the documentation: https://docs.kedro.org/en/stable/data/index.html#kedrodatacatalog-experimental-feature",
```

While I agree it's an improvement it's up to the user to decide if it is 😉 this way the message is shorter as well.

Code after:
            load_versions: A mapping between dataset names and versions
                to load. Has no effect on datasets without enabled versioning.
            save_version: Version string to be used for ``save`` operations
                by all datasets with enabled versioning. It must: a) be a
                case-insensitive string that conforms with operating system
                filename limitations, b) always return the latest version when
                sorted in lexicographical order.
            default_pattern: A dictionary of the default catch-all pattern that overrides the default
                pattern provided through the runners.
            config_resolver: An instance of CatalogConfigResolver to resolve dataset patterns and configurations.


        Example:
        ::

            >>> from kedro_datasets.pandas import CSVDataset
            >>>
            >>> cars = CSVDataset(filepath="cars.csv",
            >>>                   load_args=None,
            >>>                   save_args={"index": False})
            >>> catalog = DataCatalog(datasets={'cars': cars})
        """
        warnings.warn(
            "`DataCatalog` has been deprecated and will be replaced by `KedroDataCatalog`, in Kedro 1.0.0."
            "Currently some `KedroDataCatalog` APIs have been retained for compatibility with `DataCatalog`, including "
            "the `datasets` property and the `get_datasets`, `_get_datasets`, `add`,` list`, `add_feed_dict`, "
            "and `shallow_copy` methods. These will be removed or replaced with updated alternatives in Kedro 1.0.0. "
            "For more details, refer to the documentation: "
            "https://docs.kedro.org/en/stable/data/index.html#kedrodatacatalog-experimental-feature",
            KedroDeprecationWarning,
        )
        self._config_resolver = config_resolver or CatalogConfigResolver()
        # Kept to avoid breaking changes
        if not config_resolver:
            self._config_resolver._dataset_patterns = dataset_patterns or {}
            self._config_resolver._default_pattern = default_pattern or {}

        self._load_versions, self._save_version = _validate_versions(
            datasets, load_versions or {}, save_version
        )

        self._datasets: dict[str, AbstractDataset] = {}
        self.datasets: _FrozenDatasets | None = None

        self.add_all(datasets or {})

        self._use_rich_markup = _has_rich_handler()

        if feed_dict:
            self.add_feed_dict(feed_dict)