jiebi/CodeConvo huggingface dataset:
Change:
"title": "Generate Random Fractions with JavaScript", "difficulty":"9.9827", "description":[ <del> "Random numbers are useful for creating random behaviours and games.", </del> <ins> "Random numbers are useful for creating random behavior.", </ins> "JavaScript has a <code>Math.random()</code> function that generates a random decimal number.", "Use <code>Math.random()</code> to get <code>myFunction</code> to return a random number." ],

Discussion:
Challenge has an issue. Please describe how to reproduce it, and include links to screenshots if possible. "Random numbers are useful for creating random behaviours and games." May be more clear as: "Random numbers are useful for creating random behavior."
Change:
tests: - text: <code>quickCheck(["squash", "onions", "shallots"], "mushrooms")</code> should return <code>false</code> testString: assert.strictEqual(quickCheck(['squash', 'onions', 'shallots'], 'mushrooms'), false, '<code>quickCheck(["squash", "onions", "shallots"], "mushrooms")</code> should return <code>false</code>'); <del> - text: <code>quickCheck(["squash", "onions", "shallots"], "onions")</code> should return <code>true</code> testString: assert.strictEqual(quickCheck(['squash', 'onions', 'shallots'], 'onions'), true, '<code>quickCheck(["squash", "onions", "shallots"], "onions")</code> should return <code>true</code>'); </del> <ins> - text: <code>quickCheck(["onions", "squash", "shallots"], "onions")</code> should return <code>true</code> testString: assert.strictEqual(quickCheck(['onions', 'squash', 'shallots'], 'onions'), true, '<code>quickCheck(["onions", "squash", "shallots"], "onions")</code> should return <code>true</code>'); </ins> - text: <code>quickCheck([3, 5, 9, 125, 45, 2], 125)</code> should return <code>true</code> testString: assert.strictEqual(quickCheck([3, 5, 9, 125, 45, 2], 125), true, '<code>quickCheck([3, 5, 9, 125, 45, 2], 125)</code> should return <code>true</code>'); - text: <code>quickCheck([true, false, false], undefined)</code> should return <code>false</code>

Discussion:
Describe your problem and how to reproduce it: For , the correct answer should be something like: But this code will also pass all the tests, even when it is incorrect: This can be solved by simply changing the order of the variables in the second test, so that is at index 0, thus disabling the incorrect answer, like this I'd be glad to contribute and fix this myself if the issue is confirmed and the solution approved. Add a Link to the page with the problem: Tell us about your browser and operating system: Browser Name: Chrome Browser Version: 73.0.3683.86 (Official Build) (64-bit) Operating System: macOS Sierra v10.12.5 If possible, add a screenshot here (you can drag and drop, png, jpg, gif, etc. in this box): Here's a screenshot taken after running all the tests. As you can see, all the tests passed, even when the answer is incorrect. !
Can I work on this?
Good catch! I can confirm the current tests do not test all the cases. I am fine with you implementing the change you suggest on a PR.
Since already offered to fix on a PR, I will leave it up to him to decide if he wants to move forward with the PR or is OK letting you create the PR.
Sorry. I was not aware of his PR. I will leave it up to him to decode.
Thanks for the confirmation! Actually this would be my first contribution, so I would really like to give it a shot. But if I run into problems, I'll let you know so you can contribute as well :)
No worries. Feel free to ping me if you run into problems. Happy contributing!
Change:
import { hardGoTo } from '../../../redux'; import { apiLocation } from '../../../../config/env.json'; <ins> import { gtagReportConversion } from '../../../analytics/gtag'; </ins> import './login.css'; const mapStateToProps = () => ({});

Discussion:
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.
Change:
All of the HTML and CSS for this project has been provided for you. <del> When you're ready to get started, use the `.getElementById()` method to get the input element with the id `number-input`, and store it in a variable called `numberInput`. Use the same method to get the button element with the id `convert-btn` and store it in a variable called `convertBtn`, and the `h2` element with the id `result` and store it in a variable called `result`. </del> <ins> When you're ready to get started, use the `.getElementById()` method to get the `input` element with the id `number-input`, and store it in a variable called `numberInput`. Use the same method to get the `button` element with the id `convert-btn` and store it in a variable called `convertBtn`, and the `output` element with the id `result` and store it in a variable called `result`. </ins> **NOTE**: This project will only convert positive numbers into binary.

Discussion:
In the last phrase, it is mentioned a element with , but only an element has : . Rectify to the following: No response . No response
Thanks for opening this issue. This looks like something that can be fixed by "first time" code contributors to this repository. Here are the files that you should be looking at to work on a fix: Change to in the markdown file. Please make sure you read , we prioritize contributors following the instructions in our guides. Join us in our chat room or the forum if you need help contributing, our moderators will guide you through this. Sometimes we may get more than one pull-requests. We typically accept the most quality contribution followed by the one that is made first. Happy contributing.
I think the backticks on the / can be dropped while changing this. Other elements mentioned in the paragraph are not backticked.
But the question is, shouldn't they be? I think they should, to be consistent with the rest of the curriculum. We use backticks with element types.
To be honest I'm not sure what's the current convention, when element type (button/input/output) itself is not actually used in code. This might be also the only project in JS curriculum explicitly naming them in description, instead of referring to them only via id.
Then I feel like the elements shouldn't be mentioned at all. If we mention the element type, I think the types should have backticks. But I guess I can see your point, and I'm not sure what the convention is here.
Change:
--- <del> `ethical` </del> <ins> `security` </ins> ### --feedback-- <del> Related to good behavior and honesty. </del> <ins> Related to safety and unauthorized access. </ins> ---

Discussion:
The word "ethical" is never spoken, only "ethics". "Ethical standards" is an umbrella term. It would be difficult for a language learner to reach that conclusion without the word ever spoken in context. Edit: I'm not convinced that "ethical" is actually the correct word here. If you listen to the audio, at one point, James says "security standards". It would make a lot more sense if the required word was "security". It would also be an easy fix to change the required word to "security". As opposed to fixing the spoken words, which I doubt will happen. code: The exact required word to be spoken and used in context. No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] Forum:
I updated the issue. I think we might be requiring the wrong word here.
Yes, you are correct. It might make sense to advanced English speakers but no so much for beginners. Lets change: Linda learns that compliance helps maintain safety and _ standards To Meaning Safety becomes the blank word so security is not appearing twice as a blank.
It makes more sense to me with the word , as that is how it is used in the spoken sentence. The only time "standards" is spoken is with "security" before it, so when you reach that part of the fill in the blanks I think it is only logical to assume that the word would be "security"
Change:
import { bindActionCreators } from 'redux'; import { connect } from 'react-redux'; import { createSelector } from 'reselect'; <ins> import { Button } from 'react-bootstrap'; </ins> import { updateMyProfileUI } from '../redux'; import { userSelector } from '../../../redux'; <del> import { FullWidthRow } from '../../../helperComponents'; </del> <ins> import { FullWidthRow, Spacer } from '../../../helperComponents'; </ins> import SectionHeader from './SectionHeader.jsx'; import ToggleSetting from './ToggleSetting.jsx'; const mapStateToProps = createSelector( userSelector, <del> ({ profileUI = {} }) => ({ ...profileUI </del> <ins> user => ({ ...user.profileUI, user </ins> }) );

Discussion:
Once we've built the JSON we want to output, I believe we can just use Pug like this for the button to initiate the file download:
Change:
<ins> .certifications .btn { white-space: normal; } </ins>

Discussion:
!
Could you give a link to the page as then it might be easier to solve the issue?
This should be the case on the user's profile page. You can reproduce by setting the certificate keys to true in the user object.
I could work on this!
I am already working on it.
Thanks for letting me know!
a reasonable fix would be to give the grid that contains the profile a class and on the css, change the button under that class and have . you will end up with something like this. here it is on small and large screens <img width="681" alt="screen shot 2019-02-22 at 2 18 10 pm" src="https://user-"<img width="1095" alt="screen shot 2019-02-22 at 2 17 53 pm" src="https://user-"
Similar solution could be applied to these donate buttons probably. but the selectors should be very specific not to change the styling on other buttons in the platform. <img width="669" alt="screen shot 2019-02-23 at 2 09 14 pm" src="https://user-"<img width="502" alt="screen shot 2019-02-23 at 2 08 51 pm" src="https://user-"
Hey or Can you take this up? just updated us that he will be a bit busy with other things.
I'm on it
Change:
padding: 4vw 0; } <ins> .map-ui .btn { min-height: 80px; } </ins> @media (min-width: 500px) { .landing-top p { font-size: 1.25rem;

Discussion:
Looking forward for reporting a security issue: Please report security issues by sending an email to instead of raising a GitHub issue. Describe the bug The heights of the SVG files on the landing page vary, which causes the certification chart to look inconsistent. To Reproduce <img width="946" alt="zoomfloatingvideowindowandLearntoCode—ForFree—CodingCoursesforBusyPeople" src="https://user-"Desktop (please complete the following information): OS: Mac Browser: Chrome Version: Version 88.0.4324.96 (Official Build) (x86_64)
Hi Quincy, I let know about this already.
in min height, so should take care of it.
Change:
assert($('head').length === 1); ``` <del> You should have a one a self-closing `link` element. </del> <ins> You should have one self-closing `link` element. </ins> ```js const link = document.querySelectorAll('link');

Discussion:
as ieahleen mentioned in Crowdin, there are multiple files with typos in them. they say These hints should be changed to because they are testing if there is a single self-closing Please make sure you read , we prioritize contributors following the instructions in our guides. Join us in or if you need help contributing, our moderators will guide you through this. Sometimes we may get more than one pull requests. We typically accept the most quality contribution, followed by the one that is made first. Happy contributing.
Change:
```js const stat = document.querySelectorAll('.stat')[0]; <del> assert.equal(stat.innerText, 'XP: 0'); </del> <ins> assert.equal(stat.innerText.trimEnd(), 'XP: 0'); </ins> ``` You should add a `strong` element in your second `.stat` element.

Discussion:
I was helping a with in the new JS curriculum and they weren't able to pass the tests because of the way they formatted their answer. Here was their code We should allow for that code to pass because they got it right. Here are the current tests For all of the tests that use we should instead update it to use a regex solution with instead. That will make it possible for campers to submit answers with different spacing. All of the tests with the to make sure they have a or element should stay the same though. For those, interested in working on this issue, please read through the first. There will be no assignment for this issue. If you are interested in working on it, then you can submit a PR The following code should pass regardless of different formatting with spaces. No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
Change:
# --description-- <del> Now, uncomment your `caesar()` call. You'll see that your code raises a `TypeError`, because the `caesar` function is defined with two parameters (`message` and `offset`), therefore it expects to be called with two *arguments*. </del> <ins> Currently, your code raises a `TypeError`, because the `caesar` function is defined with two parameters (`message` and `offset`), therefore it expects to be called with two *arguments*. </ins> Calling `caesar()` without the required arguments stops the execution of the code.

Discussion:
In the Building a Cipher project, comment is first mentioned in step 51: But in step 59, we actually introduce comment and its syntax: In step 51, we introduce function parameters, so I think mentioning comment here would be a little overwhelming. I think the comment introduction should either be moved to an earlier challenge or kept in step 59. If we move the comment introduction to an earlier challenge, step 51 can be kept as-is. But if we keep comment introduction in step 59, we should update step 51. Instead of asking the users to comment out the code, I wonder if we could ask them to remove the line entirely (though the code is in step 50, so it's probably a little odd to immediately remove it in the next step).
This does seems to be out of sequence. I would suggest to not comment out in step 51 and let the exception be(the resolution is there in the coming steps). This part of the instruction can be updated from: to:
If we don't ask to comment out the function call in step 51 and tell the campers they will work on fixing the error in the next steps, it would be logic to address the error in the console () and require to pass the two positional arguments to the function call in step 52. But then the function will seem to work fine, although it's still using the and variable inside its body instead of the function parameters. The alternative is to ignore the in the console for step 52, and address it directly in step 53. For that we should simply keep the function call instead of commenting it out and there is no need to swap the step order. Honestly, I don't like particularly any of these options.
Change:
"<blockquote>5 % 2 = 1 because<br>Math.floor(5 / 2) = 2 (Quotient)<br>2 * 2 = 4<br>5 - 4 = 1 (Remainder)</blockquote>", "<strong>Usage</strong><br>In mathematics, a number can be checked even or odd by checking the remainder of the division of the number by <code>2</code>.", "<blockquote>17 % 2 = 1 (17 is Odd)<br>48 % 2 = 0 (48 is Even)</blockquote>", <del> "<strong>Note</strong><br>The <dfn>remainder</dfn> operator is sometimes incorrectly refered to as  the "modulus" operator. It is very similar to modulus, but does not work properly with negative numbers.", </del> <ins> "<strong>Note</strong><br>The <dfn>remainder</dfn> operator is sometimes incorrectly referred to as  the "modulus" operator. It is very similar to modulus, but does not work properly with negative numbers.", </ins> "<h4>Instructions</h4>", "Set <code>remainder</code> equal to the remainder of <code>11</code> divided by <code>3</code> using the <dfn>remainder</dfn> (<code>%</code>) operator." ],

Discussion:
Challenge has an issue. User Agent is: <codeMozilla/5.0 (Macintosh; Intel Mac OS X ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36</code. Please describe how to reproduce this issue, and include links to screenshots if possible. The word refered should be written with 2 Rs: referred. !
Change:
assert([...[...new __helpers.CSSHelp(document).getCSSRules('keyframes')].find(rule => rule?.name === 'wave')?.cssRules].some(css => css?.keyText === '40%')); ``` <ins> You should have 4 waypoints in your keyframe. ```js assert([...[...new __helpers.CSSHelp(document).getCSSRules('keyframes')].find(rule => rule?.name === 'wave')?.cssRules].length === 4); ``` </ins> # --seed-- ## --seed-contents--

Discussion:
Step 96Passed Give wave four waypoints starting at 10%, and incrementing by 10%. tests allow duplicate waypoints for the four required percentages. tests allow other waypoint values not specified in the instructions. wave { 10% { } 20% { } 10% { } 30% { } 10% { } 40% { } 10% { } 50% { } } When I read the instructions, I thought it said do four wave points starting at ten and add ten to each one. Once I failed. I calculated it to do each ten and add ten percent to each one after. I guess even though I did not read the instructions the way they were adviced I found a bug. I passed and when I went to next step it automatically fixed my mistake and removed the 50% also. No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] The instructions from what I read confused me to do four tens and add ten percent under each one. I was able to find the bug due to this so yay I am pleased to help. By doing a total of four I was able to add 50 percent, on the last one too. My suggestion to fix the sentence on instructions, would be to not say make four waves starting at ten. Instead maybe you could say make four waves start at 10 percent and then for the rest add ten percent to each one for a total of four waves only.
We should add new test with hint as following Here is the test If you would like to fix this issue, please make sure you read , we prioritize contributors following the instructions in our guides. Join us in or if you need help contributing, our prolific contributors will guide you through this.
Can I work on this ?
go for it. Edit: btw if you solve one of the two issue, leave the other for first timer.
This test should be at the last of the other tests right? I mean after completing the other tests. Checking for 4 wavepoints should be the last one right? like this : !

Good point , if it's earlier it would trigger before the other, and wouldn't provide coherent hints for different issues.
, I am a first-timer so I do not really know where to make these changes . Also do I need to add the logic using jest or can I just add it to the call-back function of the event listener of that button which submits the user input for that challenge. can i assist you ?
Im working on this. Find another issue.
I have made the changes (addition of code which is mentioned in the above screenshot) in this file : ! This should work now right?
yeah you can work since obviously you got it assigned to yourself first . I am just here to learn . I just want to get familiar with the workflow that's it .
Change:
The `textarea` element acts like an `input` element of type `text`, but comes with the added benefit of being able to receive multi-line text, and an initial number of text rows and columns. <del> To allow users to register with a bio, add a `label` with the text `Provide a bio:` followed by a `textarea` element, which requires a closing tag. </del> <ins> Users will be able to register with a bio. Add a `label` with the text `Provide a bio:` at the end of the `fieldset`. Add a `textarea` element after the `label` element. Note that the `textarea` requires a closing tag. </ins> # --hints-- <del> You should add a `label` element within the third `fieldset`, after the existing `label` elements. </del> <ins> You should add a `label` element at the end of the third `fieldset`, after the existing `label` elements. </ins> ```js assert.exists(document.querySelector('fieldset:nth-child(3) > label:nth-child(4)'));

Discussion:
I've encountered this several times now in the forums. The test will only pass if the is at the end of the after all other inputs, but the instructions do not make this clear. Thus, campers are adding it at the beginning of the and although their HTML is correct, the test is not passing because they have it in the wrong spot. N/A Either clarify in the instructions that the must be at the bottom of the after all other inputs or remove the restriction as to where it is . No response N/A No response
I vote for adding clarifications, although I don't mind removing the restriction. It would be worried if this is the only challenge without these restrictions. here is the markdown file
Change:
// The runPython helper is a shortcut for running python code with our // custom globals. const runPython = (pyCode: string) => <del> pyodide.runPython(pyCode, { globals }) as unknown; </del> <ins> pyodide!.runPython(pyCode, { globals }) as unknown; </ins> runPython(` import jscustom from jscustom import print

Discussion:
Pyodide can crash when adding or method to the class, while NOT trying to write invalid code. I'm mentioning intent, because it can be encountered when attempting to write correct code. ing instance of the class. or method to the class. On each key pressed, code will execute, including the newly written method. So when we are writing the method: Then starting writing inside of the brackets: . Code will be execute also when it's . That's when it will crash hard: Further changes to code will bring up in browser's console: With example challenge to the at the bottom of code. to class definition, add boilerplate: writing between brackets: on the right crashes at the point when it's . Ideally omitting the crashing part. After the crash window needs to be reloaded to make pyodide on the right work again. Tests still appear to work correctly. Recursive function going into maximum call stack size exceeded does not crash pyodide. I've tested example class from above on , it does not crash pyodide.
Change:
}, [actionTypes.storedCodeFound]: (state, { payload }) => ({ ...state, <del> challengeFiles: payload </del> <ins> challengeFiles: state.challengeFiles.length ? mergeChallengeFiles(state.challengeFiles, payload) : payload </ins> }), [actionTypes.initTests]: (state, { payload }) => ({ ...state,

Discussion:
During development adding or modifying the head or tail code ( and ) don't seem to be updated in the challenge. Tested locally and on gitpod. Steps to reproduce the behavior: /modify the or in challenge. For example one of the steps in the JS curriculum. I was adding function and variables to it, and then was attempting to use them in tests. and wait for challenge to be updated. () the challenge page, or visit it for the first time. running tests, referencing the function/variables from head/tail code, there will be reference errors. Changing head or tail code, should update the challenge to use it. Login status don't seem to affect issue. During changing the code, thinking I might do something incorrectly, there were handful times when challenge was updated with the head/tail code. Not sure what was the exact reason. What makes it stranger is stopping client develop and starting again, is not necessarily solving the problem. At some point I thought that's working to get challenge fully updated, but right now that doesn't seem to work.
I might have seen this as well. I remember trying to save a regex in to use in multiple tests, and it didn't seem to work. Kind of just thought I was using it incorrectly, but maybe this was the issue.
Thanks for the detailed investigation of another tricky bug. It was another example where saved code messes things up. They're always a pain to debug because everyone sees something different, depending on whether or not they have something saved. Hopefully this is the last of them!
What's the most throwing off, that wasn't even code saved manually!
Weird. Is there nothing in your local storage?
Hmm, well there is after running tests. That must have been the point when saving mishap happened.
Oh, that's right. No mystery beyond "how did I forget this?" :face_exhaling: