diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 000000000..3a65aebf7 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,70 @@ +############################################################################### +# Set default behavior to automatically normalize line endings. +############################################################################### +* text eol=lf +*.cs text eol=lf +*.csproj text eol=lf +*.props text eol=lf +*.json text eol=lf +*.targets text eol=lf + +############################################################################### +# Set default behavior for command prompt diff. +# +# This is need for earlier builds of msysgit that does not have it on by +# default for csharp files. +# Note: This is only used by command line +############################################################################### +*.cs diff=csharp + +############################################################################### +# Set the merge driver for project and solution files +# +# Merging from the command prompt will add diff markers to the files if there +# are conflicts (Merging from VS is not affected by the settings below, in VS +# the diff markers are never inserted). Diff markers may cause the following +# file extensions to fail to load in VS. An alternative would be to treat +# these files as binary and thus will always conflict and require user +# intervention with every merge. To do so, just uncomment the entries below +############################################################################### +*.sln text eol=crlf +#*.csproj text eol=crlf +#*.vbproj merge=binary +#*.vcxproj merge=binary +#*.vcproj merge=binary +#*.dbproj merge=binary +#*.fsproj merge=binary +#*.lsproj merge=binary +#*.wixproj merge=binary +#*.modelproj merge=binary +#*.sqlproj merge=binary +#*.wwaproj merge=binary + +############################################################################### +# behavior for image files +# +# image files are treated as binary by default. +############################################################################### +*.jpg binary +*.png binary +*.gif binary +*.ico binary +*.zip binary + +############################################################################### +# diff behavior for common document formats +# +# Convert binary document formats to text before diffing them. This feature +# is only available from the command line. Turn it on by uncommenting the +# entries below. +############################################################################### +#*.doc diff=astextplain +#*.DOC diff=astextplain +#*.docx diff=astextplain +#*.DOCX diff=astextplain +#*.dot diff=astextplain +#*.DOT diff=astextplain +#*.pdf diff=astextplain +#*.PDF diff=astextplain +#*.rtf diff=astextplain +#*.RTF diff=astextplain diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 000000000..e093c7c14 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,47 @@ +# Description + + + +# Change Log + + +Fixes # (issue) + +## Type of change + + + +- [ ] Optimization (the change is only an optimization) +- [ ] Style (the change is only a code style for better maintenance or standard purpose) +- [ ] 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 + +# How Has This Been Tested? + + + +- [ ] Unit Testing +- [ ] Run Application +- [ ] Local Computer Tests +- [ ] No Testing + + +# Checklist: + +- [ ] My code follows the style guidelines of this project +- [ ] I have performed a self-review of my code +- [ ] I have commented my code, particularly in hard-to-understand areas +- [ ] I have made corresponding changes to the documentation +- [ ] My changes generate no new warnings +- [ ] I have added tests that prove my fix is effective or that my feature works +- [ ] New and existing unit tests pass locally with my changes +- [ ] Any dependent changes have been merged and published in downstream modules diff --git a/.gitignore b/.gitignore index 940794e60..f86ddf565 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,5 @@ ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. -## -## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore # User-specific files *.suo @@ -19,10 +17,12 @@ [Rr]eleases/ x64/ x86/ +build/ bld/ [Bb]in/ [Oo]bj/ [Ll]og/ +.store/ # Visual Studio 2015 cache/options directory .vs/ @@ -42,11 +42,9 @@ TestResult.xml [Rr]eleasePS/ dlldata.c -# .NET Core +# DNX project.lock.json -project.fragment.lock.json artifacts/ -**/Properties/launchSettings.json *_i.c *_p.c @@ -113,10 +111,6 @@ _TeamCity* # DotCover is a Code Coverage Tool *.dotCover -# Visual Studio code coverage results -*.coverage -*.coveragexml - # NCrunch _NCrunch_* .*crunch*.local.xml @@ -160,13 +154,17 @@ PublishScripts/ # NuGet Packages *.nupkg +*.snupkg + # The packages folder can be ignored because of Package Restore **/packages/* + # except build/, which is used as an MSBuild target. !**/packages/build/ + # Uncomment if necessary however generally it will be regenerated when needed #!**/packages/repositories.config -# NuGet v3's project.json files produces more ignorable files +# NuGet v3's project.json files produces more ignoreable files *.nuget.props *.nuget.targets @@ -191,19 +189,21 @@ _pkginfo.txt !*.[Cc]ache/ # Others +*.[Cc]ache ClientBin/ +[Ss]tyle[Cc]op.* ~$* *~ *.dbmdl *.dbproj.schemaview -*.jfm *.pfx *.publishsettings +node_modules/ orleans.codegen.cs # Since there are multiple workflows, uncomment next line to ignore bower_components # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) -#bower_components/ +bower_components/ # RIA/Silverlight projects Generated_Code/ @@ -219,7 +219,6 @@ UpgradeLog*.htm # SQL Server files *.mdf *.ldf -*.ndf # Business Intelligence projects *.rdl.data @@ -234,10 +233,6 @@ FakesAssemblies/ # Node.js Tools for Visual Studio .ntvs_analysis.dat -node_modules/ - -# Typescript v1 declaration files -typings/ # Visual Studio 6 build log *.plg @@ -245,9 +240,6 @@ typings/ # Visual Studio 6 workspace options file *.opt -# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) -*.vbw - # Visual Studio LightSwitch build output **/*.HTMLClient/GeneratedArtifacts **/*.DesktopClient/GeneratedArtifacts @@ -267,22 +259,12 @@ paket-files/ .idea/ *.sln.iml -# CodeRush -.cr/ - -# Python Tools for Visual Studio (PTVS) -__pycache__/ -*.pyc - -# Cake - Uncomment if you are using it -# tools/** -# !tools/packages.config - -# Telerik's JustMock configuration file -*.jmconfig +PublishProfiles +/.vscode +launchSettings.json +/coverages +**/.DS_Store -# BizTalk build output -*.btp.cs -*.btm.cs -*.odx.cs -*.xsd.cs +# Benchmarks +**/BenchmarkDotNet.Artifacts/ +/src/Neo.CLI/neo-cli/ diff --git a/.neo/README.md b/.neo/README.md new file mode 100644 index 000000000..735c85dfb --- /dev/null +++ b/.neo/README.md @@ -0,0 +1,26 @@ +## Overview +This repository contain main classes of the [Neo](https://www.neo.org) blockchain. +Visit the [documentation](https://docs.neo.org/docs/en-us/index.html) to get started. + +## Related projects +Code references are provided for all platform building blocks. That includes the base library, the VM, a command line application and the compiler. + +- [neo:](https://github.com/neo-project/neo/) Neo core library, contains base classes, including ledger, p2p and IO modules. +- [neo-node](https://github.com/neo-project/neo-node) Neo CLI for running a node. +- [neo-vm](https://github.com/neo-project/neo-vm) Neo VM for running neo contracts. +- [neo-devpack-dotnet:](https://github.com/neo-project/neo-devpack-dotnet/) These are the official tools used to convert a C# smart-contract into a *neo executable file*. + +## Opening a new issue +Please feel free to create new issues to suggest features or ask questions. + +- [Feature request](https://github.com/neo-project/neo/issues/new?assignees=&labels=discussion&template=feature-or-enhancement-request.md&title=) +- [Bug report](https://github.com/neo-project/neo/issues/new?assignees=&labels=&template=bug_report.md&title=) +- [Questions](https://github.com/neo-project/neo/issues/new?assignees=&labels=question&template=questions.md&title=) + +If you found a security issue, please refer to our [security policy](https://github.com/neo-project/neo/security/policy). + +## Bounty program +You can be rewarded by finding security issues. Please refer to our [bounty program page](https://neo.org/bounty) for more information. + +## License +The NEO project is licensed under the [MIT license](http://www.opensource.org/licenses/mit-license.php). diff --git a/.neo/neo.png b/.neo/neo.png new file mode 100644 index 000000000..1a71de07e Binary files /dev/null and b/.neo/neo.png differ diff --git a/SpellingExclusions.dic b/SpellingExclusions.dic new file mode 100644 index 000000000..e69de29bb diff --git a/plugins/Directory.Build.props b/plugins/Directory.Build.props index 1c06fd7ef..72b4483a0 100644 --- a/plugins/Directory.Build.props +++ b/plugins/Directory.Build.props @@ -4,19 +4,31 @@ 2015-2025 The Neo Project The Neo Project + $(Authors) Neo.Plugins.$(MSBuildProjectName) - https://github.com/neo-project/neo-modules + neo.png + README.md + https://github.com/neo-project/neo-node + https://github.com/neo-project/neo-node.git MIT git - https://github.com/neo-project/neo-modules.git NEO;Blockchain 4.0.0 net10.0 $(PackageId) - enable + true + snupkg + true true + enable + ../../bin/$(PackageId) + + + + + diff --git a/src/Directory.Build.props b/src/Directory.Build.props index e87c75bad..c3453614b 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -4,10 +4,23 @@ 2015-2025 The Neo Project The Neo Project + $(Authors) net10.0 4.0.0 + $(MSBuildProjectName) + neo.png + README.md + https://github.com/neo-project/neo-node + MIT + git + https://github.com/neo-project/neo-node.git + NEO;Blockchain + true + snupkg + true enable enable + ../../bin/$(PackageId) @@ -15,4 +28,9 @@ + + + + + diff --git a/src/Neo.CLI/Neo.CLI.csproj b/src/Neo.CLI/Neo.CLI.csproj index 36ad6310c..c5db13e29 100644 --- a/src/Neo.CLI/Neo.CLI.csproj +++ b/src/Neo.CLI/Neo.CLI.csproj @@ -5,6 +5,7 @@ neo-cli Exe neo.ico + false diff --git a/src/Neo.GUI/Neo.GUI.csproj b/src/Neo.GUI/Neo.GUI.csproj index b6a8508f6..c0d98b7ac 100644 --- a/src/Neo.GUI/Neo.GUI.csproj +++ b/src/Neo.GUI/Neo.GUI.csproj @@ -9,6 +9,7 @@ true disable neo.ico + false diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props index b479c2d9f..50a28eee1 100644 --- a/tests/Directory.Build.props +++ b/tests/Directory.Build.props @@ -2,6 +2,7 @@ + Exe net10.0 enable false @@ -15,4 +16,8 @@ + + + +