Skip to content

Fix progress reporting for files larger than Integer.MAX_VALUE (2.14 GB) on Android #766

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

Open
wants to merge 477 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
477 commits
Select commit Hold shift + click to select a range
d546291
append file - add in missing parameter
scgough Mar 23, 2022
5e17a74
Merge pull request #132 from pexels/fix/append-file-transform-param-bug
RonRadtke Mar 23, 2022
50ae139
Merge pull request #130 from pexels/fix/scoped-cancel-task
RonRadtke Mar 25, 2022
d52ba2b
Update:
Mar 25, 2022
bc6a404
removes custom trustmanager so it has to be defined outside of the lib
Mar 28, 2022
44eabe2
Fixed export error, use named export
scarlac Mar 29, 2022
f47fa4a
Organizing the initialization of input stream for request body into a…
mmathewsTableau Mar 29, 2022
c5484e1
Fix type declaration for `close()` in interface `ReactNativeBlobUtilW…
Mar 30, 2022
6269dcd
Merge pull request #139 from julian-becker/bugfix/close_type
RonRadtke Mar 30, 2022
189e766
Merge pull request #138 from mmathewsTableau/master
RonRadtke Mar 30, 2022
aa7a1a2
enable reporting of progress from downloadmanager
austinried Apr 9, 2022
c6fc576
Remove redundant iOS 7 polyfill
neilco Apr 14, 2022
ba15790
Remove CHECK_LICENSE permission
austinried Apr 19, 2022
86e9096
Merge pull request #145 from austinried/patch-1
RonRadtke Apr 25, 2022
79eb7f1
Merge pull request #144 from neilco/master
RonRadtke Apr 25, 2022
a24712a
Merge pull request #143 from austinried/android-downloadmanager-progress
RonRadtke Apr 25, 2022
66fd211
For trusty option an own trustmanager has to be provided from now on
Apr 28, 2022
2fd5424
For trusty option an own trustmanager has to be provided from now on
Apr 28, 2022
8edbfc8
version
Apr 28, 2022
afb270a
fix PermissionAndroid API link
ckaznable May 5, 2022
697ee45
Filter progress reports from DownloadManager by id
austinried May 5, 2022
5a31d43
✨ XMLHttpRequest: Handle FormData body
ThePooN Jun 3, 2022
3307e50
Small fix for total download being 0
Jun 24, 2022
68840fc
Merge pull request #162 from ThePooN/xmlhttprequest-handle-formdata
RonRadtke Jun 24, 2022
c093d8f
Merge pull request #155 from austinried/filter-downloads-progress-by-id
RonRadtke Jun 24, 2022
ead6535
Merge pull request #154 from ckaznable/master
RonRadtke Jun 24, 2022
bb5426d
Merge pull request #136 from scarlac/fix-import-export
RonRadtke Jun 24, 2022
2f8f0c9
remove prelink since this wasn't doing anything anymore regardless
Jun 24, 2022
a1ba9eb
Version
Jun 24, 2022
8ca5aea
adds paths
Jun 27, 2022
59d3adf
fixing it so it works
Jul 1, 2022
436017c
Merge remote-tracking branch 'origin/master' into develop
Jul 2, 2022
77df27f
Update so media storage API will use the correct paths for Android < 10
Jul 2, 2022
889ffb7
Update:
Jul 2, 2022
88466b5
Version
Jul 2, 2022
6b5f4fe
Declaring excludeFromBackupKey in index.d.ts so it is accessible in t…
mmathewsTableau Jul 18, 2022
f515ccc
chore: prepare sample apps for new and old arch
Sep 8, 2022
85dedef
feat: Add Flow specs
Sep 9, 2022
e67a50c
chore: remove sample apps to speed up yarn add command
Sep 12, 2022
bbcd0f1
feat: update iOS implementation
Sep 12, 2022
47024cc
feat: connect iOS to JS and test TM
Sep 13, 2022
6210a85
Update Gradle and prepare for New Arch setup
cortinico Sep 22, 2022
5610071
Add Implementation Delegate for the Old Architecture
cortinico Sep 22, 2022
f0ae855
Make the package a TurboReactPackage
cortinico Sep 22, 2022
7a6f764
Extend specs with Android APIs
cortinico Sep 23, 2022
13c6a5c
Add New Architecture Android Module APIs
cortinico Sep 23, 2022
a3720ae
Correctly import Blob Util from specs
cortinico Sep 27, 2022
2596408
Verify that the New Arch implementation works correctly
cortinico Sep 27, 2022
e4b227e
feat: update iOS implementation
Sep 30, 2022
bfe143d
Merge pull request #6 from cipolleschi/feat/update_ios_impl
cipolleschi Sep 30, 2022
2d0a215
Merge pull request #5 from cipolleschi/feat/android_implementation
cipolleschi Sep 30, 2022
2141f68
Merge pull request #4 from cipolleschi/feat/connect-tm-to-js
cipolleschi Sep 30, 2022
09ca4a4
Merge pull request #3 from cipolleschi/feat/ios_implementation
cipolleschi Sep 30, 2022
bb23f10
Merge pull request #2 from cipolleschi/feat/remove-apps-from-example
cipolleschi Sep 30, 2022
6378035
Merge pull request #1 from cipolleschi/feat/add_js_specs
cipolleschi Sep 30, 2022
6582ae8
Fixing the legacy paths
Oct 11, 2022
3738cac
Hopefully fixes #113
Oct 11, 2022
972f0cf
version
Oct 11, 2022
d276351
Fix bug #113 in new version package(0.16.3)
Oct 18, 2022
43d217b
fix CVE-2022-3517
dmeyer-pfg Oct 31, 2022
1a7c8e1
Merge pull request #188 from ZaycevDmitriy/fix_bug_#113_new_version_p…
RonRadtke Nov 3, 2022
6120f48
Merge pull request #191 from dmeyer-pfg/CVE-2022-3517-fix
RonRadtke Nov 3, 2022
9b26e98
Fix link in CONTRIBUTING.md to dev project
draperunner Nov 3, 2022
0685344
Android crash fix
Nov 4, 2022
c39962b
Merge pull request #193 from Saikedo/master
RonRadtke Nov 5, 2022
8d9d980
Fixes #179 (again...)
Nov 5, 2022
12b6253
[FEAT] New Architecture Migration
Nov 8, 2022
c564d75
Update:
Nov 8, 2022
6ce36b8
small fix and update for example app
Nov 8, 2022
6ba5e97
docs: media store typo
opakholis Nov 10, 2022
af520e5
Update:
Nov 10, 2022
a6b3110
Merge pull request #195 from opakholis/fix-readme-typo
RonRadtke Nov 10, 2022
b9b3374
Merge pull request #192 from draperunner/fix-link-in-contributing
RonRadtke Nov 10, 2022
977a5a9
Update:
Nov 10, 2022
4e8636e
Fix ext check condition not correct.
cvrobot Nov 15, 2022
3d5155e
fix: with react-native-web product build will `export 'URIUtil' (reex…
flyskywhy Dec 15, 2022
2582b7c
Merge pull request #201 from flyskywhy/master
RonRadtke Jan 5, 2023
a6a9473
Merge pull request #196 from cvrobot/patch-1
RonRadtke Jan 5, 2023
01fe211
Merge pull request #176 from mmathewsTableau/master
RonRadtke Jan 5, 2023
223c495
reintroducing legacy paths
Jan 5, 2023
2e14e6b
version
Jan 5, 2023
f90ac3e
Add exported custom error for cancel tasks
eleretic Jan 23, 2023
fec2c30
export the new error class
eleretic Jan 23, 2023
8d6398c
version bump
eleretic Jan 23, 2023
7663f5a
fix typos, rename error class
eleretic Jan 23, 2023
9c63bda
fix auto format mistakes
eleretic Jan 23, 2023
0527211
fix autoformat mistake
eleretic Jan 23, 2023
5644fc6
Update build.gradle
nnrohu Jan 25, 2023
6aaa260
Add headers['content-type']
pierre275 Jan 26, 2023
172e4a8
Null check HashMap's get result in ReactNativeBlobUtilReq instead of …
Jan 27, 2023
0feaf4b
fix: change method names and import to proper one
WoLewicki Feb 7, 2023
1c2964a
Include failure reason in error from writeFile on iOS
TheAlmightyBob Feb 9, 2023
662a388
Add legacy constants to the spec
j-piasecki Feb 13, 2023
5a66451
Make sure all constants are defined
j-piasecki Feb 14, 2023
90196f2
Merge pull request #212 from nnrohu/patch-1
RonRadtke Feb 24, 2023
08ccf28
Merge pull request #222 from j-piasecki/patch-1
RonRadtke Feb 24, 2023
aaec2c7
Merge pull request #220 from TheAlmightyBob/ReportWriteFileError
RonRadtke Feb 24, 2023
8be38f8
Merge pull request #215 from jonthanon/master
RonRadtke Feb 24, 2023
ea6fe99
Merge pull request #213 from pierre275/android/fix-fetch-polyfill
RonRadtke Feb 24, 2023
9eedb55
Merge pull request #219 from WoLewicki/patch-2
RonRadtke Feb 24, 2023
80628d4
Merge pull request #210 from eleretic/master
RonRadtke Feb 24, 2023
fb5b437
iOS installation note
SheetJSDev Feb 27, 2023
de74442
Update README.md
hrdyjan1 Mar 9, 2023
9900631
Fix CopyToMediaStore documentation
derneuere Mar 12, 2023
82d9762
Support Visual Studio 2022
tomvogel1982 Mar 14, 2023
6290b21
Fixing ios issue
Mar 17, 2023
816b53a
Merge pull request #232 from yonderinfo/patch-1
RonRadtke Mar 17, 2023
db4a70c
Merge pull request #231 from derneuere/patch-1
RonRadtke Mar 17, 2023
41b214e
Merge pull request #227 from hrdyjan1/master
RonRadtke Mar 17, 2023
1d09319
Merge pull request #224 from SheetJSDev/patch-1
RonRadtke Mar 17, 2023
132051c
Version
Mar 17, 2023
513696f
fix: fix bug Illegal callback invocation from native module
ZaycevDmitriy Mar 24, 2023
6a9eb7b
js side
Apr 25, 2023
7bb263d
ios part but no idea if working
May 1, 2023
5a34467
some project changes
May 7, 2023
ebbbe17
Revert "ios part but no idea if working"
May 7, 2023
fa124db
ios part version 2
May 10, 2023
9d8b4eb
fetch part working for ios
May 16, 2023
552d2a7
filesystem rework
May 16, 2023
802513f
small fixes
May 20, 2023
f2d7d8f
Merge pull request #237 from ZaycevDmitriy/fix_bug_#179_Illegal_callb…
RonRadtke May 22, 2023
02071f7
missing json parse
May 22, 2023
3d72246
android fs events
May 27, 2023
f98cfcb
adds addeventlistener and removeeventlistener stumps to not get warnings
May 28, 2023
372c72e
adding new flag for downloadmanager to download to mediastore
May 30, 2023
0a44109
* Rework event emitter system
May 30, 2023
9402e3a
* Rework event system
May 31, 2023
1ea2e8f
* Rework event system
May 31, 2023
4e2c337
Merge remote-tracking branch 'origin/master'
May 31, 2023
4920999
fixes #251
Jun 1, 2023
4020154
fixes #253
Jun 13, 2023
cd9e823
adds missing import
Jun 13, 2023
69007ae
fixes #255
Jun 13, 2023
2051c49
remove restrictions for legacy dir and android version
Jun 13, 2023
48735c7
version
Jun 13, 2023
73b2082
New
billnbell3 Jul 5, 2023
669c5df
Correct the return type of openDocument
ejain Jul 11, 2023
1365e6f
Fix typos in doc strings
ejain Jul 11, 2023
bd20981
Merge pull request #266 from billnbell/fix/rn0721
RonRadtke Jul 22, 2023
90f3592
Merge pull request #269 from bloomapi/fix-signature
RonRadtke Jul 22, 2023
c6600b7
fixes #271
Jul 22, 2023
fa0e17e
version
Jul 22, 2023
3047bdb
readme fixes
Jul 22, 2023
1040174
fixing podspec
Jul 25, 2023
56a715d
fix failed to build unique file crash
bernhardoj Jul 25, 2023
b6c7f6f
fixes #277
Jul 25, 2023
756c74d
feat(ios): replicate Android chunked download reporting
msbit Jul 31, 2023
626f4b0
refactor(ios): re-align some autosynthesized properties
msbit Jul 31, 2023
088eaef
Fix `pod install` for old version of react native with new arch
retyui Aug 2, 2023
95b4163
Merge pull request #285 from retyui/fix-issue-284
RonRadtke Aug 4, 2023
728bd81
Merge pull request #278 from bernhardoj/fix/failed-to-build-unique-file
RonRadtke Aug 4, 2023
72bc09d
Merge pull request #282 from msbit/refactor/ios-autosynthesized-property
RonRadtke Aug 4, 2023
309bec5
Merge pull request #281 from msbit/feat/ios-chunked-download-progress
RonRadtke Aug 4, 2023
d682742
fixes #284
Aug 4, 2023
faa670c
Fix runtime crasher on Xcode 15
lilidotshi Aug 10, 2023
b96f392
Fix import declaration of `mediacollection.js`
UNIDY2002 Aug 13, 2023
2531333
Merge pull request #288 from lilidotshi/master
RonRadtke Aug 15, 2023
7448173
fix: reading file from assets
ammarahm-ed Sep 21, 2023
16fb9d8
add missing listener methods (new architecture)
heath-clink Sep 27, 2023
36dec7f
add missing listener methods for windows
Elabar Oct 14, 2023
2554c32
Fix #303 - Error: java.lang.SecurityException when registering a rece…
fcaldarelli Oct 19, 2023
adf87d4
Merge pull request #306 from fcaldarelli/fix/securityExceptionAndroid…
RonRadtke Oct 20, 2023
42f4cc9
Merge pull request #302 from Elabar/add-missing-listener-method-windows
RonRadtke Oct 20, 2023
b9c8f9c
Merge pull request #301 from heath-clink/add-missing-listener-methods
RonRadtke Oct 20, 2023
58eb6ab
Merge pull request #290 from UNIDY2002/master-1
RonRadtke Oct 20, 2023
2568a62
Merge pull request #298 from ammarahm-ed/patch-1
RonRadtke Oct 20, 2023
0c9b503
publish script and changes to android manifest
Oct 20, 2023
0065475
fixes: #307
Oct 20, 2023
8db3f9d
Merge branch 'develop'
Oct 20, 2023
0e8b81e
fix workflow
Oct 20, 2023
c28ccef
prevent returning dirty buffer in readStream
tszheichoi Oct 21, 2023
199e4a5
remove extra lines
tszheichoi Oct 21, 2023
c320d98
follow existing style
tszheichoi Oct 21, 2023
b845ef0
Merge pull request #308 from tszheichoi/patch-1
RonRadtke Nov 11, 2023
02c47b1
fix: RN 73 compatibility
felipecsl Nov 16, 2023
9ab918c
remove yarn lockfile
felipecsl Nov 16, 2023
06e91b2
Merge pull request #314 from Alza-app/master
RonRadtke Nov 16, 2023
54e883b
version
Nov 16, 2023
a89606f
Corrected namespace to match package name in .java files
seratonik Nov 17, 2023
107f55d
Enable buildConfig feature for gradle
seratonik Nov 17, 2023
c46b369
Merge pull request #316 from seratonik/fix-gradle-namespace
RonRadtke Nov 17, 2023
d2c8497
version
Nov 17, 2023
1851dfb
fix: RN 73 remove package from AndroidManifest
felipecsl Nov 17, 2023
41cd57a
Merge pull request #317 from Alza-app/master
RonRadtke Dec 3, 2023
8df0134
update glob
Dec 3, 2023
5dd72a1
implementing delta from #261 with small changes
Dec 4, 2023
14104f9
fixing in check
Dec 4, 2023
ed20986
version
Dec 4, 2023
341eeb4
fixes #319
Dec 4, 2023
cc3db64
Fix deprecated iOS API stringByAddingPercentEscapesUsingEncoding:
Jan 3, 2024
070ce10
Merge pull request #328 from ingridwang/master
RonRadtke Jan 23, 2024
3261740
fixes #321
Feb 26, 2024
618685f
fixes #321
Feb 26, 2024
b102c24
use version as tag for podspec
buschco Mar 18, 2024
0dacc63
Remove never used function
ggilles Mar 21, 2024
4be9547
Handle copy from content URI using android content resolver
ggilles Mar 21, 2024
cf3df55
Handle hash() from content URI using android content resolver
ggilles Mar 21, 2024
7065f4e
Handle slice() from content URI using android content resolver
ggilles Mar 21, 2024
383c3a2
first pass at adding a privacy manifest
brainbicycle Mar 26, 2024
92c627b
missed type string
brainbicycle Mar 27, 2024
eadefd3
privacy report complaining about this key missing
brainbicycle Mar 27, 2024
339cab0
build: ignore android proguard rules file from build output
mym0404 Apr 1, 2024
515a72a
Merge pull request #343 from brainbicycle/brian/privacy-manifest
RonRadtke Apr 14, 2024
a6d1056
adds another reason for IOs privacyInfo for the Access to system stor…
Apr 14, 2024
a13343b
Merge pull request #344 from mym0404/master
RonRadtke Apr 14, 2024
3170c65
Merge pull request #341 from magicplan/use-content-resolver-for-conte…
RonRadtke Apr 14, 2024
059119d
applying manual changes for writeFile with content uri
Apr 14, 2024
4cc7be6
version
Apr 14, 2024
6bf635a
Update index.d.ts
hengkx Apr 19, 2024
98c8b87
Update ReactNativeBlobUtil.mm
Daniel528 Apr 24, 2024
f007969
fixed integer overflow
ISnowFoxI May 5, 2024
36bd359
Set url session task depending on backgroundTask value
utkuimd May 18, 2024
78c092d
Added didWriteData method for send progress data
utkuimd May 18, 2024
26b769d
Saved downloaded data on file manager
utkuimd May 18, 2024
ac1707c
Removed unused sendDeviceEventWithName
utkuimd May 18, 2024
fc7491e
Update README.md
santiagorobra May 28, 2024
7c3e8aa
process hashes in chunks on ios
sjchristi Jun 15, 2024
701efbf
cleanup
sjchristi Jun 15, 2024
ee787ce
properly handle empty data chunk
sjchristi Jun 15, 2024
4bb9ea7
memory retain issue fix
sjchristi Jun 16, 2024
a02d33d
Merge pull request #366 from santiagorobra/patch-2
RonRadtke Jun 22, 2024
aa61c9d
Merge pull request #340 from buschco/podspec-version-pin
RonRadtke Jun 22, 2024
69ddb09
Merge pull request #371 from iOverlander/master
RonRadtke Jun 23, 2024
9632d6a
Merge pull request #368 from utkuimd/ios-background
RonRadtke Jun 23, 2024
94304e4
Merge pull request #358 from ISnowFoxI/fix/integer-overflow
RonRadtke Jun 23, 2024
7b461f3
Merge pull request #352 from hengkx/master
RonRadtke Jun 23, 2024
ffb197f
Merge pull request #353 from Daniel528/ascii-readfile-fix
RonRadtke Jun 23, 2024
1caa1c6
version
Jul 21, 2024
f3ddf27
fixes #359
Jul 22, 2024
3dc719f
fixes #374
Jul 22, 2024
7e031f2
version
Jul 22, 2024
71a8fa3
introduces a new option for addAndroidDownloads to store downloaded f…
Jul 29, 2024
cb1303b
fix typing and new option
Jul 29, 2024
ba239e5
changed slice typing from void to string
ISnowFoxI Oct 7, 2024
1dec964
Merge pull request #386 from ISnowFoxI/master
RonRadtke Nov 3, 2024
2185bc5
Update ReactNativeBlobUtilPackage.java
javache Nov 22, 2024
07ac60c
Merge pull request #388 from javache/patch-1
RonRadtke Dec 2, 2024
39fc6d1
version
Dec 13, 2024
1cb6ef1
refactor(android): 移除不必要的日志输出
jeff-cc Dec 17, 2024
da89397
Merge pull request #396 from jeff-cc/master
RonRadtke Dec 17, 2024
f6404dc
remove logs
Dec 17, 2024
a1fe740
Tricking autolinking into discovering this lib again, even though we'…
Dec 18, 2024
e897de5
fix(Session): remove() method doesn't remove path from list
varemel Dec 25, 2024
79a9bb6
Merge pull request #398 from varemel/master
RonRadtke Dec 26, 2024
255c90f
Update README.md
henrique-c-ladeira Jan 13, 2025
f27d8d7
fix: 更新文档
Feb 28, 2025
26ce782
Revert "fix: 更新文档"
Feb 28, 2025
69d8376
docs: Update document
Feb 28, 2025
af49160
Merge pull request #406 from zrina1314/master
RonRadtke Mar 20, 2025
3cd2416
Merge pull request #400 from henrique-c-ladeira/master
RonRadtke Mar 20, 2025
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
790 changes: 790 additions & 0 deletions .editorconfig

Large diffs are not rendered by default.

56 changes: 56 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
module.exports = {
root: true,
extends: '@react-native-community',
rules: {
'prettier/prettier': 0,
"eqeqeq": 2,
"comma-dangle": 0,
curly: 0,
"no-console": 1,
"no-debugger": 1,
"no-extra-semi": 2,
"no-extra-parens": 1,
"no-extra-boolean-cast": 1,
"no-cond-assign": 2,
"no-irregular-whitespace": 2,
"no-undef": 0,
"no-unused-vars": 0,
"semi": 2,
"semi-spacing": 2,
"valid-jsdoc": [
1,
{
"requireReturn": false,
"requireParamDescription": false,
"requireReturnDescription": false
}
],
"radix": 0,

"react/display-name": 2,
"react/forbid-prop-types": 1,
"react/jsx-boolean-value": 1,
"react/jsx-closing-bracket-location": 1,
"react/jsx-curly-spacing": 1,
"react/jsx-indent-props": 0,
"react/jsx-max-props-per-line": 0,
"react/jsx-no-duplicate-props": 1,
"react/jsx-no-literals": 0,
"react/jsx-no-undef": 1,
"react/jsx-sort-props": 0,
"react/jsx-uses-react": 1,
"react/jsx-uses-vars": 1,
"react/jsx-wrap-multilines": 1,
"react/no-danger": 1,
"react/no-did-mount-set-state": 1,
"react/no-did-update-set-state": 1,
"react/no-direct-mutation-state": 1,
"react/no-multi-comp": 1,
"react/no-set-state": 0,
"react/no-unknown-property": 1,
"react/prop-types": 0,
"react/react-in-jsx-scope": 0,
"react/self-closing-comp": 1,
"react/sort-comp": 1,
},
};
36 changes: 36 additions & 0 deletions .github/workflows/npm_publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# This workflow will publish a package to npm when a release is created.
# https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages

# TODO: add tests or leave them out, add build steps...?

name: npm publish

on:
release:
types: [created]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
- run: npm ci
# - run: npm test

publish-npm:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
registry-url: https://registry.npmjs.org/
- run: npm ci
# - run: npm run build
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.npm_token}}
10 changes: 9 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.imdone
testconfig
RNFetchBlobTest/
ReactNativeBlobUtilTest/
test/test-server/public/*
!test/test-server/public/github.png

Expand All @@ -27,6 +27,13 @@ DerivedData
*.ipa
*.xcuserstate
project.xcworkspace
/iOS/pods
Podfile*
contents.xcworkspacedata

# VSCode
#
.vscode

# Android/IJ
#
Expand All @@ -44,3 +51,4 @@ buck-out/
\.buckd/
android/app/libs
android/keystores/debug.keystore
/ios/ReactNativeBlobUtil.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
90 changes: 90 additions & 0 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
# JS
node_modules
yarn.lock

# Project files
CONTRIBUTORS.md
CONTRIBUTING.md
CODE_OF_CONDUCT.md

# Config files
.babelrc
babel.config.js
.editorconfig
.eslintrc
.flowconfig
.watchmanconfig
jsconfig.json
.npmrc
.gitattributes
.circleci
*.coverage.json
.opensource
.circleci
.eslintignore
codecov.yml

# Example
img/
example/
examples/
app.json

# Android
android/*/build/
android/gradlew
android/build
android/gradlew.bat
android/gradle/
android/com_crashlytics_export_strings.xml
android/local.properties
android/.gradle/
android/.signing/
android/.idea/gradle.xml
android/.idea/libraries/
android/.idea/workspace.xml
android/.idea/tasks.xml
android/.idea/.name
android/.idea/compiler.xml
android/.idea/copyright/profiles_settings.xml
android/.idea/encodings.xml
android/.idea/misc.xml
android/.idea/modules.xml
android/.idea/scopes/scope_settings.xml
android/.idea/vcs.xml
android/*.iml
android/.settings
android/proguard-rules.pro

# iOS
ios/*.xcodeproj/xcuserdata
*.pbxuser
*.mode1v3
*.mode2v3
*.perspectivev3
*.xcuserstate
project.xcworkspace/
xcuserdata/
ios/build/

# Misc
.DS_Store
.DS_Store?
*.DS_Store
coverage.android.json
coverage.ios.json
coverage
npm-debug.log
.github
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.dbandroid/gradle
docs
.idea
tests/
bin/test.js
codorials
.vscode
.nyc_output
41 changes: 41 additions & 0 deletions Migration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Migration to the New Architecture

This file is a tracker for what has been done to work on the migration of this library and to keep also track of the various todo:

## TODO

- [] Write JS spec in Flow for the New Architecture
- [] Implent the new Native Code on iOS
- [] Implent the new Native Code on Android
- [] Test on OldArch app (iOS)
- [] Test on OldArch app (Android)
- [] Test on NewArch app (iOS)
- [] Test on NewArch app (Android)
- [] Open PR

## Done

### Setup
1. Forked and cloned the repo
1. Checked the list of APIs to migrate.
1. Created an `OldArch` app (0.70) configured for the Old Architecture.
1. Run the app to make sure that it works properly.
1. Created a `NewArch` app (0.70) configured for the New Architecture.
1. Switched the flags for iOS and Android to have the new arch enabled by default
1. Run the app to make sure that it works properly.
1. Moved the apps in the `examples` folder

### Installing blob-utils
1. Move to `OldArch`
1. Run `yarn add ../..` to install the blob utils.
1. `cd ios`
1. `bundle install && bundle exec pod install`
1. `cd ..`
1. `npx react-native run-ios`
1. Copy the app JS code from `examples/ReactNativeBlobUtil/App.js` to `examples/OldArch/App.js`
1. Fixed various JS issues
1. The app depends on the `Picker`. *Note:* It does not support the New Arch, we need to figure out another way to choose.
1. run `yarn add @react-native-picker/picker`
1. run `bundle exec pod install` from the iOS folder
1. re-run the app
1. Repeat the above steps for `NewArch`
Loading