Populating dropdowns

@michael-berlin

This change is

Review status: 1 of 18 files reviewed at latest revision, 19 unresolved discussions, some commit checks failed.

go/vt/vtctld/api.go, line 412 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> typo: Retrieving

Done.

go/vt/vtctld/api.go, line 434 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > &metric=
>
> Remove this.

Done.

go/vt/vtctld/api_test.go, line 200 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Can you change the test to return two keyspaces here?

Done.

go/vt/vtctld/tablet_stats_cache.go, line 12 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Head's up here: You're importing the same package (`topodata`) twice.
>
> That's probably caused by an automatic import of `goimports`. Let's avoid the extra alias in this file and only use `topodata`. Therefore, please remove this line and change the code respectively.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 78 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> You can remove this because it's no longer in use.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 176 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> After you've addressed my comments below, I think you can remove this method.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 193 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Please turn `cells` into a set. Then you don't need to filter for duplicates with a linear search (even if there won't be many elements).
>
> At the end you can then append all elements of the set into a list, sort the list and return it.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 203 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Please move this method below `typesInTopology`.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 203 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > listOfTypes []string
>
> Please pass here the set instead.
>
> You can keep `[]string` as return value.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 217 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> I think this should return `[]topodatapb.TabletType`.
>
> See below why.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 219 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Same comment as above. This should be a set.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 230 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Please `break` here. This way you don't need to repeat the code which follows the `for` loop.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 242 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Please move this method before the others.
>
> This way a reader reads the high level methods first and can then deep dive into the called methods.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 242 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> You need to add locking here.
>
> The simplest way is probably to get the lock here and rename the called methods to clarify that you assume that they hold the lock. Therefore, please add the suffix `Locked` e.g. `keyspaces()` becomes `keyspacesLocked()`.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 263 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Maybe just move this code into `cellsInTopology` and rename it to `cells` (`cellsLocked` to be more precise)?

As we talked about offline, there needs to be two methods to return the right combination of cells.

go/vt/vtctld/tablet_stats_cache.go, line 270 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> The main purpose of this function is to convert the tablet type enums into strings.
>
> I suggest the following:
>
> - move the "all" case logic into `typesInTopology`. After that you can maybe rename it to `tabletTypesLocked` to be consistent with `keyspacesLocked` and `cellsLocked`.
> - this will require adding `tabletType` as parameter to `typesInTopology`. I suggest to change this parameter from `tabletType string` to `selectedTypes []topodatapb.TabletType`. You can cover the "all" case by using the `AllTabletTypes` variable from go/vt/topo/topoproto/tablet.go instead. In api.go you can pass a list of selected tablet type enums instead of a string. There you can have the logic to pass `AllTabletTypes` if the user specified "all". This way your code in this file no longer uses `string` for the tablet type (except for the `tabletTypes` field in the `topologyInfo` struct which is returned for the `/api/topology_info` call).
> - change this function to only turn an enum list of tablet types into a `[]string`. You can rename it to something like `tabletTypesToString`. In fact, you don't need this function because it already exists in go/vt/topo/topoproto/tablet.go and is called `MakeStringTypeList` :)

Done.

go/vt/vtctld/tablet_stats_cache_test.go, line 381 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Please write this test as a table driven test.
>
> The other tests are not a table driven test because they require state changes in between. That's not the case here.
>
> For an example, see: https://github.com/golang/go/wiki/TableDrivenTests
>
> The example is not perfect. Please deviate from it in the following ways:
>
> - use `testCases` instead of `flagtests`
> - consequently, in  the range loop you can have `tc` as variable name for the current element from the list of test cases
> - make the list of test cases part of this method and not a global variable

Done.

web/vtctld2/src/app/status/status.component.ts, line 69 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Can you please make `all` always the first option? I think this is more intuitive.

Done.

examples/local/vtctld-up.sh, line 26 [r18] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Please don't forget to remove this again. We don't want to include it in the master branch for now.

Done.

Comments from Reviewable

Review status: 6 of 18 files reviewed at latest revision, 12 unresolved discussions.

go/vt/vtctld/tablet_stats_cache.go, line 168 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> optional: Please add a newline after the Unlock call to visually set this apart.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 169 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> I'm fine with inlining this below.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 177 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > tabletTypeObj
>
> Just name it `types`.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 186 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > returns
>
> better: `It returns`
>
> Please change this below as well.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 187 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > Used
>
> better: `This method is used`
>
> nit: missing period
>
> Please change this below as well.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 211 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > cellsLocked
>
> Should be `tabletTypesLocked`.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 238 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > cl
>
> I prefer `c` or `cell` here.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 250 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> Please use the tablet type enum here as well.

Done.

go/vt/vtctld/tablet_stats_cache.go, line 270 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > listOfTypes
>
> `types` is fine :)

Done.

go/vt/vtctld/tablet_stats_cache.go, line 270 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > map[string]bool
>
> Please use the tablet type enum as key here.
>
> As mentioned before, please also rename the function then because it does two things now: a) sort the types and b) convert them to the string representation.

This method sorts the types but keeps them as TabletType objects. The string conversion happens in topologyInfo() now. I will keep the method name for now.

go/vt/vtctld/tablet_stats_cache.go, line 272 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> > if val, ok := listOfTypes[topodata.TabletType_MASTER.String()]; ok && val == true {
>
> You can simplify this by leveraging the fact that Go maps return a zero value if the key does not exist:
>
> ```go
> if t, _ := listOfTypes[topodata.TabletType_MASTER]; t {
>   types = append(types, typ.String())
> }
> ```

Done.

go/vt/vtctld/tablet_stats_cache_test.go, line 370 [r19] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> You don't want to execute the method under test in the definition of the test cases.
>
> Instead, please do this when you examine each test case.
>
> That means you must specify the test input parameters here. For simplicity, name the field for the output `want`.
>
> ```go
> keyspace string
> cell string
> want *topologyInfo
> ```

Done.

Comments from Reviewable

Review status: 6 of 18 files reviewed at latest revision, 1 unresolved discussion, some commit checks failed.

go/vt/vtctld/tablet_stats_cache.go, line 188 [r20] (raw file):
Previously, mberlin-bot (Michael Berlin) wrote…
> nit: missing period

Done.

Comments from Reviewable


Idle notifier doesn't work with cat

Describe the bug
With idle notifier, I don't get notifications when stopped fishing when I'm interrupted by my cat(being needy.) I get notifications normally though
To Reproduce
No clue, maybe just try fishing with a cat?
Expected behavior
A clear and concise description of what you expected to happen.
Environment (please complete the following information):

OS:Windows
RuneLite version: latest

Not just for cat interruptions; it happens when gaining a level too.

Duplicate of #9714


Added an option to enable or disable the auto start feature

The auto server start is a nice feature. However if a user doesn't want to use OSVR (he want to play in flat mode), he can't, he has to unplug its HMD from its computer.
If you use Unity 5.4 with the OpenVR API enabled AND you have the OSVR-SteamVR driver, then this feature will start OSVR then start SteamVR and the final API used will be SteamVR. So please, let us choose when enable the server. It's usefull for many cases, but not all.

thanks!

@DuFF14 @rpavlik @demonixis I'm late to the discussion. Should this be a global setting? That way developers don't have to disable it on a per-application basis (and we don't have to implement this same change in each engine). I mean, currently they can disable it by just deleting the environment variable, but maybe a more elegant way to do the same thing (maybe an OSVR-Config setting they can just toggle without resetting everything).

I think it's a good idea to have a per application settings. As a game developer, I would like to create a full OSVR experience without Vive or Oculus support, in this case, the autostart feature is welcome. But, I can work on a cross HMD game and in this case, the autostart feature is not required (and can cause issue).
SteamVR has this option, the server starts automatically when you start a SteamVR apps. It's a bad choice from Valve because I have to create a second executable for OSVR with a CLI parameter to disable native VR support.
So please, don't do same error as Valve, the obligation to use the clientKit prefab must be useful (it's not currently but it's another subject)

This is good feedback. My worry with allowing developers to disable auto-start on an application basis is that on some platforms (Android currently; iOS, GearVR, and PSVR when they are supported), the auto-start functionality is required for OSVR to function at all. There's never going to be an already running server on these platforms (except maybe sometimes on android, but in limited circumstances - e.g. a custom OS build). And, from a user experience perspective, it's somewhat inconsistent when game A auto-starts OSVR and game B does not. That's why I think it would be better to have a user setting outside of applications to let users control from their side whether the server auto-starts on platforms where it is optional (desktop).
A couple of your points are interesting though: non-vr mode and the situation where both SteamVR and OSVR auto-start.
It might be a good thing to auto-start both Vive and OSVR in some cases even if OSVR isn't doing the final stereo and distortion correction rendering. For example: if you're using OSVR for input, you might have your game use the native Vive plugin for the HMD tracking and rendering, and then use OSVR for other interfaces, like eye tracking or locomotion, which SteamVR doesn't support. That's what we do in Unreal - we have an HMD plugin and an Input plugin, so we auto-start OSVR even if we aren't selected as the "HMD" plugin.
Maybe we could make auto-start more lazy in Unity? For example, we would only attempt an auto-start if either you're using OSVR as the HMD rendering plugin, OR if you attach any interface behaviors to your scene, etc... That way, your Vive+OSVR scenario wouldn't cause OSVR to auto-start unless you were still using OSVR interfaces for other things besides stereo/distortion rendering and head tracking (e.g. eye tracking, locomotion, skeletal, gesture, and so on).
I think your comment on letting the user play a game outside of VR per their preference is also compelling. However if the user wants to start a game in non-vr mode, we shouldn't be trying to connect to an already running server either. I've seen some games use a command line argument to control this - for example subnautica can be made to start in non-vr mode by passing -vrmode none to the application arguments (in steam or in a shortcut), and the developer can create their own launcher (or just two shortcuts even) to control this in a user-friendly way.

Well I understand your point, it's true that on non standalone platform, it makes sense to have this feature enabled. We can show this option only on a standalone build (#UNITY_STANDALONE).
SteamVR has its own drivers which, well, works well. I perfectly understand that the goal of OSVR is to manage all aspects of the VR, from HMD, to controllers. But as a game developer, I don't want to mix all SDKs, it's hard and dangerous.
When a user starts one of my games, he has the experience he want. If he want to use SteamVR, he'll have a SteamVR experience, with controllers, roomscale (or not), etc. Using all features of a SDK is an hard thing, mixing many SDKs is not a good idea.
IMHO, the OSVR SDK is here for users who want an OSVR experience, as the Oculus SDK.

Mixing OSVR with other SDKs (SteamVR and Oculus, for example) is a supported and important use case for OSVR. Unlike other SDKs, we fully separate our tracking/interface APIs (OSVR-Core) from the rendering API (OSVR-RenderManager) and that's by design. Certainly you shouldn't be required to mix OSVR with other SDKs, but it's not exactly onerous if you want to opt-in to these additional interface types.
So, in summary, my recommendations would be:

Prioritize VR plugins and conditionally auto-start OSVR when/if-and-only-if OSVR is actually being used, instead of enabling/disabling auto-start on a per-app basis. We should look into ways to make prioritization and lazy initialization easier for Unity developers.
Users should have control over toggling auto-start on/off, across all apps. This makes application behavior more consistent for the user.

I'm agree

@demonixis @JeroMiya good points about non-VR mode and mixing SDKs. So are we looking at a new entry in the config file and clientkit API call? Shall we open an issue in Core?

Yes, it would probably be an issue in core. We could do it a couple of ways:

A server config option. Plus add an -autostart argument to the server to let it know that it's being launched with the auto-start API, and should make note of the setting. This is my preference.
A second environment variable to toggle auto-start. Kind of kludgy but gets the job done.

Opened an issue here for continuing discussion: https://github.com/OSVR/OSVR-Core/issues/446


OBJ parser - does not support normals import

The Wavefront OBJ parser does not parse triangle normals and does not import normals indexes.
Normal indexes do not exists in LeMesh representation, every triangle has its own normal vector attached.
Normals importation should be implemented.

Done and checked!


Update katex extension for Jlab 0.30

I've been keeping an eye on #59 , waiting for the KaTeX team to move on from their rc which contains a fix for some CSS. I think we should release a new version when they publish, but probably shouldn't wait on it.


Installation Failed every time

Hello together,
my installation Failed every Time.
Ich check and solved the "The Ultimate Dodge Mod" Fix and i use the "Unofficial Skyrim Special Edition Downgrade Patcher".
Now i am stuck @ the log error below.
185,06 - Done downloading elysium
185,06 - Done hashing elysium
246,69 - Starting to install Elysium
246,7 - Cleaning VFS, this may take a bit of time
246,73 - Starting Installer Task
246,73 - Installation has Started
246,73 - File hash check (-42) a88fa7087a6c4d750e60bf8cecd5f74b97c7c5ba95e5a85f563de4e5d66ba817
247,3 - Configuring Processor
247,31 - Install Folder: I:\Wabberjack
247,31 - Downloads Folder: E:\Wabbaajack Downloads
247,31 - Game Folder: I:\SteamLibrary\steamapps\common\Skyrim Special Edition
247,31 - Wabbajack Folder: C:\Skyrim Wabbaajack
247,31 - Drive watcher is starting. Will warn at 8GB and error at 4GB
247,31 - Starting Drive watcher on I:\ currently 223,2GB free out of 931,5GB
247,31 - Starting Drive watcher on E:\ currently 768,8GB free out of 1,8TB
247,31 - Starting Drive watcher on C:\ currently 21,6GB free out of 237,9GB
247,31 - Validating Game ESMs
247,32 - Creating Output Folders
247,42 - Optimizing ModList
247,42 - Optimizing ModList directives
249,83 - Looking for files to delete
249,83 - Cleaning empty folders
250,54 - Looking for unmodified files
251,5 - Updating ModList
251,5 - Optimized 241594 directives to 241594 required
251,55 - Hashing Archives
251,55 - Looking for files to hash
251,63 - Found 1834 total files, 1556 matching filesize
251,91 - Downloading Missing Archives
251,91 - Missing 1 archives
251,91 - Getting Nexus API Key, if a browser appears, please accept
251,91 - Loading server whitelist
251,99 - Loaded permissions for 582 servers and 263 Google Drive files
251,99 - File hash check (-42) a88fa7087a6c4d750e60bf8cecd5f74b97c7c5ba95e5a85f563de4e5d66ba817
252,01 - Downloading Skyrim_Default.ini
252,03 - Hashed download is incorrect
252,03 - Loading for alternative to JbYP1w8FSfY=
252,04 - No alternative for JbYP1w8FSfY= could be found
252,09 - Hashing Remaining Archives
252,09 - Looking for files to hash
252,17 - Found 1834 total files, 1556 matching filesize
252,43 - Unable to download Skyrim_Default.ini (GameFileSourceDownloader+State|SkyrimSpecialEdition|<IP_ADDRESS>|skyrim_default.ini)
252,43 - Cannot continue, was unable to download one or more archives
252,43 - File hash check (-42) a88fa7087a6c4d750e60bf8cecd5f74b97c7c5ba95e5a85f563de4e5d66ba817
252,45 - Encountered error, can't continue - System.Exception: Cannot continue, was unable to download one or more archives
at Wabbajack.Lib.AInstaller.Error(String msg) in C:\actions-runner_work\wabbajack\wabbajack\Wabbajack.Lib\AInstaller.cs:line 70
at Wabbajack.Lib.MO2Installer._Begin(CancellationToken cancel) in C:\actions-runner_work\wabbajack\wabbajack\Wabbajack.Lib\MO2Installer.cs:line 161
at Wabbajack.Lib.ABatchProcessor.b__66_0() in C:\actions-runner_work\wabbajack\wabbajack\Wabbajack.Lib\ABatchProcessor.cs:line 177
at Wabbajack.MO2InstallerVM.<>c__DisplayClass31_0.<b__0>d.MoveNext() in C:\actions-runner_work\wabbajack\wabbajack\Wabbajack\View Models\Installers\MO2InstallerVM.cs:line 181
--- End of stack trace from previous location ---
at Wabbajack.MO2InstallerVM.Install() in C:\actions-runner_work\wabbajack\wabbajack\Wabbajack\View Models\Installers\MO2InstallerVM.cs:line 175
at Wabbajack.InstallerVM.<>c__DisplayClass85_0.<<-ctor>b__75>d.MoveNext() in C:\actions-runner_work\wabbajack\wabbajack\Wabbajack\View Models\Installers\InstallerVM.cs:line 383
252,98 - File hash check (-42) a88fa7087a6c4d750e60bf8cecd5f74b97c7c5ba95e5a85f563de4e5d66ba817

You have the settings from the game in english?? when not change to english in steam

Hy @motte49 thank you so mutch. Your tip is working finde for me. Thank you


Indexing fails when request contains extra fields and dynamic mapping is set to false

Elassandra version:
Elassandra <IP_ADDRESS>
Plugins installed: [None]
JVM version:
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
OS version:
Debian Jessie Docker Container running in CoreOs
Description of the problem including expected versus actual behavior:
Elassandra rejects all writes that contain any extra fields when dynamic mapping is disabled.
{"error":{"root_cause":[{"type":"mapper_exception","reason":"Unmapped field [somethingelse]"}],"type":"mapper_exception","reason":"Unmapped field [somethingelse]"},"status":500}

Expected
Elassandra should accept writes and only index the fields specified in the mappings. https://www.elastic.co/guide/en/elasticsearch/reference/5.5/dynamic.html
Steps to reproduce:

Create index with mappings and set dynamic to flase

~ $ curl -XPUT localhost:9200/dynamicmappingtest -d ' {
>
>  "mappings": {
>       "_default_": {
>         "_all" : { "enabled": false }
>       },
>     "friends": {
>       "dynamic": false,
>       "properties": {
>         "name": {"type" : "keyword" },
>         "id": {"type" : "keyword" },
>         "name": {"type" : "keyword" },
>         "tags": {
>             "properties": {
>             "id": {"type" : "integer" },
>             "name": {"type" : "keyword" }
>             }
>         }
>       }
>     }
>
>  }
> }'

{"acknowledged":true,"shards_acknowledged":true}

Try to index document with extra fields (that are not defined in mapping)

~ $ curl -XPUT localhost:9200/dynamicmappingtest/friends/1 -d '
>     {
>       "id": 0,
>       "name": "Maldonado Morrison",
>       "tags": {
>         "id": 0,
>         "name": "Peters Pennington"
>       }
>   }
> '
{"_index":"dynamicmappingtest","_type":"friends","_id":"1","_version":1,"result":"created","_shards":{"total":1,"successful":1,"failed":0},"created":true}

~ $ curl -H 'Content-Type: application/json' -XPUT localhost:9200/dynamicmappingtest/friends/2 -d '
>     {
>       "id": 0,
>       "name": "Maldonado Morrison",
>       "tags": {
>         "id": 0,
>         "name": "Peters Pennington"
>       },
>       "somethingelse": {
>         "id": 0,
>         "name": "Peters Pennington"
>       }
>   }
> '
{"error":{"root_cause":[{"type":"mapper_exception","reason":"Unmapped field [somethingelse]"}],"type":"mapper_exception","reason":"Unmapped field [somethingelse]"},"status":500}

Same test case on Elasticsearch
curl -XPUT -H 'Content-Type: application/json' localhost:9200/dynamicmappingtest -d ' {
>
>  "mappings": {
>       "_default_": {
>         "_all" : { "enabled": false }
>       },
>     "friends": {
>       "dynamic": false,
>       "properties": {
>         "id": {"type" : "keyword" },
>         "name": {"type" : "keyword" },
>         "tags": {
>             "properties": {
>             "id": {"type" : "integer" },
>             "name": {"type" : "keyword" }
>             }
>         }
>       }
>     }
>
>  }
> }'
{"acknowledged":true,"shards_acknowledged":true,"index":"dynamicmappingtest"}

curl -H 'Content-Type: application/json' -XPUT localhost:9200/dynamicmappingtest/friends/1 -d '
>     {
>     "friends": {
>       "id": 0,
>       "name": "Maldonado Morrison",
>       "tags": {
>         "id": 0,
>         "name": "Peters Pennington"
>       }
>     }
>   }
> '
{"_index":"dynamicmappingtest","_type":"friends","_id":"1","_version":1,"result":"created","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":0,"_primary_term":1}

curl -H 'Content-Type: application/json' -XPUT localhost:9200/dynamicmappingtest/friends/2 -d '
>     {
>       "id": 0,
>       "name": "Maldonado Morrison",
>       "tags": {
>         "id": 0,
>         "name": "Peters Pennington"
>       },
>       "somethingelse": {
>         "id": 0,
>         "name": "Peters Pennington"
>       }
>   }
> '
{"_index":"dynamicmappingtest","_type":"friends","_id":"2","_version":1,"result":"created","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":0,"_primary_term":1}

Yes, in elassandra, data are persisted in cassandra (not more in elasticsearch) and indexing a document containing a field not mapped to cassandra will cause a data loss, this is the reason why an exception is thrown.
If you really need such feature, it could be improve to accept such request when _source is enable, because in this case, the full JSON document would be also stored in a dedicated cassandra column (this of course introduce an overhead).


sync performance over websocket

I'm trying out hyperlog with a simple muti-client to server test app.  I'm syncing a simple log of JSON data.
I'm using it something like this:
// client
import Hyperlog from 'hyperlog'
const log = Hyperlog (memdb, { valueEncoding: 'json' })

import WsStream from 'websocket-stream'
const stream = WsStream (`ws://${window.location.host}/socket`)
const replica = log.replicate ({ live: true })
replica.pipe (stream).pipe (replica)

// server
import Hyperlog from 'hyperlog'
const log = Hyperlog (memdb, { valueEncoding: 'json' })

import WsStream from 'websocket-stream'
const streamServer = WsStream.createServer ({ server, path: '/socket' }, stream => {
	const replica = log.replicate ({ live: true })
	stream.pipe (replica).pipe (stream)
})

I'm surprised that syncing a log of about 200 items from the server to a new client requires almost a thousand messages between the client and server, taking 20 seconds to finish replication on my laptop.
Is your library designed for this kind of application?  How am I using it wrong?

Could you share a full example that adds data and reproduces the issue you are talking about? I've personally haven't had any big perf issues and the "thousand of messages" for 200 items doesn't sound right (i.e. a bug)

Yea, I'll absolutely put something together.  Hyperlog has exactly the functionality my app needs if I can just sort this out.

👍

/cc @noffle

Already eagerly watching. :+1:

Okay, here's my test case:  robbiewxyz/hyperlog-testing-9dbd.  Go ahead and clone it and then yarn install and yarn proxy:client.
The page is at localhost:3001/counter.html.  Go ahead and take at the page there and pop out your devtools (I'm using Chromium's) to the network tab.  I'll tap the "Add a number" button 20 or so times, then refresh the page (just normal Ctrl-R) and you'll watch that as those items are replicating from the server that they come over one at a time with a several millisecond delay between each one.
Next, I'll hit the button a bunch to get up around 200 or so events.  Then refresh the page.  The items will come in horribly slowly taking 20+ seconds to load them all in.
A few notes:  Throttling the re-rendering while the logs are syncing helps a little, but not much.  I'm pretty sure that passing { live: true } to log.replicate is the right usage for continuous updating between clients over a network.
I'm hoping this is just a mistake on my part or a bug we can fix.  Other than this, I really like how Hyperlog lets me access the underlying DAG instead of trying to abstract it away into a CRUD-type API.
Let me know!

@noffle @mafintosh have you had a chance to check this out?

Hey Robbie, I haven't had a chance to test this, but here are some
things you could try, to see if you can localize the issue:

Try replication within the same node process (pipe hyperlogs to each other directly). Is it still slow?
Write a simpler program that JUST replicates over websockets -- no application logic. Any faster? Slower?


Merge replicatedhq/kotsadm repo into here

We'd like to make this repo (kots) contain both the kots and the kotsadm projects. This needs design -- creating this issue to track work happening on it.

closing this as completed


Azure SDK Review - [Introduction to Cognitive Services Face API]

New SDK Review meeting has been requested.
Service Name: Cognitive Services Face API
Review Created By: Quentin Miller
Review Date: 02/27/2024 02:05 PM PT
Hero Scenarios Link: Not Provided
Architecture Diagram Link: Not Provided
Core Concepts Doc Link: Not Provided
APIView Links:
Description:
Detailed meeting information and documents provided can be accessed here

Cancelled by: Quentin Miller


Update CLI extensions available doc

Update CLI extensions available doc.
Triggered by Azure/azure-cli-extensions - TRAVIS_BUILD_ID=383408043
https://github.com/Azure/azure-cli-extensions/commit/02848ea88c5877cd09bf02b4ae91b8dadefee156

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/azure-cli-extensions-list.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/azure-cli-extensions-list.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Fix #406, fix 'make changes' url quotes mismatch

I do not think this is the right fix. See discussion on #406


RotaryEncoder lib with ALLOW_ROLLOVER_G => false : can only get 50 % of value

When ALLOW_ROLLOVER_G => false,
I can't get the rotary encoder value over 50% even if turning the thing like a bloke
I'm investigating why, haven't found the reason for this yet.
Scenario: 8 bit register, shared with a Xess RotaryEncoderWithCounter module..
signal accumulator_s : std_logic_vector(7 downto 0);
...
port map (
clk_i => clk_fast,
duty_i => accumulator_s,
...
u1 : RotaryEncoderWithCounter
generic map (ALLOW_ROLLOVER_G => false, INITIAL_CNT_G => 0)
port map (
clk_i => clk_i,
a_i   => rotEncA_i,
b_i   => rotEncB_i,
cnt_o => accumulator_s
Looking deeper into this...

On 02/04/2017 5:19 PM, Jan Cumps wrote:

When ALLOW_ROLLOVER_G => false,
I can't get the rotary encoder value over 50% even if turning the
thing like a bloke
I'm investigating why, haven't found the reason for this yet.
Scenario: 8 bit register, shared with a Xess RotaryEncoderWithCounter
module..
signal accumulator_s : std_logic_vector(7 downto 0);
...
port map (
clk_i => clk_fast,
duty_i => accumulator_s,
...
u1 : RotaryEncoderWithCounter
generic map (ALLOW_ROLLOVER_G => false, INITIAL_CNT_G => 0)
port map (
clk_i => clk_i,
a_i => rotEncA_i,
b_i => rotEncB_i,
cnt_o => accumulator_s
Looking deeper into this...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/xesscorp/VHDL_Lib/issues/4, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAznG8pXtghNnYbDXdr-kOz-lMjh-4bTks5rZPlzgaJpZM4L3TiR.

Hi, Jan. It might be because the RotaryEncoderWithCounter uses a signed
counter so if you crank it all the way positive, it will stop at +127.
If you're interpreting the output as a std_logic_vector, then you'll
mistake that for stopping at the 50% point. Maybe.
--
Dave Vandenbout / XESS Corp.
2608 Sweetgum Drive
Apex NC 27539-8851
USA
<EMAIL_ADDRESS>/www.xess.com/

It is possible, I'll have a look.
When I'm using it with ALLOW_ROLLOVER_G => false, it runs from 0 to 256
I'm trying to find a good way to check what happens at +127 in both cases ...

You'll be right. That also explains why I have a 50% PWM when I set the value to 0...
I'll retest and close the issue if that's what it turns out to be.

I'm closing the isue because it works perfectly with the RotaryEncoderTest, both with ALLOW_ROLLOVER_G true and false. So it's obviously my own code.

with the current RotaryEncoderWithCounter, there is this difference in ALLOW_ROLLOVER_G true vs false.
(I was too fast to conclude that there wasn't a diference):
In Allow == true, and our accumulator is say 4 bits, it counts to f and jumps to 0 (the full 4 bits)
If Allow == false, it counts to 8 and stops (as if it were a 3 bit accumulator).
I've tested this code that always goes to the full bits, wether Allow == true or false.
In Allow == true, and our accumulator is say 4 bits, it counts to f and jumps to 0 (the full 4 bits)
If Allow == false, it counts to f and stops (also the full 4 bits).
`entity RotaryEncoderWithCounter is
generic (
ALLOW_ROLLOVER_G : boolean := false;  -- If true, allow counter to rollover from 0xf..ff to 0.
INITIAL_CNT_G    : natural := 0     -- Initial value of counter.
);
port (
clk_i   : in  std_logic;            -- Input clock.
reset_i : in  std_logic := NO;      -- Reset.
a_i     : in  std_logic;            -- A phase of rotary encoder.
b_i     : in  std_logic;            -- B phase of rotary encoder.
cnt_o   : out std_logic_vector      -- counter output.
);
end entity;
architecture arch of RotaryEncoderWithCounter is
signal cnt_r       : unsigned(cnt_o'range) := TO_UNSIGNED(INITIAL_CNT_G, cnt_o'length);
constant MAX_CNT_C : natural             := 2**(cnt_r'length) -1;
signal en_s        : std_logic;
signal cw_s        : std_logic;
begin
u0 : RotaryEncoder
port map(
clk_i => clk_i,
a_i   => a_i,
b_i   => b_i,
en_o  => en_s,
cw_o  => cw_s
);
process(clk_i)
begin
if rising_edge(clk_i) then
if reset_i = YES then
cnt_r <= TO_UNSIGNED(INITIAL_CNT_G, cnt_o'length);
elsif en_s = HI then              -- A rotational increment occured.
if cw_s = YES then              -- A clockwise movement occured.
if ALLOW_ROLLOVER_G or cnt_r /= MAX_CNT_C then
cnt_r <= cnt_r + 1;
end if;
else                -- A counter-clockwise movement occured.
if ALLOW_ROLLOVER_G or cnt_r /= 0 then
cnt_r <= cnt_r - 1;
end if;
end if;
end if;
end if;
end process;
cnt_o <= std_logic_vector(cnt_r);
end architecture;`


[Snyk] Security upgrade @babel/core from 0.0.0-use.local to 7.0.0

Snyk has created this PR to fix 1 vulnerabilities in the yarn dependencies of this project.
Snyk changed the following file(s):

packages/babel-helper-transform-fixture-test-runner/package.json

Note for zero-installs users
If you are using the Yarn feature zero-installs that was introduced in Yarn V2, note that this PR does not update the .yarn/cache/ directory meaning this code cannot be pulled and immediately developed on as one would expect for a zero-install project - you will need to run yarn to update the contents of the ./yarn/cache directory.
If you are not using zero-install you can ignore this as your flow should likely be unchanged.

⚠ Warning
Failed to update the yarn.lock, please update manually before merging.

Vulnerabilities that will be fixed with an upgrade:

Issue
Score

Directory Traversal SNYK-JS-SOURCEMAPSUPPORT-6112477
  170

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
Max score is 1000. Note that the real score may have changed since the PR was raised.
This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Directory Traversal

:tada: Snyk checks have passed. No issues have been found so far.
:white_check_mark: security/snyk check is complete. No issues have been found. (View Details)
:white_check_mark: license/snyk check is complete. No issues have been found. (View Details)


⚠ Fortnite has degraded performance

In 9d68fee, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1612 ms

Resolved: Fortnite performance has improved in 8c562b5.


Special Tokens not Provided

Hi, I guess the following code in the provided notebook in Github has a problem.
tokenizer.train(files=paths, vocab_size=52_000, min_frequency=2, special_tokens=[
    "<s>",
    "<pad>",
    "</s>",
    "<unk>",
    "<mask>",
]

The tokens are not provided. You can find it under chapter four, section three.

I believe this was solved in the April 2023 update of the notebook, by pip installing --upgrade accelerate, as well as pip installing the latest transformers module.

Yes. Thank you. Hugging Face now requires an accelerator, the notebook was updated in April 2023. Thank you for explaining this.


Expanded Logging

Reducing log retention to 5 days, to mitigate risk of logs filling up server hard drive
Added error handler logging to all major routes
Added additional debug logging hooks, but these are not written to the log file because the logging level is set to 'verbose'.

Pull Request Test Coverage Report for Build 2026

0 of 0   changed or added relevant lines in 0 files are covered.
163 unchanged lines in 8 files lost coverage.
Overall coverage decreased (-0.4%) to 71.53%

Files with Coverage Reduction
New Missed Lines
%

dist/routes/v2/control.js
1
77.04%

dist/routes/v2/util.js
3
82.69%

dist/routes/v2/mining.js
6
76.44%

dist/routes/v2/block.js
7
86.12%

dist/routes/v2/address.js
9
78.24%

dist/routes/v2/transaction.js
10
80.79%

dist/routes/v2/rawtransactions.js
37
82.16%

dist/routes/v2/blockchain.js
90
75.58%

Totals

Change from base Build 2019:
-0.4%

Covered Lines:
2034

Relevant Lines:
2655

💛  - Coveralls


updated VS Code just now, it can't debug successfully.

VSCode Version: Code 1.15.1 (41abd21afdf7424c89319ee7cb0445cc6f376959, 2017-08-16T18:05:38.342Z)
OS Version: Windows_NT ia32 6.1.7601
Extensions:

Extension
Author (truncated)
Version

path-intellisense
chr
1.4.2

code-runner
for
0.6.33

cpptools
ms-
0.12.2

sublime-keybindings
ms-
2.9.1

debug
web
0.21.2

Steps to Reproduce:
1.node -v        v5.12.0
2.launch.json
{
    // Use IntelliSense to learn about possible Node.js debug attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "attach",
            "name": "manager",
            "port": 33330
        }]
}

3、Debugging with legacy protocol because Node.js version could not be determined (Error: connect ECONNREFUSED <IP_ADDRESS>:33330)

Reproduces without extensions: Yes/No

What version of node are you using?
How are you launching your node app?

@weinand
1、node version:  v5.12.0
2、node app.js  to start
3、launch.json
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "attach",
"name": "manager",
"port": 33330
}]
}

If you start node manually from the command line, you must pass a debug flag, e.g.:
node --debug-brk=33330 app.js

After that you can use the "attach" configuration from above.
A simpler way to debug your app is by using a "launch" config:
{
            "type": "node",
            "name": "manager",
            "request": "launch",
            "program": "app.js"
}

This starts "app.js" in debug mode and attaches the debugger in one go.
You can have both launch configs in one "launch.json" file:
{
	"version": "0.2.0",
	"configurations": [
		{
			"type": "node",
			"name": "attach manager",
			"request": "launch",
			"program": "app.js"
		},
		{
			"type": "node",
			"name": "launch manager",
			"request": "attach",
			"port": 33330
		}
	]
}


Hotfix Typescript checker failing

Codecov Report

Merging #240 (e234951) into develop (d9faab2) will decrease coverage by 26.06%.
The diff coverage is 0.00%.

@@             Coverage Diff              @@
##           develop     #240       +/-   ##
============================================
- Coverage    56.70%   30.64%   -26.07%
============================================
  Files           33       24        -9
  Lines         1827     1586      -241
============================================
- Hits          1036      486      -550
- Misses         791     1100      +309

Impacted Files
Coverage Δ

...e-lang/src/rescript/Reducer/Reducer_ErrorValue.res
0.00% <0.00%> (-70.00%)
:arrow_down:

...ucerInterface/ReducerInterface_ExpressionValue.res
16.12% <0.00%> (-54.25%)
:arrow_down:

...cript/Distributions/PointSetDist/Distributions.res
22.22% <0.00%> (-44.45%)
:arrow_down:

.../src/rescript/Distributions/PointSetDist/Mixed.res
0.00% <0.00%> (-40.20%)
:arrow_down:

...cript/Distributions/PointSetDist/PointSetTypes.res
0.00% <0.00%> (-40.00%)
:arrow_down:

...rescript/Distributions/GenericDist/GenericDist.res
43.56% <0.00%> (-38.62%)
:arrow_down:

...c/rescript/Distributions/PointSetDist/Discrete.res
4.49% <0.00%> (-34.84%)
:arrow_down:

...ript/Distributions/SampleSetDist/SampleSetDist.res
35.71% <0.00%> (-28.58%)
:arrow_down:

... and 21 more

Continue to review full report at Codecov.

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


Using 'preserveMediaQueries' with 'juice.inlineDocument'

I have media queries in the css I am passing to juice.inlineDocument. Should preserveMediaQueries insert those media queries into the HTML doc the same way juice.juiceResources does when you have media queries inside a linked document, ie. <link rel="stylesheet" href="style.css">?
I can submit a PR if you guys agree with this.

I feel like that would make sense if it isn't currently happening. As long as the media queries are applied in the same ordering as the CSS is applied with inlineDocument, that should provide for consistent behavior. A PR to that effect would be most welcome, please make any needed updates to the readme and provide test coverage if you do open a PR. Thanks!

I believe this was resolved by #189


Original Precision Scope not being able to craft it or the recipe is not there in JEI

You need the Precision scope to create the Scope for the Turrets from the basic immersive engineering and immersive intelligence guns and items/tools like the Scope for the guns, Tools Binoculars, Technicians Headgear and Infiltrators Headgear.

This is not a place to get help with your Minecraft modpack.
mclo.gs is just a site that you can use to share your logs and crash reports.

https://github.com/aternosorg/mclogs/issues/109#issuecomment-1997666948


Pick up other devices as routers

Hi, is it on purpose that the integration pick up my Roborock vacuum, my roller blinds gateway and every ESPresence as routers?
I only need the integration for my Deco devices, not none TP Link devices.

Integration works only with your router which is connected. HA in the interface shows all devices that connected in the network which is already added to HA

Any guesses on why this happens @AlexandrErohin
I think it might be because of using same entity / tag as tp-link plugin does ? (random guess, not entirely sure about how HA categorizes the devices)


SWW-2368 - Added functionality to recieve a nice filename from API an…

…d use that for the file names

@devkokov Feel free to approve this


pd.Timedelta constructor should accept nanoseconds in the arguments

Noticing an inconsistency. pd.Timedelta doesn't allow nanoseconds in constructor but its components list till nanoseconds. Here is what I can reproduce. (used then current master on OS X 10.10.1)
Example:

Python 2.7.9 (v2.7.9:648dcafa7e5f, Dec 10 2014, 10:10:46)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from pandas.tslib import Timedelta
>>> td = Timedelta(nanoseconds=1)
Traceback (most recent call last):
File "", line 1, in
File "pandas/tslib.pyx", line 1723, in pandas.tslib.Timedelta.__new__ (pandas/tslib.c:29743)
raise ValueError("cannot construct a TimeDelta from the passed arguments, allowed keywords
are " [days, seconds, microseconds, milliseconds, minutes, hours, weeks]
>>> td=Timedelta(seconds=1)
>>> td.components._fields
('days', 'hours', 'minutes', 'seconds', 'milliseconds', 'microseconds', 'nanoseconds')

This is ONLY for an actual passed argument of 'nanoseconds'. String parsing/interp is good.
In [3]: pd.Timedelta('1ns').components
Out[3]: Components(days=0, hours=0, minutes=0, seconds=0, milliseconds=0, microseconds=0, nanoseconds=1)

@jreback  I have changed the title accordingly. Timdelta constructor fails to accept nanoseconds but otherwise pd.Timedelta does support nanoseconds.

I am testing a fix for this. will submit a PR

Moved DateOffset nano related issue to a separate one here #9284 as Timedelta and DateOffset being two diff classes may require fix in separate places.


Create a podcast landing page for next.lifeitself.org

A podcast page that lists all the podcasts with links to their respective pages.
Acceptance

[ ] Create a Podcast page with list for next.lifeitself.org using template from here - https://tailwindui.com/templates/transmit
[ ] Link to each podcast page

Tasks

[ ] Add a Podcast layout in site/layouts/podcast.jsx
[ ] Create a Podcast page eg. in content/podcasts/index.md
[ ] Add all podcasts as markdown pages from life itself's anchor.fm in content/podcasts folder

@rufuspollock wip for podcast layout and content/podcast/index.md page

@khalilcodes great. can we track in https://github.com/life-itself/community/issues/193

FIXED. this got done.


[SS 4.0.3 URGENT] DataObject Live version not created

I just noticed a big trouble in my client project that I need to solve really ASAP.
Only for DataObjects (has-many relation), the DB Localised_Live table version isn't created during save on CMS-side. This result in NULL content on the front-end page.
If I log as admin and inspect one of the pages involved (actually same for 3 distinct DataObjects) in draft mode, I see the contents regularly.
Here's a couple of screenshots:

Here's the code involved (just picking 1 of 3 - are the same):
DataObject
<?php
// Definizione Namespace
use SilverStripe\ORM\DataObject;
use SilverStripe\Forms\FieldList;
use SilverStripe\Assets\Folder;
use SilverStripe\Assets\Image;
use SilverStripe\Forms\RequiredFields;
use SilverStripe\Forms\TextField;
use SilverStripe\AssetAdmin\Forms\UploadField;

/**
 * Classe Headline
 */
class Headline extends DataObject {
    // Dichiarazione Proprietà
    private static $db = [
        'Corpo' => 'HTMLText'
    ];
    private static $has_one = [
        'LogoHeadline' => Image::class,
        'Home' => 'Home'
    ];
    private static $searchable_fields = [
        'Corpo'
    ];
    private static $summary_fields = [
        'Corpo'
    ];
    private static $translate = [
        'Corpo'
    ];

    /**
     * Metogo definizione campi obbligatori
     * Setter
     * @return void
     */
    public function getCMSValidator() {
        return new RequiredFields(array('LogoHeadline'));
    }

    /**
     * Metodo gestione campi CMS
     * Setter
     * @return FieldList $fields Campi Back-End
     */
    public function getCMSfields()
    {
        $cartellaHome = 'home';
        $dimensioneFoto = 0.6 * 1024 * 1024; // 600 Kb
        $uploadFoto = new UploadField('LogoHeadline', 'Carosello (.jpg/.jpeg/.png/.gif - 600 Kb max.)');

        $uploadFoto->getValidator()->setAllowedExtensions(array('jpg', 'jpeg', 'png', 'gif'));
        $uploadFoto->getValidator()->setAllowedMaxFileSize($dimensioneFoto);

        Folder::find_or_make($cartellaHome);

        $uploadFoto->setFolderName($cartellaHome);

        $fields = FieldList::create(
            $uploadFoto,
            TextField::create('Corpo', 'Testo')
        );

        $this->extend('updateCMSFields', $fields);

        return $fields;
    }
}

Page:
<?php
// Definizione Namespace
use SilverStripe\Forms\FieldList;
use SilverStripe\Assets\Folder;
use SilverStripe\Forms\GridField\GridField;
use SilverStripe\Forms\GridField\GridFieldConfig_RecordEditor;
use SilverStripe\Assets\Image;
use SilverStripe\Forms\TextField;
use SilverStripe\Forms\TextareaField;
use SilverStripe\AssetAdmin\Forms\UploadField;

/**
 * Classe Home
 */
class Home extends Page
{
    // Dichiarazione Proprietà
    private static $db = [
        'Summary' => 'HTMLText',
        'LinkCta' => 'Text'
    ];
    private static $has_many = [
        'Headlines' => 'Headline'
    ];
    private static $many_many = [
        'Cliente' => Image::class
    ];
    private static $translate = [
        'Summary',
        'LinkCta',
        'Headlines'
    ];
    private static $description = 'Home Page';

    /**
     * Metodo gestione campi Back-End
     * Getter
     * @return FieldList $fields Campi Back-End
     */
    public function getCMSFields()
    {
        $fields = Page::getCMSFields();

        $cartellaClienti = 'clienti';
        $dimensioneFoto = 0.6 * 1024 * 1024; // 600 Kb

        $fields->removeFieldFromTab('Root.Main', 'Content');
        $fields->addFieldToTab('Root.Main', TextareaField::create('Summary', 'Riepilogo'));
        $fields->addFieldToTab('Root.Main', TextField::create('LinkCta', 'Link (Call to Action)'));

        $headlineConfig = GridFieldConfig_RecordEditor::create();

        $fields->addFieldToTab('Root.Headline', new GridField('Headlines', 'Headline', $this->Headlines(), $headlineConfig));
        $fields->addFieldToTab('Root.Clienti', $uploadClienti = new UploadField('Cliente', 'Clienti (.jpg/.jpeg/.png/.gif - 600 Kb max.)'));
        $uploadClienti->getValidator()->setAllowedExtensions(array('jpg', 'jpeg', 'png', 'gif'));
        $uploadClienti->getValidator()->setAllowedMaxFileSize($dimensioneFoto);

        Folder::find_or_make($cartellaClienti);

        $uploadClienti->setFolderName($cartellaClienti);

        return $fields;
    }
}

YAML
---
Name: corporate-consulting
---
SilverStripe\Core\Manifest\ModuleManifest:
  project: corporate-consulting
# Localizzazione
SilverStripe\i18n\i18n:
  default_locale: 'it_IT'
  common_locales:
    it_IT:
      name: 'Italian'
      native: 'Italiano'
    en_GB:
      name: 'English'
      native: 'English'
TractorCow\Fluent\Extension\FluentDirectorExtension:
  detect_locale: false
# Admin/Branding
SilverStripe\Admin\LeftAndMain:
  application_name: 'Corporate Consulting'
  application_link: 'https://corporate.it'
  extra_requirements_css:
    - themes/corporate/css/dist/admin.css
# Immagini
SilverStripe\Core\Injector\Injector:
 SilverStripe\Assets\Image_Backend:
   properties:
     Quality: 75
---
  Name: traduzioni
---
Caso:
  extensions:
    - 'TractorCow\Fluent\Extension\FluentExtension'
Headline:
  extensions:
    - 'TractorCow\Fluent\Extension\FluentExtension'
Reference:
  extensions:
    - 'TractorCow\Fluent\Extension\FluentExtension'

I'll be open to any suggestion.
Thanks in advance.

@lucacattide please note it is a 4 day weekend for NZ and the UK so don't expect a prompt response to this.
You can always go to our community resources to look for help:
There are great community support options where you can get help including our forum, Stack Overflow (remember to tag as silverstripe) and even IRC or Slack.

Thanks @dhensby for the advice, understood. Meanwhile, I found the real cause of the issue.
Either if the Live tables aren't created in the process, my older SS 3.x habits driven me into this. I'm still studying the full improvement of version 4 (this is the very first project with it).
During debugging, I noticed that the other pages were suffering the data-missing problem (especially for images). Reading with attention the new fresh SS doc about file management, I learned about the new tricky-version management by declaring the $owns property ($owns and file versioning). In my case:
[...]
class Home extends Page
{
    // Dichiarazione Proprietà
    private static $db = [
        'Summary' => 'HTMLText',
        'LinkCta' => 'Text'
    ];
    private static $has_many = [
        'Headlines' => 'Headline'
    ];
    private static $many_many = [
        'Cliente' => Image::class
    ];
    // Here it go
    private static $owns = [
        'Cliente' <---
    ];
    [...]

After updating images/pages relations by binding them with it - and, obviously, re-publishing all the contents, all the DataObjects that were considered "drafts" became live versioned. Furthermore, the re-publishing process seems to be necessary at least for DataObjects with associated files (apparently $owns is a property of SiteTree only) in order to be considered "published".
I still don't know if the DB table issue is really an "issue" or it always been a part of the module business logic, but for now all seems to works well.


Add Instance attribute

Similar to factory methods, instances can be marked as an [Instance]. To be exported they must be public and static.

Implemented by https://github.com/YairHalberstadt/stronginject/pull/46


Additional type docs

Not complete, but another batch of docs on core types.
Also makes a couple of small tweaks to the framework:

Renames the section to Core Resources
Adds enumeration of values for FFEnum types

@nguyer - thanks for the great review comments. I've added some more docs on Message along with the fixes.

Codecov Report

Merging #816 (54b68b1) into main (3cf5f35) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##              main      #816    +/-   ##
==========================================
  Coverage   100.00%   100.00%
==========================================
  Files          304       304
  Lines        18960     19146   +186
==========================================
+ Hits         18960     19146   +186

Impacted Files
Coverage Δ

pkg/core/batch.go
100.00% <ø> (ø)

pkg/core/message.go
100.00% <ø> (ø)

internal/reference/reference.go
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

Is docs/reference/types/_includes/wserror_description.md supposed to be empty, or was that one missed?

It looks like the regex that you used to fix the relative links from the includes inserted an extra ( into the link which makes it not a link anymore. Which is why the checker is no longer complaining about them 🙂


Address key UI review feedback from July 11

Address July 11's UI review feedback from this Notion document.

Here are the things that haven't been fixed yet, as it requires more SDK changes. We can do this after we're done with the CLI for onboarding.

Increase the gap between “best selling products” and what’s above

no way to customize dashcard titles yet

Remove the line below “Inventory performance” & main title should have the same styling and size as the other page’s title.

need to add the customTitle property to allow customizing dashboard titles first. line is part of dashboard title.

Table should use rounded corners and drop shadow

need to expose the getDefaultCardHeight method first, because the question is dynamic and we are not able to style the cards properly if we don't know their default height

Tooltip's foreground and background customization to make tooltip text visible on Luminara


[ERROR] Error saving Super Table fields throwing HTTP 400: Post request required

Description
Gets a 400 Post request required when saving a Super table field.
How to reproduce the error

Use CraftCMS 4
Install Quick fields plugin
Install Super table plugin
Create Section
Create a Super table field in with Quick field
Save -> Get error in console (POST 400)

System Info
Application Info
PHP version: 8.0.24
OS version: Linux <IP_ADDRESS>-microsoft-standard-WSL2 & Linux 5.10.124-linuxkit
Database driver & version: MySQL 10.4.26
Image driver & version: Imagick 3.6.0 (ImageMagick 6.9.11-60)
Craft edition & version: Craft Pro 4.3.3
Yii version: 2.0.46
Twig version: v3.4.3
Guzzle version: 7.5.0
Plugins
Amazon S3 2.0.1
Amazon SES 2.0.1
Button Box 4.1.0
Feed Me 5.0.4
Field Manager 3.0.4
Navigation 2.0.13
Quick Field 2.0.2
Redactor 3.0.2
Smith 2.0.0
Sprig 2.3.0
Super Table 3.0.5
Typed link field 2.1.4

This seems to be working for me - could you please post more details of the Super Table field you're trying to create, e.g. settings and subfields?

I'll close this issue as not reproducible for now, but if the issue persists for you, please let me know (including providing the previously requested information) and I'll reopen it.

Hi there, I am so sorry for the delay.
The super table can be completely empty and it still does not work. Ill check a little more on it.
Thank you again!

I think this should be fixed now in 2.0.7 (turned out to specifically affect single-site installs, see #22) but please let me know if the error persists.


Update winit version 0.27.3

Recent winit (version 0.27.3) also has compat for raw-window-handle 0.4.2
Tested on desktop, native and wasm

There is already a previous PR (#5347) that updates winit (and other dependencies). Afaik this is blocked on wgpu.

@harudagondi, it's winit 0.27.3 (not < than that), working fine i've tested both native including mouse_grab example and other on wasm as well.

not sure for android though, since we are waiting winit 0.28.0 for more compact andorid support like: https://github.com/rib/android-activity

It's winit = 0.27, which means >=0.27.0, <0.28.0, so it would pick 0.27.3. Also as far as I understand, this PR have not updated ndk-glue to 0.7.

@harudagondi the problem wgpu blocked was on winit 0.27.2 which has raw-window-handle 4.2 compat problem, already fixed on 0.27.3

Hmm. I'll admit I have minimal knowledge on rendering, but in that PR raw-window-handle is changed to 0.5. Maybe we should ask why it is that case.

Update for grab mode seems better in #5347. This update would also need to update ndk-glue. I don't know about raw-window-handle though.
wgpu update should be within the week, let's wait for it.

@mockersf agree on that.

Closing in favor of #6218, which is nearly ready to merge :) Thanks for scouting this out!


Support for custom KML schema

In a KML you can extend the "default" elements in this way:
<Schema parent="Placemark" name="S_country">
    <SimpleField type="wstring" name="CNTRY_NAME">
    </SimpleField>
    </SimpleField>
    <SimpleField type="wstring" name="CURR_TYPE">
    </SimpleField>
    <SimpleField type="wstring" name="CURR_CODE">
    </SimpleField>
  </Schema>
  <S_country>
	<name>Test</name>
        <Point>
		<coordinates>16.54,40.6</coordinates>
	</Point>
        <CURR_TYPE>Test</CURR_TYPE>
	<CNTRY_NAME>Test</CNTRY_NAME>
	<CURR_CODE>Test</CURR_CODE>
  </S_country>

With such a KML this library returns an empty list of features.
Is there any plan to support KML containing custom KML schema? Is this functionality considered in the scope of this library?

Well, it's in the KML spec and it is useful to data consumers that aren't Google Earth, so it's in scope. I'm in the middle of a pretty large refactor of this project to use TypeScript and support folders, but once that's shipped I'll take a look at this.


Vendor prefix for transform

Steps to reproduce

Use some browser that requires vendor prefix for transform property
Use vertical slider with ticks

Demo: http://jsfiddle.net/yra7skru/1/
Expected behaviour
All ticks being aligned correctly
Actual behaviour
Ticks being squashed

What browser has an issue? Because we have prefix for old browsers but maybe not that old: https://github.com/angular-slider/angularjs-slider/blob/master/dist/rzslider.css#L242

Safari 600.1.4 on iPad
Not sure how this line in css could help with the issue.
There is a line 993 in dist/rzslider.js where the transform property is set dynamically.
So I suppose prefixes should also be added there.

You could even open this page with examples on this browser and see the issues with vertical ticks
http://angular-slider.github.io/angularjs-slider/index.html

Sorry I forgot this part of the code. I thought a PR already submitted a fix for this, I don't remember why it wasn't merged...

OK that was the issue: https://github.com/angular-slider/angularjs-slider/issues/472
I have tried to fix that but noticed that this was handled directly by ng-style so  I couldn't manually add the prefixes...

I have read ng-style source code.
It doesn't handle prefixes it just calls jqlite css method
https://github.com/kiltjs/jqlite/blob/master/jqlite.js#L1166
Which doesn't strip anything either.
So that fix in #472 will work.
The reason why prefixed props doesn't appear is browser itself.
If you do something like:
var element = document.querySelector('random-id'); element.style['-webkit-transform'] = 'translateX(50px)';
the style property will show only transform

I have checked the source code for ng-style.
It doesn't do anything with prefixes , it just calls jqlite css method.
Which doesn't remove them either.
To simplify all it does is:

Convert name to camelCase ('-webkit-transform' becomes 'webkitTransform')
Set style for element
So the suggested fix in #472 will work

Could you provide a pull request for this?

Fixed in 6.1.1


md-autocomplete input missing on form submit

Bug, feature request, or proposal:
autocomplete input is missing from form submit data
What is the expected behavior?
autocomplete input's name and value should be part of form submit data
What is the current behavior?
autocomplete input's name and value are missing from form submit data. If I omit [formControl] binding, form submission has autocomplete input data. But, I will lose out on autocomplete filter functionality without that.
Snippet
                    <md-input-container>
                        <input mdInput
                               name="taskName"
                               type="text"
                               placeholder="Name"
                               [(ngModel)]="taskName"
                               [mdAutocomplete]="configureTaskAuto"
                               [formControl]="taskCtrl"
                               required>
                    </md-input-container>
                    <md-autocomplete #configureTaskAuto="mdAutocomplete">
                        <md-option *ngFor="let task of filteredTasks | async"
                                   [value]="task"
                                   (onSelect)="onTaskSelected(task)">
                            {{ task }}
                        </md-option>
                    </md-autocomplete>

@rajvengala It looks like you have two competing form directives here - ngModel and formControl. They're not really meant to be used together because then you have two sources of truth for the value that will conflict.  You can definitely use ngModel alone to filter if you have a template-driven form. See the demo code here:
https://github.com/angular/material2/blob/master/src/demo-app/autocomplete/autocomplete-demo.html#L29

Thank you. It helped.
Much of the official documentation available for Angular2 talks about template driven forms, even the examples. I think, the examples for material components too should be primarily using template driven forms for the sake of consistency.
Raj


Any plans for rust inherit stdio?

Currently all the output to stdio in the rust code are ignored, any plans for controling it?

Turns out it's my mistake, rust stdout is inherit in php.


Test cases not being detected without the extension .spec.js

For some reason my test cases are not being picked up properly by esdoc
my-project/
└── src
    ├── MyClass.js
└── test
    ├── testcases
    ├── more-testcases
    └── testcase-1.js

and my esdoc.json
{
  "source": "./src",
  "destination": "./docs",
  "test": {
    "type": "mocha",
    "source": "./test"
  }
}

The documentation renders out fine, and even adds the test link in the header, but it does not render the /test.html file. Interestingly enough, if I use the extension *.spec.js instead of *.js everything works fine.

@mike-schultz Hi. Please see config.test.incluces


Extend Session Duration - Expired Token

Team,
Looking for a way to extend the session duration. Currently, after a few minutes, we start getting expired token and would need to stop the streamlit run app.py and run it again.
Any thoughts / suggestions?
Thanks.

i'm getting same issue, can anyone help

Hii, the issue was resolved by changing the security group permission for the port of the underlying EC2 instance.

The streamlit app is meant for demo purpose only. There are alternatives to the expired token problem, but outside the scope of this repo.


New theme: NewsJunkie

Thanks for your patience with, here's a brand new PR - this should be much cleaner.
Please also see the small CSS fix in a separate commit.
I've no swift installed, so couldn't build / test - fingers crossed I've got it right this time ;)

You named a few of the folders and files Newsjunkie instead of NewsJunkie and the CSS change should have been an independent PR. Additionally you marked it as Default Theme while it is in fact a User Theme. But I took care of that for you. It is live now.
Thanks for contributing!

Thank you and once again apologies for the errors.


Runtimes for Chatterino Flatpak are marked as EOL

Checklist

[X] I'm reporting a problem with Chatterino
[X] I've verified that I'm running the most recent nightly build or stable release
[X] I've looked for my problem on the wiki
[X] I've searched the issues and pull requests for similar looking reports

Describe your issue
Running Flatpak updates shows the following error message:
Info: runtime org.kde.Platform branch 5.15-21.08 is end-of-life, with reason:
   We strongly recommend moving to the latest stable version of the Platform and SDK
Info: applications using this runtime:
   com.chatterino.chatterino, com.chatterino.chatterino

Info: runtime org.freedesktop.Platform.GL.default branch 21.08 is end-of-life, with reason:
   org.freedesktop.Platform 21.08 is no longer receiving fixes and security updates. Please update to a supported runtime version.
Info: applications using this extension:
   com.chatterino.chatterino, com.chatterino.chatterino

This is with both stable and nightly installed.
Screenshots
No response
OS and Chatterino Version
Chatterino 2.4.6 (commit eb8c7f2 modified) built with Qt 5.15.8 Running on KDE Flatpak runtime, kernel: 6.5.6-arch2-1, running from Flatpak

CC @ilya-zlobintsev - I think just updating to Qt6 should be good

Was fixed in https://github.com/flathub/com.chatterino.chatterino/pull/245


enha: add function to queue events to allow for sending in batches

PR Type
Enhancement

Description

Added a new queue_event function in the KafkaConnector to allow for batched event sending
Modified send_event to use the new queue_event function, improving efficiency
Enhanced error logging in the importer, now including transaction hash for failed Kafka event sending
Improved error handling and logging for Kafka event publishing process
These changes allow for more efficient event handling and better debugging capabilities

Changes walkthrough 📝
Relevant filesError handling

importer.rsEnhanced error logging for Kafka event sending

src/eth/follower/importer/importer.rs
Improved error logging for failed Kafka event sending, now including transaction hash

+1/-1

Enhancement

kafka.rsImplemented event queueing for Kafka publishing

src/infra/kafka/kafka.rs
Added queue_event function to allow for batched event sending  Modified send_event to use the new queue_event function  Improved error handling and logging for Kafka event publishing

+17/-4

💡 PR-Agent usage: Comment /help "your question" on any pull request to receive relevant information

Final benchmark:
RPS Stats: Max: 1051.00, Min: 632.00, Avg: 834.25, StdDev: 52.76
TPS Stats: Max: 1051.00, Min: 632.00, Avg: 833.92, StdDev: 52.74
Plot: View Plot


docs: Add emdaer for better README

What:
Add emdaer for better README writting experience

Why:
Keep the readme fresh and consistent

How:
emdaer run on precommit

Checklist:

[X] Documentation
[X] Tests N/A
[X] Ready to be merged
[X] Added myself to contributors table

Coverage remained the same at 41.297% when pulling 39b378b8d45fd1c211bd60d81855e8846f5a84ff on emdaer-for-better-readme into b5b7ed0542ba9e703d070ed283aae9c89d373556 on master.


Powershell opening on Terminal in first instance despite default

VSCode Version: 1.63.0
Local OS Version: Windows 10 20H2
Remote OS Version: N/A
Remote Extension/Connection Type: SSH/Docker/WSL
Logs: Unable to find source log that indicates terminal launch

Steps to Reproduce:

Open VSCode
press CTRL+~ to open terminal

Killing the terminal and executing step 2 will open the default terminal (Git Bash for me)

Does this issue occur when you try this locally?: Yes
Does this issue occur when you try this locally and all extensions are disabled?: Yes

also see the icon, indicates that the default profile is likely undefined so we use the fallback

Maybe not related to remote?
@ssoworld I see this in your report:

Remote Extension/Connection Type: SSH/Docker/WSL

What type of window were you in where you saw this? You can take a screenshot of the bottom left corner of the window to tell us this.

Yeah that was in error. It was not any of those
-Scott Onson

From: Daniel Imms @.>
Sent: Tuesday, December 14, 2021 11:00:20 AM
To: microsoft/vscode @.>
Cc: Scott S. Onson @.>; Mention @.>
Subject: Re: [microsoft/vscode] Powershell opening on Terminal in first instance despite default (Issue #138999)
Maybe not related to remote?
@ssoworldhttps://github.com/ssoworld I see this in your report:
Remote Extension/Connection Type: SSH/Docker/WSL
What type of window were you in where you saw this? You can take a screenshot of the bottom left corner of the window to tell us this.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/vscode/issues/138999#issuecomment-993784034, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABR3OUSJDHW2HFI4ODJ5UW3UQ5Z2JANCNFSM5J6PPZZA.

I have the same issue. And I'am working remote with SSH.
This issue was fixed, but it came back with the last update.

It also gives me powershell when I typed code inside wsl and open the vs code. Any solution for that?

Re-setting the default terminal profile and restarting VSCode fixed the issue for me:

CTRL+Shift+P
Type default profile
Select Terminal: Select Default Profile
Select Git Bash
Restart VSCode
If you had the Terminal tab open, it will reopen after restart, and should be using Git Bash.

Yeah, you can use Git bash in that way but the real problem in my case is VS Code sees files inside wsl as an extension of windows filesystem. I suppose because of that it opens powershell instead of bash and also when I want to point out a Python interpreter inside the wsl it directs me to root of windows filesystem.

Additional Info:
1) Open VSCode
2) Kill ALL the terminals - Observe the terminal panel close
3) Close VSCode
4) Open VSCode again - Observe no terminal panel
5a) Menu-bar > Terminal > New Terminal (Ctrl+Shift+') - Observe Terminal Panel opens with Git Bash.

vs
1) Open VSCode
2) Kill ALL the terminals - Observe the terminal panel close
3) Close VSCode
4) Open VSCode again - Observe no terminal panel
5b) Menu-bar > View > Terminal (Ctrl+') - Observe Terminal Panel opens with PowerShell
6) Kill the PowerShell terminal - Observe the terminal panel close
7) Menu-bar > View > Terminal (Ctrl+') - Observe Terminal Panel opens with Git Bash

Hope these steps help.

I have the same issue, too. But there is one difference to #132150:
After a reboot, it opens Powershell every time. When opening VS Code several times during a windows session, some of the times the correctly configured git bash is opened. So maybe this could be related to caching oder something like that.

My default is Git Bash but I get Powershell on every first launch after a Windows reboot.

This ticket appears to be Windows-specific, but there are also issues with the incorrect terminal type being opened after a window reloads on other platforms.  Tasks related to those are getting marked as duplicates of this.
Does this task cover Linux and OS X issues as well?

Hello there! I found a bug in the line 921 of the file ./src/vs/workbench/contrib/terminal/browser/terminalService.ts. It never enters in the next condition when the terminal profiles are not loaded already because !Array() is always false.
if (!this._terminalProfileService.availableProfiles) {

I hope it can be helpful. See you soon.

It has something to do with the -nologo arg and automatic updates for me.
Even though my default terminal is set to bash as well, whenever there is a new version of Powershell VSCode starts with a Powershell terminal until I upgrade to the latest version -> close all terminals in VSCode -> shut VSCode down and restart.  It will work fine until the next update.  Users of Windows Terminal have the option of using the -nologo arg to suppress this, not sure if there is some workaround for VSCode users.

What would you expect the behavior to be with terminal reattach?

I had closed my SSH remote window after testing something else.
I set my default Windows profile to be "Git Bash".
I reconnected to it to verify this issue.
I got reconnected to my PowerShell terminal.

Actually, I see this repro even when not reattaching.

I was seeing it pretty consistently when my default shell was pwsh on Code - OSS/macOS

not able to reproduce this in insider's on macOS

interesting - can reproduce in OSS though on macOS

removing this throttle fixes it https://github.com/microsoft/vscode/blob/b0bc9dd1f91e0dd07dd5564b57abb32b1ca43a06/src/vs/workbench/contrib/terminal/browser/terminalProfileService.ts#L100-L103

yes when profilesReady has been awaited, the length of the available profiles is still 0

@meganrogge is this 5 seconds too little? Does changing that to a large number like 60000 also fix the problem? https://github.com/microsoft/vscode/blob/2e0e882ac5997526583fd4e9e204ee77bdd534d8/src/vs/workbench/contrib/terminal/browser/terminalProfileService.ts#L70

yes

Great! The problem must be the shared process + pty host takes too long to startup sometimes. So if it's more than 5 seconds we create it using the fallback shell launch config and then still wait for the start up anyway. How about we change it to 20 seconds and then change the barrier open to:
			if (!this._profilesReadyBarrier.isOpen()) {
				// log warning that it took 20 seconds to resolve terminal profiles
				this._profilesReadyBarrier.open();
			}


electrum-ltc: <IP_ADDRESS> -> <IP_ADDRESS>

Motivation for this change
Updated version, added a needed python dependency
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@asymmetric .. Please check & kindly merge. Thanks

@kim0 remember to reuse the template text when you open a PR , with all the relevant checkboxes checked.

@asymmetric .. Thanks, frankly today is my first day touching nix, and some of those checks were way above my head :) I tested with nix-build locally on a linux server, and it worked.

No worries, just:

insert the template in the PR description
change the PR's title according to the guidelines
change the commit message according to the guidelines

@asymmetric .. Hope it's better now. Thanks

Do you also get this error when running electrum-ltc?
Exception in thread Thread-6:
Traceback (most recent call last):
  File "/nix/store/hr461qqci171p6k53wwz52ifyp2h9g9l-python-2.7.14/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/nix/store/h0cl51fksvgf64il3zci05ldcn72rck4-electrum-ltc-<IP_ADDRESS>/lib/python2.7/site-packages/electrum_ltc/interface.py", line 208, in run
    socket = self.get_socket()
  File "/nix/store/h0cl51fksvgf64il3zci05ldcn72rck4-electrum-ltc-<IP_ADDRESS>/lib/python2.7/site-packages/electrum_ltc/interface.py", line 123, in get_socket
    s = self.get_simple_socket()
  File "/nix/store/h0cl51fksvgf64il3zci05ldcn72rck4-electrum-ltc-<IP_ADDRESS>/lib/python2.7/site-packages/electrum_ltc/interface.py", line 101, in get_simple_socket
    l = socket.getaddrinfo(self.host, self.port, socket.AF_UNSPEC, socket.SOCK_STREAM)
error: [Errno 16] Device or resource busy

@asymmetric .. I guess it's working fine for me on linux x64
kim0@rttm:~/nixpkgs$ /nix/store/ys37yj8qjd1688406v0hh1zxd3973k3r-electrum-ltc-<IP_ADDRESS>/bin/electrum-ltc make_seed
orbit proud latin enjoy kingdom erosion exclude discover evoke sadness hover axis
kim0@rttm:~/nixpkgs$ /nix/store/ys37yj8qjd1688406v0hh1zxd3973k3r-electrum-ltc-<IP_ADDRESS>/bin/electrum-ltc version
<IP_ADDRESS>


Reported memory consumption in contrast to real memory consumption.

On a M6000 with 12GB the reported memory consumption from MXNet debug_str does not correspond to the real memory consumption measured with nvidia-smi.
cuDNN v5

Phase
nvidia-smi
debug_str
batch size

Training
11310 MiB
6948 MiB
16

Training
5752  MiB
3474 MiB
8

Prediction
7208 MiB
3096 MiB
16

cuDNN v4

Phase
nvidia-smi
debug_str
batch size

Training
11307 MiB
6948 MiB
16

Prediction
7442 MiB
3088 MiB
16

This network consists of
2*(Conv -> LeaktReLU -> BatchNorm) -> Pooling -> 2*(Conv -> LeaktReLU -> BatchNorm) -> Pooling
                                         |                                                |
                          Concat:    UpSampling                +                     UpSampling -> Conv -> Softmax

Debug Str reports internal allocation, such as internal representation, but not includes weight and gradient.

could it be possible to get them equal? I noticed this problem in my previous experiment in #1981. The get_cost function parsed the debug_str to give a memory estimation.

echo @antinucleon debug_str only amounts to the static allocation part of intermediate results, the real execution memory cost is going to be larger.

So the example I am looking at right now is https://gist.github.com/vchuravy/bdd8b080a64621433359d039a1a38ae9
Am I right in assuming that every output that has no storage_id is not  part of the internal allocation? Those should be parameters and gradient?
That would leave dynamic allocations?

Is the workspace for deconvolution and convolution reported as part of the total allocated?

no, they are not so far. These are dynamic memory that are allocated in the first pass

We should have all information to compute the minimum size of the workspace during shape-inference. Would it be possible to make allocate workspace statically? I am currently working on a network where workspace is ~5GB with a network size of 3.3GB.

.

This issue is closed due to lack of activity in the last 90 days. Feel free to reopen if this is still an active issue. Thanks!


Array lists with set capacities in SimpleBatcher

Feature Request
This is not exactly a feature request, but a potential enhancement request. While working on #2444, I noticed this array list with a set capacity:
List<RedisCommand<Object, Object, Object>> batch = new ArrayList<>(Math.max(batchSize, 10));

This logic actually appears three times inside SimpleBatcher. My questions are:

is there any reason for setting the capacity of these array lists? (It's unlikely that it is bringing any noticeable performance enhancements)
any specific reason for the max(..., 10)?

I'm asking this because in the code I'm working on, I thought about setting @BatchSize() to a huge value like Integer.MAX_VALUE in order to operate solely on manual flushes via flush() calls. The problem is that those lists are being preallocated according to the value in the annotation, so one quickly runs into an OOM if @BatchSize() is too big (that's how I found that code).
My enhancement proposal is to stop setting the capacity on those lists. In case my suggestion is welcome, I would also propose we further improve that code by not even having to allocate new lists inside prepareForceFlush() and prepareDefaultFlush(), but instead relying solely on the one created inside flush() (and thus avoid an unnecessary extra copy as well).
Thoughts? I'd be glad to create a PR for it, but I wanted to check here first if you think it makes sense.
Thanks!

Preallocation makes some sense to avoid collection resizing. Indeed, the preallocation calculation is wrong, it should rather be Math.min(batchSize, queue.size()).

That's fixed now.

Feel free to submit a pull request. Happy to merge improvements if they make sense.


Add allow input types for specific expected return type

Fix issue: https://github.com/microsoft/Power-Fx/issues/1356

✅ No public API change.

✅ No public API change.

✅ No public API change.

✅ No public API change.

✅ No public API change.


Document how to prevent people from using OSS when using mirrord for Teams

Document the necessary security policies

Closed in #265


Misleading error message when mixing properties and patternProperties

Hello,
seen on jsonschema 3.2.0, when mixing the use of properties and patternProperties, the error message may be misleading by only indicating existing patterns without properties.
Example:
import json, jsonschema

schema = json.loads('''
{
    "$schema": "http://json-schema.org/draft-07/schema",
    "type": "object",
    "properties": {
        "description": {
            "type": "string"
        }
    },
    "patternProperties": {
        "^zzz-": {
            "type": "string"
        },
        "^hi-": {
            "type": "string"
        }
    },
    "additionalProperties": false
}
''')

data = json.loads('''
{
    "_description": "",
    "zzz-DISABLED_test": ""
}
''')

jsonschema.validate(data, schema)

produces jsonschema.exceptions.ValidationError: '_description' does not match any of the regexes: '^hi-', '^zzz-':
Traceback (most recent call last):
  File "error_msg.py", line 31, in <module>
    jsonschema.validate(data, schema)
  File "../python3.8/site-packages/jsonschema/validators.py", line 934, in validate
    raise error
jsonschema.exceptions.ValidationError: '_description' does not match any of the regexes: '^hi-', '^zzz-'

Failed validating 'additionalProperties' in schema:
    {'$schema': 'http://json-schema.org/draft-07/schema',
     'additionalProperties': False,
     'patternProperties': {'^hi-': {'type': 'string'},
                           '^zzz-': {'type': 'string'}},
     'properties': {'description': {'type': 'string'}},
     'type': 'object'}

On instance:
    {'_description': '', 'zzz-DISABLED_test': ''}

While it is correct it is not complete, the real cause is that is did not matched any of the regexes (^hi-, ^zzz-), nor any known properties (description).
Best, Alexandre

Hi there -- I don't immediately see a way this can be done.
jsonschema.validate is the "entry-level" API, and it picks a single "best matching" error of a bunch. Here in your example, there are two separate errors that'll be raised from your instance, one from properties and one from patternProperties -- unless something synthesized some new error by inspecting all of the errors and kind of rolling them up, there wouldn't really be a place to do this. The best is just to use iter_errors if you want to know all the things that are wrong.
I'm going to close this I think since the above seems like a bit of a rabbit hole, but I'm willing to revisit in the future if there are further examples that could be clarified with something like the above. It's definitely different from anything that best_match does till now though.


[Bug]: Weird gap in underline between format-prefix and module when using emoji

Checklist

[X] I have read the appropriate section in the contributing guidelines
[X] I believe this issue is a problem with polybar itself and not a misconfiguration on my part
[X] I have searched for other open and closed issues that may have already reported this problem
[X] I have checked the known issues page for this problem.
[X] I have followed the debugging guide to narrow down the problem to a minimal config.

Steps to reproduce
Run polybar bar.
Minimal config
[bar/bar]
width = 100%
height = 27
radius = 6.0
fixed-center = false

background = #252737
foreground = #dfdfdf

line-size = 3
line-color = #f00

border-size = 4
border-color = #00000000

wm-name = "mypolybar"

padding-left = 0
padding-right = 2

module-margin-left = 1
module-margin-right = 2

enable-ipc = true

font-0 = fixed:pixelsize=10;2
font-1 = fixed:pixelsize=10;2
font-2 = NotoColorEmoji:fontformat=truetype:scale=10:antialias=false;1
override-redirect = true

modules-right = memory

[module/memory]
type = custom/script
exec = echo "foo"
label = "%output%"
interval = 30
format-prefix = "🧠 "
format-prefix-foreground = #f4abba
format-underline = #f4abba

; vim:ft=dosini

Polybar log
notice: Parsing config file: polybar-minimal-config
notice: Loaded font "fixed:pixelsize=10" (name=DejaVu Sans, offset=2, file=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf)
notice: Loaded font "fixed:pixelsize=10" (name=DejaVu Sans, offset=2, file=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf)
notice: Loaded font "NotoColorEmoji:fontformat=truetype:scale=10:antialias=false" (name=Noto Color Emoji, offset=1, file=/usr/share/fonts/truetype/noto/NotoColorEmoji.ttf)
notice: Termination signal received, shutting down...

Expected behavior
No gap in underline between format-prefix emoji and module itself.
Actual behavior
Some modules are shown with gap in underline between module and format-prefix emoji.

Window Manager and Version
bspwm 0.9.10
Linux Distribution
Ubuntu 22.04
Polybar version
polybar 3.5.7

Features: +alsa +curl +i3 +mpd +network(libnl) +pulseaudio +xkeyboard

X extensions: +randr (+monitors) +composite +xkb +xrm +xcursor

Debian package, build flags removed from output for reproducibility
You can refer to the build logs at:
https://buildd.debian.org/status/package.php?p=polybar

Additional Context / Screenshots
No response

Can you include a screenshot of the behavior you're experiencing using exactly the minimal config you provided?

I just wanted to show you with the previous screenshot, that it's not persistent. For some modules it's the case, for some it's not.

My apologies, I didn't see the break in the underline in your original screenshot. Could you update your description of the issue with something to that effect? I don't have this issue using FontAwesome in my personal config.

I am sorry, I don't really understand what you mean by "Could you update your description of the issue with something to that effect?". I mean, I don't know what's wrong with my current description of the issue.

I can only see a gap in the underline of the affected modules—the text rendering looks ok. I was asking if you could edit your description to mention that the gap appears in the underline.

This is one of the weirder bugs that I've seen recently. I reduced the config even further and noticed a few things:
[bar/bar]
width = 200px
font-0 = monospace
font-1 = NotoColorEmoji:scale=10

modules-left = text

[module/text]
type = custom/text
format = "🧠%{-u}   %{-u}    %{-u}  "
format-background = #fff

Just the mere existence of the emoji messes up the rendering later on. It seems the whole renderer jumps forward a few pixels.
These gaps happen whenever I put a %{-u} tag (any other tag works as well). Polybar renders all consecutive text at once, but when there is a tag, it first has to process the tag and then render what comes after it. So it seems whenever polybar renders a new piece of text (after every tag), the renderer for some reason introduces a small gap, but this only happens if the emoji is there at the start.
There seems to be some mismatch between how many pixels polybar thinks it rendered and how many it actually rendered. I'll have to investigate further.

Alright, looks like the emoji takes about 17.5 pixels to render, while all other characters take an integer number of pixels. Because of that all future rendering blocks start at a half pixel which cairo doesn't really handle that well, causing these gaps. I think I'm able to solve this by just rounding up the number of pixels taken up by characters.

I did a little more investigating and I found that all of the emoji present in the original screenshot present gaps, some were "darker" than others (depending on the bg color).

[bar/bar]
width = 350px
font-0 = monospace
font-1 = NotoColorEmoji:scale=10

modules-right = text1 text2 text3 text4 text5 text6
module-margin-left=1

[module/text1]
type = custom/text
format = "🧠%{-u}   "
format-background = #fff

[module/text2]
type = custom/text
format = "📅%{-u}   "
format-background = #fff

[module/text3]
type = custom/text
format = "💻%{-u}   "
format-background = #fff

[module/text4]
type = custom/text
format = "🔥%{-u}   "
format-background = #fff

[module/text5]
type = custom/text
format = "🔋%{-u}   "
format-background = #fff

[module/text6]
type = custom/text
format = "🔊%{-u}   "
format-background = #fff

Thanks a lot for fixing it! It was annoying me for quite some time!


Added and fixed some Hindi translations

Added Hindi strings for Import and Export Users and fixed one more.
Before:

After:

@tarunsinghal92 or @NikhilM98 could you review?

@NikhilM98 could you check the fix?

Nice. Thanks.


Clustername for discord bot isn't correctly defined

Description
Following the helm command to deploy botkube for discord:
helm install --version v0.12.4 botkube --namespace botkube --create-namespace \
--set communications.discord.enabled=true \
--set communications.discord.channel=<DISCORD_CHANNEL_ID> \
--set communications.discord.botID=<DISCORD_BOT_ID> \
--set communications.discord.token=<DISCORD_TOKEN> \
--set config.settings.clusterName=<CLUSTER_NAME> \
--set config.settings.kubectl.enabled=<ALLOW_KUBECTL> \
--set image.tag=v0.12.4 \
botkube/botkube

doesn't correctly define the k8s cluster name.
Expected behavior
First message sent by the bot with the correct cluster name.
Actual behavior
First message sent by the bot:
...and now my watch begins for cluster 'not-configured'!
Steps to reproduce
Deploy botkube for discord using that helm command.

Actually, I think that issue affects all messaging tools.

Hi @jlejeune, thanks for reporting this issue.
A small background of this problem. Currently, we're working on v0.13.0 and that is the one of the breaking change, for more details please see https://github.com/kubeshop/botkube/issues/614.
Unfortunately, we don't have versioning on our website, yet. It's sth that will be fixed shortly https://github.com/kubeshop/botkube-docs/issues/80.
And you are right, we need to keep the old naming for now 👍
Thanks!

@jlejeune Thank you very much for opening the issue and the fix PR! I would love to talk to you about how you're using BotKube if you can spare a few minutes. If you email me at<EMAIL_ADDRESS>I can send a link to set up a time.


[SourceKit] fix -Wqual-cast warning

When building SourceKit on Linux, this would result in a number of
-Wqual-cast warnings due to the const being dropped.  Add an explicit
cast.  NFC.

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please test and merge


Typesafe Errorhandling (similar to rust-error-handling)

Suggestion
Hi, TS is there to give type-safety but currently the errorhandling with try-catch is not type-safe. There are alternatives like the Either-Monad but it requires functional-programming style. I suggest an alternative to try-catch that is simmilar to rust error-handling and it should be a good match to existing feautures of TS.
Here every method can return a (or multiple) subclass(es) of the Error-class instead to throw it. So every method will have a signature like: "number | ErrorType1 | ErrorType2". When calling this method with an additional operator, a check by TS must be made and if the returntype is a instanceof Error, this method must also return automatically with the corresponding errortype. See Examples below.
Use Cases

Statically typed error-handling
force the user to reason more about the error-path
readable error-handling code

Examples
This is what is possible in TS now:
class Error1 extends Error {
  constructor(message: string) {
    super(message);
  }
}

class Error2 extends Error {
  constructor(message: string) {
    super(message);
  }
}

function withErrors(i: number) {
  if (i === 1) {
    return new Error1("Error1");
  } else if (i === 2) {
    return new Error2("Error2");
  } else if (i === 3) {
    return new Error1("Error1 again");
  }

  return "NormalReturnType";
}

function happyPath() {
  const withErrorsVar = withErrors(1); //Error1 | Error2 | "NormalReturnType"
  if (withErrorsVar instanceof Error) {
    //dont handle error here
    return withErrorsVar; //Error1 | Error2
  }

  console.log("this is happy path and a cast was made");
  takeaString(withErrorsVar); //"NormalReturnType"

  return "ReturnSpecialTypeInsteadOfUndefined";
}

function takeaString(param: string) {
  console.log("consume" + param);
}

//handle error here
function errorHandling() {
  const happyPathVar = happyPath(); //Error1 | Error2 | ReturnSpecialTypeInsteadOfUndefined

  if (!(happyPathVar instanceof Error)) {
    return;
  }

  if (happyPathVar instanceof Error1) {
    console.log("hanndle Error1");
    console.log(happyPathVar); //Error1
  } else if (happyPathVar instanceof Error2) {
    console.log("hanndle Error2");
    console.log(happyPathVar); //Error2
  } else {
    exhaustiveCheck(happyPathVar); //never
  }
}

function exhaustiveCheckk(s: never) {
  console.log("exhaustiveCheck");
}

This instanceof Error checks make the code verbose. I suggest to create an operator that will make this checks under the hood. The above code should be written like this:
//no change
class Error1 extends Error {
  constructor(message: string) {
    super(message);
  }
}

//no change
class Error2 extends Error {
  constructor(message: string) {
    super(message);
  }
}

//no change
function withErrors(i: number) {
  if (i === 1) {
    return new Error1("Error1");
  } else if (i === 2) {
    return new Error2("Error2");
  } else if (i === 3) {
    return new Error1("Error1 again");
  }

  return "NormalReturnType";
}

//new operator here
//no instanceof Error checks, just the happy path
function happyPath() { //return: Error1 | Error2 | ReturnSpecialTypeInsteadOfUndefined
  const withErrorsVar = withErrors(1)!!!; //instanceof Error check must be made under the hood with automatic return type inference

  console.log("this is happy path and a cast was made");
  takeaString(withErrorsVar); //"NormalReturnType" because the !!!-operator was used

  return "ReturnSpecialTypeInsteadOfUndefined"; //if returntype is void than a special returntype must be returned
}
//no change
function takeaString(param: string) {
  console.log("consume" + param);
}

//handle error here
//error-pattern-matcher would be great
//but if(a instancfeof Error) is also ok
function errorHandling() {
  const happyPathVar = happyPath(); //Error1 | Error2 | ReturnSpecialTypeInsteadOfUndefined

  //something like this...
  //with automatic casting and exhaustiveCheck
  errorPattern(happyPathVar =>
    Error1: console.log("hanndle Error1"),
    Error2: console.log("hanndle Error2"),
  )
}

Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[ ] This could be implemented without emitting different JS based on the types of the expressions
[ ] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[x] This feature would agree with the rest of [TypeScript's Design Goals]

[x] This feature would agree with the rest of [TypeScript's Design Goals]

It really wouldn't. It would be against goal 3 and 8, and non-goal 5.

This just seems like an inversion of the Either monad into an imperative style without any concrete benefits. It doesn't really fit in with our general philosophy of building primitives that can compose into larger systems, and this pattern of programming isn't prevalent in the JS ecosystem already, so it doesn't look like something people would be eager to adopt even if it did exist.


Never inline the prepare functions

These functions are used for keeping the stack memory clean on the host recursive code paths. EVM supports up to 1024 levels of recursion, so if one is not careful with the stack memory allocations, the stack memory can blow up.
Benchmarks show dramatic stack memory improvements when ont inlining these functions. A recursive bomb uses around 1.1MB of stack when these functions are not inlined. If inlined the recursive bombs blow up the stack.
Fixes #589

nice!


Check Cloud watch alarms & prune

Didn't need any of the Cloud Watch alarms. Deleted them all:


Improve build process to use Nginx + PHP

Currently the build process for production utilizes Laravel Sail, which is meant for development. Using Nginx for the main front-end and static asset server, and then proxying to a PHP server like fast-cgi for everything else is much more production-ready, but I ran into issues with how Inertia seems to function.
Not sure if it's an nginx issue, or something else, but it seems like certain headers are getting stripped (or never added in the first place) for inertia responses from the server.
See the top of docker-compose.prod.yaml for commented out services that should reflect a more stable production build. Currently though, they don't completely work.

This has been implemented


Change name

Hi, i suggest you to change the name of this theme because is misleading with the original Material Theme Palenight. (which you started from)
https://github.com/equinusocio/vsc-material-theme

So you force me to request a takedown.

Hey! You'll have to wait a few days... Before I can decide whether to effect that.
Thanks.

@whizkydee Ok, so reopen this issue.


Fix incorrect fromPage in entry-animation-start

In my app, this.parentElement.selectedItem would yield the "to" page in the entry-animation-start event.  This corrects the behavior.

You are absolutely right, and it does solve the problem.
Thanks a lot ! :+1: