ReaCoMa / ReaCoMa-2.0

ReaCoMa 2.0
GNU General Public License v3.0
37 stars 2 forks source link

novelty slice doesn't provide CLI errors #12

Closed tremblap closed 2 years ago

tremblap commented 2 years ago

When I run the CLI i get an error (bug report on flucoma in progress) but I didn't get anything from ReaCoMa - I wonder if there is a way to get errors back to the user instead of a silence with no results...

jamesb93 commented 2 years ago

If the CLI has an error it does pass it back to REAPER:

utils.cmdline = function(invocation)
    -- Calls the <command> at the system's shell
    local retval = reaper.ExecProcess(invocation, 0)
    if not retval then
        utils.DEBUG("There was an error executing the command: "..command)
        utils.DEBUG("See the return value and error below:\n")
        utils.DEBUG(tostring(retval))
        utils.assert(false)
    end
end

If not retval it returns it to utils.DEBUG. AFAIK, when the CLI is all good, it returns a 0 which in Lua should evaluate to true in that instance. However, I think that it might "silently fail" if the return code is a number but is something like -2, -4, -5, -6 (which are valid return codes from the CLI).

So I should probably add a way of evaluating different return codes.

tremblap commented 2 years ago

I get this error in the terminal: 'Values wrong type for option -filtersize' but I don't get anything in Reaper - no crash no slice nothing - but this is in preview, let me try to actually action the settings

jamesb93 commented 2 years ago

For my own memory something like this would be enough:

local error_map = {
    [-2] = 'Expected option',
    [-4] = 'More than one use of option',
    [-5] = 'Missing values for option,
    [-6] = 'Values wrong type for option'
}
jamesb93 commented 2 years ago

I get this error in the terminal: 'Values wrong type for option -filtersize' but I don't get anything in Reaper - no crash no slice nothing - but this is in preview, let me try to actually action the settings

I'm confused. If you have no return from REAPER how do you know what it is passing to the terminal?

tremblap commented 2 years ago

I ran the terminal call myself outside of reaper. strangely now it behaves, although I don't get the same results I get with the same settings in pd. I'll figure out the cli first and will close or clarify this issue.

jamesb93 commented 2 years ago

I ran the terminal call myself outside of reaper. strangely now it behaves, although I don't get the same results I get with the same settings in pd. I'll figure out the cli first and will close or clarify this issue.

Sounds like you got the terminal call wrong then. You probably forgot to pass the same value twice -filtersize 31 31 to set the maximum for example.

jamesb93 commented 2 years ago

Just testing now, everything with novelty slice works for me. If you can make a reproducible problem, like a discrepancy between parameters and their results let me know.

tremblap commented 2 years ago

sorry for that - in the end it is the new set of params with maxima as list that confused me everywhere