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

Delivery hyperdot milestone 1 #1058

Merged
merged 1 commit into from
Nov 29, 2023
Merged

Delivery hyperdot milestone 1 #1058

merged 1 commit into from
Nov 29, 2023

Conversation

cattania
Copy link
Contributor

@cattania cattania commented Nov 14, 2023

Milestone Delivery Checklist

  • The milestone-delivery-template.md has been copied and updated.
  • This pull request is being made by the same account as the accepted application.
  • I have disclosed any and all sources of reused code in the submitted repositories and have done my due diligence to meet its license requirements.
  • In case of acceptance, an invoice must be submitted and the payment will be transferred to the Polkadot/fiat account provided in the application.
  • The delivery is according to the Guidelines for Milestone Deliverables.

Link to the application pull request: w3f/Grants-Program#1815

@semuelle semuelle self-assigned this Nov 22, 2023
@semuelle
Copy link
Member

Thanks for the delivery, @cattania. Everything looks pretty good so far. However, when I try to run the tests locally, I get the following error message. Any idea what's wrong? Did I miss a step in the setup?

> make tests
go test -v ./tests/ --count=1
tests/setup.go:16:2: missing go.sum entry for module providing package github.com/redis/go-redis/v9 (imported by infra-3.xyz/hyperdot-node/tests); to add:
	go get infra-3.xyz/hyperdot-node/tests
tests/setup.go:17:2: missing go.sum entry for module providing package gorm.io/driver/postgres (imported by infra-3.xyz/hyperdot-node/tests); to add:
	go get infra-3.xyz/hyperdot-node/tests
tests/setup.go:18:2: missing go.sum entry for module providing package gorm.io/gorm (imported by infra-3.xyz/hyperdot-node/tests); to add:
	go get infra-3.xyz/hyperdot-node/tests
internal/apis/router.go:14:2: missing go.sum entry for module providing package github.com/gin-gonic/gin (imported by infra-3.xyz/hyperdot-node/internal/apis); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis
internal/apis/router.go:15:2: missing go.sum entry for module providing package github.com/swaggo/files (imported by infra-3.xyz/hyperdot-node/internal/apis); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis
internal/apis/router.go:16:2: missing go.sum entry for module providing package github.com/swaggo/gin-swagger (imported by infra-3.xyz/hyperdot-node/internal/apis); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis
docs/docs.go:4:8: missing go.sum entry for module providing package github.com/swaggo/swag (imported by infra-3.xyz/hyperdot-node/docs); to add:
	go get infra-3.xyz/hyperdot-node/docs
internal/apis/base/response.go:7:2: missing go.sum entry for module providing package cloud.google.com/go/bigquery (imported by infra-3.xyz/hyperdot-node/internal/apis/base); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis/base
internal/apis/base/jwt.go:8:2: missing go.sum entry for module providing package github.com/golang-jwt/jwt/v5 (imported by infra-3.xyz/hyperdot-node/internal/apis/base); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis/base
internal/utils/password.go:4:2: missing go.sum entry for module providing package golang.org/x/crypto/bcrypt (imported by infra-3.xyz/hyperdot-node/internal/utils); to add:
	go get infra-3.xyz/hyperdot-node/internal/utils
internal/clients/s3.go:9:2: missing go.sum entry for module providing package github.com/minio/minio-go/v7 (imported by infra-3.xyz/hyperdot-node/internal/clients); to add:
	go get infra-3.xyz/hyperdot-node/internal/clients
internal/clients/s3.go:10:2: missing go.sum entry for module providing package github.com/minio/minio-go/v7/pkg/credentials (imported by infra-3.xyz/hyperdot-node/internal/clients); to add:
	go get infra-3.xyz/hyperdot-node/internal/clients
internal/clients/bigquery.go:10:2: missing go.sum entry for module providing package google.golang.org/api/iterator (imported by infra-3.xyz/hyperdot-node/internal/clients); to add:
	go get infra-3.xyz/hyperdot-node/internal/clients
internal/store/bbolt.go:8:2: missing go.sum entry for module providing package go.etcd.io/bbolt (imported by infra-3.xyz/hyperdot-node/internal/store); to add:
	go get infra-3.xyz/hyperdot-node/internal/store
internal/jobs/manager.go:9:2: missing go.sum entry for module providing package github.com/jasonlvhit/gocron (imported by infra-3.xyz/hyperdot-node/internal/jobs); to add:
	go get infra-3.xyz/hyperdot-node/internal/jobs
make: *** [Makefile:54: tests] Error 1

@cattania
Copy link
Contributor Author

Thanks for the delivery, @cattania. Everything looks pretty good so far. However, when I try to run the tests locally, I get the following error message. Any idea what's wrong? Did I miss a step in the setup?

> make tests
go test -v ./tests/ --count=1
tests/setup.go:16:2: missing go.sum entry for module providing package github.com/redis/go-redis/v9 (imported by infra-3.xyz/hyperdot-node/tests); to add:
	go get infra-3.xyz/hyperdot-node/tests
tests/setup.go:17:2: missing go.sum entry for module providing package gorm.io/driver/postgres (imported by infra-3.xyz/hyperdot-node/tests); to add:
	go get infra-3.xyz/hyperdot-node/tests
tests/setup.go:18:2: missing go.sum entry for module providing package gorm.io/gorm (imported by infra-3.xyz/hyperdot-node/tests); to add:
	go get infra-3.xyz/hyperdot-node/tests
internal/apis/router.go:14:2: missing go.sum entry for module providing package github.com/gin-gonic/gin (imported by infra-3.xyz/hyperdot-node/internal/apis); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis
internal/apis/router.go:15:2: missing go.sum entry for module providing package github.com/swaggo/files (imported by infra-3.xyz/hyperdot-node/internal/apis); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis
internal/apis/router.go:16:2: missing go.sum entry for module providing package github.com/swaggo/gin-swagger (imported by infra-3.xyz/hyperdot-node/internal/apis); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis
docs/docs.go:4:8: missing go.sum entry for module providing package github.com/swaggo/swag (imported by infra-3.xyz/hyperdot-node/docs); to add:
	go get infra-3.xyz/hyperdot-node/docs
internal/apis/base/response.go:7:2: missing go.sum entry for module providing package cloud.google.com/go/bigquery (imported by infra-3.xyz/hyperdot-node/internal/apis/base); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis/base
internal/apis/base/jwt.go:8:2: missing go.sum entry for module providing package github.com/golang-jwt/jwt/v5 (imported by infra-3.xyz/hyperdot-node/internal/apis/base); to add:
	go get infra-3.xyz/hyperdot-node/internal/apis/base
internal/utils/password.go:4:2: missing go.sum entry for module providing package golang.org/x/crypto/bcrypt (imported by infra-3.xyz/hyperdot-node/internal/utils); to add:
	go get infra-3.xyz/hyperdot-node/internal/utils
internal/clients/s3.go:9:2: missing go.sum entry for module providing package github.com/minio/minio-go/v7 (imported by infra-3.xyz/hyperdot-node/internal/clients); to add:
	go get infra-3.xyz/hyperdot-node/internal/clients
internal/clients/s3.go:10:2: missing go.sum entry for module providing package github.com/minio/minio-go/v7/pkg/credentials (imported by infra-3.xyz/hyperdot-node/internal/clients); to add:
	go get infra-3.xyz/hyperdot-node/internal/clients
internal/clients/bigquery.go:10:2: missing go.sum entry for module providing package google.golang.org/api/iterator (imported by infra-3.xyz/hyperdot-node/internal/clients); to add:
	go get infra-3.xyz/hyperdot-node/internal/clients
internal/store/bbolt.go:8:2: missing go.sum entry for module providing package go.etcd.io/bbolt (imported by infra-3.xyz/hyperdot-node/internal/store); to add:
	go get infra-3.xyz/hyperdot-node/internal/store
internal/jobs/manager.go:9:2: missing go.sum entry for module providing package github.com/jasonlvhit/gocron (imported by infra-3.xyz/hyperdot-node/internal/jobs); to add:
	go get infra-3.xyz/hyperdot-node/internal/jobs
make: *** [Makefile:54: tests] Error 1

Thank you for your reply, this is not your problem, nor is there a problem with the test, but our step-by-step document missed a step, later we will update the document and tell you how to continue the test, thank you again for your reply

@cattania
Copy link
Contributor Author

Hi @semuelle , we updated the documentation with the missing steps, specifically, that need to be performed before make tests

# Ensure dependencies installed
go mod tidy 

go mod vendor

make tests

@semuelle
Copy link
Member

Hey @cattania. Thanks for the update. I got a step further. But could you help me through the setup? It seems that I didn't set up the gcloud credentials properly, because currently I am getting the following error when running make tests and it seems I'm not able to add this permission to my account.

2023/11/24 11:34:08 Failed to run query: googleapi: Error 403: Access Denied: Project hyperdot: User does not have bigquery.jobs.create permission in project hyperdot., accessDenied

@cattania
Copy link
Contributor Author

Hey @semuelle , thanks for your reply, we will issue a gcloud test credential information and update it later so that users can easily test without any setup

@cattania
Copy link
Contributor Author

Hey @semuelle, we updated the latest code to include a test credential of gcloud, you can clone the latest code to try to continue the test,s if there are any questions, we will continue to follow up, thank you for your reply!

@semuelle
Copy link
Member

Hey @semuelle, we updated the latest code to include a test credential of gcloud, you can clone the latest code to try to continue the test,s if there are any questions, we will continue to follow up, thank you for your reply!

That's super helpful, thanks @cattania. Unfortunately, I am now facing the following error message. Any suggestions?

> make tests
Makefile:21: warning: overriding recipe for target 'build/docker'
Makefile:12: warning: ignoring old recipe for target 'build/docker'
go test -v ./tests/ --count=1
...
2023/11/27 21:31:08 initDB
2023/11/27 21:31:09 Failed to run query: googleapi: Error 403: Access Denied: Table bigquery-public-data:crypto_polkadot.AAA_tableschema: User does not have permission to query table bigquery-public-data:crypto_polkadot.AAA_tableschema, or perhaps it does not exist in location US., accessDenied
FAIL	infra-3.xyz/hyperdot-node/tests	1.782s
FAIL
make: *** [Makefile:71: tests] Error 1

@cattania
Copy link
Contributor Author

cattania commented Nov 28, 2023

Hey @semuelle , I'm so sorry, I did the test on a new machine without setting gcloud and it can pass. I guess it may be because the gcloud test account limits the region. We will solve this problem later

au@x:~/codes/hyperdot-node$ make tests
Makefile:21: warning: overriding recipe for target 'build/docker'
Makefile:12: warning: ignoring old recipe for target 'build/docker'
go test -v ./tests/ --count=1
2023/11/28 09:39:47 initDB
2023/11/28 09:39:47 initDB: [{"name":"Bigquery","datasets":{"Bigquery":{"id":"raw","title":"Raw","description":"Raw blockchain crypto data"}}}]
2023/11/28 09:39:47 HMap [hyperdot:queryengines] set redis key: Bigquery
2023/11/28 09:39:47 Start BuildBigQueryEngine Job
[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
 - using env:   export GIN_MODE=release
 - using code:  gin.SetMode(gin.ReleaseMode)

[GIN-debug] GET    /apis/v1/system/engines   --> infra-3.xyz/hyperdot-node/internal/apis/service/system.(*Service).RouteTables.(*Service).ListEnginesHandler.func1 (4 handlers)
[GIN-debug] GET    /apis/v1/system/engines/:engineId --> infra-3.xyz/hyperdot-node/internal/apis/service/system.(*Service).RouteTables.(*Service).GetQueryEngineDatasetHandle.func2 (4 handlers)
[GIN-debug] POST   /apis/v1/query/run        --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).RunHandler.func1 (4 handlers)
[GIN-debug] GET    /apis/v1/query/:id        --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).GetQueryHandler.func2 (4 handlers)
[GIN-debug] GET    /apis/v1/query            --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).ListQueryHandler.func3 (4 handlers)
[GIN-debug] POST   /apis/v1/query            --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).CreateQueryHandler.func4 (4 handlers)
[GIN-debug] PUT    /apis/v1/query            --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).UpdateQueryHandler.func5 (4 handlers)
[GIN-debug] DELETE /apis/v1/query/:id        --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).DeleteQueryHandler.func6 (4 handlers)
[GIN-debug] GET    /apis/v1/query/favorite   --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).ListFavoriteQueryHandler.func7 (4 handlers)
[GIN-debug] GET    /apis/v1/query/browse     --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).ListBrowseQueryHandler.func8 (4 handlers)
[GIN-debug] GET    /apis/v1/query/charts     --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).ListCurrentUserQueryChartHandler.func9 (4 handlers)
[GIN-debug] GET    /apis/v1/query/charts/user/:userId --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).ListUserQueryChartHandler.func10 (4 handlers)
[GIN-debug] GET    /apis/v1/query/chart/:id  --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).GetCurrentUserQueryChartHandler.func11 (4 handlers)
[GIN-debug] GET    /apis/v1/query/chart/:id/user/:userId --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).GetUserQueryChartHandler.func12 (4 handlers)
[GIN-debug] DELETE /apis/v1/query/chart/:id/ --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).DeleteQueryChartHandler.func13 (4 handlers)
[GIN-debug] PUT    /apis/v1/query/favorite   --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).QueryFavoriteHandler.func14 (4 handlers)
[GIN-debug] PUT    /apis/v1/query/unfavorite --> infra-3.xyz/hyperdot-node/internal/apis/service/query.(*Service).RouteTables.(*Service).QueryUnfavoriteHandler.func15 (4 handlers)
[GIN-debug] GET    /apis/v1/dashboard/:id    --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).GetDashboardHandler.func1 (4 handlers)
[GIN-debug] GET    /apis/v1/dashboard        --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).ListDashboardHandler.func2 (4 handlers)
[GIN-debug] POST   /apis/v1/dashboard        --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).CreateDashboardHandler.func3 (4 handlers)
[GIN-debug] PUT    /apis/v1/dashboard        --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).UpdateDashboardHandler.func4 (4 handlers)
[GIN-debug] DELETE /apis/v1/dashboard/:id    --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).DeleteDashboardHandler.func5 (4 handlers)
[GIN-debug] GET    /apis/v1/dashboard/favorite --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).ListFavoriteDashboardHandler.func6 (4 handlers)
[GIN-debug] GET    /apis/v1/dashboard/browse --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).ListBrowseUserDashboardHandler.func7 (4 handlers)
[GIN-debug] GET    /apis/v1/dashboard/tag/populars --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).ListPopularDashboardTags.func8 (4 handlers)
[GIN-debug] PUT    /apis/v1/dashboard/favorite --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).DashboardFavoriteHandler.func9 (4 handlers)
[GIN-debug] PUT    /apis/v1/dashboard/unfavorite --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).DashboardUnfavoriteHandler.func10 (4 handlers)
[GIN-debug] DELETE /apis/v1/dashboard/panel/:panelId --> infra-3.xyz/hyperdot-node/internal/apis/service/dashboard.(*Service).RouteTables.(*Service).RemoveDashboardPanelHandler.func11 (4 handlers)
[GIN-debug] GET    /apis/v1/user             --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).GetCurrentUserHandler.func1 (4 handlers)
[GIN-debug] GET    /apis/v1/user/:id         --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).GetUserHandler.func2 (4 handlers)
[GIN-debug] PUT    /apis/v1/user             --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).UpdateUserHandler.func3 (4 handlers)
[GIN-debug] PUT    /apis/v1/user/email       --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).UpdateEmailHandler.func4 (4 handlers)
[GIN-debug] PUT    /apis/v1/user/password    --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).UpdatePasswordHandler.func5 (4 handlers)
[GIN-debug] POST   /apis/v1/user/avatar/upload --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).UploadAvatarHandler.func6 (4 handlers)
[GIN-debug] GET    /apis/v1/user/avatar      --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).GetAvatarHandler.func7 (4 handlers)
[GIN-debug] POST   /apis/v1/user/auth/createAccount --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).CreateAccountHandler.func8 (4 handlers)
[GIN-debug] POST   /apis/v1/user/auth/login  --> infra-3.xyz/hyperdot-node/internal/apis/service/user.(*Service).RouteTables.(*Service).LoginHandle.func9 (4 handlers)
[GIN-debug] GET    /apis/v1/file             --> infra-3.xyz/hyperdot-node/internal/apis/service/file.(*Service).RouteTables.(*Service).GetFileHandler.func1 (4 handlers)
[GIN-debug] GET    /apis/v1/swager/*any      --> github.com/swaggo/gin-swagger.CustomWrapHandler.func1 (4 handlers)
=== RUN   TestDashboardCreate
[GIN] 2023/11/28 - 09:39:56 | 200 |     2.37794ms |                 | POST     "/apis/v1/dashboard"
--- PASS: TestDashboardCreate (0.06s)
=== RUN   TestQueryRun
2023/11/28 09:39:57 Start BuildBigQueryEngine Job
[GIN] 2023/11/28 - 09:39:59 | 200 |  2.774857006s |                 | POST     "/apis/v1/query/run"
--- PASS: TestQueryRun (2.83s)
=== RUN   TestCRUDQuery
[GIN] 2023/11/28 - 09:39:59 | 200 |    7.041393ms |                 | POST     "/apis/v1/query"
[GIN] 2023/11/28 - 09:39:59 | 200 |    4.224885ms |                 | GET      "/apis/v1/query/10"
[GIN] 2023/11/28 - 09:39:59 | 200 |   17.265948ms |                 | PUT      "/apis/v1/query"
[GIN] 2023/11/28 - 09:39:59 | 200 |    2.492197ms |                 | GET      "/apis/v1/query/10"
[GIN] 2023/11/28 - 09:39:59 | 200 |    5.732748ms |                 | DELETE   "/apis/v1/query/10"

2023/11/28 09:39:59 /home/au/codes/hyperdot-node/internal/apis/service/query/query.go:248 record not found
[1.493ms] [rows:0] SELECT * FROM "hyperdot_queries" WHERE "hyperdot_queries"."id" = '10' ORDER BY "hyperdot_queries"."id" LIMIT 1
[GIN] 2023/11/28 - 09:39:59 | 404 |    1.626139ms |                 | GET      "/apis/v1/query/10"
--- PASS: TestCRUDQuery (0.34s)
=== RUN   TestUserCreateAccount
[GIN] 2023/11/28 - 09:39:59 | 400 |     2.91651ms |                 | POST     "/apis/v1/user/auth/createAccount"
--- PASS: TestUserCreateAccount (0.05s)
=== RUN   TestUserLogin
[GIN] 2023/11/28 - 09:40:00 | 200 |   56.009209ms |                 | POST     "/apis/v1/user/auth/login"
--- PASS: TestUserLogin (0.11s)
=== RUN   TestUserGetCurrent
[GIN] 2023/11/28 - 09:40:00 | 200 |    2.531899ms |                 | GET      "/apis/v1/user"
--- PASS: TestUserGetCurrent (0.05s)
=== RUN   TestUserGet
[GIN] 2023/11/28 - 09:40:00 | 200 |    1.536882ms |                 | GET      "/apis/v1/user/1"
--- PASS: TestUserGet (0.05s)
=== RUN   TestUserUpdate
[GIN] 2023/11/28 - 09:40:00 | 200 |    3.567864ms |                 | PUT      "/apis/v1/user"
--- PASS: TestUserUpdate (0.06s)
PASS
ok      infra-3.xyz/hyperdot-node/tests 12.763s

@cattania
Copy link
Contributor Author

We've fixed the issue and you can continue testing later

Copy link
Member

@semuelle semuelle left a comment

Choose a reason for hiding this comment

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

Thanks for the update, @cattania. Everything is working as expected. I just have two last minor requests.

  1. Could you improve on the inline documentation? It's currently just a few comments and occasional swaggo documentation, it would be great if it was more complete.
  2. The frontend at https://www.hyperdot.xyz currently contains a few typos. I think it would be very beneficial if you could fix those. For example, the login page shows "Sing up" instead of "Sign up" and the signup page reads "Chose a password" instead of "Choose".

@cattania
Copy link
Contributor Author

Hey @semuelle , Thanks for your suggestion, we will make changes later

@cattania
Copy link
Contributor Author

Hey @semuelle , Thanks for your suggestion, we will make changes later

we update hyperdot-node more inline documents in this commit Infra3-Network/hyperdot-node@68be8b9

Copy link
Member

@semuelle semuelle left a comment

Choose a reason for hiding this comment

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

That was quick. Thanks for the updates, @cattania! Your milestone is hereby accepted. You can find my evaluation notes here. Congrats. Looking forward to the next milestone!

@semuelle semuelle merged commit aa2f1f8 into w3f:master Nov 29, 2023
6 checks passed
@semuelle
Copy link
Member

🪙 Please fill out the invoice form in order to initiate the payment process. Thank you!

@semuelle
Copy link
Member

Hey @cattania. The invoice is missing the billing address. Could you resubmit? Thanks!

@cattania
Copy link
Contributor Author

cattania commented Dec 1, 2023

Hey @semuelle, Thank you for reply and guidance, we updated the invoice and resubmit it, Could you recheck it? Thanks!

@cattania
Copy link
Contributor Author

Hey @semuelle, I'm sorry to bother you. Is there any progress in the payment?

@RouvenP
Copy link

RouvenP commented Dec 11, 2023

hi @cattania we just transferred the payment. Thanks!

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.

3 participants