Skip to content

[Feature Request] Time#iso8601 improperly considered illegal, look into excluding #272

@cretz

Description

@cretz

Describe the solution you'd like

A user calling Time#iso8601 is getting a trace with:

/usr/local/bundle/ruby/3.3.0/gems/temporalio-0.4.0-aarch64-linux/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb:66:in `block in initialize'                                                                
/usr/local/lib/ruby/3.3.0/time.rb:82:in `zone_offset'
/usr/local/lib/ruby/3.3.0/time.rb:640:in `xmlschema'

This is because the second parameter at https://github.com/ruby/ruby/blob/5124f9ac7513eb590c37717337c430cb93caa151/lib/time.rb#L82 is asking for current time. Ug. We need to find some way to exclude this.

Right now we only accept a basic hash of illegal calls. We probably need a more advanced abstraction for illegal time skipping that allows a workflow-stateful stack to skip checking further down. Put it behind a very generic "check illegal" abstract class so others can have implementations.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions