Watch list

https://twitter.com/donkulosislabs: developer shipped a game in godot, now prototyping with bevy
http://josfeenstra.nl/#island: townscaper inspired sandbox
https://twitter.com/dekirisu: not straight 3d grid ; movement + networking
https://twitter.com/fenchel_: roguelike pachinko
https://boxycraft-e9317.web.app/: physics littlebigplanet vibes

https://www.jarl-game.com/ should be on there

Yes! it's already on main readme in "promising".
I definitely should think about better taxonomy for different projects

A new game from us at Headless Studio
A twist to the drop game - https://play.google.com/store/apps/details?id=studio.headless.voltum

This is apparently a Bevy thing.
https://discord.com/channels/691052431525675048/691052431974465548/1323311677105639516
https://store.steampowered.com/app/2302620/Sentinels_Inc
https://www.youtube.com/@sentinelsinc


console.log does not emit output

Branching from Issue #2441
@cpojer I'm not seeing any console.log output with this setup (macOS):
$ node --version
v7.4.0

Files
package.json:
{
  "dependencies": {
    "@types/jest": "19.2.4",
    "jest": "20.0.4",
    "ts-jest": "20.0.6",
    "typescript": "2.3.4"
  }
}

__tests__/jestconfig.json:
{
  "rootDir": "../",
  "globals": {
    "__TS_CONFIG__": {}

  },
  "moduleFileExtensions": [
    "ts",
    "tsx",
    "js",
    "jsx",
    "json"
  ],
  "transform": {
    "\\.(ts|tsx)$": "<rootDir>/node_modules/ts-jest/preprocessor.js"
  },
  "testRegex": "__tests__/.*test_.*\\.(ts|tsx|js)$"

__tests__/test_foo.ts:
import {} from 'jest';

console.log('CONSOLE before test');
test('fail', () => {
  console.log('CONSOLE inside test');
  expect(true).toEqual(false);
  console.log('CONSOLE end of test');
})

__tests__/test_bar.js:
console.log('BAR CONSOLE before test');
test('fail', () => {
  console.log('BAR CONSOLE inside test');
  expect(true).toEqual(false);
  console.log('BAR CONSOLE end of test');
})

Output
$ jest -c __tests__/jestconfig.json
 FAIL  __tests__/test_foo.ts
  ● fail

    expect(received).toEqual(expected)

    Expected value to equal:
      false
    Received:
      true

      at Object.<anonymous> (__tests__/test_foo.ts:6:16)
      at Promise.resolve.then.el (node_modules/p-map/index.js:42:16)

 FAIL  __tests__/test_bar.js
  ● fail

    expect(received).toEqual(expected)

    Expected value to equal:
      false
    Received:
      true

      at Object.<anonymous>.test (__tests__/test_bar.js:4:16)
      at Promise.resolve.then.el (node_modules/p-map/index.js:42:16)

Test Suites: 2 failed, 2 total
Tests:       2 failed, 2 total
Snapshots:   0 total
Time:        1.379s
Ran all test suites.

Single TS test:
$ jest -c __tests__/jestconfig.json __tests__/test_foo.ts
 FAIL  __tests__/test_foo.ts
  ● fail

    expect(received).toEqual(expected)

    Expected value to equal:
      false
    Received:
      true

      at Object.<anonymous> (__tests__/test_foo.ts:6:16)
      at Promise.resolve.then.el (node_modules/p-map/index.js:42:16)

  ✕ fail (116ms)

Test Suites: 1 failed, 1 total
Tests:       1 failed, 1 total
Snapshots:   0 total
Time:        1.27s
Ran all test suites matching "__tests__/test_foo.ts".

@thymikee Any idea why this is happening?

No idea, but I'd try to minimize the example, e.g. by removing typescript

I'm able to repro without Typescript

Can confirm Node 7.4 eats console logs, but it works on Node 7.5.0, 7.10.0, 8.0.0 and 8.1.2.
Please upgrade your Node version. Closing

@thymikee What about Node 6, which is the current LTS release? (Looks like I'm hitting this too, though haven't debugged it enough yet. However, limited to LTS releases for now, so can't upgrade).

Tested on v6.11.0, still shows console.logs.

Ah, I might be hitting some other problem. Thanks, @thymikee, I'll go back to debugging it a bit more.

I was running Node 7.3.0 unknowingly (wrong version via n) and it wasn't logging. Switched to 8.1.1 and it logged again.

@thymikee - I don't see how that is the solution? ...I am not able to upgrade my node version

I guess I'm a little confused how this would be considered a Node bug and not at least have something to do with Jest itself. Using Node v7.4.0, with Jest v19.0.2 I see console logging from my tests. Simply updating Jest to v20.0.4 (without making any changes to any other configuration) causes console logging to no longer appear. Is there something that I'm missing?

@thymikee  So, I've upgraded my node version and I see no console logs on Node 8.2.1 Winx64 + Jest 20.0.4.  I have to use a fallback for now
  console.log = s => {
    process.stdout.write(s + "\n");
  };

and I'm pretty sure it should be fixed in Jest, since previous versions didn't have this issue.

@nowherenone can you test if it happens on latest alpha release jest@test?

@thymikee Just tried with jest@test on node 8.2.1 but same result. console.log statements are always swallowed.

@thymikee The problem is in the BufferedConsole module, where the Console  constructor parameters don't match with the expected ones.
I've opened a PR, maybe it would help:  https://github.com/facebook/jest/pull/4157

I think the problem here is that Jest buffers messages but there is something that causes to bail out (or an infinite loop etc.). You'll need to use --verbose to print the messages directly to the output stream.

This is ridiculous - I am triggered by the amount of useless responses from @cpojer (in every issue and PR I go to) and trying to put everything on everyone else like somehow we aren't smart enough.
Don't use Jest - that's my answer if you're wondering. Find a new testing framework.
describe('index', () => {
  it('doesnt print anything', () => {
    console.log('Hellllooo');
    expect(true).toBe(true);
  });
});

$ yarn test -- src/__tests__/index.spec.js --verbose
yarn test v0.27.5
warning package.json: No license field
$ jest "src/__tests__/index.spec.js" "--verbose"
 PASS  src/__tests__/index.spec.js
  Index
    ✓ doesnt print anything (2ms)

Test Suites: 1 passed, 1 total
Tests:       1 passed, 1 total
Snapshots:   0 total
Time:        0.969s, estimated 2s

$ jest "--version"
v20.0.4
$ node --version
v7.4.0

I am sure I'll just be told to install a newer version of Node Lmao - what a joke 😂 😂 😂

yup @thymikee I am making it up lol - that was dead serious - it's not working - what do you suggest? I am using a bad OS? should i upgrade my OS to use jest?

Throwing in since I'm on windows (node 8.4, jest 21.0.0-alpha.2), console.logs are sometimes hidden if you don't use --verbose, but seem to show consistently with it. Happy to update with results using node 7 and stable jest when I get a minute.

The same problem here.
describe('index', () => {
  it('doesnt print anything', () => {
    console.log('Hellllooo');
    expect(true).toBe(true);
  });
});

$ node --version
v7.4.0
$ jest "--version"
v21.1.0

Currently encountering same issue on node v8.7.0 (npm v5.4.2).

This is still an issue

Can you provide a reproduction?

FWIW, I ended up here because I was having the exact same issue. Node v7.4.0. Upgraded my Node version, and console.log prints as expected now, even without --verbose. V7.4.0 may not be the only version to have this issue, but it does seem to be version-related, and a non-issue for some Node versions. I'm now on Node v8.3.0, which seems to work.

I can reproduce this with node 8.9.0 and jest 21.2.1

@SimenB I could but it looks like this issue has been discussed to death here and elsewhere. The multi-(child)process nature of jest means that it will overwrite console.logs, and without a massive rewrite that is not going to change. Anyone who comes to this thread and wants to avoid the issue where using the --verbose flag disallows debugging with console.log, should use the --watch flag. This will avoid the child worker processes from overwriting and allow you see verbose output with console logs.

In my case I found the verbose messaging would eat some but not all console.log messages. I removed the verbose option and it seems to somewhat work!

I just upgraded my node version from v6 to v9 and one of my test files is consoling.
I've been battling with the issue for weeks. I'm glad it works now

The problem still persists with --verbose  when combined with --forceExit - I think the reason for that is that console.log outputs to stdout while jest writes to stderr and when --forceExit there may still be content in stdout not be flushed
I found the following solution (without the need for --verbose) to fix both console.log not showing and/or console.log being buffered and not displayed live
command
jest .... --forceExit --setupTestFrameworkScriptFile ./src/tests/jestShim.js
contents of jestShim.js
const { Console } = require('console');
global.console = new Console(process.stderr, process.stderr);

Same issue-never see console.log output ever.
Node 9.80
Jest 22.4.2
Mac OS 10.13.3
Not one of the workarounds suggested here worked for me.

Workaround of @ledbit worked for me
NPM 5.3.0
jest 22.4.3

Mac OS

I have the same issue. node v9.11.1, jest v22.4.4, OS macOS 10.13.4.
Should we create a new issue or should this one be reopened?

I'm still at the point of needing a reproduction.
--forceExit seems somewhat broken, but I've not encountered it when not using that flag

[Using react-scripts forked to use latest Jest v23]
I finally got the logs to show up by tagging each one with a particular string of characters (e.g. @@@) and running:
yarn test --verbose | grep '@@@'

It's a terrible hack (you lose all console coloring, but you do still see test failures and a final test summary) but it's the only thing that's worked so far. I tried everything else in the comments above. Note that the --verbose arg is necessary for this solution.

This is still an issue. I'm using jest v22.4.3 on Node 10.1.0 and I only see the first console.log statement of my app, all of the rest are ignored. When I set my logging library to stream to stdout I can see some of the logs but they don't appear in the right order.
Jest's job as a test runner is to help us debug and fix our code. That can simply not be achieved without logs.

@thymikee please re-open this issue

@thanpolas feel free to create a new issue with a repository showing the bug so we can investigate :). Also, please use Jest 23, as that's the latest.

I figured out my problem, the logging was happening through a logger that was streaming to stdout, when redirected to console.log I forgot to invoke the stream writer callback so the stream stopped sending logs.

For what it's worth, I've seen differences between Terminal and iTerm2.

I think an option to instruct jest to not do magic on stdout and console would be very beneficial for everyone

Here is one instance of the bug that I managed to reproduce. Not sure if there are multiple sources though:
https://github.com/spion/jest-logging-repro
Setup: Jest is in watch mode, with verbose flag turned on, with at least two test files running.
Theory: Output from one of the workers moves the console cursor to the wrong place overwriting content.
Observation in console:
 RUNS  tests2/other-tests.js
 RUNS  lib/example.spec.js
 PASS  tests2/other-tests.js
  bar
    ✓ always is true (17ms)

 PASS  lib/example.spec.js
  foo
    ✓ adds 5 (5ms)

Test Suites: 2 passed, 2 total
Tests:       2 passed, 2 total
Snapshots:   0 total
Time:        1.673s
Ran all test suites.

Watch Usage: Press w to show more.

If I remove the console log:
 PASS  lib/example.spec.js
  foo
    ✓ adds 5 (5ms)

 PASS  tests2/other-tests.js
  bar
    ✓ always is true (5ms)

Test Suites: 2 passed, 2 total
Tests:       2 passed, 2 total
Snapshots:   0 total
Time:        1.597s
Ran all test suites.

Watch Usage: Press w to show more.

Watch Usage: Press w to show more.

Node version:
30656 % node --version
v8.11.2

I think @spion is honing in on it.  Nice easy repro.

Can confirm that this happens on Node v8.11.1 LTS and only happens on watch and watchAll mode. without watch modes, it's fine.

I have the same issue with Node v10.6.0 and Jest 23.4.1

I just ran into this problem. I don't have a solution, but one thing I did notice is that (on my Mac) in iTerm2, my console.log statements get overwritten, but in the default Terminal application, they do not.
This could be a reason why some people in this thread can't reproduce the problem.

I am not sure what I did but I think the order of how you set up jest matters. I think some configurations may overwrite each other. I'm getting both the test and the log output.
node -v v8.11.2
jest -v 23.4.0
Below is my jest configuration in my package.json
"jest": {
   "transformIgnorePatterns": [
     "<rootDir>/node_modules/"
   ],
   "setupFiles": [
     "<rootDir>/src/setupTests.js"
   ],
   "testEnvironment": "jsdom",
   "verbose": true,
   "projects": [
     {
       "displayName": "~~COMPONENTS~~",
       "setupFiles": [
         "<rootDir>/src/setupTests.js"
       ],
       "modulePaths": ["<rootDir>/src/"],
       "testMatch": ["<rootDir>/src/components/__tests__/**/*.test.js"]
     },
     {
       "displayName": "~~REDUCERS~~",
       "setupFiles": [
         "<rootDir>/src/setupTests.js"
       ],
       "modulePaths": ["<rootDir>/src/"],
       "testMatch": ["<rootDir>/src/reducers/__tests__/**/*.test.js"]
     },
     {
       "displayName": "~~ACTIONS~~",
       "setupFiles": [
         "<rootDir>/src/setupTests.js"
       ],
       "modulePaths": ["<rootDir>/src/"],
       "testMatch": ["<rootDir>/src/actions/__tests__/**/*.test.js"]
     }
   ]
 },

Here are my dependencies
  "dependencies": {
    "babel-core": "^6.26.3",
    "babel-jest": "^23.4.0",
    "babel-loader": "^7.1.5",
    "babel-preset-env": "^1.7.0",
    "babel-preset-react": "^6.24.1",
    "dotenv": "^6.0.0",
    "express": "^4.16.3",
    "jest": "^23.4.0",
    "react": "^16.4.1",
    "react-dom": "^16.4.1",
    "react-redux": "^5.0.7",
    "react-scripts": "1.1.4",
    "redux": "^4.0.0",
    "regenerator-runtime": "^0.12.0"
  },

output from just running jest
 PASS   ~~REDUCERS~~  src/reducers/__tests__/comments/index.test.js
  ✓ handles actions of the type SAVE_COMMENT (4ms)
  ✓ handles action with unknown type

 PASS   ~~ACTIONS~~  src/actions/__tests__/index.test.js
  saveComment
    ✓ has the correct type (1ms)
    ✓ has the correct payload (1ms)

 PASS   ~~COMPONENTS~~  src/components/__tests__/App/index.test.js
  ✓ Should show a CommentList (5ms)
  ✓ Should show a CommentBox (1ms)

 PASS   ~~COMPONENTS~~  src/components/__tests__/CommentBox/index.test.js
  ✓ has a text area (23ms)
  ✓ has a button (3ms)
  the text area
    ✓ has a text area that users can type in (9ms)
    ✓ when form gets submitted, text area gets emptied (5ms)

 PASS   ~~COMPONENTS~~  src/components/__tests__/CommentList/index.test.js
  ✓ creates one LI per comment (32ms)

Test Suites: 5 passed, 5 total
Tests:       11 passed, 11 total
Snapshots:   0 total
Time:        3.79s
Ran all test suites in 3 projects.
  console.log src/components/__tests__/CommentList/index.test.js:26
    0

  console.log src/components/__tests__/CommentList/index.test.js:27
    Test

This issue should be reopened, console output swallowed by jest too, my environment is:
→ node --version
v8.11.3
→ npx jest --version
23.4.1

propose to change the default output stream to stdout: https://github.com/noscripter/jest/pull/1

It's broken again?! Why does this keep breaking?

I've worked around this with:
expect(str).toBe("not this");

😬

If you have verbose: true in your package.json, or you're running jest with the flag --verbose (or both?), try removing them. When I don't use those flags I get consistent display of log messages.

I can often see the log output for a split second before the full test summary prints to the console. I'm having to console.log about 4-5 times in a row to get the output showing, and even then the last log will be chopped off halfway (for example when printing a large object, only the first half will be visible in the last printed log).
It's also very hard to predict. Sometimes one or two console.logs will suffice, whereas other times I have to put three to five in a row. It also doesn't matter if my logs are in the code I'm testing, or in the test cases themselves.
Seems like jest is printing the logs, then clearing the output before printing the full test summary, when really it should be retaining those logs.
I've accepted at this point that I have to copy-paste the logs multiple times to see them in the console.

console.log does work if you run a specific test file only
e.g.
yarn test <your-test-file-name>

FYI I run my repro with the following command:
script -qfc 'yarn repro' /dev/null > raw.log

and then I viewed the log with less raw.log. Here are the results:
yarn run v1.7.0
$ jest --watch
Determining test suites to run...

Watch Usage
 › Press a to run all tests.
 › Press f to run only failed tests.
 › Press p to filter by a filename regex pattern.
 › Press t to filter by a test name regex pattern.
 › Press q to quit watch mode.
 › Press Enter to trigger a test run.

Hope this helps. Looks like there is a miscount of control codes at a certain point.

The end result looks like this:
 PASS  lib/example.spec.js
  foo
    ✓ adds 5 (4ms)

 RUNS  tests2/other-tests.js

 PASS  tests2/other-tests.js2 total
  bar
    ✓ always is true (15ms)

Test Suites: 2 passed, 2 total
Tests:       2 passed, 2 total
Snapshots:   0 total
Time:        1.128s
Ran all test suites related to changed files.

Watch Usage
 › Press a to run all tests.
 › Press f to run only failed tests.
 › Press p to filter by a filename regex pattern.
 › Press t to filter by a test name regex pattern.
 › Press q to quit watch mode.
 › Press Enter to trigger a test run.

The console line is missing, and pass is written two lines too far down, likely due to intertwining with the console.log not being taken into account when going up to display the "PASS"

p.s. To reproduce this with current master it might need some coercing. When you enter watch mode, press and hold "a" for a while - the console.logs will start to go out of control at some point (appear at unexpected places and times)

Me too. @spion has nailed what I'm seeing. I only discovered it because I have tests on slow, async code. I see console output, then it is overwritten by the test results summary.

For what it's worth, I've reverted to<EMAIL_ADDRESS>and doing so resolves the problems I was having with test summary output being written over console output in<EMAIL_ADDRESS>

Update - I believe I've found a minimal patch that makes some progress, but it took me a while to understand the interaction between Jest reporters and the Status generator
Jest replaces the process stream write method with its own writer. That writer writes down the output of jest-cli Status.js, which contains things such as the number of tests in progress, a progress bar, the elapsed time and so on.
Whenever there is a write instruction on that stream, that instruction is replaced with a "delete" instruction for the status (going up using ANSI control codes), the original write, and a "write the status again" instruction. Thus the illusion that the status is always at the bottom of the screen, whereas the text scrolls above it.
However, the parallel test runner (used in watch mode, which sets runInBand to false) runs other workers. Those workers are set up to "inherit" the stdio stream of the original process. Unfortunately, that doesn't mean they inherit the patched version that updates the status!
To make sure the patched version receives those status update, its necessary to not run the child processes in "inherit" mode. Instead we need to run in "pipe" mode. This way, the process outputs are available as streams in the child process, instead of directly going to the main stdout/stderr. In the end, we also need to manually pipe the streams:
diff --git a/packages/jest-runner/src/index.js b/packages/jest-runner/src/index.js
index 2f4dd724..618a8cbf 100644
--- a/packages/jest-runner/src/index.js
+++ b/packages/jest-runner/src/index.js
@@ -97,11 +97,14 @@ class TestRunner {
     // $FlowFixMe: class object is augmented with worker when instantiating.
     const worker: WorkerInterface = new Worker(TEST_WORKER_PATH, {
       exposedMethods: ['worker'],
-      forkOptions: {stdio: 'inherit'},
+      forkOptions: {stdio: 'pipe'},
       maxRetries: 3,
       numWorkers: this._globalConfig.maxWorkers,
     });

+    worker.getStdout().pipe(process.stdout);
+    worker.getStderr().pipe(process.stderr);
+
     const mutex = throat(this._globalConfig.maxWorkers);

     // Send test suites to workers continuously instead of all at once to track

This breaks a lot of integration tests, however they're mainly broken due to missing color. Doing
diff --git a/packages/jest-worker/src/worker.js b/packages/jest-worker/src/worker.js
index 5eee64af..5e5126eb 100644
--- a/packages/jest-worker/src/worker.js
+++ b/packages/jest-worker/src/worker.js
@@ -94,6 +94,8 @@ export default class {
         {
           cwd: process.cwd(),
           env: Object.assign({}, process.env, {
+            // $FlowFixMe: Does not know about isTTY
+            FORCE_COLOR: process.stdout.isTTY,
             JEST_WORKER_ID: this._options.workerId,
           }),
           // Suppress --debug / --inspect flags while preserving others (like --harmony).

brings down that number significantly but its still pretty high:
Test Suites: 51 failed, 232 passed, 283 total
Tests:       149 failed, 7 skipped, 2706 passed, 2862 total
Snapshots:   19 failed, 17 obsolete, 996 passed, 1015 total

please fix, this really hurts productivity with jest

Downgrading to<EMAIL_ADDRESS>brings back console log output. Had to set --env node to make it work though. Please fix this.

Currently it seems the only way I can get console logging to be reliable is to log the same thing 3-4 times in a row. Jest will only block a certain number of them. Still very annoying.

Is there any update on this? I am running jest 23.4.1 and node 9.11.1 and am sometimes getting console log output and sometimes not.

Two years of no console logs made me a better developer. Thanks team Jest!

I can't believe this is still an issue. Why is the issue closed?

Like @jonogilmour mentioned if I log something once it doesn't get displayed but logging things twice I will get one of them to display.

FWIW, the --verbose=false workaround works for me. In my package.json:
"scripts": {
...
    "test": "react-scripts test --env=jsdom --verbose=false",

Some other observations:

Removing --env=jsdom (not an option for my real application) made it work without --verbose=false.
Running the test directly with jest (not through react-scripts) also made it work.
When an assertion fails and you get much more output from jest, much more of your console logs gets overwritten also.

Hello guys/girls,
I also met the famous jest console log problem when running testing in --watch mode.
The solution was to use --watchAll instead of --watch. The summary of tests became uglier, but the logs showed as expected.
macOS High Sierra
node v8.11.3
jest: 23.6.0
ts-jest: 23.10.4

For me this in beforeAll
  console.log = s => {
    process.stdout.write(s + "\n");
  };

and this in the shell did the work:
yarn test > console.log

For me, switching to mocha solved the problem. It is very trivial to switch, since the DSL is very similar. You can even keep using JEST' expect-library: https://www.npmjs.com/package/expect

This issue is really hurting, I wish the maintainers could fix this as soon as possible, because Jest is meant to increase productivity, not the other way round right?

Confirmed that --verbose=false fixes the issue.

--verbose=false does not work for me with version 23.6.0

OMG this is a paint :/ november 2018

try to set silent: false in jest.config.js... in my case it helped me

None of the solutions work.
NodeJS: v8.12.0
Jest: v23.4.1

This is a decent example of "too much magic" going on underneath the hood, and the consequences of that when something goes wrong. I'm not convinced grouping console.log output is worth a year and a half of missing console.log statements. 😕

Agree with the above -- this is not quite a showstopper, but it makes Jest painful in way that's completely unnecessary.
My "workaround" is that much of the logic uses log4js, so for where I bend Jest to server-side code I'm good. Sadly I have a large amount of client side code where I usually copy and paste four copies of each console.log since eventually one of them seems to show up.

Using expect to log info is an okay workaround if you're logging from within a test (especially since you can create a snippet for it with a keyword like logjest in your editor), but that falls short whenever you need to dig deeper and log from within the actual functions your tests are calling.

How about CI=true yarn run test?

Sorry for what I said before, but it works well without the title of the test cases, I mean, without the "--verbose" option, I think that --verbose does some kind of formatting and replaces the stdout stream.
So, for me I have been like 2 months and everything is working well.
And if anybody wants to use that option then only append it to your npm commands like so: npm run test:integration -- --watchAll --verbose --coverage --etc

Can people with the issue test<EMAIL_ADDRESS>It includes #6871

I'm new to unit testing with Jest/Enzyme
Setup a simple test: from App.test.js:
import React from "react";
import Enzyme, { shallow } from "enzyme";
import EnzymeAdapter from "enzyme-adapter-react-16";
import App from "./App";
Enzyme.configure({ adapter: new EnzymeAdapter() });
test("renders without crashing", () => {
const wrapper = shallow();
console.log(wrapper.debug());
});
App.js:
return (Hello World);
Had this issue where it wasn't printing my console log of wrapper.debug()
I created this app from create-react-app and changed package.json to:
"test": "react-scripts test --verbose=false"
Now I get my console log. I'm still very noob and this may be wrong, feel free to show me the proper way :|
Windows 10 x64
"dependencies": {
"react": "^16.7.0",
"react-dom": "^16.7.0",
"react-scripts": "2.1.2"
}
"devDependencies": {
"ajv": "^6.6.2",
"enzyme": "^3.8.0",
"enzyme-adapter-react-16": "^1.7.1",
"jest": "^23.6.0",
"jest-enzyme": "^7.0.1"
}
Thanks for your work & input everyone <3

@jamesta696 Hi, I think that you need to post that kind of questions on StackOverflow using the tag of "jest" here because the discussions here are for "issues", nevertheless, I know that somebody could help you, but the issue here could be closed because the main issue is not being discussed.
And for now, I cannot give you an answer for that question because I'm not developing something for react and the frontend, also, I'm not a member of jest, but let's try to follow the rules.

@tobyhinloopen  Cool to see a proof of the progress that mentioned @SimenB .

that's awesome @tobyhinloopen!

The --verbose worked for me.  Before using --verbose, some, but not all messages were lost.  I am using node v10.15.3 and jest v21.2.1

Still a problem for me, console logs don't show in Jest

despite the latest announcement in the blog that the problem has been finally solved, the problem still exists, my console logs sometimes do not show up again, I'm using jest v24.8.0.

And my works just fine 🤷♂. Please post a reproduction we can investigate. We're not wizards, we can't see your code that's failing to log output.

actually, after investigation, logs related to API testing(like supertest) doesn't work. expected :/

@thymikee This is happening inconsistently so its really hard to reproduce it example
following runs by selecting single file from tests ( option p )

console.log('pantz') (works)
change console.log(myObject) (not working)
change it to fit (not working)
change to console.log('pantz') (not working)
change fit to it (not working)
restart jest (not working)
restart to fit (working)

Now I tried to replicate same steps and the result is inconsistent.

Provide a sample repo where it isn't working so that the JEST guys can help debug this. @kresli
There is plenty of user-error possibilities as well, mostly missing await or otherwise async console.log's

I'll try find a time to reproduce this then. Until then I found my logs are eaten by results as you can see from bellow. Before FAIL appear you can see my 2 logs there. And also its worth to mention only 2 logs are removed. If I add 10 logs under each other, 8 would be shown. I think that's a good start :)

Meantime, if you need a catch-all fix that just works, you can use something like winston to log to both file and console. Even if your console messages don't show, they are written to file.

@kresli what version is your jest? That looks like v23 behavior

This keeps happening to me with jest v^24.6.0 and node v10.14.2. Any idea why?

@yaelz This is a stubbern issue that is commonly caused by user error but also has a history of hard to reproduce bugs.
I think it would really help the contributors to provide a reproducable case by providing an example repo or to provide another way to reproduce the issue.

Thanks for the quick response!
That'll be hard because the current repo is private in my org... I'll let you know if I get to it :)

Thanks for the quick response!
That'll be hard because the current repo is private in my org... I'll let you know if I get to it :)

I recently upgrade some dependencies in a project and I don't have any issue, I face this one months ago, but I was solved in newer versions I believe...

This keeps happening to me with jest v^24.6.0 and node v10.14.2. Any idea why?

I recently upgrade some dependencies in a project and I don't have any issue, I face this one months ago, but I was solved in newer versions I believe...

Can you please share the versions you're using now, when it's solved?
On Mon, Aug 5, 2019 at 12:43 PM Norman Enmanuel<EMAIL_ADDRESS>wrote:

Thanks for the quick response!
That'll be hard because the current repo is private in my org... I'll let
you know if I get to it :)
I recently upgrade some dependencies in a project and I don't have any
issue, I face this one months ago, but I was solved in newer versions I
believe...
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/facebook/jest/issues/3853?email_source=notifications&email_token=AB6F4PAE3CHUMEBP7IYXRPLQC7Y2DA5CNFSM4DPZ3JSKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3RI3PY#issuecomment-518163903,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB6F4PFXDSRHBW5CMTT2DKDQC7Y2DANCNFSM4DPZ3JSA
.

Can you please share the versions you're using now, when it's solved?
…
On Mon, Aug 5, 2019 at 12:43 PM Norman Enmanuel @.***> wrote: Thanks for the quick response! That'll be hard because the current repo is private in my org... I'll let you know if I get to it :) I recently upgrade some dependencies in a project and I don't have any issue, I face this one months ago, but I was solved in newer versions I believe... — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#3853?email_source=notifications&email_token=AB6F4PAE3CHUMEBP7IYXRPLQC7Y2DA5CNFSM4DPZ3JSKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3RI3PY#issuecomment-518163903>, or mute the thread https://github.com/notifications/unsubscribe-auth/AB6F4PFXDSRHBW5CMTT2DKDQC7Y2DANCNFSM4DPZ3JSA .

Got the same error suddenly out of no where. I have commented all of my console.log in my project and I still get this error:
node -v
v11.2.0

npm list jest
─┬<EMAIL_ADDRESS> └──<EMAIL_ADDRESS>
I have already tried to do a yarn upgrade and had the same error.
I have also tried to execute: rm -rf node_modules/ && yarn install

Still facing this with node v12.16.1, jest 25.5.4, typescript 3.8.3 on MacOS. Tried the recommendations of using --runInBand, disabling/enabling verbose, using --silent=true, it didn't help.


initial implementation

At some point we may be able to reduce some of the duplication (especially between the multiple twitter-util projects) by using sbt-projectmatrix, but I wanted to get this out there and then figure that part out later.


DecryptionError escaping

What is wrong?
 <Node(0xaa36fdf33dd030378a0168efe6ed7d5cc587fafa3cdd375854fe735a2e11ea3650ba29644e2db48368c46e1f60e716300ba49396cd63778bf8a818c09bded46f@<IP_ADDRESS>:30303)>, <Node(0x78de8a0916848093c73790ead81d1928bec737d565119932b98c6b100d944b7a95e94f847f689fc723399d2e31129d182f7ef3863f2b4c820abbf3ab2722344d@<IP_ADDRESS>:30303)>, <Node(0x158f8aab45f6d19c6cbf4a089c2670541a8da11978a2f90dbf6a502a4a3bab80d288afdbeb7ec0ef6d92de563767f3b1ea9e8e334ca711e9f8e2df5a0385e8e6@<IP_ADDRESS>:30303)>, <Node(0x1118980bf48b0a3640bdba04e0fe78b1add18e1cd99bf22d53daac1fd9972ad650df52176e7c7d89d1114cfef2bc23a2959aa54998a46afcf7d91809f0855082@<IP_ADDRESS>:30303)>)\n'
b'    INFO  09-13 21:24:44     service  Starting fast-sync; current head: #0\n'
b'   ERROR  09-13 21:24:51        peer  Unexpected error during auth/p2p handshake with <Node(0x4aaef89859ce7474eb3f3601b2118d7f376029e0261135c9bcb2ab6371e3c47e53001976cffa43587ef5d6021667443f047be0736989042523ec13c5f1eabe42@<IP_ADDRESS>:30303)>\n'
b'Traceback (most recent call last):\n'
b'  File "/home/circleci/repo/p2p/peer.py", line 919, in connect\n'
b'    self.cancel_token))\n'
b'  File "/home/circleci/repo/p2p/cancellable.py", line 19, in wait\n'
b'    return await self.wait_first(awaitable, token=token, timeout=timeout)\n'
b'  File "/home/circleci/repo/p2p/cancellable.py", line 41, in wait_first\n'
b'    return await token_chain.cancellable_wait(*awaitables, timeout=timeout)\n'
b'  File "/home/circleci/repo/.tox/py36-trinity-integration/lib/python3.6/site-packages/cancel_token/token.py", line 152, in cancellable_wait\n'
b'    return done.pop().result()\n'
b'  File "/home/circleci/repo/p2p/peer.py", line 160, in handshake\n'
b'    await peer.do_p2p_handshake()\n'
b'  File "/home/circleci/repo/p2p/peer.py", line 283, in do_p2p_handshake\n'
b'    cmd, msg = await self.read_msg()\n'
b'  File "/home/circleci/repo/p2p/peer.py", line 471, in read_msg\n'
b'    msg = self.decrypt_body(frame_data, frame_size)\n'
b'  File "/home/circleci/repo/p2p/peer.py", line 600, in decrypt_body\n'
b"    f'Invalid frame mac: expected {expected_frame_mac}, got {frame_mac}'\n"
b"p2p.exceptions.DecryptionError: Invalid frame mac: expected b'\\xde\\xcag\\x0e\\x94\\xdbkC\\xa8\\xc4\\xb8\\x10\\xdb@\\xf8o', got b'\\xdd\\x16\\xcea]B\\xbd1\\x8a\\x0f\\xa7\\xe8B\\x87\\xf9\\xce'\n"

https://circleci.com/gh/ethereum/py-evm/77685?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link
How can it be fixed
:hear_no_evil:

Look like this could be handled in BasePeer.read_msg.  The calls to both decrypt_body and decrypt_header could be wrapped in try/except, converting the DecryptionError to a MalformedMessage.

I would like to work on this issue. Could you please help me by giving some guidance on where to start in the codebase?

@Bhargavasomu my previous comment should include sufficient information to start on this issue.

@pipermerriam @cburgdorf I have made the necessary changes and the error is not coming. All the test cases except py36-lint passed. I am not able to figure out why py36-lint failed. Could you please guide me?

@Bhargavasomu
/home/circleci/repo/p2p/peer.py:391:101: E501 line too long (102 > 100 characters)
/home/circleci/repo/p2p/peer.py:399:101: E501 line too long (101 > 100 characters)
/home/circleci/repo/p2p/peer.py:400:101: E501 line too long (101 > 100 characters)

Some typesetting / making that into more lines should fix the py36-lint errors.

@pipermerriam was detecting the DecryptionError as part of the issue? Because I thought you mentioned "converting the DecryptionError to a MalformedMessage"

@pipermerriam I have made the necessary changes. Please let me know the changes needed if any

@pipermerriam is the PR ok for merging or still anything else needs to be done?


Add OMeta tests for MessagingService

Follow the implementation example of ingestion/tests/integration/ometa/test_ometa_database_service_api.py to implement the testing of the Python client for MessagingService.

Please make sure that you name your entities in the tests with a unique name (not clashing with other instances created in different tests). Otherwise this might have an impact in the CI

Hi, I am interested in this issue, can you please assign it to me?

Assigned, thanks!


Fix 177

Couldn't make it work with standard split-string or split-string-and-unquote so wrote a custom splitter  instead. Feel free to provide input, cannot say I have much experience in elisp so it can probably be improved.

Pull Request Test Coverage Report for Build 306

39 of 41 (95.12%)  changed or added relevant lines in 1 file are covered.
5 unchanged lines in 1 file lost coverage.
Overall coverage increased (+1.0%) to 57.732%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

cmake-ide.el
39
41
95.12%

Files with Coverage Reduction
New Missed Lines
%

cmake-ide.el
5
57.73%

Totals

Change from base Build 303:
1.0%

Covered Lines:
336

Relevant Lines:
582

💛  - Coveralls

CI is red.

Hmm, yeah saw that when I got to work earlier. Will try to find what and why happens, haven't been able to reproduce it on my own computer yet which seems odd in a standard interpreted language.

Seems like there was a different setting with recursion depth, managed to recreate the issue by setting it manually to the lowest possible. Converting the recursive function to be iterative seems to have helped.


Document installation on air-gapped clusters

Probably blocked by #1424
The documentation would benefit from enumerating installation options that are required to make Camel K work on a cluster that has no access to the internet and can only reach custom Maven and Docker repositories with certificates signed by an enterprise CA (or self-signed).

+1 to this item.  It would be very helpful to have this doc.  Is air gap possible today, just not documented?

hi @nicolaferraro - do you know if this is already possible today, or are there changes required to achieve this?

hi @nicolaferraro - do you know if this is already possible today, or are there changes required to achieve this?

It's technically possible to achieve this. The CA part is a bit more complex because it requires a custom operator image to inject the custom company certificates, everything else should be configurable upon installation

any comment

I wonder if it would be enough to use kamel install --registry ... --maven ... -o yaml > offline-installer.yaml, export the output and apply on any other cluster via kubect apply -f offline-installer.yaml. We'd need to let kamel install -o yaml work in offline mode, but that is certainly feasible to do.

any comment

Same as #4118, closing.


Login Confirmation UX

In addition to the banner, consider opening the menu to show where the account login / signout info is now.

Unassigning myself on this one, as I don't yet see what task I need to do here.


Support for Vitess from Google

Could you add support for Vitess from Google?

http://vitess.io
http://googlecloudplatform.blogspot.cz/2015/03/scaling-MySQL-in-the-cloud-with-Vitess-and-Kubernetes.html

+1.
On Apr 28, 2015 3:10 AM, "Josef Jezek"<EMAIL_ADDRESS>wrote:

Could you add support for Vitess from Google?

http://vitess.io

http://googlecloudplatform.blogspot.cz/2015/03/scaling-MySQL-in-the-cloud-with-Vitess-and-Kubernetes.html
—
Reply to this email directly or view it on GitHub
https://github.com/rtCamp/easyengine/issues/517.

This looks like a great idea to add to easy engine. Just what I need.

Sorry for a delayed reply. EE currently has no plan to add something like this to core.


Support query params

In working on https://github.com/sindresorhus/electron-serve/pull/36, I also wanted the ability to pass in query parameters to different files.
I added an example in the README since I didn't see any explicit documentation for the arguments for the returned function. Again, feel free to make any fixes or adjustments.

Thanks for the help and attention on this!


Possible regression with .Net 7

Hmmm, so upgraded my project to .Net 7 yesterday and got a new report from a user after I hadn't heard a peep after adding the AV protection a few months ago.

Die Datei [...]\Mozilla\Firefox\Profiles\b93zdwlj.default-release\storage\default\https+++lostmerchants.com\cache\morgue\33{c36484e8-6fc5-42bb-b202-371d08f9d421}.tmp ist mit Trojan.Upatre.Crypted.2 infiziert.

Honestly not sure this is even actionable at the moment but figured I'd bring it up in case anyone else runs into it. I ran VirusTotal against my site and the DLL URLs that had caused issues prior to adding BWAP and they come back clean. Looks like it's some sort of temp file in the cache created by Firefox, the only files I even have in that directory are ".final" files and they all exist as unique GUIDs so good luck on me trying to figure out which cache item it could even be.
Could be some change in the framework or maybe not.

Thanks for reporting this. I will upgrade the sample apps and the apps that I have that use this package to .net 7 soon, and see what happens

I tried running the whole Firefox cache directory of ".final" files through VirusTotal as a zip and it seems to have detected something, though won't tell me which of the 89 files might be the problem. Not that there's an easy way to figure out which file goes with which cache item anyway. 😬
I poked at it a bit and deleted everything from the cache till just Microsoft.Extensions.Logging.Abstractions.dll was left, since that was a problem back before I was using BWAP, that file does not get detected so... might be something new or it's just a fluke that particular DLL doesn't trigger a false-positive for my project anymore.

Minor update, it seems to be the primary client DLL of my project itself (not any of the .Net or other libraries) that's triggering the AV, though it's not detected when downloading directly. Had to comb through the files a bit and the sqllite cache file for firefox to figure out which dll it was.
Possibly the cache for the primary Blazor client DLL isn't being xor'd while stored for some reason? It doesn't seem to be the raw DLL on the file system (xor'd or not), but I'm guessing Firefox may be doing some compression.

Thank you. This is important feedback. Maybe the key must be more complex by default, but then the size of the compressed assemblies get larger. It is difficult to find a balance

The default key got a little longer in the latest releases. Thank you for your feedback.


jCrop as cropping feature

Hi assembler,
what do you think of implementing "jCrop".
jCrop is an free jQuery small lib which does capture the coordinates of a picture, by drag and drop the canvas.
These coordinates can be added to the image model and can get called in the view "cloudinary_image_tag" to crop the images (or not)
What do you think of that, mentioned as a feature
It looks like a very easy improvement (like the mongoid one :-) )
http://deepliquid.com/content/Jcrop.html
best regards
and thanks for your great "gem"

Is this possible to generate image URL that upload to Cloudinary, and safe it to database, so we can reuse that image to another page / view?


Default to application/x-www-form-urlencoded on verification

I ran into this when testing against Telegraph. It sends an Accept header with */* but does not accept the JSON response (it seems).
Should we just default to application/x-www-form-urlencoded on the auth code verification step unless the Accept header specifies application/json?

if it claims to accept */* that sounds like a bug in Telegraph, and and if I remember right I've seen other implementations that default to JSON (could be confusing it with token endpoints though). We should support both, but I'm not sure the default matters. /cc @aaronpk

Yeah sounds like Telegraph needs to send a better Accept header. Feel free to file an issue there and reference this one.

Is there a preferred default though, @aaronpk? For those that do Accept: */*, or include neither application/x-www-form-urlencoded nor application/json?
Although in the case of the latter, we should probably just error with 406 Not Acceptable.

indieauth/client supports JSON responses since version 0.2.0. Versions before that relied on application/x-www-form-urlencoded, which leads to problems in e.g. Telegraph.
That might be a reason for us to default to form encoding and only send JSON when requested.

Going to close this issue. As per https://github.com/indieweb/indieauth/issues/18#issuecomment-665911198 the specification is more than likely to stop allowing form encoded responses completely.


[Question] Dump 1090 portal issues

Today I reinstalled the adsb-receiver into another micro sd card with the new version and I am having various issues:

Every time I ty to scroll on the map to zoom it instructs me to press control in order to zoom, which is preety annoying.
I don't get the country flags of the aircraft.
I don't get the aircraft silhouettes.
I copied the data I had of the graphs (from rrd) into /var/lib/collectd/rrd/ but I can't see the historic data from the previous instalation displayed in the performance graphs page.
If I want to deactivate the heywhatsthat maximum range circles in what file can I do that?

Is there a solution for this problems?
Thanks

Make sure rrd files were restored to the correct folder in /var/lib/collectd/rrd/ this should be a folder named localhost. You can confirm this by checking the folder for the newly created rrd files and placing them there

Delete the file /usr/share/dump1090-mutability/html/upintheair.json.

Marking this issue as closed.
Feel free to reopen it if the answers supplied did not resolve your issues.

Its working now ☺ cheers.
BTW, is there any plan of enabaling custom/further (2/3 years) Performance Graphs visualisation periods, or any way to do it by ourselfs?


[Installation]: no version of pip install vllm works - Failed to initialize NumPy: No Module named 'numpy'

Your current environment
Traceback (most recent call last):
  File "/mnt/MSAI/home/cephdon/sources/vllm/collect_env.py", line 15, in <module>
    from vllm.envs import environment_variables
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/__init__.py", line 3, in <module>
    from vllm.engine.arg_utils import AsyncEngineArgs, EngineArgs
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/engine/arg_utils.py", line 11, in <module>
    from vllm.config import (CacheConfig, CompilationConfig, ConfigFormat,
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/config.py", line 21, in <module>
    from vllm.model_executor.layers.quantization import (QUANTIZATION_METHODS,
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/model_executor/__init__.py", line 1, in <module>
    from vllm.model_executor.parameter import (BasevLLMParameter,
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/model_executor/parameter.py", line 7, in <module>
    from vllm.distributed import get_tensor_model_parallel_rank
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/distributed/__init__.py", line 1, in <module>
    from .communication_op import *
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/distributed/communication_op.py", line 6, in <module>
    from .parallel_state import get_tp_group
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/distributed/parallel_state.py", line 38, in <module>
    import vllm.distributed.kv_transfer.kv_transfer_agent as kv_transfer
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/distributed/kv_transfer/kv_transfer_agent.py", line 15, in <module>
    from vllm.distributed.kv_transfer.kv_connector.factory import (
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/distributed/kv_transfer/kv_connector/factory.py", line 3, in <module>
    from .base import KVConnectorBase
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/distributed/kv_transfer/kv_connector/base.py", line 14, in <module>
    from vllm.sequence import IntermediateTensors
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/sequence.py", line 16, in <module>
    from vllm.inputs import SingletonInputs, SingletonInputsAdapter
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/inputs/__init__.py", line 7, in <module>
    from .registry import (DummyData, InputContext, InputProcessingContext,
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/inputs/registry.py", line 13, in <module>
    from vllm.transformers_utils.tokenizer import AnyTokenizer
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/transformers_utils/tokenizer.py", line 16, in <module>
    from vllm.utils import make_async
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/utils.py", line 44, in <module>
    from vllm.platforms import current_platform
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/platforms/__init__.py", line 100, in <module>
    from .cuda import CudaPlatform
  File "/mnt/MSAI/home/cephdon/sources/vllm/vllm/platforms/cuda.py", line 14, in <module>
    import vllm._C  # noqa
ModuleNotFoundError: No module named 'vllm._C'

How you are installing vllm
pip install -vvv vllm
pip install vllm==0.6.4
pip install -e .

Before submitting a new issue...

[X] Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

The actual error message is:
(vllm) cephdon@ubuntu:~/sources/vllm$ VLLM_USE_PRECOMPILED=1 pip install --editable .
 I have cuda 12.6, but building from source has this same issue that I cannot seem to get past. Installing numpy (any version) does not resolve the issue. I am using miniconda to manage virtual environments. pip list and conda list both show numpy.
Note that the error message above is trying to use the CPU device, even if I have the cuda version of torch installed. Using the CPU version of torch does not resolve the issue.

I should note that this is on an NVIDIA AGX Orin 64gb machine, so aarch64. I have cuda 12.6, but building from source has this same issue that I cannot seem to get past. Installing numpy (any version) does not resolve the issue. I am using miniconda to manage virtual environments. pip list and conda list both show numpy.
Note that the error message above is trying to use the CPU device, even if I have the cuda version of torch installed. Using the CPU version of torch does not resolve the issue.

I have got the same problem, waiting for some possible solutions. 😢
... UserWarning: Failed to initialize NumPy: No module named 'numpy' ...

I have got the same problem, waiting for some possible solutions. 😢

@youkaichao @dtrifiro any idea about this?

@cephdon a  couple notes:

since you're using aarch64, you should not be using VLLM_USE_PRECOMPILED, since that uses prebuilt CUDA binaries for x86_64
The current build setup for non-CUDA builds is broken when using build-isolation (PEP517/518 style builds) so you'll have to do the following for aarch64:

pip install -r requirements-build.txt -r requirements-cuda-arm64.txt
pip install  --no-build-isolation --verbose .

The reason for the error you're getting is that we currenty have torch==2.5.1 in pyproject.toml, so the torch installation when using build isolation is the version provided by pyproject.toml, which is not correct. (requirements-cuda-arm64.txt has  2.6.0.dev.<...> with CUDA 12.4).
There has been some effort in fixing the build process for isolated builds and different targets here, but it's been on hold for a while. Perhaps I'll try do do some more work on it next month.

@cephdon

... UserWarning: Failed to initialize NumPy: No module named 'numpy' ...

this is a warning, you can ignore.

File "", line 504, in get_vllm_version
RuntimeError: Unknown runtime environment

this is the real error.
see the great note from @dtrifiro

@youkaichao @dtrifiro there is no requirements-cuda-arm64.txt on GitHub

for building on arm64, please follow https://docs.vllm.ai/en/latest/serving/deploying_with_docker.html#building-for-arm64-aarch64

there is no requirements-cuda-arm64.txt on GitHub

you are right, we deleted it. please follow the up-to-date doc.

That is to build in a container, which is thoroughly useless for many use cases.
We can't use it on our supercomputers, we can't create a pip-installable wheel for our users either. If there's an option to build from source, great. If there's an argument to give to pip or to uv pip, even better.


Add .npmrc file to disable package-lock.json

This is the recommended way IIRC

I think it may be desirable to have it generated for local development, since there are benefits: https://docs.npmjs.com/cli/v6/configuring-npm/package-lock-json .
It's already in .gitignore so it won't be committed anyway. And if someone wants to disable it locally, they can put it in their global .npmrc file: https://docs.npmjs.com/cli/v6/configuring-npm/npmrc#global-config-file
In other words, I don't see a benefit of having .npmrc committed.
@XhmikosR What do you think? I'm open to merging this if you think it's a burden to have package-lock.json generated locally.

I think it may be desirable to have it generated for local development, since there are benefits: https://docs.npmjs.com/cli/v6/configuring-npm/package-lock-json .
It's already in .gitignore so it won't be committed anyway. And if someone wants to disable it locally, they can put it in their global .npmrc file: https://docs.npmjs.com/cli/v6/configuring-npm/npmrc#global-config-file
In other words, I don't see a benefit of having .npmrc committed.
@XhmikosR What do you think? I'm open to merging this if you think it's a burden to have package-lock.json generated locally.

It's an extra step because package-lock.json is enabled by default. So, if you want it disabled, that's how you do it in public repos..

It's an extra step because package-lock.json is enabled by default. So, if you want it disabled, that's how you do it in public repos..

@evilpie can you take care of this trivial PR too please?

This is about people who use the defaults. Someone who has disabled it globally isn't affected by this.


Unity switched to XR Plugin System

The documentation for enabling XR is out of date.  mixed-reality-docs/mrlearning-base-ch1.md

@martinwilter Is this addressed?

@rlbogue @hferrone
MRTK's support for Unity's new XR pipeline is experimental:

Consequently, we recommend using the legacy system, but if you want to try the XR pipeline, you can refer to the Getting started with MRTK and XR SDK guide.

There is inconsistency here.  Unity is indicating that the currently used system is legacy and will be retired.  However, MRTK has it as experimental.  More importantly, if you use their new framework and try to deploy it to an HL2 it throws an exception (more specifically it hits a developer breakpoint).  Clarity that the new system cannot be used yet would be good.

I agree, this:

Clarity that the new system cannot be used yet would be good.

could be made more clear in the MRTK docs and the MRTK release notes.
Not sure it makes sense to mention it in these tutorials though. Readers doing these tutorials, should follow the instructions exactly as provided, as great effort has been put into making it the smoothest possible experience for people just starting out with MRTK and Unity. Providing information about not using the new XR system, might indicate that they don't necessarily need to follow the instructions.

@rlbogue Can you share details on the exception/developer breakpoint?

I tried to see if I could get a quick repro and I couldn't.  (Don't ask me what's different -- I don't know. I do know the device was being weird -- in and out of the app at the same time (home screen w/o home and yet the profiler.)  Before I literally hit two __debug statements in dissasembly of the unity core.  (I added their symbol servers.)  I must had nudged things just enough to not trigger those same breakpoints again.  I've abandoned using the new XR system for now so I'll likely not hit it again but if I do I'll get a capture.

@martinwilter  I think that you SHOULD mention it during the tutorial because the reader is likely to believe they should do what the UX tells them to do -- and now it's saying not to use it.  When you couple the out of date screen shots and the product telling you to do something differnet, you're likely to follow it.  Of course, updating screen shots would help.

Thanks for the feedback, @rlbogue. We are currently not contracted to maintain these tutorials, so my comment was just meant as my two cents :)
The screenshots are not outdated because these tutorials are for unity 2019.2:

We made this clear distinction because of all the changes in Unity 2019.3 such as new XR pipeline, new editor skin, etc.
We tried to make this clear by using the IMPORTANT tag, but it appears to be missed or ignored quite frequently, so a more suitable tag might be the CAUTION or WARNING tag, @hferrone.

At this point I think we can change the tag to CAUTION @martinwilter.

@hferrone , are you asking me to make that change for the the four live Unity MRTK tutorials:

https://docs.microsoft.com/en-us/windows/mixed-reality/mrlearning-base
https://docs.microsoft.com/en-us/windows/mixed-reality/mrlearning-asa-ch1
https://docs.microsoft.com/en-us/windows/mixed-reality/mrlearning-speechsdk-ch1
https://docs.microsoft.com/en-us/windows/mixed-reality/mrlearning-sharing(photon)-ch1

and make a PR?
I'm happy to help out with that, on my own time, no problem at all!
But please note, as I mentioned in my last comment on this thread, we - the contracted company - are not currently contracted to maintain or support these tutorials. Regardless, feel free to ping me (as an individual) on any issue that comes up, I'm always happy to help the community if I can!

@martinwilter Regarding the important tag -- Here's the problem with reading that block.  I interpreted it that you didn't recommend older versions -- not newer versions.  I think that the key point that there is a newer approach that hasn't been fully tested is not transparent.  If we want to block a behavior of someone because we've not tested it, that's something that we want to generally be very clear about.  With regard to the demos, they actually need more than a simple face lift.  The actual steps to get a working demo are now much shorter because MRTK code does most of the configuration for you.  I'm happy to help with the necessary updates as well.

@rlbogue  You are right, it would benefit the reader to inform them not to use the new XR pipeline.
Yes, the steps for configuring Unity is outdated in the live tutorials, and can easily cause confusion. We have completely redone the Getting Started tutorials and they are ready for release, just needs to be merged in https://github.com/MicrosoftDocs/mixed-reality/pull/2324.
You can access our version here https://github.com/onginnovations/mixed-reality/blob/overhaul-develop/mixed-reality-docs/mr-learning-base-01.md

@martinwilter Respectfully, they're still not great.  There are steps that shouldn't be included.  for instance TMPPro components -- these will install on the fly when needed.  A new scene doesn't need to be created.  Bit depth doesn't have to be set.  This really needs to be "lean and mean" followed by optimizations and additional recommendations.

Hi @rlbogue, I appreciate the feedback and discussion around how we can make the steps as smooth as possible for people new to Unity.
One thing to keep in mind is that many other tutorials link to this tutorial so the structure needs to keep that in mind.

There are steps that shouldn't be included. for instance TMPPro components -- these will install on the fly when needed.

We believe that for beginners, it's best to give them proactive steps rather than reactive. I.e., we know we are going to use TMP, so let's import it when we import other packages, instead of having Unity prompt us to do it when we happen to add a TMP object to the scene and then having to instruct the readers on how to handle it at that point in the tutorial.
This is particularly important since many other tutorials link to this tutorial. If we don't have the TMP section in this tutorial, every tutorial that link to this tutorial for initial project configuration will have to include instruction re TMP in their tutorials.
We also added the TIP to inform readers that it's not a required step.

A new scene doesn't need to be created.

This is also because a lot of tutorials link to this tutorial, so we need the students to make a new scene. We don't know where they are linked from and can't assume they happen to have a new Unity project with the default SampleScene loaded.

Bit depth doesn't have to be set.

Do you mean it should be optional or moved to an optimization section?

@martinwilter
RE: Proactive/Reactive - the research on adult learning doesn't support your perspective.  Both limiting cognitive load and the fact that people learn only when they need to points to the fact you should only instruct when it's potentially going to bite them.  In the case of TMPPro it's a matter of hitting (figuratively) the "OK" button when you add your first component.  It doesn't break anything else.
Re: Tip for TMPPro - It's in the wrong place.  You say do this then "you might not have to."  It's moot because you really shouldn't be doing this.
Re: Linking from other tutorials - This is bad form.  You should be showing them how to add to the current scene.  Inbound links should create the scene first (but in practicality no one will link to this except as the first step because you're doing the things that have to be done first.)
Re: Bit depth - I mean it should be moved to optimization.
More broadly... think about this as "fastest way to functional" What do you do to get people working?  then add to that "What will bite them if they don't do it?"  It would be GREAT if you could add what happens if you skip the step so that this also can function as a FAQ/debugging document.  For instance, if you don't add Windows Mixed Reality to the XR section you get a 2D window when you build and run it instead of an immersive experience.  Calling out what happens if you skip a step makes it easier for people to debug their work.  (Because I've been building lots of little projects I've missed this particular step a few times.)
Also, be aware that there are two steps that this doesn't cover.  1) Paring your device.  It is a prereq to get VS to deploy but it's not called out well (again, a great place for a reference / reminder / tip).  2) Adding the Unity symbol servers to VS.  Maybe I'm the only one that manages to find unique and interesting ways to crash the player but it's happened multiple times in multiple different ways.  More broadly... setting up the development environment is more than installing VS and downloading MRTK.  what are the other steps to BE READY FOR your first project?

@rlbogue - Correct. Unity is pushing the new XR system heavily. As Martin mentioned, the new XR system still doesn't work well with HoloLens/MRTK, but things are changing rapidly - so we are monitoring closely. We'll be sure to add a note on the new tutorial updates that adds a little more context for the readers.
Regarding your thoughts on the new tutorials - thanks so much for your review. It's honest feedback like yours that will help improve these tutorials for all users. We will be sure to consider your feedback and integrate/implement.
Specifically regarding TMP - the tutorials originally didn't have this step. Importing TMP assets on the fly caused a bug in the MRTK where the text would appear too large until the scene was reloaded. I believe this issue may still be outstanding, but I'll double check. Please keep the feedback coming!

@mr0ng
Re: New XR system -- Totally get it.  It's worth a simple note that gets pulled from the docs when the technical issues are resolved.
Re: Thoughts on tutorials - I'm happy to help more directly.  Just need to know how to plug into the process in a way that's helpful vs. creating more forks that cause more work.
Re: TMP on the fly -- This should be a note so that it can be updated when the technical issue is resolved.  Now it's simply not clear why this is necessary (or advisable.)


Improved Botany swabs

About the PR
Made a distinct pollen swab so I could change the description in hopes of making the functionality more clear.
Will show the last plant that was swabbed.
Why / Balance
After seeing all those discussions under a certain someone's youtube videos about the topic, I thought I try to make it more obvious in game how they work. No more misleading "single use".
Technical details

Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame

Breaking changes

Changelog

doesn't need a cl I think?

i personally dont like it, like you should remember or mark your swabs with labeler
when plant analyzer will be in game its better to allow scan swabs with it

Plant analyzer is not here yet and this change will be trivial to remove when it comes.
Swabs are unintuitive. You really only understand them by hearsay from experienced Botanists, and even then, the behavior is not easy to articulate in words.
This PR helps avoid a common pitfall for new Botanists.

"Single use" is a hint that something unexpected may happen if you use it multiple times.
I don't like that the swab displays the identity of the pollen on it. Examine text is designed to convey easily discernible information. You cannot examine a player, for example, and have it say "they are a traitor". Similarly, I don't think swabs should indicate what kind of pollen is on it.

"Single use" is a hint that something unexpected may happen if you use it multiple times.
I don't like that the swab displays the identity of the pollen on it. Examine text is designed to convey easily discernible information. You cannot examine a player, for example, and have it say "they are a traitor". Similarly, I don't think swabs should indicate what kind of pollen is on it.

Comparing this to the traitor role is an extreme example. Something less overly egregious would be comparing it to examining a player to see if they have been wounded. A wounded player's state changes from an unwounded one, which is often (but not always, depending on damage types) reflected in a visible sprite change and additional examination text.
This is a simple quality of life feature. It primarily helps forgetful or distracted players, and is by no means a tremendous harm to the integrity of the game or botany as a department.
It doesn't even show any detailed information like what sort of genes or mutations might be on the swab.
As Krunklehorn points out:

Plant analyzer is not here yet and this change will be trivial to remove when it comes.

This is a non-issue until the plant analyzer is, if ever, added. Holding up a quality of life feature for a potential future hypothethical is not reasonable.

Swabs are unintuitive. You really only understand them by hearsay from experienced Botanists, and even then, the behavior is not easy to articulate in words.
This PR helps avoid a common pitfall for new Botanists.

This goes some way to help alleviate the occult nature of swabbing.

i personally dont like it, like you should remember or mark your swabs with labeler

Swabs are used two entire times. Once to gather from a plant, and a second time to apply to another plant. To assume a player wrangle the clunky labeler UI for each and every swab is ridiculous when that added complexity and frustration can be easily partially alleviated with this change.

#24904
This is what I mean, it's completely unintuitive. People don't even understand it when they take the time to try and understand it.
At the very least the description needs to change.

I'm in the "this is wholly unnecessary" camp on this one.
Unless you'd like to argue that Medical should be able to use their naked eye to identify what chemicals are inside of a patient?

If you don't already know how it works because someone explained it to you, or you watched info about it elsewhere, the swabs are just incredibly unintuitive to use.
This helps that. It's good for new players who just started on the role. For everyone else, you're not even looking at it anyway so why complain?
Let new players have their training wheels on one of the most weirdly confusing roles in the game.

I'm in the "this is wholly unnecessary" camp on this one.
Unless you'd like to argue that Medical should be able to use their naked eye to identify what chemicals are inside of a patient?

Please read my entire comment. I already state this provides far less information than a full gene readout. It's far closer to seeing of a player has been burned, stabbed, bruished and such. You are making a false equivalence.

"Single use" is a hint that something unexpected may happen if you use it multiple times.
I don't like that the swab displays the identity of the pollen on it. Examine text is designed to convey easily discernible information. You cannot examine a player, for example, and have it say "they are a traitor". Similarly, I don't think swabs should indicate what kind of pollen is on it.

I'm on the fence because swabs shouldn't be readable without a device or machine but they're also really unfriendly to new players atm

PR fair enough, but better make them "single use only" for sure because it make more interaction between Botany and Medbay there they can print more swabs or Cargo where can buy medkits with swabs. Reusable swabs sounds wrong and cursed, no sense hiding and called it now "Pollen swab".

A typical person cannot look at swab and 1) tell if there's pollen on it, nevermind 2) what type of pollen is on it. This is why this is different from the medical examine, because if you just look at someone a reasonable person can tell if they're bleeding or not.
I'd be willing to compromise on adding this new botany swab with this description if the pollen identification examine is removed.

Ah ye I forgot about it! Write what plant was in last swab is wrong because botanist can't properly say what kind dust it is without equipment(like analazyer in theory with function analyze gens on swab(Don't know can analyze make it for sure, but why not)) and your watermelon can be already gen changed so you can't know be certinaly what kind "watermelon" dust you have on swab.

As lzk said at the beginning, one can achieve the same result by just remembering what plant was last swabbed, or use a labeler if you want. (plenty of botanists like to... "method act" while growing space weed, so remembering is hard...)
So why not make life easier for players? This is the simplest QoL add for botany that will prevent a large chunk of new botanists from learning to swab wrong and prevent confusion.
Just to be clear, this only shows the display name of a plant, nothing more, the same you see on tray examine.
If used on an apple tree whose apples contain flour, it will still say apple tree.
The guidebook has become much better for new botanists compared to when I started, but having training wheels for new players in this regard is still a good idea, I am sure.
I would challenge anyone to explain how swabs work in game to a new player without the use of ooc. Because is just started to lie and say to throw them away after one use because they never believe me when the description contradicts me.
I did hope for more concrete feedback for the text itself.

Transfers pollen between plants, can lead to addition or removal of plant traits.

Someone got a shot and better sentence?
Maybe change the lower text to "This swab was last used on a XYZ plant". Not using the word pollen so its even more clear it just shows what you swabbed as a memory help, nothing more.
If we remove the last swabbed plant part, should it still be a new prototype or just change the old item desc since viro is far away?

So why not make life easier for players? This is the simplest QoL add for botany that will prevent a large chunk of new botanists from learning to swab wrong and prevent confusion.
Just to be clear, this only shows the display name of a plant, nothing more, the same you see on tray examine. If used on an apple tree whose apples contain flour, it will still say apple tree.

Because examine text should not be used to convey information that is not easily discernible to players. See above examples on "examine to see what liquids are in your stomach, examine to see if you are traitor or not."

I would challenge anyone to explain how swabs work in game to a new player without the use of ooc. Because is just started to lie and say to throw them away after one use because they never believe me when the description contradicts me.

"The genes that convey traits are in the pollen. You can pick up pollen with a swab and transfer it to another plant for a chance to exchange traits. You should not reuse a swab because then it's easy to lose track of what pollen you're transferring from, but if you think you're really smart you can go ahead and do it anyway."

Transfers pollen between plants, can lead to addition or removal of plant traits.

This is a run-on sentence. You need a clause to join the second clause to the first, e.g. "which".

Are we okay with plant analyzer reading swabs for pollen information?

If a plant analyzer exists and works on plants, then I think it's reasonable for it to work on a swab with pollen.

Because examine text should not be used to convey information that is not easily discernible to players.

It is easily discernible information, since the player is the one who just used the swab? It's just meant as an "automated" labeling that makes it obvious what is happening, not revealing new information.
I struggle to follow what is too much information and what isn't.
I love the new power monitoring console, but it offers a vast amount of previously hidden information that makes certain antag strats much harder, that has actual gameplay/balance impact unlike this here.
Do we have guidelines on how to approach the topic of how much information to display? Seems I got the wrong ideas how others want this game to work.

"The genes that convey traits are in the pollen. You can pick up pollen with a swab and transfer it to another plant for a chance to exchange traits. You should not reuse a swab because then it's easy to lose track of what pollen you're transferring from, but if you think you're really smart you can go ahead and do it anyway."

I will steal this.
So to summarize: add a "which" in the sentence, remove the plant.DisplayName, but keep it as a separate from the disease swab?

It is easily discernible information, since the player is the one who just used the swab? It's just meant as an "automated" labeling that makes it obvious what is happening, not revealing new information.
I struggle to follow what is too much information and what isn't. I love the new power monitoring console, but it offers a vast amount of previously hidden information that makes certain antag strats much harder, that has actual gameplay/balance impact unlike this here. Do we have guidelines on how to approach the topic of how much information to display? Seems I got the wrong ideas how others want this game to work.

Unfortunately we don't have an "examinable design doc" anywhere. It is up to maintainers to enforce consistency in what gets merged.

So to summarize: add a "which" in the sentence, remove the plant.DisplayName, but keep it as a separate item from the disease swab?

Yes. In short, this will be a YAML-only change.

made the requested changes.
Reminder there is an overlapping PR to make a pollen swab dispenser.

Based on the feedback from the linked issue, I think it would be more clear if swabs came in a wrapped "sterile" package that needs to be unwrapped before use, like chocolate bars.
Alternatively, we can just adjust the name and/or description for the existing item. Let's not create an additional item just to change the name/description.


feat(completion): Use codicons for completion icons

The codicons icons set has a full set of icons for the various completion options, so we should use those, instead of the ones we picked from font awesome.

/azp run


Borderless Windowed setting no longer functions on <IP_ADDRESS>

Describe the bug
When Spore is set to run as a borderless window in the Spore Mod Manager, it just runs as a regular window instead. The Override Window Mode setting still works for fullscreen and windowed mode, but it doesn't for borderless windowed mode.
To Reproduce
Steps to reproduce the behavior:

Go to Settings in the Spore Mod Manager
Enable "Override Window Mode"
Select "Borderless Windowed"
Launch Spore through the Spore Mod Manager.
Spore will launch as a regular, bordered window.

Expected behavior
Spore should instead start as a borderless window the size of the native screen resolution.
Screenshots
If applicable, add screenshots to help explain your problem.

Platform (please complete the following information):

OS: Windows 10 Home (version 1909)
GPU: AMD Radeon R7 M440

Additional context
This bug didn't exist before the migration to .NET Core 3.1.

Forgot to close this at the time, but this was fixed as of the 1.7.7.x builds.


⚠ Bofrost.de has degraded performance

In b20ee7a, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 2721 ms

Resolved: Bofrost.de performance has improved in 005f5be.


Corrected return message in Assert.ThrowsException.

The current message for the return value of the Assert.ThrowsException method is that The type of exception expected to be thrown. will be returned. But the method returns the exception instead. This patches corrects the documentation.

@dotnet-bot test Windows / Release Build

@singhsarab Are there some known issues with the following tests:
12:52:07 Failed   RunTestsForTestShouldRunTestsByMethodLevelWhenSpecified
12:52:07 Error Message:
12:52:07    Assert.AreEqual failed. Expected:<2>. Actual:<1>.
12:52:07 Stack Trace:
12:52:07    at Microsoft.VisualStudio.TestPlatform.MSTestAdapter.UnitTests.Execution.TestExecutionManagerTests.RunTestsForTestShouldRunTestsByMethodLevelWhenSpecified() in D:\j\workspace\Release_prtestb66e7356\test\UnitTests\MSTest.CoreAdapter.Unit.Tests\Execution\TestExecutionManagerTests.cs:line 475
12:52:07
12:52:07 Failed   RunTestsForTestShouldRunTestsWithSpecifiedNumberOfWorkers
12:52:07 Error Message:
12:52:07    Assert.AreEqual failed. Expected:<3>. Actual:<2>.
12:52:07 Stack Trace:
12:52:07    at Microsoft.VisualStudio.TestPlatform.MSTestAdapter.UnitTests.Execution.TestExecutionManagerTests.RunTestsForTestShouldRunTestsWithSpecifiedNumberOfWorkers() in D:\j\workspace\Release_prtestb66e7356\test\UnitTests\MSTest.CoreAdapter.Unit.Tests\Execution\TestExecutionManagerTests.cs:line 505

My changes were only comment changes so I was a bit surprised they caused a failure in one of the unit tests. Is it possible that one of the tests finished to quickly?


Fix typo in @showWSKernelPicker

Since this is a bug fix. I'll go ahead and make a patch release.

Woo!


Replace offset

Replace offsets with dict approach to fix #242.
Also changed use of sets in VariantFileWriter augment_phenos.py to lists to keep the extra field ordering intact.

@majorseitan is doing this after all so this can be closed? @juhaa


Verify in parallel and check all input lengths up to bound.

There are some opportunities to parallelize the build and proof checks to allow more efficiency on a multi-core machine:

Do make -j $(nproc) when building AWS-LC
Verify different cases on different cores (e.g. spawn multiple SAW processes)

Parallelization will allow all input/state sizes to be checked. The SHA-512 proof loops over all internal buffer offsets, and then spot checks certain input lengths to cover the code. To be more complete, we should check all input lengths up to the largest length. A similar change should be made to other proofs

The "select check" mode enables verification in parallel for SHA-2 and GCM.


empty CpuBufferPool chunk (regression)

I missed an issue with CpuBufferPoolChunk that occurs only when the first chunk is NOT empty, which I didnt test. (sorry)
This occurs on my windows install on the latest commit, and doesnt occur on the previous commit.
It panics with both:
thread 'main' panicked at 'assertion failed: chunk.num_gpu_accesses >= 1', /home/rubic/Projects/RustExamples/vulkano/vulkano/src/buffer/cpu_pool.rs:567:8
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: "PoisonError { inner: .. }"', /checkout/src/libcore/result.rs:906:4

Branch with example demonstrating the issue:https://github.com/rukai/vulkano/commit/f355ea2d3d88c1fadba40ecae0ea7a7159c2b360
Full output log: out.txt

@tomaka What was your reasoning for allowing empty buffers here? https://github.com/vulkano-rs/vulkano/pull/524


Godot opening/play crashes when a DAW is opened

Windows 10 , Asio4all audio server
Godot crashes when a digital audio workstation is open. Surely it's a conflict with the audio devices. It happened with Tracktion 6, with Reaper it runs normally, but it can happen with any other audio software:
Terminal gets me this:
Activated GL 3.3 contextOpenGL ES 3.0 Renderer: GeForce GTX 1060 6GB/PCIe/SSE2
GLES3: max ubo light: 409
GLES3: max ubo reflections: 455, ubo size: 144
ERROR: init_device: Condition ' hr != ((HRESULT)0x00000000) ' is true. returned: ERR_CANT_OPEN
At: drivers/wasapi/audio_driver_wasapi.cpp:100
ERROR: init: Condition ' err != OK ' is true. returned: err
At: drivers/wasapi/audio_driver_wasapi.cpp:155
terminate called after throwing an instance of 'RtAudioError'
what():  RtApiDs::startStream: error (DirectSound unknown error) starting output buffer!
Steps to reproduce :
-Open a DAW
-Open or run game in Godot

Godot version? This shouldn't happen to latest master.

Hum...just downloaded the today's build ( http://godot3builds.digitecnology.com/index.php ) and still happening . Also noticed that crashes with Ardour as well

@Rabocop can you check a recent 2.1 build? because uses wasapi too and may be affected by the bug.


⚠ Bofrost.at has degraded performance

In 9400c60, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1077 ms

Resolved: Bofrost.at performance has improved in e9bb8ea.


Using python 3.8 encounters error

To reproduce:
conda create -n ag-bench python=3.8
conda activate ag-bench
git clone https://github.com/autogluon/autogluon-bench.git
cd autogluon-bench
pip install -e .
agbench run sample_configs/tabular_local_configs.yaml

Below is the error:

I find the error is gone if using python 3.9.

I also encountered this error with 3.8

This issue has been addressed in https://github.com/autogluon/autogluon-bench/pull/38 and you should now be able to use the new release 0.2.0.


Unable to handle not completed Runbooks

If the runbook goes into any other status than completed, the bot will not return the status. The bot should be able to handle all statuses including starting, suspended, etc.

We are explicitly filtering status for Runbooks to avoid being too verbose in the Bot. Currently we only show a message if the status is 'Running', 'Completed', or 'Failed'. Let me know if you want to show all statuses or include specific ones.

Suspended is a status which is effectively failed and needs to be included.

Just tested and suspended and completed are still not working for me showing the status.

Verifed fixed.


oci_pull fails to pull a public gcr.io image without auth credentials

Testing from commit ecbce02711c36733e3789cd85a098aa43f911d64
The following function may fail with an error and stop the pull process when auth was never required.
https://github.com/bazel-contrib/rules_oci/blob/ecbce02711c36733e3789cd85a098aa43f911d64/oci/private/pull.bzl#L149-L160
Example error:
ERROR: An error occurred during the fetch of repository 'linux_debian11_multiarch_base_linux_arm64':
   Traceback (most recent call last):
        File "/home/pvanloon/.cache/bazel/_bazel_pvanloon/4d86610fb065df612cebf796c5f3f04e/external/rules_oci/oci/private/pull.bzl", line 357, column 46, in _oci_pull_impl
                mf, mf_len = downloader.download_manifest(rctx.attr.identifier, "manifest.json")
        File "/home/pvanloon/.cache/bazel/_bazel_pvanloon/4d86610fb065df612cebf796c5f3f04e/external/rules_oci/oci/private/pull.bzl", line 280, column 74, in lambda
                download_manifest = lambda identifier, output: _download_manifest(rctx, state, identifier, output),
        File "/home/pvanloon/.cache/bazel/_bazel_pvanloon/4d86610fb065df612cebf796c5f3f04e/external/rules_oci/oci/private/pull.bzl", line 237, column 23, in _download_manifest
                result = _download(rctx, state, identifier, output, "manifests", allow_fail = True)
        File "/home/pvanloon/.cache/bazel/_bazel_pvanloon/4d86610fb065df612cebf796c5f3f04e/external/rules_oci/oci/private/pull.bzl", line 203, column 22, in _download
                auth = _get_token(rctx, state, rctx.attr.registry, rctx.attr.repository)
        File "/home/pvanloon/.cache/bazel/_bazel_pvanloon/4d86610fb065df612cebf796c5f3f04e/external/rules_oci/oci/private/pull.bzl", line 115, column 24, in _get_token
                pattern = _get_auth(rctx, state, registry)
        File "/home/pvanloon/.cache/bazel/_bazel_pvanloon/4d86610fb065df612cebf796c5f3f04e/external/rules_oci/oci/private/pull.bzl", line 78, column 55, in _get_auth
                pattern = _fetch_auth_via_creds_helper(rctx, host_raw, helper_val)
        File "/home/pvanloon/.cache/bazel/_bazel_pvanloon/4d86610fb065df612cebf796c5f3f04e/external/rules_oci/oci/private/pull.bzl", line 160, column 13, in _fetch_auth_via_creds_helper
                fail("credential helper failed: \nSTDOUT:\n{}\nSTDERR:\n{}".format(result.stdout, result.stderr))
Error in fail: credential helper failed:
STDOUT:
You do not currently have an active account selected. See https://cloud.google.com/sdk/docs/authorizing for more information.

If I disable the auth entirely with this patch, the pull works without issue. Obviously, this is not a fix but a proof of concept that auth is not required for every oci_pull.
diff --git a/oci/private/pull.bzl b/oci/private/pull.bzl
index ed339e7..57032ab 100644
--- a/oci/private/pull.bzl
+++ b/oci/private/pull.bzl
@@ -70,7 +70,7 @@ def _get_auth(rctx, state, registry):
     config = state["config"]

     # first look into per registry credHelpers if it exists
-    if "credHelpers" in config:
+    if "credHelpers" in config and False:
         for host_raw in config["credHelpers"]:
             host = _strip_host(host_raw)
             if host == registry:

A simple reproduction using gcp cloud shell

gcloud cloud-shell ssh
Checkout a project with rules_oci and add the following oci_pull

oci_pull(
    name = "linux_debian11_multiarch_base",  # Debian bullseye
    digest = "sha256:9b8e0854865dcaf49470b4ec305df45957020fbcf17b71eeb50ffd3bc5bf885d",  # 2023-05-17
    image = "gcr.io/distroless/cc-debian11",
    platforms = [
        "linux/amd64",
        "linux/arm64",
    ],
    reproducible = True,
)

bazel build @linux_debian11_multiarch_base//:linux_debian11_multiarch_base
Observe a fatal error

I believe that https://github.com/bazel-contrib/rules_oci/issues/284 is related as well when you have no auth credential helper

@thesayyn has there been any update on this issue? thank you

I've updated to the latest release of rules_oci (v1.3.4) and still having issues. It seems that rules_oci will fallback to using curl and that returns a different sha.
WARNING: Could not fetch the manifest. Either there was an authentication issue or trying to pull an image with OCI image media types.
--
  | Falling back to using `curl`. See https://github.com/bazelbuild/bazel/issues/17829 for the context.
  | WARNING: Could not fetch the manifest. Either there was an authentication issue or trying to pull an image with OCI image media types.
  | Falling back to using `curl`. See https://github.com/bazelbuild/bazel/issues/17829 for the context.
...
Error in download: com.google.devtools.build.lib.bazel.repository.downloader.UnrecoverableHttpException: Checksum was e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 but wanted 9b8e0854865dcaf49470b4ec305df45957020fbcf17b71eeb50ffd3bc5bf885d

See a build failure here: https://buildkite.com/prysmatic-labs/prysm/builds/76220#018aa92a-25cd-4c5c-bfb1-df605799312f/35-90

Sounds like Curl doesn't properly fail...

Another thing I noticed is that oci_pull does not work well with --experimental_remote_downloader due to the non-hermetic nature of a fallback to curl or some other issue.

We have removed the Curl fallback now,  i am not sure what needs to be done here. Does docker pull work fine with the same docker config?

@thesayyn we have been running for two weeks with the experimental remote downloader flag and I haven't seen any issues. We are using rules_oci v1.7.4 without issues. Thanks for following up!


Chrome extension

Hello,
I'm using bugsnag-js for monitoring a chrome extension. Errors are sent, but never displayed in Bugsnag It seems that there is a problem because of 'chrome-extension" into stacks error.
Exemple :
Error
    at generateStacktrace (chrome-extension://nkleeghhjabalfolcphldebmfabofbia/lib/bugsnag.js:489:13)
    at Object.self.notify (chrome-extension://nkleeghhjabalfolcphldebmfabofbia/lib/bugsnag.js:100:19)
    at _init (chrome-extension://nkleeghhjabalfolcphldebmfabofbia/js/content-script/smartbar.js:442:17)
    at Object.callback (chrome-extension://nkleeghhjabalfolcphldebmfabofbia/js/content-script/smartbar.js:322:13)
    at safeCallbackApply (extensions::sendRequest:21:15)
    at handleResponse (extensions::sendRequest:73:7)

As workaround, I do this in bugsnag.js :
function stacktraceFromException(exception) {
    return (exception.stack || exception.backtrace || exception.stacktrace).replace(/chrome-extension:/g, "chromeextension:");
  }

Is this still the unofficially approved way to enable error reporting for a chrome extension?
I have tried removing 'chrome-extension' from the stack trace, url, context, and projectRoot params, but I'm still not seeing any errors in my project dashboard. I've even forwarded the error notification via my server so I can override the referer header. Are there other params that would cause Bugsnag to ignore the notification?

+1 for chrome extension support =)

We added some docs in #129 that should help people get Chrome extension monitoring set up — if you bump into any other issues, let us know.

For those who end up here and are looking for the current docs, they're now here: https://docs.bugsnag.com/platforms/javascript/faq/#how-can-i-get-error-reports-from-browser-extensions
In case it moves again, here's a screenshot:


Rename DevopsGenerator to QueryGenerator

This interface is not tied to the devops use case in any way, so
its naming was a misnomer. It is actually generic and can be used
for any use case since, so this renaming reflects that.

Codecov Report

Merging #78 into master will not change coverage.
The diff coverage is 30%.

@@           Coverage Diff           @@
##           master      #78   +/-   ##
=======================================
  Coverage   57.32%   57.32%
=======================================
  Files          77       77
  Lines        3810     3810
=======================================
  Hits         2184     2184
  Misses       1595     1595
  Partials       31       31

Impacted Files
Coverage Δ

cmd/tsbs_generate_queries/uses/devops/common.go
92.98% <0%> (ø)
:arrow_up:

...sbs_generate_queries/uses/devops/single_groupby.go
0% <0%> (ø)
:arrow_up:

cmd/tsbs_generate_queries/uses/devops/groupby.go
0% <0%> (ø)
:arrow_up:

cmd/tsbs_generate_queries/uses/devops/high_cpu.go
0% <0%> (ø)
:arrow_up:

...erate_queries/uses/devops/groupby_orderby_limit.go
0% <0%> (ø)
:arrow_up:

...d/tsbs_generate_queries/uses/devops/max_all_cpu.go
0% <0%> (ø)
:arrow_up:

cmd/tsbs_generate_queries/uses/devops/lastpoint.go
0% <0%> (ø)
:arrow_up:

internal/inputs/generator_queries.go
91.26% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ff6e61a...b16e5f9. Read the comment docs.


docs(templates): add a service binding example to new-worker.ts

What this PR solves / how to test:
with the release of service bindings, it's helpful to have an immediate idea of how service bindings work.  especially in typescript land, where the type is useful info.  in my case, i found Fetcher to be the most accurate type, but feel free to correct me if this is invalid.
Author has included the following, where applicable:

[x] Tests (N/A)
[x] Changeset (N/A)

Reviewer has performed the following, where applicable:

[ ] Checked for inclusion of relevant tests
[ ] Checked for inclusion of a relevant changeset
[ ] Checked for creation of associated docs updates
[ ] Manually pulled down the changes and spot-tested

@mrbbot looks like something went very wrong with the macos-latest tests and it got killed by actions after 360 minutes


PathIterable dataset with a single file and no validation will fail[BUG]

Describe the bug
If no validation is given, the PathIterableDataset will try to split files (rather than patches) between train and validation. However, with a single file this will always throw an error.
import numpy as np
from tifffile import imwrite

from careamics.config import DataConfig
from careamics.config.support import SupportedData
from careamics.lightning import CAREamicsTrainData

rng  = np.random.default_rng(42)
data = rng.integers(0, 255, (32, 32))
data_path = Path(".") / "data.tif"
imwrite(data_path, data)

data_config = DataConfig(
    data_type=SupportedData.TIFF.value,
    patch_size=(16, 16),
    axes="YX",
    batch_size=1,
)
data_module = CAREamicsTrainData(
    data_config=data_config,
    train_data=str(data_path),
    use_in_memory=False
)
data_module.prepare_data()
data_module.setup()

Error:
ValueError: Not enough files to split a minimum of 5 files, got 1 files.

This is only applicable for when the data does not fit in memory (according to CAREamics definition), which is an impossible case: if the data does not fit in memory, then we cannot train from this single file.
This issue cannot really be fixed, unless we complexify even further the dataset (e.g. keep the validation set in memory and extract it randomly in a first pass).
I am leaning towards waiting for the Zarr dataset, and then just retire the PathIterableDataset. We could then provide a convenience function to convert train/validation/test files into a single Zarr archive and use it for training/prediction.

This is only applicable for when the data does not fit in memory (according to CAREamics definition), which is an impossible case: if the data does not fit in memory, then we cannot train from this single file.

Probably the error that the file is too big should be raised before we get to this point!

Probably superseded by https://github.com/CAREamics/careamics/issues/292


Steam-API: Fetch data for players

Fetch useful data from steam-api, probably stuff like:

Steam profile status (public, private)
Steam TF2 game hours (if available, else: N/A)
VAC-Bans, Game-Bans
Steam Avatar
Steam Community Level
Maybe Steam Profile Comments, looking for some keywords

So far:

Steam profile status (public, private) ✅

Steam Avatar ✅

TBD:

Steam TF2 game hours (if available, else: N/A)

VAC-Bans, Game-Bans

Steam Community Level

Maybe Steam Profile Comments, looking for some keywords

Completed:

Steam TF2 game hours (if available, else: N/A) ✅
VAC-Bans, Game-Bans ✅

Moving remaining to new issue.


Multiple WriteHeader calls in controller

t=2015-12-02T13:36:52+0000 lvl=info msg="request started" component=controller req_id=c02ed783-b64c-4577-bae5-8c0da4e9a3dd method=OPTIONS path=/apps/a1220853-053f-4c5b-a55b-81daf9ac7d6a/routes client_ip=<IP_ADDRESS>
2015/12/02 13:36:52 http: multiple response.WriteHeader calls
t=2015-12-02T13:36:52+0000 lvl=info msg="request completed" component=controller req_id=c02ed783-b64c-4577-bae5-8c0da4e9a3dd status=200 duration=816.397µs

Looks like the usage of the CORS handler is pretty broken. I will fix.

Remove https://github.com/flynn/flynn/blob/0c0938c16e36eb4f8e53ea6c7cb3aa3b5eb1bc6f/pkg/cors/cors.go#L137-L139 ?


Non-deposit transactions have depositReceiptVersion=1

Describe the bug
All non-deposit transactions are stored in the db with depositReceiptVersion=1, but it should be null.
Steps to reproduce
Find a non-deposit and print it.
> op-reth get TxHashNumber 0xc76c50bee5cffb7e6a4fea31d0fd360369037d26ff010bec2270916d086aa365
96808239
> op-reth db get Receipts 96808239

Node logs
No response
Platform(s)
Linux (x86)
What version/commit are you on?
0.1.0-alpha.17
What database version are you on?
Current database version: 1
Local database version: 1
What type of node are you running?
Archive (default)
What prune config do you use, if any?
No response
If you've built Reth from source, provide the full command you used
No response
Code of Conduct

[X] I agree to follow the Code of Conduct

It looks like the issue is here:
https://github.com/paradigmxyz/reth/blob/7ef570fc17b3565dbc4668f72288b87e91afdc98/crates/revm/src/optimism/processor.rs#L180C17-L183C35
In op-geth there is an extra check if msg.IsDepositTx:
https://github.com/ethereum-optimism/op-geth/blob/f33198a04ad51e89570d646cf3802a493c93e0b2/core/state_processor.go#L144

this can be closed @0xZerohero ?

yeah, this is kinda fucked rn
I addressed most of this in #6611
there's no good solution atm in this crate,
I guess we want to have them in the node-optimism crate instead because we're already preparing custom evm processors #6461

I'll check it tomorrow(I hope). In node-optimism it should be an integration test right? I was hoping to find some similar tests there :)
Btw I managed to put together something working, but it's in the revm::optimism::processor module and it's a rough draft.
https://github.com/paradigmxyz/reth/compare/main...0xZerohero:reth:fix/deposit_receipt_version
The fix is the first commit. As u can see it's just one line, so if you prefer I can PR only it...

I added TestEvmConfig struct to remove the reth-node-* dependencies. This way we don't have to move the unit tests in another crate. WDYT @mattsse ?
One of the main problems in the current case is that optional dev-dependencies are not allowed, but I found another solution used by tokio. They are passing --cfg option to rustc by using RUSTFLASGS.
For example:
[target.'cfg(optimism)'.dev-dependencies]
reth-node-optimism = { workspace = true, features = ["optimism"] }

[target.'cfg(not(optimism))'.dev-dependencies]
reth-node-ethereum.workspace = true

But this is more general design decision. I still don't fully understand how the code separation between ethereum and optimist is intended. There are ethereum and optimism specific crates and other that are with feature "optimism" and this leads to problems.