Skip to content
Open

1 #1

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
316 commits
Select commit Hold shift + click to select a range
a4e7911
Fix multisig transaction failure (#349)
superboyiii Apr 23, 2019
981e8bb
Fix broadcast miss default case (#350)
Ashuaidehao Apr 24, 2019
f640176
Allow to install plugins from file (if exists) (#351)
shargon Apr 25, 2019
6286298
Fix \"x error (#353)
shargon May 9, 2019
1d02eb6
Fix install plugin 3x (#362)
erikzhang May 17, 2019
2a9479c
Improve version display
erikzhang May 19, 2019
1afbf67
Allow creating 1/1 multisigaddress
erikzhang May 19, 2019
1febe7e
Show error when PluginURL is not defined (#368)
shargon May 21, 2019
5403d53
3.0.0-CI00044 (#357)
erikzhang May 22, 2019
6c68d5d
Fix uninstall CoreMetrics (3x) (#372)
shargon May 23, 2019
f5c27e7
Fix uninstall (#377)
shargon May 29, 2019
0b17c18
Don't hardcode System.Text.Encoding.Unicode (which is UTF-16LE) as ou…
intelfx May 29, 2019
b318775
Some fixes (3x) (#380)
shargon Jun 4, 2019
3ef151a
3.0.0-CI00057 (#373)
erikzhang Jun 4, 2019
e9b9402
More info to mempool print (3.x) (#384)
vncoelho Jun 10, 2019
e3319f1
Clean protocol.json (#388)
shargon Jun 15, 2019
2c22529
Fix 293 (#390)
shargon Jun 17, 2019
bd472a3
Ping nodes while show state (#391)
shargon Jun 17, 2019
6776bae
Opening the wallet with RPC turned on requires user confirmation (#397)
erikzhang Jun 20, 2019
6db26c2
Fix cancellation error (#400)
shargon Jun 23, 2019
9205441
Show multi sig address in `list address command (#399)
shargon Jun 23, 2019
ebff16b
Version badge in readme (#404)
shargon Jun 28, 2019
985653f
Fix dockerbuild (#416)
Ashuaidehao Jul 29, 2019
1a1bfc3
Fix travis test (#418)
Ashuaidehao Jul 30, 2019
009757b
3.0.0-CI00130 (#414)
erikzhang Jul 30, 2019
7fdbc54
Renaming avm to nef (#381)
vncoelho Jul 31, 2019
a7116be
Add --testnet and --mainnet param option (#415)
Aug 1, 2019
100a443
Improvement on '''list asset''' for details (#424)
superboyiii Aug 7, 2019
6b0eb45
Feature dockerfile (#430)
Ashuaidehao Aug 9, 2019
ad91ed9
load config.json with enviroment. (#421)
Ashuaidehao Aug 12, 2019
cb731f4
resolve #435 (#440)
belane Aug 16, 2019
78c7c63
Add "MaxGasInvoke" to config.json (#439)
superboyiii Aug 16, 2019
f487f4b
Fix invoke failed (#444)
superboyiii Aug 22, 2019
de2fd90
Improve select menu (#443)
superboyiii Aug 26, 2019
ff30b2d
Update protocol.json for NEO3 (#453)
erikzhang Sep 3, 2019
71e779b
Adjust the output format of show state command (3x) (#449)
yongjiema Sep 12, 2019
c6ad201
v3.0.0-preview1 (#456)
erikzhang Sep 16, 2019
aaf104c
Shutdown Gracefully on Kill or Interrupt. (#327)
jsolman Oct 1, 2019
fca419d
Update deploy command following NEO3 schema (#463)
shargon Oct 18, 2019
d20b592
Prevent Invalid ip format on connected in neo-cli (#474)
shargon Oct 24, 2019
f79dac3
Printint error message when "UnlockWallet" wallet is not found (#470)
lock9 Nov 6, 2019
72361dd
Upgrade dependencies and target frameworks (#477)
shargon Nov 26, 2019
1dc5c60
Remove Travis and use Github Actions (#487)
erikzhang Nov 26, 2019
ed3e580
Remove address version config (#489)
belane Dec 1, 2019
825fd97
Neo v3.0.0-CI00809
erikzhang Dec 1, 2019
517756c
Allow users to select storage engine (#491)
erikzhang Dec 3, 2019
15e52a0
Fix inconsistency in plugin name (#452)
superboyiii Dec 3, 2019
c9e6c6a
Fix typo (#492)
shargon Dec 3, 2019
f0ac934
Port neo-gui (#488)
erikzhang Dec 4, 2019
01b928c
Neo v3.0.0-CI00817
erikzhang Dec 4, 2019
1cd57b1
Dispose ApplicationEngine after using (#501)
erikzhang Dec 8, 2019
f7044fb
Allow import or export blocks (#502)
erikzhang Dec 9, 2019
ec426f1
Neo v3.0.0-CI00825
erikzhang Dec 9, 2019
e6d3f1a
Fix #506
erikzhang Dec 10, 2019
210c154
Fix #509
erikzhang Dec 10, 2019
399524d
remove rpc-tests (#514)
Dec 11, 2019
689814a
Fix Console.ReadLine in linux (#516)
shargon Dec 15, 2019
ef9bc70
Improve progress bar aspect (#517)
shargon Dec 18, 2019
0b439ab
update README and fix some inaccessible links (#513)
Dec 24, 2019
01e4245
up readme (#528)
Tommo-L Dec 26, 2019
e6973a1
up dockerfile (#527)
Tommo-L Dec 26, 2019
22bc06e
Update neo nuget (#530)
shargon Jan 6, 2020
4c20870
Add dependencies on fedora (#529)
corollari Jan 6, 2020
a137b6f
Showing version of neo and neo-vm on startup (#521)
melanke Jan 6, 2020
51cd29f
Fix add address twice (#532)
shargon Jan 9, 2020
a477dc6
Allow to skip verification (#534)
shargon Jan 21, 2020
0f91c7f
Fix dotnet-format (#541)
shargon Feb 11, 2020
8753a11
Fix NEP5 test (#539)
shargon Feb 12, 2020
c2232f6
Upgrade neo to 3.0.0-CI00855 (#544)
superboyiii Feb 21, 2020
e540058
Fixed bug (#547)
Mar 2, 2020
72ff1b9
Update neo nuget (#548)
shargon Mar 10, 2020
e81556e
Fixed GAS decimals (#550)
Mar 11, 2020
5a46401
Refactor node commands (#536)
shargon Mar 26, 2020
004a3b7
Fix plugin commands (#557)
shargon Apr 7, 2020
135dee9
Fix error when parsing manifestfile (#563)
bettybao1209 Apr 13, 2020
29471e6
Update Neo & enable change password (#561)
Qiao-Jin Apr 13, 2020
182681d
adapt Dockerfile to recent code changes (#536) (#567)
gsmachado Apr 17, 2020
8009786
Add StackItem ToJson (#564)
bettybao1209 Apr 22, 2020
d63e958
Update versions
erikzhang Apr 22, 2020
82033b4
Remove log logic (#577)
shargon May 4, 2020
3be2b53
Show `ScriptHash` in `list address` (#566)
ProDog May 6, 2020
b96017f
Add vote commands (#568)
ProDog May 6, 2020
abc9f2d
Backup Wallet on change password (#578)
belane May 7, 2020
38d404a
Add NEP5 commands (#575)
shargon May 8, 2020
6da43d2
Update cosigners (#579)
shargon May 8, 2020
605fccb
Parse vote commands' result (#581)
ProDog May 9, 2020
2aadff1
Fill default settings (#584)
superboyiii May 12, 2020
21a4a5b
Move SystemLog plugin into neo-cli as a native logger with on/off fun…
joeqian10 May 13, 2020
7e31e80
Show address in list key command (#585)
ProDog May 13, 2020
4bfce3d
Revert "Move SystemLog plugin into neo-cli as a native logger with on…
erikzhang May 14, 2020
d103bc5
Conversion utility methods for Neo-cli (#535)
meevee98 May 15, 2020
ecc0110
Move SystemLog to neo-cli (#587)
joeqian10 May 26, 2020
d5505db
fix relay tx (#594)
May 27, 2020
96c44fd
Update protocol.json (#593)
joeqian10 Jun 1, 2020
5070a8a
Update nuget (#598)
shargon Jun 2, 2020
4820772
Add uninstalled plugins and descriptions on "plugins" command (#599)
joeqian10 Jun 5, 2020
68f08e1
Remove `StackItem.ToParameter()` (#602)
ProDog Jun 5, 2020
ba5e3ea
Add description and uninstall restriction for "SystemLog" (#604)
joeqian10 Jun 11, 2020
3c3409c
Ensure json extension in wallet (#608)
shargon Jun 18, 2020
c1dc4c3
Add 'nativecontract' command (#607)
Jun 23, 2020
f8732f8
Fix engine.ResultStack.Pop() (#610)
ProDog Jun 24, 2020
18ae1e0
Update nuget (#615)
shargon Jun 25, 2020
61499f9
up neo.core (#618)
Tommo-L Jul 8, 2020
a886171
Fix invoke command (#613)
Tommo-L Jul 9, 2020
e556e03
Get error (#621)
shargon Jul 13, 2020
2e3b267
apply signers (#622)
ProDog Jul 15, 2020
fc4614f
update protocol.json (#625)
ProDog Jul 17, 2020
dec52fb
workflows: use checkout action v2 (#626)
shargon Jul 17, 2020
e5c7ccd
Get innerException message Recursively (#630)
cloud8little Jul 24, 2020
d519d07
Included optional "from" in send and transfer commands (#633)
Thacryba Jul 28, 2020
fb2f997
Improve Show pool command (#634)
shargon Jul 29, 2020
bb07347
Unify encoding to be Strict UTF8 (#639)
shargon Aug 5, 2020
e9c67ed
Merge preview3 to master (#642)
superboyiii Aug 5, 2020
9e6bc75
Fix gui
erikzhang Aug 11, 2020
b8ca802
Unify ApplicationEngine output (#643)
shargon Aug 11, 2020
59da501
Fix script check (#647)
Tommo-L Aug 12, 2020
86f7b90
Allow smart contract verification (#628)
shargon Aug 13, 2020
50324a1
fix applicationengine.run (#654)
Tommo-L Aug 20, 2020
0a0a54a
Remove Get validators (#662)
shargon Sep 15, 2020
184db44
fix invoke (#664)
Tommo-L Sep 18, 2020
00946fd
invoke* use base64 script (#673)
Oct 15, 2020
90c7f39
Fix to avoid duplicate error message (#674)
Tommo-L Oct 16, 2020
cc7307c
Add services to plugin system (#679)
erikzhang Nov 18, 2020
790e5d2
Max traceable blocks (#682)
Nov 30, 2020
5bfa70e
Sync neo changes (#676)
superboyiii Dec 1, 2020
8737259
Add data (#686)
superboyiii Dec 3, 2020
92363c5
Change nep (#687)
shargon Dec 3, 2020
44ca8f5
Sync to management SC (#689)
superboyiii Dec 10, 2020
f387c01
Update to Neo v3.0.0-CI01105 (#692)
superboyiii Dec 14, 2020
f0511d9
Update name nep17 (#695)
cloud8little Dec 16, 2020
5809bd5
Preview4 (#698)
superboyiii Dec 18, 2020
31bb3ca
dotnet 5.0 (#681)
chenzhitong Dec 22, 2020
2a22bfa
CI01123 (#702)
erikzhang Dec 22, 2020
b74c88f
Avoid register candidate for others (#704)
superboyiii Dec 24, 2020
9997cf4
3.0.0-CI01125 (#706)
superboyiii Dec 26, 2020
3acb8aa
Sync to CI01133 (#707)
superboyiii Jan 5, 2021
5f42af3
Sync to Neo 3.0.0-CI01148 (#709)
chenzhitong Jan 12, 2021
837acdd
Neo 3.0.0-CI01152 (#712)
erikzhang Jan 13, 2021
28ddf76
Update MainService.Plugins.cs (#713)
chenzhitong Jan 14, 2021
bc958fb
add total supply (#714)
bettybao1209 Jan 14, 2021
7ec5d76
More alignment (#716)
chenzhitong Jan 15, 2021
c667f0d
fix docker image tags, and changing to aspnet:5.0 since the runtime:5…
gsmachado Jan 18, 2021
27a1adf
update (#719)
chenzhitong Jan 18, 2021
a162816
sync ondeploycommand (#722)
bettybao1209 Jan 20, 2021
4a999ad
Neo 3.0.0-CI01168 (#724)
erikzhang Jan 21, 2021
9ab7f60
Sync to CI01171 (#726)
superboyiii Jan 24, 2021
9828279
fix broadcast getheaders (#730)
Qiao-Jin Jan 29, 2021
a7f06ca
sync block height (#733)
bettybao1209 Jan 30, 2021
5238b4e
Add test mode gas when invoking (#727)
bettybao1209 Feb 1, 2021
f0fc566
fix "show state" auto refresh (#735)
Ashuaidehao Feb 1, 2021
05e7375
Show header height when show state (#737)
ProDog Feb 3, 2021
6389ab7
Preview5 (#738)
erikzhang Feb 3, 2021
5a87cc1
update ChangeLog (#739)
Qiao-Jin Feb 5, 2021
83fe4d1
remove singletons (#740)
bettybao1209 Feb 11, 2021
c784a6c
sync neo (#743)
bettybao1209 Feb 17, 2021
17666db
fix log path (#749)
bettybao1209 Feb 21, 2021
411be0c
sync neo changes (#748)
Ashuaidehao Feb 21, 2021
343f513
fix auto start error (#750)
bettybao1209 Feb 24, 2021
2f837ed
update neo to v3.0.0-CI01229 (#752)
superboyiii Mar 3, 2021
a636e8b
Combine config.json and protocol.json (#753)
erikzhang Mar 4, 2021
3ca585d
get localnode after start (#758)
Mar 11, 2021
80efa3e
update to Neo v3.0.0-CI01239 (#755)
superboyiii Mar 12, 2021
2415d23
update changelog (#760)
Qiao-Jin Mar 16, 2021
c04972a
fix localnode null (#763)
bettybao1209 Mar 17, 2021
f3b418c
Update to 3.0.0-CI01246 (#764)
superboyiii Mar 17, 2021
25ca02b
RC1 (#765)
erikzhang Mar 17, 2021
ff14f44
Sync to Neo v3.0.0-CI01257 (#766)
superboyiii Mar 31, 2021
f2c96eb
Update MainService.Contracts.cs (#769)
chenzhitong Apr 20, 2021
d1e9648
Optimize code (#772)
ProDog Apr 25, 2021
32e3ed6
Add update (#771)
superboyiii Apr 27, 2021
1a92346
3.0.0-rc2 (#775)
superboyiii May 1, 2021
640ec49
add unvote function (#776)
cloud8little May 10, 2021
be8f8d1
Move arg (#779)
shargon May 19, 2021
69ddcaa
reorder send args (#780)
nicolegys May 25, 2021
7fb8d97
add getAccountState (#781)
superboyiii May 26, 2021
d8baf61
rc3 (#782)
superboyiii May 27, 2021
7829557
Fix incomplete signature make invoke failed. (#787)
superboyiii Jun 9, 2021
33c7a6a
fix and improve (#788)
superboyiii Jun 22, 2021
12fa179
CI01285 (#793)
superboyiii Jul 1, 2021
7075d31
Update config for N3 Testnet (#794)
erikzhang Jul 15, 2021
8814d83
Update config for N3 Mainnet (#795)
erikzhang Jul 15, 2021
4495dd3
Fix logger path (#796)
erikzhang Jul 16, 2021
9b9d55e
3.0.0-rc4 (#798)
erikzhang Jul 19, 2021
b968900
update CHANGELOG.md (#799)
superboyiii Jul 20, 2021
b8c2b5e
Fix storage path (#800)
erikzhang Jul 24, 2021
7e7d8ff
Modify the maximum input length (#801)
ProDog Jul 28, 2021
5d531a4
3.0.0 (#802)
erikzhang Aug 1, 2021
8c83fc3
Fix console encoding (#804)
erikzhang Aug 3, 2021
dfecb6f
3.0.1
erikzhang Aug 3, 2021
8b09409
Improve plugins installation (#805)
erikzhang Aug 6, 2021
3456610
3.0.2 (#806)
erikzhang Aug 6, 2021
7aa1e16
Update CHANGELOG.md (#803)
superboyiii Aug 6, 2021
115e189
Copyright in files (#813)
Aug 19, 2021
8f3fc01
Enable private key import in initial wallet creation (#815)
superboyiii Aug 25, 2021
e0162a0
Add delete address command (#817)
Qiao-Jin Aug 27, 2021
c56c283
User friendly cli console write system (#812)
Aug 31, 2021
7a3a818
Show gas (#823)
shargon Sep 16, 2021
3076872
add connections config (#825)
cloud8little Sep 29, 2021
6377bae
3.0.3 (#826)
erikzhang Oct 8, 2021
8153553
Update changelog for v3.0.3 (#827)
superboyiii Oct 8, 2021
963ccac
NeoFS side chain settings (#835)
Nov 8, 2021
5c2edbf
.NET 6.0 (#838)
erikzhang Nov 17, 2021
24bd2cc
Add data parameter when deploy and update contract (#837)
Nov 19, 2021
b56a246
use dotnet 6.0 image (#840)
Nov 26, 2021
125fda8
make workflow support develop branch (#844)
superboyiii Dec 15, 2021
5f6490f
ChangeLog v3.1.0 (#843)
superboyiii Dec 15, 2021
45f42b3
3.2.1 (#859)
superboyiii Apr 19, 2022
9f95894
Update main.yml
erikzhang May 19, 2022
5565c98
Use wallet factory (#861)
erikzhang May 19, 2022
5178f45
Sync Neo 3.2.1-CI01365 (#864)
erikzhang May 26, 2022
bf5c51b
Sync Neo 3.2.1-CI01367: Update Logger (#865)
erikzhang May 27, 2022
8a63b6d
3.3.0 (#862)
erikzhang May 31, 2022
584b866
upgrade CHANGELOG.md (#866)
superboyiii Jun 1, 2022
9512e05
delete plugin folder when uninstall plugin (#860)
Jun 10, 2022
5e3ffcb
3.3.1 (#868)
erikzhang Jun 14, 2022
4c76e18
update copyright (#875)
Jul 26, 2022
b8cae15
update (#874)
Ashuaidehao Jul 27, 2022
4509413
3.4.0 (#876)
erikzhang Aug 8, 2022
92bed8e
Fix spelling mistake (#877)
superboyiii Aug 10, 2022
bc208c8
fix (#879)
Ashuaidehao Aug 12, 2022
dcf1e28
remove sqlite (#883)
Oct 27, 2022
1fed544
3.5.0 (#885)
erikzhang Dec 7, 2022
f40b409
update to net7.0 (#888)
Jan 2, 2023
d6b05d4
update copyright (#889)
Jan 4, 2023
b8cf80d
add an icon for the application (#890)
Feb 2, 2023
8345b6e
Update Dockerfile to use dotnet 7.0 (#891)
gsmachado Feb 23, 2023
09f1dfd
featured log (#848)
Feb 27, 2023
868c053
add codeql (#895)
Apr 12, 2023
8901d89
3.6.0 (#900)
superboyiii Sep 5, 2023
d6ec9e8
Validate before deploy update (#893)
Sep 6, 2023
29d1aa9
Update Dockerfile to properly enable multi platform (#902)
gsmachado Oct 3, 2023
588f1e6
add cancel command for conflict attribute (#903)
superboyiii Oct 11, 2023
f4c4b3a
Change Cancel Scope (#904)
shargon Oct 23, 2023
da78619
v3.6.2 (#907)
superboyiii Nov 16, 2023
adfb6e9
Added blockchain show block/transactions/contracts commands (#905)
cschuchardt88 Nov 27, 2023
eaee062
Added icon to applications (#908)
cschuchardt88 Nov 27, 2023
4e7fecc
Archive (#909)
shargon Dec 7, 2023
687fffd
Port changes from neo repo (#910)
erikzhang Nov 10, 2025
1d75169
add autoinstall-storage-provider (#915)
ajara87 Nov 14, 2025
bc75188
Upgrade to Neo version 3.9.0-CI01982 (#918)
erikzhang Nov 21, 2025
0dd6736
Add auto labels to neo-node repository (#922)
shargon Nov 25, 2025
a511881
Update to 4.0 version (#921)
shargon Nov 25, 2025
007a8da
Fix: serveral bugs found by static analysis (#931)
Wi1l-B0t Nov 30, 2025
5116e96
[master] fix readonly issue in Deserialize (#934)
superboyiii Dec 1, 2025
81a9016
[N4] Unify RPC logic and fix size check (#937)
shargon Dec 3, 2025
d91898c
[N4] Update nugets (#939)
shargon Dec 4, 2025
1c8930c
Clearer RpcServer.GetCandinates to avoid false positives in static an…
Wi1l-B0t Dec 6, 2025
10424ca
Fix: show state uptime (#951)
Wi1l-B0t Dec 20, 2025
2932ddb
Nullable (#946)
erikzhang Dec 30, 2025
db41ee7
[N4] Happy new year 2026 (#957)
shargon Jan 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
263 changes: 263 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,263 @@
###############################
# Core EditorConfig Options #
###############################

# dotnet-format requires version 3.1.37601
# dotnet tool update -g dotnet-format
# remember to have: git config --global core.autocrlf false #(which is usually default)

# top-most EditorConfig file
root = true

# Don't use tabs for indentation.
[*]
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
charset = utf-8
end_of_line = lf

# (Please don't specify an indent_size here; that has too many unintended consequences.)
spelling_exclusion_path = SpellingExclusions.dic

# Code files
[*.{cs,csx,vb,vbx}]
indent_size = 4
insert_final_newline = true
trim_trailing_whitespace = true
charset = utf-8

# XML project files
[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj}]
indent_size = 2

# XML config files
[*.{props,targets,ruleset,config,nuspec,resx,vsixmanifest,vsct}]
indent_size = 2

# JSON files
[*.json]
indent_size = 2

# Powershell files
[*.ps1]
indent_size = 2

# Shell script files
[*.sh]
end_of_line = lf
indent_size = 2

# YAML files
[*.yml]
end_of_line = lf
indent_size = 2

# Dotnet code style settings:
[*.{cs,vb}]
# Use file-scoped namespace
csharp_style_namespace_declarations = file_scoped:warning

# Member can be made 'readonly'
csharp_style_prefer_readonly_struct_member = true
dotnet_diagnostic.IDE0251.severity = warning

dotnet_diagnostic.CS1591.severity = silent
// Use primary constructor
csharp_style_prefer_primary_constructors = false

# Sort using and Import directives with System.* appearing first
dotnet_sort_system_directives_first = false
dotnet_separate_import_directive_groups = false

# Avoid "this." and "Me." if not necessary
dotnet_style_qualification_for_field = false:warning
dotnet_style_qualification_for_property = false:warning
dotnet_style_qualification_for_method = false:warning
dotnet_style_qualification_for_event = false:warning

# Use language keywords instead of framework type names for type references
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion
dotnet_style_predefined_type_for_member_access = true:suggestion

# Suggest more modern language features when available
dotnet_style_object_initializer = true:warning
dotnet_style_collection_initializer = true:warning
dotnet_style_coalesce_expression = true:suggestion
dotnet_style_null_propagation = true:suggestion
dotnet_style_explicit_tuple_names = true:suggestion
dotnet_style_prefer_collection_expression = never

# Whitespace options
dotnet_style_allow_multiple_blank_lines_experimental = false

# Non-private static fields are PascalCase
dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.severity = suggestion
dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.symbols = non_private_static_fields
dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.style = non_private_static_field_style

dotnet_naming_symbols.non_private_static_fields.applicable_kinds = field
dotnet_naming_symbols.non_private_static_fields.applicable_accessibilities = public, protected, internal, protected_internal, private_protected
dotnet_naming_symbols.non_private_static_fields.required_modifiers = static

dotnet_naming_style.non_private_static_field_style.capitalization = pascal_case

# Non-private readonly fields are PascalCase
dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.severity = suggestion
dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.symbols = non_private_readonly_fields
dotnet_naming_rule.non_private_readonly_fields_should_be_pascal_case.style = non_private_readonly_field_style

dotnet_naming_symbols.non_private_readonly_fields.applicable_kinds = field
dotnet_naming_symbols.non_private_readonly_fields.applicable_accessibilities = public, protected, internal, protected_internal, private_protected
dotnet_naming_symbols.non_private_readonly_fields.required_modifiers = readonly

dotnet_naming_style.non_private_readonly_field_style.capitalization = pascal_case

# Local functions are PascalCase
dotnet_naming_rule.local_functions_should_be_pascal_case.severity = suggestion
dotnet_naming_rule.local_functions_should_be_pascal_case.symbols = local_functions
dotnet_naming_rule.local_functions_should_be_pascal_case.style = local_function_style

dotnet_naming_symbols.local_functions.applicable_kinds = local_function

dotnet_naming_style.local_function_style.capitalization = pascal_case

file_header_template = Copyright (C) 2015-2026 The Neo Project.\n\n{fileName} file belongs to the neo project and is free\nsoftware distributed under the MIT software license, see the\naccompanying file LICENSE in the main directory of the\nrepository or http://www.opensource.org/licenses/mit-license.php\nfor more details.\n\nRedistribution and use in source and binary forms with or without\nmodifications are permitted.

# Require file header
dotnet_diagnostic.IDE0073.severity = warning

# RS0016: Only enable if API files are present
dotnet_public_api_analyzer.require_api_files = true

# IDE0055: Fix formatting
# Workaround for https://github.com/dotnet/roslyn/issues/70570
dotnet_diagnostic.IDE0055.severity = warning

# CSharp code style settings:
[*.cs]
# Newline settings
csharp_new_line_before_open_brace = all
csharp_new_line_before_else = true
csharp_new_line_before_catch = true
csharp_new_line_before_finally = true
csharp_new_line_before_members_in_object_initializers = true
csharp_new_line_before_members_in_anonymous_types = true
csharp_new_line_between_query_expression_clauses = true

# Indentation preferences
csharp_indent_block_contents = true
csharp_indent_braces = false
csharp_indent_case_contents = true
csharp_indent_case_contents_when_block = true
csharp_indent_switch_labels = true
csharp_indent_labels = flush_left

# Whitespace options
csharp_style_allow_embedded_statements_on_same_line_experimental = false
csharp_style_allow_blank_lines_between_consecutive_braces_experimental = false
csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = false
csharp_style_allow_blank_line_after_token_in_conditional_expression_experimental = false
csharp_style_allow_blank_line_after_token_in_arrow_expression_clause_experimental = false

# Prefer method-like constructs to have a block body
csharp_style_expression_bodied_methods = false:none
csharp_style_expression_bodied_constructors = false:none
csharp_style_expression_bodied_operators = false:none

# Prefer property-like constructs to have an expression-body
csharp_style_expression_bodied_properties = true:none
csharp_style_expression_bodied_indexers = true:none
csharp_style_expression_bodied_accessors = true:none

# IDE0230: Use UTF-8 string literal
csharp_style_prefer_utf8_string_literals = true:silent

# Suggest more modern language features when available
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion
csharp_style_inlined_variable_declaration = true:suggestion
csharp_style_throw_expression = true:suggestion
csharp_style_conditional_delegate_call = true:suggestion
csharp_style_prefer_extended_property_pattern = true:suggestion

# Space preferences
csharp_space_after_cast = false
csharp_space_after_colon_in_inheritance_clause = true
csharp_space_after_comma = true
csharp_space_after_dot = false
csharp_space_after_keywords_in_control_flow_statements = true
csharp_space_after_semicolon_in_for_statement = true
csharp_space_around_binary_operators = before_and_after
csharp_space_around_declaration_statements = do_not_ignore
csharp_space_before_colon_in_inheritance_clause = true
csharp_space_before_comma = false
csharp_space_before_dot = false
csharp_space_before_open_square_brackets = false
csharp_space_before_semicolon_in_for_statement = false
csharp_space_between_empty_square_brackets = false
csharp_space_between_method_call_empty_parameter_list_parentheses = false
csharp_space_between_method_call_name_and_opening_parenthesis = false
csharp_space_between_method_call_parameter_list_parentheses = false
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
csharp_space_between_method_declaration_name_and_open_parenthesis = false
csharp_space_between_method_declaration_parameter_list_parentheses = false
csharp_space_between_parentheses = false
csharp_space_between_square_brackets = false

# Blocks are allowed
csharp_prefer_braces = true:silent
csharp_preserve_single_line_blocks = true
csharp_preserve_single_line_statements = true

# IDE0060: Remove unused parameter
dotnet_diagnostic.IDE0060.severity = none

[src/{Analyzers,CodeStyle,Features,Workspaces,EditorFeatures,VisualStudio}/**/*.{cs,vb}]

# Avoid "this." and "Me." if not necessary
dotnet_diagnostic.IDE0003.severity = warning
dotnet_diagnostic.IDE0009.severity = warning

# IDE0011: Add braces
csharp_prefer_braces = when_multiline:warning
# NOTE: We need the below severity entry for Add Braces due to https://github.com/dotnet/roslyn/issues/44201
dotnet_diagnostic.IDE0011.severity = warning

# IDE0040: Add accessibility modifiers
dotnet_diagnostic.IDE0040.severity = warning

# IDE0052: Remove unread private member
dotnet_diagnostic.IDE0052.severity = warning

# IDE0059: Unnecessary assignment to a value
dotnet_diagnostic.IDE0059.severity = warning

# Use collection expression for array
dotnet_diagnostic.IDE0300.severity = warning

# CA1012: Abstract types should not have public constructors
dotnet_diagnostic.CA1012.severity = warning

# CA1822: Make member static
dotnet_diagnostic.CA1822.severity = warning

# csharp_style_allow_embedded_statements_on_same_line_experimental
dotnet_diagnostic.IDE2001.severity = warning

# csharp_style_allow_blank_lines_between_consecutive_braces_experimental
dotnet_diagnostic.IDE2002.severity = warning

# csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental
dotnet_diagnostic.IDE2004.severity = warning

# csharp_style_allow_blank_line_after_token_in_conditional_expression_experimental
dotnet_diagnostic.IDE2005.severity = warning

# csharp_style_allow_blank_line_after_token_in_arrow_expression_clause_experimental
dotnet_diagnostic.IDE2006.severity = warning

[src/{VisualStudio}/**/*.{cs,vb}]
# CA1822: Make member static
# There is a risk of accidentally breaking an internal API that partners rely on though IVT.
dotnet_code_quality.CA1822.api_surface = private
28 changes: 28 additions & 0 deletions .github/workflows/auto-labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Auto-label PRs

on:
pull_request_target:
types: [opened, synchronize, reopened]

permissions:
pull-requests: write

jobs:
add-label:
runs-on: ubuntu-latest
steps:
- name: Add N4 label to PRs targeting master
if: github.event.pull_request.base.ref == 'master'
uses: actions-ecosystem/action-add-labels@v1.1.3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
labels: |
N4

- name: Add N3 label to PRs targeting master-n3
if: github.event.pull_request.base.ref == 'master-n3'
uses: actions-ecosystem/action-add-labels@v1.1.3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
labels: |
N3
46 changes: 46 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: .NET Core Test

on: pull_request

env:
DOTNET_VERSION: 10.0.x

jobs:
Test:
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup .NET Core
uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ env.DOTNET_VERSION }}
- name: Check format
if: runner.os == 'Linux'
run: dotnet format --no-restore --verify-no-changes --verbosity diagnostic
- name: Build CLI
if: runner.os == 'Linux'
run: |
dotnet publish -o ./out -c Release src/Neo.CLI
find ./out -name 'config.json' | xargs perl -pi -e 's|LevelDBStore|MemoryStore|g'
- name: Install dependencies
if: runner.os == 'Linux'
run: sudo apt-get install libleveldb-dev expect
- name: Run tests with expect
if: runner.os == 'Linux'
run: expect ./.github/workflows/test-neo-cli.expect
- name: Run Unit Tests
if: runner.os == 'Windows'
run: |
forfiles /p tests /m *.csproj /s /c "cmd /c dotnet add @PATH package coverlet.msbuild"
dotnet test /p:CollectCoverage=true /p:CoverletOutput='${{ github.workspace }}/TestResults/coverage/' /p:MergeWith='${{ github.workspace }}/TestResults/coverage/coverage.json' /p:CoverletOutputFormat=lcov%2cjson -m:1
- name: Coveralls
if: runner.os == 'Windows'
uses: coverallsapp/github-action@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
format: lcov
file: ${{ github.workspace }}/TestResults/coverage/coverage.info
30 changes: 27 additions & 3 deletions ci/test-neo-cli.expect → .github/workflows/test-neo-cli.expect
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
set timeout 10

# Start neo-cli
spawn dotnet neo-cli.dll --rpc
spawn dotnet out/neo-cli.dll

# Expect the main input prompt
expect {
Expand All @@ -17,7 +17,31 @@ expect {
#
# Test 'create wallet'
#
send "create wallet test-wallet.json\n"
send "create wallet test-wallet1.json\n"

expect {
"password:" { send "asd\n" }
"error" { exit 2 }
timeout { exit 1 }
}

expect {
"password:" { send "asd\n" }
"error" { exit 2 }
timeout { exit 1 }
}

expect {
" Address:" { }
"error" { exit 2 }
timeout { exit 1 }
}

#
# Test 'create wallet'
#
send "create wallet test-wallet2.json L2ArHTuiDL4FHu4nfyhamrG8XVYB4QyRbmhj7vD6hFMB5iAMSTf6\n"

expect {
"password:" { send "asd\n" }
"error" { exit 2 }
Expand All @@ -31,7 +55,7 @@ expect {
}

expect {
"address:" { }
"Address: NUj249PQg9EMJfAuxKizdJwMG7GSBzYX2Y" { }
"error" { exit 2 }
timeout { exit 1 }
}
Expand Down
8 changes: 0 additions & 8 deletions .travis.yml

This file was deleted.

Loading