Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
EtherCoreAdmin committed Feb 26, 2020
0 parents commit 94ec4fe
Show file tree
Hide file tree
Showing 132 changed files with 34,084 additions and 0 deletions.
20 changes: 20 additions & 0 deletions .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
[bumpversion]
current_version = 1.0.0
commit = True
message = ethcoreminer {new_version}

Bump version: {current_version} → {new_version}
tag = True
parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)(-(?P<prerel>rc|alpha)\.(?P<prerelver>\d+))?
serialize =
{major}.{minor}.{patch}-{prerel}.{prerelver}
{major}.{minor}.{patch}

[bumpversion:part:prerel]
optional_value = rel
values =
alpha
rc
rel

[bumpversion:file:CMakeLists.txt]
42 changes: 42 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
Language: Cpp
BasedOnStyle: Chromium
AccessModifierOffset: -4
AlignAfterOpenBracket: DontAlign
BinPackParameters: true
BraceWrapping:
AfterClass: true
AfterControlStatement: true
AfterEnum: true
AfterFunction: true
AfterNamespace: true
AfterObjCDeclaration: true
AfterStruct: true
AfterUnion: true
BeforeCatch: true
BeforeElse: true
SplitEmptyFunction: false
BreakBeforeBraces: Custom
BreakBeforeTernaryOperators: false
ColumnLimit: 100
ConstructorInitializerIndentWidth: 2
IncludeCategories:
- Regex: '^".*'
Priority: 1
- Regex: '^<boost.*'
Priority: 98
- Regex: '^<.*\.h>'
Priority: 2
- Regex: '^<.*'
Priority: 99
- Regex: '.*'
Priority: 4
IncludeIsMainRegex: '(Test)?$'
IndentCaseLabels: false
IndentWidth: 4
MaxEmptyLinesToKeep: 2
PenaltyBreakAssignment: 1
PenaltyBreakComment: 50
TabWidth: 4
...

8 changes: 8 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
Checks: 'clang-diagnostic-*,clang-analyzer-*,modernize-*,bugprone-*,readability-*,-readability-implicit-bool-conversion,performance-*'
WarningsAsErrors: ''
HeaderFilterRegex: 'ethcoreminer/.*'
CheckOptions:
- key: readability-braces-around-statements.ShortStatementLines
value: '3'
...
6 changes: 6 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Declare files that will always have LF line endings on checkout.
*.bash text eol=lf
*.cpp text eol=lf
*.h text eol=lf
*.py text eol=lf
*.sh text eol=lf
77 changes: 77 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Compiled Object files
*.slo
*.lo
*.o

# Compiled Dynamic libraries
*.so
*.dylib

# Compiled Static libraries
*.lai
*.la
*.a

# VS stuff
build
ipch
*.sdf
*.opensdf
*.suo
*.vcxproj
*.vcxproj.filters
*.sln

# VIM stuff
*.swp

# Xcode stuff
build_xc

*.user
*.user.*
*~

# build system
build.*/
extdep/install
extdep/download
/cmake-build-*/

*.pyc

# MacOS Development
.DS_Store
# CocoaPods
Pods/
Podfile.lock
# Xcode
.DS_Store
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
*.xcworkspace
!default.xcworkspace
xcuserdata
*.xcuserstate
profile
*.moved-aside
DerivedData
project.pbxproj

# JetBrains stuff
.idea/

doc/html
*.autosave
node_modules/

# vscode
.vscode/
/.vs
7 changes: 7 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[submodule "cmake/Hunter/disabled-mode"]
path = cmake/Hunter/disabled-mode
url = https://github.com/hunter-packages/disabled-mode
[submodule "cmake/cable"]
path = cmake/cable
url = https://github.com/ethereum/cable
branch = master
128 changes: 128 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
language: cpp
env:
global:
- secure: "Pu2hPyp3Ym3hmkW9iXVZObfE7tA3ITSaeR05VguJ9czJAMgaT7LmEN4LDoR2sQHbRAv+8QngbNUFpglzvZLIBIEefyEA39DThZptkKJ+hCUerRajfmXywSXCwPC7A1uTEY1YoUDlGvxVZA3Z7f17GFtKtDuHjLSWmrxHAM6wjK+qCweEq0umJJ+N+2DX2UpVLlWgYoknYSGipfjHRBEgPp4NRh08yvpDTFYSVQeL0qL7LbyAtkx6qhLCK6JZ2CsP3INQOoRwc8jP6VIFbuoHl3lkOzayNM49/e9wDdZ8FGqp0HjUFi7EYi/78Uvje7CrgdCiSVwoHbtAvcyPYcxu+qXzwh4AxslRL7UJtOzTbRaXfJvqt2oqtttFjD0Dk/iwnAthg7Su6UohivcUVj/9p1X1KdDbLJcoTag/MBcZP7VJDgnHjyqYwVciT1ZV0RWfuLBI584vFMTlsdzFXt384mUTCN02BOnRnw3Miq4a5irFXnDy23TdGersk7b//FPIBIhPv/wxCjUkJzTmt7ska5jACb/FHUoOyrE5mQLSVZbh/zlsIKf8yWZy7q7caowmwyPYZtAqNZWj1JmVs2c+0RmX2c76kCTHX4ocCcDx1QqV49/+R1Ah+pA7X7kcr9MklzL9z/lkAA7z5SF/UzdoGfBNicMKz5hUFixBqZ04ATw="
branches:
only:
- /^v\d+\..+$/
- master
- ci
- travis
- hunter
- coverity
- /^travis-.*$/
- /^release.*$/
matrix:
include:
- os: linux
dist: trusty
sudo: required
env:
- CUDA=ON
- CUDA_VERSION=10
- os: linux
dist: trusty
sudo: required
env:
- CUDA=ON
- CUDA_VERSION=9
- os: linux
dist: trusty
sudo: required
env:
- CUDA=ON
- CUDA_VERSION=8
- os: linux
dist: trusty
sudo: required
env:
- CUDA=OFF
- os: osx
osx_image: xcode9.2
env:
- CUDA=ON
- CUDA_VERSION=9
- os: osx
osx_image: xcode9.2
env:
- CUDA=OFF
cache:
directories:
- $HOME/.local
before_install:
- |
if [ "$TRAVIS_OS_NAME" = linux ]; then
echo "Checking format of sourcecode..."
find . -type f \( -name '*.cpp' -o -name '*.h' -o -name '*.cu' -o -name '*.cuh' \) -print0 | xargs -r0 clang-format -i
git diff --color # --exit-code
fi
- |
if [ "$TRAVIS_OS_NAME" = linux ] && [ "$CUDA" = "ON" ]; then
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
sudo apt-get -q update
sudo apt-get -qy install g++-6
scripts/install_cmake.sh
. scripts/install-cuda-ubuntu1604.sh $CUDA_VERSION
pyenv global 3.6
pip install --user requests gitpython
if [ "$CUDA_VERSION" = "8" ]; then
sudo apt-get -qy install g++-5
fi
export CC=gcc-6
export CXX=g++-6
elif [ "$TRAVIS_OS_NAME" = linux ] && [ "$CUDA" = "OFF" ]; then
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
sudo apt-get -q update
sudo apt-get -qy install g++-6
scripts/install_cmake.sh
pyenv global 3.6
pip install --user requests gitpython
export CC=gcc-6
export CXX=g++-6
elif [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$CUDA" = "ON" ]; then
curl -L https://developer.nvidia.com/compute/cuda/9.1/Prod/local_installers/cuda_9.1.128_mac -o $HOME/cuda_9.1.128_mac.dmg
hdiutil mount $HOME/cuda_9.1.128_mac.dmg
sleep 5
ls -ltr /Volumes/CUDAMacOSXInstaller/CUDAMacOSXInstaller.app/Contents/MacOS
sudo /Volumes/CUDAMacOSXInstaller/CUDAMacOSXInstaller.app/Contents/MacOS/CUDAMacOSXInstaller --accept-eula --no-window; export BREW_STATUS=$?
echo "Brew status $BREW_STATUS"
if [ $BREW_STATUS -ne 0 ]; then
echo "Brew Failed"
exit $BREW_STATUS
fi
HOMEBREW_NO_AUTO_UPDATE=1 brew install -q python3
pip3 install -q requests gitpython
elif [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$CUDA" = "OFF" ]; then
HOMEBREW_NO_AUTO_UPDATE=1 brew install -q python3
pip3 install -q requests gitpython
fi
script: |
if [ "$CUDA_VERSION" = "8" ]; then
cmake -DCUDA_HOST_COMPILER=/usr/bin/gcc-5 -DHUNTER_JOBS_NUMBER=4 -DETHASHCUDA=$CUDA -DETHASHCL=ON -DAPICORE=ON -H. -Bbuild
elif [ "$CUDA" = "OFF" ]; then
cmake -DHUNTER_JOBS_NUMBER=4 -DETHASHCUDA=OFF -DETHASHCL=ON -DAPICORE=ON -H. -Bbuild
else
cmake -DHUNTER_JOBS_NUMBER=4 -DETHASHCUDA=$CUDA -DETHASHCL=ON -DAPICORE=ON -H. -Bbuild
fi
cmake --build build --target package -- -j4
#build/ethcoreminer/ethcoreminer --help
if [ "$TRAVIS_OS_NAME" = linux ]; then ldd -v build/ethcoreminer/ethcoreminer; fi
if [ "$TRAVIS_OS_NAME" = osx ]; then otool -L build/ethcoreminer/ethcoreminer; fi
. build/ethcoreminer/buildinfo.sh
mkdir package
if [ "$CUDA" = "OFF" ]; then
mv build/ethcoreminer.tar.gz package/$PROJECT_NAME-$PROJECT_VERSION-amd-opencl-$SYSTEM_NAME-$SYSTEM_PROCESSOR.tar.gz
else
mv build/ethcoreminer.tar.gz package/$PROJECT_NAME-$PROJECT_VERSION-nvidia-cuda-$CUDA_VERSION-$SYSTEM_NAME-$SYSTEM_PROCESSOR.tar.gz
fi
deploy:
- provider: releases
api_key:
secure: "TVqN0cNOYnvBvH5dprzILUGalVtKsdLjfKe5AnlS63yO22RUPaelzmCctVX7Isw6BQLes8lfQ8SoR0tj5MPvvKS7nYHaxQuv9Iou8f4LeFN/EHzH7jcVCe8oyQfCRLe5jt7ii4FMxWHsyreA4NNgc35IzCRIbT9w+l3v/CuJvfYfmjScu/5vmliornZ6Q3WCu49jLUIU7/uPivAfcdhvToSnO0tJUCKJIuBmWsLRRdJFu68LKhT3MDrCtyzF3EtLpTm7cJeQ/RvN55UlCjhNoBcQYDTY1gsEo/l0xBqalT3CFIoMUl1Fb0yOMU6udSSPnTDqlqY5cgOhrzZJxjYAI8LM9UZYuOt9Z4rh/GJb17Epg1WS+LGmonCexgBjZqBrOEQuOdJPnnydg7rH0i7v9z4zPi0cD21uFYvCgMdLgI4Lplylv1fSqt3HNOICoX6bVauA5PQ+m5cUf7nG3yPo9RXbn9wmwOTqNXz/Kgeik36EHewaOAaGSR9ZWg/jFHSLkfvXrvtMK7QAR+DZM5pdlKY3nTenf7vb4faEzlqb7/jglI7i14gt72yjg/Y5ZlB6sI1t2h7riUHakRja0PYbfrCcmH2fyo5l+x1Jz37/qTB2ni4cm2ccDkxocC/2C8Ky1MDUro2Le/qkHSRFQ5ns5BYd5KaiZ4ZMzonbl/04crs="
file_glob: true
file: package/*
skip_cleanup: true
on:
tags: true
5 changes: 5 additions & 0 deletions BuildInfo.h.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#pragma once

#define ETH_PROJECT_VERSION "@PROJECT_VERSION@"
#define ETH_BUILD_TYPE "@ETH_BUILD_TYPE@"
#define ETH_BUILD_PLATFORM "@ETH_BUILD_PLATFORM@"
67 changes: 67 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## 0.16.1rc0

### Fixed

- Display interval correction [#1606](https://github.com/ethereum-mining/ethminer/pull/1606)

## 0.16.0rc0

### Fixed

- Eliminated duplicate solutions with stratum2 on difficulty changes.
- Restored proper behavior of `-P` argument to identify workernames and emails

### Added

- Basic API authentication to protect exposure of API port to the internet [#1228](https://github.com/ethereum-mining/ethminer/pull/1228).
- Add `ispaused` information into response of `miner_getstathr` API query [#1232](https://github.com/ethereum-mining/ethminer/pull/1232).
- API responses return "ethminer-" as version prefix. [#1300](https://github.com/ethereum-mining/ethminer/pull/1300).
- Stratum mode autodetection. No need to specify `stratum+tcp` or `stratum1+tcp` or `stratum2+tcp`
- Connection failed due to login errors (wrong address or worker) are marked Unrecoverable and no longer used
- Replaced OpenCL kernel with opensource jawawawa OpenCL kernel
- Added support for jawawawa AMD binary kernels
- AMD auto kernel selection. Try bin first, if not fall back to OpenCL.
- API: New method `miner_setverbosity`. [#1382](https://github.com/ethereum-mining/ethminer/pull/1382).
- Implemented fast job switch algorithm on AMD reducing switch time to 1-2 milliseconds.
- Added localization support for output number formatting.
- Changed the --verbosity option to allow individual enable/disable of logging features.
- Improved hash rate measurement accuracy.

### Removed

- Command line argument `--stratum-email`: any information needed to authenticate on the pool **MUST BE** set using the `-P` argument

## 0.15.0rc1

### Fixed

- Restore the ability to auto-config OpenCL work size [#1225](https://github.com/ethereum-mining/ethminer/pull/1225).
- The API server totally broken fixed [#1227](https://github.com/ethereum-mining/ethminer/pull/1227).


## 0.15.0rc0

### Added

- Add `--tstop` and `--tstart` option preventing GPU overheating [#1146](https://github.com/ethereum-mining/ethminer/pull/1146), [#1159](https://github.com/ethereum-mining/ethminer/pull/1159).
- Added information about ordering CUDA devices in the README.md FAQ [#1162](https://github.com/ethereum-mining/ethminer/pull/1162).

### Fixed

- Reconnecting with mining pool improved [#1135](https://github.com/ethereum-mining/ethminer/pull/1135).
- Stratum nicehash. Avoid recalculating target with every job [#1156](https://github.com/ethereum-mining/ethminer/pull/1156).
- Drop duplicate stratum jobs (pool bug workaround) [#1161](https://github.com/ethereum-mining/ethminer/pull/1161).
- CLI11 command line parsing support added [#1160](https://github.com/ethereum-mining/ethminer/pull/1160).
- Farm mode (get_work): fixed loss of valid shares and increment in stales [#1215](https://github.com/ethereum-mining/ethminer/pull/1215).
- Stratum implementation improvements [#1222](https://github.com/ethereum-mining/ethminer/pull/1222).
- Build fixes & improvements [#1214](https://github.com/ethereum-mining/ethminer/pull/1214).

### Removed

- Disabled Debug configuration for Visual Studio [#69](https://github.com/ethereum-mining/ethminer/issues/69) [#1131](https://github.com/ethereum-mining/ethminer/pull/1131).
Loading

0 comments on commit 94ec4fe

Please sign in to comment.