{"record":{"id":"b96af6a47ef3cbf2","repo":"EugenMayer/docker-sync","slug":"sync-pref-can-only-be-src-or-dest-no-path-path","errorCode":null,"errorMessage":"sync_pref can only be: src or dest, no path - path is no longer needed it abstracted","messagePattern":"sync_pref can only be: src or dest, no path - path is no longer needed it abstracted","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"lib/docker-sync/sync_strategy/native_osx.rb","lineNumber":175,"sourceCode":"\n      def stop_container\n        `docker ps | grep #{get_container_name} && docker stop #{get_container_name} && docker wait #{get_container_name}`\n      end\n\n\n      # cares about conflict resolution\n      def sync_prefer\n        case @options.fetch('sync_prefer', 'default')\n          when 'default' then\n            '-prefer /host_sync' # thats our default, if nothing is set\n          when 'src' then\n            '-prefer /host_sync'\n          when 'dest' then\n            '-prefer /app_sync'\n          when 'newer' then\n            '-prefer newer'\n          else\n            raise 'sync_pref can only be: src or dest, no path - path is no longer needed it abstracted'\n        end\n      end\n\n      def expand_ignore_strings\n        expanded_ignore_strings = []\n        default_expanded_ignore_strings = []\n\n        exclude_type = 'Name'\n        unless @options['sync_excludes_type'].nil?\n          exclude_type = @options['sync_excludes_type']\n        end\n\n        # use the 'Name' exclude type for all default ignores\n        # to prevent conflicts with the sync_excludes_type settings\n        unless Environment.default_ignores.nil?\n          default_expanded_ignore_strings = Environment.default_ignores.map do |pattern|\n            \"-ignore='Name #{pattern}'\"\n          end","sourceCodeStart":157,"sourceCodeEnd":193,"githubUrl":"https://github.com/EugenMayer/docker-sync/blob/4eab6de164d44c724c739c17bd574efa9008aae1/lib/docker-sync/sync_strategy/native_osx.rb#L157-L193","documentation":"Error \"sync_pref can only be: src or dest, no path - path is no longer needed it abstracted\" thrown in EugenMayer/docker-sync.","triggerScenarios":"Thrown at lib/docker-sync/sync_strategy/native_osx.rb:175 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Change sync_prefer to one of the supported symbolic values: 'src', 'dest', or 'newer'","Remove any absolute path from sync_prefer; paths are abstracted internally to /host_sync and /app_sync"],"exampleFix":"sync_options:\n  sync_prefer: 'src'","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"4eab6de164d44c724c739c17bd574efa9008aae1","analyzedAt":"2026-08-23T10:20:11.101Z","schemaVersion":2},"datasetVersion":"2026-08-23T13:39:53.451Z"}