Eclipse plugin considers this (necessary) lambda cast as an unused variable

This is not a cast, cb is the parameter of the lambda. If you do not use the variable, prefix it with an underscore to suppress the warning.

@peq that's totally a bug, but do what you want

You don't use the variable and you get a warning that it is not used. I do not see how this is a bug...

I am using it as a parameter to doPeriodically. Without it, I cannot use doPeriodically.

The warning is supposed to help you. In most cases it is a mistake if a variable is not used. And as I said, you can just add an underscore to the beginning of the variable name, if you decide not to use it. This also makes the intend clear to readers of your code.
By the way: The CallBackPeriodic parameter is there for a reason. If you are not using it, you could use a different function which does not have the functionality to cancel the periodic event. In your case a simple timer would be enough and more efficient, since you are not even capturing any local variables in your closure.

By the way: The CallBackPeriodic parameter is there for a reason. If you are not using it, you could use a different function which does not have the functionality to cancel the periodic event. In your case a simple timer would be enough and more efficient, since you are not even capturing any local variables in your closure.

You're absolutely right - I've just changed that code to reflect this. I think as long as I don't have a good and necessary example of using doPeriodically without using the CallbackPeriodic, this can be case closed.
For the record though, this is the part I don't like:

And as I said, you can just add an underscore to the beginning of the variable name, if you decide not to use it. This also makes the intend clear to readers of your code.

What exactly don't you like about this? The only other options that I can think of are:

Remove the warning for parameters, or only for closure parameters. I don't like this, because I think in most cases the warning is useful and it can be easily suppressed.
Change the syntax for suppressing warnings. I like the current syntax and it is used by some other languages. I think something like Javas @SuppressWarnings("unused") is too long.

I think there are a lot cases where you don't want to have control over a periodic action. Maybe we can add a version of doPeriodically which closure does not need paramters, just like for doAfter.

Change the syntax for suppressing warnings. I like the current syntax and it is used by some other languages. I think something like Javas @SuppressWarnings("unused") is too long.

I would prefer something like this. I think annotations are a more powerful and general purpose tool. I think that the current configuration arbitrarily couples the LINT software with the program code. There shouldn't be a LINT guideline like "prefix unused variables with underscore" because unused variables shouldn't be used at all, which brings me to:

I think there are a lot cases where you don't want to have control over a periodic action. Maybe we can add a version of doPeriodically which closure does not need paramters, just like for doAfter.

I think this is absolutely the right thing., so :+1: from me


Add a bridge tip for improving user experience

Thank you for your contribution!
I have checked that "https://guide.scroll.io/user-guide/contract-deployment-tutorial" returns 404 indeed, nice work~
I need a confirmation from @OrestTa that additional information on bridge page is needed.

@Holybasil, thx for the headsup.
@brucexu-eth, thx for spotting the broken link; we don't need the static tip any more as we have just added a more dynamic estimate to every bridge tx now; I couldn't edit your forked branch (you'd need to allow that yourself), but I carried the link fix manually now.


Maintaining this project.

Hello, i want to contact you on e-mail or something.

Hi. sanex3339 at yandex.ru

Is someone maintaining this project still? I found a bug and was planning to file issue, but not sure if anyone will fix it. What if I come up with PR, would there be someone to approve it?

Hi. Currently i have no time to work on this project, but I will review and merge your PR.

@bmblb you can also contact me, I have a bit more time ;-)

Closed as old.
Please, recreate a new issue if you will have additional questions.


(Bug) Minted crowdsale: owner able to finalize before start

Seems like root of this issue comes from duration of crowdsale
Steps:

Create crowdsale: Minted,  1 tier, no whitelist, start time by default, end time= start time +(~40 hours)
Finish deployment
Open manage page as an owner, observe button 'Finalize'

Expected result:

button 'Finalize' should be disabled
owner should not be able to finalize unless all tokens were sold or crowdsale ended

Actual result:

owner able to finalize before start of crowdsale

https://www.useloom.com/share/244c700c9b2742d59c81b24949908bc8
If you are reporting a problem with Token Wizard, please include the following information:
Which network did you use? (Mainnet, Kovan, Rinkeby, etc.)
localhost, xDai
If you were able to create it, what is the URL of your crowdsale?
n/a
Do you have screenshots showing the problem?

Do you see errors in the dev console? If yes, please include a screenshot
n/a

@dennis00010011b
I used the command npm run dev: minted, and I could not reproduce the problem in the branch 2.0. Could you test it again? If the problem exist, could you add more information to reproduce the problem?
Thanks

@mariano-aguero
I was able to reproduce issue now by setting  local machine time and date like in video
Date: 10/22/2108, time ~8:15pm

@mariano-aguero
I was able to reproduce issue now by setting local machine time and date like in video
Date: 10/22/2108, time ~8:15pm


How to reproduce federated results?

Hi, I am currently doing my bachelor's thesis and I want to reproduce the results from your paper in the federated setting. Do you happen to have code available or steps to be able to reproduce the findings for the federated setting with EMNIST?

I'm cleaning up the code for the federated experiment and will publish the code asap.


Notification icon / color defined in the expo project are not used

It's will be great to add 2 entries on the plugin configuration : "android.icon" and "android.color"

Hi @walkev13, Thanks for reaching out. Unfortunately, we don't currently support customizing the notification icon and color in managed workflow. I've created an internal ticket and added a vote on your behalf to track this request. We'll keep you posted on any updates.
However, if you are using bare workflow, you can update your AndroidManifest.xml as mentioned in the Android docs to customize the notification icon and color. Do let me know if you have more questions.

Do we have any updates on this? I am also seeing only grey squares in the notification bar. Do you have any solution for this ?

Unfortunately, there are no new developments since my last update. This has not yet been added to our roadmap. As of now, the only available workaround for customizing the notification icon and color is to add entries to the AndroidManifest as suggested above. Appreciate your understanding.

OK. So we have to create the plugin ourselves.
Thank you for your quick response, @mrehan27.


Some properties are overwritten by the old CDO on reinstancing

[UClass, Blueprintable, BlueprintType]
public class SharpActor : AActor
{
	[UProperty, EditAnywhere, BlueprintReadWrite]
	public int SomeValue { get; set; }

	public override void Initialize(FObjectInitializer initializer)
	{
		SomeValue = 10;
		AllowTickBeforeBeginPlay = true;
	}
}

Create the above C# actor.
Create a blueprint which parents that class.
Reopen the editor to get a clean state.
Open the blueprint editor it should have SomeValue as 10 and AllowTickBeforeBeginPlay should be true (checked).

In the C# code change SomeValue to 5 and AllowTickBeforeBeginPlay to false and then recompile the C# code so that it hotreloads. The blueprint will correctly update SomeValue to 5 (unless it has been changed in the details panel to be non-default, which is again correct behavior). However, AllowTickBeforeBeginPlay will still show as being true and will now have the yellow icon/button next to to signify it is no longer the default value. This is incorrect. AllowTickBeforeBeginPlay should now be false and there shouldn't be any default value modified signifier.
This issue stems from the object reinstancing code. Property values from the old CDO are copied over to the new CDO. This occurs in UEngine::CopyPropertiesForUnrelatedObjects.
Look into what determines which values should be copied over, we may need to do custom re-instancing to filter out copying of values which are set to default?
Callstack for the property copy on child blueprints (this happens first):
UE4Editor-Engine.dll!UEngine::CopyPropertiesForUnrelatedObjects(UObject * OldObject, UObject * NewObject, UEngine::FCopyPropertiesForUnrelatedObjectsParams Params) Line 13491	C++
UE4Editor-UnrealEd.dll!ReplaceActorHelper(UObject * OldObject, UClass * OldClass, UObject * & NewUObject, UClass * NewClass, TMap<UObject *,UObject *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UObject *,UObject *,0> > & OldToNewInstanceMap, TMap<UClass *,UClass *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UClass *,UClass *,0> > & InOldToNewClassMap, AActor * OldActor, TMap<FSoftObjectPath,UObject *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<FSoftObjectPath,UObject *,0> > & ReinstancedObjectsWeakReferenceMap, TMap<UObject *,FActorAttachmentData,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UObject *,FActorAttachmentData,0> > & ActorAttachmentData, TArray<FActorReplacementHelper,FDefaultAllocator> & ReplacementActors, bool bPreserveRootComponent, bool & bSelectionChanged) Line 1816	C++
UE4Editor-UnrealEd.dll!FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner(TMap<UClass *,UClass *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UClass *,UClass *,0> > & InOldToNewClassMap, UObject * InOriginalCDO, TSet<UObject *,DefaultKeyFuncs<UObject *,0>,FDefaultSetAllocator> * ObjectsThatShouldUseOldStuff, bool bClassObjectReplaced, bool bPreserveRootComponent, bool bArchetypesAreUpToDate) Line 2013	C++
UE4Editor-UnrealEd.dll!FBlueprintCompileReinstancer::BatchReplaceInstancesOfClass(TMap<UClass *,UClass *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UClass *,UClass *,0> > & InOldToNewClassMap, bool bArchetypesAreUpToDate) Line 1471	C++
UE4Editor-Kismet.dll!FBlueprintCompilationManagerImpl::FlushReinstancingQueueImpl() Line 1085	C++
UE4Editor-Kismet.dll!FBlueprintCompilationManagerImpl::CompileSynchronouslyImpl(const FBPCompileRequest & Request) Line 203	C++
UE4Editor-UnrealEd.dll!FKismetEditorUtilities::CompileBlueprint(UBlueprint * BlueprintObj, EBlueprintCompileOptions CompileFlags, FCompilerResultsLog * pResults) Line 745	C++
UE4Editor-UnrealEd.dll!FBlueprintCompileReinstancer::CompileChildren() Line 603	C++
UE4Editor-UnrealEd.dll!FBlueprintCompileReinstancer::ReinstanceObjects(bool bForceAlwaysReinstance) Line 737	C++
UE4Editor-USharp.dll!Export_SharpHotReloadUtils_ReinstanceClass(FSharpHotReloadClassReinstancer * Reinstancer) Line 45	C++
[Managed to Native Transition]
UnrealEngine.Runtime.dll!UnrealEngine.Runtime.ManagedUnrealTypes.BuildTypes() Line 907	C#
UnrealEngine.Runtime.dll!UnrealEngine.Runtime.ManagedUnrealTypes.Load() Line 63	C#
UnrealEngine.Runtime.dll!UnrealEngine.Runtime.Native.NativeFunctions.OnNativeFunctionsRegistered() Line 189	C#
UnrealEngine.Runtime.dll!UnrealEngine.Runtime.Native.NativeFunctions.RegisterFunctions(System.IntPtr registerFunctionsAddr) Line 99	C#
UnrealEngine.Runtime.dll!UnrealEngine.EntryPoint.DllMain(string arg) Line 70	C#
[Native to Managed Transition]
[Managed to Native Transition]
Loader.dll!UnrealEngine.AssemblyLoader.Load() Line 475	C#
[AppDomain (DefaultDomain, #1) -> AppDomain (Domain30654212 4, #6)]
Loader.dll!UnrealEngine.EntryPoint.ReloadAppDomain() Line 249	C#
Loader.dll!UnrealEngine.EntryPoint.ReloadAppDomain.AnonymousMethod__0() Line 195	C#
Loader.dll!UnrealEngine.GameThreadHelper.Tick(float deltaTime) Line 672	C#
[Native to Managed Transition]
UE4Editor-USharp.dll!FTickerDelegateWrapper::Tick(float DeltaTime) Line 9	C++
UE4Editor-Core.dll!FTicker::Tick(float DeltaTime) Line 98	C++
UE4Editor.exe!FEngineLoop::Tick() Line 3669	C++
UE4Editor.exe!GuardedMain(const wchar_t * CmdLine, HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 166	C++
UE4Editor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 209	C++
UE4Editor.exe!__scrt_common_main_seh() Line 283	C++
kernel32.dll!00000000778b59cd()	Unknown
ntdll.dll!0000000077a1385d()	Unknown

Callstack for the property copy on instanced objects in the world which can also be instanced C# actors as opposed to blueprint which also exhibit the same issues:
UE4Editor-Engine.dll!UEngine::CopyPropertiesForUnrelatedObjects(UObject * OldObject, UObject * NewObject, UEngine::FCopyPropertiesForUnrelatedObjectsParams Params) Line 13491	C++
UE4Editor-UnrealEd.dll!ReplaceActorHelper(UObject * OldObject, UClass * OldClass, UObject * & NewUObject, UClass * NewClass, TMap<UObject *,UObject *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UObject *,UObject *,0> > & OldToNewInstanceMap, TMap<UClass *,UClass *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UClass *,UClass *,0> > & InOldToNewClassMap, AActor * OldActor, TMap<FSoftObjectPath,UObject *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<FSoftObjectPath,UObject *,0> > & ReinstancedObjectsWeakReferenceMap, TMap<UObject *,FActorAttachmentData,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UObject *,FActorAttachmentData,0> > & ActorAttachmentData, TArray<FActorReplacementHelper,FDefaultAllocator> & ReplacementActors, bool bPreserveRootComponent, bool & bSelectionChanged) Line 1816	C++
UE4Editor-UnrealEd.dll!FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner(TMap<UClass *,UClass *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UClass *,UClass *,0> > & InOldToNewClassMap, UObject * InOriginalCDO, TSet<UObject *,DefaultKeyFuncs<UObject *,0>,FDefaultSetAllocator> * ObjectsThatShouldUseOldStuff, bool bClassObjectReplaced, bool bPreserveRootComponent, bool bArchetypesAreUpToDate) Line 2013	C++
UE4Editor-UnrealEd.dll!FBlueprintCompileReinstancer::ReplaceInstancesOfClass(UClass * OldClass, UClass * NewClass, UObject * OriginalCDO, TSet<UObject *,DefaultKeyFuncs<UObject *,0>,FDefaultSetAllocator> * ObjectsThatShouldUseOldStuff, bool bClassObjectReplaced, bool bPreserveRootComponent) Line 1460	C++
UE4Editor-UnrealEd.dll!FBlueprintCompileReinstancer::ReinstanceInner(bool bForceAlwaysReinstance) Line 660	C++
UE4Editor-UnrealEd.dll!FBlueprintCompileReinstancer::ReinstanceObjects(bool bForceAlwaysReinstance) Line 904	C++
UE4Editor-USharp.dll!Export_SharpHotReloadUtils_ReinstanceClass(FSharpHotReloadClassReinstancer * Reinstancer) Line 45	C++
[Managed to Native Transition]
UnrealEngine.Runtime.dll!UnrealEngine.Runtime.ManagedUnrealTypes.BuildTypes() Line 907	C#
UnrealEngine.Runtime.dll!UnrealEngine.Runtime.ManagedUnrealTypes.Load() Line 63	C#
UnrealEngine.Runtime.dll!UnrealEngine.Runtime.Native.NativeFunctions.OnNativeFunctionsRegistered() Line 189	C#
UnrealEngine.Runtime.dll!UnrealEngine.Runtime.Native.NativeFunctions.RegisterFunctions(System.IntPtr registerFunctionsAddr) Line 99	C#
UnrealEngine.Runtime.dll!UnrealEngine.EntryPoint.DllMain(string arg) Line 70	C#
[Native to Managed Transition]
[Managed to Native Transition]
Loader.dll!UnrealEngine.AssemblyLoader.Load() Line 475	C#
[AppDomain (DefaultDomain, #1) -> AppDomain (Domain30654212 4, #6)]
Loader.dll!UnrealEngine.EntryPoint.ReloadAppDomain() Line 249	C#
Loader.dll!UnrealEngine.EntryPoint.ReloadAppDomain.AnonymousMethod__0() Line 195	C#
Loader.dll!UnrealEngine.GameThreadHelper.Tick(float deltaTime) Line 672	C#
[Native to Managed Transition]
UE4Editor-USharp.dll!FTickerDelegateWrapper::Tick(float DeltaTime) Line 9	C++
UE4Editor-Core.dll!FTicker::Tick(float DeltaTime) Line 98	C++
UE4Editor.exe!FEngineLoop::Tick() Line 3669	C++
UE4Editor.exe!GuardedMain(const wchar_t * CmdLine, HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 166	C++
UE4Editor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 209	C++
UE4Editor.exe!__scrt_common_main_seh() Line 283	C++
kernel32.dll!00000000778b59cd()	Unknown
ntdll.dll!0000000077a1385d()	Unknown

@Algorithman has done some great work looking into this issue. It isn't an issue in UEngine::CopyPropertiesForUnrelatedObjects as described in the original post, but instead an issue in the hotreload default value propagation in UpdateDefaultProperties (#80 also stems from this issue). See the PR has has made for UE4 here https://github.com/EpicGames/UnrealEngine/pull/5830.
There are also issues with reinstancing subobjects in ReplaceObjectHelper (KismetReinstanceUtilities.cpp) which result in non structurally modified subobjects to become corrupt after hotreload (this impacts the C++ hotreload too). This can be tested by defining a component in C++, adding it a blueprint, modifying an exposed property on that component in C++, then hotreloading. It looks like an RF_ArchetypeObject is marked as "pending kill" and the replacement object doesn't work as expected in its place (possibly an object reference isn't being updated?). It should be noted that if you make a structural change, then modify the value in subsequent compiles, it doesn't have the same issue, but there are asserts which fire complaining about archetype object issues (bArchetypeReinstanced). These RF_ArchetypeObject tagged objects are suffixed with _GEN_VARIABLE, none of the other objects create the same issue.
Creating a correct fix for the subobject issue in ReplaceObjectHelper is a bit out of the scope of my knowledge area for how all of this is set up. There are some hacks which should work which involve skipping the RF_ArchetypeObject tagged objects whilst reinstancing, but this will most likely cause issues in other places. I could change USharp to detect a CDO change and force a full recompile if so (this would result in that assert being fired on non-structural changes, but it should work. I'm unsure of the side effects).

Fixed in https://github.com/pixeltris/USharp/commit/b79d8d406d1d010c07f552a2d4264f3acdec4d58
The ReplaceObjectHelper issue as described above requires engine source modification, see https://github.com/pixeltris/UnrealEngine/tree/hotreload.


Add helm chart

Summary of the changes (in less than 80 chars)

Add templates for Helm chart
Modify readme to include Helm instructions

Addresses https://github.com/loic-sharma/BaGet/issues/457

Is this ready to merge already?

@ferarias , yes this branch is ready to merge. Although it may need some more thorough testing to make sure it works in all scenarios. We've got it running in our environment.

it's been a couple years so closing


Arch arm fix sticky bit clearing

"Trivial" additions for the sticky status flags' clearing for mainline faults.
And some typos.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@f897215). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master   #13579   +/-   ##
=========================================
  Coverage          ?   52.45%
=========================================
  Files             ?      322
  Lines             ?    46592
  Branches          ?    10768
=========================================
  Hits              ?    24441
  Misses            ?    17246
  Partials          ?     4905

Continue to review full report at Codecov.

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


Fix coverage workflow so that it solves taxonomicCoverage1 problem

With Sadie's help I figured out how to do this but to ensure it is reproducible depending on number of taxon need to rewrite in vignette.

Fixed by double nesting taxon inside of list.


Link for HTTP status code does not seem valid

"A healthy HTTP response has a status code between 200 and 399."
This page leads to https://www.microsoft.com/en-us/download/details.aspx?id=55979 page which does not have data regarding HTTP status codes.

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

ID: 05a592c5-5d16-e44d-d6c7-5d0b2c0833c4
Version Independent ID: dd9d601c-5d4b-f1bc-01df-7e1d6b57d0da
Content: Health monitoring overview for Azure Application Gateway
Content Source: articles/application-gateway/application-gateway-probe-overview.md
Service: application-gateway
GitHub Login: @greg-lindsay
Microsoft Alias: greglin

Thanks for the feedback! I have assigned the issue to the content author to investigate this and update the document as appropriate.

@SaiKishor-MSFT , thank you for your feedback.
@greg-lindsay , for your review.

Thanks for the information here. We currently have a large backlog of issues, so I am working through them slowly. I see that link is wrong and will address it shortly.

https://github.com/MicrosoftDocs/azure-docs-pr/pull/238745 is the PR to fix the link. Thanks for your contribution!
The change will be visible next week. #please-close


Changed AppVeyor Build Number not detected.

Just changed one of my projects to use Cake.Codecov and which changes the build version of AppVeyor (using GitVersion) and this change was not detected when trying to upload the coverage report.
The codecov tool still detected the old build version, and since I believe this is pretty much related to being run from Cake we should consider perhaps adding some detection logic in the Cake.Codecov addin to grab the build number. Perhaps by reading the environment variable set by gitversion (GitVersion_SemVer) and if it exists, use the output from the mentioned environment variable, append .build and appending the APPVEYOR_BUILD_NUMBER. (Or more simplified, using the APPVEYOR_BUILD_VERSION).
I'm still testing it what's best on my own project, to see the best aproach, but opening this for tracking.

Looks like this requires to read both GitVersion_FullSemVer and APPVEYOR_BUILD_NUMBER.
Instead of having this done automatically, perhaps we could provide an option in the settings to provide such parsing?

Looks like all set environment variables isn't available until after cake have finished its execution. Seems like this will need to be up to the user anyhow.
Too bad, as the upload would seem broken by any user using GitVersion.

Ops, didn't mean to close it XD

Okay, so unless there is a way to override the job argument that codecov-exe sends to codecov.io, then this is pretty much blocked until there is a way.

Thanks for finding this...I double checked my AppVeyor code in codecov-exe and it's the same as the bash and python uploader. I think it's just a bug in general. I noticed the bug when I clicked on the hyperlink to the appveyor build in codecov (it's broken). Was this the place where you noticed the bug? Just curious if there are other places. Maybe the commandline args build will help? Thanks!

I noticed the bug when I clicked on the hyperlink to the appveyor build in codecov (it's broken). Was this the place where you noticed the bug?

No, I noticed it first when trying to upload a coverage report from my Cake.Transifex project.
I first tried to use the Build argument, but that doesn't help anything unfortunately.
As seen here: https://ci.appveyor.com/project/AdmiringWorm/cake-transifex/build/0.3.0-alpha.8.build.42#L317 (Look at line 317-324)
It's the job argument that needs to be overridden.
But as I mentioned, I found out why it happens, until cake have finished the execution the environment variables isn't updated.
As such, I don't think there is any way to fix this problem in the library (or in the executable either).
The current workaround I had to do was to create/update the necessary environment that should have been passed with the job argument.
https://github.com/WormieCorp/Cake.Transifex/blob/develop/build.cake#L159-L166
I'm thinking, we should perhaps mention this workaround in the Readme.md somewhere. Thoughts?

If there is a better workaround that could be implemented in the addin library though, that would be better.
But I can't see any way to make that happen.

What if I exposed Job in the commandline of codecov-exe. Any you could override it?

while that certainly would be an option, it could be a little wrong in this case.
I looked a little at the source of codecov-exe, and noticed the job variable is constructed from three different environment variables.
In this case, using the Job parameter directly would probably be more of a pain than manually setting the APPVEYOR_BUILD_VERSION environment variable when calling Codecov in the cake script (Using ToolSettings.EnvironmentVariable Property).
An option to only pass the build version perhaps could be possible instead (not in the codecov-exe program, but only in the addin library)?

That Property could perhaps basically just set the APPVEYOR_BUILD_VERSION and other known environment values used to generate the job argument.

Yeah I agree with that! Allowing an override in the codecov-exe is not the best option.

An option to only pass the build version perhaps could be possible instead (not in the codecov-exe program, but only in the addin library

I'm cool with that or just documenting it in the readme.

Ops, forgot to reply XD.
I think documenting it would be for the best at first (perhaps under a section called KNOWN ISSUES), and perhaps at some point if enough people request it we should add an option to pass in the build version, or something else.

A quick example I'm thinking to perhaps add to the bottom of the README file:
Known Issues

Coverage report upload fails when using gitversion (or other tools that change the appveyor build version)
Workaround: Add the following in your Upload Coverage taskTask("Upload-Coverage")
    .Does(() =>
{
    var buildVersion = string.Format("{0}.build.{1}",
        variableThatStores_GitVersion_FullSemVer,
        BuildSystem.AppVeyor.Environment.Build.Version
    );
    var settings = new CodecovSettings {
        Files = new[] { "coverage.xml" },
        EnvironmentVariables = new Dictionary<string,string> { { "APPVEYOR_BUILD_VERSION", buildVersion } }
    };
    Codecov(settings);
});

Thoughts?

I like it!
On another note,if you want, feel free to update the readme file at the end with your handle..
Feel free to open an issue or ask a question in Gitter by tagging us: @larzw and/or @AdmiringWorm.
and the copyright in the License file and Cake.Codecov.csproj:
Copyright (c) 2017 Larz White and Kim J. Nordmo
I'll add you as an owner on Nuget too.

Sure thing, I'll do that.
Not sure about editing the License and Cake.Codecov.csproj though.
You're the one that actually done the work, I just added the dogfooding of the addin.

I'm pushing out the change to the Readme.md, when I eventually make a change to the actual addin code I'll update the license and csproj

Should we close this now?

I'm not sure, the issue isn't exactly fixed. Only mentioned.
But could probably close it and add the Wontfix label (I added a few new labels earlier today)


Update MStack to use pollFirst() instead of pop()

This fixes the exception thrown on stack underflow.
ArrayDeque#pop throws a NoSuchElementException when stack is empty, whereas pollFirst returns null in such cases.

Good catch, thank you!


Fix issue #26

get_meta_window().get_outer_rect() doesn't exist anymore it seems.

I can confirm here that your fix works on Gnome 3.16.2.
Thanks too.

Very good!


figure out how partitions are going to be implemeneted

Architecture Planning for Parallel Processing
Currently, the approach involves implementing parallelism at the entity level. The original concept, however, aimed at partitioning the world into distinct segments optimized for parallel processing. For instance, if there are 32 cores available, the idea is to have 32 partitions of the world that can operate concurrently.
Considerations and Challenges:

Efficiency: Assess the efficiency gains and trade-offs between entity-level parallelism and world partitioning.
Transition Handling: Ensure seamless transitions between partitions to prevent conflicts and maintain data integrity.
Concurrency Issues: Address concerns related to simultaneous access to shared resources within different partitions.

Future Steps:

Evaluation: Determine the performance impact of transitioning from entity-level parallelism to world partitioning.
Optimization: Explore optimization techniques such as RGB coloring or quadtree structures to manage entity transitions between partitions efficiently.
Priority: Assess the priority of this optimization relative to other development needs.

By addressing these considerations, the system can potentially leverage parallel processing at a larger scale while mitigating potential concurrency challenges.

Architecture Planning for Parallel Processing
Currently, the approach involves implementing parallelism at the entity level. The original concept, however, aimed at partitioning the world into distinct segments optimized for parallel processing. For instance, if there are 32 cores available, the idea is to have 32 partitions of the world that can operate concurrently.
Considerations and Challenges:

Efficiency: Assess the efficiency gains and trade-offs between entity-level parallelism and world partitioning.
Transition Handling: Ensure seamless transitions between partitions to prevent conflicts and maintain data integrity.
Concurrency Issues: Address concerns related to simultaneous access to shared resources within different partitions.

Future Steps:

Evaluation: Determine the performance impact of transitioning from entity-level parallelism to world partitioning.
Optimization: Explore optimization techniques such as RGB coloring or quadtree structures to manage entity transitions between partitions efficiently.
Priority: Assess the priority of this optimization relative to other development needs.

By addressing these considerations, the system can potentially leverage parallel processing at a larger scale while mitigating potential concurrency challenges.

not relevant anymore. doing entity-wide parallelism for now.


Change some network requests to be asynchronous

Done for :

login to Open reader server (get client auth token)
get T token

First step for issues #344 and #724

When I run this with invalid credentials, I get the following log output:
2017-03-26 16:24:35.847027 Vienna[96407:784488] GoogleReader.m:941 -[GoogleReader loadSubscriptions:] Firing directly
2017-03-26 16:24:35.847078 Vienna[96407:784488] GoogleReader.m:947 -[GoogleReader loadSubscriptions:] Token not available, registering for notification
2017-03-26 16:24:37.775064 Vienna[96407:784488] GoogleReader.m:264 -[GoogleReader authenticateForRequest:] Start first authentication...
2017-03-26 16:24:37.795669 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.795862 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.796003 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.796287 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.796402 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.796540 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.796825 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.796959 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.797085 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.797396 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.797485 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.797600 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.797940 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.798039 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.798155 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.798429 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.798527 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.798648 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.798983 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.799105 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.799243 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.799534 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.799637 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.799718 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.799914 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.799980 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.800056 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.800252 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.800319 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.800435 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.800766 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.800919 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.801077 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.801369 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.801446 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:37.801524 Vienna[96407:784488] GoogleReader.m:173 -[GoogleReader authenticateForRequest:] Another instance is authenticating...
2017-03-26 16:24:38.178567 Vienna[96407:784527] [] __nw_connection_get_connected_socket_block_invoke 10 Connection has no connected handler

On the positive side of things, Vienna no longer hangs with invalid credentials (free trial expired) 😄
2017-03-26 16:24:39.642691 Vienna[96407:784488] [strongRequest responseStatusCode] = 403
2017-03-26 16:24:39.642843 Vienna[96407:784488] [strongRequest responseHeaders] = {
    Connection = close;
    "Content-Length" = 24;
    "Content-Type" = "text/plain; charset=UTF-8";
    Date = "Sun, 26 Mar 2017 05:24:26 GMT";
    Server = nginx;
    "X-BQ-LoginErrorReason" = FreeTrialExpired;
}

It's just some remnants of my debugging code. It is done with Llog, so it will not do anything in Deployment builds.
If you want, I can remove it but I prefer keeping it until we finish moving away from ASIHTTPRequest.

I was thinking more about waiting for the first authentication to complete before calling -(void)authenticateForRequest:(ASIHTTPRequest *)clientRequest again.

As the requests are launched on multiple threads by RefreshManager, one has to check that the first request is completed, otherwise subsequent requests must be queued.
I agree I will have to rename some methods (especially this one) to reflect more accurately their role and behavior.

Will have to revisit it, I've noticed problems getting a T token in certain circumstances.


Bug: no snippets display after using authentication

Since adding authentication to snippets function it no longer displays results.

Fixed


TAR (trans-activation response element) binding

Suggested new GO term for annotating HIV Tat protein:
trans-activation response element binding ; GO:NEW
is_a: pre-miRNA binding ; GO:0070883
synonym: TAR binding (PMID:25116364)
Interacting selectively and non-covalently with an trans-activation response (TAR) element, a hairpin RNA structure located at the 5’ end of all HIV-1 transcripts, and which is required for trans-activation of a viral promoter.
Wikipedia: Trans-activation_response_element_(TAR)
RFam: RF00250
PMID:25116364, GOC:PARL, GOC:bf
Is this the level of specificity we want to capture in GO? Will add in as a narrow synonym to 'pre-miRNA binding ; GO:0070883' if not.
Thanks!

Hi @rebeccafoulger ,
I think the level of specificity would be fine; there are several other ‘x response element binding’ terms in GO.
It would be nice if we could logically define the new term using an SO term (via has_input), similarly to GO:0035198 ‘miRNA binding’, but SO doesn’t seem to have a class for TAR, and most terms in the ‘RNA binding’ note don’t have logical defs anyway.
Note there’s a tiny typo in your suggested def (“Interacting … with an trans-activation response …”).
Assigning to you, thanks.

Created in TG Free-from (with typo corrected in definition- thanks Paola!):
GO:1990970 Label: trans-activation response element binding


Create Node Pipeline CI

Creating the new pipeline for node

[x ] primeiro item

build failed, no tests was set


OpenAI usage tracker

Usage tracker broken

site 403s could fix or not include given openAI keys have changed so dont know what price is, maybe ask Joey?

So had a look into this:
currently everything is undocumented and their is no official way (although apparently one is coming). The only working way I found is to run a get request to https://api.openai.com/v1/usage?date=YYYY-MM-DD every day. This will then return token usage which you can map to the public pricing at https://openai.com/pricing and then calculate cost in $ then convert to £.
This is very jank so ive decided to temp remove this feature until there is a more official method.
PS the original method that joey used now needs a browser session id as auth which caused the implementation to break.


Add names to the rat pet 🐀

Please describe your idea.
We should add "Splinter" to RAT_NAMES in src/panel/pets/rat.ts to stick with the TMNT theme. Also, we should add "Remi" from Ratatouille. 🐀
Describe how the idea would be helpful
Adding the names listed above would be more inclusive of famous rats from TV.

Good idea!


APM server 8.0+ returns 500 or 599 instead of 503

Describe the bug
APM server 8.0+ returns 500 (timeout on connection - timeout is specified by the client) or 599 (not sure when this happens) instead of 503 (queue full). Doesn't look like it matters much to the agent, but we do have a custom error string for 503s in ApmServerConfigurationSource, so we may want to remove or add the other options

@jackshirazi the error should either be 500 or 499, not 599.


If there is any validation error on service page then should display validation message.

Describe the bug
Without validation message it becomes really difficult to identify why system is not allowing to save service.

Added Validation Message to identify missing Field


Not running by default on AlmaLinux 8

jnv: /lib64/libc.so.6: version `GLIBC_2.29' not found (required by jnv)
jnv: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by jnv)

On a AlmaLinux 8 box. This is because the latest the almalinux repos has is:
glibc-2.28-236.el8_9.12.i686 : The GNU libc libraries
Repo        : baseos
Matched from:
Provide    : libc.so.6

[!IMPORTANT]
Starting from v0.3.0, the transition from libjq Rust binding j9 to jq clone jaq was made.
This change eliminated the need to manage C-related dependencies that include external tools like autoconf, thus simplifying the build process.
However, please note that some filters are not yet supported by jaq.
For more details, refer to GitHub issue #24.
Please continue to provide feedback regarding this transition.

From https://github.com/ynqa/jnv/tree/v0.3.0?tab=readme-ov-file#features.
Due to changes in the situation, I will close all issues related to the failure of building j9 during installation. If any new problems arise, please feel free to reopen this issue or create a new one.


Inserting serial numbers is getting slower when having high number of stock items

Please verify that this bug has NOT been raised before.

[X] I checked and didn't find a similar issue

Describe the bug*
I tried to migrate our 5 years of historical production data into the InvenTree with a python script using the InvenTree API.  I started to ran into sort of performance issues after inserting ~67K stock items (took a couple of day) what I thought worth to investigate before moving forward. A single request for creating a stock item with a single serial takes ~3s to complete now. It was not so slow at the beginning if I remember correctly, but now it started to be a bottleneck.
(I am running InvenTree with MySQL on a notebook with reasonable performance (8th gen i9))
As a first idea I added some timing measurement here:
https://github.com/martonmiklos/InvenTree/blob/stockitem_save_performance_tracking/InvenTree/stock/models.py#L478
Which results the following for a single StockItem + serial insert:
Validate unique: 13.355768998735584 ms
Clean: 0.7472590077668428 ms
Update serial: 0.5881280085304752 ms
Super save:<PHONE_NUMBER>991752 ms
Validate unique: 15.880550010479055 ms
Clean: 0.6893499958096072 ms
Update serial: 0.5778909981017932 ms
Field update: 0.9629400010453537 ms
Super save:<PHONE_NUMBER>865316 ms
Tracking info: 1.3864210050087422 ms

The first thing what was strange for me that the StockItem::save got called twice from the API call
Here:
https://github.com/inventree/InvenTree/blob/master/InvenTree/stock/api.py#L898
And here:
https://github.com/inventree/InvenTree/blob/master/InvenTree/stock/api.py#L905
i do not have in depth knowledge on debugging such a problems with django+python (and maybe MySQL) so any hint/tip what I can look into/try would be welcome.
Steps to Reproduce

Expected behaviour
Adding a single serial number should be reasonably fast regardless to the stock item count in the system :)
Deployment Method

[ ] Docker
[X] Bare metal

Version Information
Latest master
Please verify if you can reproduce this bug on the demo site.

[ ] I can reproduce this bug on the demo site.

Relevant log output
-

My assumption is that this is related to how MPTT handles tree objects. Because if you insert one element into a nested set datastructure, you need to increment the lft and rght values in all other stock items depending if they are only on the left or right. And because of that a nested set is not very performant for inserting. It would be good, if MPTT would offer some way of bulk inserting so that the increment task needs to be done only once and then a view nodes can be inserted. But other than that I have no idea how to fix that performance issue.
I would be really interested in @SchrodingersGat experience with stock items on large instances, mine is not that big.

Well I have managed to enable the SQL logging and yes quite a lot of SQL query got executed when doing a single serial number insertion:
https://pastebin.com/a4d6UKZj

@martonmiklos you could try using a profiling tool (such as cProfile.runctx ) to work out which parts of the code are taking up the most amount of time on one of these long-running requests. From there, we can dig down into the SQL that is being executed. But first we should find the higher level functions which are calling the SQL

Using cProfile, it looks like the main culprit may be the notify_low_stock_if_required method. When a new stock item is created, we offload a call to notify low stock (after checking if this is required). This takes up a lot of time when there are many stock items in the database. Commenting out this method speeds up insertion significantly. Might be a good place to start :)

Closed by https://github.com/inventree/InvenTree/pull/6051


bug: Disabling telemetry from the UI has no effect

Meltano Version
2.6.0
Python Version
3.8
Bug scope
Other
Operating System
Linux - python:3.8 Docker image
Description
Reproduction steps:

docker run --entrypoint=/bin/bash -p 5000:5000 -it python:3.8

pip install pipx && pipx install meltano==2.6.0 && pipx ensurepath && bash

meltano init testproject && cd testproject && meltano --log-level=debug ui

Open your browser (n.b. I used Firefox) to http://localhost:5000
In another shell within the environment, create a ProjectSettingsService to observe that send_anonymous_usage_stats is True:>>> from meltano.core.project_settings_service import ProjectSettingsService
>>> from meltano.core.project import Project
>>> ProjectSettingsService(Project('/testproject')).get_with_metadata('send_anonymous_usage_stats')
(True, {'name': 'send_anonymous_usage_stats', 'source': <SettingValueStore.DEFAULT: 'default'>, 'setting': <SettingDefinition send_anonymous_usage_stats (boolean)>, 'expandable': False, 'auto_store': <SettingValueStore.MELTANO_YML: 'meltano_yml'>, 'overwritable': True})

At this point, meltano.yml has the following content (modulo the random project ID):version: 1
default_environment: dev
environments:
- name: dev
- name: staging
- name: prod
project_id: testproject-d2c1652c-911d-4ef1-bd54-146c4d2573f5

And .meltano/analytics.json has "send_anonymous_usage_stats": true.
Click the "Disable" button in the popup at the bottom right of the browser:

No browser console errors/warnings were observed when this button was clicked.
Before exiting meltano ui, repeat step 5, and observe the same result.
Exit meltano ui by entering Ctrl-C in it's terminal (i.e. send it SIGINT), then wait for it to cleanly shut down.
Repeat step 5, and observe the same result.

Expected behaviour:
Either step 7 or step 9 (depending on the implementation of the feature) should have caused the send_anonymous_usage_stats setting to be changed from True to False.
The long output of meltano --log-level=debug ui can be provided upon request, but it didn't seem to have any interesting information. No log lines were emitted when the "Disable" button was clicked.
Code
No response

fyi @tayloramurphy @aaronsteers

@WillDaSilva thanks for the issue.
Seems like we have 2 options - make the buttons do what they're supposed or update the text to have folks update their meltano.yml file.
@WillDaSilva what's a weight estimate on just fixing the "Disable" button?
@aaronsteers let's not cut another release until this is fixed please.

what's a weight estimate on just fixing the "Disable" button?

@tayloramurphy I didn't know that button existed until this morning, so I'm not sure yet. I'll make this issue my highest priority, and get an estimate (or fix) asap.

@tayloramurphy Thoughts on simply removing the popup? The problem here isn't that the UI lacks a way to disable telemetry - it's that it misleads users into thinking that it has been disabled. Removing the popup should be very easy.

@WillDaSilva I'd be fine with removing it. The UI is deprioritized anyways and anything we can do to simplify and reduce code surface area makes sense to me.

Draft PR up: https://github.com/meltano/meltano/pull/6783
Will mark as ready once I've tested it.

@WillDaSilva @tayloramurphy this disables the UI's builting google analytics tracking:
https://github.com/meltano/meltano/blob/dfd9650170ff97fd69fdff7ac8dc7dc0841bf663/src/webapp/src/utils/setupToasted.js#L65
https://github.com/meltano/meltano/blob/dfd9650170ff97fd69fdff7ac8dc7dc0841bf663/src/webapp/src/utils/setupAnalytics.js#L10
So probably need permanen;ly disable/remove that if we're not using it anymore.

@pnadolny13 Are we collecting/using the Google Analytics data from the UI?

this disables the UI's built-in google analytics tracking
So, probably need to permanently disable/remove that if we're not using it anymore.

@tayloramurphy @pandemicsyn That the UI's telemetry can only be disabled from a 1-time popup seems like a bug in its own right. Its telemetry settings should come from Meltano's configuration on disk. I'm in favour of disabling it altogether until that is the case.

I have updated https://github.com/meltano/meltano/pull/6783 to remove the UI telemetry code. Alternatively, we can keep it around but disable it until we resolve the configuration issue, but I'd rather not keep unused code around. If we want to re-enable it later, we can refer to the git history.

@WillDaSilva it looks like it was supposed to obey the meltano config:
https://github.com/meltano/meltano/blob/dfd9650170ff97fd69fdff7ac8dc7dc0841bf663/src/webapp/src/main-embed.js#L21
https://github.com/meltano/meltano/commit/124a3ae093131773b4e01510e1a5a3ff3da3fee6
That popup may always present to comply with cookie consent laws now, or its a bug, or something else.  (this is all way before my time, just poking around and sharing)

(this is all way before my time, just poking around and sharing)

@pandemicsyn Thanks, I appreciate it.

it looks like it was supposed to obey the meltano config

@pandemicsyn That's good. Assuming it works, that means we can keep the Meltano UI telemetry mostly unchanged. The trouble is that we don't want to display the "disable tracking" toast unless it disables all Meltano Telemetry, rather than just the UI telemetry, but we may have to show it to comply with tracking consent laws. With that in mind, I'm still in favour of disabling it (as https://github.com/meltano/meltano/pull/6783 does) until we can make the "Disable" button in the UI disable it in meltano.yml too.

@pnadolny13 Are we collecting/using the Google Analytics data from the UI?

@WillDaSilva yes it looks like we're getting UI events in GA. I'm not pulling them into Snowflake or anything so I'm not personally using them. I also had created https://github.com/meltano/meltano/issues/6755 to track converting those to Snowplow events.

I'm in favour of disabling it altogether until that is the case.

@WillDaSilva As am I. At this point we need to be completely off GA on the Meltano product side.


"default primary key attribute (id) is not set up correctly" message on console

Sails version: v1.0.1
Node version: v8.9.4
NPM version: 5.6.0
DB adapter name: sails-mongo
DB adapter version: 1.0.0
Operating system: Mac

Hi
Sails version: v1.0.1
at start i see this on console:
debug: It looks like the default datastore for this app is sails-mongo,
debug: but the default primary key attribute (id) is not set up correctly.
debug: When using sails-mongo, primary keys MUST have columnName: '_id',
debug: and must not have autoIncrement: true.
debug: Also, if dontUseObjectIds is not set to true for the model,
debug: then the type of the primary key must be string.
debug:
debug: We'll set this up for you this time...
debug:
info: ·• Auto-migrating...  (alter)
info:    Hold tight, this could take a moment.
info:  ✓ Auto-migration complete.
The app is working but this message is annoying
How to avoid this?
Thanks

ok, fixed

ok, fixed

You need to set columnName: '_id' on your default id attribute in config/models.js.

I see, thanks!
Il giorno ven 27 apr 2018 alle 12:09 Hamza<EMAIL_ADDRESS>ha
scritto:

You need to set columnName: '_id' on your default id attribute in
config/models.js.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/balderdashy/sails/issues/4378#issuecomment-384927583,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACI2gT1pzIQ8zhD58utq7O-HTBfp6vOdks5tsu5zgaJpZM4Tp5tm
.

--
Antonio Casula
mobile   +41 (0)79 9692274
ch.linkedin.com/in/antoniocasula/

@hamzaOp

You need to set columnName: '_id' on your default id attribute in config/models.js, see here.

It also says there:

The best way to change the primary key for your model is simply to customize the columnName of that default attribute.

which is what also causes the above message to appear.
Which, in turn, now makes me wonder what Sails is using as my primary key now, since it tells me:

We'll set this up for you this time...

But, I don't want Sails to set this up for me this time or any other, I want to freely chose my freaking primary key attribute, just like we were able to in 0.12
The amount of code I would need to change now, just because of this pointless limitation is staggering. Which means we will now never be able to upgrade Sails to 1.0..........


Analyzer doesn't accept covariant implementations of covariant interfaces

Revealed by test cascaded_forwarding_stubs_test.
class A {}

class B extends A {}

class C {
  void f(B x, B y) {}
}

abstract class I1 {
  void f(covariant A x, B y);
}

// D contains a forwarding stub for f which ensures that `x` is type checked.
class D extends C implements I1 {}

Rating this P2 because it's a false negative v the CFE. However, given that its an edgecase around covariant, not a P1.

also affects: forwarding_stub_tearoff_test, which has almost the exact same case.

duplicate of https://github.com/dart-lang/sdk/issues/34329 ?


XmlInputFormat produces duplicate rows in large files

There's a bug in the XmlInputFormat which causes duplicate rows to be produced when the input file spans over more input splits (for plain text and splittable compression format) in cases, where there is no whitespace between closing and opening row tags.
How to reproduce:

Use large XML file (e.g the protein file from http://www.cs.washington.edu/research/xmldatasets/www/repository.html#pir )
Modify to remove whitespace between the closing and opening row tags (e.g  )
See that the rows are duplicated

This is due to the fact that the condition which checks the end of the file position isn't reached as the check of the start tag returns true before getting to that point.

I will try to reproduce this soon. Thanks for reporting this.

This seems to be fixed by #161
There is however another bug which appeared after this PR on the same data when using compression codecs.
`
org.apache.spark.SparkException: Job aborted due to stage failure: Task 1 in stage 123.0 failed 1 times, most recent failure: Lost task 1.0 in stage 123.0 (TID 131, localhost): java.lang.ArrayIndexOutOfBoundsException: 65536
[info] 	at org.apache.hadoop.io.compress.bzip2.CBZip2InputStream.hbCreateDecodeTables(CBZip2InputStream.java:666)
[info] 	at org.apache.hadoop.io.compress.bzip2.CBZip2InputStream.createHuffmanDecodingTables(CBZip2InputStream.java:793)
[info] 	at org.apache.hadoop.io.compress.bzip2.CBZip2InputStream.recvDecodingTables(CBZip2InputStream.java:765)
[info] 	at org.apache.hadoop.io.compress.bzip2.CBZip2InputStream.getAndMoveToFrontDecode(CBZip2InputStream.java:801)
[info] 	at org.apache.hadoop.io.compress.bzip2.CBZip2InputStream.initBlock(CBZip2InputStream.java:504)
[info] 	at org.apache.hadoop.io.compress.bzip2.CBZip2InputStream.changeStateToProcessABlock(CBZip2InputStream.java:333)
[info] 	at org.apache.hadoop.io.compress.bzip2.CBZip2InputStream.read(CBZip2InputStream.java:399)
[info] 	at org.apache.hadoop.io.compress.BZip2Codec$BZip2CompressionInputStream.read(BZip2Codec.java:483)
[info] 	at org.apache.hadoop.io.compress.BZip2Codec$BZip2CompressionInputStream.read(BZip2Codec.java:502)
[info] 	at com.databricks.spark.xml.XmlRecordReader.readUntilEndElement(XmlInputFormat.scala:194)
[info] 	at com.databricks.spark.xml.XmlRecordReader.next(XmlInputFormat.scala:143)
[info] 	at com.databricks.spark.xml.XmlRecordReader.nextKeyValue(XmlInputFormat.scala:128)
`

Let's make a separate issue. I would appreciate if you open anither issue for this.

Sure, no problem


[TASK] automatically build necessary engine images for test

There are a few engine images by name e.g. longhornio/longhorn-test:version-test.4-3.3-3.1-1 and longhornio/longhorn-test:upgrade-test.4-3.3-3.1-1 are used by Longhorn integration test, e.g. here and here . So far those images are manually built using scripts at https://github.com/longhorn/longhorn-tests/tree/master/manager/test_containers .
The compatibility test images are built using https://github.com/longhorn/longhorn-tests/blob/master/manager/test_containers/compatibility/generate_version_image.sh .
The upgrade test image is a bit more complicated. It requires a manually tagged engine image (https://github.com/longhorn/longhorn-tests/blob/master/manager/test_containers/upgrade/generate_live_upgrade_image.sh#L4 ) to act as the base. And this manual tagged engine image cannot have the same Git commit ID as an existing engine image. So normally what we did is:

Clone the latest Longhorn engine
Add one more commit to it.
Build it locally.
Tag the image to e.g. longhornio/longhorn-engine:live-upgrade-4-3-1 then run the build script.

Currently, we also need to update the version number by hand. For example, the current vanilla engine version output is something like:
$ ./bin/longhorn version --client-only
{
	"clientVersion": {
		"version": "dbe126f",
		"gitCommit": "dbe126f4ad5cd7aa2277537ed2aec64827523573",
		"buildDate": "2020-09-21T21:44:36+00:00",
		"cliAPIVersion": 4,
		"cliAPIMinVersion": 3,
		"controllerAPIVersion": 3,
		"controllerAPIMinVersion": 3,
		"dataFormatVersion": 1,
		"dataFormatMinVersion": 1
	},
	"serverVersion": null
}

We should be able to update the version automatically based on the output of the current version.
So ideally, we should able to generate the correct build of engine test images by providing the engine repo to it, so the script can:

Pull the repo
Add a commit to generate a different Git commit
Compile (simply build & package is enough. we can skip the test since it's upstream engine)
Use the version output to generate the correct compatible test engine image names as well as the upgrade test engine image, for both AMD64 and ARM64.

And those can be done on the basis of necessity.
I am thinking probably we can use a Jenkins job to do it manually, instead of relying on Drone. It's possible to do it through Drone if it detects the version change, but there can be incompatible changes in the same release cycle, so it's better if we can trigger the build manually.

I would like to join this feature's implement and below are my current plan to try to achieve the goal :

Use terraform create an arch amd64 machine

On that machine, pull latest longhorn-engine, add minor change and commit
Build docker image, push to https://hub.docker.com/r/longhornio/longhorn-test

Use terraform create an arch arm64 machine

On that machine, pull latest longhorn-engine, add minor change and commit
Build docker image, push to https://hub.docker.com/r/longhornio/longhorn-test

Use docker manifest combine two different arch engine test images with correct tag

Merge above steps/scripts into longhorn-engine build pipeline, make this feature automate

( need know more about longhorn build process)

cc @innobead , @khushboo-rancher , @meldafrawi

Update local test result:
With environment variable docker_repo=chanow/longhorn-engine set,
Script will generate below 2 test images auto tagged and push into docker hub as below result

chanow/longhorn-engine:version-test.5-3.3-3.1-1
chanow/longhorn-engine:upgrade-test.5-3.3-3.1-1

cc @innobead , @khushboo-rancher , @meldafrawi, @shuo-wu

Close this ticket because now we have private pipeline to build necessary arm64/amd64 test engine images.
Arm64 pipeline have no failure related to engine upgrade test

Build 181 : 5 failures
Build 182 : 8 failures


🧑💻: Style to Scrollbar

:red_circle: Title :Change Style of Scrollbar
:red_circle: Enhancement Aim : To make scrollbar attractive.
:red_circle: Changes : Make change in color and give radius to thumb of scrollbar.
Screenshots 📷

:white_check_mark: To be Mentioned while taking the issue :

Full name : Zala Bhavy
What is your participant role? Gssoc'24

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

Can you please assign this to me?
Full name: Miran Firdausi
What is your participant role? Gssoc'24
Thanks!

Full Name : Sneha Menat
Participant Role : GSSOC'24
@Avdhesh-Varshney please assign me this task!

@zalabhavy go ahead.


Create the add Salary feature

Create the add Salary feature using Strapi or any other preferred api for our EMS System

I have created the feature you can check in the pull request section

@demonicdeoxys Perfectly done. Good Job!


[FEA] explore using hyper-log-log to estimate the if we should continue with a partial aggregation.

Is your feature request related to a problem? Please describe.
In Spark if we are doing a distributed partial aggregation we technically don't need to complete the aggregation for the task to get the correct answer after the shuffle and final aggregation is complete.  The partial aggregation really is a performance optimization to try and reduce the size of the data before shuffling it. But at the same time there are cases where there really is no point in trying to combine all of the data together, because it will not reduce the size of the shuffled data.  Enough of the keys within a task are unique, so any computation that we do will just be wasted.
https://github.com/NVIDIA/spark-rapids/pull/10950 is an attempt to address this, but it has some serious flaws in that it assumes that keys for a task, that can be combined, will appear close to each other in the task's data. I think a lot of the time this is true, but not all of the time. Unless the window we are looking at is for the entire task we have no way to guarantee that combining more data would or would not be good.  If we know the total size of the data we can make some statistical assumptions, but we don't always know how large the data will be until we have seen it. And if we wait until the end of processing before we make a decision we will have already done a lot of processing and might have spilled a lot of data too.
https://github.com/NVIDIA/spark-rapids/issues/5199, https://github.com/rapidsai/cudf/issues/10652, and https://github.com/NVIDIA/cuCollections/pull/429 are issues to add in a HyperLogLog++ implementation on the GPU to help us do a very fast and efficient approximate count distinct operation. With that we should be able to make an informed decision at any point in time if the batches of data we have seen so far would combine to something smaller if we finished aggregating/combine them.
This does not solve all of the issues though.

In the common case we will only see a single input batch, or a small number of batches that likely combine together efficiently. We don't want to do extra computation unless we need to.
We also don't want to have to do a full first pass through all of the data before making some kind of a decision. For very large inputs with little to no chance of combining results we might generate a lot of memory pressure trying to keep everything in memory which can lead to a lot of spilling.
We also need to think about sorting vs hash partitioning the intermediate data instead of sorting it https://github.com/NVIDIA/spark-rapids/issues/10370
And finally we need to think about the optimization that was put in to avoid memory pressure when there are more output columns from an aggregation than input columns to it. In that case we may sort the input data proactively instead of taking the risk of sorting the intermediate data that appears would be larger.

Describe the solution you'd like
I propose that we keep some things the same as today. If we know that the input data is sorted start to do a first pass aggregation like we do today and release the batches as they are produced.
We also keep the sort fallback and heuristic for pre-sorting the data. The heuristic would be updated to do a approximate count distinct instead of a full count distinct though.  I think those can/should be addressed separately as a way to possibly reduce memory pressure and spill.
With the current code we do a full pass through all of the input data and put the results for each aggregation into a queue.  Once that pass is done, if there were multiple input batches, then we will try and combine them together through some merge aggregations. We will take groups of intermediate batches that add up to a size we know will fit in our GPU memory budget. We will concat them into a single batch, and then do the merge aggregation.  This will happen in a loop until we either have a single batch or no two consecutive batches could be combined together. They have to be consecutive batches for first/last to work properly. If there are still multiple batches after this second merge phase, then we will sort the data by the grouping keys and finally do a merge aggregation pass before outputting the results. This can result in three full passes through all of the input data, all of which is kept in memory, and might be spilled.
Instead I propose that we will start to do the initial pass through the data like we do today. But instead of stopping only after the first pass is complete. We will stop once we have enough data that it looks like it is worth trying to combine them. If that happens, then we will combine the results and calculate a HyperLogLog++ on the result. We will also start to calculate a HyperLogLog++ result for each subsequent batch we see. With these we can quickly estimate how much of a size reduction we will see if we combined multiple batches together, by combining the sketches and estimating the unique count. If the data looks like we can combine things and stay under our limit, then we should keep trying to combine them and update the HyperLogLog++ buffers for the newly produced batches. If they look like we cannot combine things to stay under our budget, then things start to be difficult, as we have a few choices.

We could sort the intermediate data + any new intermediate data that might be produced and output the batches from that. This might be replaced with hash partitioning in the future. https://github.com/NVIDIA/spark-rapids/issues/10370
we could just output the intermediate data we have seen so far with no further processing, and then start over with aggregating the rest of the data.
We could finish doing an initial pass through all of the data + combining as needed before we make a choice. That choice will be made using the HypeLogLog++ estimates. Then we will choose option 1 or 2.

The upside of option 1 is that we produce a full output like Spark on the CPU would. The downside is that this is mostly what we do today and there was little point in calculating the HyperLogLog++'s if we go this route. It just might reduce the amount of memory pressure we are under in a few cases by more aggressively combining batches early instead of waiting until the first pass is complete.
The upside of option 2 is that we don't do a sort at all, which can be really expensive in terms of memory pressure and computation. Even with https://github.com/NVIDIA/spark-rapids/issues/10370 not doing something is going to be faster than doing something more efficiently. The downside is that there is an unknown probability that the size of the shuffle data will be larger.
The upside of option 3 is that we now have complete, or nearly complete information, before we make a choice.  The downside is that we have to have done a complete pass through the data, which can lead to increased memory pressure.
To balance these I would like to see us start with option 3, as the memory pressure is no worse than it is today and it might get to be better if we start to combine things aggressively. If we know that there are no first or last aggregations, we could even try to combine them out of order if the sketches indicate that would be good.
If the data indicates that we have a lot of things that could be combined together based off of the ratio of approx_count_distinct vs the actual number of rows we have pending. Then we sort/re-partition to combine. If the data indicates that there is little if anything to combine, then we just start to release the partial aggregations that we have done so far.

A comment from @binmahone triggered another idea for me about a possible optimization that we could do with HyperLogLog++ sketches for each batch. We could have a custom GPU kernel that could evaluate in parallel all, or at least a very large number of combinations of batches. This would let us very quickly decide which batches, if any, would be worth combining and which might have no overlap with other batches. Essentially a clustering algorithm for the batches based on estimated overlap between them. It would need to know if we needed to maintain order or not (first/last), but that should not be too hard to deal with. Any batch with effectively no overlap at all could be released when it is ready (again first/last). I am not sure how common it is for overlaps to not occur between batches, but I can see it happening. For example if specific events occur in bursts, we could end up with things that combine well for a few batches, but not for others.

Another comment from @binmahone has spurred some more ideas about how we can/should integrate the per-sort optimization from #8618 into this work.
This issue describes doing a first aggregation pass over all of the data, with some more aggressive merging of data when specific size limits are met. It also talks about doing a full pass over the data before deciding what to do next. I don't see that changing with respect to #8618, but what I do see changing is when we do the first pass aggregation. I would say that we start off just like what is described here and do a first pass aggregation on the input batches until we hit an intermediate result that would go over the limit we have set. At that point we would calculate the HyperLogLog++ for the output of that aggregation result. If the high level plan heuristic from #8618 indicates that it is worth checking if the input will be smaller than the output then we first calculate the HyperLogLog++ of the input batche. If it looks like there is very little that could be combined (the input size is smaller than the output size). Then we keep the batch in a pre-aggregated state.  The HyperLogLog++ sketch for this batch could still be used to/combined with the sketches from batches that have been aggregated to make decisions about how to combine batches together. If we decide that it is worth combining batches together. Then we can lazily do the first pass aggregation on the batches that need it before doing a merge aggregation afterwards.  We also could look at doing hash partitioning of the data after doing a full pass over the data. A full pass would not necessarily involve doing a first pass aggregation. It would just involve having read in and cached all of the data for the task so we can make an informed decision on what to do next. That might involve re-partitioning the data before we do any aggregation on it. We can also use the approximate distinct count for all of the data to decide how many partitions we would need before doing that.

quick question: why are highlighting They have to be consecutive batches for first/last to work properly while agg functions like first is documented as non-deterministic in https://docs.databricks.com/en/sql/language-manual/functions/first.html ?

quick question: why are you highlighting They have to be consecutive batches for first/last to work properly while agg functions like first is documented as non-deterministic in https://docs.databricks.com/en/sql/language-manual/functions/first.html ? @revans2

tldr; Technically yes you are 100% correct.
But here is the long answer. It is not perfect though because there are a lot of caveats with it. Technically yes they don't have to be that way. But the reality is that they are close to deterministic enough that users start to assume that it is deterministic. Especially when running small tests in local mode. Also we can match it so why not? If we see a huge performance improvement from not matching the CPU then we can put that behavior under a flag and have it be fast by default.  For example in local mode without any failures the following will produce the same result all of the time.
df.groupBy("groupingKey").agg("FIRST(b)")

This is because FIRST is deterministic on the CPU except when it comes to shuffle. But the order of local batches is deterministic and so when all batches are local batches the order is deterministic.
If we want to abuse Spark a little with some knowledge about how it works we could even do.
df.partitionBy("groupingKey").sortWithinPartitions("a").groupBy("groupingKey").agg("FIRST(b)")

and it will produce the same result every single time.


Fixed typo

Description of PR
Fixed typo in strings, I know its minor change.
Relevant Issues
there was a missing article in the below files
essentialsfiltersdesktop.js
essentialsfiltersmobile.js
Checklist

[x] Compiles and passes lint tests
[x] Properly formatted
[x] Tested on desktop
[x] Tested on phone

Thanks for the effort :) But we feel the language is good for now! Do point out any errors you see in future.

Although we verify all our listings, we request you to follow all the guidelines and take the necessary precautions.

Looks like this is obsolete after the Essentials redesign. Anyways, thanks for the PR! :)


Handle DOS and BOT logs

Is your feature request related to a problem? Please describe.
n/a
Describe the solution you'd like
TS should handle DOS and BOT logs
DOS and BOT logging should be able to be sent to the publisher "telemetry_publisher", appropriately parsed and handled by the TS module, and given appropriate "telemetryEventCategory" fields.
Additionally the documentation should be update to reflect support for these logs types.
Minimum documentation to be updated:
https://clouddocs.f5.com/products/extensions/f5-telemetry-streaming/latest/event-listener.html
https://clouddocs.f5.com/products/extensions/f5-telemetry-streaming/latest/output-example.html
Describe alternatives you've considered
n/a
Additional context
n/a

Any logs sent to a Telemetry Streaming's event listener should be processed and forwarded by Telemetry Streaming. What kind of issues are experiencing with trying to forward DOS and Bot logs?


cleanup(hacks): just some reodering of lines to follow the template

The type of this PR is: cleanup

This PR resolves [CX-]
Description
After the RFC https://github.com/artsy/README/issues/390, I wanted to clean up this file a bit, so it's a better example.
Now all entries have a name, a time to remove, and the context of the hack, in that order.

PR Checklist (tick all before merging)

[x] I have included screenshots or videos to illustrate my changes, or I have not changed anything that impacts the UI.
[x] I have tested my changes on iOS and Android.
[x] I have added tests for my changes, or my changes don't require testing, or I have included a link to a separate Jira ticket covering the tests.
[x] I have added a feature flag, or my changes don't require a feature flag. (How do I add one?)
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added an app state migration, or my changes do not require one. (What are migrations?)
[ ] I have added a CHANGELOG.yml entry or my changes do not require one.

Ok this should be way cleaner now. I realized that I was mostly using this file as a text file, and many others as a rendered md file, so I ended up changing the format a bit so that it's clean and clear as both a text file and a md file.

Once small additional suggestion would be to create a new Hacks section in the main README meta area. I've added this to force.


Wrong proposal for 1-(x/y) rule

Hi I just tried to get rid of this warning and found out that there is an error in the recommendation:

BPARule-Issue.xlsx

This has been updated in 1.2.5


moving to go modules

This PR adds the go.mod file with the module name as github.com/Netflix/go-env

Superseded by #25


Forcing IPv4 in yt-dlp fixes 403 (temporarily?)

FYI @zackbloom; I think this only works because it makes the requesting IP look different and could get blocked again at anytime, but may save some money while we wait for actually needing a proxy service like Oxylabs.

Wow you’re a genius On Nov 21, 2023, at 22:51, Sam Sullivan @.***> wrote:
Merged #6 into main.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>


Correction for raw affiliation Hakai Inst., Victoria, BC, Canada

Correction needed for raw affiliation Hakai Inst., Victoria, BC, Canada
raw_affiliation_name: Hakai Inst., Victoria, BC, Canada
new_rors: 02pry0c91
previous_rors: 01a583453
works_examples: W3216353342
contact: 2b28f3c4c5466f7918c062f955fd3d71:f4f25344 @ ourresearch.org

This issue was accepted and ingested by the OpenAlex team on 2024-10-10. The new affiliations should be visible within the next 7 days.


grammer fix

remove text "app" app

@I-Cat : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@I-Cat : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@PRMerger14
Okay


Players without perms can do /gmc and ignore regions

there are the perms i have:

but when i do /gms or /gmc this happerns:

can someone please help because i need this to work as otherwise my server can't run!

the pex version is at the bottom of CMD

pex toggle debug, make sure permissions are actually being checked (ess may just use op or something)

run /pex report and give the link it provides you.

I will

/pex toggle debug: debug mode enabled,
/pex report http://git.io/vGecZ

So the permissions that you showed in your screenshot are not at all what PEX is actually using for you. Your permission file shows that your user is in the owner group, which has all permissions, which is why you'd have permissions overridden.


tvOS Support For Xcode 9

Problem:
When running carthage bootstrap,
error: There is no SDK with the name or path '/Users/dmiluski/Development/VenmoKit/Carthage/Checkouts/GZIP/appletvos10.2'
Why:
appletvos sdk root is hard coded to appletvos10.2 rather than to latest tvos. Which fails if I don't have that installed.
Solution:
Update tvos sdk root to reference generic latest.

@nicklockwood for review if you have time.

@nicklockwood Mind if we cut another release for latest Carthage update support?

Hm... anyone else still having GZIP support issues with XCode9?
This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/x0/2_2wdy1s4tv2v29lymy3g4cr38z6gf/T/carthage-xcodebuild.SIM9nA.log
Wondering if I still have something off with the sim support? (As Xcode 9 doesn't show a tv sim, when viewing the tvOS target. (For me, using Xcode 9)
xcodebuild: error: Unable to find a destination matching the provided destination specifier:
{ platform:tvOS Simulator, id:FA6A444B-F4F2-4EA5-8315-1055E88493B7 }
Ineligible destinations for the “GZIP-tvOS” scheme:
    { platform:tvOS, id:dvtdevice-DVTiOSDevicePlaceholder-appletvos:placeholder, name:Generic tvOS Device }
    { platform:tvOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-appletvsimulator:placeholder, name:Generic tvOS Simulator Device }


Can't import airgapped copy of default Library Catalog. (2.x)

Using Rancher 2.1
Library catalog at
https://git.rancher.io/charts does not work in airgapped environment. If I try to point to a local repo copy of it, it looks for index.yaml instead as currently only Helm Charts are supported. Yet natively rancher seems to support a git version of its own Library?
Is there instructions or means of a simple clone of the Library, or does it all have to be converted into helm charts?

What does git ls-remote <your_git_repo_URL> return?

Ok, figured it all out. I guess this is more of a documentation issue. I though I was proxying correctly but I wasn't, my internal git is https with client cert.. Solution was to bind in a /etc/gitconfig file which contained
[http]
sslCert = /run/secrets/certs/server.crt
sslKey = /run/secrets/certs/server.key
sslCaInfo = /run/secrets/certs/ca.crt
And obviously binding in those certs as well.
I can add my local github through the interface now.

This is covered in https://github.com/rancher/rancher/issues/14766


Is there a way to properly compile the source code using this plugin

The plugin seems to work only during runtime. for example , i can run it fine when i use the below
"start": "nodemon server/server.js --exec babel-node --plugins css-modules-transform",

however , when i try to compile the entire directory using babel-cli.
"build": "babel server -d serverLib --plugins css-modules-transform"

i still get the css error. Is there anyway i can make it to work on the compiled version as well?

What error are you getting? Because this plugin works just fine. I'm using it with babel-cli in several projects without problem.

this is the below error i get when i run the compiled version
[Error] SyntaxError: /home/avernus/Desktop/projects/node-sc-react/client/app.css: Unexpected token (1:0)
> 1 | .link{
    | ^
  2 |   text-decoration: none;
  3 |   border: 1px solid black;
  4 |   background-color: blue;
    at Parser.pp.raise (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/parser/location.js:22:13)
    at Parser.pp.unexpected (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/parser/util.js:89:8)
    at Parser.pp.parseExprAtom (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/parser/expression.js:522:12)
    at Parser.parseExprAtom (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/plugins/jsx/index.js:18:22)
    at Parser.pp.parseExprSubscripts (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/parser/expression.js:277:19)
    at Parser.pp.parseMaybeUnary (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/parser/expression.js:257:19)
    at Parser.pp.parseExprOps (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/parser/expression.js:188:19)
    at Parser.pp.parseMaybeConditional (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/parser/expression.js:165:19)
    at Parser.pp.parseMaybeAssign (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/parser/expression.js:128:19)
    at Parser.parseMaybeAssign (/home/avernus/Desktop/projects/node-sc-react/node_modules/babylon/lib/plugins/flow.js:460:20)

does the plugin work only if its during run time?

This plugin works with babel-cli too. I am using it to compile js code.
I need to see javascript source file where is app.css imported and node.js version you are using. And if you are using .babelrc then past it here too.
But minimal project would be great so I can test it. It's weird that babel is actually opening css files for compilation but it shouldn't open it.
Maybe you are compiling only server directory and not client directory too? And some file from server directory is importing css file from client.

My app.jsx file
import React from 'react';
import SignUp from './SignUp'

import style from './app.css'

class App extends React.Component{
  render(){
    return (

 Hello Kj

          Sign up with github
           Logout
          <Link to ='/project'>Project</Link>

 {this.props.username}

 {this.props.email}

 {this.props.children}

    )
  }
}

my .babelrc is for both the client and the server - so i'm not including the plugin here
{
  "presets" : ["es2015","react"]
}

my server file (only including the relevant parts - i'm not directly importing any component as such)
    match({ routes,location: req.url}, (err,redirect,renderProps) => {
      // console.log('redirect: ',redirect,' renderProps: ',renderProps)
      if (err) {
        console.error(err);
        return res.status(500).end('Internal server error');
      }
      if (!renderProps) return res.status(404).end('Not found');
      getInitialState(id_token)
        .then((initialState) => {
            const store = createStore(rootReducer,initialState);
            const html = renderToString(
              <Provider store={store}>

                  <RouterContext {...renderProps} />

              </Provider>
            );

            res.send(renderFullPage(html,initialState));
          })
        .catch(function(err){
          console.log('error: ',err)
        })
      });
  }

  const renderFullPage = (html,initialState) => {
    return `
      <!doctype html>

          <title>Redux Universal</title>
          <link rel="stylesheet" type="text/css" href="/main.css">

${html}

      `
  }

You're using ReactRouter with server side render so it will import components. Probably you have components in client directory and server side files in server directory.
- project
   - /server
   - /client

You are compiling just server directory, but when server tries to render some component, it will import files from client directory which are not compiled. So you can try to compile directories with files that are used server side. Babel does not work like webpack (which is actually following require paths and compiles all files matching some plugins in plugins configuration).

So i should try by importing routes from the compiled 'bundle.js' file on the server side?

No, you need to compile client directory using babel too. So you will have 2 build processes:

webpack will compile js files for browsers
babel will compile js files for node.js

For example sometimes I am using following directory structure:
- /project_root
  - /server
  - /client
  - /shared

server - contains only files used by node.js
client - contains only files used by browser
shared - contains files shared between node.js and browser (e.g. Components that are rendered server side and client side too)

But you can have a problem when you are importing files like svg or something other than js, css to component in shared directory. Because webpack will compile it using its plugins and babel no. So in that case I recommend you https://github.com/istarkov/babel-plugin-webpack-loaders

I'm sorry :( .. but that is exactly what i'm doing - i have a webpack.config.js for the client side. i run webpack - get the compiled bundle.js in my public directory. run npm start  which uses babel to compile the es6 server side code.

Yes but you are compiling only server directory according to your definition from first comment babel server -d serverLib --plugins css-modules-transform. You need to compile client too.

ahh .. so the problem is im not using the same plugin for client as well right?

closing for now to try your suggestion .. will reopen if i still dont understand. .. thank you for your patience :)

No, problem is that you are compiling just files in server directory and not in client. So those compiled files are using not compiled files from client directory.
babel-node works for you because it behaves like babel-register so it compiles all files you are requireing using defined babel plugins and presets.
So if babel-node encounters a require it will try to compile a file if it's not ignored.
But babel-cli does not work that way. It just finds all files in given directory (in your case it is server directory). And compiles them using presets and plugins but does not follow files you are importing (using es6 import syntax) or require()ing.
So for example if babel-cli encounters something like this:
// this is server side file, lets assume that is is stored in src/server/index.js

const someComponent = require('../client/component.js');

It won't do anything with this code, because it is valid for node 5/6. So it will output it as is to serverLib directory.
Now when you run it using node.js, node.js runtime will actually require component.js. But component.js is not compiled so it will throw an error if this component contains something that node.js can not understand.
For example:
// src/client/component.js
import styles from './styles.css';

This will throw an error because node.js does not natively support import.
If you have component like this:
// src/client/component.js
const styles = require('./styles.css');

This will throw too because node.js cannot compile css file natively.
So only solution to this is compile client directory too. But then you need to change output paths too.
So you'll have:
- /src
   - /server
   - /client

And you will configure babel to compile whole src dir and output it to build dir because you need to preserve file paths in javascript files. babel src -d build --plugins css-modules-transform
- /build
  - /server
  - /client

Thank you for the through explanation @michalkvasnicak :) . its clear now .. ill try your method

Hi im have this issue - but its happening to me at run time.
My Error:
SyntaxError: /home/pil0t/Projects/powr_x/src/client/components/GetStartedView/style.scss: Unexpected token (5:0)
  3 |
  4 |
> 5 | .gsView {
    | ^
  6 |   // display: none;
  7 |   background-color: $secondary-color;
  8 |   height: 100%;

My package.json scripts:
  "scripts": {
    "dbinit": "node ./utils/setup/createdb.js",
    "dbusercreate": "node ./utils/setup/create_powr_user.js",
    "_test": "// mocha --compilers js:babel-register",
    "test": "export NODE_ENV=\"test\" && mocha ./utils/test/test_setup.js --require ignore-styles",
    "lint": "eslint src",
    "start": " babel-node ./src/api/server.js --presets es2015,stage-2 --plugins css-modules-transform",
    "_start": "node ./src/api/server.js",
    "go": "export NODE_ENV=\"development\" && nodemon ./src/api/server.js --exec babel-node --presets es2015,stage-2",
    "postinstall": "node ./deploy.js",
    "component": "node ./utils/components/component_script.js"
  },

My .babelrc:
{
  "presets": ["react", "es2015","stage-2"],
  "plugins": [
    "babel-plugin-webpack-alias",
    ["transform-object-rest-spread", { "useBuiltIns": true }],
    ["css-modules-transform",{
        "extensions": [".scss"],
        "generateScopedName": "[name]__[local]___[hash:base64:5]",
        "preprocessCss": "./utils/sass_preprocess_tool.js",
        "extractCss": "./dist/combined.css"
    }]
  ]
}

Running npm start results in the error.  I would love any guidance that I can get. Very confused :(

Here's my preprocess script:
var sass = require('node-sass');
var path = require('path');

module.exports = function (data, filename) {
    var result;
    result = sass.renderSync({
        data: data,
        file: filename
    }).css;

    return result.toString('utf8');
};

@willdembinski I am not sure but maybe try to change your start script in package.json to babel-node ./src/api/server.js I think this will load .babelrc so there is no need to specify plugins again. I'm not sure if babel-node will merge .babelrc with the arguments from the command line.

@michalkvasnicak - Literally ecstatic that you got back to me.  Thank you so much. So with just running:"start": "babel-node ./src/api/server.js --presets es2015,stage-2" - it errors for some reason no being able to locate the preProcesscss script.
/home/pil0t/Projects/powr_x/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/index.js:600
      throw err;
      ^

Error: /home/pil0t/Projects/powr_x/src/api/server.js: Cannot find module './utils/sass_preprocess_tool.js'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at requireLocalFileOrNodeModule (/home/pil0t/Projects/powr_x/node_modules/babel-plugin-css-modules-transform/build/utils/requireLocalFileOrNodeModule.js:24:16)

But with the --plugins css-modules-transform flag.  It seemingly get farther - ultimately error-ing in the css file.  Maybe my problem is the --plugins flag is causing it to ignore whats in the babelrc, NOT having the preprocess module, then error-ing in css file?

Also - it throws the same error when using an absolute file path for the location of the preprocess script. sad panda :(

@willdembinski yeah it seems that if you specify it using --plugins then it is ignoring settings for plugin from .babelrc.
Have you tried to specify absolute path in .babelrc and run it without --plugins so .babelrc is picked up?

Forget what I said about the absolute file path - when i use an absolute path i get:
/home/pil0t/Projects/powr_x/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/index.js:578
        throw err;
        ^

Error: /home/pil0t/Projects/powr_x/utils/sass_preprocess_tool.js: Configuration file for 'preprocessCss' is not exporting a function
    at Object.preprocessCss (/home/pil0t/Projects/powr_x/node_modules/babel-plugin-css-modules-transform/build/options_resolvers/preprocessCss.js:25:15)
    at /home/pil0t/Projects/powr_x/node_modules/babel-plugin-css-modules-transform/build/index.js:131:66
    at Array.forEach (native)

The module is exporting a blank object.  Which is indicative of a circular dependency?

It's really strange you are getting this error. I don't see any circular dependency. If you run node ./utils/sass_preprocess_tool.js it works without any problem?

Yes sir :( I can import it and it is the desired function.  I just reinstalled all the node modules.  It gave this error:
You have mistakenly installed the `babel` package, which is a no-op in Babel 6.
Babel's CLI commands have been moved from the `babel` package to the `babel-cli` package.

    npm uninstall babel
    npm install babel-cli

Followed those instructions, same error about the module exporting a blank object. :(
Error:
/home/pil0t/Projects/powr_x/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/index.js:578
        throw err;
        ^

Error: /home/pil0t/Projects/powr_x/utils/sass_preprocess_tool.js: Configuration file for 'preprocessCss' is not exporting a function

Could you try to compile your scripts so you can run your app using node and not babel-node? Maybe babel-node is the reason why it does not work but I am not sure.

I will give that a shot.  But to confirm - I'm expecting to to still error on the .scss file correct? If it doesnt - then something truly magical is happening?

It shouldn't error on .scss file because now it is trying to import your preprocess file but it has some problem with circular dependencies probably. And if this is really caused by circular dependencies then I am not sure how it is possible because you don't have any requires in your preprocess file. So maybe it is caused by some babel-node require hook.

It successfully compiles everything in a file.

And does it work when you run it using node ?

  Fixing.

  My relative require statements are destroying everything. I am fail.

I think you got me on a good track - Im gonna try this working with it for a bit before bothering.  I really appreciate you taking the time to help <3 Very much appreciated.

Yes sir.  Did that.  How does babel handle file paths?  I should probably read the literature more before asking questions like that.

Ah - the entire directory should be compiled. Thank you again for the help.

Alright - totally able to run the compiled version when my head is not place firmly in my @$$.  I will maybe try using an older version of babel-node or something?  Do you think thats a decent course of action?

Not really sure if it will help. I'm not familiar enough with babel-node internals. Maybe try to use only this plugin in your .babelrc with babel-node and if you get same behaviour (circle dependency) then it is caused by logic in babel-node.

@michalkvasnicak  , Hai ..  Am getting the same error where Kannaj was mentioned in his second comment . My Error is  : babel-core is trying to parse my css .. am doing server side rendering .. as u said i was compiling only Server not client that's why am facing this error . . here my question is how can i set client compilation . This is my Start command is package.json ---> "babel-node src/js/server"

This is my Folder Structure -->-                                                                                App
-Js

/server
/client


[GLUTEN-2943][VL] follow up to cleanup on GenerateExec

What changes were proposed in this pull request?
this patch fixes GenerateExec with ArrayType
(Fixes: #2943)
How was this patch tested?
existing UT

===== Performance report for TPCH SF2000 with Velox backend, for reference only ====

query
log/native_3278_time.csv
log/native_master_09_27_2023_523395c22_time.csv
difference
percentage

q1
43.20
43.84
0.634
101.47%

q2
25.57
24.25
-1.320
94.84%

q3
37.53
37.31
-0.222
99.41%

q4
42.01
41.10
-0.915
97.82%

q5
70.94
70.67
-0.269
99.62%

q6
5.94
7.07
1.131
119.04%

q7
84.46
83.62
-0.843
99.00%

q8
80.44
82.10
1.659
102.06%

q9
118.44
116.36
-2.075
98.25%

q10
49.37
46.38
-2.994
93.94%

q11
19.35
18.95
-0.404
97.91%

q12
25.88
25.24
-0.635
97.55%

q13
50.80
50.58
-0.222
99.56%

q14
15.96
16.28
0.319
102.00%

q15
29.79
27.18
-2.610
91.24%

q16
16.01
16.28
0.267
101.67%

q17
122.06
120.13
-1.933
98.42%

q18
161.28
161.84
0.561
100.35%

q19
13.22
12.16
-1.062
91.97%

q20
35.25
28.31
-6.936
80.32%

q21
244.73
239.00
-5.733
97.66%

q22
15.32
15.72
0.396
102.58%

total
1307.56
1284.35
-23.207
98.23%