Missing "." export in "@sveltejs/kit" package

Describe the bug
When issue npm run build  get this error
Reproduction
npm run build
My svelte.config.js
import preprocess from 'svelte-preprocess';
const config = {

	kit: {
		amp: false,
		appDir: '_app',
		files: {
			assets: 'static',
			//hooks: 'src/hooks',
			lib: 'src/lib',
			routes: 'src/routes',
			serviceWorker: 'src/service-worker.ts',
			template: 'src/app.html'
		},
		floc: false,
		hydrate: true,
		package: {
		 	files: {
		 		exclude: ['**/*.test.ts']
		 	}
		},
		prerender: {
			crawl: true,
			enabled: true,
			onError: 'continue',
			pages: ['*']
		},
		router: true,
		ssr: true,
		target: '#svelte',
		trailingSlash: 'never'
	},
	preprocess: preprocess({
		replace: [['process.env.NODE_ENV', JSON.stringify(process.env.NODE_ENV)]],
	}),
};

export default config;

My package.json
{
  "name": "~TODO~",
  "version": "0.0.1",
  "scripts": {
    "dev": "svelte-kit dev",
    "build": "svelte-kit build",
    "preview": "svelte-kit preview",
    "check": "svelte-check --tsconfig ./tsconfig.json",
    "check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
    "lint": "prettier --check --plugin-search-dir=. . && eslint --ignore-path .gitignore .",
    "format": "prettier --write --plugin-search-dir=. .",
    "test": "jest"
  },
  "//": "force install svelte-jester on version 1.8.2, 2.1.1 is broken and being fixed",
  "devDependencies": {
    "@sveltejs/kit": "next",
    "@testing-library/jest-dom": "^5.14.1",
    "@testing-library/svelte": "^3.0.3",
    "@types/jest": "^27.0.1",
    "@typescript-eslint/eslint-plugin": "^4.19.0",
    "@typescript-eslint/parser": "^4.19.0",
    "eslint": "^7.22.0",
    "eslint-config-prettier": "^8.1.0",
    "eslint-plugin-svelte3": "^3.2.0",
    "jest": "^27.1.0",
    "jest-localstorage-mock": "^2.4.17",
    "prettier": "~2.2.1",
    "prettier-plugin-svelte": "^2.2.0",
    "svelte": "^3.34.0",
    "svelte-check": "^2.0.0",
    "svelte-jester": "1.8.2",
    "svelte-preprocess": "^4.0.0",
    "ts-jest": "^27.0.5",
    "tslib": "^2.0.0",
    "typescript": "^4.0.0"
  },
  "type": "module"
}

Logs
npm run build

><EMAIL_ADDRESS>build
> svelte-kit build

vite v2.5.4 building for production...
✓ 30 modules transformed.
.svelte-kit/output/client/_app/manifest.json                               1.30 KiB
.svelte-kit/output/client/_app/error.svelte-89ee8862.js                    1.55 KiB / brotli: 0.64 KiB
.svelte-kit/output/client/_app/pages/__layout.svelte-a8251f0c.js           0.72 KiB / brotli: 0.41 KiB
.svelte-kit/output/client/_app/assets/start-61d1577b.css                   0.16 KiB / brotli: 0.11 KiB
.svelte-kit/output/client/_app/assets/pages/__layout.svelte-3c7a1a64.css   0.72 KiB / brotli: 0.37 KiB
.svelte-kit/output/client/_app/assets/pages/index.svelte-7545cfa0.css      2.71 KiB / brotli: 0.65 KiB
.svelte-kit/output/client/_app/chunks/vendor-401acf23.js                   7.57 KiB / brotli: 2.79 KiB
.svelte-kit/output/client/_app/pages/index.svelte-0ea4a5cb.js              10.38 KiB / brotli: 3.38 KiB
.svelte-kit/output/client/_app/start-2fb977ed.js                           17.60 KiB / brotli: 5.62 KiB
vite v2.5.4 building SSR bundle for production...
Bundling package for SSR due to resolve failure. Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package
Bundling package for SSR due to resolve failure. Failed to resolve entry for package "@types/jest". The package may have incorrect main/module/exports specified in its package.json: Failed to resolve entry for package "@types/jest". The package may have incorrect main/module/exports specified in its package.json.
✓ 29 modules transformed.
.svelte-kit/output/server/app.js   83.31 KiB
vite v2.5.4 building for production...
✓ 2 modules transformed.
.svelte-kit/output/client/service-worker.js   0.41 KiB / brotli: 0.20 KiB

Run npm run preview to preview your production build locally.

System Info
node version: v16.3.0
svelte-kit, 1.0.0-next.164

Severity
serious, but I can work around it
Additional Information
No response

I get the same thing once I upgraded to sveltekit 1.0.0-next.164. The two packages for me though are:
sveltejs/adapter-vercel
sveltejs/kit

Bump. Same error upon even making a brand new repo.
Simply running:
npm init svelte@next test cd test npm run dev
produces:
Bundling package for SSR due to resolve failure. Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package

Bump. Same here.
SvelteKit v1.0.0-next.164
Bundling package for SSR due to resolve failure. Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package

This message will be silenced in the next Vite release https://github.com/vitejs/vite/pull/4873

Same problem. I tried to use swiper. (Yes, it is installed!)
Bundling package for SSR due to resolve failure. Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package
Cannot find module 'swiper' from 'C:/Svelte/tw08swip/src/routes/swip'
Cannot find module 'swiper/svelte' from 'C:/Svelte/tw08swip/src/routes/swip'

Vite had already made another release (2.5.6), what's left is to upgrade Vite

I cut a release with a new version of Vite

I think I'm still encountering this error:
  "devDependencies": {
    "@sveltejs/adapter-static": "^1.0.0-next.20",
    "@sveltejs/kit": "^1.0.0-next.179",
    "svelte": "^3.43.1",
    "svelte-preprocess": "^4.9.8",
    "typescript": "^4.4.3",
    "vite": "^2.6.2",
    ...
  }

$ svelte-kit dev
 > node_modules/vite/dist/node/chunks/dep-24231913.js:44016:10: error: [plugin: vite:dep-scan] Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package
    44016 │     throw new Error(`Failed to resolve entry for package "${id}". ` +
          ╵           ^
    at packageEntryFailure (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:44016:11)
    at resolvePackageEntry (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:44012:9)
    at tryNodeResolve (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:43787:11)
    at Context.resolveId (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:43647:28)
    at Object.resolveId (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50533:55)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async resolve (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50720:26)
    at async /Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50838:34
    at async callback (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:832:28)
    at async handleRequest (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:664:30)

   node_modules/vite/dist/node/chunks/dep-24231913.js:50828:18: note: This error came from the "onResolve" callback registered here
    50828 │             build.onResolve({
          ╵                   ~~~~~~~~~
    at setup (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50828:19)
    at handlePlugins (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:756:23)
    at Object.buildOrServe (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1044:7)
    at /Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1886:17
    at new Promise (<anonymous>)
    at Object.build (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1885:14)
    at Object.build (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1740:51)
    at /Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50679:54
    at Array.map (<anonymous>)

   html:/Users/janosh/Repos/tikz/site/src/routes/__error.svelte:18:7: note: The plugin "vite:dep-scan" was triggered by this import
       18 │ import '@sveltejs/kit'
          ╵        ~~~~~~~~~~~~~~~

 > node_modules/vite/dist/node/chunks/dep-24231913.js:44016:10: error: [plugin: vite:dep-scan] Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package
    44016 │     throw new Error(`Failed to resolve entry for package "${id}". ` +
          ╵           ^
    at packageEntryFailure (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:44016:11)
    at resolvePackageEntry (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:44012:9)
    at tryNodeResolve (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:43787:11)
    at Context.resolveId (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:43647:28)
    at Object.resolveId (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50533:55)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async resolve (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50720:26)
    at async /Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50838:34
    at async callback (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:832:28)
    at async handleRequest (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:664:30)

   node_modules/vite/dist/node/chunks/dep-24231913.js:50828:18: note: This error came from the "onResolve" callback registered here
    50828 │             build.onResolve({
          ╵                   ~~~~~~~~~
    at setup (/Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50828:19)
    at handlePlugins (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:756:23)
    at Object.buildOrServe (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1044:7)
    at /Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1886:17
    at new Promise (<anonymous>)
    at Object.build (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1885:14)
    at Object.build (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1740:51)
    at /Users/janosh/Repos/tikz/site/node_modules/vite/dist/node/chunks/dep-24231913.js:50679:54
    at Array.map (<anonymous>)

   html:/Users/janosh/Repos/tikz/site/src/routes/[slug].svelte:40:7: note: The plugin "vite:dep-scan" was triggered by this import
       40 │ import '@sveltejs/kit'
          ╵        ~~~~~~~~~~~~~~~

> Build failed with 2 errors:
node_modules/vite/dist/node/chunks/dep-24231913.js:44016:10: error: [plugin: vite:dep-scan] Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package
node_modules/vite/dist/node/chunks/dep-24231913.js:44016:10: error: [plugin: vite:dep-scan] Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package
Error: Build failed with 2 errors:
node_modules/vite/dist/node/chunks/dep-24231913.js:44016:10: error: [plugin: vite:dep-scan] Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package
node_modules/vite/dist/node/chunks/dep-24231913.js:44016:10: error: [plugin: vite:dep-scan] Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package
    at failureErrorWithLog (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1493:15)
    at /Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1151:28
    at runOnEndCallbacks (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:941:63)
    at buildResponseToResult (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1149:7)
    at /Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:1258:14
    at /Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:629:9
    at handleIncomingPacket (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:726:9)
    at Socket.readFromStdout (/Users/janosh/Repos/tikz/site/node_modules/esbuild/lib/main.js:596:7)
    at Socket.emit (node:events:390:28)
    at Socket.emit (node:domain:475:12)
error Command failed with exit code 1.

In case this helps anyone, I ran into the same problem after replacing all occurrences of import type { ... } with import { ... }.

TypeScript users no longer have to strictly separate type imports and value imports (...)
- Svelte October blog post

It seems that some imports, such as those importing from @svelte/kit or those in <script context="module"> still need explicit type imports (I'm not sure which is the cause). Another solution is to use JS and a @type hint such as in the Svelte docs.
<script context="module" lang="ts">
  import type { Load } from "@sveltejs/kit";
  export const load: Load = async ({ page, fetch }) => {

<script context="module">
  /**
   * @type {import("@svelte/kit").Load}
   */
  export async function load({ page, fetch }) {

@MarcusCemes Yep, that was the problem in my case as well.

If the import consists of type imports only, you need to use import type

If the import consists of type imports only, you need to use import type

Thanks for the hint, but then why doesnt sveltekit produce a meaningful error message? This is cropping up again and again and it always takes a while until you figure out where its wrong.

@bluwy I suspect this error is thrown by either vite or vps - is there a way to throw a different error there, something like "X is not a valid import from Y. If this is a type import, use the import type syntax." or sth like that?

From the errors, looks like it's coming from Vite's dep scanner, which uses esbuild to process TS, and it tries to resolve @sveltejs/kit because it's not a type import. I guess we can add an extra heuristic where if it fails to resolve, it checks if there's a type condition and suggest that. But it would be a fair refactor before we can do that. I'll put this in my todo list 🙂

Does this have a fix yet? I get the same or a similar bug when I add import { error } from "@sveltejs/kit" to a svelte component
[vite] Internal server error: Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: No known conditions for "." entry in "@sveltejs/kit" package

This same thing just happened to me as well. Svelte latest + Playbook 7 latest - running playbook throws this error No known conditions for ".". Really no idea what to do I checked the offending package (@sveltejs/vite-plugin-svelte), and the "." export is there, no idea what's being complained about...

I can't reproduce this anymore. The errors come around when you require('@sveltejs/kit'), because SvelteKit only exports with the import condition, not the require condition. This can happen when some tooling compiles the import you write, into a require, and sometimes that can happen because the package.json "type": "module" not set, maybe that's the case?

Haven't encountered this in a long time either.


Ecosystem flow bug fixes

https://github.com/credebl/automation-test-suite/issues/126
https://github.com/credebl/automation-test-suite/issues/135
https://github.com/credebl/automation-test-suite/issues/188
https://github.com/credebl/automation-test-suite/issues/189

The above issues were tested in the DEV environment and the changes look fine.


Flaky test in scrape_test.go

The "Scraped samples did not match served metrics" test in scrape_test.go is flaky:
$ make test
>> running tests
ok  	github.com/prometheus/prometheus/cmd/prometheus	0.030s
?   	github.com/prometheus/prometheus/cmd/promtool	[no test files]
ok  	github.com/prometheus/prometheus/config	0.012s
ok  	github.com/prometheus/prometheus/notifier	0.021s
ok  	github.com/prometheus/prometheus/promql	0.764s
--- FAIL: TestTargetScraperScrapeOK (0.00s)
	scrape_test.go:474: Scraped samples did not match served metrics
	scrape_test.go:475: Expected: [metric_a => 1 @[1457378821.545] metric_b => 2 @[1457378821.545]]
	scrape_test.go:476: Got: [metric_b => 2 @[1457378821.545] metric_a => 1 @[1457378821.545]]
FAIL
FAIL	github.com/prometheus/prometheus/retrieval	3.624s
ok  	github.com/prometheus/prometheus/retrieval/discovery	0.066s
?   	github.com/prometheus/prometheus/retrieval/discovery/kubernetes	[no test files]
?   	github.com/prometheus/prometheus/retrieval/discovery/marathon	[no test files]
ok  	github.com/prometheus/prometheus/rules	0.053s
?   	github.com/prometheus/prometheus/storage	[no test files]
ok  	github.com/prometheus/prometheus/storage/local	4.733s
ok  	github.com/prometheus/prometheus/storage/local/codable	0.002s
?   	github.com/prometheus/prometheus/storage/local/index	[no test files]
?   	github.com/prometheus/prometheus/storage/local/storagetool	[no test files]
ok  	github.com/prometheus/prometheus/storage/metric	0.002s
ok  	github.com/prometheus/prometheus/storage/remote	0.005s
ok  	github.com/prometheus/prometheus/storage/remote/graphite	0.002s
ok  	github.com/prometheus/prometheus/storage/remote/influxdb	0.006s
ok  	github.com/prometheus/prometheus/storage/remote/opentsdb	0.014s
ok  	github.com/prometheus/prometheus/template	0.043s
?   	github.com/prometheus/prometheus/util/cli	[no test files]
ok  	github.com/prometheus/prometheus/util/flock	0.002s
?   	github.com/prometheus/prometheus/util/httputil	[no test files]
?   	github.com/prometheus/prometheus/util/stats	[no test files]
ok  	github.com/prometheus/prometheus/util/strutil	0.001s
?   	github.com/prometheus/prometheus/util/testutil	[no test files]
?   	github.com/prometheus/prometheus/util/treecache	[no test files]
?   	github.com/prometheus/prometheus/version	[no test files]
ok  	github.com/prometheus/prometheus/web	0.005s
ok  	github.com/prometheus/prometheus/web/api/legacy	0.048s
ok  	github.com/prometheus/prometheus/web/api/v1	0.040s
?   	github.com/prometheus/prometheus/web/ui	[no test files]
Makefile:29: recipe for target 'test' failed
make: *** [test] Error 1

$ make test
>> running tests
ok  	github.com/prometheus/prometheus/cmd/prometheus	0.009s
?   	github.com/prometheus/prometheus/cmd/promtool	[no test files]
ok  	github.com/prometheus/prometheus/config	0.005s
ok  	github.com/prometheus/prometheus/notifier	0.034s
ok  	github.com/prometheus/prometheus/promql	0.791s
ok  	github.com/prometheus/prometheus/retrieval	3.694s
ok  	github.com/prometheus/prometheus/retrieval/discovery	0.066s
?   	github.com/prometheus/prometheus/retrieval/discovery/kubernetes	[no test files]
?   	github.com/prometheus/prometheus/retrieval/discovery/marathon	[no test files]
ok  	github.com/prometheus/prometheus/rules	0.047s
?   	github.com/prometheus/prometheus/storage	[no test files]
ok  	github.com/prometheus/prometheus/storage/local	4.179s
ok  	github.com/prometheus/prometheus/storage/local/codable	0.005s
?   	github.com/prometheus/prometheus/storage/local/index	[no test files]
?   	github.com/prometheus/prometheus/storage/local/storagetool	[no test files]
ok  	github.com/prometheus/prometheus/storage/metric	0.009s
ok  	github.com/prometheus/prometheus/storage/remote	0.005s
ok  	github.com/prometheus/prometheus/storage/remote/graphite	0.004s
ok  	github.com/prometheus/prometheus/storage/remote/influxdb	0.015s
ok  	github.com/prometheus/prometheus/storage/remote/opentsdb	0.004s
ok  	github.com/prometheus/prometheus/template	0.055s
?   	github.com/prometheus/prometheus/util/cli	[no test files]
ok  	github.com/prometheus/prometheus/util/flock	0.002s
?   	github.com/prometheus/prometheus/util/httputil	[no test files]
?   	github.com/prometheus/prometheus/util/stats	[no test files]
ok  	github.com/prometheus/prometheus/util/strutil	0.001s
?   	github.com/prometheus/prometheus/util/testutil	[no test files]
?   	github.com/prometheus/prometheus/util/treecache	[no test files]
?   	github.com/prometheus/prometheus/version	[no test files]
ok  	github.com/prometheus/prometheus/web	0.005s
ok  	github.com/prometheus/prometheus/web/api/legacy	0.064s
ok  	github.com/prometheus/prometheus/web/api/v1	0.033s
?   	github.com/prometheus/prometheus/web/ui	[no test files]

Reproduce with:
$ TEMP=`mktemp`; N=0; until make test 2>&1 | tee $TEMP | grep -q FAIL; do N=$(($N+1)); done; echo "Failure after $N successes"; cat $TEMP; rm -f $TEMP
Failure after 2 successes
>> running tests
ok  	github.com/prometheus/prometheus/cmd/prometheus	0.014s
?   	github.com/prometheus/prometheus/cmd/promtool	[no test files]
ok  	github.com/prometheus/prometheus/config	0.011s
ok  	github.com/prometheus/prometheus/notifier	0.034s
ok  	github.com/prometheus/prometheus/promql	0.780s
--- FAIL: TestTargetScraperScrapeOK (0.00s)
	scrape_test.go:474: Scraped samples did not match served metrics
	scrape_test.go:475: Expected: [metric_a => 1 @[1457380428.348] metric_b => 2 @[1457380428.348]]
	scrape_test.go:476: Got: [metric_b => 2 @[1457380428.348] metric_a => 1 @[1457380428.348]]
FAIL
FAIL	github.com/prometheus/prometheus/retrieval	3.696s
ok  	github.com/prometheus/prometheus/retrieval/discovery	0.065s
?   	github.com/prometheus/prometheus/retrieval/discovery/kubernetes	[no test files]
?   	github.com/prometheus/prometheus/retrieval/discovery/marathon	[no test files]
ok  	github.com/prometheus/prometheus/rules	0.059s
?   	github.com/prometheus/prometheus/storage	[no test files]

Running into this pretty often. Seems to be just the verification being sensitive to random ordering.


Potential Bug: Nested 'Object' and 'List<Object>' won't download to client (if 'false' on SyncPermission)

How frequently does the bug occur?
All the time
Description
I’d like to confirm what I am seeing in my testing… that a related ‘Object’ or ‘List<Object>’ will be prevented to download to a client-app... for a ‘Flexible Sync’ query if it has nested relationships that do not meet the conditions in Sync Permission’s (JSON) rules (set on cloud-side).
Therefore, we must ensure that all nested relationships also meet conditions (just like the top-level does) for the complete results to be available. For example, if a ‘Person’ object has a ‘List<Dogs>’, but one of the dog objects does not meet the rules’ conditions, then that one dog object is not supposed to show up in that query (while other dog objects meeting conditions will), correct? - I want to make sure that is the intended behavior in Flexible Sync, or a bug.
Stacktrace & log output
No response
Can you reproduce the bug?
Yes, always
Reproduction Steps
No response
Version
SWift SDK 10.28.0
What SDK flavour are you using?
MongoDB Realm (i.e. Sync, auth, functions)
Are you using encryption?
Yes, using encryption
Platform OS and version(s)
iOS
Build environment
Xcode version: 13.3
Dependency manager and version: ...

Hi @kachalo,
The subscriptions are there for this test. This is about the Sync Permissions (JSON) that are set on the cloud-side. Currently, they also seem the need to be satisfied. Which can complicate things, but not impossible. Personally, if the top-level is OK to allow syncing, then we (developers) can handle the rest on the client-side via subscriptions... that would be a better policy.
... so still would like to know if this is intended behavior or is a bug - thank you!

The behavior that @kachalo quoted is intended behavior. The client device would need permission for the linked objects.
If you want a top-level parent object to confer permission on children objects, then you could use embedded objects. Embedded objects don't have permissions independent of their parent. This might be what you're looking for.

Expected behavior was that Server's Sync Permissions would pull all related/nested objects (if top-level satisfied), unless specific (Collection-based) rules are declared in Server's Sync Permission that affect the nested-object's. Thereby then making those unsatisfactory to sync.

I understand and share your concern, @reveelapp. We've got two independent mechanisms to filter data for a specific client: the subscription predicates and Sync Permissions JSON. It is a possibility they may go out of sync or be inconsistent. And it is an excellent question to be answered: whether it is intended behavior or a potential source of bugs?

I have an addition, though. It is tempting to stick just for Sync Permissions JSON and set up the realm subscriptions to query all objects of a given entity. If business logic allows, we can avoid having to manage two sets of filtering rules.
However, I didn't find any mentions or recommendations that it is an acceptable way to go. Maybe @ericjordanmossman can clarify?

Hey @kachalo - thanks for commenting. I can share some of my own thoughts regarding all this. These are simply my assumptions... I feel the Realm Team will evolve all this and will give us more flexibility with subscriptions and queries over time. Currently, they want us to do the heavy-conditioning on the client-side - since that is where we can provide more code to do it, versus the cloud-side's JSON.
Yeah, I agree, let's see what they come back with. As I mentioned above in the "Expected behavior" post, that chopping-off (i.e., preventing) related 'Object' data that are structurally part of an object's data purpose (since top-level passes) does not seem to be (IMHO) an intended behavior 🤷♂.

Hi @reveelapp as mentioned before this is the intended behaviour, for now if you want to have more control on the client side, keeps this rules simple and use subscriptions to handle which data you want to be downloaded.
Thanks for the feedback, what we want is to make sure the developer has the best experience using our product
@ianpward this feedback is interesting regarding flexible sync.

Hi @dianaafanador3 - thanks for getting back to me!
Understood. I hope to see this change. It is not a huge issue and usually won't be a problem with most setups; though it just seems odd - that is all.
Thank you and have a great weekend!


Fix Markdown!

Some markdown syntax errors get fixed in this PR for the ReadMe.md file.

Hi @ahmadawais
Sorry for the delay in checking this.
We have updated README since then so this PR has conflicts now. So I need to close this without merging. Some changes you have suggested are manually fixed.
Thanks.


cached images not working

Describe the bug
the cached images are not working
if I use this URL https://dev.spirit.com.kw/storage/attribute_option/NA.png it is working
but this URL https://dev.spirit.com.kw/cache/original/attribute_option/NA.png not working
I am using Nginx this is my config
server {
    listen 80;
    server_name dev.spirit.com.kw;
    listen 443 ssl http2;
    ssl_certificate /etc/letsencrypt/live/dev.spirit.com.kw/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/dev.spirit.com.kw/privkey.pem;

    root /var/www/dev.spirit.com.kw/public;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.2-fpm.sock;  # adjust if using a different PHP pool
    }

    location ~ /\.ht {
        deny all;
    }

    location ~* \.(css|js|gif|jpeg|jpg|png)$ {
    include       /etc/nginx/mime.types;
    expires       30d;
    add_header    Cache-Control public;
    types         { text/css css; }
    }

    location ~* ^/cache/.*\.(jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc|webp|woff|woff2)$ {
        expires max;
        access_log off;
        add_header Cache-Control "public";
    }
}

On another server with apache2, it is working

Can you please share the image cache config file? Looks like some configuration issues either in Nginx or in Laravel configs.

Closing this issue for inactivity, but please reopen if needed!


TVP columns don't always need to be bound

The sentence which begins the fourth paragraph of this page ...

After binding the table-valued parameter, the application must then bind each table-valued parameter column.

...  is not true in every case. As I learned from a Microsoft contractor (see the discussions in this GitHub ticket) it is also possible to tell the driver to use the default value, which in the case of a TVP is an empty sequence. It would have saved a considerable amount of time and work to have had that information in the ODBC documentation.
This new information also seem to contradict the previous paragraph, which says

Table-valued parameters as a whole cannot be set to a default value by using SQL_DEFAULT_PARAM in StrLen_or_IndPtr....

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 566a596c-5b9f-9775-f561-a8f19e5e6109
Version Independent ID: 06c58e2a-7d06-64d5-c1bc-818e7ab8848a
Content: Data Transfer of Table-Valued Parameters - SQL Server
Content Source: docs/relational-databases/native-client-odbc-table-valued-parameters/binding-and-data-transfer-of-table-valued-parameters-and-column-values.md
Product: sql
Technology: native-client
GitHub Login: @markingmyname
Microsoft Alias: maghan

@bkline -- Bob, thank you for your feedback.
@markingmyname -- Mark, please look into this issue.

@bkline
Sorry for the delayed response.
Here is info that I hope will help you with your concern.
-If there are no rows, there are also no columns to bind.
-TVPs do not have a default value that can be set, because SQL_DEFAULT_PARAM indicates no rows.
Please let me know if you have any more questions.
Thank you.

@bkline
The article will be updated by the end of the week with a Note describing this info.
Thank you for bringing this to our attention.

We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion, and we will reopen the issue. To see what the community is wanting, please visit the UserVoice site.

Thanks, @markingmyname .


[silicon_creator] Add SPHINCS+ known-answer tests.

This PR adds test data for SPHINCS+ signature verification based on the 100 known-answer tests from the SPHINCS+ NIST submission. I couldn't find a good way to vendor in this test data (or really any other test suite for SPHINCS+), so I've just downloaded the submission, parsed the .rsp file from the KATs into HJSON, and checked in the HJSON. It would be more ideal to vendor it in and then parse it in a Bazel rule, if at some point a vendorable test suite becomes available. I included the script I used to parse the data with the PR.
Following the format of the RSA test vectors, I've included all the test data that is not specific to ROM under sw/device/tests/crypto.

Just an update: fighting with CI a bit because the KATs give "bad length" errors on the ROM tests (although they pass Test ROM). I think the ROM + the 5 huge SPHINCS+ tests per target is just too big for the ROM_EXT limits. Looking into a way to exclude ROM targets; I'd rather not divide this into even more targets.

I've revisited this PR to rebase and update it to build for test ROM only. Now it runs 10 tests per target instead of 5 (since test ROM has significantly more space for test data) and doesn't seem to adversely affect CI time. Based on the log, these test targets seem to run in about 10s each including configuring the FPGA, and there are 10 of them. This agrees with the ~2min difference I see in runtime on the test ROM CI  stage compared with the latest master run: 29 minutes vs 31 minutes. This seems worth it to me to run thorough tests for SPHINCS+, especially since the test ROM CI stage is not usually the bottleneck. However, I'm happy to move this to nightly in a follow-up if the slowdown turns out to be a problem.


Zoom within plot

Check that current zoom (re-scaling axes) work as to zoom in a plot. See examples here:

https://www.d3-graph-gallery.com/graph/interactivity_zoom.html
https://observablehq.com/@d3/programmatic-zoom (nice zoom without axes)
https://bl.ocks.org/mbostock/7ec977c95910dd026812 (zoom with axes)
https://www.datamake.io/blog/d3-zoom (full tutorial)
geometric zooming vs semantic zooming
zooming programmatically: here, and here.

So currently updating axes + moving stuff on it works. But, problem here that we always need to re-draw the objects. Would be nice to just take what is already on the plot and zoom in. In the examples under the link they employ d3.zoom(), but it needs as event updateChart, which is similar to what I use as well. So I am not sure if employing d3.zoom an sich helps at all here...

Well, we do need to employ the zooming layout as in the link. We need clipping for stuff falling outside the plot area. Further, the zoom effect does not look all too convincing as it is now.

This seems to be a tricky deal. So far in xx we have a trial version version where mouse wheel zoom on a scatter plot works as expected, and we can to elementary programmatic zoom. Problem, however, is that programmatic zooming is till all over the place. It seems that current version of d3-zoom does not handle this very well, see discussion here.

Proposed solution in 1b54527d1008ed5a091dcc40a56ee04c35fdf98f; using xyzoom.js.


it can't be validate if path parameters not defined

/some/api/{param}:
if this param is not be defined. the command swagger-cli validate api.yaml can't throw any errors.

Also if the parameter is defined but not in: header it won't fail.

Basically I think the command line tool could do with the validation in the editor
https://stackoverflow.com/questions/48174533/how-to-perform-online-swagger-editor-validation-in-a-command-line-tool


Position not quite right

It looks like the keyboard isn't positioned quite right - it overlaps the text input.

I think it changed after upgrading to RN 0.29

You can set the extraHeight prop as a workaround. Will test this tomorrow, thanks for the report.

Please use extraHeight to adjust the position of the keyboard.

Add extraHeight to what?  Adding it as a prop to the KeyboardAwareScrollView didn't work.  Tried both extraHeight={50} & extraHeight={-50}.  In fact it seemed to make it worse, in that the view I want to see is even more hidden that it was without the extraHeight.

Set an extraHeight prop of 100 with the latest library version. Usually this happens when you have a TabBar but the component doesn't know it (there's another prop to tell the component it is living inside a TabBar, see https://github.com/APSL/react-native-keyboard-aware-scroll-view#props

Ok, thanks very much!

Let me know if that worked @npomfret ! 👍

It worked, thanks.


zigbee-herdsman:deconz:driver no free slots

Addon not started anymore.
Issue :
zigbee-herdsman:deconz:driver no free slots. Delay sending of APS Request
Version : 1.18.3-1

core-2021.5.4
supervisor-2021.04.3
Operating System: HassOS 5.4

Please move this issue to https://github.com/Koenkk/zigbee2mqtt/issues


Please add Saturation :)

Saturation is an armor or item effect that replenishes your hunger without the need for food.
I was honestly surprised when I found out this mod didn't have an enchant of this effect.
I've found many bukkit plugins that make the Saturation enchant, but not one mod.
there's mods like Artifacts or Magical Crops that strictly use their own versions of armor with the effect, but I've never seen an enchant.
EDIT:
also, yes I'm aware of gluttony, which is similar, but needs food.

Sure I'll make it incompatible with gluttony.

I just had an interesting idea for this
normally Saturation keeps your hunger at max no matter how much energy you exert.
(Zivicio pickaxe with veinminer)
but my idea was to level it up to like Saturation III or so, where each level would have a replenishment delay and interval until the max, being the original result.
I'm interested to hear your input on that :D

I'm gonna do it like regen enchant works, config delay with enchant level added food per activation.

if food can be disabled, that would be cool ;)
I like the option for those strict hardcore server owners ;D

Completed

ok so I just tried Saturating V on my bow since it wasn't available for any of the armor pieces...
it's too slow to equate to Saturation as requested, I had to do /gamemode 1 because I nearly died waiting for at least 1 hunger bar to fill during my test.
basically, compair Saturating V to a healing axe.
Magical Crops Ultimate Armor with a saturation gem is faster I think...
basically, the test I do is infinite veinminer on stone and see how long I can vm before I get stopped by hunger...
with Ultimate Armor, it never drops a bar
I would assume a healing axe would be the same, but of course I can't test it while veinmining...
hey it seems to be progress though, so keep up the good work ;)
also, I like the name change to prevent effect confusion ;D

ok so I haven't found the offending mod yet, but I can confirm I do have it working after removing everything but OC and waila (and associates)...
something I did notice though was that, during game lag on placement, the names cycled through like the video above before the lag cleared and the name was decided...
think that might give you guys a lead to fix the random name generator to make sure a name is only generated once??
or is it something deep down in the registration that may be causing the later decision??

 Will update myself

Change the type from 6 to 5 for saturation enchant

sorry for that last message, that was a response for here:
https://github.com/MightyPirates/OpenComputers/issues/2510
(your mod isn't a cause btw) ;)
but alright I'll do that :)

My saturation should be relatively fast but not instant, I believe 5 seconds between activations

that sounds like my thoughts for Saturating I (5 or 7 seconds)
Saturating V should be the same as a healing axe.
is this configurable??

always

alright cool, so I won't have to bug ya so much about the little things ;)
but I was hoping my Saturating thoughts could be applied globally,
because the Saturation effect across mods is typically fast.
I think Artifacts for 1.6.4 was the slowest, though I can't remember how slow... (I think 1 second intervals)
it was faster in newer versions, but I had magical crops, so I never used it... :P
my point though is it's fast, and your mod might get flamed for being defaultly slow.

I don't like the idea of not needing food I even install Pam's Harvestcraft and farm the ingredients to make pizza's.

haha, I guess that'll be an endless war of preference between us then XD
(that's what Saturation is tho :P)
I don't have Magical Crops armor and I'm trying not to add it because I want to keep the base initialization of the world under 3GB of RAM use,
and I'm doing good so far with everything I have.
I miss FastCraft T_T


fixed invalid fragments.

primitive-type-encodings is invalid fragment.
Maybe primitive-type-encodings means primitive-encoding-types.

Thanks for noticing this!


⚠ GitHub has degraded performance

In 2d2108d, GitHub (https://www.githubstatus.com/api/v2/status.json) experienced degraded performance:

HTTP code: 200
Response time: 303 ms

Resolved: GitHub performance has improved in 8c32366.


Enable static analysis and linting

Static code analysis and linting are important for reducing bugs and increasing code maintainability.
For this task to be done, the following items should be done for all projects (yes, even tests). It's okay to tackle this in multiple PRs (one per project) to minimize PR size, if desired.

[ ] Set C# version to 8.0
[ ] Enable nullable references
[ ] Enable StyleCop
[ ] Enable FxCop
[ ] Project build should succeed (indicating successful analysis with no issues)

Talk to me before tackling this task. I have a starter configuration that can help minimize work research and work on this PR.

Assigned to me to follow up with:

Create a branch with the desired props config file
An explanation of how to reference from a .csproj

Two steps remain here after #19 is merged:

Add project reference to the common build properties (see the readme change in that pull request
Fix any errors. The hardest ones will be about nullable references.


⚠ Bofrost.lu has degraded performance

In 65c96d5, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 922 ms

Resolved: Bofrost.lu performance has improved in 854c0db after 6 minutes.


Added expect_column_values_to_be_between for numeric and datetime columns.

These expectations seemed straightforward, so I added them to the expectation_algorithms.

LGTM. Only thing missing is to add the expectations to the docs page.


refactor: Move message content into a set of bytes

What this PR does 📖

moves the content of messages into MessageDocument instead of storing it as a dag

Which issue(s) this PR fixes 🔨

Special notes for reviewers 🗒

Previous messages prior to this PR will not be compatible.

Additional comments 🎤

This change allow us to reduce the amount of resolving needed for the message document since previously we would store the encrypted text into its own block to keep the document size small document when sending it over pubsub or storing it, however since the message document has other metadata that is also small (ie file attachment), it might be a bit redundant to keep the message itself in its own block. Moving it to the upper level of the message document would allow it to be available right away.
We use Bytes instead of Vec<u8> to reduce allocation of the bytes of messages when cloning, although this might change in the future.

Side Note:

Apart of this, we could probably migrate some parts out of its own document and into the message document itself and enforce a size limit there, but may be done in a separate refactoring PR


Problem at starting

Traceback (most recent call last):
File "run.py", line 163, in main
m = MusicBot()
File "C:\Users\Mariano PC\MusicBot-master\musicbot\bot.py", line 96, in init
self.http.user_agent += ' MusicBot/%s' % BOTVERSION
File "C:\Users\Mariano PC\AppData\Local\Programs\Python\Python35-32\lib\site-packages\discord\client.py", line 234, in getattr
raise AttributeError(msg.format(self.class, name))
AttributeError: '<class 'musicbot.bot.MusicBot'>' object has no attribute 'http'
Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x047B4750>
Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x047C9570>
C:\Users\Mariano PC\MusicBot-master>
This issue after updating, thx for the help

You need to update your dependencies.  That would be running update_deps.bat in the musicbot folder.


tiles proactive preload

Would it be possible to force-preload specific tiles of a scene at a certain level to have a reliable "zoom in" effect just a few moments after the scene is loaded?
The usage scenario would be something like quickly decreasing FOV in say, 2 seconds after a user clicks a specifically formed link to zoom in to a defined hotspot.
The idea is to make the viewer.lookTo experience as smooth as possible.

You can sort of do this with TextureStore#pin and TextureStore#unpin - the main issue is deciding when to unpin, since you probably don't want your prefetched textures to stick around forever (maybe unpin after a fixed timeout?).
One thing to keep in mind is that textures are loaded in order, and there's no way to jump the queue. So if you pin some textures, then the view moves in another direction and the TextureStore tries to pull in some other textures, the latter will only start loading after the pinned ones (unless you unpin them, which aborts loading).

Good idea! Maybe I could just call the TextureStore#unpin with the lookTo loadComplete event or add extra seconds thereafter.
The other issue is how to figure out which tiles are to be pinned around a specific hotspot?

There is a way, but it relies on the  undocumented method CubeGeometry#_closestTile (which perhaps should be made part of the official API). It will give you the closest tile to a given (yaw, pitch) at a given level. Then you can call CubeTile#neighbors, CubeTile#parent and CubeTile#children to find more tiles around it.

Wow that's quite awesome! Might pretty much solve this issue, thank you!
Keeping this open in case you plan to make CubeGeometry#_closestTile part of official API.


replace deprecated tf.initialize_all_variables

Replace deprecated tf.initialize_all_variables with tf.global_variables_initializer. The deprecated API has been removed after 2017-03-02. When users run the example, they would get the WARNING as below:
WARNING:tensorflow:From /usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py:175: initialize_all_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02.

It should be updated with the new and official API tf.global_variables_initializer.

/ok-to-test


Make exti an optional feature

LGTM!
Could you add checking build both with+without EXTI to ci.sh?


AudioEffectDistortion docs & inspector edits

Fixing a few typos in the AudioEffectDistortion docs, making a few things clearer, etc
Also adding the decibel (dB) suffix to the pre/post gain properties in the inspector.

Docs changes looks good to me!

 The irony

Thanks!

Thanks! And congrats for your first merged Godot contribution :tada:

Thank you! 🎈


fix: filter on func signature instead of test name

Motivation
Currently forge test --debug testSomeFunc does not work if you have two testSomeFuncs like testSomeFunc() and testSomeFunc(uint256) since it filters on the function name, not the signature.
Solution
Filter on the signature of the function. Note, however, since we're using regex, the UX for this is kind of lame since you need to escape the parenthesis:
forge test --debug "testSomeFunc\(uint256\)"

Closes #1083

Will this still work for functions without parentheses?

Will this still work for functions without parentheses?

Yes, -m whatever still works


scipy.linalg.cossin giving only partially correct answers to input

My issue is about recreating the results of this paper: https://arxiv.org/pdf/0707.1838v3.pdf. See page 23 for example. The implementation should produce θ, U1, U2, V1, V2 such that:

||U1^T.U1 - I4|| = 1.2 X 10^-15
||U2^T.U2 - I4|| = 1.4 X 10^-15
||V1^T.V1 - I4|| = 5.8 X 10^-16
||V2^T.V2 - I4|| = 1.7 X 10^-15
For which only 2. was correct, and 3. was the same order of magnitude.

Reproducing code example:

import scipy
import scipy.linalg
from scipy.linalg import cossin
from scipy.stats import unitary_group
import numpy as np
#Example taken fmro arxiv:

#x = np.array([[1,0,0,0,0] , [0,0,2,0,0.98,0] , [0,0,1,0,0] , [0,-0.98,0,0.2,0] , [0,0,0,0,1]], dtype=np.float64)
x11 = np.array([[0.220508860423, -0.114095899416, 0.001410518052 ,0.309131888087],
       [0.075149984350, 0.552192330457, 0.309420137864 ,0.519525649668],
       [0.346099513974 ,-0.465523358094 ,-0.147474170901, 0.284504924779],
          [0.200314808251 ,0.015869922033 ,0.063768831702 ,0.364621650530]])

x12 = np.array([[0.12386148,-0.4244,0.756283107266,-0.274401793502],
       [0.505660921957, 0.028765021298, -0.138696588123, 0.219160328651],
       [-0.068044487719 ,-0.292950312278 ,-0.202722377746 ,0.655183291894],
          [-0.339461927716 ,-0.307319405113 ,-0.530848659627 ,-0.575436177767]])

x21 = np.array([[-0.149903307775 ,0.456869095895 ,-0.814555019070 ,0.205461483909],
       [-0.132593956233, 0.403919514293, 0.374067025998 ,-0.294979263882],
       [0.631588073183 ,0.226164206817 ,0.132173742848, 0.047014825861],
          [-0.588949720476 ,-0.205112923304 ,0.239887841318, 0.537774110108]])

x22 = np.array([[-0.211288905103 ,-0.065095708488 ,0.064582503584 ,0.100169729053],
       [-0.422173038686 ,-0.565182436669, 0.079260723473 ,0.297296887111],
       [-0.473064671229 ,0.502284642254 ,0.218767959397, 0.079539299401],
          [-0.403033356444 ,0.250518329548 ,0.166101999167 ,0.107399029584]])

y1 = np.hstack((x11,x12))
y2 = np.hstack((x21,x22))
X = np.vstack((y1,y2))
u,cs,vdh = np.empty([3, 3], dtype=float)
u, cs, vdh = cossin((x[:4, :4], x[:4, 4:], x[4:, :4], x[4:, 4:]))
###############################
#||U1^T.U1 - I4|| ~ 1.2 x 10^-15
u1 = u[:4,:4]
u1T = u1.transpose()
y = np.dot(u1T,u1) - np.eye(4)
print(np.linalg.norm(y))
###############################
#||U2^T.U2 - I4|| ≈ 1.4×10−15
u2 = u[4:,4:]
u2T = u2.transpose()
y = np.dot(u2T,u2) - np.eye(4)
print(np.linalg.norm(y))
###############################
#||V1^T.V1 - I4|| ~  5.8 × 10−16
v1 = vdh[:4,:4]
v1T = v1.transpose()
y = np.dot(v1T,v1) - np.eye(4)
print(np.linalg.norm(y))
###############################
#||V2^T.V2 - I4|| ~ ≈ 1.7 × 10−15

v2 = vdh[4:,4:]
v2T = v2.transpose()
y = np.dot(v2T,v2) - np.eye(4)
print(np.linalg.norm(y))

Error message:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  ...

Scipy/Numpy/Python version information:

You haven't entered the x12 array correctly in the first row, first and second element. Then the results are
7.792519535655687e-16
1.5643165126305975e-15
5.394616595783431e-16
1.3967896220629845e-15

Please use this repo as implementation problems and reproducible bugs in the future and use for example Stackoverflow for usage problems.


motif data sets retrieved from AnnotationHub

Build errors are caused by the bug in the rhdf5 package. I have already reported this issue. Hopefully will be fixed soon.


fix: react border color warning

Fixes a react warning that could occur when switching themes. Reproduced by switching between "Default" and "Only transparent borders" theme in Nebula dev.

Warning: Updating a style property during rerender (borderColor) when a conflicting property is set (borderBottomColor) can lead to styling bugs. To avoid this, don't mix shorthand and non-shorthand properties for the same value; instead, replace the shorthand with separate values.

:tada: This PR is included in version 2.4.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


encoding: Update README to mention that LoRaWAN 1.0.4 is implemented

README still mentions 1.0.2, though 1.0.4 commands were implemented some time ago in commit e486447:

TXParamSetupReq/TXParamSetupAns
DeviceTimeReq/DeviceTimeAns
DlChannelReq/DlChannelAns

Need to validate fully though...

@lucasgranberg Everything required by 1.0.4 was added?

All the commands required by LoRaWAN 1.0.4 specification seem to be present.

Should be all of them except B class specific commands iirc. I am not able to verify right now


Added Extra helper functions

Functions that were missing from the Animation system, it makes it more complete now

Who is debugchicken?

Who is debugchicken?

its me!
unless thats a rhetorical question

I'll take a closer look this weekend

.states[] is a public property, you can access it from outside.
https://github.com/Whitebrim/AnimatedSprite/wiki/Examples#example_3b

you are right, im Sorry Im new to lua I did not realize this

@dganzella You had two usefull functions, please accept all my suggestions and I'll merge it.

ok @Whitebrim I think I accepted them all (I was at the app and the app does not let me add your changed, so I was a bit confused -- only the website lets me accept changes)


types don't work with exactOptionalPropertyTypes codebases

Certain types in this codebase are written in a way that don't compile in codebases which have exactOptionalPropertyTypes enabled.
In particular, it's the workbox plugins that define their properties using the WorkboxPlugin interface. Their properties optionality must be aligned with the interface otherwise their instances won't be assignable to plugins array here, for example.
I have a diff for the changes necessary: https://github.com/dwelle/workbox/commit/5e3685299a8dcbd2e790904d25683be047c00602
But I'm sure it affects the codebase elsewhere, too.
Playground illustrating the issue: https://www.typescriptlang.org/play?exactOptionalPropertyTypes=true&ts=4.9.4#code/JYOwLgpgTgZghgYwgAgAoBsCuBzUBJcaeJZAbxDgFsIB+ALmQGcwpRsBfAWACgeATCAnRwoKIXEaNkAZQD21DDlBkeyZBWoNFuEAUixEEANoAiDRBMBdANw8uvbglkhmyAA5YdyALzqIAdxl5CG1QAAoASh4eJxcwZFiYYGwGUg8lFy1PfEIDJCNLdh8ydJ1GBiNS0EKeIA

Hi there,
Workbox is moving to a new engineering team within Google. As part of this move, we're declaring a partial bug bankruptcy to allow the new team to start fresh. We realize this isn't optimal, but realistically, this is the only way we see it working. For transparency, here're the criteria we applied:

For PRs, we closed everything that doesn't target the current v7 branch.
For Issues, we closed everything that was created before 2024.

Thanks, and we hope for your understanding!
The Workbox team


ARTEMIS-1230 Added artemis-bom

Rework https://github.com/apache/activemq-artemis/pull/2615

excluded test dependencies;
introduce parent submodule

@amarkevich, this needs to be rebased since there are conflicts now.

done

LGTM.

Changes look okay to me


Mobile platform support?

This project seems to use Vulkan to provide hardware acceleration, which means it can be easily ported to mobile platforms. Do you currently support mobile platforms, or do you have plans to support them in the future?

In theory, it is supported, but we have not tested it yet.
Support mobile platforms will be an important task in the future.

额 看了一眼 你直接中文提问也行


Grammar: superfluous comma

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

Thanks @jordanbtucker!


[BUG] deleteCards() does not delete card details from user table

When I delete user's card using the deleteCard() method, it does not delete the card info in user table.
$user->deleteCards();

The above deletes the default_source in Stripe but the user table still shows card_brand and card_last_four.

Just encountered this myself. (Cashier 7.0)
As this issue is on top of Google search results, I might as well pitch in.
I'm not entirely sure if it is intentional that your user's card details aren't removed automatically when running deleteCards() method. But running updateCardFromStripe() will synchronize your user's saved card details with Stripe. Essentially, removing their saved card details from your table.
The Billable deleteCards() method is quite simple:
    /**
     * Deletes the entity's cards.
     *
     * @return void
     */
    public function deleteCards()
    {
        $this->cards()->each(function ($card) {
            $card->delete();
        });
    }

So you could just override the method in your User model with something like this, which will automatically syncronize your user's card details with Stripe.
    /**
     * Deletes the entity's cards.
     *
     * @return void
     */
    public function deleteCards()
    {
        $this->cards()->each(function ($card) {
            $card->delete();
        });

        $this->updateCardFromStripe();
    }

Should be fixed now.


sitemapgen4j as Maven dependency

Is it possible to add sitemapgen4j as a Maven dependency ? if so, please show the example

What does hinder you to add it as maven dependency?
See here: https://mvnrepository.com/artifact/com.github.dfabulich/sitemapgen4j
Add the following snippet to your pom file.

com.github.dfabulich
sitemapgen4j
1.0.6

Thanks !


Adding new tuya / Moes TRV

Adding the second type of the _TYST11 tuy /Moes TRV.
PR is made for adding them in ZHA for getting the extended functions Moes TRV is having.
Not  tested by my or some user but #931 is some gave testing the first version but im not 110% that all is working but i think its better then no quirk for the device.

Pull Request Test Coverage Report for Build 958058968

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 82.547%

Totals

Change from base Build 952628130:
0.0%

Covered Lines:
3798

Relevant Lines:
4601

💛  - Coveralls

https://github.com/zigpy/zigpy/discussions/653#discussioncomment-314395 updated but picture is coming later then have finding one OK.

Thanks !!


Accessing caller function / memory from Wasmtime implementation

There doesn't appear to be a way in the wit-bindgen-wasmtime implementation for accessing a caller's export function or memory from a host implementation.
Is this a valid scenario for this crate, or should something that needs low-level access use something else?
Thanks!

The theory is that this isn't necessary because the interface types conversion should theoretically convey all the module was willing to convey, and consumers don't get anything further beyond the interface types boundary (in the same sense that you can't get un-exported functions from a wasm module through the wasmtime crate).
That being said there's nothing stopping one-off functions from having access to internals like this. It shouldn't be too hard to thread things along if there's a use case.

I'm trying to build an implementation for wasi-parallel using WIT, and I need to either get a function reference from a table, or get an exported function, both of which would require accessing some sort of caller object, similar to the one from the wasmtime crate.

Hm ok for this it might be good to do two things in parallel, one is to bring this up with interface-types/wasi-parallel in that the interface currently desired by wasi-parallel isn't implementable with interface-types vanilla, and two would be adding a form of escape hatch to wit-bindgen to forward along the store if configured to do so (or something like that)

the interface currently desired by wasi-parallel isn't implementable with interface-types vanilla

I think that that's something we should treat as either blocking wasi-parallel or Interface Types: we want all WASI interfaces to be virtualizable without breaking encapsulation, so while we can work around limitations like this in wit-bindgen, that's not workable more generally, I think

The wasi-parallel interface was designed under the assumption that there would be some way to express (e.g., interface types, component model, etc.) that the API must receive a "function" to execute. This did not seem like a crazy assumption several months ago: one could imagine how a WASI threading API would require a function to fork or how some API would require a function to handle callbacks. Does this assumption no longer hold?

we want all WASI interfaces to be virtualizable without breaking encapsulation

@tschneidereit, surely passing a "function" must does not necessarily mean that it will break encapsulation: sure, a funcref will contain store state but do you think no other options are possible?
We purposely left this area vague in the design but since then have explored several possibilities: function indices, funcrefs, strings, fat binaries, components (https://github.com/WebAssembly/wasi-parallel/issues/3). None seem satisfactory yet in their current form so more work is needed. But I am at a loss as to how to proceed: who else is interested in enabling this and how would something like this be standardized in a way acceptable to wit-bindgen? @lukewagner?

On another note - what is the relationship between wit-bindgen and WASI, are WASI interfaces expected to be available via interface types? Maybe I am missing something obvious, wouldn't WASI be an interface between wasm code and the host, while interface types is a much higher level introp (between Wasm and a different runtime, or RPC, for example)?

If we're talking about shared-memory parallelism for wasi-parallel (my suggestion in wasi-parallel/#3 was thinking more about non-shared-memory parallelism), I think a good way to express this in a way that is virtualizable and compatible with the overall component model goals is as a core module import where the wasi-parallel module imports memory from its client component (and thus there is never a need to ask for the "caller's memory").
E.g., a component importing wasi-parallel might look like:
(component
  (import "wasi-parallel" (module $Parallel
    (import "libc" "memory" (memory 1))
    (export "fork" (func (param funcref)))
  ))
  (module $Libc
    (memory (export "memory") 1)
    ...
  )
  (instance $libc (instantiate $Libc))
  (instance $parallel (instantiate $Parallel (import "libc" (instance $libc))))
  (module $Main
    (import "libc" "memory" (memory 1))
    (import "parallel" "fork" (func (param funcref)))
    ...
  )
  (instance $m (instantiate $Main (import "libc" (instance $libc)) (import "parallel" (instance $parallel))))
)

Thus, this client component explicitly wires up wasi-parallel to the memory it should use via instantiate.  Because wasi-parallel is imported as core module, it can use all core types, including funcref.
I think the remaining question is how to specify the interface of wasi-parallel.  Normally wit is used to describe component instance interfaces (using interface types), but what we want here is a core module interface (using core types).  Because wasi-parallel isn't using interface types, it doesn't need the normal wit-bindgen glue-code generation, so I wonder if the answer is that, unlike most other WASI proposals, wasi-parallel wouldn't use wit but, rather, just a plain core module type, written in whatever syntax we want.  The simplest option would just be to use the moduletype s-expression defined by module-linking, in which case, for my above example, the interface for wasi-parallel would simply be:
(module
  (import "libc" "memory" (memory 1))
  (export "fork" (func (param funcref)))
)

Does that make sense?

I think I understand the module-linking part of this ("thread the memory through to the instantiated model, etc.") and I would be fine with that approach if I felt the second question was resolved.

so I wonder if the answer is that, unlike most other WASI proposals, wasi-parallel wouldn't use wit but, rather, just a plain core module type, written in whatever syntax we want

The issue with moduletype s-expressions is that it is quite unclear to me how users will consume this API. If there is no way to express the API in WIT, then presumably wit-bindgen can't do much for wasi-parallel, and users will have to manually find ways to use the API. E.g., a future Python user attempting to make a wasi-parallel call would not be able to use auto-generated wasi-parallel bindings but would have to build these by hand.
Is there no way to express this type of thing in WIT? Or specifically to @lukewagner's example: what would it take to express interfaces that use module-linking in WIT?

I might be misunderstanding, but it seems like if wasi-parallel offers shared-memory-multi-threading, wit-bindgen doesn't have anything to offer since you don't want to copy data between linear memories (there is only 1 and you want to pass around pointers into it).  Thus, to use wasi-parallel, I imagine all you'd need is a C header file containing the exports of the wasi-parallel module (which could be published alongside the moduletype).  This does require non-C languages to perform some degree of manual integration, but that feels like the inherent tradeoff involved with shared-memory interfaces (and not different than if wasi-parallel was published today as a native .so+.h).

@lukewagner, is that a temporary limitation, will memory sharing be coming to wit-bindgen at some point? I recall that in the presentation about the future of interface types you said that component model would support both share-nothing and shared memory scenarios.
On a side note, I feel that there are two different use cases here: for external interface it might not be necessary to support core features that the other language or middleware can't express, while it might be necessary for a host API like WASI.

Well, my hypothesis is that: when doing memory sharing, you don't need/want wit-bindgen; you're passing around i32 pointers through interfaces and you want it that way.  So I don't understand this as a limitation, so much as the nature of shared-everything interfaces.  To be clear: a component can import a core-module (and then share the component's internal linear memory with a privately-created instance of that imported core-module -- this doesn't break the shared-nothing architecture we're striving for with component model since the imported core-module is immutable code.

For me, that the tooling might not work for wasi-parallel seems like a major issue. The interface already has create_buffer, read_buffer, and write_buffer calls that would allow the use of wasi-parallel to be shared-nothing. So if the shared-memory part is the blocker for having tools support, it need not be.

Oh, sorry, maybe I'm misunderstanding the fundamental interface here.  When I heard "caller's memory", I assumed that was because the interfaces were passing pointers (offsets) relative to a linear memory shared between the caller and callee (and closed over by all the funcrefs) -- but it sounds like maybe that isn't the case?  Could you sketch out the interfaces of those 3 buffer functions a bit so we could see how the data flows between the orchestrator and the kernel functions?

To be clear: a component can import a core-module (and then share the component's internal linear memory with a privately-created instance of that imported core-module -- this doesn't break the shared-nothing architecture we're striving for with component model since the imported core-module is immutable code.

In wasi-parallel only the callback would modify the memory of the module, the core module only controls execution of the callback. There is functionality to declare what memory the callback would need, because in GPU case it needs to be copied to and/or from device, but core module would only be there to transfer data, rather than accessing it for its own purposes. This callback is what we need the funcref for.

Ah, that helps, thanks.  Could you describe in a bit more detail how you're imagining to declare the memory that the callback needs and how it gets passed to/from the callback in the GPU and non-GPU cases?

Ok, since the last comment on this thread, @penzn, @lukewagner, @egalli, and I met to discuss the issue in more detail. Here is my summary of what we discussed (others can supplement if they want):

the wasi-parallel API is flexible enough to either use shared memory (e.g., by passing a funcref) or not (e.g., using the buffer API here); by "flexible" we mean that we could mold the API to whichever paradigm and mechanism is easiest for users, though we would prefer to not share state to enable parallelism for non-CPU devices
we discussed both of Luke's module-linking suggestions (shared memory, shared-nothing); my takeaway was that both of these involve significant work on the toolchains that compile the Wasm modules to use wasi-parallel (e.g., the compiler must understand module linking, the compiler must be able to generate wasi-parallel code that uses module-linking, there is no way for the user to currently specify what code would be the parallel kernel, etc.)
if these suggestions must be implemented in the toolchain, then WIT and wit-bindgen cannot help developers use wasi-parallel; WIT has no way to express the wasi-parallel API (it would be a core module) and, indeed, it would be outside WIT's scope to understand that wasi-parallel code must be generated by a special toolchain (i.e., to create the module-linking modules, etc.)
we iterated on some alternatives, some way to dynamically pass a "function pointer" without shared state ("use this function without shared memory", first-class instances, etc.), but my takeaway was that Wasm and WASI have no way to express this and it would involve a long, uphill battle before this would be possible

I'm going to close this issue in an effort to help clean up the wit-bindgen issue tracker for now. The component model support in Wasmtime will not provide access to the caller's function or memory, by design. I think that a number of other features might be necessary for wasi-parallel but that discussion is probably best done in the component-model repository rather than wit-bindgen here as nowadays it's trying to pivot to more an implementation of the component-model rather than a testing-bed for features to go into the spec.


MDT docs - Create a Win 10 ref image

In the section entitled: Edit the Unattend.xml file for Windows 10 Enterprise, there is an important information box regarding patching the product with WSIM 1903 update.  The current version of ADK is 2004 and that update is not needed.  There is a lot of information on that page and when following it for the first time, it is easy to overlook that.  I did!

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: e0eb8c97-caa0-bb05-4b91-14ad2adc4aac
Version Independent ID: 0cc541a3-8198-c029-d795-308e673ee2f4
Content: Create a Windows 10 reference image (Windows 10) - Windows Deployment
Content Source: windows/deployment/deploy-windows-mdt/create-a-windows-10-reference-image.md
Product: w10
Technology: windows
GitHub Login: @greg-lindsay
Microsoft Alias: greglin

@gerdesj , Thanks for pointout, But WSIM1903 update is only needed for those users installed ADK 1903  and they didn't installed ADK 2004.

I will add to the note with information saying this only applies to ADK version 1903
https://docs.microsoft.com/en-us/windows-hardware/get-started/what-s-new-in-kits-and-tools#whats-new-in-the-windows-adk-for-windows-10-version-1903


Create a Lambda

User description
This uses the new create functionality from a file.

Type
Enhancement

Description

This PR introduces a new feature to the lambda.py file, which allows the creation of a new Lambda function.
The create method takes a lambda_fx argument, which is the input for the Lambda function.
The create method uses the post method to send a request to the Duplo API, creating a new Lambda function.
Upon successful creation, a message is returned indicating the successful creation of the Lambda function.

Changes walkthrough
Relevant filesEnhancement

lambda.pyAdded Lambda Function Creation Capability

src/duplo_resource/lambda.py

Added a new create method to create a new Lambda function. - The create method uses the post method to send a request to the   Duplo API.

+10/-0

 ✨ Usage guide:
Overview:
The describe tool scans the PR code changes, and generates a description for the PR - title, type, summary, walkthrough and labels. The tool can be triggered automatically every time a new PR is opened, or can be invoked manually by commenting on a PR.
When commenting, to edit configurations related to the describe tool (pr_description section), use the following template:
/describe --pr_description.some_config1=... --pr_description.some_config2=...

With a configuration file, use the following template:
[pr_description]
some_config1=...
some_config2=...

  Enabling\disabling automation

When you first install the app, the default mode for the describe tool is:

pr_commands = ["/describe --pr_description.add_original_user_description=true"
                         "--pr_description.keep_original_user_title=true", ...]

meaning the describe tool will run automatically on every PR, will keep the original title, and will add the original user description above the generated description.

Markers are an alternative way to control the generated description, to give maximal control to the user. If you set:

pr_commands = ["/describe --pr_description.use_description_markers=true", ...]

the tool will replace every marker of the form pr_agent:marker_name in the PR description with the relevant content, where marker_name is one of the following:

type: the PR type.
summary: the PR summary.
walkthrough: the PR walkthrough.

Note that when markers are enabled, if the original PR description does not contain any markers, the tool will not alter the description at all.

  Custom labels
The default labels of the describe tool are quite generic: [Bug fix, Tests, Enhancement, Documentation, Other].
If you specify custom labels in the repo's labels page or via configuration file, you can get tailored labels for your use cases.
Examples for custom labels:

Main topic:performance - pr_agent:The main topic of this PR is performance
New endpoint - pr_agent:A new endpoint was added in this PR
SQL query - pr_agent:A new SQL query was added in this PR
Dockerfile changes - pr_agent:The PR contains changes in the Dockerfile
...

The list above is eclectic, and aims to give an idea of different possibilities. Define custom labels that are relevant for your repo and use cases.
Note that Labels are not mutually exclusive, so you can add multiple label categories.
Make sure to provide proper title, and a detailed and well-phrased description for each label, so the tool will know when to suggest it.

  Inline File Walkthrough 💎
For enhanced user experience, the describe tool can add file summaries directly to the "Files changed" tab in the PR page.
This will enable you to quickly understand the changes in each file, while reviewing the code changes (diffs).
To enable inline file summary, set pr_description.inline_file_summary in the configuration file, possible values are:

'table': File changes walkthrough table will be displayed on the top of the "Files changed" tab, in addition to the "Conversation" tab.
true: A collapsable file comment with changes title and a changes summary for each file in the PR.
false (default): File changes walkthrough will be added only to the "Conversation" tab.

  Utilizing extra instructions
The describe tool can be configured with extra instructions, to guide the model to a feedback tailored to the needs of your project.
Be specific, clear, and concise in the instructions. With extra instructions, you are the prompter. Notice that the general structure of the description is fixed, and cannot be changed. Extra instructions can change the content or style of each sub-section of the PR description.
Examples for extra instructions:
[pr_description]
extra_instructions="""
- The PR title should be in the format: '<PR type>: <title>'
- The title should be short and concise (up to 10 words)
- ...
"""

Use triple quotes to write multi-line instructions. Use bullet points to make the instructions more readable.

  More PR-Agent commands

To invoke the PR-Agent, add a comment using one of the following commands:

/review: Request a review of your Pull Request.
/describe: Update the PR title and description based on the contents of the PR.
/improve [--extended]: Suggest code improvements. Extended mode provides a higher quality feedback.
/ask <QUESTION>: Ask a question about the PR.
/update_changelog: Update the changelog based on the PR's contents.
/add_docs 💎: Generate docstring for new components introduced in the PR.
/generate_labels 💎: Generate labels for the PR based on the PR's contents.
/analyze 💎: Automatically analyzes the PR, and presents changes walkthrough for each component.

See the tools guide for more details.
To list the possible configuration parameters, add a /config comment.

See the describe usage page for a comprehensive guide on using this tool.

Task linked: DUPLO-14829 Create a Lambda Function


docs: fix link to 3rd party UI libs tutorial

What is accomplished by your PR?
Replace broken link in "Design System" Story.
Is there something controversial?
I was unable to check whether the link works now, since I am unable to access any of the docs when I npm run dev locally. Unfortunately I don't have the time to dig deeper into this right now.
I decided to create the pull request anyways, since I'm confident I didn't brake anything with my change :)
Link to the Issue
#394
Checklist
New Feature / Bug Fix

[x] Run unit tests to ensure all existing tests are still passing
[ ] Add new passing unit tests to cover the code introduced by your PR
[ ] Change documentation for the code introduced by your PR
[ ] Add Story / Design System Page for a new component introduced by your PR

CI seems to fail because of permission problem. Anything I can do to fix it?

Don’t worry about the CI I fix it tomorrow 👍


examples/rpg: fix error resolve is not a function

Fix error player.resolve() is not a function:

After the fix, the example works as intended:

resolve() get's renamed to pushOutAll() in master because it's a vague name and planning to get that less called and pack collision resolution into .move(), but wait it works? you're supposed to be able to move out of walls if you remove that 🤔

Perhaps related to the odd roll back of code we saw with the tiling backgrounds example?

Hi, sorry for the late reply!
@slmjkdbtl you are right, the player was able to go through walls, I renamed the function to pushOutAll() and it worked fine!


conditions: add hp.diff and hpp.diff

Abilities like Early Advantage seem to work with hp.low, but the wording is misleading as seen in the first comment on wowhead: The condition is evaluated only after dealing damage once. Since the user can't change the turn after making it, the scripts addon obviously can't defer evaluating the condition to after half the move was made. I would also prefer not to add specific support for this type of ability.
Instead, @patf0rd suggested to expand hp.low to not just provide > and < (which can already be done with self.hp < enemy.hp, no idea why the shortcut was added tbh), but also provide comparison of the health difference, i.e. hp.diff > 277 & !ability.strong in this case.
The options are

as mentioned, hp.diff to be used in comparisons. This might be slightly weird to use since of course there would be self.hp.diff and enemy.hp.diff being the same but the other way around.
The full fledged support for mathematical expressions, which would allow (self.hp - enemy.hp) > 277. Note that this also makes hp.can_explode(15) irrelevant as it can just be enemy.hp <= self.hp.max * 0.15.

I have toyed with the second suggestion before (#13), but fully implementing it would require some bigger backend changes and I'm not sure anyone but me would actually care about that feature, so I don't want to put that much effort into this.

I think this is a good change - mathematical support would be good (but only really the basic arithmetic operations and parenthesis). Probably one for the future.
Could you please write a proposed addition to the API wiki page for both of these?

I think this is a good change - mathematical support would be good (but only really the basic arithmetic operations and parenthesis). Probably one for the future.
Could you please write a proposed addition to the API wiki page for both of these?

### `hp.diff`
The current pet's HP minus the current other pet HP.

**Return**: `value`
**Examples**: `self.hp.diff > 300` (self has 300 more hp than enemy, e.g. self at 450 and enemy at 149 hp), `enemy.hp.diff > 300` (enemy has 300 more hp than own, e.g. enemy at 450 hp and self at 149 hp)

### `hpp.diff`
The current pet's HP percentage minus the current other pet HP percentage.

**Return**: `value`
**Examples**: `self.hpp.diff > 30` (self hp percentage is 30 points more hp percentage than enemy, e.g. self at 10% and enemy at 41%), `enemy.hpp.diff > 30` (enemy hp percentage is 30 points more hp percentage than self e.g. enemy at 10% and self at 41%)


Support for macvlan interface type in zero-os sal for containers

Issue migrated from https://api.github.com/repos/Jumpscale/lib9/issues/240, opened by @FastGeert
See https://github.com/zero-os/0-core/issues/646

commented by @despiegk
for what is this needed?

commented by @FastGeert
It will make us able to run the tfchain on the small zero-os nodes in the testlab. Basically the tfchain daemons will be able to connect with each other in a lan context. Currently this fails because their networking setup ommits that.

@rkhamis, Please write the verification steps


Refactor to improve performance w/ hoisted regex

Initial checklist

[x] I read the support docs
[x] I read the contributing guide
[x] I agree to follow the code of conduct
[x] I searched issues and couldn’t find anything (or linked relevant results below)
[x] If applicable, I’ve added docs and tests

Description of changes
Following https://github.com/wooorm/stringify-entities/pull/13, in this PR I made changes so that the subset passed to stringifyEntities() is a variable so it can be cached via a WeakMap.
I also hoisted a regex in comment.js. Didn't want to side-track the PR again, but it was only one instance 😬
At https://github.com/wooorm/stringify-entities/pull/13, I mentioned that it helped brought the execution time of toHtml to 2.38s. With this PR, I measured it to drop to 1.99s. Not as much as I expected, but perhaps every bit helps.

Thanks, released!


Relative Path

Hi.
I'm wondering do we have a way to handle relative path for images ?
imagine you have this folder:
.
├── README.md
├── img
│   └── figure-1.png

and this is the content of README.md file:
# Test

![image](img/figure-1.png)

the result of running mdsee README.md will be :

Hi @devmoath
This should be fixed with this commit. Try installing the newest version of mdsee and seeing if this resolves your issue!
npm install -g mdsee
mdsee README.md

yes it is. thank you


Agenda items for Dec. AIRR meeting

We have a good chunk of Sunday on the agenda for the WGs to meet. I know many of us are on multiple WGs, which makes it hard to do it all concurrently. Apparently the whole Tools and Resource WG only gets a 1/2 hour to present.
We should plan ahead of time, ya know, set a good example for the other WGs who you know will scrap it together at the last minute, or is it, we are so on top of things that we can whip it up on the fly, I tend to forget ;-D
Do we want to meet as a group? What do we want to present?

Best to my knowledge, this schedule is not finalized yet. As of 2017-11-07, Tools & Resource was supposed to have 45' overall presentation time, which would mean that Formats would get 10'+5' (as GLDB has a separate slot earlier in the afternoon).


Malware Detected in Windows Livebook

Environment

https://livebook.dev/releases/latest/LivebookInstall-latest-windows-x86_64.exe

Current behavior
Possible malware in windows distribution / download.
VirusTotal reports malware on the windows download with several different engines:

Avast Win32:TrojanX-gen [Trj]
AVG  Win32:TrojanX-gen [Trj]
Cyren W32/MSIL_Agent.BKJ.gen!Eldorado
Fortinet: PossibleThreat
McAfee-GW-Edition: Artemis

After installation, Windows 11 Defender also quarantines LivebookLauncher.exe
Trojan:Win32/Wacatac.H!ml
Full VirusTotal report here:
https://www.virustotal.com/gui/file/cd015f56e15324935ab89422cc3fdb9f2a195710a83f50e6fb3aa6db7846f3dd
Expected behaviour
Application free of malware.

Please see #1586. It is a false positive and We are working on addressing it.

Hey @ahacking, thanks again for the report. Just so you know, we have a new build that should fix it: https://livebook.dev/releases/nightly/LivebookInstall-nightly-windows-x86_64.exe. The build is made off of this branch: https://github.com/livebook-dev/livebook/pull/1641.


Look ahead is not support on KBL

Looks like look_ahead mode can't be support by KBL (but can support on SKL).
Would you please consider expose this limitaion in MFXVideoENCODE_Query() or support it on KBL+ platform?

ffmpeg -hwaccel qsv -c:v h264_qsv -i /root/Videos/bbb_sunflower_1080p_30fps_normal.mp4 -c:v h264_qsv -b:v 5M -look_ahead 1 output.mp4 -v verbose -y
ffmpeg version N-92731-g5c981ef745 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
configuration: --enable-libmfx --enable-libx264 --enable-gpl --disable-optimizations --enable-debug=3 --enable-vaapi --enable-sdl
libavutil      56. 24.101 / 56. 24.101
libavcodec     58. 42.103 / 58. 42.103
libavformat    58. 24.101 / 58. 24.101
libavdevice    58.  6.101 / 58.  6.101
libavfilter     7. 46.101 /  7. 46.101
libswscale      5.  4.100 /  5.  4.100
libswresample   3.  4.100 /  3.  4.100
libpostproc    55.  4.100 / 55.  4.100
[h264 @ 0x558c95c024c0] Reinit context to 1920x1088, pix_fmt: yuv420p
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/root/Videos/bbb_sunflower_1080p_30fps_normal.mp4':
Metadata:
major_brand     : isom
minor_version   : 1
compatible_brands: isomavc1
creation_time   : 2013-12-16T17:44:39.000000Z
title           : Big Buck Bunny, Sunflower version
artist          : Blender Foundation 2008, Janus Bager Kristensen 2013
comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
genre           : Animation
composer        : Sacha Goedegebure
Duration: 00:10:34.53, start: 0.000000, bitrate: 3481 kb/s
Stream #0:0(und): Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], 2998 kb/s, 30 fps, 30 tbr, 30k tbn, 60 tbc (default)
Metadata:
creation_time   : 2013-12-16T17:44:39.000000Z
handler_name    : GPAC ISO Video Handler
Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 160 kb/s (default)
Metadata:
creation_time   : 2013-12-16T17:44:42.000000Z
handler_name    : GPAC ISO Audio Handler
Stream #0:2(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 320 kb/s (default)
Metadata:
creation_time   : 2013-12-16T17:44:42.000000Z
handler_name    : GPAC ISO Audio Handler
Side data:
audio service type: main
Stream mapping:
Stream #0:0 -> #0:0 (h264 (h264_qsv) -> h264 (h264_qsv))
Stream #0:2 -> #0:1 (ac3 (native) -> aac (native))
Press [q] to stop, [?] for help
[AVHWDeviceContext @ 0x558c95c3e240] Opened VA display via X11 display :0.0.
[AVHWDeviceContext @ 0x558c95c3e240] libva: VA-API version 1.4.0
[AVHWDeviceContext @ 0x558c95c3e240] libva: va_getDriverName() returns 0
[AVHWDeviceContext @ 0x558c95c3e240] libva: User requested driver 'iHD'
[AVHWDeviceContext @ 0x558c95c3e240] libva: Trying to open /opt/mdsk_opensource/vaapi/lib/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x558c95c3e240] libva: Found init function __vaDriverInit_1_4
[AVHWDeviceContext @ 0x558c95c3e240] libva: va_openDriver() returns 0
[AVHWDeviceContext @ 0x558c95c3e240] Initialised VAAPI connection: version 1.4
[AVHWDeviceContext @ 0x558c95c3e240] VAAPI driver: Intel iHD driver - 1.0.0.
[AVHWDeviceContext @ 0x558c95c3e240] Driver not found in known nonstandard list, using standard behaviour.
[AVHWDeviceContext @ 0x558c95c2e540] Initialize MFX session: API version is 1.28, implementation version is 1.28
[AVHWDeviceContext @ 0x558c95c2e540] MFX compile/runtime API: 1.28/1.28
[AVHWDeviceContext @ 0x558c95dc64c0] VAAPI driver: Intel iHD driver - 1.0.0.
[AVHWDeviceContext @ 0x558c95dc64c0] Driver not found in known nonstandard list, using standard behaviour.
[graph 0 input from stream 0:0 @ 0x558c95e2ba80] w:1920 h:1080 pixfmt:qsv tb:1/30000 fr:30/1 sar:1/1 sws_param:flags=2
[h264_qsv @ 0x558c95c2ff00] Using the VBR with lookahead (LA) ratecontrol method
[h264_qsv @ 0x558c95c2ff00] MFMode:2
[AVHWDeviceContext @ 0x558c95cd1bc0] VAAPI driver: Intel iHD driver - 1.0.0.
[AVHWDeviceContext @ 0x558c95cd1bc0] Driver not found in known nonstandard list, using standard behaviour.
[AVHWDeviceContext @ 0x558c962a9900] VAAPI driver: Intel iHD driver - 1.0.0.
[AVHWDeviceContext @ 0x558c962a9900] Driver not found in known nonstandard list, using standard behaviour.
[h264_qsv @ 0x558c95c2ff00] Error initializing the encoder: unsupported (-3)
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
[AVIOContext @ 0x558c95c23140] Statistics: 0 seeks, 0 writeouts
[AVIOContext @ 0x558c95c09480] Statistics: 350943 bytes read, 2 seeks
Conversion failed!

I may be experiencing the same issue.  I'm using HandBrake as a frontend rather than ffmpeg, but symptoms are similar.  Enable lookahead, it fails to initialize. KBL CPU
Device ID 0x591B (i7-7700HQ)
gdb backtrace when error occurs
(gdb) bt
#0  0x00007ffff5e6f53f in __GI_raise (sig=sig@entry=6)
    at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007ffff5e59895 in __GI_abort () at abort.c:79
#2  0x00007ffff5e59769 in __assert_fail_base
    (fmt=0x7ffff5fc0e90 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x7fffce711714 "!\"CmRuntimeError\"", file=0x7fffce7116b8 "/home/jstebbins/Source/MediaSDK/_studio/mfx_lib/encode_hw/h264/include/mfx_h264_encode_cm.h", line=65, function=<optimized out>) at assert.c:92
#3  0x00007ffff5e679f6 in __GI___assert_fail
    (assertion=0x7fffce711714 "!\"CmRuntimeError\"", file=0x7fffce7116b8 "/home/jstebbins/Source/MediaSDK/_studio/mfx_lib/encode_hw/h264/include/mfx_h264_encode_cm.h", line=65, function=0x7fffce711e00 <MfxHwH264Encode::CmRuntimeError::CmRuntimeError()::__PRETTY_FUNCTION__> "MfxHwH264Encode::CmRuntimeError::CmRuntimeError()") at assert.c:101
#4  0x00007fffce57e8ad in MfxHwH264Encode::CmRuntimeError::CmRuntimeError()
    (this=0x7fffc8007910)
    at /home/jstebbins/Source/MediaSDK/_studio/mfx_lib/encode_hw/h264/include/mfx_h264_encode_cm.h:65
#5  0x00007fffce609b26 in MfxHwH264Encode::CmContext::Setup(MfxHwH264Encode::MfxVideoParam const&, CmDevice*, VideoCORE*) (this=0x7fffc8b42b50, video=...,
    cmDevice=0x7fffc80e0740, core=0x7fffc80b4670)
    at /home/jstebbins/Source/MediaSDK/_studio/mfx_lib/encode_hw/h264/src/mfx_h264_encode_cm.cpp:848
#6  0x00007fffce6098d7 in MfxHwH264Encode::CmContext::CmContext(MfxHwH264Encode::MfxVideoParam const&, CmDevice*, VideoCORE*)
    (this=0x7fffc8b42b50, video=..., cmDevice=0x7fffc80e0740, core=0x7fffc80b4670)
    at /home/jstebbins/Source/MediaSDK/_studio/mfx_lib/encode_hw/h264/src/mfx_h264_encode_cm.cpp:831
#7  0x00007fffce570c8f in MfxHwH264Encode::ImplementationAvc::Init(mfxVideoParam*) (this=0x7fffc8103f40, par=0x7fffc80b0010)
    at /home/jstebbins/Source/MediaSDK/_studio/mfx_lib/encode_hw/h264/src/mfx_h264_encode_hw.cpp:1049
#8  0x00007fffce56d214 in MFXHWVideoENCODEH264::Init(mfxVideoParam*)
    (this=0x7fffc80e0970, par=0x7fffc80b0010)
    at /home/jstebbins/Source/MediaSDK/_studio/mfx_lib/encode_hw/h264/src/mfx_h264_encode_hw.cpp:188
#9  0x00007fffce316f65 in MFXVideoENCODE_Init(mfxSession, mfxVideoParam*) (
    session=0x7fffc80b4498, par=0x7fffc80b0010)
    at /home/jstebbins/Source/MediaSDK/_studio/mfx_lib/shared/src/libmfxsw_encode.cpp:707
#10 0x00000000027fa63f in MFXVideoENCODE_Init(mfxSession, mfxVideoParam*)
--Type <RET> for more, q to quit, c to continue without paging--
    (session=0x7fffc80b4498, par=0x7fffc80b0010)
    at src/mfx_exposed_functions_list.h:62
#11 0x00000000004bc66a in encqsvInit (w=0x7fffc8006110, job=0x7fffc80235d0)
    at ../libhb/enc_qsv.c:1118
#12 0x00000000004a7e44 in do_job (job=0x7fffc80235d0) at ../libhb/work.c:1758
#13 0x00000000004a491b in work_func (_work=0x4678130) at ../libhb/work.c:154
#14 0x000000000046f829 in hb_thread_func (_t=0x5619180) at ../libhb/ports.c:870
#15 0x00007ffff73fa58e in start_thread (arg=<optimized out>)
    at pthread_create.c:486
#16 0x00007ffff5f346a3 in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

So, I've figured out my particular problem after reproducing this in various ways.   And at least one way to configure things that really ought to work, but doesn't :wink:
My goal was to produce a flatpak plugin with a clean set of compatible components. The flatpak plugin built correctly and actually contains all compatible components, but I used the "MSS KBL 2019 R1" release from https://github.com/VCDP/media-driver (basically the top release on the releases page with some corrections since it doesn't actually build with the listed dependencies https://github.com/Intel-Media-SDK/MediaSDK/releases).  This branch produces an unversioned igfxcmrt64.so.  The flatpak environment sets up ld.so.cache correctly to find shared objects associated with the plugin, but the unversioned lib doesn't get cached, so is not found when the application is run. Pulling in the commit that added versioning to this lib and using a MediaSDK version that dlopens with the new libigfxcmrt64.so name fixes this particular glitch.
I was also trying to debug this outside the flatpak sandbox.  Various configuration errors resulted in the same symptoms.  So double and triple check configuration :wink"
I also tried the next release down in the list after figuring out the root cause(s) of my problem. It worked without issue.  It appears to announce the same capabilities as the MSS KBL release when queried.  So now I'm wondering, what distinguishes these releases.  The release notes of MSS KBL list several new features, but it appears that 18.4.1 advertises it has these features as well.

Media Server Studio releases validated against patched version of i915 KMD which published at https://github.com/VCDP/linux-kmd/ on a limited set of platforms comparing to quarterly releases. Release "MSS KBL 2019 R1" are essentially 18.3**.2** which validated on patched 4.19 and only on KBL platform.

Good to know, thanks.  This is working great now on linux in a flatpak sandbox using 18.4.1.

Verified it can work now


fix(sql): replace Mutex with RwLock to enable concurrent SQL execution

When using a Mutex, the MutexGuard will be held until the SQL execution is complete before it is dropped, which is unnecessary and prevents the concurrency capability of the SQL.
Resolves #1935 .

thank you! please also add a changefile similar to https://github.com/tauri-apps/plugins-workspace/blob/30bcf5dcc22e1bb1fb983a8d2887edc39404e6df/.changes/feat-multiple-sql-backends.md

Wow thank you for this fix!


Mentions with special characters

In other languages than english, people may have accents or other special characters in their name.
It would be great to be able to search for people regardless of accents when using the @mention feature.
For example, If I type @gael, I would expect to see as a suggestion gaël, however currently it does not appear in the list.
I'm not sure which version of zulip our organization is using, I did not see it in the UI.

@edi9999 thanks for the report!  I don't think we've had something similar reported in the past, so I assume this bug exists in master as well.
If I recall correctly, I think we handle this issue by normalizing such characters in other places in our typeahead (e.g. the right sidebar search) -- can you confirm if that works for you?  If so, we'll just need to port that fix to the compose mention typeahead as well.  If not the solution may be more work, but in any case, it seems like something we should be doing.

Yes, in the users "Search people" sidebar, I can search for "gael" and still find "Gaël" for example.

people.person_matches_query is the function that does the diacritic removal. I think we need to change query_matches_person to make use of this function.
@shubham-padia do you have time to do a quick look at this?  Might not be very complicated.


Time wrong (after my macbook slept)

Here are some relevant lines from my iex session (with the latest release, 1.0.0-rc3) after waking my macbook. Was working fine yesterday. The time reported by :calendar is correct.
iex(16)> :calendar.local_time
{{2015, 12, 8}, {7, 39, 9}}

iex(17)> :calendar.universal_time
{{2015, 12, 8}, {15, 39, 15}}

iex(18)> Timex.Date.now
%Timex.DateTime{calendar: :gregorian, day: 8, hour: 3, minute: 1, month: 12,
 ms: 693, second: 43,
 timezone: %Timex.TimezoneInfo{abbreviation: "UTC", from: :min,
  full_name: "UTC", offset_std: 0, offset_utc: 0, until: :max}, year: 2015}

iex(19)> Timex.Date.now("PST")
%Timex.DateTime{calendar: :gregorian, day: 7, hour: 19, minute: 2, month: 12,
 ms: 809, second: 6,
 timezone: %Timex.TimezoneInfo{abbreviation: "PST",
  from: {:sunday, {{2015, 11, 1}, {1, 0, 0}}}, full_name: "America/Dawson",
  offset_std: 0, offset_utc: -480,
  until: {:sunday, {{2016, 3, 13}, {2, 0, 0}}}}, year: 2015}

iex(20)> Timex.Date.local
%Timex.DateTime{calendar: :gregorian, day: 7, hour: 19, minute: 2, month: 12,
 ms: 865, second: 13,
 timezone: %Timex.TimezoneInfo{abbreviation: "PST",
  from: {:sunday, {{2015, 11, 1}, {1, 0, 0}}}, full_name: "America/Los_Angeles",
  offset_std: 0, offset_utc: -480,
  until: {:sunday, {{2016, 3, 13}, {2, 0, 0}}}}, year: 2015}

iex(21)> :calendar.local_time
{{2015, 12, 8}, {7, 40, 9}}

iex(22)> :calendar.universal_time
{{2015, 12, 8}, {15, 40, 16}}

I'm planning to use this workaround to get the correct Timex.DateTime in PST:
:calendar.universal_time |> Timex.Date.from("PST")

I'm really glad you discovered this! Timex was using :erlang.system_time instead of :os.system_time, the difference being of course that :erlang.system_time is the VM's system time, not the OS, so sleeping suspends the clock until it catches up.

The fix is in master by the way, I'll push a new release soon.

Awesome, that was quick! Thank you for all your work on this library :+1:

Also want to make sure you don't miss the second issue regarding Timex.Date.from/2 (converting from erlang time into a timezone directly)