HardSwish HardSigmoid are not supported in Pytorch Quantization?

Hello, I am compiling a model with HardSwish/HardSigmoid.
I can run the calib mode, and the model are successfully calibrated/evaluated. In the output model.py that is generated automatically, I can see that:
def __init__(self):
      self.module_133 = py_nndct.nn.Conv2d(in_channels=192, out_channels=192, kernel_size=[1, 1], stride=[1, 1], padding=[0, 0], dilation=[1, 1], groups=1, bias=True)
      self.module_134 = py_nndct.nn.Hardswish(inplace=True)
def forward(self, *args):
      self.output_module_134 = self.module_134(self.output_module_133)

but when I run the deploy mode to compile the _int.xmodel, it generates error:
File "/.../lib/python3.6/site-packages/nndct_shared/compile/xop_creator.py", line 649, in hswish
    mul_fp[0] = quant_config['output'][node.name][0]
KeyError: 'Model/ConvModule[short_conv]/Hardswish[activate]/11363'
During handling of the above exception, another exception occurred:
  File ".../lib/python3.6/site-packages/nndct_shared/compile/xir_compiler.py", line 136, in do_compile
    raise AddXopError(node.name, node.op.type, str(e)
nndct_shared.utils.exception.AddXopError: Failed to add op(name:Model/CSPLayer[1]/ConvModule[short_conv]/Hardswish[activate]/11363, type:hswish) in xGraph.

I am using the Vitis-AI 1.4 with Docker. How should I fix the error ?

Hello, I tested the model you showed in the Docker of xilinx/vitis-ai:<IP_ADDRESS>8(gpu). It gose well when I run the deploy mode to compile the _int.xmodel. Have you checked quant_info.json to see if they all have fix points? Or you can show more details about your model.

Hello, I am compiling a model with HardSwish/HardSigmoid.
I can run the calib mode, and the model are successfully calibrated/evaluated. In the output model.py that is generated automatically, I can see that:
def __init__(self):
      self.module_133 = py_nndct.nn.Conv2d(in_channels=192, out_channels=192, kernel_size=[1, 1], stride=[1, 1], padding=[0, 0], dilation=[1, 1], groups=1, bias=True)
      self.module_134 = py_nndct.nn.Hardswish(inplace=True)
def forward(self, *args):
      self.output_module_134 = self.module_134(self.output_module_133)

but when I run the deploy mode to compile the _int.xmodel, it generates error:
File "/.../lib/python3.6/site-packages/nndct_shared/compile/xop_creator.py", line 649, in hswish
    mul_fp[0] = quant_config['output'][node.name][0]
KeyError: 'Model/ConvModule[short_conv]/Hardswish[activate]/11363'
During handling of the above exception, another exception occurred:
  File ".../lib/python3.6/site-packages/nndct_shared/compile/xir_compiler.py", line 136, in do_compile
    raise AddXopError(node.name, node.op.type, str(e)
nndct_shared.utils.exception.AddXopError: Failed to add op(name:Model/CSPLayer[1]/ConvModule[short_conv]/Hardswish[activate]/11363, type:hswish) in xGraph.

I am using the Vitis-AI 1.4 with Docker. How should I fix the error ?

Hello, I tested the model you showed in the Docker of xilinx/vitis-ai:<IP_ADDRESS>8(gpu). It gose well when I run the deploy mode to compile the _int.xmodel. Have you checked quant_info.json to see if they all have fix points? Or you can show more details about your model.

Hi @chuong98 ,I tested the model you showed in the Docker of xilinx/vitis-ai:<IP_ADDRESS>8(gpu). It gose well when I run the deploy mode to compile the _int.xmodel. Have you checked quant_info.json to see if they all have fix points? Or you can show more details about your model.

Hi, thank you. I make a minimal model with only one [conv-act],
and the model can be compiled with HardSwish and HardSigmoid.
Unfortunately, these activation can only run on CPU.
This is the minimal code:
import torch
import torch.nn as nn
from pytorch_nndct.apis import torch_quantizer
import argparse

class Model(nn.Module):
	def __init__(self):
		super(Model, self).__init__()
		self.conv = nn.Conv2d(3, 8, 3, 1, 1, bias=False)
		# self.act = nn.Hardswish(inplace=True)
		self.act = nn.Hardsigmoid()

	def forward(self, x):
		x = self.conv(x)
		x = self.act(x)
		return x

def parse_args():
	parser = argparse.ArgumentParser(description='mmcls test model')
	parser.add_argument('--out-dir',
						default='cache/test_hswish/quantized',
						help='output result folder')
	parser.add_argument('--quant-mode',
						default='calib',
						choices=['calib', 'test'],
						help='quantization mode. float: no quantization, evaluate float model, calib: quantize, test: evaluate quantized model')
	parser.add_argument('--deploy',
						dest='deploy',
						action='store_true',
						help='export xmodel for deployment')
	args = parser.parse_args()
	return args

if __name__ == '__main__':
	args = parse_args()
	model = Model()
	model.eval()
	device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
	quant_mode = args.quant_mode

	# Quantize model only needs a dummy input
	input = torch.randn([32, 3, 32, 32])
	quantizer = torch_quantizer(args.quant_mode, model, input,
					output_dir=args.out_dir, device=device)
	quant_model = quantizer.quant_model

	if args.deploy:
		#	To generate the xmodel for compilation, the batch size should be 1.
		assert quant_mode == 'test', 'Only test mode can generate xmodel'
		input = torch.randn([1, 3, 32, 32])

	# Run model on dummy input
	input = input.to(device)
	quant_model(input)

	if quant_mode == 'calib':
		quantizer.export_quant_config()
	if args.deploy:
		quantizer.export_xmodel(output_dir=args.out_dir, deploy_check=False)

Also, when I tried with ReLU6, it warns:
[VAIQ_WARN]: ReLU6 has been replaced by ReLU.
Does that mean ReLU6 is not really supported?

Hi @chuong98,
I tested your mini model in the xilinx/vitis-ai:<IP_ADDRESS>8 docker. It can be quantized and deployed with cuda. However, only VCK190 support HardSwish and HardSigmoid compiling. Other hardware will transfer HardSwish and HardSigmoid to CPU automatically.
Besides, we do support ReLU6. The warning you have got is for equalization to improve quantization accuracy.

Hi @chuong98,
I tested your mini model in the xilinx/vitis-ai:<IP_ADDRESS>8 docker. It can be quantized and deployed with cuda. However, only VCK190 support HardSwish and HardSigmoid compiling. Other hardware will transfer HardSwish and HardSigmoid to CPU automatically.
Besides, we do support ReLU6. The warning you have got is for equalization to improve quantization accuracy.
could you explain how to deploy HardSwish on CPU？ is there any example？
Thanks


Add remote hosts to configmap

Update the reactor-config-map schema, Configuration object and add a remote hosts property.
CLOUDBLD-8995
Maintainers will complete the following section

[x] Commit messages are descriptive enough
[x] Code coverage from testing does not decrease and new code is covered
[n/a] Python type annotations added to new code
[x] JSON/YAML configuration changes are updated in the relevant schema
[n/a] Changes to metadata also update the documentation for the metadata
[ ] Pull request has a link to an osbs-docs PR for user documentation updates
[n/a] New feature can be disabled from a configuration file

We should also add documentation for the remote hosts configurations

I opened PR for osbs-docs https://github.com/containerbuildsystem/osbs-docs/pull/209/files


OpenSSL: Security Updates for 15.09

Cherry-picked version of #11469 for the 15.09 release.

@codsl already cherry-picked by @vcunat from your previous PR against master. tnx!

I missed or forgot this PR somehow.


Add serverVersion for cloud

What was changed
With the added temporalVersion check for the reverse call, cloud will always have reverse disabled since the cluster store is never set. I hard coded in 1.17.0 but definitely looking for suggestions here. Is it safe to assume cloud will always be above 1.16? Should I just do a isCloud check here?
Why?
Add reverse events call for cloud

Yeah I guess even when a UI feature is typed to the server version, it wouldn't be the worst to have an env flag for a feature and toggle on after we know they are on a version that supports it.


Whether 2 factors are supported

Hi.
Does the current "gof5" tool support two-factor authentication?
For example, SMS authentication.
Thank you.

See https://github.com/kayrus/gof5/issues/6#issuecomment-696652911 or provide the debug logs.


Unknown prop initializeForm on  tag

just a unknown prop thing but it just bothers me so i am reporting it
happens when using 1.3.0(1) WithPermission with custom menu and MenuItemLink
(ie. in the example in documentation)
Warning: Unknown prop initializeForm on  tag. Remove this prop from the element.

I can validate, this happens to me too.

I had referred to this issue in #1025 too

Same here


TASK: Update binary to the lastest version

The binary has not been updated for 14 months, so the package is not usable via composer.

The phar binary is, and should not be committed. If you install it via composer you can run ./bin/neoscs directly, or am I missing something? I'll create an action that builds the phar for each release.

Hmm then I maybe missed something, got this error and with the compiled phar it works... 🤷♂
php Packages/neos-code-style/bin/neoscs.phar -c fusionLinterConfig.yaml DistributionPackages
PHP Fatal error:  Type of Vette\Neos\CodeStyle\Rules\Neos\ContextInFirstLevelRule::$tokenTypes must not be defined (as in class Vette\Neos\CodeStyle\Rules\Rule) in phar:///Volumes/Development/.../Packages/neos-code-style/bin/neoscs.phar/src/Rules/Neos/ContextInFirstLevelRule.php on line 40

Fatal error: Type of Vette\Neos\CodeStyle\Rules\Neos\ContextInFirstLevelRule::$tokenTypes must not be defined (as in class Vette\Neos\CodeStyle\Rules\Rule) in phar:///Volumes/Development/.../Packages/neos-code-style/bin/neoscs.phar/src/Rules/Neos/ContextInFirstLevelRule.php on line 40
make: *** [fusion_linter] Error 255

Your are running php Packages/neos-code-style/bin/neoscs.phar -c fusionLinterConfig.yaml DistributionPackages
Try this:
php Packages/neos-code-style/bin/neoscs -c fusionLinterConfig.yaml DistributionPackages
Even this should work:
./Packages/neos-code-style/bin/neoscs -c fusionLinterConfig.yaml DistributionPackages

Thanks for the quick responses.
The command works without config file parameter, but with the parameter, the rules cannot be found.
Even if I copy the config from https://raw.githubusercontent.com/cvette/neos-code-style/main/src/config.yaml

Use it now via composer and it works fine 💙


The tool uploads an unwanted __migrate blob

The leasing process creates a __migrate blob and that is not delete after migration is complete

https://github.com/Azure/azure-media-migration/pull/99


Invalid script extension is also invalid path

Godot version:
3.2.1
Issue description:

Shouldn't it be only the latter? Both paths are technically valid.

In script_create_dialog.cpp, before the path is validated, the variable is_path_valid is set to false, which is correct.
However, the path validation that happens in the _validate_path method also checks for a valid extension. When it can't find one, it returns an error ("Invalid extension") and lets the _update_dialog method change the state of the dialog. But this method looks at the is_path_valid flag to determine if the "Invalid path" message should be displayed.
IMHO the user should be warned that the extension is invalid, but the "Invalid path" message should not be displayed, and the "Create" button should not be disabled.

IMHO the user should be warned that the extension is invalid, but the "Invalid path" message should not be displayed, and the "Create" button should not be disabled.

Godot depends on the extension to identify the file type and if it's not correct some things may not work. So the button should be disabled if the extension is invalid. I agree the "invalid path" message should not happen in this case.


Add tuple instances to core?

circe-core currently does not provide Encoder and Decoder instances for tuples, which are instead provided by the generic module. The mechanism is a little more complicated than I'd like—we want tuples to be treated differently from all other case classes, so we have to use implicit prioritization tricks to make sure they end up earlier in line.
This could be simplified a little with #30 if we provided tuple instances in core. I think tuple instances in core are well-motivated anyway, but I originally wanted to see how far I could get without any arity-related boilerplate there.
Does this sound reasonable? I don't have a strong opinion about which boilerplate generation system to use—I guess the starting points are sbt-boilerplate, Argonaut's Boilerplate.scala, or Shapeless's.
(I think this question is pretty much orthogonal to #36, but if there's a way to address both at the same time that would be pretty cool.)

Fixed by #42.


aws-sam-cli: avoid hard-coded requests version (use the nix package version)

Motivation for this change
aws-sam-cli had a hard-coded number dependency on pythonModule.requests's version. This small PR makes it use ${requests.version} instead (thanks to a pointer from @grahamc).
This package has been out of date several times for me (today is the first time I knew how to fix it); this should make it forward-compatible.
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Notify maintainers
cc @andreabedini @dhl

I'm certainly OK with changing it to requests<3, too, if that's more acceptable.

Seems that the requests library is faithful to SemVer according to https://2.python-requests.org/en/master/dev/philosophy/#semantic-versioning . So i think it's safe to do the request<3.
However, I also want to point out that the left side of the replace needs to match exactly each time they decide to bump it as well. It might be worth while to do just a sed -i replace line command like:
sed -i '/requests==/c\requests<3' requirements/base.txt

I opened a PR to fix this upstream, I don't blame them for being adverse to having more flexible versioning, but it would make life easier.
https://github.com/awslabs/aws-sam-cli/pull/1363

I've been feeling guilty for neglecting this package, and seeing this gives me a rush of relief. Thank you @scoates and @jonringer!

I should take myself off the maintainers. I am not using this package anymore

Since aws-sam-cli has advanced to a version much higher than it was at the point this PR was made, I assume it can be closed. Please resubmit or rebase if there's still anything of value.


Changing default roles via Environment Variables

I'm trying to integrate this nexus container to an Active Directory LDAP. The current scenario is that we don't have an access the Active Directory server and add the default roles "nx-admin, nx-deployments, nx-developers" into it. With this, I'm required to follow their group naming standard. Example "devops-administrators" and not "nx-admin".
It would be nice if we can set the default roles via Environment Variables on container launch.
Example:
environment:
LDAP_NEXUS_ADMIN_ROLE: "custom-admin-groupname"

PR submitted https://github.com/Accenture/adop-nexus/pull/2

As pull request was merged, closed. Thank you @bzon .


Bot stops after 1st claim, how can we set it to every hour?

Hello, yes it is normal because I did not program it to work all the time. I will try to correct that.


AYSRun tries to access None value.

Traceback (most recent call last):
  File "/opt/jumpscale8/bin/ays", line 338, in <module>
    cli()
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 716, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 696, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 1060, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 889, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 534, in invoke
    return callback(*args, **kwargs)
  File "/opt/jumpscale8/bin/ays", line 79, in init
    atyourservice.init(role=role, instance=instance, data=data)
  File "/opt/jumpscale8/lib/JumpScale/baselib/atyourservice/AtYourServiceRepo.py", line 287, in init
    run.execute()
  File "/opt/jumpscale8/lib/JumpScale/baselib/atyourservice/AYSRun.py", line 247, in execute
    step.execute()
  File "/opt/jumpscale8/lib/JumpScale/baselib/atyourservice/AYSRun.py", line 105, in execute
    stepaction.execute()
  File "/opt/jumpscale8/lib/JumpScale/baselib/atyourservice/AYSRun.py", line 62, in execute
    j.actions.last.print()
AttributeError: 'NoneType' object has no attribute 'print'

What were you trying to do to get this error?

command that triggers that' was ays init on the cockpit blueprint


Fixes JasperFx/alba#171

May require https://github.com/JasperFx/alba/pull/170 to be merged before it builds due to package vulnerability.


RegExp Highlighting fails with the s flag in a javascript file

VSCode Version: 1.21.1
OS Version: Windows 10 x64

Steps to Reproduce:

Write a non-trivial RegExp with the s flag in a .js file.
You shall find that the RegExp is colored in blue and white instead of the usual orange and red. The problem disappears when the s flag is removed.

Does this issue occur when all extensions are disabled?: Yes

This issue was moved to Microsoft/TypeScript-TmLanguage#587


Order flow

The diagram indicates a Operations to Sales flow for orders, whilst the video and other pages show the origin of the order in Sales flowing to Operations. The entity exists for both but one message/diagram should be clear. The option changes on the industry and needs of the customer, so perhaps a two way arrow?

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

ID: 347ab5ee-3ff7-a767-43df-a6c9e04800ca
Version Independent ID: 97e9ff03-f3be-a454-d067-a619f871f847
Content: Synchronize accounts directly from Sales to customers in Finance and Operations - Finance & Operations | Dynamics 365 | #MSDyn365FO
Content Source: articles/supply-chain/sales-marketing/accounts-template-mapping-direct.md
Service: dynamics-ax-applications
GitHub Login: @ChristianRytt
Microsoft Alias: crytt

@weaveriski. Thanks for your feedback. We've made some updates to this topic that will be published later today. Thanks again!


Add signup

Enables the user to signup on POST /user,
accepts the following fields:

email
password
password_confirmation
confirm_success_url
gender

In this PR, you are doing a sing up feature but you don't have a register controller. Also, after you add the register controller and test it, you have to add rspec test for the feature.
If you need help or you have some quiestion or doubt, i'm here to give you a hand.

@TimoPeraza But why do I need a custom register controller if Im not yet implementing any custom functionality? I'm using the one that comes with devise auth token.

Sorry @peter7z, you are right.


Update service-fabric-containers-volume-logging-drivers.md

At OpenHack, there's a lot of confusion around how to install volume/logging drivers. The instructions seem to imply using https://github.com/Azure/azurefile-dockervolumedriver, but according to this PR https://github.com/Azure/azurefile-dockervolumedriver/pull/92, it is deprecated.
Added instructions on installing the docker4x/17.09.0-ce-azure1 driver.
@suhuruli @mani-ramaswamy

@jpoon : Thanks for your contribution to the Azure documentation! The author, @mani-ramaswamy, has been notified to review your proposed change.

#sign-off. Thanks Jason.


Adding additional security measures to images Documentation at : /doc…

fixed:  #40530
Adding additional image security points to kubernetes documentation.
It helps to more knowing about image security.
changes at:  https://kubernetes.io/docs/concepts/security/security-checklist/#images
https://kubernetes.io/docs/concepts/containers/images/

/language en

/sig security

@Biswajit-Mohapatra2 : Please can you action on suggestions by @tengqm?

/label tide/merge-method-squash

@Biswajit-Mohapatra2 : Hi there! As @sftim commented above, I concur that the added information doesn't provide any "checkable" items to the existing checklist. If you would like to contribute a blog with the same information, we'd happily review that.
/close


Pug template syntax highlighting in component files

Enables the Pug syntax highlighting extension to be used when a <template lang="pug"> tag is present in a component

@cla-bot check

Thank you. Can this please be merged?


Import function is not working

After I export the data and then import it into web, it'll show

This function is disabled via #22


Ability to add HTML attributes to a table row such as class or id

Updated the _prep_args method so data can be passed for a row intended to have attributes such as class and id.
Updated the generate method so attributes such as class and id can be added to rows.
    //add the row to the rows array
    $rows[]=array('data'=>$row, 'class'=>'warning');
    echo $this->table->generate($rows);

or
    $this->table->add_row(array('data'=>$row, 'class'=>'warning'));

Thanks, very usefull


Is there a supported way of binding an unbound scriptblock to the "global" SessionState?

I have been experimenting with a (hopefully) more robust mechanism for mocking commands than Pester currently uses.  Here is a proof of concept.  In general, the mechanism relies on invoking scriptblocks with the SessionState where the mock needs to exist.  This is trivial for a SessionState associated with a module: Invoking & $module $scriptblock achieves the desired result.  I haven't, however, found a straightforward way of invoking a scriptblock defined inside a module with the "global" SessionState.
Consider this working code
Get-Module LibraryModule,m | Remove-Module
New-Module LibraryModule {
    $sb = {
        Write-Host 'control flow: 1'
        Write-Host $v
        'output'
        Write-Host 'control flow: 3'
    }
    function DownStream {
        param([Parameter(ValueFromPipeline)]$i)
        process {
            Write-Host 'control flow: 2'
        }
    }
    function InvokeWithModuleSessionState {
        param([psmoduleinfo]$mi)
        & $mi $sb | DownStream
    }
    function InvokeWithGlobalSessionState {
        [CmdletBinding()]
        param($ss)

        <#
        This doesn't execute in the "global" SessionState.
        (ie. it has no access to 'g.v')
        #>
        # & $ss.InvokeCommand.NewScriptBlock($sb) | DownStream

        <#
        Each of these neither
            1. has the correct control flow (ie. they don't yield to DownStream), nor
            2. executes in the global SessionState (ie. they have no access to 'g.v').
        #>

        # $ss.InvokeCommand.InvokeScript($sb) | DownStream
        # $ss.InvokeCommand.InvokeScript($ss,$sb,$null) | DownStream
        # $ss.InvokeCommand.InvokeScript($true,$sb,$null,$null) | DownStream
        # $ss.InvokeCommand.InvokeScript($false,$sb,$null,$null) | DownStream
        # $ss.InvokeCommand.InvokeScript($sb,$true,'Output',$null,$null) | DownStream
        # $ss.InvokeCommand.InvokeScript($sb,$false,'Output',$null,$null) | DownStream

        <#
        This works, but it's in bucket 4.
        #>

        $copyOfSb = [scriptblock]::Create($sb)
        $flags = [System.Reflection.BindingFlags]'Instance,NonPublic'
        $internalSessionState = [System.Management.Automation.SessionState].GetProperty('Internal', $flags).GetValue($ss, $null)
        $property = [ScriptBlock].GetProperty('SessionStateInternal', $flags)
        $property.SetValue($copyOfSb, $internalSessionState, $null) | Out-Null
        & $copyOfSb | DownStream
    }
} | Import-Module

New-Module m {
    $v = 'm.v'
} | Import-Module

& {
    $v = 'g.v'
    Write-Host '=== Module ==='
    InvokeWithModuleSessionState -sb $sb -mi (Get-Module m)

    Write-Host '=== Global ==='
    InvokeWithGlobalSessionState -ss $ExecutionContext.SessionState
}

which outputs
=== Module ===
control flow: 1
m.v
control flow: 2
control flow: 3
=== Global ===
control flow: 1
g.v
control flow: 2
control flow: 3

This implementation of InvokeWithGlobalSessionState relies on private reflection to bind a scriptblock to the SessionState.  This is clearly vulnerable to bucket 4 changes which, per the breaking changes contract, "don't require up-front approval."  I'd like to avoid such sudden breakage, if there is a better way.

Is there a supported way of binding an unbound scriptblock to the "global" session state?
Is there a supported way of invoking an unbound scriptblock in the "global" session state?  In other words, is there a supported analog to & $module $scriptblock that works for the "global" session state as opposed to a module session state?
Is there some other way of creating a scriptblock from a module, but invoking it in the "global" session state?

I believe you'll have to rely on a conversion to string, but something like the following might work:
function global:BindToGlobalSessionState([scriptblock]$sb)
{
    Invoke-Expression "{`n$sb`n}"
}

The idea is to recreate the script block in global scope.
Basically, you want to get this line of code executed with the correct session state.
There are other places where SessionState is assigned, but this is typically the first, and once set, the session state can't change.

If you already have the session state, you can create a dummy module to store it.  The SessionState property is writable (mistake, maybe?)
function InvokeWithSessionState {
    param($SessionState, $ScriptBlock)
    end {
        $module = [psmoduleinfo]::new(<# linkToGlobal: #> $false)
        $module.SessionState = $SessionState
        & $module $ScriptBlock
    }
}

I believe you'll have to rely on a conversion to string...The idea is to recreate the script block in global scope.

I see.  It's not obvious to me how to do that from a module.
New-Module m {
    function global:GetGlobalSessionState { $ExecutionContext.SessionState }
} | Import-Module

[object]::ReferenceEquals((f),$ExecutionContext.SessionState)

outputs False.
In other words, despite the global: prefix, GetGlobalSessionState's scriptblock is bound to the module.
Is there some other way to reliably get a reference to a scriptblock associated with the global session state?

If you already have the session state, you can create a dummy module to store it.

This seems promising, and $PSCmdlet.SessionState seems to contain the caller's session state.  The following code seems to prove the concept:
New-Module m {
    New-Module n {
        $v = 'n.v'
        $sb = {$v}
        function InvokeWithSessionState {
            param($SessionState, $ScriptBlock)
            $module = [psmoduleinfo]::new(<# linkToGlobal: #> $false)
            $module.SessionState = $SessionState
            & $module $ScriptBlock
        }
        function a {
            [CmdletBinding()]param()
            InvokeWithSessionState -SessionState $PSCmdlet.SessionState -ScriptBlock $sb
        }
        function b {a}
    } | Import-Module

    $v = 'm.v'
    function c { a }
} | Import-Module

& {
    $v = 'g.v'
    a
    b
    c
}

That outputs
g.v
n.v
m.v

It seems like this technique would not be vulnerable to any of the acceptable breaking changes in the breaking changes contract.  @lzybkr Can you comment on whether this behavior is likely to be broken in the future?

@alx9r $PSCmdlet won't reliably get you the global session state because you can't tell what scope it's coming from.  You can't really even be sure that it'll actually be there, if the module is called from a command prompt or a script without CmdletBinding that won't work.
You could get a little closer by iterating the call stack, something like
(Get-PSCallStack).GetFrameVariables().PSCmdlet.Value |
    Where-Object { -not $_.SessionState.Module }

But that still depends on some part of the call stack outside of a module declaring CmdletBinding

@alx9r - I can see why that example doesn't work using new-module, but it should work if you defined the function in module when you use the ScriptsToProcess entry in the module manifest.
I agree with @SeeminglyScience that a writable SessionState property in ModuleInfo seems unintentional. Changes to apis are generally conservative, so maybe you'd be safe using it, but I'd continue looking for alternatives so you have options to consider, or even fall back on if the api was removed.

$PSCmdlet won't reliably get you the global session state because you can't tell what scope it's coming from.

I agree.  I've been experimenting with different approaches since my OP and I think the question I should have been asking is this:  Is there a supported way of invoking a scriptblock to the caller's SessionState?  It seems like $PSCmdlet.SessionState reliably gets the caller's SessionState.

it should work if you defined the function in module when you use the ScriptsToProcess entry in the module manifest.

I thought so too.  And it does work, but that approach is brittle to nested modules.  If any module loads the module with ScriptToProcess first, then BindToGlobalSessionState actually binds to that module's SessionState.

Changes to apis are generally conservative, so maybe you'd be safe using it, but I'd continue looking for alternatives so you have options to consider, or even fall back on if the api was removed.

I think I'm out of ideas for now.  Do you have any other ideas I should explore?  FWIW, I think the question I probably should have been asking is this: Is there a supported way of invoking a scriptblock with the caller's SessionState?

It seems like $PSCmdlet.SessionState reliably gets the caller's SessionState.

@alx9r not reliably, because you can't guarantee CmdletBinding was declared in the caller.  You could make that a requirement to mock, but if you didn't and instead PSCmdlet came from a different SessionState than the caller it would be very difficult to debug unless you are intimately familiar with the engine.
Your best bet at reliability (not taking support into account) is to get InvocationInfo from the call stack and get the SessionStateInternal of the caller.
$callerScriptBlock = (Get-PSCallStack)[1].InvocationInfo.MyCommand.ScriptBlock

$ssi = $callerScriptBlock.GetType().
    GetProperty('SessionStateInternal', [System.Reflection.BindingFlags]'Instance, NonPublic').
    GetValue($callerScriptBlock)

But even then there are some instances where the ScriptBlock property is null (like class methods and script blocks invoked directly with Invoke* api's)

not reliably, because you can't guarantee CmdletBinding was declared in the caller.

Per the call to a in the proof of concept in this comment declaring CmdletBinding in the caller does not seem to be necessary.  Do you have an example demonstrating your concern?

FWIW I have settled on implementing a function called BindToCallerSessionState, for now.  The function does the following:

Attempts each of the following strategies and uses the one highest in the list that succeeds:

setting the session state property of a new [psmoduleinfo]
setting a scriptblock's SessionStateInternal property using private reflection
calling BindToImporterSessionState which is implemented using ScriptToProcess

Writes to the warning stream if any strategy fails.
Throws and exception if they all fail.

The problem with strategies (i) and (ii) is that they might be broken by changes to PowerShell.  The problem with (iii) is that it doesn't do the right thing -- binding to the importer session state is not the same as binding to the caller session state.  This seems to be a matter of choosing the least evil.
I have also implemented a number of automated tests around each of the strategies.  If there is a breaking change, it should be detected early either by the warnings seen by users or by the automated tests for the mock library failing.
It does seem a bit odd that PowerShell has a first class way of invoking a scriptblock in a given module (ie. & $module $scriptblock) but no supported way of invoking a scriptblock in either the "global" session state or the caller's session state.

not reliably, because you can't guarantee CmdletBinding was declared in the caller.

This code
New-Module m {
    $v = 'm.v'
    function s { {$v} }
    function InvokeWithCallerSessionState {
        [CmdletBinding()]
        param($ScriptBlock)
        $module = [psmoduleinfo]::new(<# linkToGlobal: #> $false)
        $module.SessionState = $PSCmdlet.SessionState
        & $module $ScriptBlock
    }
} | Import-Module

$v = 'g.v'
$sb = s

& $sb # m.v
InvokeWithCallerSessionState -ScriptBlock $sb # g.v

seems to demonstrate that declaring CmdletBinding in the caller is not necessary.  Do you have an example demonstrating your concern?

seems to demonstrate that declaring CmdletBinding in the caller is not necessary. Do you have an example demonstrating your concern?

Nope! I'm wrong.  I could have sworn $PSCmdlet.SessionState gave the current session state, but that isn't the case.  Learn something new every day :)

I think there is another alternative.  As far as I can tell, when a PSCmdlet implemented in C# is invoked its SessionState property is the caller's SessionState.  In other words,

when such a cmdlet is invoked from outside a module, .SessionState is the "global" SessionState, and
when such a cmdlet is invoked from a script module, .SessionState is the module's SessionState.

@lzybkr Can you confirm whether this is true?  I'm also wondering whether this behavior is by design or by chance.  In other words, can I rely on the correspondence between call site and .SessionState as described in the above bullets?
Below is (what I think is) a working example.  It looks like utilizing this technique requires that any command to whose call site you need to bind a scriptblock be implemented as a binary command.  I haven't succeeded at replicating this technique for implementing commands as scriptblocks.
Add-Type '
    using System.Management.Automation;

    [Cmdlet(VerbsData.ConvertTo,"CallerBound")]
    public class ConvertToCallerBound : PSCmdlet
    {
        [Parameter(Mandatory=true)]
        public ScriptBlock ScriptBlock;

        protected override void ProcessRecord()
        {
            WriteObject(
                SessionState.InvokeCommand.InvokeScript(
                    "{$v}"
                )[0]);
        }
    }
' -PassThru | % Assembly | Import-Module

$null = New-Module {
    $v = 'm.v'
    function ConvertTo-ModuleBound
    {
        param(
            [Parameter(Mandatory)]
            $ScriptBlock
        )
        <#
        .SessionState in this call to ConvertTo-CallerBound
        is this module's SessionState.
        #>
        ConvertTo-CallerBound -ScriptBlock $ScriptBlock
    }
    function Invoke-ScriptBlock{
        param($ScriptBlock)
        & $ScriptBlock
    }
}

$v = 'g.v'

<#
Returns a new scriptblock that is
bound the "global" scope.

.SessionState in this call to ConverTo-CallerBound
is the "global" scope.
#>
$g = ConvertTo-CallerBound -ScriptBlock {$v}

& $g # g.v
Invoke-ScriptBlock $g # g.v

<#
Returns a new scriptblock that is
bound to the module's scope.
#>
$m = ConvertTo-ModuleBound -ScriptBlock {$v}
& $m # m.v
Invoke-ScriptBlock $m # m.v

Heh, can't believe I never found this issue.
I've wrestled with this extensively myself in PSKoans, so that I could invoke the koan files in a global session rather than accidentally invoking them inside the module itself.
My own solution was basically to spin up a new runspace and work with that.
If there is a simpler way to bind a scriptblock to the global session state I'd very much appreciate it.

I'm not going to answer your question directly because it's been a long time since I've looked at this area and your observations are going to be more correct than my possibly faulty memory.
IIRC, SessionState can be set upon first access (or explicitly) and I didn't like that as it wasn't explicit enough for my liking.
Because of this, I think it's possible it gets set by chance somewhere now, but I think @BrucePay was careful enough when originally implementing modules that everything is (or at least once was) by design.

@lzybkr Ah.  I see.  Got it.  Thanks for the background.  I think I've got enough tests around the behavior I need that I'll probably detect an inadvertent change early enough.

If there is a simpler way to bind a scriptblock to the global session state I'd very much appreciate it.

@vexx32 The best I've been able to come up with is the methods for binding to the caller's session state (which may or may not be the global session state) discussed above.  Binding to the global session state is a bridge further than I have explored.


chore: update creation deposit from silo

Fix types please

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


Add angular-animate and prod to pm2

I dont think adding prod mode to the file is a good idea ! Because in fact you always need to start Gladys in dev mode one time because sails needs to build the database ( in prod mode, the database is in alter:safe mode and cannot alter the schema )
That make me think that it's the same for modules.. when you install a module, you need to start Gladys again in dev mode so it can create the tables
For ng-animate, you need it ?

I thought it was a good idea to start with prod, thanks for your details
For ng-animate yes, I don't like like Jquery and you you say "Arriver à me séparer de certaines dépendances côté client ( Je pense à JQuery par exemple, que je suis obligé de mettre pour Bootstrap, MorrisJS, simpleWeather et datepicker ). J'aimerais pouvoir passer à une app full AngularJS bien plus légère, car actuellement côté client c'est trop lourd."

I think we should make a list of all dependencies in Gladys, and their equivalent in angularJS ( maybe on the forum )
For bootstrap for example, I think next version of bootstrap ( 4) will come with a brand new JS client ( and I hope without jquery )

Ok, so wait bootstrap 4 :)

I read the code on bootstrap repository, seems that they are still using jquery... We'll find an alternative ;)


portico: Updated android screenshot and the associated svg.

This PR updates the /apps/android screenshot because it was missing a part of a sentence.
Screenshot:

Merged, thanks @alexandraciobica!


Add SolBridge International School of Business domain verification

School Official website: https://www.solbridge.ac.kr/
Master of Science Program: http://solbridge.ac.kr/story/Master-of-Science/index.jsp?pagenum=2
Guideline for student email: https://my.solbridge.ac.kr/login_only -> https://bit.ly/mysolbridgewelcome

Sorry for disturbing you so many times, I made sure this one is correct T_T

@vusky102 Thank you for your patience while waiting for a review and processing your request. Pull request merged. Please start applying for JetBrains educational subscription at https://www.jetbrains.com/shop/eform/students in an hour, to allow the changes to propagate through JetBrains systems.


Always include default constructor if isIncludeConstructors() is set

If I set isIncludeConstructors() with all other constructor-related properties set to false, the library will not generate any constructors. In this case, I expected that a default constructor (i.e. no args) would be generated. So this request is to include a default constructor in this case.
The logic for this is in ConstructorRule.handleMultiChoiceConstructorConfiguration(), where it seems that the default constructor is only generated when there are also other constructors.
I know that, in Java, if there are no constructors, then the compiler automatically includes a default constructor. Sometimes it can be useful for stylistic reasons to include the default constructor explicitly, for clarity. In this particular case, I wanted to add some code to the default constructor, but was surprised when there was no default constructor.
Workaround: I can add a default constructor manually if it is not already present, and then add my code to it.

Thanks for raising this, but I don't think we should generate all this code that's not needed. You can easily define the constructor when you need to customise it.

Thanks for the quick feedback. Fair enough, if that's what you'd prefer.
However, I'd suggest that it would be at least worth updating the documentation for GenerationConfig.isIncludeConstructors() to indicate that this is the case.
It was a surprise to me that I enabled "include constructors" yet no constructors were generated!
It seems that this setting is actually a global setting which enables/disables generation of the other constructors which are configured by the other methods.


chore: Add dependabot groups

I want to try out Dependabot's groups option so we can reduce the number of PRs it opens. Feel free to call out groups that should be added or groups I added that don't look right.

Could we make a group that just has all patch-level updates (of all libraries) in it, using update-types? I feel like these both make up a majority of the "commit noise" and are a kind of update we can be reasonably confident about making "in bulk", assuming libraries are following semver conventions.


Any pro-active measure needed for when the Cache API becomes available globally?

The Blink team is trying to ship the Cache API on the global scope (http://crbug.com/439389).
Do we need to change anything in the polyfill to prepare for this eventuality?
cc/ @jakearchibald

Should all work as expected.


TX3EU no control over channel 1

Channels 2 and 3 work as expected

In the HA or in the eWeLink Web UI ?
Can you control the Channel1 by App?
Please specify your question.

Can't turn off channel 1 from the web ui, turning on works. Display always shows the switch is off.
I can turn on and off channel 1 by creating an automation.

OK. We will look in to it.

Same thing happens with 4CHPROR3. Only channels 2, 3, 4, are working.


thread '' panicked at 'called Option::unwrap() on a None value'

When I run using this command,
deno run --allow-net --allow-write --allow-read --allow-plugin --allow-env --unstable index.ts
I get this Error
thread '<unnamed>' panicked at 'called `Option::unwrap()` on a `None` value', src\command\connect.rs:63:24
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

OS: Windows 10
Deno Version: 1.0.5

Update :
Looks like it is an issue of deno_mongo MongoDB database driver with deno 1.0.5 version.
Check this : https://github.com/manyuanrong/deno_mongo/issues/44

@madhurasri Can you just give a try now?

@iravitejakumar The same error still occurs. I think we have to wait until they fix that issue in MongoDB driver.


Noticable delay in Big Sur

Hello, first of all, thank you for skhd and yabai!
After yabai has been fixed to work in Big Sur (scripting additions), I started to use skhd to travel between spaces
(yabai -m space --focus) and immediately noticed a ~0.5 delay.
First I thought it was a yabay's issue, but if yabai -m space --focus is executed from terminal,
space focuses without a noticeable delay.
My skhd config:
# fast space travel
ctrl - 1 : yabai -m space --focus 1
ctrl - 2 : yabai -m space --focus 2
ctrl - 3 : yabai -m space --focus 3
ctrl - 4 : yabai -m space --focus 4
ctrl - 5 : yabai -m space --focus 5
ctrl - 6 : yabai -m space --focus 6
ctrl - 7 : yabai -m space --focus 7
ctrl - 8 : yabai -m space --focus 8
ctrl - 9 : yabai -m space --focus 9
ctrl - 0 : yabai -m space --focus 10

skhd version: skhd version 0.3.5
Can you help me debug this issue?

What's your shell startup time? For a quick and easy test, run time $SHELL -c exit.
This is important because skhd runs commands via $SHELL.
For example, on my machine, starting the shell takes less than 5ms.
❯ hyperfine "$SHELL -c exit"
Benchmark #1: /usr/local/bin/zsh -c exit
  Time (mean ± σ):       4.6 ms ±   0.9 ms    [User: 1.7 ms, System: 1.6 ms]
  Range (min … max):     3.6 ms …   9.6 ms    414 runs

Thank you, I didn't know commands go through $SHELL, that explains the delay!


flexsurvreg_prob with generalized gamma gives NaN after prob =1

The  “flexsurvreg_prob” function gives an issue with the generalized gamma. All the risks of dying after the value 1 are reported as NaN.

For that reason, generalized gamma has been removed from our survival functions. It tends to give incorrect estimates.


Update UnifiedDiffOutputBuilder from gecko-packages/gecko-diff-output-builder usage after it was incorporated into sebastian/diff

if all green, lets :ship:
thanks for the backporting man :)

thanks for making strict udiffer part of main package ;)

thanks for making strict udiffer part of main package ;)

you're welcome, I'm happy it all turned out well : D
test are green, so lets ship it!


Wild Side

Song Name
Wild Side
Artist Name
ALI
Source
Youtube
Youtube Link
https://www.youtube.com/watch?v=u5heWZ9occg
Direct File Link
No response
Song ID
1037135
Start Offset [ms]
0
Extra
No response

Ye
El El vie, ago. 9, 2024 a la(s) 10:22 p.m., github-actions[bot] <
@.***> escribió:

This submission is stale because it has been open for 14 days with no
activity. If it is still relevant, please leave a comment and we will
reopen it.
—
Reply to this email directly, view it on GitHub
https://github.com/FlafyDev/auto-nong-indexes/issues/1872#issuecomment-2278944043,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYNHITT2TREOO5PJZ4IFDQ3ZQV2OFAVCNFSM6AAAAABLRJAD4KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENZYHE2DIMBUGM
.
You are receiving this because you authored the thread.Message ID:
@.***>

accept


Media keys not working

Keyboard: Logitech G710+
KE version: 0.90.34
Broken keys:

Play/Pause
Stop
Previous Track
Next Track
Mute

EventViewer doesn't show any inputs for those keys while KE is running.

I was having the same issue because I was trying to bind them to my Print screen, Scroll Lock, and Pause keys on my keyboard, which previously responded to f14, f15, f16. However it looks like Karabiner-elements doesn't map them that way, and it works for me now that I bind them by their labeled names:
{
    "profiles": [
        {
            "name": "Default profile",
            "selected": true,
            "simple_modifications": {
                "print_screen": "vk_consumer_previous",
                "scroll_lock":  "vk_consumer_play",
                "pause": "vk_consumer_next"
            }
        }
    ]
}

Good to know there's a workaround, but I'd like the keyboard's native media keys to act as media keys. :)

I'm using a Dell Media Keyboard (TH836) and would absolutely love to see the volume knob working.
Event viewer shows nothing for this so I've been using:
F10 - mute
F11 - vol down
F12 - vol up
The other media keys work OK, just not the volume knob

I'm using a Ducky One (which has three volume keys at the top right: mute, volume down, and volume up). I can't get them to even register when I press. They worked in regular Karabiner as ConsumerKeyCode::VOLUME_MUTE, ConsumerKeyCode::VOLUME_DOWN, ConsumerKeyCode::VOLUME_UP

The version 0.90.55 works well.

What fixed this problem for me is going to Devices > Modify events from this device, and disabling a extra keyboard that was listed there and checked but that is not the one I'm using.

@incandescentman Are you sure Karabiner is still enabled for your keyboard? Probably not anymore, that's why the media keys are working.

Same symptoms for media keys and volume knob on Logitech G610. In addition, here also the keyboard illumination key is disabled.

(my repo is a bit out of date just be aware) I added logging to the grabber's device_grabber::value_callback function to log usage_page and usage
for my Logitech G610 the media keys are (usage_page, usage)
12, 233/234 = volume
12, 226 mute
12, 205 play
12, 183 stop
12, 182 prev
12, 181 next
usage page 12 = kHIDPage_Consumer
the code has a case statement for kHIDPage_Consumer but it only handles usage == kHIDUsage_Csmr_ACPan, so basically all other "consumer" page events are dropped 😕
At some point I am going to try modifying my copy here to see if I can simply "relay" these events (make the virtual KB fire these events). At this point I'm just mucking around, but if it works I'll see if I can make a PR for the fix.


Update dependencies

Codecov Report

Merging #15 (8b20c96) into main (8c13b7f) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #15   +/-   ##
=======================================
  Coverage   82.75%   82.75%
=======================================
  Files           8        8
  Lines         174      174
  Branches        9        9
=======================================
  Hits          144      144
  Misses         24       24
  Partials        6        6

Flag
Coverage Δ

Linux
82.75% <ø> (ø)

project
69.23% <ø> (ø)

py37
81.01% <ø> (ø)

py38
82.75% <ø> (ø)

py39
82.75% <ø> (ø)

salt_3002_6
82.75% <ø> (ø)

tests
90.82% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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

The latest version of black was causing issues for me, so I'll keep these changes as is and go ahead nad merge.


Support for readonly field

It would be useful when ID field has to be shown. Currently user can change the field and it saves a new object to database.
id: {
  "type": "string",
  "readonly": true
},

Disabled form fields wont be returned, just adding disabled wont work I guess :(

Hi, @akotulu I'am afraid I can't understand your problem.
Readonly properties can no be entered by the user, but its value its the same as set in the initial data passed to the form, so calling getValue() properly returns its unmodifiable value.
Example: http://brutusin.org/json-forms/#12

Ow, hmm. Well my bad, my model had no id field defined in initial data. It seems renderer doesn't like it and creates input without disabled attribute. Is it intentional?

Yes, it's the expected behaviour. Maybe if you give me more information about your use case I can help you

My use case is following, I have a Id field which user has to be able to copy, but unable to modify. Currently when empty form is displayed this field is shown as editable, miss leading user. Why I stumbled on this is following, my default Backbone model had no Id field defined so when new entry was forwarded to server, it had no id and thus json-schema validation passed. After adding Id value to default model, it was forwarded to backend and didn't pass the validation, cause Id=null, but schema type is string. I made a workaround removing the Id field before request.
if (this.model.get('id') == '') {
  this.model.unset('id');
}

In my opinion it would be slick if default behaviour would be disabled input when it isn't present. I would even go so far as making passing initialized model optional.

Hi again, I think I understand, correct me if I'am wrong:
you are using the library to create a form to be used in a UI and according to your business needs, you want this form to show some readonly information, but not to send it back to the server.
Despite being legit, this is not the original purpose of the library, that is letting the user create object instances according to a given schema, more than a being a tool for creating forms according to the business needs.
So I can see here different approaches: the one you did, that is, decorating the obtained object, or decorating the generated form once rendered, or showing the user information out of the form.

I think the solution for this case (and others) would be to have a way to add html tag attribute to the input field via our schema, this way it wouldn't break the purpose of the library, but it would be more customizable.

interesting @graciano can you develop a little more? maybe an example?

I was looking for library that could draw a form based on my schema which I use to validate my API request. I have a complicated schema which is inserted to database. Using same schema for validation and form generation is the way to go. I had no problem inserting a empty input data to generate the form but as It is a extra move, cause schema has all the info to make a empty form.
Im sure others are looking for same functionality, give a schema and get the from with correct validations without giving any initial values.
It would make the library more accessible and easier to use, nothing more. Currently I can't understand why its useful to draw a input as editable when its missing from initial data and marked as readonly. getData returns initial value anyway.

@idelvall I tried something here, but I don't have the time until next weekend to really experiment with the code.
@akotulu Do you think that don't generating the input is really the best idea? I think that showing the input with an attribute disabled, like <input type="text" disabled /> (html5) or <input type="text" disabled="disabled" /> (xhtml, I think).
My proposal is a more broad feature that would allow the schema to set html attributes for each input, not just the disabled attribute.
I have two main arguments for this approach:

not showing the input by default is specific to some UX ideas, but not to others
it's more generic and could cover other use cases

It would be awesome if I can remove some propeties using a keyword.
The ability to have some fields as hidden, and also some fields completely skipped from rendering is very helpful.
Optional fields should be optional to render too.

This is a great suggestion @pateketrueke , i will have it in mind for the v2 branch I am currently working on. I will come back to you when the v2 is ready.
Thanks


ROX-26662: Node Indexing Tasks

A collection of tasks that were discovered in demos or explorative testing

Remove Scanner v4 from delayed integration (to prevent race conditions)
Update categories of Scanner v4 integration in UI to reflect changed roles
Ensure Central NodeIndex pipeline only runs if Scanner v4 and NodeIndex are enabled
Enable NodeIndex pipeline by default on central
Set up ClairCore logger to remove default debug logging on compliance

User-facing documentation

[ ] CHANGELOG is updated OR update is not needed
[ ] documentation PR is created and is linked above OR is not needed

Testing and quality

[ ] the change is production ready: the change is GA or otherwise the functionality is gated by a feature flag
[ ] CI results are inspected

Automated testing

[ ] added unit tests
[ ] added e2e tests
[ ] added regression tests
[ ] added compatibility tests
[ ] modified existing tests

How I validated my change

change me!

/test all

/test all

/test all

(rebasing would help for those failing e2e-tests for scanner v4)


⚠ Samsung has degraded performance

In 19a5987, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 1893 ms

Resolved: Samsung performance has improved in 1b7e273.


Error on multiple request: "possible EventEmitter memory leak detected"

I'm using one request to get cookies from a POST , oncee set, I'm making another one, but then I get this error:
(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
Trace
    at Request.addListener (events.js:160:15)
    at Request.start (/Users/wachunei/Desktop/D/testvm/node_modules/popsicle/node_modules/request/request.js:947:8)
    at Request.end (/Users/wachunei/Desktop/D/testvm/node_modules/popsicle/node_modules/request/request.js:1732:10)
    at end (/Users/wachunei/Desktop/D/testvm/node_modules/popsicle/node_modules/request/request.js:704:14)
    at Object._onImmediate (/Users/wachunei/Desktop/D/testvm/node_modules/popsicle/node_modules/request/request.js:718:7)
    at processImmediate [as _immediateCallback] (timers.js:354:15)

@wachunei Do you have some example code? I am listening to a bunch under node (for progress), but it's not hitting 10.

Actually it is something like this
request(parametersObject).then(function(res) {
  // do stuff
  request(anotherParameterObject).then(function(res)){
      // do stuff but you don't reach this point
    });
});

@wachunei Interesting. What node version (node -v)?

Pretty sure the latest stable release (I ran brew upgrade node this morning)

On 30-01-2015, at 1:19 a.m., Blake Embrey<EMAIL_ADDRESS>wrote:
@wachunei Interesting. What node version (node -v)?
—
Reply to this email directly or view it on GitHub.

0.10.36 actually

@wachunei So I tried with something similar, but it's not replicating:
if (!global.Promise) {
  require('es6-promise').polyfill();
}

var request = require('popsicle');

request('http://facebook.com')
  .then(function (res) {
    console.log('fb', res.status);
  });

request('http://google.com')
  .then(function (res) {
    console.log('google', res.status);

    return request('http://github.com');
  })
  .then(function (res) {
    console.log('github', res.status);
  });

@blakeembrey It also works for me, it must be something I am doing wrong in my code. Any chance to share it to you privately?

@wachunei Of course, however you want to share it. Feel free to email me directly at hello <at> blakeembrey <dot> com :smile:

Ok, I'm reviewing this now and seeing what I can tidy up. I'll let you know when there's an update you might be able to test :+1:

@wachunei So it's a multi-layered issue. You're stuck in a redirect loop (I might be able to override the default request behaviour here and make it work for you) and the request library actually adds a new listener on every redirect. Hence, 10 redirects in you hit the limit and it breaks. I'm going to do a couple of PRs now to see what we can fix in both libraries.

OK, I emailed you back a solution that'll work for now and I'm going to close this. It still links to the core issue opened against request.


Getting to GmailScheduler Settings

Besides the email that was sent containing a link to get to my settings, how can I navigate to my settings without having that direct link? For example, if I was to delete that email by mistake, now how would I get to GmailScheduler's Settings page?
Thanks!

You can always visit the gmail scheduler settings page with this link https://script.google.com/macros/s/AKfycbw6hnnKGeG6xUsbRE9c3WSvJibTbaW88DP9f83e8lFnc1v1kL0/exec


add option for intersecting or unioning the cutoffs

Sorry @bellenger-l I must have scooped you... In addition I will have to resolve a few conflicts due to my commit squash at the last PR merge

Conflicts resolved

@bellenger-l @NairaNaouar Il est aussi important de reviewer le code des PR que de pousser le votre !


Explore 'Mailin' module

http://mailin.io/

This module seems to be having issues (see our<EMAIL_ADDRESS>account). I officially declare this card dead


Update priority message

#196

Coverage remained the same at 91.378% when pulling 0a94ee5a8dbf53091bb32953eb5ace1e1021fdc5 on update-priority-message into c0c12e490fd2f1b4d7f78c77a3c0796780792299 on development.

Fix #196


Group code objects by kernel name in perf report summary

Bert now show a summary like this:
Summary:
gpu::gemm: 8.582ms, 65%
gpu::triadd_layernorm: 0.804272ms, 7%
gpu::softmax: 0.794769ms, 6%
gpu::code_object::add_kernel: 0.646121ms, 5%
gpu::code_object::mul_kernel: 0.623822ms, 5%
gpu::code_object::add_mul_erf_add_mul_mul_kernel: 0.498902ms, 4%
gpu::code_object::mul_add_kernel: 0.478352ms, 4%
gpu::contiguous: 0.333988ms, 3%
hip::hip_copy_literal: 0.162432ms, 2%
load: 0.125854ms, 1%
gpu::gather: 0.0729777ms, 1%
gpu::code_object::convert_kernel: 0.049062ms, 1%
multibroadcast: 0.044116ms, 1%
gpu::layernorm: 0.032414ms, 1%
transpose: 0.0297579ms, 1%
slice: 0.0296842ms, 1%
gpu::code_object::add_tanh_convert_kernel: 0.0249871ms, 1%
reshape: 0.0216463ms, 1%
@param: 0.00238ms, 1%
check_context::migraphx::version_1::gpu::context: 0.000734ms, 1%
hip::hip_allocate_memory: 0.00047ms, 1%

tested on different server and prints work

I cannot get the models to run in driver perf.
root@557fcf91b2a1:/code/2_AMDMIGraphX/docker_build# ./bin/driver perf bertsquad-10.onnx --fill1 input_ids --fill1 segment_ids --input-dim @input_ids 1 384 --fp16
Compiling ...
Reading: bertsquad-10.onnx
terminate called after throwing an instance of 'migraphx::version_1::exception'
  what():  /code/2_AMDMIGraphX/src/program.cpp:171: compile: Dangling reference in module main from instruction 998
Aborted (core dumped)

@CharlieL7
Maybe same as this issue #1230

#1230  was fixed with https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/pull/1233.  And that's merged

I too am seeing a Dangling reference problem, but it is in the develop branch, not this PR.  I ran
/opt/rocm/bin/migraphx-driver perf --model resnet50
with success.


When I write COMMIT_EDITMSG from :terminal with guise.vim, error raises

When I write COMMIT_EDITMSG from git commit in :terminal with guise.vim,
I found the prompt like below:
Do you want to apply changes? [Y/n]

Then I answer it 'yes', and git commit fails with below error.
hint: Waiting for your editor to close the file... error: There was a problem with the editor ''/home/kyoh86/.local/share/nvim/lazy/gin.vim/denops/gin/proxy/editor.ts''.
Please supply the message using either -m or -F option.

nvim versino:
$ nvim --version
NVIM v0.10.0-dev-3bf887f
Build type: Release
LuaJIT 2.1.0-beta3

guise version:
        version 0.3.0
        tag     v0.3.0
        branch  main
        commit  1759cc9

gin.vim:
        branch main
        commit 7ecea62

Note that guise.vim is not required in this case (gin.vim provide proxy feature itself).
It's bug and I'll fix it.


Updated pylacrosse library to version 0.4.0. Adding support for remot…

This PR just updates the pylacrosse library to version 0.4.0.
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the development checklist

If the code does not interact with devices:

[x] Tests have been added to verify that the new code works.

Hi @legacycode,
It seems you haven't yet signed a CLA. Please do so here.
Once you do that we will be able to review and accept this pull request.
Thanks!


Add sample code for automated service document creation though invocable action

Add sample code for automated service document creation though invocable action

@khawkins , this PR is to provide sample code to generate service document through invocable actions, would you please help to review it?

@khawkins updated to address the comments, please check it.


[backport to v1.14 branch] scripts: add DW_AT_abstract_origin check

According to below rule which's from DWARF5 spec, if the
attribute can't be founded in given DIE, check more entry
associated by DW_AT_abstract_origin.
For the purposes of determining whether a debugging information
entry has a particular attribute (such as DW_AT_name), if
debugging information entry A has a DW_AT_specification or
DW_AT_abstract_origin attribute pointing to another debugging
information entry B, any attributes of B are considered to be
part of A.
Signed-off-by: Wentong Wu<EMAIL_ADDRESS>

@wentongwu  you need to have a bug for this, please open a bug with the problem this is solving in GH issues.


QR CODE GENERATOR

Description 📜
A web app to generate QR Code.
Fixes #609

Type of change 📝
Please delete options that are not relevant.And in order to tick the check box just but x inside them for example [x] like this

[x] Add a new project

Domain of Contribution 📊
Please delete options that are not relevant.And in order to tick the check box just but x inside them for example [x] like this

[x] Project using HTML, CSS & JS

Checklist ✅
Please delete options that are not relevant.And in order to tick the check box just but x inside them for example [x] like this

[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GSSoC'22 contributor

Screenshots / Gif (Optional) 📸
Add the screenshot of the changes you have made

@khushi-purwar please just merge this PR upon reviewing it.

@khushi-purwar please merge this PR, upon reviewing it


Change language

When changing language and the lesson is high to a basic methode app crashes

this is still a bug but won't chrasgmh at this time


[Engine]: Preload Images

Create a function to preload images

Closed by: https://github.com/201flaviosilva/Impacto/pull/44


(carbon-components-angular) which declares IconModule is not compatible with Angular Ivy

carbon-component-angular is not compatible with Angular 16.
Detailed description
 node_modules/carbon-components-angular/icon/icon.module.d.ts:29:22
    29 export declare class IconModule {
                            ~~~~~~~~~~
    This likely means that the library (carbon-components-angular) which declares IconModule is not compatible with Angular Ivy. Check if a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Ivy.

Please let us know if a new release supporting Angular 16 will be released soon as that prevents us to use Carbon design.

Duplicate: https://github.com/carbon-design-system/carbon-components-angular/issues/2561


fix: Handle NFT fetch failures gracefully and add Treasure chain

Problem solved
Short description of the bug fixed or feature added

PR-Codex overview
This PR introduces a new asset to the simplehash.ts file and modifies error handling in the erc721.ts file to log errors instead of throwing them.
Detailed summary

Added a new asset { id: 61166, name: "treasure", label: "Treasure" } in simplehash.ts.
Changed error handling in erc721.ts:

Replaced throw new Error("Failed to fetch NFTs") with console.error("Failed to fetch NFTs").
Added a return statement with an object containing nextCursor: undefined and tokens: [].

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

#5769  👈 (View in Graphite)
main

How to use the Graphite Merge Queue
Add either label to this PR to merge it via the merge queue:

merge-queue - adds this PR to the back of the merge queue
hotfix - for urgent hot fixes, skip the queue and merge this PR next

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.


Access hidden layers of character-bert

Hi @helboukkouri,
Thanks for sharing this amazing work !
I wanted to tap out the 13 hidden layers activations also. For doing that I pass output_hidden_states=True to the encoder in the forward function. Now, the model returns a tuple with 3 entries where 3rd entry contains a list of activations for the 13 layers. Please let me know if this is the correct way.
The outputs of each layers are of the shape [Num_words, 11, 768]. Would it be alright to take the average across the 11 characters to get the intermediate word representation or you would recommend something else. Actually, I was expecting the outputs of each layer to have the form [Num_words*11, 768] (similar to word piece) or simple [Num_words, 768].
Kindly help me in understanding this aspect.

Hi @vguptai, thank you for the interest in CharacterBERT 😊
About getting the hidden activations of the model, I think you should have a look at these lines from CharacterBertModel's forward. Here you can see that using the output_hidden_states parameters does not actually have any effect. You can also see that the model always returns the variable outputs which is defined as:
outputs = (sequence_output, pooled_output,) + encoder_outputs[1:]

So basically the output is always a tuple with the final layer representations (batch size, num words, 768), the pooled (CLS) representation (batch size, 768), the other 11 layers representations (batch size, 11, num words, 768). So if you'd like to use the 12 transformer layer hidden representations you should be able to do something like:

last_layer_reprentations, _, other_layers_representations = outputs

But this would only get you the transformer layer outputs and you would be missing the "CharacterCNN representations". If you wan to get that as well, I think you will have to edit the CharacterBertModel forward to also output the variable embedding_output . Maybe something like:
outputs = (sequence_output, pooled_output, encoder_outputs[1:], embedding_output)

In any case, the 11 you see in the shape is not the number of characters. In fact, despite the model attending to token characters, this only happens within the CharacterCNN module and the model is actual word-level. So no need of averaging anything, the representations you get are actually token/word representations 😊
Let me know if there is something else that needs clarification.


GafferImage::Display hardcodes pixel aspect ratio

As the title says: https://github.com/ImageEngine/gaffer/blob/master/src/GafferImage/Display.cpp#L93
We'd like it to output the correct format rather than hardcoding it. Does IECore::DisplayDriver allow for this yet?
I guess a bigger problem in Gaffer is that even for alternative aspect ratios, the viewer still draws square anyways. That can be worked around (rather expensively) for now with an expression on a Resize to multiply the width. But that expression doesn't work well with the Display lying about the format in the first place.

The problem is that IECore::DisplayDriver doesn't allow for it yet. Ideally we'd switch the constructor to take a Format rather than a Box but that would be a compatibility break. We could probably squeeze it through as an extra parameter that GafferImage::Display happens to know about though, if this is urgent.
Fixing the viewer should be trivial.

Also for processing the resize trick doesn't quite get you what you want (you want to process the image in its original pixel aspect ratio).I would applause this fix!

Wait, I'm confused which fix @lucienfostier is applausing... I'd applause the trivial viewer fix over the actual fix requested here.

Ah, ok, clarified with @lucienfostier. We are applausing the same thing.

Closing - this was implemented in 8437f6ccc7d41914132466c1a13e159a1d77f01c.


Accept String arguments in the various functions.

It would be great if the library could accept Strings where it now accepts character arrays, as the String object has a much easier API to work with.

You could just use the c_str() method of String object.
String msg = "hi"
client.publish("test", msg.c_str())

Sure, and the String-accepting version of the functions would be pretty much that, but I think it would be very convenient if the library standardized on it, or at least accepted it natively.

This is just my strictly personal opinion:
All strings related things can always be done without the Arduino String object. Most of the time String objects are used also when no complex string manipulation is required. Wasting memory. A lot of it. So, my suggestion about that is to NOT add any String type in the library functions' signatures.
Try to avoid Strings, when you cannot do that, use c_str().
I repeat, this is just my opinion on Strings (I used them a lot and most of the time my memory problems were related to them), but you can find online different points of view


General Discussion: ARFoundation

XRTK - Mixed Reality Toolkit Request for Information
What are you trying to achieve?
Basically I want XRTK to automagically Setup the ARFoundation session as described in the docs, if I am targeting a compatible platform. I expect to be able to use the same MixedRealityPlayspace object as for any other platform supported by XRTK and not having to Setup Things differently.
My request for Information is: What is the Vision for how XRTK is goind to support this and how I might be able to help Implement it. My approach would be to have a dedicated CameraService e.g. for ARFoundation that will Setup Things as described in the docs etc. I am not familiar enough with XRTK yet to fully understand, how to Implement this without Breaking existing Patterns.
What have you already tried
I am using ARFoundation in my XRTK Project. But currently basically when Building for mobile AR I am using different Scenes and custom Setups.
What material have you referenced that didn't answer your question
ARFoundation docs:
<EMAIL_ADDRESS>

Thanks for starting this conversation @FejZa.
We've already got a CameraService just for the task, and there's already a need to add additional components to the camera for the Lumin platform as well. We should definitely start looking into this asap.

Created #190 to get started with this


Enhancements to Ecosystem and FounderHub Pages for Improved User Experience and Navigation

Label
Type: Feature Request
Request
Enhancements to the Ecosystem and FounderHub pages on the NEAR.org website to improve user experience and navigation.
Background
The current Ecosystem and FounderHub pages lack clear call-to-action (CTA) buttons and contain outdated or irrelevant information, making navigation and engagement more difficult for developers, founders, and contributors.
File to Edit

Ecosystem Page
FounderHub Page

File Location

Ecosystem Page (src/pages/ecosystem.tsx)
FounderHub Page (src/pages/founders.tsx)

Changes Required
Ecosystem Page Changes

Hero Section Updates:

Headline: Change to "Welcome to NEAR"
Subheadline: Update to "Explore a vibrant ecosystem that supports developers, founders, and contributors."
CTA Buttons:

Add a button linking to "Founders" (near.org/founders)
Add a button linking to "NEAR AI" (near.org/ai)
Add a button linking to "Developers" (DevHub)
Add a button linking to "Connect" (Onboarding and support form: https://airtable.com/appc0ZVhbKj8hMLvH/pagsVjkk5LZ66MbJm/form)

FounderHub Page Changes

Hero Section Updates:

CTA Buttons:

Add a button linking to “Resources” (Horizon Founder Content)
Add a button linking to “HZN AI incubator” (HZN.XYZ/hzn)
Add a button linking to "Connect" (Onboarding and support form)

First Subhero Section:

Title: Change to "Welcome to NEAR, the best place to build Web3 projects: From idea to launch, the NEAR Founder Hub guides you every step of the way. Get the tailored resources, support, and community you need to launch and scale your Web3 project on NEAR."
CTA Button: Update text from “Join our community” to “Get Support” (link remains the same)

Self-Serve Resources Section:

Remove the “Token Launch Resources” Box
Remove the “Founder Events” Navigation Box

HZN Accelerator Application Section:

Title: Change to "HZN AI Incubator Application"
Description: Update to “Building in Web3 and AI. Apply to NEAR Horizon’s AI incubator and contribute to NEAR's User-Owned AI vision.”
Link: Update to HZN.XYZ/HZN

Fourth Subhero Section:

Move this section to the second subhero position
Title: Change to "Join the User-Owned AI Mission"
Subtitle: Update to “Apply to NEAR's HZN AI Incubator”
Description: Update to “Put the power of AI where it belongs, in the hands of Users. Apply to be part of NEAR Foundation’s strategic vision to build a User-Owned AI ecosystem that provides alternatives to the corporate-owned, centralized AI.”
CTA Button: No change to the link or text (Apply now)

Fifth Subhero Section:

Title: Change to “Get in Touch”
CTA Button: Update text to “Connect” (Link to linktree)

Funding Sources Section:

Remove this entire subhero section, including the title, subheader, and navigation boxes:

“Ecosystem Grants”
NDC
She is NEAR
Globe DAO

Additional context

Ecosystem Page Source
FounderHub Page Source

Reference Images:

FounderHub Hero Section Update:

Funding Sources Removal:

FounderHub Updates:

Hey @jbarnes850, what's the Linktree URL for this change?

Fifth Subhero Section:
Title: Change to “Get in Touch”
CTA Button: Update text to “Connect” (Link to linktree)

@jbarnes850 Do you have a new design asset to replace the image marked in red?

Also, what should happen to the existing description?
Horizon is an early stage accelerator for Web3 founders to build, connect, and grow.

@calebjacob - thanks so much for jumping on this!

Here is the link to the linktree for the "Connect" CTA: https://linktr.ee/joinNEARcommunity

We're in the process of redesigning the NEAR Horizon Website (this recommendation was made prematurely). We can keep the existing image for now.

Let me know if there's any other info/context I can share!

Thanks for the info! That should be all I need. I'll let you know when the changes are ready to preview.

@jbarnes850 the changes are live on https://near.org/ - let me know if we need any further changes.


Incremental Graph-Copy-Based Upgrades

Incremental Graph-Copy-Based Upgrades
Refinement of https://github.com/dfinity/motoko/pull/4286
Supporting arbitrarily large graph-copy-based upgrades beyond the instruction limit:

Splitting the stabilization/destabilization in multiple asynchronous messages.
Limiting the stabilization work units to fit the update or upgrade messages.
Blocking other messages during the explicit incremental stabilization.
Restricting the upgrade functionality to the canister owner and controllers.
Stopping the GC during the explicit incremental upgrade process.

Usage
For large upgrades:

Initiate the explicit stabilization before the upgrade:

dfx canister call CANISTER_ID __motoko_stabilize_before_upgrade "()"

An assertion first checks that the caller is the canister owner or a canister controller.
All other messages to the canister will be blocked until the upgrade has been successfully completed.
The GC is stopped.
If defined, the actor's pre-upgrade function is called before the explicit stabilization.
The stabilzation runs in possibly multiple asynchronous messages, each with a limited number of instructions.

Run the actual upgrade:

dfx deploy CANISTER_ID

Run and complete the stabilization if not yet done in advance.
Perform the actual upgrade of the canister on the IC.
Start the destabilization with a limited number of steps to fit into the upgrade message.
If destabilization cannot be completed, the canister does not start the GC and does not accept messages except step 3.

Complete the explicit destabilization after the upgrade:

dfx canister call CANISTER_ID __motoko_destabilze_after_upgrade "()"

An assertion checks that the caller is the canister owner or a canister controller.
All other messages remain blocked until the successful completion of the destabilization.
The destabilzation runs in possibly multiple asynchronous messages, each with a limited number of instructions.
If defined, the actor's post-upgrade function is called at the end of the explicit destabilization.
The GC is restarted.

Remarks

Steps 1 (explicit stabilization) and/or 2 (explicit destabilization) may not be needed if the corresponding operation fits into the upgrade message.

Stabilization and destabilization steps are limited to the increment limits:

Operation
Message Type
IC Instruction Limit
Increment Limit

Explicit (de)stabilization step
Update
20e9
16e9

Actual upgrade
Upgrade
200e9
160e9

The stabilization code in the RTS has been restructured to be less monolithic.

Trying to reopen this PR to trigger the usual CI steps...


Add example List with Icon and Checkbox to Wiki

Could you add an example to the Wiki for Lists? Specifically the one that you have in the sample app where you have a logo, text and checkbox.
I want to have a list of items and have check boxes, I want to select the ones I want and then hit a button on the page outside of the List itself that then does work with the list of data but I'm not sure how to do it.
Thank you for all your work and quick responses!

@macattack086 https://github.com/HeaTTheatR/KivyMD/wiki/List-item-with-Checkbox


install

in elasticsearch plugin
./plugin install http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/<IP_ADDRESS>/elasticsearch-jdbc-<IP_ADDRESS>-dist.zip installed
error:
Verifying http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/<IP_ADDRESS>/elasticsearch-jdbc-<IP_ADDRESS>-dist.zip checksums if available ...
Downloading .DONE
ERROR: Could not find plugin descriptor 'plugin-descriptor.properties' in plugin zip
why???

The JDBC importer is not a plugin.
Please unzip zip file and use JDBC importer as standalone application.

Hello,
I send you this email to ask if you can provide me the installation procedure of elasticsearch-jdbc for elasticsearch 2.1.1
I followed the procedure set up on the site but I have not succeeded , i use Centos 7


[FEAT] Native Runner

Makes swordfish a top level runner, set_runner_native(). Additionally sets swordfish to be the default runner for development.

@colin-ho looks like this introduces a regression for the benchmark test_show[100 Small Files] Can you take a look?


Write validation tests for each component

As a followup to #220 , we should implement automated tests to ensure a bug like this doesn't exist in other components, and to help ensure that it doesn't happen for any new components we might add.

@brdunfield  was this closed by #236 ?

Yes, good catch!


WIP: [ci] [R-package] re-enable 'rchk' checks

Replaces #6332
#6266 and related PRs mad project's shell scripts stricter, so they now exit with a non-0 exit code the first time anything goes wrong (e.g. some variable they require isn't set or some command they run fails).
That work revealed that the CI job supposed to be checking the R package with rchck has not actually been working!
That job currently prints this:
/__w/LightGBM/LightGBM/.ci/test_r_package.sh: line 178: docker: command not found

And then just exits "successfully" with an exit code of 0 🙃
(link to recent build from master)
I suspect that that's been silently broken for over a year... since #5638. That PR moved all of the Linux R-package jobs inside of containers, but the ubuntu:latest image doesn't have docker in it and isn't set up for docker-in-docker by default. Following the docs in https://github.com/kalibera/rchk/blob/master/doc/DOCKER.md, that job expects to build the R package on the host, then docker run a container with rchk in it and that package mounted in.
This PR proposes the following:

using the new R-hub images for rchk (similar to #6523)
removing rchk-specific branches and special conditions in other CI scripts

Benefits of these changes

restores a CI job that can be used to catch issues with the R package which otherwise wouldn't be caught until an attempted release to CRAN
simplifies the script used by most macOS and Linux R-package CI jobs in the project

How I tested this
Intentionally pushed a change that would create an imbalance of PROTECT() / UNPROTECT() calls in lightgbm_R.cpp. Saw this check fail as expected.

([build link]())
Then reverted that and saw it passing on this branch.
References
The rchk job was first added here in #4449.
CRAN rchk check description: https://raw.githubusercontent.com/kalibera/cran-checks/master/rchk/README.txt (linked from https://cran.r-project.org/web/checks/check_issue_kinds.html).

This is not working. Running it locally, I see the same thing I'm seeing in CI.
Built the package locally, from this branch, which should result in significant stack-protection errors because I removed many Rf_unprotect() calls in lightgbm_R.cpp.
rm -rf ./packages
mkdir -p ./packages
sh build-cran-package.sh --no-build-vignettes
cp lightgbm*.tar.gz ./packages
``

Followed the `r-hub` instructions ([docs link](https://r-hub.github.io/containers/local.html)), using their images:

```shell
docker run \
    --rm \
    --platform linux/amd64 \
    -v "$(pwd)/packages":/check \
    ghcr.io/r-hub/containers/rchk:latest \
    r-check

Saw this:
objdump: Warning: Unrecognized form: 0x23
objdump: Warning: DIE at offset 0x11167d refers to abbreviation number 4258 which does not exist
Running bcheck
/opt/R/devel-rchk/bin/rchk.sh: line 83:  1224 Aborted                 $RCHK/src/$T $RBC $F > $FOUT 2>&1
==== rchk bcheck =========================================
ERROR: too many states (abstraction error?) in function strptime_internal
ERROR: too many states (abstraction error?) in function bcEval_loop
ERROR: too many states (abstraction error?) in function StringValue
ERROR: too many states (abstraction error?) in function RunGenCollect
bcheck: /usr/lib/llvm-14/include/llvm/ADT/APInt.h:1470: uint64_t llvm::APInt::getZExtValue() const: Assertion `getActiveBits() <= 64 && "Too many bits for uint64_t"' failed.

note: image digest from docker inspect = ghcr.io/r-hub/containers/rchk@sha256:5a05030db78164b698ae05025ba383e4129fc9fb53d7aa6b18ebaee9b8aa9c68
Followed CRAN's instructions (docs link, linked from https://cran.r-project.org/web/checks/check_issue_kinds.html) and using the kalibera/rchck images CRAN recommends using.
docker run \
    --rm \
    --platform linux/amd64 \
    -v $(pwd)/packages:/rchk/packages \
    kalibera/rchk:latest \
    /rchk/packages/lightgbm_<IP_ADDRESS>.tar.gz

Saw the same results:
objdump: Warning: Unrecognized form: 0x23
objdump: Warning: DIE at offset 0x1052d1 refers to abbreviation number 4258 which does not exist
/rchk/scripts/check_package.sh: line 100:   736 Aborted                 $RCHK/src/$T $RBC $F > $FOUT 2>&1

Library name (usually package name): lightgbm
Initialization function: R_init_lightgbm
Functions: 58
Checked call to R_registerRoutines: 1
ERROR: too many states (abstraction error?) in function strptime_internal
ERROR: too many states (abstraction error?) in function RunGenCollect
bcheck: /usr/lib/llvm-14/include/llvm/ADT/APInt.h:1470: uint64_t llvm::APInt::getZExtValue() const: Assertion `getActiveBits() <= 64 && "Too many bits for uint64_t"' failed.

Rchk version: 1cae90e208e97a5c41f1c3e128d99b197478443e
R version: 84255/R Under development (unstable) (2023-04-13 r84255)
LLVM version: 14.0.0

Repeated both of those with with the latest release of {lightgbm} (v4.5.0), which has been on CRAN for 3+ months (since July 26, 2024).
rm -rf ./packages
mkdir -p ./packages
wget \
    -O ./packages/lightgbm_4.5.0.tar.gz \
    https://cran.r-project.org/src/contrib/lightgbm_4.5.0.tar.gz

Saw the exact same results with both the r-hub approach/images and the CRAN/kalibera approach/images.
Some other notes:

might be this LLVM bug... https://github.com/llvm/llvm-project/issues/104761

which in theory might be fixed by this: https://github.com/llvm/llvm-project/pull/111807

maybe CRAN is not running rchk on {lightgbm}?

{lightgbm} v4.5.0 was published on CRAN 3 months ago (July 26, 2024), and no rchk issues are reported at https://cran.r-project.org/web/checks/check_results_lightgbm.html
it seems like CRAN's rchk results are being recorded at https://github.com/kalibera/cran-checks/tree/master/rchk/results-full, and there are none for {lightgbm} or {xgboost}
the last time the kalibera/rchk docker image was updated was 1.5+ years ago (April 2023)

Given all of what's written in https://github.com/microsoft/LightGBM/pull/6545#issuecomment-2440423638 ... I really think that CRAN is just not running rchck on {lightgbm} any more.
It does say at https://raw.githubusercontent.com/kalibera/cran-checks/master/rchk/README.txt (which CRAN links to) that rchk

... has been written primarily for C and works less well with C++.

@StrikerRUS I think we should do the following:

ask on the r-package-devel mailing list if rchk is still being used, and how to tell if CRAN is running it on {lightgbm}
remove all rchck code and configuration in LightGBM's CI (since it is already not working)
possibly re-introduce it in the future if the issues described above are resolve

What do you think?

@jameslamb Thanks a lot for your investigation!
Totally support your plan. Last commit in kalibera/cran-checks was 5 months ago... So I guess they stopped running it.

Totally support your plan.

Thanks!
I noticed that a recent issue got a timely response on kalibera/rchk, so before going to the r-package-devel mailing list, I posted there to ask the rchk author directly: https://github.com/kalibera/rchk/issues/35
I'll update this PR's code and description tomorrow to just remove rchk checks from this repo for now.

I've updated the title and description to reflect the comments above. This is ready for review.


Update run_as_windows_service.md

The instructions mention two different app.ini paths, I believe the correct one is C:\gogs\custom\conf\app.ini.

Thanks!


Dynamic Log Levels is not working on device when app archived

pod 'NBULog', '~> 2.0.0'
pod 'NBULog/Console' , '~> 2.0.0'

[NBULog setAppLogLevel:DDLogLevelWarning]; //default
[NBULog setAppLogLevel:DDLogLevelAll];//when switch my app to develop mode
It is work all fine  executing on simulator，but it not working when it  installed from TestFlight.
Does anyone have same problem？

I think it maybe a bug. Finally,  I set log level to DDLogLevelVerbose ， and everything works  fine. DDLogLevelAll is not working with release version on my iPhone X.


Undefined in the books container instead of the books or the previous ones

Describe the bug
undefined or an array of objects instead of the books!
To Reproduce
Steps to reproduce the behavior:

Go to https://liyasthomas.github.io/books/
Scroll down to Bestsellers
Click on the right arrow
See error

Expected behavior
More books, or the previous fetched books!
Screenshots

Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Please give an explanation for your issue

Please give an explanation for your issue

Sorry, for some reason everything I wrote, was deleted!!

Issue has been identified. Will look into it and let you know the progress. Thanks for your concern.


Add note for people not using BNO085 for less confusion

The reason for adding this change, is because I personally got very confused after extensively looking at the compass (see conversation starting at https://discord.com/channels/817184208525983775/878727840118505533/992930210565586954)

Compass should not be ignored. It shows orientation of the axes of the chip as per mark on the chip and datasheet and it needs to be followed. Same concept applies to all IMUs, not just BNO085.

Note that this exists too:

Maybe it is safer to just ignore it.
Maybe better have images for all common breakout kinds for supported IMUs.
And just to make sure: Do you orient the axes the same as with BNOs? Or do you match the holes? Or is it something else?


Unable to Map Print Screen button to Windows + Shift + S

Microsoft PowerToys version
0.68.0
Installation method
Microsoft Store
Running as admin
Yes
Area(s) with issue?
Keyboard Manager
Steps to reproduce
Click Remap a key. set Print Screen to Win + Shift + S
✔ Expected Behavior
When I click Print Screen it should open up snipping tool.
❌ Actual Behavior
Nothing happend.
Other Software
No response

This is actually directly built into snipping tool.  No need.


Functions like nlg_num should be internationalized

Some functions should have default behaviors depending on project language.
For example nlg_num:
fr -->   123 456,99
en --> 123,456.99

fixed in v2


Codegen generate wrong go code - Redundant semicolon

The command: sysl codegen --grammar=unsorted/examples/grammars/go/go.gen.g --transform=unsorted/examples/grammars/go/go.gen.sysl demo/simple/hello --start goFile
Expected behaviour
package helloworld

//Message ...
 type Message struct {
 	 Text string `json:"text"`
 }

Actual behaviour
There's a semicolon at the end of package line: package helloworld ;

Code generators should run a reformatter (gofmt, goimports or the like) as the last stage. It looks like this might not be happening in this instance.

It is caused by 'PackageClause: 'package' PackageName '\n';' in go.gen.g, fixed this issue with https://github.com/anz-bank/sysl/pull/505.

Hi @ChloePlanet, this issue has been fixed, can you help to verify with code in branch master and close? Thanks.


[BUG] Plugin not properly compatible with desugar version 1.2.* (Android 33)

Describe the bug
I've recently tried to develop an app that utilizes your plugin. The plugin works great on an emulator w. Android 31, no compatibility issues there. The issue arises with Android 33 based emulators. I'm using the flutter_local_notification plugin which utilizes desugar. The latest desugar version (1.2.2), which is fully compatible w. Android 33 is incompatible with this plugin, as this plugin uses an older Gradle version.
Log:
The Android Gradle plugin supports only Kotlin Gradle plugin version 1.5.20 and higher.
The following dependencies do not satisfy the required version:
project ':flutter_background' -> org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.50

To Reproduce
Create a new project that utilizes both this plugin and flutter_local_notifications. Try to run it in an Android 33-based device. It should crash when the app starts. Also, when upgrading Gradle, it should not be able to be compiled.
Expected behavior
The plugin should be able to be compiled on the latest Gradle version.

This is directly related to #65.

fix please

@kingstertime @kerk12 #65 should be fixed in the latest release (1.2.0). Can you confirm this issue is resolved as well, so I can close it?


Dropup expands below navbar

First, thanks for this great plugin! I really appreciate the work you guys put in it, and I guess you want to make it even better and so gonna be interested in this issue I had.
Namely when select with enough options opens as dropup it tends to go beneath the fixed bootstrap navbar. As you can see in this plunker https://plnkr.co/edit/zSgS2m1KikVqbYP9QksQ?p=preview .
I managed to fix this behavior by simple hack, I changed this line:
selectOffsetTop = pos.top - containerPos.top - $window.scrollTop()

to
selectOffsetTop = pos.top - containerPos.top - $window.scrollTop() - $('nav.navbar').height();

which somehow makes selects behave nicely and stop right before navbar.
I'm not sure how this could be implemented, but have a few ideas:

automatically checking margins set on body and adjusting available height accordingly
adding an option where top/bottom offset from the edge can be specified, or maybe even a callback for more flexibility

You can fix this a couple different ways:

Set the z-index on the dropdown menu to be higher than the navbar.

.dropdown-menu {
  z-index: 1040;
}

Use a brand new feature (not yet documented or in an official release) - windowPadding. This will be in the next release. Use a number or an array of numbers [top. right, bottom, left] to set the padding around the window. You can also set a data attribute. See #1503 for more info.

{
...
windowPadding: [50, 0, 0, 0]
...
}

<select data-window-padding="[50, 0, 0, 0]">
</select>


Cant delete devices from Instance

1.2.6
I cant delete devices out of the instance. When i delete devices directly in phoscon app the adapter dont refresh the instance.

Known behaivior, not a bug. You can delete the objects in ioBroker manual.

#8

Please check v1.3.2