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

Isolates should provide access to WorkerContext #1963

Closed
DartBot opened this issue Mar 3, 2012 · 17 comments
Closed

Isolates should provide access to WorkerContext #1963

DartBot opened this issue Mar 3, 2012 · 17 comments
Labels
area-core-library SDK core library issues (core, async, ...); use area-vm or area-web for platform specific libraries. closed-obsolete Closed as the reported issue is no longer relevant library-html

Comments

@DartBot
Copy link

DartBot commented Mar 3, 2012

This issue was originally filed by jeffbailey@google.com


What steps will reproduce the problem?

Since Isolates are the only way to get to a WebWorker from within Dart, they need to provide the ability to get the WorkerContext. This way functions such as webkitRequestFileSystemSync can be retrieved (the Sync implementation is only available from within a WebWorker

What is the expected output? What do you see instead?

What version of the product are you using? On what operating system?

Current trunk on Goobuntu.

Please provide any additional information below.

@madsager
Copy link
Contributor

madsager commented Mar 7, 2012

Isolates are part of the Dart language and the fact that they are implemented on top of WebWorkers when compiling to JavaScript is an implementation detail. The worker context makes no sense on the standalone VM.

Triaging this to the dom library area so we can consider if and how to expose more of the web worker API.


Added Area-UI, Triaged labels.

@DartBot
Copy link
Author

DartBot commented Mar 7, 2012

This comment was originally written by jeffbailey@google.com


Fair enough. Perhaps should I change this to the specific problem then:

Dart does not provide access to the synchronous filesystem APIs. In a standard DOM environment, these are only available from a WebWorker. This problem affects both dart:dom and dart:html.

For dart:dom, one solution is to ask for a WorkerContext, which could look like a heavy isolate implemented in a WebWorker.

For dart:html, I suspect something slightly more subtle is required.

I think this is high priority as this functionality used to be possible with the declaration of a heavy isolate and using var to just set the WorkerContext over the Window, so this is a regression with the new Isolate functionality.

I think this should perhaps be split into 3 bugs. Your call, tell me how you'd like it.

@sigmundch
Copy link
Member

Added Isolates label.

@vsmenon
Copy link
Member

vsmenon commented Jul 12, 2012

Set owner to @vsmenon.
Added this to the M1 milestone.

@vsmenon
Copy link
Member

vsmenon commented Aug 20, 2012

We're not getting to background isolates until M2.


Removed this from the M1 milestone.
Added this to the Later milestone.
Removed Area-UI label.
Added Area-HTML label.

@sigmundch
Copy link
Member

Added Library-Isolates label.

@sigmundch
Copy link
Member

Removed Isolates label.

@dgrove
Copy link
Contributor

dgrove commented Jan 11, 2013

Added Library-Isolate label.

@dgrove
Copy link
Contributor

dgrove commented Jan 11, 2013

Removed Library-Isolates label.

@DartBot
Copy link
Author

DartBot commented May 28, 2013

This comment was originally written by @pjako


Any update on this? does dart still not have a worker story?

Worker are powerful and they will get more powerful in the future, for example having the canvas/webgl in an worker with shared resources and so on.

@vsmenon
Copy link
Member

vsmenon commented Aug 22, 2013

Removed the owner.

@kevmoo
Copy link
Member

kevmoo commented Apr 7, 2014

Removed Area-HTML label.
Added Area-Library label.

@lrhn
Copy link
Member

lrhn commented Jun 4, 2014

Removed Library-Isolate label.
Added Library-Html label.

@kasperl
Copy link

kasperl commented Jul 10, 2014

Removed this from the Later milestone.
Added Oldschool-Milestone-Later label.

@kasperl
Copy link

kasperl commented Aug 4, 2014

Removed Oldschool-Milestone-Later label.

@alan-knight
Copy link
Contributor

I believe this has been done. WorkerContext is renamed to WorkerGlobalScope and is available in current dart:html.


Added AssumedStale label.

@DartBot
Copy link
Author

DartBot commented Dec 17, 2014

This comment was originally written by @pjako


It sure is named WorkerGlobalContext now but you can't access it.

@DartBot DartBot added Type-Defect area-core-library SDK core library issues (core, async, ...); use area-vm or area-web for platform specific libraries. library-html closed-obsolete Closed as the reported issue is no longer relevant labels Dec 17, 2014
copybara-service bot pushed a commit that referenced this issue Feb 20, 2023
…ath, pool, source_maps, test, tools, webdev

Revisions updated by `dart tools/rev_sdk_deps.dart`.

args (https://github.com/dart-lang/args/compare/b08471e..9305d5a):
  9305d5a  2023-02-15  Naoto Kaneko  Update README.md (#236)

characters (https://github.com/dart-lang/characters/compare/29f3a3e..3281cc7):
  3281cc7  2023-02-16  Devon Carew  blast_repo fixes (#75)

dartdoc (https://github.com/dart-lang/dartdoc/compare/3931595..dba6f94):
  dba6f946  2023-02-16  Janice Collins  Preserve type aliases for records in output (#3340)
  96e61903  2023-02-16  Sam Rawlins  Remove unused additionalOptions parameter, other little refactorings (#3339)
  f64290e1  2023-02-13  Devon Carew  remove an unused css attribute (#3335)
  c055526a  2023-02-13  Devon Carew  fix an issue where we created a temporary directory when performing a dry run (#3334)
  1f6c8db5  2023-02-13  dependabot[bot]  Bump github/codeql-action from 2.2.1 to 2.2.4 (#3337)
  f1fa0efc  2023-02-13  dependabot[bot]  Bump actions/cache from 3.2.4 to 3.2.5 (#3338)

ffi (https://github.com/dart-lang/ffi/compare/69d7596..32f5eef):
  32f5eef  2023-02-20  Daco Harkes  Bump SDK constraint to 4.0.0 (#185)

http (https://github.com/dart-lang/http/compare/f4b365e..c13a3f8):
  c13a3f8  2023-02-17  Alex Li  ✨ Add Cronet embedded tool (#853)

markdown (https://github.com/dart-lang/markdown/compare/f51c24c..4befe66):
  4befe66  2023-02-16  Zhiguang Chen  Do not generate heading IDs for headings with no content in `HeaderWithIdSyntax` (#522)
  cae08af  2023-02-15  Kevin Moore  Prepare to release v7.0.1 (#520)
  bdbaf76  2023-02-15  Zhiguang Chen  Remove lookarounds from autolink extension patterns (#519)
  eb09fac  2023-02-14  Kevin Moore  Move to pkg:dart_flutter_team_lints (#518)
  51a6389  2023-02-15  Zhiguang Chen  Add line endings to HTML blocks (#512)
  a4cd7a0  2023-02-14  Kevin Moore  Label tests that only run on the VM: allows running tests with browser (#516)
  6788042  2023-02-14  Kevin Moore  CI: add publish and response workflows (#517)

mockito (https://github.com/dart-lang/mockito/compare/d2a8df1..ed5bd84):
  ed5bd84  2023-01-09  Ross Wang  Relax mixin criteria
  781752c  2023-02-13  Sam Rawlins  Change `void` to `dynamic` when overriding method arguments
  71e41b9  2023-02-10  Sam Rawlins  Add `ignore_for_file: use_of_void_result`
  d5a25f8  2023-02-08  Sam Rawlins  Fix violations of `unnecessary_parenthesis` lint

path (https://github.com/dart-lang/path/compare/a95f1e9..24b58a2):
  24b58a2  2023-02-20  Kevin Moore  Move to team lints, require Dart 2.19 (#138)
  8ec8ca0  2023-02-18  Kevin Moore  blast_repo fixes (#137)

pool (https://github.com/dart-lang/pool/compare/51f1131..694cfd8):
  694cfd8  2023-02-20  Kevin Moore  move to package:dart_flutter_team_lints, require Dart 2.19 (#65)
  40bf2af  2023-02-20  Kevin Moore  blast_repo fixes (#64)

source_maps (https://github.com/dart-lang/source_maps/compare/cf44db3..a112e98):
  a112e98  2023-02-16  Devon Carew  configure publishing automation (#74)

test (https://github.com/dart-lang/test/compare/b5e70db..e56c643):
  e56c6439  2023-02-17  Jacob MacDonald  Add exe compiler, supports running tests compiled to native executables (#1941)
  f80dfa00  2023-02-16  Nate Bosch  Add note about why we are replacing matcher (#1940)
  732ae1de  2023-02-15  Nate Bosch  Add `because` usage in examples (#1939)
  f6df9756  2023-02-15  Jacob MacDonald  Fix typo in readme (#1937)
  aca53419  2023-02-14  Nate Bosch  Add a caret constraint for matcher (#1927)
  f7f3a019  2023-02-14  Jacob MacDonald  use test_api/backend.dart instead of test_core/backend.dart (#1936)
  de40c1c0  2023-02-14  Jacob MacDonald  Add support for `--compiler` flag (#1903)
  1f42db8c  2023-02-13  Devon Carew  updates to package:checks docs (#1933)

tools (https://github.com/dart-lang/tools/compare/48a544b..a53933c):
  a53933c  2023-02-17  Elias Yishak  [package:dash_analytics] Tests for conforming to GA4 Measurement Protocol limitations (#9)
  c54430b  2023-02-17  Devon Carew  add some clarification to the top-level readme (#8)

webdev (https://github.com/dart-lang/webdev/compare/0bae2be..ae7eb80):
  ae7eb80  2023-02-17  Anna Gringauze  Add tests for object inspection (#1973)
  7d80a2c  2023-02-17  Elliott Brooks (she/her)  Ignore offset / count if an instance has no `length`  (#1972)
  cd66172  2023-02-17  Elliott Brooks (she/her)  [MV3 Debug Extension] User can reload app and continue to debug (#1968)
  8b7f9d3  2023-02-16  Anna Gringauze  Re-enable weak webdev tests (#1960)
  83d8e47  2023-02-16  Elliott Brooks (she/her)  [MV3 Debug Extension] Variables in panel.dart should be private (#1969)
  4e85e74  2023-02-16  Elliott Brooks (she/her)  [MV3 Debug Extension] The new debug extension can be run on Manifest V3 or Manifest V2 (#1966)
  3982f5f  2023-02-15  Elliott Brooks (she/her)  [MV3 Debug Extension] Clean up tests in preparation for supporting compiling to MV2  (#1964)
  3ad544e  2023-02-15  Elliott Brooks (she/her)  [MV3 Debug Extension] Remove isMV3Extension field from DevtoolsRequest (#1963)
  c77043e  2023-02-14  Elliott Brooks (she/her)  [MV3 Debug Extension] Fix isDevMode getter (#1962)
  a761125  2023-02-14  Elliott Brooks (she/her)  [MV3 Debug Extension] Print `console` messages on test failure (#1961)
  41e92be  2023-02-14  Anna Gringauze  Create test_common package (#1945)
  443f820  2023-02-14  Anna Gringauze  Re-enable skipped reload test (#1958)
  a7bc3fc  2023-02-14  Anna Gringauze  Make dart-uri-file-uri test use sound null safety (#1959)
  464a8eb  2023-02-14  Elliott Brooks (she/her)  [MV3 Debug Extension] Compile extension with Dart instead of shell script (#1954)
  7cf8fe2  2023-02-13  Anna Gringauze  Fix asset handler tests (#1956)
  c371ad7  2023-02-13  Anna Gringauze  Fix chrome_proxy_service tests broken after switch to null safety by default (#1957)
  d6ec127  2023-02-13  Anna Gringauze  Move test-only code from the SdkLayout (#1955)
  35fa34b  2023-02-13  Elliott Brooks (she/her)  [MV3 Debug Extension] Update Chrome APIs to be backwards compatible with MV2 (#1951)

Change-Id: I4250594d0fa775d07cb3a0f8594e634552de452b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/284240
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Devon Carew <devoncarew@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
copybara-service bot pushed a commit that referenced this issue Mar 7, 2023
…stack_trace, stream_channel, test, tools, watcher, webdev, yaml, yaml_edit

Revisions updated by `dart tools/rev_sdk_deps.dart`.

async (https://github.com/dart-lang/async/compare/8deaa40..f454380):
  f454380  2023-03-02  Natalie Weizenbaum  Add `StreamExtensions.listenAndBuffer()` (#235)

dartdoc (https://github.com/dart-lang/dartdoc/compare/77d5994..98fa859):
  98fa859c  2023-03-05  dependabot[bot]  Bump cli_util from 0.3.5 to 0.4.0 (#3360)

html (https://github.com/dart-lang/html/compare/0b8025c..08643e9):
  08643e9  2023-03-02  Devon Carew  prep for publishing 0.15.2 (#205)

http (https://github.com/dart-lang/http/compare/1500a71..805a147):
  805a147  2023-03-02  Kevin Moore  Fix some spelling (#884)
  5a2f036  2023-03-02  Kevin Moore  Move to pkg:dart_flutter_team_lints, require Dart 2.19 (#883)
  35b2cef  2023-03-02  Bahaa Fathi Yousef  Corrected the spelling of "Implements" in "/http/lib/src/io_client.dart" (#871)
  bb86cf3  2023-02-27  Brian Quinlan  Provide access to NSURLSession.sessionDescription (#881)

http_multi_server (https://github.com/dart-lang/http_multi_server/compare/2cd5355..7bd190c):
  7bd190c  2023-03-06  Kevin Moore  Require Dart 2.19, enable and fix new team lints (#51)

source_map_stack_trace (https://github.com/dart-lang/source_map_stack_trace/compare/a60ef54..45ea368):
  45ea368  2023-03-07  Kevin Moore  Require Dart 2.19, use pkg:dart_flutter_team_lints (#35)

stream_channel (https://github.com/dart-lang/stream_channel/compare/0850515..a20ccd4):
  a20ccd4  2023-02-28  Kevin Moore  move to pkg:dart_flutter_team_lints lints, fix code, bump min SDK (#87)

test (https://github.com/dart-lang/test/compare/1307cc5..92da93a):
  92da93a8  2023-03-06  Devon Carew  dogfood the new setup-dart action (#1964)
  e49818ec  2023-03-01  dependabot[bot]  Bump github/codeql-action from 2.2.1 to 2.2.5 (#1963)

tools (https://github.com/dart-lang/tools/compare/28b7be8..a1c3506):
  a1c3506  2023-03-07  Devon Carew  dogfood the new setup-dart action (#25)
  fb46723  2023-03-07  Elias Yishak  Update pubspec.yaml (#24)
  5a72344  2023-03-06  Elias Yishak  Add `DashEvent` for toggling telemetry collection + send event whenever toggled (#23)

watcher (https://github.com/dart-lang/watcher/compare/0ca6638..5968409):
  5968409  2023-03-07  Kevin Moore  blast_repo fixes (#139)
  e8f771a  2023-03-07  Kevin Moore  Require Dart 2.19, use new team lints (#138)

webdev (https://github.com/dart-lang/webdev/compare/deb801b..c007560):
  c007560  2023-03-06  Elliott Brooks (she/her)  [MV3 Debug Extension] Show warning when clicking on debug extension for non Dart app (#2015)
  1a010dc  2023-03-06  Devon Carew  dogfood the new setup-dart action (#2017)
  07743a3  2023-03-06  Anna Gringauze  Fix exception mapping from JS to dart (#2004)
  eb63b31  2023-03-03  Elliott Brooks (she/her)  Create a Dart Debug Extension issue template (#2014)
  85f35d4  2023-03-01  Devon Carew  update publishing automation integration (#2002)
  e748045  2023-02-28  Anna Gringauze  Prepare to release webdev 3.0.1 (#2000)
  5355050  2023-02-27  Elliott Brooks (she/her)  [MV3 Debug Extension] Ignore page reloads for detecting navigation away from app (#1994)
  4e08276  2023-02-27  Anna Gringauze  Prepare to release dwds 18.0.0 (#1993)
  fc54d68  2023-02-27  Anna Gringauze  Fix expression evaluation failures on empty scopes (#1998)
  496a2b4  2023-02-27  Anna Gringauze  Temporarily disable publish verification (#1996)

yaml (https://github.com/dart-lang/yaml/compare/a6d8781..1ad2f49):
  1ad2f49  2023-03-01  Kevin Moore  Require Dart 2.19, migrate to dart_flutter_team_lints, make associated fixes (#138)
  4d369fd  2023-03-01  Kevin Moore  benchmark: fix output.json (#137)

yaml_edit (https://github.com/dart-lang/yaml_edit/compare/998eea2..0668eb5):
  0668eb5  2023-03-02  Jonas Finnemann Jensen  Wrap recursively, prepare release (#28)
  a4ff857  2023-03-01  Mohamed Ishad  Update CHANGELOG.md (#37)
  2fdfbdb  2023-02-28  Mohamed Ishad  Fix for issue #23 (#34)
  494ad7c  2023-02-25  MikiPaul  fixed typo (#36)

Change-Id: I101c94575c20fca55c7440e84668413207073a32
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/287162
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-core-library SDK core library issues (core, async, ...); use area-vm or area-web for platform specific libraries. closed-obsolete Closed as the reported issue is no longer relevant library-html
Projects
None yet
Development

No branches or pull requests

9 participants