Comments (4)
I looked into the failures.
Failure type 1:
type 'List' is not a subtype of type 'Uint8List' of 'input'
ReplayRandomAccessFile
currently uses const Passthrough<Uint8List>()
for the #readSync
converter. The input is a List<int>
that isn't a Uint8List
. I don't yet understand why.
Failure type 2:
No matching invocation found: readIntoSync(Instance(length:1024) of '_GrowableList', 0, null)
This happens because on the recording side, we write the event to the manifest after invoking the method, but the method mutates the supplied List
argument, so we write the mutated argument, not the original one. The replay side then fails to find the corresponding entry since the List
argument no longer matches.
from file.dart.
ReplayRandomAccessFile
currently usesconst Passthrough<Uint8List>()
for the#readSync
converter. The input is aList<int>
that isn't aUint8List
. I don't yet understand why.
The data is serialized as a JSON array of integers, so I think an explicit conversion to Uint8List
should be expected.
This happens because on the recording side, we write the event to the manifest after invoking the method,
Maybe RecordingProxyMixin.noSuchMethod
could eagerly encode the argument lists to JSON and pass them directly to LiveMethodEvent
.
from file.dart.
Ugh, there is yet another problem in that there's currently no way for record/replay to replicate mutations to method arguments. The recording site probably would need to encode the arguments before invocation and after, and then the replay side would need to figure out how to update arguments in-place. Or maybe there could be some less general mechanism since all of this would be needed only for RandomFileAccess.readInto
/readIntoSync
.
from file.dart.
This is no longer relevant since record/replay was removed by #162.
from file.dart.
Related Issues (20)
- MemoryDirectory does not list files properly on Windows HOT 5
- The system was unable to move the file to a different disk drive
- MemoryFileSystem is 10x slower to write than LocalFileSystem HOT 6
- What is the best way to check in a unit-test if all randomaccessfile objects are closed properly?
- Best way to close the LocalFileSystem HOT 1
- File created via MemoryFileSystem is implemented differently from dart:io File HOT 2
- Please add tags for released versions
- FileSystem.directory(...).list(...) and listSync(...) fail on self-linked directories HOT 3
- CI failing on windows (due to a failing test - succeedsIfDestinationIsEmptyDirectory) HOT 1
- MemoryFileSystem.isDirectory(r'\') crashes HOT 2
- move this package into the google.dev publisher? HOT 5
- Seeing issues when an older package:file is run on a newer SDK HOT 12
- Migrate mixins to be mixin declarations HOT 8
- Runtime exception on web when trying to DirectoryNode.clock HOT 3
- MemoryFileSystem addStream misbehaves on error HOT 1
- Local and memory implementation throw different exceptions
- Any breaking changes introduced in 7.0.0?
- Filenames encoded on Gnome's Google Drive
- implement for FileSystemOp.listSync
- android.system.ErrnoException: open failed: ENOENT (No such file or directory)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from file.dart.