jiebi/CodeConvo huggingface dataset:
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --1) Add any code into the challenge field (other than a valid solution) that will not result in a syntax error. 2) Run the tests Expected result: The test should fail Actual result: The test passes Browser Name: Firefox Browser Version: 61.0 Operating System: 10.12.6 !
The problem is this test in the : It returns true if returns an object with no keys, or just not-an-object. I assume we should really be using something like to check the expected object and the user's output object are the same.
Working on a fix.

Discussion:
## Instructions <section id='instructions'> <del> Use simple fields with object literals to create and return a <code>Person</code> object. </del> <ins> Use simple fields with object literals to create and return a <code>Person</code> object with <code>name</code>, <code>age</code> and <code>gender</code> properties. </ins> </section> ## Tests

```yml tests: <del> - text: 'the output is <code>{name: "Zodiac Hasbro", age: 56, gender: "male"}</code>.' testString: 'assert(() => {const res={name:"Zodiac Hasbro",age:56,gender:"male"}; const person=createPerson("Zodiac Hasbro", 56, "male"); return Object.keys(person).every(k => person[k] === res[k]);}, ''the output is <code>{name: "Zodiac Hasbro", age: 56, gender: "male"}</code>.'');' - text: No <code>:</code> were used. testString: getUserInput => assert(!getUserInput('index').match(/:/g), 'No <code>:</code> were used.'); </del> <ins> - text: 'The output is <code>{name: "Zodiac Hasbro", age: 56, gender: "male"}</code>.' testString: 'assert((() => {const res={name:"Zodiac Hasbro",age:56,gender:"male"}; const person=createPerson("Zodiac Hasbro", 56, "male"); return Object.keys(person).every(k => person[k] === res[k]);})(), ''The output is <code>{name: "Zodiac Hasbro", age: 56, gender: "male"}</code>.'');' - text: No <code>key:value</code> were used. testString: getUserInput => assert(!getUserInput('index').match(/:/g), 'No <code>key:value</code> were used.'); </ins> ```

<section id='solution'> ```js <del> // solution required </del> <ins> const createPerson = (name, age, gender) => { "use strict"; return { name, age, gender }; }; </ins> ``` </section>
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Test for this lesson may not check the syntax for any constructor syntax, instead looks like it's tested by output. EIther user provide the constructor(correct/expected way) or not, challenge passes. Browser Name: Chrome Browser Version: 67 Operating System: Win7
I'm on it.
following solution works to passs the test: function makeClass() { "use strict"; / Alter code below this line / class Vegetable { constructor(Vegetable) { this. Vegetable = Vegetable; } } / Alter code above this line / return Vegetable; } const Vegetable = makeClass(); const carrot = new Vegetable('carrot'); (); // =should be 'carrot'
Hello, Unfortunately, this solution doesn't work for me. (The same as in the "Hint": ) Error message: // running tests should return carrot. // tests completed
sorry to hear that! Would you mind posting your solution here so we could take a look?
Hello Kristofer, Thank you for your email. (ES6: Use class Syntax to Define a Constructor Function) I have already got help from FreeCodeCamp. I used the solution from "HINT", but it didn't work. class Vegetable { constructor(Vegetable){ this.Vegetable = Vegetable; } } What worked is the code below: class Vegetable { constructor(name) { = name; } } Thank you. Kind regards, Zsolt

Discussion:
exports.preSubmit = function(req, res) { var data = req.query; <del> var cleanData = sanitizeHtml(data.url); </del> <ins> var cleanData = sanitizeHtml(data.url, { allowedTags: [], allowedAttributes: [] }).replace(/&quot;;/g, '"'); </ins> if (data.url.replace(/&/g, '&amp;') !== cleanData) { <del> debug('data and cleandata', data, cleanData, data.url === cleanData); </del> req.flash('errors', { msg: 'The data for this post is malformed' });

exports.newStory = function(req, res) { var url = req.body.data.url; <del> var cleanURL = sanitizeHtml(url); </del> <ins> var cleanURL = sanitizeHtml(url, { allowedTags: [], allowedAttributes: [] }).replace(/&quot;/g, '"'); </ins> if (cleanURL !== url) { req.flash('errors', { msg: "The URL you submitted doesn't appear valid"

link = 'http://' + link; } var story = new Story({ <del> headline: sanitizeHtml(data.headline), </del> <ins> headline: sanitizeHtml(data.headline, { allowedTags: [], allowedAttributes: [] }).replace(/&quot;/g, '"'), </ins> timePosted: Date.now(), link: link, <del> description: sanitizeHtml(data.description), </del> <ins> description: sanitizeHtml(data.description, { allowedTags: [], allowedAttributes: [] }).replace(/&quot;/g, '"'), </ins> rank: 1, upVotes: data.upVotes, author: data.author,

{ allowedTags: [], allowedAttributes: [] <del> }); </del> <ins> }).replace(/&quot;/g, '"'); </ins> if (data.body !== sanitizedBody) { req.flash('errors', { msg: 'HTML is not allowed'
Change:
In the challenge "Debugging: Understanding the Differences between the freeCodeCamp and Browser Console" the objective asks the user to whereas in the content, the user has access to two prewritten variables: and , no variable exists. Browser Name: Google Chrome Browser Version: 67.0.3396.99 (64 bits) Operating System: Windows 10 !
I'd like to give it a go.

Discussion:
text-align: center; } <ins> .big-ion-up-arrow  #upvote, #reply-to-main-post { cursor: pointer; } </ins> .story-up-votes { padding-top: 0px; margin-left: -5px;
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Link in the readme does not link to a valid url. ! Browser Name: Browser Version: Operating System:
This link needs to be updated with the correct & valid URL.

Discussion:
The content of this repository bound by the following licenses: - The computer software is licensed under the [BSD-3-Clause](./LICENSE.md). <ins> - The [curricular content](https://www.npmjs.com/package/@freecodecamp/curriculum) in the [`/seed`](/seed) and subdirectories are licensed under the [CC-BY-SA-4.0](https://github.com/freeCodeCamp/curriculum/blob/master/LICENSE.md). </ins>
Change:
Not really an issue but it threw me off. In the visual design challenge linked below, the second paragraph states that the navigation bar inherits its background from the header. Well I wondered so I set the position of the navigation to relative and the top to 20px (and the header text color black so you can see the white text against the white body) and clearly the background of the nav isn't cyan, it's white. Children have transparent backgrounds. That's why they seem cyan against a parent with a cyan background. Browser Name: Chrome Browser Version: Version 68.0.3440.106 (Official Build) (64-bit) Operating System: MacOS !
Interesting wording. It wouldn't be right to say the children of an element inherit its background color. The initial value of is The simplest solution to this would just be a change of wording
Fixed in
This was fixed in . / / please close it

Discussion:
## Instructions <section id='instructions'> <del> The navigation bar on this site currently inherits its <code>background-color</code> from the <code>header</code> element. Starting with that color as a base, add a <code>background-color</code> to the <code>nav</code> element so it uses the same cyan hue, but has 80% saturation and 25% lightness values to change its tone and shade. </del> <ins> All elements have a default <code>background-color</code> of <code>transparent</code>. Our <code>nav</code> element currently appears have a <code>cyan</code> background, because the element behind it has a <code>background-color</code> set to <code>cyan</code>. Add a <code>background-color</code> to the <code>nav</code> element so it uses the same <code>cyan</code> hue, but has <code>80% saturation</code> and <code>25% lightness</code> values to change its tone and shade. </ins> </section> ## Tests
Change:
I can work on this. A little confused though, since it appears to be there already. Does the mission statement go here? Please provide instructions, thanks.

Discussion:
<ins> const isBrowser = typeof window !== 'undefined'; if (isBrowser) { window.dataLayer = window.dataLayer || []; } function gtag() { if (isBrowser) { window.dataLayer.push(arguments); } } gtag('js', new Date()); gtag('config', 'AW-795617839'); export function gtagReportConversion(url) { var callback = function() { if (typeof url !== 'undefined' && isBrowser) { window.location = url; } }; if (isBrowser) { gtag('event', 'conversion', { /* eslint-disable camelcase */ send_to: 'AW-795617839/AmfiCKHHs4gBEK_UsPsC', event_callback: callback }); } return false; } </ins>

import { hardGoTo } from '../../../redux'; import { apiLocation } from '../../../../config/env.json'; <ins> import { gtagReportConversion } from '../../../analytics/gtag'; </ins> import './login.css'; const mapStateToProps = () => ({});

const createOnClick = navigate => e => { e.preventDefault(); <ins> gtagReportConversion(); </ins> return navigate(`${apiLocation}/signin`); };

import meta from './meta'; import mathjax from './mathjax'; import sassjs from './sassjs'; <ins> import scripts from './scripts'; </ins> const metaAndStyleSheets = meta <del> .concat(favicons, mathjax, sassjs) </del> <ins> .concat(favicons, mathjax, sassjs, scripts) </ins> .map((element, i) => ({ ...element, key: `meta-stylesheet-${i}`,

<ins> import React from 'react'; const scripts = [ <script async='' src='https://www.googletagmanager.com/gtag/js?id=AW-795617839' /> ]; export default scripts; </ins>

margin-left: 20px; margin-right: 20px; } <ins> .underlined-link { text-decoration: underline; } </ins> @media (min-width: 991px) and (max-width: 1199px) { .testimonial-copy { height: 150px;

<Spacer /> <h2>As featured in:</h2> <Image <del> alt="companies featuring freeCodeCamp" </del> <ins> alt='companies featuring freeCodeCamp' </ins> className='img-center' responsive={true} src='https://s3.amazonaws.com/freecodecamp/as-seen-on.png'

<h2 className='black-text'>D3.js</h2> </Col> </Row> <ins> <hr /> </ins> <Spacer /> <ins> <h3> freeCodeCamp is a donor-supported tax-exempt 501(c)(3) nonprofit organization (United States Federal Tax Identification Number: 82-0779546) </h3> <p className='large-p'> Our mission: to help people learn to code for free. We accomplish this by creating thousands of videos, articles, and interactive coding lessons - all freely available to the public. We also have thousands of freeCodeCamp study groups around the world. </p> <p className='large-p'> Donations to freeCodeCamp go toward our education initiatives, and help pay for servers, services, and staff. You can{' '} <a className='large-p underlined-link' href='https://donate.freecodecamp.org/' rel='noopener noreferrer' target='_blank' > make a tax-deductible donation here </a> </p> .<Spacer /> </ins> <BigCallToAction /> <Spacer /> <Spacer />
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Describe your problem and how to reproduce it: There's a spelling mistake on the Spanish documentation's ReadMe Add a Link to the page with the problem: Tell us about your browser and operating system: Browser Name: Chrome Browser Version: 69.0.3497.100 Operating System: MacOS If possible, add a screenshot here (you can drag and drop, png, jpg, gif, etc. in this box): !

Discussion:
1. Guía de estilo sobre cómo crear Guías. 2. Guía de estilo sobre cómo crear Desafíos de programación. <del> ## Referencía rápida de comandos para trabajar en local </del> <ins> ## Referencia rápida de comandos para trabajar en local </ins> Una referencia rápida de los comandos que necesitarás cuando trabajes en local.
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Describe your problem and how to reproduce it: The directory below is meant to say 'create-file-with-specific-size'. Specific is misspelled as 'sepcific'. Add a Link to the page with the problem: Tell us about your browser and operating system: Browser Name: Browser Version: Operating System: If possible, add a screenshot here (you can drag and drop, png, jpg, gif, etc. in this box):
i am taking this issue

Discussion:
<del> --- title: Create a dummy file with a specific size --- ## How to create dummy files with a specific size using the "dd" command: The "dd" command can be used to create a file of a specific size. This is useful if you would like to test download speeds, or any other tests, and need a file of a specific size. ``` dd if=/dev/zero of=file_name.txt bs=1024k count=10 ``` This will create a file of 1MB called file_name.txt. bs is your byte size and count represent the number of blocks. An easy way to look at is 1024K X 10. Here is an even simpler way to create a 1MB file: ``` dd if=/dev/zero of=file_name.txt bs=1MB count=1 ``` </del>

<ins> --- title: Create a dummy file with a specific size --- ## How to create dummy files with a specific size using the "dd" command: The "dd" command can be used to create a file of a specific size. This is useful if you would like to test download speeds, or any other tests, and need a file of a specific size. ``` dd if=/dev/zero of=file_name.txt bs=1024k count=10 ``` This will create a file of 1MB called file_name.txt. bs is your byte size and count represent the number of blocks. An easy way to look at is 1024K X 10. Here is an even simpler way to create a 1MB file: ``` dd if=/dev/zero of=file_name.txt bs=1MB count=1 ``` </ins>
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Describe your problem and how to reproduce it: this needs more work, but to begin a process - adding the proper acronym explanation (which is almost 50% of understanding the topic) and reducing misinformation about identifiers. also some explanation on the benefit of using this tool compared to its predecessor also adding basic usage and giving some more basic understanding of this tool Add a Link to the page with the problem:
I created a pull request for adding some basic information. Still need to correct the misinformation about identifiers.

Discussion:
--- <del> title: Bash ssh </del> <ins> title: Bash ssh (Secure SHell) </ins> --- ## Bash command: ssh <del> This command is used **to connect to a remote computer**, for example `ssh 123.456.789.012` will try to establish a connection with that host. The address of the remote computer can be provided using an IP address or, if provided, an identifier. </del> <ins> **Used to securly connect to a remote server** using Diffie-Hellman algorythm for key exchange, ssh replaces the archaic telnet program for remote shell sessions. </ins> <del> If the remote computer requires the user to login, they can use the form `ssh username@remote_address`, which will then prompt them for the user password on a successful connection. </del> <ins> for example `ssh 192.0.2.1` will try to establish a connection with that host. The address of the remote computer can be provided using an IP address resolvable hostname or FQDN. </ins> <del> It also has command line options which can be found on the SSH website. </del> <ins> If you wish to use a different username then the one initiating the session (i.e. you're using ssh from root but wish to log in as different user to a remote system), the form `ssh username@remote_address` can be used, which will then prompt for the user password on successful connection. </ins> <del> One thing to note, if the server is configured to listen to any port other than `22`, then you have to use `-p` option to specify the port. For example: `ssh -p 2024 123.456.789.012`. If the remote computer requires user login, the form `ssh username@remote_address` can be used, which will then prompt for the user password on successful connection. </del> <ins> Basic usage arguments: - `-p` - use a different port then configured in ssh_config file (usually 22) - `-u` - pass username outside of hostname URI - `-i` - use a different location for private key </ins> ### More Information: * [Wikipedia](https://en.wikipedia.org/wiki/Secure_Shell)
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Describe your problem and how to reproduce it: this needs more work, but to begin a process - adding the proper acronym explanation (which is almost 50% of understanding the topic) and reducing misinformation about identifiers. also some explanation on the benefit of using this tool compared to its predecessor also adding basic usage and giving some more basic understanding of this tool Add a Link to the page with the problem:
I created a pull request for adding some basic information. Still need to correct the misinformation about identifiers.

Discussion:
## Bash command: ssh <del> **Used to securly connect to a remote server** using Diffie-Hellman algorythm for key exchange, ssh replaces the archaic telnet program for remote shell sessions. </del> <ins> **Used to connect to a remote computer** It's full form is 'Secure Shell'. It's purpose is to connect to another remote computer using tcp. The address of the remote computer can be provided using an IP address or, if provided, an identifier. </ins> <del> for example `ssh 192.0.2.1` will try to establish a connection with that host. The address of the remote computer can be provided using an IP address resolvable hostname or FQDN. </del> <ins> If the remote computer requires user login, the form `ssh username@remote_address` can be used, which will then prompt for the user password on successful connection. Example command: `ssh pi@192.168.0.101` This will connect to the computer in the local ip address of 192.168.0.101 and log in with the username pi. Another way to use this command is to pipe a command directly to it. For example: To execute the command `ls /tmp/doc` on the computer with ip address 192.168.0.101, type the following command at a shell prompt: `ssh 192.168.0.101  ls /tmp/doc` After authenticating to the remote server, the contents of the remote directory will be displayed, and you will return to your local shell prompt. </ins> If you wish to use a different username then the one initiating the session (i.e. you're using ssh from root but wish to log in as different user to a remote system), the form `ssh username@remote_address` can be used, which will then prompt for the user password on successful connection.
Change:
Tests run with the error: "assignment to undeclared variable currentNode". It happens because a variable "currentNode" is not declared in the method in the challenge code (not in the student code). Link: Steps to reproduce: the challenge. the button "Run the Tests". The challenge code: = function(element){ var node = new Node(element); if(head === null){ head = node; } else { currentNode = head; ...
Closing this issue, because it was fixed by PR
perhaps there was a regression. This bug is still present. Visit the link above and click 'Run the Tests'. You will see I did a hard refresh in two browsers to be sure. I also, checked the master branch. And it appears the code is fixed there. Is this something that is still waiting for a release?

Discussion:
function LinkedList() { var length = 0; var head = null; <ins> var currentNode = null; </ins> var Node = function(element){ this.element = element; this.next = null;
Change:
Navbar is not proper align in the curriculum page as compared to other pages. There is a white line coming below the navbar. ! ! <!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Browser Name: chrome Browser Version: 70.0.3538.67 (Official Build) (64-bit) Operating System: Ubuntu 18.04 LTS
I'll work on this
Have you gotten around?
Noup. Actually, when I ran the master branch locally, the bug was not there anymore.
Actually I'm able to see it. I can work on this!
That could be the offsetPlease check the relevant styles

Discussion:
} } .default-layout { <del> margin-top: 38px; } </del> <ins> margin-top: 34px; } </ins>  No newline at end of file
Change:
The 3 example links for properly named titles under Title Section in style guide for guide articles are broken. click on this link to get to the issue
May I take this one?

Discussion:
## Quick references articles <del> <a href="/how-to-work-on-guide-articles.md">1. How to work on Guide articles.</a> <a href="/how-to-work-on-coding-challenges.md">2. How to work on Coding Challenges.</a> <a href="/how-to-setup-freecodecamp-locally.md">3. How to setup freeCodeCamp locally.</a> <a href="/how-to-catch-outgoing-emails-locally.md">4. How to catch outgoing emails locally.</a> </del> <ins> <a href="/docs/how-to-work-on-guide-articles.md">1. How to work on Guide articles.</a><br> <a href="/docs/how-to-work-on-coding-challenges.md">2. How to work on Coding Challenges.</a><br> <a href="/docs/how-to-setup-freecodecamp-locally.md">3. How to setup freeCodeCamp locally.</a><br> <a href="/docs/how-to-catch-outgoing-emails-locally.md">4. How to catch outgoing emails locally.</a> </ins> ## Style guides <del> 1. Style guide for creating guide articles. 2. Style guide for creating coding challenges. </del> <ins> <a href="/docs/how-to-work-on-guide-articles.md">1. Style guide for creating guide articles.</a><br> <a href="/docs/how-to-work-on-coding-challenges.md">2. Style guide for creating coding challenges.</a> </ins> ## Quick commands reference when working locally
Change:
Describe the bug Several warnings in the Travis CI builds: To Reproduce Steps to reproduce the behavior: a PR the output in Travis CI build Expected behavior Cleaner builds; maybe reduce build time(?) Screenshots ! Additional context Error references this documentation: Live Demo in doc:

Discussion:
<del> const assert = require('chai').assert; </del> <ins> const { assert, AssertionError } = require('chai'); const Mocha = require('mocha'); </ins> const { flatten } = require('lodash'); const path = require('path');

const { LOCALE: lang = 'english' } = process.env; <ins> const oldRunnerFail = Mocha.Runner.prototype.fail; Mocha.Runner.prototype.fail = function(test, err) { // Don't show stacktrace for assertion errors. if (err.stack && err instanceof AssertionError) { delete err.stack; } return oldRunnerFail.call(this, test, err); }; </ins> let mongoIds = new MongoIds(); let challengeTitles = new ChallengeTitles();

} it('Test suite must fail on the initial contents', async function() { <ins> // suppress errors in the console. const oldConsoleError = console.error; console.error = () => {}; </ins> let fails = ( await Promise.all(tests.map(async function(test) { try {

return true; } }))).some(v => v); <ins> console.error = oldConsoleError; </ins> assert(fails, 'Test suit does not fail on the initial contents'); });