Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added new practice exercise: state-of-tic-tac-toe #2284

Merged
merged 4 commits into from
Jul 7, 2022
Merged

Added new practice exercise: state-of-tic-tac-toe #2284

merged 4 commits into from
Jul 7, 2022

Conversation

AbhilashJN
Copy link
Contributor

Fixes #2170

Can you please let me know where I can find the appropriate values for the practices, prerequisites, difficulty and topics fields?

@github-actions
Copy link
Contributor

github-actions bot commented Jul 5, 2022

Dear AbhilashJN

Thank you for contributing to the Go track on Exercism! 💙
You will see some automated feedback below 🤖. It would be great if you can make sure your PR covers those points. This will save your reviewer some time and your change can be merged quicker.

  • ⬆️ The instructions and test cases for many practice exercises originate in the Exercism-wide problem-specifications repo. If the exercise you changed is listed there in the exercises folder, please consider the following.

    • Improvements to the instructions.md file should be made in the problem-spec repo so that all tracks can benefit.
      You can open a PR there instead.
    • If you want to add some language specific information, use the instructions.append.md file (see Practice Exercise Docs).
    • Test cases selected in the .meta/tests.toml file need to be implemented in the <exercise>_test.go file according to the specification in canonical-data.json.
  • 🔗 If your PR fully fixes an issue, please include the text Fixes #issue_no in any line of the PR description. This will make the issue be automatically be closed when the PR is merged. If your PR is related to an existing issue but does not fix it completely, please link the issue anywhere in the description of the PR with #issue_no. You can read more about this in Github: Linking a pull request to an issue

  • ✍️ If your PR is not related to an existing issue (and is not self-explaining like a typo fix), please make sure the description explains why the change you made is necessary.

  • 🔤 If your PR fixes an easy to identify typo, if would be great if you could check for that typo in the whole repo. For example, if you found Unicdoe, use "replace all" in your editor (or command line magic) to fix it consistently.

Dear Reviewer/Maintainer

  • 📏 Make sure you set the appropriate x:size label for the PR. (This also works after merging, in case you forgot about it.)

  • 🔍 Don't be too nit-picky. If the PR is a clear improvement compared to the status quo, it should be approved as clear signal this is good to be merged even if the minor comments you might have are not addressed by the contributor. Further improvement ideas can be captured in issues (if important enough) and implemented via additional PRs.

  • 🤔 After reviewing the diff in the "Files changed" section, take a moment to think about whether there are changes missing from the diff. Does something need to be adjusted in other places so the code or content stays consistent?

Automated comment created by PR Commenter 🤖.

Copy link
Member

@andrerfcsantos andrerfcsantos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome work on this one! You even included the test generator, which is great.

For the practices and prerequisites keys, you can leave them as empty arrays. It's something we will fill out when we have a more finalized set of concepts for the track. You can see the related issue here: #1396
For the topics and difficulty keys, see the comments below.

Also left some other suggestions for other things, let me know what you think.

In addition to the comments I left, one thing I considered is whether it would be better to have a State type as a return result instead of a string. The type could be something like this:

type State string

const (
    Win State = "win"
    Draw State = "draw"
    Ongoing State = "ongoing"
)

We could include this in the stub or in a separate file. Let me know what you think about this too.

config.json Outdated Show resolved Hide resolved
config.json Outdated Show resolved Hide resolved
exercises/practice/state-of-tic-tac-toe/.meta/gen.go Outdated Show resolved Hide resolved
@andrerfcsantos andrerfcsantos added x:rep/large Large amount of reputation status/awaiting-contributor This pull request is waiting on the contributor. labels Jul 7, 2022
Copy link
Member

@andrerfcsantos andrerfcsantos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A couple more changes.

After these changes, I'll do another pass over everything, but it's looking really good!

@andrerfcsantos andrerfcsantos merged commit 7079d50 into exercism:main Jul 7, 2022
@andrerfcsantos
Copy link
Member

🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status/awaiting-contributor This pull request is waiting on the contributor. x:rep/large Large amount of reputation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add new practice exercise: state-of-tic-tac-toe
2 participants