Add Rules related to usage of kotlin.Result

kotlin.Result is available for general usage as of Kotlin 1.5
But you can accidentally suppress exceptions with a combination of runCatching and getOrNull, getOrDefault and getOrElse
These can end up being the equivalent catch(t: Throwable) or arguably worse because it might be harder to catch in code review if people are not as familiar with what runCatching and friends do.
All the detekt rules that apply to catch(t: Throwable) should probably have an equivalent warning for runCatching, mapCatching and getOrNull, getOrDefault and getOrElse
runCatching/mapCatching  should be mostly avoided.
and getOrNull, getOrDefault and getOrElse should be replaced with getOrThrow or fold with an NON-EMPTY onFailure lambda.
If the code contains in onFailure, fold or recover, that is the analog of a catch(t: Throwable) block.
Specifically:
val foo = runCatching { /* code */ }.getOrNull()

is the equivalent of:
val foo = try {  /* code */ } catch(t: Throwable) { null }

and
val foo = runCatching { /* code */ }.getOrDefault(/* default */)

is the equivalent of:
val foo = try {  /* code */ } catch(t: Throwable) { /* default */ }

and
val foo = runCatching { /* code */ }.getOrElse { /* default */ }

is the equivalent of:
val foo = try {  /* code */ } catch(t: Throwable) { /* default */ }

Result is not a good API, at least to me. Either from arrow is way better. But I'm not sure if detekt should discorage the usage of runCatching or mapCatching. I think that to do that we should need some "literature" to pointing at.
Probably we could expand SwallowedException to forbid the usage of Result.getOrDefault, Result.getOrElse and Result.getOrNull. And we should take a look of fold with empty onFailure too.
I would like to know the opinion of others on this regard.
Meanwhile, as a workaround, you can use ForbiddenMethodCall rule to forbid the usage of getOrDefault, getOrElse and getOrNull. Or even runCatching and mapCatching.

I was thinking about this. Result.getOrElse gives you the oprtunity to handle the exception, so maybe we should be carefull forbidding this one. The other two don't provide the exception so they should be flagged.

Just to add a bit of context that may help to decide whether these rules should be added or not, here is the issue discussing problems of runCatching https://github.com/Kotlin/kotlinx.coroutines/issues/1814
Brief summary:

runCatching catches Throwable, not Exception, so it will catch also OutOfMemoryError, StackOverflowError and so on
It swallows CancellationException when used in the coroutines world, so it may break structured concurrency

Anyway, this issue proposes to replace catch(Throwable) with runCatching, so it will be correct in the case developer really need to catch all throwables.

runCatching  is the real issue.  Result itself (and mapCatching) isn't an issue if it's constructed responsibly some other way.
I believe adding runCatching as default ForbiddenMethodCall in default-detekt-config.yml is sufficient.

It would be really bold from our side (detekt) to Forbid runCatching, we need blog posts, books or similar things to support that decision. I agree that runCatching should be deprecated but I'm not 100% sure if it will be a good idea to forbid it from out side.

I'm not 100% sure if it will be a good idea to forbid it from our side.

maybe the rule could be off by default?


Removed ValidateCharacters.vi from Register Subsystem.vi

SMO namining convention suggest to use dot to separate, but Registry removes dots from names, so when I need to find a shared resouce I need to call it without dots.
I don't see any usage of this, just more complication.
Also, this seems to make it incompatitble with onStart.vi call of ListSharedResources.vi when using dots on the class name. I think it would always create a new instance of that shared resource;
Currently I'm working SMO without ValidateCharacters.vi.

Assume this enumarateStaticDependencies.vi:

Endurance.DB is used in a lot of subsystems, including Endurance.Test, Endurance.UI.Config.User, etc. All this subsystems are somehow nested to Endurance.lvclass SMO.
enumarateStaticDependencies.vi is called by onStart.vi

Also fixing the onStart.vi scope of Shared Instance verification

Unnecessary execution of "ListSharedResources.vi" when resources are marked as 'False' 'Shared Instance'.
Case one SMOs have 'False' 'Shared Instance'  with the same 'Subsystem Name' to an already registered shared instance it would not create a new 'private instance' because a SharedResource reference would be used instead.

This:

Becomes this:

Hi Ricardo,
I believe you are confusing two types of dependencies: inheritance and composition.
The dot notation is a convention for inheritance. However, there is no single convention that I know of for composition/aggregation patterns.  Certain characters, including dots, can cause conflicts in maintaining an easy to parse composition dependency lineage.
For example, let's assume you have an instrument derived from "Instrument.lvclass" and it depends on a subsystem of type "tool.modelA.lvclass". The naming convention for inheritance informs us that "tool" is a generalization of the "modelA" class. However, it does not inform you that the "Instrument" class depends (through composition) on the "modelA" class.

Take this screenshot above from LaunchDependency.vi.
When you launch a dependency, statically or dynamically-defined, the "owner attribute" is constructed to include the lineage of the object, i.e. its ownership tree. In this example, the Qualified Name of the tool.modelA object created by the Instrument object would be "Instrument.toolmodelA". Note the use of a single dot to separate the different levels in the ownership tree. This lineage is constructed from the unique name of the object, not its class name on disk. By removing the validate character method in the registry, you are affecting the ability of the framework to construct a unique signature that would allow it to dynamically route messages to an object based on the composition of the system at runtime.
There are no conventions for composition. We could have used "/" to separate the object layers in the composition tree, but then it would also potentially conflict with a developer's wish to extend the framework using web services and require encoding or escape characters. The choice of the dot is to anticipate that future extensions of the framework will not force encoding schemes to be used for things such as configuration management, URL pasrsing or dynamic message routing to service remote calls through a generic server, etc.
It is by no means a universal solution, but this is the one currently chosen for the framework. Before making changes that affect the behavior of a bunch of other use cases, we should have a discussion about advantages and disadvantages of using this notation for composition. I'm happy to entertain this discussion and see how it impacts present and future development of SMOs.
Shared Resources
You are using the list of shared resources to access objects by the name of their classes, assuming there will only be one instance in memory and any point in time. This is an assumption that is not always valid. It might be for your specific application, but this is rarely the case for larger applications. For example, what if you have two identical pumps connected on COM1 and COM2? Both could be spawned from the same class but started with different configurations (serial port, baud rate, etc.). If you rely on a class name, you would not be able to differentiate at runtime without hardcoding the names. This is why a dependency should not be defined with its class name and why the dot notation does not apply to composition as a universal means of defining the objects.
Your system could look like this, if you were to not give an explicit name to your dependencies:

Instrument
Instrument.Pump
Instrument.Pump_0001

Now, consider how you would store your persistent configuration for these objects.
The first pump connected to COM1 would be labeled "Instrument.Pump" in your configuration string, whereas the second pump connected to COM2 would be lebeled "Instrument.Pump_001". What if you need to disable the first pump in your system, temporarily to make some tests? If you do not specifically name your dependencies and rely strictly on the class name at creation, you would be creating only one pump and therefore would have Instrument.Pump... which might load the wrong configuration file and try to connect to COM1 instead of the intended COM2, unless Instrument has correctly saved the configuration where you explicitely create your pump at runtime using the name "Pump_0001" in "enumerateStaticDependencies".
Concept of Shared Resources: Aggregation
The proposed fix to onStart( ) is, from my perspective, removing a feature from the framework. The concept of shared resource is to reuse already existing components in a system instead of starting up a new one. In essence, launching a dependency can result in two things: the caller creates a new dependency and controls its lifetime (composition) or the caller uses a dependency owned by another object instance (aggregation). If your object does not find an object already created because it does not have the correct name, then the problem needs to be corrected upstream by specifyng the name that will be recognized.
Think of a smartphone with a single camera that can be used by multiple apps. The phone's top-level app will likely have a resource manager which creates, when needed, an object of type camera and gives permission to apps to make use of it. This resource manager creates the camera object, starts it when needed and allows apps that need it to request access to this shared resource. If a second app needs to use the camera, it does too. Neither of those apps "own" the camera object. They depend on the camera through aggregation. If you allow all apps to create their own camera instances, you'll create resource conflicts. This is the idea of assigning a resource as "shared".
You are correct that your Endurance Database is shared by multiple subsystems and should be aggregated in your objects. The implementation I recommend is to define your dependency cluster with the name EnduranceDB (no dot), such that you can load that from configuration within your "enumertateStaticDependencies" method if the name might change over time.
It is by design that the static dependencies check that a statically-defined object it needs is already a shared resource or not. If it is, the caller adds the existing object to its dependencies through aggregation. If it is not, it creates it and adds it to its dependencies through composition.
It is the responsibility of the object's owner to determine whether or not an object is shared. The proposed fix suggests that we should reverse this responsibility. The "shared resource" attribute as defined in "enumerateStaticDependencies" represents the desired behavior that the caller SMO wants to give to its dependency, should it be the owner of its lifetime. If it instead finds that the dependency already exists (and is not its owner), you will notice in the LaunchDependency method that the attribute will not be changed, because the shared key will not match...

I see that remove invalid chars is added for a reason that is not well understood by me.
I will keep that discussion in the issue you opened specially for this.
About ListSharedResouces always trying to find object, even if is not marked as shared... It means that when setting up dependencies, I just need to set up as shared the "main" enumarateStaticDependencies, and the others would find it even if is setted shared resources to false?
This seems to be very hacky, but I was always setting all my shared resources to T in main SMO and nested SMOs, but it seems that if it was false it would work anyway.
My system works with a UI.ClimateSimulation, that is a UI to setup a setpoint table for values. It is used as non shared resouces by two different SMOs, the UI.Template and the UI.Config.General. I would imagine that if one of them would be shared, all of them would be pointing to the solo shared instance.
I did change to prevent future problems, as I'm repeating names of SMOs instances if they are the same class and the only instance of this class in that level, as I find easier to do this way.

This seems to be very hacky, but I was always setting all my shared resources to T in main SMO and nested SMOs, but it seems that if it was false it would work anyway.

I don't think it is a hack. Once the owner of a resource sets the "Shared = True" flag, then that resource becomes available to others. By having ownership on a subsystem, the caller remains the only one to be able to control its lifetime (using a shared key created from the dependency's GUID). All other subsystems that find it by name (or regex) from the list of shared resources available, will be able to use its public API.

I would imagine that if one of them would be shared, all of them would be pointing to the solo shared instance.

Yes, if one subsystem is a shared resources and subsequently launched subsystems find a perfect match for both the name of the object and its type, then it would use that instance already created.
I think I see how you understood the shared resource concept now. You thought that the enumerateStaticDependencies method was setting the shared resource flag and meant "please use a shared resource if you find it" when it actually means "please make this dependency available to others if I'm the first to create it". Both meanings make sense, from different perspective :-)
In this case, the enumeration of dependencies is a declaration of what they are.
Here are some thoughts. Let me know if those make sense and it could be a start for documenting this feature...

1- Declare what are the subsystems that this SMO depends on. This method declares all the names and types of objects it needs to operate and what are the attributes/behaviors of those objects when created.
For each dependency needed:
2- Check if a shared resource with the exact name exists?
3- If none have been found, propagate the object type as defined in enumerateStaticDependencies. If a shared resource matches the name provided, check if it matches the type as well. If it does, propagate the shared resource reference. If it does not, propagate the type as defined in enumerateStaticDependencies.
4- Launch the dependency. If the dependency is a shared resource, add it to dependencies list (aggregation). If the dependency does not exist yet, create it, take ownership and start it with the attributes as defined (composition). If the "Shared Resource" attribute of the newly launched dependency is TRUE, then it becomes available for any subsequent objects to use.


Support running Qiskit jobs with multiple circuits

Qiskit supports to submit multiple circuits combined to one job. All circuits in the job are computed as a batch,  which reduces the waiting time in the queue. This can be used for computing gradients as well as a batch of inputs for a circuit, for eample when using a KerasLayer.
I would like to call the qnode with a list of inputs that which result in one job send to the qiskit device. The same can be done for computing gradients. In my oppinion, this would also require to change the behavior of the KerasLayer to provide a batch computation method.

Thanks @l45k! Improved batching support is definitely something we're looking at for PennyLane.
Currently, we have the batch_execute() method added to QubitDevice. Devices that inherit from this can override this method to take advantage of their own batching capabilities, with the Braket device being one example. At the moment, batch_execute can only be useful when calculating gradients, but we're working on how we can extend that to batching more generally.
For the PennyLane-Qiskit plugin, batch_execute() is not currently defined and so just works sequentially. The first step for extending batch support to this plugin would be to write a batch_execute() method that takes advantage of Qiskit functionality. Contributions are welcome!

Hey @trbromley,
Thanks for your answer! Unfortunately, I already looked through the code myself and could not figure out a way to implement it efficiently. The 'batch_execute()' would be perfect for solving the issue. However,  as you already mentioned, it is only implemented (in some devices) for computing gradients.  Therefore,  more changes in the PennyLane codebase would be required to achieve a 'batch_execute()' for general computations. From what I have seen, the clean way would be to add something like a new BatchQubitDevice, since changing the QubitDevice would require many changes.
What are your thoughts about it?
I will give implementing the 'batch_execute()' in PennyLane_Qiskit a try. I keep you updated.

Hi @l45k, as @trbromley mentions, we are planning to extend batch_execute to be used in more places in devices (and become the default). This should land in an upcoming version of PennyLane soon.
In the meantime, the method batch_execute already exists in QubitDevice, which most plugin devices inherit from. That means one could already call it directly with no need to modify PennyLane code (we haven't added a user-facing UI to make this automatic, but the function is already there :slightly_smiling_face:)
Currently batch_execute just does a sequential execution for all received circuits. If you have something more powerful in mind, e.g., sending multiple jobs via the qiskit plugin at one time, one would also have to overwrite batch_execute in the QiskitDevice to do this.

Hi @l45k, with #156 merged, this feature should now be available on the master branch of the repository and will be included in the next release.


Specifying format-all-formatters does not seem to have an effect

I am trying to get format-all-mode to use rubocop for my project. I have created the following .dir-locals.el file:
((nil
  (format-all-formatters
   ("Ruby" rubocop))))

I have also confirmed that format-all-formatters is set to what I expect in a Ruby file:
format-all-formatters is a variable without a source file.

Value in #<buffer company.rb>
(("Ruby" rubocop))

However, when running format-all-buffer, I get a message telling me rufo is not installed:
helm-M-x-execute-command: You need the "rufo" command. You may be able to install it via "gem install rufo".

What could be causing this? Feel free to ask for more information if it is needed.

Nothing is obviously wrong. Are you running Doom Emacs? Most mysterious bug reports come from Doom users :)

Bingo. I'm using Doom Emacs (and I have +format-with-lsp set to nil)

That explains. Unfortunately, I can't help with Doom since I don't use it and they modified the behavior or format-all quite a bit. Please ask in their issue tracker; they can probably help.

Thank you. I'll ask and re-open this if/when I have an answer.


refactor: Move main mod API funcs to ModLoaderMod, from ModLoader

Moves the main funcs from ModLoader.method to ModLoaderMod.method, as discussed in #153.
Some vars had to be moved from ModLoader to ModLoaderStore: is_initializing and script_extensions.
Includes deprecated funcs in the main ModLoader file. Developed alongside #207 (which downgrades the inevitable flood of fatal errors to just warnings).
Related:

#153
#207

Fancy fixing the conflicts and merging this @ithinkandicode?

Tested again with Brotato and 9 aktive Mods


Integration Test - Release - 2019/05/15 14:52:04

Auto create for integration test. IssueCommandFlow

#pri1

Just type '#backlog'

#pri2

#backlog

#assign PRMergerTest1

#assign NonAllowedUser

NonAllowedUser is not a valid GitHub ID, or is not a collaborator on this repo.

NonAllowedUser is not a valid GitHub ID, or is not a collaborator on this repo.

#reassign PRMergerTest2

GitHub user PRMergerTest1 has been removed from the MicrosoftDocs organization, so they were automatically removed as an assignee.

GitHub user PRMergerTest1 has been removed from the MicrosoftDocs organization, so they were automatically removed as an assignee.

#reassign NonAllowedUser

NonAllowedUser is not a valid GitHub ID, or is not a collaborator on this repo.

#please-close


fix: remote_scan panic on empty native table

Fixes #1671

> create table test (a int);
Table created
> select * from test;
┌┐
└┘

Apart from this, we also want to fix broadcast message rpc. It errors when trying to send an empty stream (using ClientExchange(Send/Recv)Execs:
abc.csv:
id,name

glaredb local:
> create external table abc from local (location 'abc.csv');
Table created
> select * from abc;
Error: Execution error: failed to stream broadcast exchange: Status { code: Unknown, message: "Remote session error: stream missing first IPC batch", metadata: MetadataMap { headers: {"content-type": "application/grpc", "date": "Wed, 30 Aug 2023 17:22:15 GMT", "content-length": "0"} }, source: None }


Create a mock API service for inserting new events to the MongoDB

Create a mock API service for inserting new events into the MongoDB.
Events = Clients' credit card transactions

Done but I accidentally pushed to main

see pull request


tweak(evil): respect users' evil-collection-key-blacklist

Fixes #6119.
By appending the value of evil-collection-key-blacklist (if set by user, else nil by defvar) when setting it.

Makes sense to me. Thanks again for your help!


Tracking the file descriptor leaks issues

This is for tracking the current file descriptor leaks issues:

[X] the pipes are not close after a child process finished its job and solved by this PR #39.
[x] Using the git-unix during the update of opam-repository and that could be solved by this PR https://github.com/mirage/ocaml-git/pull/590
[x] When we are getting the oldest opam-repository commit after doing a solve, we can end-up with lot pipes opened at same time. This is PR #47  that is supposed to solve it.
[X] close the all unused file descriptors opened by git-unix #49

cc @tmcgilchrist

After the merge of this PR #49, we can revert https://github.com/ocurrent/ocaml-ci/pull/742 (upgrade solver/solver-ci and ocaml-ci/solver-ci submodule https://github.com/ocurrent/ocaml-ci/pull/757).
This is already stress tested :+1:
@tmcgilchrist  @maiste @mtelvers


Not showing temperature  on SSD disks

Describe the bug
Hi there, Currently i have a dell r720 with SSD disks but not showing the temperature but shows the CPU temps
To Reproduce
zabbix_get -s myip -k mini.disktemp.discovery[getverb,"prometheusdellhagroup"]
ZBX_NOTSUPPORTED: Unsupported item key.
root@prometheus:~#  smartctl -a -i /dev/sda
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.15.18-12-pve] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Intel 730 and DC S35x0/3610/3700 Series SSDs
Device Model:     INTEL SSDSC2BB800G4
Serial Number:    PHWL522402FJ800RGN
LU WWN Device Id: 5 5cd2e4 04c55ea1a
Firmware Version: D2010370
User Capacity:    800,166,076,416 bytes [800 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 2.6, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Tue Jun  9 21:33:13 2020 -05
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00)	Offline data collection activity
					was never started.
					Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0)	The previous self-test routine completed
					without error or no self-test has ever
					been run.
Total time to complete Offline
data collection: 		(    0) seconds.
Offline data collection
capabilities: 			 (0x79) SMART execute Offline immediate.
					No Auto Offline data collection support.
					Suspend Offline collection upon new
					command.
					Offline surface scan supported.
					Self-test supported.
					Conveyance Self-test supported.
					Selective Self-test supported.
SMART capabilities:            (0x0003)	Saves SMART data before entering
					power-saving mode.
					Supports SMART auto save timer.
Error logging capability:        (0x01)	Error logging supported.
					General Purpose Logging supported.
Short self-test routine
recommended polling time: 	 (   1) minutes.
Extended self-test routine
recommended polling time: 	 (   2) minutes.
Conveyance self-test routine
recommended polling time: 	 (   2) minutes.
SCT capabilities: 	       (0x003d)	SCT Status supported.
					SCT Error Recovery Control supported.
					SCT Feature Control supported.
					SCT Data Table supported.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   000    Old_age   Always       -       2
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       36320
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       17
170 Available_Reservd_Space 0x0033   099   099   010    Pre-fail  Always       -       0
171 Program_Fail_Count      0x0032   100   100   000    Old_age   Always       -       4
172 Erase_Fail_Count        0x0032   100   100   000    Old_age   Always       -       0
174 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       12
175 Power_Loss_Cap_Test     0x0033   100   100   010    Pre-fail  Always       -       640 (215 1778)
183 SATA_Downshift_Count    0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0033   100   100   090    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
190 Temperature_Case        0x0022   085   076   000    Old_age   Always       -       15 (Min/Max 13/24)
192 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       12
194 Temperature_Internal    0x0022   100   100   000    Old_age   Always       -       26
197 Current_Pending_Sector  0x0032   100   100   000    Old_age   Always       -       0
199 CRC_Error_Count         0x003e   100   100   000    Old_age   Always       -       0
225 Host_Writes_32MiB       0x0032   100   100   000    Old_age   Always       -       2792434
226 Workld_Media_Wear_Indic 0x0032   100   100   000    Old_age   Always       -       8222
227 Workld_Host_Reads_Perc  0x0032   100   100   000    Old_age   Always       -       77
228 Workload_Minutes        0x0032   100   100   000    Old_age   Always       -       2179026
232 Available_Reservd_Space 0x0033   099   099   010    Pre-fail  Always       -       0
233 Media_Wearout_Indicator 0x0032   092   092   000    Old_age   Always       -       0
234 Thermal_Throttle        0x0032   100   100   000    Old_age   Always       -       0/0
241 Host_Writes_32MiB       0x0032   100   100   000    Old_age   Always       -       2792434
242 Host_Reads_32MiB        0x0032   100   100   000    Old_age   Always       -       9647272

SMART Error Log Version: 1
No Errors Logged

Screenshots

Please complete the following information:

OS: [e.g. Debian] 9
Zabbix server version: [e.g. 3.0] 4.4
Active or passive check: [e.g. Passive] active
Using zabbix proxy: [e.g. No proxy] none

ZBX_NOTSUPPORTED: Unsupported item key.
Recheck configuration and restart the agent.

correct i restarted the agent same still shows on zabbix no temperature

Given your configuration this output is impossible:

root@monitor:~# zabbix_get -s myip -k mini.cputemp.discovery[get,"prometheusdellhagroup"]
ZBX_NOTSUPPORTED: Unsupported item key.

I think there's some host confusion.

Thanks for the reply, im putting the IP of the zabbix agent prometheusdellhagroup
or is it the other way around?

root@monitor:~# zabbix_get -s myip -k mini.disktemp.discovery[getverb,"prometheusdellhagroup"]

root@prometheus:~#  smartctl -A -i /dev/sda
?

thanks for the reply
root@prometheus:~# smartctl -A -i /dev/sda
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.15.18-12-pve] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Intel 730 and DC S35x0/3610/3700 Series SSDs
Device Model:     INTEL SSDSC2BB800G4
Serial Number:    PHWL522402FJ800RGN
LU WWN Device Id: 5 5cd2e4 04c55ea1a
Firmware Version: D2010370
User Capacity:    800,166,076,416 bytes [800 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 2.6, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Thu Jun 11 23:34:09 2020 -05
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   000    Old_age   Always       -       2
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       36370
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       17
170 Available_Reservd_Space 0x0033   099   099   010    Pre-fail  Always       -       0
171 Program_Fail_Count      0x0032   100   100   000    Old_age   Always       -       4
172 Erase_Fail_Count        0x0032   100   100   000    Old_age   Always       -       0
174 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       12
175 Power_Loss_Cap_Test     0x0033   100   100   010    Pre-fail  Always       -       640 (215 4764)
183 SATA_Downshift_Count    0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0033   100   100   090    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
190 Temperature_Case        0x0022   086   076   000    Old_age   Always       -       14 (Min/Max 13/24)
192 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       12
194 Temperature_Internal    0x0022   100   100   000    Old_age   Always       -       25
197 Current_Pending_Sector  0x0032   100   100   000    Old_age   Always       -       0
199 CRC_Error_Count         0x003e   100   100   000    Old_age   Always       -       0
225 Host_Writes_32MiB       0x0032   100   100   000    Old_age   Always       -       2792626
226 Workld_Media_Wear_Indic 0x0032   100   100   000    Old_age   Always       -       8222
227 Workld_Host_Reads_Perc  0x0032   100   100   000    Old_age   Always       -       77
228 Workload_Minutes        0x0032   100   100   000    Old_age   Always       -       2182012
232 Available_Reservd_Space 0x0033   099   099   010    Pre-fail  Always       -       0
233 Media_Wearout_Indicator 0x0032   092   092   000    Old_age   Always       -       0
234 Thermal_Throttle        0x0032   100   100   000    Old_age   Always       -       0/0
241 Host_Writes_32MiB       0x0032   100   100   000    Old_age   Always       -       2792626
242 Host_Reads_32MiB        0x0032   100   100   000    Old_age   Always       -       9647272

root@monitor:~# zabbix_get -s 181.xx.xxx.xx -k mini.disktemp.discovery[getverb,"prometheusdellhagroup"]
ZBX_NOTSUPPORTED: Unsupported item key.

Try this one:
https://github.com/nobodysu/zabbix-mini-IPMI/blob/disk_temp_regexps/mini_ipmi_smartctl.py

root@monitor:~# zabbix_get -s 181.xx.xxx.xx -k mini.disktemp.discovery[getverb,"prometheusdellhagroup"]
ZBX_NOTSUPPORTED: Unsupported item key.

That's impossible. Either 181.xx.xxx.xx is not the host you need or it's incorrectly configured (userparameters).

Thanks for the reply, that update seemed to work but also i know why it was not working because i had to add a -p because i dont use the 10050
 zabbix_get -s 181.xx.xx.xx -p 30063 -k mini.disktemp.discovery[getverb,"prometheusdellhagroup"]
  Path guess: linux

  Python version:
 3.5.3 (default, Sep 27 2018, 17:25:39)
[GCC 6.3.0 20170516]

  Sender version:
 zabbix_sender (Zabbix) 3.0.7
Revision 64609 21 December 2016, compilation time: Jun  4 2017 07:14:06

Copyright (C) 2016 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.

  Config's main settings:
Server=monitor.mydomain.com
ServerActive=monitor.mydomain.com
Timeout=30

  Please report any issues or missing features to:
https://github.com/nobodysu/zabbix-mini-IPMI/issues

zabbix_sender [38746]: DEBUG: answer [{"response":"success","info":"processed: 42; failed: 0; total: 42; seconds spent: 0.000940"}]
info from server: "processed: 42; failed: 0; total: 42; seconds spent: 0.000940"
sent: 42; skipped: 0; total: 42

  Note: the sender will fail if server did not gather LLD previously.

  Data sent to zabbix sender:

"prometheusdellhagroup" mini.disk.info[sda,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sda] "28"
"prometheusdellhagroup" mini.disk.tempMin[sda] "25"
"prometheusdellhagroup" mini.disk.tempMax[sda] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sda] "60"
"prometheusdellhagroup" mini.disk.info[sdb,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdb] "34"
"prometheusdellhagroup" mini.disk.tempMin[sdb] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdb] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdb] "60"
"prometheusdellhagroup" mini.disk.info[sdc,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdc] "29"
"prometheusdellhagroup" mini.disk.tempMin[sdc] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdc] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdc] "60"
"prometheusdellhagroup" mini.disk.info[sdd,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdd] "28"
"prometheusdellhagroup" mini.disk.tempMin[sdd] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdd] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdd] "60"
"prometheusdellhagroup" mini.disk.info[sde,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sde] "31"
"prometheusdellhagroup" mini.disk.tempMin[sde] "25"
"prometheusdellhagroup" mini.disk.tempMax[sde] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sde] "60"
"prometheusdellhagroup" mini.disk.info[sdf,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdf] "28"
"prometheusdellhagroup" mini.disk.tempMin[sdf] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdf] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdf] "60"
"prometheusdellhagroup" mini.disk.info[sdg,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdg] "30"
"prometheusdellhagroup" mini.disk.tempMin[sdg] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdg] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdg] "60"
"prometheusdellhagroup" mini.disk.info[sdh,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdh] "29"
"prometheusdellhagroup" mini.disk.tempMin[sdh] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdh] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdh] "60"
"prometheusdellhagroup" mini.disk.info[ConfigStatus] "CONFIGURED"
"prometheusdellhagroup" mini.disk.temp[MAX] "34"

Hi there again, i was checking and found this error

zabbix_get -s <IP_ADDRESS> -k mini.disktemp.discovery[getverb,"Example host"]

root@monitor:~# zabbix_get -s 181.xx,xx.xx -p 30063 -k mini.disktemp.discovery[getverb,"prometheusdellhagroup"]
  Path guess: linux

  Python version:
 3.5.3 (default, Sep 27 2018, 17:25:39)
[GCC 6.3.0 20170516]

  Sender version:
 zabbix_sender (Zabbix) 3.0.7
Revision 64609 21 December 2016, compilation time: Jun  4 2017 07:14:06

Copyright (C) 2016 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.

  Config's main settings:
Server=monitor.mydomain.com
ServerActive=monitor.mydomain.com
Timeout=30

  Please report any issues or missing features to:
https://github.com/nobodysu/zabbix-mini-IPMI/issues

zabbix_sender [28515]: DEBUG: answer [{"response":"success","info":"processed: 42; failed: 0; total: 42; seconds spent: 0.000918"}]
info from server: "processed: 42; failed: 0; total: 42; seconds spent: 0.000918"
sent: 42; skipped: 0; total: 42

  Note: the sender will fail if server did not gather LLD previously.

  Data sent to zabbix sender:

"prometheusdellhagroup" mini.disk.info[sda,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sda] "30"
"prometheusdellhagroup" mini.disk.tempMin[sda] "25"
"prometheusdellhagroup" mini.disk.tempMax[sda] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sda] "60"
"prometheusdellhagroup" mini.disk.info[sdb,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdb] "35"
"prometheusdellhagroup" mini.disk.tempMin[sdb] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdb] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdb] "60"
"prometheusdellhagroup" mini.disk.info[sdc,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdc] "30"
"prometheusdellhagroup" mini.disk.tempMin[sdc] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdc] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdc] "60"
"prometheusdellhagroup" mini.disk.info[sdd,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdd] "29"
"prometheusdellhagroup" mini.disk.tempMin[sdd] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdd] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdd] "60"
"prometheusdellhagroup" mini.disk.info[sde,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sde] "32"
"prometheusdellhagroup" mini.disk.tempMin[sde] "25"
"prometheusdellhagroup" mini.disk.tempMax[sde] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sde] "60"
"prometheusdellhagroup" mini.disk.info[sdf,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdf] "30"
"prometheusdellhagroup" mini.disk.tempMin[sdf] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdf] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdf] "60"
"prometheusdellhagroup" mini.disk.info[sdg,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdg] "31"
"prometheusdellhagroup" mini.disk.tempMin[sdg] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdg] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdg] "60"
"prometheusdellhagroup" mini.disk.info[sdh,DriveStatus] "PROCESSED"
"prometheusdellhagroup" mini.disk.temp[sdh] "30"
"prometheusdellhagroup" mini.disk.tempMin[sdh] "25"
"prometheusdellhagroup" mini.disk.tempMax[sdh] "45"
"prometheusdellhagroup" mini.disk.tempCrit[sdh] "60"
"prometheusdellhagroup" mini.disk.info[ConfigStatus] "CONFIGURED"
"prometheusdellhagroup" mini.disk.temp[MAX] "35"

That should work. What about
zabbix_get -s <IP_ADDRESS> -k mini.disktemp.discovery[get,"Example host"]
?

thanks for the reply this is what i get
root@monitor:~# zabbix_get -s 181.xx.xx.xx -p 30063 -k mini.disktemp.discovery[get,"prometheusdellhagroup"]
{
    "data": [
        {
            "{#DISK}": "sda"
        },
        {
            "{#DISK}": "sdb"
        },
        {
            "{#DISK}": "sdc"
        },
        {
            "{#DISK}": "sdd"
        },
        {
            "{#DISK}": "sde"
        },
        {
            "{#DISK}": "sdf"
        },
        {
            "{#DISK}": "sdg"
        },
        {
            "{#DISK}": "sdh"
        }
    ]
}

But now on the console shows the temp of the disk , whats odd is the error on the discovery and only 2 disks cannot seem to show temperature

the two disks sdi and sdj
but the temperature info show on the S.M.A.R.T
root@prometheus:~# smartctl -A -i /dev/sdi
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.15.18-12-pve] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Intel 730 and DC S35x0/3610/3700 Series SSDs
Device Model:     INTEL SSDSC2BB800G4
Serial Number:    CVWL4205025H800RGN
LU WWN Device Id: 5 5cd2e4 04bc630be
Firmware Version: D2010370
User Capacity:    800,166,076,416 bytes [800 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 2.6, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Wed Jun 17 14:33:19 2020 -05
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       40545
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       13
170 Available_Reservd_Space 0x0033   100   100   010    Pre-fail  Always       -       0
171 Program_Fail_Count      0x0032   100   100   000    Old_age   Always       -       0
172 Erase_Fail_Count        0x0032   100   100   000    Old_age   Always       -       0
174 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       10
175 Power_Loss_Cap_Test     0x0033   100   100   010    Pre-fail  Always       -       648 (242 2742)
183 SATA_Downshift_Count    0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0033   100   100   090    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
190 Temperature_Case        0x0022   084   075   000    Old_age   Always       -       16 (Min/Max 12/27)
192 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       10
194 Temperature_Internal    0x0022   100   100   000    Old_age   Always       -       27
197 Current_Pending_Sector  0x0032   100   100   000    Old_age   Always       -       0
199 CRC_Error_Count         0x003e   100   100   000    Old_age   Always       -       0
225 Host_Writes_32MiB       0x0032   100   100   000    Old_age   Always       -       11946315
226 Workld_Media_Wear_Indic 0x0032   100   100   000    Old_age   Always       -       35665
227 Workld_Host_Reads_Perc  0x0032   100   100   000    Old_age   Always       -       39
228 Workload_Minutes        0x0032   100   100   000    Old_age   Always       -       2432545
232 Available_Reservd_Space 0x0033   100   100   010    Pre-fail  Always       -       0
233 Media_Wearout_Indicator 0x0032   066   066   000    Old_age   Always       -       0
234 Thermal_Throttle        0x0032   100   100   000    Old_age   Always       -       0/0
241 Host_Writes_32MiB       0x0032   100   100   000    Old_age   Always       -       11946315
242 Host_Reads_32MiB        0x0032   100   100   000    Old_age   Always       -       7643789

root@prometheus:~# smartctl -A -i /dev/sdj
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.15.18-12-pve] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Intel 730 and DC S35x0/3610/3700 Series SSDs
Device Model:     INTEL SSDSC2BB800G4
Serial Number:    PHWL503402WQ800RGN
LU WWN Device Id: 5 5cd2e4 04c4c0d90
Firmware Version: D2010370
User Capacity:    800,166,076,416 bytes [800 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 2.6, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Wed Jun 17 14:33:47 2020 -05
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       37095
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       17
170 Available_Reservd_Space 0x0033   100   100   010    Pre-fail  Always       -       0
171 Program_Fail_Count      0x0032   100   100   000    Old_age   Always       -       0
172 Erase_Fail_Count        0x0032   100   100   000    Old_age   Always       -       0
174 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       14
175 Power_Loss_Cap_Test     0x0033   100   100   010    Pre-fail  Always       -       657 (220 2744)
183 SATA_Downshift_Count    0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0033   100   100   090    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
190 Temperature_Case        0x0022   084   077   000    Old_age   Always       -       16 (Min/Max 12/25)
192 Unsafe_Shutdown_Count   0x0032   100   100   000    Old_age   Always       -       14
194 Temperature_Internal    0x0022   100   100   000    Old_age   Always       -       27
197 Current_Pending_Sector  0x0032   100   100   000    Old_age   Always       -       0
199 CRC_Error_Count         0x003e   100   100   000    Old_age   Always       -       0
225 Host_Writes_32MiB       0x0032   100   100   000    Old_age   Always       -       2732864
226 Workld_Media_Wear_Indic 0x0032   100   100   000    Old_age   Always       -       7065
227 Workld_Host_Reads_Perc  0x0032   100   100   000    Old_age   Always       -       79
228 Workload_Minutes        0x0032   100   100   000    Old_age   Always       -       2225513
232 Available_Reservd_Space 0x0033   100   100   010    Pre-fail  Always       -       0
233 Media_Wearout_Indicator 0x0032   094   094   000    Old_age   Always       -       0
234 Thermal_Throttle        0x0032   100   100   000    Old_age   Always       -       0/0
241 Host_Writes_32MiB       0x0032   100   100   000    Old_age   Always       -       2732864
242 Host_Reads_32MiB        0x0032   100   100   000    Old_age   Always       -       10399520

Thank you again

Hm, is that nvme? They are disabled by default. If not resolved - please provide:
smartctl --scan
smartctl --scan -d nvme

Thanks for the reply, currently there intel SSD 2.5

root@prometheus:~# smartctl --scan
/dev/sda -d scsi # /dev/sda, SCSI device
/dev/sdb -d scsi # /dev/sdb, SCSI device
/dev/sdc -d scsi # /dev/sdc, SCSI device
/dev/sdd -d scsi # /dev/sdd, SCSI device
/dev/sde -d scsi # /dev/sde, SCSI device
/dev/sdf -d scsi # /dev/sdf, SCSI device
/dev/sdg -d scsi # /dev/sdg, SCSI device
/dev/sdh -d scsi # /dev/sdh, SCSI device
/dev/sdi -d scsi # /dev/sdi, SCSI device
/dev/sdj -d scsi # /dev/sdj, SCSI device
root@prometheus:~# smartctl --scan -d nvme
# scan_smart_devices: glob(3) aborted matching pattern /dev/discs/disc*

root@prometheus:~# smartctl -A -i /dev/sdj
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.15.18-12-pve] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Intel 730 and DC S35x0/3610/3700 Series SSDs
Device Model:     INTEL SSDSC2BB800G4
Serial Number:    PHWL503402WQ800RGN
LU WWN Device Id: 5 5cd2e4 04c4c0d90
Firmware Version: D2010370
User Capacity:    800,166,076,416 bytes [800 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 2.6, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Thu Jun 18 19:47:24 2020 -05
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

You are not providing full information. It's either partially old configuration or different computers.
Having these two outputs at the same time is impossible:
root@monitor:~# zabbix_get -s 181.xx.xx.xx -p 30063 -k mini.disktemp.discovery[get,"prometheusdellhagroup"]
root@prometheus:~# smartctl --scan
Please double check.

Thanks for the reply, sorry for not being clear the root@monitor is my zabbix server which is at another site with another WAN IP  and the root@prometheus is the dell server with the SSDs with another WAN ip and another site.

You could run the following command to determine presence of temperature sensor:
smartctl -i -l scttemp /dev/sdX

Thanks for the reply, the update of the template seems to show now


[TypeSpec APIView] Disable old version of check running in unified pipeline

Should be similar to the PRs removing Swagger APIView (unintentionally split across two PRs):
https://dev.azure.com/devdiv/DevDiv/_git/openapi-alps/pullrequest/592698
https://dev.azure.com/devdiv/DevDiv/_git/openapi-alps/pullrequest/592748

Dup of https://github.com/Azure/azure-sdk-tools/issues/9518


Support Webpack v4

I'm getting the following error:
ERROR in ./src/utils/404/404.extract.html
Module build failed: TypeError: Cannot read property 'output' of undefined
    at Object.extractLoader (./node_modules/extract-loader/src/extractLoader.js:31:72)
 @ ./src/utils/404/404.component.ts 18:15-44
 @ ./src/app/index.routing.ts
 @ ./src/app/index.module.ts
 @ ./src/main.ts

This points to the line https://github.com/peerigon/extract-loader/blob/master/src/extractLoader.js#L31, which seems this.options.output is no longer defined.
According to the v4 migration guide (here), this.options has been removed.  Instead of loader-utils and checking this.options, you now get all options from this.query.  Although, I'm not sure if that carries the publicPath option set by the webpack config.  Also not sure what that publicPath's intended usage is here within the context of extract-loader.  Setting it to null worked for me.

This fails in v3 (3.9.1) as well. Setting to options: { publicPath: null } worked too!

@mtraynham you are right that solves partially, but I had to set "publicPath" as an empty string otherwise it will concat "null" to all paths if you are using "html-loader" to process paths from lets say "img:src".

Thanks for pointing out 👍. We're about to ship a fix for this, see PR.

🎉


Portals only show when there is enough content in file

Hi,
Thanks for the great plugin, really neat idea.
I was testing my own custom query when I noticed that sometimes only one result is displayed. However, after a closer look it turned out that the other results are displayed as well but beneath the one that I was seeing (I discovered that by coincidence because I hit a label that was not connected to the visible portal but it still got me traveled).
Soon, I realized that portals are only shown on a place that was occupied by some text in a buffer.
In other words, if you try to open multiple portals in a file that has only one line you will see only one portal.

Ah, this is a good catch. The windows are all rendered, but stacked on top of each other. Some incorrect assumptions that the window height and buffer height will always be the same (which is untrue with the example you pointed out).


Freezing occurs when a client PC connects to an Android phone's hotspot and uses a wireless connection.

[ ] I have read the FAQ.
[ ] I have searched in existing issues.

Environment

OS: windows10
scrcpy version: 2.3.1
installation method:  Windows release
device model: galaxy note 20
Android version: 13

Describe the bug
The title and content are the same.
The Android phone with the hotspot turned on is scrcpy's server.
Is it possible to fix it?
On errors, please provide the output of the console (and adb logcat if relevant).
does not exist
Please paste terminal output in a code block.
does not exist
Please do not post screenshots of your terminal, just post the content as text instead.

"Freezing" only on the computer? On the device?
If you record (scrcpy --record=file.mp4), does the recorded file "freeze"?
What if you reduce the resolution/bitrate? (scrcpy -m1024 -b2M)

"Freezing" only on the computer? On the device?
-> computer, device is OK
If you record (), does the recorded file "freeze"?scrcpy --record=file.mp4
-> recorded file is good.
What if you reduce the resolution/bitrate? (scrcpy -m1024 -b2M)
-> -m1920 -b4m --no-audio

There is no problem when connected to an AP other than tethering.


Support ES5

Describe the feature you'd like:
I'd like react-testing-library to build an ES5 compatible build.  At the moment, I can see there are arrow functions in dist/index.js of version 5.4.4.

Suggested implementation:
Suggest the same fix as https://github.com/kentcdodds/dom-testing-library/issues/160

Describe alternatives you've considered:

Teachability, Documentation, Adoption, Migration Strategy:

Hmmm... Where are you running your tests?

I'm going to do the same fix as in dom-testing-library, but I'm just curious what environment you're running your tests in that doesn't support arrow functions.

:tada: This issue has been resolved in version 5.5.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

Great, thanks :). We're using karma, webpack and Babel. We don't normally transpile dependencies in node_modules.

Gotcha. So I take it that you're running some of your tests in IE then?

Yes, we run them in IE11.


Error calling service climate/set_hvac_mode

Hey, I've just installed this service to my Home Assistant and I thought it was working great as it list all my zones at home. However, as soon as I try to change anything (switching a zone on, changing temperature...) I get this message (translated from Spanish):
"Error calling service climate/set_hvac_mode
Expecting value: line 1 column 2 (char 1)"
Is it something I am doing wrong?

Hi,
Perhaps it's a issue for your hardware ? What is your climate device and airzone webserver version (wifi or ethernet) ?

Hi,
I add autoreconnect on expired token & improve errors message.
Try to upgrade and reopen this ticket if you're still have this issue.
Max


test test_visualize/test_visualize_common fails after matplotlib upgrade

In GitLab by @jdelsman on Apr 9, 2021, 16:50
Since matplotlib 3.4, the number of levels passed to BoundaryNorm must exceed 1 (https://github.com/matplotlib/matplotlib/pull/17830)
This breaks two tests, that pass levels = [0.5] to BoundaryNorm.

In GitLab by @jdelsman on Apr 12, 2021, 14:44
mentioned in commit 1361b0d43f2addf49698f5a169e416640ff68a25


No found my HA in my network by WiFI

Hi I try auto connect my Android app with HA but he not found my HA automatically. I must config manual ? Why ? I am in the same network as Home Assistant and connected by WIFI in my home.

Duplicate of #64


Handle the reader error

The reader can throw an exception if there is no interception, then the application will crashing.
Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[ ] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpm changeset and following the prompts. All changesets should be patch until SvelteKit 1.0

Thank you! Is this the sort of thing it's possible to add a test for, or is it more unpredictable than that?

This is possible if it is possible to expect the server to survive and not fail with an error. We cannot expect exactly a response from the server, since it will be interrupted in any case.

I think to make two requests, if the second one was successful, then the server is alive. I will try to implement.

thank you!


multicluster: sync only the specific cluster

Fixes https://github.com/istio/istio/pull/49657#discussion_r1512056303
The test fails without this PR (c0 is not synced when it should be).

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-security-multicluster_istio
3b81c7d4022554338947c1803106aefb7c5d9c18
link
true
/test integ-security-multicluster

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


Custom credits not working and cant be seen.

Describe your bug here.
The credits scrolls off screen immediately, and it doesn't even write the lines properly. I have put the credits.txt into mods/nabs (my mod folder)/data. and put the icons in mods/nabs/images/credits. Here is an image of it before it scrolled off screen:

And here is the credits.txt file:
"Creators of NPCs are becoming smart!
GroovyDominoes52:groovy:Main developer of 'NPCs are becoming smart!':https://www.youtube.com/channel/UC4vnHZVLYKUvRTMTun8y3cw:F3F340
GamingKittyCath:cath:Groovy's moral support!:https://www.youtube.com/c/gamingkittycath:F0A6EE
LuaBaseScript:lua:Main programmer of NPCs are becoming smart.:https://www.roblox.com/users/931954455/profile:0091FF
Mod developers
DarkMinerULTRA:dark:the one programmer of the mod. did literally everything.:gamejolt.com/@DarkMinerULTRA:44009E"
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Source
What is your build target?
Mac
Did you edit anything in this build? If so, mention or summarize your changes.
Yes. I added the mod and credits, but nothing else.

name::iconname::description::link::color
you put one colon, not two colons
2 = ::
1 = :

I have put one colon! It's the full stops that you think are colons.


strip spaces at the start and end of notes

just dont paste notes with a fuckload of spaces???????

copying from sheet simply ends up with those spaces, not like im personally adding them


Component doesn't work with latest Next.js

Next.JS error:
./node_modules/mapbox-gl/dist/mapbox-gl.css
Global CSS cannot be imported from within node_modules.
Read more: https://err.sh/next.js/css-npm
Location: node_modules/react-mapbox-gl/lib-esm/map.js

package.json
"dependencies": {
    "mapbox-gl": "^1.11.1",
    "next": "9.5.1",
    "react": "16.13.1",
    "react-dom": "16.13.1",
    "react-mapbox-gl": "^4.8.6"
  },
  "devDependencies": {
    "@types/node": "^14.0.27",
    "@types/react": "^16.9.45",
    "typescript": "^3.9.7"
  }

hi, not sure if you resolved this or saw this thread: https://github.com/alex3165/react-mapbox-gl/issues/146,
there seems to be several next.js based solutions to this or adjacent to it. Incidentally none of them worked for me, but it might be my lack of experience with next

None of the examples from #146 showing use of NextJS Dynamic Import feature illustrate use of the Layer and Feature components. For me these components still do not work in NextJS even when using Dyanmic Imports.
Stackoverflow thread with code sample available here.

None of the examples from #146 showing use of NextJS Dynamic Import feature illustrate use of the Layer and Feature components. For me these components still do not work in NextJS even when using Dyanmic Imports.
Stackoverflow thread with code sample available here.

Latest version ^5 works fine with next.js. Suggest to close this issue. :)
I did have to manually add this to my _app.js though
import 'mapbox-gl/src/css/mapbox-gl.css';


[SEO] Fix robots.txt not being served, refine to not allow indexing o…

…f deeper pages
Transcribed the routes from exac.py's flask configuration
Optionally we can disallow everything like the original robots.txt suggested

🤔


Prevent undefined action crash

I've done a little modification to prevent a undefined Exception. When you dont have signed action var in the middleware, the app crashes.

The action always needs to exist. If you don't pass one into dispatch, that's not using Redux correctly. Thanks, but this is handled upstream.

May you considerate this. The crash occurs with redux-logger middleware.


Non HACS installation method?

Requiring HACS for installing SonoffLAN makes things unnecessarily complicated. Why not provide a direct add-on install for Home Assistant? https://developers.home-assistant.io/docs/add-ons/repository/ I am sure it would be greatly appreciated by new or wanabee users (like me).

https://github.com/AlexxIT/SonoffLAN#install-with-hacs
here "Or manually copy sonoff folder from latest release to custom_components folder in your config folder."

Because addons and custom components are completely different things.


How can I use 'gohufont-14' as font?

I've gone into settings.json and tried changing the fontFamily from there. It works for most fonts, but not if I change it to gohufont-14.

/needsMoreInfo


test_size should be either positive and smaller than the number of samples

I am having an error in training a model, it says:
test_size=-22.10536044362292 should be either positive and smaller than the number of samples 4328 or a float in the (0, 1) range

Hi @miggytrinidad 👍
Thank you for testing out deep_autoviml. Can you check if you have the latest version (0.0.71)?
The reason I ask is that I just fixed it and it was uploaded to the latest version.
If not, please let me know and I will investigate it. Can you paste a link to tyhe notebook or dataset that you are using to get that error??
Thanks
AutoViML

I am having an error in training a model, it says:
test_size=-22.10536044362292 should be either positive and smaller than the number of samples 4328 or a float in the (0, 1) range

I am also getting the same error with test_size=-5.25

@AutoViML it's now working!


Define RemoteWrite CRD

We want to provide a new RemoteWrite resource, which will be used to configure the Prometheus.spec.remoteWrite field.
This new CustomerResource should:

have a remoteWrite field which re-use upstream specs from the Prometheus.spec.remoteWrite field.
have a label selector field named clusterSelector to select which Prometheus CR the remote write config will be added to.

Here is an draft example of what a RemoteWrite CR will look like
apiVersion:  monitoring.giantswarm.io/v1alpha1
kind: RemoteWrite
metadata:
  name: adidas-victoria-metrics
spec:
  clusterSelector:  # Labels on Cluster CR to select
    odp/cluster: pap01
  remoteWrite:  # Note: use prometheus/prometheus/config#RemoteWriteConfig for this
    url: https://foobar.com
    writeRelabelConfigs:
    - foobar

Here is an example of the current Prometheus.spec.remoteWrite field we are using to send data to Grafana cloud.
$ k get prometheus halley -oyaml|yq -r -y '.spec.remoteWrite[]'
basicAuth:
  password:
    key: password
    name: remote-write
  username:
    key: username
    name: remote-write
name: halley
queueConfig:
  capacity: 10000
  maxSamplesPerSend: 1000
  minShards: 10
url: https://prometheus-us-central1.grafana.net/api/prom/push
writeRelabelConfigs:
  - action: keep
    regex: (^aggregation:.+|prometheus_tsdb_head_series|prometheus_tsdb_head_samples_appended_total|^slo_.+)
    sourceLabels:
      - __name__

The new CustomResourceDefinition should be added in the https://github.com/giantswarm/apiextensions repository as yaml and go code ( there are tool for generation ).

My bad CRDs are kept close to the code now (see silence-operator and https://github.com/giantswarm/giantswarm/issues/19586). So we might want to add this CRD into prometheus-meta-operator repository, but we also need a mechanism to deploy it ideally a separate chart.

@TheoBrigitte  We do have a helm chart for prometheus-meta-operator, So I believe we could supply it to the CRDs folder

@TheoBrigitte We do have a helm chart for prometheus-meta-operator, So I believe we could supply it to the CRDs folder

I am not super confident and happy with the way helm handle CRDs, it creates more mess than it solves IMO. But I'll gather info and setup a meeting to discuss how we handle CRDs in general, to decide what's the way forward.

Now CRDs are written, we have to work on how to deploy them.
We've discussed and decided to go with templates in our PMO Helm chart.

This basically boils down to :

move the config/crd/monitoring.giantswarm.io_remotewrites.yaml CRD file into the helm/prometheus-meta-operator/templates folder
make sure we have appropriate labels and annotation on the CRD.
test an deploy this

https://github.com/giantswarm/prometheus-meta-operator/pull/906


[help] get linebreak in string

can not get a multi-line string show in proper way with awesome_print
FenestrationSurface:Detailed,\n  Sub Surface 4,                          !- Name\n  door,                                   !- Surface Type\n  ASHRAE 189.1-2009 ExtWindow ClimateZone 3, !- Construction Name\n  Surface 10,                             !- Building Surface Name\n  ,                                       !- Outside Boundary Condition Object\n  ,                                       !- View Factor to Ground\n  ,                                       !- Shading Control Name\n  ,
How to get line break with ap ? the puts/print work perfectly

I assume OP means: Could strings be "evaluated" instead of only shown to be strings?
Any plans to do this / complexity etc?


Add support for file writing protection

This PR adds file protection to files stored in the PINDiskCache.
The related issue is https://github.com/pinterest/PINCache/issues/81

Cool improvement!

Looks like the build is failing because there's no support for NSDataWritingFileProtectionNone on OS X?

Thanks!
You're right. Data protection is enabled at the system level with FileVault.
I've removed this field for OS X

Awesome, thanks so much for adding this! Cool feature!


We should consider a hint/lint for unnecessary type annotations

As we clean up libraries for strong mode I'm seeing some cargo-cult type annotations getting added because the code matches some pattern where it looked like a type annotation was necessary. The result is a littering of type annotations that would get inferred anyway which makes the code noisier and gives a bad impression of how much manual work needs to be done to satisfy strong mode.
If we have a hint where types could otherwise be inferred on things like method calls, ctors, collection literals then we could cut back on some of this.
It might be hard to set a balance on what level of explicit types we want to allow for style reasons.

Yes, this would be nice.  I've also thought that it might be nice to have a tool (maybe part of an intern project) that would eliminate these.  Kind of a dart format for the types.

The think the lint request, https://github.com/dart-lang/linter/issues/1634, is a good request for this.


The Monarch Labyrinth Rewards

So, I completed The Monarch Labyrinth and have several issues. 1. The articuno I received had no item 2. Articuno is not textured  3. Didn't receive the 10k reward that the quest states it gives. 3. Moveset might be wrong(?)(I thought it was a calm mind set, probably wrong on that front.) 4. I thought with the quest changes... you received a M-Ball right before each fight. If this is the case... not a SINGLE one has given me a M-Ball. The ones I have done are Phione, Moltres, and Articuno. I did get lucky and insta catch Phione with a Dusk Ball (or level ball).

ah same with articuno, and i dont think every legendary quest should give you master balls, than it would be a little to easy to catch every legendary pokemon from the quests

I will take a look at this quest this afternoon. Not all legendary quests give masterballs. In fact very few should. If that's not true then I will take a look at that as well. If you see a Lead online ask them to fix your Articuno and reference this post please.


Add Cookie String Parser extension

Description
This extension takes a cookie string and parse to understand improve cookie debugging, etc.
I was having a hard time debugging cookies for a project I'm working and the only tool I found is this one https://cookie-parser.michaelbonner.dev/. For me make sense to have this extension, and actually I'm using it hehe
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

The screenshot are outdated! I will update them today :)

Thanks a lot for the feedback! I already apply the suggestions and do minor changes :)


Update STABLE-RELEASE

Update STABLE-RELEASE to v0.11.0
Purpose of PR?: To update STABLE-RELEASE
Fixes #1338
Does this PR introduce a breaking change?
If the changes in this PR are manually verified, list down the scenarios covered::
Additional information for reviewer? :
Mention if this PR is part of any design or a continuation of previous PRs
Checklist:

[x] Bug fix. Fixes #1338
[x] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] This change requires a documentation update
[x] PR Title follows the convention of  <type>(<scope>): <subject>
[x] Commit has unit tests
[x] Commit has integration tests

@Shreyas220 , can you fix the DCO?


Bug: is_external=True in rx.link breaks component rendering in hover_card and tooltip

Describe the bug
When using is_external=True in an rx.link inside components such as hover_card and tooltip, the component fails to render. However, replacing is_external=True with target="_blank" allows the component to render correctly, enabling the link to open in a new tab as expected. The Reflex documentation recommends is_external=True as a modern replacement for target="_blank", yet this implementation leads to rendering issues in advanced components, while target="_blank" works as intended.
To Reproduce

Use the Bug Code Example below with is_external=True on an rx.link inside hover_card.
Attempt to render the component.

Observed behavior: The component does not render.

Replace is_external=True with target="_blank" as shown in the Functional Code Example below.

Observed behavior: The component renders correctly, and the link opens in a new tab.

Code/Link to Repo
Bug Code Example (is_external=True)
import reflex as rx
from blog.styles.styles import Size
from blog.components.info_text import info_text

def link_icon(icon:bool=True,link_imagen:str ="",color: str = "white", icon_name: str = "github",tamano:str = Size.BIG.value,url:str = "/", title:str = "title", subtitle:str = "subtitle") -> rx.Component:
    transition="all 0.3s"
    hover ={
        "scale": 1.2,
    }
    color_schema="gray"
    color_badge: str = "white"
    if icon:
        return rx.hover_card.root(
                rx.hover_card.trigger(
                    rx.link(
                        rx.icon(
                            tag=icon_name,
                            width=tamano,
                            height=tamano,
                            color=color,
                            transition=transition,
                            _hover=hover,
                        ),
                        href=url,
                        is_external=True,  # Causes component to fail to render
                    ),
                ),
                rx.hover_card.content(
                    info_text(
                        title,
                        subtitle,
                        color=color_badge,
                        color_schema=color_schema
                    ),
                ),
            )

    else:
        return rx.hover_card.root(
                rx.hover_card.trigger(
                    rx.link(
                        rx.image(
                            src=link_imagen,
                            width=tamano,
                            height=tamano,
                            transition=transition,
                            _hover=hover,
                        ),
                        href=url,
                        is_external=True,  # Causes component to fail to render
                    ),
                ),
                rx.hover_card.content(
                    info_text(
                        title,
                        subtitle,
                        color=color_badge,
                        color_schema=color_schema
                    ),
                ),
            )

Functional Code Example (target="_blank")
import reflex as rx
from blog.styles.styles import Size
from blog.components.info_text import info_text

def link_icon(icon:bool=True,link_imagen:str ="",color: str = "white", icon_name: str = "github",tamano:str = Size.BIG.value,url:str = "/", title:str = "title", subtitle:str = "subtitle") -> rx.Component:
    transition="all 0.3s"
    hover ={
        "scale": 1.2,
    }
    color_schema="gray"
    color_badge: str = "white"
    if icon:
        return rx.hover_card.root(
                rx.hover_card.trigger(
                    rx.link(
                        rx.icon(
                            tag=icon_name,
                            width=tamano,
                            height=tamano,
                            color=color,
                            transition=transition,
                            _hover=hover,
                        ),
                        href=url,
                        target="_blank",  # This works as expected
                    ),
                ),
                rx.hover_card.content(
                    info_text(
                        title,
                        subtitle,
                        color=color_badge,
                        color_schema=color_schema
                    ),
                ),
            )

    else:
        return rx.hover_card.root(
                rx.hover_card.trigger(
                    rx.link(
                        rx.image(
                            src=link_imagen,
                            width=tamano,
                            height=tamano,
                            transition=transition,
                            _hover=hover,
                        ),
                        href=url,
                        target="_blank",  # This works as expected
                    ),
                ),
                rx.hover_card.content(
                    info_text(
                        title,
                        subtitle,
                        color=color_badge,
                        color_schema=color_schema
                    ),
                ),
            )

Expected behavior
The expected behavior is for is_external=True to render the component as target="_blank" does, without causing any rendering issues.
Screenshots
Please see the attached screenshots showing:

The error when using is_external=True

The successful rendering using target="_blank"

Specifics:

Python Version: Python 3.10.15
Reflex Version: 0.6.4
OS: Darwin 24.1.0 arm64
Browser: [Version del navegador – completa manualmente]

Additional context
This issue appears when using is_external=True in hover_card or tooltip. Reflex documentation encourages the use of is_external=True as a best practice, but the current implementation is not functional in these specific components.

is_external = True is implicitly mapped to target= rx.cond(True, "_blank", ""). Issue is with the cond statement which is surprising.
If you modify your code to
...
rx.link(
            href=url,
            target=rx.cond(True, "_blank", "_self"),
),

You'd see that it doesn't render the hovercard either. Will investigate this


Change parseEntity to not wrap errors thrown by Decoders and Decodables.

Change parseEntity to not wrap errors thrown by Decoders and Decodables in a ParserError.
This allows the decoding process to report error conditions discovered in the JSON (e.g. embedded error codes) as something other than parsing errors.
Added Decoder and Decodable tests to validate that custom errors can be caught as expected.

I made all the changes suggested above and pushed them directly into master in commit e90ba0fd.


Improve Perf for Semantic Tokens

### Summary of the changes
We were sorting the entire range of semantic tokens, but the Razor tokens are already sorted and just need to be merged in.  The Roslyn semantic tokens are sorted in the generated document, but on transfer to the Razor domain are not necessarily sorted.  Sort the originally Roslyn tokens in the Razor domain, then do a merge. Also, in working with Ranges for semantic tokens, it's very likely the startLine and endLine are the same, and the lookup of the LineInfo shows up in profiles.  If the line numbers are the same, just use the same object for each.
Fixes #8540

Method
Job
Toolchain
NumberOfCsSemanticRangesToReturn
Mean
Error
StdDev
Median
Min
Max
Gen0
Gen1
Gen2
Allocated

'Razor Semantic Tokens Range Endpoint'
Before
.NET 7.0
0
15.57 ms
0.092 ms
0.086 ms
15.57 ms
15.39 ms
15.77 ms
-
-
-
6.19 MB

'Razor Semantic Tokens Range Endpoint'
After
.NET 7.0
0
12.58 ms
0.149 ms
0.132 ms
12.56 ms
12.37 ms
12.83 ms
31.2500
15.6250
15.6250
6.19 MB

'Razor Semantic Tokens Range Endpoint'
Before
.NET Framework 4.7.2
0
30.30 ms
0.468 ms
0.438 ms
30.24 ms
29.60 ms
31.09 ms
812.5000
375.0000
93.7500
6.5 MB

'Razor Semantic Tokens Range Endpoint'
After
.NET Framework 4.7.2
0
24.31 ms
0.308 ms
0.288 ms
24.27 ms
23.91 ms
24.82 ms
812.5000
375.0000
93.7500
6.21 MB

'Razor Semantic Tokens Range Endpoint'
Before
.NET 7.0
100
17.02 ms
0.175 ms
0.164 ms
17.01 ms
16.76 ms
17.28 ms
-
-
-
6.2 MB

'Razor Semantic Tokens Range Endpoint'
After
.NET 7.0
100
12.60 ms
0.209 ms
0.196 ms
12.56 ms
12.28 ms
13.01 ms
31.2500
15.6250
15.6250
6.2 MB

'Razor Semantic Tokens Range Endpoint'
Before
.NET Framework 4.7.2
100
31.35 ms
0.424 ms
0.397 ms
31.18 ms
30.78 ms
31.99 ms
812.5000
375.0000
93.7500
6.5 MB

'Razor Semantic Tokens Range Endpoint'
After
.NET Framework 4.7.2
100
24.43 ms
0.370 ms
0.346 ms
24.60 ms
23.83 ms
24.90 ms
812.5000
375.0000
93.7500
6.21 MB

'Razor Semantic Tokens Range Endpoint'
Before
.NET 7.0
1000
17.84 ms
0.349 ms
0.478 ms
17.65 ms
17.32 ms
19.04 ms
-
-
-
6.22 MB

'Razor Semantic Tokens Range Endpoint'
After
.NET 7.0
1000
12.82 ms
0.253 ms
0.301 ms
12.74 ms
12.38 ms
13.37 ms
31.2500
15.6250
15.6250
6.22 MB

'Razor Semantic Tokens Range Endpoint'
Before
.NET Framework 4.7.2
1000
30.97 ms
0.451 ms
0.422 ms
30.95 ms
30.16 ms
31.87 ms
812.5000
375.0000
93.7500
6.53 MB

'Razor Semantic Tokens Range Endpoint'
After
.NET Framework 4.7.2
1000
25.23 ms
0.325 ms
0.288 ms
25.27 ms
24.83 ms
25.73 ms
812.5000
375.0000
93.7500
6.23 MB

Summary of the changes
We were sorting the entire range of semantic tokens, but the Razor tokens are already sorted and just need to be merged in. The Roslyn semantic tokens are sorted in the generated document, but on transfer to the Razor domain are not necessarily sorted. Sort the originally Roslyn tokens in the Razor domain, then do a merge. Also, in working with Ranges for semantic tokens, it's very likely the startLine and endLine are the same, and the lookup of the LineInfo shows up in profiles. If the line numbers are the same, just use the same object for each.
Fixes #8540
Method	Job	Toolchain	NumberOfCsSemanticRangesToReturn	Mean	Error	StdDev	Median	Min	Max	Gen0	Gen1	Gen2	Allocated
'Razor Semantic Tokens Range Endpoint'	Before	.NET 7.0	0	15.57 ms	0.092 ms	0.086 ms	15.57 ms	15.39 ms	15.77 ms	-	-	-	6.19 MB
'Razor Semantic Tokens Range Endpoint'	After	.NET 7.0	0	12.58 ms	0.149 ms	0.132 ms	12.56 ms	12.37 ms	12.83 ms	31.2500	15.6250	15.6250	6.19 MB
'Razor Semantic Tokens Range Endpoint'	Before	.NET Framework 4.7.2	0	30.30 ms	0.468 ms	0.438 ms	30.24 ms	29.60 ms	31.09 ms	812.5000	375.0000	93.7500	6.5 MB
'Razor Semantic Tokens Range Endpoint'	After	.NET Framework 4.7.2	0	24.31 ms	0.308 ms	0.288 ms	24.27 ms	23.91 ms	24.82 ms	812.5000	375.0000	93.7500	6.21 MB
'Razor Semantic Tokens Range Endpoint'	Before	.NET 7.0	100	17.02 ms	0.175 ms	0.164 ms	17.01 ms	16.76 ms	17.28 ms	-	-	-	6.2 MB
'Razor Semantic Tokens Range Endpoint'	After	.NET 7.0	100	12.60 ms	0.209 ms	0.196 ms	12.56 ms	12.28 ms	13.01 ms	31.2500	15.6250	15.6250	6.2 MB
'Razor Semantic Tokens Range Endpoint'	Before	.NET Framework 4.7.2	100	31.35 ms	0.424 ms	0.397 ms	31.18 ms	30.78 ms	31.99 ms	812.5000	375.0000	93.7500	6.5 MB
'Razor Semantic Tokens Range Endpoint'	After	.NET Framework 4.7.2	100	24.43 ms	0.370 ms	0.346 ms	24.60 ms	23.83 ms	24.90 ms	812.5000	375.0000	93.7500	6.21 MB
'Razor Semantic Tokens Range Endpoint'	Before	.NET 7.0	1000	17.84 ms	0.349 ms	0.478 ms	17.65 ms	17.32 ms	19.04 ms	-	-	-	6.22 MB
'Razor Semantic Tokens Range Endpoint'	After	.NET 7.0	1000	12.82 ms	0.253 ms	0.301 ms	12.74 ms	12.38 ms	13.37 ms	31.2500	15.6250	15.6250	6.22 MB
'Razor Semantic Tokens Range Endpoint'	Before	.NET Framework 4.7.2	1000	30.97 ms	0.451 ms	0.422 ms	30.95 ms	30.16 ms	31.87 ms	812.5000	375.0000	93.7500	6.53 MB
'Razor Semantic Tokens Range Endpoint'	After	.NET Framework 4.7.2	1000	25.23 ms	0.325 ms	0.288 ms	25.27 ms	24.83 ms	25.73 ms	812.5000	375.0000	93.7500	6.23 MB

Were the before and after numbers based on the same benchmark? i.e is the before benchmark only change, and after product change?


Programmatically enabling/disabling not working

Version
1
Reproduction link
https://codesandbox.io/s/kor57z1vy7
(Please use the extension Google Tag Manager to view the tag)
Steps to reproduce
Whenever you try to programmatically fire the $ga.enable/$ga.disable the tracking is still active
What is expected ?
That specific user should be disabled from being tracked in the real time tracking
What is actually happening?
The calls don't seem to do anything, they are initialized but not functioning.

This bug report is available on Nuxt community (#c36)

Added codesandbox

@josh-king to disable or enable https://matteogabriele.gitbooks.io/vue-analytics/content/docs/opt-out.html
Try this:
export default {
  methods: {
    disableTracking () {
      this.$ga.disable()
      // from now on analytics is disabled
    },
    enableTracking () {
      this.$ga.enable()
      // from now on analytics is enabled
    }
  }
}

@ricardogobbosouza Unfortunately when I used the disable-tracking method the user is still being tracked.

Hi @josh-king
I can not reproduce your issue.
What version of nuxt and the analytics-module are you using?

This simple example works perfectly:
// nuxt.config.js
export default {
    modules: [
        ['@nuxtjs/google-analytics', {
            id: 'UA-AAA',
            debug: {
                enabled: true,
                sendHitTask: true
            }
        }]
    ]
}

// pages/index.vue
<template>
    <div>
        <button @click="enableTracking">Enable</button>
        <button @click="disableTracking">Disable</button>
        <button @click="eventTrack">Event track</button>
    </div>
</template>

<script>
    export default {
        methods: {
            disableTracking () {
                this.$ga.disable()
            },
            enableTracking () {
                this.$ga.enable()
            },
            eventTrack() {
                this.$ga.event('category', 'action', 'label', 123)
            }
        }
    }
</script>

@josh-king 	It won't "unload the script" so indications in script blockers will still exist. But nevertheless, the code works.


Add timeout for DynamoDB requests

Timeout defaults to 3000ms, but can be configured via the requestTimeout param.
Also remove no-JSON option.

Thanks @mlolson.

Also remove no-JSON option.

Generally I'd prefer unrelated changes like this to be in separate PRs for easier review.


[FEATURE] Limit check for active combat to the currently active scene

Is your feature request related to a problem? Please describe.
When trying to activate the clock, it's frustrating and unclear to the user when a non-active scene has combat active and this prevents the user from starting the clock.
Describe the solution you'd like
When checking if there is active combat before allowing the user to start the clock, only check the currently active scene has active combat.
Additional context
Failing that, at least tell the user which scene still has active combat so that it's easier to find and close.

I have limited the combat check to the active scene. This is apart of the 1.2.30 release


feat: port Algebra.Category.Module.Colimits

@ocfnash, I've fixed (I think!) the universe issues at the end of this file. If it looks okay, please merge, otherwise ping me on zulip.
bors d+


Trailing whitespace on PK filters in YAMLs from generate-partitions command

Similar to https://github.com/GoogleCloudPlatform/professional-services-data-validator/issues/1151
YAML's created with generate-partition will show literals with trailing whitespaces in filters for String type columns. This is causing undesired behavior (e.g. records being excluded from validation).

Closed with #1182


API: Remove stuttering and consider error for options

Just out of my own experience using functional options (+1 on using them!) I recommend that you remove the Logger prefix in the options and add an error to the Option definition so you can handle invalid values, etc. without breaking the API at a later stage.
https://github.com/jpmcb/gopherlogs/blob/c3745b1201fc753883d6e7f411426306bf21ad7e/options.go#L27

Pushed https://github.com/jpmcb/gopherlogs/commit/e7212f45142f2b98daf611228ee50f16aa7917d6 which introduces returning errors to logger options and reformats logger options to drop the Logger* format:
l, err := gopherlogs.NewLogger(
    gopherlogs.WithLogLevel(0),
)
if err != nil {
    panic("New logger could not be created!")
}


Added std::function support for Callable API

resolves https://github.com/pothosware/PothosCore/issues/180

Looks good.


ie7/ie8 support?

Does this work for ie7 and ie8?

i did not test it yet, but i think it should work :+1:

please help to test and open issues here.


Add a way to get a language given an alias

Is your request related to a specific problem you're having?
I am using CKEditor 5, which allows code blocks in languages such as HTML. An HTML code block will produce the class language-html. When importing the language to be highlighted, html.min.js does not exist. To highlight an HTML code block, the user would be required to select an XML code block instead. Unless, the application maintains a mapping of aliases and languages.
The solution you'd prefer / feature you'd like to see added...
A method that when given an alias, returns the appropriate language.

Start with nothing, and load grammars on the fly.

I don't think this makes sense in the core no-grammars highlight.js library file - since that core includes no grammars - and when you build with bundled grammars this information is already available to query.  It could make sense to add as some sort of separate grammars.json index file though (that could ship with our node and CDN packaging).
This isn't 100% trivial though since the aliases aren't available statically [at build-time] - you'd need to build then execute the built grammars to learn their aliases.  That might not be so bad though with dynamic imports, I'm not sure.
Are you interested in working on a PR that might build such an index file?

I am not very familiar with this project yet, and I do not know the first place to start. I was hoping there was already a way to do such a lookup, and I just couldn't find the documentation.
The approach I am using is to load the no-grammars library file, and then only the grammars that are needed via the CDN. I assume the solution you're suggesting to include the mapping file in the CDN is the only way I will be able to do that. Is there a better approach I could be taking?
Otherwise, I could make an attempt at a PR. It sounds like I would need to build each grammar, extract the aliases, and build the file? Sorry if this doesn't make sense. I am still very confused myself.

... sounds like I would need to build each grammar

The build system does this already.

extract the aliases, and build the file?

Yep.  But extraction requires executing each grammar since they are code, not raw data...

It seems either we need to run the grammars at built time (which seems icky), or make the aliases static meta-data in the comment header... but that would break the API (removing aliases from the runtime grammars) or require us to duplicate the alias data both dynamically and statically - also icky.
I don't think this is as trivial as it seems and also seems like an edge case.  Are you interested in doing the work on this yourself - and accepting it might end up as a 3rd plugin plugin if I feel the complexity is too high?  Otherwise I'll probably close this as a #wontfix for now.


Fixed #29724 -- Fixed Admin date_hierarchy filter by month displays an extra day at timezone boundary.

Fixes ticket 29724.
Refresh current PR.
Fixed failed tests by adding is_dst = True to Trunc.

I moved first commit to a separate PR #12593 and added test.

@felixxm Thanks for merging the first commit in separate PR.
Shall I rebase the PR?

Yes, please.

It's done.


Cleanup print statements into loging statements

I think INFO level is fine to start, we can make it more fine grained toward debug or warn level with further iterations.

+1 :)

I made a PR.
Please feel free to comment if something is wrong and I will fix it.


doxygen 1.9.2 compatibility issue(s)

Doxygen 1.9.2 was released. As a developer I want to officially support the new Doxygen release.
If you find any compatibility issues, pls report them here.
Known issues:

The dark mode toggle is broken (https://github.com/jothepro/doxygen-awesome-css/issues/43#issuecomment-920221174)
In sidebar mode, the separator line between sidebar and content is not going all the way through to the top:

The currently known issues with 1.9.2 have been resolved. Pls re-open this issue if you encounter problems that may be related to doxygen 1.9.2!


Wildcard expansion on Windows

I'm wondering, does Handlebars support wildcard expansion on Windows? or am I doing something wrong:
> handlebars -a js/geonovum/templates/*.css  -f js/templates.js

C:\Users\marcosc\AppData\Roaming\npm\node_modules\handlebars\bin\handlebars:120
    throw err;
    ^
Error: Unable to open template file "js/geonovum/templates/*.css"
    at C:\Users\marcosc\AppData\Roaming\npm\node_modules\handlebars\dist\cjs\precompiler.js:107:25
    at FSReqWrap.oncomplete (fs.js:123:15)

Obviously, the above works fine in Git Bash (and any *nix distro), but fails in cmd.exe. According to the Windows documentation, it's the application's job to do wildcard expansion on Windows.

Would be great, if somebody who is native on Windows could try to fix this. I always have to start my VM and I don't have a complete dev-environment set up there.

depending on the shell, you will probably need to escape the path by wrapping it in quotes.
try
$ handlebars -a "js/geonovum/templates/*.css"  -f js/templates.js

Closing due to inactivity.


[NTR] 'liver abscess' and 'intersphincteric abscess'

Hi, stemming from an HCA request (https://github.com/HumanCellAtlas/ontology/issues/103), would you please consider adding the following two terms, both as subclasses of MONDO:0005227 'abscess':
Term 1 label
liver abscess
HP has HP:0100523 'Liver abscess', so you may prefer to label the new Mondo term 'liver abscess (disease)'?
Synonyms
hepatic abscess
Definition
An abscess in the liver.
WikipediaVersioned:Liver_abscess&oldid=1061021667
(i.e. https://en.wikipedia.org/w/index.php?title=Liver_abscess&oldid=1061021667)
Parent term
Equivalent to:
MONDO:0005227 'abscess' and disease has location some UBERON:0002107 'liver'
Dbxref
SNOMEDCT: Abscess of liver (27916005)
NCIT:C99089 Liver Abscess
Your nano-attribution (ORCID)
0000-0002-2658-1136 (HCA submitter's);
0000-0002-2825-0621 (mine)
Term 2 label
intersphincteric abscess
Definition (free text, please give PubMed ID, if applicable, in format PMID:#######)
An abscess contained between the internal and external anal sphincters.
WikipediaVersioned:Anorectal_abscess&oldid=1066372272
(i.e. https://en.wikipedia.org/w/index.php?title=Anorectal_abscess&oldid=1066372272)
Parent term
MONDO:0005227 'abscess'
Ideally this should be Equivalent to: MONDO:0005227 'abscess' and disease has location something, but there's no Uberon term to represent the intersphincteric space, and I'm not sure that one is needed. So perhaps just leave as subclass of abscess, to avoid delaying term creation?
Dbxref
SNOMEDCT: Intersphincteric abscess (235795007)
Your nano-attribution (ORCID)
0000-0002-2658-1136 (HCA submitter's);
0000-0002-2825-0621 (mine)
Thank you!

@nicolevasilevsky on behalf of HCA, thank you so much for tagging this issue as priority. I noticed that's in the May release milestone. Is that early May please? Asking so I can give an estimate to HCA (so they know in relation to their own release schedule). Thank you.

Yes, early May.


want to remove blank card

wanted to remove blank card from power of knowledge blog

The extra card was added as a reference only.


Rebase initial transactron changes

.gitignore and change in dependencies were lost during rebase, I re-commited them here

There was also
diff --git a/transactron/core/interface.py b/transactron/core/interface.py
new file mode 100644
index 0000000..034c21a
--- /dev/null
+++ b/transactron/core/interface.py
@@ -0,0 +1,57 @@
+# from dataclasses import dataclass, replace
+# from enum import Enum
+# from typing import Any, Self, TypeAlias, TypeVar
+# from amaranth import *
+# from transactron.utils import *
+# from .method import MethodSignature
+#
+#
+# T = TypeVar("T")
+#
+#
+# MemberDescription: TypeAlias = "MethodSignature | MethodsSignature"
+#
+#
+# class Direction(Enum):
+#     Import = "import"
+#     Export = "export"
+#
+#     def __call__(self, description: MemberDescription) -> "Member":
+#         return Member(self, description)
+#
+#     def flip(self) -> Self:
+#         match self:
+#             case Direction.Import:
+#                 return Direction.Export
+#             case Direction.Export:
+#                 return Direction.Import
+#
+#
+# @dataclass
+# class ArraySignature:
+#     description: MemberDescription
+#
+#
+# @dataclass
+# class Member:
+#     flow: Direction
+#     description: MemberDescription
+#
+#     def flip(self):
+#         return replace(self, flow=self.flow.flip())
+#
+#
+# @dataclass
+# class MethodsSignature:
+#     members: Mapping[str, Member]
+#
+#     def flip(self):
+#         return replace(self, members={k: m.flip() for k, m in self.members.items()})
+#
+#     def create(self, *, path: tuple[str | int, ...], src_loc_at=0):
+#         attrs: dict[str, Any] = {}
+#         return attrs
+#
+#
+# class WithMethods:
+#     methods_signature: MethodsSignature

but it is commented out

The commented out code was committed by mistake.


hooks not working on Anthropic/LiteLLM

What Model are you using?

[ ] gpt-3.5-turbo
[ ] gpt-4-turbo
[ ] gpt-4
[x ] Other Anthropic

Describe the bug
Hooks are not working on latest instructor (1.5.2)
To Reproduce
This is not working from LiteLLM or Anthropic :
When I attempt:
client = instructor.from_anthropic(AnthropicBedrock()) #instructor.from_litellm(completion)
client.on("completion:kwargs", self.log_completion_kwargs)

_feedback.py", line 78, in get_llm_response
client.on("completion:kwargs", self.log_completion_kwargs)
^^^^^^^^^
AttributeError: 'Instructor' object has no attribute 'on'

I think this changes will be released with 1.6.0. @jxnl correct me if I am wrong
Check https://github.com/instructor-ai/instructor/pull/1065
If you want to use them, I would suggest cloning and building from main branch or adding a git dependency to your pyproject.toml

ahh ok, thank you.  I would recommend using a feature branch for changes that are not in the pip repository yet, as the readme in GitHub works as authoritative documentation :)

your welcome. I agree fully with your comment above.

should be fixed now


'float' object is not subscriptable

I'm using the code from one of the tutorial notebooks in the repo:
My target function is:
def target(x):
    return np.exp(-(x - 2)**2) + np.exp(-(x - 6)**2/10) + 1/ (x**2 + 1)

x = np.linspace(-2, 10, 10000).reshape(-1, 1)
y = target(x)

plt.plot(x, y);

and my optimiser is defined as follows:
optimizer = BayesianOptimization(f=target, pbounds={'x': (-2, 10)}, random_state=27)
optimizer.maximize(init_points=2, n_iter=2, kappa=5)

it works well when number of iterations = 0, I'm new to the codebase could someone help me solve the issue?

Hey, please see #300 - you need to use a lower version of scipy, or else you can edit the source code as described below.
https://github.com/fmfn/BayesianOptimization/pull/303
Sorry, hopefully this will be fixed by default in the near future


chore: remove usages of Span constructor

Which problem is this PR solving?
The Span constructor from ' @opentelemetry/sdk-trace-base` is planned for removal from the public API (ref).
This PR anticipates the possible breaking changes derived from it
Short description of the changes

Remove usage of new Span constructor in favour of Tracer.startSpan

This package does not have an assigned component owner and is considered unmaintained. As such this package is in feature-freeze and this PR will be closed with 14 days unless a new owner or a sponsor (a member of @open-telemetry/javascript-approvers) for the feature is found. It is the responsibility of the author to find a sponsor for this feature. Are you familiar with this package? Consider becoming a component owner.

Looks like the warning will be for opentelemetry-instrumentation-dns, not baggage-span-procesor. We may need to break up the PR to address the different components due to their level of ownership / maintenance.

@MikeGoldsmith I'll sponsor the PR, then we don't need to break it up :slightly_smiling_face:


Update README.md with apply clarification.

Update the kubectl apply commands in the customizing section to match those the quickstart section. The customizing section did not account for the recently introduced setup/ subdirectory.

Thanks!