Skip to content

Commit

Permalink
🤖 Sync org-wide files to upstream repo
Browse files Browse the repository at this point in the history
  • Loading branch information
exercism-bot authored and neenjaw committed Nov 19, 2022
1 parent 83e08b8 commit ffa110d
Show file tree
Hide file tree
Showing 3 changed files with 83 additions and 56 deletions.
10 changes: 5 additions & 5 deletions .github/labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -157,16 +157,16 @@
description: "Work on Documentation"
color: "ffffff"

# This label can be added to accept PRs as part of Hacktoberfest
- name: "hacktoberfest-accepted"
description: "Make this PR count for hacktoberfest"
color: "ff7518"

# This Exercism-wide label is added to all automatically created pull requests that help migrate/prepare a track for Exercism v3
- name: "v3-migration 🤖"
description: "Preparing for Exercism v3"
color: "e99695"

# This Exercism-wide label can be used to bulk-close issues in preparation for pausing community contributions
- name: "paused"
description: "Work paused until further notice"
color: "e4e669"

# ----------------------------------------------------------------------------------------- #
# These are the repository-specific labels that augment the Exercise-wide labels defined in #
# https://github.com/exercism/org-wide-files/blob/main/global-files/.github/labels.yml. #
Expand Down
57 changes: 34 additions & 23 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,23 @@

## Introduction

Exercism is a platform centered around empathetic conversation. We have a low tolerance for communication that makes anyone feel unwelcome, unsupported, insulted or discriminated against.
Exercism is a platform centered around empathetic conversation.
We have a low tolerance for communication that makes anyone feel unwelcome, unsupported, insulted or discriminated against.

## Seen or experienced something uncomfortable?

If you see or experience abuse, harassment, discrimination, or feel unsafe or upset, please email [[email protected]](mailto:[email protected]?subject=%5BCoC%5D) and include \[CoC\] in the subject line. We will follow up with you as a priority.
If you see or experience abuse, harassment, discrimination, or feel unsafe or upset, please email [[email protected]](mailto:[email protected]?subject=%5BCoC%5D) and include \[CoC\] in the subject line.
We will follow up with you as a priority.

## Enforcement

We actively monitor for Code of Conduct (CoC) violations and take any reports of violations extremely seriously. We have banned contributors, mentors and users due to violations.
We actively monitor for Code of Conduct (CoC) violations and take any reports of violations extremely seriously.
We have banned contributors, mentors and users due to violations.

After we receive a report of a CoC violation, we view that person's conversation history on Exercism and related communication channels and attempt to understand whether someone has deliberately broken the CoC, or accidentally crossed a line. We generally reach out to the person who has been reported to discuss any concerns we have and warn them that repeated violations will result in a ban. Sometimes we decide that no violation has occurred and that no action is required and sometimes we will also ban people on a first offense. We strive to be fair, but will err on the side of protecting the culture of our community.
After we receive a report of a CoC violation, we view that person's conversation history on Exercism and related communication channels and attempt to understand whether someone has deliberately broken the CoC, or accidentally crossed a line.
We generally reach out to the person who has been reported to discuss any concerns we have and warn them that repeated violations will result in a ban.
Sometimes we decide that no violation has occurred and that no action is required and sometimes we will also ban people on a first offense.
We strive to be fair, but will err on the side of protecting the culture of our community.

Exercism's leadership reserve the right to take whatever action they feel appropriate with regards to CoC violations.

Expand All @@ -36,15 +42,16 @@ Exercism should be a safe place for everybody regardless of
- Race
- Age
- Religion
- Anything else you can think of.
- Anything else you can think of

As someone who is part of this community, you agree that:

- We are collectively and individually committed to safety and inclusivity.
- We have zero tolerance for abuse, harassment, or discrimination.
- We respect people’s boundaries and identities.
- We refrain from using language that can be considered offensive or oppressive (systemically or otherwise), eg. sexist, racist, homophobic, transphobic, ableist, classist, etc. - this includes (but is not limited to) various slurs.
- We avoid using offensive topics as a form of humor.
- We are collectively and individually committed to safety and inclusivity
- We have zero tolerance for abuse, harassment, or discrimination
- We respect people’s boundaries and identities
- We refrain from using language that can be considered offensive or oppressive (systemically or otherwise), eg. sexist, racist, homophobic, transphobic, ableist, classist, etc.
- this includes (but is not limited to) various slurs.
- We avoid using offensive topics as a form of humor

We actively work towards:

Expand All @@ -57,26 +64,30 @@ We condemn:
- Stalking, doxxing, or publishing private information
- Violence, threats of violence or violent language
- Anything that compromises people’s safety
- Conduct or speech which might be considered sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory or offensive in nature.
- The use of unwelcome, suggestive, derogatory or inappropriate nicknames or terms.
- Disrespect towards others (jokes, innuendo, dismissive attitudes) and towards differences of opinion.
- Intimidation or harassment (online or in-person). Please read the [Citizen Code of Conduct](https://github.com/stumpsyn/policies/blob/master/citizen_code_of_conduct.md) for how we interpret harassment.
- Inappropriate attention or contact.
- Not understanding the differences between constructive criticism and disparagement.
- Conduct or speech which might be considered sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory or offensive in nature
- The use of unwelcome, suggestive, derogatory or inappropriate nicknames or terms
- Disrespect towards others (jokes, innuendo, dismissive attitudes) and towards differences of opinion
- Intimidation or harassment (online or in-person).
Please read the [Citizen Code of Conduct](https://github.com/stumpsyn/policies/blob/master/citizen_code_of_conduct.md) for how we interpret harassment
- Inappropriate attention or contact
- Not understanding the differences between constructive criticism and disparagement

These things are NOT OK.

Be aware of how your actions affect others. If it makes someone uncomfortable, stop.
Be aware of how your actions affect others.
If it makes someone uncomfortable, stop.

If you say something that is found offensive, and you are called out on it, try to:

- Listen without interruption.
- Believe what the person is saying & do not attempt to disqualify what they have to say.
- Ask for tips / help with avoiding making the offense in the future.
- Apologize and ask forgiveness.
- Listen without interruption
- Believe what the person is saying & do not attempt to disqualify what they have to say
- Ask for tips / help with avoiding making the offense in the future
- Apologize and ask forgiveness

## History

This policy was initially adopted from the Front-end London Slack community and has been modified since. A version history can be seen on [GitHub](https://github.com/exercism/website-copy/edit/main/pages/code_of_conduct.md).
This policy was initially adopted from the Front-end London Slack community and has been modified since.
A version history can be seen on [GitHub](https://github.com/exercism/website-copy/edit/main/pages/code_of_conduct.md).

_This policy is a "living" document, and subject to refinement and expansion in the future. This policy applies to the Exercism website, the Exercism GitHub organization, any other Exercism-related communication channels (e.g. Slack, Twitter, email) and any other Exercism entity or event._
_This policy is a "living" document, and subject to refinement and expansion in the future.
This policy applies to the Exercism website, the Exercism GitHub organization, any other Exercism-related communication channels (e.g. Slack, Twitter, email) and any other Exercism entity or event._
72 changes: 44 additions & 28 deletions bin/fetch-configlet
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,6 @@

set -eo pipefail

readonly LATEST='https://api.github.com/repos/exercism/configlet/releases/latest'

case "$(uname)" in
Darwin*) os='mac' ;;
Linux*) os='linux' ;;
Windows*) os='windows' ;;
MINGW*) os='windows' ;;
MSYS_NT-*) os='windows' ;;
*) os='linux' ;;
esac

case "${os}" in
windows*) ext='zip' ;;
*) ext='tgz' ;;
esac

case "$(uname -m)" in
*64*) arch='64bit' ;;
*686*) arch='32bit' ;;
*386*) arch='32bit' ;;
*) arch='64bit' ;;
esac

curlopts=(
--silent
--show-error
Expand All @@ -41,15 +18,25 @@ if [[ -n "${GITHUB_TOKEN}" ]]; then
curlopts+=(--header "authorization: Bearer ${GITHUB_TOKEN}")
fi

suffix="${os}-${arch}.${ext}"

get_download_url() {
curl "${curlopts[@]}" --header 'Accept: application/vnd.github.v3+json' "${LATEST}" |
local os="$1"
local ext="$2"
local latest='https://api.github.com/repos/exercism/configlet/releases/latest'
local arch
case "$(uname -m)" in
x86_64) arch='x86-64' ;;
*686*) arch='i386' ;;
*386*) arch='i386' ;;
*) arch='x86-64' ;;
esac
local suffix="${os}_${arch}.${ext}"
curl "${curlopts[@]}" --header 'Accept: application/vnd.github.v3+json' "${latest}" |
grep "\"browser_download_url\": \".*/download/.*/configlet.*${suffix}\"$" |
cut -d'"' -f4
}

main() {
local output_dir
if [[ -d ./bin ]]; then
output_dir="./bin"
elif [[ $PWD == */bin ]]; then
Expand All @@ -59,8 +46,26 @@ main() {
return 1
fi

download_url="$(get_download_url)"
output_path="${output_dir}/latest-configlet.${ext}"
local os
case "$(uname)" in
Darwin*) os='macos' ;;
Linux*) os='linux' ;;
Windows*) os='windows' ;;
MINGW*) os='windows' ;;
MSYS_NT-*) os='windows' ;;
*) os='linux' ;;
esac

local ext
case "${os}" in
windows*) ext='zip' ;;
*) ext='tar.gz' ;;
esac

echo "Fetching configlet..." >&2
local download_url
download_url="$(get_download_url "${os}" "${ext}")"
local output_path="${output_dir}/latest-configlet.${ext}"
curl "${curlopts[@]}" --output "${output_path}" "${download_url}"

case "${ext}" in
Expand All @@ -69,6 +74,17 @@ main() {
esac

rm -f "${output_path}"

local executable_ext
case "${os}" in
windows*) executable_ext='.exe' ;;
*) executable_ext='' ;;
esac

local configlet_path="${output_dir}/configlet${executable_ext}"
local configlet_version
configlet_version="$(${configlet_path} --version)"
echo "Downloaded configlet ${configlet_version} to ${configlet_path}"
}

main

0 comments on commit ffa110d

Please sign in to comment.