Open joebernard opened 4 years ago
Thanks @joebernard! Are you seeing this locally in development during test or in production use?
@jpignata I've only been able to test in development so far but the previous time this happened it was affecting production too. This only started breaking again after upgrading to 4.0.0
. I tried rolling back but then started experiencing a different issue (#6145). I can't seem to get around that one either as it seems to persist through re-installs so I'm currently blocked.
Also here
Amplify updated to 3.3.10 and it worked
Interesting. Maybe this is only broken in the modular packages. Unfortunately I cannot easily convert.
I am not using modular packages, was on amplify 3.3.9 and encountered this issue. Updating to 3.3.10 did not resolve the issue.
Update: reverting to 3.3.8 resolved it for now.
Can we get an update on how to proceed now that we are stuck with this artificial endpoint limit? Are we expected to manually manage this limit within Pinpoint somehow? What was the rationale behind removing this functionality? This has become a huge blocker for my team.
Hi @joebernard - we're working on this with Pinpoint and will have more to share soon. Do you have anytime to chat tomorrow on discord perhaps? I'd like to learn more about the block and see if we can help. Happy Thanksgiving!
@jpignata That would be helpful. I can meet anytime between 9:00 AM and 2:00 PM ET Nov 27. Happy Thanksgiving to you as well.
@joebernard Are you ok if we resolve this issue? Just wanted to validate if there were any other issues you were facing after our conversation last week. Please let us know
Hi @sammartinez, thanks for asking. I would consider my case temporarily mitigated by rolling back, but the underlying issue re-introduced in @aws-amplify/analytics": "4.0.0"
is still a problem. We uninstall / re-install apps so often that we quickly hit that 10 endpoint limit. It could also affect our production users though it would be more of an edge case. With no way for us to manage endpoints, this issue effectively breaks push notifications.
To me, this is a showstopper that precludes us from upgrading to 4.0.0
and beyond. We're locked into specific versions and might not be able to benefit from future features or security patches. I feel we either need some mechanism to manually manage endpoints, automated management of endpoints in Amplify or (preferably) in Pinpoint, or other guidance that would allow us to continue staying current with Amplify packages while avoiding this issue.
I thought it worked but it was only in the web version. For some reason, my react native on android and ios has the pinpoint error.
Hi @sammartinez, thanks for asking. I would consider my case temporarily mitigated by rolling back, but the underlying issue re-introduced in
@aws-amplify/analytics": "4.0.0"
is still a problem. We uninstall / re-install apps so often that we quickly hit that 10 endpoint limit. It could also affect our production users though it would be more of an edge case. With no way for us to manage endpoints, this issue effectively breaks push notifications.
I believe new endpoints not only occur when you uninstall apps, but just by clearing local storage.
For us, our big concern is that iOS users will stop receiving push notifications as we can't update the endpoint with the address with the new token.
This is now the 5. incarnation of the very same topic. It seems this problem keeps popping up every other release. I guess it may be due to the fragile nature of the underlying code, where the returned message is string-checked to be starting with 'Exceeded maximum endpoint per user count' in AWSPinpointProvider.ts#461:
!String(message).startsWith('Exceeded maximum endpoint per user count')
A slight change of the message kills it, which already happened in the past.
Also OP seems absolutely right with his assumption that PR #7245 removed the clean-up of unused endpoints which worked perfectly before. How is this supposed to be handled?
Here's a manual workaround you can do using the CLI for each affected user:
in this example i found user 719f397f-c6a6-4598-b603-7cc4d9d17911 also use pinpoint console to look up your analytics application id.
aws --profile YourProfile pinpoint get-user-endpoints --user-id 719f397f-c6a6-4598-b603-7cc4d9d17911 --application-id daafcc04059a444aa9363e484113c189 { "EndpointsResponse": { "Item": [ { "ApplicationId": "daafcc04059a444aa9363e484113c189", "Attributes": {}, "CohortId ...
count them .. here i'm using jq
and wc
to count
➜ aws --profile YourProfile pinpoint get-user-endpoints --user-id 719f397f-c6a6-4598-b603-7cc4d9d17911 --application-id daafcc04059a444aa9363e484113c189| jq '.EndpointsResponse.Item[]|.Id' | wc 10 10 390
yup there are 10. so this user can't sign in due to this 10 endpoint restriction
3a. find the oldest ones. I scanned the list printed in step 2 and had manually found the newest endpoint creation date ('2020-12-18T19:45:48.212Z') to put in this expression:
aws --profile YourProfile pinpoint get-user-endpoints --user-id 719f397f-c6a6-4598-b603-7cc4d9d17911 --application-id daafcc04059a444aa9363e484113c189| jq '.EndpointsResponse.Item[]|select(.CreationDate | contains("2020-12-18T19:45:48.212Z") | not)|.Id'
"3aa4dc90-2501-11eb-a16e-99d12931a92e" "e5cd9240-276f-11eb-af3c-8130a9b73a99" "3f66e740-2dae-11eb-aae4-153b561a5e3b" "35b34700-2513-11eb-a296-0558d678e564" "7ddf5e70-29cc-11eb-bdbf-671aec7e1f1f" "94427fe0-3038-11eb-bf01-5b5367143dd5" "2cbe3c00-3296-11eb-a617-23713ff6a6ee" "50a2f3a0-357e-11eb-a551-958abb691880" "3928cc60-3964-11eb-9bc3-bdabe9b761f6"
aws --profile YourProfile pinpoint get-user-endpoints --user-id 719f397f-c6a6-4598-b603-7cc4d9d17911 --application-id daafcc04059a444aa9363e484113c189| jq '.EndpointsResponse.Item[]|select(.CreationDate | contains("2020-12-18T19:45:48.212Z") | not)|.Id' -r | xargs -n 1 aws --profile YourProfile pinpoint delete-endpoint --application-id daafcc04059a444aa9363e484113c189 --endpoint-id { "EndpointResponse": { / nine responses /
Receiving amplify security notification in AWS console but can't update due to this issue, we must stay on previous version otherwise user will eventually hit 10 endpoints and will no longer receive push notifications.
@sammartinez Has there been any progress on this "exceeded maximum endpoint per user" issue"?
@dylan-westbury Which version of aws-amplify
did you find avoids this issue? I'm using modules now but want to try that package instead.
Hi @joebernard
We upgraded aws-amplify and noticed this issue, so we downgraded back to the last working version we had within the app, which was:
"aws-amplify": "3.3.8",
We no longer received the "exceeded maximum endpoint per user" once we downgraded.
I've recently updated to aws-amplify@3.3.17
(linking to @aws-amplify/analytics@4.0.8
) and started having a similar errors showing in the console Exceeded maximum endpoint per user count: 15
.
Would be nice to get someone from the amplify team commenting on the issue. Is there any config change that we need to apply in order to resolve this? Or is it a bug that need to be reverted as per suggested in https://github.com/aws-amplify/amplify-cli/pull/5918?
Any news on this issue? We still suffer from this issue.
I've realized that this issue is a critical security vulnerability. The version of aws-amplify
that mitigates the Exceed maximum endpoint per user problem discussed in this issue is 3.3.8. That version of aws-amplify
exposes two security problems.
1) @aws-amplify/datastore
contains a dependency to immer@6.0.1
. That package contains an exploit documented in CVE-2020-28477.
2) @aws-amplify/api-rest
and @aws-amplify/storage
depend on axios@0.19.0
. The vulnerability in that package is documented in CVE-2020-28168.
The affected dependencies have been upgraded to patched versions in the latest release of @aws-amplify
, however we are stuck on 3.3.8 because of the endpoint issue.
@sammartinez This is a show-stopping issue for us. Can you please provide some update on progress and/or a mitigation strategy we can implement today?
I've realized that this issue is a critical security vulnerability. The version of
aws-amplify
that mitigates the Exceed maximum endpoint per user problem discussed in this issue is 3.3.8. That version ofaws-amplify
exposes two security problems.
@aws-amplify/datastore
contains a dependency toimmer@6.0.1
. That package contains an exploit documented in CVE-2020-28477.@aws-amplify/api-rest
and@aws-amplify/storage
depend onaxios@0.19.0
. The vulnerability in that package is documented in CVE-2020-28168.The affected dependencies have been upgraded to patched versions in the latest release of
@aws-amplify
, however we are stuck on 3.3.8 because of the endpoint issue.@sammartinez This is a show-stopping issue for us. Can you please provide some update on progress and/or a mitigation strategy we can implement today?
Hey @joebernard, thanks for this callout. I will work with the team on seeing about getting an update to version 3.3.8
to update these dependencies specifically. Our ETA for this is later today. I will let you know once we update the version with the callouts above. As for the update on the mitigation, we are working with the Pinpoint team on this and will provide a timeline once we have one for you.
Hey @joebernard
We just published a hotfix to npm, you can find it under these versions and the @prev-hotfixes
dist-tag:
- @aws-amplify/ui-angular@0.4.12-hotfix.0
- @aws-amplify/ui-components@0.9.4-hotfix.0
- @aws-amplify/ui-react@0.2.29-hotfix.0
- @aws-amplify/ui-vue@0.2.28-hotfix.0
- @aws-amplify/analytics@3.3.12-hotfix.0
- @aws-amplify/api-graphql@1.2.12-hotfix.0
- @aws-amplify/api-rest@1.2.12-hotfix.0
- @aws-amplify/api@3.2.12-hotfix.0
- @aws-amplify/auth@3.4.12-hotfix.0
- aws-amplify-angular@5.0.38-hotfix.0
- aws-amplify-react@4.2.13-hotfix.0
- aws-amplify@3.3.9-hotfix.0
- @aws-amplify/cache@3.1.37-hotfix.0
- @aws-amplify/core@3.8.4-hotfix.0
- @aws-amplify/datastore@2.7.4-hotfix.0
- @aws-amplify/interactions@3.3.12-hotfix.0
- @aws-amplify/predictions@3.2.12-hotfix.0
- @aws-amplify/pubsub@3.2.10-hotfix.0
- @aws-amplify/pushnotification@3.2.12-hotfix.0
- @aws-amplify/storage@3.3.12-hotfix.0
- @aws-amplify/xr@2.2.12-hotfix.0
Please let us know if you have any issues with these versions
Thanks! :D
Thanks @manueliglesias ! I will test this. I noticed the root version of the hotfix is 3.3.9. I'm on 3.3.8 right now, can you confirm this includes the 3.3.8 endpoint management discussed in this issue?
hey @joebernard
I can confirm this includes the endpoint management code.
You can also check by yourself with, e.g.
diff <(curl -s https://unpkg.com/@aws-amplify/analytics@3.3.12-hotfix.0/lib/Providers/AWSPinpointProvider.js) <(curl -s https://unpkg.com/@aws-amplify/analytics@4.0.9/lib/Providers/AWSPinpointProvider.js)
(This is comparing @aws-amplify/analytics@3.3.12-hotfix.0
and @aws-amplify/analytics@latest
)
Even the official doc has the same issue prompting in the console
Exceeded maximum endpoint per user count
All,
Just wanted to provide an update here to this issue. We are working internally with the Amazon Pinpoint team on this. While we are working on a solution, we may reach out to some of you to understand your use case more. Thank you for your patience on this!
Any update ?
Hi @sammartinez, any update? We are pending release with an app and are just waiting on this to be resolved.
Thanks
Same issue here, waiting for the fix to publish an app.
Hi @sammartinez,
It has been 5 months this issue has been open for, pretty much every single application that has aws-amplify installed with a version over 3.3.8+ will eventually have users no longer receive push notifications, I can imagine that could be thousands of projects.
For us we are currently waiting to release a new project because of this blocker and are also facing a fresh round of amplify / push notification problems with an update to an existing application.
When can we expect a resolution to this issue / stability to amplify push notifications?
@sammartinez Any idea when we will actually be able to use Pinpoint analytics in our Amplify apps?
Not only am I now stuck on this issue, I've also had to do some ridiculous workarounds to get Pinpoint working with Group based auth roles (Amplify CLI). It seems that the Amplify team has completely neglected the Pinpoint product within this stack as that group-based auth issue still isn't solved either...
https://github.com/aws-amplify/amplify-cli/issues/5004 https://github.com/aws-amplify/amplify-cli/issues/4772
Hello Everyone,
I wanted to provide an update here. We have been working with the Pinpoint team on resolving this issue. On the Pinpoint service, they are now detaching the oldest push endpoint from the user. @kylekirkby @joebernard @dylan-westbury Can you please try the latest of the Analytics category and validate you are not receiving the error? If you are, please share them so we can take any errors back to the Pinpoint team. Thanks again for being patience with us on this.
Thanks for the update @sammartinez!
Hello Everyone,
I wanted to provide an update here. We have been working with the Pinpoint team on resolving this issue. On the Pinpoint service, they are now detaching the oldest push endpoint from the user. @kylekirkby @joebernard @dylan-westbury Can you please try the latest of the Analytics category and validate you are not receiving the error? If you are, please share them so we can take any errors back to the Pinpoint team. Thanks again for being patience with us on this.
I'm still seeing the same errors on the doc site (https://docs.amplify.aws/). Is that relatable?
@dylan-westbury If you will be so kind to report back your result, I would highly appreciate it before I dip my feet into Pinpoint and gets hurt...
I would highly appreciate it before I dip my feet into Pinpoint and gets hurt...
@nubpro very wise! 😂
Thanks @sammartinez
One remaining question though: can you define "oldest endpoint"? Is that based on creation date or last seen date?
@nubpro Can you provide a screenshot of what you are seeing as of today. I see from last month the screenshot you provided, however; I am no longer seeing that specific error message on the docs site anymore. @BabyDino I am following up with the Pinpoint team on your question.
@BabyDino on your question, the Amazon Pinpoint team has let me know that it's based on the last active date they are using for the detach of unused endpoints
Hi @sammartinez,
I still see this error, we will still do more testing to see if pushes stop coming through
@aws-amplify/pushnotification: ^3.2.29 => 3.2.29
amazon-cognito-identity-js: ^4.4.0 => 4.6.0
aws-amplify: ^3.3.26 => 3.3.26
aws-amplify-react-native: ^4.3.2 => 4.3.2
aws-appsync: ^3.0.4 => 3.0.4
@nubpro Can you provide a screenshot of what you are seeing as of today. I see from last month the screenshot you provided, however; I am no longer seeing that specific error message on the docs site anymore. @BabyDino I am following up with the Pinpoint team on your question.
I'm still seeing the error on my side, what other information should I provide to debug this?
I am on 3.3.26, and as soon as I call Analytics.updateEndpoint post login, I run into this issue:
ERROR [ERROR] 53:35.387 AWSPinpointProvider - updateEndpoint failed [BadRequestException: Exceeded maximum endpoint per user count:15].
Any update? Estimated timeline? Thank you.
@sammartinez I updated to "aws-amplify": "3.3.27"
and am no longer able to reproduce this issue locally.
I installed and re-installed my React Native app onto a test device 15 times and called updateEndpoint
after each installation. Each time the result was SUCCESS. I also verified that I could receive a push notification on that device after 15 installation attempts.
I see that others are still running into this issue so I will keep it open and continue testing.
Soo whats the status on this? Is this fixed or partially fixed?
@sammartinez
@dylan-westbury and @sukrit007 can you both please provide your package.json
along with your environment settings?
Please use the follow command:
npx envinfo --system --binaries --browsers --npmPackages --npmGlobalPackages
I want to dig in on this further.
@nubpro, from the cleanup that the Amazon Pinpoint team is doing, this is fixed. I want to validate from the above why people are still seeing this. From what you shared in screenshots above for the docs site, I have those folks looking into this.
Thanks everyone!
@sammartinez
System:
OS: macOS 11.2.3
CPU: (12) x64 Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz
Memory: 2.10 GB / 16.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 12.16.3 - /usr/local/bin/node
Yarn: 1.19.1 - ~/.yarn/bin/yarn
npm: 7.5.4 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
Browsers:
Chrome: 90.0.4430.85
Edge: 90.0.818.49
Firefox: 81.0
Safari: 14.0.3
npmPackages:
@apollo/react-hooks: ^3.1.5 => 3.1.5
@aws-amplify/pushnotification: ^3.2.29 => 3.2.29
@babel/core: ^7.11.6 => 7.13.15
@babel/runtime: ^7.11.2 => 7.13.10
@react-native-async-storage/async-storage: ^1.15.2 => 1.15.2
@react-native-community/clipboard: ^1.2.3 => 1.5.1
@react-native-community/eslint-config: ^1.1.0 => 1.1.0
@react-native-community/masked-view: ^0.1.10 => 0.1.10
@react-native-community/netinfo: ^5.9.7 => 5.9.10
@react-native-community/progress-bar-android: ^1.0.3 => 1.0.4
@react-native-community/progress-view: ^1.1.1 => 1.2.4
@react-native-community/push-notification-ios: 1.5.0 => 1.5.0
@react-navigation/native: ^5.7.3 => 5.9.4
@react-navigation/stack: ^5.9.0 => 5.14.4
amazon-cognito-identity-js: ^4.4.0 => 4.6.0
apollo-client: ^2.6.10 => 2.6.10
aws-amplify: ^3.3.26 => 3.3.26
aws-amplify-react-native: ^4.3.2 => 4.3.2
aws-appsync: ^3.0.4 => 3.0.4
babel-jest: ^26.3.0 => 26.6.3
buffer: ^5.6.0 => 5.7.1
eslint: ^7.9.0 => 7.24.0
graphql: ^15.3.0 => 15.5.0
graphql-tag: ^2.11.0 => 2.11.0
jest: ^26.4.2 => 26.6.3
jetifier: ^1.6.6 => 1.6.6
lodash: ^4.17.20 => 4.17.21
metro-react-native-babel-preset: ^0.59.0 => 0.59.0
moment: ^2.28.0 => 2.29.1
prop-types: ^15.7.2 => 15.7.2
react: 16.13.1 => 16.13.1
react-apollo: ^3.1.5 => 3.1.5
react-hook-form: ^5.7.2 => 5.7.2
react-native: 0.63.2 => 0.63.2
react-native-animatable: ^1.3.3 => 1.3.3
react-native-background-upload: ^6.2.0 => 6.2.0
react-native-bootsplash: ^3.2.1 => 3.2.1
react-native-camera: ^3.40.0 => 3.43.5
react-native-elements: ^2.3.2 => 2.3.2
react-native-fs: ^2.16.6 => 2.17.0
react-native-gesture-handler: ^1.8.0 => 1.10.3
react-native-get-random-values: ^1.5.0 => 1.7.0
react-native-image-crop-picker: ^0.35.0 => 0.35.3
react-native-inappbrowser-reborn: ^3.4.0 => 3.5.1
react-native-linear-gradient: ^2.5.6 => 2.5.6
react-native-mime-types: ^2.3.0 => 2.3.0
react-native-modal: ^11.5.6 => 11.10.0
react-native-pdf: ^6.2.0 => 6.3.0
react-native-permissions: ^3.0.0 => 3.0.1
react-native-progress: ^4.1.2 => 4.1.2
react-native-reanimated: ^1.13.0 => 1.13.3
react-native-safe-area-context: ^1.0.2 => 1.0.2
react-native-screens: ^2.11.0 => 2.18.1
react-native-share: ^3.8.3 => 3.8.5
react-native-snap-carousel: ^3.9.1 => 3.9.1
react-native-tab-view: ^2.15.1 => 2.16.0
react-native-vector-icons: ^7.1.0 => 7.1.0
react-native-video: ^5.1.0-alpha8 => 5.1.1
react-redux: ^7.2.1 => 7.2.3
react-test-renderer: 16.11.0 => 16.11.0
redux: ^4.0.5 => 4.0.5
redux-logger: ^3.0.6 => 3.0.6
redux-persist: ^6.0.0 => 6.0.0
redux-saga: ^1.1.3 => 1.1.3
rn-fetch-blob: ^0.12.0 => 0.12.0
uuid: ^8.3.0 => 8.3.2
npmGlobalPackages:
@angular/cli: 7.1.1
@aws-amplify/cli: 4.46.1
@types/node: 8.10.28
ajv: 5.5.2
amplify: 0.0.11
ansi-regex: 2.1.1
ansi-styles: 2.2.1
array-find-index: 1.0.2
asn1: 0.2.4
assert-plus: 1.0.0
asynckit: 0.4.0
aws-amplify: 3.3.13
aws-sign2: 0.7.0
aws4: 1.8.0
awsmobile-cli: 1.1.5
babel-code-frame: 6.26.0
babel-core: 6.26.3
babel-generator: 6.26.1
babel-helpers: 6.24.1
babel-messages: 6.23.0
babel-register: 6.26.0
babel-runtime: 6.26.0
babel-template: 6.26.0
babel-traverse: 6.26.0
babel-types: 6.26.0
babylon: 6.18.0
balanced-match: 1.0.0
bcrypt-pbkdf: 1.0.2
brace-expansion: 1.1.11
buffer-from: 1.1.1
builtin-modules: 1.1.1
camelcase-keys: 2.1.0
camelcase: 2.1.1
caseless: 0.12.0
chalk: 1.1.3
co: 4.6.0
code-point-at: 1.1.0
combined-stream: 1.0.6
concat-map: 0.0.1
concat-stream: 1.6.2
convert-source-map: 1.7.0
cordova-res: 0.6.0
cordova: 8.1.1
core-js: 2.6.11
core-util-is: 1.0.2
create-react-native-app: 1.0.0
currently-unhandled: 0.4.1
dashdash: 1.14.1
debug: 2.6.9
decamelize: 1.2.0
deep-extend: 0.6.0
delayed-stream: 1.0.0
detect-indent: 4.0.0
ecc-jsbn: 0.1.2
electron-download: 3.3.0
electron-prebuilt: 1.4.13
electron: 4.1.1
error-ex: 1.3.2
es6-promise: 4.2.4
escape-string-regexp: 1.0.5
esutils: 2.0.3
expo-cli: 3.20.9
extend: 3.0.2
extract-zip: 1.6.7
extsprintf: 1.3.0
fast-deep-equal: 1.1.0
fast-json-stable-stringify: 2.0.0
fd-slicer: 1.0.1
find-up: 1.1.2
forever-agent: 0.6.1
form-data: 2.3.2
fs-extra: 0.30.0
fs.realpath: 1.0.0
get-stdin: 4.0.1
getpass: 0.1.7
glob: 7.1.3
global: 4.3.2
globals: 9.18.0
graceful-fs: 4.1.11
gulp-cli: 2.0.1
gulp: 4.0.2
har-schema: 2.0.0
har-validator: 5.1.0
has-ansi: 2.0.0
home-or-tmp: 2.0.0
home-path: 1.0.6
hosted-git-info: 2.7.1
http-signature: 1.2.0
indent-string: 2.1.0
inflight: 1.0.6
inherits: 2.0.3
ini: 1.3.5
invariant: 2.2.4
ionic: 5.4.1
ios-sim: 8.0.0
is-arrayish: 0.2.1
is-builtin-module: 1.0.0
is-finite: 1.0.2
is-fullwidth-code-point: 1.0.0
is-typedarray: 1.0.0
is-utf8: 0.2.1
isstream: 0.1.2
js-tokens: 3.0.2
jsbn: 0.1.1
jsesc: 1.3.0
json-schema-traverse: 0.3.1
json-schema: 0.2.3
json-stringify-safe: 5.0.1
json5: 0.5.1
jsonfile: 2.4.0
jsprim: 1.4.1
klaw: 1.3.1
load-json-file: 1.1.0
lodash: 4.17.15
loose-envify: 1.4.0
loud-rejection: 1.6.0
map-obj: 1.0.1
meow: 3.7.0
mime-db: 1.36.0
mime-types: 2.1.20
minimatch: 3.0.4
minimist: 1.2.0
mkdirp: 0.5.1
ms: 2.0.0
native-run: 0.2.7
normalize-package-data: 2.4.0
npm: 7.5.4
npx: 10.2.2
nugget: 2.0.1
number-is-nan: 1.0.1
oauth-sign: 0.9.0
object-assign: 4.1.1
object-keys: 0.4.0
once: 1.4.0
os-homedir: 1.0.2
os-tmpdir: 1.0.2
parse-json: 2.2.0
path-exists: 2.1.0
path-is-absolute: 1.0.1
path-type: 1.1.0
pend: 1.2.0
performance-now: 2.1.0
pify: 2.3.0
pinkie-promise: 2.0.1
pinkie: 2.0.4
pretty-bytes: 1.0.4
private: 0.1.8
process-nextick-args: 2.0.0
progress-stream: 1.2.0
psl: 1.1.29
punycode: 1.4.1
qs: 6.5.2
rc: 1.2.8
react-native-cli: 2.0.1
react-native-git-upgrade: 0.2.7
react-native: 0.59.4
read-pkg-up: 1.0.1
read-pkg: 1.1.0
redent: 1.0.0
regenerator-runtime: 0.11.1
repeating: 2.0.1
request: 2.88.0
safe-buffer: 5.1.2
safer-buffer: 2.1.2
sass-lint: 1.12.1
semver: 5.5.1
serve: 11.3.2
serverless: 1.30.1
signal-exit: 3.0.2
single-line-log: 1.1.2
slash: 1.0.0
source-map-support: 0.4.18
source-map: 0.5.7
spdx-correct: 3.0.0
spdx-exceptions: 2.1.0
spdx-expression-parse: 3.0.0
spdx-license-ids: 3.0.0
speedometer: 0.1.4
sshpk: 1.14.2
string-width: 1.0.2
strip-ansi: 3.0.1
strip-bom: 2.0.0
strip-indent: 1.0.1
strip-json-comments: 2.0.1
sumchecker: 1.3.1
supports-color: 2.0.0
throttleit: 0.0.2
through2: 0.2.3
to-fast-properties: 1.0.3
tough-cookie: 2.4.3
trim-newlines: 1.0.0
trim-right: 1.0.1
tunnel-agent: 0.6.0
tweetnacl: 0.14.5
typedarray: 0.0.6
util-deprecate: 1.0.2
uuid: 3.3.2
validate-npm-package-license: 3.0.4
verror: 1.10.0
wrappy: 1.0.2
xcode: 1.0.0
xtend: 2.1.2
yarn: 1.16.0
yauzl: 2.4.1
@sammartinez
System:
OS: macOS 11.2.3
CPU: (12) x64 Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz
Memory: 2.10 GB / 16.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 12.16.3 - /usr/local/bin/node
Yarn: 1.19.1 - ~/.yarn/bin/yarn
npm: 7.5.4 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
Browsers:
Chrome: 90.0.4430.85
Edge: 90.0.818.49
Firefox: 81.0
Safari: 14.0.3
npmPackages:
@apollo/react-hooks: ^3.1.5 => 3.1.5
@aws-amplify/pushnotification: ^3.2.29 => 3.2.29
@babel/core: ^7.11.6 => 7.13.15
@babel/runtime: ^7.11.2 => 7.13.10
@react-native-async-storage/async-storage: ^1.15.2 => 1.15.2
@react-native-community/clipboard: ^1.2.3 => 1.5.1
@react-native-community/eslint-config: ^1.1.0 => 1.1.0
@react-native-community/masked-view: ^0.1.10 => 0.1.10
@react-native-community/netinfo: ^5.9.7 => 5.9.10
@react-native-community/progress-bar-android: ^1.0.3 => 1.0.4
@react-native-community/progress-view: ^1.1.1 => 1.2.4
@react-native-community/push-notification-ios: 1.5.0 => 1.5.0
@react-navigation/native: ^5.7.3 => 5.9.4
@react-navigation/stack: ^5.9.0 => 5.14.4
amazon-cognito-identity-js: ^4.4.0 => 4.6.0
apollo-client: ^2.6.10 => 2.6.10
aws-amplify: ^3.3.26 => 3.3.26
aws-amplify-react-native: ^4.3.2 => 4.3.2
aws-appsync: ^3.0.4 => 3.0.4
babel-jest: ^26.3.0 => 26.6.3
buffer: ^5.6.0 => 5.7.1
eslint: ^7.9.0 => 7.24.0
graphql: ^15.3.0 => 15.5.0
graphql-tag: ^2.11.0 => 2.11.0
jest: ^26.4.2 => 26.6.3
jetifier: ^1.6.6 => 1.6.6
lodash: ^4.17.20 => 4.17.21
metro-react-native-babel-preset: ^0.59.0 => 0.59.0
moment: ^2.28.0 => 2.29.1
prop-types: ^15.7.2 => 15.7.2
react: 16.13.1 => 16.13.1
react-apollo: ^3.1.5 => 3.1.5
react-hook-form: ^5.7.2 => 5.7.2
react-native: 0.63.2 => 0.63.2
react-native-animatable: ^1.3.3 => 1.3.3
react-native-background-upload: ^6.2.0 => 6.2.0
react-native-bootsplash: ^3.2.1 => 3.2.1
react-native-camera: ^3.40.0 => 3.43.5
react-native-elements: ^2.3.2 => 2.3.2
react-native-fs: ^2.16.6 => 2.17.0
react-native-gesture-handler: ^1.8.0 => 1.10.3
react-native-get-random-values: ^1.5.0 => 1.7.0
react-native-image-crop-picker: ^0.35.0 => 0.35.3
react-native-inappbrowser-reborn: ^3.4.0 => 3.5.1
react-native-linear-gradient: ^2.5.6 => 2.5.6
react-native-mime-types: ^2.3.0 => 2.3.0
react-native-modal: ^11.5.6 => 11.10.0
react-native-pdf: ^6.2.0 => 6.3.0
react-native-permissions: ^3.0.0 => 3.0.1
react-native-progress: ^4.1.2 => 4.1.2
react-native-reanimated: ^1.13.0 => 1.13.3
react-native-safe-area-context: ^1.0.2 => 1.0.2
react-native-screens: ^2.11.0 => 2.18.1
react-native-share: ^3.8.3 => 3.8.5
react-native-snap-carousel: ^3.9.1 => 3.9.1
react-native-tab-view: ^2.15.1 => 2.16.0
react-native-vector-icons: ^7.1.0 => 7.1.0
react-native-video: ^5.1.0-alpha8 => 5.1.1
react-redux: ^7.2.1 => 7.2.3
react-test-renderer: 16.11.0 => 16.11.0
redux: ^4.0.5 => 4.0.5
redux-logger: ^3.0.6 => 3.0.6
redux-persist: ^6.0.0 => 6.0.0
redux-saga: ^1.1.3 => 1.1.3
rn-fetch-blob: ^0.12.0 => 0.12.0
uuid: ^8.3.0 => 8.3.2
npmGlobalPackages:
@angular/cli: 7.1.1
@aws-amplify/cli: 4.46.1
@types/node: 8.10.28
ajv: 5.5.2
amplify: 0.0.11
ansi-regex: 2.1.1
ansi-styles: 2.2.1
array-find-index: 1.0.2
asn1: 0.2.4
assert-plus: 1.0.0
asynckit: 0.4.0
aws-amplify: 3.3.13
aws-sign2: 0.7.0
aws4: 1.8.0
awsmobile-cli: 1.1.5
babel-code-frame: 6.26.0
babel-core: 6.26.3
babel-generator: 6.26.1
babel-helpers: 6.24.1
babel-messages: 6.23.0
babel-register: 6.26.0
babel-runtime: 6.26.0
babel-template: 6.26.0
babel-traverse: 6.26.0
babel-types: 6.26.0
babylon: 6.18.0
balanced-match: 1.0.0
bcrypt-pbkdf: 1.0.2
brace-expansion: 1.1.11
buffer-from: 1.1.1
builtin-modules: 1.1.1
camelcase-keys: 2.1.0
camelcase: 2.1.1
caseless: 0.12.0
chalk: 1.1.3
co: 4.6.0
code-point-at: 1.1.0
combined-stream: 1.0.6
concat-map: 0.0.1
concat-stream: 1.6.2
convert-source-map: 1.7.0
cordova-res: 0.6.0
cordova: 8.1.1
core-js: 2.6.11
core-util-is: 1.0.2
create-react-native-app: 1.0.0
currently-unhandled: 0.4.1
dashdash: 1.14.1
debug: 2.6.9
decamelize: 1.2.0
deep-extend: 0.6.0
delayed-stream: 1.0.0
detect-indent: 4.0.0
ecc-jsbn: 0.1.2
electron-download: 3.3.0
electron-prebuilt: 1.4.13
electron: 4.1.1
error-ex: 1.3.2
es6-promise: 4.2.4
escape-string-regexp: 1.0.5
esutils: 2.0.3
expo-cli: 3.20.9
extend: 3.0.2
extract-zip: 1.6.7
extsprintf: 1.3.0
fast-deep-equal: 1.1.0
fast-json-stable-stringify: 2.0.0
fd-slicer: 1.0.1
find-up: 1.1.2
forever-agent: 0.6.1
form-data: 2.3.2
fs-extra: 0.30.0
fs.realpath: 1.0.0
get-stdin: 4.0.1
getpass: 0.1.7
glob: 7.1.3
global: 4.3.2
globals: 9.18.0
graceful-fs: 4.1.11
gulp-cli: 2.0.1
gulp: 4.0.2
har-schema: 2.0.0
har-validator: 5.1.0
has-ansi: 2.0.0
home-or-tmp: 2.0.0
home-path: 1.0.6
hosted-git-info: 2.7.1
http-signature: 1.2.0
indent-string: 2.1.0
inflight: 1.0.6
inherits: 2.0.3
ini: 1.3.5
invariant: 2.2.4
ionic: 5.4.1
ios-sim: 8.0.0
is-arrayish: 0.2.1
is-builtin-module: 1.0.0
is-finite: 1.0.2
is-fullwidth-code-point: 1.0.0
is-typedarray: 1.0.0
is-utf8: 0.2.1
isstream: 0.1.2
js-tokens: 3.0.2
jsbn: 0.1.1
jsesc: 1.3.0
json-schema-traverse: 0.3.1
json-schema: 0.2.3
json-stringify-safe: 5.0.1
json5: 0.5.1
jsonfile: 2.4.0
jsprim: 1.4.1
klaw: 1.3.1
load-json-file: 1.1.0
lodash: 4.17.15
loose-envify: 1.4.0
loud-rejection: 1.6.0
map-obj: 1.0.1
meow: 3.7.0
mime-db: 1.36.0
mime-types: 2.1.20
minimatch: 3.0.4
minimist: 1.2.0
mkdirp: 0.5.1
ms: 2.0.0
native-run: 0.2.7
normalize-package-data: 2.4.0
npm: 7.5.4
npx: 10.2.2
nugget: 2.0.1
number-is-nan: 1.0.1
oauth-sign: 0.9.0
object-assign: 4.1.1
object-keys: 0.4.0
once: 1.4.0
os-homedir: 1.0.2
os-tmpdir: 1.0.2
parse-json: 2.2.0
path-exists: 2.1.0
path-is-absolute: 1.0.1
path-type: 1.1.0
pend: 1.2.0
performance-now: 2.1.0
pify: 2.3.0
pinkie-promise: 2.0.1
pinkie: 2.0.4
pretty-bytes: 1.0.4
private: 0.1.8
process-nextick-args: 2.0.0
progress-stream: 1.2.0
psl: 1.1.29
punycode: 1.4.1
qs: 6.5.2
rc: 1.2.8
react-native-cli: 2.0.1
react-native-git-upgrade: 0.2.7
react-native: 0.59.4
read-pkg-up: 1.0.1
read-pkg: 1.1.0
redent: 1.0.0
regenerator-runtime: 0.11.1
repeating: 2.0.1
request: 2.88.0
safe-buffer: 5.1.2
safer-buffer: 2.1.2
sass-lint: 1.12.1
semver: 5.5.1
serve: 11.3.2
serverless: 1.30.1
signal-exit: 3.0.2
single-line-log: 1.1.2
slash: 1.0.0
source-map-support: 0.4.18
source-map: 0.5.7
spdx-correct: 3.0.0
spdx-exceptions: 2.1.0
spdx-expression-parse: 3.0.0
spdx-license-ids: 3.0.0
speedometer: 0.1.4
sshpk: 1.14.2
string-width: 1.0.2
strip-ansi: 3.0.1
strip-bom: 2.0.0
strip-indent: 1.0.1
strip-json-comments: 2.0.1
sumchecker: 1.3.1
supports-color: 2.0.0
throttleit: 0.0.2
through2: 0.2.3
to-fast-properties: 1.0.3
tough-cookie: 2.4.3
trim-newlines: 1.0.0
trim-right: 1.0.1
tunnel-agent: 0.6.0
tweetnacl: 0.14.5
typedarray: 0.0.6
util-deprecate: 1.0.2
uuid: 3.3.2
validate-npm-package-license: 3.0.4
verror: 1.10.0
wrappy: 1.0.2
xcode: 1.0.0
xtend: 2.1.2
yarn: 1.16.0
yauzl: 2.4.1
Do we have to do anything to enable the pinpoint fix? Or should it be happening automatically on the pinpoint side? I got this error less than 3 minutes ago, so I assume it is not happening on the pinpoint side....would be helpful to know if we can verify anything on our side if you guys think it should be fixed....
@sammartinez I have been seeing this problem reliably in the iOS simulator after 15+ installs with "aws-amplify": "3.3.27"
. This does not seem to have been resolved with the latest update.
[ERROR] 27:15.659 AWSPinpointProvider - updateEndpoint failed BadRequestException: Exceeded maximum endpoint per user count'
Describe the bug After upgrading to
"@aws-amplify/analytics": "^4.0.0"
push notifications have stopped working. I can no longer update endpoints. This was originally solved in #5423 but seems to have reappeared recently. Possibly related to the merge in #7245 .To Reproduce Install the app on a device more than 10 times.
Expected behavior Amplify should clear old endpoints as mentioned in the docs.
Environment
``` System: OS: macOS 10.15.7 CPU: (12) x64 Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz Memory: 208.17 MB / 32.00 GB Shell: 3.2.57 - /bin/bash Binaries: Node: 14.2.0 - ~/.nvm/versions/node/v14.2.0/bin/node Yarn: 1.22.5 - /usr/local/bin/yarn npm: 6.14.8 - ~/.nvm/versions/node/v14.2.0/bin/npm Watchman: 4.9.0 - /usr/local/bin/watchman Browsers: Chrome: 86.0.4240.198 Firefox: 82.0.3 Safari: 14.0 npmPackages: @apollo/client: ^3.2.7 => 3.2.7 @aws-amplify/analytics: ^4.0.0 => 4.0.0 @aws-amplify/auth: ^3.4.12 => 3.4.12 @aws-amplify/cache: ^3.1.37 => 3.1.37 @aws-amplify/core: ^3.8.4 => 3.8.4 @aws-amplify/storage: ^3.3.12 => 3.3.12 @babel/core: ^7.8.4 => 7.11.6 @babel/runtime: ^7.8.4 => 7.9.2 @bugsnag/react-native: ^7.5.2 => 7.5.2 @expo/react-native-action-sheet: ^3.8.0 => 3.8.0 @react-native-community/art: ^1.2.0 => 1.2.0 @react-native-community/async-storage: ^1.12.1 => 1.12.1 @react-native-community/eslint-config: ^1.1.0 => 1.1.0 @react-native-community/masked-view: ^0.1.10 => 0.1.10 @react-native-community/netinfo: ^5.9.7 => 5.9.7 @react-native-community/picker: ^1.8.1 => 1.8.1 @react-native-community/push-notification-ios: 1.7.3 => 1.7.3 @types/react: 16.9.56 => 16.9.56 amazon-cognito-identity-js: ^4.5.5 => 4.5.5 apollo-link-retry: ^2.2.16 => 2.2.16 appcenter: 3.1.2 => 3.1.2 appcenter-analytics: 3.1.2 => 3.1.2 appcenter-crashes: 3.1.2 => 3.1.2 aws-appsync-auth-link: ^3.0.2 => 3.0.2 aws-appsync-subscription-link: ^3.0.3 => 3.0.3 babel-jest: ^25.1.0 => 25.5.1 eslint: ^6.5.1 => 6.8.0 exponential-backoff: ^3.1.0 => 3.1.0 graphql: 15.4.0 => 15.4.0 jest: ^25.1.0 => 25.5.4 lodash.debounce: ^4.0.8 => 4.0.8 lodash.throttle: ^4.1.1 => 4.1.1 metro-react-native-babel-preset: ^0.59.0 => 0.59.0 moment: ^2.29.1 => 2.29.1 moment-timezone: ^0.5.32 => 0.5.32 prop-types: ^15.7.2 => 15.7.2 react: 16.13.1 => 16.13.1 react-dom: ^16.12.0 => 16.13.1 react-native: 0.63.3 => 0.63.3 react-native-animatable: ^1.3.3 => 1.3.3 react-native-camera: 3.40.0 => 3.40.0 react-native-code-push: ^6.4.0 => 6.4.0 react-native-config: 1.4.0 => 1.4.0 react-native-country-picker-modal: ^2.0.0 => 2.0.0 react-native-device-info: ^7.1.0 => 7.1.0 react-native-fast-image: ^8.3.4 => 8.3.4 react-native-fs: ^2.16.6 => 2.16.6 react-native-gesture-handler: ^1.8.0 => 1.8.0 react-native-get-random-values: ^1.5.0 => 1.5.0 react-native-haptic-feedback: ^1.11.0 => 1.11.0 react-native-orientation-locker: ^1.2.0 => 1.2.0 react-native-permissions: ^2.2.2 => 2.2.2 react-native-progress: ^4.1.2 => 4.1.2 react-native-reanimated: ^1.13.2 => 1.13.2 react-native-root-toast: ^3.2.1 => 3.2.1 react-native-safe-area-context: ^3.1.9 => 3.1.9 react-native-safe-area-view: ^2.0.0 => 2.0.0 react-native-screens: ^2.15.0 => 2.15.0 react-native-share: 4.1.0 => 4.1.0 react-native-svg: ^12.1.0 => 12.1.0 => 0.3.4 react-native-tab-view: ^2.15.2 => 2.15.2 react-native-vector-icons: 7.1.0 => 7.1.0 react-native-video: ^5.1.0-alpha8 => 5.1.0-alpha8 react-native-webview: ^10.10.2 => 10.10.2 react-navigation: ^4.4.3 => 4.4.3 react-navigation-props-mapper: ^1.0.0 => 1.0.4 react-navigation-stack: ^2.10.1 => 2.10.1 react-navigation-tabs: ^2.10.1 => 2.10.1 react-test-renderer: 16.13.1 => 16.13.1 uuid: ^8.3.1 => 8.3.1 npmGlobalPackages: @aws-amplify/cli: 4.32.1 appcenter-cli: 2.7.2 gatsby-cli: 2.14.0 lerna: 3.22.1 npm: 6.14.8 serverless: 2.11.1 typescript: 3.9.6 ```Additional context May be related to #7245