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

transfer package:file, package:file_testing #598

Merged
merged 217 commits into from
Oct 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
217 commits
Select commit Hold shift + click to select a range
be12678
Initial commit.
matanlurey Dec 25, 2015
4842a13
Finish in memory implementation, update gitignore
matanlurey Jan 30, 2016
79b4a36
Update README.md
matanlurey Jan 30, 2016
4d3202e
Commit a local file system, some updates.
matanlurey Jan 30, 2016
3f1d512
Update README to show basics of use.
matanlurey Jan 30, 2016
1fc1474
Add coveralls and travis support.
matanlurey Jan 30, 2016
51f8a88
Change InMemory > Memory. Add common tests and I/O.
matanlurey Feb 1, 2016
618b6c6
feat: sync file system; more tests; stricter code analysis
yjbanov Feb 19, 2016
473dcd4
Merge pull request dart-lang/file#2 from yjbanov/extensibility
matanlurey Feb 19, 2016
621dd94
feat: allow sharing backing store across in-memory file systems
yjbanov Feb 19, 2016
fd05ab6
Merge pull request dart-lang/file#3 from yjbanov/backing-map
matanlurey Feb 20, 2016
d0297e4
update readme and pubspec
yjbanov Feb 20, 2016
22ce7a7
bump next version; more readme updates
yjbanov Feb 20, 2016
68a14a2
Fix strong mode issues, enforce dartfmt.
Nov 12, 2016
f631e81
Merge pull request dart-lang/file#5 from matanlurey/strong_and_dartfmt
matanlurey Nov 15, 2016
7994f06
v.next interface for package:file/file.dart (dart-lang/file#7)
tvolkert Dec 9, 2016
2dfc5e8
Implement LocalFileSystem with new interface (dart-lang/file#8)
tvolkert Dec 9, 2016
a95c607
Remove separate sync APIs (dart-lang/file#9)
tvolkert Dec 9, 2016
a372131
Partial implementation of in-memory file system. (dart-lang/file#10)
tvolkert Dec 12, 2016
9300dfb
Implement MemoryFile. (dart-lang/file#13)
tvolkert Dec 13, 2016
3ce26c3
Make _FileSink adhere to API spec. (dart-lang/file#14)
tvolkert Dec 13, 2016
e25a480
Add first round of tests, and associated bug fixes (dart-lang/file#15)
tvolkert Dec 13, 2016
051a43a
More work towards proper testing (dart-lang/file#16)
tvolkert Dec 13, 2016
f20ba25
Move memory tests to common tests. (dart-lang/file#17)
tvolkert Dec 13, 2016
0051c92
Support browser contexts in package:file (dart-lang/file#18)
tvolkert Dec 14, 2016
3e9504a
Implement tests for Directory (dart-lang/file#19)
tvolkert Dec 15, 2016
e06f0a6
Eliminate the need for dart_style dev_dependency (dart-lang/file#20)
cbracken Dec 15, 2016
cc977b3
Factor out Forwarding classes; use them in local backend (dart-lang/f…
tvolkert Dec 15, 2016
d84dafc
Add ChrootFileSystem. (dart-lang/file#22)
tvolkert Dec 16, 2016
505cf0b
Test LocalFileSystem without using ChrootFileSystem (dart-lang/file#23)
tvolkert Dec 16, 2016
7bb4693
Minor fixes, and a few new tests (dart-lang/file#24)
tvolkert Dec 17, 2016
124253b
Add tests for `File` (dart-lang/file#26)
tvolkert Dec 23, 2016
d0125c1
Fix bugs in MemoryFile, and re-enable corresponding tests (dart-lang/…
tvolkert Dec 25, 2016
32d711e
Fix bugs in ChrootFile, and re-enable corresponding tests (dart-lang/…
tvolkert Dec 26, 2016
7cdf600
Add tests for `Link` (dart-lang/file#29)
tvolkert Dec 26, 2016
540ea85
Fix bugs in `_MemoryLink`, & re-enable corresponding tests (dart-lang…
tvolkert Dec 27, 2016
7acc0d5
Fix bugs in `_ChrootLink`, and re-enable corresponding tests (dart-la…
tvolkert Dec 27, 2016
19a4eb0
Make some methods in `_MemoryFileSystemEntity` private (dart-lang/fil…
tvolkert Dec 28, 2016
a178519
Fixes to MemoryFileSystem (dart-lang/file#33)
tvolkert Jan 5, 2017
2a28aeb
Add more tests (dart-lang/file#34)
tvolkert Jan 5, 2017
786658a
Flesh out ChrootFileSystem (dart-lang/file#35)
tvolkert Jan 5, 2017
21444ef
Prepare for 1.0.0 release (dart-lang/file#36)
tvolkert Jan 5, 2017
90ad86a
Final prep for 1.0.0 release (dart-lang/file#37)
tvolkert Jan 6, 2017
4824cad
Add SDK constraint to be able to publish to pub (dart-lang/file#38)
tvolkert Jan 6, 2017
d4e604b
Update .analysis_options (dart-lang/file#47)
matanlurey Jan 6, 2017
0d98494
Update travis.sh to use .analysis_options… (dart-lang/file#48)
matanlurey Jan 6, 2017
cc2abdd
Replace !x.isEmpty with x.isNotEmpty (dart-lang/file#49)
matanlurey Jan 6, 2017
e0ab3c9
Run all tests when calculating coverage (dart-lang/file#50)
matanlurey Jan 6, 2017
141f4dd
Remove @TestOn('vm') and library directive from memory_test.dart (dar…
tvolkert Jan 6, 2017
a308232
Ensure covariant return types (dart-lang/file#52)
tvolkert Jan 6, 2017
d38b870
Broaden legal types for directory(), file(), and link() methods (dart…
tvolkert Jan 6, 2017
400f100
Add `FileSystem.systemTempDirectory` (dart-lang/file#55)
tvolkert Jan 6, 2017
ff81e45
Update CHANGELOG.md and pubspec.yaml for 1.0.1 release (dart-lang/fil…
tvolkert Jan 6, 2017
e924d8a
Fix bug in MemoryFileSystemEntity.resolveSymbolicLinks() (dart-lang/f…
tvolkert Jan 6, 2017
8795706
Add FileSystem.pathSeparator (dart-lang/file#58)
tvolkert Jan 7, 2017
2099a91
Remove test flakiness (dart-lang/file#59)
tvolkert Jan 7, 2017
be36159
Various comment updates and little fixes (dart-lang/file#51)
matanlurey Jan 10, 2017
5e8cc92
Convert to 3-clause BSD (dart-lang/file#62)
matanlurey Jan 10, 2017
f7db9ec
Fix tests in Dart dev channel (dart-lang/file#64)
tvolkert Jan 12, 2017
4d4f0f8
Better toString() implementations (dart-lang/file#68)
tvolkert Jan 23, 2017
2aa5a0e
Expose Forwarding* as part of the main interface. (dart-lang/file#12)
tvolkert Jan 27, 2017
fe17887
Add `FileSystem.path`. (dart-lang/file#14)
tvolkert Jan 28, 2017
b4ac47c
Add `basename` and `dirname` to `FileSystemEntity` (dart-lang/file#15)
tvolkert Jan 29, 2017
c08c733
Implement RecordingFileSystem. (dart-lang/file#16)
tvolkert Feb 1, 2017
39f4410
Turn on stricter analyzer options (dart-lang/file#17)
tvolkert Feb 1, 2017
cb89cf1
Add ResultReference<T> to record_replay library. (dart-lang/file#18)
tvolkert Feb 4, 2017
1ed2273
Serialize results of certain file invocations to separate file. (dart…
tvolkert Feb 6, 2017
3bf8921
Clean up RecordingFile `ResultReference` classes (dart-lang/file#20)
tvolkert Feb 6, 2017
d2897b2
Fix for STRONG_MODE_INVALID_CAST_FUNCTION_EXPR analyzer error with 1.…
keertip Feb 6, 2017
ea33f75
Clean up a few things in the record_replay library: (dart-lang/file#22)
tvolkert Feb 7, 2017
9c177b7
Deeply encode objects in `encode()` (dart-lang/file#23)
tvolkert Feb 7, 2017
40bdc86
Use synchronous file writing in BlobStreamReference (dart-lang/file#24)
tvolkert Feb 8, 2017
2b455d6
Add deeplyEqual() method for use in replay (dart-lang/file#25)
tvolkert Feb 8, 2017
f238d3d
Fix for analyzer STRONG_MODE_INVALID_CAST_FUNCTION_EXPR error with 1.…
keertip Feb 8, 2017
2b10a38
Partial implementation of ReplayFileSystem (dart-lang/file#28)
tvolkert Feb 9, 2017
864d1bd
Extract out common `ReplayAware` interface (dart-lang/file#29)
tvolkert Feb 9, 2017
f5633d9
Merge `encoding.dart` and `resurrectors.dart` (dart-lang/file#30)
tvolkert Feb 10, 2017
df51641
Run common tests for ReplayFileSystem. (dart-lang/file#31)
tvolkert Feb 10, 2017
c3b3414
More implementation of ReplayFileSystem (dart-lang/file#32)
tvolkert Feb 11, 2017
6c43b18
Finish implementation of ReplayFileSystem (dart-lang/file#33)
tvolkert Feb 11, 2017
70d836e
Fix bug (and re-enable test) in ReplayIOSink (dart-lang/file#34)
tvolkert Feb 11, 2017
4a6807c
Record & replay errors in (Recording|Replay)FileSystem (dart-lang/fil…
tvolkert Feb 12, 2017
fc35b88
Update README badges to point to new repo (dart-lang/file#36)
tvolkert Feb 12, 2017
5c9124c
Minor fixes based on an inspection of 2.0.0 release in pub and on dar…
tvolkert Feb 12, 2017
2f20f74
Fix minor lint warning
tvolkert Feb 12, 2017
25c86ca
Stop using deprecated Throws matcher (dart-lang/file#38)
tvolkert Feb 13, 2017
7325555
Update API per new dart:io methods (dart-lang/file#39)
tvolkert Feb 16, 2017
1ed2565
Prepare for 2.1.0 release (dart-lang/file#40)
tvolkert Feb 21, 2017
1b698ad
Remove superfluous `extends Object with ...` references (dart-lang/fi…
tvolkert Feb 22, 2017
d68a83e
Windows fixes (dart-lang/file#42)
tvolkert Feb 22, 2017
412881d
Update code to use errno values (dart-lang/file#44)
tvolkert Feb 22, 2017
b5fa28f
Remove 'implements Function' from MethodProxy (dart-lang/file#45)
tvolkert Feb 27, 2017
62eaf97
Added convenience methods in `Directory`... (dart-lang/file#46)
tvolkert Feb 27, 2017
10d2503
Fix MemoryFile to update last modified time when writeAs* is called (…
tvolkert Mar 15, 2017
21730fd
Enable Windows testing of MemoryFileSystem (dart-lang/file#52)
tvolkert Mar 16, 2017
8b7329d
Add more Windows tests (dart-lang/file#53)
tvolkert Mar 16, 2017
6dec792
Enable Windows testing of LocalFileSystem (dart-lang/file#54)
tvolkert Mar 16, 2017
804251b
Ignore errno values on Windows tests (dart-lang/file#55)
tvolkert Mar 16, 2017
96135a0
Fix Uri handling in FileSystem methods (dart-lang/file#57)
tvolkert Mar 27, 2017
dceb2e9
Make the test async so as to wait for write to be done (dart-lang/fil…
keertip Jul 11, 2017
2ace4c5
Relax version requirements on `package:intl` (dart-lang/file#59)
tvolkert Jul 11, 2017
df57d2d
Bump SDK constraint to allow to early Dart 2.0 release (dart-lang/fil…
tvolkert Jul 13, 2017
8ae6bf9
Fix line splitter (dart-lang/file#62)
leafpetersen Nov 22, 2017
8db541d
Only pass boolean values to assert (dart-lang/file#64)
srawlins Jan 11, 2018
015415c
Fix uses_dynamic_as_bottom error (dart-lang/file#63)
srawlins Jan 11, 2018
5e7e654
Fix impl of memory directory's _renameSync. (dart-lang/file#66)
srawlins Jan 19, 2018
5f8cf7c
Update sdk constraint to <2.0.0. Drop '-dev.infinity' (dart-lang/file…
aam Feb 12, 2018
94e2c9e
Bump version up to 2.3.6 (dart-lang/file#70)
aam Feb 12, 2018
ce635a3
Allow dev to fail on travis (dart-lang/file#71)
goderbauer Feb 12, 2018
2d20ce2
Revert "Allow dev to fail on travis (dart-lang/file#71)" (dart-lang/f…
goderbauer Feb 12, 2018
d4c7a07
Use Travis tasks (dart-lang/file#73)
kevmoo Feb 16, 2018
6588d24
Make ForwardingDirectory generic. (dart-lang/file#74)
stereotype441 Mar 1, 2018
928289a
Bump version to 2.3.7 (dart-lang/file#75)
tvolkert Mar 1, 2018
dc68467
Rename .analysis_options to analysis_options.yaml (dart-lang/file#76)
Mar 5, 2018
33a9714
Import dart:io directly (dart-lang/file#77)
tvolkert Mar 20, 2018
67dedff
Update the signature for RecordingRandomAccessFile._close due to chan…
keertip Apr 5, 2018
2b63baf
General cleanup of package:file (dart-lang/file#81)
tvolkert Apr 9, 2018
4b2efa7
Make MemoryFileSystem support Windows-style paths (dart-lang/file#82)
tvolkert Apr 9, 2018
816aae3
Re-organize repo (dart-lang/file#83)
tvolkert Apr 10, 2018
d2c1820
Fix runtime errors in recording_test (dart-lang/file#85)
srawlins May 9, 2018
cda0abf
Remove upper case constants (dart-lang/file#86)
keertip May 21, 2018
6acfbfa
Fix a few runtime issues with Dart 2; s/retype/cast (dart-lang/file#87)
srawlins May 21, 2018
1c1bf1a
Fix for Dart 2 runtime + 2.0.0-dev.61.0 (dart-lang/file#91)
srawlins Jun 15, 2018
4879444
Add workarounds for sdkdart-lang/file#33459 (dart-lang/file#92)
srawlins Jun 15, 2018
fc97d8e
Use Linux error codes as fallback when OS error codes are not defined…
rohanchandra Jul 2, 2018
6f4b7ee
Add Pub badge (dart-lang/file#96)
mit-mit Jul 13, 2018
87e1a54
Fix build (dart-lang/file#95)
mit-mit Jul 13, 2018
0c11013
bump Dart SDK constraint (dart-lang/file#99)
pq Aug 9, 2018
3dbef82
update test dep to ^1.0.0 (dart-lang/file#101)
pq Aug 10, 2018
f89c151
update test dep; bump version (dart-lang/file#102)
pq Aug 10, 2018
ed82889
Dart 2 type fixes. (dart-lang/file#104)
pq Aug 10, 2018
a136dc8
Update changelog (dart-lang/file#107)
tvolkert Aug 13, 2018
f79931e
Add missing return to fix analsysis error with 2.1.0-dev.1.0. (dart-l…
keertip Aug 13, 2018
2d276fb
Remove woraround for nsm forwarding and mixins, fix has landed in SDK…
keertip Aug 13, 2018
afb1c40
Relax constraints on package:test version (dart-lang/file#110)
tvolkert Aug 14, 2018
378e3dd
Remove deprecated enablePreviewDart2 analysis option (dart-lang/file#…
pq Aug 20, 2018
d743286
Dart 2 fixes (dart-lang/file#113)
tvolkert Aug 29, 2018
be9eb7a
Dart 2 fix for File.open() (dart-lang/file#114)
tvolkert Aug 30, 2018
fe19a9c
Add tests that fail because of slash directions (dart-lang/file#115)
DanTup Sep 5, 2018
62c3c34
Rework mixins to avoid extending non-Object. (dart-lang/file#116)
stereotype441 Oct 12, 2018
eeba012
Switch to new-style mixins so that super.noSuchMethod can be called. …
stereotype441 Dec 7, 2018
e3a3e3a
Use test_api instead of test (dart-lang/file#120)
dnfield Feb 17, 2019
adc115f
Adds `skip` to common_tests.dart `test` function. Uses it for failing…
cskau-g Mar 22, 2019
894049c
Change implementations to return Uint8List rather than List<int> (dar…
tvolkert May 20, 2019
bb3cd0c
Prepare for upcoming change to File.openRead() (dart-lang/file#125)
tvolkert Jun 25, 2019
b6f51f5
Cleanup skipOnPlatform list for Windows tests that are now passing (d…
bkonyi Jul 2, 2019
154416e
Update for modern analysis (dart-lang/file#127)
tvolkert Aug 31, 2019
03dc399
Add basic example (dart-lang/file#128)
tvolkert Aug 31, 2019
34fe8b1
Monotonic clock version of MemoryFileSystem (dart-lang/file#129)
Hixie Oct 11, 2019
9268906
Bump version (dart-lang/file#130)
tvolkert Oct 11, 2019
af56694
Add a dartdoc comment for RealNode.clock (dart-lang/file#137)
jamesderlin Jun 12, 2020
73e33b3
Add a basic implementation for MemoryRandomAccessFile (dart-lang/file…
jamesderlin Jun 12, 2020
4cc5933
Change dep back to package:test (dart-lang/file#141)
dnfield Jun 17, 2020
e1604bb
Try to fix some flaky tests (dart-lang/file#150)
jamesderlin Jun 19, 2020
3ab375d
Remove some stale TODOs (dart-lang/file#151)
jamesderlin Jun 20, 2020
b617d77
per instance temp directory naming (dart-lang/file#152)
jonahwilliams Jun 21, 2020
b926676
Fix MemoryFile.readAsLines to behave more like File.readAsLines (dart…
jamesderlin Jun 23, 2020
bc3ea6b
Remove Uint8ListToPlainList (dart-lang/file#143)
jamesderlin Jun 23, 2020
cba9551
Fix and refactor NoMatchingInvocationError.toString() (dart-lang/file…
jamesderlin Jun 23, 2020
105e72b
Enable more "File > open" tests (dart-lang/file#145)
jamesderlin Jun 23, 2020
544db98
Try to fix flaky timestamp tests (dart-lang/file#153)
jamesderlin Jun 23, 2020
f9108f5
Fix describeInvocation code style (dart-lang/file#154)
jamesderlin Jun 23, 2020
5e9f390
Fix CHANGELOG.md and update package version (dart-lang/file#155)
jamesderlin Jun 24, 2020
7511c80
Replace existsSync() usage in tests (dart-lang/file#156)
jamesderlin Jun 24, 2020
c9dd585
Make MemoryRandomAccessFile handle the file being moved from under it…
jamesderlin Jul 1, 2020
1f0ab00
[null-safety] remove implicit-dynamic, intl in preparation for null-s…
jonahwilliams Jul 29, 2020
9532537
[null-safety] migrate to _almost_ null safety (dart-lang/file#162)
jonahwilliams Jul 29, 2020
375e5f9
update for null-safety publication (dart-lang/file#163)
jonahwilliams Aug 11, 2020
3f3a3a4
Readme improvements (dart-lang/file#165)
kevmoo Aug 12, 2020
3b0f5a9
Make ForwardingFile.openRead return Stream<List<int>> again (dart-lan…
jamesderlin Sep 10, 2020
b579bcc
bump SDK constraint for 2.11 (dart-lang/file#170)
jonahwilliams Sep 22, 2020
19e18c3
Remove unused dart:async imports. (dart-lang/file#169)
MichaelRFairhurst Sep 26, 2020
c549d8b
update SDK constraint for null safety (dart-lang/file#172)
jonahwilliams Oct 22, 2020
ac639f0
update versions for beta (dart-lang/file#173)
jonahwilliams Nov 4, 2020
5372fe9
Add _ChrootRandomAccessFile and ForwardingRandomAccessFile (dart-lang…
jamesderlin Jan 30, 2021
5519ac5
stable version (dart-lang/file#176)
jonahwilliams Feb 3, 2021
7052748
Fix lints from dart pub publish (dart-lang/file#177)
jonahwilliams Feb 3, 2021
0e7ac1b
migrate file_testing to null safety (dart-lang/file#178)
jonahwilliams Feb 9, 2021
dc88419
Migrate tests to sound mode, fix type error in MemoryDirectory (dart-…
jonahwilliams Feb 17, 2021
22ca038
Add an operation handle to allow inserting FileSystemExceptions in th…
jonahwilliams Feb 18, 2021
92200fe
Add copy and open operation handles to inject memory file exceptions …
jmagman May 15, 2021
9d68a75
Add ophandle for FileSystemEntity.exists/existsSync (dart-lang/file#185)
jonahwilliams Jun 15, 2021
d65171b
Create dart.yml
gspencergoog Aug 31, 2021
0478232
Switch to GitHub Actions (dart-lang/file#188)
gspencergoog Aug 31, 2021
ad6ff83
Use published versions of actions (dart-lang/file#189)
kevmoo Oct 8, 2021
7b67a1d
remove unneeded imports (dart-lang/file#190)
kevmoo Oct 8, 2021
dce83c7
Introduce stub of a exclusive parameter for File.create. (dart-lang/f…
aam Aug 17, 2022
f50f76d
skip a failing test on windows (dart-lang/file#201)
devoncarew Aug 17, 2022
90ac2b4
populate the pubspec repository fields; update readme dart-lang/file#…
devoncarew Aug 18, 2022
83c5d4e
add dependabot; run the CI weekly (dart-lang/file#203)
devoncarew Nov 7, 2022
1a1f4a8
Bump dart-lang/setup-dart from 1.3 to 1.4 (dart-lang/file#208)
dependabot[bot] Feb 1, 2023
5c23f73
Bump actions/checkout from 3.1.0 to 3.3.0 (dart-lang/file#207)
dependabot[bot] Feb 1, 2023
d708d28
Bump actions/checkout from 3.3.0 to 3.5.2 (dart-lang/file#218)
dependabot[bot] May 1, 2023
f07709c
Bump dart-lang/setup-dart from 1.4.0 to 1.5.0 (dart-lang/file#212)
dependabot[bot] May 1, 2023
280334b
Migrate to Dart 3 (dart-lang/file#210)
bernaferrari May 11, 2023
d59b542
Make `FileSystem.isLink` actually work (dart-lang/file#214)
jamesderlin May 12, 2023
750cd74
Fix MemoryFileSystem to treat an empty path as non-existent (dart-lan…
jamesderlin May 12, 2023
d475a9c
MemoryFileSystem addStream onError (dart-lang/file#220)
AsturaPhoenix May 12, 2023
dac4e83
Make MemoryFile.openRead and _ChrootFile.openRead return Stream<List<…
jamesderlin May 15, 2023
6972b98
release version 7.0.0 (dart-lang/file#222)
jakemac53 May 19, 2023
5eea537
remove no longer necessary override (dart-lang/file#223)
jakemac53 May 19, 2023
eb7ee1f
Bump actions/checkout from 3.5.2 to 3.6.0 (dart-lang/file#228)
dependabot[bot] Sep 1, 2023
3ef52ce
Remove now unnecessary glob dependency override (dart-lang/file#226)
parlough Oct 11, 2023
b467032
Bump dart-lang/setup-dart from 1.5.0 to 1.6.0 (dart-lang/file#233)
dependabot[bot] Nov 1, 2023
162ff1c
Bump actions/checkout from 3.6.0 to 4.1.1 (dart-lang/file#232)
dependabot[bot] Nov 1, 2023
33fabbe
Bump dart-lang/setup-dart from 1.6.0 to 1.6.2 (dart-lang/file#235)
dependabot[bot] Feb 1, 2024
b2d044a
Bump actions/checkout from 4.1.1 to 4.1.2 (dart-lang/file#237)
dependabot[bot] Apr 1, 2024
161eb57
Bump actions/checkout from 4.1.2 to 4.1.4 (dart-lang/file#238)
dependabot[bot] May 1, 2024
cfb4193
Bump dart-lang/setup-dart from 1.6.2 to 1.6.4 (dart-lang/file#239)
dependabot[bot] May 1, 2024
9e95b9a
Bump actions/checkout from 4.1.4 to 4.1.6 (dart-lang/file#240)
dependabot[bot] Jun 3, 2024
d0ef47d
Bump dart-lang/setup-dart from 1.6.4 to 1.6.5 (dart-lang/file#241)
dependabot[bot] Jul 1, 2024
5c3efc6
Bump actions/checkout from 4.1.6 to 4.1.7 (dart-lang/file#242)
dependabot[bot] Jul 1, 2024
e1fb5d8
Bump actions/checkout from 4.1.7 to 4.2.0 (dart-lang/file#243)
dependabot[bot] Oct 3, 2024
35664a4
remove duplicate files
devoncarew Oct 4, 2024
ba5e19f
Merge package:file into shared tools repository
devoncarew Oct 4, 2024
a38c3eb
update repo metadata and config for the package move
devoncarew Oct 4, 2024
79ef391
adjust package path
devoncarew Oct 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
name: "package:file"
about: "Create a bug or file a feature request against package:file."
labels: "package:file"
---
8 changes: 8 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,14 @@
- changed-files:
- any-glob-to-any-file: 'pkgs/extension_discovery/**'

'package:file':
- changed-files:
- any-glob-to-any-file: 'pkgs/file/**'

'package:file_testing':
- changed-files:
- any-glob-to-any-file: 'pkgs/file_testing/**'

'package:graphs':
- changed-files:
- any-glob-to-any-file: 'pkgs/graphs/**'
Expand Down
66 changes: 66 additions & 0 deletions .github/workflows/file.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: package:file
permissions: read-all

on:
# Run on PRs and pushes to the default branch.
push:
branches: [ main ]
paths:
- '.github/workflows/file.yml'
- 'pkgs/file/**'
- 'pkgs/file_testing/**'
pull_request:
branches: [ main ]
paths:
- '.github/workflows/file.yml'
- 'pkgs/file/**'
- 'pkgs/file_testing/**'
schedule:
- cron: "0 0 * * 0"

jobs:
correctness:
runs-on: ubuntu-latest
strategy:
matrix:
package: [file, file_testing]

steps:
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938
- uses: dart-lang/setup-dart@0a8a0fc875eb934c15d08629302413c671d3f672
with:
sdk: dev

- name: Install ${{ matrix.package }} dependencies
working-directory: pkgs/${{ matrix.package }}
run: dart pub get

- name: Verify formatting in ${{ matrix.package }}
working-directory: pkgs/${{ matrix.package }}
run: dart format --output=none --set-exit-if-changed .

- name: Analyze package ${{ matrix.package }} source
working-directory: pkgs/${{ matrix.package }}
run: dart analyze --fatal-infos

test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
package: [file]
os: [ubuntu-latest, macos-latest, windows-latest]
sdk: [stable, dev]

steps:
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938
- uses: dart-lang/setup-dart@0a8a0fc875eb934c15d08629302413c671d3f672
with:
sdk: ${{ matrix.sdk }}

- name: Install ${{ matrix.package }} dependencies
working-directory: pkgs/${{ matrix.package }}
run: dart pub get

- name: Run ${{ matrix.package }} Tests
working-directory: pkgs/${{ matrix.package }}
run: dart pub run test -j1
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ don't naturally belong to other topic monorepos (like
| [cli_config](pkgs/cli_config/) | A library to take config values from configuration files, CLI arguments, and environment variables. | [![pub package](https://img.shields.io/pub/v/cli_config.svg)](https://pub.dev/packages/cli_config) |
| [coverage](pkgs/coverage/) | Coverage data manipulation and formatting. | [![pub package](https://img.shields.io/pub/v/coverage.svg)](https://pub.dev/packages/coverage) |
| [extension_discovery](pkgs/extension_discovery/) | A convention and utilities for package extension discovery. | [![pub package](https://img.shields.io/pub/v/extension_discovery.svg)](https://pub.dev/packages/extension_discovery) |
| [file](pkgs/file/) | A pluggable, mockable file system abstraction for Dart. | [![pub package](https://img.shields.io/pub/v/file.svg)](https://pub.dev/packages/file) |
| [file_testing](pkgs/file_testing/) | Testing utilities for package:file (published but unlisted). | [![pub package](https://img.shields.io/pub/v/file_testing.svg)](https://pub.dev/packages/file_testing) |
| [graphs](pkgs/graphs/) | Graph algorithms that operate on graphs in any representation | [![pub package](https://img.shields.io/pub/v/graphs.svg)](https://pub.dev/packages/graphs) |
| [mime](pkgs/mime/) | Utilities for handling media (MIME) types. | [![pub package](https://img.shields.io/pub/v/mime.svg)](https://pub.dev/packages/mime) |
| [oauth2](pkgs/oauth2/) | A client library for authenticatingand making requests via OAuth2. | [![pub package](https://img.shields.io/pub/v/oauth2.svg)](https://pub.dev/packages/oauth2) |
Expand Down
5 changes: 5 additions & 0 deletions pkgs/file/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.dart_tool/
.packages
.pub/
build/
pubspec.lock
239 changes: 239 additions & 0 deletions pkgs/file/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,239 @@
## 7.0.1-wip

## 7.0.0

* Dart 3 fixes for class modifiers.
* `MemoryFileSystem` now treats empty paths as non-existent.
* Fix `FileSystem.isLink`/`FileSystem.isLinkSync` to not follow symbolic links.
* Make the return type of `MemoryFile.openRead` and `_ChrootFile.openRead` again
match the return type from `dart:io`.

## 6.1.4

* Populate the pubspec `repository` field.

## 6.1.3

* In classes that implement `File` methods `create`, `createSync` now take `bool exclusive = true` parameter. No functional changes.

## 6.1.2

* `MemoryFileSystem` now provides `opHandle`s for exists operations.

## 6.1.1

* `MemoryFile` now provides `opHandle`s for copy and open operations.

## 6.1.0

* Reading invalid UTF8 with the `MemoryFileSystem` now correctly throws a `FileSystemException` instead of a `FormatError`.
* `MemoryFileSystem` now provides an `opHandle` to inspect read/write operations.
* `MemoryFileSystem` now creates the temporary directory before returning in `createTemp`/`createTempSync`.

## 6.0.1

* Fix sound type error in memory backend when reading non-existent `MemoryDirectory`.

## 6.0.0

* First stable null safe release.

## 6.0.0-nullsafety.4

* Update upper bound of SDK constraint.

## 6.0.0-nullsafety.3

* Update upper bound of SDK constraint.

## 6.0.0-nullsafety.2

* Make `ForwardingFile.openRead`'s return type again match the return type from
`dart:io`.
* Remove some unnecessary `Uint8List` conversions in `ForwardingFile`.

## 6.0.0-nullsafety.1

* Update to null safety.
* Remove record/replay functionality.
* Made `MemoryRandomAccessFile` and `MemoryFile.openWrite` handle the file
being removed or renamed while open.
* Fixed incorrect formatting in `NoMatchingInvocationError.toString()`.
* Fixed more test flakiness.
* Enabled more tests.
* Internal cleanup.
* Remove implicit dynamic in preparation for null safety.
* Remove dependency on Intl.

## 5.2.1

* systemTemp directories created by `MemoryFileSystem` will allot names
based on the file system instance instead of globally.
* `MemoryFile.readAsLines()`/`readAsLinesSync()` no longer treat a final newline
in the file as the start of a new, empty line.
* `RecordingFile.readAsLine()`/`readAsLinesSync()` now always record a final
newline.
* `MemoryFile.flush()` now returns `Future<void>` instead of `Future<dynamic>`.
* Fixed some test flakiness.
* Enabled more tests.
* Internal cleanup.

## 5.2.0

* Added a `MemoryRandomAccessFile` class and implemented
`MemoryFile.open()`/`openSync()`.

## 5.1.0

* Added a new `MemoryFileSystem` constructor to use a test clock

## 5.0.10

* Added example

## 5.0.9

* Fix lints for project health

## 5.0.8

* Return `Uint8List` rather than `List<int>`.

## 5.0.7

* Dart 2 fixes for `RecordingProxyMixin` and `ReplayProxyMixin`.

## 5.0.6

* Dart 2 fixes for `RecordingFile.open()`

## 5.0.5

* Dart 2 fixes

## 5.0.4

* Update SDK constraint to 2.0.0-dev.67.0, remove workaround in
recording_proxy_mixin.dart.
* Fix usage within Dart 2 runtime mode in Dart 2.0.0-dev.61.0 and later.
* Relax constraints on `package:test`

## 5.0.3

* Update `package:test` dependency to 1.0

## 5.0.2

* Declare compatibility with Dart 2 stable

## 5.0.1

* Remove upper case constants
* Update SDK constraint to 2.0.0-dev.54.0.

## 5.0.0

* Moved `testing` library into a dedicated `package:file_testing` so that
libraries don't need to take on a transitive dependency on `package:test`
in order to use `package:file`.

## 4.0.1

* General library cleanup
* Add `style` support in `MemoryFileSystem`, so that callers can choose to
have a memory file system with windows-like paths. [#68]
(https://github.com/google/file.dart/issues/68)

## 4.0.0

* Change method signature for `RecordingRandomAccessFile._close` to return a
`Future<void>` instead of `Future<RandomAccessFile>`. This follows a change in
dart:io, Dart SDK `2.0.0-dev.40`.

## 3.0.0

* Import `dart:io` unconditionally. More recent Dart SDK revisions allow
`dart:io` to be imported in a browser context, though if methods are actually
invoked, they will fail. This matches well with `package:file`, where users
can use the `memory` library and get in-memory implementations of the
`dart:io` interfaces.
* Bump minimum Dart SDK to `1.24.0`

## 2.3.7

* Fix Dart 2 error.

## 2.3.6

* Relax sdk upper bound constraint to '<2.0.0' to allow 'edge' dart sdk use.

## 2.3.5

* Fix internal use of a cast which fails on Dart 2.0 .

## 2.3.4

* Bumped maximum Dart SDK version to 2.0.0-dev.infinity

## 2.3.3

* Relaxes version requirements on `package:intl`

## 2.3.2

* Fixed `FileSystem.directory(Uri)`, `FileSystem.file(Uri)`, and
`FileSystem.link(Uri)` to consult the file system's path context when
converting the URI to a file path rather than using `Uri.toFilePath()`.

## 2.3.1

* Fixed `MemoryFileSystem` to make `File.writeAs...()` update the last modified
time of the file.

## 2.3.0

* Added the following convenience methods in `Directory`:
* `Directory.childDirectory(String basename)`
* `Directory.childFile(String basename)`
* `Directory.childLink(String basename)`

## 2.2.0

* Added `ErrorCodes` class, which holds errno values.

## 2.1.0

* Add support for new `dart:io` API methods added in Dart SDK 1.23

## 2.0.1

* Minor doc updates

## 2.0.0

* Improved `toString` implementations in file system entity classes
* Added `ForwardingFileSystem` and associated forwarding classes to the
main `file` library
* Removed `FileSystem.pathSeparator`, and added a more comprehensive
`FileSystem.path` property
* Added `FileSystemEntity.basename` and `FileSystemEntity.dirname`
* Added the `record_replay` library
* Added the `testing` library

## 1.0.1

* Added `FileSystem.systemTempDirectory`
* Added the ability to pass `Uri` and `FileSystemEntity` types to
`FileSystem.directory()`, `FileSystem.file()`, and `FileSystem.link()`
* Added `FileSystem.pathSeparator`

## 1.0.0

* Unified interface to match dart:io API
* Local file system implementation
* In-memory file system implementation
* Chroot file system implementation

## 0.1.0

* Initial version
26 changes: 26 additions & 0 deletions pkgs/file/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
Copyright 2017, the Dart project authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Loading
Loading