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

Milestone 1 Support #1

Merged
merged 1,583 commits into from
Aug 3, 2023
Merged
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
1583 commits
Select commit Hold shift + click to select a range
eecb136
[release] 20221117 (#15)
stwiname Nov 17, 2022
5d869a8
Fix docker publish script
stwiname Nov 17, 2022
d7bc683
Improve scripts
stwiname Nov 17, 2022
76c2708
Debug node docker workflow
stwiname Nov 17, 2022
9ab7aaf
fix flare workflow step ids
guplersaxanoid Nov 17, 2022
0540bc9
[release] 20221118
stwiname Nov 17, 2022
3ac68af
[release] 20221118
stwiname Nov 17, 2022
225076d
[SKIP CI] Create new dockerfile for flare
stwiname Nov 17, 2022
aa4bd14
[release] 20221117
stwiname Nov 18, 2022
d0028a5
fix filter calls and block txs
guplersaxanoid Nov 18, 2022
1da12bc
[SKIP CI] Prerelease
guplersaxanoid Nov 18, 2022
ce571a3
[release] 20221122
stwiname Nov 21, 2022
12fa1d4
Validate chainIds of dictionary (#17)
guplersaxanoid Nov 24, 2022
d6e78b1
[SKIP CI] Prerelease
guplersaxanoid Nov 24, 2022
bf171ac
Fix bin name
stwiname Nov 24, 2022
1f533fd
[SKIP CI] Prerelease
stwiname Nov 24, 2022
0212e45
add header to manifest network (#16)
guplersaxanoid Nov 24, 2022
ed74ef6
[SKIP CI] Prerelease
guplersaxanoid Nov 24, 2022
c89cb0e
[release]-20221124 (#18)
stwiname Nov 24, 2022
fc1a805
Add Unfinalized Block Service (#19)
guplersaxanoid Dec 21, 2022
1398dea
[SKIP CI] Prerelease
guplersaxanoid Dec 21, 2022
8ba66c5
Sync 20230113 (#20)
bz888 Jan 25, 2023
2f5fcf6
[SKIP CI] Prerelease
bz888 Jan 25, 2023
b70c8ec
fix publish missing templates name (#22)
jiqiang90 Jan 27, 2023
d977a14
[SKIP CI] Prerelease
jiqiang90 Jan 27, 2023
a803724
Use much more efficent rpc method for getting block receipts (#23)
stwiname Feb 3, 2023
ad3be07
[SKIP CI] Prerelease
stwiname Feb 3, 2023
52ba931
[release] 20230203 (#24)
stwiname Feb 3, 2023
695f57c
Ensure addresses are checksum addresses (#25)
stwiname Feb 7, 2023
00d0022
[SKIP CI] Prerelease
stwiname Feb 7, 2023
02b07d5
Fix args not being applied to runtime dynamic ds (#27)
stwiname Feb 8, 2023
e56e1ed
[SKIP CI] Prerelease
stwiname Feb 8, 2023
7d98cfe
Check queue for lower blocks before processing fetched blocks (#28)
stwiname Feb 8, 2023
e048081
[SKIP CI] Prerelease
stwiname Feb 8, 2023
ffcd283
Filter validation (#21)
guplersaxanoid Feb 8, 2023
3af18bd
[SKIP CI] Prerelease
guplersaxanoid Feb 8, 2023
43ef081
Optimise dictionary queries for repeated dynamic datasources (#29)
stwiname Feb 10, 2023
9dea693
[SKIP CI] Prerelease
stwiname Feb 10, 2023
427b283
fix (#32)
jiqiang90 Feb 10, 2023
d4206c5
[SKIP CI] Prerelease
jiqiang90 Feb 10, 2023
00c5f5e
Add safe api that only queries at the current height (#35)
stwiname Feb 13, 2023
7e595f1
[SKIP CI] Prerelease
stwiname Feb 13, 2023
90bd191
Add query limit for num of filter address (#33)
jiqiang90 Feb 13, 2023
ba08058
[SKIP CI] Prerelease
jiqiang90 Feb 13, 2023
f86fa79
Fix error with tempDsRecords being undefined (#34)
stwiname Feb 14, 2023
a6c02d6
[SKIP CI] Prerelease
stwiname Feb 14, 2023
f96fe02
fix dictionary query got dsOptions undefined (#37)
jiqiang90 Feb 23, 2023
cfec00c
[SKIP CI] Prerelease
jiqiang90 Feb 23, 2023
5e7eafb
Fix not working with polygon and other chains without POS (#36)
stwiname Feb 23, 2023
21f6e3f
[SKIP CI] Prerelease
stwiname Feb 23, 2023
eca9aa6
Improve eth dictionary query building (#38)
stwiname Feb 28, 2023
28e45cb
[SKIP CI] Prerelease
stwiname Feb 28, 2023
d6e6747
fix the interval issue (#39)
jiqiang90 Mar 2, 2023
ad0d230
[SKIP CI] Prerelease
jiqiang90 Mar 2, 2023
4df3782
Fix latestBufferedHeight not progressing with empty dictionary result…
stwiname Mar 5, 2023
c72ef87
[SKIP CI] Prerelease
stwiname Mar 5, 2023
91d7a3e
Block fetching improvements (#41)
stwiname Mar 9, 2023
374b95e
[SKIP CI] Prerelease
stwiname Mar 9, 2023
320763f
fix project template could undefined (#43)
jiqiang90 Mar 9, 2023
276e8f4
[SKIP CI] Prerelease
jiqiang90 Mar 9, 2023
b5e1bcd
bump dependencies (#42)
jiqiang90 Mar 9, 2023
aa47c6f
improve api init logging (#44)
jiqiang90 Mar 13, 2023
267c83b
Sync with main sdk workers branch (#45)
stwiname Apr 3, 2023
b3d7395
[SKIP CI] Prerelease
stwiname Apr 3, 2023
8be2478
[release] major release (#50)
jiqiang90 Apr 3, 2023
4a56a4e
Fix dynamic ds issues, tests (#51)
stwiname Apr 4, 2023
4a1e6bb
[SKIP CI] Prerelease
stwiname Apr 4, 2023
a0eba4a
[release] 20230405 (#52)
stwiname Apr 5, 2023
b6b1f88
check result from json-rpc-batch request is array (#54)
guplersaxanoid Apr 11, 2023
e9bee5b
[SKIP CI] Prerelease
guplersaxanoid Apr 11, 2023
1402c66
Improve error handling with 429 errors (#53)
stwiname Apr 11, 2023
4b88f6a
update to use node-core 0.0.5 (#55)
jiqiang90 Apr 11, 2023
7ad1b9b
bump to 1.0.2-2 (#56)
jiqiang90 Apr 11, 2023
00d5fac
[SKIP CI] Prerelease
jiqiang90 Apr 11, 2023
4e73d7d
[release] 20230412 (#58)
jiqiang90 Apr 12, 2023
6145a72
Create `fetchBlocks` in `EthereumApiService` (#57)
guplersaxanoid Apr 18, 2023
3928645
[SKIP CI] Prerelease
guplersaxanoid Apr 18, 2023
699b151
Add flag to specify number of block confiramtions (#59)
stwiname Apr 18, 2023
e4c8019
[SKIP CI] Prerelease
stwiname Apr 18, 2023
aaff1cc
update to 1.11.3-storeCache-0.0.1 (#60)
jiqiang90 Apr 19, 2023
f75d44e
[SKIP CI] Prerelease
jiqiang90 Apr 19, 2023
48ed63c
Sync 2.0 (#62)
stwiname Apr 25, 2023
8cac27d
[SKIP CI] Prerelease
stwiname Apr 25, 2023
c8a58f6
Remove unused dependency (#61)
jiqiang90 Apr 26, 2023
47bacec
[SKIP CI] Prerelease
jiqiang90 Apr 26, 2023
be95388
try fix node-fetch import issue (#63)
jiqiang90 Apr 27, 2023
4ef6771
[SKIP CI] Prerelease
jiqiang90 Apr 27, 2023
a22fdd1
update to node-core 2.0.1-4 (#64)
jiqiang90 Apr 27, 2023
354b8d9
[SKIP CI] Prerelease
jiqiang90 Apr 27, 2023
60c858b
Sync 20230501 eth (#65)
stwiname May 1, 2023
5473019
[SKIP CI] Prerelease
stwiname May 1, 2023
f835c05
Update node-core
stwiname May 1, 2023
a4292d4
[SKIP CI] Prerelease
stwiname May 1, 2023
545f872
[release] 20230501 Ethereum (#66)
stwiname May 1, 2023
58f3fc0
Improve error if result from fetching block is undefined (#67)
stwiname May 9, 2023
68817ab
[SKIP CI] Prerelease
stwiname May 9, 2023
3fb8cc9
[release] 20230509 eth (#68)
stwiname May 9, 2023
db9c995
fix fetch dictionary meta log (#69)
jiqiang90 May 10, 2023
0b27fcf
[SKIP CI] Prerelease
jiqiang90 May 10, 2023
f3d1c8d
Sync 20230511 eth (#70)
stwiname May 11, 2023
67e7a9b
[SKIP CI] Prerelease
stwiname May 11, 2023
be66271
Fix runtime chain name (#71)
stwiname May 11, 2023
29ecbd8
[SKIP CI] Prerelease
stwiname May 11, 2023
75a609c
[release] 20230511 eth (#72)
stwiname May 11, 2023
6f37261
update node-core to fix metadata not found issue (#73)
jiqiang90 May 12, 2023
b24b8af
[SKIP CI] Prerelease
jiqiang90 May 12, 2023
dd9f2f0
Release 20230512 (#74)
jiqiang90 May 12, 2023
d42a588
[SKIP CI] Prerelease
jiqiang90 May 12, 2023
3103d57
[release] 20230512 v2 (#75)
jiqiang90 May 12, 2023
b1334a9
[release] node 2.1.2 (#76)
jiqiang90 May 12, 2023
2a05d49
Types/add chainid (#77)
bz888 May 12, 2023
e483ae6
[SKIP CI] Prerelease
bz888 May 12, 2023
1b209d7
bump node-core; (#78)
bz888 May 14, 2023
035a2dd
[SKIP CI] Prerelease
bz888 May 14, 2023
815345c
Fix ds.options.address not being used (#79)
stwiname May 15, 2023
0000316
[SKIP CI] Prerelease
stwiname May 15, 2023
25334ea
dict use equalTo for address (#81)
ianhe8x May 15, 2023
15d589f
[SKIP CI] Prerelease
ianhe8x May 15, 2023
d39cdf5
New method of resolving chain alises (#82)
stwiname May 15, 2023
ce86266
[SKIP CI] Prerelease
stwiname May 15, 2023
d6461f4
Clean up some code (#84)
stwiname May 16, 2023
6d0b6ab
[SKIP CI] Prerelease
stwiname May 16, 2023
03e42fe
upgrade to latest node-core (#83)
ianhe8x May 16, 2023
6e01fbe
[SKIP CI] Prerelease
ianhe8x May 16, 2023
f99b15f
[release] 20230517 (#85)
stwiname May 17, 2023
310bdc8
fix poi id issue, use prerelease node-core (#86)
jiqiang90 May 18, 2023
52f5274
fix prerelease (#87)
jiqiang90 May 18, 2023
f4cbdbc
[SKIP CI] Prerelease
jiqiang90 May 18, 2023
787d3d0
update to node 18 (#88)
jiqiang90 May 18, 2023
02c1a45
[SKIP CI] Prerelease
jiqiang90 May 18, 2023
8971e24
Update finalization check to work with arbitrum (#89)
stwiname May 19, 2023
4773599
[SKIP CI] Prerelease
stwiname May 19, 2023
cb99884
fix multiple graphql due to multiple version @subql/util (#90)
jiqiang90 May 19, 2023
9578c50
[SKIP CI] Prerelease
jiqiang90 May 19, 2023
380d894
[release] 20230522 eth (#91)
stwiname May 22, 2023
0fe24ec
[release] 20230522 fix (#92)
stwiname May 22, 2023
6ab2fe2
add timestamp to eth_transaction (#93)
bz888 May 30, 2023
3406c4b
[SKIP CI] Prerelease
bz888 May 30, 2023
ef3694f
Update node-core, apply fixes from main sdk (#94)
stwiname May 31, 2023
582c109
[SKIP CI] Prerelease
stwiname May 31, 2023
a38dcf9
Fix resolving abis (#95)
stwiname May 31, 2023
bcb9a69
[SKIP CI] Prerelease
stwiname May 31, 2023
d55424b
[release] 20230601 eth (#96)
stwiname Jun 1, 2023
631d605
parse tx logs and decode (#97)
bz888 Jun 2, 2023
4ad9376
[SKIP CI] Prerelease
bz888 Jun 2, 2023
9e8180e
[release] 20230602 (#98)
jiqiang90 Jun 2, 2023
1e105b7
[release] 20230607 (#100)
jiqiang90 Jun 7, 2023
57e9ebf
Fix module missing sequelize (#101)
jiqiang90 Jun 12, 2023
26c175e
[SKIP CI] Prerelease
jiqiang90 Jun 12, 2023
89fd5b9
[release] 20230613 (#103)
jiqiang90 Jun 13, 2023
f491c57
update ci to include coverage (#99)
guplersaxanoid Jun 14, 2023
b8f584d
[SKIP CI] Prerelease
guplersaxanoid Jun 14, 2023
3e59dac
Add multiple endpoint improvements - Ethereum (#102)
guplersaxanoid Jun 15, 2023
a10820c
[SKIP CI] Prerelease
guplersaxanoid Jun 15, 2023
4a78f4d
Support to field being null with dictionary query, jest fixes (#104)
stwiname Jun 15, 2023
3e827c8
[SKIP CI] Prerelease
stwiname Jun 15, 2023
5be6d0b
[release] 20230615 (#105)
guplersaxanoid Jun 15, 2023
beef0aa
Add EthereumApiService to IndexerModule (#106)
guplersaxanoid Jun 15, 2023
0c48f1e
[SKIP CI] Prerelease
guplersaxanoid Jun 15, 2023
8f3bc92
add tests and support for filterTransactionsProcessor
bz888 Jun 16, 2023
4277cff
updated changelog
bz888 Jun 16, 2023
80eebb2
update test
bz888 Jun 16, 2023
daedb2a
update logic and added more tests for undefined cases
bz888 Jun 16, 2023
d851a24
update logic to handle none null filter
bz888 Jun 16, 2023
466e57b
Merge pull request #108 from subquery/support-tx-null-filter
bz888 Jun 16, 2023
5eb3d34
[SKIP CI] Prerelease
bz888 Jun 16, 2023
33492b2
bump node-core and update metaService constructor with StoreCacheService
bz888 Jun 16, 2023
17249e5
update constructor name
bz888 Jun 16, 2023
4210df0
Merge pull request #109 from subquery/fix/update-meta-service
bz888 Jun 17, 2023
4bb2bdf
[SKIP CI] Prerelease
bz888 Jun 17, 2023
2fdc463
[release] 20230616 (#107)
guplersaxanoid Jun 19, 2023
cb659ec
Implement Retry logic for SafeEthProvider (#110)
guplersaxanoid Jun 20, 2023
22bca5c
[SKIP CI] Prerelease
guplersaxanoid Jun 20, 2023
3b1f7b2
remove query address limit
bz888 Jun 20, 2023
383b311
update changelog
bz888 Jun 20, 2023
1b27c0e
add flag for queryAddressLimit
bz888 Jun 20, 2023
a18a60e
update changelog
bz888 Jun 20, 2023
cd98d09
update changelogs and refactor code for queryAddressLimit
bz888 Jun 20, 2023
7245373
Merge pull request #111 from subquery/remove/query-address-limit
bz888 Jun 20, 2023
788707f
[SKIP CI] Prerelease
bz888 Jun 20, 2023
90daacc
add missing logger to fetchService (#112)
bz888 Jun 21, 2023
7e7aa59
[SKIP CI] Prerelease
bz888 Jun 21, 2023
1005685
add error code to thrown api request (#115)
bz888 Jun 21, 2023
2641ef3
[SKIP CI] Prerelease
bz888 Jun 21, 2023
2ba4ecb
fix for dynamicDs dictionary queries (#116)
bz888 Jun 22, 2023
9b97b9d
[SKIP CI] Prerelease
bz888 Jun 22, 2023
0acecc2
log out length (#117)
bz888 Jun 26, 2023
03fc8d7
[SKIP CI] Prerelease
bz888 Jun 26, 2023
ba471cf
Update dependencies and sync with changes from main sdk (#118)
stwiname Jun 26, 2023
623cc6d
[SKIP CI] Prerelease
stwiname Jun 26, 2023
ff88743
Tidy up deps
stwiname Jun 26, 2023
4722538
[release] 20230627 (#119)
stwiname Jun 26, 2023
ddafcbc
[release] 20230627 (#120)
stwiname Jun 26, 2023
939f1dc
support getNetwork in safeApi (#122)
ianhe8x Jun 30, 2023
9a8cd39
[SKIP CI] Prerelease
ianhe8x Jun 30, 2023
2f27274
Update node-core, add store-cache-upper-limit flag (#124)
stwiname Jul 3, 2023
2376e6b
[SKIP CI] Prerelease
stwiname Jul 3, 2023
7cfd765
cache result from eth_chainId (#123)
guplersaxanoid Jul 4, 2023
ef58920
[SKIP CI] Prerelease
guplersaxanoid Jul 4, 2023
2547650
[release] 20230705 (#125)
jiqiang90 Jul 5, 2023
48d7bcd
Fix finalization check on BSC (#126)
stwiname Jul 6, 2023
ab1cb89
[SKIP CI] Prerelease
stwiname Jul 6, 2023
ed84a15
[release] 20230707 (#127)
jiqiang90 Jul 7, 2023
42038d9
Missing format transaction in log (#128)
jiqiang90 Jul 10, 2023
5208c57
[SKIP CI] Prerelease
jiqiang90 Jul 10, 2023
14de24b
sync with node-core 20230711 (#130)
jiqiang90 Jul 12, 2023
f750fb1
[SKIP CI] Prerelease
jiqiang90 Jul 12, 2023
a1790a5
[release] 20230712 (#131)
jiqiang90 Jul 12, 2023
7988a61
Fix missing mmrQueryService in workers (#132)
jiqiang90 Jul 12, 2023
6294052
[SKIP CI] Prerelease
jiqiang90 Jul 12, 2023
7ddfb3c
pull changes from subql-ethereum
guplersaxanoid Jul 14, 2023
b9b37e7
implement soroban indexing
guplersaxanoid Jul 14, 2023
1bff1e5
bug fixes
guplersaxanoid Jul 14, 2023
524cfe7
bug fix and code cleanup
guplersaxanoid Jul 14, 2023
9a9379f
code cleanup
guplersaxanoid Jul 14, 2023
215f0d6
cache getEvents response
guplersaxanoid Jul 18, 2023
b7f7509
add safe api and cleanup code
guplersaxanoid Jul 18, 2023
a1e59c1
remove erc721.json
guplersaxanoid Jul 18, 2023
19d8bd9
remove `create` from DictionaryService
guplersaxanoid Jul 18, 2023
8a674ec
tests for api
guplersaxanoid Jul 19, 2023
918b5e7
decode base64 event topics for filtering
guplersaxanoid Jul 19, 2023
caa3d16
add tests for event filter
guplersaxanoid Jul 19, 2023
a180802
fix fetch and project tests
guplersaxanoid Jul 19, 2023
9074089
fix api service tests
guplersaxanoid Jul 19, 2023
104bf28
exclude last ledger events from cache when paginated
guplersaxanoid Jul 19, 2023
95370e0
remove eth references
guplersaxanoid Jul 21, 2023
8bccbcc
code cleanup and update headers
guplersaxanoid Jul 21, 2023
962f11e
throw error if events in a block crosses max page limit
guplersaxanoid Jul 21, 2023
ed71d89
fix headers
guplersaxanoid Jul 21, 2023
29f2b0c
fix finalized block height
guplersaxanoid Jul 21, 2023
96251e2
update api error handling messages
guplersaxanoid Jul 21, 2023
9f8a32f
update node-core
guplersaxanoid Jul 24, 2023
f0fb91e
code cleanup
guplersaxanoid Jul 24, 2023
cd8b2ae
fix tests
guplersaxanoid Jul 24, 2023
df43e15
remove ws support
guplersaxanoid Jul 24, 2023
3c2ba98
code cleanup and update license
guplersaxanoid Jul 24, 2023
4f47746
code-cleanup and bug fixes
guplersaxanoid Jul 25, 2023
eaef704
udpate common and remove safeApi
guplersaxanoid Jul 25, 2023
0b2ab64
improve error message for pruned node
guplersaxanoid Jul 25, 2023
7141933
xdr decode topics and values
guplersaxanoid Jul 25, 2023
7ae5d20
fix tests for filter
guplersaxanoid Jul 25, 2023
17daff5
update `decodeScVal` with more ScValType
guplersaxanoid Jul 26, 2023
61aa6ad
cleanup
guplersaxanoid Jul 26, 2023
9f8ef6b
update `decodeScVal` to return native value by default
guplersaxanoid Jul 26, 2023
37d1ad5
code cleanup
guplersaxanoid Jul 31, 2023
a706301
update getEvents to handle pagination
guplersaxanoid Jul 31, 2023
4d552e4
update node-core
guplersaxanoid Aug 1, 2023
075422d
remove indexBlock from testing service
guplersaxanoid Aug 1, 2023
c178dae
make fetching events recursive
guplersaxanoid Aug 2, 2023
3e4f987
rebase
guplersaxanoid Aug 2, 2023
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
7 changes: 7 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
.github
node_modules
coverage
deploy
docs
test/docker-compose.yaml
test/Dockerfile
12 changes: 12 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false
8 changes: 8 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/build/**
/api_docs/**
**/node_modules/**
**/test/**/*
/scripts/*
packages/**/dist/**
packages/**/lib/**
.eslintrc.js
113 changes: 113 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
/*
👋 Hi! This file was autogenerated by tslint-to-eslint-config.
https://github.com/typescript-eslint/tslint-to-eslint-config

It represents the closest reasonable ESLint configuration to this
project's original TSLint configuration.

We recommend eventually switching this configuration to extend from
the recommended rulesets in typescript-eslint.
https://github.com/typescript-eslint/tslint-to-eslint-config/blob/master/docs/FAQs.md

Happy linting! 💖
*/
module.exports = {
env: {
node: true,
jest: true,
},
parser: '@typescript-eslint/parser',
parserOptions: {
tsconfigRootDir: __dirname,
sourceType: 'module',
project: ['./tsconfig.json', './packages/*/tsconfig.json'],
warnOnUnsupportedTypeScriptVersion: false,
EXPERIMENTAL_useSourceOfProjectReferenceRedirect: true,
},
plugins: ['@typescript-eslint', 'header', 'import', 'sort-destructure-keys'],
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'plugin:@typescript-eslint/recommended-requiring-type-checking',
],
rules: {
// rules turned off in upstream project (also required when recommended-requiring-type-checking is extended)
'@typescript-eslint/explicit-function-return-type': 'off',
'@typescript-eslint/no-unsafe-argument': 'off',
'@typescript-eslint/no-unsafe-assignment': 'off',
'@typescript-eslint/no-unsafe-call': 'off',
'@typescript-eslint/no-unsafe-member-access': 'off',
'@typescript-eslint/no-unsafe-return': 'off',
'@typescript-eslint/no-unnecessary-type-assertion': 'off',
'@typescript-eslint/restrict-plus-operands': 'off',
'@typescript-eslint/restrict-template-expressions': 'off',
// Support recommended-requiring-type-checking (specific to this project) set them as warning
'@typescript-eslint/unbound-method': 'warn',
'@typescript-eslint/no-floating-promises': 'warn',
// Making affected recommended types as warning for now
'@typescript-eslint/explicit-module-boundary-types': 'warn',
'@typescript-eslint/no-explicit-any': 'warn',
'@typescript-eslint/no-var-requires': 'warn',
'@typescript-eslint/no-unused-vars': 'warn',
'@typescript-eslint/ban-ts-comment': 'warn',
'@typescript-eslint/ban-types': 'warn',
'@typescript-eslint/no-inferrable-types': 'warn',
'@typescript-eslint/await-thenable': 'error',
'@typescript-eslint/dot-notation': 'error',
'@typescript-eslint/explicit-member-accessibility': [
'error',
{
accessibility: 'no-public',
},
],
'@typescript-eslint/no-namespace': ['error', {allowDeclarations: true}],
// "@typescript-eslint/member-ordering": "error",
// "@typescript-eslint/naming-convention": "error",
// "@typescript-eslint/no-param-reassign": "error",
'@typescript-eslint/promise-function-async': ['error', {checkArrowFunctions: false}],
// "arrow-body-style": "error",
complexity: ['error', 20],
curly: ['error', 'multi-line'],
'default-case': 'error',
eqeqeq: ['error', 'always'],
'import/no-extraneous-dependencies': 'off',
'import/order': [
'error',
{
alphabetize: {
order: 'asc' /* sort in ascending order. Options: ['ignore', 'asc', 'desc'] */,
caseInsensitive: true /* ignore case. Options: [true, false] */,
},
},
],
'header/header': [
2,
'line',
[
//Copyright 2020-2023 SubQuery Pte Ltd authors & contributors
{pattern: ' Copyright \\d{4}(-\\d{4})? SubQuery Pte Ltd authors & contributors'},
' SPDX-License-Identifier: GPL-3.0',
],
2,
],
'sort-destructure-keys/sort-destructure-keys': [
2,
{
caseSensitive: true,
},
],
'no-console': 'off',
'no-duplicate-imports': 'error',
// "no-magic-numbers": "error",
'no-return-await': 'error',
'no-undef-init': 'error',
'prefer-template': 'error',
'use-isnan': 'error',
},
settings: {
'import/extensions': ['.js', '.ts'],
'import/parsers': {
'@typescript-eslint/parser': ['.ts', '.tsx'],
},
},
};
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
### Prerequisites

* [ ] Are you running the latest version(s)?
* [ ] Have you searched the [documentation for your issue](https://academy.subquery.network/)?
* [ ] Did you search for an existing issue or pull request?

### Description

[Description of the bug or feature]

### Details

These details can help to reproduce the environment the issue is occurring

**Local Environment:** [You can get this information from executing `subql version`.]
**Query Version:** [What is the version of the query service?]
**Indexer Version:** [What is the version of the indexer service?]
**Network Details:**
* [Network]
* [Block height, a block height where the issue is happening]
* [Dictionary endpoint, if used]

### Steps to Reproduce

1. [First Step]
2. [Second Step]
3. [and so on...]

**Example project:** [A link to a minimal example that can reproduce the issue]

**Expected behavior:** [What you expected to happen]

**Actual behavior:** [What actually happened]


### Any other information

Is there any other information you would like to add?
24 changes: 24 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

Fixes # (issue)

## Type of change

Please delete options that are not relevant.

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] This change requires a documentation update

## Checklist

- [ ] I have tested locally
- [ ] I have performed a self review of my changes
- [ ] Updated any relevant documentation
- [ ] Linked to any relevant issues
- [ ] I have added tests relevant to my changes
- [ ] Any dependent changes have been merged and published in downstream modules
- [ ] My code is up to date with the base branch
- [ ] I have updated relevant changelogs. [We suggest using chan](https://github.com/geut/chan/tree/main/packages/chan)
25 changes: 25 additions & 0 deletions .github/actions/create-prerelease/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Composite action needed to access github context

# This is to compensate for yarn 3 issue https://github.com/yarnpkg/berry/issues/3868
name: 'Remove Stable Versions'
description: 'This will remove stableVersion from packages for prerelease'
inputs:
package-path:
description: 'package path to run action e.g. package/common'
required: true
npm-token:
description: 'token to push to npm registry'
required: true

runs:
using: "composite"
steps:
- working-directory: ${{ github.workspace }}
run: node ${{ github.action_path }}/remove-stable-version.js ${{ github.workspace }}/${{ inputs.package-path }}
shell: bash

- working-directory: ${{ inputs.package-path }}
run: echo "Changes exist in ${{ inputs.package-path }}" && yarn version prerelease && yarn npm publish --access public --tag dev
env:
NPM_TOKEN: ${{ inputs.npm-token }}
shell: bash
8 changes: 8 additions & 0 deletions .github/actions/create-prerelease/remove-stable-version.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
const fs = require('fs');
const myArgs = process.argv.slice(2);
const pJson = require(`${myArgs[0]}/package.json`)

if (pJson.stableVersion){
delete pJson.stableVersion
fs.writeFileSync(`${myArgs[0]}/package.json`, JSON.stringify(pJson, null, 2))
}
29 changes: 29 additions & 0 deletions .github/actions/create-release/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Composite action needed to access github context

name: 'Create Release'
description: 'This will publish to NPM registry and create Github release'
inputs:
package-path: # id of input
description: 'package path to run action e.g. package/common'
required: true
repo-token:
description: 'token to create github release'
required: true
npm-token:
description: 'token to push to npm registry'
required: true

runs:
using: "composite"
steps:
- working-directory: ${{ inputs.package-path }}
run: echo "Changes exist in ${{ inputs.package-path }}" && yarn npm publish --access public
env:
NPM_TOKEN: ${{ inputs.npm-token }}
shell: bash

- working-directory: ${{ github.workspace }}
run: node ${{ github.action_path }}/gh-release-script.js ${{ github.workspace }}/${{ inputs.package-path }}
env:
REPO_TOKEN: ${{ inputs.repo-token }}
shell: bash
85 changes: 85 additions & 0 deletions .github/actions/create-release/gh-release-script.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
const fs = require('fs');
const { exit } = require('process');
const core = require('@actions/core');
const { request } = require('@octokit/request');

const myArgs = process.argv.slice(2);

const pJson = require(`${myArgs[0]}/package.json`)

const version = pJson.version;
const repoName = pJson.name;

const packageName = repoName.split('/');

function checkForBetaVersion(version) {
if (version.includes('-')){
exit(0); //skip this package but continue trying to release others
}
}

function gatherReleaseInfo(logPath) {
const changeLogs = fs.readFileSync(logPath, 'utf8');
const regex = /## \[([0-9]+(\.[0-9]+)+)] - [0-9]{4}-[0-9]{2}-[0-9]{2}/i;

let lines = changeLogs.split(/\n/);
let foundChangelog = false;
let releaseInfo = '';
let i = 0;

for(let j = 0; j < lines.length; j++){
if(lines[j].includes(`[${version}]`)){
i = j;
j = lines.length;
foundChangelog = true;
}
}

lines = lines.slice(i);

if(foundChangelog){
for(let j = 0; j < lines.length; j++){
if(j == 0){
releaseInfo += `${lines[j]}`+ '\n';
continue;
}

if(!regex.test(lines[j])){
releaseInfo += `${lines[j]}`+ '\n';
} else {
j = lines.length;
}
}
}

if(releaseInfo === ''){
core.setFailed("No release info found, either missing in changelog or changelog is formatted incorrectly")
}

console.log("Gathered release info...")
return releaseInfo;
}

async function publishRelease(releaseInfo) {

await request('POST /repos/{owner}/{repo}/releases', {
headers: {
authorization: `token ${process.env.REPO_TOKEN}`,
},
owner: 'subquery',
name: `[${version}] ${repoName}`,
repo: 'subql-soroban',
tag_name: `${packageName[1]}/${version}`,
body: releaseInfo
}).catch( err => {
core.setFailed(err)
})

console.log("Release Created...")
}

checkForBetaVersion(version);

const releaseInfo = gatherReleaseInfo(`${myArgs[0]}/CHANGELOG.md`);

publishRelease(releaseInfo);
21 changes: 21 additions & 0 deletions .github/workflows/discord.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: discord notification
on:
release:
types:
- published

jobs:
notify:
name: Discord Notification
runs-on: ubuntu-latest

steps:
- name: Send release details to Discord
uses: rjstone/discord-webhook-notify@v1
with:
webhookUrl: ${{ secrets.DISCORD_RELEASE_NOTES_WEBHOOK }}
color: '#6499ff'
avatarUrl: https://github.githubassets.com/images/modules/logos_page/Octocat.png
details: ${{ github.event.release.body }}
description: "[Release] ${{ github.event.release.name }}"
footer: ${{ github.event.release.html_url }}
Loading
Loading