SliceMachine shows changes on custom types but when pushed always reports changes

I have a new project I'm working on, preparing for release by the new year. This was cloned from a previous project (using an old version of slicemachine, pre-1.0) and I upgraded slicemachine, ran through all of the instructions to upgrade to the latest slicemachine, etc. The site itself works fine.

However, I went into SliceMachine to modify one of my slice templates and noticed after I logged in that I have 2 changes pending on two custom types that I never touched. I went ahead and "Push Changes" just to see what it would do, and it says "All slices and types have been pushed" in green, but they still say modified and that they are pending changes. There aren't any errors in the browser console or my terminal that indicate there were a problem.

I was previously on slice machine 1.21.1 and upgraded to 1.21.2 to see if that would resolve it but it does not. Is there any way to determine what changes it's finding and how to resolve this?

Hey @cory.kratz !

Thanks for your post. Can you please share with us screen captures of what you are seeing on the Changes Page before and after pushing?
Also, I'm wondering, the repository was an empty new one after you cloned the code repository? Does your local project refers to the new repository or the old one (check your slicemachine.config.json file)

Thanks for these infos if you can provide them.

Before:

After:

Even if I push other changes with these, these two always remain.

The repository was an empty respository (New blank next.js project) and I copied everything from my previous project to this new project, upgraded slicemachine, and let slicemachine upgrade the configuration file, and I updated the apiEndpoint manually to the new apiEndpoint for the second site:

image

Here's an example where I changed a slice:

Before:

After:

Hi @cory.kratz,

This can happen if a page type or custom type JSON model contains shared slices that do not exist.

That may not be the only cause, but we know it is one of them.

Although this case isn't currently handled automatically, you can manually fix your model:

  1. Open the JSON file of the stuck page or custom type. It should be located in your project's root /customtypes directory.

    For example, a custom type with the ID author will be located at /customtypes/author/index.json.

  2. Remove any shared slices that do not exist in your project. Shared slices look like the following:

    "slices": {
      "type": "Slices",
      "fieldset": "Slice Zone",
      "config": {
        "choices": {
          "hero": {
            "type": "SharedSlice"
          },
          "quote": {
            "type": "SharedSlice"
          },
        }
      }
    }
    

    In this example, you would need to check if the hero and quote slices exist in your project. If a slice does not exist, remove its property from choices.

Hopefully this helps. We are tracking this issue internally so we can provide a proper automatic fix.

1 Like