{"record":{"id":"67415f67870b03b3","repo":"spicetify/cli","slug":"detected-s-spotify-build-spicetify-works-only-on","errorCode":null,"errorMessage":"detected %s Spotify build! spicetify works only on Release builds. Please install latest Release version of Spotify","messagePattern":"detected (.+?) Spotify build! spicetify works only on Release builds\\. Please install latest Release version of Spotify","errorType":"error_code","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/preprocess/preprocess.go","lineNumber":1089,"sourceCode":"}\n\nfunc validateReleaseBuild(spotifyBinaryPath string) error {\n\tfileContent, err := os.ReadFile(spotifyBinaryPath)\n\tif err != nil {\n\t\treturn fmt.Errorf(\"could not read %s: %w\", filepath.Base(spotifyBinaryPath), err)\n\t}\n\n\tbuildRegex := regexp.MustCompile(`(Master|Release|PR|Local) Build.+(?:cef_)?(\\d+\\.\\d+\\.\\d+\\+g[0-9a-f]+\\+chromium-\\d+\\.\\d+\\.\\d+\\.\\d+)`)\n\tmatches := buildRegex.FindSubmatch(fileContent)\n\n\tif len(matches) == 0 {\n\t\tutils.PrintWarning(fmt.Sprintf(\"Could not detect Spotify build type in %s, skipping validation\", filepath.Base(spotifyBinaryPath)))\n\t\treturn nil\n\t}\n\n\tbuildType := string(matches[1])\n\tif buildType != \"Release\" {\n\t\treturn fmt.Errorf(\"detected %s Spotify build! spicetify works only on Release builds. Please install latest Release version of Spotify\", buildType)\n\t}\n\n\tutils.PrintSuccess(fmt.Sprintf(\"Spotify's build type is %s. Continuing...\", string(matches[1])))\n\treturn nil\n}\n\ntype githubRelease = utils.GithubRelease\n\nfunc splitVersion(version string) ([3]int, error) {\n\tvstring := version\n\tif vstring[0:1] == \"v\" {\n\t\tvstring = version[1:]\n\t}\n\tvSplit := strings.Split(vstring, \".\")\n\tvar vInts [3]int\n\tif len(vSplit) != 3 {\n\t\treturn [3]int{}, errors.New(\"invalid version string\")\n\t}","sourceCodeStart":1071,"sourceCodeEnd":1107,"githubUrl":"https://github.com/spicetify/cli/blob/1f13f736163165234eef4fb792a03f9b5b732aa4/src/preprocess/preprocess.go#L1071-L1107","documentation":"validateReleaseBuild regex-matches the Spotify binary for a build-type marker (Master|Release|PR|Local). If the build type is detected but is not \"Release\", this error is returned because spicetify only supports Release builds. The detected type is interpolated into the message.","triggerScenarios":"validateReleaseBuild finds a build-type match (e.g. \"Master Build ...\" or \"Local Build ...\") where matches[1] != \"Release\" during preprocessing (backup/apply).","commonSituations":"User installed a Spotify development/nightly or Master-branch build; internal/local Spotify builds from source; downgraded or experimental client channels; auto-update switched the client to a non-release track.","solutions":["Uninstall the current Spotify client and install the latest official Release version.","Disable Spotify auto-updates to a non-release channel, or pin the release client.","Re-run `spicetify backup apply` after installing the Release build.","Check spicetify's supported Spotify versions if your Release build is too new and still unsupported."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"// Caller-side: verify installed client channel before applying\nout, _ := exec.Command(\"spotify\", \"--version\").Output()\nif strings.Contains(string(out), \"Master\") || strings.Contains(string(out), \"Local\") {\n    return fmt.Errorf(\"non-Release Spotify installed; reinstall official release\")\n}","typeGuard":null,"tryCatchPattern":"if err := spicetify.Apply(); err != nil {\n    if strings.Contains(err.Error(), \"works only on Release builds\") {\n        // prompt: reinstall official Release Spotify\n    }\n    return err\n}","preventionTips":["Install only official Release-channel Spotify clients.","Disable experimental/beta client auto-update tracks.","Check spicetify compatibility notes before upgrading Spotify."],"tags":["spotify","version-compatibility","preprocess"],"backgroundTag":"unsupported-spotify-build","analyzedSha":"1f13f736163165234eef4fb792a03f9b5b732aa4","analyzedAt":"2026-08-31T18:57:59.754Z","schemaVersion":2},"datasetVersion":"2026-08-31T22:30:34.772Z"}