Skip to content

Commit

Permalink
Merge branch 'master' into terminated_threads
Browse files Browse the repository at this point in the history
  • Loading branch information
hkaiser committed Jul 24, 2017
2 parents cf1bff4 + 5640334 commit 1024b04
Show file tree
Hide file tree
Showing 888 changed files with 30,060 additions and 18,527 deletions.
112 changes: 112 additions & 0 deletions .clang-format
@@ -0,0 +1,112 @@
# Copyright (c) 2016 Thomas Heller
# Copyright (c) 2016-2017 Hartmut Kaiser
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

# This .clang-format file is a suggested configuration file for formatting
# source code for the HPX project.
#
# Here are a couple of guidelines of how to use this file.
#
# - You should use this file for creating an initial formatting for new files.
#
# - Please separate edits which are pure formatting into isolated commits
# keeping those distinct from edits changing any of the code.
#
# - Please do _not_ configure your editor to automatically format the source
# file while saving edits to disk
# - Please do _not_ reformat a full source file without dire need.

---
AccessModifierOffset: -4
AlignAfterOpenBracket: DontAlign
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Right
AlignOperands: false
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: Empty
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: true
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
AfterClass: true
AfterControlStatement: true
AfterEnum: true
AfterFunction: true
AfterNamespace: false
AfterStruct: true
AfterUnion: true
BeforeCatch: true
BeforeElse: true
IndentBraces: false
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Custom
BreakBeforeInheritanceComma: true
BreakBeforeTernaryOperators: false
BreakConstructorInitializersBeforeComma: true
BreakStringLiterals: true
ColumnLimit: 80
CommentPragmas: "///"
ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 2
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DerivePointerAlignment: true
ExperimentalAutoDetectBinPacking: true
FixNamespaceComments: false
# ForEachMacros: ['']
IncludeCategories:
- Regex: '^<hpx/config\.hpp>'
Priority: 1
- Regex: '^<hpx/.*\.hpp>'
Priority: 2
- Regex: '^<hpx/parallel/.*\.hpp>'
Priority: 3
- Regex: '^<.*'
Priority: 4
- Regex: '.*'
Priority: 5
# IncludeIsMainRegex: ''
IndentCaseLabels: false
IndentWidth: 4
IndentWrappedFunctionNames: false
KeepEmptyLinesAtTheStartOfBlocks: false
Language: Cpp
# MacroBlockBegin: ''
# MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: Inner
PenaltyBreakBeforeFirstCallParameter: 1
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 200
PointerAlignment: Left
ReflowComments: false
SortIncludes: true
SpaceAfterCStyleCast: true
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeParens: ControlStatements
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 4
SpacesInAngles: false
SpacesInCStyleCastParentheses: false
SpacesInContainerLiterals: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard: Cpp11
TabWidth: 4
UseTab: Never
...
78 changes: 78 additions & 0 deletions .github/CODE_OF_CONDUCT.md
@@ -0,0 +1,78 @@
<!-- Copyright (c) 2017 Hartmut Kaiser -->
<!-- -->
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->

# HPX Code of Conduct

Like the technical community as a whole, the HPX team and community is made up
of a mixture of professionals and volunteers from all over the world, working
on every aspect of the mission - including mentorship, teaching, and connecting
people.

Diversity is one of our huge strengths, but it can also lead to communication
issues and unhappiness. To that end, we have a few ground rules that we ask
people to adhere to. This code applies equally to founders, mentors and those
seeking help and guidance.

This isn't an exhaustive list of things that you can't do. Rather, take it in
the spirit in which it's intended - a guide to make it easier to enrich all of
us and the technical communities in which we participate.

This code of conduct applies to all spaces managed by the
[HPX](https://github.com/STEllAR-GROUP/hpx) project or
[STE||AR Group](http://stellar-group.org). This includes IRC, the mailing
lists, the issue tracker, and any other forums created by the project team
which the community uses for communication. In addition, violations of this
code outside these spaces may affect a person's ability to participate within
them.

If you believe someone is violating the code of conduct, we ask that you report
it by emailing conduct@stellar-group.org.

* **Be friendly and patient**.
* **Be welcoming.** We strive to be a community that welcomes and supports
people of all backgrounds and identities. This includes, but is not limited
to members of any race, ethnicity, culture, national origin, colour,
immigration status, social and economic class, educational level, sex, sexual
orientation, gender identity and expression, age, size, family status,
political belief, religion, and mental and physical ability.
* **Be considerate.** Your work will be used by other people, and you in turn
will depend on the work of others. Any decision you take will affect users
and colleagues, and you should take those consequences into account when
making decisions. Remember that we're a world-wide community, so you might
not be communicating in someone else's primary language.
* **Be respectful.** Not all of us will agree all the time, but disagreement
is no excuse for poor behavior and poor manners. We might all experience some
frustration now and then, but we cannot allow that frustration to turn into a
personal attack. It's important to remember that a community where people
feel uncomfortable or threatened is not a productive one. Members of the HPX
community should be respectful when dealing with other members as well as
with people outside the HPX community.
* **Be careful in the words that you choose.** We are a community of
professionals, and we conduct ourselves professionally. Be kind to others.
Do not insult or put down other participants. Harassment and other
exclusionary behavior aren't acceptable. This includes, but is not limited
to:
* Violent threats or language directed against another person.
* Discriminatory jokes and language.
* Posting sexually explicit or violent material.
* Posting (or threatening to post) other people's personally identifying
information ("doxing").
* Personal insults, especially those using racist or sexist terms.
* Unwelcome sexual attention.
* Advocating for, or encouraging, any of the above behavior.
* Repeated harassment of others. In general, if someone asks you to stop,
then stop.

* **When we disagree, try to understand why.** Disagreements, both social and
technical, happen all the time and HPX is no exception. It is important
that we resolve disagreements and differing views constructively. Remember
that we're different. The strength of HPX comes from its varied community,
people from a wide range of backgrounds. Different people have different
perspectives on issues. Being unable to understand why someone holds a
viewpoint doesn't mean that they're wrong. Don't forget that it is human to
err and blaming each other doesn't get us anywhere. Instead, focus on
helping to resolve issues and learning from mistakes.

Original text courtesy of the [Django](https://www.djangoproject.com/conduct/) project.
26 changes: 21 additions & 5 deletions .github/CONTRIBUTING.md
@@ -1,4 +1,4 @@
<!-- Copyright (c) 2014 Hartmut Kaiser -->
<!-- Copyright (c) 2014-2017 Hartmut Kaiser -->
<!-- -->
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
Expand Down Expand Up @@ -74,13 +74,12 @@ and under what circumstances it affects you.

Some but not all tasks require you to have built HPX. Even if that is not
required, your feedback can be helpful to us - so - please try. The master
build instructions are [here](http://stellar.cct.lsu.edu/files/hpx_0.9.8/html/hpx/tutorial/getting_started.html)
build instructions are [here](http://stellar-group.github.io/hpx/docs/html/hpx/tutorial/getting_started.html)
with more stuff under development.

### Hacking help

If you need to search constructs in the code, there is a code search engine at
the [Ohloh HPX page](http://code.ohloh.net/project?pid=&ipid=309791) or simply
at the top of this page.

## General info
Expand All @@ -97,11 +96,28 @@ The short version of the guidelines:
* Use expressive identifiers.
* Exceptions for error handling instead of C-style error codes.

A more elaborate description of our coding guidelines can be found
[here](https://github.com/STEllAR-GROUP/hpx/wiki/HPX-Source-Code-Structure-and-Coding-Standards).

There is a `.editorconfig` file in the HPX root directory which can be used
for almost any widely available editor. Please see
[their webpage](http://editorconfig.org) to download plugins for your favorite
editor.

There is a `.clang-format` file in the HPX root directory which you can use to
manually format the code you contribute. This configuration file can be used
with [clang-format](https://clang.llvm.org/docs/ClangFormat.html), a tool created
by the [Clang](https://clang.llvm.org/) project.

Please follow the follwoing guidelines for using it:

* You should use this file for creating an initial formatting for new files.
* Please separate edits which are pure formatting into isolated commits
keeping those distinct from edits changing any of the code.
* Please do _not_ configure your editor to automatically format the source
file while saving edits to disk.
* Please do _not_ reformat a full source file without dire need.

A few additional ones:

* Use doxygen style comments to document API functions.
Expand All @@ -120,7 +136,7 @@ Community is an important part of all we do.
posting things.
* Create an example of how to use HPX in the real world by building something
or showing what others have built.
* Write about other peoples work based on HPX. Show how it’s used in daily
* Write about other people's work based on HPX. Show how it is used in daily
life. Take screenshots and make videos!


Expand All @@ -129,5 +145,5 @@ Community is an important part of all we do.
For our project, you can talk to the following people to receive help in
working through your first bugfix and thinking through the problem:

* @hkaiser, @heller, @wash
* @hkaiser, @heller, @wash, @jbjnr

0 comments on commit 1024b04

Please sign in to comment.