Skip to content
forked from BOINC/boinc

Commit

Permalink
Merge branch 'master' into dpa_ignore_tty
Browse files Browse the repository at this point in the history
  • Loading branch information
davidpanderson authored Dec 28, 2019
2 parents 88b4baf + 4411ef5 commit 7b6cda7
Show file tree
Hide file tree
Showing 1,515 changed files with 35,901 additions and 18,631 deletions.
42 changes: 42 additions & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
codecov:
notify:
require_ci_to_pass: yes

coverage:
status:
project: off
patch:
default:
threshold: 0.01

comment:
layout: "diff, files"
behavior: default
require_changes: yes # if true: only post the comment if coverage changes
require_base: no # [yes :: must have a base report to post]
require_head: yes # [yes :: must have a head report to post]
branch: master

flags:
# filter the folder(s) you wish to measure by that flag
api:
paths:
- api/
library:
paths:
- lib/
client:
paths:
- client/
- clientgui/
server:
paths:
- sched/
- db/
- tools/

# don't gather statistics for test and external libraries
ignore:
- tests/.*
- zip/.*
- 3rdParty/.*
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.

**System Information (please complete the following information):**
**System Information**
- OS:
- BOINC Version:

Expand Down
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
/android/**/build
/android/**/captures
/android/**/.externalNativeBuild
/android/**/.vagrant
/stage
/android/BOINC/app/src/main/assets/arm*
/android/BOINC/app/src/main/assets/mips*
Expand Down Expand Up @@ -130,6 +131,11 @@ locale/*/*.flag
.libs/
svn_version.h

## code coverage
*.gcov
*.gcno
*.gcda

# list of executables
apps/1sec
apps/concat
Expand Down
5 changes: 3 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,13 @@ matrix:
- build-tools-28.0.3
- android-28
- extra-google-m2repository
- extra-android-m2repository
- extra-android-m2repository
env: BOINC_TYPE=manager-android

before_install:
- if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then ( sudo apt-get -qq update ) fi
- if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then ( sudo apt-get install -y freeglut3-dev libxmu-dev libxi-dev libfcgi-dev libxss-dev libnotify-dev libxcb-util0-dev libsqlite3-dev libgtk2.0-dev libwebkitgtk-dev mingw-w64 binutils-mingw-w64-i686 binutils-mingw-w64-x86-64 gcc-mingw-w64 gcc-mingw-w64-i686 gcc-mingw-w64-x86-64 g++-mingw-w64 g++-mingw-w64-i686 g++-mingw-w64-x86-64 realpath p7zip-full ) fi
- if [[ "${TRAVIS_OS_NAME}" == "linux" && "${BOINC_TYPE}" == "unit-test" ]]; then ( sudo pip install codecov ) fi
- if [[ "${BOINC_TYPE}" == "integration-test" ]]; then ( sudo apt-get install ansible/trusty-backports; sudo service mysql stop; ) fi

before_script:
Expand All @@ -80,7 +81,7 @@ script:
- if [[ "${BOINC_TYPE}" == "apps-mingw" ]]; then ( cd lib && MINGW=x86_64-w64-mingw32 make -f Makefile.mingw wrapper ) fi
- if [[ "${BOINC_TYPE}" == "manager-osx" ]]; then ( ./3rdParty/buildMacDependencies.sh -q && ./mac_build/buildMacBOINC-CI.sh --no_shared_headers ) fi
- if [[ "${BOINC_TYPE}" == "manager-android" ]]; then ( cd android && ./buildAndroidBOINC-CI.sh --arch arm --silent && ./buildAndroidBOINC-CI.sh --arch arm64 --silent && ./buildAndroidBOINC-CI.sh --arch x86 --silent && ./buildAndroidBOINC-CI.sh --arch x86_64 --silent && cd BOINC && ./gradlew assemble -w && cd ../../ ) fi
- if [[ "${BOINC_TYPE}" == "unit-test" ]]; then ( /bin/true ) fi
- if [[ "${BOINC_TYPE}" == "unit-test" ]]; then ( ./3rdParty/buildLinuxDependencies.sh --gtest-only && ./configure --disable-client --disable-manager --enable-unit-tests CFLAGS="-g -O0" CXXFLAGS="-g -O0" && make && ./tests/executeUnitTests.sh --report-coverage ) fi
- if [[ "${BOINC_TYPE}" == "integration-test" ]]; then ( ./integration_test/executeTestSuite.sh ) fi

after_success:
Expand Down
67 changes: 67 additions & 0 deletions 3rdParty/buildGoogletestLinux.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
#!/bin/bash

# This file is part of BOINC.
# http://boinc.berkeley.edu
# Copyright (C) 2019 University of California
#
# BOINC is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License
# as published by the Free Software Foundation,
# either version 3 of the License, or (at your option) any later version.
#
# BOINC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with BOINC. If not, see <http://www.gnu.org/licenses/>.

# Script to build a googletest library for BOINC

# Usage:
# cd [path]/googletest-release-1.8.1/
# source path_to_this_script [--clean] [--prefix PATH]
#
# the --clean argument will force a full rebuild.
# if --prefix is given as absolute path the library is installed into there

doclean=""
debug_flag=""
lprefix=""
cmdline_prefix=""
while [[ $# -gt 0 ]]; do
key="$1"
case $key in
-clean|--clean)
doclean="yes"
;;
-prefix|--prefix)
lprefix="$2"
cmdline_prefix="--prefix=${lprefix}"
shift
;;
esac
shift # past argument or value
done

cd googletest
autoreconf -i -f
if [ $? -ne 0 ]; then cd ..; return 1; fi
./configure "${cmdline_prefix}"
if [ $? -ne 0 ]; then cd ..; return 1; fi
if [ "${doclean}" = "yes" ]; then
make clean
fi
make
if [ $? -ne 0 ]; then cd ..; return 1; fi

# make install is not supported so copy files manually
if [ "x${lprefix}" != "x" ]; then
mkdir -p ${lprefix}/lib ${lprefix}/include ${lprefix}/bin
(cp -r lib/.libs/*.a ${lprefix}/lib && cp -r include/gtest ${lprefix}/include && cp scripts/gtest-config ${lprefix}/bin)
if [ $? -ne 0 ]; then cd ..; return 1; fi
fi

cd ..
return 0
12 changes: 10 additions & 2 deletions 3rdParty/buildLinuxDependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# This file is part of BOINC.
# http://boinc.berkeley.edu
# Copyright (C) 2017 University of California
# Copyright (C) 2019 University of California
#
# BOINC is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License
Expand Down Expand Up @@ -51,6 +51,7 @@ ROOTDIR=$(pwd)
cache_dir=""
doclean=""
wxoption=""
gtest_only=""
build_config="Release"
while [[ $# -gt 0 ]]; do
key="$1"
Expand All @@ -69,6 +70,9 @@ while [[ $# -gt 0 ]]; do
--disable-webview)
wxoption="--disable-webview ${wxoption} "
;;
--gtest-only)
gtest_only="yes"
;;
*)
echo "unrecognized option $key"
;;
Expand Down Expand Up @@ -134,7 +138,11 @@ if [ "${doclean}" = "yes" ]; then
fi

#download_and_build $DIRNAME $FILENAME $DOWNLOADURL $BUILDSCRIPT
download_and_build "wxWidgets-3.0.2" "wxWidgets-3.0.2.tar.bz2" "https://sourceforge.net/projects/wxwindows/files/3.0.2/wxWidgets-3.0.2.tar.bz2" "${ROOTDIR}/3rdParty/buildWxLinux.sh ${wxoption}"
if [ "${gtest_only}" = "yes" ]; then
download_and_build "googletest-release-1.8.1" "release-1.8.1.tar.gz" "https://github.com/google/googletest/archive/release-1.8.1.tar.gz" "${ROOTDIR}/3rdParty/buildGoogletestLinux.sh"
else
download_and_build "wxWidgets-3.0.2" "wxWidgets-3.0.2.tar.bz2" "https://sourceforge.net/projects/wxwindows/files/3.0.2/wxWidgets-3.0.2.tar.bz2" "${ROOTDIR}/3rdParty/buildWxLinux.sh ${wxoption}"
fi

# change back to root directory
cd ${ROOTDIR} || exit 1
71 changes: 29 additions & 42 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,60 +3,47 @@

## How Can I Contribute?

### Helping translate
### Get Connected
Want to connect with contributors?
* Join us on [Slack](https://join.slack.com/t/boincworkspace/shared_invite/enQtNzA3MTQ4NDA0Njc4LTM4NTEyZTY1MWEwZjAyNTVmOTg3NDA2NjVjZDQzMWQ3NmFjYTc4MTNkNTEyNjRkOTQ4MWU5Nzk3NzRhNTg0NDI)
* Join the email lists:
* [BOINC Overall](https://groups.google.com/forum/#!forum/boinc_admin)
* [BOINC Projects](https://groups.google.com/a/ssl.berkeley.edu/forum/#!forum/boinc_projects)
* [BOINC Development](https://groups.google.com/a/ssl.berkeley.edu/forum/#!forum/boinc_dev)
* [BOINC Alpha Testing](https://groups.google.com/a/ssl.berkeley.edu/forum/#!forum/boinc_alpha)
* Join one of the community calls:
* The BOINC Projects call occurs quarterly and is announced on the [BOINC Projects email list](https://groups.google.com/a/ssl.berkeley.edu/forum/#!forum/boinc_projects)
* The BOINC Contributor call occurs every other week and is announced on the [BOINC Development email list](https://groups.google.com/a/ssl.berkeley.edu/forum/#!forum/boinc_dev)

### Promote Volunteer Computing
Want to help promote volunteer computing and work on ways to attract new users? Join the #communications channel on [Slack](https://join.slack.com/t/boincworkspace/shared_invite/enQtNzA3MTQ4NDA0Njc4LTM4NTEyZTY1MWEwZjAyNTVmOTg3NDA2NjVjZDQzMWQ3NmFjYTc4MTNkNTEyNjRkOTQ4MWU5Nzk3NzRhNTg0NDI)

### Help Translate
See: https://boinc.berkeley.edu/trac/wiki/TranslateIntro

### Reporting Bugs
### Help Test
You can help new versions of the client.
* Become an [Alpha Tester](https://boinc.berkeley.edu/trac/wiki/AlphaInstructions)
* Signup to be a [BOINC Android Tester](https://groups.google.com/forum/#!forum/boinc-android-testing)

### Report Bugs
Did you find a bug? Make a Bug report.
* Ensure the bug was not already reported by searching on GitHub under [Issues](https://github.com/BOINC/boinc/issues).
* If you're unable to find an open issue addressing the problem, [open a new one](https://github.com/BOINC/boinc/issues/new).

### Suggesting Enhancements
Do you have a feture idea? Make a Feature request.
### Suggest Enhancements
Do you have a feature idea? Make a feature request.
* Ensure the feature was not already requested by searching on GitHub under [Issues](https://github.com/BOINC/boinc/issues).
* If you're unable to find an open issue addressing the idea, [open a new one](https://github.com/BOINC/boinc/issues/new).

### Making Pull Requests
**1. Fork & create a branch**

[Fork BOINC](https://help.github.com/articles/fork-a-repo/) and create a branch with a descriptive name.
A good branch name would be:
```
git checkout -b update-code-of-conduct
```

**2. Implement your fix or feature**

At this point, you're ready to make your changes! Feel free to ask for help, everyone is a beginner at first. :wink:

Development Practices:
* Code has followed the [style guide for BOINC](http://boinc.berkeley.edu/trac/wiki/CodingStyle)
* Commit does not contain unrelated code changes
* Code uses [atomic commits](https://www.freshconsulting.com/atomic-commits/)

**3. Sync changes made in the original repository with your fork**
At this point, you should switch back to your master branch and [make sure it's up to date with BOINC's master branch](https://help.github.com/articles/configuring-a-remote-for-a-fork/):

```
git remote add upstream https://github.com/BOINC/boinc.git
git checkout master
git pull upstream master
```

Then update your branch from your local copy of master, and push it!

```
git checkout update-code-of-conduct
git rebase master
git push --set-upstream origin update-code-of-conduct
```

**4. Make a Pull Request**

Finally, go to GitHub and [make a Pull Request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/).
### Contribute Code
Do you want to fix a bug or implement a new feature? Read about how to [implement a code contribution](https://github.com/BOINC/boinc-policy/blob/master/Development_Documents/Development_Workflow.md#2-implementation).

## Styleguides

### BOINC Coding Styles
See https://boinc.berkeley.edu/trac/wiki/CodingStyle

### Git Commit Messages
* Use the present tense ("Add feature" not "Added feature")
* Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
Expand Down
2 changes: 1 addition & 1 deletion COPYRIGHT
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Berkeley Open Infrastructure for Network Computing
// http://boinc.berkeley.edu
// Source: https://github.com/BOINC/boinc/
// Copyright(C) 2002-2012 University of California
// Copyright(C) 2002-2019 University of California
//
// This is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
Expand Down
4 changes: 2 additions & 2 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ endif
endif

if ENABLE_SERVER
SERVER_SUBDIRS = db test py sched apps tools vda html
SERVER_SUBDIRS = db py sched apps tools vda html
## once contained samples/example_app which breaks out-of-source-tree builds
endif

Expand Down Expand Up @@ -71,7 +71,7 @@ svn_version.h: generate_svn_version.sh
# Add a stage target for staging a distribution

clean-generic:
rm -rf stage
rm -rf stage *.gcov

stage: all
if [ ! -d stage ] ; then mkdir stage ; fi
Expand Down
19 changes: 13 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
# Status

[![Build Status](https://travis-ci.org/BOINC/boinc.svg?branch=master)](https://travis-ci.org/BOINC/boinc) [![Build status](https://ci.appveyor.com/api/projects/status/9dgoc9h5ppos8vcy/branch/master?svg=true)](https://ci.appveyor.com/project/BOINC/boinc/branch/master) [![Coverity Scan Build Status](https://scan.coverity.com/projects/4226/badge.svg)](https://scan.coverity.com/projects/boinc-boinc) [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/BOINC/boinc/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/BOINC/boinc/?branch=master)
[![Build Status](https://travis-ci.org/BOINC/boinc.svg?branch=master)](https://travis-ci.org/BOINC/boinc) [![Build status](https://ci.appveyor.com/api/projects/status/9dgoc9h5ppos8vcy/branch/master?svg=true)](https://ci.appveyor.com/project/BOINC/boinc/branch/master) [![Coverity Scan Build Status](https://scan.coverity.com/projects/4226/badge.svg)](https://scan.coverity.com/projects/boinc-boinc) [![codecov](https://codecov.io/gh/BOINC/boinc/branch/master/graph/badge.svg)](https://codecov.io/gh/BOINC/boinc) [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/BOINC/boinc/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/BOINC/boinc/?branch=master)

# Social

[![Slack](https://img.shields.io/badge/slack-boincworkspace-blue?logo=slack)](https://join.slack.com/t/boincworkspace/shared_invite/enQtNzA3MTQ4NDA0Njc4LTM4NTEyZTY1MWEwZjAyNTVmOTg3NDA2NjVjZDQzMWQ3NmFjYTc4MTNkNTEyNjRkOTQ4MWU5Nzk3NzRhNTg0NDI) [![Discord](https://img.shields.io/badge/discord-boincnetwork-blue?logo=discord)](https://discord.gg/wPRafUq)

# BOINC

Expand All @@ -9,11 +13,8 @@ Project Website: https://boinc.berkeley.edu
## Want to create a project
See: https://boinc.berkeley.edu/trac/wiki

## Want to help translate
See: https://boinc.berkeley.edu/trac/wiki/TranslateIntro

## Want to contribute
See: https://boinc.berkeley.edu/trac/wiki/SoftwareDevelopment
## Want to help
Read about all the [ways you can help](CONTRIBUTING.md)

### Note

Expand All @@ -23,6 +24,12 @@ title, and interest, including copyright and all copyright rights, in such
contributions to The Regents of the University of California, who may then
use the code for any purpose that it desires.

## Reporting Security Issues
We strongly encourage you to report security problems to our private mailing
list and not by posting an issue. You can do this by sending an email to
[email protected]. This will be privately sent to the members of the
BOINC Project Management Committee.

# License
BOINC is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License
Expand Down
1 change: 1 addition & 0 deletions android/BOINC/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>

<!-- Features required for Android TV, consoles, and set-top boxes like Nexus Player, OUYA,
Razer Forge TV, Nvidia SHIELD, etc -->
Expand Down
Loading

0 comments on commit 7b6cda7

Please sign in to comment.