Git assign issue

Looking to pick up an issue and add to the code. Can’t assign an issue to myself in github. Might not matter but not much point two devs picking up the same thing. Will add a note to the issue fornow.

4 Likes

Thanks for your help with coding.

@anoek may be able to comment if this is on purpose or not :slight_smile:

In practice, you will find this is not an issue, because there are plenty of issues to go around!

The pool of active developers is small enough that generally we have a good idea what each person is working on.

If you need any help with setup or whatever … please reach out.

3 Likes

Github only allows those with write access (or Triage access I believe) to assign issues.

It looks like anoek already made the assignment on GitHub. Thanks @Gurumanger for volunteering!

3 Likes

Trying to install and build: I have an npm dependency issue - it says it can’t resolve reference @types/react when running the npm install yarn step inside the cloned repo.

Any idea?

I am running on Kubuntu 23.04 if that helps

1 Like

Hmm I don’t think I’ve seen that one. Could you share the command and full error output?

If you are having issues installing yarn, you might try the official instructions here: https://yarnpkg.com/getting-started/install

End of the log from running npm install yarn in the cloned repo folder:

4609 silly fetch manifest react@^16.13.0
4610 timing idealTree Completed in 260162ms
4611 timing command:install Completed in 260193ms
4612 verbose stack Error: Unable to resolve reference $@types/react
4612 verbose stack     at get spec [as spec] (/usr/share/nodejs/@npmcli/arborist/lib/edge.js:186:15)
4612 verbose stack     at OverrideSet.getEdgeRule (/usr/share/nodejs/@npmcli/arborist/lib/override-set.js:53:34)
4612 verbose stack     at Edge.reload (/usr/share/nodejs/@npmcli/arborist/lib/edge.js:228:46)
4612 verbose stack     at [_setFrom] (/usr/share/nodejs/@npmcli/arborist/lib/edge.js:266:10)
4612 verbose stack     at new Edge (/usr/share/nodejs/@npmcli/arborist/lib/edge.js:85:19)
4612 verbose stack     at [_loadDepType] (/usr/share/nodejs/@npmcli/arborist/lib/node.js:890:9)
4612 verbose stack     at [Arborist.Node._loadDeps] (/usr/share/nodejs/@npmcli/arborist/lib/node.js:867:23)
4612 verbose stack     at new Node (/usr/share/nodejs/@npmcli/arborist/lib/node.js:259:20)
4612 verbose stack     at <computed>.then.error.requiredBy (/usr/share/nodejs/@npmcli/arborist/lib/arborist/build-ideal-tree.js:1250:20)
4612 verbose stack     at async [nodeFromEdge] (/usr/share/nodejs/@npmcli/arborist/lib/arborist/build-ideal-tree.js:1058:19)
4613 verbose cwd /home/andy/sandbox/online-go.com
4614 verbose Linux 6.2.0-20-generic
4615 verbose node v18.13.0
4616 verbose npm  v9.2.0
4617 error Unable to resolve reference $@types/react

Not sure what the react 16 reference here is.

I was wanting to try with the production release that you have deployed to the web server to see if anything had changed via a change since, but you don't see you have labelled releases when you deploy or can I identify the deployed release come other way?

I think there have been some peer dependency issues since we migrated from React 16 to React 18. I can’t seem to reproduce this message though, even after re-installing with npm.

Some things you might try though - I’d make sure everything is up-to-date (git pull, npm install -g npm@latest etc.) install yarn in a different way, and then use yarn to install everything else.

Option 1: Install yarn globally with npm

npm install --global yarn

Option 2: Install yarn with apt

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

sudo apt update && sudo apt install yarn

I was wanting to try with the production release that you have deployed to the web server to see if anything had changed via a change since, but you don’t see you have labelled releases when you deploy or can I identify the deployed release come other way?

That’s a good idea. I don’t think there are tags, but if you check out online-go.com/docs/about, there is a commit hash at the bottom of the page. You can try to sync to that.

git checkout c873cc7f

Great - option 1 worked with the global yarn install.

Next issue: npm run dev works fine until it gets part way through running eslint (12%). Then, the will laptop I am using freezes - can’t even move the mouse.

I ran top in a separate terminal and repeated (after a forced reboot) and that freezes. At the point in freezes, I have cpu usage of:

webpack 147.6%
gulp 120.2%
node 88.3%
kswapd0 30.9%

Surely it can’t hammer the machine that much?

1 Like

Good grief. Turns out the default install of kubuntu created no swap space. Wonderful!

All good now. I will update the contribution page for both these this with a small note on this branch.

4 Likes

:joy:

Glad you got it running! Let us know if there’s anything else we can help with!

OK - so working my way through the code (I will get on to VSCode but since I like to make life difficult for myself, I am in Notepad++ type territory at the moment)

{As an aside I should say I dabble in coding since core developer days are long behind me - I am an Enterprise Architect as a large global bank)

If I am right then game.tsx is where all the game rendering occurs both for a a live game and while you are looking at an AI-generated variation. Is that correct?

This code seems to be the place where the move array is created and, fr this issue, restricting it to the max number selected in preferences is where I was going, But that does not seem to have no effect:

                if (stashed_move_string && stashed_review_id === goban.current.review_id) {
                    const prev_last_review_message = goban.current.getLastReviewMessage();
                    const moves = GoMath.decodeMoves(
                        stashed_move_string,
                        goban.current.width,
                        goban.current.height,
                    );

                    goban.current.engine.jumpTo(goban.current.engine.move_tree);
                    for (const move of moves) {

If I put a console.log in game.tsx, should it appear in the browser console or am I missing something here (I can see other console.log calls in the code) or is what is run in the browser dynamically generated per game? Logging “moves” in this way does not show anything.

Can you give me a few pointers?

I think @benjito linked a few commits on the github issue to do with stone transparency in case that pointed to related code.

online-go.com/src/views/Game/Game.tsx at devel · online-go/online-go.com · GitHub would have a lot of game page code yes, and online-go.com/src/views/Game/AIReview.tsx at devel · online-go/online-go.com · GitHub has a lot of the stuff to do with the AIReview code.

Somewhere around here,

would be my guess as to probably what is drawing the ghost variations on the board. I think the setMarks function can draw different kinds of markings on the board.

This line

seems like it might just jump to the current position when disconnecting/reconnecting. I think I’ve seen that happen before where the game/variation kind of refreshes.

I think so, as long as the function is getting called somewhere it should print things out. I use it a lot when testing things to see current states of variables or testing which parts of code are being called etc.

1 Like

Actually maybe this could be the method to play around with in AIReview.tsx

I think that might set the marks to be turned into the ghost variations.

That’s only at a glance though, I could be wrong but hopefully it generates some ideas :slight_smile:

Thanks @shinuito – that should be enough to get me there. Perhaps the reason console.log is not showing up is that code is not being called - that makes sense and good to confirm it works in principle.

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.