Invalid generated code for variable array global variable

Brief Description
I would  like to generate bindings for Gammu, a C library that is freely available. when trying to do so it gives an error saying it does not find the gammu.lib file nor the headers. I suspect I am not putting them at the right place. where should I put the files so that cppsharp sees them ?
OS: Windows
here is a sample of my generator
` class MyGenerator : ILibrary
{
    private const string GammuRootPath = @"C:\Program Files\Gammu 1.38.1";
    private const string GammuIncludePath = GammuRootPath + @"\include\";
    private const string GammuLibPath = GammuRootPath + @"\lib\";

    public void Postprocess(Driver driver, ASTContext ctx)
    {
        //throw new NotImplementedException();
    }

    public void Preprocess(Driver driver, ASTContext ctx)
    {
        //throw new NotImplementedException();
    }

    public void Setup(Driver driver)
    {

        PrepareDriver(driver);

    }

    private static void PrepareDriver(Driver driver)
    {
        var drOptions = driver.Options;
        drOptions.GeneratorKind = GeneratorKind.CSharp;
        //drOptions.CompileCode = true;
        drOptions.OutputDir = "GammuSharp";
        drOptions.LibraryName = "libGammuSharp";

        drOptions.Libraries.Add("Gammu.lib");

        drOptions.OutputInteropIncludes = true;
        drOptions.GenerateInternalImports = true;
        //drOptions.Target = CompilationTarget.StaticLibrary;
        drOptions.Platform = TargetPlatform.Windows;
        drOptions.VsVersion = VisualStudioVersion.VS2012;
        drOptions.UseHeaderDirectories = true;

        //drOptions.OutputNamespace = "GammuSharp";

        // header files to include

        //drOptions.Headers.Add(GammuIncludePath + "gammu.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-wap.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-unicode.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-types.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-statemachine.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-smsd.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-settings.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-security.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-ringtone.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-nokia.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-misc.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-message.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-memory.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-limits.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-keys.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-inifile.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-info.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-file.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-error.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-debug.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-datetime.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-config.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-category.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-callback.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-call.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-calendar.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-bitmap.h");
        //drOptions.Headers.Add(GammuIncludePath + "gammu-backup.h");

    }

    public void SetupPasses(Driver driver)
    {

    }
}

`

Options.Headers only contains the names of headers, you need to add their containing directory to IncludeDirs. You may use our own bindings as an example: https://github.com/mono/CppSharp/blob/master/src/CppParser/ParserGen/ParserGen.cs#L59 .

Hello @ddobrev ,
I have been able to successfully generate bindings for the library mentioned above.
however I have also used the   //driver options to compile code drOptions.CompileCode = true;
but when it is compiling, CppSharp is failing to compile and gives 2 errors : ```
C:\Users\Kevin\documents\visual studio 2015\Projects\GammuCppSharp\GammuCppSharp.CLI\bin\Debug\GammuSharp\GammuSharp.cs(2519,15) : error CS0208: Impossible de prendre l'adresse, d'obtenir la taille ou de déclarer un pointeur vers un type managé ('GSMCodeName')
C:\Users\Kevin\documents\visual studio 2015\Projects\GammuCppSharp\GammuCppSharp.CLI\bin\Debug\GammuSharp\GammuSharp.cs(2529,15) : error CS0208: Impossible de prendre l'adresse, d'obtenir la taille ou de déclarer un pointeur vers un type managé ('GSMCodeName')
C:\Users\Kevin\documents\visual studio 2015\Projects\GammuCppSharp\GammuCppSharp.CLI\bin\Debug\GammuSharp\GammuSharp.cs(17677,37) : error CS0111: Le type 'corecrt_search' définit déjà un membre appelé 'Lfind' avec les mêmes types de paramètre
C:\Users\Kevin\documents\visual studio 2015\Projects\GammuCppSharp\GammuCppSharp.CLI\bin\Debug\GammuSharp\GammuSharp.cs(17688,37) : error CS0111: Le type 'corecrt_search' définit déjà un membre appelé 'Lsearch' avec les mêmes types de paramètre
any help regarding this ???

Seems like there is some generation bug when wrapping your library. Can you share your source code with us or try to send the minimal source code that reproduces the issue?

`using System;
using System.IO;
using CppSharp;
using CppSharp.Generators;
using CppSharp.Parser;
using CppSharp.Parser.AST;
namespace GammuCppSharp
{
/// <summary>
/// main generator for Gammu bindings in C#
/// </summary>
class MyGenerator : ILibrary
{

    private const string GammuRootPath = @"C:\Program Files\Gammu 1.38.1";
    private const string GammuIncludePath = GammuRootPath + @"\include\gammu\";
    private const string GammuLibPath = GammuRootPath + @"\lib\";
    private const string _theotherPath = @"C:\gammu-1.38.1\libgammu";
    private const string _theotherincludepath = @"C:\gammu-1.38.1\include";

    public void Setup(Driver driver)
    {

        PrepareDriver(driver);

    }

    private void PrepareDriver(Driver driver)
    {

        //parse options configuration
        var myparseOptions = driver.ParserOptions;

        //adding include dirs
        myparseOptions.AddIncludeDirs(GammuIncludePath);
        //myparseOptions.AddIncludeDirs(_theotherincludepath);
        myparseOptions.AddIncludeDirs(@"C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/include/*");
        myparseOptions.AddIncludeDirs(@"C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/atlmfc/include");
        myparseOptions.AddIncludeDirs(@"C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/ucrt");
        myparseOptions.AddIncludeDirs(@"C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/um");
        myparseOptions.AddIncludeDirs(@"C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/shared");
        myparseOptions.AddIncludeDirs(@"C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/winrt");
        myparseOptions.AddIncludeDirs(@"C:/Program Files (x86)/Windows Kits/NETFXSDK/4.6/Include/um");

       // myparseOptions.AddIncludeDirs(GammuIncludePath);
        myparseOptions.AddLibraryDirs(GammuLibPath);
        myparseOptions.Abi = CppSharp.Parser.AST.CppAbi.Microsoft;
        myparseOptions.LibraryFile = "Gammu.lib";
       // myparseOptions.LanguageVersion = LanguageVersion.C;
        myparseOptions.SetupIncludes();
        myparseOptions.MicrosoftMode = true;

        //driveroptions configuration
        var drOptions = driver.Options;
        drOptions.GeneratorKind = GeneratorKind.CSharp;

        drOptions.OutputDir = "GammuSharp";
        drOptions.LibraryName = "GammuSharp";

        drOptions.Libraries.Add("Gammu.lib");
        drOptions.CompileCode = true;
        drOptions.MarshalCharAsManagedChar = true;
        drOptions.GenerateSupportFiles = true;
        //drOptions.DryRun = true;

        drOptions.Platform = TargetPlatform.Windows;
        drOptions.VsVersion = VisualStudioVersion.Latest;
        //drOptions.UseHeaderDirectories = true;
        //drOptions.Verbose = true;
        drOptions.OutputNamespace = "GammuSharp";

        //header files to include

        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-wap.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-unicode.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-types.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-statemachine.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-smsd.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-settings.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-security.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-ringtone.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-nokia.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-misc.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-message.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-memory.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-limits.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-keys.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-inifile.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-info.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-file.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-error.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-debug.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-datetime.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-config.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-category.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-callback.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-call.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-calendar.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-bitmap.h");
        //myparseOptions.AddSourceFiles(GammuIncludePath + "gammu-backup.h");

        drOptions.Headers.Add(GammuIncludePath + "gammu.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-wap.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-unicode.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-types.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-statemachine.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-smsd.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-settings.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-security.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-ringtone.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-nokia.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-misc.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-message.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-memory.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-limits.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-keys.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-inifile.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-info.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-file.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-error.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-debug.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-datetime.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-config.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-category.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-callback.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-call.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-calendar.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-bitmap.h");
        drOptions.Headers.Add(GammuIncludePath + "gammu-backup.h");

        //driver.Setup();
        //driver.ParseCode();
        //driver.ParseLibraries();
        //driver.ProcessCode();
        //driver.CompileCode(drOptions.MainModule);

    }

    static string GetSourceDirectory(string dir)

    {

        var directory = new DirectoryInfo(Directory.GetCurrentDirectory());

        while (directory != null)

        {

            var path = Path.Combine(directory.FullName, dir);

            if (Directory.Exists(path) &&

                Directory.Exists(Path.Combine(directory.FullName, "deps")))

                return path;

            directory = directory.Parent;

        }

        throw new Exception("Could not find build directory: " + dir);

    }
    public void SetupPasses(Driver driver)
    {

    }

    public void Preprocess(Driver driver, CppSharp.AST.ASTContext ctx)
    {
        //throw new NotImplementedException();
    }

    public void Postprocess(Driver driver, CppSharp.AST.ASTContext ctx)
    {
        //throw new NotImplementedException();
    }
}

}
`

could you open this issue ?

@ktngoykalolo if you build C++# from source code, it's relatively easy to debug yourself. Let me know if you'd like to try.

Hey Kevin, can you also paste a gist with generated file GammuSharp.cs?

it is a really long file. I have zipped the whole package with the generated file in this  : link

I mostly work from the Nuget Package. I could give it shot. I don't have a deep background on C++ or how compilers are created but why not giving it a shot ?
let me try to clone the CppSharp project.

Took a quick look, minimized test case for first failure:
struct GSM_CodeName {};
extern const GSM_CodeName GSM_Countries[];

It might be related to https://github.com/mono/CppSharp/issues/744#issuecomment-275966916.

I am on a tight deadline. what can I do to circumvent this bug ?

Try commenting the offending declarations in the header files run the generator again.

Negative. impossible to comment those declarations as they have lots of dependencies on them. I did comment them and it made things much more worse.  I suspect the issue is with the generated code itself.  maybe I could configure a post-process pass to try to resolve this issue.  maybe this is a mapping issue, what is your opinion ?

	`CS0029	Impossible de convertir implicitement le type 'GammuSharp.GSMCodeName.__Internal' en 'GammuSharp.GSMCodeName*'`

digging deeper into the errors by importing the generated bindings into another blank project

Try this:
        public void Postprocess(Driver driver, CppSharp.AST.ASTContext ctx)
        {
            foreach (var item in ctx.FindDecl<CppSharp.AST.Variable>("GSM_Networks"))
                item.GenerationKind = CppSharp.AST.GenerationKind.None;
            foreach (var item in ctx.FindDecl<CppSharp.AST.Variable>("GSM_Countries"))
                item.GenerationKind = CppSharp.AST.GenerationKind.None;
        }

Did it work?

Hello I tried it but it didn't work. From what I understand, the thing is when cppsharp generates the classes for GSM_Networks  and GSM_Countries, there is a member where instead of returning internal classes that member returns pointers, which is why it is giving that error message. I managed to clear the other error message by changing myparseOptions.AddIncludeDirs to myparseOptions.AddSystemIncludeDirs

Hello I finally managed to do it!!! I took your processing code and put it in the Preprocess method! it worked !!!! bindings are working successfully !!!

@ktngoykalolo I am really glad to hear it. Still, we are going to fix the real issue as soon as time permits.

sure sure! many thanks for the support and the assist! truly appreciated! the issue can be closed once and for all.

this wrapper is completely raw, I get errors saying that it can only be used in an "unsafe context"

Have you allowed unsafe code in your project settings?

hello, Yes I did. I am digging deeper on that subject. some types have members returning pointers instead of basic value types. I will see if I can have some preprocess passes to fix those mappings.

Perhaps we miss some member to mark as unsafe. Could you please paste an example?

I will put it on pastebin, the code is quite long.

Hello, I just realized that I had to add the "unsafe" keyword to the method I was using, now I no longer have that message. but I still need to investigate those pointers and bytes types. I currently have some connectivity issues, I will try to post the code.

Great to hear that part of the issue isn't related to CppSharp.
Please post the code @ktngoykalolo , I'll take a look into them too :wink: !

here is a paste valid for a week : http://pastebin.com/QR4cSb6W , I will put another a permanent one on Onedrive

I think I have to study the code in depth to understand its structure. then I can optimize the bindings using preprocess passes and instructions.

I think I have to study the code in depth to understand its structure. then I can optimize the bindings using preprocess passes and instructions.

what is the easiest way to customize the bindings ?

@ktngoykalolo if you want to always present that pointer as the same type, use type maps. If you only want to do it for certain functions, you need a custom pass.

@ddobrev , yes you are right, I will need a custom pass where I could specify type mappings for certain functions. is there a particular manner to map constructors ? there is a  structure that is being initialized as a pointer by a specific (global) method.  I could map that using a special constructor in the wrapping code.


Netflix movie does not start

I'm submitting a ...

[x] bug report
[ ] feature request
[ ] support request

General infomration
Prerequisites

[x] Are you running the latest version?
Yes

Description
When I want to start a movie, the screen flickers for a second but then nothing happens
Steps to Reproduce

Choose any movie from netflix and play it

it should play
after some flickering, nothing has happened
Context (Environment)
Raspberry PI 3 with libreelect latest nightly build with Kodi 18, with latest nextflix plugin
Installation

[x] I installed the plugin via zip from the Releases page
[ ] I´m using the Netflix Repo
[ ] I´m using a different source (Please tell which)

Operating System

[ ] Linux (x86/x64)
[ ] OSX (x86/x64)
[ ] Windows (x86/x64)
[x] Linux (ARM)
[ ] Android

Additional informatin on the environment
Raspberry PI 3 with libreelect latest nightly build with Kodi 18, with latest nextflix plugin
Debug log
https://drive.google.com/file/d/13nQgpdRnR7w0Uj6v-BjbKGqP5IV-tGmr/view?usp=sharing
Other information
Screenshots

I have that same environment and that same bug after play nothinngs happen

Just realised that I did not provide a full debug log file. So here is the log with debugging on:
https://drive.google.com/file/d/1gQ1zT9Nu-breDsfi5SDINgUyQq4y041X/view?usp=sharing

I didn't mention before that I got to kodi 18 by upgrading my previous kodi 17 version. So with all my addons installed, a VPN and so on. This version 17 was perfectly and that was not the reason why I upgraded to 18.
So now I did a fresh install of v17 and then immediately upgraded to v18 without installing any addon except this one to play netflix.
And now this is working. So it must be because of previous installed addons.
Is that also for you the case dupohuj?
But it seems that there is no buffering of the stream at all with result that it does not play very well. In fact it is not usable as such.
I did configure caching via an advancedsettings.xml file but is looks like it is not used. This works very well for me in kodi 17 with the streaming addons like coventant.
Is that not used by this netflix addon?
Is there another way to configure caching or buffering with this addon?

@peno64 you should look for the root cause of your buffering issues. Most users don't have any issues (like me). Netflix addon uses the kodi internal 8 seconds buffer, if your network is fine, you should live without issues.

@peno64 caching is not netflix addon related,(its inputstream.adaptive / kodi), can we close this issue post?

I not upgrade to kodi 18
I just  install kodi 18 leia i will try reinstall maybe new pre release kodi 18 is show up will check it

fresh install kodi 18 on Android and Windows 7 fresh install. Video flick and don't play. Dunno what's wrong.

@iShyboy no log, no issue.


[Bug]Better Discord not work with last update (app-1.0.9001)

after installing better discord and restarting discord it doesn't start with discord and window become right half of screen &
it doesn't show top bar that have Exit,Minimize,Maximize,Hide and

It seems to be showing discord as a web site instead because I got the message saying to download the desktop version.

same to me

Same here

Same here (on archlinux)
Also the Game Activity thing in the settings seems to be missing.

yes, same thing on linux (NixOS)

Same, running on Linux here too

For me:
Normal Discord: not detected by the BBD installer on MacOS
Canary Discord: thinks it is a browser on MacOS
however BBD is working as normal for me on Windows on both Canary + Normal Discord

Downloading the Appimage installer and doing a repair fixed BetterDiscord for me.  Thanks

Thanks. Worked for me perfectly fine.


use dask builtin methods to create parquet files

Currently, in order to convert from a dask bag to a parquet file, we:

Write the bag to multiple json files
Concat all json files into 1 ndjson file
Use pyarrow to read ndjson and create a pyarrow table
Write the pyarrow table to a parquet file.

using dask's chained builtin methods as such: bag.to_dataframe().to_parquet(), can replace all this process with a single line of code.
To check:

How do the 2 processes compare in terms of time
The output of bag.to_dataframe().to_parquet() is a folder with possibly multiple parquet files inside (00.in BQ should be alte, 01.part, etc.) The GCS upload and link to BQ should be altered accordingly if used.

closed by #60


Feature request: Run rustfmt on the generated codebase

Motivation
Often I go to definition to view the windows-rs definitions and the code is quite hard to read to very long lines.  Using rustfmt would appropriately wrap long lines and make it much easier to read the windows-rs generated source code.
Drawbacks
I guess it may make diffs a little more difficult?
Rationale and alternatives

It makes it harder to read the windows-rs codebase when troubleshooting or looking at implementation details while developing

Additional context
No response

Here's a before / after example of one of the function definitions I was just looking at:
Current definition:
#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn PowerReadFriendlyName<'a, P0>(rootpowerkey: P0, schemeguid: ::core::option::Option<*const ::windows::core::GUID>, subgroupofpowersettingsguid: ::core::option::Option<*const ::windows::core::GUID>, powersettingguid: ::core::option::Option<*const ::windows::core::GUID>, buffer: ::core::option::Option<*mut u8>, buffersize: *mut u32) -> u32
where
    P0: ::std::convert::Into<super::Registry::HKEY>,
{
    #[cfg_attr(windows, link(name = "windows"))]
    extern "system" {
        fn PowerReadFriendlyName(rootpowerkey: super::Registry::HKEY, schemeguid: *const ::windows::core::GUID, subgroupofpowersettingsguid: *const ::windows::core::GUID, powersettingguid: *const ::windows::core::GUID, buffer: *mut u8, buffersize: *mut u32) -> u32;
    }
    PowerReadFriendlyName(rootpowerkey.into(), ::core::mem::transmute(schemeguid.unwrap_or(::std::ptr::null())), ::core::mem::transmute(subgroupofpowersettingsguid.unwrap_or(::std::ptr::null())), ::core::mem::transmute(powersettingguid.unwrap_or(::std::ptr::null())), ::core::mem::transmute(buffer.unwrap_or(::std::ptr::null_mut())), ::core::mem::transmute(buffersize))
}

Formatted definition:
#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_System_Registry\"`*"]
#[cfg(feature = "Win32_System_Registry")]
#[inline]
pub unsafe fn PowerReadFriendlyName<'a, P0>(
    rootpowerkey: P0,
    schemeguid: ::core::option::Option<*const ::windows::core::GUID>,
    subgroupofpowersettingsguid: ::core::option::Option<*const ::windows::core::GUID>,
    powersettingguid: ::core::option::Option<*const ::windows::core::GUID>,
    buffer: ::core::option::Option<*mut u8>,
    buffersize: *mut u32,
) -> u32
where
    P0: ::std::convert::Into<super::Registry::HKEY>,
{
    #[cfg_attr(windows, link(name = "windows"))]
    extern "system" {
        fn PowerReadFriendlyName(
            rootpowerkey: super::Registry::HKEY,
            schemeguid: *const ::windows::core::GUID,
            subgroupofpowersettingsguid: *const ::windows::core::GUID,
            powersettingguid: *const ::windows::core::GUID,
            buffer: *mut u8,
            buffersize: *mut u32,
        ) -> u32;
    }
    PowerReadFriendlyName(
        rootpowerkey.into(),
        ::core::mem::transmute(schemeguid.unwrap_or(::std::ptr::null())),
        ::core::mem::transmute(subgroupofpowersettingsguid.unwrap_or(::std::ptr::null())),
        ::core::mem::transmute(powersettingguid.unwrap_or(::std::ptr::null())),
        ::core::mem::transmute(buffer.unwrap_or(::std::ptr::null_mut())),
        ::core::mem::transmute(buffersize),
    )
}

This leads to a significant improvement in readability.

Thanks for the feedback. We do in fact run rustfmt on the generated code. We just use a custom rustfmt.toml that sets the max_width as follows:
https://github.com/microsoft/windows-rs/blob/d0ab3b55d39a525e5b9d16a994d14ec5b46c69ae/rustfmt.toml#L2
That explains the long lines. The reason we do this is because it significantly reduces the size of the resulting binary crate. This is regrettable but necessary until we find a way to further reduce the size of the crate.

Thanks for the feedback. We do in fact run rustfmt on the generated code. We just use a custom rustfmt.toml that sets the max_width as follows:
https://github.com/microsoft/windows-rs/blob/d0ab3b55d39a525e5b9d16a994d14ec5b46c69ae/rustfmt.toml#L2
That explains the long lines. The reason we do this is because it significantly reduces the size of the resulting binary crate. This is regrettable but necessary until we find a way to further reduce the size of the crate.

Thank you so much for the reply, that indeed makes sense. 😄


Prevent non-error from showing up in CI logs

Prevent CI from highlighting the following as an error, because it's not an actual error:
error: taint "node-role.kubernetes.io/control-plane" not found

/retest

/retest


Divide ANT API by JS part and native part

Currently, ANT API is composed of only C++ native code.
Functions in the native code are directly bound to JS function calls.
All the JS API functions should have code for exception handling and argument type checking.
It is because JavaScript is dynamic type language and its functions do not restrict their arguments.
As now, exception handling and argument type checking is implemented in native code.
Implementing those in C++ is very inefficient and not good for code readability.
Accordingly, I propose to divide ANT API by JS part and native part.

JS Part: function prototype, exception handling, argument type checking, making JSON string
Native Part: dbus IPC, libuv async handling

It's weakly related to Issue #22.

To-do

[ ] Resource API
[ ] Remote UI API (#104)
[ ] App API
[ ] Camera API
[ ] Sensor API
[ ] Machine Learning API
[x] Cloud API & Google Cloud Plug-in: It is already JS-only API.

According to PR #125, Dividing JS API for Remote UI API is implemented.

With #136, this issue can be resolved, so I merge this issue to #136.


Error Type 'ForwardedRef' is not assignable to type 'LegacyRef | undefined'.

Hello and thank you so much for your work !
I'm having a problem trying to install this plugin :
When adding the Menu :
const CustomMenu = forwardRef<HTMLElement, BeautifulMentionsMenuProps>(
({ open, loading, ...props }, ref) => (
<ul className="m-0 mt-6 ..." {...props} ref={ref} />
)
);
I have this error for this first ref in ref={ref} stating that "Type 'ForwardedRef' is not assignable to type 'LegacyRef | undefined'."
Would you have an idea ?
Best regards !
Julien

Hi @jumaurel. Please try to use a HTMLUListElement instead of a HTMLElement as the first generic type of forwardRef.


Render QRCode as image in HTML mime

It'd be nice to render automatically a qrcode as an image when displaying it to MIME"text/html", so that
qrcode("...")

is automatically rendered as an image in notebooks, like Pluto and Jupyter, instead of jumping through multiple hoops to save the file the disk and read it back.

Agree this would be nice. As a workaround you can use using Images; Gray.(.!qrcode("...")), which will get it to show in VSCode’s plot pane, and I imagine the other rich editors as well.


Don't declare that non-universal wheels are universal

Coverage decreased (-71.2%) to 0.0% when pulling afc37efdb5b2049b7f7441662cd665714fbd8b9d on michael-k:wheels into f99de9bf681dd7c25ed0f9dc3125324aa48955da on django-extensions:master.

Thanks !


Update README.md

add in blurb about why we are using node v9 instead of v10
fix the language of why we are using v9 node instead of v10

Coverage remained the same at 66.762% when pulling 76df6090f45a764804c2b093c69ed29de7571f7e on version-use-more-clarification into a45596a47adce73be3bb0b09831f3743ae522589 on master.


Possible to determine status of loading imagery?

We display cockpit-view animation starting at takeoff.  When a user requests the animation, we want to wait until enough of the runway is rendered before moving the camera. Is there a way to tell how much of the terrain and imagery is loaded - something we can poll, or something that returns a callback?

I won't repeat myself from the other issue, but this should be all you need: https://groups.google.com/d/msg/cesium-dev/lz_BvEmWYq0/PTc9-32Oo28J

Just to clarify, there's no official support yet, but there's a workaround in that link.


Fix file not found error with latest dotnet 6.0.2 and pack issue

@alirezanet Can you please merge this and make a new release? It fixes 2 issues I encountered:

file not found error when not publishing symbols using the latest dotnet 6.0.2 (explained here https://github.com/NuGet/Home/issues/11601#issuecomment-1054883488)
explicit and transient dependencies are not packed when adding them in AddGenerationTimeReferences if the dotnet pack command is executed with --no-build parameter

Sure thanks.

Since this change i have a problem publishing a C# CodeGen Package.
https://github.com/FabianTerhorst/coreclr-module/runs/5523504770?check_suite_focus=true
With 3.0.0 it works.

Since this change i have a problem publishing a C# CodeGen Package. https://github.com/FabianTerhorst/coreclr-module/runs/5523504770?check_suite_focus=true With 3.0.0 it works.

Yeah, Looks like this PR have added more issues, I've had a few problems too
Until we fix this, use the v3.0.0.

Sorry about that. For my nugets (using latest dotnet 6.x) it works fine.
@FabianTerhorst seems that dotnet pack fails to build properly. @alirezanet since my issue was that running pack before build was missing some dlls, maybe an extra flag SKIP_BUILD which by default would be false (so it doesn't break existing actions) would solve this?

I created a new PR with the fix https://github.com/alirezanet/publish-nuget/pull/3


The invisible character is no longer added for identical messages

It just isn't added anymore, I get the error from twitch than I cant send an identical message.

are you using the latest nightly?

are you using the latest nightly?

yes

Strange. I can't reproduce the problem. Works for me with the new character that was added last week. Just re-tested it again on current nightly based on the latest commit 30430b0

never mind, im dumb. idk why it stopped working in the first place but downloading the latest nightly version fixed it. when i re-downloaded it the first time i downloaded the installer, not the nightly.


Update arc-gateway.md

Updating the connectedmachine create command

#sign-off

In review.
The PR Review Team is reviewing your PR. As part of this process, we might make minor changes.
Don't make any commits during this review. When we finish, we'll tag the PR creator in a comment if we find issues we can't address.
#label:"review-in-progress"
#assign:@denrea


Add a new custom resource to manage the argocd-notifications-cm

Is your feature request related to a problem? Please describe.
Currently, Argo CD Operator supports Notifications as Beta. One of the primary reasons for this is, Argo CD Operator does not manage the configuration(templates, triggers, services, subscriptions e.t.c.,.) of the the argocd-notifications-cm.
Triggers, Templates, Services and Subscriptions can be so huge at times that it creates a bad user experience if they are added to the Argo CD CR and managed by the Argo CD Reconciler of the Argo CD Operator.
Describe the solution you'd like

It is better to create a new CR - NotificationsConfiguration that can be used by the Users to update the their custom templates, triggers e.t.c.,.
A new reconciler will watch this CR to update the argocd-notifications-cm.
argocd-notifications-cm should be created with default triggers, templates e.t.c.,. OOTB.

Additional context
Sample NotificationsConfiguration resource
apiVersion: argoproj.io/v1alpha1
kind: NotificationsConfiguration
metadata:
 name: default-notifications-configuration
spec:
 triggers:
  trigger.on-sync-status-unknown: |
    - when: app.status.sync.status == 'Unknown'
      send: [my-custom-template]
 templates:
  template.my-custom-template: |
    message: |
      Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.

Sorry for replying on a close issue. But does this feature also work with extremely large created argocd notifications configmaps? We have a situation where we needed to do a server side apply of the configmap because it became large. Does the shift to CRD's still allow us for those large configmaps?


Remove cordova-plugin-compat android dependency

cordova-plugin-compat is deprecated and is included by default since cordova-android 6.3.0
I think it's safe to remove it as an Android dependency because the projects that still need it can still add it as their dependency, rather than make it a transitive dependency of cordova-plugin-qrscanner.

Thanks @vially!

this needs to be reverted!


onnx split op import

Description
ONNX split operator supports equal and variable splits and MXNet supports only equal splits of a tensor.
Modified operator to support only "equal" splits and enabled test cases.
#11555
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[ ] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant JIRA issue created (except PRs with tiny changes)
[ ] Changes are complete (i.e. I finished coding on this PR)
[ ] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[ ] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
Check the API doc at http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[ ] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[ ] Feature1, tests, (and when applicable, API doc)
[ ] Feature2, tests, (and when applicable, API doc)

Comments

If this change is a backward incompatible change, why must this change be made.
Interesting edge cases to note here

@Roshrini would be great if the issue description can be updated to not include PR template that is not used, and check the boxes for the relevant checklist items. Thanks!


about pretrain model

thank you for answering my previous question ,you code is great.but i don't have the pretrain model ,could you give me the pretrain model .my email is<EMAIL_ADDRESS>

Hi, all the pre-trained models and weights can be downloaded in this repo. https://github.com/noahzn/Lite-Mono#kitti

I am now closing this issue due to no response.


Added bicep and azd for sample

This pull request includes significant changes to the project's Azure deployment configurations and development environment setup. The changes primarily involve the addition of a new Azure Pipelines workflow, modifications to the GitHub Actions workflow for Azure deployment, and updates to the development container configuration.
Azure Deployment Configuration:

.azdo/pipelines/azure-dev.yml: A new Azure Pipelines workflow has been added. This workflow is triggered when commits are pushed to the mainline branches (main or master). It sets up an Ubuntu VM, installs the Azure Developer CLI (azd), and runs tasks to provision infrastructure and deploy the application using azd.

GitHub Actions Workflow:

.github/workflows/azure-dev.yml: The GitHub Actions workflow for Azure deployment has been modified. It now includes a workflow dispatch trigger and a push trigger for the mainline branches (main or master). The workflow sets up permissions for deploying with secretless Azure federated credentials, installs azd, logs in to Azure using either federated or client credentials, and runs tasks to provision infrastructure and deploy the application using azd.

Development Environment Configuration:

.devcontainer/devcontainer.json: The development container configuration has been updated. The container now uses the "Azure Developer CLI" image and includes additional VSCode extensions related to Azure development. The container also features Docker-in-Docker and the latest version of the Azure Developer CLI (azd).

@codebytes @pamela @chris Any chance this can be merged today or tomorrow?


Combine api calls with date and rename api calls

@Ali-Razmjoo : hello again,
I saw that most of the api work is done from todo and also just 2 of them is left.
I would like to work on it ,what does combine api calls with date mean? could you clarify the logic of both ,combin api calls with data and rename api calls.
Also is rename api calls someway related to REST conventions? I have also created a ticket for that.
Waiting for your reply.

fixed in https://github.com/zdresearch/OWASP-Honeypot/pull/37


Coffee always starts at 5 minutes in 2.19

Describe the bug
Coffee used to start at the "stop coffee after" setting, but now, regardless of what I set to it starts at 5 minutes and I have to click it a few times.
To Reproduce
Steps to reproduce the behavior:

Set "Stop Coffee After" to 2 hours
Click on the tile
Note that it starts at 5 minutes, and needs to be clicked a few times to get to 2 hours

Expected behavior
The start timeout is what is configured in the settings
Device (please complete the following information):

Device: Pixel
Android version: 13

Additional context
I'm not sure if the old behavior (e.g. starting at 2 hours when configured) was intended behavior or not, but I found it very helpful. I usually start coffee in a context where I want the screen to be on for a while

Thanks for creating this! Very useful and simple app.

Which quick tile do you use to start Coffee? There are two and one is a toggle (on <=> off) and one cycles through the timeouts.

Ah, I didn't realize there was more than one! Thanks @mueller-ma. Closing this issue, though I will note that the distinction wasn't clear to me—may confuse other users too.

Before you add the tiles they are called "Toggle" and "Next timeout". More space for information isn't there, so I guess this situation cannot be much improved.


SharpKml.Dom.Document' does not have a default constructor on HoloLens(UWP)

I am trying to read in a kml file for a HoloLens application. I am using the MRTKv2 with Unity.
My solution with SharpKml works fine in the player of Unity. But on the HoloLens an exception is thrown.
string fileURI = Path.Combine(Application.streamingAssetsPath, "lszh.kml");
var stream = File.Open(fileURI, FileMode.Open);
KmlFile file = KmlFile.Load(stream);

When the stream is loaded I get the following exception: System.ArgumentException: Type 'SharpKml.Dom.Document' does not have a default constructor Parameter name: type occurred
I suspect it has to do with the interaction between SharpKml and UWP.
Any ideas about what the problem might be?

I'm not entirely sure if I'm honest - Document does have a default constructor as far as I can tell.
Do you have a full stack trace that could help find out a little bit more please - I'm guessing theres a slight difference in how reflection works, but I need a bit more information unfortunately (I don't have access to a HoloLens to try myself)

OK, I don't know if this helps, but it looks like if you use UWP in release mode then reflection can be a bit more limited. Since the library does make use of a lot of reflection to create the elements (e.g. KmlFactory), I wonder if you need to create a rd.xml file, like in this SO question:
https://stackoverflow.com/questions/42185670/activator-createinstancetype-throws-exception
I'll try and create a UWP project and investigate further.

Unfortunately, I'm unable to reproduce this locally. I've built a UWP app and ran it in Release mode without the debugger attached and it still manages to load the document:
    // https://developers.google.com/kml/documentation/kmlreference#document
    const string Kml = @"<?xml version='1.0' encoding='UTF-8'?>
<kml xmlns='http://www.opengis.net/kml/2.2'>
<Document>
  <name>Document.kml</name>
  <open>1</open>
  <Style id='exampleStyleDocument'>
    <LabelStyle>
      <color>ff0000cc</color>
    </LabelStyle>
  </Style>
  <Placemark>
    <name>Document Feature 1</name>
    <styleUrl>#exampleStyleDocument</styleUrl>
    <Point>
      <coordinates>-122.371,37.816,0</coordinates>
    </Point>
  </Placemark>
  <Placemark>
    <name>Document Feature 2</name>
    <styleUrl>#exampleStyleDocument</styleUrl>
    <Point>
      <coordinates>-122.370,37.817,0</coordinates>
    </Point>
  </Placemark>
</Document>
</kml>";
    var file = KmlFile.Load(new StringReader(Kml));

If you're able to get a stack trace I can try and investigate further.

First of all I want to thank you for your interest.
If it is not due to uwp, something with the build process of unity + mrtkv2 could cause problems
Here the stack trace:
System.ArgumentException: Type 'SharpKml.Dom.Document' does not have a default constructor
Parameter name: type
  at System.Linq.Expressions.Expression.New (System.Type type) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory.ConstructType (System.Type type) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory.RegisterType (SharpKml.Base.XmlComponent xml, System.Type type) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory.RegisterElement (System.Type type) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory.RegisterAssembly (System.Reflection.Assembly assembly) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory..cctor () [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.Parser.CreateElement () [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.Parser.Parse (System.Xml.XmlReader reader) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.Parser.Parse (System.IO.TextReader input, System.Boolean namespaces) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Engine.KmlFile.Parse (System.IO.TextReader input) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Engine.KmlFile.Load (System.IO.TextReader reader) [0x00000] in <00000000000000000000000000000000>:0
  at AirportGenerator.Start () [0x00000] in <00000000000000000000000000000000>:0

Microsoft also provides a Hololens Emulator, so you don't need the Hololens for development.
HoloLens 2: Install the tools
If I can help in any way, let me know.

Thanks for the extra information. The stack trace seems to show the area of code I linked to earlier, looking like some of the reflection information is being stripped. I downloaded the emulator and ran the UWP application in release build without the debugger attached but it still worked fine. However, you mention that you’re using Unity, which does try to do some unused code stripping.
Unfortunately, I have no experience with Unity and, although I managed to get all the tools installed and ran one of the tutorials, I have to concede my limitations and am completely lost with how to write anything that would reproduce the issue.
Could I ask you try a link.xml file as per the previously linked Unity docs – if that fixes it then it looks like I can add a Preserve attribute to the actual assembly that would have the same affect and remove the need for you to include that file. Alternatively, I can create a pre-release package that has the attribute applied if you’d like to try using that instead, however, I don’t have the ability to test if it works.
Let me know which option works for you

Thanks a lot for your help. I've got it working now.
You were right about the code stripping. I had added SharpKml.Core to link.xml and got another exception which led me to this article.
Exception:
System.NullReferenceException: Object reference not set to an instance of an object.
  at System.Linq.Expressions.Interpreter.LightLambda.MakeRunDelegateCtor (System.Type delegateType) [0x00000] in <00000000000000000000000000000000>:0
  at System.Linq.Expressions.Interpreter.LightLambda.GetRunDelegateCtor (System.Type delegateType) [0x00000] in <00000000000000000000000000000000>:0
  at System.Linq.Expressions.Interpreter.LightLambda.MakeDelegate (System.Type delegateType) [0x00000] in <00000000000000000000000000000000>:0
  at System.Linq.Expressions.Interpreter.LightDelegateCreator.CreateDelegate (System.Runtime.CompilerServices.IStrongBox[] closure) [0x00000] in <00000000000000000000000000000000>:0
  at System.Linq.Expressions.Interpreter.LightDelegateCreator.CreateDelegate () [0x00000] in <00000000000000000000000000000000>:0
  at System.Linq.Expressions.Expression`1[TDelegate].Compile (System.Boolean preferInterpretation) [0x00000] in <00000000000000000000000000000000>:0
  at System.Linq.Expressions.Expression`1[TDelegate].Compile () [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory.ConstructType (System.Type type) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory.RegisterType (SharpKml.Base.XmlComponent xml, System.Type type) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory.RegisterElement (System.Type type) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory.RegisterAssembly (System.Reflection.Assembly assembly) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.KmlFactory..cctor () [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.Parser.CreateElement () [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.Parser.Parse (System.Xml.XmlReader reader) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Base.Parser.Parse (System.IO.TextReader input, System.Boolean namespaces) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Engine.KmlFile.Parse (System.IO.TextReader input) [0x00000] in <00000000000000000000000000000000>:0
  at SharpKml.Engine.KmlFile.Load (System.IO.TextReader reader) [0x00000] in <00000000000000000000000000000000>:0
  at AirportGenerator.Start () [0x00000] in <00000000000000000000000000000000>:0

Apparently System.Linq.Expressions.Interpreter.LightLambda gets also stripped away.
Solution
Include the following link.xml file in the project:
<linker>
  <assembly fullname="SharpKml.Core" preserve="all"/>
  <assembly fullname="System.Core">
    <type fullname="System.Linq.Expressions.Interpreter.LightLambda" preserve="all" />
  </assembly>
</linker>

Let me know how I can get you a coffee.

Thank you so much for testing that out and coming back with the fix!
I've added some documentation here and linked to it from the getting started page.


Need to support a two pass run mode to properly deal with tests run against annotation processor output

The current approach that attempts to reload classes generated from annotation processing is producing class loading issues, so we need to use a two pass approach that allows the test source to be passed to an annotation processor via the SourceProcessor SPI, and then run the tests against the resulting updated tests.

This issue is now outdated, closing it.


Update general documentation for new api

Update all our general (non-sdk specific) documentation pages to use the new api:
Getting Started

[x] Python Quick Start: https://github.com/rerun-io/rerun/pull/3620
[x] Rust Quick Start #3630
[x] Logging Data in Python: https://github.com/rerun-io/rerun/pull/3620
[x] Logging Data in Rust #3630

How-To Guides

[ ] Using Rerun in Notebooks
[ ] using Rerun with ROS 2

Concepts

[x] Entities and Components: https://github.com/rerun-io/rerun/pull/3627
[x] The Entity Path Hierarchy: https://github.com/rerun-io/rerun/pull/3627
[x] Spaces and Transforms: https://github.com/rerun-io/rerun/pull/3627
[x] Events and Timelines: https://github.com/rerun-io/rerun/pull/3627
[x] Annotation Context: https://github.com/rerun-io/rerun/pull/3627

Running notes that we can fill in while porting all examples etc: https://www.notion.so/rerunio/0-9-migration-notes-2b3debe9947f47a38428267b2da4cc1b?pvs=4
We'll then use those notes to create the migration guide

Blocked by

https://github.com/rerun-io/rerun/issues/3236

there's a bunch of follow-up comments on the concepts


API Design Guide for Event-based APIs

I'd like to add a section to the AsyncAPI Website that covers API Design best practices. Here are over 15 examples of API Design Guidelines. Most of them are heavily based on RESTful APIs.
I'd like to collect and capture design guidelines for event/message/stream-based APIs. We can then submit the finalized guide as an example for Arnaud Laudet, Kin Lane, APIOps Cycles, and APIM vendors to include when API organizations create event-based APIs.

https://www.apiopscycles.com/rest-api-design-guide
http://apistylebook.com/design/guidelines/
http://design.apievangelist.com/

This is a great initiative, Emmelyn! Another guideline worth mentioning is the Zalando one: https://opensource.zalando.com/restful-api-guidelines/#events. And it includes events!

@lifewingmate Hi Emmelyn, where are we standing with this one. Do you still want to continue this one? It sounds like pretty good idea. Need a hand?

Requirements of what consumers would need in a design guide covering event or message based APIs. Will need to work with experts and approach in a protocol agnostic way. Provide best practices for event driven APIs to help increase adoption in general. For example, enterprises want to know how to scale the design approach for event driven APIs.


Training on Custom Tinier-YOLO Dataset

I've created a custom dataset by following the original YOLO guidelines here:
https://github.com/AlexeyAB/darknet#how-to-train-to-detect-your-custom-objects
It is unclear to me how to train on the Tinier Yolo architecture to produce the necessary .npy files. Is this possible at all? If so what are some good resources to help me proceed?
Thanks!

I've created a custom dataset by following the original YOLO guidelines here:
https://github.com/AlexeyAB/darknet#how-to-train-to-detect-your-custom-objects
It is unclear to me how to train on the Tinier Yolo architecture to produce the necessary .npy files. Is this possible at all? If so what are some good resources to help me proceed?
Thanks!

Hey！I have the same question!


Uncaught TypeError: t.map is not a function eventDrops.js:15

Hello Again,
I am having issues when pulling in my data from a local server. I am trying to figure out if the issues is from the way I am structuring the array or whether it is an issue within the eventDrop.js file (which is where the error is showing). As I am new to D3 I am guessing the former. I am bringing the data from python and thus have to convert from UNIX to javascript Date object.
myData = {
    "sensor1": [
<PHONE_NUMBER>000,
<PHONE_NUMBER>000,
<PHONE_NUMBER>000,
<PHONE_NUMBER>000,
<PHONE_NUMBER>000,
<PHONE_NUMBER>000,
<PHONE_NUMBER>000,
<PHONE_NUMBER>000,
<PHONE_NUMBER>000,
<PHONE_NUMBER>000
    ]
}

my Code
// function that converts UNIX to Date object
function mapDates(value){
    output = new Date(value);
    return output;
}
var testdata = [];
var newdates = [];
d3.json("./datatest.json", function(data)
{

    var count = Object.keys(data)
    for (i in count)
    {
        testdata.push(data[count[i]].map(mapDates))
        newdates.push({count:testdata})
        console.log(newdates)

    }
    var eventDropsChart = d3.chart.eventDrops()
    var canvas = d3.select("body").selectAll("p")
    d3.select('body')
    .datum(newdates)
    .call(eventDropsChart);

})`

the error: Uncaught TypeError: t.map is not a function eventDrops.js:15
Please help! Thanks

Update: I simplified the script and hard coded the data and still getting the same error. Is it because I am converting UNIX to a Date object? This is line 15 of the eventDrop.js file that is throwing the error: .domain(data.map((d) => d.name))
Here's my code
`var harddata = {"sensor1": [new Date(1458068401000), new Date(1458068401000), new Date(1458068403000), new Date(1458068404000), new Date(1458068405000), new Date(1458068406000), new Date(1458068411000), new Date(1458068413000), new Date(1458068415000), new Date(1458068416000)]};
    d3.select("body").selectAll("p")

    var eventDropsChart = d3.chart.eventDrops()
    .eventColor('blue')
    .width(1800);

    d3.select('body')
      .datum(harddata)
      .call(eventDropsChart);`

You need to pass an array of data, each of them containing a name and an array of dates:
var hardData = [{
    name: 'sensor1',
    dates: [
        new Date(1458068401000),
        new Date(1458068401000),
        new Date(1458068403000),
        new Date(1458068404000),
        new Date(1458068405000),
        new Date(1458068406000),
        new Date(1458068411000),
        new Date(1458068413000),
        new Date(1458068415000),
        new Date(1458068416000),
    ],
}];

var eventDropsChart = d3.chart.eventDrops()
    .eventColor('blue')
    .width(1800);

d3.select('body')
    .datum(hardData)
    .call(eventDropsChart);

You also have a useless call with selectAll('p'). :)
Note: for better code formatting, use   ` js (without spaces between back quotes).

You even don't need call to the new Date() constructor: it also works with just some timestamps.

Thank you for the prompt response and being patient with my amateur request.
Works like a charm

what I do wrong?
this cod was running correctly but suddenly shows error
`
resnderStudent(){
return this.state.ProductList.map(Products=>

<Body style={{ flex:1, flexDirection: 'row' }}>

<Icon type="FontAwesome" name="minus-circle" style={{fontSize:30,color:'blue'}}/>

<Text style={{ minWidth:20, textAlign:'center',alignSelf: 'center'}}>
{this.props.ShowCount[Products.Id]}

<Icon type="FontAwesome" name='plus-circle' style={{fontSize:30,color:'blue'}}/>

{Products.Name}
توضیحات کوتاه در باره محصول ...

<Thumbnail square size={50} source={{ uri: Products.Photo }} />

);
}
`
it say's TypeError: this.state.ProductList.map is not a function but it was work
how can I solve this problem?


Access Violation Exception in wintab_WTOpen(...)

Godot version:
Using tag: 3.3.1-stable, commit 4da4277dc9ff253ec9b23af1355d6f8bcefff5ca
OS/device including version:
Windows 10 20H2 (OS Build 19042.985)
Huion Tablet driver v<IP_ADDRESS>2
Huion Table Model GT-133
Issue description:
Occasionally, the Huion driver freaks out and I get a sigsegv deep inside the Huion wintab32.dll replacement.  Unfortunately, this outright crashes Godot before it can do anything, even display output on the screen (since it occurs before the hWnd is shown) or write to the Godot console (in debug builds).
sigsegv occurs in platform/windows/os_windows.cpp at line 3705 (at commit 4da4277dc9ff253ec9b23af1355d6f8bcefff5ca) on the wintab_WTOpen() call.

Steps to reproduce:
This problem is VERY intermittent and rare, but it does occur once every 20-30 days for me when developing a Godot game.
Now that I know what is happening, I can stop it from occurring by either rebooting or by power-cycling the tablet.
Minimal reproduction project:
N/A
The Good, The Bad, And The Ugly
I know this crash isn't Godot's fault.  It's a sigsegv.  Godot couldn't handle it if wanted to (without complicated signal handling which I dunno would even work on all the platforms that Godot supports).  So I don't see a way to actually prevent it from occurring.
Now that brings me to my next point:  What if I have a customer/client who has Godot and has this issue?  Even knowing that this is a problem is hard because it occurs before logging/window creation, inside of main.cpp::Main::setup().  There's the option --table_driver=<name> and the project setting display/window/tablet_driver.  But it doesn't support a "none" or "don't care" as far as I can tell.
What I propose is we add a don't-care option which will skip tablet driver initialization (the call to set_current_tablet_driver() that occurs in main.cpp) so that this can at least be used as a debugging option in the field for weird unexpected crashes in Godot.
I'm willing to write a pull request for this but before I do I want to make sure this is the Godot Way, and if not, how should it be handled?

CC @bruvzg

Add option to disable it is probably a good idea, and should be easy to do.
4.x:
diff --git a/main/main.cpp b/main/main.cpp
index 2f191b5f63..41efb73219 100644
--- a/main/main.cpp
+++ b/main/main.cpp
@@ -1542,7 +1542,7 @@ Error Main::setup2(Thread::ID p_main_tid_override) {
 	{
 		GLOBAL_DEF_RST_NOVAL("input_devices/pen_tablet/driver", "");
 		GLOBAL_DEF_RST_NOVAL("input_devices/pen_tablet/driver.Windows", "");
-		ProjectSettings::get_singleton()->set_custom_property_info("input_devices/pen_tablet/driver.Windows", PropertyInfo(Variant::STRING, "input_devices/pen_tablet/driver.Windows", PROPERTY_HINT_ENUM, "wintab,winink"));
+		ProjectSettings::get_singleton()->set_custom_property_info("input_devices/pen_tablet/driver.Windows", PropertyInfo(Variant::STRING, "input_devices/pen_tablet/driver.Windows", PROPERTY_HINT_ENUM, "none,wintab,winink"));
 	}

 	if (tablet_driver == "") { // specified in project.godot
diff --git a/platform/windows/display_server_windows.cpp b/platform/windows/display_server_windows.cpp
index 0dd02b4888..e1d9e5732e 100644
--- a/platform/windows/display_server_windows.cpp
+++ b/platform/windows/display_server_windows.cpp
@@ -3187,6 +3187,8 @@ DisplayServerWindows::DisplayServerWindows(const String &p_rendering_driver, Win
 		tablet_drivers.push_back("winink");
 	}

+	tablet_drivers.push_back("none");
+
 	if (OS::get_singleton()->is_hidpi_allowed()) {
 		HMODULE Shcore = LoadLibraryW(L"Shcore.dll");

3.x:
diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp
index 952c83179b..02733c7f1c 100644
--- a/platform/windows/os_windows.cpp
+++ b/platform/windows/os_windows.cpp
@@ -3638,6 +3638,8 @@ OS_Windows::OS_Windows(HINSTANCE _hInstance) {
 		tablet_drivers.push_back("winink");
 	}

+	tablet_drivers.push_back("none");
+
 	hInstance = _hInstance;
 	pressrc = 0;
 	old_invalid = true;

(not tested).

So I just ran into this bug today.  Never hit it before after using Godot for years.  What's really strange is that it seemed to break the callstack.  The crash happens in wintab_WTOpen, but the callstack would jump back to the main.cpp OS::get_singleton()->set_current_tablet_driver(OS::get_singleton()->get_tablet_driver_name(i)); even with the optimizations disabled.
Even though I've only just gotten this crash, I have had a frequent issue of running godot causing pressure sensitivity to stop working in drawing programs, so it might be good to disable the tablet driver by default.  To do this, I used @bruvzg's suggestion, but put the tablet_drivers.push_back("none"); ABOVE the other tablet_driver push_back's.  This fixed the crash (without having to edit the project.godot file), and I assume will fix the tablet pressure issues in other applications.
Note that the driver crash also crashed other applications.  Krita, Gimp, Blender, and Clip Studio Paint all failed to launch.  I'm also using the Huion tablet drivers: <IP_ADDRESS>0420.  Using with a Monoprice 10x6.25in tablet.

Just had this issue happen again, this time in Godot 4.  I can't even open the project browser in any version of Godot (3.x or 4.x), but in my custom builds that have disabled the tablet driver, I can.
This is the callstack output from my Godot 4 custom build (downloaded release builds don't give a call stack):
>godot.windows.editor.x86_64.exe

Godot Engine v4.1.dev.custom_build.dddcc2d65 - https://godotengine.org

================================================================
CrashHandlerException: Program crashed
Engine version: Godot Engine v4.1.dev.custom_build (dddcc2d65d7769391fca201f720fcfa192d42771)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[0] <couldn't map PC to fn name>
[1] <couldn't map PC to fn name>
[2] DisplayServerWindows::_update_tablet_ctx (E:\Projects\godot\godot_engine_tremble\platform\windows\display_server_windows.cpp:3823)
[3] DisplayServerWindows::tablet_set_current_driver (E:\Projects\godot\godot_engine_tremble\platform\windows\display_server_windows.cpp:4100)
[4] Main::setup2 (E:\Projects\godot\godot_engine_tremble\main\main.cpp:2056)
[5] Main::setup (E:\Projects\godot\godot_engine_tremble\main\main.cpp:1874)
[6] widechar_main (E:\Projects\godot\godot_engine_tremble\platform\windows\godot_windows.cpp:164)
[7] _main (E:\Projects\godot\godot_engine_tremble\platform\windows\godot_windows.cpp:205)
[8] main (E:\Projects\godot\godot_engine_tremble\platform\windows\godot_windows.cpp:217)
[9] __scrt_common_main_seh (d:\a01\_work\12\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
[10] <couldn't map PC to fn name>
-- END OF BACKTRACE --
================================================================

Ran through the debugger and got the same callstack and confirmed it's happening within wd.wtctx = wintab_WTOpen(wd.hWnd, &wd.wtlc, false);
wintab tends to be pretty flakey, so I would recommend disabling the driver by default.  Not only is there this crash issue, but sometimes it breaks pressure sensitivity in drawing applications simply by launching something made in the Godot engine.


fixed segmentation fault for non-json input / provided test case

Hey there,
I discovered a segmentation fault when the lib is fed with HTML including embedded CSS. I did not dive in too deep but rather just fixed the place where the seg fault occurs. Also added a test case for this. I noticed the lack of invalid JSON tests as well as non-JSON as test cases. This should be something to look into, shouldn't it?
The test case is actually just the heroku error page when the instance crashes, so this is somewhat likely to occur in the wild.

Thanks for the fix.  I'm not much of a test engineer also this code base isn't mine I just put it here after it seemed the original source wasn't being supported anymore.


Enhance Fluent Bit documentation

What would you like to be added?
The documentation is really not clear - it shows the sunny day scenario and still even following every single step I have not got to a resolution. There is no reference to debugging logs to check functionality or to ensure that the fluent bit is actually running or where it's logs are
Why is this needed?
I would imagine the eks workshop is for beginners such as myself - there is already a lot to learn this ones taken some time

Hi @AzySir can you expand what you mean by "I have not got a resolution". Do you mean the lab isn't working as expected for you? Or that its not helping you resolve an issue you have in your EKS clusters?


add parent to GO:0061776    topological DNA entrapment activity

add
GO:0003690    double-stranded DNA binding
As this activity applies to duplexes  it follows that
GO:0003690    double-stranded DNA binding
should be a parent.
Val

done


Add more go versions to build process fixes #82

Added more go versions to run in parallel for building.

Thanks @cbelsole. Is there not a way to share the build steps? I was googling and found this https://discuss.circleci.com/t/build-matrix-configuration/14448 which links to a refactored version. Can we try
steps: &steps
      - checkout

      # wait on postgres sql to start
      - run:
          command: while ! nc -z localhost 5432; do echo "postgres not ready"; sleep 0.1; done
          timeout: 5
...

and then
jobs:
  buildGoXyz:
    docker:
    <<: *steps
    ...

Unfortunately not, due to the checkout step being a string instead of a map merges at this level do not work.

I think it'll work if we make it more like in the refactored version of the link above. I think it needs like one more level of nesting to make it work.

i think this would work?

@alexandrinaw That worked.


(Ab)using isStyleLoaded

We use isStyleLoaded to decide when to load a layer. However, that might be false in some situations, e.g. using fitBounds, making the layer to not load, not even when the flight finishes.

Hi @rochoa, how can I reproduce this error? Thanks!


[My habits] Wrong presentation of the button 'Edit profile'.

Environment: OS: Windows 10, Browser: Google Chrome 89.0.4389.114
Reproducible: Always
Build found: 29.04.2021
Steps to reproduce

User should be logged in Green City 'https://ita-social-projects.github.io/GreenCityClient/#/welcome';
Go to 'My habits' page;

Actual result

Expected result

Still wrong presentation of the button 'Edit profile'.


Does Zuul2.x support tcp connections?

Hi！
Does Zuul2.x support tcp and https connections?
proxy protocol? give me an example? thanks you very much.

Yes, please look at the wiki.

@artgon thank you for your reply.
I've seen Proxy Protocol at the wiki.But, I don't know how to use it. Can you give me a detailed examples?

@artgon Can you give me a detailed tcp connections examples? thank you very much!

@xcbeyond what's missing from the wiki? What do you want more explanation about?

@artgon yes,gave me a detailed tcp connections examples in the wiki.

I thought you were asking about proxy protocol? Zuul doesn't support raw TCP request proxying. It requires the HTTP request/response paradigm.


"Trim" option on importing WAV stereo audio removes half of it

Godot version:

3.2 dev 7f2ad8b
OS/device including version:

Debian GNU/Linux buster/sid x86_64
Issue description:

Expected: trim to only remove silences from the end of the audio
Happened: half the stereo music is missing (mono works as expected, silence trimmed)
Steps to reproduce:

import wav stereo music file with trim enabled (default)
preview in the editor, seek to the end and you'll notice that the music abruptly ends.

Minimal reproduction project:

You can use godot-demo-projects/audio/spectrum and convert the demo song to wav

Possibly related to #27645

CC @theisegeberg

This probably pertains to the changes I've made to the trim code. I'm looking into it.

Fixed by #27927.


Incorrectly highlight chunks of code after "git reset"

I made couple of edits in couple of files
Did a "git reset" to revert back all the changes
It still had chunks of code highlighted

this also happens after checking in code

As far as I understand this is because the extension doesn't use git to check the user changes


Update Blog file

Just added a helpful blog post about Ethereum killers

Hi @Vikash-8090-Yadav I'm done with this. Kindly review and merge

@GloriaOkeke  i guess ur images and all the extra style is not visible like # and images . please check once and make  it correct

@Vikash-8090-Yadav I just effected some change. please let me know if that's right.

Please check the folder  in which  u have  putted . I guess u putted in the wrong folder ,
OK , do one  thing close this  pr . Delete my repo from your computer and again clone this and make new folder inside the Blog folder named "Ethereum Killers" then in that folder include readme.md and write about your blog . I hope u  understand . .
Let me know if u need any help !
Thank u  :smile:

Alright got this


Bamocar serial emulator

Summary
We can expect to do a lot of Bamocar programming via serial. Whether it be debugging, upgrading the firmware or as a backup for CANBus, we need software to communicate with the Bamocar serial port. The hardware will not always be available, so having a simulator handy will come in use. The simple solution is probably some combination of socat and a server with the Bamocar endpoints.
Some useful links:

Virtual serial port
Bamocar manual - section 4.7: Serial

Acceptance Criteria

[ ] socat
[ ] server with a few bamocar endpoints

I am having a tough time re-finding the document with the serial endpoints. We can use the canbus endpoints (pg 25), which I assume are similar, for now

[ ] a simple client

A serial emulator was initialised in PR 28


How to increase mapping speed

Hello!
This project is so cool! I tested my insta360 air in realTime, it works well.
But when changing the pinhole view pose, I find it costs around 4000ms on average to create a mapping. Is that normal? And how to increase the speed?
Thanks a lot!

Hello,
thanks for your interest! Changing the projection is quite costly, because each pixel is projected into each camera again. The computation time depends linearly on output resolution and number of cameras. Reducing those should increase your performance.
The computation could also be parallelized very well either on CPU or GPU, but I didn't find time to implement that yet.
If your application is mainly a move-able pinhole projection, you could also use image_projection to create ideal fisheye images, then use rviz_textured_sphere to render them in a sphere and finally rviz_camera_stream do render a pinhole view from the rviz scene.
Best regards,
Martin

Thank you so much for your reply. I will try your method later.


Click commands fail on Windows

Setup Information

Xclim version: 0.45.x
Python version: Any
Operating System: Windows

Description
It seems that the Click commands are not properly run in Windows environments. I'm not sure why that would be the case (is xclim called xclim.exe on Windows?).
If this isn't a bug, it would be good to have some documentation  (or point to existing documentation) on the differences for using the Click commands in Windows shells.
Steps To Reproduce
Testing commands run in Microsoft Azure (conda-forge):
$ python -c "import xclim"
$ python -c "import xclim.ensembles"
$ python -c "import xclim.sdba"
$ pip check
$ xclim --help

Output (the double-import messages are normal):
...
(base) %SRC_DIR%>conda activate "%PREFIX%"
import: 'xclim'
import: 'xclim.ensembles'
import: 'xclim.sdba'
import: 'xclim'
import: 'xclim.ensembles'
import: 'xclim.sdba'
No broken requirements found.
Tests failed for xclim-0.45.0-py38haa244fe_1.conda - moving package to D:\bld\broken
WARNING:conda_build.build:Tests failed for xclim-0.45.0-py38haa244fe_1.conda - moving package to D:\bld\broken
...

Additional context
No response
Contribution

[x] I would be willing/able to open a Pull Request to address this bug.

Code of Conduct

[X] I agree to follow this project's Code of Conduct

We should add a Windows build to test the CLI.

Tested these changes on a typical Windows platform and everything seems to work normally. This might be exclusively an issue with the command environment for building conda-forge packages in Azure. Investigating.

This problem seems to be exclusively occurring on Microsoft Azure CI builds. Well beyond the scope.


fix debug output

> npm publish
+<EMAIL_ADDRESS>

https://github.com/taskrabbit/elasticsearch-dump/releases/tag/v2.1.2


[Discussion] Potential breaking changes for v6

Looks like #190 will be released soon and will require a major version bump.
Are there any potential changes to the API that should be considered before releasing 6.0.0?
I personally would like to see this repository converted to typescript as it has a much larger community backing. I've recently made the switch and with some exceptions, I have found it a much more pleasant development experience. I'd be willing to put together an initial PR if that is something @davidtheclark @sudo-suhas @olsonpm is interested in. If not I completely understand...it isn't needed and somewhat "bikeshedding".

Thanks for opening this, @chrisblossom.
Re TypeScript: At this point, I wouldn't mind switching to TypeScript — it would be a good educational opportunity for me, since I don't have experience with it — especially if you're interested in putting in the legwork. I'm assuming it won't require significant refactoring of non-type code: if it does, I'd be more hesitant. If you want to start a PR towards that, go for it. If you're finding yourself making more than type-level changes though, it may be a good idea to pause and discuss those before you put in too much work.

I'm assuming it won't require significant refactoring of non-type code: if it does, I'd be more hesitant. ... If you're finding yourself making more than type-level changes though, it may be a good idea to pause and discuss those before you put in too much work.

Should be very straight forward with minimal changes necessary. I have a fair amount of experience what it takes to convert and update the build process. FYI, I don't think I'll have time to start on it until next week at the earliest.
I think the biggest change that you'll find is common js / module interop (which I think is currently an issue, just not very known). I think the best / most future proof solution is to remove default exports and use a named export instead. Relevant discussion: https://github.com/johnagan/clean-webpack-plugin/issues/114
// es modules
import { cosmiconfig } from 'cosmiconfig';

// common js
const { cosmiconfig } = require('cosmiconfig');

While migrating to typescript(I too support this), we should try to use the --strict compiler option. However, I think we should minimise changes required for users to upgrade cosmiconfig unless there is a very good reason to do so.

I put in PRs #192 #193 #194 #195 in preparation for typescript. The only one that is necessary is #194, the others are just things I noticed while updating the packages. Please close if they aren't wanted changes.

Moved from https://github.com/davidtheclark/cosmiconfig/pull/197#issuecomment-504700070:

[X] 1. Update build system to use babel and es modules. #198
[x] 2. Direct minimal migration from typescript -> flow #201
[x] 3. Add code quality tools such as @typescript-eslint/eslint-plugin and fix any lint issues. (this was a big portion of the changed code) #202
[x] 4. Code PR bugs / issues found when updating types. #204
[x] 5. Modernize code with async await. #205
[ ] 6. Open discussion / PRs with API change ideas.

[ ] Replace cosmiconfig.loaders with named export defaultLoaders #208
[ ] Use transformSync option for sync transform #209
[ ] Only support options.loaders object format.

I've opened some PRs to start discussions with some breaking changes I'm proposing. I'm not sure they are the best API possible, but wanted to open the PRs to get the process started.

After #211 and #212 the only PR left for me to do before a new release is published is to fix/update the dependencies because of the issue described in #206.

I just released v6 🎈


API support to register DOI datasets

Create a python level (not WS) method that takes a dataset as input and registers the dataset with DataCite, updating the registered_doi, doi_url and has_doi properties after creatiion.  NOTE: has_doi field will need to move out of Collection and into the shared doi_properties field.
This method will eventually be used by the publish method.

Just add the DataCite API docs https://support.datacite.org/docs/api-create-dois for later reference


Java test - adjust waiting for Tomcat

We should adjust the Java integration test to avoid situations waiting forever until one of the tests finishes, see:
https://github.com/criblio/appscope/actions/runs/1393530831/attempts/1
Test aarch64/arm64 (java9)
Proposal:
The code below should be updated:
https://github.com/criblio/appscope/blob/a800c9f89f0d3ceaf8cb39c74c3db55ef5a737a2/test/testContainers/java/test-ssl.sh#L93-L97
Adding the timeout/attempt counter should solve the case here - if the tomcat doesn't start in a specified/hardcoded time range we should assume that test fails.

Duplicate of https://github.com/criblio/appscope/issues/461#issue-963948860


refactor: remove duplicated types.

关联的Issues (Related Issues)

it is sub task of  filecoin-project/venus/issues/4894
改动 (Proposed Changes)

this is a big refactor to venus-wallet, the major changes are listed below:

remove all pointless local type alias, which are defined in filecoin-project shared packages,
we can use them directly. (eg. address.Address, cid.Cid, crypto.Signature...)
remove all local duplicated definition of gateway-event-client related interfaces,
they have been already defined in venus-shared or venus-gateway.(eg. IWallet, ILocalWallet, IWalletHandler...)
the WalletEventClient have been implemented by venus-gateway,
remove it from venus-wallet, and use the one in venus-gateway.

附注 (Additional Info)

自查清单 (Checklist)
在你认为本 PR 满足被审阅的标准之前，需要确保 / Before you mark the PR ready for review, please make sure that:

[x] 符合Venus项目管理规范中关于PR的相关标准 / The PR follows the PR standards set out in the Venus project management guidelines
[x] 具有清晰明确的commit message / All commits have a clear commit message.
[x] 包含相关的的测试用例或者不需要新增测试用例 / This PR has tests for new functionality or change in behaviour or not need to add new tests.
[x] 包含相关的的指南以及文档或者不需要新增文档 / This PR has updated usage guidelines and documentation or not need
[x] 通过必要的检查项 / All checks are green

Codecov Report

Merging #98 (8639e38) into master (4bb47c2) will increase coverage by 0.35%.
The diff coverage is 11.34%.

@@            Coverage Diff             @@
##           master      #98      +/-   ##
==========================================
+ Coverage   12.74%   13.09%   +0.35%
==========================================
  Files          48       46       -2
  Lines        4096     3963     -133
==========================================
- Hits          522      519       -3
+ Misses       3484     3355     -129
+ Partials       90       89       -1

Flag
Coverage Δ

unittests
13.09% <11.34%> (+0.35%)
:arrow_up:

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

Impacted Files
Coverage Δ

build/builder.go
0.00% <0.00%> (ø)

cmd/daemon.go
0.00% <ø> (ø)

cmd/mock/main.go
0.00% <ø> (ø)

core/context.go
0.00% <0.00%> (ø)

core/msg_router.go
15.29% <0.00%> (+0.35%)
:arrow_up:

crypto/key.go
13.04% <0.00%> (ø)

example/main.go
0.00% <0.00%> (ø)

filemgr/fs.go
33.84% <0.00%> (ø)

node/node.go
0.00% <0.00%> (ø)

storage/keymix.go
0.00% <0.00%> (ø)

... and 10 more

blocked by :https://github.com/filecoin-project/venus/issues/5212


Using demo on localhost works fine, but using demo on the server to display Disconnected

Through the connection-tester test, livekit services can be connected normally, proving that the server configuration is correct

After the demo is packaged and run on the tomcat environment of the localhost, it is found that localhost:3000, and the interface is displayed as Disconnected

Through the connection-tester test, livekit services can be connected normally,

No, please read the warnings in the connection tester output. It says Your server is likely not configured correctly.


_.sortBy errors on symbols.

_.sortBy([1, Symbol()]);
// errors

This affects _.max and _.min too.

_.sortBy is for when you can reduce your values to a single string or number so that you can meaningfully apply the < operator. If you need to do something more fancy, pass your own custom comparator function to Array.prototype.sort instead. Note that this function is also available in Underscore OOP notation and in chains as _(yourArray).sort.
Related to #2848.


Documentation or Support for Go Modules

It seems as though hack/update-codegen.sh isn't updated properly for using go modules. I was able to patch mine by changing the CODEGEN_PKG and removing SCRIPT_ROOT and replacing with:
CODEGEN_PKG=${CODEGEN_PKG:-$(ls -d -1 ${GOPATH}pkg/mod/k8s.io/code-generator* 2>/dev/null || echo ../code-generator)}
chmod +x ${CODEGEN_PKG}/generate-groups.sh

Is there a better way to handle this? Happy to put in a PR if not.

Scratch that, I guess I could just use go mod vendor and the script works as usual. Closing.

Reopening since permissions are still set wrong on the file.

@christopherhein my understanding is that go mod vendor alone won't work, as it ignores non-go files. See this comment. Maybe you already had a vendor dir in place from e.g. dep?
I've resorted to using the solution presented in https://github.com/heptio/contour/pull/1010. It's working for me (thanks @glerchundi!), though it's still more complex than I would like it to be. I'm curious how others are using the code generator with go modules.

I read that comment before I gave it a try and was really surprised when it worked. I'm not sure what I did that was different. At least the .sh files were still there. Only thing I needed to do was add my own boilerplate.go.txt. I'll investigate a little more and see if I can understand what I did.

Good call, I had to add a boilerplate.go.txt as well.
For completeness: with the latest code-generator package, I also had to remove the go mod init from this script since it has become a go module since then.
I'm still fighting with getting Kubernetes dependencies to behave correctly in our move to go modules, but my latest code generation script works, for reference.

@mattkelly @christopherhein
I'm also attempting something similar using your solutions, have you run into an issue where the generated code is not placed in the correct location? i.e. not inside pkg/generated.
I could probably just move it to the correct location, but I wonder if there's anything else I'm missing.
Note that I'm running this outside of GOPATH.

@ilansh did you set the flag --output-base  That sets the place or where the package should be found.
https://github.com/kubernetes/sample-controller/blob/master/hack/update-codegen.sh#L31

@christopherhein  Once I did that it simply created the whole repo tree  (github.com/xxx/yyy/...) under the output base.
without setting --output-base the generated files are placed in corresponding location in GOPATH.

What does your hack/update-codegen.sh look like? You might need to adjust your output package path. For example from my project I can run…
./hack/generate/code-generator/generate-groups.sh \
  client,lister,informer \
  foo/generated \
  awsoperator.io/pkg/apis \
  apigateway:v1alpha1 \
  --output-base $HOME --go-header-file hack/generate/templates/boilerplate.go.txt
ase $HOME --go-header-file hack/generate/templates/boilerplate.go.txt

and this will generate the client libs in $HOME/foo/generated/.

Reopening since permissions are still set wrong on the file.

Created https://github.com/kubernetes/kubernetes/pull/79081

It does not put the generated code in right place if the import path for go module isn't same as file path.
For example:
$ go mod init github.com/u/mymod
$ pwd
/a/b/c/mymod
$ ./generate-groups.sh all github.com/u/mymod/generated github.com/u/pkg/apis "foo:v1" \
  --output-base .
$ ls github.com/u/mymod
generated-files..

Here is the dirty fix:
$ cd ..
$ mkdir -p github.com/u
$ mv mymod github.com/u
$ cd github.com/u/mymod
$ ./generate-groups.sh all github.com/u/mymod/generated github.com/u/pkg/apis "foo:v1" \
  --output-base ../../../

@damnever yup, that's a known issue. Code generation doesn't work with non-GOPATH based assumptions today.

@nikhita Maybe code-generator could provide some information as a hit if the path is wrong.


fix: Add video length field

:tada: This PR is included in version 1.32.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


istio1.0 the jaeger cannot collect the sample bookinfo tracing data.

Describe the bug
istio1.0 the jaeger cannot collect the sample bookinfo tracing data.
istio pod info
[root@node128 kube]# kubectl get pods -n istio-system
NAME                                        READY     STATUS    RESTARTS   AGE
istio-citadel-5b956fdf54-qf747              1/1       Running   0          2d
istio-galley-699888c459-dm9s2               1/1       Running   0          2d
istio-pilot-6cd95f9cc4-9mqf7                2/2       Running   0          2d
istio-policy-75f75cc6fd-4hmfg               2/2       Running   0          2d
istio-sidecar-injector-6d59d46ff4-gg5z7     1/1       Running   0          2d
istio-statsd-prom-bridge-7f44bb5ddb-xzdc2   1/1       Running   0          2d
istio-telemetry-544b8d7dcf-gmckc            2/2       Running   0          2d
istio-tracing-ff94688bb-lsncr               1/1       Running   0          2d
kiali-5d489775b8-7vzgg                      1/1       Running   0          2d
servicegraph-554857fc87-grc62               1/1       Running   1          2d

Expected behavior
1.install the istio by helm and  include the tracing.
2.visit the bookinfo info
3.visit the jaeger ui,but can not see the bookinfo services from the left.
version info
[root@node128 kube]# istioctl version
Version: 1.0.0
GitRevision: 3a136c90ec5e308f236e0d7ebb5c4c5e405217f4
User: root@71a9470ea93c
Hub: gcr.io/istio-release
GolangVersion: go1.10.1
BuildStatus: Clean

[root@node128 kube]# kubectl version
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.0", GitCommit:"91e7b4fd31fcd3d5f436da26c980becec37ceefe", GitTreeState:"clean", BuildDate:"2018-06-27T20:17:28Z", GoVersion:"go1.10.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.5", GitCommit:"32ac1c9073b132b8ba18aa830f46b77dcceb0723", GitTreeState:"clean", BuildDate:"2018-06-21T11:34:22Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

[root@node128 kube]# docker version
Client:
 Version:         1.13.1
 API version:     1.26
 Package version: docker-1.13.1-63.git94f4240.el7.centos.x86_64
 Go version:      go1.9.4
 Git commit:      94f4240/1.13.1
 Built:           Fri May 18 15:44:33 2018
 OS/Arch:         linux/amd64

Server:
 Version:         1.13.1
 API version:     1.26 (minimum version 1.12)
 Package version: docker-1.13.1-63.git94f4240.el7.centos.x86_64
 Go version:      go1.9.4
 Git commit:      94f4240/1.13.1
 Built:           Fri May 18 15:44:33 2018
 OS/Arch:         linux/amd64
 Experimental:    false

visit the bookinfo detail as below:

visit the jaeger ui detail as below:

i can see the zipAddress in the pod by commd "kubectl get pod my-nginx-56648447-rmnvh -o yaml",the detail is :
  - --zipkinAddress
    - zipkin.istio-system:9411
    - --connectTimeout
    - 10s

and i curl zipkin.istio-system:9411 ,the result is "404 page not found". who have the same issue or i had some error config?
the test pod detail as below:
apiVersion: v1
kind: Pod
metadata:
  annotations:
    cni.projectcalico.org/podIP: <IP_ADDRESS>/32
    field.cattle.io/publicEndpoints: '[{"addresses":["<IP_ADDRESS>"],"port":30001,"protocol":"TCP","serviceName":"istio-system:my-nginx","allNodes":true}]'
    sidecar.istio.io/status: '{"version":"55ca84b79cb5036ec3e54a3aed83cd77973cdcbed6bf653ff7b4f82659d68b1e","initContainers":["istio-init"],"containers":["istio-proxy"],"volumes":["istio-envoy","istio-certs"],"imagePullSecrets":null}'
  creationTimestamp: 2018-08-09T08:28:16Z
  generateName: my-nginx-56648447-
  labels:
    app: my-nginx
    pod-template-hash: "12204003"
  name: my-nginx-56648447-rmnvh
  namespace: istio-system
  ownerReferences:
  - apiVersion: extensions/v1beta1
    blockOwnerDeletion: true
    controller: true
    kind: ReplicaSet
    name: my-nginx-56648447
    uid: 29e9e8de-9bae-11e8-8fa4-000c29cc5e76
  resourceVersion: "2742097"
  selfLink: /api/v1/namespaces/istio-system/pods/my-nginx-56648447-rmnvh
  uid: 2a1d1ffa-9bae-11e8-8fa4-000c29cc5e76
spec:
  containers:
  - image: nginx:1.7.9
    imagePullPolicy: IfNotPresent
    name: my-nginx
    ports:
    - containerPort: 80
      protocol: TCP
    resources: {}
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: default-token-njvwl
      readOnly: true
  - args:
    - proxy
    - sidecar
    - --configPath
    - /etc/istio/proxy
    - --binaryPath
    - /usr/local/bin/envoy
    - --serviceCluster
    - my-nginx
    - --drainDuration
    - 45s
    - --parentShutdownDuration
    - 1m0s
    - --discoveryAddress
    - istio-pilot.istio-system:15007
    - --discoveryRefreshDelay
    - 1s
    - --zipkinAddress
    - zipkin.istio-system:9411
    - --connectTimeout
    - 10s
    - --statsdUdpAddress
    - istio-statsd-prom-bridge.istio-system:9125
    - --proxyAdminPort
    - "15000"
    - --controlPlaneAuthPolicy
    - NONE
    env:
    - name: POD_NAME
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: metadata.name
    - name: POD_NAMESPACE
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: metadata.namespace
    - name: INSTANCE_IP
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: status.podIP
    - name: ISTIO_META_POD_NAME
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: metadata.name
    - name: ISTIO_META_INTERCEPTION_MODE
      value: REDIRECT
    image: docker.io/istio/proxyv2:1.0.0
    imagePullPolicy: IfNotPresent
    name: istio-proxy
    resources:
      requests:
        cpu: 10m
    securityContext:
      privileged: false
      readOnlyRootFilesystem: true
      runAsUser: 1337
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /etc/istio/proxy
      name: istio-envoy
    - mountPath: /etc/certs/
      name: istio-certs
      readOnly: true
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: default-token-njvwl
      readOnly: true
  dnsPolicy: ClusterFirst
  initContainers:
  - args:
    - -p
    - "15001"
    - -u
    - "1337"
    - -m
    - REDIRECT
    - -i
    - '*'
    - -x
    - ""
    - -b
    - 80,
    - -d
    - ""
    image: docker.io/istio/proxy_init:1.0.0
    imagePullPolicy: IfNotPresent
    name: istio-init
    resources: {}
    securityContext:
      capabilities:
        add:
        - NET_ADMIN
      privileged: true
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: default-token-njvwl
      readOnly: true
  nodeName: <IP_ADDRESS>
  restartPolicy: Always
  schedulerName: default-scheduler
  securityContext: {}
  serviceAccount: default
  serviceAccountName: default
  terminationGracePeriodSeconds: 30
  tolerations:
  - effect: NoExecute
    key: node.kubernetes.io/not-ready
    operator: Exists
    tolerationSeconds: 300
  - effect: NoExecute
    key: node.kubernetes.io/unreachable
    operator: Exists
    tolerationSeconds: 300
  volumes:
  - emptyDir:
      medium: Memory
    name: istio-envoy
  - name: istio-certs
    secret:
      defaultMode: 420
      optional: true
      secretName: istio.default
  - name: default-token-njvwl
    secret:
      defaultMode: 420
      secretName: default-token-njvwl
status:
  conditions:
  - lastProbeTime: null
    lastTransitionTime: 2018-08-09T08:28:18Z
    status: "True"
    type: Initialized
  - lastProbeTime: null
    lastTransitionTime: 2018-08-09T08:28:19Z
    status: "True"
    type: Ready
  - lastProbeTime: null
    lastTransitionTime: 2018-08-09T08:28:16Z
    status: "True"
    type: PodScheduled
  containerStatuses:
  - containerID: docker://aa802b2d76c851570a9315715f75bb4420e2a638ef559e75a4d64a42cdefef77
    image: docker.io/istio/proxyv2:1.0.0
    imageID: docker-pullable://docker.io/istio/proxyv2@sha256:77915a0b8c88cce11f04caf88c9ee30300d5ba1fe13146ad5ece9abf8826204c
    lastState: {}
    name: istio-proxy
    ready: true
    restartCount: 0
    state:
      running:
        startedAt: 2018-08-09T08:28:18Z
  - containerID: docker://46f3eec67bac475ba39c80d283ee860b2b83598c8777cc075ebdab5b51729c06
    image: docker.io/nginx:1.7.9
    imageID: docker-pullable://docker.io/nginx@sha256:e3456c851a152494c3e4ff5fcc26f240206abac0c9d794affb40e0714846c451
    lastState: {}
    name: my-nginx
    ready: true
    restartCount: 0
    state:
      running:
        startedAt: 2018-08-09T08:28:18Z
  hostIP: <IP_ADDRESS>
  initContainerStatuses:
  - containerID: docker://9c7d19f00498814623d4bf2a639543696756dbb72d73a64aacbd6b771dab633d
    image: docker.io/istio/proxy_init:1.0.0
    imageID: docker-pullable://docker.io/istio/proxy_init@sha256:062220ba6415536cd5b2f7029f1d27a3f024f45eed0582705a0a62e07029a92a
    lastState: {}
    name: istio-init
    ready: true
    restartCount: 0
    state:
      terminated:
        containerID: docker://9c7d19f00498814623d4bf2a639543696756dbb72d73a64aacbd6b771dab633d
        exitCode: 0
        finishedAt: 2018-08-09T08:28:18Z
        reason: Completed
        startedAt: 2018-08-09T08:28:18Z
  phase: Running
  podIP: <IP_ADDRESS>
  qosClass: Burstable
  startTime: 2018-08-09T08:28:16Z

Same issue here with istio 1.0.3

I see the same issue with Istio 1.0.3.
It is very interesting that multiple people seem to report the same issue but no response. So, either this "issue" has a trivial fix or the community does not seem to be very interested getting this resolved.

If there is a fix, I would be happy to learn more about it. ;-)

@objectiser and @scaratec increasing the sampling rate "fixed" it for me. :)
Thank you!

@objectiser Thanks, saved me as well.
I think it should be mentioned in the beginning of the (distributed paging)[https://istio.io/docs/tasks/telemetry/distributed-tracing/] page and not in the beginning. A person which follows the page wouldn't understand (like the rest of us) why it isn't working.

The docs and tasks have extra content on the 1.1 version that mentions sampling rates. I'm going to close this issue as a result.