jiebi/CodeConvo huggingface dataset:
Change:
[Beta] CSS Grid: Align an Item Horizontally using justify-self The challenge description has a typo, it says instead of . !

Discussion:
"id": "5a90374338fddaf9a66b5d3a", "title": "Align an Item Horizontally using justify-self", "description": [ <del> "In CSS Grid, the content of each item is located in a box which is referred to as a <dfn>cell</dfn>. You can align the content's position within its cell horizontally using the <code>justify-self</code> property on a grid item. By default, this property has a value of <code>stetch</code>, which will make the content fill the whole width of the cell. This CSS Grid property accepts other values as well:", </del> <ins> "In CSS Grid, the content of each item is located in a box which is referred to as a <dfn>cell</dfn>. You can align the content's position within its cell horizontally using the <code>justify-self</code> property on a grid item. By default, this property has a value of <code>stretch</code>, which will make the content fill the whole width of the cell. This CSS Grid property accepts other values as well:", </ins> "<code>start</code>: aligns the content at the left of the cell,", "<code>center</code>: aligns the content in the center of the cell,", "<code>end</code>: aligns the content at the right of the cell.",
Change:
The lesson misses an expected 'new tab' after the 5 social media sites. i.e.: The lesson should say the expected output is: instead of: Importantly the code runs as written, and produces the correct expected output. Browser Name, Version: Firefox 59.0.1 Operating System: Win 8.1, 64-bit Mobile, Desktop, or Tablet: Desktop The lesson says to run the code, not edit it, but the relevant piece of provided code is reproduced here: ! !

Discussion:
"A Window object is made up of tabs, and you usually have more than one Window open. The titles of each open site in each Window object is held in an array. After working in the browser (opening new tabs, merging windows, and closing tabs), you want to print the tabs that are still open. Closed tabs are removed from the array and new tabs (for simplicity) get added to the end of it.", "The code editor shows an implementation of this functionality with functions for <code>tabOpen()</code>, <code>tabClose()</code>, and <code>join()</code>. The array <code>tabs</code> is part of the Window object that stores the name of the open pages.", "<h4>Instructions<h4>", <del> "Run the code in the editor. It's using a method that has side effects in the program, causing incorrect output. The final list of open tabs should be <code>['FB', 'Gitter', 'Reddit', 'Twitter', 'Medium', 'Netflix', 'YouTube', 'Vine', 'GMail', 'Work mail', 'Docs', 'freeCodeCamp', 'new tab']</code> but the output will be slightly different.", </del> <ins> "Run the code in the editor. It's using a method that has side effects in the program, causing incorrect output. The final list of open tabs should be <code>['FB', 'Gitter', 'Reddit', 'Twitter', 'Medium', 'new tab', 'Netflix', 'YouTube', 'Vine', 'GMail', 'Work mail', 'Docs', 'freeCodeCamp', 'new tab']</code> but the output will be slightly different.", </ins> "Work through the code and see if you can figure out the problem, then advance to the next challenge to learn more." ], "challengeSeed": [
Change:
Typo in the challenge description !
i would like to do it :)
i would like to work on it
so would i.. :-)
Would love to work on this

Discussion:
"id": "bad87fee1348bd9aedf08802", "title": "Uncomment HTML", "description": [ <del> "Commenting is a way that you can leave comments for other developers within your code without affecting the resulting output that is displayed the the end user.", </del> <ins> "Commenting is a way that you can leave comments for other developers within your code without affecting the resulting output that is displayed the end user.", </ins> "Commenting is also a convenient way to make code inactive without having to delete it entirely.", "Comments in HTML starts with <code>&#60;!--</code>, and ends with a <code>--&#62;</code>", "<hr>",
Change:
<!-- freeCodeCamp Issue Template --<!-- Please provide as much detail as possible for us to fix your issue --<!-- Remove any heading sections you did not fill out --<!-- NOTE: If your issue is CodePen Project / Test Suite related, please open it using the below URL instead --<!-- --<!-- Insert link to challenge below -- <!-- Describe below when the issue happens and how to reproduce it --Typo in Basic CSS: Cascading CSS variables description: When you create a variable, it is becomes available for you to use inside the element in which you create it. It also becomes available within any elements nested within it. This effect is known as cascading. Correction: When you create a variable, it becomes available for you to use inside the element in which you create it. It also becomes available within any elements nested within it. This effect is known as cascading. The typo is in this file: On line: 4557 <!-- Describe your workspace in which you are having issues--Browser Name, Version: Firefox v59 Operating System: win 7 Mobile, Desktop, or Tablet: desktop <!-- If relevant, paste all of your challenge code in here --<!-- Add a screenshot of your issue --

Discussion:
"id": "5a9d7295424fe3d0e10cad14", "title": "Cascading CSS variables", "description": [ <del> "When you create a variable, it is becomes available for you to use inside the element in which you create it. It also becomes available within any elements nested within it. This effect is known as <dfn>cascading</dfn>.", </del> <ins> "When you create a variable, it becomes available for you to use inside the element in which you create it. It also becomes available within any elements nested within it. This effect is known as <dfn>cascading</dfn>.", </ins> "Because of cascading, CSS variables are often defined in the <dfn>:root</dfn> element.", "You can think of the <code>:root</code> element as a container for your entire HTML document, in the same way that an <code>html</code> element is a container for the <code>body</code> element.", "By creating your variables in <code>:root</code>, they will be available throughout the whole web page.",

"translations": {} } ] <del> } </del>  No newline at end of file <ins> } </ins>
Change:
<!-- freeCodeCamp Issue Template --<!-- Please provide as much detail as possible for us to fix your issue --<!-- Remove any heading sections you did not fill out --<!-- NOTE: If your issue is CodePen Project / Test Suite related, please open it using the below URL instead --<!-- --<!-- Insert link to challenge below --Link to external page with anchor elements <!-- Describe below when the issue happens and how to reproduce it --In the translation to Spanish, the instruction is: "Create an element which links to and have the anchor text "fotos de gatos". The validator says: Your a element should have the anchor text of "cat photos". This will be a trouble in all translations when the validator looks for a string given in a specific language. <!-- Describe your workspace in which you are having issues--Browser Name, Version: Operating System: Mobile, Desktop, or Tablet: <!-- If relevant, paste all of your challenge code in here --<!-- Add a screenshot of your issue --!
I can do this!
I guess an overhaul of the challenge JSON structure could go something like: But this would be a big overhaul :D

Discussion:
"He aquí un ejemplo:", "<code>&#60;p&#62;Aquí está un &#60;a href="https://freecodecamp.org"&#62; enlace a freeCodeCamp&#60;/a&#62; para que lo sigas.&#60;/p&#62;</code>", "<hr>", <del> "Crea un elemento <code>a</code> que se vincule a <code>http://freecatphotoapp.com</code> y tenga como <code>texto de ancla</code> "fotos de gatos"." </del> <ins> "Crea un elemento <code>a</code> que se vincule a <code>http://freecatphotoapp.com</code> y tenga como <code>texto de ancla</code> "cat photos"." </ins> ] }, "pt-br": {
Change:
Completing projects from the settings page, submitting a url, dose not increment the points a user has. We need to push a new timestamp to the users array.
Hi I can help out with this. Am I correct in thinking that this should be done in the file? If so, I'll look at for some guidance.

Discussion:
function buildCompletedChallengesUpdate(completedChallenges, project) { const key = Object.keys(project)[0]; const solutions = project[key]; <ins> const solutionKeys = Object.keys(solutions); </ins> const currentCompletedChallenges = [ ...completedChallenges ]; const currentCompletedProjects = currentCompletedChallenges <del> .filter(({id}) => Object.keys(solutions).includes(id)); </del> <ins> .filter(({id}) => solutionKeys.includes(id)); </ins> const now = Date.now(); <del> const update = Object.keys(solutions).reduce((update, currentId) => { </del> <ins> const update = solutionKeys.reduce((update, currentId) => { </ins> const indexOfCurrentId = _.findIndex( <del> currentCompletedProjects, </del> <ins> update, </ins> ({id}) => id === currentId ); const isCurrentlyCompleted = indexOfCurrentId !== -1; <del> if ( isCurrentlyCompleted && currentCompletedProjects[ indexOfCurrentId ].solution !== solutions[currentId] ) { </del> <ins> if (isCurrentlyCompleted) { </ins> update[indexOfCurrentId] = { <del> ...update[indexOfCurrentId], </del> <ins> ..._.find(update, ({id}) => id === currentId).__data, </ins> solution: solutions[currentId] }; }

], 'id' ); <del> return updatedExisting; </del> <ins> return { updated: updatedExisting, isNewCompletionCount: updatedExisting.length - completedChallenges.length }; </ins> } function isTheSame(val1, val2) {

}; User.prototype.updateMyProjects = function updateMyProjects(project) { <del> const updateData = {}; </del> <ins> const updateData = { $set: {} }; </ins> return this.getCompletedChallenges$() <del> .flatMap(completedChallenges => { updateData.completedChallenges = buildCompletedChallengesUpdate( completedChallenges, </del> <ins> .flatMap(() => { const { updated, isNewCompletionCount } = buildCompletedChallengesUpdate( this.completedChallenges, </ins> project ); <ins> updateData.$set.completedChallenges = updated; if (isNewCompletionCount) { let points = []; // give points a length of isNewCompletionCount points[isNewCompletionCount - 1] = true; updateData.$push = {}; updateData.$push.progressTimestamps = { $each: points.map(() => Date.now()) }; } </ins> return this.update$(updateData); }) .do(() => Object.assign(this, updateData))

timezone ) { let finalChallenge; <del> const updateData = { $push: {} }; </del> <ins> const updateData = {}; </ins> const { timezone: userTimezone, completedChallenges = [] } = user; const oldChallenge = _.find(

}; } <del> updateData.$push = { ...updateData.$push, completedChallenges: finalChallenge </del> <ins> updateData.$set = { completedChallenges: _.uniqBy( [finalChallenge, ...completedChallenges], 'id' ) </ins> }; if (
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --There is a type in the challenge "Basic CSS - Use CSS Variables to change several elements at once" The tests are asking the user to update the colours for three times, where it should be , and respectively Browser Name: Chrome Browser Version: 66.0.3359.181 Operating System: macOS Sierra 10.12.6 !
I'd be happy to make a pull request, but I don't know where to find the code
Hi I just ran into this issue too. I think you can found the code on . It's from line 4303.
Since it was a typo on the assignment why was it not changed simple penguin class should declare the --penguin-skin variable and assign it to gray. Passed penguin class should declare the --penguin-belly variable and assign it to white. Passed penguin class should declare the --penguin-beak variable and assign it to orange. Instead of all these plenty grammar and drama

Discussion:
"testString": "assert(code.match(/.penguins*?{[sS]*--penguin-skins*?:s*?grays*?;[sS]*}/gi), '<code>penguin</code> class should declare the <code>--penguin-skin</code> variable and assign it to <code>gray</code>.');" }, { <del> "text": "<code>penguin</code> class should declare the <code>--penguin-skin</code> variable and assign it to <code>white</code>.", "testString": "assert(code.match(/.penguins*?{[sS]*--penguin-bellys*?:s*?whites*?;[sS]*}/gi), '<code>penguin</code> class should declare the <code>--penguin-skin</code> variable and assign it to <code>white</code>.');" </del> <ins> "text": "<code>penguin</code> class should declare the <code>--penguin-belly</code> variable and assign it to <code>white</code>.", "testString": "assert(code.match(/.penguins*?{[sS]*--penguin-bellys*?:s*?whites*?;[sS]*}/gi), '<code>penguin</code> class should declare the <code>--penguin-belly</code> variable and assign it to <code>white</code>.');" </ins> }, { <del> "text": "<code>penguin</code> class should declare the <code>--penguin-skin</code> variable and assign it to <code>orange</code>.", "testString": "assert(code.match(/.penguins*?{[sS]*--penguin-beaks*?:s*?oranges*?;[sS]*}/gi), '<code>penguin</code> class should declare the <code>--penguin-skin</code> variable and assign it to <code>orange</code>.');" </del> <ins> "text": "<code>penguin</code> class should declare the <code>--penguin-beak</code> variable and assign it to <code>orange</code>.", "testString": "assert(code.match(/.penguins*?{[sS]*--penguin-beaks*?:s*?oranges*?;[sS]*}/gi), '<code>penguin</code> class should declare the <code>--penguin-beak</code> variable and assign it to <code>orange</code>.');" </ins> } ], "solutions": [],
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Extra padding seems to appear at the bottom of the page after finishing a challenge and moving on to the next. The extra padding disappears when the page is refreshed. Occurs and reproducible on some challenges. Used screen resolution is 1366x768. Browser Name: Firefox Nightly Browser Version: 62.0a1 Operating System: Kubuntu 18.04 ! !
Is this still a problem
Yep, still present. Tested on Manjaro, Firefox Nightly 67.0a1 and Firefox 65.0 in safe mode and on different profiles.
Can you checkout our which has many changes which may have resolved this issue. If it is still present, then we can label it as such. Also, just to make it clear, can you maybe highlight or circle where you are seeing this extra padding on a screenshot? Thank you.
can confirm this still happens on Seems like the completion modal causes the text in the description to shift by a pixel or two.
Steps to reproduce: Use Firefox Go to Currently you can scroll to the bottom and see no white padding Click on line 2 of the editor and hit Ctrl-Space to get suggestions and then Ctrl-Enter to run the tests Now scroll to the bottom and see that the padding is visible ! This is caused by the div which should be visually hidden, but is actually sitting at the bottom of the page. I'll submit a PR fixing this shortly.

Discussion:
letter-spacing: 0.02em; } <ins> .monaco-aria-container { top: -999em; } </ins> #challenge-page-tabs .nav-tabs { margin-left: 2px; display: flex;
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Line breaks are missing in the example code. How to reproduce: Access the URL below Browser Name: Chrome Browser Version: 67.0.3396.79 Operating System: Windows 10 !
to fix this replace all the with on this line
working on fixing this.

Discussion:
"id": "598f48a36c8c40764b4e52b3", "title": "Prevent Object Mutation", "description": [ <del> "As seen in previous challenge, <code>const</code> declaration alone doesn't really protect your data from mutation. To ensure your data doesn't change, JavaScript provides a function <code>Object.freeze</code> to prevent data mutation.", "Once the object is freezed, you can no longer add/update/delete properties from it. Any attempt at changing the object will be rejected without any error.", "<blockquote>nlet obj = {n  name:"FreeCodeCamp"n  review:"Awesome"n};nObject.freeze(obj);nobj.review = "bad"; //will be ignored. Mutation not allowednobj.newProp = "Test"; // will be ignored. Mutation not allowednconsole.log(obj); n// { name: "FreeCodeCamp", review:"Awesome"}n</blockquote>", </del> <ins> "As seen in the previous challenge, <code>const</code> declaration alone doesn't really protect your data from mutation. To ensure your data doesn't change, JavaScript provides a function <code>Object.freeze</code> to prevent data mutation.", "Once the object is frozen, you can no longer add, update, or delete properties from it. Any attempt at changing the object will be rejected without an error.", "<blockquote><br>let obj = {<br>  name:"FreeCodeCamp"<br>  review:"Awesome"<br>};<br>Object.freeze(obj);<br>obj.review = "bad"; //will be ignored. Mutation not allowed<br>obj.newProp = "Test"; // will be ignored. Mutation not allowed<br>console.log(obj); <br>// { name: "FreeCodeCamp", review:"Awesome"}<br></blockquote>", </ins> "<hr>", <del> "In this challenge you are going to use <code>Object.freeze</code> to prevent mathematical constants from changing. You need to freeze <code>MATH_CONSTANTS</code> object so that noone is able alter the value of <code>PI</code> or add any more properties to it." </del> <ins> "In this challenge you are going to use <code>Object.freeze</code> to prevent mathematical constants from changing. You need to freeze the <code>MATH_CONSTANTS</code> object so that no one is able alter the value of <code>PI</code>, add, or delete properties ." </ins> ], "tests": [ {
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --From CSS variable lesson, I just want to inform that IE doesn't supports as well as it's fallback value. It'd be great if your team will curate those lessons/challenges or add alternate CSS property with that. Started from lesson. Browser Name: Chrome Browser Version: 67+ Operating System: Windows 10
Thanks for raising this. Fallbacks as described in this lesson are not for older browsers that lack CSS variable support, they are for when the variable has not been defined yet, or otherwise not able to be resolved. The technique you mention of using a preceding more broadly supported CSS rule is also referred to as a fallback. Ideally, I think there should be two lessons, one describing each. whats the situation with adding additional lessons?
yes we are open to adding new lessons.
what did you have in mind for additional lessons? How about just a message in the first variable lesson that or something
In my opinion: needs corrected additional lesson should be after the lessons in screenshot below, lesson to show how to use this principle to form resilient css - ie fallback behaviour for css rules not understood by browser !
I'd like to work on this. Should I lump this all into on PR or separate it into two since part one is technically a fix while part two is a feature?
great! Looking forward to seeing what you come up with. I would say it's better to have two separate PRs, one for the fix and another for the new lesson.

Discussion:
"async": "^0.9.0", "bcrypt-nodejs": "^0.0.3", "body-parser": "^1.9.3", <ins> "chai-jquery": "^2.0.0", </ins> "cheerio": "^0.18.0", "clockwork": "^0.1.1", "compression": "^1.2.1",
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --From CSS variable lesson, I just want to inform that IE doesn't supports as well as it's fallback value. It'd be great if your team will curate those lessons/challenges or add alternate CSS property with that. Started from lesson. Browser Name: Chrome Browser Version: 67+ Operating System: Windows 10
Thanks for raising this. Fallbacks as described in this lesson are not for older browsers that lack CSS variable support, they are for when the variable has not been defined yet, or otherwise not able to be resolved. The technique you mention of using a preceding more broadly supported CSS rule is also referred to as a fallback. Ideally, I think there should be two lessons, one describing each. whats the situation with adding additional lessons?
yes we are open to adding new lessons.
what did you have in mind for additional lessons? How about just a message in the first variable lesson that or something
In my opinion: needs corrected additional lesson should be after the lessons in screenshot below, lesson to show how to use this principle to form resilient css - ie fallback behaviour for css rules not understood by browser !
I'd like to work on this. Should I lump this all into on PR or separate it into two since part one is technically a fix while part two is a feature?
great! Looking forward to seeing what you come up with. I would say it's better to have two separate PRs, one for the fix and another for the new lesson.

Discussion:
"tests": [ "assert.deepEqual(chunk(['a', 'b', 'c', 'd'], 2), [['a', 'b'], ['c', 'd']], 'should return chunked arrays');", "assert.deepEqual(chunk([0, 1, 2, 3, 4, 5], 3), [[0, 1, 2], [3, 4, 5]], 'should return chunked arrays');", <del> "assert.deepEqual(chunk([0, 1, 2, 3, 4, 5], 4), [[0, 1, 2, 3], [4, 5]], 'should return cthe last chunk as remaining elements');" </del> <ins> "assert.deepEqual(chunk([0, 1, 2, 3, 4, 5], 4), [[0, 1, 2, 3], [4, 5]], 'should return the last chunk as remaining elements');" </ins> ] }, {
Change:
<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Browser Name: Firefox Browser Version: 60.0.2 (up-to-date) Operating System: macOS High Sierra, v10.13.5 <img width="407" alt="screen shot 2018-06-13 at 11 16 17" src="https://user-"<img width="227" alt="screen shot 2018-06-13 at 11 16 38" src="https://user-"
While (8.8 + 8.6 + 9.0 + 8.3 + 7.9) / 5 = 8.52, the instructions say As Christopher Nolan didn't direct all of the movies listed, why do we need to find the average of all 5? In other words, don't we need to find the average of the movies that only have listed, which does comes to 8.675?
Good catch. I missed the “Nolan” qualification. I’ll see that it stays as/is. Thank you.
thank you for pointing that out! I also missed that. I'll revert the PR now.
Reopened with
Can someone confirm that no change is required? If yes please comment and close.
no change is required for this challenge. Here's a working solution: With that the original test, 8.675, passes.

Discussion:
"testString": "assert(code.match(/.reduce/g), 'Your code should use the <code>reduce</code> method.');" }, { <del> "text": "The <code>averageRating</code> should equal 8.675.", "testString": "assert(averageRating == 8.675, 'The <code>averageRating</code> should equal 8.675.');" </del> <ins> "text": "The <code>averageRating</code> should equal 8.52.", "testString": "assert(averageRating == 8.52, 'The <code>averageRating</code> should equal 8.52.');" </ins> }, { "text": "Your code should not use a <code>for</code> loop.",

} } ] <del> } </del>  No newline at end of file <ins> } </ins>