Can't not run Microsoft.Bot.Sample.SimpleAlarmBot

I tried to run Microsoft.Bot.Sample.SimpleAlarmBot in Bot Framework Emulator, but cannot. I got this error: 500 Internal Server Error
Stack trace:
{"Message":"An error has occurred.","ExceptionMessage":"Object reference not set to an instance of an object.","ExceptionType":"System.NullReferenceException","StackTrace":"   at Microsoft.Bot.Builder.Luis.Extensions.d__0.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Luis\LuisService.cs:line 132\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.LuisDialog1.d__5.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Dialogs\LuisDialog.cs:line 142\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Internals.DialogTask.ThunkResume1.<Rest>d__4.MoveNext() in C:\\MSBotBuilderTest\\BotBuilder-master\\BotBuilder-master\\CSharp\\Library\\Dialogs\\DialogTask.cs:line 118\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Internals.Fibers.Wait2.<Microsoft-Bot-Builder-Internals-Fibers-IWait<C>-PollAsync>d__19.MoveNext() in C:\\MSBotBuilderTest\\BotBuilder-master\\BotBuilder-master\\CSharp\\Library\\Fibers\\Wait.cs:line 247\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Internals.Fibers.Frame1.<Microsoft-Bot-Builder-Internals-Fibers-IFrameLoop<C>-PollAsync>d__7.MoveNext() in C:\\MSBotBuilderTest\\BotBuilder-master\\BotBuilder-master\\CSharp\\Library\\Fibers\\Fiber.cs:line 114\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Internals.Fibers.Fiber1.<Microsoft-Bot-Builder-Internals-Fibers-IFiberLoop<C>-PollAsync>d__13.MoveNext() in C:\\MSBotBuilderTest\\BotBuilder-master\\BotBuilder-master\\CSharp\\Library\\Fibers\\Fiber.cs:line 220\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at Microsoft.Bot.Builder.Internals.Fibers.Wait2.Microsoft.Bot.Builder.Internals.Fibers.IAwaiter.GetResult() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Fibers\Wait.cs:line 327\r\n   at Microsoft.Bot.Builder.Dialogs.Chain.LoopDialog1.<ResumeAsync>d__3.MoveNext() in C:\\MSBotBuilderTest\\BotBuilder-master\\BotBuilder-master\\CSharp\\Library\\Dialogs\\Chain.cs:line 549\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Internals.DialogTask.ThunkResume1.d__4.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Dialogs\DialogTask.cs:line 118\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Internals.Fibers.Wait2.<Microsoft-Bot-Builder-Internals-Fibers-IWait-PollAsync>d__19.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Fibers\Wait.cs:line 247\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Internals.Fibers.Frame1.<Microsoft-Bot-Builder-Internals-Fibers-IFrameLoop-PollAsync>d__7.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Fibers\Fiber.cs:line 114\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Internals.Fibers.Fiber1.<Microsoft-Bot-Builder-Internals-Fibers-IFiberLoop-PollAsync>d__13.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Fibers\Fiber.cs:line 233\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Internals.DialogTask.<Microsoft-Bot-Builder-Dialogs-Internals-IPostToBot-PostAsync>d__201.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Dialogs\DialogTask.cs:line 246\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Internals.ReactiveDialogTask.d__51.MoveNext() in C:\\MSBotBuilderTest\\BotBuilder-master\\BotBuilder-master\\CSharp\\Library\\Dialogs\\DialogTask.cs:line 288\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Internals.LocalizedDialogTask.<Microsoft-Bot-Builder-Dialogs-Internals-IPostToBot-PostAsync>d__21.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Dialogs\DialogTask.cs:line 343\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Internals.ScoringDialogTask1.<Microsoft-Bot-Builder-Dialogs-Internals-IPostToBot-PostAsync>d__61.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Dialogs\Scorable.cs:line 143\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Internals.PersistentDialogTask.d__61.MoveNext() in C:\\MSBotBuilderTest\\BotBuilder-master\\BotBuilder-master\\CSharp\\Library\\Dialogs\\DialogTask.cs:line 371\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at Microsoft.Bot.Builder.Dialogs.Internals.PersistentDialogTask.<Microsoft-Bot-Builder-Dialogs-Internals-IPostToBot-PostAsync>d__61.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Dialogs\DialogTask.cs:line 377\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Conversation.d__4.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Library\Dialogs\Conversation.cs:line 111\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Builder.Dialogs.Conversation.<SendAsync>d__2.MoveNext() in C:\\MSBotBuilderTest\\BotBuilder-master\\BotBuilder-master\\CSharp\\Library\\Dialogs\\Conversation.cs:line 82\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at Microsoft.Bot.Sample.SimpleAlarmBot.MessagesController.d__0.MoveNext() in C:\MSBotBuilderTest\BotBuilder-master\BotBuilder-master\CSharp\Samples\SimpleAlarmBot\Controllers\MessagesController.cs:line 17\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at System.Threading.Tasks.TaskHelpersExtensions.<CastToObject>d__31.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at System.Web.Http.Controllers.ActionFilterResult.d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n   at System.Web.Http.Dispatcher.HttpControllerDispatcher.d__1.MoveNext()"}

This is happening because of SimpleAlarmBot constructor is passing null as default argument. LuisDialog then contacts the default passed null service with Luis models generated through attributes.
As a workaround for now, create a default constructor and remove = null from the other. I have submitted a pull request for the same.
public SimpleAlarmDialog(ILuisService service = null) : base(service)
{
}

public LuisDialog(params ILuisService[] services)
{
    var type = this.GetType();
    var luisModels = type.GetCustomAttributes<LuisModelAttribute>(inherit: true);
    services = services.Concat(luisModels.Select(m => new LuisService(m))).ToArray();
    SetField.NotNull(out this.services, nameof(services), services);
}


never retry permanent connection errors

In this CL, we check errors for a permanent connection problem.
Specifically if certificates are misconfigured, or ca-certificates are missing,
we expect not to be able to establish a connection in a reasonable amount of
time and instead bail out and return the error to the user to fix.
Fixes https://github.com/googleapis/google-cloud-go/issues/1234
Note: For some clients (those using the "pool resolver"), this change won't have an affect until the next version of grpc-go in which https://github.com/grpc/grpc-go/pull/2508 is included. The next release should happen mid-January.
Note: This PR will be tagged v2.0.3.

Users will see something like:
/go/src/cloud.google.com/go/pubsub/dummy # go run main.go
starting
panic: rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection error: desc = "transport: authentication handshake failed: x509: certificate signed by unknown authority"

goroutine 1 [running]:
main.main()
	/go/src/cloud.google.com/go/pubsub/dummy/main.go:48 +0xa00
exit status 2

Updated the CL with versioning strategy.

Synced offline. LGTM, but @broady should sign off.

For posterity:
Q: Why does gRPC not consider this a fatal error?
A clientconn (the thing we get from Dial) has several connections under the hood. If none of these connections are currently in a ready state, we get the error code = Unavailable desc = all SubConns are in TransientFailure, latest connection error <XYZ>.
In our case, it just so happens that all connections are failing because of missing ca-certificates, so it's safe for us to string match. But in the general case, gRPC should return Unavailable because different connections could be failing for different reasons. Therefore it's disingenuous to return Unauthenticated if one is failing b/c of TLS (which is Unauthenticated) and the other is failing because the request was canceled (which is Canceled).
You might also ask (and I have): why does gRPC not just treat a single occurrence of "transport: authentication handshake failed: x509: certificate signed by unknown authority" as a permanent clientconn failure? The answer is: this is not a fatal TLS error. That is, there are edge cases where this error would be correct to retry - a contrived example is that ca-certificates might be missing at one point in time, but could later be installed (and then the next retry would succeed). In our, client-library specific world, we prefer to abort early and inform the user rather than be "correct", but gRPC has to behave "correctly".


Add new action for Watson Natural Language Classifier

Add new action for Watson Natural Language Classifier
Related to #365
Ref: http://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/nl-classifier.html

@csantanapr move to catalog?

Issue moved to openwhisk/openwhisk-catalog #208 via ZenHub


1.7.1 -> 1.8.1 breaking change: why is DSTest no longer inherited by Test?

Hello,
We use forge-std 1.7.1. Tried to update to the latest 1.8.1, which broke our tests because HEVM_ADDRESS is no longer exported by forge-std Test.
See for eg https://github.com/Layr-Labs/eigenlayer-middleware/blob/fcb913ac75c0298919f05270e857883c6da5b27c/test/utils/MockAVSDeployer.sol#L49
forge-std test:

1.7.1 imported and inherited DSTest
1.8.1 doesn't anymore

I tried updating our MockAVSDeployer to import and inherit DSTest separately, but it led to "redefined" errors. Has DSTest been moved somewhere else? How should I be accessing it? Looked through the release notes but couldn't see any breaking changes notes.

Ah I see that VM_ADDR was not included as part of forge-std, and dependency on ds-test was removed.
Someone on our team made the upgrade: https://github.com/Layr-Labs/eigenlayer-middleware/pull/227
Closing this. :)


Potential misleading results for contour_extract where a contour elevation doesn't exist

Currently contour_extract uses indices to match attribute data to each contour before writing to file. However, if one contour is missing, the next index will be (incorrectly) assigned to the next contour which does exist.
Need to test that this is indeed the case; flagging as an issue for now so I don't forget.
https://github.com/GeoscienceAustralia/dea-notebooks/blob/master/10_Scripts/SpatialTools.py

Closed by #251


OutOfMemoryError (heap space) generating testng report

Seeing the following during our test run (about 4100 tests). The issue does not occur consistently, but does occur regularly. Increasing the max heap size does not address issue (have gone from 1g to 2g to 4g with same failure).  I was able to capture a heap dump; however, where should this be submitted?
[testng] Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
[testng]     at java.util.Arrays.copyOf(Arrays.java:2882)
[testng]     at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
[testng]     at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:390)
[testng]     at java.lang.StringBuffer.append(StringBuffer.java:224)
[testng]     at java.lang.StringBuffer.append(StringBuffer.java:284)
[testng]     at java.util.regex.Matcher.appendReplacement(Matcher.java:746)
[testng]     at java.util.regex.Matcher.replaceAll(Matcher.java:813)
[testng]     at org.testng.reporters.XMLStringBuffer.toXML(XMLStringBuffer.java:327)
[testng]     at org.testng.reporters.XMLReporter.generateReport(XMLReporter.java:66)
[testng]     at org.testng.TestNG.generateReports(TestNG.java:1088)
[testng]     at org.testng.TestNG.run(TestNG.java:1047)
[testng]     at org.testng.TestNG.privateMain(TestNG.java:1337)
[testng]     at org.testng.TestNG.main(TestNG.java:1306)

Hi,
I am also getting the OOM while preparing HTML Report (TestNG v6.9.10). But its kind of intermittent.


Crazy framerate for video recorded with Firefox!

I have an issue when trying to encode a video from Chrome and from Firefox, videos from Firefox took like 300% time more than those from Chrome for the same file size!
So I looked the information returned by ffmpeg and the tbr (framerate?) is 16.67 (16.67 tbr) for videos from Chrome but 1000 (1k tbr) for videos from Firefox!!!! It's the only difference between videos from Firefox and Chrome.
Do you know if there is a way to fix that on Firefox?

Did you try bitsPerSecond?
navigator.mediaDevices.getUserMedia({
    audio: true,
    video: {
        frameRate: 30
    }
}).then(function(stream) {
    var recorder = RecordRTC(stream, {
        recorderType: MediaStreamRecorder,
        audioBitsPerSecond: 8 * 1000 * 30,
        videoBitsPerSecond: 8 * 1000 * 100
    });
}).catch(function(error) {});

Even with this setup the video remains a video of 1k fps (information given by ffmpeg 3.2.4)

bitsPerSecond/audioBitsPerSecond/videoBitsPerSecond didn't seems to (properly/reliably) work in Firefox. (at least in all my local tests)
This issue wontfix until Firefox improves their MediaRecorder implementation.

Yep it was also my conclusion thank you for giving your feedback :)


(react/preact) - Fix issue where ssr would leak across renders

Summary
When we'd invoke two parallel renders with two different clients  the global in useQuery would cause us to share data between the clients.
Resolves https://github.com/FormidableLabs/urql/issues/1272
Sandbox: https://codesandbox.io/s/urql-cross-request-cache-issue-forked-sx6oe?file=/src/useQuery.js
Set of changes

register sources on the urql-client

We're going to be handling this in another refactor.

We're going to be handling this in another refactor.


Add further Dimensionality Reduction Algorithms

Some more dimensionality reduction algorithms might be interesting for exploring other visualisations:

[ ] Diffusion maps: might be interesting since used in other developmental biology projects. Implementation here with MIT license
[x] ISOMAP and MDS: both in sklearn: easy implementation
[ ] SPRING plots (come from scSeq analysis and are more suited for continuums of expression states)
[ ] others? I'm open to suggestions here

Added ISOMAP and MDS in #187


Raft configuration doc issue after mergify backport (release-2.3)

Type of change

Documentation update

Description
Something messed up with this mergify doc backport to release-2.3.

The changes here look good to me.
I noticed that line 227 in master is different. Assume that is OK?

Which line are you referring to? I don't think we have a reason for things to be different in master v. release-2.3 at the moment so maybe something else wasn't backported?

The changes here look good to me.
I noticed that line 227 in master is different. Assume that is OK?

Which line are you referring to? I don't think we have a reason for things to be different in master v. release-2.3 at the moment so maybe something else wasn't backported?

Release=2.3 and Master content is different:

Release=2.3 and Master content is different:

Those edits were part of one of my PRs: https://github.com/hyperledger/fabric/commit/b74433561e8ffafd279a46835e27aa9c58b9d01c#diff-0e8aaf7009a56d608fe6e06e4e7963e7093ae35f833be9a4aab4e7dd33d2eaa0
But that should have been backported to 2.3.

Those edits were part of one of my PRs: https://github.com/hyperledger/fabric/commit/b74433561e8ffafd279a46835e27aa9c58b9d01c#diff-0e8aaf7009a56d608fe6e06e4e7963e7093ae35f833be9a4aab4e7dd33d2eaa0
But that should have been backported to 2.3.


CI: Wait longer for monitor output in DataPathConfiguration

This is part of the work to run on EKS. See #9678 and #9675
When running on EKS, the timing seems different from the CI cluster.
Simple checks for the occurence of packets in the monitor output seem
racey and the monitor output being scanned seems truncated, as opposed
to missing the packets completely. The collection function now waits 10s
for the output. It would be better to parse the output live with a
timeout but that is a much larger refactor.

This change is

test-me-please

test-docs-please

Coverage remained the same at 45.983% when pulling aa6468273960e2beb17e52af3846142e06220b6f on raybejjani:ci-datapathconfig-wait into ccee5aa203f4e1326f6dadf3553b6730d810fdd7 on cilium:master.

@joestringer Yup, it would be far better. In fact, it would be better still to parse the output stream for the match on the fly with a timeout. It was a bigger refactor so I avoided it.
The direct blocker is how we collect the output from commands. It isn't an io.Reader but a custom Buffer type that mutex-wraps a bytes.Buffer. We slurp it all up at the end of tests and search the collected bytes. From what I remember the wiring around it is a goroutine moving bytes about so it should be possible to read the buffers as they are written.
Since this wasn't a guaranteed fail, I'll mark this WIP here until the other things are running. Perhaps it was an accident of the region. I can also do the larger rebase if you (or anyone) prefers.


[Pinot 1.2.0] Realtime table segment reload fails with error "Snapshot of validDocIds is required to preload segment"

Steps to reproduce

Define REALTIME table schema and table config using Pinot 1.2.0
In the table config, make sure the upsertConfig has enableSnapshot = true and enablePreload = true as below:

"upsertConfig": {
        "mode": "FULL",
        "comparisonColumns": ["someField"],
        "partialUpsertStrategies": {},
        "deleteRecordColumn": "isDeleted",
        "deletedKeysTTL": 86400000,
        "enableSnapshot": true,
        "enablePreload": true
}

Load some records using Kafka and check that data is visible and all segments are GOOD.
Now, pause the Kafka consumption using following command:

curl --location --request POST 'http://localhost:9000/tables/myTable/pauseConsumption'

Make sure consumption is paused using following command:

curl --location 'http://localhost:9000/tables/myTable/pauseStatus'

Resume the consumption using following command:

curl --location --request POST 'http://localhost:9000/tables/myTable/resumeConsumption'

Now, check the segment status.
All the older segments are marked BAD and new consuming ones as GOOD.
The server logs has following error for segments failing to load:

2024-09-24 13:21:19 Caused by: java.lang.IllegalStateException: Snapshot of validDocIds is required to preload segment: myTable__0__0__20240924T0750Z, table: myTable_REALTIME

Note

Same POC runs properly without any errors on Pinot 1.1.0
Issue occurs only when using upsertConfig.enableSnapshot = true and upsertConfig.enablePreload = true

Exception
2024-09-24 13:21:19 2024/09/24 07:51:19.021 ERROR [HelixStateTransitionHandler] [HelixTaskExecutor-message_handle_thread_10] Exception while executing a state transition task myTable__0__0__20240924T0750Z
2024-09-24 13:21:19 java.lang.reflect.InvocationTargetException: null
2024-09-24 13:21:19     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
2024-09-24 13:21:19     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
2024-09-24 13:21:19     at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
2024-09-24 13:21:19     at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
2024-09-24 13:21:19     at org.apache.helix.messaging.handling.HelixStateTransitionHandler.invoke(HelixStateTransitionHandler.java:350) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.helix.messaging.handling.HelixStateTransitionHandler.handleMessage(HelixStateTransitionHandler.java:278) [pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:97) [pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:49) [pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
2024-09-24 13:21:19     at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
2024-09-24 13:21:19     at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
2024-09-24 13:21:19     at java.base/java.lang.Thread.run(Thread.java:840) [?:?]
2024-09-24 13:21:19 Caused by: java.lang.IllegalStateException: Snapshot of validDocIds is required to preload segment: myTable__0__0__20240924T0750Z, table: myTable_REALTIME
2024-09-24 13:21:19     at org.apache.pinot.shaded.com.google.common.base.Preconditions.checkState(Preconditions.java:838) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.segment.local.upsert.BasePartitionUpsertMetadataManager.doPreloadSegment(BasePartitionUpsertMetadataManager.java:513) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.segment.local.upsert.BasePartitionUpsertMetadataManager.preloadSegment(BasePartitionUpsertMetadataManager.java:498) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.core.data.manager.realtime.RealtimeTableDataManager.handleUpsert(RealtimeTableDataManager.java:585) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.core.data.manager.realtime.RealtimeTableDataManager.addSegment(RealtimeTableDataManager.java:541) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.core.data.manager.realtime.RealtimeTableDataManager.downloadAndReplaceConsumingSegment(RealtimeTableDataManager.java:628) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.core.data.manager.realtime.RealtimeSegmentDataManager.downloadSegmentAndReplace(RealtimeSegmentDataManager.java:1351) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.core.data.manager.realtime.RealtimeSegmentDataManager.goOnlineFromConsuming(RealtimeSegmentDataManager.java:1290) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.core.data.manager.realtime.RealtimeTableDataManager.doAddOnlineSegment(RealtimeTableDataManager.java:421) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.core.data.manager.BaseTableDataManager.addOnlineSegment(BaseTableDataManager.java:313) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.server.starter.helix.HelixInstanceDataManager.addOnlineSegment(HelixInstanceDataManager.java:275) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     at org.apache.pinot.server.starter.helix.SegmentOnlineOfflineStateModelFactory$SegmentOnlineOfflineStateModel.onBecomeOnlineFromConsuming(SegmentOnlineOfflineStateModelFactory.java:88) ~[pinot-all-1.2.0-jar-with-dependencies.jar:1.2.0-cc33ac502a02e2fe830fe21e556234ee99351a7a]
2024-09-24 13:21:19     ... 12 more

@klsince @tibrewalpratik17 Can you help take a look? We probably need to loose the check

@klsince any idea why is this specifically occuring in 1.2 and not 1.1. It should have ideally happened in 1.1 as well as this check has been there since beginning: https://github.com/apache/pinot/pull/11020/files#diff-0a831c7605c3a8b7058200545bd732eb614526a4b03e4a972af66058874b507bR206-R207

All the older segments are marked BAD and new consuming ones as GOOD.

@ajeydudhe can you also share if the segments are in ERROR state or marked as OFFLINE in External view?

I'm wondering why resuming the consumption caused old segments to be added again. It seems like adding old segments had entered the preloading logic flow unexpectedly.
I'll see if I can repro this on my local.

We've managed to hit this exception in our test clusters on 1.2 as well w/ snapshot + preload. I haven't been able to reproduce it yet though. The segments were in ERROR state.
The only relevant logs seem to be these snapshot failures, but I do not see any Caught exception while taking snapshot logs from https://github.com/apache/pinot/blob/master/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/upsert/BasePartitionUpsertMetadataManager.java
[2024-09-23 15:15:23.682414] INFO [setup_attempts_REALTIME-327710-ConcurrentMapPartitionUpsertMetadataManager] [setup_attempts__327710__147__20240923T1515Z:138928] Taking snapshot for 147 segments
[2024-09-23 15:15:23.682430] INFO [ImmutableSegmentImpl] [setup_attempts__327710__147__20240923T1515Z:25] Persisted validDocIds for segment: setup_attempts__327710__146__20240923T1115Z with: 3 valid docs
[2024-09-23 15:15:23.682447] WARN [setup_attempts_REALTIME-327710-ConcurrentMapPartitionUpsertMetadataManager] [setup_attempts__327710__147__20240923T1515Z:138928] Missed taking snapshot for 146 immutable segments
[2024-09-23 15:15:23.682466] INFO [setup_attempts_REALTIME-327710-ConcurrentMapPartitionUpsertMetadataManager] [setup_attempts__327710__147__20240923T1515Z:138928] Finished taking snapshot for 1 immutable segments with 3 primary keys (out of 147 total segments, 0 are consuming segments) in 1 ms

HelixTaskExecutor-message_handle_thread_10 thread was preloading the segment, and this is already unexpected.
segment preloading should be done by a separate preloading thread pool whose thread name should be like 'segment-preload-thread-xx'
so somehow server entered the preloading logic unexpected, and did it on helix thread unexpectedly too.
this reminded me of a fix I did weeks ago (but after 1.2.0): https://github.com/apache/pinot/pull/13747 to refine the check of enabling segment preloading.

hi @dang-stripe @ajeydudhe
could you try to set this server config max.segment.preload.threads a positive value (like 8 or 2x the cpu cores). When set enablePreload to true, this preloading thread pool should be set too.

actually i wouldn't be surprised if that's the issue. we had that turned on for one of our servers and not the others. we clearly see the error on a server that didn't have this on, while preload was enabled on the table. we've since rolled out the threads setting to all the servers and haven't been able to repro the behavior.
let me try to re-test w/ it off. is it possible to set a sane default for preload threads in code or make the server fail fast instead?

the default 0 should have disabled the preloading, but in 1.2.0 or earlier, it's not disabled cleanly, because an internal flag _isPreloading flag didn't consider the pool size. The fix https://github.com/apache/pinot/pull/13747 should have corrected this, so that if pool size is 0, the preloading mechanism is disabled cleanly.

thanks we'll pull in that fix. i was able to repro the issue by rebalancing the table so segments moved to servers that didn't have max.segment.preload.threads set and those segments came up in ERROR state.

@klsince any idea why is this specifically occuring in 1.2 and not 1.1. It should have ideally happened in 1.1 as well as this check has been there since beginning: https://github.com/apache/pinot/pull/11020/files#diff-0a831c7605c3a8b7058200545bd732eb614526a4b03e4a972af66058874b507bR206-R207

All the older segments are marked BAD and new consuming ones as GOOD.

@ajeydudhe can you also share if the segments are in ERROR state or marked as OFFLINE in External view?

All the segments are in ERROR state.
Additional info

I am using the attached docker compose for Pinot using following command:

docker-compose up --scale server=2 -d

For Kafka, I am creating topic with 10 partitions and hence the table creates 10 consuming segments. But same issue is observed with 2 partitions.

Pinot Docker.zip

@ajeydudhe could you try to set this server config max.segment.preload.threads to a positive value like 2x the cpu cores.
@tibrewalpratik17 I think this started to happen in 1.2.0 might be due to the refactoring of the preloading logic between 1.1.0 and 1.2.0, and the way to init the _isPreloading boolean flag was changed. Should have a test on this edge condition.

@ajeydudhe could you try to set this server config max.segment.preload.threads to a positive value like 2x the cpu cores.
@tibrewalpratik17 I think this started to happen in 1.2.0 might be due to the refactoring of the preloading logic between 1.1.0 and 1.2.0, and the way to init the _isPreloading boolean flag was changed. Should have a test on this edge condition.

Thanks @klsince. The issue is not seen if the max.segment.preload.threads config is set. I tested with max.segment.preload.threads = 2.

add a test case to keep checking on this: https://github.com/apache/pinot/pull/14085, although the issue was fixed by that earlier PR.

btw, I updated pinot docs about preloading to watch out this bug in v1.2.0: https://docs.pinot.apache.org/basics/data-import/upsert#enable-preload-for-faster-server-restarts

thanks @klsince - this is separate from this issue, but is it possible to make preloading fail more gracefully? ex. if any exception is thrown during preloading, fallback to non-preloading behavior.

@dang-stripe yup, that should be the expected behavior today. Here is the key try-catch block so that if preloading failed in the middle, the remaining segments would get loaded with the normal (though more costly) upsert flow (doing map get/check/put).

I'm closing this issue for now. And we can continue the discussions about preloading in general in the Pinot community Slack (my slack id: Xiaobing)


fix: service/infra/env import examples

Describe your changes
Correct import examples for services, infrastructure and environments. These resources are project specific.
closes #262
Comment Triggers

PR Check triggers

Build: trigger build
Sub Category Field Check: trigger subcategoryfieldcheck

@rssnyder Changes look good. Can you help make your branch public so I can run some tests before merging this?

trigger build

trigger subcategoryfieldcheck

@rssnyder We need to regenerate docs once this is done. Can you please help make your branch public so we can do the same?


Fix  GitHub not identifying the LICENSE file.

Normally GitHub detects the license file and reports back that it is MIT, I've been fighting trying to make this work for this project.

I have tried copying in other versions of the license, nothing is working.

I have tried copying in other versions of the license, nothing is working.

Here's what's been tried so far:
https://github.com/dotBunny/GDX/commits/main/LICENSE

Here's what's been tried so far:
https://github.com/dotBunny/GDX/commits/main/LICENSE

Opened a support ticket with GitHub (#991489).

Opened a support ticket with GitHub (#991489).

After discussing with GitHub support (super-fast turn around!), I've removed the LICENSE.meta from the repository, and have setup a .gitignore entry to hopefully resolve this in 7b982ec86e8a4b02e4a1ecfecf087b0b78136be1

After discussing with GitHub support (super-fast turn around!), I've removed the LICENSE.meta from the repository, and have setup a .gitignore entry to hopefully resolve this in 7b982ec86e8a4b02e4a1ecfecf087b0b78136be1


Attempt to fix the deployment workflow

Pull Request Template
Description
The PR contains an updated workflow file which "should fix" the current CI/CD pipeline.
Fixes #149 (if everything works as expected though)
Changes Include

[x] Bug fix 🐛 (non-breaking change which fixes an issue)
[x] Refactor ⚒ (code change that neither fixes a bug nor adds a feature)
[x] Tooling ⚙ (Changes to the build process or auxiliary tools and libraries such as documentation generation)

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings
[x] Any dependent changes have been merged and published in downstream modules
[x] I have checked my code and corrected any misspellings

As I thought (and as I discussed over call) the the secret tokens are correct but the Action's environment couldn't access them for whatever reason (see the description of #149 for a possible explanation).
This PR makes it work somehow but further testing & experimentation is required to see if workflows triggered from forked pull requests can access the tokens or not. Regardless, this PR kinda fixed the concern we had with the CI/CD pipeline(?). At least now, it not only deploys to Netlify but also comments on the PR with a preview URL.
Do note, the preview URL shows a 404 page which I believe is because of a broken Next.js build (this should be fixed if #144 is merged to the master branch.

@Bhupesh-V can we merge after you review it so that we can test pull requests from forked repositories triggering the workflows have access to the secret tokens as well?
Having this PR merged to master will make it so much more easier to check what changes did people introduce to the website (the preview URL will help us on that regards, see comment above).
@Charan1973 @uragirii can you guys fork & send some trivial PRs to help us test the workflow works as we expect it to? But wait for us to merge it to master branch first.

@Jarmos-san great work! The deployment url works correctly imo. But the problem may arise when forking and creating a PR (most common use-case for this repo)

@charan1973 @uragirii can you guys fork & send some trivial PRs to help us test the workflow works as we expect it to? But wait for us to merge it to master branch first.

Sure, will do. afaik i would get an email once this PR is merged and then I would create a trivial PR (yay! for the first contribution)

Leaving this one comment I stumbled upon while trying to setup a work-related project as well.


Add OpenJDK 17 support

Adds support for OpenJDK 17
W-8655967

Tests are expected to fail in production, since the binaries are currently on staging.


[Question]:

Contact Details
<EMAIL_ADDRESS>What's the question?
The T-SQL stored procedures that I wish to execute using babelfish do not fully qualify the names of the tables with the name of the schema.  As a result I get the 'relation "x" does not exist' error.   If I edit my procedure and qualify the table names with the schema name then this error goes away.  If I look at the search_path with pgAdmin I see that my schema is the first in the list followed by public and the $user.  But that is on a postgres connection - not  the TDS connection.
How can I use unqualified table names in my stored procedures?
Specifically I connected to Babelfish-enabled Postgres cluster using SSMS.  Next I created a database named 'demo' and within 'demo' I created a schema named 'biz'.   I created all of my tables and stored procedures in the 'biz' schema.
Is there something like the postgre search_path that I can set in the babelfish TDS connection?
Relevant log output or information
No response
Code of Conduct

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

Could you please provide a concrete example of how you are creating the object, and how you are referencing it?

What is happening here is that the name resolution inside the procedure biz.p_getcities does not correctly resolve the table name. It resolves it to 'dbo' schema while it should resolve it to 'biz' schema. As you noted, this is related to the search_path setting, and this is not set correctly in this case.
This is a known bug and we hope to fix it soon.
Until then, the workaround is to qualify the table name with the schema name, i.e. select * from biz.cities

Thank you for the explanation.  Here's hoping the bug is fixed soon.


Errors with an apparently valid schema

Not sure if this is a bug, and I am new to the openapi ecosystem, but I am unable to solve this issue given the documentation provided. I have a very simple API implemented using Django-rest-framework and I have DRF auto-produce the openapi3 schema. I've validated with various tools that the schema is valid. However when I come to use openapi-python-client to generate a lib I get the following warning/errors (which I've abbreviated
Warning(s) encountered while generating. Client was generated, but some pieces may be missing
ERROR parsing PUT /api/gene/{id}/ within default. Endpoint will not be generated.
cannot parse body of endpoint UpdateGene
...
ERROR parsing POST /api/gene/{id}/ within default. Endpoint will not be generated.
cannot parse body of endpoint CreateGene
...
ERROR parsing GET /api/genes within default. Endpoint will not be generated.
cannot parse response of endpoint listGenes

I can not tell from the information provided if this problem is rooted in my use of DRF or openapi-python-client
I include the yaml doc in question below, though it doesn't immediately seem incorrect to me
openapi: 3.0.2
info:
  title: Genedata
  version: 1.0.0
  description: API for interacting with gene records
servers:
  - url: http://<IP_ADDRESS>:8080
paths:
  /api/gene/{id}/:
    get:
      operationId: RetrieveGene
      description: ''
      parameters:
      - name: id
        in: path
        required: true
        description: A unique integer value identifying this gene.
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  gene_id:
                    type: string
                    maxLength: 256
                  entity:
                    type: string
                    maxLength: 256
                  start:
                    type: integer
                    maximum:<PHONE_NUMBER>
                    minimum: -2147483648
                  stop:
                    type: integer
                    maximum:<PHONE_NUMBER>
                    minimum: -2147483648
                  sense:
                    type: string
                    maxLength: 1
                  start_codon:
                    type: string
                    maxLength: 1
                  ec:
                    properties:
                      id:
                        type: integer
                        readOnly: true
                      ec_name:
                        type: string
                        readOnly: true
                    type: object
                  sequencing:
                    properties:
                      id:
                        type: integer
                        readOnly: true
                      sequencing_factory:
                        type: string
                        readOnly: true
                      factory_location:
                        type: string
                        readOnly: true
                    type: object
                required:
                - gene_id
                - entity
                - sense
                - ec
                - sequencing
          description: ''
    post:
      operationId: CreateGene
      description: ''
      parameters:
      - name: id
        in: path
        required: true
        description: A unique integer value identifying this gene.
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema: &id001
              properties:
                gene_id:
                  type: string
                  maxLength: 256
                entity:
                  type: string
                  maxLength: 256
                start:
                  type: integer
                  maximum:<PHONE_NUMBER>
                  minimum: -2147483648
                stop:
                  type: integer
                  maximum:<PHONE_NUMBER>
                  minimum: -2147483648
                sense:
                  type: string
                  maxLength: 1
                start_codon:
                  type: string
                  maxLength: 1
                ec:
                  properties:
                    id:
                      type: integer
                      readOnly: true
                    ec_name:
                      type: string
                      readOnly: true
                  type: object
                sequencing:
                  properties:
                    id:
                      type: integer
                      readOnly: true
                    sequencing_factory:
                      type: string
                      readOnly: true
                    factory_location:
                      type: string
                      readOnly: true
                  type: object
              required:
              - gene_id
              - entity
              - sense
              - ec
              - sequencing
          application/x-www-form-urlencoded:
            schema: *id001
          multipart/form-data:
            schema: *id001
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  gene_id:
                    type: string
                    maxLength: 256
                  entity:
                    type: string
                    maxLength: 256
                  start:
                    type: integer
                    maximum:<PHONE_NUMBER>
                    minimum: -2147483648
                  stop:
                    type: integer
                    maximum:<PHONE_NUMBER>
                    minimum: -2147483648
                  sense:
                    type: string
                    maxLength: 1
                  start_codon:
                    type: string
                    maxLength: 1
                  ec:
                    properties:
                      id:
                        type: integer
                        readOnly: true
                      ec_name:
                        type: string
                        readOnly: true
                    type: object
                  sequencing:
                    properties:
                      id:
                        type: integer
                        readOnly: true
                      sequencing_factory:
                        type: string
                        readOnly: true
                      factory_location:
                        type: string
                        readOnly: true
                    type: object
                required:
                - gene_id
                - entity
                - sense
                - ec
                - sequencing
          description: ''
    put:
      operationId: UpdateGene
      description: ''
      parameters:
      - name: id
        in: path
        required: true
        description: A unique integer value identifying this gene.
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema: &id002
              properties:
                gene_id:
                  type: string
                  maxLength: 256
                entity:
                  type: string
                  maxLength: 256
                start:
                  type: integer
                  maximum:<PHONE_NUMBER>
                  minimum: -2147483648
                stop:
                  type: integer
                  maximum:<PHONE_NUMBER>
                  minimum: -2147483648
                sense:
                  type: string
                  maxLength: 1
                start_codon:
                  type: string
                  maxLength: 1
                ec:
                  properties:
                    id:
                      type: integer
                      readOnly: true
                    ec_name:
                      type: string
                      readOnly: true
                  type: object
                sequencing:
                  properties:
                    id:
                      type: integer
                      readOnly: true
                    sequencing_factory:
                      type: string
                      readOnly: true
                    factory_location:
                      type: string
                      readOnly: true
                  type: object
              required:
              - gene_id
              - entity
              - sense
              - ec
              - sequencing
          application/x-www-form-urlencoded:
            schema: *id002
          multipart/form-data:
            schema: *id002
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  gene_id:
                    type: string
                    maxLength: 256
                  entity:
                    type: string
                    maxLength: 256
                  start:
                    type: integer
                    maximum:<PHONE_NUMBER>
                    minimum: -2147483648
                  stop:
                    type: integer
                    maximum:<PHONE_NUMBER>
                    minimum: -2147483648
                  sense:
                    type: string
                    maxLength: 1
                  start_codon:
                    type: string
                    maxLength: 1
                  ec:
                    properties:
                      id:
                        type: integer
                        readOnly: true
                      ec_name:
                        type: string
                        readOnly: true
                    type: object
                  sequencing:
                    properties:
                      id:
                        type: integer
                        readOnly: true
                      sequencing_factory:
                        type: string
                        readOnly: true
                      factory_location:
                        type: string
                        readOnly: true
                    type: object
                required:
                - gene_id
                - entity
                - sense
                - ec
                - sequencing
          description: ''
    delete:
      operationId: DestroyGene
      description: ''
      parameters:
      - name: id
        in: path
        required: true
        description: A unique integer value identifying this gene.
        schema:
          type: string
      responses:
        '204':
          description: ''
  /api/genes:
    get:
      operationId: listGenes
      description: 'Get a list of genes'
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  properties:
                    id:
                      type: integer
                      readOnly: true
                    gene_id:
                      type: string
                      maxLength: 256
                  required:
                  - gene_id
          description: 'Sucesfully returns gene list'

@DanBuchan I don't think there's anything wrong with your schema. openapi-python-client doesn't support inline objects yet (#125, #140, and #162 all complain about this- it's high on the todo list). For now any object-like schemas have to be declared using components and then accessed using a ref
"schema": {
      "$ref": "#/components/schemas/GeneralError"
 }

I'm going to close this issue since I have some many already asking about the same thing 😅. I expect 0.6.0 to be released early next week, then I'll start work on the features for 0.7.0 which will include this.


[Growth 38] Implement the advanced AWS infra addon

Why
Using the file helper created in #24 to generate the base files: main.tf, variables.tf, outputs.tf.
Example of main.tf file
terraform {
  cloud {
    organization = "nimble"

    workspaces {
      name = "nimble"
    }
  }
}

provider "aws" {
  region = var.region
}

Closed thanks to #26 & #27


Support jar files and class files via just-in-time dexing.

Need to do a single dex for multiple class files instead of dexing each

Or maybe we just de-dupe the output?


Sort parameters array before use in request

Sometimes when PDO parameters are provided to the exec() method, the array may have positional arguments specified out of order with the statement. For instance:
$pdo = new \Crate\PDO\PDO('crate:<IP_ADDRESS>:4200');
$stmt = $pdo->prepare('UPDATE schema.table SET colA = :colA WHERE colB = :colB');
$stmt->execute(['colB' => 'valB', 'colA' => 'valA']);

Without the above line, the above code would lead to the core server choking since the parameter bag will be an object rather than an array:
SQLActionException[
    Failed to parse source [{
        "stmt" : "UPDATE schema.table SET colA = ? WHERE colB = ?",
        "args" : {"1" : "valB", "0" : "valA"}
    }]
]

This happens when the json_encode function (used internally by GuzzleHTTP) receives an array with numerical keys that aren't in order:
echo json_encode([0 => 'a', 1 => 'b']); // gives '["a","b"]'
echo json_encode([1 => 'b', 0 => 'a']); // gives '{"1":"b","0":"a"}'

Logically speaking, the above arrays should be equivalent but the core server can't handle the latter syntax. Providing the arguments out of order in this way is not necessarily malicious as there are no prescriptions or restrictions that prevent it from happening.

hi @jeteon
thanks for pointing out the issue and your contribution!
it would be really nice if you could provide a test that covers exactly that case.
also, please also add a changelog entry to  CHANGES.txt (underneath the unreleased section).
then if you have signed the Contributor License Agreement I can merge the PR :)

I close this issue since it is now fixed https://github.com/crate/crate-pdo/commit/533f37475c7654ddeda557ad413b6ff1b148adb0

Sure. Sorry I wasn't able to provide much more help with getting it tested.


[ace] Added TAO as feature

Added CMake files to find ACE and TAO

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: ordisbold sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

I won't make any further changes. All builds succeed.

Why are you providing find modules? You should be providing config files if anything.

I wasn't aware of that. I'll have a look at the documentation. I'd
appreciate if you gave me a hint though.
Curtis J Bezault<EMAIL_ADDRESS>schrieb am Di., 8. Okt. 2019,
05:44:

Why are you providing find modules? You should be providing config files
if anything.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/vcpkg/pull/8468?email_source=notifications&email_token=AFBD2MO6N3KKBUFYTJDD7J3QNO3TPA5CNFSM4I54EBP2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEASBJNY#issuecomment-539235511,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFBD2MNISUYIGKWNNP56ZW3QNO3TPANCNFSM4I54EBPQ
.

hmm... error
\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(209,5): error MSB6006: "cmd.exe" завершилась с кодом -1073741515. [E:\tools\vcpkg\buildtrees\ace\src\ACE_wrappers\tao\tao\TransportCurrent\TC_IIOP_Idl.vcxproj]
  Invoking "E:\tools\vcpkg\buildtrees\ace\src\ACE_wrappers\bin\tao_idl on ZIOP.pidl"

      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">setlocal
PATH=%PATH%;E:\tools\vcpkg\buildtrees\ace\src\ACE_wrappers\lib
cmd /c "E:\tools\vcpkg\buildtrees\ace\src\ACE_wrappers\bin\tao_idl -Wb,pre_include=ace/pre.h -Wb,post_include=ace/post.h -IE:\tools\vcpkg\buildtrees\ace\src\ACE_wrappers\tao -Wb,versioning_begin=TAO_BEGIN_VERSIONED_NAMESPACE_DECL -Wb,versioning_end=TAO_END_VERSIONED_NAMESPACE_DECL -Wb,export_include=tao/TransportCurrent/Transport_Current_Export.h -Wb,export_macro=TAO_Transport_Current_Export -iC tao/TransportCurrent -I./TransportCurrent -SS -Sci "TC_IIOP.idl""
endlocal</Command>
      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Invoking "E:\tools\vcpkg\buildtrees\ace\src\ACE_wrappers\bin\tao_idl on TC_IIOP.idl"</Message>

tag " causes an error or does not find the file TC_IIOP.idl or ace/pre.h or ace/post.h
and such everywhere, where present <CustomBuild

hmm... error

I originally started this port with another name a few weeks ago. While merging it to this ACE port, I forgot to change the target directory for the executables (i.e. tao_idl) from ace-tao to ace. That's fixed now.

can immediately add?
CIAO_ROOT, DANCE_ROOT, DDS_ROOT, XSC_ROOT

In general find modules are written by the consumers of cmake libraries. Config files are created by the consumed library for the benefit of the consumers. Both define targets and all other variables necessary to consume a library.

vcpkg install ace[*]:x64-windows
    ace[core,qt5,ssl,tao,tao-bzip2,tao-zlib,wchar,xml]:x64-windows
error
?strdup@ACE_OS@@YAPEADPEBD@Z
Точка входа в процедуру ?strdup@ACE_OS@@YAPEADPEBD@Z не найдена в библиотеке DLL E:\tools\vcpkg\buildtrees\ace\src\ACE_wrappers\lib\TAO_IDL_BE.dll.
 E:/tools/vcpkg/downloads/tools/perl/perl/bin/perl.exe E:/tools/vcpkg/buildtrees/ace/src/ACE_wrappers/bin/mwc.pl -type vs2017 TAO_ACE.mwc -features stl=1,ace_for_tao=0,ace_inline=0,uses_wchar=1,xml=1,ssl=1,qt5=1,bzip2=1,zlib=0 -workers 5 -use_env -expand_vars
ace[core,qt5,ssl,tao,tao-bzip2,tao-zlib,wchar,xml]
?
,zlib=0,ace_for_tao=0,ace_inline=0
-features stl=1,ace_for_tao=0,ace_inline=0,uses_wchar=1,xml=1,ssl=1,qt5=1,bzip2=1,zlib=0

other error

@Voskrese
PS C:\vcpkg> .\vcpkg.exe install ace[*]
The following packages will be built and installed:
ace[core,qt5,ssl,tao,tao-bzip2,tao-zlib,wchar,xml]:x64-windows
Starting package 1/1: ace:x64-windows
Building package ace[core,qt5,ssl,tao,tao-bzip2,tao-zlib,wchar,xml]:x64-windows...
Warning: abi keys are missing values:
bzip2
openssl
qt5-base
zlib
-- Using cached C:/vcpkg/downloads/ACE+TAO-src-6.5.6.tar.gz
-- Extracting source C:/vcpkg/downloads/ACE+TAO-src-6.5.6.tar.gz
-- Applying patch C:/vcpkg/ports/ace/qtcoreapplication.patch
-- Applying patch C:/vcpkg/ports/ace/bzip2.patch
-- Applying patch C:/vcpkg/ports/ace/mpc-arm.patch
-- Applying patch C:/vcpkg/ports/ace/stacktrace-arm.patch
-- Applying patch C:/vcpkg/ports/ace/arm_prevent_amd64_definition.patch
,uses_wchar=1,xml=1,ssl=1,qt5=1,bzip2=1,zlib=1
-- Building C:/vcpkg/buildtrees/ace/src/ACE_wrappers/tao/TAO_ACE.sln for Release

is guilty, means at me remained everything in a cache, files were not reconfigured
will look further

/azp run

We also have https://github.com/microsoft/vcpkg/pull/9016 as another PR in ace

See https://github.com/microsoft/vcpkg/pull/9074 for the new ACE release which has some of the patches integrated

@ordisbold Any plans to finish the TAO feature soon?

@ordisbold Ace in vcpkg has been updated to 6.5.7, does your change still work?

@ordisbold Any plans to finish the TAO feature soon?

Not at the moment. I got too many other things on my plate and it has proven to be time intensive to get it right for all CI targets.

new ACE/TAO release, see https://github.com/microsoft/vcpkg/pull/10003

Please remove the following content in VCPKG_PATH/scripts/ci.baseline.txt:
ace:x64-uwp=fail
ace:arm64-windows=fail
ace:arm-uwp=fail

Are all patches still required with TAO 2.5.8? Some got integrated already as far as I remember.

Are all patches still required with TAO 2.5.8? Some got integrated already as far as I remember.

I did remove them, just two were still necessary. I will look into it again

Have a look at
** Test Modified Ports **
for OSX.
The build fails, but the status of the job is "succeeded". Something wrong there!?

Looks macosX is allowed to fail because it didn't work before, from the log I can find the following, no idea why make fails, I can't find the detailed log they refer to
2020-04-01T23:57:41.0768120Z Could not locate cached archive: /Volumes/data/work/1/s/archives/1d/1d6d510a49f5d1baaf7084deeeffb6f7b1ea6287.zip
2020-04-02T00:00:23.6257350Z -- Downloading https://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-6_5_8/ACE+TAO-src-6.5.8.tar.gz...
2020-04-02T00:00:23.6259490Z -- Extracting source /Volumes/data/work/1/s/downloads/ACE+TAO-src-6.5.8.tar.gz
2020-04-02T00:00:23.6260260Z -- Applying patch /Volumes/data/work/1/s/ports/ace/arm_prevent_amd64_definition.patch
2020-04-02T00:00:23.6260870Z -- Applying patch /Volumes/data/work/1/s/ports/ace/bzip2.patch
2020-04-02T00:00:23.6261070Z CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:72 (message):
2020-04-02T00:00:23.6261220Z     Command failed: make
2020-04-02T00:00:23.6261380Z     Working Directory: /Volumes/data/work/1/s/buildtrees/ace/src/ACE_wrappers
2020-04-02T00:00:23.6273580Z     Error code: 2
2020-04-02T00:00:23.6274010Z     See logs for more information:
2020-04-02T00:00:23.6275600Z       /Volumes/data/work/1/s/buildtrees/ace/make-x64-osx-out.log
2020-04-02T00:00:23.6276180Z       /Volumes/data/work/1/s/buildtrees/ace/make-x64-osx-err.log
2020-04-02T00:00:23.6276710Z
2020-04-02T00:00:23.6277000Z Call Stack (most recent call first):
2020-04-02T00:00:23.6278280Z   ports/ace/portfile.cmake:183 (vcpkg_execute_required_process)
2020-04-02T00:00:23.6278450Z   scripts/ports.cmake:90 (include)
2020-04-02T00:00:23.6278700Z
2020-04-02T00:00:23.6278860Z
2020-04-02T00:00:24.8916680Z Error: Building package ace:x64-osx failed with: BUILD_FAILED
2020-04-02T00:00:24.8917820Z Elapsed time for package ace:x64-osx: 2.73 min
2020-04-02T00:00:24.8918000Z
2020-04-02T00:00:24.8918410Z Triplet: x64-osx
2020-04-02T00:00:24.8918590Z Total elapsed time: 2.73 min
2020-04-02T00:00:24.8918890Z RESULTS
2020-04-02T00:00:24.8919320Z     ace:x64-osx: BUILD_FAILED: 2.73 min

Are all patches still required with TAO 2.5.8? Some got integrated already as far as I remember.

I did remove them, just two were still necessary. I will look into it again

The patches are not applied but still list of the changes, just remove them again from git I would like to suggest

@jwillemsen
I have another port file for axcioma... but it builds ACE and TAO as well.
I didn't yet figure out how to use ACE/TAO from a separate build and I don't know if that would be a good idea either.
Any ideas on how we can make both coexist or how to combine them?
In my opinion it would be better to have an axcioma port with features "ace, tao, taox11, ..., ..." and make brix11 able to only build these targets if desired.

And maybe it's possible to introduce some alias package sort of thing... so, if someone wants to install ace, it would actually install axcioma[ace].

And another issue... is there something like feature dependencies?
xerces-c has an xmlch_wchar option.
If ace is built with wchar support and xerces-c support, shouldn't then be built with implicitly xmlch_wchar enabled?

Yes, I thought that worked, for xerces you need to pass xerces3=1 to mpc, not xml=1

@jwillemsen
I have another port file for axcioma... but it builds ACE and TAO as well.
I didn't yet figure out how to use ACE/TAO from a separate build and I don't know if that would be a good idea either.
Any ideas on how we can make both coexist or how to combine them?
In my opinion it would be better to have an axcioma port with features "ace, tao, taox11, ..., ..." and make brix11 able to only build these targets if desired.

To start with I think you should let axcioma also generate the configuration files and build ACE/TAO. brix11 sets various flags which knowledge we don't want to duplicate again

@jwillemsen
I have another port file for axcioma... but it builds ACE and TAO as well.
I didn't yet figure out how to use ACE/TAO from a separate build and I don't know if that would be a good idea either.
Any ideas on how we can make both coexist or how to combine them?
In my opinion it would be better to have an axcioma port with features "ace, tao, taox11, ..., ..." and make brix11 able to only build these targets if desired.

To start with I think you should let axcioma also generate the configuration files and build ACE/TAO. brix11 sets various flags which knowledge we don't want to duplicate again

Alright... I will create another PR after this one has been merged.

Looks linux/windows CI builds failed after the most recent changes

Alright... I will create another PR after this one has been merged.

Just tag me when you have made that PR @ordisbold

I don't understand why it's trying to build qt5-tools on Linux.
.\vcpkg.exe depend-info ace[*]
openssl-windows:
bzip2:
openssl: openssl-windows
xerces-c:
zlib:
ace[wchar, bzip2, xerces-c, ssl, tao, zlib]: bzip2, openssl, xerces-c, zlib

I will focus on the axcioma based build... And I will not try to support all platforms and features immediately. :-D

@ordisbold Well, qt5-tools issue has been resolved. Could you reopen this PR again?

@ordisbold Well, qt5-tools issue has been resolved. Could you reopen this PR again?

I don't understand why it even required qt5-tools. I removed everything qt5 and it still failed due to an issue in the qt5 package. 🤔
I reopened it.
But there's a problem regarding this port.
TAO is based on ACE and it is not advisable to separate the build process of these libraries and make TAO a separate port. TAO only supports the decades old IDL-to-C++ mapping, which doesn't support the STL, because the STL wasn't part of the C++ standard when the IDL-to-C++ mapping was defined. The "old" IDL-to-C++ mapping is hard to use and developing with it is error-prone, especially for beginners.
Renedy IT has crated a new IDL-to-C++11 mapping. It is now part of the official IDL to language specifications by the OMG.
Remedy IT has also implemened the aforementioned IDL-to-C++11 mapping based on TAO and recently released it with other relevant components (i.e. LwCCM) as open source software. The suite is called AXCIOMA and  just the implementation of the new IDL-to-C++11 mapping is called TAOX11.
Separating so if this is a can of worms I don't want to open.
The question is: how to represent this in vcpkg? The AXCIOMA build process appears to be complex but stable. It implicitly downloads ACE and TAO and builds these libraries with specific settings that the library depends on.

/azp run

_VCPKG_MAKE_GENERATOR in vcpkg_build_make.cmake seems to be undefined. That's why the Linux build now fails :-D
Where is _VCPKG_MAKE_GENERATOR  set?

@ordisbold _VCPKG_MAKE_GENERATOR is automatically set in vcpkg_configure_make.

Before this PR linux worked as far as I know, now it is disabled, personally I don't like to remove a platform again

Okay, but this PR took much longer than I anticipated. This was certainly due to my lack of knowledge of vcpkg and it's rules for ports but also because I intented to support all platforms right away.
So, at the moment I want to only support Windows (I never thought I would ever write this :-P) and add other platforms in separate PRs. Otherwise I fear there will always be new issues, like the qt5-tools issue yesterday, which came and went away, even though I have removed all dependencies on qt5.
I have already setup a CentOS VM yesterday to test Linux builds with it.

I won't invest more time in this PR.
I wanted to share the addition of TAO which I have been using here for a while and I didn't expect that the PR consumes more time than the addition of TAO to the port.
So, I don't require it to be merged.

Regret to see this closed, would be nice to have tao on vcpkg


ebpfclient: abstraction layer to the execution context

@saxena-anurag

@saxena-anurag please add description

The calls to execution context right now directly call invoke_ioctl assuming KM execution context. There should be an abstraction layer which, depending on the execution context, call should invoke_ioctl or something equivalent for UM EC.


Add basque translations

Looks good - thanks for doing this @unaizalakain! I'll aim to get this merged in the next day or two, unless someone else gets there first.

Is there a chance of getting this merged in the near future? Cheers!

Merged - I'll update the changelog, bump the version and then hopefully @emperorcezar can get a new release onto PyPI so you can use your work. Sorry for the delay.

OK - I've updated the changelog. @emperorcezar - can you push a new release to PyPI when you get a moment?

Thank you so much!


Are you open for suggestions?

I'm using a very good lib for EditText with label - but it's not maintained anymore.
So I'm searching for a replacement.

Of course, any suggestions are welcome :)

@HITGIF Perfect. Thanks.
Right now I'm using https://github.com/rengwuxian/MaterialEditText - and it's still really great. But it's not maintained anymore - and there are bugs and features missing.

What I need is an icon in front (left) of the EditText. https://github.com/rengwuxian/MaterialEditText/raw/master/images/material_design_icon.png
An "delete" icon on the right if there is text inside the EditText.
Label "not floating", always visible - so I could use label AND hint text at the same time.
Is it possible to define min text length? -> FOUND IT: app:minCharacters="5"
Possible to have a look more like the default EditText?

Thanks for the suggestions first.

the icon is now avaiable in the 1.1.0 release, you can use app:iconSignifier in xml, see README for more detail.
delete button is now listed in TODO, and will hopefully be coming soon XD
I guess the Placeholder, or the actual "hint" is what you're asking for, and I admit that my way of naming the floating label as "hint" is improper.
For now you can use getEditText().setHint() in Java code to achieve that, yet I'm certainly going to add it as an attribute to make life easier and the proper name for floating label will be change back :)
you got it XD
You're hoping for a UI that looks like the original EditText? Does it mean to cut off the box or what? Could you explain it a little more?

Very impressive!
For the EditText look: https://material.io/guidelines/components/text-fields.html#text-fields-layout
-> image

Well, what I'm doing is actually something else in the guideline called Text Field Boxes, not a extented EditText. Image here
This is distinct from the original EditText :)

Ah I see :-)
Thanks.


[WIP] Generate tbtc bindings

Closing in favor of https://github.com/keep-network/keep-core/pull/3443


Remove vestiges of original README

Explicitly mention that this is a fork and that it's tied to the Nutcracker challenge. Fix a few minor formatting issues.
I wanted to reformat the README to Markdown, but it looks like Markdown can't express the nice multi-line table that we use for the ESP8266 comparison.

Hello, looks great, thanks :)


error_chain: Display implementation should show the error's Display, not just the description

Given the following invocation of error_chain!:
error_chain! {
    types {
        Error, ErrorKind, ChainErr, Result;
    }
    links {}
    foreign_links {
        git2::Error, Git2, "git error";
    }
    errors {
    }
}

Producing an error from a git2::Error and then printing that error just produces "git error", without actually printing the underlying git2::Error.  The Display implementation for an error produced from a foreign link should forward to the Display implementation for the linked error.

Yes please.

Moved to https://github.com/brson/error-chain/issues/2


Test against all versions of Rails 5 and Ruby

In order to ensure we have the right version of sqlite3 (since a specific version is required by these versions of active record), we define it explicitly in the appraisals file. We can also use this to add minitest for the Rails 3.2 build automatically.

To make the build pass without dropping Ruby versions, I've had to constrain the version of Bundler; I'm not sure this was the right call though.

Thanks James!


Pulls/4.0/behat3

Codecov Report

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

@@         Coverage Diff          @@
##             4       #1   +/-   ##
====================================
  Coverage     ?   18.67%
  Complexity   ?       68
====================================
  Files        ?        3
  Lines        ?      241
  Branches     ?        0
====================================
  Hits         ?       45
  Misses       ?      196
  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 96ce9b6...882524d. Read the comment docs.


Remove cacheGpu and uncacheGPU

Around the following lines, cacheGpu and uncacheGpu are unnecessary.
https://github.com/IBMSparkGPU/GPUEnabler/blob/master/examples/src/main/scala/com/ibm/gpuenabler/SparkGPULR.scala#L119
We cannot see them in the CPU version.

This would help keep results of the map operation in GPU, so when reduce function is called on line 120 it would use the data in GPU. Without this, results of map operation would be converted into row format in line 115, then it would again converted into column format in line 120.

If I am correct, the original design automatically avoids this conversion without calling cacheGpu and uncacheGpu. This is because lines 115 and 120 do not touch mapRDD on CPU.


Add #[private] method decorator

Based on #168 by @chain-police
Introduced #[private] method decorator, that verifies predecessor_account_id() == current_account_id().
NOTE: Usually, when a contract has to have a callback for a remote cross-contract call, this callback method should
only be called by the contract itself. It's to avoid someone else calling it and messing the state. Pretty common pattern
is to have an assert that validates that the direct caller (predecessor account ID) matches to the contract's account (current account ID).
Fixes #122

looks useful! but
#[private] pub fn ... does looks a bit strange. Maybe #[owner] from eth world is a better name?

Technically the macro could add the pub to make it feel more private.

Technically the macro could add the pub to make it feel more private.

Great point! How about even dropping the need to have the #[private] marker at all?

How about even dropping the need to have the #[private] marker at all?

This will make all methods to be exported under near_bindgen which will probably generate JSON schema when it's needed. Unless we can explain that people need to have a separate impl section for non exported methods, then it might be confusing.


Fix react types Issue

Description

Fix react types Version
Runs Doc and Example Project parallelly in 2 different ports

Motivation and Context

Fix react types Version
Runs Doc and Example Project parallelly in 2 different ports

How Has This Been Tested?

Tested Locally

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

Closing this PR another PR already raised for the same


[alert/report] Searching for user in Email Report / Alert doesn't work properly

When searching for a user in the Email Alert & Report page, not all users are displayed - there seem to be a limit in the typehead or the search is broken. I can find reports with some user names, but if I type some of my colleagues names, their names are not found.
Expected results
All users should show up when name is typed.
Actual results
No user is found.
Screenshots

Environment
Master
Checklist
Make sure to follow these steps before submitting your issue - thank you!

[] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[x] I have reproduced the issue with at least the latest released version of superset.
[x] I have checked the issue tracker for the same issue and I haven't found one similar.

cc @yousoph @graceguo-supercat @m-ajay

Possibly related to https://github.com/apache/superset/issues/16963

@yousoph any updates here?

fixed by the PR @graceguo-supercat linked above


Allow AD to use primitive adjoints that provide a superset of indices

If a user provides a primitive adjoint for an @differentiable function, and AD or a #gradient instruction later requests the gradient of this function for a subset of the indices with respect to which the primitive adjoint provides derivatives, it would be surprising if the compiler then attempted autodiff of this function. It should instead generate gradient code that uses a subset of the indices of the primitive adjoint.
These changes:

Add a field to the [reverse_differentiable] SIL attribute to mark whether the adjoint is primitive or synthetic.
Allow synthesized gradient functions and nested adjoints to call adjoint functions that provide a superset of the required indices.
Enable this behavior only for primitive adjoints.
Make lookUp -> lookup for consistency with other functions in TFDifferentiation.cpp.

Addressed the rest of the comments. WRT cross-module references, I ran the two tests you suggested:

#gradient((+) as (Float, Float) -> Float, wrt: .0)
#gradient({ (x: Float, y: Float) in x + y }, wrt: .0)
The former fails with

error: differentiating an opaque function is not supported yet
  expectEqual(1, #gradient((+) as (Float, Float) -> Float, wrt: .0)(1, 2))
                 ^         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

while the latter already works with this patch (and I've added it to the tests). It seems like fully supporting the cross-module case will require convention differentiable?

while the latter already works with this patch (and I've added it to the tests). It seems like fully supporting the cross-module case will require convention differentiable?

This is to be resolved as part of the differentiation pass, apart from "generalized differentiability". Assuming we are not blocked on this, I can tackle this or next week.

Pushed two commented-out tests and filed https://bugs.swift.org/browse/SR-8967

@swift-ci please test tensorflow

@swift-ci please test tensorflow

@swift-ci please test tensorflow

Please fix the failing test: simple_math.swift.

@swift-ci please test tensorflow

@swift-ci please test tensorflow

@swift-ci please test tensorflow

@swift-ci please test tensorflow

Thanks!


Restricted action: interact w wallet

Add a new restricted action to smart wearables to control the use of the player's wallet. Smart wearables without this permission won't be able to interact with the player's wallet, to make transactions or to sign messages.
Content creators will need to add this new permission to the list of `requiredPermissions"  https://docs.decentraland.org/creator/development-guide/scene-metadata/#required-permissions

If the permission is not included, and the scene attempts to interact with the players wallet on the browser, the action will be blocked.

If the permission is not included, it should still be possible to use the player's ephemeral key via signedFetch()

This change should only affect SDK7. Smart wearables built with older versions won't be allowed to be published at all.
For reference to why, see:
https://www.notion.so/decentraland/RFC-Portable-experience-controlled-actions-fde77221063143fd9697aa7d69612f4d

The permission USE_WEB3_API already exists, but what remains is to test that it works as expected.
To do this, we need the preview of smart wearables to work for SDK7

@gonpombo8   I assigned you to this one, I think it's surely something that's already in the scope you're working on.
If you're confident this already works, we can close it.


Update Readme to add warning to consumeAllItems

Add a warning to consumeAllItems. It must not be used if there are non-consumable IAPs in the app since Google lets you consume any managed IAP.

Thanks.


Upgrade dependencies for recent Kubernetes

Closes #121
Feel free to drop commit 6826e58c0fc6b02bc71079c982705647f9da1f96 and do your own update, but the three changes to mmain.go are required.

rahul share,a

rahul Sharma


await TagHelper generated objects

Issue #169
@NTaylorMullen

:shipit: once you've verified that everything works as intended with each directive during runtime.

:shipit: once you're done @NTaylorMullen's verification and got sign-off on a reaction PR in MVC.  we have at least a few unit tests that confirm the generated source.


 I caught this after wondering my app was behaving in an odd way, but missing the top element of each group.

Oops! Thanks for the fix


Add a Pad segment and make LinkerEntry a bit more flexible

Add a pad segment that advances the linker script instead of dumping a binary / generating an assembly file.

Closes #312

Move the logic of writing the entry to the linker script from LinkerWriter to LinkerEntry

This allows to have custom behavior for an entry without needing to hardcode extra checks on LinkerWriter.
Extension segments can make a subclass of LinkerEntry and override its methods to have custom linker script behavior.

New yaml option: ld_generate_symbol_per_data_segment

If enabled, the generated linker script will have a linker symbol for each data file.
Defaults to True.

aweshom


JAVA-2992 include options into DefaultTableMetadata equals and hash methods

@absurdfarce the changelog entry is missing, please add it to 4.x directly.

@adutra 👍 I noticed this when updating the collection of JIRA tickets for 4.14.0.  I need to do an overall update there but I'd like to get the last few tickets (JAVA-2976 + JAVA-2987) in before doing so.


How to add tooltip in parallel graph when hover each line?

Parallel series does not support tooltip currently. I see it at issues #4955.
Please, do we support it now?

It doesn't seem like so.

So, parallel graph support to tooltip each line parameters when hover it.


[ZEPPELIN-1567] Let JDBC interpreter use user credential information.

What is this PR for?
This PR is for the multi-tenant of JDBC Interpreter.
User can create a user/password for JDBC account at the Credential page.
The Entity of Credential is match with JDBC interpreter group name.
If the account for JDBC is not setted in the Interpreter property then use Credential's.
What type of PR is it?
Improvement
What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-1567
How should this be tested?
Please refer to testMultiTenant() of JDBCInterpreterTest/
Screenshots (if appropriate)
Questions:

Does the licenses files need update? no
Is there breaking changes for older versions? no
Does this needs documentation? no

please review @jongyoul

@astroshim  Thanks for the contribution.
Proposed jdbc interpreter update looks like searching Entity name, the same name with interpreter alias. I can think some possible problem here. For example
Let's say an interpreter X read Entity name 'orange'. And a jdbc interpreter setting is created with alias 'orange'. Then both interpreter X and jdbc interpreter reads the same Entity 'orange', but they might expect different credentials.
So i think we need introduce some convention for Entity name. Something like
jdbc.[alias]. so user can create Entity like 'jdbc.orange', 'interpreterx.orange'
Also, i think following docs need to be updated.
https://github.com/apache/zeppelin/blob/master/docs/security/datasource_authorization.md https://github.com/apache/zeppelin/blob/master/docs/interpreter/jdbc.md

@Leemoonsoo Thank you for review this.
I was curious about the Entity name should be same with interpreter's.
Could you tell me your idea?

There's also an option of adding that Entity key in interpreter settings via GUI (say credetials.key -> entity) and then using that entity when searching through credentials

it would be even better to let user chose interpreter from dropdown list of interpreters in place of entity field in credentials menu, what do you think @Leemoonsoo @astroshim ? Also need to rebase I guess

@khalidhuseynov Thank you for sharing your good idea about the dropdown list.
It might gives convenience users.
and I agree with @Leemoonsoo about define convention for entity name.
Let me fix that.

@astroshim there're errors during build:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:testCompile (default-testCompile) on project zeppelin-livy: Compilation failure: Compilation failure:
[ERROR] /home/travis/build/apache/zeppelin/livy/src/test/java/org/apache/zeppelin/livy/LivyIntegrationTest.java:[86,34] constructor InterpreterContext in class org.apache.zeppelin.interpreter.InterpreterContext cannot be applied to given types;
[ERROR] required: java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.apache.zeppelin.user.AuthenticationInfo,java.util.Map<java.lang.String,java.lang.Object>,org.apache.zeppelin.display.GUI,org.apache.zeppelin.display.AngularObjectRegistry,org.apache.zeppelin.resource.ResourcePool,java.util.List<org.apache.zeppelin.interpreter.InterpreterContextRunner>,org.apache.zeppelin.interpreter.InterpreterOutput
[ERROR] found: java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.apache.zeppelin.user.AuthenticationInfo,<nulltype>,<nulltype>,<nulltype>,<nulltype>,<nulltype>,org.apache.zeppelin.interpreter.InterpreterOutput
[ERROR] reason: actual and formal argument lists differ in length
[ERROR] /home/travis/build/apache/zeppelin/livy/src/test/java/org/apache/zeppelin/livy/LivyIntegrationTest.java:[180,34] constructor InterpreterContext in class org.apache.zeppelin.interpreter.InterpreterContext cannot be applied to given types;
[ERROR] required: java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.apache.zeppelin.user.AuthenticationInfo,java.util.Map<java.lang.String,java.lang.Object>,org.apache.zeppelin.display.GUI,org.apache.zeppelin.display.AngularObjectRegistry,org.apache.zeppelin.resource.ResourcePool,java.util.List<org.apache.zeppelin.interpreter.InterpreterContextRunner>,org.apache.zeppelin.interpreter.InterpreterOutput
[ERROR] found: java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.apache.zeppelin.user.AuthenticationInfo,<nulltype>,<nulltype>,<nulltype>,<nulltype>,<nulltype>,org.apache.zeppelin.interpreter.InterpreterOutput
[ERROR] reason: actual and formal argument lists differ in length

please review

rebuild CI

@astroshim Could you rebase and see if CI becomes green?

re-build CI

CI is green now. Thanks.

Tested this branch but somehow i couldn't make it work.

if i set 'default.user' and 'default.password', i can access the database.
Turn on authentication and remove 'default.user' and 'default.password' does not access database with login credential
Turn on authentication, remove 'default.user' and 'default.password' and add credential in credential page does not access data base with provided credential.

I'm not sure if i did something wrong or not..

I have tested this and it appears to be working but when multiple users are signed in (just using the basic auth in shiro.ini) - the credentials appear to be still shared across all users. I was expecting each user to have to log in and create their own credential information. Is this incorrect?

Thank you @Leemoonsoo and @nathanscully to review.
Let me address issues.

@nathanscully I fixed that you issued. Could you review again?
@Leemoonsoo What Entity name did you set? Entity should be set as jdbc.InterpreterName.

Build Command: mvn clean package -DskipTests
Build Commit: bf61afd fix testcase (2 days ago) [astroshim]
Build & Runtime Java: 1.8.0_102
Tested Backends: Mysql 5.7, MariaDB 10.1, Postgres 9.6
In my case, This PR works well with multiple users login (opened chrome, firefox, safari..)

@astroshim IMO, We can give more information about how users should name Entity at the top of Credential Page. Quite confusing to me at first. For example,

Example Interpreter Names: jdbc.mysql, jdbc.hive

@1ambda Thank you for the testing and great suggestion about the Entity name.
Let me fix it.

@1ambda I added placeholder message for Entity. Does it make sense?

@astroshim It is more clear since we already use that notations in the interpreter tab :)

@1ambda Thank you for review!

CI is green!

Tested and LGTM.
Merge to master if there're no further discussions.


Conflicts with the official mailgun_ruby gem

Since you are both declaring a Mailgun::Client class I can't use both gems at the same time.
I really like the way this gem uses ActionMailer for sending api email, but mailgun_ruby is nice for other api access, which isn't supported by this gem.
Any chance you're willing to move to MailgunRails or Mailgun::Rails module?

I ran into this problem too, on a recent project. I created a pull request that fixes the namespace conflict.
#60

Hi,
Sorry for the delay here. Is anyone interested in getting admin permissions on this repo/gem? I am not using this gem anymore and would love to find other maintainer for it.
Regards

Hi,
2 weeks ago I would probably have said yes, but since then I've had so many issues with mailgun, that I'm not sure I'll be using it for very long.

@hampei could you share with us what are the issues with mailgun?

Emails getting send from ip's registered on mayor blacklists for days, requiring us to ask them to switch. Emails that are said to be delivered but haven't shown up in inboxes/spamboxes even when on fairly ok ip's. Getting frequent vague 400 errors when sending emails.

@hampei bummer, i don't those problems yet. Thanks for telling this.

@jorgemanrubia I can contribute to maintain this repo, since I am now using this gem to send emails via mailgun

Thank you so much for offering to help @zbcjackson. I have added you as a collaborator. You have push permissions now. I am not really using the gem or mailgun anymore, so I really appreciate the help.

Fixed by https://github.com/jorgemanrubia/mailgun_rails/pull/68


A serious controller/keyboard problem in the configuration menu

While making the Feature Request to fix/restore the missing car horn, I was trying to confirm which button it would be by default for an XInput controller, I came across this game-breaking problem with the controller configuration menu. So this happens...
Controller

Keyboard

So you might be asking "well what's the problem then?" If you try to "fix" the controller mappings by selecting Default in the menus (happens consistently with a controller plugged in and attempting to restore the botched keyboard controls), it breaks the game's "cancel" function and it prevents me from even going back to the previous menus, even keyboard controls are effected by this as well, effectively softlocking the game. Remapping controls with this problem also makes it hard to figure out if my controls are bound to the right keys/buttons or not.
This is how the control configuration menu without the fix at all looks like:
Controller

Keyboard

Furthermore, this presents a major problem for those using DirectInput based controllers or other PC-compatible gamepads or steering wheel and pedals if the game did not map the controls correctly (I also found out the game stores the controls settings and some other game setting in the common.dat file found the SaveGame folder).
Also while I'm at it, I noticed the HideOnlineSigninText config in the INI for OR2006C2C Tweaks does not hide the Sign In text is not working at all with 0.4.1 even though I have this set to "true" in my config file.
UPDATE: To further elaborate on the issue, I had this happen with an 8BitDo Ultimate Xbox Controller (the earlier wired model), but it can also happen with official Xbox 360 controllers and DualShock 4 controllers. While updating this issue and testing DualShock 4 controllers, this problem also caused the game to crash when trying to fight with the broken/buggy remapping menus.
UPDATE 2: Also trying to trick the broken mapping in the menus by temporarily renaming the Tweaks's dinput8.dll, force all control mappings back to default without it, save the changes, and then reverting the Tweaks's DLL file back to the original name causes the game to hang on launch.

Chiming in, I'm playing it on Wine and I'm unable to get my controller (DualSense 5) working properly.
It is sort-of recognized in game:

The horizontal steering axis works, but the others don't, and the buttons are all switched around and I can't set them either.
Apart from that the game runs great, I'm very grateful for your effort to keep this marvellous racing game alive.

Again, glad i'm not the only one with the problem for the "Cancel" button going bananas while trying to configure a controller.  This game needs major overhaul for controller support.

If possible, an external .ini for setting input might be a good way to bypass the Controls menu entirely. I just want to map Accelerate to A and Brake to B :(

The right trigger on my DS4 also opens the menu when trying to accelerate, and sometimes cancels when bein depressed, no matter what the mappings are.-
ESC is non working whatever the case.
I tried plugging my xbone controllerand it was non working with my tentative previous DS$ remappings.
Deleting command.dat allowed to fix it and make the game with the Xbox controller.
The controller configuration UI of this game sure was a total nonsensical mess!

turn off controller hotplug for solving the problem.

Ah I had done that at your guidance once, and had forgotten to do it again!
Thank you :D


Errors reseting after SubmissionError

Are you submitting a bug report or a feature request?
Sounds like a feature.
Can I manually dispatch an error for a field (using redux-form actions) or manually call sync validation function or reset the errors after throwing SubmissionError?
What is the current behavior?
As I see sync validation doesn't work for a field if the value hasn't been changed after SubmissionError.
What is the expected behavior?
I would like to reset (remove) errors after passing them to SubmissionError by changing any of my form value.
What's your environment?
6.5.0
Other informations

Can you be more specific on why you would need this? This sounds like you are throwing error to a field that is not related to the error, or throwing one error to multiple fields.

If error is only specific to a single field, return error specific to that field.
If error targets multiple fields, use a global _error.

I would like to highlight each field it case of global _error and reset each firld on any form field change.

I have the same error, would love such a feature, cause after SubmissionError i need to validate the whole form on each onChange, but only the changed input gets validated

Closing as you can now use clearSubmitErrors to achieve this. Added documentation.