cpbooster icon indicating copy to clipboard operation
cpbooster copied to clipboard

Missing backwards compatibility with problems that include dots in their name

Open MohamedIrfanAM opened this issue 3 years ago • 8 comments

cpbooster version: 2.1.1 OS: Arch Using Neovim? : Yes Terminal Name: Kitty

Here is my config for cpbooster, Some options are not working.

  1. Not opening Neovim after cpb clone,but opens the directory in terminal
  2. Using chromium to show status on submit instead of my default browser
  3. Not showing test case input
{
  "contestsDirectory": "/run/media/irfan/Programming/cp/",
  "port": 1327,
  "editor": "nvim",
  "terminal": "kitty",
  "closeAfterClone": true,
  "showStatusPageOnSubmit": true,
  "useUserDefaultBrowser": true,
  "hideTestCaseInput": false,
  "cloneInCurrentDir": false,
  "preferredLang": "cpp",
  "languages": {
    "cpp": {
      "template": "/run/media/irfan/Programming/cp/.cph/template.cpp",
      "command": "g++ -std=gnu++17 -O2",
      "debugCommand": "g++ -std=gnu++17 -O3 -DDEBUG -g -fsanitize=signed-integer-overflow -fsanitize=bounds-strict -fsanitize=address -fsanitize=integer-divide-by-zero -fsanitize=float-divide-by-zero -fsanitize=pointer-overflow -fsanitize=shift-exponent -fsplit-stack -Wshadow -Wall -fconcepts",
      "aliases": {
        "codeforces": "54",
        "atcoder": "4003"
      },
      "type": "compiled",
      "commentString": "//"
    },
    "py": {
      "template": "template.py",
      "command": "python3",
      "debugCommand": "python3 -O",
      "aliases": {
        "codeforces": "31",
        "atcoder": "4006"
      }
    }
  }
}

MohamedIrfanAM avatar Dec 23 '21 10:12 MohamedIrfanAM

You are using an old version of cpbooster, please update with npm install cpbooster. The latest as of today is 2.6.0 :)

searleser97 avatar Dec 23 '21 14:12 searleser97

And btw, terminal and editor options mean the same thing, recently I replaced terminal with editor in the options so that it is open to all kinds of editors like "vscode", "sublime-text", etc... . So, using both options is useless, editor takes priority over terminal. Take a look at https://searleser97.github.io/cpbooster/docs/configuration#editor-string for reference

searleser97 avatar Dec 23 '21 14:12 searleser97

I did npm install cpbooster

cpb -v                     
2.6.0

after updating I tried

cpb t B.KalindromeArray.cpp                             
Compiling...

/usr/lib/node_modules/cpbooster/node_modules/yargs/build/lib/yargs.js:1132
                throw err;
                ^

Error: ENOENT: no such file or directory, open 'B_KalindromeArray.in1'
    at Object.openSync (node:fs:505:3)
    at Object.readFileSync (node:fs:401:35)
    at CompiledTester.Tester.getTestVeredict (/usr/lib/node_modules/cpbooster/dist/src/Test/TesterFactory/Tester.js:192:27)
    at CompiledTester.testOne (/usr/lib/node_modules/cpbooster/dist/src/Test/TesterFactory/CompiledTester.js:95:23)
    at CompiledTester.Tester.testAll (/usr/lib/node_modules/cpbooster/dist/src/Test/TesterFactory/Tester.js:112:29)
    at Object.test (/usr/lib/node_modules/cpbooster/dist/src/Test/Test.js:44:24)
    at Object.handler (/usr/lib/node_modules/cpbooster/dist/src/index.js:126:36)
    at Object.runCommand (/usr/lib/node_modules/cpbooster/node_modules/yargs/build/lib/command.js:196:48)
    at Object.parseArgs [as _parseArgs] (/usr/lib/node_modules/cpbooster/node_modules/yargs/build/lib/yargs.js:1043:55)
    at Object.get [as argv] (/usr/lib/node_modules/cpbooster/node_modules/yargs/build/lib/yargs.js:986:25) {
  errno: -2,
  syscall: 'open',
  code: 'ENOENT',
  path: 'B_KalindromeArray.in1'
}

Everything is broken now :(, could you please help me to completely reinstall this ??

MohamedIrfanAM avatar Dec 23 '21 16:12 MohamedIrfanAM

I forgot to add the -g flag in the installation command sorry about that. You should run npm install cpbooster -g

searleser97 avatar Dec 23 '21 16:12 searleser97

I forgot to add the -g flag in the installation command sorry about that. You should run npm install cpbooster -g

Still same output

MohamedIrfanAM avatar Dec 23 '21 16:12 MohamedIrfanAM

I see that the problem is that the name of your file includes an extra dot on the left side. cpbooster is replacing the dot with an underscore when looking for the test file, take a look at the error log, probably changing the name of your file works for now

searleser97 avatar Dec 23 '21 16:12 searleser97

I'll dig into the issue as soon as I can later

searleser97 avatar Dec 23 '21 16:12 searleser97

I'll dig into the issue as soon as I can later

Ok, I tried renaming B.KalindromeArray.in1 -> B_KalindromeArray.in1 and B.KalindromeArray.ans1 -> B_KalindromeArray.ans1 then

cpb t B.KalindromeArray.cpp
No testcases available for this file: B.KalindromeArray.cpp

But renaming everything fixes the problem and newly cloned problems are already named with underscore

MohamedIrfanAM avatar Dec 23 '21 16:12 MohamedIrfanAM