Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DataTypeService methods obsolete with no alternatives #17202

Closed
matthewcare opened this issue Oct 7, 2024 · 3 comments · Fixed by #17208
Closed

DataTypeService methods obsolete with no alternatives #17202

matthewcare opened this issue Oct 7, 2024 · 3 comments · Fixed by #17208
Labels

Comments

@matthewcare
Copy link
Contributor

Which Umbraco version are you using? (Please write the exact version, example: 10.1.0)

15.0.0-rc1

Bug summary

There are a number of DataTypeService methods which are marked as obsolete, some stating removal in v15 and others v16.
There are, however, no alternatives for some marked obsolete, resulting in annoying build warnings.

Specifics

My use case is that when creating new data types, I automatically categorise the data types into folders (containers) based on their alias.
e.g,

private static string GetRelevantFolderName(IDataType dataType)
{
    return dataType.EditorAlias switch
    {
        "Umbraco.ContentPicker" => "Pickers",
        "Umbraco.MemberPicker" => "Pickers",
        "Umbraco.MemberGroupPicker" => "Pickers",
        "Umbraco.MultiNodeTreePicker" => "Pickers",
        "Umbraco.UserPicker" => "Pickers",

        "Umbraco.MultipleTextstring" => "Text",
        "Umbraco.TinyMCE" => "Text",
        "Umbraco.TextArea" => "Text",
        "Umbraco.TextBox" => "Text",

        "Umbraco.BlockGrid" => "Block Lists",
        "Umbraco.BlockList" => "Block Lists",

        "Umbraco.MediaPicker3" => "Images",

        _ => "Project"
    };
}

I am then using
dataTypeService.GetContainers(folderName, 1)
to check if the folder exists, creating it if it doesn't, and using the ID to categorise the datatype.

There is no method which allows getting a container by its name or level, or any method of getting all or any container without already knowing its key in the proposed replacement, and using the DataTypeRepository directly feels incorrect

Steps to reproduce

Look at the methods marked obsolete, and find an alternative in the service you are being told to replace with.

Expected result / actual result

All methods being marked for removal need to have an alternative in the service described as the replacement.

Copy link

github-actions bot commented Oct 7, 2024

Hi there @matthewcare!

Firstly, a big thank you for raising this issue. Every piece of feedback we receive helps us to make Umbraco better.

We really appreciate your patience while we wait for our team to have a look at this but we wanted to let you know that we see this and share with you the plan for what comes next.

  • We'll assess whether this issue relates to something that has already been fixed in a later version of the release that it has been raised for.
  • If it's a bug, is it related to a release that we are actively supporting or is it related to a release that's in the end-of-life or security-only phase?
  • We'll replicate the issue to ensure that the problem is as described.
  • We'll decide whether the behavior is an issue or if the behavior is intended.

We wish we could work with everyone directly and assess your issue immediately but we're in the fortunate position of having lots of contributions to work with and only a few humans who are able to do it. We are making progress though and in the meantime, we will keep you in the loop and let you know when we have any questions.

Thanks, from your friendly Umbraco GitHub bot 🤖 🙂

@bergmania
Copy link
Member

Thanks for letting us know. I have introduced some alternatives in #17208

@nikolajlauridsen
Copy link
Contributor

Fixed in #17208

Thank you for reporting 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants