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

fix(content-distribution): always distribute on API request #224

Merged
merged 2 commits into from
Feb 28, 2025

Conversation

miguelpeixe
Copy link
Member

The API endpoint used to set the distribution configuration and distribute a post currently uses the distribute_post() method. This method checks the payload hash to prevent an unnecessary update. This is not needed when using the API endpoint and risks not distributing a post in case a partial distribution reaches the server first. In this scenario, the partial distribution will:

  1. Set the payload hash
  2. Fail to reach the destination, because the full distribution didn't happen yet
  3. Prevent distribute_post() to run until an update changes the hash

This PR replaces the method in the endpoint callback for a direct dispatch call.

Testing

  1. Publish a new post and distribute to a node
  2. Confirm the post is created in the destination
  3. Make changes and save
  4. Confirm the changes also reach the destination

@miguelpeixe miguelpeixe self-assigned this Feb 27, 2025
@miguelpeixe miguelpeixe requested a review from a team as a code owner February 27, 2025 20:07
@miguelpeixe miguelpeixe requested a review from naxoc February 27, 2025 20:08
Copy link
Member

@naxoc naxoc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had to change the params for update_post_meta for it to work, but with that it does.

@miguelpeixe miguelpeixe requested a review from naxoc February 28, 2025 13:42
Copy link
Member

@naxoc naxoc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works and looks good 👍

@miguelpeixe miguelpeixe merged commit ea53b11 into trunk Feb 28, 2025
4 checks passed
@miguelpeixe miguelpeixe deleted the fix/content-distribution-always-distribute-on-api branch February 28, 2025 14:05
Copy link

Hey @miguelpeixe, good job getting this PR merged! 🎉

Now, the needs-changelog label has been added to it.

Please check if this PR needs to be included in the "Upcoming Changes" and "Release Notes" doc. If it doesn't, simply remove the label.

If it does, please add an entry to our shared document, with screenshots and testing instructions if applicable, then remove the label.

Thank you! ❤️

matticbot pushed a commit that referenced this pull request Feb 28, 2025
# [2.7.0-alpha.5](v2.7.0-alpha.4...v2.7.0-alpha.5) (2025-02-28)

### Bug Fixes

* **content-distribution:** always distribute on API request ([#224](#224)) ([ea53b11](ea53b11))
@matticbot
Copy link
Contributor

🎉 This PR is included in version 2.7.0-alpha.5 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

matticbot pushed a commit that referenced this pull request Mar 4, 2025
# [2.7.0](v2.6.1...v2.7.0) (2025-03-04)

### Bug Fixes

* build on release ([#219](#219)) ([396cb61](396cb61))
* **content-distribution:** always distribute on API request ([#224](#224)) ([ea53b11](ea53b11))
* **content-distribution:** change link to edit origin post ([#215](#215)) ([ed70561](ed70561))
* **content-distribution:** ignore unchanged values when shortcircuiting meta ([#222](#222)) ([ed1182a](ed1182a))
* **content-distribution:** link to post on incoming ([#211](#211)) ([638fa8a](638fa8a))
* **content-distribution:** sync non-publish posts ([#213](#213)) ([ba3cd6a](ba3cd6a))
* **content-distribution:** update icon to broadcast ([#214](#214)) ([df0e740](df0e740))

### Features

* **content-distribution:** default distribution status ([#216](#216)) ([df19856](df19856))
@matticbot
Copy link
Contributor

🎉 This PR is included in version 2.7.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

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

Successfully merging this pull request may close these issues.

3 participants