Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce Runtime.Context and methods to manipulate it #6129

Closed
JaroslavTulach opened this issue Mar 29, 2023 · 3 comments · Fixed by #6171
Closed

Introduce Runtime.Context and methods to manipulate it #6129

JaroslavTulach opened this issue Mar 29, 2023 · 3 comments · Fixed by #6171
Assignees
Labels
-compiler -libs Libraries: New libraries to be implemented

Comments

@JaroslavTulach
Copy link
Member

According to the PR-55 specification there shall be:

type Runtime.Context
    Input
    Output

  if_enabled : Function -> Text -> Any
  if_enabled ~action environment="design" = ....

  is_enabled : Text -> Boolean
  is_enabled environment="design" = ...

and then methods to enabled/disable a context:

Runtime.with_enabled_context : Runtime.Context -> Function -> Text -> Any
Runtime.with_enabled_context context ~action environment="design" = ...

Runtime.with_disabled_context : Runtime.Context -> Function -> Text -> Any
Runtime.with_disabled_context context ~action environment="design" = ...

Together with this change disable all the checks done as a result of in Input and in Output type signatures.

@enso-bot
Copy link

enso-bot bot commented Apr 3, 2023

Hubert Plociniczak reports a new STANDUP for the provided date (2023-03-31):

Progress: Adding tests, discovering some nuances in the design for further consideration. Preparing the PR for the review. It should be finished by 2023-04-03.

Next Day: Next day I will be working on the #6129 task. Gather feedback on the PR, add CLI support

@jdunkerley jdunkerley moved this from 🔧 Implementation to 👁️ Code review in Issues Board Apr 4, 2023
@enso-bot
Copy link

enso-bot bot commented Apr 4, 2023

Hubert Plociniczak reports a new STANDUP for the provided date (2023-03-30):

Progress: Following the design and introducing Context and Execution Environment It should be finished by 2023-04-03.

Next Day: Next day I will be working on the #6129 task. Continue implementing the changes according to the design.

@enso-bot
Copy link

enso-bot bot commented Apr 4, 2023

Hubert Plociniczak reports a new STANDUP for yesterday (2023-04-03):

Progress: Gathering feedback and addressing it. Started investigating partial solution to #6027 as started by James but this one won't be easy, I believe. Some special handling of warnings that changes the default unwrapping/wrapping of self will likely be needed. It should be finished by 2023-04-03.

Next Day: Next day I will be working on the #6027 task. Gather more feedback on execution context and try to figure out a solution for #6027.

@mergify mergify bot closed this as completed in #6171 Apr 6, 2023
mergify bot pushed a commit that referenced this issue Apr 6, 2023
As per design, IOContexts controlled via type signatures are going away. They are replaced by explicit `Context.if_enabled` runtime checks that will be added to particular method implementations.

`production`/`development` `IOPermissions` are replaced with `live` and `design` execution enviornment. Currently, the `live` env has a hardcoded list of allowed contexts i.e. `Input` and `Output`.

# Important Notes
As per design PR-55. Closes #6129. Closes #6131.
@github-project-automation github-project-automation bot moved this from 👁️ Code review to 🟢 Accepted in Issues Board Apr 6, 2023
MichaelMauderer pushed a commit that referenced this issue Apr 25, 2023
As per design, IOContexts controlled via type signatures are going away. They are replaced by explicit `Context.if_enabled` runtime checks that will be added to particular method implementations.

`production`/`development` `IOPermissions` are replaced with `live` and `design` execution enviornment. Currently, the `live` env has a hardcoded list of allowed contexts i.e. `Input` and `Output`.

# Important Notes
As per design PR-55. Closes #6129. Closes #6131.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-compiler -libs Libraries: New libraries to be implemented
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants