bug(TestbedHarnessEnvironment): Impossible to use if component under test uses intervals

Use StackBlitz to reproduce your issue: ADDED (thanks @annieyw!), example here
Steps to reproduce:

Follow the instructions for using Harnesses
In the component under test, use setInterval, or the rxjs interval(n) or timer(0, n) observables
Your test will stall indefinitely at e.g. await loader.getAllHarnesses(MatButtonHarness); (from the docs linked in step 1)

Expected Behavior
getAllHarnesses completes once the component has finished initializing and had a chance to create instances of child components.
Actual Behavior
The call to getAllHarnesses never resolves, and the test times out.
Environment

Angular: 10.1.2
CDK/Material: 10.2.1
Browser(s): N/A
Operating System (e.g. Windows, macOS, Ubuntu): N/A (Win10)

As I understand it, this is because under the hood, TestbedHarnessEnvironment is using ComponentFixture#whenStable.  From what I can tell, the official stance from Angular / Zone is that you should use fakeAsync plus tick, and call discardPeriodicTasks to ignore the (expected) pending intervals, instead of using waitForAsync / whenStable.
This very old StackOverflow question suggests that one should never have setInterval in a component or service, instead using an injected service to provide periodic actions, so it can be mocked out during testing, but I've never seen anything "official" from Angular to say that intervals are unsupported.
If it's not permissible to use intervals in a component, this should be documented somewhere, with suggestions of alternative design patterns to use that are compatible with Material's test utilities.  If it is permissible, TestbedHarnessEnvironment should be updated to include another way of determining when the owning ComponentFixture is "ready", or I guess kick this upstream to the Zone folks so they can make whenStable work with intervals.

Probably relevant: https://github.com/angular/angular/issues/12721 , https://github.com/angular/components/pull/20638.

I keep meaning to test if #20638 fixes this but haven't had the time.  Is there an easy way to tell Stackblitz to update a bunch of package versions in parallel?  On my machine, I'd use npm-check-updates (ncu) but I don't think I have an equivalent online.

I'd like to test and close this out.  I was excited to see a stackblitz for tests linked from https://material.angular.io/components/button/examples , but it currently fails for me, with the error

I see that @types/jasmine is in devDependencies but that package doesn't seem to define a module for jasmine-core.  I can't tell if this is a Jasmine issue, a StackBlitz issue, or something wrong with the project.
@annieyw do you have any insight?  (If that particular StackBlitz isn't your responsibility, sorry, I just grabbed your name from the linked ticket above.)

Finally getting back to testing this, sadly it is not fixed.  Updated example -- same problem as the one linked in the original post, the tests never complete and eventually time out waiting for loader.getAllHarnesses, which never resolves because the component uses interval.  You can swap the commented-out lines in the component (2/3 and 16/17) and see that the tests all pass fine when interval is not used.
There are a lot of Rx primitives that build on top of interval so I still think this problem is likely to be relevant to a lot of users.  I'm coming back to this issue now because Angular has closed https://github.com/angular/angular/issues/25457 and https://github.com/angular/angular/issues/34742, which means the underlying problem is likely to remain indefinitely.

Yeah the harnesses unfortunately don't really work for this type of situation today. It's something I'd like to try to design a solution for in the future, though I'm not sure exactly what that would look like. In the mean time you might be able to workaround it using the manualChangeDetection function: https://material.angular.io/cdk/test-harnesses/overview#change-detection


[contract] claim starting resources

The amount of resources claimable should depend on the resources you produce on your realm:

lords, troops, donkeys, wheat and fish stay the same
other resources should be claimable depending on the input resources needed to start production on your realm:
base amount: X, for resources not needed to produce on your realm, could be set very low or even to 0
production amount: Y, for resources needed as input for production on your realm

keep the mint config so that you can still add arbitrary amounts/resourceids to the claimable resources for lords, troops, food and donkeys
add additional base amount and production amount in mint config.
change the mint_starting_resources function to also retrieve the inputs needed for production for the realm

working on it

currently done in a naive way by minting the resources directly in the wallet. If we keep this resource allocation strategy, we should add in the contract.

Can this be closed?


Chrome OS support

Any chance this awesome app could be available on Chrome OS?

This simply isn't possible right now, maybe with the integration of Linux which is apparently happening it might allow for some kind of support in the future.
I do know you can enable it by using Crouton which requires you to enable developer mode which isn't a great solution for everyone obviously.  So if you really want to run it on ChromeOS you could look into that but there isn't much else I can do sadly


Mobile layout fixes

Related to https://app.clubhouse.io/cartoteam/story/121312/mobile-support-sample-app-and-skeleton

Mobile looks really nice, great work!


Pixel launcher crashing

If I install the pixel launcher, I can't go to the home screen and gesture navigation does not work. It crashes all the time.
I'm using AOSP Android 13 LeaOS with treble patch

Using beta version or stable?

Please send logs

Using beta version or stable?

I'm using stable.
Where can I find the logs?

Try this https://t.me/pixelifysupport/87697

I'm sorry but I don't have telegram

I tried it and it's still crashing. The gesture Bar won't work with it too. :/
By the way... Why does the recorder app by google crash after I say a word?

My launcher is also crashing. I have these logs https://paste.crdroid.net/swxTtG

I tried it and it's still crashing. The gesture Bar won't work with it too. :/
By the way... Why does the recorder app by google crash after I say a word?

i've got the same problem on crDroid ROM

Hello. I have tried both BETA 4 and the stable. The stable version was working fine on my Asus zenfone 9 for months (after disabling overview suggestions).  But recently, the recent apps wouldnt open at all. Google voice wouldnt work without the internet either. Pixel launcher still works as a default home launcher. Kindly assist

Are you using Android 13 with the March 2023 security update?

Yes. The issue is fixed now.
I uninstalled everything. Installed the beta 4. It uninstalled the stock launcher but it didn't install pixel launcher idk why.
I then installed the 2.2 stable without uninstalling the previous one.
Recent menu is working now. Idk why it worked but those facing this problem can try my method.
I am facing problems with pixelify like google voice and calling. I'll open separate tickets for those


Failed to compile

Hi, i have this issue:
Failed to compile.
./src/index.tsx
TypeError: this.getOptions is not a function

craco-swc version: ^0.5.1
typescript version: ~4.0.8
react version: ^16.14.0
react-app-rewired ^2.1.8
Os: windows
craco config:
const CracoSwcPlugin = require('craco-swc');

module.exports = {
  plugins: [
    {
      plugin: CracoSwcPlugin,
      options: {
        swcLoaderOptions: {
          jsc: {
            externalHelpers: true,
            target: 'es2015',
            parser: {
              syntax: 'ecmascript',
              jsx: true,
              dynamicImport: true,
              exportDefaultFrom: true,
            },
          },
        },
      },
    },
  ],
};

Behaviour: start project in dev mode with craco start
Tell me if i have to add other information to solve the problem
Thanks in advance!

Maybe this is related or can help?
https://github.com/swc-project/swc/issues/4484

I'm running into this same issue. I've followed the instructions (to change the version) that was mentioned in https://github.com/swc-project/swc/issues/4484. However that did not work.
Any suggestions are welcome.

I've had a same error.
Try it like this. craco.config.js
it works!
const CracoSwcPlugin = require('craco-swc');

module.exports = {
    plugins: [
        {
            plugin: {
                ...CracoSwcPlugin,
                overrideCracoConfig: ({ cracoConfig }) => {
                    if (typeof cracoConfig.eslint.enable !== 'undefined') {
                        cracoConfig.disableEslint = !cracoConfig.eslint.enable;
                    }
                    delete cracoConfig.eslint;
                    return cracoConfig;
                },
                overrideWebpackConfig: ({ webpackConfig, cracoConfig }) => {
                    if (
                        typeof cracoConfig.disableEslint !== 'undefined' &&
                        cracoConfig.disableEslint === true
                    ) {
                        webpackConfig.plugins = webpackConfig.plugins.filter(
                            (instance) => instance.constructor.name !== 'ESLintWebpackPlugin',
                        );
                    }
                    return webpackConfig;
                },
            },
            options: {
                swcLoaderOptions: {
                    jsc: {
                        externalHelpers: true,
                        target: 'es5',
                        parser: {
                            syntax: 'typescript',
                            tsx: true,
                            dynamicImport: true,
                            exportDefaultFrom: true,
                        },
                    },
                },
            },
        },
    ],
};

ref) https://jwchang0206.medium.com/make-create-react-app-faster-with-rust-6c75ffa8fdfd


Misty Step Temporary Effect

The Misty Step spell currently has a temporary effect, duration 1 turn, that doesn't seem to do anything.  Based on the official wording of the spell in DDB I don't see any kind of status effect that it applies.  So I don't think this temporary effect should be on the spell at all.  Am I missing something?

This is how the macro is triggered

OK, I do see the macro.itemMacro in the effects now.  Please excuse my ignorance here but what macro is this executing?

I believe misty step might have broken with v8.6, though I hadn't used it prior to upgrading

I believe misty step might have broken with v8.6, though I hadn't used it prior to upgrading

No macro in the DAE SRD will work in  0.8.6, that's why the compatability is 0.7.9

I'm still on 0.7 so that's not a problem for me.  But where do I find the macro this is supposed to be executing?

@john3300 it's embedded in the item using item macro

Is there a way for me to see the code of this embedded macro?

If you install the Item Macro module you can yes

According to the Item Macro module listing page v1.3.2 is the last one to be compatible with the 0.7.x branch.  But all the Manifest URL links on that page all point to the same URL for the v1.5.2 release.  Can I still get the older version somehow?

Best head to the discord page for that help. Im going to close this ticket now


Fix unit Type and User

I'm doing the same change that were made for lufi:
https://github.com/YunoHost-Apps/lufi_ynh/pull/36
https://github.com/YunoHost-Apps/lufi_ynh/pull/38

Waiting for ci-dev before switching to "ready for review"

mmhh not sure I'm right with User=__APP__

Merging because this is consistent with lufi also based on carton


compile matcher fails when checking classes targeting windows on posix.

We're trying to  use the compile matcher on all of our role classes. Our puppetmaster serves windows and linux nodes.   each node definition has one role class assigned.
when trying to compile a windows role, on a ci linux or dev osx machine.  there's inevitably a File resource with a path of the form: C:\foo.txt   rspec-puppet fails to compile the class because File paths must be fully qualified, not 'C:\foo.txt'
Any guidance on how to resolve this would be greatly appreciated.
for those interested I've created a sample project which illustrates the issue:
https://github.com/fessyfoo/rspec-puppet-windows-issue

Just reiterating that the puppetmaster running on linux  does not have a problem compiling catalogs for windows nodes,  so it's very odd that the specs do.    I got lost in the puppet code for this but it almost looked like the puppetmaster and the spec code were calling different catalog complilation paths within puppet.   ...   fuzzy I know.

+1: Same issue happening here.
I tried to apply work-around from @drrb. It works to a point, but there seem to be more dependencies in our case than in the example code. I won't spend time on it currently, just as a note here.

+1 for fixing this

+1, same issue here.

I've delved deeper into this issue. puppet master --compile creates only a so-called 'resource catalog', which is the server-side representation to facilitate network serialization. This does not call into any of the validation methods nor creates a "proper" resource graph.
rspec-puppet on the other hand, needs the resource graph and therefore acts like an agent and converts the resource catalog in a RAL catalog. This starts calling into actual types and therefore hits this validation.
This is documented in https://github.com/puppetlabs/puppet/blob/master/docs/catalogs.md
Stubbing Puppet::Util::Platform.windows?, as @drrb can only be a start in this case. On the puppet side alone, there is also Puppet.features.microsoft_windows? which needs to be considered. Finally, all types that are used by the catalog need to be checked for things where they access system specific runtime behaviour.
In the end it might be easier to run rspec on an actual windows system for these cases. rspec's metadata support might help here to select tests based on platform.

thanks for that explanation.

Would love to see this fixed
For anyone using @drrb's workaround, I had to change !!Thread.current[:windows?].call to
if Thread.current[:windows?]
  !!Thread.current[:windows?].call
else
  false
end

to get it to work.

@mcasper,  @DavidS  explanation means I think this won't be fixed, without some serious support from the puppet internals.   (and not rspec-puppet)
which leaves you with two choices.

test platform specific manifests on the target platform
do the monkey patching hacks.

fwiw this is the level our hack has grown to:  https://gist.github.com/fessyfoo/5903ceb7c94f067e21e2  we have to selectively pretend to be on windows depending on what part of the code is calling.   it's really dirty.

which leaves you with two choices.

test platform specific manifests on the target platform
do the monkey patching hacks.

FWIW, there are other issues that make testing on the target platform optimal.

Ruby has different defined constants on different platforms (particularly Windows) and I believe certain areas are not even compiled unless Windows. This could possibly have an effect with provider-level validation called from types.
Windows especially has these differences (like Pathing, Registry, API calls) show up versus other platforms as it mostly comes down to differences based in POSIX against another POSIX, versus POSIX against Windows, and things are not similar enough.

At one point the Puppet team had a way of attempting to test Windows specific stuff when on POSIX platforms, but then it became about determining whether test failures were about the overrides working or the code in question. It appears we've removed the final remnants of the overrides from the Puppet code base.
Trying to stub things out could become a bit of a challenge (at least wrt types and providers) - you could spend significant time in adding back in missing constants and stubbing code (and code from Windows specific gems) that are available when on Windows. Or in this case with overriding Puppet internals that could later change. The cost over the benefit is definitely something to take into consideration.
When you test platform specific code against those specific platforms and you have a failure, you have a much better guarantee that it's likely your code (or your test) and not something you need to change with any monkey patches you may have implemented. So you spend a lot less time debugging failed tests.

FYI version 2.2.0 of the rspec-puppet gem works on POSIX

More info... on versions > 2.2.0 the following hack is needed in your spec files:
      before :each do
        Puppet[:autosign] = false
        Puppet::Util::Platform.stubs(:windows?).returns true
      end

However if you are using puppetlabs/powershell the only way I could get it to work is to stub adding the provider (having the fixture was not enough)
      before :each do
        Puppet[:autosign] = false
        Puppet::Util::Platform.stubs(:windows?).returns true
        Puppet::Type.type(:exec).provide :powershell, :parent => Puppet::Provider::Exec do
          def run(command, check = false)
          end
        end
      end

Unfortunately this only works for versions < 2.5.0 of rspec-puppet

I have logged yet another issue around this with a pretty in depth investigation... https://github.com/rodjek/rspec-puppet/issues/437

This should now be resolved by #498

This seems to be happening again with rspec-puppet 2.6.7, puppet 5.5.6, and the puppetlabs/chocolatey module

Oh, ignore me. I was not using double backslashes in my spec/pre-conditions/variables.pp file. Once I changed all \ to \\ everything is golden. Ie:
$choco_install_path = 'c:\\foo\\bar\\choco.exe'
$chocolateyversion  = '<IP_ADDRESS>'


[2020.5.0] Wrong indentation

Issue Type: Bug
if ($true) {
'A'
{'A'}
}

Alt + Shift + F
On 2020.4.0 works as expected:
if ($true) {
    'A'
    { 'A' }
}

On 2020.5.0 no indentation on 'A', 1 space before { 'A' } instead of 4 spaces:
if ($true) {
'A'
 { 'A' }
}

Edit: found the problem/solution for now, changing "powershell.codeFormatting.pipelineIndentationStyle" from the default "None" to anything else ("NoIndentation", "IncreaseIndentationAfterEveryPipeline", "IncreaseIndentationForFirstPipeline") and indentation works again as expected.
Looks like the new "None" setting that was added in the last update is broken.
Extension version: 2020.5.0
VS Code version: Code 1.45.1 (5763d909d5f12fe19f215cbfdd29a91c0fa9208a, 2020-05-14T08:27:35.169Z)
OS version: Windows_NT x64 10.0.18363

System Info

Item
Value

CPUs
AMD Ryzen 7 1800X Eight-Core Processor          (16 x 3593)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_off_okwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
15.95GB (7.99GB free)

Process Argv

Screen Reader
no

VM
22%

Thanks @ili101 looks like a dupe of https://github.com/PowerShell/PSScriptAnalyzer/issues/1496 should be fixed in the next VSCode PowerShell release

Yes, thank. We have PR #1497 for a fix already ready, can you review please @rjmholt
The short term fix for end users is to change the default back to NoIndentation in the next update to the preview extension, which has already been merged and is just pending a re-release: https://github.com/PowerShell/vscode-powershell/pull/2698
Until PSSA 1.19.1 releases, we suggest to hold off using the new None setting.


Update CHANGELOG.md

In previous versions you needed to add dropdown-toggle to menu items that didn't leave the current page or else the dropdown would remain open even after a menu click. This is no longer the case and extra dropdown-toggles will cause the menu to immediately close after opening.

Changelog is auto-generated -- any changes to it will be gone on next release.


WindowDescriptor added through a startup_system command always uses default WindowDescriptor from default

The code below demonstrates the bug. This should create a window with the title of 'test' but instead will create one with the title of 'bevy', at least on Linux. I haven't tested this on any other platform.
use bevy::prelude::*;

fn main() {
    App::build()
        .add_startup_system(ui_loader.system())
        .add_default_plugins()
        .run();
}

fn ui_loader(mut commands: Commands) {
    let window = WindowDescriptor {
        title: "test".to_string(),
        width: 200,
        height: 300,
        vsync: true,
    };
    commands.insert_resource(window);
}

Try using add_resource before add_default_plugins to set the window title.

If I do that it works, yes. The point was that I was trying to setup a startup resource in a startup system. If I have to initialize things outside the App builder section, what is the point of them? It's an obvious problem.
It seems like a case of "let's make it easy for the tutorial at the cost of functionality" since all that is needed is to not add a default window when the default plugins are added.

Then I think you have to:

copy the build steps from add_default_plugins
set add_primary_window: false for WindowPlugin
and send the CreateWindow event by yourself

That fails with a panic when the render plugin tries to do a swap chain event without a window.
`
use bevy::prelude::*;
use bevy::window::WindowMode;
use bevy::type_registry::TypeRegistryPlugin;
use bevy::core::CorePlugin;
use bevy::transform::TransformPlugin;
use bevy::diagnostic::DiagnosticsPlugin;
use bevy::input::InputPlugin;
use bevy::window::WindowPlugin;
use bevy::asset::AssetPlugin;
use bevy::scene::ScenePlugin;
use bevy::render::RenderPlugin;
use bevy::sprite::SpritePlugin;
use bevy::pbr::PbrPlugin;
use bevy::ui::UiPlugin;
use bevy::text::TextPlugin;
use bevy::audio::AudioPlugin;
use bevy::gltf::GltfPlugin;
use bevy::winit::WinitPlugin;
use bevy::wgpu::WgpuPlugin;
fn main() {
App::build()
.add_startup_system(ui_loader.system())
.add_plugin(TypeRegistryPlugin::default())
.add_plugin(CorePlugin::default())
.add_plugin(TransformPlugin::default())
.add_plugin(DiagnosticsPlugin::default())
.add_plugin(InputPlugin::default())
.add_plugin(WindowPlugin {
add_primary_window: false,
exit_on_close: true,
})
.add_plugin(AssetPlugin::default())
.add_plugin(ScenePlugin::default())
.add_plugin(RenderPlugin::default())
.add_plugin(SpritePlugin::default())
.add_plugin(PbrPlugin::default())
.add_plugin(UiPlugin::default())
.add_plugin(TextPlugin::default())
.add_plugin(AudioPlugin::default())
.add_plugin(GltfPlugin::default())
.add_plugin(WinitPlugin::default())
.add_plugin(WgpuPlugin::default())
.run();
}
fn ui_loader(mut commands: Commands) {
// https://github.com/bevyengine/bevy/issues/278
// WindowDescriptor added as a resource always uses default window.
let window = WindowDescriptor {
    title: "test".to_string(),
    width: 200,
    height: 300,
    vsync: true,
    mode: WindowMode::Windowed,
    resizable: true,
    ..Default::default()
};

commands.insert_resource(window);

}
`

Yeah re-registering all of the default plugins shouldn't be required for something like this. Currently the WindowDescriptor resource is just used as a "configuration item" that determines the default primary window configuration. I agree that we need more control over window settings at runtime. Right now its very "static".
What this looks like (dynamically adapting to Res changes, sending events, etc) is TBD. Lets scope this issue to discussing what the ideal api looks like.

Well, my suggestion off the top of my head is not to create a default window. If someone doesn't want a window, they don't want a window. This should be distinctly different than 'headless' mode. A 'headless' mode means I want to pretend I've got a window...but not actually do any drawing. This is very useful in some contexts. The tutorial should definitely cover adding a primary window (and likely should cover adding a second window, perhaps to send diagnostics or use as a dual windowed program).
Further, if not creating a window crashes the render system, then the render system depends on the window. This is important! We either make the render window independent of the windowing system or make it explicit how one plugin/system depends on another.
Reordering the default plugin's inclusion shouldn't cause a panic. disabling any of those plugins shouldn't cause a panic. Setting them with valid options shouldn't cause a panic.

Another bug caused by #1255.

it's no longer possible to add WindowDescriptor as a resource. Initial window setup is now done when adding the plugin


poetry 1.3 on docker image breaks ClearML

See this thread: https://clearml.slack.com/archives/CTK20V944/p1681805285151289
Initial record of issue (thanks Thomas Delsart)
Hello channel,
I am struggling a lot on an issue linked to ClearMl agent and AWS Autoscaler .
This issue is very problematic and urgent, please help me out! We need the autoscaler to work to be able to pull and execute our tasks correctly.
Context:
I want to install a poetry environment from a poetry.lock file located at the root of my repository.
I have a bash script running allowing to install poetry and install python 3.9.16 using Pyenv (needed by my poetry env).
The installation goes on, my repository is cloned, poetry is detected and then poetry installation fails directly without any logs (even when using the verbose mode).
Here is the clearml.conf of my AWS autoscaler config and the logs of one of the latest runs (you can find the bash script inside it) + snippet of the error :
Poetry Enabled: Ignoring requested python packages, using repository poetry lock file!
Creating virtualenv alfred in /root/.clearml/venvs-builds/3.9/task_repository/alfred.git/.venv
Using virtualenv: /root/.clearml/venvs-builds/3.9/task_repository/alfred.git/.venv
Installing dependencies from lock file
Finding the necessary packages for the current system
Package operations: 351 installs, 1 update, 1 removal, 22 skipped
failed installing poetry requirements: Command '['poetry', 'install', '-n', '-v']' returned non-zero exit status 1.
Ignoring pip: markers 'python_version >= "3.10"' don't match your environment
agent {
vcs_cache.enabled: false
package_manager: {
      type: poetry,
      poetry_version: "1.4.2",
      poetry_install_extra_args: ["-v"],
 }

}
sdk {
development {
store_code_diff_from_remote: false,
}
}
Issue and what has been done:
I tested all clearml.conf parameters without success
I created an AWS instance, ssh-ed into it and try the installation of poetry and it worked...
Last but not least which leads to my full confusion : I setted up SSH access to the AWS autoscaler instances, SSHed to it during runtime, went into the created docker container, waited until the git clone  command made effect and poetry installation failed to be able to try myself the poetry install -n -v command. Again, It worked... I am extremely confused because it works on the instance itself created by the autoscaler, but it does not work when running on ClearML. What am I missing??
One of the last comments:
I also did that in the following way:

I put a sleep inside the bash script
I ssh-ed to the fresh container and did all commands myself (cloning, installation) and again it worked...

last comment
My issue has been resolved going with pip.
my issue
I have the same issue - in upgrading to the poetry 1.3+ line, poetry fails at exactly the same place (here, on my own hardware, with all caches cleared).  Right now, we are just staying < 1.3 for Poetry - but that is not a viable long term solution.
Please fix this!  Poetry should be fully supported on ClearML!

Hi @johnml1135 , if you install poetry yourself (i.e. not using clearml-agent to run the task), do it work on the same docker image?

I install poetry in the docker image - we are using the docker images posted here: https://github.com/sillsdev/silnlp/blob/tokenizer_updates_character_handling/.devcontainer/Dockerfile - created here: https://github.com/sillsdev/silnlp/pkgs/container/silnlp/107546676?tag=1.01.4.


Content not showing on radio button styled as toggle button!

I've added three RadioButtons styled as ToggleButtonInfo in a StackPanel as shown in code below. The problem is the content set for each RadioButton is not being shown. All I see is three blank circular toggle buttons. Any clue why the content is not being shown?
<Border Width="75" Height="20" Background="{DynamicResource DarkInfoBrush}" BorderThickness="1" BorderBrush="{DynamicResource SecondaryRegionBrush}" CornerRadius="10">
<StackPanel Orientation="Horizontal" Background="Transparent">
<RadioButton Style="{StaticResource ToggleButtonInfo}" hc:BorderElement.CornerRadius="15" Width="18" Height="18" hc:BorderElement.Circular="True" Content="X" Margin="1,0,0,0" FontSize="5" FontFamily="{StaticResource MaterialDesignIconsDesktop}"/>
<RadioButton Style="{StaticResource ToggleButtonInfo}" hc:BorderElement.CornerRadius="15" Width="20" Height="20" hc:BorderElement.Circular="True" Content="Y" Margin="4,0,4,0"/>
<RadioButton Style="{StaticResource ToggleButtonInfo}" hc:BorderElement.CornerRadius="15" Width="20" Height="20" hc:BorderElement.Circular="True" Content="Z" Margin="0,0,1,0"/>
</StackPanel>
</Border>

ToggleButtonInfo

Because you assign the wrong style to the wrong control
RadioButton does not have a style called ToggleButtonInfo
If you want to use the ToggleButtonInfo style, you must use the ToggleButton control
https://ghost1372.github.io/handycontrol/native_controls/toggleButton/#Related-styles
https://ghost1372.github.io/handycontrol/native_controls/radioButton/

ToggleButtonInfo

Because you assign the wrong style to the wrong control
RadioButton does not have a style called ToggleButtonInfo
If you want to use the ToggleButtonInfo style, you must use the ToggleButton control
https://ghost1372.github.io/handycontrol/native_controls/toggleButton/#Related-styles
https://ghost1372.github.io/handycontrol/native_controls/radioButton/

Then how do I make a radio button look like a regular button that can display a content but behave like a radio button itself.

Then how do I make a radio button look like a regular button that can display a content but behave like a radio button itself.


React Native @clerk/clerk-expo is not working as expected

Preliminary Checks

[X] I have reviewed the documentation: https://clerk.com/docs
[X] I have searched for existing issues: https://github.com/clerk/javascript/issues
[X] I have not already reached out to Clerk support via email or Discord (if you have, no need to open an issue here)
[X] This issue is not a question, general help request, or anything other than a bug report directly related to Clerk. Please ask questions in our Discord community: https://clerk.com/discord.

Reproduction
https://github.com/Galaxies-dev/whatsapp-clone-react-native
Publishable key
pk_test_cG93ZXJmdWwtcGVnYXN1cy0yNi5jbGVyay5hY2NvdW50cy5kZXYk
Description
Steps to reproduce:

Clone the provided Repo
add .env file & add EXPO_PUBLIC_CLERK_PUBLISHABLE_KEY={the one provided in the issue from the "Publishable key"}
npm install
npx expo run:ios

Expected behavior:
The application to work as before adding the ``````
Actual behavior:
After adding
<ClerkProvider publishableKey={process.env.clerkPublishableKey}>

The application is now giving me: "cannot find native module ExpoApplication"

Environment
System:
    OS: macOS 14.4.1
    CPU: (12) arm64 Apple M2 Max
    Memory: 5.13 GB / 64.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.20.2 - ~/.nvm/versions/node/v18.20.2/bin/node
    npm: 10.5.0 - ~/.nvm/versions/node/v18.20.2/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  Browsers:
    Chrome: 124.0.6367.119
    Safari: 17.4.1

Just keep installing the packages. Seems like the @clerk/clerk-expo package doesn't declare all the native expo packages needed. Every time you see the error, run npx expo install expo-application (or expo-xxxx), rebuild and repeat until errors disappear

Get the same error and to fix it I added different packages, but then I get:
Error: Not a valid base64 encoded string length

This error is located at:
    in ClerkProvider (created by RootLayoutNav)
   ...

Probably Expo 51 isn't supported yet for Clerk (?)

Possibly related, but no idea: https://github.com/expo/expo/issues/26570#issuecomment-2101078195

Get the same error and to fix it I added different packages, but then I get:
Error: Not a valid base64 encoded string length

This error is located at:
    in ClerkProvider (created by RootLayoutNav)
   ...

Probably Expo 51 isn't supported yet for Clerk (?)

Right after upgrading the Expo from 50 to 51
I'm receiving the same error Error: Not a valid base64 encoded string length
No code changes besides following Expo steps to upgrade that is, installing latest and install --fix

If you're getting Error: Not a valid base64 encoded string length, the Clerk team is aware of it and working on a fix. Current discussion is on Discord here: https://discord.com/channels/856971667393609759/1234973673946087534

If you're getting Error: Not a valid base64 encoded string length, it seems to be related to Expo v51. The Clerk team is aware of it and working on a fix. Current discussion is on Discord here: https://discord.com/channels/856971667393609759/1234973673946087534

@statico  I am not able to see this discussion, does it still exist?

Any updates on this? I would really like to be able to use my app again with sdk 51

Any update here?

@statico I am not able to see this discussion, does it still exist?

@vflorrez1 @leo-mangold You have to be a member of the Clerk Discord to see it. There doesn't appear to be a fixed invite URL (thanks, Discord) but Googling found me this: https://discord.com/invite/b5rXHjAg7A

I'm having very similar problems like this just submitted an issue aswell

I'm facing the same problem as well

Potentially resolved by https://github.com/clerk/javascript/pull/3326

I can confirm that this resolves the issue!

This should be fixed by https://github.com/clerk/javascript/pull/3326 and was published with<EMAIL_ADDRESS>Please install the latest version of @clerk/clerk-expo in order to fix your issue:
npm install @clerk/clerk-expo@latest

This issue is not yet resolved as of today 14may2024 if any one find the solution please help here

This issue is not yet resolved as of today 14may2024 if any one find the solution please help here

It was fixed on the latest version.

This issue is not yet resolved as of today 14may2024 if any one find the solution please help here

It was fixed on the latest version.

Thanks for reply i will check and inform you

run: npm install @clerk/clerk-expo@latest
its fixed now

run: npm install @clerk/clerk-expo@latest its fixed now

It didn't actually :)

This should be fixed by #3326 and was published with<EMAIL_ADDRESS>Please install the latest version of @clerk/clerk-expo in order to fix your issue:
npm install @clerk/clerk-expo@latest

Still not working

run: npm install @clerk/clerk-expo@latest its fixed now

Still not working

I'm sorry to hear that! I haven't used clerk-expo in over 4 months idk if the issue is new or not but at the time it was fixed i recommend creating a new issue on there official repo like i did at the time


feat: add ACF PHP API docs

ACF PHP API docs as mentioned in #8

Thanks for this! I modified it a bit, I assume it's right to use acf_add_local_field right? If nothing else, we can merge this. Thanks for your help!

Looks good for me.

Ok, thank you! :)


beam search

According to README:

Currently, we export components (encoder, decoder) to Caffe2 separately and beam search is implemented in C++. In the near future, we will be able to export the beam search as well. We also plan to add export support to more models.

Where can I find this C++ code or exportable (jit) beam search already in repo?

Sorry README is out-of-date. We already have BeamSearch class fully scripted in ensemble_export.py. Also Pytorch->ONNX->Caffe2 export path as mentioned in README is not supported now. We are switching to TorchScript export so you can call save_to_pytorch() in BeamSearch class to get an exported model.

@cndn thank a lot!
Does it work with rescoring (I mean LM + rescoring)?

@cndn I see that pytorch-translate has version of BeamSearchV2 that have new improvements, but it doesn't support char source. Why?


[FEC-88] Migrating test data model Inventory Entry

As part of the new test data models implementation patterns, we not only will be using it for new data models but we also need to apply it for existing ones. That means we will need to eventually migrate all the current data models those new implementation patterns.
We already have documentation about how this process looks like but we also need to have a reference example engineers can use to compare. That's what this PR is for using the InventoryEntry data model.

I wasn't sure if this PR was also supposed to delete the two unneeded files or if that would come later?

@jmcreasman  We still need to refactor the sample data presets. I think it would be helpful to have a meeting to clarify this point.

@jmcreasman We still need to refactor the sample data presets. I think it would be helpful to have a meeting to clarify this point.

Yes I generated it from the test data generation repo and added it in, but then realized the data it generated wasn't in the new format/implementation even when I made it v2 like in the guide. I tested other entities like Channel and it worked as expected so I've asked the First Contact team about this and should have a reply this morning (many of them were out yesterday).


UBsan flags 2 loops in lzfse_decode_base.c with "Pointer Overflow" warnings

Hi, I've compiled the most recent lzfse library using Xcode 11.7 and ran it with UB sanitizer enabled. It flags these two warnings when I ran it against my test data:
file lzfse_decode_base.c
lines 240-241:
for (size_t i = 0; i < M; i++)
dst[i] = dst[i - D];
UBsan flags line 241 as "Thread 1: Pointer overflow"
"Addition of unsigned offset to 0x000106a85801 overflowed to 0x000106a85800"
variables:
D = 1
M = 1023
i = 0
The actual problem is that this code is trying to copy bytes with overlapping buffers and it ends up performing the copy incorrectly.
In this specific case, it will first copy dst[-1] to dst[0] and then on the next loop iteration, it will copy dst[0] to dst[1] but this will be the same value as dst[-1] which is almost certainly not what the code's author intended because the comment above this code states
//  ..."a more
//  careful path that applies a permutation to account for the
//  possible overlap between source and destination if the distance
//  is small".
which is referring to this loop.
I believe the code should be performing the equivalent of
memmove(dst, dst - D, M);
which is what the fast code path above it does (the fast code path assumes that the buffers do not overlap however so it performs its work using a memcpy-like loop).
I've patched my working copy of the source file to use memmove and this stopped the warning from being generated.
There is another UBsan warning in the same file on line 280-281:
    for (size_t i = 0; i < M; i++)
      dst[i] = dst[i - D];

UBsan flags line 281 as "Thread 1: Pointer overflow"
"Addition of unsigned offset to 0x000106b790f4 overflowed to 0x000106b3f0f4"
with variables:
M = 1801
D = 237568
i = 0
which clearly is a non-overlapping copy so the only issue here is the way the code appears to access invalid array elements.
I've patched my working copy of the source file to use memcpy(dst, dst - D, M) and this stopped the warning from being generated.
I will also note that lines 294-295 are another loop similar to these 2 and may also generate a similar warning (but my test data did not cause this code to execute).
Cheers.

Hi, it looks like I've spoken too soon. The original loops do produce correct output and changing them results in incorrect output.
So for anyone who is building with a UBsan enabled, I recommend suppressing the warnings by adding an attribute at the function's declaration
#if defined(clang)
attribute((no_sanitize("pointer-overflow")))
#endif
static int lzfse_decode_lmd(lzfse_decoder_state *s) {
...
}
Cheers.

Hmm... the website has stripped some underlines from the previous post: "clang" should be "clang" and "attribute" should be "attribute".


Document term::emit error cases

In what cases is it possible for https://docs.rs/codespan-reporting/0.6.0/codespan_reporting/term/fn.emit.html to return an error? I see that the error type is std::io::Error; is it guaranteed to be only if a write to the underlying WriteColor fails? Or are there other validations involving the Config / Files / Diagnostic that might trigger an error from term::emit?

Yeah, I agree it's a bit confusing. There are a bunch of expects internally that can trigger if the source ranges and file ids are broken - I would rather those be handled more gracefully.

Since term::emit now returns a Result type since #275, is this still necessary?


Naming and future of the library

I'm a bit puzzled about «lite» part in the naming of the library. And I want to close the question before using it in my projects.
How far is it planned to develop this library? Is it planned to cover all components, which we can see in other libraries? Any «complex» components that are no-so-light? Such as datepicker, adbanced animations etc. Eventually, can we find in this project all components like in Bootstrap?
Thanks a lot.

Check our FAQ and the release post. It should cover most of the questions raised. If they don't, then let us know please.


use standard cp arguments

The cp command takes an argument -a as a shortcut for -pPR.
While this works on most Linux distributions, it is not available on certain other operating systems such as OpenBSD, while the standard -pPR always works.
Would you consider replacing cp -af with the functionally equivalent cp -fpPR to improve OS support?

Same stuff on Solaris.

Huh. I thought I commented on this.
cp resides in gyp itself here, so I'm not sure if we can do that? cc @TooTallNate, do we still ever get upstream updates from gyp?
Should we just have a nodejs/gyp that both node and node-gyp can use?

Same stuff on Oracle Solaris 11.2

@Fishrock123 Historically I've just updated gyp here when node.js/io.js updated its own copy of gyp (probably behind at this point!)

Is there a way to resolve this issue by changing cp flags? Compilation of all packages via node-gyp fails on Oracle Solaris 11.2 because Oracle doesn't support GNU flag -a.
I found a workaround by compiling package locally, creating a package structure, and moving *.node, package.json, and corresponding js files there.
However, it defeats a purpose of autobuilder and too cumbersome because I have to compile package after package.
Also, it looks like running Demeteorizer is not enough and I have to write custom builder that would replace packages from my dev (OS X Maverics) with those locally compiled on Solaris.
Im trying to deploy my Meteor app on Solaris via Demeteorizer and have problems with fibers and bcrypt.
Any help would be appreciated.

You could also play with Makefile (or, if I don't remember correctly, with any other template issuing "cp -r").

Little known fact but you can override the cp command: make cmd_copy='ln -f $< $@ || cp -PRfp $< $@'
If someone sends a patch to the upstream gyp project, I'll be happy to land it here (assuming it's accepted upstream, of course.)  Grep for copy_archive_args in pylib/gyp/generator/make.py.

As an FYI we just did a similar change for AIX here https://codereview.chromium.org/1368133002/

@mhdawson You can make that part of #753 if you want.

@GeorgeBailey: I wonder if you experience the same problems on your system.

@alexijs, Not thus far. Perhaps it is because all the npm modules I tried so far were JS-only. (I hope I correctly understand the purpose of node-gyp)

See https://github.com/nodejs/node/pull/3487

FYI - Imran is working on a PR  for the same update to gyp as in nodejs/node#3487 but for node-gyp. Should be submitted soon.

The PR mentioned above https://github.com/nodejs/node-gyp/pull/781

On OpenBSD 5.7 I patched the files:
(changing cp -af into cp -pPRf)
node-gyp/0003-gyp-don-t-use-links-at-all-just-copy-the-files-inste.patch:+cmd_copy = rm -rf "$@" && cp -pPRf "$<" "$@"
node-gyp/0003-gyp-don-t-use-links-at-all-just-copy-the-files-inste.patch:+      command='rm -rf $out && cp -pPRf $in $out')
node-gyp/gyp/pylib/gyp/generator/make.py:cmd_copy = rm -rf "$@" && cp -pPRf "$<" "$@"
node-gyp/gyp/pylib/gyp/generator/ninja.py:      command='rm -rf $out && cp -pPRf $in $out')

That works successfully
It would be great if the PR would be applied to reduce the pain on OpenBSD and others.
Thanks, Tom

I filed https://codereview.chromium.org/1483473002/ to fix cp on OpenBSD.

Fixed (on OpenBSD anyway) in v3.2.1.


proposal: cmd/go: add an option to sequentially run tests

It is a common pattern to want to run Go tests in sequence rather than in parallel. Within a package, this is controlled by t.Parallel() and -test.parallel. However, across packages there is a different control: -p N (typically -p 1 for this use case).
This is commonly used for integration tests which are depending on exclusive access to some resource outside of the test.
However, this comes at a huge cost: -p 1 does not control just test parallelism, but all compiler actions. This means all compiling and linking is done sequentially. In our project, this has caused a 10x increase in test execution times - with -p 1, it takes 8m25s; without, 50s.
I would like a way to run test packages sequentially, while still benefiting from the parallelism in building.
Ecosystem usage
I did a rough analysis of usage of go test -p 1 across Github, and found a number of large projects doing the same. I use stars just as a rough measure of the project scope.

Code Link
Stars

https://github.com/ory/hydra/blob/425c977a3aa4e519762582e0be4b1adf5043f383/.docker/Dockerfile-hsm#L33
14k

https://github.com/letsencrypt/boulder/blob/b090ffbd2ea01407ad6e580a9cea78db6548d942/README.md?plain=1#L187
4.7k

https://github.com/mongodb/mongo-go-driver/blob/f8b88fc241a91c32455f61c57557921ba7d17d2d/Makefile#L106
7.5k

https://github.com/netlify/gotrue/blob/3fabd3fc5a6fb51eb54cd88831a380a4c18a2eff/Makefile#L30
3.5k

https://github.com/netlify/gotrue/blob/3fabd3fc5a6fb51eb54cd88831a380a4c18a2eff/Makefile#L30
4.2k

https://github.com/atomix/atomix/blob/6decbb2531c39254979ff1f10e65e00c6e1dca99/controller/Makefile#L26
2.3k

https://github.com/Shopify/ghostferry/blob/3dc7ace25fad9c0e9c5c5f68c8de70af2bd08d46/Makefile#L66
600

https://github.com/vulcand/vulcand/blob/16e7d32893f7629e1e9b8fae8a0d9023b7cd338f/Makefile#L11
3k

https://github.com/gliderlabs/logspout/blob/818dd8260e52d2c148280d86170bdf5267b5c637/Makefile#L65
4.6k

https://github.com/istio/istio/blob/1cc44eed185626832487f56d74b0f18284d52b63/tests/integration/tests.mk#L84
33.3k

https://github.com/nuclio/nuclio/blob/ef5de182e9a22ebd48b68ad043a423bdf63cac90/Makefile#L689
4.9k

https://github.com/ory/kratos/blob/41b7c51c1c6b3bdff9e9ea8bb5e455e3c15c5256/Makefile#L79
8.9k

If you search "go run tests sequentually", basically all sources will tell you to use -p 1. This includes AI chatbots, popular stack overflow answers, blogs, and even some Go core maintainer recommendations.
Alternatives

Run multiple Go commands (such as go test ./a && go test ./b). This is not great; we lose parallelism in building.
Pre-build all the binaries (such as go test -c -o tests/ ./...; go test -p 1 ./...). This is demonstrated as effective here. However, it is highly limited unless https://github.com/golang/go/issues/61199 is resolved as well.
Pre-compile only the binaries, demonstrated here. Basically we warm the build cache. This is better than nothing, but still much worse due to linking done sequentially. In our project, naive approach is 8min, this is 4min, while optimal is ~50s.
Put synchronization into the test binary itself. This is challenging and ineffective. Things like mutex cannot be used as it is cross-binary, so we need an external locking system. Even with that, it isn't effective. Tests will start and wait, blocking a worker. This results in something similar to this issue, which showed at least 2x worse test times.
Rework the tests to use one package or allow parallel execution. This is great if you can, but its a big ask.

CC @bcmills @matloob

To clarify, you are looking for a way to run each package test one at a time?
What about the tests inside a given package that are using t.Parallel?
Do you want to disable that parallelism too?

To clarify, you are looking for a way to run each package test one at a time?

Yes, only one package should execute at a time during go test -somenewflag ./.... Similar to go test -p 1 ./..., but without the side effect of compilation also being serialized.

What about the tests inside a given package that are using t.Parallel? Do you want to disable that parallelism too?

I think keeping inner-package parallelism is fine and could be controlled with the existing -test.parallel

At work, we have a mix of NodeJS and Golang services. Those services communicated with a database, and as such have tests that exercise queries against a Dockerized database. As that is a shared resource, tests that hit the database must be serialized, while tests that operate purely in memory are allowed to be parallelized.
The NodeJS services have a pretty easy way of solving this using a custom Jest runner, which I'll link below. Our way of doing this in Golang is by putting all of the tests that use an external resource (like a database) in a singular package so that they run sequentially. This causes the test files to be located not alongside the source files though, which is a shame.
In the NodeJS way, the stream of tests that must be sequential is defined by filename. That isn't very robust and is error prone.
I think there should be a way to do this in Go using a testing.T method, something like t.Mutex("aKeyToIdentifyResource"). That way each test is self contained, and the package/file/folder organization isn't impacted by which tests need exclusive access to a particular resource. Multiple distinct resources can exist as well.
import { Config } from "@jest/types";
import TestRunner, { Test, TestEvents, TestRunnerContext, TestWatcher, UnsubscribeFn } from "jest-runner";

export default class CustomTestRunner {
    public supportsEventEmitters = true;

    private parallelRunner: ParallelTestRunner;
    private sequentialRunner: SequentialTestRunner;

    constructor(globalConfig: Config.GlobalConfig, context: TestRunnerContext) {
        this.parallelRunner = new ParallelTestRunner(globalConfig, context);
        this.sequentialRunner = new SequentialTestRunner({ ...globalConfig, maxWorkers: 1 }, context);
    }

    on<Name extends keyof TestEvents>(
        eventName: Name,
        listener: (eventData: TestEvents[Name]) => void | Promise<void>,
    ): UnsubscribeFn {
        const parallelUnsubscribe = this.parallelRunner.on(eventName, listener);
        const sequentialUnsubscribe = this.sequentialRunner.on(eventName, listener);

        return () => {
            parallelUnsubscribe();
            sequentialUnsubscribe();
        };
    }

    async runTests(tests: Test[], watcher: TestWatcher): Promise<void> {
        await Promise.all([
            this.sequentialRunner.runTests(tests, watcher),
            this.parallelRunner.runTests(tests, watcher),
        ]);
    }
}

class ParallelTestRunner extends TestRunner {
    async runTests(tests: Test[], watcher: TestWatcher): Promise<void> {
        const isParallelizeable = (test: Test) => !test.path.includes(".sequential.");
        const parallelizeableTests = tests.filter(isParallelizeable);

        await super.runTests(parallelizeableTests, watcher, { serial: false });
    }
}

class SequentialTestRunner extends TestRunner {
    async runTests(tests: Test[], watcher: TestWatcher): Promise<void> {
        const isSequentialTest = (test: Test) => test.path.includes(".sequential.");
        const sequential = tests.filter(isSequentialTest);

        // { serial: false } triggers the parallel test execution leveraging workers,
        // but along with { maxWorkers: 1, workerIdleMemoryLimit: ... } configuration
        // this sole worker would be killed and restarted if it exceeds the memory threshold.
        await super.runTests(sequential, watcher, { serial: false });
    }
}

cc @samthanawalla
I think we should think harder about if there's a way to better support having the individual tests synchronize access to the external resource. I wonder if there's a better way to act on tests being blocked.


Expose get_parameter for more types

https://github.com/grovesNL/glow/pull/190 without tidy changes. We can add more later in followup PRs.

Would it be possible to get new release with this?

Actually, I will also need get_parameter_bool_array, that I will make PR for today.


Azure File Copy Task does not appear to remove the WinRMCustomScriptExtension

The Azure File Copy task is able to setup WinRM and it does this through a custom extension.  However, it does not appear to remove it once finished.
This means that if someone else comes along and tries to use a custom script extension they get the error:

Multiple VMExtensions per handler not supported for OS type 'Windows'. VMExtension 'customScriptArtifact-183362431' with handler 'Microsoft.Compute.CustomScriptExtension' already added or specified in input.

An example of this issue:
https://github.com/Azure/azure-devtestlab/issues/251
Should the task remove the extension once completed?

@RoopeshNair should we start doing it?

@gregpakes, Fair feedback, we are working on a newer version of the Azure File Copy task which relies on VM extension instead of WinRM to copy the files. We will look into cleaning it up, post deployment. However it will be a while before we can get to it.
As a workaround, for now, you can uninstall the extension using script, if found.


Fix tutorials to work with Qiskit 1.0

Summary
Fixes #1294
Fixes #1295
Fixes #1296
Qiskit 1,0 removed the deprecated qiskit.tools which included some .jupyter from which the magics that did the version and copyright were imported. This PR adds a local file in the tutorials folder that contains just these magics and changes the import to use this.
Similar fix to qiskit-community/qiskit-algorithms#156
Also, as I was looking over the tutorials I sorted the following issues too

#1294
Has been removed
#1295
Updated headings. Styles are changed now in 1.0 so there is no longer a warning about using the default if you wanted to keep the exact same style as it was
#1296
Added the same logic to deploy docs as we have in main to suppress the PySCF warnings coming  out in the deployed docs

Details and comments

Well its failing in testing the stable set of tutorials that are there against main here. Since this is intended to be backported to fix them too that will have to be ignored.


introduce Index type for less error-prone index resolution

Fixes #35
As discussed in #35, this PR introduces a new type Index which encodes a parsed index from a Token type (or more generally, an RFC 6901-compliant string).
This type is primarily useful to resolve the - token into a concrete numerical index given a known array length. It's also useful for reliably checking bounds against the provided length.

I'm on the fence now about just using for_len as the name for the validating exclusive method. It reads nicely:
token.to_index()?.for_len(42)?;

Even more so in Index::Next.for_len(42), but I doubt that will come up in real code.
Then we could rename the other methods for_len_incl (or for_len_next) and for_len_unchecked.

Ugh, I'm sorry I was slow on the draw on this one. Between getting my daughter a pup and fathers day, I definitely slacked this weekend.
I'm going kayaking with the family today so I won't be available to run through it yet.
I may just hook into this PR and refactor the errors here. It is the last major thing that I want to change about the crate. Dealing with the errors that currently exist is somewhat obnoxious.

Nevermind, I'm just going to create a new PR.
Thank you for all of your hard work! I'm sorry the code committed since the start of your participation has been so one sided.
Getting this released will be my top priority going into the week.

Ugh, I'm sorry I was slow on the draw on this one. Between getting my daughter a pup and fathers day, I definitely slacked this weekend.
I'm going kayaking with the family today so I won't be available to run through it yet.

Don't worry, man. Your family takes priority by a long shot. While I really appreciate your responsiveness, there's no time pressure here, so please pace yourself. Maintaining an open-source project is always a lot of work. I'm glad you're having fun with your daughter and family, I'm a bit jealous of the kayaking.

Thank you for all of your hard work! I'm sorry the code committed since the start of your participation has been so one sided.

It's cool, I'm just doing these changes because I'm in the mood for it and I happen to have enough time for it right now. We're both volunteers here, you facilitating these changes is more than enough.
By the way, thanks a lot for merging, but did you see my comment about for_len? I'm half convinced that's a better naming choice. Happy to push a follow-up PR if you agree.

You’re awesome dude. Seriously.
No, I missed the comment. I’ll be honest, your skillset is well above mine so it takes some time for me to process/understand it all. I’ve been accepting them so not to hold it up and then analyzing it post-merge. I trust that you aren’t malicious and I doubt id catch anything subtle until I'm more well versed in dealing with dynamically sized types.
Re: kayaking. Wife daughter and I picked it up over COVID and absolutely love it. Truly my favorite activity. You should grab yourself a cheap, used sit-on and see if you enjoy it. Gets you out in nature and it's pretty good exercise.

No, I missed the comment. I’ll be honest, your skillset is well above mine so it takes some time for me to process/understand it all. I’ve been accepting them so not to hold it up and then analyzing it post-merge. I trust that you aren’t malicious and I doubt id catch anything subtle until I'm more well versed in dealing with dynamically sized types.

Gotcha. Since you haven't disagreed with the names I mentioned I'll open another PR then. ;)


Prevent .cargo files getting linted.

I've noticed with rust, if I do a goto definition and end up in a cargo package file, Trouble starts reporting lints in all my .cargo files Is there a way to prevent this?

This is out of the scope of this plugin. I remember the same issue when I was developing something in Rust. I don't think I managed to fix it. Either way, the problem is with rust analyzer...

@dgriffith0 Were you able to sort this out?


guake: 3.3.2 -> 3.4.0

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/guake/versions.
meta.description for guake is: '"Drop-down terminal for GNOME"'.
Release on GitHub
Compare changes on GitHub

Checks done (click to expand)

built on NixOS
/nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/guake passed the binary check.
/nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/guake-toggle passed the binary check.
Warning: no invocation of /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/..guake-wrapped-wrapped had a zero exit code or showed the expected version
Warning: no invocation of /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/.guake-wrapped had a zero exit code or showed the expected version
/nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/..guake-toggle-wrapped-wrapped passed the binary check.
/nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/.guake-toggle-wrapped passed the binary check.
4 of 6 passed binary check by having a zero exit code.
0 of 6 passed binary check by having the new version present in output.
found 3.4.0 with grep in /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0
directory tree listing: https://gist.github.com/d650124fc4e622cc28f5a9cfbf954dac
du listing: https://gist.github.com/ca43261599991ed2a115627355436b9b

Instructions to test this update (click to expand)

One-time optional setup to skip building using Cachix:

Install cachix from https://cachix.org/
Use r-ryantm's cache:cachix use r-ryantm

Test this update by entering a nix shell, seeing what is inside the
result, and if applicable, running some binaries:
nix-shell --pure -I nixpkgs=https://github.com/r-ryantm/nixpkgs/archive/bb455f763cacaf2868cb0c4704ebdf31c2b23f2b.tar.gz -p guake
ls -la /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0

cc @msteen for testing.

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: guake
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

Success on aarch64-linux (full log)
Attempted: guake
Partial log (click to expand)
Wrapping program /nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0/bin/guake-toggle
Wrapping program /nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0/bin/guake
shrinking RPATHs of ELF executables and libraries in /nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0
strip is /nix/store/428gs2z4b8f9byvghzlpbjwjb3a7jwxx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0/lib  /nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0/bin
patching script interpreter paths in /nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0
checking for references to /build in /nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0...
wrapping `/nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0/bin/.guake-wrapped'...
wrapping `/nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0/bin/.guake-toggle-wrapped'...
/nix/store/fsq437a8mcg6wkvzyspx5z4z0j9rbixa-guake-3.4.0

Success on x86_64-linux (full log)
Attempted: guake
Partial log (click to expand)
post-installation fixup
Wrapping program /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/guake-toggle
Wrapping program /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/guake
shrinking RPATHs of ELF executables and libraries in /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0
strip is /nix/store/dxf1m7dhc4qb655bdljc1fsd74v1nag3-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/lib  /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin
patching script interpreter paths in /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0
checking for references to /build in /nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0...
wrapping `/nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/.guake-toggle-wrapped'...
wrapping `/nix/store/23x6qb2zzqrs3hy2sfi3wwzzry96fvbm-guake-3.4.0/bin/.guake-wrapped'...


chefdk 0.15.16 is missing gem "parallel" on OSX 10.11.6

Description
Hi, while freshly installing the chefdk 0.15.16 today i discovered that the gem "parallel" seems to be missing from it. After executing the command "knife client list" i got this error:
/opt/chefdk/embedded/lib/ruby/site_ruby/2.1.0/rubygems/dependency.rb:308:in `to_specs': Could not find 'parallel' (~> 1.3) among 238 total gem(s) (Gem::MissingSpecError)
After installing "parallel" everything works fine. Also a complete uninstall and downgrade to 0.15.15 works for me, so this seems only to happen in 0.15.16 (i think an upgrade from 0.15.15 or any other version with "parallel" will work, since chefdk does not uninstall old gems as far as i know)

That gem doesn't ring a bell and it doesn't look like its in any recent chef-dk build. Its possible that something else in your environment is pulling it in. You might try seleting or renaming ~/.chefdk to prevent non packaged chef-dk gems from interfering.

You are completely right, i did not even know that this folder existed. I read up about it and makes perfect sense, maybe a hint in the uninstall guide that people might want to delete this folder too to get rid of everything chefdk created (even thou not automatically but by installing a gem at some point later) would be good. Thanks for the quick help.

cool. Yes we are already looking to improve thwe uninstall/upgrade scenario accounting for this folder.


Suggest Reference

Hi,
Really nice work, I'm excited to try it on some of my data!
For normal human data, can you give advice on the exact reference you suggest/use in the paper? Would you just pull the most recent primary assembly e.g. https://ftp.ensembl.org/pub/release-109/fasta/homo_sapiens/dna/Homo_sapiens.GRCh38.dna.primary_assembly.fa.gz? As I load it in, this logs a lot about alt strands (which this shows 0), should I use a different reference instead
And to confirm, I should run both scsnv index as well as bwa index. When I was doing it for the primary assembly, it was taking a very long time, and I saw that illumina also hosts pre-indexed versions here

Hi,
That is indeed the reference fasta file I have been using with scsnv for my projects.
The scsnv index command indexes the transcriptome rather than the genome (it uses this for spliced read counts), while the full genome is used for unspliced / intergenic read counts.  You can use a pre-created BWA index for the bwa index portion as long as it's to the same genome fasta file.
The alt warnings are from BWA when running scsnv index.  I am not sure why you would be receiving them if there aren't any alts present.
The nice part is once these indices are generated you never have to use them again.
Gavin

Hi
Wowow such a fast response, thanks so much. To triple check (feel free to not respond since you answered above, I'm just planning on putting a lot of compute time into this, so wanted to be certain), I was talking about the Alt contigs logging here. As I was reading through the code, it seems like the alt contig handling comes up a moderate amount, so wanted to make sure the reference I was using had all the parts scsnv could use for the highest accuracy

HI @Alf-Kenz,
I don't specifically do anything with the ALT contigs during the alignment.  But I don't think it should give any issues.  If you have some problems let me know and I will try to fix them.  I am working on making scSNV faster; particularly the read collapsing part.  I just haven't had enough free time to work on it.
Let me know if you have any other issues and I am happy to help
Gavin


Postgres and MySQL database schema mismatch

When using Postgres as the backing store any attempt to add a schema fails. The root cause of this is a discrepancy in the schema_version_state table between MySQL and Postgres. The MySQL definition is:

CREATE TABLE IF NOT EXISTS schema_version_state (
id              BIGINT AUTO_INCREMENT NOT NULL,
schemaVersionId BIGINT                NOT NULL,
stateId         TINYINT               NOT NULL,
sequence        INT                   NOT NULL,
timestamp       BIGINT                NOT NULL,
details         VARCHAR(255),
PRIMARY KEY (schemaVersionId, stateId, sequence),
UNIQUE KEY (id)
);

And the Postgres one is:

CREATE TABLE IF NOT EXISTS schema_version_state (
"id"              SERIAL UNIQUE NOT NULL,
"schemaVersionId" BIGINT        NOT NULL,
"stateId"         SMALLINT       NOT NULL,
"sequence"        INT           NOT NULL,
"timestamp"       BIGINT        NOT NULL,
"details"         VARCHAR(255)  NOT NULL,
PRIMARY KEY ("schemaVersionId", "stateId", "sequence"),
UNIQUE ("id")
);

The key difference that causes a problem is the details column. For MySQL, it is allowed to be NULL and in the Postgres version, it is set as NOT NULL.
The corresponding code in storeSchemaVersionState does not set the details field of the SchemaVersionStateStorable object. The result is the insert fails, incidentally, this is not logged, but if you are in the psql console then you will see an error like the following:
postgres=# ERROR:  null value in column "details" violates not-null constraint DETAIL:  Failing row contains (1, 1, 5, 2,<PHONE_NUMBER>450, null). STATEMENT:  INSERT INTO schema_version_state ("schemaVersionId", "sequence", "stateId", "timestamp", "details") VALUES( $1,$2,$3,$4,$5) 	RETURNING *
To fix this we can:

update the table definitions
update the storeSchemaVersionState code to set the details

Just synching the table definitions to allow the details to be NULL is a quick fix. However, it seems like we may want to have the details recorded.
I have fixes and test cases for both, let me know if I should submit a P/R for this.

@apsaltis Thanks for reporting this issue. details field is not mandatory, it is upto the state to store any info if they need. No inbuilt state currently uses this, but we want to change the type of details to BLOB as having VARCHAR(255) may be too restrictive for custom states. You can raise PR by updating the script by removing NOT NULL for details field for postgres.


Ability to not overwrite source file when using --fix

Currently, running --fix replaces the file in place. In certain cases, this causes problem with integrating with other editors, etc. For example, https://github.com/sbdchd/neoformat likes to have a copy of the changed file so it can perform diffs on the current buffer. Would you consider adding an option which allow --fix to emit the changes to stdout optionally?

I'm not sure if this would belong in the this repo, but it would be pretty simple to write a custom formatter to write out the fixes in whatever format you want. The text replacements are available in the API even if --fix isn't used.
See https://palantir.github.io/tslint/develop/custom-formatters/
Each RuleFailure contains fix.innerReplacements which contains the offset and replacement texts. You just have to take that data and output a string in whatever format works for you.

@nchen63 how would this solve the problem of files being overwritten in place?

don't call with --fix so nothing is overwritten
formatter outputs fix info

That sounds reasonable; however, I do not see a public API for getting the variables I would need to apply these changes.
https://github.com/palantir/tslint/blob/master/src/linter.ts#L101

Thanks for the info @nchen63!
I created an MVP here: https://github.com/ianks/tslint-fix-formatter
It might be nice to include this in core, since I imagine it would be useful to many users (VIM users, at least). I will leave that up to the team though.
Cheers!

@ianks sure, we'd accept a PR for a fix formatter.

Continuing off of #2149. Making a copy of the file in a temp for is actually what neoformat attempts to do, however the imports , etc are broken at that point. Overall, that mechanism is a bit too error-prone and complicated to use in most cases.

Seems like this is a subset of #1760. Closing for housekeeping, but if I've misinterpreted and this is actually a separate issue, please do comment here!


++2.12.0-magic should fail

steps
sbt:helloworld> ++ 2.12.0-magic
[info] Setting Scala version to 2.12.0-magic on 0 projects.
[info] Excluded 3 projects, run ++ 2.12.0-magic -v for more details.
[info] Reapplying settings...
[info] Set current project to helloworld (in build file:/Users/eed3si9n/work/hellotest/)
sbt:helloworld> compile

problem
++ 2.12.0-magic succeeds.
expectation
When ++ affects zero projects, it should fail.

To potential contributors: The relevant code is https://github.com/sbt/sbt/pull/3995.


Changing port number for meshery-octarine

The port number for octarine adapter has to changed as mentioned in https://meshery.layer5.io/docs/architecture#network-ports-that-meshery-uses-and-needs

fixed by #9


Supporting OL8.7 and 9.1 to admin,cluster and dynamic cluster offers

Supporting OL8.7 and 9.1 to admin, cluster and dynamic cluster offers

Updated ARM templates to include OL8.7 and 9.1 urn and related deployments

Updated setup scripts for admin, nodemanager services

Updated GitHub Actions workflow to run for OL8.7 and 9.1 deployments and testing

Reviewed the changes. They look good.


Query in Superset

hello,
I use superset to run query with clickhouse.
But when I want to query with Chinese character, it throws an error:
Code: 73, e.displayText() = DB::Exception: Unknown format TabSeparatedWithNamesAndT, e.what() = DB::Exception

Anyone can help me?

It's the problem of superset version.
In detail, the python2.7 version Superset has some problem when supporting Chinese, while python3 version is OK.


Failed to connection to wss://tracker.btorrent.xyz/

WTD 0.15.0 (0.96.5) on Windows 7 x64, all torrents remain at 0%, possibly because my ISP block well-known BT trackers, as well as many types of UDP connections (including some that are not related to BT).
The console logs nothing about failed tracker connections (would be nice to log those by default), but this:

WebSocket connection to 'wss://tracker.btorrent.xyz/' failed: Error during WebSocket handshake: net::ERR_CONNECTION_RESET

Maybe WTD can add more ways to boottrap the initial connection to the swarm, for redundancy sake? WT is limited to WebSocket, but WTD is not, right?

The "Failed to connection to wss://tracker.btorrent.xyz" message is not a fatal error. It just means that one attempt to contact this tracker has failed. This is likely because the tracker is down at the moment, or is overloaded with connections. (cc @DiegoRBaquero, who runs that tracker)
You can safely ignore this error. Unfortunately, there is no way to suppress a failed websocket connection error in the console as far as I can tell, or we would definitely do that.
WebTorrent Desktop uses all multiple peer finding mechanisms, including DHT, http/udp/websocket trackers, ut_pex peer exchange. This warning you're seeing is not the issue. If your ISP is blocking BitTorrent connections, trackers, or the DHT bootstrap nodes, then I'm afraid you're probably out of luck.
If other torrent clients also don't work for you, there's not much we can do here.

@henrypijames The BTorrent tracker restarts itself when memory consumption reaches certain limit. Nothing to worry about :)

I don't want less error messages in the console - I want more. Preferably, every failed connection should produce an error message.


TFOptimizer does not apply constraints

Hello there, I recently started using the YellowFin optimizer in my models (keras implementation here), which is implemented through the TFOptimizer class.  This kind of an optimizer has a few downsides, but one I was not expecting was the fact that it does not apply constraints!
Looking through optimizers.py, it becomes clear that every other optimizer has an explicit section in which constraints are applied (Example: SGD), however TFOptimizer does not.
Is this intentional?  Is there some fundamental reason behind why a TFOptimizer cannot have the constraints applied to it in the same way as other optimizers?  It seems to me we can still iterate over the parameters, check for the constraint attribute, and if it exists, apply it.

There is a reason, which is that the underlying TF optimizer applies the constraints itself. So, no need to do it on the Keras side.


[Question] Switch from Arkenfox to Betterfox

Hi,
I switched from Arkenfox to Betterfox user.js and I wonder if I need to reset the FF settings to make things work as it should?
Thanks,
Hyper

Yes, you have to restart your settings and delete Arkenfox before the installation of this user.js

Without delving into specifics, yes, I would. But instead of manually altering those prefs, just create a new profile altogether and transfer your browser data over.
I've been working on a guide every now and again on how to transfer your current profile settings into a new profile. Here's a rough draft of what I have:

Download the user.js, append the file with your overrides, and place it into a new Firefox "profile folder". Find the profile folder location by entering "about:support" into urlbar and locating "Profile Folder" row. Click "Open Folder" button. (See here).

Migrate your personal stuff from the old profile by copying appropriate files from backup and place them into the new profile (or read here):

cert9.db - Certificates
content-prefs.sqlite - Site-specific preferences
favicons.sqlite - Bookmarks icons
handlers.json - Download actions
key4.db - Passwords
logins.json - Passwords
permissions.sqlite - Site-specific preferences
persdict.dat - Personal dictionary
pkcs11.txt - Security device settings
places.sqlite - Bookmarks

Install your extensions, change your search engine, setup your userChrome (if applicable), etc.

Thank you for your question!


Escape ; character in tracking segments

Tracking segments could include a ;, in which case we would need to escape them.
Perhaps we should URI encode each ; separated segment, before base 64 encoding the whole thing?
@TimmyCarbone @lukechesser

Can you think of an example of where ; would come up? I guess from search queries or app name where the user has control over the input?
Makes sense to me

Yeah, that sort of thing! Property and label could be any string.

Cool, I'm down. @TimmyCarbone does that work for you?
It may be easiest for Tim to also use this module for decoding on the data repo. Thoughts?

Makes sense to me yes.
I prefer to do the escaping in BigQuery to keep the load as low as possible on the dyno, but yeah ... I could use the module as well to be more consistent and avoid breaking changes.

@TimmyCarbone oh yeah fair. Could you do the escaping BigQuery side and then still use this module on your side? Or would that double escape?

I don't have a use for the module if I escape in BigQuery :)
The module would replace all the treatment that I'm doing in BigQuery currently.
It's either BigQuery processing or node processing with the module.

Ah okay. Nvm then @TimmyCarbone. Like you said, better to use the power of BigQuery than process it inside JS. I guess just look into the code here if you ever notice a discrepancy 👍

@OliverJAsh So to be clear, we still want to escape characters when encoding and unescape when decoding in this module.


Download an aternos Drive backup

like the title says, its possible to download an aternos backup from google drive?

This feature was planned a long time ago... No, it is not possible yet.


Documentation cop

We'd like to fail the build anytime our documentation contains certain iffy words, like "actually", "obviously", "just", "clearly", and others like that. While we're at it, it would be great to fail on "he" or "she".
The failure messages should hopefully explain a little bit about why and about what can be done instead (eg use "they").

Hi @RochesterinNYC I wanted to work on it as well.
I think we can write a custom cop like rspec-cop for it (I don't mean we should write a gem but we can most definetly see how they have use rubocop api)
Also, coala's keyword bear has some details about going about this.
Let me know what do you think.

Hi @sonalkr132. Sure, feel free to take this on. I can provide guidance if needed.
Using Rubocop for this might be too much overhead? We already have specs that screen for certain qualities about the actual text in the codebase (ex. using single quotes ' in the describe blocks for specs is screened against). This could be a logical place to add this functionality. Take a look at https://github.com/bundler/bundler/blob/master/spec/quality_spec.rb

@sonalkr132 please give me a headsup as to whether you're willing to take this on.


Fix broken links to images in the docs

deleted the space and added in "_" location was fine.

Checking to see if I can make a comment


File input element larger on iOS Safari

This has been fixed with commit 6b68c3d by adding responsiveness to the FileInput component.


⚠ Bofrost.es has degraded performance

In 3f03a32, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1656 ms

Resolved: Bofrost.es performance has improved in b3995cc after 6 minutes.


Adding day in life of a data scientist notebook

@aldelar , The name of the notebook matches the presentation title. I think it's fine.


Postgres

Description
Fixes # Swapping to postgres via psycopg2 from mysql
Type of change
Please delete options that are not relevant.

[X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Change Status

[X] Complete, tested, ready to review and merge
[ ] Complete, but not tested (may need new tests)
[ ] Incomplete/work-in-progress, PR is for discussion/feedback

How Has This Been Tested?

[X] Spun up flask app and checked for valid responses from DB
[X] Tested with dummy data to ensure correct syntax

Checklist

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer
[X] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[X] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[X] There are no merge conflicts

screwed up the commit disregard


Add a simple chat example

Hello Alex,
I thought it might be of use to add a simple chat example since it is often the very first thing you play around with when experimenting with websockets.
In the frontend, I have written a simple wrapper to WebSocket in order to implement:

Keepalive with ping/pong.
Automatic reconnect.
Event based interface.

Caveats:

I have used a little workaround until PubSub is available...
I haven't got ws.getRemoteAddress() working properly cf. https://github.com/uNetworking/uWebSockets.js/issues/58

Hope you find this of value and merge it to your excellent project :-)
Cheers,
Peter

Hello Peter,
This PR is more suited as a stand-alone repo.

I guess the front end part is a little to big, I understand.
Looking forwards to PubSub support nonetheless ;-)


Update documentation for Puppet::Util::Execution::execute

CLA signed by all contributors.

@dalen Thanks for the contribution!  Think we could squash this into a single commit about "fixing documentation for Puppet::Util::Execution?"

@peterhuene done

@dalen Sorry, one last update to the commit: could you prefix with (docs) instead of maint?  Will merge after that.

done

@dalen Thanks again for the contribution!


[5.3] Removed old boot hack

This was a breaking change, so it could be an idea to put it into the upgrade guide for 5.3.
Had to update my service providers and remove parent::boot(); from the boot method.

Had to update my service providers and remove parent::boot(); from the boot method.

They should never have been calling the parent boot surely, anyway?


Implement dyn scalar comparison kernels

Is your feature request related to a problem or challenge? Please describe what you are trying to do.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Following the design set in #1074 we would like to add the remaining dynamic comparison kernels.
Scalar

[ ] lt_dyn_scalar
[ ] lt_eq_dyn_scalar
[ ] gt_dyn_scalar
[ ] gt_eq_dyn_scalar
[ ] neq_dyn_scalar

UTF8 Scalar

[ ] lt_dyn_utf8_scalar
[ ] lt_eq_dyn_utf8_scalar
[ ] gt_dyn_utf8_scalar
[ ] gt_eq_dyn_utf8_scalar
[ ] neq_dyn_utf8_scalar

Boolean

[ ] lt_dyn_bool_scalar
[ ] lt_eq_dyn_bool_scalar
[ ] gt_dyn_bool_scalar
[ ] gt_eq_dyn_bool_scalar
[ ] neq_dyn_bool_scalar

Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

@alamb @liukun4515
I am submitting a bunch of the PRs now branching off my existing eq_dyn_scalar branch.  The PRs now currently show all the changes because we havent merged that one in to master yet. Im hoping once that is merged i can simply rebase and these will be good to go.

@alamb @liukun4515
I am submitting a bunch of the PRs now branching off my existing eq_dyn_scalar branch.  The PRs now currently show all the changes because we havent merged that one in to master yet. Im hoping once that is merged i can simply rebase and these will be good to go.

Going to stop here at the scalar kernels to make sure all good.  If this approach is good ill do the utf8 and bool kernels

Going to stop here at the scalar kernels to make sure all good.   The PRs now currently show all the changes because we havent merged that one in to master yet. Im hoping once that is merged i can simply rebase and these will be good to go.

@matthewmturner https://github.com/apache/arrow-rs/pull/1074 has been merged, you can rebase other prs, but I think we should merge the prs one by one and reduce the conflict. @alamb

@alamb @liukun4515
I am submitting a bunch of the PRs now branching off my existing eq_dyn_scalar branch. The PRs now currently show all the changes because we havent merged that one in to master yet. Im hoping once that is merged i can simply rebase and these will be good to go.

@matthewmturner https://github.com/apache/arrow-rs/pull/1074 has been merged, you can rebase other prs, but I think we should merge the prs one by one and reduce the conflict. @alamb

@alamb @liukun4515

I am submitting a bunch of the PRs now branching off my existing eq_dyn_scalar branch. The PRs now currently show all the changes because we havent merged that one in to master yet. Im hoping once that is merged i can simply rebase and these will be good to go.

@matthewmturner https://github.com/apache/arrow-rs/pull/1074 has been merged, you can rebase other prs, but I think we should merge the prs one by one and reduce the conflict. @alamb

Agree.  The PRs now currently show all the changes because we havent merged that one in to master yet. Im hoping once that is merged i can simply rebase and these will be good to go.

@matthewmturner https://github.com/apache/arrow-rs/pull/1074 has been merged, you can rebase other prs, but I think we should merge the prs one by one and reduce the conflict. @alamb

Agree. I was expecting to do that


Fonts fallback

Hello,
Is there a way to control the font fallback?
I tried to use --font-family 'Source Code Pro, Hack Nerd Font Mono but Arial Unicode MS is picked
[2023-02-23T22:29:23Z WARN  usvg::text::shaper] Fallback from Source Code Pro to Arial Unicode MS.

This is when using the resvg renderer

It doesn't log much beside multiple lines per frame saying
[2023-03-03T14:13:37Z WARN  usvg::text::shaper] Fallback from Source Code Pro to Arial Unicode MS.

 If you have it installed on your system then it will always look it up for emoji, this is expected.
As for --font-family try without spaces after commas, so like this: --font-family 'Source Code Pro,Hack Nerd Font Mono

I just made a small fix, https://github.com/asciinema/agg/commit/24e2667591257f384cf42f800283140aec3acbb2, which makes it work with extra spaces like you tried. Until it's released just pass fonts without spaces after commas.

Without a space, I don't have a warning but I don't get the proper rendering for U+279C. This glyph is not in Source Code Pro but is in Hack Nerd Font. It seems it's not picked though

Ah, yeah. There's only one font used, the first one found on the system is used for all characters when using default fontdue renderer. Does it fallback correctly for --renderer=resvg ?

No. I used --font-family 'Source Code Pro,Hack Nerd Font Mono' --renderer=resvg and I'm getting
[2023-03-28T14:37:55Z WARN  usvg::text::shaper] Fallback from Source Code Pro to Arial Unicode MS.

I see. So usvg library must be doing this fallback internally. And I think I know why it doesn't see your Hack font. This actually explains a lot (including other bugs). Thanks for the info.

I've just released 1.4.0 with fixed font fallback behaviour. Please give it a try, I'd appreciate feedback on whether it solved the above issue. Also, the default renderer (fontdue) should render better than resvg now.

Excellent :tada:


querySelectorAll errors when no registered elements exist

title says it all. function errors on up to date ff. I would rather not put a try on the other side since if this shim has to be implemented elsewhere it will need the exact same logic

what is this error about?
querySelectorAll is performed only when query has a length so I don't understand
https://github.com/WebReflection/document-register-element/blob/master/src/document-register-element.js#L521
https://github.com/WebReflection/document-register-element/blob/master/src/document-register-element.js#L571-L574
https://github.com/WebReflection/document-register-element/blob/master/src/document-register-element.js#L633-L636
https://github.com/WebReflection/document-register-element/blob/master/src/document-register-element.js#L701-L704

the querySelector all is in the shim itself.
nodes = el.querySelectorAll(registered.join(',')),```

Super, thanks!

it's not in the package or the CDN yet, but that file has been changed.
Please let me know if it works so I can bump a patch version, thanks.

seems to work. Firefox no longer throws
before: https://jsfiddle.net/wk1ytm5a/2/
after: https://jsfiddle.net/wk1ytm5a/1/


NLP based Chatbot

NLP based Chatbot #14

Created and implemented the NLP based chatbot with a proper documentation

[x] DevIncept Participant

[x] Contributor

Closes: #14
Describe the changes you've made

Created and implemented the chatbot which chats with you based on the transcript you used in the training.
Added dataset in the Dataset folder and also added the required files.
Also, README is added with a proper and detailed explanation.

Type of change
What sort of change have you made:

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Code style update (formatting, local variables)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Once you run the model and start testing you get an option for the "User" input, where you can test and chat with the bot.
Checklist:

[x] My code follows the guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented on my code, particularly wherever it was hard to understand.
[x] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings.
[x] I have added test cases that prove my fix is effective or that my feature works.

Hey @prathimacode-hub, I have done all the requested changes, please do check.
Thank you :-D


An inline parent element must only contain inline children doesn't make sense

I am getting the error An inline parent element must only contain inline children
on the file :
<!DOCTYPE html>
<html lang="en">

{% include "parts/html_head.html" %}

<body>

    {% include "parts/header.html" %}

    {% include "parts/get_the_app.html" %}

    {% include "parts/team.html" %}

    {#{% include "parts/pricing.html" %}#}

    {% include "parts/section_partenaires.html" %}

    {% include "parts/testimony.html" %}

    {% include "parts/contact_section.html" %}

    {% include "parts/copyright.html" %}

    {% include "parts/html_footer.html" %}

</body>
</html>

on the second line, being <html lang="en">
Why ? It doesn't make sense and I cannot seem to get rid of it. Please fix ASAP !

I was able to fix it by removing entirely the <!DOCTYPE html> which doesn't make any sense

I had the same issues with broken indentation:
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>One or more validations failed</title>
    </head>

raised
validation/templates/email_validation_error.html:4:4: Bad indentation, expected 0, got 8

which is not correct.
Removing <!DOCTYPE html> also fixed it in my case.


Support?

I could not find any official/proper support channels, so I am opening an issue here. If this is not the right place, I am sorry. Let me know where the right place is, and I will take my request there.
I have a hand-wired matrix with an inconsistent number of keys on each row, and column. The keyboard itself is/will be just a TKL.
Layout:

Matrix:

keycap.rb:
https://gist.github.com/igreulich/66b6f1168c312e3c95f6d82c332d86db
When I put the keymap.rb file on my Pico, the board does not work. I can connect to it via serial port, but it looks like it never fully loads. However the board does send input to the computer, at present it sends this input with out me pressing a key, and it is constant. (Currently the input seems to be ~ and [TAB].
I did put KC_NO in place where there is no key in the matrix, but I don't know if the fact that there is no coordinates (from the perspective of the matrix) at those locations is breaking something?
I am concerned I have put the diodes on backwards, and that the fact that all of my rows don't have the same number of keys are my sticking points. However, I don't know enough to even know what all I don't know.
Thanks in advanced for any help!

Your keymap.rb looks to work to me.
Although the KC_NO in {row:5, col: 12} might be wrong as you have an actual key switch at the position, it doesn't affect the whole functionality of the keyboard.
Could you show me the PCB data things like a schematic or even photos that express the implementation including diodes?

Let me know if I need more/clearer pictures; or anything else for that matter.
Thanks for all your help!

Hand wiring!!!!
OK, your keyboard has a circuit so-called "row2col" while PRK basically supports "col2row".
The difference between col2row and row2col is the direction of the diodes.
PRK doesn't offer a short-handed way to configure the row2col matrix as of now though, no worries, you should be able to configure it by using kbd.init_matrix_pins instead of kbd.init_pins
The link below shows an example that runs a row2col keyboard.
https://github.com/swanmatch/prk_numatreus/blob/master/keymap.rb
You can see more info about init_matrix_pins here: https://github.com/picoruby/prk_firmware/wiki/Keyscan-matrix

Hand wiring!!!!

I love it!

OK, your keyboard has a circuit so-called "row2col" while PRK basically supports "col2row". The difference between col2row and row2col is the direction of the diodes.

Yeah, thats what I was figuring.

PRK doesn't offer a short-handed way to configure the row2col matrix as of now though, no worries, you should be able to configure it by using kbd.init_matrix_pins instead of kbd.init_pins

The link below shows an example that runs a row2col keyboard. https://github.com/swanmatch/prk_numatreus/blob/master/keymap.rb

You can see more info about init_matrix_pins here: https://github.com/picoruby/prk_firmware/wiki/Keyscan-matrix

Thanks! Ill take a look, and report back!

That did the trick! Here is the final config, if you are interested!
Thanks for the help!