Module version mismatch

I get this error in the chrome console:
Uncaught Error: Module version mismatch. Expected 50, got 48.
It happens on this line:
var SpellCheckProvider = require('electron-spell-check-provider');
This seems to be a mismatch with electron 1.4.3 according to this discussion: https://github.com/electron/electron/issues/5851
Is this due to the build using electron version 1.2.x?
Is there a way to update it to use the version below?
Electron version: 1.4.0
NODE_MODULE_VERSION: 50
V8 version: 5.3

This issue is actually in the underlying SpellChecker module.

Hi @PaulKeefe, I think that this might actually be because this module (a native module) has not been rebuilt to match the version of Electron you're using. I was getting this error using Electron 1.4.3, electron-spell-check-provider 1.1.0, and electron-rebuild 1.2.1 and then this fixed it for me:
var exec = require('child_process').exec;
var electronRebuild = require('electron-rebuild');
var path = require('path');

var ELECTRON_VERSION = '1.4.3';

var appDir = /* directory of your package.json */;

exec("npm install && npm prune", {cwd: appDir}, function(err, res) {
  electronRebuild.installNodeHeaders(ELECTRON_VERSION)
    .then(() => electronRebuild.rebuildNativeModules(ELECTRON_VERSION, path.join(appDir, 'node_modules')));
});

(The above is extracted from a larger build process so might not quite work as written but the gist is hopefully clear.)

Thanks @wearhere I'll give it a try.

That was it. Thanks @wearhere!

Great to hear @PaulKeefe !

@wearhere I now get this: SpellCheckProvider is not a constructor
Do you think this is something wrong in the build process as well?

Oops, I had to change the way I loaded like a module from this:
const {SpellCheckProvider} = require('electron-spell-check-provider');
to this:
var SpellCheckProvider = require('electron-spell-check-provider');
Working great now! Thanks @wearhere for the code help.


Support for blocking navigation (onBeforeLeave hook)

Adds this...
useBeforeLeave
useBeforeLeave takes a function that will be called prior to leaving a route.  The function will be called with:

to (path: string |number, options: NavigateOptions}: same as passed to the navigate causing the route change.
preventDefault (void function): call this to block the route change.
defaultPrevented (readonly boolean): true if any previously called leave handlers called preventDefault().
forceRetry (void function): call this to force the same navigation, perhaps after confirming with the user.

Example usage:
useBeforeLeave((e: BeforeLeaveEventArgs) => {
  if (form.isDirty && !e.defaultPrevented) {
    // preventDefault to block immediately and prompt user async
    e.preventDefault();
    setTimeout(() => {
      if (window.confirm("Discard unsaved changes - are you sure?")) {
        // user wants to proceed anyway
        e.forceRetry();
      }
    }, 100);
  }
});

NOTE LIMITATIONS
This PR only adds support to block navigations originating from the router (eg <Link>, useNavigate()).
Blocking navigations originating in the browser (back/forward, plain anchors) can also be done and requires either a custom path/hash integration, or solid-router to extend its built-in integrations.
Finally, users may wish to block full page document navigations (ie using window beforeunload event) but that should be handled in application code directly (outside the scope of the router).

Damn - for some reason the changed files are showing changes in another recent commit too components.tsx.  Please ignore that for now.

Hmm - I wonder if there would ever be a time when the app would want to retry the navigate - but not force it.  Example could be if prompting the user with "Would you like to save your changes before leaving", then attempt save, then retry (with all checks running again).
Perhaps instead of e.forceRetry() it should be e.retry({force: true}) or just e.retry(true) ??

Have added "from" path to event args as it proved useful in real-world testing.

Hmm, I think there is an issue here requiring a bit of a code restructure.  I set up the leave handlers globally - but they should be per .  I'll work on that.

Okay the latest commit makes the BeforeLeave subscribers specific to the Router instance.
BeforeLeave management can be created by either:

the Router - which means it only supports blocking router initiated navigations.
the integration - which means browser initiated navigations can also be blocked (back/forward, etc).

Note that 2 still requires a change to the integrations which I haven't included in this PR - but do have in my publish branch (and are using in production O_O!!)

This looks really good, and it taps in before Transitions so I think we are good here. Love it.


Update CMakeLists.txt for better usability

:recycle: Refactor CMake for a more "modern" approach
:package: Add support for generating a .deb file
This change changes the project-name to CTRE (which is what it exports as a library name).
The call to export() has been removed as this call no longer works in newer CMake versions, and its use is discouraged
Install location for cmake related files has been updated to use CMAKE_INSTALL_DATADIR to be in step with other CMake projects and to follow best practices.
Tests are also marked EXCLUDE_FROM_ALL, so you need to manually call ctre-tests to build the unit tests. In the future, I'd recommend looking into using Catch2, even for static asserts, so that add_test can be used.
BUILD_TESTING and CTest are now included (but CTest is not used). If the project is being built "stand alone" (that is, not via add_subdirectory), tests are automatically enabled, but not automatically built.
Package targets are also automatically enabled.
More work is needed for RPM support, BUT I don't have access to a machine like that so oh well :v

Thank you Izzy!


Investigate increasing Maintainer Productivity with Pull Requests Environments

I would like to make life easier for XSV maintainers by implementing Uffizzi
previews.
Disclaimer: I work on Uffizzi
Uffizzi is a Open Source full stack previews engine and is completely free for XSV (and all open source projects). This will provide maintainers with previews of their PRs in the cloud, allowing them iterate faster and reduce time to merge.
TODO:

[ ]  Intial POC

I'm going to pass. Thanks.


Missing dependencies while running Text template (.tt or .t4)

We are facing issues after upgrading our .NET Framework 4.7.1 class library from XrmTooling.CoreAssembly to PowerPlatform.Dataverse.Client.
The library compiles correctly, but runtime errors occur when executing text template files that rely on the library. The errors indicate that deprecated libraries and incorrect dependency versions are being sought in nested dependencies.
This behaviour does not occur with XrmTooling.CoreAssembly and the Text Template files return the sought after objects.
Has anyone had an issue like this before? Is it because PowerPlatform.Dataverse.Client also supports .NET core? We have already tried to redirect dependencies via binding redirect, however without any luck. The only solution was registering Assembly event handlers that allow us to attempt to load incoming assemblies if they fail initially.
AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
// Subscribe to the AssemblyLoad event
AppDomain.CurrentDomain.AssemblyLoad += CurrentDomain_AssemblyLoad;
(Important: Needed to be registered before calling ServiceClient constructor)

This generally indicates that your tool is pulling dependencies from different sources in your output directory.
I would check the modules you added to your project that may be pulling the older dependencies.

Going to close this as it does not seem to apply to the Service Client itself.


Drops conditional usage of removed DevelopmentTools.gcc_version

Noticed this TODO while reading through for another task.
And just noticed #1173...
Closes #1173

Thanks @colindean, fixed this up for ya.


Feature : Curated Frontend

I started working on the frontend with Flask in "frontend" branch.
It would make more sense to continue once #1 is complete or we are able to scrape atleast two websites though.
Plan is to combine the data into a single format  and show the results from multiple websites with a single search.

Hi, I am interested in your idea. I have good hands in Python Flask. I need a few day to make a PR

Btw, fork the frontend branch if you're interested in developing the flask part!
@shaikhmudassir


Make sure extra submodules are included when collecting list of tasks

Need to test it out on read-the-docs as well (sometimes it takes a while before you can enable a branch)

Codecov Report
Patch and project coverage have no change.

Comparison is base (8b003ad) 92.41% compared to head (8b003ad) 92.41%.

:exclamation: Current head 8b003ad differs from pull request most recent head d76af4b. Consider uploading reports for the commit d76af4b to get more accurate results

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the GitHub App Integration for your organization. Read more.
Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #746   +/-   ##
========================================
  Coverage    92.41%   92.41%
========================================
  Files           41       41
  Lines         4270     4270
========================================
  Hits          3946     3946
  Misses         324      324

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

tested on RTD and works like a charm


Closes #22

Adds ability to specify hook for compilation in the options for the plugin

Bumping this because I use this tool and I need this update


RA Avatar not updating on Daijishou cache

When i update my avatar on RA website, it doesnt update on daijishou.

You can try to clear the app cache.


v 0.3.1

imports were modified
possibility to add listener in code or in cli or both was added
immediate exit if authorization fails was added
last changes from 0.3.0 version were merged in project
code for generating '.zbr-test-run-id' was deleted
links to esg in 'example.robot' were deleted

:+1:


Arduino New IDE 2.x not finding Installation JSON

The new Arduino 2.x IDE is having troubles finding the installation STM32 boards. It loads the other RAKWireless boards but not the RUI ones. It seems to load the .JSON file fine but when we search for "RAK" it does not find the RAKwireless RUI STM32 Boards. I am find since I can use the old Arduino IDE, just wondering if the new Arduino IDE works for anyone else.
https://raw.githubusercontent.com/RAKWireless/RAKwireless-Arduino-BSP-Index/main/package_rakwireless.com_rui_index.json

The Old Arduino IDE 1.8.x works fine, just search for RAK and the boards are found

Hi @hpssjellis ,
It my setup, I see the RAK RUI3 based modules.

I do not use Arduino 2.x though as a still find legacy Arduino IDE faster/leaner to use.

Hey @carlrakwireless. Good to know it does works for someone. I have tried 3 Arduino IDE v2 with no luck even though the other RAKwireless .json file works fine.  I do have the old Arduino IDE on some of my computers so I should be fine. I will tag you on a few more issues. We can close this one.


Create a Mental Health Resource Directory

Description:
We're promoting mental health awareness. Your task is to design a resource directory for mental health resources with a calming and supportive design.

Difficulty: intermediate
Estimated Time: 6-7 hours

Hi Jayesh,
Hi there! I'm interested in working on this issue. Could you please assign it to me? I believe I can make a valuable contribution to this task.
Looking forward to your response. Thanks!

Hello User,
Thank you for your interest in working on this issue. I've assigned the issue to you, and you can now start working on it. If you have any questions or need any assistance, feel free to ask. Good luck with your contribution!
Best regards,
Jayesh


smartmatch warnings in error log

authentic-lib uses smartmatch
see https://sourceforge.net/p/webadmin/discussion/600155/thread/8edc58d3/
for explanation why smartmatch should be avoided see also https://stackoverflow.com/questions/16927024/perl-5-20-and-the-fate-of-smart-matching-and-given-when

I agree smart match needs to go; it'll break when 5.26 starts shipping with distros.
If I'm reading these bits of code right, a simple == would do the same thing as ~~ (which turns out to be the wrong thing in a number with multiple dots).

Iteresting.
Okay, then just using should be fine.
grep( /^$val$/, @arr )

It should be fixed, please have a look:
https://github.com/qooob/authentic-theme/commit/dd4b2010f7e62afdbea2f0d53d23c191f07675ce

a simple == would do the same thing as ~~

It wouldn't, as it's not the exact match.
This is very disturbing that Perl doesn't have a set of very basic functions and almost each and every has to be reinvented manually.
I came up with using this, what are your thoughts on it, Perl-guys?
sub string_contains
{
    my ($string, $search) = @_;

    if (index($string, $search) != -1) {
        return 1;
    } else {
        return 0;
    }

}

sub array_contains
{
    my ($e, $n, @a) = @_;
    my $m;

    if ($e eq 'exact') {
        if (grep(/^\Q$n\E$/, @a)) {
            return 1;
        } else {
            return 0;
        }
    } else {
        for (@a) {
            if (string_contains($_, $n)) {
                $m = 1;
                last;
            }
        }
        if ($m) {
            return 1;
        } else {
            return 0;
        }
    }
    return 0;
}

should do the same:
sub string_contains
{
return index(@_[0], @_[1]) != -1);
}

sub array_contains
{
    my ($e, $n, @a) = @_;

    if ($e eq 'exact') {
        return (grep(/^\Q$n\E$/, @a));
   } else {
        return (grep(/\Q$n\E/, @a));
   }
}

universal and simple:
# array_contains(regex, array);
# examples for regex:
# /\Qstring\E/ contains string
# /^Qstring\E$/ contains exact string
# /^some*thing$/ starts with some and ends with thing
sub array_contains
{
    my ($n, @a) = @_;
    return (grep($n, @a));
}

Will it match 71 in (1,2,7,7710,...)? Index() is 3 time faster than using regex, as far as I'm aware. Not sure though, if grep in your example in Perl falls down to regex. I would need to test it.

yes, index is faster than a single match statement, but with an array grep should be equal or faster because the regex has to be compiled only once and no addtional loop
71 is a good question because its a number and index or regex matches strings, but it may work because of the perl auto conversion:
num -> string -> regex compares against array num -> string
if you mean "71" and an array of strings the answer is yes 😁

btw most examples use grep as regex compairson engine like grep on command line, its an universal filter engine. you can every perl expression to filter an array. IMHO the name grep  is a bit misleading
for an exact match you can use also
grep { $_ eq 'Engineer' } @array;
for an contains match index should work
grep { index($_, 'Engineer') !=-1 } @array;
https://www.cs.ait.ac.th/~on/O/oreilly/perl/cookbook/ch04_14.htm

an excellent post about what perl offers for testing if an array contains a value
http://blogs.perl.org/users/mascip/2013/05/the-clearest-ways-to-check-if-a-list-contains.html

I did actual tests myself, here is what I got.
Case 1. Plain grep vs. custom array_contains that falls into for loop and later uses index():
Set-up:
use Benchmark;
my @array;
for (1..10_000) {
    push @array, $_;
}

timethese(10000, {
  'grep'    => sub {
            if ( grep { $_ eq '5000' } @array ) {
                # code
            }
        },
  'array_contains_loose'    => sub {
            if ( array_contains('loose', '5000', @array) ) {
                # code
            }
        },
});

Result:

Benchmark: timing 10000 iterations of array_contains_loose, grep...
--
  | array_contains_loose: 21 wallclock secs (19.01 usr +  0.00 sys = 19.01 CPU) @ 526.04/s (n=10000)
  | grep:                  4 wallclock secs ( 3.91 usr +  0.00 sys =  3.91 CPU) @ 2557.54/s (n=10000)

Case 2. Plain grep vs. custom array_contains that falls into grep with regex:
Set-up:
use Benchmark;
my @array;
for (1..10_000) {
    push @array, $_;
}

timethese(10000, {
  'grep'    => sub {
            if ( grep { $_ eq '5000' } @array ) {
                # code
            }
        },
  'array_contains_exact'    => sub {
            if ( array_contains('exact', '5000', @array) ) {
                # code
            }
        },
});

Result:

Benchmark: timing 10000 iterations of array_contains_exact, grep...
  | array_contains_exact: 27 wallclock secs (24.42 usr +  0.00 sys = 24.42 CPU) @ 409.50/s (n=10000)
  | grep:                  4 wallclock secs ( 3.97 usr +  0.00 sys =  3.97 CPU) @ 2518.89/s (n=10000)

Case 3. Plain grep vs. plain grep with regex:

use Benchmark;
my @array;
for (1..10_000) {
    push @array, $_;
}

timethese(10000, {
  'grep'    => sub {
            if ( grep { $_ eq '5000' } @array ) {
                # code
            }
        },
  'grep_regex'    => sub {
            my $ix = 5000;
            if ( grep(/^\Q$ix\E$/, @array) ) {
                # code
            }
        },
});

Result:

Benchmark: timing 10000 iterations of grep, grep_regex...
--
  | grep:        4 wallclock secs ( 3.89 usr +  0.00 sys =  3.89 CPU) @ 2570.69/s (n=10000)
  | grep_regex: 16 wallclock secs (14.83 usr +  0.00 sys = 14.83 CPU) @ 674.31/s (n=10000)

Case 4. Plain grep with non-exact match vs. plain grep with regex:

use Benchmark;
my @array;
for (1..10_000) {
    push @array, $_;
}

timethese(10000, {
  'grep_with_index' => sub {
            if ( grep { index($_, 5000) !=-1 } @array ) {
                # code
            }
        },
  'grep_regex'     => sub {
            my $ix = 5000;
            if ( grep(/^\Q$ix\E$/, @array) ) {
                # code
            }
        },
});

enchmark: timing 10000 iterations of grep_regex, grep_with_index...
--
  | grep_regex:      17 wallclock secs (15.38 usr +  0.00 sys = 15.38 CPU) @ 650.20/s (n=10000)
  | grep_with_index:  6 wallclock secs ( 5.87 usr +  0.00 sys =  5.87 CPU) @ 1703.58/s (n=10000)

Thanks Kay, I will go with grep { index($_, $val) !=-1 } @array and grep { $_ eq '5000' } @array
Just in few moments, I will wrap grep { $_ ... } @array in a subroutines and run tests again.

I have a security concerns now.
Is this safe to use:
grep { $_ eq $value } @array

$value is just falling into the grep with out any checks?

Funny. Changed string_contains to:
sub string_contains
{
    return (index($_[0], $_[1]) != -1);
}

After running results, it seems that Perl gets slower even on calling subroutine, however, we're talking about 1ml iterations.
Example:
use Benchmark;
timethese(10000000, {
  'string_contains' => sub {
            if ( string_contains('Authentic Theme is Webmin/Usermin theme', 'theme') ) {
                # code
            }
        },
  'index()'     => sub {
            if ( index('Authentic Theme is Webmin/Usermin theme', 'theme') != -1 ) {
                # code
            }
        },
});

Result:

Benchmark: timing 10000000 iterations of index(), string_contains...
  | index():          1 wallclock secs ( 0.76 usr +  0.00 sys =  0.76 CPU) @ 13157894.74/s (n=10000000)
  | string_contains:  3 wallclock secs ( 2.46 usr +  0.00 sys =  2.46 CPU) @ 4065040.65/s (n=10000000)

This is ridiculous in my point of view. Using subroutine as very basic abstraction layer, should not slow things down so much. Having all over the code index() != -1 is very ugly and not only.

Alright, here is what I finally got. Will add this to the repo, after Jamie's or Joe's confirmation on whether is it safe or not to use unescaped $value in grep.
sub string_contains
{
    return (index($_[0], $_[1]) != -1);
}

sub array_contains
{
    my ($e, $n, @a) = @_;
    if ($e eq 'exact') {
        return (grep {$_ eq $n} @a);
    } else {
        return grep {index($_, $n) != -1} @a;
    }
}

you are correct, and this is why l avoid subs and modules in perl whenever possible. now you can see the cause why most perl programmers use index and grep direct.
expensive subs are a resulting from perl is an interpreted language . also javascript suffered from this but with modern JIT engines this and other performance bottlenecks are gone.

it should be save because its only used for filtering. the returned result are the matching array elements ir an epmty array. I would say the array content is more dangerous 😎

You are correct, and this is why l avoid subs and modules in perl whenever possible.

This is not only ugly but deprives abstraction, and couples code a lot.
What if tomorrow, Perl language will have super fast, 10 times faster inbuilt_string_contains_super_fast() sub with returing true/false. What are you going to do? 😄 Use your notepad with regex to replace it??

It should be save because its only used for filtering. The returned result are the matching array elements or an empty array. I would say the array content is more dangerous.

What do you mean? Are you suggesting that anything from @array can expand into executable command? I honestly doubt, that any saint programmer would let this into programming language itself.
If I understood you correctly neither $value from grep nor array keys from @array will ever be evaluated?

yes

What if tomorrow, Perl language will have super fast, 10 times faster inbuilt_string_contains_super_fast()

this will not happen in core perl :-)

from what l found on the web, this module implements many list operations in C and has the grep aquivalent tests any and all which are much faster.
use List::Moreutils qw(any all)
https://metacpan.org/pod/List::MoreUtils
you will love it 😍

I do like it. It's a bit over that what I need though.
Thanks.

Alright, it seems that I just realized what Joe was explaining me on The Trickiest Thing About Perl (for beginners), some time ago.
Passing array as reference, makes me put it at the beginning at the list of params.
Example:

sub array_contains
{
    my ($arr_ref, $search, $strict) = @_;
    if ($strict) {
        return (grep {$_ eq $search} @$arr_ref);
    } else {
        return grep {index($_, $search) != -1} @$arr_ref;
    }
}

Usage:

if (array_contains(\@arr, '4')) {
  print 1;
} else {
  print 0;
}

Does it look right and more efficient?

Isn't this just version comparison? Why care about performance for something that happens only once in a while? Performance doesn't matter for something that happens very rarely. Worry about correctness and conciseness; not performance.
An array ref can be anywhere in the list of arguments. That's the point of using a ref instead of the array itself. If passing an array, it has to be the last argument; but, it's not recommended to pass an array if you'll be using more than one argument. If you're only using one or two pieces of the array in your function, it may make sense to just pass the specific elements of the array you need (by value) rather than the whole array (by reference). Especially since it just returns true/false; passing an array reference makes sense when you need to make changes to the array or act on many elements of the array or return a modified version of the array.
As for safety, grep is a Perl built-in that operates on arrays. It is not calling out to the system grep; escaping doesn't make sense in this context at all. You pass it a filter function and grep checks the filter function against every element in the given array. As long as user data isn't being used to set the filter function, it is safe with user-provided data.

yes, the issue was originally about version compairson, but ilia did't like grep and index all over in perl scripts and want to write an efficient sub to replace them. I think this was an important improvement  for his (and my) perl knowledge ...

Actually it wasn't for version comparison. I got rid of Version::Compare and replaced it with few strings of my code.
That code, with smartmatch ~~ that I used, was for extracting server's scanned ports for slider notifications, only that were referenced by user in ConfigServer Security Firewall configuration file, instead of sending all, that were going through the logs. Now, it's very efficient and informative compared to the past and produces just few messages, only every few days. (for me at least.)

If I got everything correctly, I consider it's done with the latest commit.
Thanks, Joe and Kay!

for getting an array of unique values try this:
   my @unique = keys map { $_, 1 } @array;

the fastest starts with implemetation I found is this one
sub begins_with
{
    return substr($_[0], 0, length($_[1])) eq $_[1];
}

see https://stackoverflow.com/questions/31724503/most-efficient-way-to-check-if-string-starts-with-needle-in-perl

Thanks a lot, I'll check tomorrow.


JIT fails to work with Vite

What version of @tailwindcss/jit are you using?
0.1.4
What version of Node.js are you using?
v14.5.0
What browser are you using?
Chrome
What operating system are you using?
MacOS
Reproduction repository
https://github.com/17twenty/tailwind-jit-test
Setup a vite project (without adding Vue yet) and can't seem to get the JIT / watcher to work with vite.
Running gives:
$ npm run dev

><EMAIL_ADDRESS>dev /Users/nick/Projects/tailwind-jit
>  npm run watch:css & vite

  vite v2.1.2 dev server running at:

  > Local:    http://localhost:3000/
  > Network:  http://<IP_ADDRESS>:3000/

  ready in 189ms.

><EMAIL_ADDRESS>watch:css /Users/nick/Projects/tailwind-jit
> TAILWIND_MODE=watch postcss ./css/styles.css -o ./build/styles.css -w --verbose

but changing the index.html only triggers vite to reload, the watcher doesn't seem to work.
Probably a misunderstanding of the docs on this repo but would love to get it working for a Vue project afterwards.

Same here! I just crated a project using @vite/create-app, added @tailwindcss/jit, imported tailwindcss/tailwind.css and it just generated modern-normalize stuff. When I add a class to the index.html or some .vue file it doesn't seem to generate anything.
Im using JIT v0.1.4 with Node v14.16.0 and Firefox on Windows.

Yeah, i hadnt even added Vue to my project @robdvins - no joy. Figure it was best to start from the basics before layering on the rest of my workflow.
Tried a number of different options but still can't get the JIT watcher and vite to play nice-nice. Hoping it's an easy one @adamwathan - even if it's a "Do X to make it work and throwaway what you have"

@adamwathan has this example of using vite with the jit engine https://github.com/adamwathan/tailwind-jit-vite-example
may be of aid

Hey @gcavanunez , thanks - I'd had a look at that previously but as I hadn't use the Vue cli I wanted to understand how the basics of it tie together. It could just be the case it doesn't work outside of the defined setup at the moment 🤷♂

@17twenty You're trying to make it a bit more complicated than it needs to be I think! I've created a PR that fixes your setup:
https://github.com/17twenty/tailwind-jit-test/pull/1
The TL;DR is you don't need postcss-cli or anything, Vite has PostCSS support built in.


getpid() broken - or changed?

My app uses getpid() to determine where to send a signal to - a thread  interested in data changes from another thread "registers interest" and getpid() is used to obtain and save the pid for use when a change occurs.
NuttX 12.5 behaves as expected and returns the pid of the calling thread , but from 12.6 onwards it returns 0 every time.
Before I bisect, or look to my own code for an obscure bug, is there a change that's been made meaning we need to perhaps do something else first to get it to work, or there's been a fix/change I should know about?

should have been on nuttx not nuttx-apps


Refactoring

We are going to refactor whole code and like always PRs are welcomed!
New features will be available in the next major release.
Thanks for all submitted issues 👍

We are working on migrating from bridge to jsi. Stay tuned!


Fix the MassMailer error

This PR closes #1084 and #959 after issues that were introduced in https://github.com/FOSSBilling/FOSSBilling/pull/952

Hello, I got the code inside github when I received the notification that the error had been fixed, but for me the error still occurs, even after changing the code. Was there any other file change?


Choose better light theme colors

Hello what do you mean by "Choose better light theme colors"?

Hit the theme change button at the top right. The light theme colors look bad. New ones that don't look bad must be chosen.

I just created a pull request for this issue. I changed the colors to hopefully make them more attractive. Let me know what you think.


bhyve taking 100% CPU on wifibox startup

Since upgrading from 1.0.0 to 1.1.1 (wifibox, -core and -alpine), I can no longer get wifibox to work. The wifibox start command returns OK, but the bhyve process sits at 100% CPU forever.
Had to revert to iwlwifi to write this bug report :)
Not sure which parts of the config you'd want to see (reminds me - I couldn't find any upgrade instructions despite a "breaking change" notificaiton on the releases page)..

Hi @ltning, thanks for the report and the feedback!  There are no specific upgrade instructions to move between releases.  Most of the cases a simple reinstall is the easiest way to upgrade.  In the release notes, I tried to summarize what implies the "breaking" tag that can suggest the nature of the expected breakage.  Currently it is a one-man project, that is what I could come up with.  I try to avoid breaking things but sometimes it happens, sorry for that.
For the analysis, first I think it would be good to see a dmesg output from the guest that you can find at /var/log/run/wifibox/appliance/log/dmesg.  I suspect that the kernel could not boot for some reason (maybe the memory allocated for the guest is too low) so it stuck and that is what causes the spinning with the high CPU usage.

I know it's a one man project and if it wasn't clear (how would it be... all I do is complain ;) ) I'm immensely grateful for your efforts. Wifibox has served me well for a long time now!
I can't find anything in /var/run/wifibox other than directories. No log files. And /var/log/wifibox.log is empty.
Restarting wifibox is a bit of a dangerous thing here; quite often both nvme and other devices just drop off the bus or start timing out, after a while the thing just panics and reboots. I'm assuming it has to do with the PCI passthrough code in bhyve.
I'm running stable/13-n252019-158071c51a1f, built a few days ago. Upgraded wifibox today, was looking forward to easier config of NAT rules..

Oh, I see, so the guest could not even boot up.  The /var/log/wifibox.log is not that talkative by default but you can change this by increasing the log level to e.g. debug in core.conf at $ETCDIR/wifibox.  It should at least show that wifibox tries to launch the VM.
Regarding the issue about restarting: yeah, that sounds much like a bhyve or even a vmm kernel module problem.  I have seen similar things when experimenting with the FreeBSD 11 port: the PCI pass-through started to interfere with the USB driver and the reason was the incomplete way of interacting with VT-d.  That particular problem has been fixed a while now, but apparently many similar things are lurking in the shadows.

@ltning  this seems to be related to #29 -- please read the comments and see if the problem could be solved in the same way.  This could help to see if this is different issue or not.

I've attached the log file here.
It seems like wifibox (the script) believes the VM is up and all is hunk-a-dory, but .. it is not. wifibox console connects but gives no output/reaction.
When it reaches
2022-08-14T22:22:04+0200 INFO  End: wifibox start
bhyve is already churning away at 100% of a CPU core.
wifibox.log

@ltning is this still an issue?  Could you please test it again with a more recent development version (e.g. 20230916) from pgj/freebsd-wifibox-port?


Add Java Sample to Repo

With the release of the Java SDK the samples and generator code needs to be moved from the SDK repo to the BotBuilder-Samples Repo.

Closed after resubmitting PR.


Apply for membership

Hi there,  I'd like to be a member of oam community.
KubeVela is great product and I want to help maintain this for a long run.
I already submit two PRs, should be qualified to apply for "Member".
Thank you.

Invited


fix(ui): Fixed minor bugs in html-ui and added QOL changes

This PR comes with the following changes:

Fixed minor bugs in html-ui
Added placeholders within the policy editor for a unified representation
Added headers for tables in policy and snapshot overview
Minor refactorings

Feedback is welcomed.
Cheers,

Hi @jkowalski,
maybe we need to check the placeholder texts within the policy editor tab.
Cheers,


DigitalOcean create machine failing

I'm running:
docker-machine create --driver digitalocean --digitalocean-access-token=XXXXXXXX --digitalocean-region=nyc3 --digitalocean-image=ubuntu-17-04-x64 --digitalocean-size=1gb --digitalocean-private-networking --engine-registry-mirror=http://<IP_ADDRESS>:6000

And getting
Running pre-create checks...
Creating machine...
(runner-f2efb8d1-gitlab-runner-1499171896-8ca39584) Creating SSH key...
(runner-f2efb8d1-gitlab-runner-1499171896-8ca39584) Creating Digital Ocean droplet...
(runner-f2efb8d1-gitlab-runner-1499171896-8ca39584) Waiting for IP address to be assigned to the Droplet...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Error creating machine: Error detecting OS: Too many retries waiting for SSH to be available.  Last error: Maximum number of retries (60) exceeded

The problem was related to #4156
Resolved it by removing my Docker Machine
rm $(which docker-machine)

And replacing it with 0.12.1
curl -L https://github.com/docker/machine/releases/download/v0.12.1/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine &&
chmod +x /tmp/docker-machine &&
sudo cp /tmp/docker-machine /usr/local/bin/docker-machine


Add extra-stdlib-deployment-targets to build-util

Adds a new --extra-stdlib-deployment-targets arg that appends insteads of replaces the default archs to build the stdlib lib for, which can be an extensive list, especially on Darwin, to recreate.
Split from of #12955

@jrose-apple @gparker42 @gottesmm also split off off from #12955 PR and should be good to land on it's own.

@Rostepher ping

This is so I can build a darwin toolchain, with all the implicit targets that come by default when you don't set stdlib-deployment-targets (like macos, iOS, watch, tv, etc) for each supported arch, and then just tack on my "fuchsia-x86_64,fuchsia-aarch64,android-armv7" target archs.

Yeah, it's not wanting to call stdlib-deployment-targets multiple times but I just want to append to the default implicit targets that build-util setups by default for the current OS that you get when you don't set it in the first place. For Linux it's only one arg but for Darwin it ends up being more than dozen (iOS-arm64, watch-arm64, macOS-x86_64, etc). I just don't want to recreate them all and keep the list up to date in our CI builder's ini. :)

Updated to the options system and rebased on master. Please review.

@swift-ci please test

@swift-ci please smoke test

Build failed
Swift Test Linux Platform
Git Sha - 1b4b562cf2969f5e7a387f1743ca55300f459910

Build failed
Swift Test OS X Platform
Git Sha - 1b4b562cf2969f5e7a387f1743ca55300f459910

fixed the expected default value that broke the test.
should be good to test.

The review comments here were never addressed, and it's been a few years.  If you'd like to pursue this change, please rebase this patch and address @Rostepher's comments.


fix stats issue 402

Related to #402
Fix stats issue, service-name filter regression
test:

start amp: ./swarm start
start local amplifier
execute: amp stats --service-name amp

Display only the services starting by 'amp'
regression tests:

make test

LGTM


[Bug]:

Is there an existing issue for this?

[X] I have searched the existing issues

Have you tried to reproduce this without OP?

[X] I have tested without OP

Current Behavior

During trying to add extra groups to the listing, it takes away all the skills of the main group and replaces it with just a blank skill menu from the /skill.
Just having one group "class" being in is fine, adding a second group "crafting" will break the skill list.
It is building the group in the groups.yml.
Expected Behavior
Being able to see skills when new groups have been added to the profess list.
Steps To Reproduce
Start off with base group "Class" in one of the class ymls.
Add a new group with a different grouping type.
./class skill
any previous showing skills should be gone.
Environment
- Server Software: Root server 32core
- ProSkillAPI Version: Latest dev build
- ProMCCore Version: Latest dev build
- Plugins: Luckperms, Myworlds, Protocalib

latest.log
latest.log

# paste log here...

Anything else?
There were no errors with-in console when this is happening.

When I remove the added groups my skills do come back

I did also real quick bring this to a side server with just pro within it. Still was coming up with the same issue.

I actually have two class groups and don't have this problem. Could you possibly send your associated files so I can see what's going on?

I'm going to go ahead and close this for now as I'm unable to reproduce it. If more specific information is able to be provided, we can take a closer look at this.


AssertionError: If you see this error, please let us know by opening an issue at...

Hi there!
Just ran into
AssertionError: If you see this error, please let us know by opening an issue at
https://github.com/google/jax/issues
since we thought this was unreachable!

so I thought I better do as i was told!
I am trying to implement an ML algorithm, and when jit tracing a function I get the error above.
The issue was that i used a good old numpy randint inside the loss function, and when replacing that with a jax.random randint the error went away.

Thanks for raising this! However, it's not very actionable for us without a bit more information. Can you share a repro (smaller is better)?

Yes! A branch where the error is left is here: https://github.com/jotsif/fm_jax/tree/jit_error, and run warp_jit_error.py to reproduce.

Thanks for the kind words, and the repro! I'll look into it.
By the way, as a workaround if you want to dodge this error, you can put this at the top of your file:
from jax.interpreters import partial_eval as pe
pe._thread_local_state.remat = True

The error is a "voluntary" and temporary one that I inserted to check our understanding that a change we made in #1749 wouldn't cause any extra (but otherwise harmless) FLOPs to be performed. The above lines just disable the "voluntary" error-checking mechanism.
I want to look into this example to understand if it's an edge case (which we can just patch) or if I should revert the extra-FLOP-potential part of #1749 that this error is meant to check.

I finally got to looking at this, and I'm glad you filed it: our control flow primitives had cases where they were letting concrete abstract values through their abstract eval rules. That's not incorrect behavior, but it is different from what we expected when we put in this error check for extra FLOPs.
The fix should be in #1958 !


Added animation

I have added the animation.
On scrolling of the page the elements fade up on the screen.

This PR resolves #21

This PR resolves #16


Add Integration.UI tests using the new WebDriverProvider

Will want to branch off of https://github.com/DFE-Digital/search-prototype-web-mvc/pull/144 the WebDriverProvider PR.
Will want to create some appsettings similar to the E2E tests.
Will want to create DI similar to E2E tests.
May hit a blocker with mocking data.

Can complete #141 as part of

Can delete all of the SpecFlow / WebDriver specific interaction, as that will be in the Pages testing library

All of the WebApplicationFactory will be able to be deleted as that'll be going over Docker when hosting the app.

Draft PR in #153 waiting for stuff to go in and we need them.

No longer progressing in this repository


add dashboard

design inspo https://twitter.com/brian_lovin/status/1443660899181465623/photo/1

gonna just attempt another now that this has diverged after the Pluskit rewrite


Smoother experience for TypeScript

Just a couple of things that would make it "just work" for more users:

Default behaviour for finding tsconfig.json is to look in home folder. Maybe search up the folder hierarchy?

Automatically include TypeScriptHelpers plugin if needed.

Thanks! We actually moved this issue on top of everything else. Seems like people are complaining about it.

Additional problem, I write the following code
class Demo {

  greet (n: number) {
    console.log(3 * n)
  }

}

let demo = new Demo()
demo.greet("Hello marc") // NaN

I would expect the build to detect the problem and throw an error (or at least show something in the console). tsc throw something like error TS2345: Argument of type '"Hello marc"' is not assignable to parameter of type 'number'

Automatic tsconfig.json lookup has been implemented in 1.3.110. Let's create a different issue regarding typescript helpers and a type checker daemon


Vulnerability roundup 92: firecracker-0.21.1: 1 advisory [5.9]

search, files

[ ] CVE-2020-16843 CVSSv3=5.9 (nixos-unstable)

Scanned versions: nixos-unstable: c59ea8b8a0e.
Cc @thoughtpolice

master is at 0.23.0
Closing.


Support for synchronous sending operation.

In the current SDK, SentrySdk.ContinueSendingEvent is completely hidden, and some use cases (e.g., sending a log to Sentry immediately after a time-consuming process) do not work correctly.
In order to solve this problem, we need to either implement a method that performs ContinueSendingEvent synchronously, or return the Coroutine that is being sent asynchronously internally from a public method so that SDK users can refer to the status of the process.

Thanks for addressing this. Please note the package details changed so it's grouped differently on UPM.

Thanks for addressing this. Please note the package details changed so it's grouped differently on UPM.

CHanged shipped on 1.0.2

CHanged shipped on 1.0.2


add code quality plugins

done with jacoco - although the jacoco plugin seems to ignore its dependency on "test"...
currently needs to be called with the following command:
gradle test jacocoTestReporter

added dependency to jacoco task in coverage.gradle, now it works fine :-)


not working this month

It worked perfectly last month, nothing has changed.
Opening browser
Traceback (most recent call last):
File "//renew.py", line 47, in
browser.find_element_by_name("Login").click()
File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/webelement.py", line 80, in click
self._execute(Command.CLICK_ELEMENT)
File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/webelement.py", line 633, in _execute
return self._parent.execute(command, params)
File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
(Session info: headless chrome=86.0.4240.111)

Hi,
Some of the source code of NO-IP has changed and the login button was one of those changes. I've updated the script and things should by working for you now. Can you check?

Hi,
Some of the source code of NO-IP has changed and the login button was one of those changes. I've updated the script and things should by working for you now. Can you check?

thanks buddy, i will check it right now

Hi,
Some of the source code of NO-IP has changed and the login button was one of those changes. I've updated the script and things should by working for you now. Can you check?

It works! Thanks!


Adding validations, and disposable feature.

Summary

Adding .net-like using helper.

Adding code coverage for using.

Adding .net-like IDisposable interface.
More testing coverage.

@bit1ngest0r This is ready for review.


TextDocument.getText doesn't return the latest text

Version 1.15.0-insider
Commit 5a01cdc0c8ee4d807b80e891b9faa95a913650b0
Date 2017-07-19T22:11:38.360Z
Shell 1.6.6
Renderer 56.0.2924.87
Node 7.4.0
Architecture x64

I'm going to add unit tests to my vscode extension.
In this case, the expected behavior is, (using | to represent cursor)

open a text editor with empty text document
insert text to the document
set cursor te|xt
execute command "toggle bold"
change content into **te|xt**

And this is my test file
import ...

let testMdFile = path.join(__dirname, '..', '..', 'test', 'test.md');

function testCommand(command: string, lines: string[], selection: Selection, expLines: string[], expSelection: Selection) {
    console.log('selection before', toString(selection));
    return vscode.workspace.openTextDocument(testMdFile).then(document => {
        // open a document
        return vscode.window.showTextDocument(document);
    }).then(editor => {
        // add initial text
        return editor.edit(editBuilder => {
            let fullRange = new Range(new Position(0, 0), editor.document.positionAt(editor.document.getText().length));
            editBuilder.delete(fullRange);
            editBuilder.insert(new Position(0, 0), lines.join('\n'));
        });
    }).then(b => {
        // set cursor and execute command
        window.activeTextEditor.selection = selection;
        return commands.executeCommand(command);
    }).then(() => {
        // assert
        console.log('selection after', toString(window.activeTextEditor.selection));
        console.log('selection expected', toString(expSelection));
        assert.deepEqual(window.activeTextEditor.selection, expSelection);

        assert.deepEqual(window.activeTextEditor.document.getText(), expLines.join('\n'));
    });
}

function toString(s: Selection): string {
    return `(${s.start.line}, ${s.start.character}, ${s.end.line}, ${s.end.character})`;
}

suite("Formatting (italic, bold ...).", () => {
    test("Toggle bold", done => {
        testCommand('markdown.extension.editing.toggleBold', ['text'], new Selection(0, 2, 0, 2), ['**text**'], new Selection(0, 4, 0, 4)).then(done, done);
    });
});

The output is
  Formatting (italic, bold ...).
selection before (0, 2, 0, 2)
selection after (0, 4, 0, 4)
selection expected (0, 4, 0, 4)
    1) Toggle bold
  0 passing (1s)
  1 failing
  1) Formatting (italic, bold ...). Toggle bold:
      AssertionError: 'text' deepEqual '**text**'
      + expected - actual
      -text
      +**text**

We can see that cursor did move from (0,2,0,2) to (0,4,0,4). But getText() still returned text rather than **text**
And this is a GIF showing that the "toggle bold" command is executed as expected,

Returning a promise in callback doesn't chain them, you should do following way.
return vscode.workspace.openTextDocument(testMdFile).then(document => {
    return vscode.window.showTextDocument(document).then(editor => {
        return editor.edit(editBuilder => {
        }).then(b => {
            return vscode.commands.executeCommand(command).then(() => {
            });
        });
    });
});

Thanks for your reply.
Actually, I have tried as you suggest... But it still doesn't work.
If I use
return vscode.workspace.openTextDocument(testMdFile).then(document => {
    return vscode.window.showTextDocument(document).then(editor => {
        return editor.edit(editBuilder => {
            let fullRange = new Range(new Position(0, 0), editor.document.positionAt(editor.document.getText().length));
            editBuilder.delete(fullRange);
            editBuilder.insert(new Position(0, 0), lines.join('\n'));
        }).then(b => {
            return vscode.commands.executeCommand(command).then(() => {
                assert.deepEqual(window.activeTextEditor.document.getText(), expLines.join('\n'));
                assert.deepEqual(window.activeTextEditor.selection, expSelection);
            });
        });
    });
});

getText still got text rather than **text**
  Formatting (italic, bold ...).
    1) Toggle bold
  0 passing (1s)
  1 failing
  1) Formatting (italic, bold ...). Toggle bold:
      AssertionError: 'text' deepEqual '**text**'
      + expected - actual
      -text
      +**text**

啊，我在知乎上看到过你，用中文好了。你说的写法确实更有道理，我之前也确实是这么写的，但是仍然不行。。。后来那是参照了 DonJayamanne/pythonVSCode 的 extension.format.test.ts。
但是现在两种写法都不行

Could you please have a look at this https://github.com/neilsustc/vscode-markdown/tree/unittest?
Just need to clone>open with vscode>debug "launch tests" , and you can have a quick look. 🙏

This is because you didn't await for the completion of command markdown.extension.editing.toggleBold. So the thenable chain doesn't ensure that the command finishes execution when promise resolves.

Many Thanks ❤


Remove needless const declarations.

As per a previous discussion with @tannergooding , the code style is being modified to not use the const modifier in places where pointers and references are not being used. Its a simple task however we have it in many locations right now, so may take a little while to actually fully do.

An approach I think we should take to this is just changing these redundant modifiers as we go rather than doing it all in a single PR.

Hey, @RubyNova I would like to take this on. Can you please elaborate what needs to be done, and the starting point, which file should I edit first.

Hey @jatin69 , so to clarify this a little for you:
When I first began writing this codebase, I had no idea what I was doing with C++ and got a tad overzealous with const correctness. As a result, the codebase has a few instances where methods were defined as such:
void someMethod(const int someParameter)

Naturally, the const modifier being applied to the parameter here makes no sense as we are passing it in by value. We don't actually care if that parameter is modified or not as it doesn't affect anything externally anyway. This is not to be confused with marking methods as const, like so:
void someMethod() const;

This snippet is perfectly fine as it is being used to indicate calling the method will not mutate the object in question - it is effectively a different use case, and should be left alone.
As for where to start...well if I remember correctly this issue is kind of spread across all the source files currently in master, so you could branch off from there and investigate. If you want to follow our branch naming scheme, a good name for your branch might be misc/const-correctness-cleanup as an example.
If you have any further questions feel free to ask! :smiley:

@RubyNova alright. I'll start the investigation. I'll first update a few files and get them reviewed before moving on to all files.

@RubyNova
Should function pointers be const? I think they should be. This will explicitly tell that the pointer value will not change.

Could you clarify which function pointer(s) you are referring to?

In file NovelBasicInteractionRect.cpp,
const std::function<void(NovelInteractionObject*)> notifyHasBeenDrawnObject
This should remain const in my opinion. What do you think?

I remember having problems with attempting that. I'm unsure if said problems are still around, but I think this is going to be a case of "try it and see" because it's been a while since I was in that part of the codebase, but if it could be const then it would be nicer for sure.

Also, These should not be const I think. const here does not imply anything useful. Thoughts?
NovelLayeringService::~NovelLayeringService() {
  for (const auto& value : _layerMatrix) {
    for (const auto& renderObj : value.second) {
      delete renderObj;
    }
  }
}

That's more just futureproofing after multiple discussions. There's talks of reworking this to rely on smart pointers and such anyway, so I wouldn't bother modifying that specific snippet, personally.


chore: automate deletion of old models and groups

Related Issues/PRs

#184805
What changes are proposed in this pull request?
Clean saved models every test runs, using embedded dates to leave new models
How is this patch tested?
Ran tests

[ ] I have written tests (not required for typo or doc fix) and confirmed the proposed feature/bug-fix/change works.

Does this PR change any dependencies?

[x ] No. You can skip this section.
[ ] Yes. Make sure the dependencies are resolved correctly, and list changes here.

Does this PR add a new feature? If so, have you added samples on website?

[ x] No. You can skip this section.
[ ] Yes. Make sure you have added samples following below steps.

Find the corresponding markdown file for your new feature in website/docs/documentation folder.
Make sure you choose the correct class estimators/transformers and namespace.
Follow the pattern in markdown file and add another section for your new API, including pyspark, scala (and .NET potentially) samples.
Make sure the DocTable points to correct API link.
Navigate to website folder, and run yarn run start to make sure the website renders correctly.
Don't forget to add <!--pytest-codeblocks:cont--> before each python code blocks to enable auto-tests for python samples.
Make sure the WebsiteSamplesTests job pass in the pipeline.

/azp run

/azp run

Codecov Report

Merging #1718 (2433325) into master (2a7a67b) will decrease coverage by 77.00%.
The diff coverage is n/a.

 Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

/azp run

/azp run


tailscale setup migration?

(if it's already implemented feel free to RTFM me, I did not find info)
Why
I have a tailscale setup with a bunch of machines and I'd like to migrate the whole lot to headscale (freshly installed on a Debian server, but not configured yet) without setting it up on every node again.
Description
Something like "export tailscale config" (there's a CSV export but it does not contain keys, maybe from CLI?) and then "import it into headscale"

We are friends of Tailscale and like to think we compliment each other, we think its out of scope to provide something like a migration tool as we do not want to encourage people to stop using Tailscale.


FEATURE: improve visibility of AI usage in LLM page

Also, properly set LLM when swapping persona and ensure PM
recipients are properly updated
New UI is:

And:

This means you can operate with 100% tethered personas and the LLM selector is not required.
Cleans up UI so it is clearer

will sort out system test tomorrow.


Gstreamer appsrc

Hi,
I'm currently using modified librispeech models and I wanted to do some online experiments with kaldinnet2onlinedecoder but when starting the worker, Gstreamer appsrc end up with an error I can't figure out how to fix :
File "kaldigstserver/worker.py", line 368, in <module>
    main()
  File "kaldigstserver/worker.py", line 348, in main
    decoder_pipeline = DecoderPipeline2(conf)
  File "/vol/experiments/fboye/kaldi-gstreamer-server/kaldigstserver/decoder2.py", line 24, in __init__
    self.create_pipeline(conf)
  File "/vol/experiments/fboye/kaldi-gstreamer-server/kaldigstserver/decoder2.py", line 60, in create_pipeline
    self.appsrc.set_property("is-live", True)
AttributeError: 'NoneType' object has no attribute 'set_property'

I thought it was a problem with Gstreamer plugins or with the online tools from Kaldi but it doesn't seem to be the case. All the tests worked and all decoder properties were set.
Do you have any idea how to fix that?
Thank you in advance.
P.S : post-precessor and full-post-processor properties are only used with the GMM-model decoder, am I right?

This usually happens when the plugin is not found. You can set the path by something like:
export GST_PLUGIN_PATH=~/tools/gst-kaldi-nnet2-online/src

P.S. post-processor and full-post-processor properties can be used with nnet2 models.

Thank your for your answer!
I already set KALDI_ROOT et GST_PLUGIN_PATH and gst-inspect-1.0 kaldinnet2onlinedecoder printed me the properties properly. I tried different approaches to set manually is-live to TRUE but it didn't work.
For 'post-processor' and 'full-processor', the properties aren't found (nor when looking at the list properties for kaldinnet2onlinedecode)...
I used sample_english_nnet2.yaml with modified parameters by the way!

Can you post your yaml file?

Sure, here it is (in plain text file I couldn't post a yaml file?) : sample_librispeech.txt. I only changed the models and values from sample_english_nnet2.yaml
The commented lines gave me several errors

Can you post the file that causes the problem, without commenting out lines? There are many commented lines in the file you gave.

BTW, post-processor and full-post-processor are not properties of the decoder, but rather global properties. The corresponding lines should not be intented, just like in the original sample_english_nnet2.yaml. But it's hard to tell from your commented file is this what you did.

I need to see the exact file that causes you the problem.

Hi,
I sent you an email.
I've redone all the install (kaldi, gst-kaldi-nnet2-online and kaldi-gstreamer-server), checked the packages dependencies and launched the command line (without modifications of any files) :
python kaldigstserver/worker.py -u ws://localhost:8888/worker/ws/speech -c sample_english_nnet2.yaml
I end up with the same error I described in my first post. The master is okay, kaldinnet2onlinedecoder is found but the worker doesn't start.

Turned out it was caused by the 'appsrc' GStreamer element not being found. Probably caused by broken install of GStreamer or something similar.


fix: remove ds_store file

Fixes #14
Proposed Changes

Remove DS.store file.

This is an easy update. Please approve.


[SPM] Cannot add version 1.3.1 as a Package Dependency

Describe the bug
Adding https://github.com/WalletConnect/web3modal-swift as a Package Dependency is unable to be resolved.

Showing All Issues
Failed to resolve dependencies Dependencies could not be resolved because no versions of 'wallet-mobile-sdk' match the requirement 1.0.0..<2.0.0 and root depends on 'web3modal-swift' 1.3.1..<2.0.0.
'web3modal-swift' >= 1.3.1 practically depends on 'wallet-mobile-sdk' 1.0.0..<2.0.0 because no versions of 'web3modal-swift' match the requirement 1.3.2..<2.0.0 and 'web3modal-swift' 1.3.1 depends on 'wallet-mobile-sdk' 1.0.0..<2.0.0.

SDK Version

Client: Swift
Version: 1.3.1

To Reproduce
Steps to reproduce the behavior:

File Add Package Dependency
Enter this repo's url https://github.com/WalletConnect/web3modal-swift
Tap Add Package
See Error

hey @mooshee, does your app depend on wallet-mobile-sdk independently from web3modal?

No

Just created a clean project to try to reproduce and I didn't experience any issues at all.
maybe try to remove derived data and clean your project.

I've tried doing a clean and package reset. I'll try the fresh project and report back.

@llbartekll Looks good now. Thanks!


Attributes lost from Dict child classes

When I implement my own class that inherits from Dict, I get an error accessing the attributes of the nested items. That is, anything besides the top node does not contain my class' attributes.
The class:
from six import string_types
from collections import Iterable
from addict import Dict

def isiterable(arg):
    # copied from
    # https://stackoverflow.com/questions/1055360/how-to-tell-a-variable-is-iterable-but-not-a-string/44328500#44328500
    return isinstance(arg, Iterable) and not isinstance(arg, string_types)

class IndexedDict(Dict):
    """
    Allows setting and getting keys/values by passing in the key index.

    We cannot use an integer key to set a value to None. The workaround is to
    use a slice:
    >>> d = IndexedDict()
    >>> d['a'] = 0
    >>> d.iloc(slice(1), [None])
    >>> d
    {'a': None}
    """
    def _get_with_int(self, key, value):
        return self[key]

    def _get_with_slice(self, key, value):
        return [self[k] for k in key]

    def _set_with_int(self, key, value):
        self[key] = value

    def _set_with_slice(self, key, value):
        for k, v in zip(key, value):
            self[k] = v

    def iloc(self, i, value=None):
        # throws IndexError if the key has not already been set
        keys = list(self.keys())[i]
        method_dict = {(True, False): self._get_with_int,
                       (True, True): self._get_with_slice,
                       (False, False): self._set_with_int,
                       (False, True): self._set_with_slice}

        method = method_dict[(value is None,
                              isiterable(keys) and isiterable(value))]
        return method(keys, value)

The errors come up when I do:
d = IndexedDict()
d['a']['b']['c'] = 5
type(d['a']['b']) # returns Dict
# set value of 'c' key to 1
# tries to call iloc() on Dict
d['c'].iloc(0, 1)

I think this can be fixed by changing __getitem__ to return a instance of self.__class__ instead of Dict.
def __getitem__(self, name):
    if name not in self:
        return self.__class__(__parent=self, __key=name)
    return super().__getitem__(name)

or maybe instead of using the if/then statement in __getitem__ we could just add a __missing__ method and get rid of __getitem__ altogether. Besides the if/then statement, as it stands Dict's __getitem__ is the same as dict.__getitem__
def __missing__(self, name):
    return self.__class__(__parent=self, __key=name)

instead of
def __getitem__(self, name):
    if name not in self:
        return Dict(__parent=self, __key=name)
    return super().__getitem__(name)

To be consistent, I'd also change any references to super(Dict, self) to super() e.g. in __deepcopy__.

Hey @MisterVladimir! Thanks for contributing.
I'm happy to support your usecase and your suggestions look sound. Would you be open to trying these changes in a pull request and see if the tests pass? You can remove superfluous test cases, if any.

Thanks @mewwts. I'm working on it now, namely, on getting test_addict.Tests to run the same tests on Dict, or a child class. Expect a pull request this evening.

I'm a little new to Travis, tests, etc., so apologies for polluting the commit history with incremental bug fixes, but it looks like tests pass on my machine with "python setup.py test" and with Travis. The second commit I made, which changed the test script, built with Python 3.6+ but not Python 2, probably because I used "super()" instead of the old "super(cls, obj)". That's been remedied.

No worries @MisterVladimir, I've wrestled countless times with that!
I've gone ahead and merged #102.

I've released 2.2.0 as well https://github.com/mewwts/addict/releases/tag/v2.2.0.
Cheers!

I've just ran into several problems with this change, which caused breaking changes with my project, though it is understandable why they occurred after reading this issue. I just wanted to say that existing projects could break due to various assumptions we used to have before this change, so perhaps this might be a heads-up for others who also found their projects breaking from today onwards.

Firstly, I have a base class which extends Dict (let's call it BaseClass) and some subclasses, like as follows:
from addict import Dict

class BaseStrategy(Dict):
	name = None

	def __init__(self):
		super(BaseStrategy, self).__init__()

		# This line breaks because the class variable
		# name is the same as the instance variable name.
		self.name = self.__class__.name

class ExampleStrategy(BaseStrategy):
	name = 'EXAMPLE'

example = ExampleStrategy()

The error we get:
Traceback (most recent call last):
  File "poc/setattr.py", line 19, in <module>
    example = ExampleStrategy()
  File "poc/setattr.py", line 12, in __init__
    self.name = self.__class__.name
  File "/usr/local/lib/python2.7/dist-packages/addict/addict.py", line 27, in __setattr__
    "'{0}' is read-only".format(name))
AttributeError: 'Dict' object attribute 'name' is read-only

As I found out, this is bad practice so I was okay to rectify my code accordingly and rename the class variable to be a different name from my member variable.

Secondly, perhaps slightly more concerning, is that the new __missing__ method creates a new instance without passing the correct arguments to __init__. This could break projects which assumes that addict returns {} for missing attributes for subclasses of Dict, or if we assume that the parent class is addict.Dict and therefore we can just initialise member variables through chaining:
from addict import Dict

class CustomDict(Dict):
	def __init__(self, value):
		super(CustomDict, self).__init__()

		# The problem is that I do not initialize self.my as a Dict(),
		# since I previously assumed that this would work.
		self.my.custom.value = value

class CustomDict2(Dict):
	def __init__(self, value, **kwargs):
		super(CustomDict2, self).__init__()
		self.my.custom.value = value

class CustomDict3(Dict):
	def __init__(self, value=None, **kwargs):
		super(CustomDict3, self).__init__()
		self.my.custom.value = value

# Try running any of the following lines on its own
# custom_dict = CustomDict('hello world')
# custom_dict2 = CustomDict2('hello world')
# custom_dict3 = CustomDict3('hello world')

# The correct fix would be to initialize self.my as a Dict() first.

# This also breaks when I try to access a non-existent attribute:
class CustomDict4(Dict):
	def __init__(self, value, **kwargs):
		super(CustomDict4, self).__init__()
		self.value = value

custom_dict4 = CustomDict4(1)
assert not custom_dict4.missing_attr

# The correct fix would be to do:
# assert 'missing_attr' not in custom_dict4

Some of the errors:
Traceback (most recent call last):
  File "poc/getitem.py", line 26, in <module>
    custom_dict = CustomDict('hello world')
  File "poc/getitem.py", line 10, in __init__
    self.my.custom.value = value
  File "/usr/local/lib/python2.7/dist-packages/addict/addict.py", line 62, in __getattr__
    return self.__getitem__(item)
  File "/usr/local/lib/python2.7/dist-packages/addict/addict.py", line 65, in __missing__
    return self.__class__(__parent=self, __key=name)
TypeError: __init__() got an unexpected keyword argument '__key'

Traceback (most recent call last):
  File "poc/getitem.py", line 39, in <module>
    assert not custom_dict4.missing_attr
  File "/usr/local/lib/python2.7/dist-packages/addict/addict.py", line 62, in __getattr__
    return self.__getitem__(item)
  File "/usr/local/lib/python2.7/dist-packages/addict/addict.py", line 65, in __missing__
    return self.__class__(__parent=self, __key=name)
TypeError: __init__() takes exactly 2 arguments (1 given)

Although this was a minor version bump, it may have caused quite drastic inconvenience for others as well. I'm not really sure what recommendation to give, but just wanted to mention this.

Thank you so much @irvinlim for pointing this out!
First of all, sorry for breaking this for you. I was unaware of the implications this would have for clients inheriting from addict.Dict and the test cases did not cover the issue. Please pin addict to a version that works for you while we figure out what's sensible here.
If I understand correctly, @MisterVladimir's test-case is so that for a subclass of  addict.Dict, getting a missing variable on the subclass should return an instance of that subclass.
Before this change setting a missing attribute on the subclass would return a addict.Dict instance.This  was the functionality you were depending on @irvinlim.
The problem arises when the subclass defines its own __init__ function with custom parameters. The following line will try to call __init__ on the class without knowing its parameters.
https://github.com/mewwts/addict/blob/cf29d47eab24a7d935cb6841d13eac686dcd6e86/addict/addict.py#L64-L65
As far as I can see it's not possible to support both these usecases at the same time. On the one hand, I feel like what we just merged is the more expected functionality, however inheriting from addict and accepting custom parameters in __init__ will break if you don't implement __missing__ on your own. So it's kind of a halfway there solution.
On the other hand, this probably breaks the appeal of inheriting from addict in config classes and the like.
I'm torn, but I'm open to reverting. I need to think some more about it.
Do you guys have any other thoughts on this @irvinlim and @MisterVladimir?

I can see where @MisterVladimir is coming from with the fix, as he expects the descendant nodes to be the same class as the object itself, meanwhile I expected my Dict subclasses to inherit the dot-notation elegance from addict.
Actually, I don't think there's a right answer to the behaviour when subclassing addict.Dict, because I suppose you wrote this library to allow elegant quick dot-notation access, and not meant as a base class of sorts. Because you did not design for this, I suppose any breaking changes might be reasonable.
My only gripe would be that error messages are now much more cryptic, due to the fact that users unaware of the internal implementation would see messages like this:
TypeError: __init__() got an unexpected keyword argument '__key'

when in fact the error is due to a missing attribute or method, perhaps due to a typo. In fact, a KeyError thrown might be more meaningful, but it doesn't help that it's still another backwards-incompatible change for those expected it to return a new, empty Dict().
I am perfectly okay with this change actually, because the breaking changes didn't take me very long to fix, but I just wonder how many others may be depending on the same functionality as I did.

Thanks for the lively discussion, everyone. I agree that the most concerning issue is

the new '''missing''' method creates a new instance without passing the correct arguments to '''init'''.

Basically v2.2.0 throws an error if the child class' __init__ has "regular" arguments and sets keyword arguments to the default values. Would this be too ugly a fix for your problem, @irvinlim's?
def __missing__(self, key):
    try:
        return self.__class__(__parent=self, __key=name)
    except: #maybe limit to TypeError and RecursionError
        return Dict(__parent=self, __key=name)

I never realized one would want to implement an init in child classes. I see a Dict subclass still as a data structure whose instances don't reach back and modify parent nodes. Specifically, my use case is to store info extracted from a zip archive, whose files often have silly naming schemes. It helps to access keys via an integer index. Perhaps down the line I'd add a method for recursively writing the dict to an hdf5 file. Although I too enjoy the convenience of the dot notation -- which I preserve in my subclasses -- I'm open to better data types for storing this info. Which leads me to:

On the other hand, this probably breaks the appeal of inheriting from addict in config classes and the like.

@mewwts, would you be so kind as to link to an example? I actually need to make a config file for my own program, so a pointer would be a big help to this n00b. : )

Hey @MisterVladimir.
I thought of a config class just as something like
class Config:
  s=13
  n=12

which you can then pass around.
I'm closing this now as it doesn't seem to be a problem for more users. @irvinlim thanks for using addict and reporting this.

I'm reopening this as several users has hinted towards issues with the new implementation.

Celestia Airdrop - Claim Your Free TIA Tokens Now!

Don't Miss Out on Your Share of 60 Million $TIA Tokens!
Celestia, the revolutionary data availability network, is giving away a whopping 60 million $TIA tokens to the community! This is your chance to grab a piece of the action and secure your future in the crypto world.
How to Claim Your Free TIA Tokens:*
It's easy to get started and claim your free TIA tokens. Follow these simple steps:

Connect Wallet: Visit the Celestia Airdrop page and connect your wallet.
Claim: Click the Claim button to receive your tokens.
Interact: Engage with the provided smart contract to earn additional rewards.

Why Wait? Start Earning Today!
With Celestia, the sky's the limit. Don't let this opportunity slip through your fingers. Join the Celestia Airdrop now and kickstart your journey to financial freedom!SantoshSrinivas79, @dmitry12, @chachaxw, @PaDuckk, @gsmlg, @xiaozhongwei, @serefercelik, @amandaweston1306, @daveols, @AielloChan, @c0elha, @songjinp, @n6wbb6, @kkharji, @Evalir, @TommyKim85, @hlhdaiaaii, @timoa, @vincentbello, @ykliuiev


Samples step by step

In step by step tutorial, step 4.IV and 5 aren't working due to outdated command lines:
@ApiModelPropertyOptional()
@ApiUseTag

Fixed.
The decorators' name have been updated:
@ApiModelPropertyOptional()  --> @ApiModelPropertyOptional()
@ApiUseTag() --> @ApiUseTag()
for more details check https://github.com/nestjs/swagger#migration-from-v3


Remove misleading battery voltage and battery level - correction

Displaying either the battery voltage or the battery level is misleading.
Regarding the battery level: if the result of the calculation is 50% the only use for that value is if the user knows when the battery was first installed since the desire is to attempt to anticipate when the battery will need replacement. For example if the level is 50% and the installation date was known to be 100 days ago the implication is that the battery will last another 100 days. This is totally wrong since the depletion of the battery is not linear  as discussed at https://github.com/ruuvi/ruuvitag_fw/wiki/FAQ:-battery .
Even reporting the current battery voltage leads the user to do come to the same incorrect conclusion.
A much better, and in fact the only predictor of the nearing of end-of-life for the battery is unexpected resets which should be displayed as presented in issue #17

Perhaps even including the above discussion in the read.md might warn users who try to determine when the battery should be changed based on current voltage.

OOPS Is see there is already a link in  the read.md


paths in CLI stop worked

This command:
mjml resources/views/emails/layouts/mjml/order.blade.mjml -o resources/views/emails/layouts/order.blade.php
is working in 3.1.1.
but is not working in 3.2.0.
This file "order.blade.php" is not outputed in "resources/views/emails/layouts/" it is outputed in root folder although path is set...

Hi @fico7489
We are on this already cf : #501 and we should release the fix soon cf #503
Sorry about that !

It should be fixed in 3.2.1 Please try again and tell me if it's ok now :)


support reading/writing strings from holdings

Good day,
thanks for pull req, I'll review it in a couple of days.
I see one unwrap: result = std::str::from_utf8(&val[..vl]).unwrap().to_string();
Seems to be unsafe. Should it return ErrorKind instead?

I'm sorry: i said "I'll fix it later"... but I forget about it.
I'll fix it and submit the pull request again.

released in 0.5.3
but no strings support in nostd mode.


Bug: IndexAliases does not assign aliases on index creation

Does this issue relate to a new feature or an existing bug?

[X] Bug

What version of Serilog.Sinks.Elasticsearch is affected?  Please list the related NuGet package.
8.4.1
What is the target framework and operating system? See target frameworks & net standard matrix.

[X] 4.6.x

Please describe the current behavior?
Setting IndexAliases does nothing -> the created index in elasticsearch does not have any aliases assigned (in settings the rollover_aliases and name in "lifecycle" are empty) and trying to assign a lifetime policy with rollover behavior will also throw an error that aliases are missing.
Please describe the expected behavior?
Aliases should be working
If the current behavior is a bug, please provide the steps to reproduce the issue and if possible a minimal demo of the problem
`var logLevelSwitch = new LoggingLevelSwitch();
logLevelSwitch.MinimumLevel = (LogEventLevel)elasticSearchMinimumLogLevel;
ElasticLogger = new LoggerConfiguration().MinimumLevel.ControlledBy(logLevelSwitch)
	.WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri(elasticSearchUrl))
	{
		AutoRegisterTemplate = true,
		AutoRegisterTemplateVersion = AutoRegisterTemplateVersion.ESv7,
		OverwriteTemplate = true,
		DetectElasticsearchVersion = false,
		IndexFormat = "testIndex-{0:yyyy.MM.dd}",
		IndexAliases = new[] {"testIndex"},
		CustomFormatter =  new ElasticsearchJsonFormatter(false, null, true,
			null, null, false, false, false),
		Period = TimeSpan.FromSeconds(2),
		BatchPostingLimit = 50,
		ModifyConnectionSettings = x => x.BasicAuthentication(username, password),
		EmitEventFailure = EmitEventFailureHandling.WriteToSelfLog,
	})
	.CreateLogger();

}`

@driml Did you find a solution to this? I still seem to be having the same issue in 8.4.1

No, never found a solution.

So Aliases are not working, how could I open this issue? or should a new one be created?


Fix docs bug on  sft_trainer.mdx

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Swift SIL and Optimizer: improvements, refactoring and bug fixes

This PR contains a set of refactorings to simplify the code, improvements, bug fixes and new APIs.
For example, a rework of the PassContext.
For details, see the commit messages.

@swift-ci benchmark

@swift-ci test

@swift-ci benchmark


Speed up semivamiogram regularization with numpy arrays

It is done and at this moment we achieved the highest possible speed. With tqdm package it is possible to track progress so there is no fear that program is frozen. This issue will be tackled later on, with parallel processing.


Sidekiq: "Exception occurred: can't alloc thread"

Hi,
An error occurs every now and then while the Sidekiq is running. What could be the reason? I use the Digital Ocean and:
Ubuntu 18.04.1 LTS
rails - 5.1.7
redis - 4.1.0
sidekiq - 5.2.7
sidekiq: 3 queues, 3 processes
redis_version: 4.0.9
Digital Ocean: CPU Optimized Droplets 8 GB, 4 vCPUs, 50 GB
From sidekiq.log:
E, [2019-07-20T22:53:30.849239 #9392] ERROR -- : Exception occurred: can't alloc thread
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/instrumental_agent-2.1.0/lib/instrumental/agent.rb:392:in `new'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/instrumental_agent-2.1.0/lib/instrumental/agent.rb:392:in `start_connection_worker'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/instrumental_agent-2.1.0/lib/instrumental/agent.rb:298:in `send_command'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/instrumental_agent-2.1.0/lib/instrumental/agent.rb:97:in `gauge'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/metrician-0.1.0/lib/metrician.rb:75:in `gauge'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/metrician-0.1.0/lib/metrician/reporters/redis.rb:20:in `ensure in call_with_metrician_time'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/metrician-0.1.0/lib/metrician/reporters/redis.rb:23:in `call_with_metrician_time'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/redis-4.1.0/lib/redis/client.rb:212:in `block in call_with_timeout'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/redis-4.1.0/lib/redis/client.rb:285:in `with_socket_timeout'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/redis-4.1.0/lib/redis/client.rb:211:in `call_with_timeout'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/redis-4.1.0/lib/redis.rb:1179:in `block in _bpop'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/redis-4.1.0/lib/redis.rb:50:in `block in synchronize'
/home/martio/.rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/monitor.rb:230:in `mon_synchronize'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/redis-4.1.0/lib/redis.rb:50:in `synchronize'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/redis-4.1.0/lib/redis.rb:1176:in `_bpop'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/redis-4.1.0/lib/redis.rb:1221:in `brpop'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/fetch.rb:36:in `block in retrieve_work'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq.rb:97:in `block in redis'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/connection_pool-2.2.2/lib/connection_pool.rb:65:in `block (2 levels) in with'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/connection_pool-2.2.2/lib/connection_pool.rb:64:in `handle_interrupt'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/connection_pool-2.2.2/lib/connection_pool.rb:64:in `block in with'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/connection_pool-2.2.2/lib/connection_pool.rb:61:in `handle_interrupt'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/connection_pool-2.2.2/lib/connection_pool.rb:61:in `with'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq.rb:94:in `redis'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/fetch.rb:36:in `retrieve_work'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:89:in `get_one'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:99:in `fetch'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:82:in `process_one'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:71:in `run'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:16:in `watchdog'
/home/xxx/apps/xxx/shared/bundle/ruby/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:25:in `block in safe_thread'

Is this sidekiq pro, by chance?
I found a bit here: https://github.com/mperham/sidekiq/issues/4029
The baseline issue is something that is being relied on to do connection management is probably closing a connection earlier than the agent expects, but there's not enough information in that log for me to say what.


Cannot perform operation for Unspecified type.

I added SettingsScreen.kt from the repo to my project and launched it as a preview
I get this error
 java.lang.IllegalArgumentException: Cannot perform operation for Unspecified type.
           at androidx.compose.ui.unit.TextUnitKt.checkArithmetic--R2X_6o(TextUnit.kt:344)
           at com.jamal.composeprefs3.ui.GroupHeaderKt.GroupHeader-iJQMabo(GroupHeader.kt:74)

Got the same issue; it fails on this line in the GroupHeader:
fontSize = LocalTextStyle.current.fontSize.times(FontSizeMultiplier)

It looks like LocalTextStyle.current.fontSize has a problem because in checkArithmetic, isUnspecified is true?


Minor refactoring

Hey this is an awesome lib! thanks for sharing your work.
I added some minor refactors to your code and wanted to create a pull request for it but for some reason pull requests are denied on your repo.
Would you be willing to allow PRs or is this something you're not really interested in?
let me know :)

I'm not sure why you are facing this issue, because I just merged some of the PRs opened by some other devs.
Can you share me the actual error/problem?

I'm not sure why you are facing this issue, because I just merged some of the PRs opened by some other devs. Can you share me the actual error/problem?

Nevermind, i managed, sorry about that. Im going to close this issue.
again.. sorry


[kserve] Add option to use internal minio for model files

As discussed on slack, I believe these changes should enable us to use the internal minio S3 service to pull the model files when running the kserve tests in the VPN.

/test rhoai-light kserve quick

/test rhoai-light kserve quick

/test rhoai-light kserve quick

/test rhoai-light kserve quick

test passed, thanks @dagrayvid for the original veersion of the PR :)


[GF Profile] Make sure canonical style name checks are strongly enforced

FontBakery GF Profile should be clear with users about https://github.com/google/fonts/pull/1908#issuecomment-507675621 so that my manual intervention is not needed.

We do have an Instance names check which will produce a FAIL if any instance is named incorrectly.
I was just seeing if we could wing it.

@m4rc1e originally said:

rsheeter, it seems we have a slight issue with instance names. This font has "Extra Bold" when it should be "ExtraBold" etc. Will this cause any problems on your end? if not, we can merge once we've fixed the issues below.

to which @davelab6 replied:

Yes, it causes problems with systems that look up styles based on style name. Needs to be fixed.

The FontBakery check that informed @m4rc1e about the "ExtraBold" issue was com.google.fonts/check/varfont_instance_names:

I believe that what Dave is asking for here is just that the wording of the log messages should more explicitely make it clear that FAILing the check means that real problems will surface in some of the internal Google Fonts systems that deal with the fonts by looking up their style name / instance name.


Pre-built Oracle 18.4.0-xe failed on start-up

Hi,
I've just crated a 18.4.0 xe Oracle container following the instructions provided here.
When I start ut the database with docker run --name oracle18xe -p 51521:1521 -p 55500:5500 oracle/database:18.4.0-xe I get an error as follows:

sed: can't read /etc/oratab: No such file or directory
/opt/oracle/runOracle.sh: line 194: /etc/init.d/oracle-xe-18c: No such file or directory
grep: /etc/oratab: No such file or directory
/opt/oracle/checkDBStatus.sh: line 18: oraenv: No such file or directory
#####################################
########### E R R O R ###############
DATABASE SETUP WAS NOT SUCCESSFUL!
Please check output for further info!
########### E R R O R ###############
#####################################
The following output is now a tail of the alert.log:
tail: cannot open '/opt/oracle/diag/rdbms///trace/alert*.log' for reading: No such file or directory
tail: no files remaining

Any ideas how to fix this issue?
Running macOS 11.2.3 with docker engine 20.10.5
Thank you :)

Hi again, I build the image once again and it seems to work well now. The previous image was ~340MB in size. I assume the download of the binary went wrong. The new image is 3.5GB and works well.
I wished the database was 350MB in size and was working :P

Glad you got it working. :)


ci: separate development and production env

Fixes #260
Description
In the mention issue, I had proposed to have an .env.production and a .env.development instead of just a single .env file for both development + testing and production purposes. Since many collaborators and contributors are actively developing the project, I decided to keep .env.development as .env.
Change Log:

I have installed a new npm package named cross-env. It helps us to set the node environment inside npm scripts which can then be used to load equivalent configs for development or production, based on the environment. (View Screenshot for reference)
/config/dotenv.js has been updated that checks the node environment and loads equivalent .env file
readme.md in /backend has been updated with instructions for the .env setup for production and development separately

Screenshots

Addition Information (if any)
I will be writing the tests once this PR gets approved. Let me know if I can use the npm package named chai for testing.

The checks failed because there was no .env file in the pushed repository and that totally makes sense.
If there is no .env file, the build process should abort.

@singhayushh You can use chai for testing. No problem with that.
If the checks don't pass, it will be difficult to verify each time if the checks are passing for some errors from the tests or because of the missing .env. I think we should comment out that portion now that it should not check for a .env file in development and throw an error. What do you say?

Done!

@singhayushh Please proceed with the testing.


Encoding .png images to base64 produces several times more data than expected

Godot version: 3.0.6
OS: Windows 10 Pro
Issue description:
I tried encoding several image objects to base64 using Marshalls.variant_to_base64(), and what I found is that the encoding produces several times as as much data as it should on a blank file.
Tested it with a 91 KB image and it resulted in a 186 KB output, 2x the size of the image.
Tested it with a 134 KB image and it resulted in a 470 KB output, 3.5x the size of the image.
The images i was trying to encode are .png files, so I'm not entirely sure whether that plays a role in the file size or whether the output sizes are different for .jpg or other image files, however I ran the same .png files through an online image-to-base64 encoding website (https://www.base64-image.de/) and it produced outputs of 123 KB and 185 KB respectively, both of which corresponding to average estimates for the encoding of about 4/3 times the size of the image. I also tried to get the PoolByteArray raw data from the image object, thinking that it's perhaps encoding non-necessary information together with the image data, but it produced the exact same results.
Steps to reproduce:
Copy this code in a blank project GDScript, add any image you want encoded in base64 to the project and copy its path to the code.
var file = File.new()
var image = Image.new()
image.load("insert any image file path here for encoding")
file.open("temp-file.txt", File.WRITE)
file.store_line(Marshalls.variant_to_base64(image))
file.close()

This is expected. Image.load decodes source .png to the OpenGL texture and Marshalls.variant_to_base64 encodes this texture (and other Image metadata).
If you want to encode source .png, load it as File instead of Image.

You are right, I have updated my code to replace Image with File. To get all the data from the image i replaced the store_line parameter with Marshalls.variant_to_base64(image.get_buffer(image.get_len())) and it resulted in a 121 KB file which is exactly 4/3 of the original image size. Thanks for the help.

@Rriik So it is fixed?

Nevermind, I changed file.store_line() to file.store_string() and it seems to be working without error now.

Closing as solved then :)


Plugin restart doesn't follow log-uri tasks

Description
With change introduced by #3085, we can now specify an external binary to execute to handle logs. When a container is restarted by restart plugin, this is lost.
If any binary:// URI is specified for logs, this is lost when the container restart. Is there any way to keep that alive ?
Steps to reproduce the issue:

Set a task via container.NewTask(ctx, cio.LogURI(uri))
Set restart.WithStatus(containerd.Running) on container
Kill the container main process

Describe the results you received:
The shim task is lost. The restart plugin support an extra argument (WithLogPath) to handle logs, but it only support log file and tasks support lot more things. (fifo, binary, etc.)
Describe the results you expected:
There should be a way to restart the same task (keep the URI and not specifying a file log path) and use this URI inside restart module ?

@maxux could you mind to provide the reproduce code for this issue? Thanks

	opts := []oci.SpecOpts{
		oci.WithDefaultSpecForPlatform("linux/amd64"),
		oci.WithRootFSPath(rootfs),
		oci.WithEnv(env),
		oci.WithHostResolvconf,
		removeRunMount(),
		withNetworkNamespace(netns),
	}

	container, err := client.NewContainer(
		ctx,
		cname,
		containerd.WithNewSpec(opts...),
		restart.WithStatus(containerd.Running),
	)

	uri, err := url.Parse("binary:///bin/external-logs")
	if err != nil {
		return err
	}

	task, err := container.NewTask(ctx, cio.LogURI(uri))
	if err != nil {
		return err
	}

	if err := task.start(ctx); err != nil {
		return err
	}

Then kill the process inside the container, process will restart but external-logs will be lost. Ideally, restart plugin should also restart tasks attached.

Will file pr to fix it. Thanks for the reporting

ping @maxux sorry for late reply. The pr #4315 is ready and waiting for review.


Add CDC Monkeypox scraper

Add a scraper to pull in the cumulative Monkeypox cases reported by the CDC.
This ingests the Monkeypox data in the existing Covid schema/infrastructure without any distinction (beyond the variable name) which is something I think we'll want to clean up if we decide to further invest in Monkeypox data (see my comments below) but until then I'm not sure it's worth the effort.

Do we need to add this to the ACTIVE_SCRAPERS list?

Ah, right 🤦 thanks!


[ISSUE][CLOSED] [Enhance] Display broken package names in case that SPIN-OBS generates "build error"

 Issue by geunsik-lim
Friday Jul 06, 2018 at 06:12 GMT
Originally opened as https://github.sec.samsung.net/STAR/TAOS-CI/issues/107

We need to display broken package names in case that SPIN-OBS generates "build error".
Currently, We just inform developers of website address via e-mail.

Example

http://<IP_ADDRESS>/project/monitor/Tizen:5.0:TAOS?blocked=0&building=0&dispatching=0&finished=0&scheduled=0&signing=0&succeeded=0
HTML data:

  kaldi-ondeviceASR

  failed

:octocat: cibot: Thank you for posting issue #131. The person in charge will reply soon.

 Comment by git-bot-sec
Friday Jul 06, 2018 at 06:12 GMT

:octocat: cibot: Thank you for posting issue #107. The person in charge will reply soon.

 Comment by geunsik-lim
Friday Jul 06, 2018 at 06:59 GMT

Approach:

$ curl -o obs-packages.txt http://<IP_ADDRESS>/project/monitor/Tizen:5.0:TAOS?blocked=0&building=0&dispatching=0&finished=0&scheduled=0&signing=0&succeeded=0
$ cat ./obs-packages.txt  | grep "failed	"
    failed

$ cat ./obs-packages.txt | grep "failed" | cut -d """ -f 4
/package/live_build_log/Tizen:5.0:TAOS/ros-kinetic-joint-state-publisher/standard/x86_64

 Comment by geunsik-lim
Monday Jul 09, 2018 at 01:37 GMT

Improved as following:
# send e-mail if a build error happens.
function email_on_failure(){
    # fecth package list
    report_file=`curl -o obs-packages.txt http://<IP_ADDRESS>/project/monitor/Tizen:5.0:TAOS?blocked=0&building=0&dispatching=0&finished=0&scheduled=0&signing=0&succeeded=0`
    if [[ $? == 0 ]]; then
        echo "Successfully downloaded"
    else
        echo "Ooops. no downloaded."
    fi
    pack_list=`cat ./obs-packages.txt | grep "failed</a></td>" | cut -d "\"" -f 4`

    # make subject and message to send email
    email_subject="[aaci] Urgent: SPIN-OBS server generates build error"

    email_message="Hi,\n\n \
    Ooops. The  below $1 packages generates a build error.\n\n \
    [Package list]:\n $pack_list\n\n \
    For more details,\n visit ${OBS_SERVER}\n and ${ISSUE_WEB}.\n\n \
    If you want to see a package name in more detail,\n \
    please visit ${OBS_SERVER_ERR_PKGS}.\n\n \
    $(date)\n from aaci.mooo.com\n"

    # send email with mailx command
    echo -e "$email_message" | $email_cmd -v -s "$email_subject" $email_recipient
}


Update chainlist

[x]  https://github.com/Koniverse/SubWallet-ChainList/issues/310

[x] https://github.com/Koniverse/SubWallet-ChainList/issues/311

[x] https://github.com/Koniverse/SubWallet-ChainList/issues/307

[ ] Check to group Avail token on Avail network and Ethereum network

[x] https://github.com/Koniverse/SubWallet-ChainList/issues/312

[x] https://github.com/Koniverse/SubWallet-ChainList/issues/314

[x] https://github.com/Koniverse/SubWallet-ChainList/issues/313

[ ] Do not turn on TON token although TON network is turn on in case upgrade version

mETH holder : 0xfB8CDa18643ACfe16A302dc41083FAd7fd7e2296 -> wrong balance
RARI chain : RPC connect failed

Version test : http://<IP_ADDRESS>:8900/s/A3sA2b2F6tLD4Hf

[ ] Update logo for token : ETH on  Scroll network and RARI Chain
Actual :

Expect : https://www.figma.com/design/z9s6aLTLoUdjMwoXLyWcPz/01.SubWallet-Project-Logo?node-id=142-50&t=CaTF5DcIPxp3V6G5-4

[ ] Re-check to group POL on Polygon network and Ethereum
Actual :

[ ] Error when navigate to explorer on zkVerify Testnet
Actual : https://testnet-explorer.zkverify.io/address/xpiC3ms21jEx7CgnARyiWX3hP7utgdM6XNXazF6M7w4KEhTWR
Expect :  https://testnet-explorer.zkverify.io/transfer/account/xpiC3ms21jEx7CgnARyiWX3hP7utgdM6XNXazF6M7w4KEhTWR

Version test : http://<IP_ADDRESS>:8900/s/gX4ArR8kRm2kXm6
Validation passed in case :

Install/Update version
https://github.com/Koniverse/SubWallet-ChainList/issues/310

https://github.com/Koniverse/SubWallet-ChainList/issues/311 => Hide mETH token

https://github.com/Koniverse/SubWallet-ChainList/issues/307

Check to group Avail token on Avail network and Ethereum network

https://github.com/Koniverse/SubWallet-ChainList/issues/312

https://github.com/Koniverse/SubWallet-ChainList/issues/314

https://github.com/Koniverse/SubWallet-ChainList/issues/313

Do not turn on TON token although TON network is turn on in case upgrade version

Update priceID for AJUN token : https://www.coingecko.com/en/coins/ajuna-network


Support for Proxy Configuration in kagglehub

I noticed that the KaggleAPI library supports the use of a proxy by specifying it in the kaggle.json file. Since kagglehub also reads the configuration from the same file, I would like to check if there are any plans to support proxy configuration in kagglehub as well.
If so, I am willing to implement this feature myself. If the kagglehub maintainers are open to this addition, I would appreciate it if someone could review my pull request once it is submitted.

Thanks for the quick response,
I understand that setting the proxy via environment variables is a possible solution. However, there are a few concerns with this approach:
Setting HTTP_PROXY and HTTPS_PROXY environment variables globally affects all libraries and applications running in the same environment, those environment variables are too general and  can affect other libraries or applications that also rely on these environment variables for network requests.
It can be confusing when using both kagglehub and kaggle CLI as the latter uses either kaggle.json or KAGGLE_PROXY environment variables instead of the mentioned HTTP_PROXY/HTTPS_PROXY.

@neshdev I did find KAGGLE_API_ENDPOINT environment variable in the codebase which can act as the proxy in KaggleAPI code.
as far as I understand, currently it is used only for testing but is not documented anywhere, is it safe to use in production?

@Lostam - its unlikely that the HTTP_PROXY/HTTPS_PROXY variables will only used by a subset of processes / resources. It won't make much sense to use the proxy only for the kagglehub library. Most likely, if a proxy is needed, its needed for other things as well.
The kagglehub library is separate from the kaggle cli. There are no dependencies between the two libraries. We will not be following the conventions set by the cli library. The purpose of this library is different than the cli.
Any use of the KAGGLE_API_ENDPOINT other than the way it used is untested for production loads. What do you plan on doing with the variable?