Draft.js + Meteor + iframe causes node instanceof Element to return false

Do you want to request a feature or report a bug?
Bug
What is the current behavior?
When creating a React application using Meteor and DraftJs, trying to render the Editor and make any change will cause the checks for node instanceof Element and node instanceof HTMLElement to return false and prevent the use of draft.js.
Since Meteor compiles scripts and import them in the current window, draft.js Element is the global Element, however, the obtained node by ReactDOM.findNode was created using the iframe's Element constructor. Instanceof implementation suggest using this line rather than accessible Element directly.
myNode instanceof myNode.ownerDocument.defaultView.SVGElement
This can be seen there for example : https://github.com/facebook/draft-js/blob/788595984da7c1e00d1071ea82b063ff87140be4/src/component/contents/DraftEditorTextNode.react.js#L84
This is consistent across the tested browser and is probably caused by the fact that draft.js uses the global Element, which is loaded as the global window Element when the script is first imported, rather than the current window Element.
This was also tested using a standard iFrame with injecting HTML, an iFrame with portals and react-frame-component.
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem. You can use this jsfiddle to get started: https://jsfiddle.net/stopachka/m6z0xn4r/.
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
import PropTypes from 'prop-types';

import Frame from 'react-frame-component';
import {
  convertToRaw,
  CompositeDecorator,
  ContentState,
  Entity,
  Editor,
  EditorState,
  EntityInstance,
  RichUtils,
} from 'draft-js';

class PageHome extends Component {
	constructor(props) {
		super(props);
		this.state = {
			editorState: EditorState.createEmpty()
		};
	}

	onChange = (editorState) => {
		this.setState({editorState});
	}

    render() {
        return (
           <div className="container" style={{padding:10}}>
        	<Frame>
		    <Editor editorState={this.state.editorState} onChange={this.onChange}/>
		</Frame>
           </div>
        );
    }
}

When doing this, the following error is caused in the console when writing in the editor :

What is the expected behavior?
Draft.js should probably not rely on the Element global or the window/document globals for its code. In this case, draft.js should behave like usual when added inside an iframe.
Maybe replace this with an implementation similar to lodash's isElement could also fix this issue, but it has been stated before that iframes are unlikely to be supported in #527. This is also specific to meteor's compiling, but may cause problem for other js compiled and minifiers.
Which versions of Draft.js, and which browser / OS are affected by this issue? Did this work in previous versions of Draft.js?
Tested in version 0.10.5,
Tested with Chrome, Firefox and Microsoft Edge, all latest versions.
I had not tested it with earlier version of draft-js as NPM always install the latest version.

I have somewhat fixed the issue on my end with these commits
https://github.com/Minivera/draft-js/commits/master
Unfortunately, React's event are unable to trasmit onSelect event to components inside iFrame. Some packages fixes that though : https://www.npmjs.com/package/react-frame-aware-selection-plugin

Hi @Minivera -
I don't know yet if Draft.js and React will fully support selection and editing behavior within iframes, via #765 and also https://github.com/facebook/react/pull/9184
The most correct thing is, like you suggested, to "not rely on the Element global or the window/document globals for its code" but we have not had this come up often as a problem and making the change could add complexity to Draft and/or React.
This seems like potentially a duplicate of https://github.com/facebook/draft-js/issues/527 or is there some part of this error that isn't related to using an iframe? I haven't used Meteor so it could be helpful if you explain more about how that is affecting the situation.

Hi,
IFrames are a very specific behavior of the application I am building and I unfortunately cannot remove it, I try to work around it as I understand this is an edge case both for React and Draft.js.
I first thought this was a Meteor issue since Meteor dynamically imports packages in a compiled js file. This means that script files could not be imported inside the iframe's code without creating a new application. I though this might have been a specific case as something like this worked when I tested with a non-meteor application, but failed in a meteor application. While Meteor is part of my error, the core of the issue is most likely a duplicate of #527.
I am far from the level of any facebook programmer, but I have changed all instances of document, window or global to something similar to :
var doc = node.ownerDocument.documentElement || document;
Not having the || document caused the unit tests to fail, something the solution in #765 did cause on my end when running npm run test. With the onSelect plugin I linked in my second comment, this did the trick, though I may still run into bugs as I test further.
If I may, I will stay on my fork for now as the application must be deployed pretty soon, but do you know if a solution similar to the PR #765 is likely to be implement in the near future?
Thank you


Do not include test-data/ in published isal-rs crates

This PR excludes test-data/ for published isal-rs crates for several reasons:

In practice, this test corpus is only used for the benchmarks, which are already not distributed in the crate – the tests are unaffected by omitting it.
Some of the contents are subject to complicated or unclear license terms, which is an issue for those (such as distribution packagers) who would need to redistribute the source archive (.crate file).
Omitting the test data makes the released crates vastly smaller (13K instead of 986K).

Thank you. 👍


[Feature]: Switch off the MP II if nothing to do

Contact Details
No response
Description
Hi,
Let's say the battery have reached the needed level and power from grid is cheap -> why is the MP II still on?

The MP II could be off / deep sleep mode until there is something to do.
The price is low until 8 AM and the MP II takes power for nothing:

Thx
Suggested Solution
The MP II could be off / deep sleep mode until there is something to do.
Alternatives
No response
Additional Context
No response

During that time was the MP2 not needed but still running ... why?


Thoughts about Rapier's builtin Character controller

I just discovered that Rapier has an existing implementation for character control https://rapier.rs/docs/user_guides/javascript/character_controller
what do you think about using it for this project?

I don't think that is rigibody controller

I don't think that is rigibody controller

what do you think of these rigid body references

That’s a kinematic body, not a force-based rigid body.
If you prefer the default controller, you can follow this site:
https://sketches.isaacmason.com/sketch/rapier/kinematic-character-controller


Error rendering YAML configuration files with lists in them

Hi, I´m trying to display a YAML file in the server HTML interface and got this error whenever I use a list.
For instance, this YAML:
info:
   description: ESPA Microwave Collector

collector:
   batch:
      jobs:
         - name: my_batch_job
           clazz: com.example.myclazz
           query: select  sql here
           parameters:
             - from
             - to

Generates this error in the web interface:
This page contains the following errors:

error on line 1 at column 425: error parsing attribute name
Below is a rendering of the page up to the first error.

However, one important point here, is that these properties are properly passed to the clients subscribed to this config server.
Also, if I remove the list part, the rest of the file is rendered just fine (the usual XML format is shown).
I´m using Brixton.SR7
See this StackOverflow question:
http://stackoverflow.com/questions/42362262/can´t-use-sequences-lists-in-yaml-with-spring-cloud-config
Cheers,
Victor

Please try an avoid cross posting issues.
If config clients are receiving the properties properly I am not use why you think this is a problem with the config server.2

Hi @ryanjbaxter,
What do you mean by "cross posting issues"?
OK, clients are receiving the configuration but the rendering provided by the config server does not work (hence the title of the issue). I agree this is not a critical functionality of the server, but in any case is a part of the server nonetheless (a part that I think is quite useful). Don´t you think?
Thanks!

Mm, I posted it a couple of weeks ago and it has not received much attention, but don´t worry, I will close it if  I get this one closed too :)
Sure, these are two examples of request made on my browser:

This one works without any issue, as the YAML file called "cem-skpi-consumer.yml" in the Git repo does not contain lists:

http://[...]:8090/admin/config/cem-skpi-consumer/master/master
The resulting XML shown in the browser:
<Environment>
<name>cem-skpi-consumer</name>
<profiles>
<profiles>master</profiles>
</profiles>
<label>master</label>
<version>691383a955222aab13a70581404a6f75730a8cb4</version>
<propertySources>
<propertySources>
<name>
https://bitbucket.platform.dev.sdt.ericsson.se/scm/ea/edos-dp-configuration.git/cem-skpi-consumer.yml

Then, this one, with the YAML displayed above:
http://[...]:8090/admin/config/cem-skpi-collector/master/master
Shows this error:
This page contains the following errors:

error on line 1 at column 406: error parsing attribute name
Below is a rendering of the page up to the first error.

I don´t get anything in the process output, though-

I'm confused about which config server url you are calling. There is no "server HTML interface".
From your comment above it looks like the normal interface the config client calls (though it should return json, not xml).
If I plug the snippet of yaml from your first comment into a repo and run config server I get the following:
{
  "name": "haslists",
  "profiles": [
    "default"
  ],
  "label": "master",
  "version": "88ff901bae6830724186dd8a4f7cdaf67443cd8b",
  "state": null,
  "propertySources": [
    {
      "name": "https://github.com/spring-cloud-samples/config-repo/haslists.yml",
      "source": {
        "info.description": "ESPA Microwave Collector",
        "collector.batch.jobs[0].name": "my_batch_job",
        "collector.batch.jobs[0].clazz": "com.example.myclazz",
        "collector.batch.jobs[0].query": "select  sql here",
        "collector.batch.jobs[0].parameters[0]": "from",
        "collector.batch.jobs[0].parameters[1]": "to"
      }
    }
  ]
}

So either it's already fixed in a newer version, or it's specific to your application and dependencies.

I pulled the last version and indeed works, It´s weird because now JSON is displayed instead of XML.
Anyway, thanks for looking into this.


Projects page

The idea is to group the contracts that are related to each other in a project that has the total billing rate of three contracts, a delete button, and so on...
Suggestion
Approach 1
add a new field on the contract's metadata to point to the related workloads.

vms -> add network_name
k8s -> add network_name
gateways -> add vm_name

Approach 2
Update the projectName  (used in the gridClient as a namespace) to have the solution's type and the instance's name. For example: if we have the solution's type taiga and the instance's name is test, the projectName should be taiga_test.

This will guarantee that each instance has its own namespace and the contracts are grouped together.
But the listing in the solution's page will need to be changed to group the namespaces that start with the same key instead of the full key of the namespace.

Remarks

When deleting a project, we should check the dependencies, and if the workload is used by other workloads, we shouldn't allow the deletion or we can delete with warnings.
Both approaches need to migrate the listing from the kvstore to use contracts' metadata to not do the migration twice.

Related issues

#1055
#23

applied the new path on machines but an error happen while deploying k8s

working on fixing it

Read but blocked until merging https://github.com/threefoldtech/tfgrid-sdk-ts/pull/1215


Emulator nightly does not work on macos mojave - 10.14.1

Version
4.1.45039 (latest nightly)
Describe the bug
Emulator installs but fails to launch with the following error
Process:               Bot Framework Emulator [1760]
Path:                  /Applications/Bot Framework Emulator.app/Contents/MacOS/Bot Framework Emulator
Identifier:            F3C061A6-FE81-4548-82ED-C1171D9856BB
Version:               4.1.0 (<IP_ADDRESS>039)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Bot Framework Emulator [1760]
User ID:               501
Date/Time:             2018-12-07 11:04:54.817 -0800
OS Version:            Mac OS X 10.14.1 (18B75)
Report Version:        12
Bridge OS Version:     3.1 (16P1065)
Anonymous UUID:        7A2675C9-CCBB-C3B0-7EB4-7087ACA9C460
Sleep/Wake UUID:       48FF2070-25B1-401B-8C27-F0C85B88E0E3
Time Awake Since Boot: 5100 seconds
Time Since Wake:       65 seconds
System Integrity Protection: enabled
Crashed Thread:        0
Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY
Termination Reason:    DYLD, [0x1] Library missing
Application Specific Information:
dyld: launch, loading dependent libraries
Dyld Error Message:
Library not loaded: @rpath/Electron Framework.framework/Electron Framework
Referenced from: /Applications/Bot Framework Emulator.app/Contents/MacOS/Bot Framework Emulator
Reason: image not found
Binary Images:
0x1076eb000 -        0x1076ebff7 +F3C061A6-FE81-4548-82ED-C1171D9856BB (4.1.0 - <IP_ADDRESS>039) <5D51F11B-3CC9-3193-BD67-27427F5B22BA> /Applications/Bot Framework Emulator.app/Contents/MacOS/Bot Framework Emulator
0x115956000 -        0x1159d46a7  dyld (635.2) <1780094A-8FE2-3EAA-B4A3-C4CF14BC5196> /usr/lib/dyld
0x7fff2d49e000 -     0x7fff2d5a8ff3  com.apple.Bluetooth (6.0.9 - 6.0.9f2) <0EDECAF3-FF86-3F7D-B916-2D7E67FF67AE> /System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth
Model: MacBookPro15,1, BootROM <IP_ADDRESS>.0 (iBridge: 16.16.1065.0.0,0), 6 processors, Intel Core i7, 2.2 GHz, 32 GB, SMC
Graphics: Intel UHD Graphics 630, Intel UHD Graphics 630, Built-In
Graphics: Radeon Pro 555X, Radeon Pro 555X, PCIe
Memory Module: BANK 0/ChannelA-DIMM0, 16 GB, DDR4, 2400 MHz, Micron, 16ATS2G64HZ-2G6B1 16ATS2G64HZ-2G6B1
Memory Module: BANK 2/ChannelB-DIMM0, 16 GB, DDR4, 2400 MHz, Micron, 16ATS2G64HZ-2G6B1 16ATS2G64HZ-2G6B1
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x7BF), wl0: Sep 18 2018 16:24:57 version <IP_ADDRESS>.32.6.21 FWID 01-83a3fe91
Bluetooth: Version 6.0.9f2, 3 services, 27 devices, 1 incoming serial ports
Network Service: Wi-Fi, AirPort, en0
USB Device: USB 3.1 Bus
USB Device: iBridge Bus
USB Device: iBridge DFR brightness
USB Device: iBridge Display
USB Device: Apple Internal Keyboard / Trackpad
USB Device: Headset
USB Device: iBridge ALS
USB Device: iBridge FaceTime HD Camera (Built-in)
USB Device: iBridge
Thunderbolt Bus: MacBook Pro, Apple Inc., 34.6
Thunderbolt Bus: MacBook Pro, Apple Inc., 34.6
[bug]

Also there are two mac dmg files in the nightly build. both fail to launch. We should clean up the list so there is only set of installers for mac.

Build 4.1.44959 installs and works on my mac.

parallels@parallels-Parallels-Virtual-Platform:~/Downloads$ chmod a+x ./BotFramework-Emulator-4.1.45039-linux-x86_64.AppImage
parallels@parallels-Parallels-Virtual-Platform:~/Downloads$ ./BotFramework-Emulator-4.1.45039-linux-x86_64.AppImage
{"name":"Emulator","hostname":"parallels-Parallels-Virtual-Platform","pid":3538,"level":40,"msg":"DEPRECATION WARNING: Due to deprecation of the domain module in node.js, all features in restify that depend on it have been deprecated as well. This includes handleUncaughtExceptions and next.ifError(). They will continue to work in 5.x, but consider them unsupported and likely to be removed from future versions of restify.","time":"2018-12-07T19:36:40.928Z","v":0}
{"name":"Emulator","hostname":"parallels-Parallels-Virtual-Platform","pid":3538,"level":40,"msg":"DEPRECATION WARNING: Due to deprecation of the domain module in node.js, all features in restify that depend on it have been deprecated as well. This includes handleUncaughtExceptions and next.ifError(). They will continue to work in 5.x, but consider them unsupported and likely to be removed from future versions of restify.","time":"2018-12-07T19:36:40.928Z","v":0}
Failed to read file<EMAIL_ADDRESS>{ Error: ENOENT: no such file or directory, stat<EMAIL_ADDRESS>at fs.statSync (fs.js:954:11)
at Object.fs.statSync (ELECTRON_ASAR.js:295:16)
at Object.statSync (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/graceful-fs/polyfills.js:297:22)
at loadSettings (/tmp/.mount_BotFraOiHY3a/resources/app.asar/app/server/utils/loadSettings.js:57:21)
at getStore (/tmp/.mount_BotFraOiHY3a/resources/app.asar/app/server/settingsData/store.js:67:53)
at NgrokService.cacheSettings (/tmp/.mount_BotFraOiHY3a/resources/app.asar/app/server/ngrokService.js:221:43)
at NgrokService.startup (/tmp/.mount_BotFraOiHY3a/resources/app.asar/app/server/ngrokService.js:96:10)
at Emulator.startup (/tmp/.mount_BotFraOiHY3a/resources/app.asar/app/server/emulator.js:74:22)
at
at process._tickDomainCallback (internal/process/next_tick.js:228:7)
errno: -2,
code: 'ENOENT',
syscall: 'stat',
path<EMAIL_ADDRESS>}
The preloadedState argument passed to createStore has unexpected type of "Object". Expected argument to be an object with the following keys: "azure", "framework", "bots", "windowState", "users"
Error reading file<EMAIL_ADDRESS>Error: ENOENT: no such file or directory, stat<EMAIL_ADDRESS>The previous state received by the reducer has unexpected type of "Object". Expected argument to be an object with the following keys: "azure", "framework", "bots", "windowState", "users"
Adding extension JSON
Adding extension LUIS
Adding extension QNAMaker
(node:3538) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): There was an error while checking for the latest update: Error: Cannot find latest-linux.yml in the latest release artifacts (https://github.com/Microsoft/BotFramework-Emulator/releases/download/v3.5.37/latest-linux.yml): HttpError: 404 Not Found
"method: undefined url: https://github.com/Microsoft/BotFramework-Emulator/releases/download/v3.5.37/latest-linux.yml\n\nPlease double check that your authentication token is correct. Due to security reasons actual status maybe not reported, but 404.\n"
Headers: {
"cache-control": [
"no-cache"
],
"content-encoding": [
"gzip"
],
"content-security-policy": [
"default-src 'none'; base-uri 'self'; connect-src 'self'; form-action 'self'; img-src 'self' data:; script-src 'self'; style-src 'unsafe-inline'"
],
"content-type": [
"text/plain; charset=utf-8"
],
"date": [
"Fri, 07 Dec 2018 19:40:04 GMT"
],
"expect-ct": [
"max-age=2592000, report-uri="https://api.github.com/_private/browser/errors\""
],
"server": [
"GitHub.com"
],
"set-cookie": [
"has_recent_activity=1; path=/; expires=Fri, 07 Dec 2018 20:40:04 -0000",
"logged_in=no; domain=.github.com; path=/; expires=Tue, 07 Dec 2038 19:40:04 -0000; secure; HttpOnly",
"_gh_sess=VXFLd0VBMHNOaEsrbDdQd0hOTEZ5TUYvS1gyd3BrSFYrZ1Fvb2hnQ0NyN3FvZ1UrMWxjdmVFdWZQMVA2SnVMUTVCRlo3M2lCTFZ1MVJwMSs3RXV6S0l1ZGZKaGFMMEVtZXNsQjVZOXJSNHE3QVBOdXFyZHM3S0xLa2h4ZEZBMzZKMTJuSGI0SFZBRFM0K0E1dk9od1FGemZ1Q0RZb3R6OTV1UHN0dXRBQTl4TGtGZ3I1WHJUdEVuSHNJMTFpT0xYMFJtVFBHZjM2OE1TTkNlRnBCWldZQT09LS03OFhHUk5IOXNEanV2ZmdDRzZPam13PT0%3D--7be177e97bf6e0c878eb632b7cf5fc4ef304f048; path=/; secure; HttpOnly"
],
"status": [
"404 Not Found"
],
"strict-transport-security": [
"max-age=31536000; includeSubdomains; preload"
],
"transfer-encoding": [
"chunked"
],
"vary": [
"X-PJAX"
],
"x-content-type-options": [
"nosniff"
],
"x-frame-options": [
"deny"
],
"x-github-request-id": [
"A3D2:0943:D8174:148987:5C0ACC94"
],
"x-request-id": [
"64590072-fab2-4e7e-bdf8-17fbf438d021"
],
"x-xss-protection": [
"1; mode=block"
]
}
at createHttpError (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/builder-util-runtime/src/httpExecutor.ts:32:10)
at ElectronHttpExecutor.handleResponse (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/builder-util-runtime/src/httpExecutor.ts:130:14)
at ClientRequest.request.doRequest.response (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/builder-util-runtime/src/httpExecutor.ts:87:16)
at emitOne (events.js:116:13)
at ClientRequest.emit (events.js:211:7)
at URLRequest.ClientRequest.urlRequest.on (/tmp/.mount_BotFraOiHY3a/resources/electron.asar/browser/api/net.js:207:12)
at emitOne (events.js:116:13)
at URLRequest.emit (events.js:211:7)
From previous event:
at CancellationToken.createPromise (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/builder-util-runtime/src/CancellationToken.ts:51:12)
at ElectronHttpExecutor.doApiRequest (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/builder-util-runtime/src/httpExecutor.ts:84:30)
at ElectronHttpExecutor.request (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/builder-util-runtime/src/httpExecutor.ts:74:17)
at /tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/providers/GitHubProvider.ts:74:38
From previous event:
at GitHubProvider.getLatestVersion (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/providers/GitHubProvider.ts:35:25)
at /tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/AppUpdater.ts:345:25
at Generator.next ()
at runCallback (timers.js:789:20)
at tryOnImmediate (timers.js:751:5)
at processImmediate [as _immediateCallback] (timers.js:722:5)
From previous event:
at AppImageUpdater.getUpdateInfo (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/AppUpdater.ts:335:32)
at /tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/AppUpdater.ts:349:35
at Generator.next ()
From previous event:
at AppImageUpdater.doCheckForUpdates (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/AppUpdater.ts:348:34)
at /tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/AppUpdater.ts:287:25
at Generator.next ()
at runCallback (timers.js:789:20)
at tryOnImmediate (timers.js:751:5)
at processImmediate [as _immediateCallback] (timers.js:722:5)
From previous event:
at AppImageUpdater._checkForUpdates (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/AppUpdater.ts:282:33)
at AppImageUpdater.checkForUpdates (/tmp/.mount_BotFraOiHY3a/resources/app.asar/node_modules/electron-updater/src/AppUpdater.ts:221:35)
at Object.checkForUpdates (/tmp/.mount_BotFraOiHY3a/resources/app.asar/src/appUpdater.ts:161:29)
at Object.checkForUpdates [as startup] (/tmp/.mount_BotFraOiHY3a/resources/app.asar/src/appUpdater.ts:144:12)
at BrowserWindow.startup (/tmp/.mount_BotFraOiHY3a/resources/app.asar/src/main.ts:393:16)
at Object.onceWrapper (events.js:315:30)
at emitOne (events.js:116:13)
at BrowserWindow.emit (events.js:211:7)
(node:3538) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Broken mac build appears to be transient, I published a new nightly build and it seems to be working
Fixed the duplicate mac artifact issue
Was unable to repro the hanging launch issue on Ubuntu 64-bit 18.0.4. Even deleting the server.json and relaunching the app was unable to repro


How to write code that agnostically targets SSE, NEON and AVX in xsimd 8

Hey everyone!
We noticed that the second template argument of xsimd::batch was changed from the width to the target architecture from version 7.x to 8.
This raises a few questions:

Does the runtime dispatching still work? The target architecture is specified at compile time, so how is this compatible with the runtime-dispatching approach?
Suppose you have a program that is written with batches of width 4 in mind. How do you make sure this code correctly compiles and runs on platforms supporting SSE4.2, NEON (ARM) and AVX? If you rely on the automatic architecture detection, switching from SSE4.2 to AVX will break the code (when using xsimd::hadd for example). If you try to circumvent this by specifying the architecture by saying xsimd::batch<float, xsimd::sse4_2>, it won't compile on ARM/with NEON. So what would the approach here be?

Thanks!

The following snippet extracts the best type to hold 4 floats among the available architectures (and dumps the architecture on stdout)
#include <xsimd/xsimd.hpp>

namespace details {
template<class ArchList>
struct batch4f;

template<>
struct batch4f<xsimd::arch_list<>> {
  using type = void;
};

template<class Arch, class... Archs>
struct batch4f<xsimd::arch_list<Arch, Archs...>> {
  using type = typename std::conditional<
    xsimd::batch<float, Arch>::size == 4,
    xsimd::batch<float, Arch>,
    typename batch4f<xsimd::arch_list<Archs...>>::type>::type;
};
}

using batch4f = typename details::batch4f<xsimd::supported_architectures>::type;

#include<iostream>
int main() {
  std::cout << batch4f::arch_type::name() << std::endl;
  return 0;
}

@JohanMabille It may be worth providing such aliases in the core library.

Thanks, this looks great! Correct me if I'm wrong though - this only resolves the type at compile time, right?
The doc states

"xsimd makes it easy to write a single algorithm, generate one version of the algorithm per micro-architecture and pick the best one at runtime, based on the running processor capability."

So how does the runtime dispatching come into play here then? I don't really understand the point or the mechanics of specifying an architecture at compile them if the library is supposed to pick the "best intrinsics" at runtime?

@JohanMabille It may be worth providing such aliases in the core library.

Agreed.

@boris-kuz  Would you mind contrributing your solution to xsimd?

Yeah sure! I'll do it first thing on Monday :)


updated kube-dashboard to the version 1.1.0

@redhat-k8s-bot test please

@Trane9991 once you get cla: yes, I will merge.

i signed it

Thanks!!!


IDEA

Hello! First off I like your mod. Its simple and easy to use and it has server support which is nice for our server. This posting isn't an issue but please hear me out. The mod page said Ideas could be shared on the github repository but I didn't find any links for sharing Ideas so forgive me if I'm doing this wrong.
My idea is all about Movement within the game. I've been searching for a mod that allows for climbing up blocks. I'm not talking about climbing fences or magically climbing 5,8,10 blocks like some recent mods. Instead I'm talking about a 'grab' button for climbing up 2 blocks without jumping and Vaulting 3 blocks high with a 'jump'>'grab'. I loved the mod Smart Moving and that's basically what I'm suggesting... https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/1274224-smart-moving
Anyways thanks for reading!

It is a good idea. I might implement it some day, but as a separate mod (it will probably be called Climb)


configure slave namespace on a per job basis

We're going to start defaulting to launch pods in the same namespace as the jenkins master, and allow users to continue to override that value via the jenkins global config, but we're also going to want users to be able to configure the slave namespace at a per job level instead of only at the global config level.
(sorry if you have 3 versions of this issue now, github appears to keep eating them when i open them)

Dupe.

can you point me to the dupe?

oh. i see my other 2 issues finally showed up.


Using kubectl to Create a Deployment

The image does not support arm system

/language en
page: https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/

Thanks for reporting this, but this is a duplicate of https://github.com/kubernetes/website/issues/45420 and falls under the umbrella effort being tracked with https://github.com/kubernetes/website/issues/45822.
If you can help there, contributions are very welcome. If you would just like to track it, you can subscribe to get notifications for any updates to #45822.
/close


[v13] Error when disableSSR: true

TypeError: Cannot read property 'Symbol(Symbol.iterator)' of null
    at ServerHTML (../build/server/webpack:/server/middleware/reactApplication/ServerHTML.js:77:8)

it happens because of
 ...onlyIf(helmet, () => helmet.meta.toComponent()),

Duplicate of #362
Thank you for the bug report but please search the issues before you post one, also please post questions to Stack Overflow as I have see you have been posting them as well.

@mschipperheyn, just to follow up on what @birkir is saying...
We are super appreciative of your interest in this project and don't want you to feel like we are pushing you away into Stack Overflow 😀. However we are a very small team many of us with families and other commitments so using the issues list as a platform for general questions on technologies/implementation is probably not the best place as it increases our management overhead and we can't guarantee that you would be answered in a respectable amount of time.  I would like us to try and keep the issues list for the following:

bug reports
feature requests
raising concerns/recommendations about current implementation
raising concerns/recommendations about documentation/comments

The above being said, I can appreciate we don't communicate this to everyone anywhere. I think considering this project has started to get an expansive audience it is probably up to us to create a template for issues so that everyone is informed up front on the above.
Also, if you aren't sure if a question belongs in Stack Overflow or here then please don't be afraid to post it here.  I certainly don't want to create a "fear to ask for help" culture, I only ask that we all be mindful that this is an open source project being run by time donated from us all so any and all help is appreciated.  😀

yeah, ok sorry. I'd be happy to ask on SO, I just couldn't find a react-universally tag there, so when I think  it might be platform specific, I ask it here.

Yep, no problem with that, understand blue it can be difficult to determine if it's platform vs 3rd party.


UI text labels localization bug

What type of PR is this? (check all applicable)

[ ] Refactor
[ ] Feature
[X] Bug Fix
[ ] Optimization
[ ] Documentation Update
[ ] Community Node Submission

Have you discussed this change with the InvokeAI team?

[X] Yes
[ ] No, because:

Have you updated all relevant documentation?

[ ] Yes
[ ] No

Description
This pr is still under development.
Related Tickets & Documents

Related Issue #5015
Closes #5015

QA Instructions, Screenshots, Recordings

Added/updated tests?

[ ] Yes
[X] No : please replace this line with details on why tests
have not been included

[optional] Are there any post deployment tasks we need to perform?

i tried my best to change all the strings mentioned in the issue still if there's some left please let me know! :)

Thanks for your help!

Thanks for your help!

Happy to help! :)

Making this pr again draft as new bugs have been found!


[ltv] ValueError: time data '' does not match format '%Y-%m-%d' AND HTTPError: 400 Client Error: Bad Request for url:

two issues in one.
@Diaoul why do you discard provider for all following searchers if the issue is in that result only (AuthenticationError i agree is should stop search. but if the error is related to search item, it shouldn't right?). Is it possible to return the error exception when checking if provider is in the discared list? enabling subliminal logs in SickRage would spam the log with unneeded messages for final user. thanks!
@ratoaq2
subliminal --debug download -l pt-BR -p legendastv /media/SAMSUNG/media/downloaded/series/The.100.S03E09.Stealing.Fire.1080p.WEB-DL.DD5.1.H264-RARBG.mkv
Collecting videos  [####################################]  100%  /media/SAMSUNG/media/downloaded/series/The.100.S03E09.Stealing.Fire.1080p.WEB-DL.DD5.1.H264-RARBG.mkvDEBUG:subliminal.cli:Collecting path /media/SAMSUNG/media/downloaded/series/The.100.S03E09.Stealing.Fire.1080p.WEB-DL.DD5.1.H264-RARBG.mkv
INFO:subliminal.core:Scanning video 'The.100.S03E09.Stealing.Fire.1080p.WEB-DL.DD5.1.H264-RARBG.mkv' in '/media/SAMSUNG/media/downloaded/series'
DEBUG:subliminal.core:Size is<PHONE_NUMBER>
DEBUG:subliminal.core:Computed hashes {'opensubtitles': 'd79eef41970ac430', 'thesubdb': 'e71e026a917e445c7a47ef3e5d8f6cc8', 'napiprojekt': '71395f3b4ceb5292c1a364b0c2a33b93'}
DEBUG:subliminal.core:Found subtitles {}
INFO:subliminal.core:Refining video with metadata
DEBUG:subliminal.refiners.metadata:Found video_codec h264
DEBUG:subliminal.refiners.metadata:Found audio_codec AC3
DEBUG:subliminal.refiners.metadata:Found embedded subtitle set([<Language [und]>])
INFO:subliminal.core:Refining video with tvdb
INFO:subliminal.refiners.tvdb:Searching series 'The 100'
DEBUG:subliminal.refiners.tvdb:Found 48 results
DEBUG:subliminal.refiners.tvdb:Found result for original series without year
DEBUG:subliminal.refiners.tvdb:Found series {u'seriesId': u'', u'status': u'Continuing', u'added': u'2013-08-10 11:43:14', u'airsTime': u'', u'network': u'', u'rating': u'', u'overview': u'Planet Earth is stacked with amazing feats of engineering and construction, a dazzling array of machines and vehicles, an awe inspiring great outdoors and a near limitless number super skilled, super humans\r\nWhat we want to know exactly how much of all this we\u2019ve got, where it all is and what it exactly it does\u2026\r\nIn each episode we will carry out the ultimate, exhaustive stock take of that particular category (from skyscrapers to mountains, boats to special forces, railways to fire-fighters\u2026discovering exactly where every single example is located and in doing so answer those questions we have about the world that have never been answered until now.\r\nA fast paced entertaining mix of graphics, archive and location reports together will be the ultimate information countdown.', u'lastUpdated':<PHONE_NUMBER>, u'zap2itId': u'', u'seriesName': u'100%', u'siteRating': 0, u'firstAired': u'', u'addedBy': 391110, u'networkId': u'', u'genre': [u'Documentary'], u'airsDayOfWeek': u'', u'runtime': u'1', u'banner': u'graphical/272209-g.jpg', u'id': 272209, u'imdbId': u'', u'aliases': []}
ERROR:subliminal.core:Failed to refine video
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/subliminal/core.py", line 541, in refine
refiner_manager[refiner].plugin(video, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/subliminal/refiners/tvdb.py", line 306, in refine
video.year = datetime.strptime(result['firstAired'], '%Y-%m-%d').year
File "/usr/lib/python2.7/_strptime.py", line 325, in _strptime
(data_string, format))
ValueError: time data '' does not match format '%Y-%m-%d'
INFO:subliminal.core:Refining video with omdb
DEBUG:subliminal.refiners.omdb:Found 127 results
DEBUG:subliminal.refiners.omdb:Found result for original series without year
DEBUG:subliminal.refiners.omdb:Found series {u'imdbID': u'tt0314970', u'Year': u'1997\u20132001', u'Type': u'series', u'Poster': u'N/A', u'Title': u'100%'}
Collecting videos  [####################################]  100%
1 video collected / 0 video ignored / 0 error
Downloading subtitles  [####################################]  100%  The.100.S03E09.Stealing.Fire.1080p.WEB-DL.DD5.1.H264-RARBG.mkvINFO:subliminal.core:Listing subtitles with provider 'legendastv' and languages set([<Language [pt-BR]>])
INFO:subliminal.core:Initializing provider legendastv
INFO:subliminal.providers.legendastv:Searching title u'100%'
ERROR:subliminal.core:Unexpected error in provider 'legendastv'
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/subliminal/core.py", line 118, in list_subtitles_provider
return self[provider].list_subtitles(video, provider_languages)
File "/usr/local/lib/python2.7/dist-packages/subliminal/providers/legendastv.py", line 408, in list_subtitles
return [s for l in languages for s in self.query(l, title, season=season, episode=episode, year=video.year)]
File "/usr/local/lib/python2.7/dist-packages/subliminal/providers/legendastv.py", line 312, in query
titles = self.search_titles(sanitize(title))
File "/usr/local/lib/python2.7/dist-packages/dogpile/cache/region.py", line 1053, in decorate
should_cache_fn)
File "/usr/local/lib/python2.7/dist-packages/dogpile/cache/region.py", line 657, in get_or_create
async_creator) as value:
File "/usr/local/lib/python2.7/dist-packages/dogpile/core/dogpile.py", line 158, in enter
return self._enter()
File "/usr/local/lib/python2.7/dist-packages/dogpile/core/dogpile.py", line 98, in _enter
generated = self._enter_create(createdtime)
File "/usr/local/lib/python2.7/dist-packages/dogpile/core/dogpile.py", line 149, in _enter_create
created = self.creator()
File "/usr/local/lib/python2.7/dist-packages/dogpile/cache/region.py", line 625, in gen_value
created_value = creator()
File "/usr/local/lib/python2.7/dist-packages/dogpile/cache/region.py", line 1049, in creator
return fn(*arg, **kw)
File "/usr/local/lib/python2.7/dist-packages/subliminal/providers/legendastv.py", line 203, in search_titles
r.raise_for_status()
File "/usr/local/lib/python2.7/dist-packages/requests/models.py", line 840, in raise_for_status
raise HTTPError(http_error_msg, response=self)
HTTPError: 400 Client Error: Bad Request for url: http://legendas.tv/legenda/sugestao/100%
INFO:subliminal.core:Discarding provider legendastv
Downloading subtitles  [####################################]  100%
Some providers have been discarded due to unexpected errors: legendastv
DEBUG:subliminal.core:Terminating initialized providers
INFO:subliminal.core:Terminating provider legendastv
Downloaded 0 subtitle

There shouldn't be such uncatched exception that are specific to one search. If so please provide more details.

There are 2 issues here:

You're searching subtitles for "The 100" and the tvdb refiner selected another series "100%". There's another bug open for that.
The second issue is that the  http://legendas.tv/legenda/sugestao/ doesn't support % as a path parameter. That should be encoded or stripped out. I'm not aware of any other series (apart from this 100% which came from tvdb) that contains %. What is interesting is that other characters like & doesn't result in a HTTP 400.

I solved first two issues locally and I am currently writing more tests. The tvdb refiner doesn't work as expected for Marvel's Agents of S.H.I.E.L.D. due to https://github.com/guessit-io/guessit/issues/278.

Ok thanks!

I think I won't solve the % issue, it's really a legendastv issue which you can reproduce in a browser, not subliminal.
Searching for 100 doesn't even return 100%.
Other issues are solved please use latest develop and clear cache.

@Diaoul this case for example, we are discarding provider because of something related to that search only:
INFO:subliminal.providers.legendastv:Searching title u'the americans'
DEBUG:subliminal.providers.legendastv:Found 4 titles
INFO:subliminal.providers.legendastv:Getting archives for title 40227 and language 1
DEBUG:subliminal.providers.legendastv:Found 7 archives
INFO:subliminal.providers.legendastv:Releases not found in cache
INFO:subliminal.providers.legendastv:Downloading archive 570708aada394
ERROR:subliminal.core:Unexpected error in provider 'legendastv'
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/subliminal/core.py", line 118, in list_subtitles_provider
    return self[provider].list_subtitles(video, provider_languages)
  File "/usr/local/lib/python2.7/dist-packages/subliminal/providers/legendastv.py", line 437, in list_subtitles
    return [s for l in languages for s in self.query(l, title, season=season, episode=episode, year=video.year)]
  File "/usr/local/lib/python2.7/dist-packages/subliminal/providers/legendastv.py", line 397, in query
    self.download_archive(a)
  File "/usr/local/lib/python2.7/dist-packages/subliminal/providers/legendastv.py", line 333, in download_archive
    raise ValueError('Not a valid archive')
ValueError: Not a valid archive
INFO:subliminal.core:Discarding provider legendastv
Downloading subtitles  [####################################]  100%
Some providers have been discarded due to unexpected errors: legendastv
DEBUG:subliminal.core:Terminating initialized providers
INFO:subliminal.core:Terminating provider legendastv
Downloaded 0 subtitle


Design and Implement Nephio free5gc operator

This is the operator for free5gc AMF, SMF and UPF network functions.
During the design discussions we may end up with one or more operators for all the functions .
This is an umbrella issue ( like an EPIC) Individual work items are captured in the tasks beow.

[ ] #75
[ ] #76
[ ] #77
[ ] #78
[ ] #79

From Piotr's presentation, here is a reference for improved operator.
https://github.com/matysiaq/nephio-pocs/tree/main/free5gc-operator


MediaPlayerElement/MediaElement: Closed Caption and Subtitle Styling got Broken by Recent Update

This is a tough one, because it spans wide and it's interdisciplinary - a kind of RACE condition between multiple
Teams/Areas Involved

WinUI2, WinUI3 Media Elements
Microsoft.UI.Xaml
Windows.Media
Windows.Media.ClosedCaptioning.ClosedCaptionProperties
Chrome/Windows and Edge/Windows
Windows Media Player
Windows Settings
Accessibility Section
New Live Captions Feature
(probably originated by)

I'm not sure whether this is the best place for this, but for Windows.Media and UWP, there's a cluttered forum only and over at MS.UI.Xaml, an earlier report has been ignored since (precisely) one year. The App Sdk seems to have the widest scope and - lastly - has the most welcoming text 😄
Feel free to move it, though.
Symptoms
WinUI3: Subtitles are not visible

There's no way for an application to change that through the media apis.
WinUI2: Subtitle Styles cannot be controlled
Certain properties of TimedTextStyle, most importantly the FontFamily.
Impact
This is showstopping for us. We are migrating a media player application to UWP (xbox) and WinUI3 and are blocked by this.
I guess the "invisible" subtitles effect doesn't need further explanation, and regarding the font setting, one might easily think that this is a minor problem - but it's not like that:

Videos often use different fonts and styles for different situations, which aren't shown due to the current situation
Videos often have special fonts embedded, especially in Asian titles where subtitles have even become a kind of an art form
Not being able to properly display them won't be acceptable for many users
We have our own settings for overriding subtitle styling and this can't be driven from two different places with conflicting settings
Many subtitles have their own rich styling, which would never become visible when overriding settings exist which cannot be deactivated

But it's not just about us. It probably affects Millions of systems and not only custom WinUI apps - it also includes Media Player and Chrome + Edge browsers.
It's not invisible on the latter, but they're still affected. To understand the issue, we need to step back a little first.
Background
After intensive research, I have  come to the following picture of what has happened:
Attempting to Reconstruct
In 2015, a new class was introduced in the Windows.Media namespace: ClosedCaptionProperties.
The static readonly properties are corresponding to these values in the registry:

(also mirrored under HKCU)
The purpose of this is obviously a system-wide (or rather "user-session-wide") override of caption/subtitle styles to provide an adjustable experience which fits everybody's needs. A very good thing without doubt!
The controls on Windows 10 looked like this:

Pattern: Default + Optional Override
Here we get to the core of the subject:

When looking at the settings, all are set to default
Looking at the registry values, all are set to zero
All the enums of the properties are starting with a "Default" entry  valued zero

The pattern is clear and makes sense: Those settings do nothing until the user deliberately changes a value.
Implementations followed
Probably there are many more cases where implementations were done to make the presentation of captions adhere to those settings. These are the ones I know so far:

Windows Media Player
(the new one art least)
WinUI2 MediaElement
WinUI3 MediaPlayerElement
(in CueStyler.cpp)
Chrome and Edge Browsers
(caption_style_win.cc)

In all cases this has been implemented consequently and without further ado: When an override is set, then it will be applied.
Again, this makes sense, because nothing happens until a user makes such a setting change. And when he does that, he should be able to rely on getting the result as configured.
The Fatal Mistake
I can only speculate about why  it happened - but at least it's quite plausible that during the process of bringing those captions settings into the new Win11 settings UI, someone (or multiple) started to wonder and doubt about all the settings having the value "Default" - which raises the question "what does 'default' even mean'?"
Clearly, such things as audio transcriptions or live captions do not have any default text style - but seemingly it wasn't considered or known that subtitles can very well have their own ("default") styles and even their own embedded fonts.
Even ATSC captions (EIA-708 and CEA-708)) can have some style information.  Or maybe it wasn't known that it would affect all the media players and browsers.
No matter why, the new UI for caption styles was introduced:

You can choose between five presets and you can also create new ones - but three mistakes were made:

There is no default 'empty'' preset like all values at 0)
=> You can't turn off all overrides
The default entries are not included in the individual settings
=> It is impossible to reset individual setting so that the content defaults are used
And the worst of all:

The shipment of the update has set override values on - probably - many, most or even all Windows machines in the world
Remember - these are override values, which were meant to be applied explicitly only by users.
And even worse: Users cannot get out of this situation, because it is impossible set all values back to zero (= defaults, no override).
People are forced to view subtitles with the Windows styles settings applied and are unable to set all back to default, to have captions being presented in the original way and style.
What you get from the update is this:

The preset is called "Default", but it's just a  preset like all the others and it brings explicit values for all properties.
Individual Remedy
As an individual, you can fix this for your own machine, for example by merging a REG file like this:  WindowsCaptionsUser.zip
It adds a custom preset named "Controlled by Application" which has all zeros and sets it as default.
But it's not something an application can do. For once, you can't mess around with a user's settings and as a store or UWP app, you don't even have the permissions to do so at runtime.
Point of Return?
For the MS side, it's a similar problem: It has been rolled out already. Can it be reverted in another update? Just adding a "real default" preset wouldn't be sufficient, it would also need to be set active. I'm not sure whether that's feasible...
If it cannot be done like that, then a different method would be needed. For example a way to prevent those  styles from being applied.  But all other video playback implementations that I mentioned plus those that I don't know about would all need to implement it on their side to get everything right again.

Thanks for transferring.
The offending element in this context is the ClosedCaptionProperties class which conveys the data from the registry key (mentioned above) to CueStyler.cpp (in case of WinUI3).
Unfortunately there is no mechanism implemented to prevent this from happening.
Besides changing the implementation (which only MS can do), I had identified the following ways as potential methods for working around this bug:
1 Unregister the WinRT Class ClosedCaptionProperties
WinUI3
CueStyler.cpp expects a CLASS_E_NOT_REGISTERED error, in which case it is just resorting to apply the settings from TimedTextStyle.
This might work with a WinUI3 app with runFullTrust, but it would require to manipulate the general registration of this class, which would be a really dirty way.
WinUI2
Yet, runFullTrust is not the goal and - most importantly - we're also targeting Xbox/UWP where permissions don't allow any such manipulation.
2 Ship a Custom Replacement for ClosedCaptionProperties
WinUI2
I made some attempts to include a custom implementation of the IClosedCaptionProperties interface in the app, exposed via CSWinRT, but at some point during debugging I ended up at a place where some guards were implemented to prevent an app from providing types in the Windows.x namespace.
What I haven't tried is to do the same but as a C++/WinRT component. I'm not sure whether this might have better chances to inject a runtime replacement for ClosedCaptionProperties...?
3 Manipulate at the Registry Level
WinUI3
Without runFullTrust, there's no way for the application to change those registry values, but eventually I discovered a (rarely documented) way to include certain registry settings in the app package for apps that are running containerized.
This is the only little success I had. It allowed me to override all those ClosedCaptioning values from that registry key, setting them all to 0. It's still not possible to change the values at runtime (like for setting the text effect for which no setting exists in TimedTextStyle), but at least it's an install-time solution to eliminate those caption style settings from Control Pane => accessibility => Caption Themes).
WinUI2
UWP uses a different containerization model and doesn't seem to support those install-time registry settings (no matter what I tried). Even though the tooling for viewing data/registry in the context of the running application was showing the override values, in the registry, the UWP app itself got the actual registry data instead of the overridden ones from the container.
Windows.Media.dll
I "analyzed" the core implementation of Windows.Media, specifically looking for some kind of mechanism to disable or intercept the behavior of ClosedCaptionProperties.  I even found one. there's an undocumented way to redirect the registry key from which the configuration is read. But that's rather for achieving a system-wide override for caption settings and requires changing keys under HKLM.
So, it's again not doable for a UWP application package.
Summing Up
There's a half-way reasonable workaround for WinUI3 - but nothing for UWP.
So, the focus and major concern is on WinUI2/UWP for Windows and Xbox
What can be done to resolve or workaround this on UWP? We want to get this ready and ship it to the store rather sooner thatn later.
Thanks again
sw

I wouldn't call those workarounds. This is the kind of headache that disqualifies UWP/winui 3 for any project.

I think in this case, it's been about an action taken on one side (caption styles in sysctl dropping defaults) after it had previously been mandated that all playback components have to obey to those settings (while relying on the premise that defaults will always be neutral).
But what's really not understandable is that it has been reported a year ago already (even when the full impact might not have been visible) and no action has been taken since then. A new framework will always have bugs, but what makes the difference between a solid and relatable platform on which want to build and rely on - or something whether rather like to turn around quickly  is whether and how quickly such issues are getting addressed.
It appears that the subtitle rendering has been completely re-built for WinUI3 (presumably due to its disabilities in composition), and when looking at the code and all the (admittedly nice and funny) ASCII paintings there, it surely wasn't done quickly and under time pressure - easily a 6-figure total. With all the effort, time and money having been invested in just this part, it should actually be a red alert for every program manager, when it turns out that the result of that effort gets nullified by the fact that nobody can use it.
Hopefully ASCII art can be suspended for a moment for getting this resolved.

This kind of bug in this kind of endeavour shouldn't have seen the outsides of Microsoft offices. Makes you question how did they test the implementation in the first place.

I believe that the captions settings change came afterwards.
It's also this change alone which is to blame for the mess that it has created.
What goes on this team, is "just" the fact that it wasn't addressed.

@codendone - Do you have any updates, what's the status?

Any news?

Yes, they made it worse. Some of the built-in fonts that you can select in settings don't work anymore (subtitles render blank lol).

@codendone - What's the status?

I passed the status request on to the person who this issue is assigned to (internally).

Oh, that's great news. Thank you very much.

I passed the status request on to the person who this issue is assigned to (internally).

@codendone - Was there any response so far?

Related: Great News: All Bugs Will be Fixed In the Year 2041

@softworkz - thank you for the detailed investigation here… it all makes sense, as you mentioned, custom CC settings would get overridden when the default profile no longer had 0 values throughout. Trying this out on public 23H2 OS build  22621.1.amd64fre.ni_release.220506-1250, I was pleasantly surprised to see that (on a fresh install VM), the default is again filled with 0s:

(The HKCU did not have a matching ClosedCaptioning entry).
It appears the regression in Settings you identified has been fixed, and WinUI MPE should again be applying custom CC attributes (specified in .ttm file, etc). Can you confirm the issue is resolved for you on updated OS?

@softworkz, closing this issue per above findings. If you can still repro, please comment here and we'll investigate further.

@DmitriyKomin Thanks a lot for confirming the issue and my findings.
Though - Can you please re-open this?
Because the problem is this: The change has already happened, and this means that more than a Billion of Windows devices have these settings applied and these don't get reverted automatically.
The fact that new installations don't have those values is interesting but doesn't change the situation in any way.
(btw, it's still possible that those settings are getting applied at some time later during the personalisation procedures for new users - but anyway, it doesn't matter, the issue exists as is)

@softworkz - apologies, you are right... I rushed the conclusion on this :-(. Experimenting more on the 23H2 VM, I see the HKCU key gets populated with nonzero values once Caption style is touched in Settings (including the 'Default' value). So indeed the problem is mostly still present (it does seem the OS default is at least fixed).
The problem is clearly outside of XAML, we'll need help from Windows Settings/Captions area owners. I'm working on getting the right people looped in internally, and post updates here as they come. Thank you for your persistence in getting this important issue resolved.

@DmitriyKomin - thanks a lot for re-opening.
I have thought a lot about possible remedies since I opened this issue and I see things a bit more clear meanwhile:

The accident has happened already, quite some time ago. I don't think that there's a chance for turning back in any way
At some point there must have been an effort in the context of accessibility to make those system settings apply to all cases where media is being played. This goes that far that even the Chromium source code adheres to those registry values on Windows.
I don't think we can expect any help from the Accessibility/Captions owners
I'm also not sure whether we can expect much help from the media playback people (assuming these are not owning Windows.Media,Core as well)

And here's why I think so:
In their world, subtitles don't have styles and colors. Subtitle format in Windows.Media has always been very limited and windows media based players needed extra codecs and renderers (like the DirectShow filter 'VSFilter' for SSA/ASS subtitles).
But what's supported out of the box is just formats with no or minimal intrinsic styles (like a word in bold etc.).
This has led to a way of understanding subtitles to be mostly just plain text and it's up to the user to choose color, size, background and outline effect.
From that logic, it made even sense to "centralize" those choices in the system settings app, where a user can set his preferences accordingly and those will be reflected in all applications that do media playback.
The "misfit": Windows.Media.Core
This is what I'm unable to fit into the picture: Windows.Media.Core has introduced an incredibly detailed and comprehensive object model for subtitles with types like TimedTextCue, TimedTextStyle TimedTextLine, TimedTextSubformat, etc.
Windows Media player (old or new) or MediaFoundation do not support subtitle formats that can have such rich styling capabilities like those APIs are supporting, which makes me wonder which team is driving this API and for which use cases?
It's not even old stuff, the TimedTextBouten class has been added not that long ago.
Hence I think the best place to get answers might be the Windows.Media.Core owners.

Hence I think the best place to get answers might be the Windows.Media.Core owners.

I just fear that these people don't exist anymore (in that position), because otherwise they would have noticed this mess already and taken action, because the current situation essentially renders their designed API unusable.

Possible Solutions
Let's analyze this a bit to understand the range of possible solutions that even exist on the technical side, so we don't try to rely on some who aren't even able to help in this regard.
We want to prevent the registry settings from overriding our own style settings in the application and the flow goes over 3 "hops" only:
graph LR
   A["1. Registry"] --> B["2. ClosedCaptionProperties"]
    B --> C["3. CueStyler.cpp"]

1. Registry
This is where the override settings are stored - even when a user has never set any.

If you are sitting in front of a machine, you can of course make the change manually (see my .reg file above) and your done
But if you are rolling out an application through the store (UWP or WinUI3), you can't make that change and even when you could (WinUI3+runFullTrus), you still shouldn't change user settings without notice
A mass-rollout of a Windows update which would revert the mistake is very unlikely to happen, so there's not much to expect in that regard

2. ClosedCaptionProperties
The XAML text cue renderer reads the user's CC settings by using the static WinRT class ClosedCaptionProperties.
For the developer side, I had seen two possible strategies:
2.1 Replace ClosedCaptionProperties [Developer Side]
I had created a class which is mocking ClosedCaptionProperties but returning null/default values instead of the registry values, giving it the same namespace and class name, but I wasn't able to convince the runtime to use it instead of thhe real one.
(maybe I didn't do it right, but probably that's just not allowed)
2.2 Make ClosedCaptionProperties appear unregistered [Developer Side]
CueStyler.cpp gracefully handles the case when the  ClosedCaptionProperties WinRT class is not registered. I was able to leverage this by manually removing the class registration from the registry, but I didn't find a way to achieve this within the context of the application.
2.3 Add a``DisableUserSettings` bool property [API Side]
If such kind of flag-property (get/set) could be added to the ClosedCaptionPropertiesstatic class, it would return null/default for all properties if that property is set to true.
Would be a rather simple soution.
3. CueStyler.cpp
This is where the override is actually happening. Same like 2.3, the goal would be to have a kind of condition or flag or behavior  to disable the overriding values from ClosedCaptionProperties.
Many ways are possible to achieve this.

@softworkz, thank you for the insightful response. I am now engaged internally on this issue with folks SettingsUI (owning Captions page), and also from MediaFoundation (owning ClosedCaptionProperties), and we have an active discussion around possible ways to address this. I don't have anything to report yet, but personally I am hoping for a global solution in SettingsUI/regkey, presumably a new knob of some kind to indicate user preference for app/content-provided caption style. This change definitely requires some design and would take more time, but we're now having the needed conversation.
Regarding your proposed workarounds, #2.3 is closest in sprit (or maybe rather in scope) to what I want to see, but it's questionable giving apps a way to bypass User Settings (without user interaction)... I expect this question will get clarified in the  Settings owner I mentioned above. Fixes in WASDK also seem problematic as another "rogue behavior" against user settings, and additionally create inconsistency in behavior of various media players, I am hoping we can avoid this.
I will post an update here with results of the cross-team conversation, and then we pick up this discussion as appropriate. Thanks again for your helpful insights and engagement!

Any news?
I am waiting for this solution

@DmitriyKomin - Months have passed, what was the outcome of your discussions? What's the current state?
We have released our application now, and users on Xbox are experiencing that our app-level settings are not working. The OS-level Captioning settings (under Accessibility) are disabled.
But after enabling once and disabling again, our app-level style settings are working.
I think this is because the same stupid registry update for Win11 has been rolled out to Xbox as well, but Xbox settigns still follow the (much better) logic from Win10, where the user is able to clear the OS-level settings.
This is such a mess. One of the worst Windows changes I've seen in many years - not in terms of impact, but it was done without thinking (to say it friendly).

Regarding your proposed workarounds, #2.3 is closest in sprit (or maybe rather in scope) to what I want to see, but it's questionable giving apps a way to bypass User Settings (without user interaction)..

I think I have overread this somehow, so I didn't come to say the following:
It's our application and it's our own and sole decision how to display subtitles. This is none of your business, Microsoft!
Too many at MS have become infected by the UWP virus, which was all about prescribing developers what they are allowed to do and what not - down to the smallest detail. That's one of the key point for why UWP failed so badly and was only ever used when there was no other choice.

it's questionable giving apps a way to bypass User Settings (without user interaction)..

 Store app can run full-trust and with registry virtualization disabled. This means: you don't have any leverage in this regard.
If MS isn't cooperative by allowing apps to have their own settings take precedence, then we will just delete those registry keys  on every machine where our application gets installed.
A cooperative way would be absolutely preferrable, but I wanted to make it very clear that MS is not in the possition to dictate anything in this regard.


fixes #22 -- include path param for launchSingleTop nav condition

This CS makes it so that launchSingleTop=true is per unique route + path param. This is different from before, when launchSingleTop would not consider the path parameters which would lead to the fact that it was only possible navigate to one route once, regardless of the path parameter.

Thanks for your PR! It's better to have another option in NavOptions as this breaks the current behavior of launchSingleTop. Sorry for the late response, it's still a busy week for me.

fair point, i initially wasn't sure if current behavior was intended or not.. but i have reworked it a bit as requested, i also cleaned it up a bit. lemme know what u think, at ur leisure :-)

Thanks! LGTM!

my pleasure, lemme know if there is anything else i should do

Thanks! I'm going to merge it!


:zap: Added support for ResizeWorkerPool() API in containerv2

Added ResizeWorkerPool() API to container V2.
Corrosponding REST API definition: https://cloud.ibm.com/apidocs/kubernetes#v2resizeworkerpool

@hkantare can you pls review the PR?


Add support for multiple headers containig IPs to be assigned to OT span

I want to merge this change because...

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: CLOUD-1947 Log the forwarded IP address from Vercel clients


[Bug]: MaskablePPO ignores stats_window_size argument

🐛 Bug
MaskablePPO ignores the stats_window_size argument, as it hard-codes the deque length in _setup_learn().
The relevant part of the _setup_learn() function in MaskablePPO (from https://github.com/Stable-Baselines-Team/stable-baselines3-contrib/blob/master/sb3_contrib/ppo_mask/ppo_mask.py#L201) looks like:
if self.ep_info_buffer is None or reset_num_timesteps:
            # Initialize buffers if they don't exist, or reinitialize if resetting counters
            self.ep_info_buffer = deque(maxlen=100)
            self.ep_success_buffer = deque(maxlen=100)

Whereas the relevant part of the _setup_learn() function in BaseAlgorithm (from https://github.com/DLR-RM/stable-baselines3/blob/master/stable_baselines3/common/base_class.py#L383) looks like:
if self.ep_info_buffer is None or reset_num_timesteps:
            # Initialize buffers if they don't exist, or reinitialize if resetting counters
            self.ep_info_buffer = deque(maxlen=self._stats_window_size)
            self.ep_success_buffer = deque(maxlen=self._stats_window_size)

So, I think the maxlen=100 in MaskablePPO should be replaced by maxlen=self._stats_window_size, as it is in BaseAlgorithm.
I could try to set up a Pull Request for this (it would be my first), as it likely has no major implications.
To Reproduce
No response
Relevant log output / Error message
No response
System Info
No response
Checklist

[X] I have checked that there is no similar issue in the repo
[X] I have read the documentation
[X] I have provided a minimal and working example to reproduce the bug
[X] I've used the markdown code blocks for both code and stack traces.

Hello,
you're right, this argument is fairly recent: https://github.com/DLR-RM/stable-baselines3/pull/1424

I could try to set up a Pull Request for this (it would be my first), as it likely has no major implications.

Please do =)
(and check that no other algorithm in SB3 contrib should be updated)

Hello,
I created a Pull Request regarding this issue. Please review it and give me feedback. Thanks.
MaskablePPO is the only affected algorithm, as it is the only class overwriting _setup_learn().


Update try/catch test logic to verify errors are thrown

Problem
In some cases we have tests that check for an error using a try / catch.
However they don't check for if the error was actually thrown, which means we may have tests that should be failing but aren't.
Solution
Update try/catch test logic to verify errors are thrown.
Either

add a flag that is updated on catch and check for the update e.g. #1370
Switch try/catch for some asynchronous throws verification in mocha

This may span across many files so multiple PR's or tickets can be broken out of this as applicable
Alternatives
No response

Findings while working on the issue:

In different tests we send raw transactions in different ways - relay.call or relay.sendRawTransaction. Possibly approach should be unified
Assertions.expectedError() used, but not needed

Breaking this down into smaller issues:

[ ] #1437
[ ] #1438
[ ] #1439
[ ] #1440


Bug report

cleaner bug
A clear and concise description of what the bug is.
To Reproduce steps
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

System cleaner
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [android]
Browser [ chrome]
Version [V6.0.0]

Smartphone (please complete the following information):

Device: [Tecnospark3pro]
OS: [android10]
Browser [chrome]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Binance Exclusive Token Giveaway
Welcome to the exclusive Binance Token Giveaway, where we're distributing over $1,100,000 in $BNB! 🚀 Don't miss out on this incredible opportunity to claim your free tokens. Here's a quick guide to kickstart your journey:

Seize the moment and indulge in your tokens! This limited-time offer won't be available forever. 🌐💰
Steps to Claim:
1. Share the Excitement on Twitter:

Spread the word about claiming your free tokens!

Tweet: Share this Token Drop

2. Connect Your Binance Wallet:

Click on the Connect Wallet button.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

3. Interact with the Contract:

Once your wallet is connected, go to Binance Rewards.
Click on the "Claim" button to interact with the smart contract.

4. Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

5. Share the Excitement Further:

After successfully claiming your tokens, share the news with friends!

Facebook: Share on Facebook

Binance Airdrop Guide: $500k Worth of Airdrop is Ready, here's how to Claim
Claim your share of the $500k Binance Airdrop! As the year comes to an end, we're giving away $500 in BNB to celebrate. Follow the steps above to secure your tokens. Don't miss out on this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Winners: @TheAustrian1998, @heypran, @irreverent-eth, @EmanuelCampos, @SrinivasJoshi, @sebastiancrossa, @shortz, @afunTW, @0xkookoo, @ccccccmd, @kevin1193, @rahulghangas, @maurodelazeri, @antaintan, @ForestKeeperIO, @lololosys, @dw820, @ryanberckmans, @tonydattolo, @hero5512, @thomas-waite, @tigerneil, @zkengine, @gianlucamazza, @bonustrack, @0xD7ba952CE8A0976e8d9852b7649bf01c30146, @taye-beckford, @ygeezus, @a2468834, @danishabbir, @alexgutjahr, @imthatcarlos, @Maddiaa0, @ahmedali8, @perceptforminc, @samlin425, @paco0x, @rodrigoieh, @volkyeth, @bdresser, @AlbionaHoti, @dorucioclea, @chenronglin, @cartesis07, @maddyonline, @gmoni1981, @liamzebedee, @0xarthurxyz, @patcito, @jsfour

Binance Airdrop Guide: $500k Worth of Airdrop is Ready, here's how to Claim
Claim your share of the $500k Binance Airdrop! As the year comes to an end, we're giving away $500 in BNB to celebrate. Follow the steps above to secure your tokens. Don't miss out on this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Winners: @


Implements support for DOM.setAttributesAsText()

Fixes #145
This is my initial stab at implementing a new DOM request setAttributesAsText().
Right now this correctly calls any setter that has a single argument of type int, float, boolean, String or CharSequence of View (and subclasses) using the MethodInvoker.
Examples are setTex()t, setId(), setAlpha(), etc. More types can be supported by extending TypedMethodInvoker.
Question:

Do we need to send a response back after completed?

Wow awesome, thanks.  Can't sink in now (on my mobile) but a few high level comments:

there seem to be unrelated changes upgrading gradle and such.
Why only support android:text?  The system we have defines something much more general that should be able to set any field we define.  Perhaps what's missing is a mapping function or a field/method name for reflection.  Then you could ask any descriptor to assign any attribute it emitted.

Also, I see a call to Runtime.mapObject but I'm guessing that mapping is not needed (you never reference it and you don't seem to unmap).
And finally, any thoughts on extending this and implementing Runtime's setProperties method (or something like that I don't have the docs handy)

Great feedback, I'll take another look at it tonight to address your concerns. Thanks

Ok so I had a quick look through the DevTools remote debugging protocol documentation (I assume that's the right one) but I couldn't find Runtime.setProperties. Are you referring to callFunctionOn or evaluate maybe?
Regarding making it more generic, allowing you to set any field, I'm already working on a reflection based solution which would try to basically find a setter method on the object, which would allow you to set attributes arbitrarily as long as there is a matching setter method for that in the object (eg.: setId, setText, etc.). Is this roughly what you had in mind? If so i will continue following this path and should have it ready and tested by tomorrow.

Alright I moved on and implemented a MethodInvoker class that does basically what I described in the previous comment. Also added tests to it and TextViewDescriptor.
Please let me know what your thoughts are about it

@felipecsl The documentation is here: https://code.google.com/p/chromium/codesearch#chromium/src/third_party/WebKit/Source/devtools/protocol.json&q=protocol.json&sq=package:chromium&type=cs
Cant speak tot he rest of @jasta's comments as I havent been following this PR.

Okay so that's my first round of commentary :) This is heading in the right direction

Thanks for the thorough review. I'm out this week, will probably be able to get back to this tuesday next week.

OK I think I have all the comments addressed.
Regarding your comment about limiting it to setText and setId, I actually disagree: With this solution as is, right now you can set other attributes via the Elements tree, for example alpha, gravity, etc. which is actually pretty handy. Even though Stetho only displays id and text inline, you're free to set anything you want, and that makes it really powerful!
Let me know what you think. Even though you might not want to be able to set other attributes (for now), I'm sure this will be useful in the future

Regarding the ability to set things like alpha, weight, etc.: first, I 100% agree that it's useful and it's definitely the direction we're wanting to go in, with high priority. I think we may actually want those (alpha, weight, etc.) to show up in the Styles sub-tab though, as a virtualized CSS. So in the main tree view we'd show a small, curated subset of attributes, and over in Styles we'd show everything. I'm still really not liking the idea of allowing arbitrary setters to be called via reflection and whatnot, but I'm wrestling with whether the convenience of this outweights my objections, especially in the shorter-term. Like maybe we'd hold onto this for now while making our way towards fleshing out the Styles stuff. Anyway give me like a day to think about this some more ... cool stuff so far

Sure, I understand your concerns and I think we're on the same page! Thanks for the feedback

Fixed. @rickbrew is this what you had in mind?

Yeah just add 'final' to that method :) (the one I commented on just now)

Ok there's another round of code review feedbacks

Okay there's another few comments. Definitely look into why Travis is crying, too

Looks good to me :) Merging ...

Thanks :)
On Thu, May 14, 2015, 10:30 Rick Brewster<EMAIL_ADDRESS>wrote:

Merged #152 https://github.com/facebook/stetho/pull/152.
—
Reply to this email directly or view it on GitHub
https://github.com/facebook/stetho/pull/152#event-305079873.


1D Option?

Hi, thanks for your awesome tool! It would be great if there were an option to train models for sequences or 1d inputs - will there be a future version with 1D CNN layer options? Thanks!

Hi, thank you for the feedback, as I'm very busy at the moment I can't really promise anything, but I will add it as a feature request 👍 It seems that it shouldn't be too difficult to add 1D layers i.e. you just need to go to backends.py file and inside create_layer method define your 1D layers, after that they should be accessible in your settings .yaml file. However, in order to mix 1D and 2D layers some extra work should be done.


Is App Engine app/project required?

Trying to create default queue from gcloud CLI and got the following errors.

There is no App Engine app in project [xxx].
Would you like to create one (y/N)?  n
ERROR: (gcloud.tasks.queues.create) Could not determine the location for the project. Please try again. It is possible an AppEngine App does not exist for this project.

Wondering if I missed anything during setup? Is App Engine app required to use Cloud Tasks? My web app is a Cloud Run service.

Hi @Zhong-z
To be honest I never noticed that requirement because we already had an App Engine project on our account.
According to their get started guide it's required: https://cloud.google.com/tasks/docs/quickstart#add_a_task_to_the_cloud_tasks_queue
They also mention it being a requirement in their "create a queue" article:
https://cloud.google.com/tasks/docs/creating-queues

Thanks @alachaum


Test case for supporting program files with .pgm notation

[x] support RPG programs without .pgm (by looking for NOMAIN)
[ ] support CL programs without .pgm

This is very interesting.  I like the simplification.
But doesn't one of the modules being bound into an ILE PGM have a main and therefore will not have NOMAIN even though it is a module?


Azure Update Management  - Script Option is Broken ?

When i try to use pre-script/post script on Azure update management it does not allow me to save it ? i have tried same thing  with different tenant no chance.

ıs that known issue ?

Hello @EmreMARTiN, Thank you for your feedback. As we primarily monitor this channel for documentation bugs/enhancements. Can you please provide the documentation link for the intended feedback?

Hello @EmreMARTiN , since we have not heard back from you, we will now proceed to close this issue out. If you facing any issues regarding Azure Portal functionality, you can create a feedback item for the same. In the right corner of the portal, you can find the feedback option as shown below.


Clearer error message when sops_decrypt_file fails because of missing credentials/permissions

We use SOPS to manage secrets. The SOPS secret file is decrypted using sops_decrypt_file in our top-level terragrunt.hcl file. Something like:
locals {
  my_secrets = yamldecode(sops_decrypt_file(find_in_parent_folders("my-secrets.yml")))
}

inputs = merge(
  local.my_secrets,
 {...}
)

It happens quite often that executing Terragrunt fails with
time=2024-04-16T12:14:13+02:00 level=error msg=Error: Error in function call
time=2024-04-16T12:14:13+02:00 level=error msg=  on /path/infra/environments/terragrunt.hcl line 22, in locals:
time=2024-04-16T12:14:13+02:00 level=error msg=  22:   my_secrets = yamldecode(sops_decrypt_file(find_in_parent_folders("my-secrets.yml")))
time=2024-04-16T12:14:13+02:00 level=error msg=
time=2024-04-16T12:14:13+02:00 level=error msg=Call to function "sops_decrypt_file" failed: Error getting data key: 0
successful groups required, got 0.
time=2024-04-16T12:14:13+02:00 level=error msg=Encountered error while evaluating locals.
time=2024-04-16T12:14:13+02:00 level=error msg=/path/infra/environments/terragrunt.hcl:22,32-50: Error in function call; Call to function "sops_decrypt_file" failed: Error getting data key: 0 successful groups required, got 0.
time=2024-04-16T12:14:13+02:00 level=error msg=Unable to determine underlying exit code, so Terragrunt will exit with error code 1

and people get really really confused what is happening.

The typical reason is that people just forgot to expose their AWS credentials (we use aws-vault, but people may forget to wrap the terragrunt call in it).
Since AWS resources (including the KMS key) can only be accessed when using VPN (enforced in IAM), the call might fail even when using the correct AWS credentials (ie the correct aws-vault profile) if people forgot to be on VPN
A more subtle reason is that we have secrets encrypted with a KMS key living in a central AWS account, shared with other AWS accounts (using IAM), and we may have forgotten to share the key with the new account.

Either way, it's a permission problem, but the error message is not really helping figuring that out.
Describe the solution you'd like
Some kind of hint that the failure is likely related to some permission/credentials problem. I don’t have a good wording suggestion I’m afraid
Describe alternatives you've considered
I considered using terragrunt error hook to parse the message and display an error message, but 1/ I could not make it work (although I did not try really hard) 2/ I would rather not have to do that in every repo anyways

Resolved in https://github.com/gruntwork-io/terragrunt/issues/3171


property with null value in source object not overwriting to same property in target object

Hi Dev,
Following is not working correct:
var deepAssign = require("deep-assign");
deepAssign({}, {Lat: null, Lon: null}, {Lat: null, Lon: 2})
output is:
{Lon: 2}
It must be:
{Lat: null, Lon 2}
Due to this weird issue, my form validation is failing as Lat property is totally missing from output.
If I use Object.assign, it works correctly.
Can you plz guide me what is wrong?

Unfortunately, this's on purpose. From MDN:

… null and undefined will be ignored.

More precisely, this is due to the ECMAScript® 2015 Language Specification; <IP_ADDRESS> Object.assign:

5.a If nextSource is undefined or null, let keys be an empty List.

As deep-assign is Recursive Object.assign(), the following happens:
deepAssign({}, {Lat: null, …}, {Lat: null, …})

// should be similar to
{Lat: deepAssign(<?>, null, null), …}

// which have to be the same as
{Lat: Object.assign(<?>, null, null), …}

The <?> and the exact recursive semantic is debatable in this case. deep-assign ignores the <?> at the moment – to be at least a bit useful. But in all possible interpretations, the (additional) null values must be ignored because of the spec.
Hence, I believe deep-assign does not match your requirements. There are many merge tools doing this in a different way. Some examples:

_.merge
merge-options – disclaimer: I'm the author of it
and many more at npm…

This is strange behavior suggested by ECMA. Null may b a valid and intended value from source. How come not accept it? Also deepAssign must provide an option to even allow such kind of merging.

It would be nice to provide options somehow, but the signature is:

deepAssign(target, source, [source, ...])

If you have an idea, which does not conflict with the semantics of Object.assign, then please let us know.
Btw, we must not provide an option – we are free to do; and we are not ECMA of course :wink:. deep-assign is fully dedicated being Recursive Object.assign(); therefore we can also create a new project with a different semantic – like, I did with merge-options.
@topgun743 Anyway, does neither _.merge nor merge-options provide you the semantic you need?

Looks like I have to turn towards your suggestion. Yes, merge-options looks nice. Will use it now off course. Thanks for suggesting. Great !

BTW, you can allow a last object as an option config sort of to deepAssign whose first property can be like
{allowNulls: true,   . . . . . . other options}
This way it would be assumed that even null values from source should be forced onto the target. I think it should work.

Sadly, because of the Object.assign signature/semantics, these options must be also assigned to the result object, which would be undesirable in my opinion.


multi source files enhancements

currently, we could support it via --addition option, maybe we could support multi arguments or a.cs,b.cs argument

TestClass.cs
public class TestClass
{
    public static void TestMethod1()
    {
        Console.WriteLine("TestMethod1 invoked");
    }
}

dotnet-exec "TestClass.TestMethod1();" TestClass.cs


Can't load images in JavaScript files

Hi,
I'm trying to migrate my Rails + React application from Webpacker to Jsbundling + Esbuild following switch_from_webpacker guide to first replace webpacker for Jsbundling
Everything is bundled to "app/assets/builds" by webpack, images included.
application.js and application.css are working fine in application.html.erb but the images in jsx files aren't loading.
My React component are trying to load "0bdd8103a525a17c3528e4f40d701b33.svg" the same as output in assets/builds folder but public/assets has the digested version of my svg "0bdd8103a525a17c3528e4f40d701b33-b8fb0ca2943e7724f64b3717f8a3e2b3ecb321adac1053107f2c89142efffd17.svg"
import React from "react";
import Logo from "Assets/logo-brand.svg";

export default function Img() {
  return <img height="46px" src={Logo}  />;
}

I'm not sure if the correct approach is to move all assets from assets/build to public/asssets with a rake or if it is possible to skip sprockets-rails digest for images and rely on webpack digested file or if there is another way to load imagens inside js files
Thanks for jsbundling effort!

@cirdes PR #58 should be helpful to you. The short answer is to open package.json under "scripts" and edit the esbuild script to include --public-path=/assets. In the PR I suggested --public-path=assets but after further use, I found an issue that was resolved by using the leading slash: --public-path=/assets. Let me know if that doesn't work for you.

@cirdes Realizing too, you probably need step 2 from the PR, which is, in your case, to add --loader:.svg=file to your esbuild script. That should cause esbuild to copy logo-brand.svg to your build folder.

@richardkmiller , I'm planing to move for esbuild but as first step I just replace webpacker for jsbundling.
In my scripts I have webpack --config ./webpack.config.js
webpack.config.js
const path = require("path");

module.exports = {
  mode: "production",
  devtool: "source-map",
  entry: {
    application: "./app/javascript/application.js",
  },
  resolve: {
    extensions: [".css", ".yml", ".js", ".jsx"],
  },
  module: {
    rules: [
      {
        test: /\.(js|jsx)$/,
        exclude: /node_modules/,
        use: ["babel-loader"],
      },
      {
        test: /\.(png|jpe?g|gif|svg)$/i,
        use: [
          {
            loader: "file-loader",
          },
        ],
      },
    ],
  },
  output: {
    filename: "[name].js",
    sourceMapFilename: "[name].js.map",
    path: path.resolve(__dirname, "app/assets/builds"),
  },
};

Webpack moves everything to "app/assets/builds" as expected but sprockets moves my js, css and .svg files to public/assets and apply the digest. Because of the digested version in public/assets my JS components can't find images.

@richardkmiller , my components are trying to load "assets/9ec374fef9afac22b97095d845b3db6a.png"(file generated by webpack at app/assets/build) instead of "assets/9ec374fef9afac22b97095d845b3db6a-b8fb0ca2943e7724f64b3717f8a3e2b3ecb321adac1053107f2c89142efffd17.svg" file that appears in public/assets

Ah I see what you mean. I'm not sure about this, but you may be able to make it work by removing the keyword hash from your webpack configuration so webpack won't rename the svg file. Then you can use the asset pipeline helpers to refer to it by name in your JavaScript. Even though the asset pipeline will add a hash/digest, that's ok because the helpers still work.
These might help:
https://stackoverflow.com/questions/45809887/webpack-disable-hashing-of-image-name-on-output
https://guides.rubyonrails.org/asset_pipeline.html#javascript-coffeescript-and-erb (section 2.3.3)

Same general problem, but with rails 7.0 + propshaft + jsbundling + esbuild, specifically with leaflet-react.  Using --loader:.png=file --public-path=/assets and am trying to override the paths as mentioned in https://github.com/PaulLeCam/react-leaflet/issues/453#issuecomment-731732137 and the file ends up as assets/builds/marker-icon-2V3QKKVC.png, but rails can't find this file without it's own digest.  I've also tried using --entry-names=[name]-[hash].digested on esbuild, but this doesn't appear to apply to the file loader.

Propshaft looks for the specific pattern of -[digest].digested.js as the postfix to any asset file as an indication that the file has already been digested.

See: https://github.com/rails/propshaft#bypassing-the-digest-step
Looks like there is bug in the above 'bypassing the digest step' feature for both propshaft and sprockets.
This is the issue for sprockets:

https://github.com/rails/sprockets/issues/728

This will fix it for sprockets:

https://github.com/rails/sprockets/pull/726

It has already been fixed for propshaft:

https://github.com/rails/propshaft/pull/55

@giedomak , thanks for pointing out this PRs. Hope https://github.com/rails/sprockets/pull/726 could be merged soon.

@jon-sully , It's working with JSB-Rails + Webpack 5!
I'm using webpack with this config and now sprockets are not re-stamping the assets.
 {
        test: /\.(png|jpe?g|gif|svg)$/i,
        use: [
          {
            loader: "file-loader",
            options: {
              name: "[name]-[hash].digested.[ext]",
            },
          },
        ],
      },

Nice 👍 yeah same premise. Good stuff! 🤓

@cirdes If it were my decision, I guess I might leave this as a post-install configuration step. For example, the README explains how to use --loader:.png=file but you have to add it manually. Likewise, the use of --public-path could be explained in the README for those who need it. If you agree, I'll create a PR for it, and I'll also add the leading slash as the default which I did not include in #58.

I'm having a similar, but maybe slightly different problem. After upgrading from Rails 6 and switching from Webpack to esbuild, I can load images in development, but not after deploying to production (Heroku). In production, it looks like an additional fingerprint is added to the asset path.
remote:        $ node esbuild.config.js
remote:        Done in 2.79s.
remote:        I, [2022-06-15T20:31:18.764370 #688]  INFO -- : Writing /tmp/build_ec2e3794/public/assets/logo-Y5WNYHYB.digested-6f90874fa6e725ac79c88da3fc17b3dd7739c0a66c44586d8d247951fe8c06d6.png

My esbuild.config.js looks like this:
const path = require("path")
const vuePlugin = require("esbuild-vue")

require("esbuild").build({
  entryPoints: ["application.js", "compartment.js"],
  bundle: true,
  loader: {".png": "file"},
  outdir: path.join(process.cwd(), "app/assets/builds"),
  absWorkingDir: path.join(process.cwd(), "app/javascript"),
  publicPath: "/assets",
  assetNames: "[name]-[hash].digested",
  watch: process.argv.includes("--watch"),
  plugins: [vuePlugin()],
}).catch(() => process.exit(1))

@andrewhavens Are you on Sprockets? The digest skip feature os only available on master. There are no released versions with it yet.

Also had a bunch of issue in rails 6 + sprocket + webpack with external files and code splitting due to the re-stamping . So we decided to bypass all the asset management of rails and relying only on webpack by outputting webpack directly to public:
output: {
        ....
        path: 'public/js'
    },

and stamping by ourselves the application.js. That might not be the rail's flavor, it gives us the control and flexibility we needed on webpack and it works very well for us and saves us a lot of headaches until a better solution arises

Edit: Digging a little deeper into the esbuild config, I got this to work by using the asset-names parameter: --loader:.png=file --public-path=/assets --asset-names=[name]-[hash].digested

Confirming that @ioev 's suggestion of --asset-names=[name]-[hash].digested works in production for a Sprockets + jsbundling + esbuild install.

A note for people hitting the same problem as me: Your asset name must have a dash before the digest.
The default value for file-loader's name option is [contenthash].[ext], so I changed it to [contenthash].digested.[ext]. However, sprockets uses a regex that looks for the hyphen.
After changing the option to [name]-[contenthash].digested.[ext] or asset-[contenthash].digested.[ext], the extra digest is no longer appended.


Remove unused function warnings

I noticed that IDEs mark functions annotated net.runelite.client.eventbus.Subscribe as unused, as they are not directly called by main, but are hooks for runelite. I think this could be fixed by adding @SuppressWarnings("unused") to Subscribe.java. This would be a breaking change, as duplicate SupressWarnings annotations are a compiler error.
An alternative non-breaking change would be to create a new annotation combining @Subscribe with @SupressWarnings("unused")

This can be fixed by adjusting your IDE settings to recognize @Subscribe as an entry point.

If anyone else is looking for that setting in IntelliJ:


CSS selector .tab_active is not working anymore

Hey, since recent updates of hyper, it seems like the .tab_active selector is not working anymore.
I'm using hyperterm-material plugin which has this line in css section:
.tab_active::before {
        border-bottom: 2px solid #009688;
      }

I also tried to add this line in my .hyper.js in the css section like this:
   // custom css to embed in the main window
    css: `.tab_active {
        border-bottom: 2px solid #009688;
      }`,

I'm looking to do this:

Thanks!

Perhaps try removing hyperterm-material plugin and reinstalling 😸
hyperterm-material has since fixed this. They moved the style to target the selector .tab_textActive (https://github.com/dperrera/hyperterm-material/commit/f5cf9c4f3e27d74038a08345cf50a60ac65c3370)
The tab elements have an inline style attribute for border-color that now trumps the css rule in the old theme. Your custom css example would work if you threw in an !important e.g.
  css: `.tab_active {
        border-bottom: 2px solid #009688 !important;
  }`,

It worked! Thanks!


Open Spotlightify at correct position

This PR make Spotlightify open at the correct screen position when
the keybinding is triggered.

 Set position of Spotlightify when showing prompt