10
.github/labels.yml
vendored
10
.github/labels.yml
vendored
@@ -157,16 +157,16 @@
|
|||||||
description: "Work on Documentation"
|
description: "Work on Documentation"
|
||||||
color: "ffffff"
|
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
|
# This Exercism-wide label is added to all automatically created pull requests that help migrate/prepare a track for Exercism v3
|
||||||
- name: "v3-migration 🤖"
|
- name: "v3-migration 🤖"
|
||||||
description: "Preparing for Exercism v3"
|
description: "Preparing for Exercism v3"
|
||||||
color: "e99695"
|
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 #
|
# 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. #
|
# https://github.com/exercism/org-wide-files/blob/main/global-files/.github/labels.yml. #
|
||||||
|
|||||||
@@ -2,17 +2,23 @@
|
|||||||
|
|
||||||
## Introduction
|
## 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?
|
## Seen or experienced something uncomfortable?
|
||||||
|
|
||||||
If you see or experience abuse, harassment, discrimination, or feel unsafe or upset, please email [abuse@exercism.org](mailto:abuse@exercism.org?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 [abuse@exercism.org](mailto:abuse@exercism.org?subject=%5BCoC%5D) and include \[CoC\] in the subject line.
|
||||||
|
We will follow up with you as a priority.
|
||||||
|
|
||||||
## Enforcement
|
## 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.
|
Exercism's leadership reserve the right to take whatever action they feel appropriate with regards to CoC violations.
|
||||||
|
|
||||||
@@ -36,15 +42,16 @@ Exercism should be a safe place for everybody regardless of
|
|||||||
- Race
|
- Race
|
||||||
- Age
|
- Age
|
||||||
- Religion
|
- Religion
|
||||||
- Anything else you can think of.
|
- Anything else you can think of
|
||||||
|
|
||||||
As someone who is part of this community, you agree that:
|
As someone who is part of this community, you agree that:
|
||||||
|
|
||||||
- We are collectively and individually committed to safety and inclusivity.
|
- We are collectively and individually committed to safety and inclusivity
|
||||||
- We have zero tolerance for abuse, harassment, or discrimination.
|
- We have zero tolerance for abuse, harassment, or discrimination
|
||||||
- We respect people’s boundaries and identities.
|
- 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 refrain from using language that can be considered offensive or oppressive (systemically or otherwise), eg. sexist, racist, homophobic, transphobic, ableist, classist, etc.
|
||||||
- We avoid using offensive topics as a form of humor.
|
- this includes (but is not limited to) various slurs.
|
||||||
|
- We avoid using offensive topics as a form of humor
|
||||||
|
|
||||||
We actively work towards:
|
We actively work towards:
|
||||||
|
|
||||||
@@ -57,26 +64,30 @@ We condemn:
|
|||||||
- Stalking, doxxing, or publishing private information
|
- Stalking, doxxing, or publishing private information
|
||||||
- Violence, threats of violence or violent language
|
- Violence, threats of violence or violent language
|
||||||
- Anything that compromises people’s safety
|
- 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.
|
- 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.
|
- The use of unwelcome, suggestive, derogatory or inappropriate nicknames or terms
|
||||||
- Disrespect towards others (jokes, innuendo, dismissive attitudes) and towards differences of opinion.
|
- 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.
|
- Intimidation or harassment (online or in-person).
|
||||||
- Inappropriate attention or contact.
|
Please read the [Citizen Code of Conduct](https://github.com/stumpsyn/policies/blob/master/citizen_code_of_conduct.md) for how we interpret harassment
|
||||||
- Not understanding the differences between constructive criticism and disparagement.
|
- Inappropriate attention or contact
|
||||||
|
- Not understanding the differences between constructive criticism and disparagement
|
||||||
|
|
||||||
These things are NOT OK.
|
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:
|
If you say something that is found offensive, and you are called out on it, try to:
|
||||||
|
|
||||||
- Listen without interruption.
|
- Listen without interruption
|
||||||
- Believe what the person is saying & do not attempt to disqualify what they have to say.
|
- 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.
|
- Ask for tips / help with avoiding making the offense in the future
|
||||||
- Apologize and ask forgiveness.
|
- Apologize and ask forgiveness
|
||||||
|
|
||||||
## History
|
## 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._
|
||||||
|
|||||||
@@ -6,29 +6,6 @@
|
|||||||
|
|
||||||
set -eo pipefail
|
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=(
|
curlopts=(
|
||||||
--silent
|
--silent
|
||||||
--show-error
|
--show-error
|
||||||
@@ -41,15 +18,25 @@ if [[ -n "${GITHUB_TOKEN}" ]]; then
|
|||||||
curlopts+=(--header "authorization: Bearer ${GITHUB_TOKEN}")
|
curlopts+=(--header "authorization: Bearer ${GITHUB_TOKEN}")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
suffix="${os}-${arch}.${ext}"
|
|
||||||
|
|
||||||
get_download_url() {
|
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}\"$" |
|
grep "\"browser_download_url\": \".*/download/.*/configlet.*${suffix}\"$" |
|
||||||
cut -d'"' -f4
|
cut -d'"' -f4
|
||||||
}
|
}
|
||||||
|
|
||||||
main() {
|
main() {
|
||||||
|
local output_dir
|
||||||
if [[ -d ./bin ]]; then
|
if [[ -d ./bin ]]; then
|
||||||
output_dir="./bin"
|
output_dir="./bin"
|
||||||
elif [[ $PWD == */bin ]]; then
|
elif [[ $PWD == */bin ]]; then
|
||||||
@@ -59,8 +46,26 @@ main() {
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
download_url="$(get_download_url)"
|
local os
|
||||||
output_path="${output_dir}/latest-configlet.${ext}"
|
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}"
|
curl "${curlopts[@]}" --output "${output_path}" "${download_url}"
|
||||||
|
|
||||||
case "${ext}" in
|
case "${ext}" in
|
||||||
@@ -69,6 +74,17 @@ main() {
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
rm -f "${output_path}"
|
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
|
main
|
||||||
|
|||||||
Reference in New Issue
Block a user