Skip to content

"publish with descendants" action not publishing descendants #13739

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

Closed
shearer3000 opened this issue Jan 25, 2023 · 14 comments
Closed

"publish with descendants" action not publishing descendants #13739

shearer3000 opened this issue Jan 25, 2023 · 14 comments

Comments

@shearer3000
Copy link

shearer3000 commented Jan 25, 2023

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

experienced on multiple versions of 10 e,g. 10.3.2

Bug summary

When performing the “publish with descendants” action from the context menu on the ‘save and publish' button, the history tab on any child/descendant content nodes doesn’t show a corresponding ‘content published’ event in the history (info tab). i.e. it doesn’t actually publish the descendant contents.

image

Specifics

No response

Steps to reproduce

  1. Go to a content node with children and/or descendants
  2. Perform “publish with descendants” action via the ‘save and publish’ button menu
  3. Go to any of the children/descendant contents, and look at history tab audit

Expected result / actual result

expected result: history tab shows a ‘content published’ event with a datestamp reflectiong when the action from reproduction steps was performed
actual result: no event listed on history tab (children/descendant contents not published as instructed)


This item has been added to our backlog AB#47450

@github-actions
Copy link

Hi there @shearer3000!

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 🤖 🙂

@Zeegaan
Copy link
Member

Zeegaan commented Jan 26, 2023

Hey @shearer3000, I cannot reproduce this, they published fine for me 😅
Altough the tree needs a manual update to display they all have been published, and it shows on the history 🤔
I have taken a gif of me doing so, am I doing something wrong here? 🤔
PublishWithDescendants

@Zeegaan Zeegaan added the state/needs-more-info We don't have enough information to understand and/or give a good reply label Jan 26, 2023
@lesley-w
Copy link

lesley-w commented Oct 3, 2023

I have the same issue on v10.6.1
It's a site that we have just upgraded from v7.3.5

@Zeegaan
Copy link
Member

Zeegaan commented Oct 4, 2023

@lesley-w Could you come up with a few steps from a clean install (Just with no custom code)
that can reproduce this? We sadly cannot help as long as we cannot reproduce this 😞

@lesley-w
Copy link

lesley-w commented Oct 4, 2023

@Zeegaan
I think the problem is in ContentServuce.SaveAndPublishBranch_ShouldPublish

If a page is already published and hasn't been edited, then it won't publish it again:

    // if published, republish
    if (published)
    {
        if (cultures == null)
        {
            cultures = new HashSet<string>(); // empty means 'already published'
        }
        if (edited)
        {
            cultures.Add(c); // <culture> means 'republish this culture'
        }
        return cultures;
    }

In our situation, we are wanting to republish all the descendants, even though they haven't been edited, so that the migrated data is visible on the upgraded website.

Should PublishWithDescendants force the publication regardless of the edited status, but respecting the choice of whether to include unpublished items?

@Rockerby
Copy link
Contributor

I'm seeing the same thing here. Screenshare below (ignore the mouse cursor - it's gone very weird!) SS is using 12.2.0 but also tested on 10.6.1 which did the same.

Summary of actions. All actions create a published audit record on the parent node.

  • Publish with descendants on parent doesn't create an audit on child
  • Publish with descendants (tick include unpub) doesn't create an audit on child
  • Publish with descendants on parent, when child has changes, doesn't create an audit (it doesn't publish the latest version, which I agree, but should still make a published record)
  • Publish with descendants (tick include unpub) publishes saved changes and creates an audit log (correct)

chrome_GJUk3w1acy

@Zeegaan
Copy link
Member

Zeegaan commented Oct 18, 2023

Thanks for your input here, I think I am seeing the issue now!
I will bring this up with the team to discuss this behavior 😊

@Zeegaan Zeegaan added state/needs-investigation This requires input from HQ or community to proceed and removed state/needs-more-info We don't have enough information to understand and/or give a good reply labels Oct 18, 2023
@lesley-w
Copy link

@Zeegaan Even just having an option to force the republication of all published descendants regardless of edit status would work.

@bkclerke
Copy link
Contributor

I second what @lesley-w said too. We are running into an issue as well where we need the same "Save & Publish" functionality for all the child/descendants in order to properly sync content with usync and this would be massively helpful. If it was an option similar to the toggle for "include all unpublished items", that could work too. It doesn't have to be the default action (which I get for performance reasons).

@Zeegaan
Copy link
Member

Zeegaan commented Oct 30, 2023

Hello everyone! Sorry for coming back late, there was some potato holiday at play 🥔

I've talked with the team, but to our understanding, we would not like to refactor this with for example an option.

It seems you could try this manually in code instead. Or if its using uSync, they could make some code that would do this, could you try this out? 👍

@HenrietteWalker
Copy link

Hi! Our users are experiencing significant issues because PublishWithDescendants does not publish descendant items that are unedited. Could you reconsider providing this functionality for us, perhaps as an optional feature as suggested by @lesley-w? What is the reason that unedited items are not re-published? :) Thanks in advance!

@bythewiseman
Copy link
Contributor

We have faced this today due to someone removing a property and adding it back it. It meant the value became null in Examine and the search no longer worked until we manually published all nodes again.

[ ] Force Publish even if not changed

would be an excellent addition.

@AndyButland
Copy link
Contributor

We'll include this additional option and behaviour on the dialog via the updates in #18249 and #18270. This will be for 13.8 and 15.3.

Publish descendants dialog

@AndyButland
Copy link
Contributor

Following discussions and release candidate feedback it's been decided that the publish with descendants dialog should not be updated as was proposed in the original linked PRs. It's considered that these operations aren't something we should be putting in front of editors, as it adds complexity to the UI that 99% of the time they shouldn't need to use or be aware of.

We are keeping the service updates though, so these can be used for one-off migration tasks, or even via a custom dashboard in the settings section should more than the built-in Examine rebuild function be necessary.

These PRs, when merged with 13.8 and 15.3 will detail how the services can be used for these operations:
umbraco/UmbracoDocs#6876
umbraco/UmbracoDocs#6932

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

No branches or pull requests

9 participants