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

feat(mentions): add callID for OnChangeText #3806

Merged
merged 4 commits into from
Sep 19, 2024

Conversation

qfrank
Copy link
Contributor

@qfrank qfrank commented Jul 26, 2023

relate mobile PR1 PR2

@qfrank qfrank requested review from vkjr and flexsurfer July 26, 2023 02:35
@qfrank qfrank self-assigned this Jul 26, 2023
@qfrank qfrank requested review from ilmotta and Samyoul July 26, 2023 02:36
@qfrank qfrank force-pushed the fix/issue-relate-to-mobile-pr-16330-2 branch from 76e0d00 to 0b585ed Compare July 26, 2023 02:37
@status-im-auto
Copy link
Member

status-im-auto commented Jul 26, 2023

Jenkins Builds

Click to see older builds (45)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 76e0d00 #1 2023-07-26 02:38:32 ~3 min linux 📦zip
✔️ 76e0d00 #1 2023-07-26 02:40:01 ~4 min ios 📦zip
✔️ 76e0d00 #1 2023-07-26 02:40:07 ~4 min android 📦aar
✔️ 76e0d00 #1 2023-07-26 02:56:52 ~21 min tests 📄log
✔️ 0b585ed #2 2023-07-26 02:40:09 ~1 min linux 📦zip
✔️ ae35834 #3 2023-07-26 02:43:11 ~2 min linux 📦zip
✔️ ae35834 #2 2023-07-26 02:43:25 ~3 min ios 📦zip
✔️ ae35834 #2 2023-07-26 02:44:56 ~4 min android 📦aar
✔️ ae35834 #2 2023-07-26 03:15:05 ~18 min tests 📄log
✔️ ba275ef #4 2023-07-26 03:02:45 ~1 min linux 📦zip
✔️ ba275ef #3 2023-07-26 03:03:13 ~1 min android 📦aar
✔️ ba275ef #3 2023-07-26 03:04:23 ~2 min ios 📦zip
✔️ ba275ef #3 2023-07-26 03:30:37 ~15 min tests 📄log
✔️ 0d85bf2 #5 2023-07-26 12:25:36 ~1 min linux 📦zip
✔️ 0d85bf2 #4 2023-07-26 12:26:15 ~2 min android 📦aar
✔️ 0d85bf2 #4 2023-07-26 12:27:35 ~3 min ios 📦zip
✔️ 0d85bf2 #4 2023-07-26 12:40:44 ~16 min tests 📄log
✔️ 79aeba7 #6 2023-07-28 02:51:10 ~1 min linux 📦zip
✔️ 79aeba7 #5 2023-07-28 02:51:42 ~2 min android 📦aar
✖️ 79aeba7 #5 2023-07-28 02:52:13 ~2 min tests 📄log
✔️ 79aeba7 #5 2023-07-28 02:53:18 ~3 min ios 📦zip
✔️ 9d36da0 #7 2023-07-28 05:56:11 ~1 min linux 📦zip
✔️ 9d36da0 #6 2023-07-28 05:56:29 ~1 min android 📦aar
✔️ 9d36da0 #6 2023-07-28 05:58:31 ~3 min ios 📦zip
✔️ 9d36da0 #6 2023-07-28 06:19:32 ~24 min tests 📄log
✖️ 53d2c03 #7 2024-09-04 06:31:20 ~1 min tests 📄log
✔️ 53d2c03 #1 2024-09-04 06:32:50 ~2 min tests-rpc 📄log
✔️ 53d2c03 #8 2024-09-04 06:34:16 ~4 min linux 📦zip
✔️ 53d2c03 #7 2024-09-04 06:34:53 ~4 min ios 📦zip
✔️ 53d2c03 #7 2024-09-04 06:35:33 ~5 min android 📦aar
✔️ 0210a02 #2 2024-09-04 06:37:03 ~2 min tests-rpc 📄log
✔️ 0210a02 #8 2024-09-04 06:37:25 ~1 min android 📦aar
✔️ 0210a02 #8 2024-09-04 06:38:20 ~2 min ios 📦zip
✔️ 0210a02 #9 2024-09-04 06:38:41 ~3 min linux 📦zip
✔️ 0210a02 #8 2024-09-04 07:06:43 ~31 min tests 📄log
✔️ a1010b3 #3 2024-09-12 00:06:46 ~2 min tests-rpc 📄log
✔️ a1010b3 #10 2024-09-12 00:08:14 ~3 min linux 📦zip
✔️ a1010b3 #9 2024-09-12 00:09:11 ~4 min android 📦aar
✔️ a1010b3 #9 2024-09-12 00:10:37 ~6 min ios 📦zip
✔️ a1010b3 #9 2024-09-12 00:36:58 ~32 min tests 📄log
✔️ b2c2e40 #4 2024-09-17 23:37:31 ~2 min tests-rpc 📄log
✔️ b2c2e40 #11 2024-09-17 23:38:58 ~3 min linux 📦zip
✔️ b2c2e40 #10 2024-09-17 23:39:50 ~4 min android 📦aar
✔️ b2c2e40 #10 2024-09-17 23:40:56 ~5 min ios 📦zip
✔️ b2c2e40 #10 2024-09-18 00:08:57 ~33 min tests 📄log
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ cab93fa #11 2024-09-19 03:48:51 ~2 min android 📦aar
✔️ cab93fa #12 2024-09-19 03:48:58 ~2 min linux 📦zip
✔️ cab93fa #5 2024-09-19 03:49:03 ~2 min tests-rpc 📄log
✔️ cab93fa #11 2024-09-19 03:51:50 ~5 min ios 📦zip
✔️ cab93fa #11 2024-09-19 04:18:13 ~31 min tests 📄log
✔️ 3f8962b #12 2024-09-19 03:54:34 ~1 min android 📦aar
✔️ 3f8962b #13 2024-09-19 03:54:53 ~1 min linux 📦zip
✔️ 3f8962b #6 2024-09-19 03:55:11 ~2 min tests-rpc 📄log
✔️ 3f8962b #12 2024-09-19 03:57:41 ~4 min ios 📦zip
✔️ 3f8962b #12 2024-09-19 04:50:22 ~31 min tests 📄log

Copy link
Contributor

@ilmotta ilmotta left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Interestingly @vkjr @qfrank, I solved a similar problem at the re-frame event layer for generating link previews. Basically, by the time any re-frame event is dispatched, it is processed asynchronously in an event queue, and by the time status-go response arrives to the client, new events may have been dispatched already.

So in effect, the pattern I used is a known one, which is to use a unique request ID to allow event de-duplication. The client only changes the application state (aka app-db) if the response ID is the same as the originating request ID. One difference is that I used a UUID to generate unique request IDs.

If you are curious, here's how I implemented this (very roughly I must say) in status-mobile https://github.com/status-im/status-mobile/blob/238e35a281a108ec2cac2091ca1f1ef84e106e80/src/status_im2/contexts/chat/composer/link_preview/events.cljs#L43

There are interesting ways to create a general solution in the client side too, because high-frequency client events that happen faster than the backend can reply can usually suffer from the problem this PR solved and the problem I solved on the client.

Well, thanks for reading this much :)

@qfrank qfrank force-pushed the fix/issue-relate-to-mobile-pr-16330-2 branch 2 times, most recently from 79aeba7 to 9d36da0 Compare July 28, 2023 05:54
@igor-sirotin
Copy link
Collaborator

@qfrank is this PR still needed?

@qfrank
Copy link
Contributor Author

qfrank commented Sep 2, 2024

@qfrank is this PR still needed?

I'd say yes and now one of our focus is stability, this will improve the stability of the application. Time to merge after manual QA @igor-sirotin

@igor-sirotin
Copy link
Collaborator

I'd say yes

@qfrank can you please rebase it then and request manual QA?

@qfrank
Copy link
Contributor Author

qfrank commented Sep 3, 2024

I'd say yes

@qfrank can you please rebase it then and request manual QA?

ofc, I planned today, but I got something more important to do today, I'll do it tomorrow

@qfrank qfrank force-pushed the fix/issue-relate-to-mobile-pr-16330-2 branch 2 times, most recently from 53d2c03 to 0210a02 Compare September 4, 2024 06:34
@igor-sirotin igor-sirotin changed the title [mention] add callID for OnChangeText feat(mentions): add callID for OnChangeText Sep 9, 2024
@qfrank qfrank force-pushed the fix/issue-relate-to-mobile-pr-16330-2 branch from 0210a02 to a1010b3 Compare September 12, 2024 00:04
@codecov-commenter
Copy link

❌ 1 Tests Failed:

Tests completed Failed Passed Skipped
2747 1 2746 30
View the top 1 failed tests by shortest run time
github.com/status-im/status-go/protocol/communities TestManagerSuite/TestSeedHistoryArchiveTorrent
Stack Traces | 0.46s run time
=== RUN   TestManagerSuite/TestSeedHistoryArchiveTorrent
WARN [09-12|00:09:42.067] Migrating accounts: no wallet_root_address found in settings 
2024-09-12T00:09:42.469Z	INFO	communities/manager_archive.go:190	Starting torrent client	{"port": 42527}
    manager_test.go:865: 
        	Error Trace:	.../protocol/communities/manager_test.go:865
        	Error:      	Received unexpected error:
        	            	listen udp4 :42527: bind: address already in use
        	            	subsequent listen
        	            	github.com/anacrolix/torrent.listenAllRetry
        	            		.../status-go_prs_tests_PR-3806/vendor/github.com....../anacrolix/torrent/socket.go:97
        	            	github.com/anacrolix/torrent.listenAll
        	            		.../status-go_prs_tests_PR-3806/vendor/github.com....../anacrolix/torrent/socket.go:64
        	            	github.com/anacrolix/torrent.NewClient
        	            		.../status-go_prs_tests_PR-3806/vendor/github.com.../anacrolix/torrent/client.go:249
        	            	github..../status-go/protocol/communities.(*ArchiveManager).StartTorrentClient
        	            		.../protocol/communities/manager_archive.go:193
        	            	github..../status-go/protocol/communities.(*ManagerSuite).TestSeedHistoryArchiveTorrent
        	            		.../protocol/communities/manager_test.go:864
        	            	reflect.Value.call
        	            		............/nix/store/vxxlsbznhhkw1sb7qi5wki03d2sihpha-go-1.21..../src/reflect/value.go:596
        	            	reflect.Value.Call
        	            		............/nix/store/vxxlsbznhhkw1sb7qi5wki03d2sihpha-go-1.21..../src/reflect/value.go:380
        	            	github..../stretchr/testify/suite.Run.func1
        	            		.../status-go_prs_tests_PR-3806/vendor/github.com.../testify/suite/suite.go:202
        	            	testing.tRunner
        	            		............/nix/store/vxxlsbznhhkw1sb7qi5wki03d2sihpha-go-1.21..../src/testing/testing.go:1595
        	            	runtime.goexit
        	            		............/nix/store/vxxlsbznhhkw1sb7qi5wki03d2sihpha-go-1.21..../src/runtime/asm_amd64.s:1650
        	Test:       	TestManagerSuite/TestSeedHistoryArchiveTorrent
--- FAIL: TestManagerSuite/TestSeedHistoryArchiveTorrent (0.46s)


To view individual test run time comparison to the main branch, go to the Test Analytics Dashboard

@qfrank qfrank force-pushed the fix/issue-relate-to-mobile-pr-16330-2 branch from a1010b3 to b2c2e40 Compare September 17, 2024 23:34
@qfrank qfrank force-pushed the fix/issue-relate-to-mobile-pr-16330-2 branch from cab93fa to 3f8962b Compare September 19, 2024 03:52
@qfrank qfrank merged commit 6e5a32c into develop Sep 19, 2024
9 of 11 checks passed
@qfrank qfrank deleted the fix/issue-relate-to-mobile-pr-16330-2 branch September 19, 2024 05:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants