Assert in ExpressionEvaluator.set_Scope

Create new python application
Add virtual env based on 3.5 64-bit
Wait for analysis to complete
pip install tensorflow==1.2.1 (currently the latest) using environments window
At about 60% analysis progress, I start getting a lot of these assertions
---------------------------
Assertion Failed: Abort=Quit, Retry=Debug, Ignore=Continue
---------------------------

   at Microsoft.PythonTools.Analysis.Analyzer.ExpressionEvaluator.set_Scope(InterpreterScope value) in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analysis\Analyzer\ExpressionEvaluator.cs:line 146

   at Microsoft.PythonTools.Analysis.Analyzer.DDG.set_Scope(InterpreterScope value) in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analysis\Analyzer\DDG.cs:line 101

   at Microsoft.PythonTools.Analysis.Analyzer.FunctionAnalysisUnit.AnalyzeWorker(DDG ddg, CancellationToken cancel) in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analysis\Analyzer\FunctionAnalysisUnit.cs:line 83

   at Microsoft.PythonTools.Analysis.AnalysisUnit.Analyze(DDG ddg, CancellationToken cancel) in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analysis\AnalysisUnit.cs:line 148

   at Microsoft.PythonTools.Analysis.Analyzer.DDG.Analyze(Deque`1 queue, CancellationToken cancel, Action`1 reportQueueSize, Int32 reportQueueInterval) in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analysis\Analyzer\DDG.cs:line 75

   at Microsoft.PythonTools.Analysis.PythonAnalyzer.AnalyzeQueuedEntries(CancellationToken cancel) in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analysis\PythonAnalyzer.cs:line 979

   at Microsoft.PythonTools.Analysis.PyLibAnalyzer.Analyze() in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analyzer\PyLibAnalyzer.cs:line 1358

   at Microsoft.PythonTools.Analysis.PyLibAnalyzer.<RunWorker>d__34.MoveNext() in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analyzer\PyLibAnalyzer.cs:line 203

   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.MoveNextRunner.InvokeMoveNext(Object stateMachine)

   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)

   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)

   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.MoveNextRunner.Run()

   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(Action action, Boolean allowInlining, Task& currentTask)

   at System.Threading.Tasks.Task.FinishContinuations()

   at System.Threading.Tasks.Task.FinishStageThree()

   at System.Threading.Tasks.Task`1.TrySetResult(TResult result)

   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetResult(TResult result)

   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder.SetResult()

   at Microsoft.PythonTools.Analysis.PyLibAnalyzer.<Scrape>d__60.MoveNext() in C:\Projects\GitHub\huguesv\PTVS\Python\Product\Analyzer\PyLibAnalyzer.cs:line 1152

   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.MoveNextRunner.InvokeMoveNext(Object stateMachine)

   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)

   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)

   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.MoveNextRunner.Run()

   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(Action action, Boolean allowInlining, Task& currentTask)

   at System.Threading.Tasks.Task.FinishContinuations()

   at System.Threading.Tasks.Task.FinishStageThree()

   at System.Threading.Tasks.Task.FinishStageTwo()

   at System.Threading.Tasks.Task.Finish(Boolean bUserDelegateExecuted)

   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)

   at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)

   at System.Threading.Tasks.Task.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()

   at System.Threading.ThreadPoolWorkQueue.Dispatch()

   at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

---------------------------
Abort   Retry   Ignore
---------------------------

They clearly have some sort of code construct in tensorflow that we can't analyze.
If you want to dig in, try and find that video I did on using the analysis memory testing tool and do the same thing here to narrow down the minimal set of files needed to cause the assertion.

Minimum repro: paste this code in a new python application.
class SequenceQueueingStateSaver(object):
  def _store_index_maps(self, sequences, context, states):
    """Prepares the internal dictionaries _name_to_index and _index_to_name.

    These dictionaries are used to keep track of indices into the barrier.

    Args:
      sequences: `OrderedDict` of string, `Tensor` pairs.
      context: `OrderedDict` of string, `Tensor` pairs.
      states: `OrderedDict` of string, `Tensor` pairs.
    """
    assert isinstance(sequences, dict)
    assert isinstance(context, dict)
    assert isinstance(states, dict)
    self._name_to_index = dict(
        (name, ix)
        for (ix, name) in enumerate([
            "__length", "__total_length", "__next_key", "__sequence",
            "__sequence_count"
        ] + ["__sequence__%s" % k for k in sequences.keys()] + [
            "__context__%s" % k for k in context.keys()
        ] + ["__state__%s" % k for k in states.keys()]))
    self._index_to_name = [
        name
        for (name, _) in sorted(
            self._name_to_index.items(), key=lambda n_ix: n_ix[1])
    ]

Ok, most minimal now :)
def my_func(my_param):
    assert isinstance(my_param, dict)
    my_val = [
        name
        for (name, _) in sorted(
            {}, key=lambda n_ix: n_ix[1])
    ]

I don't think we set up a list comprehension scope, but we should for the lambda, so I'm not surprised to have scope handling issues between the IsInstanceScope and the lambda scope.

Even shorter:
if isinstance(p, dict):
    v = [i for i in (lambda x: x)()]

The problem is because of the lambda scope being nested within the comprehension scope when it should be in the outer scope:
if isinstance(p, dict):
    def _unnamed(x): return x
    v = [i for i in _unnamed()]

Actually, scratch that second part. It's fine to define the lambda in the comprehension scope as long as we put the node scope in the module scope rather than the isinstance scope.


Picker Items should filter NULL child

Summary
when conditional rendering is used then picker breaks when the child is null in iOS
This conditional rendering inside Picker fails when someBooleanValue variable is false
{
   this.state.someBooleanValue && <Picker.Item label="value" value="value" />
}

Changelog
[iOS] [Fixed] - null check on children by using filter
Test Plan
{
   this.state.someBooleanValue && <Picker.Item label="value" value="value" />
}

Duplicate of #24057.


Not compatible with macOS 12

Not compatible with macOS 12 - only =>13

Fixed in the 1.3 release of ThumbHost3mf.


[google_maps_flutter_platform_interface] add animationDuration parameter

Add the optionnal parameter animationDuration to the animateCamera method.
This PR goes with with #3937
Part of flutter/flutter#39810
Pre-launch Checklist

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
[x] I read and followed the [Flutter Style Guide] and the [C++, Objective-C, Java style guides]. (Note that unlike the flutter/flutter repo, the flutter/plugins repo does use dart format. See [plugin_tool format])
[x] I signed the [CLA].
[x] The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated pubspec.yaml with an appropriate new version according to the [pub versioning philosophy].
[x] I updated CHANGELOG.md to add a description of the change.
[x] I updated/added relevant documentation (doc comments with ///).
[ ] I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test exempt.
[x] All existing and new tests are passing.

@Milvintsiss Are you still planning on moving forward with this PR?

Thank you for your contribution. I'm going to close this PR for now since there are outstanding comments, just to get this off our PR review queue. Please don't hesitate to submit a new PR if you have the time to address the review comments. Thanks!


adding counting sort in cpp

Please have a look at https://github.com/amanmehara/programming/blob/master/CONTRIBUTING.md and make changes accordingly.
I'll approve and merge afterwards! 😃

Made the necessary changes to CountSort

@nilayrajderkar unfortunately the code appears to be directly copied. 😭
I cannot merge this PR.
Please create another PR where the code is not copied.


Fix Makefile and Circle CI setting

Codecov Report

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

@@            Coverage Diff            @@
##             master       #8   +/-   ##
=========================================
  Coverage          ?   61.53%
=========================================
  Files             ?        3
  Lines             ?       26
  Branches          ?        0
=========================================
  Hits              ?       16
  Misses            ?       10
  Partials          ?        0

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 bf77d76...bed12ac. Read the comment docs.


Optimizations for FileMatcher.GetFiles

Here are the optimization changes that were discussed in #2392, which are divided into three commits:

Usage of Directory.EnumerateFiles and Directory.EnumerateDirectories and checking excludes with a custom wildcard matching algorithm.
Adding directory caching passed by LazyItemEvaluator
Traversing subdirectories in parallel by using Parallel.ForEach

For the parallel change I did some modifications in order to prevent spawning too much threads. With the old modification the traversing created up to 9 threads on my computer, with the new one, it creates up to 4 threads. I found this to be a good balance between performance and threads being used, at least on my computer (Intel I7 860).
This test was used on NHibernate.Test project and Roslyn root folder. For NHibernate also the evaluation was tested by using the Project class.
Latest master:
NH:
File spec: **/*, Call time: 2650ms, Returned files: 14
File spec: **/*.cs, Call time: 1556ms, Returned files: 3509
File spec: **/*.resx, Call time: 1548ms, Returned files: 0
File spec: **\*.hbm.xml, Call time: 258ms, Returned files: 827
File spec: **\*.jpg, Call time: 246ms, Returned files: 1
Total time: 6261ms

NHibernate.Test Project Evaluation: Total time: 7391ms

Roslyn:
File spec: **/*, Call time: 5572ms, Returned files: 5485
File spec: **/*.cs, Call time: 3398ms, Returned files: 8631
File spec: **/*.resx, Call time: 3187ms, Returned files: 70
File spec: **\*.hbm.xml, Call time: 516ms, Returned files: 0
File spec: **\*.jpg, Call time: 524ms, Returned files: 0
Total time: 13199ms

This PR:
NH:
File spec: **/*, Call time: 172ms, Returned files: 14
File spec: **/*.cs, Call time: 114ms, Returned files: 3509
File spec: **/*.resx, Call time: 63ms, Returned files: 0
File spec: **\*.hbm.xml, Call time: 68ms, Returned files: 827
File spec: **\*.jpg, Call time: 64ms, Returned files: 1
Total time: 483ms

NHibernate.Test Project Evaluation: Total time: 2097ms

Roslyn:
File spec: **/*, Call time: 748ms, Returned files: 5485
File spec: **/*.cs, Call time: 373ms, Returned files: 8631
File spec: **/*.resx, Call time: 186ms, Returned files: 70
File spec: **\*.hbm.xml, Call time: 170ms, Returned files: 0
File spec: **\*.jpg, Call time: 177ms, Returned files: 0
Total time: 1656ms

All tests were ran in Release configuration on Intel I7 860 processor and the average of 5 runs was taken.

@maca88,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla2.dotnetfoundation.org.
It will cover your contributions to all .NET Foundation-managed open source projects.
Thanks,
.NET Foundation Pull Request Bot

@maca88, thanks for signing the contribution license agreement. We will now validate the agreement and then the pull request.
Thanks, .NET Foundation Pull Request Bot

Looking into the tests.

The problem is with the usage of File.GetFileName that doesn't treat a backslash as a director separator on Unix, so Path.GetFileName("Folder\MyFile.cs") will return "Folder\MyFile.cs" instead of "MyFile.cs". My plan is to add a custom GetFileName that will work the same on Windows and Unix. Also, I suspect that Path.GetDirectoryName here will not work in all cases, I will do some investigation tomorrow.

I think the main issue here is the testing mock file system returns paths with backslashes in them, regardless of the OS. I'll try and make it normalize slashes.

Fixed directory matching and flattern the AggregateException in case the current settings for the parallel traversing will be altered to have nested Parallel.ForEach calls. With the current settings only one Parallel.ForEach is used per GetFiles call, as MaxTasksPerIteration is set to the same value as MaxTasks.

There seems to be an inconsistent behavior with excludes and case sensibility. In the current master, when an exclude is matched via regex the matching is case-insensitive and when is matched with the searchesToExcludeInSubdirs dictionary, is case-sensitive, as the dictionary does not use a case-insensitive comparer. For example, if we modify this line to @"**\bIN\**\*.cs" the test still succeeds, but if @"src\Common\**" is changed to @"src\CoMMon\**" the test fails. What should be the correct behavior? If case-insensitive is the answer, then I will modify the pattern matching algorithm to support it. Also, with this PR, an exclude like @"src\Co??on\**" will exclude files from "src\Common", but in the in current master, it won't. Is this behavior desired, or should we change it in order to behave the same as in the current master?

@maca88
Regarding case sensitivity, I checked the version that shipped with VS 2015 Update 3. Back then the exclude specs were not sent to GetFiles, the disk got walked once for include, and once for each exclude, and the include file set was obtained by subtracting the excluded files from the included ones. The only matching that happened was the Regex one, which was case insensitive. So to keep with previous behaviour, both matches need to be case insensitive.
Regarding the double question mark match, master seems to work, it excludes src/common/a.cs with src/co??on/**:
e:\projects\tests\projects\play>tree /f /a

E:.
|   build.proj
|   MaxPathFinder.exe
|
+---Common
|       a.cs
|
\---src
    |   c.cs
    |
    +---Common
    |       a.cs
    |
    \---Comon
            b.cs

e:\projects\tests\projects\play>type build.proj
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
        <Compile Include="**\*.cs" Exclude="src\Co??on\**"/>
        <Compile2 Include="**\*.cs" Exclude="**\Co??on\**"/>
        <Compile3 Include="**\*.cs" Exclude="Co??on\**"/>
    </ItemGroup>

    <Target Name="Build">
        <Message Text=" Compile: @(Compile)"/>
        <Message Text="Compile2: @(Compile2)"/>
        <Message Text="Compile3: @(Compile3)"/>
    </Target>
</Project>

e:\projects\tests\projects\play>e:\projects\msbuild\bin\Bootstrap\MSBuild\15.0\Bin\MSBuild.exe
Microsoft (R) Build Engine version <IP_ADDRESS>482 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

Build started 10/5/2017 3:25:12 PM.
Project "e:\projects\tests\projects\play\build.proj" on node 1 (default targets).
Build:
   Compile: Common\a.cs;src\c.cs;src\Comon\b.cs
  Compile2: src\c.cs;src\Comon\b.cs
  Compile3: src\c.cs;src\Common\a.cs;src\Comon\b.cs
Done Building Project "e:\projects\tests\projects\play\build.proj" (default targets).

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:00.36

@cdmihai

So to keep with previous behaviour, both matches need to be case insensitive.

I will modify the algorithm to support case-insensitive matching as fast as possible, correct the initialization of searchesToExcludeInSubdirs dictionary to use a case-insensitive comparer and add tests for complex patterns using the real file system.

Regarding the double question mark match, master seems to work

My bad, I didn't noticed that the error was due to the mock file system, which doesn't support complex patterns.

@davkean
The exception handling should now work like before, with two exceptions:

If an exception is thrown inside a Parallel.ForEach and it is not handled by ExceptionHandling.IsIoRelatedException, then an AggregateException will be thrown instead of the actual exception/s.
By replacing the Directory.GetXXX with Directory.EnumerateXXX we may get one or more files/directories before the first Security/UnauthorizedAccess exception is thrown, in other words, if the third file is not accessible, with Directory.EnumerateXXX we would get the first two, but with Directory.GetXXX we wouldn't get any.

@dotnet-bot test Windows_NT Build for Full please
Flaky restore

That is really nice work, @maca88.  I saw so many traces that the slow globbing code consumed 10 seconds or even 30 seconds in some projects.  This change will make a huge difference.

@dotnet-bot test Windows_NT Build for Full please

@cdmihai
I have corrected the case sensitivity behavior, so that everything is now matched case-insensitive. I've added a unit test for each correction related to matching excludes, which would fail on the current master. The overall performance after adding the case-insensitive matching remains more or less the same as before.

@dotnet-bot test this please

@maca88

There are some specific cases when an include or exclude pattern won't be matched case-insensitive on Unix. By quick checking the version that shipped with VS 2015 Update 3, seems that it has the same problems. Should we correct them or should we leave as it is, for backward compatibility?

Leave them as is, to reduce scope creep :) I'll open an issue linking to your test once this PR gets in.

FYI, we're planning to merge this in tomorrow morning (10am PDT). @maca88 can you please squash your changes if you get the chance? (If not I'll do it, I just need to make sure you are preserved as commit author)

@maca88 can you please contact me offline<EMAIL_ADDRESS>

@cdmihai
I've squashed my changes into one commit on top of the mock file system correction.

@maca88 this is a very substantial contribution, probably the biggest we've had on MSBuild outside Microsoft. Thank you so much for seeing this through and addressing the numerous comments and iterations! This will definitely be a big part of the perf gains we'll get out of 15.5!

My plan is to add a custom GetFileName that will work the same on Windows and Unix.

I just came here to ooh and aah at the performance improvements but I really hope the quoted part (in an earlier comment by @maca88) wasn't implemented because there are definitely Unix file systems where you are allowed to have backslashes in filenames, and trying to turn them into slashes could be a logic error at best and point to completely the wrong file at worst. There's definitely security consequences.

@JesperTreetop the quoted part wasn't implemented, I updated the missleading part of the comment in order to avoid confusion.


Update README.md

hmm this seems like an interesting change, i will consider it!!!!

Thank you for your reply! I would like to add that this PR should be expedited and not disregarded, as it should be in your best interests to in incorporate AYAYA to your ReadMe File.

don!!!

Thank you for supporting AYAYA!

AYAYA Clap WEEBS OUT


Integration Test failing at shutdown

Occasionally one of the integration tests fails with this error.
This is aodd as it indicates a singleton service was initialized a second time on dispose which should not happen.

System.ObjectDisposedException : Cannot access a disposed object.
Object name: 'LoggerFactory'.
   at Microsoft.Extensions.Logging.LoggerFactory.CreateLogger(String categoryName)
   at Stratis.Bitcoin.Features.BlockStore.BlockRepository..ctor(Network network, String folder, IDateTimeProvider dateTimeProvider, ILoggerFactory loggerFactory) in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin.Features.BlockStore\BlockRepository.cs:line 122
   at Stratis.Bitcoin.Features.BlockStore.BlockRepository..ctor(Network network, DataFolder dataFolder, IDateTimeProvider dateTimeProvider, ILoggerFactory loggerFactory) in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin.Features.BlockStore\BlockRepository.cs:line 113
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(IServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitSingleton(SingletonCallSite singletonCallSite, ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(IServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(IServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitSingleton(SingletonCallSite singletonCallSite, ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(IServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceProvider.<>c__DisplayClass22_0.<RealizeService>b__0(ServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceProvider.GetService(Type serviceType)
   at Stratis.Bitcoin.Builder.FullNodeServiceProvider.<get_Features>d__2.MoveNext() in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin\Builder\FullNodeServiceProvider.cs:line 36
   at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable`1 source, Int32& length)
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ReverseIterator`1.MoveNext()
   at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Execute(Action`1 callback, Boolean reverseOrder) in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 99
   at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Dispose() in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 77
   at Stratis.Bitcoin.FullNode.Dispose() in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin\FullNode.cs:line 277
   at Stratis.Bitcoin.IntegrationTests.EnvironmentMockUpHelpers.StratisBitcoinPowRunner.Kill() in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin.IntegrationTests\EnvironmentMockUpHelpers\NodeRunners.cs:line 154
   at Stratis.Bitcoin.IntegrationTests.EnvironmentMockUpHelpers.CoreNode.Kill() in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin.IntegrationTests\EnvironmentMockUpHelpers\CoreNode.cs:line 299
   at Stratis.Bitcoin.IntegrationTests.EnvironmentMockUpHelpers.NodeBuilder.Dispose() in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin.IntegrationTests\EnvironmentMockUpHelpers\NodeBuilder.cs:line 281
   at Stratis.Bitcoin.IntegrationTests.WalletTests.Given__TheNodeHadAReorg_And_ConensusTipIsdifferentFromWalletTip__When__ANewBlockArrives__Then__WalletCanRecover() in C:\Users\dan\Documents\GitHub\StratisBitcoinFullNode\src\Stratis.Bitcoin.IntegrationTests\WalletTests.cs:line 396

These kinds of errors happen before on full node when the shutdown sequence was not correct. So you just have to make sure that order of disposals is correct

Hmm I suspect its different this time as we see that the constructor of BlockRepository is invoked on dispose which I find very odd, that class should be a singleton and there is no place in the code (to my knowledge) where we dispose of DI so why would a singleton be instantiated again?

I think it is the same situation as before, it looked like this. When an object is destroyed in dependency injection, then if someone wants to use it again, the new instance is created.

But how did the object get destroyed this is what I can't find.
Even if the Dispose was called on the service itself the DI would not know that (or would it?)

Can't tell at this moment comment I don't know the details of the integration tests shutdown. So all I'm saying that it really reminded me what we had before in full node. It is quite likely it will be the same thing, but it is not hundred percent guaranteed.

Why do we not dispose the logger at the end?
        public void Dispose()
        {
            if (this.State == FullNodeState.Disposing || this.State == FullNodeState.Disposed)
                return;

            this.State = FullNodeState.Disposing;

            this.logger.LogInformation("Closing node pending...");

            // Fire INodeLifetime.Stopping.
            this.nodeLifetime.StopApplication();

            this.ConnectionManager.Dispose();
            this.loggerFactory.Dispose();

            foreach (IDisposable disposable in this.Resources)
                disposable.Dispose();

            // Fire the NodeFeatureExecutor.Stop.
            this.fullNodeFeatureExecutor.Dispose();

            // Fire INodeLifetime.Stopped.
            this.nodeLifetime.NotifyStopped();

            this.State = FullNodeState.Disposed;
        }

The logger is not disposable, right?

Hmm good point so this is ok, that means if the DI is creating instances at dispose then they will throw Cannot access a disposed object. Object name: 'LoggerFactory'.
This is ok what we need to understand is why is the DI creating new instances at dispose time.


Upgrade to React 16

React 16 has been released, so we need to look into upgrading it in the project. Maybe it's a simple upgrade, maybe not ;).
@coryhouse, since this is used for your courses on Pluralsight, are you OK with us doing an upgrade to React 16?

This isn't tied to my courses, so we're free to upgrade. That said, the ecosystem will need a few days to update their dependencies to accept React 16, so a bit early. But yes, let's upgrade soon.

I will take this, I planned on doing some package upgrades tonight as it is.

Had to do more than just packages (I think we expected that). There are also some prettier format changes in their. The prettier updates I am sorry for, the rest I feel really good about 😄

Closed in #480


Point to Cxx examples for Figures 3-12 and 3-13

@lorensen,
Figures 3-12 and 3-13 should point to the the Cxx examples (Cxx/Visiualization/CameraModel1.cxx and Cxx/Visiualization/CameraModel2.cxx) instead of camera.tcl and camera2.tcl, right?
I tried to find instruction on how to edit the VTKBookFigures table but did not find the way.
If my assumption is fine, can you tell me how to change these?
Thanks

Those links are correct as they stand. They re meant to point to the
original code.
Have you looked at:
https://lorensen.github.io/VTKExamples/site/Instructions/ConvertingFiguresToExamples/
Bill
On Sun, Oct 15, 2017 at 4:13 AM, Jon Haitz Legarreta Gorroño <
<EMAIL_ADDRESS>wrote:

@lorensen https://github.com/lorensen,
Figures 3-12 and 3-13 should point to the the Cxx examples (
Cxx/Visiualization/CameraModel1.cxx and Cxx/Visiualization/
CameraModel2.cxx) instead of camera.tcl and camera2.tcl, right?
I tried to find instruction on how to edit the VTKBookFigures
https://lorensen.github.io/VTKExamples/site/VTKBookFigures/ table but
did not find the way.
If my assumption is fine, can you tell me how to change these?
Thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lorensen/VTKExamples/issues/46, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAUFDBmI4eO1lehVtctFBkE96Yas9E5Tks5ssejFgaJpZM4P5thE
.

--
Unpaid intern in BillsBasement at noware dot com

I had looked at the link Bill.
Now, the ones I pointed are meant to be their Cxx counterparts, right?
And if I understood well, we should progressively substitute Tcl examples with Cxx examples, right?

Yes, All figure examples should be converted to cxx.
Also, use vtkSmartPointer instead of vtkNew since the vtkNew API was recently changed and we wan the examples to run on vtk7 and up.


Build inline docstrings into docs website

Much of this library has docstrings. It would be nice to be able to see those presented nicely in a docs website.
The actual publishing of that website for new versions of the library (using e.g. GitHub actions) can be a different piece of work

@willdale what did you say the standard swift library for building docstrings into a website was?

@joelberkeley, I think the go to library from automatic documentation generation is Jazzy. https://github.com/realm/jazzy
Here's an example of the output from fullWidth: https://reduxkit.github.io/ReduxKit/.
At it's most basic, to generate docs you would use the command: jazzy --min-acl public --theme fullwidth

how about a "docs" directory with configuration and instructions to build the docs locally? you could base the github actions on that

That sounds good, trigger a GitHub Action on release.
What would need to be in the docs folder to start this up, or, would it all be added through an action?

Thank you @joelberkeley for your assistance in setting this up.


PouchDB not working with RC0 due to Rollup+CommonJS

See:

question on forum
generous PR on pouchdb from @danbucholtz

I took a stab at solving this, but ultimately failed due to another module besides PouchDB that Rollup can't handle:
[06:21:04]  Error: Module /Users/nolan/workspace/cutePuppyPics/node_modules/rxjs/Subject.js does not export Subject (imported by<EMAIL_ADDRESS>    at Module.trace (/Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:7677:29)
    at ModuleScope.findDeclaration (/Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:7300:22)
    at Identifier.bind (/Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:6489:29)
    at /Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:5151:50
    at CallExpression.eachChild (/Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:5165:19)
    at CallExpression.bind (/Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:5151:7)
    at CallExpression.bind (/Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:5842:23)
    at /Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:5151:50
    at ParenthesizedExpression.eachChild (/Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:5168:5)
    at ParenthesizedExpression.bind (/Users/nolan/workspace/cutePuppyPics/node_modules/rollup/dist/rollup.js:5151:7)

There probably exists some combination of Rollup plugins that can work for all npm packages that contain a mix of CommonJS and ES6 modules, but I'm not sure what it is; keep in mind that a lot of what Browserify/Webpack do by default, you have to do with plugins in Rollup-land. (E.g. I'm fairly sure you would need -json, -commonjs, -node-resolve, and -globals at the very least. FWIW this is why, for PouchDB's own build, we opted to only use Rollup to take ES6 source and configure it to highly-optimized CommonJS, and we only used ES6 source for packages that we ourselves controlled. At that point, we assume our consumers are using Browserify or Webpack.)
On the other hand, maybe I'm just dense and @rich-harris can point us in the right direction. Or maybe PouchDB is misusing jsnext:main, and we shouldn't have it point to a module that includes any CommonJS dependencies. I have no idea, honestly. I just know that I tried to solve this problem using only Rollup plugins and was unable.
My sample project in case anyone wants to play with this: I just did ionic create cutePuppyPics --v2 as in the guide and then added pouchdb-browser: https://github.com/nolanlawson/cutePuppyPics-with-pouchdb-browser

Whoops, just realized I should have opened this issue on https://github.com/driftyco/ionic-app-scripts

A small temporary solution to firebase: https://forum.ionicframework.com/t/ionic-2-rc-0-and-firebase-not-angularfire/65018/7

Hm, it's really odd, I've tried every combo of include and exclude for rollup-plugin-commonjs and rollup-plugin-node-resolve and I just can't get it to ignore rxjs/Subject.js. Also I don't understand why Subject is failing in the first place; it looks like a TypeScript dependency? Maybe @robwormald would know?

Fixed by changing "app-scripts/config/rollup.config.js" like this.
Libraries:

npm install rollup-plugin-node-builtins
npm install rollup-plugin-node-globals

rollup.config.js:
var ngTemplate = require('../dist/plugins/ng-template').ngTemplate;
var nodeResolve = require('rollup-plugin-node-resolve');
var builtins = require('rollup-plugin-node-builtins');
var commonjs = require('rollup-plugin-commonjs');
var globals = require('rollup-plugin-node-globals');

module.exports = {

    /**
     * entry: The bundle's starting point. This file will
     * be included, along with the minimum necessary code
     * from its dependencies
     */
    entry: './.tmp/app/main.dev.js',

    /**
     * sourceMap: If true, a separate sourcemap file will
     * be created.
     */
    sourceMap: true,

    /**
     * format: The format of the generated bundle
     */
    format: 'iife',

    /**
     * dest: the output filename for the bundle in the buildDir
     */
    dest: 'main.js',

    /**
     * plugins: Array of plugin objects, or a single plugin object.
     * See https://github.com/rollup/rollup/wiki/Plugins for more info.
     */
    plugins: [
        ngTemplate(),
        // Fix events error
        builtins(),
        commonjs({
            // Fix extend error
            namedExports: { 'node_modules/pouchdb/node_modules/js-extend/extend.js': [ 'extend' ] }
        }),
        nodeResolve({
            module: true,
            jsnext: true,
            main: true,
            browser: true,
            skip: [],
            extensions: ['.js']
        }),
       // Fix nodejs global error
        globals()
    ]
};

Hm, I tried using rollup-plugin-node-resolve-auto instead of rollup-plugin-node-resolve, and now PouchDB builds correctly, but I get a completely different error about ReferenceError: rxjs_Subject is not defined. :confused:
@matheusgarcez could you move that large block to a separate Gist please? Or wrap it in <summary>/<detail>?

Now with the plugin 'pouchdb-find'.
Uncaught TypeError: Cannot read property 'utils' of undefined.
var des = require('../des'); // undefined
var utils = des.utils; // here...
var Cipher = des.Cipher;

The circular dependency issue, and the fact that @calvinmetcalf was not able to find a solution via Rollup's plugin system, leads me to believe that this is best solved by either 1) using Webpack/Browserify instead of Rollup, or 2) using Rollup in a very limited way (to produce a small CJS bundle), and then following up with Webpack/Browserify. I would recommend making the change to ionic-app-scripts' bundle.ts.

Another possibility would be for the ionic-app-scripts to include a small whitelist of modules that are known to play nice with Rollup, and then use Browserify/Webpack for the rest.

Crypto is a really big dep and it's the one I havn't ported to rollup, it's pretty well modularized so if you only need part of it it should be easy to grab that

@matheusgarcez That pouchdb-find error with crypto should not be happening assuming that the "browser" field is being respected. It's only used in the browser version.

The better for now then would be Ionic get back to gulp/browserify?

@nolanlawson It's used in rollup-plugin-node-builtins.
https://github.com/calvinmetcalf/rollup-plugin-node-builtins/blob/master/src/index.js#L34

@matheusgarcez that just gives it to you if you require it, I think the issue is that you either aren't using the rollup-plugin-node-resolve or it isn't respecting the browser field

If i remove the "rollup-plugin-node-builtins" plugin:
[15:33:56]  rollup: No name was provided for external module 'events' in options.globals – guessing 'events'

Uncaught ReferenceError: events is not defined

Commenting the line 34 of https://github.com/calvinmetcalf/rollup-plugin-node-builtins/blob/master/src/index.js#L34:
Uncaught ReferenceError: txt is not defined
g	@	md5.min.js:30
k	@	md5.min.js:57
(anonymous function)	@	md5.min.js:70
g	@	md5.min.js:2
(anonymous function)	@	md5.min.js:3
createCommonjsModule	@	component_factory_resolver.js:61
(anonymous function)	@	index.js:5
(anonymous function)	@	main.dev.js:3

Changing "node_modules/md5-jkmyers/md5.min.js":
function g(b){txt="";var c,d=b.length // ... minified file
To:
function g(b){var txt="";var c,d=b.length // ... minified file
Fixes everything:
import PouchDB_Plugin_Find from "pouchdb-find";
import PouchDB_Plugin_QuickSearch from "pouchdb-quick-search";

now that crypto is the only one i havn't ported I should add an option to
turn that one off
On Fri, Sep 30, 2016 at 2:46 PM Matheus Garcez<EMAIL_ADDRESS>wrote:

If i remove the "rollup-plugin-node-builtins" plugin:
[15:33:56] rollup: No name was provided for external module 'events' in
options.globals – guessing 'events'
Uncaught ReferenceError: events is not defined
Commenting the line 34 of
https://github.com/calvinmetcalf/rollup-plugin-node-builtins/blob/master/src/index.js#L34:
Uncaught ReferenceError: txt is not defined
g   @   md5.min.js:30
k   @   md5.min.js:57
(anonymous function)    @   md5.min.js:70
g   @   md5.min.js:2
(anonymous function)    @   md5.min.js:3
createCommonjsModule    @   component_factory_resolver.js:61
(anonymous function)    @   index.js:5
(anonymous function)    @   main.dev.js:3
Changing "node_modules/md5-jkmyers/md5.min.js":
function g(b){txt="";var c,d=b.length // ... minified file
To:
function g(b){var txt="";var c,d=b.length // ... minified file
Fixes everything:
import PouchDB_Plugin_Find from "pouchdb-find";
import PouchDB_Plugin_QuickSearch from "pouchdb-quick-search";
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/driftyco/ionic/issues/8356#issuecomment-250822284,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABE4n3yjI1LU-kemk72vWR234pdKmzcqks5qvVkKgaJpZM4KLFxU
.

@matheusgarcez Looks like a bug in md5-jkmyers.

Hello all! We have made some great progress and now have a working example of PouchDB with Ionic 2 RC.0. We are still throwing around ideas and reviewing this, but it looks like the key is to use namedImports in our rollup.config. I will share more once we have gone over all this. Thanks!

@nolanlawson so, how do we can fix it?
There is an open pull request about it:
https://github.com/AndreasPizsa/md5-jkmyers/pull/5

calvinmetcalf/rollup-plugin-node-builtins#18 should help fix with this as well

To fix the Uncaught ReferenceError: txt is not defined error, set useStrict to false in the rollup.config.js file.
Example:
config/rollup.config.js

@jgw96 Any news on this?

I just tried using:
import * as PouchDB from 'pouchdb-browser';
this.db = new PouchDB('test');
I'm getting this error: TypeError: PouchDB$2 is not a constructor

Use it like this:
@audan2009
import PouchDB from 'pouchdb-browser';

this.db = new PouchDB('test');

I have had endless roll up issues.

Thanks @matheusgarcez ! That worked!

It tried the following the config from @matheusgarcez example repo and I get:
Error: Could not resolve entry (./.tmp/app/main.dev.js)

When I look in the .tmp directory the main.dev.ts file has been copied over but the .js file is missing.
Interesting if I make the edits directly in the @ionic/app-scripts/config/rollup.config.js and remove my custom config everything builds fine.
Anyone encountered this issue?

@matheusgarcez's approach didn't work for me 😞

@nolanlawson I hope you and the Ionic team can find a solution quickly because the has stalled my migration to RC0. Could you ensure<EMAIL_ADDRESS>is also supported as I haven't been able to migrate to 6.x due to another issue.

@glaucocustodio @Bouzmine
Try with the latest repository version:
https://github.com/matheusgarcez/ionic-2rc-pouchdb
Environment:
Ionic App Lib Version: 2.1.0-beta.1
Ionic Framework Version: 2.0.0-rc.0
Ionic CLI Version: 2.1.0
Node Version: v6.7.0

Here's what worked for me:
npm install --save pouchdb
npm install --save pouchdb-quick-search
npm install --save-dev rollup-plugin-node-builtins
npm install --save-dev rollup-plugin-node-globals
npm install --save-dev rollup-plugin-json
npm install js-extend
npm install @types/pouchdb

I use pouchdb-quick-search but there are no typings for it, so I manually created:
<EMAIL_ADDRESS>declare module 'pouchdb-quick-search' {
  var PouchQuickSearch: any;
  export = PouchQuickSearch;
}

I edited<EMAIL_ADDRESS>with this: https://gist.github.com/shaggy8871/7cd2d8222ae67b2bf6d8d141f1d9c07c
I edited node_modules/rollup-plugin-node-builtins/dist/rollup-plugin-node-builtins.es6.js and node_modules/rollup-plugin-node-builtins/dist/rollup-plugin-node-builtins.cjs.js (didn't know which is being used) by commenting out this line:
//libs.set('crypto', require.resolve('crypto-browserify'));
I also changed my require('pouchdb') and require('pouchdb-quick-search') calls to:
import PouchDB from 'pouchdb';
import PouchDB_Plugin_QuickSearch from 'pouchdb-quick-search';
PouchDB.plugin(PouchDB_Plugin_QuickSearch);

Some of these steps may not be necessary, but they worked for me :) Hope it helps someone.

fyi published version 2.0.0 of builtins which only includes crypto if you explicitly include an option to do so

What is the point of moving to rollup.js if its going to break something as wildly used as pouchDB? Can someone please explain? Because my transition from ionic 2.0 beta 11 to ionic2.0.0-RC.0 has been very painful so far.

Just create a declarations.d.ts file and add
'''declare module 'pouchdb'; '''

@realappie it seems somewhat premature to be honest, rollup works pretty well for es6 code but it is in no way (and doesn't claim or pretend to be) a drop in replacement for browserify or webpack and it has much less compatibility

@calvinmet

Sorry for belatedly joining this thread – @nolanlawson it looks like the solution to the error in your initial comment...

Module /Users/nolan/workspace/cutePuppyPics/node_modules/rxjs/Subject.js does not export Subject...

...is to use the namedExports option with rollup-plugin-commonjs:
plugins: [
  commonjs({
    ...,
    namedExports: {
      'node_modules/rxjs/Subject.js': ['Subject']
    }
  })
]

CommonJS modules are a little, shall we say, forgiving about how you can structure them in ways that completely defeat static analysis, meaning it's rather hard to determine what module exports what. We do need a more informative error message – I've created an issue (https://github.com/rollup/rollup/issues/1033) – and I had one idea about how to make things work out of the box a bit better, though I don't know how realistic it is: https://github.com/rollup/rollup-plugin-commonjs/issues/125

I've tried following the various discussions about RC0, external deps, modifying rollup config, etc., but still get "extend.js does not export extend" errors on build.
Where has the dust settled on this? Do we have a direction on how to install and import pouch? If this commit fixes it, do we just need a PouchDB v6.0.7 cut to achieve ultimate happiness?

@dendrochronology If you only followed creating the config, that was incomplete. There are additional changes that are listed above that are not on the docs page yet.
Look for rollup-plugin-node-builtins and rollup-plugin-node-globals and the associated rollup.config.js

@sovanyio so I need to manually export extend in the builtins() and globals as well? I don't suppose you have an example, do you? :-)

@dendrochronology the config is linked here. The two additions address followup problems after you explicitly tell rollup about extend.
The build cli output actually spits out the error after echoing that it failed to find the overridden config file (due to errors in it).

Yeah, I thought I was doing all that (created custom rollup.config.js in cutePuppyPics/scripts, npm installed stuff, still get:
Module /Users/foo/Projects/cutePuppyPics/node_modules/js-extend/extend.js does not export extend

Can you post more from the log?

@dendrochronology see the Bundle section on https://ionicframework.com/docs/v2/resources/app-scripts/.

Has anyone been able to successfully get ionic emulate iOS to work with any of the workarounds?
I recently tried @matheusgarcez repo and that worked for ionic serve.
I can't get ionic emulate iOS to work. It might be unrelated. Posted in the forum here:
https://forum.ionicframework.com/t/ionic-emulate-ios-error-error-could-not-resolve-entry-tmp-app-main-dev-js/66508/1

@audan2009 It worked for me. You have to update to @ionic/app-scripts because v0.0.27 doesn't set up the process.env.IONIC_ENV correctly. With the latest version you have to remove ngTemplate from your config.

@Bouzmine thank you thank you!

are there any workarounds?

I just released PouchDB 6.0.7. Our solution was to drop the js-extend dependency because Rollup can't seem to handle it.
It's not an ideal solution, but PouchDB now works out-of-the-box with Ionic 2. You can get the fix by merely doing npm update.
I'll close this issue because the title itself is no longer applicable. The core problem still exists (e.g. if any Ionic users actually legitimately do want to use js-extend or similar modules with tricky export patterns) but I'll leave it up to Ionic/Rollup if they'd like to fix the root problem.

Much appreciated thanks @nolanlawson


support scaling source backfill

Signed-off-by: xxchan<EMAIL_ADDRESS>I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

#16825  👈
main

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

Join @xxchan and the rest of your teammates on  Graphite

Test failed. This is the problem described in https://github.com/risingwavelabs/risingwave/issues/18300

We may need to conduct actual tests on the behavior of sources with split reduction like Kinesis during scaling (accompanied by split reduction). #9961

#15994


How does it work with Uniswap v3?

Thanks a lot. Very interesting project

Just saw the PR, close this PR


docs: more updates to api docs - browser-crawler package

There's only few tiny changes to basic crawler + browser crawler package should be done. I'm slow as hell today - probably should not go to sleep at 7 am 😄. I would rather push more changes (not to create 10 PRs for this). But it COULD be merged already, this browser-crawler package is done from my perspective.
One thing I wanted to ask - is it intentional that browser-pool is not exposed? I have replaced the BrowserPool links to the current apify-ts repo, but it would change. So I should either update the links later, or if BrowserPool will be shown in the api docs - I would replace it with {@link BrowserPool}.
One more thing not to forget - search on the site still does not work - is it expected?

 I'm in contact with them.

Good catch about the browser pool, added now to API docs.

updated the links, the example tag, updated Actor links in apify-guide. Wanna merge it or I could continue here? @B4nan

do another PR, i want to have the docs as up to date as possible as they are live already


java.lang.NullPointerException: null key in entry: null=shadows.apotheosis.village.fletching.arrows.MiningArrowRenderer@36acfcff

No clue what causes this but I'll attach the logs
latest.log

check your resource pack, try unloading it and see if it's solved.

This is caused by Astikor Carts.  A random mod gets blamed because they are registering entity renderers improperly and breaking other mods.

It seems to be an issue with geckolib since it does not crash if geckolib isn't there


Windows support?

Thanks for making this. Does it work on Windows (8.1)?

Thanks :)
Btw, is it possible to generate flamegraphs without instrumenting, from a sampling profiler's captures?
E.g. I use the Very Sleepy profiler, it can also export captures as CSV.

Not with this library. There are some other libraries that can do this, but I have not used them. I think there were some recommendations when I introduced the library on reddit you might be interested in, but in my experience, Windows support is not ideal: https://www.reddit.com/r/rust/comments/lkvlya/introducing_the_firestorm_profiler/

Thanks. Btw, what are the pros & cons of using firestorm vs tracy (via https://crates.io/crates/tracy-client and instrumenting with https://crates.io/crates/profiling).
Because both require instrumenting (and the profiling crate supports a couple backends but not firestorm), so I have to make a choice :)

I haven't looked into tracy very deeply. So, I would encourage you to figure out what is best for you.
One note from an API design perspective, the tracy docs state:

Simply depending on crates in this repository is sufficient for tracy to be enabled at program startup

I think this is a huge mistake that all of the intrusive profilers that I've seen make (except firestorm). This has a lot of implications when you want to figure out how to enable profiling for lots of dependencies (possibly transitively). It moves the profiler being used into the public surface API of the crate, makes the code messy, and introduces many problems. I write a bit about it here when comparing to flame: https://www.reddit.com/r/rust/comments/lkvlya/introducing_the_firestorm_profiler/gnnwr0l?utm_source=share&utm_medium=web2x&context=3
That being said I'm sure that tracy does something great that firestorm does not currently. So, do what's best for you.


Undefined reference to glXGetProcAddressARB()

I am unable to build with openGL enabled on a nvidia Orin with Jetpack 5.
I keep getting the following error when building opencv 4.5.4.
Undefined reference to glXGetProcAddressARB()

With 4.5.0, it succeeded, only because -DWITH_OPENGL=ON resulted in
OpenGL support: NO

It is probably a problem with my system, but if anyone knows more about this opengl error I'd appreciate it as I'm at a loss.

Huh. I don't have an Orin to test with, but I'll see if I can replicate on AGX as soon as I get a chance. Thanks for filing the issue.


Add some class to work with vectors

BaseVector is the base class meant to create other vector class
CartesianVector is a class for nth dimensional cartesian vectors
Vector3 is a class which look like Vec3, but since Vec3 is reused, I didn't take any risk

The goal is to simplify working with coordinates, for example :
me = Vector3(0, 10, 0) # Where I am
target = Vector3(5, 12, 10) # the position of the target
to_target = target - me
to_target.norm() # Distance from the target
to_target.yaw_pitch() # The yaw&pitch needed to look at the target

This has been for discussion for a while (#47), as the Vec3 class is little more than a wrapper around x, y, z for packet sending.
I really like the idea of yaw/pitch conversion.
My only concern is if all the high-level functionality is really needed, but other projects using Spock might profit from that.

I like it, but none of my code uses it. gjum review/merge is on you

I'll try to use this in physics. If it proves usable (and I think it will), I'll merge.


[Chromium] Svelte new tab template not showing the new tab right away, must open a new one

Ran npx extension create my-new-svelte --template=new-svelte and npx extension dev --chromium-binary=$(which chromium-browser):
$ npx extension create my-new-svelte --template=new-svelte
🐣 - Starting a new browser extension named my-new-svelte...
🤝 - Ensuring my-new-svelte folder exists...
🤞 - Checking if destination path is writeable...
🔎 - Scanning for potential conflicting files...
🧰 - Installing my-new-svelte from template new-svelte...
[==================================================] 100% 0.0s
📝 - Writing package.json metadata...
🛠  - Installing dependencies... (takes a moment)

📄 - Writing README.md metadata...
📜 - Writing manifest.json metadata...
🌲 - Initializing git repository for my-new-svelte...
🙈 - Writing .gitignore lines...
🔷 - Writing type definitions for my-new-svelte...
🧩 - Success! Extension my-new-svelte created.

Now cd my-new-svelte and npm run dev to open a new browser instance
with your extension installed, loaded, and enabled for development.

You are ready. Time to hack on your extension!

$ npx extension dev --chromium-binary=$(which chromium-browser)
►►► Using own Chromium browser binary /usr/bin/chromium-browser.
►►► my-new-svelte compiled successfully in 1983 ms.
►►► Creating new Chromium-based user profile... [==================================================] 100% 0.0s
►►► Chromium-based Extension running in development mode.

A new Chromium profile was correctly created, but the new tab was the default Google one.

Correct New Tab page did show after pressing Ctrl+T, just not out of the box.

fixed by #236


display(): Add new [Cloudant] connection misc issues

Typo in line 10: <<userIndentifier>>
the label and plan properties in the input are irrelevant and should be removed
you are assuming that environment variable VCAP_SERVICES  is defined. However, this is only the case if a Cloudant instance is bound to an application. If the service is not bound to an app, the connection information is only available through the service credentials.
the connection information should not be saved unless it has been validated successfully.

Fix in PR #167
There is no reliable way of validating the connection (without actually writing data which is too intrusive). Beside, I'm not sure connection validation on save is necessary anymore, since an error will be displayed during actual writing and user can now edit the connection to fix it.


Manage PermissionError when installed in ProgramFiles

https://sentry.io/etcher/esst/issues/687778677/
PermissionError: [Errno 13] Permission denied: 'C:\\Program Files\\Eagle Dynamics\\DCS World\\MissionEditor\\MissionEditor.lua'
(10 additional frame(s) were not displayed)
...
  File "esst\dcs\mission_editor_lua.py", line 84, in inject_mission_editor_code
    core.FS.mission_editor_lua_file.write_text(output, encoding='utf8')
  File "pathlib.py", line 1213, in write_text
  File "pathlib.py", line 1181, in open
  File "pathlib.py", line 1035, in _opener
  File "pathlib.py", line 387, in wrapped

PermissionError: [Errno 13] Permission denied: 'C:\\Program Files\\Eagle Dynamics\\DCS World\\MissionEditor\\MissionEditor.lua'

Sentry issue: ESST-3K

This is probably caused by a Windows security feature that prevents programs running as Administrator (such as ESST) from affecting Program Files.  This is not unique to ESST.  The only known way to solve is to A) enable ESST to run without admin permissions, or B) give the logged in user the rights to the Program FIles directory (my preferred method).

I'm unaware of the way Win8/Win10 manage their UAC.


Add support to disable default tags

I've hit situation where default module tags Environment and Name interfere with providers default_tag directive. This in result conflict with each Terraform run.
Introducing something like default_tags = true would enable/disable defaults on local.tags
Is this a logical feature to add as I'd like to make PR myself.
Maybe there are any workarounds possible?
# module.gitlab-runner.aws_iam_instance_profile.instance will be updated in-place
 ~ resource "aws_iam_instance_profile" "instance" {
       arn         = "arn:aws:iam::1111111111111:instance-profile/staging-instance"
       create_date = "2021-12-03T09:06:50Z"
       id          = "staging-instance"
       name        = "staging-instance"
       path        = "/"
       role        = "staging-instance"
     ~ tags        = {
         + "Environment" = "staging"
           "Name"        = "staging"
       }
       tags_all    = {
           "Environment"    = "staging"
           "Infrastructure" = "v2"
           "ManagedBy"      = "Terraform"
           "Name"           = "staging"
           "Project"        = "Shared"
       }
       unique_id   = "AAAAAAAA"
   }

Thanks for creating, will have a look at the issue in the next day.

A PR would be welcome. At the time the module was created, it was also not possible to provide default tags via the provider. Adding an option to disable tagging is welcome! Be-aware there are some tailored tags avaialbe since some orgs requires specific tags on security groups.


create-diagram action not working correctly

It's a very cool feature, but currently it's failing on the repo (creating an extra action + email, i.e., noise that can be just avoided).
Having a look to the documentation of the action, every time the diagram it's added, a new commit is added to the repo too. IMHO, I will avoid under any circumstances this feature, as it will just pollute the git history. (And once we would have reached good dev practises  - on the very close future-, this will be not idea). According to the doc, this can be avoid, but then I don't know how the diagram could be added to the repository/README.
@goseind I let you investigate the action + how not to create an extra commit.
Taking out the action workflow file + the outdated diagram.

Feature removed.


Expose BitMap's convert_to_image and resize methods to GDScript

Implements https://github.com/godotengine/godot-proposals/issues/3660 if it's desired. I think this should be cherry-pickable for 3.x as well.

This looks good from a design review, but do we know why the original functions weren't exposed?


KAFKA-3790: Allow for removal of non specific ACLs

remove ACLs with aclMatch() rather than Object#equals(Object)
remove unused session argument from aclMatch() to reuse it in removeAcls()
update test case for ACL removal management
change test method changeAclAndVerify(...) to use an expected Set of ACLs rather than relying on Object#equals(Object)

@slaunay this change makes sense to me, thanks. Can you rebase it against trunk and I'll give you a review?

Done, it was actually caused by another PR of mine that got merged (#1461) :grin:.

Let me know if you need anything else @tcrayford.

I am not sure about this change. Though the code change is small the impact to the Authorizer and what users may expect is pretty large.
After reading the Jira in a bit more detail it looks like there is a discrepancy between removing a permission/ACL and removing access. When you grant access on a specific host with one ACL and then try to delete that access with a different (more broad) ACL, nothing changes. This may appear like the incorrect behavior but I don't think it is. Instead of changing the code to delete all matching ACLs, I think the script could likely be improved to let the user know that no ACL was deleted because the requested ACL to be deleted does not exist. Alternatively providing a mechanism to list the ACLs that match is another option but would require changes to the Authorizer interface.
I think there are many more cases where deleting matching ACLs could cause unwanted and surprising behavior than there are ones that would cause preferable behavior.
As a quick example, suppose you add an ACL so userA can read topic1 then by accident you add an ACL so that userA can read all(*) topics. How do you delete the second grant without deleting the first intended one?
I think this change means there is no way to delete an ACL the grants the all operation on all hosts to all principles without also deleting all defined allow ACLs.

Hi @slaunay ,
It seems like this PR stalled. I'll close it out for now, but if you or anyone else want to resume this work, please feel free to re-open it (or start a new one)!
Thanks,
John

It's an oldie and since then we have access to Admin API so I don't think it makes sense anymore to modify such long running behaviour of kafka-acls.
I will close the JIRA ticket as well.


Expose metrics properly

fixes: kiali/kiali#2763
you can use the hack script to see the metrics in a local prom using the hack script - see https://github.com/kiali/kiali/pull/2766

See: https://github.com/operator-framework/operator-sdk/blob/v0.17.0/pkg/metrics/metrics.go#L112
We need a label "name" on the operator deployment.

The golden copy manifests for our next versions will need to alter the Deployment yaml - needs to match the changes to the deploy/operator.yaml done here in this PR.

To test, run the molecule test thusly:

Build this PR and push to your cluster via make cluster-push
Execute: MOLECULE_USE_DEV_IMAGES=true MOLECULE_SCENARIO=metrics-test make molecule-test

Or you can simply build and run make operator-create kiali-create and look at Prometheus and check that you have the different sets of metrics - if you see these three metrics, then you know it is working:

kiali_api_processing_duration_seconds_count (this comes from the Kiali server)
kiali_info (this comes from port 8686/metrics of the operator)
workqueue_work_duration_seconds_count (this comes from port 8383/metrics of the operator)

There are many more metrics, but those three come from the three different metric endpoints.

kialiqeci

!!! Couldn't read commit file !!!


Focused discussion: stopping/starting a structure + saving and returning to state

Including human-in-the-loop etc.

related to hosted structure runtime

Discussion has been had offline -- exploring state machines as the solution here.


Cross-compiling an electron App

Hey guys. Thank you for your amazing work, nodegit is a fine piece of Software.
I'm asking for your advice here.
I managed to include nodegit in our electron app but since it depends on C binaries, it basically forces us to compile the application separately on each target.
That's a shame because we lose the possibility to create all the targets clients (linux, mac and windows) in one build on a single machine.
There must be some kind of way of linking pre-compiled binaries on the fly but I could really use your help here!
Many thanks in advance.

You could probably script out a solution that involves curling down all our tarballs and installing via node-pre-gyp. We could help brainstorm some ideas, but you may want to consider taking the same route we are, which is building the prebuilts during continuous integration.

When building Gitkraken we use pre-built binaries, via an npmrc. You can also just manually force the config values with environment variables you set for the install. Using the prebuilts is highly recommended, as there are lots of finicky bits for linux, especially around openssl, especially if you're distributing this externally.
This is our .npmrc
runtime = electron
target = 0.36.5
target_arch = x64
disturl = https://atom.io/download/atom-shell

That way, ANY modules that have to be recompiled will automatically build for electron right away, instead of for node first, then rebuilding for electron. Additionally, node-pre-gyp will know automatically not to download node binaries, but will download electron binaries if available.

I really need to update the how to for electron >.<
Also, i wish more workflows for electron would just adopt this in general, because it works so friggin well, even without nodegit involved.

Thanks for your awesome suggestions!
@tbranyen, moving the packaging is a very relevant and simple idea.
@maxkorp's solution is more intriguing (I had a look at gitkraken, BTW, it's awesome).
Let me rephrase it to make sure I understand:
When installing nodegit, node-pre-gyph will run. It can optionally pick up flags from the command-line or in .npmrc.
So the build would become:

npm i nodegit --target_platform=win32
package the electron app as usual

:+1:

Thanks a lot @maxkorp, your solution works flawlessly!
For those interested here is our packaging script.
We decided to build the app with npm 2, less headaches.
Do you want to close this issue or would you keep it as a reminder to improve the documentation? :angel:

👍

I'll create a new issue, but thanks man. FWIW, if you're always packaging for a single arch, you can include target_arch in the npmrc as well :+1:


Tensorflow breaks entirely on the following input

When inputting the following parameters, both the neurons and the output of tensorflow breaks entirely, giving NaN. Tested across the latest Firefox 47, Chrome 49 and Opera 37 browsers.
http://playground.tensorflow.org/#activation=tanh&batchSize=1&dataset=spiral&regDataset=reg-plane&learningRate=1&regularizationRate=0&noise=50&networkShape=8&seed=0.42182&showTestData=false&discretize=false&percTrainData=50&x=true&y=true&xTimesY=false&xSquared=false&ySquared=false&cosX=false&sinX=false&cosY=false&sinY=false&collectStats=false&problem=regression

Looks like the learning rate is too high. LR < 0.3 seems to work.

Yes. This is the expected behavior. Whenever you get a NaN, we show it using a grey color.
In this case, you are using regression as a problem type, and the output of the last neuron is just a linear function (unbounded output, so the error derivative is unbounded). So, since your learning rate is too high, the network is going to escape the stable region and diverge.


Finish Multiple Reference Support

Work on selectors which reference multiple elements is almost finished but there are a few finishing items to be addressed.
First, we need to properly test everything involved in it, since several tests were left out previously. Second, we need to add support for the is operator: $(".items") is valid. Last, we need to address some of the code review items identified previously.

The language uses identifiers instead of selectors now, so this issue is now meaningless.


GetImagesList "name must not be null"

Describe the bug
Hello, thanks again for the library, work really well ;)
I have a couple of crash on production linked to Extension.getImageList()
when name == null
I couldn't reproduce it, just a couple of stacktrace from crqashlytics
Fatal Exception: java.lang.NullPointerException: name must not be null        at com.app.imagepickerlibrary.ExtensionsKt$getImagesList$2.invokeSuspend(Extensions.kt:253)        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)        at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42)        at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95)        at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.java:570)        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
I didn't really dig into it, and I don't know how important the name is for a picture, but I was wondering if just avoiding picture if any params of the cursor is null could fix it without creating too many unwanted behavior
Regards

@amensia Thanks for the stack trace. Will check the issue and update you soon!

@amensia Closing the issue as new version 2.1 is released with the fix. Please feel free to reopen this if you still face the issue with the latest version of the library.


Stable/mitaka

Want to Implement Nexenta driver For Openstack for integration with Nexenta Stor 4.x

Thank you for contributing to openstack/cinder!
openstack/cinder uses Gerrit for code review.
If you have never contributed to OpenStack before make sure you have read the
getting started documentation:
http://docs.openstack.org/infra/manual/developers.html#getting-started
Otherwise please visit
http://docs.openstack.org/infra/manual/developers.html#development-workflow
and follow the instructions there to upload your change to Gerrit.


Upgrade Java  11 to 17

fixes https://github.com/strimzi/test-container-images/issues/25

@see-quick What is the impact if this uses Java 17 on the things such as Bridge based on Java 11? I assume no impact as long as it is only the container image using Java 17 and not the test container code itself?

I was trying to make a camel-quarkus test for kafka run on FIPS. My work canbe seen here: https://github.com/apache/camel-quarkus/pull/6091
I was able to customize the image by installing java 17 during runtime.  I was able to run the tests on the FIPs system (when using j17). Of course I had to create a PKCS12 stores correctly.

@scholzj I'm no expert on kafka. I just noticed that according to the blog post (from the summary), kafka requires J17 to run on fIPs. I tried to achieve this and from my perspective it works as expected. Therefore I proposed this PR with the fix.

@scholzj I'm no expert on kafka. I just noticed that according to the blog post (from the summary), kafka requires J17 to run on fIPs. I tried to achieve this and from my perspective it works as expected. Therefore I proposed this PR with the fix.

It is more about the OpenJDK 17 having many improvements in FIPS support rather than Kafka itself. But yes, the OpenJDK17 is important for this.

@JiriOndrusek Can you please fix the DCO signoff? The instructions should be under the Details link next to the DCO status in the PR status section.

I assume no impact as long as it is only the container image using Java 17 and not the test container code itself?

That's my guess also...as we know Java 17 is backward-compatible with Java 11 so code should run on Java 17 runtime without any problem.

Thanks for the PR. Sorry, it looks like it got forgotten for a long time :-(.


Added workplan changed event to have the possibility to react on changes

It is necessary to have an event about a changed workplan to be able to react on this change.

Since we have to extend the workplan API anyway. Should we include a SourceId for workplans. This could be helpful for future changes when workplans are cloned, versioned, ...
@dbeuchler ?

Since we have to extend the workplan API anyway. Should we include a SourceId for workplans. This could be helpful for future changes when workplans are cloned, versioned, ...
@dbeuchler ?

yes... source id can be helpfull

Since we have to extend the workplan API anyway. Should we include a SourceId for workplans. This could be helpful for future changes when workplans are cloned, versioned, ...
@dbeuchler ?

Can we add it if we need it in the future? I would like to address only one problem

Since the requirement has disappeared, could we do this against future without obsolotes?


Snap sower to terrain surface

As commented by philc_uk on the asset store. This could be implemented in the sower or as a separate script.
The code from the comment:
..
public bool SnapToSurface = true;
..

Line 110:
    go.transform.position += binormal;
    if (SnapToSurface)
    {
        RaycastHit hit = new RaycastHit();
        Physics.Raycast (new Ray (go.transform.position, Vector3.down), out hit);
        if (hit.collider != null)
        {
            go.transform.position = hit.point;
        }
    }

I think it's better to have very simple example. The sower is here to show the concept, not to be used as-is.
But it would be great to a have another exemple with snapped objects on the floor, indeed. Do you want to propose one?

I was thinking about a simple terrainSower as suggested by philc_uk.


Not working...

I've tried optimizing a Json File...
Its seams its not working...
Error in parsing XML: Non-whitespace before first tag.
Line: 0
Column: 1
Char: {

That's because vector images are xml, not json. This library is for optimising Android vector images. You probably try to use it for something else.


Support for the FTS5 extension?

const st1 = db.prepare(SELECT * FROM t_content_idx where t_content_idx match 'a')
it return null ,why? the better-sqlit3 don't support fts5 extenssion?

By default better-sqlite3 compiles SQLite with SQLITE_ENABLE_FTS5.
You code produces

SqliteError: no such table: t_content_idx

Please provide a complete self-contained reproduction using an in-memory db.
import Database from 'better-sqlite3'

const db = new Database(':memory:');

// Your setup code

console.log(db.prepare(`SELECT * FROM t_content_idx where t_content_idx match 'a'`).all());

Closing due to inactivity


firebase-app.js: Overwriting FirebaseError base field "name" can cause unexpected behavior.

Hi @mikkopaderes.  Thanks for your continued awesome work on this.  I am getting the above warning in my console when I implement the ESA authentication solution as seen in your guides here.  Everything seems to work perfectly but that warning might signify a problem that might stump me later.  Is this a known issue from your end?
You can see from the following screenshot: Console View that even with the warning, the session's isAuthenticated property is true and I am able to get session authenticated data.
I am also getting odd behaviour where on my (fastboot) app refresh, the session appears not to stay authenticated as it goes to the authentication page.  I have enabled fastboot support according to the Ember Simple Authentication documentation by using only the cookie session store but to no avail.  When I disable fastboot, the session is restored correctly.  Perhaps you can advise me on this as well if you can?
Let me know.

I'll check to see if I can reproduce the warning on my side.
As for fastboot, I couldn't do anything with it before as Firebase needed to support cookie based auth for it to work—they use JWT for auth.
I'm not sure if they support cookie auth now. I'll have to check back on it.

The warnings seems to have been introduced in Firebase 6.0.0. It happens when we call firebase.app() and no Firebase instance exists yet.
I'm not sure what the impact is yet. If any, this just may be some false warning from Firebase which they should fix if true.

I'll check to see if I can reproduce the warning on my side.
As for fastboot, I couldn't do anything with it before as Firebase needed to support cookie based auth for it to work—they use JWT for auth.
I'm not sure if they support cookie auth now. I'll have to check back on it.

Thanks for looking into this.  Regarding fastboot firebase session support, I was under the impression that the actual authentication only happens once on the client side.  Subsequent access to the authenticated routes would then only have to rely on the established session which is stored in the cookie store until invalidated.
Unless I understood incorrectly, I believe ESA resolved session access in fastboot by implementing the ember-cookie addon which runs on both the client and server.  As such, shouldn't the session be restored from this cookie on the fastboot server without hitting the firebase authentication apis again?

The warnings seems to have been introduced in Firebase 6.0.0. It happens when we call firebase.app() and no Firebase instance exists yet.
I'm not sure what the impact is yet. If any, this just may be some false warning from Firebase which they should fix if true.

Thanks for confirming this.  I guess we will just have to keep a look out for any eventuality on this.

I can't recall if ESA has their own cookies being set. I'm sure though that we aren't using it if any and should not even if we can. This is because Firebase auth tokens are short lived so we always need to check the auth state and refresh the tokens.
I've seen a new guide in Firebase that might solve this use-case but I'll have to look into it more and see how I could best implement this in the addon. Basically, it would involve service workers.

I gotcha.  Will also look into it and see if there is anything I could do to help.  Thank you.

I saw that the ESA guides show how to set up the cookie store exclusively when you are setting up your fastboot app somewhere on the read me.  But be that as it may, I just looked at the firebase token lifetime and I see it generally takes an hour to expire which I thought is not such a short time to really worry about refreshing because by an hour, at least in my app, the job will have been long done.
The other thought that I have is, the fastboot server is only necessary at first boot after which the client takes over.  I think the hour it takes to expire the token will be long enough not to feel disturbing to a user when it does expire and forces a re-authentication.  If the other service worker solution seems like it will take time, would it be feasible to patch this addon to work with token even just for an hour in the mean-time while we look for a long time solution?

If your users doesn't visit your app for more than an hour and revisit again, they'll end up hitting fastboot with an authenticated state again because the token is already expired. This might not be a good user experience for you.
So really, even if I add cookie support, I think the service worker is what you'd want.

I've created a spin-off issue #99 as it's out of scope of this issue. I'll be closing this now as the question in the issue title has already been addressed. We can re-open this if necessary.

Thank you.  Will be great to continue to work towards a solution on the other thread.  See you there.


correcting the wrong Class name to right Class Name along with creating the convert_tags_to_color function

I have added the spaces

@achiverram28 you changed the file structure :|
Make another pr with the correct structure, i am marking this as invalid

I had changed a lot of files, and cannot make out what I have made, and src was not required , it was extra , and please comment what changes to make , but after working a lot on it and getting an invalid tag is jot worthy, please of possible remove it, it's a request,  it will affect my hacktoberfest .Please I guess you understand

@achiverram28 you're right, the pr doesn't deserve a invalid tag. Hacktoberfest doesn't have good rules and needs more explaining for maintainers. Don't worry, it will be removed once you add the src folder back. The project follow the latest standards(https://packaging.python.org/en/latest/tutorials/packaging-projects/) and the new structure. Please consider following the standard and making a new pr for that. :slightly_smiling_face:
Don't worry about this pr being invalid, make another one and I'll accept it. You'll get 2 points then i guess. I'll have to ask in the discord server to be sure.
Please do the requested changes.


help

I have a Kankun SP3 smart plug running openwrt, I am able to control that smart plug via cgi script from my webb browser apart from the android app that ships with it.
Please tell me how can I use this repository with the smrtplug I have which runs openwrt.

sorry, I don't know much about the Kankun SP3, this is just a alpha version of web server to control some modules such as the ESP8266 WIFI  via MQTT protocol. I'm trying to make it general and extendable.....
Thx for you attention.

Kankun SP3 runs have openwrt on it , but I am not sure about how to run it on openwrt. Can you please write some instructions for that ?
Thanks and regards
siddhartha


Put the playground UI inside docker

I've not yet updated the dev workflow since doing that inside docker isn't ideal (one issue is cargo redownloading packages every time).

When you asked for the Docker version on the official server, I realized that you don't have access to the current setup. It's different from what's documented in the README (that's the i32 deployment). I've been holding off documenting it because I was under the impression that we were going to follow erickt's path where it was very likely we'd need to be building an AMI anyway.
That said, here's the top-of-mind structure as I remember it now:

We run the complete build on every commit to master as well as at least daily using Travis' cron feature. Example build. This is broken up into multiple stages to allow more things to happen in parallel, reducing the total wallclock time.

The build produces a number of artifacts

containers for each of the 3 channels — uploaded to Docker Hub
containers for rustfmt and clippy — uploaded to Docker Hub
The server binary proper — uploaded to S3
The frontend files — uploaded to S3

The server has a crontab configured with AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY running hourly:
#!/bin/bash

set -euv -o pipefail

root=/home/ec2-user

# Get new docker images
$root/fetch.sh

# Clean old docker images
docker system prune -f || true

# Get new artifacts
aws s3 sync s3://playground-artifacts $root/playground-artifacts
# These artifacts don't change names and might stay the same size
# https://github.com/aws/aws-cli/issues/1074
aws s3 sync \
    --exclude='*' \
    --include=ui \
    --include=build/index.html \
    --include=build/robots.txt \
    --exact-timestamps \
    s3://playground-artifacts $root/playground-artifacts
chmod +x $root/playground-artifacts/ui

# Restart to get new server binary
sudo stop playground || true
sudo start playground

The server has an Upstart service to ensure the binary keeps running
description "The Rust Playground"
author      "Jake Goulding"

start on filesystem or runlevel [2345]
stop on shutdown

env TMPDIR=/mnt/playground
env RUST_LOG=info
env PLAYGROUND_UI_ADDRESS=<IP_ADDRESS>
env PLAYGROUND_UI_PORT=8080
env PLAYGROUND_UI_ROOT=/home/ec2-user/playground-artifacts/build
env PLAYGROUND_CORS_ENABLED=1

chdir /home/ec2-user/playground-artifacts
script
    exec >>/var/log/upstart/playground.log 2>&1
    ./ui
end script

Pieces of this that I find important:

Continuous deployment — I don't want to SSH into the server except for troubleshooting.
The build in Travis is parallelized and optimized as much as possible — pull requests have to go through a similar process, but I skip building the containers and uploading the artifacts. At some future point, I want to actually run the Ruby integration tests in CI.

Pieces that may or may not be important:

The playground assets are cached reasonably heavy. The index page is cached for an hour and the assets proper are cached for a year. To date, I've just been letting old assets pile up because they aren't that big. Since they should be cached client-side, this is probably not a big worry.

Pieces that probably aren't important:

I've been cross-compiling to musl simply so I could run the binary directly on Amazon Linux without installing a bunch of gunk. If we are going to be running inside a container where we have control over the runtime, this can probably be removed.

Now that I've had a chance to read through, I'm thinking we might be able to do this:

Reuse the existing build and upload to S3 phases.
Add a new phase at the end that downloads the artifacts from the previous phase, then builds the combined docker image using them and uploads it to Docker Hub

This ensures that we are using a slightly more optimized build (see .travis/compile-frontend.sh). There's also some nuance that I don't currently remember around the specific musl environment to build in — it needs some C dependencies compiled for musl that our own nightly doesn't have (see the chosen Docker image in .travis/compile-backend.sh)
The easiest thing to do would be to copy .travis/build-containers.sh to a new name and have it only call ui/build.sh.
What do you think?

[compiling to musl] can probably be removed.

To be clear, I don't think we should do that during this PR; I'd rather have fewer moving parts.

(it looks like you get parallel builds from travis, so I'll continue based on that assumption)
Just a thought: since the playground frontend and backend don't actually depend on rustfmt or clippy, you can cut ~6min from your build time by just moving them into the tools stage.
If you were then to combine frontend and backend, you'd still be saving 5min30s due to how long clippy takes to compile. This lets you eliminate s3.
I think this is a nice result both because of fewer moving parts and because it lets people run the exact same build scripts themselves with no changes.

I've not yet updated the dev workflow since doing that inside docker isn't ideal (one issue is cargo redownloading packages every time).

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


Problems installing a pseudo potential family

Concerning the aiida-pseudo family, I have some problems during learning to use the aiida, the command "aiida-pseudo install SSSP" always fails at the third step"unpacking archives and parsing pseudos...", I downloaded the pseudo library, and extract the tar file, and with the command"verdi data upf uploadfamily path/to/folder name_of_the_family "some description for your convenience""  to create a pseudo family, however, the command "aiida-psrudo list" end up with the result"no pseudo potential families have been installed yet", why is that? I have been looking for solutions for a few days, little information could be abtained, since no instruction for install pseudo family offline at all. Could you please tell me what I missed to install the pseudo family? Thanks very much.
Originally posted by @Angmar1989 in https://github.com/aiidateam/aiida-pseudo/issues/56#issuecomment-811651123

If you install with the old way of verdi data upf uploadfamily it will not create a family that aiida-pseudo list recognizes, that is why it doesn't find it. If you run verdi group list you should see it however, since the family is just a Group. If you want to work with aiida-pseudo you have to install it through aiida-pseudo install. Can you give the exact error message when you run aiida-pseudo install sssp? Please run it with the -t option to get the full traceback.

If you install with the old way of verdi data upf uploadfamily it will not create a family that aiida-pseudo list recognizes, that is why it doesn't find it. If you run verdi group list you should see it however, since the family is just a Group. If you want to work with aiida-pseudo you have to install it through aiida-pseudo install. Can you give the exact error message when you run aiida-pseudo install sssp? Please run it with the -t option to get the full traceback.

Please run with the -t option so aiida-pseudo install sssp -t

Please run with the -t option so aiida-pseudo install sssp -t

I found I could use command: "aiida-pseudo install family -F tar ~/SSSP_efficiency_pseudos.tar.gz sssp_1.1_efficiency" to install a downloaded tar pseudo library file, but new problems

that is because you should specify which family type to use. I think the following should work
aiida-pseudo install family -F gztar -T pseudo.family.sssp SSSP_efficiency_pseudos.tar.gz SSSP/1.1/PBE/efficiency

Note that using the SSSP/1.1/PBE/efficiency label is very important if you want the aiida-quantumespresso tools to automatically detect it.

that is because you should specify which family type to use. I think the following should work
aiida-pseudo install family -F gztar -T pseudo.family.sssp SSSP_efficiency_pseudos.tar.gz SSSP/1.1/PBE/efficiency

Note that using the SSSP/1.1/PBE/efficiency label is very important if you want the aiida-quantumespresso tools to automatically detect it.

It works! thank you very much!!!


change yiimp explorer link

http://yiimp.ccminer.org/explorer/LBC not found, change to http://yiimp.eu/explorer/LBC

Thanks @MrFatoni, will send you a tip on Discord


org.sqlite.SQLiteConfig.setDatePrecision(String) throws unnecessary SQLException

The signature is public void setDatePrecision(String datePrecision) throws SQLException, but at no point in the code a SQLException is thrown.
This just adds unnecessary boilerplate code. Please remove.

@michael-o please send a PR if this is still an issue for you.


[Bug]: No compilation error found in collect clause

Description
Code
import ballerina/io;

class NumberGenerator {
    int i = 0;
    public isolated function next() returns record {|int value;|}|error? {
        if self.i > 10 {
            return error("Number exceed 10");
        }
        int value = self.i;
        self.i += 1;
        return {value};
    }
}

public function main() returns error? {
    NumberGenerator numGenrator = new;
    stream<int, error?> numberStream = new (numGenrator);

    int intResult = from int number in numberStream
    collect sum(number);
    io:println(intResult);
}

the return type of
from int number in numberStream
    collect sum(number);
    io:println(intResult);

should be int|error in this scenario.
But currently it take as int as the return type
Steps to Reproduce
No response
Affected Version(s)
No response
OS, DB, other environment details and versions
No response
Related area
-> Compilation
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response

Error completion was ignored mistakenly which could lead to runtime typecast errors when an error value is tried to be assigned to the result type


Describe slow/failure to boot dind sidecar in TROUBLESHOOTING.md

Describe solution for slowly starting dind sidecar containers

I greatly appreciate you for sharing your experience. TIL how to diagnose the slow disk issue, and how you can connect it with an issue in your ARC/runner problem. Great work @kobejn-jb!

Thanks, I'm happy it was useful.


Support Time comparison

Which issue does this PR close?

Closes #3157
Rationale for this change

i added some test cases in advance
This depends on apache/arrow-rs#2458
What changes are included in this PR?

Are there any user-facing changes?

The relevant arrow feature has been released -- I wonder if this PR is still relevant?

@alamb do you prefer to add these test cases? I could do the rebase and push again. Otherwise I think we could close the pr now as it's been solve.
I think these tests would be very valuable as our sql coverage of time is pretty low at the moment. Perhaps you could make a time.slt that is similar to  dates.slt and timestamp.slt?

i'll do it

Closing as this PR is over a year old. Please feel free to reopen it / rebase it if you plan to keep working on it


Rename to mathiu.

Codecov Report

Merging #14 (7ce5041) into main (578bf57) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #14   +/-   ##
=======================================
  Coverage   34.55%   34.55%
=======================================
  Files           1        1
  Lines         356      356
  Branches      236      236
=======================================
  Hits          123      123
  Misses          5        5
  Partials      228      228

Impacted Files
Coverage Δ

include/mathiu.h
34.55% <ø> (ø)

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 578bf57...7ce5041. Read the comment docs.


cargo clippy --fix for uninlined fmt args

Clippy CI has started complaining about uninlined format args
We could have done this ages ago, but i think it conflicted with MSRV at some point.
It does look like this is from rust 1.58 though, so this should be fine from an MSRV perspective now.
Commits are all automated via cargo +nightly clippy --fix -p kube-* (apart from rename of the deprecated instruction in clippy.toml)

Codecov Report

Merging #1099 (dd923f0) into main (6c87ffe) will increase coverage by 0.01%.
 Consider uploading reports for the commit 3461045 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1099      +/-   ##
==========================================
+ Coverage   72.59%   72.61%   +0.01%
==========================================
  Files          65       65
  Lines        4821     4820       -1
==========================================
  Hits         3500     3500
+ Misses       1321     1320       -1

Impacted Files
Coverage Δ

kube-client/src/api/entry.rs
82.26% <0.00%> (ø)

kube-client/src/api/util/mod.rs
93.50% <ø> (ø)

kube-client/src/discovery/apigroup.rs
89.90% <ø> (ø)

kube-core/src/gvk.rs
82.60% <0.00%> (ø)

kube-core/src/watch.rs
57.14% <0.00%> (ø)

kube-runtime/src/utils/mod.rs
64.15% <ø> (+1.18%)
:arrow_up:

kube-client/src/client/auth/mod.rs
56.61% <37.50%> (ø)

kube-client/src/lib.rs
94.00% <50.00%> (ø)

kube-client/src/client/mod.rs
70.48% <66.66%> (ø)

kube-client/src/client/middleware/base_uri.rs
91.66% <100.00%> (ø)

... and 7 more

ok, finally nothing left in the clippy annotations 😅


Rework config templates

[!warning]
This is a public repository, ensure not to disclose:

[x] personal data beyond what is necessary for interacting with this pull request, nor
[x] business confidential information, such as customer names.

What kind of PR is this?
Required: Mark one of the following that is applicable:

[ ] kind/feature
[ ] kind/improvement
[ ] kind/deprecation
[ ] kind/documentation
[x] kind/clean-up
[ ] kind/bug
[ ] kind/other

Optional: Mark one or more of the following that are applicable:

[!important]
Breaking changes should be marked kind/admin-change or kind/dev-change depending on type
Critical security fixes should be marked with kind/security

[ ] kind/admin-change
[ ] kind/dev-change
[ ] kind/security
[ ] kind/adr

What does this PR do / why do we need this PR?

Reworked config templates so provider specific config is handled through static template manifests instead of the init script.

Fixes #2018

Information to reviewers
The linked issue also suggests:

If we would want to, for example to add commonality for OpenStack providers, we could add a meta.yaml which we could declare other flavours or providers to drag into the merge.

However I'm not sure that we want to do this, it could be confusing to keep track of where you should add your config when you want to add provider-specific config instead of just adding it for the provider you wish.

Checklist

[ ] Proper commit message prefix on all commits

Change checks:

[x] The change is transparent
[ ] The change is disruptive
[x] The change requires no migration steps
[ ] The change requires migration steps
[ ] The change upgrades CRDs
[ ] The change updates the config and the schema

Metrics checks:

[x] The metrics are still exposed and present in Grafana after the change
[x] The metrics names didn't change (Grafana dashboards and Prometheus alerts are not affected)
[ ] The metrics names did change (Grafana dashboards and Prometheus alerts were fixed)

Logs checks:

[x] The logs do not show any errors after the change

Pod Security Policy checks:

[x] Any changed pod is covered by Pod Security Admission
[x] Any changed pod is covered by Gatekeeper Pod Security Policies
[x] The change does not cause any pods to be blocked by Pod Security Admission or Policies

Network Policy checks:

[x] Any changed pod is covered by Network Policies
[x] The change does not cause any dropped packets in the NetworkPolicy Dashboard

Audit checks:

[x] The change does not cause any unnecessary Kubernetes audit events
[ ] The change requires changes to Kubernetes audit policy

Falco checks:

[x] The change does not cause any alerts to be generated by Falco

Bug checks:

[ ] The bug fix is covered by regression tests

Would it be too much from me to ask to remove one directory level of config? 😅
So all in config/config/ would rather be just in config/?

No I think that would be for the best :+1:


fix: CI docker image push

What is the problem that this fixes or functionality that this introduces? Does it fix any open issues?

Give a summary of what the PR does, explaining any non-trivial design decisions

Attempt to Fix https://github.com/All-Hands-AI/OpenHands/actions/runs/10458254449/job/28959638639
Attempt to Fix https://github.com/All-Hands-AI/OpenHands/actions/runs/10458254447/job/28962044366
Since we already rename from OD to OH, i also take the chance to rename all occurrence of od_runtime to runtime

Other references

#2480

Sorry, click close by mistake.