Access Denied: Addressing Model Availability and Permissions in Bolt AI

Describe the bug
I've encountered an error while trying to generate a response. Here’s what I understand about it:
Status: 404: This indicates a "Not Found" error, meaning the resource I'm trying to access (the model gpt-4) couldn't be located.
Headers: This part includes the response headers, which typically contain metadata about the API response.
Request ID: undefined: It looks like a specific request identifier wasn't generated in this case.
Error Object: Here's the detailed information:
Message: "The model gpt-4 does not exist or you do not have access to it." This clearly states the core issue.
Type: "invalid_request_error" – This indicates that the request I made was not valid.
Code: "model_not_found" – This means that the model could not be found or accessed.
From what I gather, this error could be due to one of two main reasons:
Incorrect Model Name: The model name gpt-4 might be incorrect, so it would be a good idea to double-check the name and version.
Access Permissions: It’s also possible that I don’t have the necessary permissions to access this model. It would be useful to verify the account permissions and subscription level.
To resolve this, I recommend:
Double-checking the model name and version.
Verifying your account permissions.
Listing the available models through the API to see if gpt-4 is listed.
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-bsglvafp
Steps to reproduce
Steps to Reproduce the Error
Setup: Ensure you have the necessary API access and configuration for using the gpt-4 model.
Initiate Request: Make a request to generate a response using the model name gpt-4. This can be done via your application code, an API client, or a command-line tool.
javascript
const response = await generateResponse({ model: 'gpt-4', input: 'Your input here' });
Monitor Response: Observe the response from the API call.
Encounter Error: Notice that the API call returns an error with the status code 404 and the message indicating that the model gpt-4 does not exist or you do not have access to it.
Detailed Error Breakdown
Status: 404: This is an HTTP status code indicating "Not Found," which means the resource (in this case, the model gpt-4) couldn't be located.
Headers: This part details the response headers, which often include metadata about the API response.
Request ID: Undefined: This suggests that a specific request identifier was not generated.
Error Object: Provides more detailed information:
Message: "The model gpt-4 does not exist or you do not have access to it."
Type: "invalid_request_error" – Indicates the request was not valid.
Code: "model_not_found" – Specifically highlights that the model could not be found or accessed.
Failure of Bolt AI to Resolve the Issue
Bolt AI attempted to resolve this issue by checking the model name and verifying the account permissions. However, they failed to identify a crucial point:
Verification of Model Availability: Bolt AI did not thoroughly verify whether the model gpt-4 was actually available and accessible for the user's account.
Communication with API Provider: They did not reach out to the API provider for confirmation on the model's availability and account permissions.
Documentation Review: There was an oversight in cross-referencing the API documentation to ensure the correct usage of model names and versions.
As a result, the error persisted because the root cause—model availability and account permissions—was not adequately addressed.
Expected behavior
Expected Behavior
We were aiming for the AI to provide dynamic and engaging content generation for a text-based horror RPG experience. Specifically, we expected:
Seamless Interaction: The AI would generate coherent and contextually appropriate responses to user inputs, creating a fluid and immersive gaming experience.
Dynamic Storytelling: The AI would craft unique horror scenarios, characters, and events based on user decisions, ensuring each playthrough offers a fresh and terrifying adventure.
Consistency: The AI would maintain a consistent tone and narrative style, keeping the player fully engaged in the spooky atmosphere.
Real-Time Adaptation: The AI would adapt to user choices in real-time, influencing the story direction and outcomes based on player decisions.
Our Project: Text-Based Horror RPG Experience Web App
We were developing a web app that leverages the capabilities of GPT-4 to create a text-based horror RPG. The vision included:
User-Driven Narrative: Players would embark on a chilling adventure, making choices that shape the story's direction. Each decision would lead to different scenarios, creating a personalized horror experience.
Immersive Descriptions: The AI would generate detailed and vivid descriptions of settings, characters, and events, drawing players into the eerie world we’ve crafted.
Character Interactions: Players would interact with various characters, both friend and foe, each with their own backstories and motivations. The AI would ensure these interactions are rich and meaningful.
Plot Twists and Surprises: The AI would introduce unexpected twists and turns, keeping players on the edge of their seats and ensuring a thrilling experience from start to finish.
How We Were Using GPT-4
To bring this project to life, we intended to utilize GPT-4 for:
Content Generation: Creating narrative elements, dialogue, and descriptions that are integral to the horror RPG experience.
Decision Response Handling: Generating appropriate responses and consequences based on player choices, ensuring the narrative remains cohesive and engaging.
Dynamic World-Building: Expanding the game's universe with new lore, characters, and events as the player progresses, making the game world feel alive and reactive to their actions.
The Challenge We Faced
Despite our careful planning and anticipation, we encountered an issue where the model gpt-4 was not available or accessible, as indicated by the error:
Status: 404: Resource not found.
Error Message: "The model gpt-4 does not exist or you do not have access to it."
Type: "invalid_request_error"
Code: "model_not_found"
Summary
We hoped to harness the power of GPT-4 to deliver a captivating and immersive horror RPG experience. Unfortunately, the error we encountered prevented us from accessing the necessary model, posing a significant obstacle in our development process.
Screen Recording / Screenshot
No response
Platform
Browser name = Chrome
Full version = <IP_ADDRESS>
Major version = 131
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
performance.memory = {
  "totalJSHeapSize": 62019068,
  "usedJSHeapSize": 57634944,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}
Username = KillshotELOx
Chat ID = 243dd6ef885c

Additional context
Upgrading Bolt AI: Enhancing Model Accessibility and Permissions Management
Current Issue
The primary issue we're facing is that the model gpt-4 is either not available or our account lacks the necessary permissions to access it. This results in the following error:
Status: 404 - Not Found
Error Message: "The model gpt-4 does not exist or you do not have access to it."
Type: "invalid_request_error"
Code: "model_not_found"
Proposed Upgrades
Model Availability Verification
Automated Checks: Implement automated checks to verify the availability of requested models before making API calls. This would help prevent requests for non-existent or inaccessible models.
Dynamic Listing: Integrate a dynamic listing feature that pulls the current list of available models and displays it to the user, ensuring they select only accessible models.
Enhanced Permissions Management
Access Control Dashboard: Develop an access control dashboard where users can easily manage and verify their permissions for different models. This dashboard should highlight any limitations or subscription requirements.
Permission Alerts: Set up alerts that notify users if their current permissions are insufficient to access a requested model, providing guidance on how to upgrade or request additional access.
Comprehensive Documentation and Support
Detailed Documentation: Expand the documentation to include detailed instructions on verifying model availability, managing permissions, and troubleshooting common issues like model_not_found.
Support Integration: Integrate a support feature directly within the platform where users can report issues or seek assistance, ensuring quicker resolutions.
User Feedback and Iteration
Feedback Loop: Establish a feedback loop where users can report their experiences and suggest improvements. This feedback can be used to iteratively enhance model accessibility and permissions management.
Beta Testing: Introduce a beta testing program for new features related to model access and permissions, allowing users to test and provide feedback before full deployment.
By implementing these upgrades, Bolt AI can significantly improve its handling of model availability and permissions, ensuring a smoother and more reliable user experience. This will not only resolve the current issue but also enhance the overall functionality and user satisfaction of the platform.

I tried to enhance the text input function, 'What do you want to do next,' using GPT's API. However, I encountered some unexpected errors that Bolt AI's troubleshooting capabilities couldn’t resolve. Could someone please assist me with this issue? Thank you.


Pinentry and tracker popups should always be on top of main window

The pinentry and tracker popups can get lost behind the main window. Electron offers an easy way to avoid this.

@keybase/react-hackers

https://keybase.atlassian.net/browse/DESKTOP-2467

cc @patrickxb @malgorithms

this makes them always on top, which is not the same as launching it on top

can we defer this whole conversation until after chat is done

FYI Electron has modal windows now so we can make the "remote" windows always appear above main window. http://electron.atom.io/docs/api/browser-window/#modal-windows

They've had this for awhile and its not what we want. This entirely disables the parent app

Also the relative windows thing on osx is really gross. Its not an independent window, its more for a toolbar type experience

For pinentry I think it's what we (I) want.
For tracker popups I think we want to set the parent (and not modal), so they are child windows and don't get hidden behind the main window, but I haven't tested that.

This won't work if the main window is hidden. This isn't the real solution.
On Fri, Jan 20, 2017 at 6:51 PM Gabriel Handford<EMAIL_ADDRESS>wrote:

For pinentry I think it's what we (I) want.
For tracker popups I think we want to set the parent (and not modal), so
they are child windows and don't get hidden behind the main window, but I
haven't tested that.
—
You are receiving this because you are on a team that was mentioned.
Reply to this email directly, view it on GitHub
https://github.com/keybase/client/pull/5387#issuecomment-274210413, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAfhU7O3BNwgtt-qj8LCH_ZsmbjBga8Uks5rUUhtgaJpZM4LjNkP
.


Problem of install black[jupyter] as uv tool.

➜  ipynb git:(main) ✗ uv tool run black .
Skipping .ipynb files as Jupyter dependencies are not installed.
You can fix this by running ``pip install "black[jupyter]"``
No Python files are present to be formatted. Nothing to do 😴
➜  ipynb git:(main) ✗ uv tool install black[jupyter]
zsh: no matches found: black[jupyter]

I'm trying to use the black[jupyter] lint tool for ipynb files using the uv tool functionality. However, it's not installing properly.
I would appreciate if you could provide a solution.
Thank you in advance.
➜  ipynb git:(main) ✗ uv --version
uv 0.4.18 (Homebrew 2024-10-01)

Can you try uv tool install "black[jupyter]"? Your shell likely wants it wrapped in quotes.

Can you try uv tool install "black[jupyter]"? Your shell likely wants it wrapped in quotes.

Thanks, it works!
➜  ~ uv tool install "black[jupyter]"
Resolved 23 packages in 342ms
Prepared 1 package in 34ms
Installed 23 packages in 91ms
 + asttokens==2.4.1
 + black==24.10.0
 + click==8.1.7
 + decorator==5.1.1
 + executing==2.1.0
 + ipython==8.28.0
 + jedi==0.19.1
 + matplotlib-inline==0.1.7
 + mypy-extensions==1.0.0
 + packaging==24.1
 + parso==0.8.4
 + pathspec==0.12.1
 + pexpect==4.9.0
 + platformdirs==4.3.6
 + prompt-toolkit==3.0.48
 + ptyprocess==0.7.0
 + pure-eval==0.2.3
 + pygments==2.18.0
 + six==1.16.0
 + stack-data==0.6.3
 + tokenize-rt==6.0.0
 + traitlets==5.14.3
 + wcwidth==0.2.13
Installed 2 executables: black, blackd


[SPARK-13845][CORE][Backport-1.6]Using onBlockUpdated to replace onTaskEnd avioding driver OOM

What changes were proposed in this pull request?
We have a streaming job using FlumePollInputStream always driver OOM after few days, here is some driver heap dump before OOM
 num     #instances         #bytes  class name
----------------------------------------------
   1:      13845916      553836640  org.apache.spark.storage.BlockStatus
   2:      14020324      336487776  org.apache.spark.storage.StreamBlockId
   3:      13883881      333213144  scala.collection.mutable.DefaultEntry
   4:          8907       89043952  [Lscala.collection.mutable.HashEntry;
   5:         62360       65107352  [B
   6:        163368       24453904  [Ljava.lang.Object;
   7:        293651       20342664  [C
...

BlockStatus and StreamBlockId keep on growing, and the driver OOM in the end.
After investigated, i found the executorIdToStorageStatus in StorageStatusListener seems never remove the blocks from StorageStatus.
In order to fix the issue, i try to use onBlockUpdated replace onTaskEnd  , so we can update the block informations(add blocks, drop the block from memory to disk and delete the blocks) in time.
How was this patch tested?
Existing unit tests and manual tests

Test build #54416 has started for PR 12028 at commit f37f359.

Test build #54416 has finished for PR 12028 at commit f37f359.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/54416/
Test PASSed.

/cc @andrewor14

Merged into 1.6

Can you close this PR now?

OK.


  Don't do this?)
Currently, deleting a layer does not remove the related postgis table--if the DB_DATASTORE is active

Already happening.  Fixed some logic where delete wasn't being reached b/c of geoserver 2.4+ issue
Fix was here: https://github.com/cga-harvard/cga-worldmap/commit/0182e8e27fda3ae1c1ce57c160ede7f628fecc10#diff-d1eb27b42bbed876f0227600d3d8de69R157


Gradle 4.6-rc1 won't run TestEngines defined in the project itself

It appears that Gradle 4.6 built-in support for JUnit5 only considers TestEngines from dependencies that are actually packaged as jars. If the TestEngine is on the classpath either as a compile project(":foo") dependency or defined directly in that very project itself, the test engine is not discovered by Gradle. The JUnit5 Gradle plugin also covers this case and correctly registers such TestEngines.
Expected Behavior
All test engines should be considered and run.
Current Behavior
Only test engines in jar dependencies are considered.
Context
I'm building this project: https://github.com/mvysny/dynatest ; I define a TestEngine in the project itself and then I'm trying to run it with JUnit5 runner in tests. With Gradle JUnit5 plugin this worked; after upgrade to Gradle 4.6 this stopped working and Gradle will only detect the jupiter engine.
However, in a different project where dynatest is a jar dependency, this works flawlessly with Gradle 4.6 and the DynaTest TestEngine is detected and run.
Steps to Reproduce (for bugs)

git clone https://github.com/mvysny/dynatest
./gradlew
Only the jupiter engine tests were run; since the DynaTest TestEngine is not discovered and used, CalculatorTest and other tests are not run.

Your Environment
openjdk version "1.8.0_151"; ubuntu 17.10 x86-64

Thanks for reporting. I strongly suspect it's due to JUnit 5's service loading mechanism. According to the userguide:

Engine registration is currently supported via Java’s java.util.ServiceLoader mechanism

And JDK doc says:

Service providers can be installed in an implementation of the Java platform in the form of extensions, that is, jar files placed into any of the usual extension directories.

Currently, we provide the project classpath as a directory, I think that's where this issue comes from. @marcphilipp could you please confirm my speculation?
On the other side, I think it's pretty reasonable for a TestEngine to be implemented as a separated project. Would you like to try composite build, which I think suitable for your case.

Running with --debug shows the root cause:
15:08:47.078 [DEBUG] [TestEventLogger] Gradle Test Executor 3 STANDARD_ERROR
15:08:47.079 [DEBUG] [TestEventLogger]     Feb 18, 2018 3:08:47 PM org.junit.platform.launcher.core.DefaultLauncher handleThrowable
15:08:47.079 [DEBUG] [TestEventLogger]     WARNING: TestEngine with ID 'DynaTest' failed to discover tests
15:08:47.079 [DEBUG] [TestEventLogger]     java.lang.ClassCastException: com.github.mvysny.dynatest.Calculator cannot be cast to com.github.mvysny.dynatest.DynaTest
15:08:47.079 [DEBUG] [TestEventLogger]          at com.github.mvysny.dynatest.DynaTestEngine.discover(DynaTestEngine.kt:51)
15:08:47.079 [DEBUG] [TestEventLogger]          at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:130)
15:08:47.079 [DEBUG] [TestEventLogger]          at org.junit.platform.launcher.core.DefaultLauncher.discoverRoot(DefaultLauncher.java:117)
15:08:47.080 [DEBUG] [TestEventLogger]          at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:90)
15:08:47.080 [DEBUG] [TestEventLogger]          at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:94)
15:08:47.080 [DEBUG] [TestEventLogger]          at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$100(JUnitPlatformTestClassProcessor.java:80)
15:08:47.080 [DEBUG] [TestEventLogger]          at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:71)
15:08:47.080 [DEBUG] [TestEventLogger]          at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:61)
15:08:47.081 [DEBUG] [TestEventLogger]          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
15:08:47.081 [DEBUG] [TestEventLogger]          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
15:08:47.081 [DEBUG] [TestEventLogger]          at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
15:08:47.081 [DEBUG] [TestEventLogger]          at java.base/java.lang.reflect.Method.invoke(Method.java:564)
15:08:47.081 [DEBUG] [TestEventLogger]          at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
15:08:47.081 [DEBUG] [TestEventLogger]          at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
15:08:47.081 [DEBUG] [TestEventLogger]          at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:32)
15:08:47.082 [DEBUG] [TestEventLogger]          at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
15:08:47.082 [DEBUG] [TestEventLogger]          at com.sun.proxy.$Proxy3.stop(Unknown Source)
15:08:47.082 [DEBUG] [TestEventLogger]          at org.gradle.api.internal.tasks.testing.worker.TestWorker.stop(TestWorker.java:123)
15:08:47.082 [DEBUG] [TestEventLogger]          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
15:08:47.082 [DEBUG] [TestEventLogger]          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
15:08:47.083 [DEBUG] [TestEventLogger]          at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
15:08:47.083 [DEBUG] [TestEventLogger]          at java.base/java.lang.reflect.Method.invoke(Method.java:564)
15:08:47.083 [DEBUG] [TestEventLogger]          at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
15:08:47.083 [DEBUG] [TestEventLogger]          at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
15:08:47.083 [DEBUG] [TestEventLogger]          at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:146)
15:08:47.083 [DEBUG] [TestEventLogger]          at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:128)
15:08:47.083 [DEBUG] [TestEventLogger]          at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:404)
15:08:47.084 [DEBUG] [TestEventLogger]          at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
15:08:47.084 [DEBUG] [TestEventLogger]          at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
15:08:47.084 [DEBUG] [TestEventLogger]          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
15:08:47.084 [DEBUG] [TestEventLogger]          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
15:08:47.084 [DEBUG] [TestEventLogger]          at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
15:08:47.084 [DEBUG] [TestEventLogger]          at java.base/java.lang.Thread.run(Thread.java:844)

This shows that the DynaTest TestEngine is in fact registered and asked to discover tests. However, it does not handle the case of a ClassSelector that is not an instance of DynaTest (it should just ignore those).
The difference between the JUnit5 Gradle plugin and the Gradle's built-in support is that the former uses a class name pattern of .*Tests?$ by default and thus did not create a ClassSelector for the Calculator class.
Thus, this is not an issue with Gradle's built-in support but needs to be fixed in the DynaTest TestEngine.

Thanks @marcphilipp for the excellent analysis. I'll close this and please feel free to reopen.

I have just recently realized that JUnit5 crashes when there are no TestEngines; since it doesn't then that means that DynaTest TestEngine is in fact discovered. But @marcphilipp was faster...
I'm very sorry to waste your time, I should have figured this out. I just thought that if there would be any Exception then Gradle would fail...


Making performance improvements to sockets

Run SocketAwaitable continuations asynchronously for reads (Didn't seem to make much of a difference for writes)
Run using the global thread pool queues instead
of using local queues.

Theories:

We're freeing up the IO thread immediately to do more work (get more completions) so we can do more work if we dispatch.
Queuing to the local queue incurred more work stealing instead of the current thread picking it up to do more.

Plaintext Linux
Libuv:
Thread count default
[02:36:04.381] RequestsPerSecond:           1552129
[02:36:04.381] Latency on load (ms):        2.9
[02:36:04.381] Max CPU (%):                 98
[02:36:04.381] WorkingSet (MB):             403
[02:36:04.382] Startup Main (ms):           492
[02:36:04.382] First Request (ms):          192.4
[02:36:04.382] Latency (ms):                0.7
[02:36:04.382] Socket Errors:               0
[02:36:04.382] Bad Responses:               0
[02:36:04.382] SDK:                         2.2.0-preview1-007522
[02:36:04.382] Runtime:                     2.1.0-preview2-26225-03
[02:36:04.382] ASP.NET Core:                2.1.0-preview2-30242

Thread count 2
[02:40:17.288] RequestsPerSecond:           1591637
[02:40:17.288] Latency on load (ms):        1.6
[02:40:17.288] Max CPU (%):                 97
[02:40:17.288] WorkingSet (MB):             405
[02:40:17.288] Startup Main (ms):           477
[02:40:17.288] First Request (ms):          191
[02:40:17.288] Latency (ms):                0.8
[02:40:17.288] Socket Errors:               0
[02:40:17.288] Bad Responses:               0
[02:40:17.289] SDK:                         2.2.0-preview1-007522
[02:40:17.289] Runtime:                     2.1.0-preview2-26225-03
[02:40:17.289] ASP.NET Core:                2.1.0-preview2-30242

Sockets:
Before:
[02:42:05.259] RequestsPerSecond:           1450885
[02:42:05.259] Latency on load (ms):        2.5
[02:42:05.259] Max CPU (%):                 99
[02:42:05.259] WorkingSet (MB):             407
[02:42:05.259] Startup Main (ms):           407
[02:42:05.260] First Request (ms):          192.3
[02:42:05.260] Latency (ms):                0.9
[02:42:05.260] Socket Errors:               0
[02:42:05.260] Bad Responses:               0
[02:42:05.260] SDK:                         2.2.0-preview1-007522
[02:42:05.260] Runtime:                     2.1.0-preview2-26225-03
[02:42:05.260] ASP.NET Core:                2.1.0-preview2-30242

After:
[02:43:48.984] RequestsPerSecond:           1534075
[02:43:48.984] Latency on load (ms):        1.5
[02:43:48.984] Max CPU (%):                 99
[02:43:48.984] WorkingSet (MB):             410
[02:43:48.984] Startup Main (ms):           410
[02:43:48.984] First Request (ms):          189
[02:43:48.985] Latency (ms):                0.9
[02:43:48.985] Socket Errors:               0
[02:43:48.985] Bad Responses:               0
[02:43:48.985] SDK:                         2.2.0-preview1-007522
[02:43:48.985] Runtime:                     2.1.0-preview2-26225-03
[02:43:48.985] ASP.NET Core:                2.1.0-preview2-30242

Plaintext Windows
Libuv:
Thread count default
[02:31:14.077] RequestsPerSecond:           1569046
[02:31:14.077] Latency on load (ms):        3.6
[02:31:14.077] Max CPU (%):                 92
[02:31:14.078] WorkingSet (MB):             385
[02:31:14.078] Startup Main (ms):           440
[02:31:14.078] First Request (ms):          143.9
[02:31:14.078] Latency (ms):                0.8
[02:31:14.078] Socket Errors:               0
[02:31:14.078] Bad Responses:               0
[02:31:14.078] SDK:                         2.2.0-preview1-007522
[02:31:14.078] Runtime:                     2.1.0-preview2-26225-03
[02:31:14.078] ASP.NET Core:                2.1.0-preview2-30242

Thread count 2
[02:38:43.195] RequestsPerSecond:           1833182
[02:38:43.195] Latency on load (ms):        1.3
[02:38:43.195] Max CPU (%):                 92
[02:38:43.195] WorkingSet (MB):             385
[02:38:43.195] Startup Main (ms):           418
[02:38:43.195] First Request (ms):          146.3
[02:38:43.195] Latency (ms):                0.8
[02:38:43.195] Socket Errors:               0
[02:38:43.195] Bad Responses:               0
[02:38:43.195] SDK:                         2.2.0-preview1-007522
[02:38:43.196] Runtime:                     2.1.0-preview2-26225-03
[02:38:43.196] ASP.NET Core:                2.1.0-preview2-30242

Sockets:
Before
[02:33:22.076] RequestsPerSecond:           1637189
[02:33:22.076] Latency on load (ms):        9.2
[02:33:22.076] Max CPU (%):                 93
[02:33:22.076] WorkingSet (MB):             386
[02:33:22.077] Startup Main (ms):           377
[02:33:22.077] First Request (ms):          141.9
[02:33:22.077] Latency (ms):                0.8
[02:33:22.077] Socket Errors:               0
[02:33:22.077] Bad Responses:               0
[02:33:22.077] SDK:                         2.2.0-preview1-007522
[02:33:22.077] Runtime:                     2.1.0-preview2-26225-03
[02:33:22.077] ASP.NET Core:                2.1.0-preview2-30242

After
[01:54:15.852] RequestsPerSecond:           1810187
[01:54:15.852] Latency on load (ms):        1.7
[01:54:15.852] Max CPU (%):                 93
[01:54:15.852] WorkingSet (MB):             379
[01:54:15.852] Startup Main (ms):           380
[01:54:15.852] First Request (ms):          140.6
[01:54:15.853] Latency (ms):                0.7
[01:54:15.853] Socket Errors:               0
[01:54:15.853] Bad Responses:               0

Json Linux
Libuv
[02:50:53.012] RequestsPerSecond:           404439
[02:50:53.012] Latency on load (ms):        1.1
[02:50:53.012] Max CPU (%):                 98
[02:50:53.012] WorkingSet (MB):             403
[02:50:53.012] Startup Main (ms):           468
[02:50:53.012] First Request (ms):          282.1
[02:50:53.012] Latency (ms):                0.8
[02:50:53.012] Socket Errors:               0
[02:50:53.012] Bad Responses:               0
[02:50:53.012] SDK:                         2.2.0-preview1-007522
[02:50:53.012] Runtime:                     2.1.0-preview2-26225-03
[02:50:53.013] ASP.NET Core:                2.1.0-preview2-30242

Sockets
Before
[02:48:02.883] RequestsPerSecond:           258183
[02:48:02.883] Latency on load (ms):        1.4
[02:48:02.883] Max CPU (%):                 98
[02:48:02.883] WorkingSet (MB):             403
[02:48:02.883] Startup Main (ms):           409
[02:48:02.884] First Request (ms):          283
[02:48:02.884] Latency (ms):                0.7
[02:48:02.884] Socket Errors:               0
[02:48:02.884] Bad Responses:               0
[02:48:02.884] SDK:                         2.2.0-preview1-007522
[02:48:02.884] Runtime:                     2.1.0-preview2-26225-03
[02:48:02.884] ASP.NET Core:                2.1.0-preview2-30242

After
[02:46:09.887] RequestsPerSecond:           304399
[02:46:09.887] Latency on load (ms):        1
[02:46:09.887] Max CPU (%):                 98
[02:46:09.887] WorkingSet (MB):             407
[02:46:09.887] Startup Main (ms):           404
[02:46:09.888] First Request (ms):          292.7
[02:46:09.888] Latency (ms):                0.7
[02:46:09.888] Socket Errors:               0
[02:46:09.888] Bad Responses:               0
[02:46:09.888] SDK:                         2.2.0-preview1-007522
[02:46:09.888] Runtime:                     2.1.0-preview2-26225-03
[02:46:09.888] ASP.NET Core:                2.1.0-preview2-30242

Json Windows
Libuv
[02:52:30.244] RequestsPerSecond:           451311
[02:52:30.244] Latency on load (ms):        0.7
[02:52:30.244] Max CPU (%):                 85
[02:52:30.244] WorkingSet (MB):             386
[02:52:30.244] Startup Main (ms):           423
[02:52:30.244] First Request (ms):          235.5
[02:52:30.244] Latency (ms):                0.8
[02:52:30.244] Socket Errors:               0
[02:52:30.245] Bad Responses:               0
[02:52:30.245] SDK:                         2.2.0-preview1-007522
[02:52:30.245] Runtime:                     2.1.0-preview2-26225-03
[02:52:30.245] ASP.NET Core:                2.1.0-preview2-30242

Sockets
Before
[02:54:28.433] RequestsPerSecond:           299985
[02:54:28.433] Latency on load (ms):        7
[02:54:28.433] Max CPU (%):                 84
[02:54:28.434] WorkingSet (MB):             372
[02:54:28.434] Startup Main (ms):           376
[02:54:28.434] First Request (ms):          229.2
[02:54:28.434] Latency (ms):                0.8
[02:54:28.434] Socket Errors:               0
[02:54:28.434] Bad Responses:               0
[02:54:28.434] SDK:                         2.2.0-preview1-007522
[02:54:28.434] Runtime:                     2.1.0-preview2-26225-03
[02:54:28.434] ASP.NET Core:                2.1.0-preview2-30242

After
[02:55:24.440] RequestsPerSecond:           349936
[02:55:24.440] Latency on load (ms):        1.4
[02:55:24.440] Max CPU (%):                 84
[02:55:24.440] WorkingSet (MB):             368
[02:55:24.440] Startup Main (ms):           377
[02:55:24.440] First Request (ms):          228
[02:55:24.440] Latency (ms):                0.7
[02:55:24.440] Socket Errors:               0
[02:55:24.440] Bad Responses:               0
[02:55:24.440] SDK:                         2.2.0-preview1-007522
[02:55:24.440] Runtime:                     2.1.0-preview2-26225-03
[02:55:24.440] ASP.NET Core:                2.1.0-preview2-30242

Failures:

OSX: Broken with the known issue
on Windows we have a flaky libuv test:

dotnet.exe : [xUnit.net 00:00:09.1627717]     WriteAsyncWithTokenAfterCallWithoutIsCancelled(maxResponseBufferSize: 1024) [FAIL]
325At C:\Users\appveyor\.dotnet\buildtools\korebuild\2.1.0-preview2-15726\scripts\common.psm1:7 char:5
326+     & $_cmd @args
327+     ~~~~~~~~~~~~~
328    + CategoryInfo          : NotSpecified: ([xUnit.net 00:0...e: 1024) [FAIL]:String) [], RemoteException
329    + FullyQualifiedErrorId : NativeCommandError
330
331[xUnit.net 00:00:09.1632381]       Assert.True() Failure
332[xUnit.net 00:00:09.1633962]       Expected: True
333[xUnit.net 00:00:09.1635380]       Actual:   False
334[xUnit.net 00:00:09.1645863]       Stack Trace:
335[xUnit.net 00:00:09.1658683]         C:\projects\kestrelhttpserver\test\Kestrel.Transport.Libuv.Tests\LibuvOutputConsumerTests.cs(562,0): at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests.LibuvOutputConsumerTests.<>c__DisplayClass16_0.<<WriteAsyncWithTokenAfterCallWithoutIsCancelled>b__0>d.MoveNext()
336[xUnit.net 00:00:09.1660616]         --- End of stack trace from previous location where exception was thrown ---
337[xUnit.net 00:00:09.1662406]         C:\projects\kestrelhttpserver\test\Kestrel.Transport.Libuv.Tests\LibuvOutputConsumerTests.cs(505,0): at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests.LibuvOutputConsumerTests.WriteAsyncWithTokenAfterCallWithoutIsCancelled(Int32 maxResponseBufferSize)
338[xUnit.net 00:00:09.1664034]         --- End of stack trace from previous location where exception was thrown ---
339Failed   WriteAsyncWithTokenAfterCallWithoutIsCancelled(maxResponseBufferSize: 1024)
340Error Message:
341 Assert.True() Failure
342Expected: True
343Actual:   False
344Stack Trace:
345   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests.LibuvOutputConsumerTests.<>c__DisplayClass16_0.<<WriteAsyncWithTokenAfterCallWithoutIsCancelled>b__0>d.MoveNext() in C:\projects\kestrelhttpserver\test\Kestrel.Transport.Libuv.Tests\LibuvOutputConsumerTests.cs:line 562
346--- End of stack trace from previous location where exception was thrown ---
347   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests.LibuvOutputConsumerTests.WriteAsyncWithTokenAfterCallWithoutIsCancelled(Int32 maxResponseBufferSize) in C:\projects\kestrelhttpserver\test\Kestrel.Transport.Libuv.Tests\LibuvOutputConsumerTests.cs:line 505
348--- End of stack trace from previous location where exception was thrown ---
349[xUnit.net 00:00:11.4722859]   Finished:    Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Tests
350[xUnit.net 00:00:00.0049864] xUnit.net VSTest Adapter v2.4.0-beta.1.build3945 (64-bit .NET Core 4.6.26222.07)
351

I believe this is one that @pakrym encountered when porting to the latest pipelines

Linux - Test run aborted without a message, this is pretty scary and I've seen it a few times now.

Also the OSX logs had this:
Log Critical[0]: Unexpected exception in HttpConnection.ProcessRequestsAsync. System.ObjectDisposedException: Safe handle has been closed
   at System.Runtime.InteropServices.SafeHandle.DangerousAddRef(Boolean& success)
   at System.StubHelpers.StubHelpers.SafeHandleAddRef(SafeHandle pHandle, Boolean& success)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.LibuvFunctions.NativeMethods.uv_async_send(UvAsyncHandle handle)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.LibuvFunctions.async_send(UvAsyncHandle handle) in /_/src/Kestrel.Transport.Libuv/Internal/Networking/LibuvFunctions.cs:line 179
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.LibuvThread.Post[T](Action`1 callback, T state) in /_/src/Kestrel.Transport.Libuv/Internal/LibuvThread.cs:line 188
   at System.IO.Pipelines.Pipe.CompleteWriter(Exception exception)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Adapter.Internal.AdaptedPipeline.<WriteOutputAsync>d__15.MoveNext() in /_/src/Kestrel.Core/Adapter/Internal/AdaptedPipeline.cs:line 106
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Adapter.Internal.AdaptedPipeline.<RunAsync>d__14.MoveNext() in /_/src/Kestrel.Core/Adapter/Internal/AdaptedPipeline.cs:line 44
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.HttpConnection.<ProcessRequestsAsync>d__47`1.MoveNext() in /_/src/Kestrel.Core/Internal/HttpConnection.cs:line 178
Log Critical[0]: ConnectionHandler.Execute() 0HLC3A9HCB63L System.Exception: Unexpected critical error. Log Critical[0]: Unexpected exception in HttpConnection.ProcessRequestsAsync. System.ObjectDisposedException: Safe handle has been closed
   at System.Runtime.InteropServices.SafeHandle.DangerousAddRef(Boolean& success)
   at System.StubHelpers.StubHelpers.SafeHandleAddRef(SafeHandle pHandle, Boolean& success)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.LibuvFunctions.NativeMethods.uv_async_send(UvAsyncHandle handle)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.LibuvFunctions.async_send(UvAsyncHandle handle) in /_/src/Kestrel.Transport.Libuv/Internal/Networking/LibuvFunctions.cs:line 179
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.LibuvThread.Post[T](Action`1 callback, T state) in /_/src/Kestrel.Transport.Libuv/Internal/LibuvThread.cs:line 188
   at System.IO.Pipelines.Pipe.CompleteWriter(Exception exception)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Adapter.Internal.AdaptedPipeline.<WriteOutputAsync>d__15.MoveNext() in /_/src/Kestrel.Core/Adapter/Internal/AdaptedPipeline.cs:line 106
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Adapter.Internal.AdaptedPipeline.<RunAsync>d__14.MoveNext() in /_/src/Kestrel.Core/Adapter/Internal/AdaptedPipeline.cs:line 44
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.HttpConnection.<ProcessRequestsAsync>d__47`1.MoveNext() in /_/src/Kestrel.Core/Internal/HttpConnection.cs:line 178 ---> System.ObjectDisposedException: Safe handle has been closed
   at System.Runtime.InteropServices.SafeHandle.DangerousAddRef(Boolean& success)
   at System.StubHelpers.StubHelpers.SafeHandleAddRef(SafeHandle pHandle, Boolean& success)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.LibuvFunctions.NativeMethods.uv_async_send(UvAsyncHandle handle)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.LibuvFunctions.async_send(UvAsyncHandle handle) in /_/src/Kestrel.Transport.Libuv/Internal/Networking/LibuvFunctions.cs:line 179
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.LibuvThread.Post[T](Action`1 callback, T state) in /_/src/Kestrel.Transport.Libuv/Internal/LibuvThread.cs:line 188
   at System.IO.Pipelines.Pipe.CompleteWriter(Exception exception)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Adapter.Internal.AdaptedPipeline.<WriteOutputAsync>d__15.MoveNext() in /_/src/Kestrel.Core/Adapter/Internal/AdaptedPipeline.cs:line 106
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Adapter.Internal.AdaptedPipeline.<RunAsync>d__14.MoveNext() in /_/src/Kestrel.Core/Adapter/Internal/AdaptedPipeline.cs:line 44
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.HttpConnection.<ProcessRequestsAsync>d__47`1.MoveNext() in /_/src/Kestrel.Core/Internal/HttpConnection.cs:line 178
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Testing.TestApplicationErrorLogger.Log[TState](LogLevel logLevel, EventId eventId, TState state, Exception exception, Func`3 formatter) in /_/test/shared/TestApplicationErrorLogger.cs:line 61
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.KestrelTrace.Log[TState](LogLevel logLevel, EventId eventId, TState state, Exception exception, Func`3 formatter) in /_/src/Kestrel.Core/Internal/Infrastructure/KestrelTrace.cs:line 198
   at Microsoft.Extensions.Logging.LoggerExtensions.LogCritical(ILogger logger, EventId eventId, Exception exception, String message, Object[] args)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.HttpConnection.<ProcessRequestsAsync>d__47`1.MoveNext() in /_/src/Kestrel.Core/Internal/HttpConnection.cs:line 182
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.ConnectionHandler.<Execute>d__6.MoveNext() in

There is something wrong with this (in principle) :(
Numbers are good though :)

There is something wrong with this (in principle) :(
Numbers are good though :)
I think corefx needs a fix

So I talked to @davidfowl about the purpose of double dispatching, and his theory is that without this change, a single socket could dominate the usage of the limited I/O threads for as long as there's data already available in the OS's input buffer by the time ReceiveAsync is called.
I figured if that's the case, certain connections must be starving others of resources in dev, and that would mean this change should reduce wrk's reported standard deviation for latency. It looks like @davidfowl is on to something, because the latency numbers for the Socket transport are immensely better with this PR.
Json Windows
Sockets
Before
[01:17:11.217] Starting 'Wrk' worker
[01:17:11.217] Measuring first request latency on http://<IP_ADDRESS>:5000/json
[01:17:11.219] 1.5123 ms
[01:17:11.219] Measuring subsequent requests latency
[01:17:11.227] 0.7173 ms
[01:17:11.227] wrk -H "Host: localhost" -H "Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7" -H "Connection: keep-alive" --latency -d 15 -c 256 --timeout 8 -t 32  http://<IP_ADDRESS>:5000/json
[01:17:11.290] Running 15s test @ http://<IP_ADDRESS>:5000/json
[01:17:11.290]   32 threads and 256 connections
[01:17:26.398]   Thread Stats   Avg      Stdev     Max   +/- Stdev
[01:17:26.408]     Latency     7.18ms   93.79ms   2.64s    99.32%
[01:17:26.408]     Req/Sec     9.29k   503.29    14.79k    85.89%
[01:17:26.408]   Latency Distribution
[01:17:26.408]      50%    0.85ms
[01:17:26.408]      75%    0.87ms
[01:17:26.408]      90%    0.90ms
[01:17:26.408]      99%   10.06ms
[01:17:26.408]   4439914 requests in 15.10s, 643.60MB read
[01:17:26.408] Requests/sec: 294054.23
[01:17:26.408] Transfer/sec:     42.63MB
[01:17:26.518] Failed to parse bad responses
[01:17:26.518] Failed to parse bad responses
[01:17:27.113] Deleting job [ID:258 Connections:256 Threads:32 Duration:15 Method:GET ServerUrl:http://<IP_ADDRESS>:5000/json Headers:{"Host":"localhost","Accept":"application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7","Connection":"keep-alive"}]

After
[01:18:44.580] Starting 'Wrk' worker
[01:18:44.580] Measuring first request latency on http://<IP_ADDRESS>:5000/json
[01:18:44.581] 1.0201 ms
[01:18:44.581] Measuring subsequent requests latency
[01:18:44.587] 0.6895 ms
[01:18:44.587] wrk -H "Host: localhost" -H "Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7" -H "Connection: keep-alive" --latency -d 15 -c 256 --timeout 8 -t 32  http://<IP_ADDRESS>:5000/json
[01:18:44.650] Running 15s test @ http://<IP_ADDRESS>:5000/json
[01:18:44.650]   32 threads and 256 connections
[01:18:59.752]   Thread Stats   Avg      Stdev     Max   +/- Stdev
[01:18:59.755]     Latency     1.36ms   14.06ms 865.28ms   99.56%
[01:18:59.755]     Req/Sec    11.07k   621.43    15.27k    89.95%
[01:18:59.755]   Latency Distribution
[01:18:59.755]      50%  706.00us
[01:18:59.755]      75%  741.00us
[01:18:59.755]      90%  786.00us
[01:18:59.756]      99%    0.99ms
[01:18:59.756]   5265427 requests in 15.10s, 763.27MB read
[01:18:59.756] Requests/sec: 348722.18
[01:18:59.756] Transfer/sec:     50.55MB
[01:18:59.887] Failed to parse bad responses
[01:18:59.887] Failed to parse bad responses
[01:19:00.452] Deleting job [ID:260 Connections:256 Threads:32 Duration:15 Method:GET ServerUrl:http://<IP_ADDRESS>:5000/json Headers:{"Host":"localhost","Accept":"application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7","Connection":"keep-alive"}]

So not only did this chage reduce the standard deviation for latency from 93.79ms to 14.06ms, it also reduced the average latency from 7.18ms to 1.36ms.
The 99th latency percentile is even more impressive. The 50/75/90th percentiles are slightly better than before (note the difference between ms and us), but the 99th percentile went from 10.06ms to 0.99ms! It's interesting that the 99th percentile for latency is still lower than the average after than this change. It really shows that my stats prof was right about the mean being heavily impacted by outliers.

@davidfowl @halter73 very interesting find 👍

Do we need more IO threads then?

Bumping up IO threads doesn't solve the problem. We just need to efficiently get off the IO thread if the next read is synchronous.
@halter73 As an alternative, we could try dispatching if we're not on a thread pool thread and IO completes synchronously.

cc: @vancem @geoffkizer

@vancem we're going to be taking https://github.com/aspnet/KestrelHttpServer/pull/2368 instead


Rework program parameter

Description of the issue
program parameter is defined as: A program parameter is a variable that influences the output of a calculation in the program but has no meaning outside of the program.
But it is a subclass of information content entity and not as variable.
Further, at least to me this, the part has no meaning outside of the program is problematic. That is the opposite of the common understanding of a parameter. Usually program parameter are arguments that determine the behaviour of a program or a program function, c.f. https://en.wikipedia.org/wiki/Parameter_(computer_programming)
Ideas of solution
If you already have ideas for the solution describe them here
Workflow checklist

[ ] I discussed the issue with someone else than me before working on a solution
[ ] I already read the latest version of the workflow for this repository
[ ] The goal of this ontology is clear to me

I am aware that

[ ] every entry in the ontology should have a definition
[ ] classes should arise from concepts rather than from words

@OpenEnergyPlatform/oeo-domain-expert-energy-modelling : Any thougths on this issue?

How about:
A program parameter is a variable in a software
Not knowing the specific program or software we can't assume it has an influence on its output. Hence, I would omit this part.
All other concepts in the proposed solution are already defined in the OEO and the definition remains universal.

I like your proposal.

I can go ahead and implement it if no one objects.

Please do so.


BUG: 'deselectAll' doesn't work

$("select").selectpicker('deselectAll')  <= doesn't work.
Problem is: .filter(':visible') in deselectAll function.

The Deselect All Worked perfect for the bootstrap select once the Fix 921 is applied.Thanks for your help casey.
Regards,
Satish.


about what is cached

Hi, the text says "At present the service only does query caching for the initial page that you land on."   What if the last page I visited was Page 2?  Would Page 2 be the new cached page, because it will be the page I will first see when I reopen the report?  Thanks!

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

ID: c13962e5-2d39-a6cd-274c-2317477acc22
Version Independent ID: 099fe9f8-0c2b-b359-b761-251587a0ab76
Content: Query caching in Power BI Premium - Power BI
Content Source: powerbi-docs/power-bi-query-caching.md
Service: powerbi
Sub-service: powerbi-service
GitHub Login: @KesemSharabi
Microsoft Alias: kesharab

Thanks for your comment, @asocorro . We’ve forwarded your feedback to the writer, who should respond to this thread shortly. Thanks!

Hi @asocorro,
Here's the response I got from one of our experts:
After caching is turned on, we don’t change which page is cached, regardless of which one was the last you visited. If you need to change which one is cached, simply disable the caching feature to drop the cache information.
Hope this helps,
Kesem


Reopening Project in Sublime Text

When I close Sublime Text after using Javatar, upon reopening Sublime Text the Javatar Project Folder is automatically opened in the sidebar. Is there a setting to turn this behavior off?

Yes, you could set the allow_project_restoration to false. This way, your project data will not store and restore upon save/load the files.
Please mind that Sublime Text's default behaviour is not store project data on load except you explicitly save it as project yourself.


[SPARK-10598][DOCS]

Comments preceding toMessage method state: "The edge partition is encoded in the lower

30 bytes of the Int, and the position is encoded in the upper 2 bytes of the Int.". References to bytes should be changed to bits.

This contribution is my original work and I license the work to the Spark project under it's open source license.

Can one of the admins verify this patch?

LGTM

Merging into master 1.5.

Actually, for some reason I couldn't merge this patch. @srowen do you want to try?

Hm failed for me too. I'll investigate if I get a sec tonight, def. tomorrow if not

I just merged this. Thanks!


Bypass scheduled heartbeat with state changes

This is really important to do because it's absolutely idiotic not to be sending a heartbeat prematurely when there's any kind of state change to the peer, it's environments, or the containers in those environments like stopping and starting them. Anything that needs to be updated in the Hub should cause premature send of heartbeat when changed via the SS console.

Made this critical because it can lead to many usability problems and there's absolutely no reason why the user should suffer. This is just due to lack of programmer and design foresight. Why should the user wait to see updates or worse yet why should the user feel things are broken because things do not sync up at the right time.


Merge main into release/MAPL-v3 to get hot fix

Types of change(s)

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

Checklist

[ ] Tested this change with a run of GEOSgcm
[ ] Ran the Unit Tests (make tests)

Description
Related Issue

Closing as we need to go first from main to develop. Then to MAPL3.


Update a change in a related column

Changes to foundset columns are also done to the db as usual, but there is no onDataChange event for related columns to attach a saveData. The only way I found is to add a button to saveData but this can cause multiple changes to be lost if the user does not click that button. I tried to run that method under onColumnDataChange event but it is not fired.
What is the best way to write related column changes into the db using Data Grid?

Hi Juan,
Can you clarify - you are editing a related data provider in the grid. And the data change event is not fired? Sounds like it could be a bug.

Hi Sean,

Working with Servoy 8.3.1 and NG-Grids, I place a Data Grid with a couple of columns from Orders and Company name from a relation from Orders to Customers.
I set as modifiable one of the columns of Orders and the Company Name from Customers.
I run and if I change the freight that is the modifiable column from the foundset of the form, the data is not changed into the db. I added a SaveData button but does not update the database. I also tried with the OnColumnDataChange event in the Grid but SaveData does not change the db.

Working with Servoy 8.3 and NG-Grids, when I modify a cell that belongs to the current foundset, the data is updated inmediately into the database. When I modify a cell from a related table, I need to have a SaveData Button, and then it saves it. The OnColumnDataChange event does not update the db.

In summary, it would be nice that the NG-Grids work like Table component where foundset data is updated when you finish or move to other record, and related data can be saved using SaveData (if you can update it the same as the foundset just moving to other record would be great). But in NG-Grids there is no OnDataChange event and the columndatachange does not work for this.

Hi Marius,
Please take a look at this short video showing the problem
https://youtu.be/ApmN0PENd2w
AutoSave was not changed, so it is true

Hi Juan,
You use servoy 8.3.0rc1(3201) and aggrid version 2.0.0rc which is supported only from 8.3.1 (build 3205). If you delete the zip and try to download this version of aggrid with WebPackageManager (right-click on the solution in solex) this will not appear in there. (1.0.2 will be latest).

Hi Marius,
The 8.3.1 rc1 we were using was downloaded (exe) from https://forum.servoy.com/viewtopic.php?f=1&t=22228 and it seems the installer in that link was not updated.
We just updated now to the released 8.3.1  and now works fine!
There´s just one important thing to improve. If you work with related columns based on a relation (orders_to_customers.company) and make that editable, that change is not saved to the database and there is not event that works for that. The only way is to add an external button or option to Save Data. Having an onDataChange for the column or the hole grid would be fine.

as far as i know that should be saved when you press somewhere on the screen
or change the selection on the main
it will not save right away when you just make changes and jump to the next colum, servoy never did change then
(and if you have autoSave == false then it will not save anyway in the above scenario's you need the save button

also grouping grid has an event for that that should be called:
https://github.com/Servoy/aggridcomponents/blob/master/aggrid/groupingtable/groupingtable.spec#L103
that oncolumndatachange should be called when you make a change (related or not)

That´s the case, I call SaveData at oncolumndatachange event but does not save it to the db. I need to click on the form, outside of the Grid to update. I think adding an event in the grid to do that would give more control to update the changes made by the user.

oncolumndatachange is called as soon as you go out of editing the cell (tab-out, click-out, enter), but
it is called before updating the data on the server, because it can return false, in which case it should not send anything; the callback do get the old/new values as params

ah, I see now, you want to call saveData in the callback? well yes, that is a bit too early to have the cell data already sent to the db ...

Hi Gabi,
The db is updated when you click outside the grid and also with Enter key (sometimes you need to click on another row, not just Enter). Tab inside the grid does not update. And using up and down keys would be nice to update too.


Bridge goes offline when I close the SSH Terminal

Hello,
I have a problem, when I close the SSH Connection (via Putty) the bridge goes offline, so when I send help then, I don't get an answer. But when I connect via SSH again and type npm run start it works again.
How can I solve that problem, so that I can turn of my computer?
Thanks for help

you can use tmux, screen, systemd or multiple other methods. This question is out-of-acope for this repository, please research how to do basic system administration

2021 21:06:54 L-S-2020<EMAIL_ADDRESS>

Hello,
I have a problem, when I close the SSH Connection (via Putty) the bridge goes offline, so when I send help then, I don't get an answer. But when I connect via SSH again and type npm run start it works again.
How can I solve that problem, so that I can turn of my computer?
Thanks for help
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub[https://github.com/matrix-discord/mx-puppet-discord/issues/128], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AASSEVEWJC7FUR6BQCF6KUDS7LF5ZANCNFSM4XXCBB5Q].
[data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAAArSURBVHic7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAAAA+DFFIAAEctgHwAAAAAElFTkSuQmCC###24x24:true###][Sledovací obrázek][https://github.com/notifications/beacon/AASSEVCULTZ272W47P2RBT3S7LF5ZA5CNFSM4XXCBB52YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4MCBVWJQ.gif]


Scale selection

As a developer I want to configure a list with selectable scales.
As a user I want to select a scale from a pre-configured list to zoom in/out the map.
Acceptance criteria:

A developer can configured multiple scales in the package
Scales are visible in and selectable from the list
The GUI can be placed at a placeholder in the app
The GUI consists of a select box which contains a list of all configured scales
After selecting a scale, the list is closed / hidden and the map scale synchronized with it
The scale viewer #24 is updated too

Hint:
While zooming the map (mousewheel, zoom in/out buttons, etc.) the scale selection is synchronized with the actual scale.

PR: #332


Access to data in private channels

Regarding the use of Private channels the only comments regarding access include:

"Only the users on the team who are owners or members of the private channel can access the channel." and,
Using a power shell script to find the SharePoint sites of the private channels and channel messages.

I cannot find any information about who has access to the list of private channel SharePoint sites. Also, is there no admin role that can view private channels at all? If only the people who have the rights to create private channels can see the channels how is a central technology service provider able to support them? Find the data? It appears to be impossible to find if you do not have the "global reader admin" role.
Please advise on who can get access to the use of private channels within their organization.
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: ce34b12b-aa50-608b-bbfa-a1fb4bb79f8d
Version Independent ID: 9ddeb6f4-f30a-1e72-fc94-ae66def91f40
Content: Private channels in Microsoft Teams - Microsoft Teams
Content Source: Teams/private-channels.md
Service: msteams
GitHub Login: @LanaChin
Microsoft Alias: v-lanac

Hello @CarissaB117
How are you? hope you are doing good.

I cannot find any information about who has access to the list of private channel SharePoint sites.

I was able to list the private channel's sites using Get-SPOSite, as a Global Admin that hasn't access to the actual site, does that answers your question?

Hello @CarissaB117 checking back to understand if you could see my last message, thanks

Hello @CarissaB117 checking back to understand if you could see my last message, thanks

Yes I received your message, thank you!
Carissa Bourdon
Records and Information Management Officer
(P)<PHONE_NUMBER> ***NEW NUMBER
“Perfection is not possible, but improvement is within everyone’s reach.”  - Edie Hedlin
From: Andres Mariano Gorzelany<EMAIL_ADDRESS>Sent: Monday, January 4, 2021 2:00 PM
To: MicrosoftDocs/OfficeDocs-SkypeForBusiness<EMAIL_ADDRESS>Cc: Bourdon, Carissa M (DFW<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/OfficeDocs-SkypeForBusiness] Access to data in private channels (#6309)
This message has originated from an External Source. Please use caution when opening attachments, clicking links, or responding to this email. Contact your desktop support or IT security staff for assistance and to report suspicious messages.
Hello @CarissaB117https://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCarissaB117&data=04|01|carissa.bourdon%40dfw.wa.gov|866e1e8da28447a29ed108d8b0fc22db|11d0e217264e400a8ba057dcc127d72d|0|0|637453944245657353|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=gIg93%2BrHUraNhpVtJ%2BW0SmNX59%2BSOH9yE%2FmkSVWRDkQ%3D&reserved=0 checking back to understand if you could see my last message, thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2FOfficeDocs-SkypeForBusiness%2Fissues%2F6309%23issuecomment-754247202&data=04|01|carissa.bourdon%40dfw.wa.gov|866e1e8da28447a29ed108d8b0fc22db|11d0e217264e400a8ba057dcc127d72d|0|0|637453944245657353|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=YgFOOE5eia4CjLuudg0kSzSXVthWGUvj12FOO4Ut%2FuU%3D&reserved=0, or unsubscribehttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAPUINJEPVSJN4JLGB3HP3E3SYI27PANCNFSM4UNZE2RA&data=04|01|carissa.bourdon%40dfw.wa.gov|866e1e8da28447a29ed108d8b0fc22db|11d0e217264e400a8ba057dcc127d72d|0|0|637453944245667309|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=KcfT7BcBtYVf7jAHAduc4OBtsyyiXTpHtva8gra6TYg%3D&reserved=0.

Yes I received your message, thank you!
Carissa Bourdon
Records and Information Management Officer
(P)<PHONE_NUMBER> ***NEW NUMBER
“Perfection is not possible, but improvement is within everyone’s reach.”  - Edie Hedlin
From: Andres Mariano Gorzelany<EMAIL_ADDRESS>Sent: Monday, January 4, 2021 2:00 PM
To: MicrosoftDocs/OfficeDocs-SkypeForBusiness<EMAIL_ADDRESS>Cc: Bourdon, Carissa M (DFW<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/OfficeDocs-SkypeForBusiness] Access to data in private channels (#6309)
This message has originated from an External Source. Please use caution when opening attachments, clicking links, or responding to this email. Contact your desktop support or IT security staff for assistance and to report suspicious messages.
Hello @CarissaB117https://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCarissaB117&data=04|01|carissa.bourdon%40dfw.wa.gov|866e1e8da28447a29ed108d8b0fc22db|11d0e217264e400a8ba057dcc127d72d|0|0|637453944245657353|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=gIg93%2BrHUraNhpVtJ%2BW0SmNX59%2BSOH9yE%2FmkSVWRDkQ%3D&reserved=0 checking back to understand if you could see my last message, thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2FOfficeDocs-SkypeForBusiness%2Fissues%2F6309%23issuecomment-754247202&data=04|01|carissa.bourdon%40dfw.wa.gov|866e1e8da28447a29ed108d8b0fc22db|11d0e217264e400a8ba057dcc127d72d|0|0|637453944245657353|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=YgFOOE5eia4CjLuudg0kSzSXVthWGUvj12FOO4Ut%2FuU%3D&reserved=0, or unsubscribehttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAPUINJEPVSJN4JLGB3HP3E3SYI27PANCNFSM4UNZE2RA&data=04|01|carissa.bourdon%40dfw.wa.gov|866e1e8da28447a29ed108d8b0fc22db|11d0e217264e400a8ba057dcc127d72d|0|0|637453944245667309|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=KcfT7BcBtYVf7jAHAduc4OBtsyyiXTpHtva8gra6TYg%3D&reserved=0.

@CarissaB117 Please let us know if you still have any question regarding the issue you have raised initially.
The issue is being closed since your question seems to be answered. Feel free to re-open this issue if you feel that it hasn't been answered or that there are further suggestions to improve the documentation itself.
Thanks.

@CarissaB117 Please let us know if you still have any question regarding the issue you have raised initially.
The issue is being closed since your question seems to be answered. Feel free to re-open this issue if you feel that it hasn't been answered or that there are further suggestions to improve the documentation itself.
Thanks.

I am not able to download file from private channel by Graph API following https://docs.microsoft.com/en-us/graph/api/driveitem-get-content?view=graph-rest-1.0&tabs=http
So in post the attachment has Reference content type, but i cannot download by drive id and item id or by drive id and item path from private site
Does anyone see the same ?


Getting api to return url for dsp report

Dsp reports are huge, typically around 17m. It does not make sense to download it and pass it around. Change to have API return the url to the report and let the dag handle data downloading.

Argo CI comment: Looks good to me! and your package is here 0.0.0-dev2470c8d


Players should not have the option to sell coins

A continuation of discussion from https://github.com/delaford/game/issues/95#issuecomment-537799901

What is the current behavior?
When in a shop, a player is presented with the option to sell coins to a shop, even though it is prohibited.
If the current behavior is a bug, please provide the exact steps to reproduce.

Have coins in your inventory
Start a trade with a store
Open the context menu on coins
The option to sell coins is presented

What is the expected behavior?
There should be no option to sell coins
Additional context
Thinking about the best way to remedy this. Right now the actions for coins come from it being defined as a resource. If there are also going to be quest items that are unsellable, it may make sense to define a new type of preset which doesn't include sell. Or maybe it makes sense to have the ability to pass a parameter to presetActions which will contains actions to be removed from the resulting array. Another way would be to check for the item being prohibited in the frontend (will it see that?) and just not display the actions there, but that seems the clunkiest method to me.

The reason I leave the Sell option in is because it's less work and you just prohibit it in the backend and spit out a "Sorry, can't sell" message. I do get where you're going. Going with this approach would be more work on the front-end too.
There is no expected behavior but from what I've seen many games either show it or don't. Right now, we are showing it but not allowing to sell it. Which i think keeps the flow going like I said.

I know this is a minor thing but I went ahead and took a crack at it to see how everything worked.


Transforming the readme into a web application

I've seen the way the Elixir companies repository is set up and I find it more interesting that way to interact and submit a company. I feel that building an equivalent with an F#-based stack would make a worthwhile contribution to the repository.

Just thought about building an example FuncUI App for FSharp-Companies.
Providing Job information in a more structured format would make this a lot simpler (CSV/JSON/XML).

@JaggerJo From your perspective, how can a desktop application be easier for submitting F# companies than a web application embedded directly in this repo? I'm trying see to see the trade-offs of both ideas. Can you give me the pros and cons of a cross-platform desktop app here and I'll list the pros and cons of a web app? If we have any other idea, we do the same for the them and pick the best overall one. How does that sound?

@Kavignon The App was only meant as an Example for FuncUI, that would also access the same date as your web app.
I have no doubt a web app is the better solution here.

@JaggerJo I have an idea for you. We can create different kinds of implementation and environments and get the data from this repo. We linked this environment inside the repo and we can decide to show off different kind of project samples built with F# such as

Fabulous
FuncUI
SAFE
Bolero

How does that sound? The interested party will have the luxury of deciding which platform to target so they can add data to this repo but the apps are elsewhere. They can also be here. I jutst want to make sure the distinction is clear and it's easy to understand they're to be perceived as doc.

sounds good 👍

@JaggerJo I am going to start working on the SAFE app for the read me this week. Do you think you can start working on the FuncUI one or act as an expert for review? When done with SAFE, I could do FuncUI but it would be great to have you review the work I'll do!

sure, I’m happy to do so. Just @ me 😉


Add me my profile to LinkFree

I am Kaiwalya Koparkar, I would like to add my profile to linkfree

you can add your profile described here

Thank you @schmelto, Done :+1:


I had the same problem.

I could see that this could happen if your are on a GPU that does not support compute shaders (i.e. your GPU is more than 10 years old), or if Unity editor is set to a platform that does not support compute shaders (e.g. WebGL). What is the current editor platform? (indicated in the title bar)

Thank you very much! In my case, the editor is 2022.3.2f1, which is unlikely to be a course of error. I finally solved the problem by simply unchecking&checking the game object because I noticed that the err was located in initialization of the code. Hope it works.

I met the same problem, and my editor is 2022.3.17f1c1. The solution from DroShown is useful.


Notify a new release on running danger-swift

Some tools (e.g. carthage, gh, etc...) notify when new version is released.
I added a version checker to fetch a latest release in GitHub, and notify if running version is older than latest.

@f-meloni

If you merge master CI should pass.

There is a problem to build SwiftLint on Linux (5.5.2), which makes CI fail.
Latest version of SwiftLint may be resolve it and I made another PR.
https://github.com/danger/swift/pull/509


Update Elixir.gitignore

Reasons for making this change:
Elixir code compiled into .beam files shouldn't be checked in to git. These are typically located in the _build folder, but in the case of Elixir files compiled with elixirc, or iex's c helper function, these files can be created elsewhere.
Links to documentation supporting these rule changes:
The creation of BEAM files is briefly touched upon in the Elixir module docs

@rpowelll thanks!


License?

I like the look of your project. Happy to contribute even… but what's the license?
Can I recommend zlib?
https://en.wikipedia.org/wiki/Zlib_License
https://opensource.org/licenses/Zlib

Hey. No objections. I'm happy to apply the license file if you send me the pull request. Thanks.

Great, thanks. My next contribution will focus on generator support.


Turbofish breaks method chaining

Turbofish syntax breaks method chaining alignment:
let foo = bar.baz()
             .quux::<Type>()
        .quuz();

Hi @rabite0,
Is rust-indent-method-chain set?


Feature: add global settings for fonts and logos / logo on orga-level could be changed

Currnet situation:
Currently it is not possible to change the logo on the Organization-level. Also it is not possible to set a logo and fonts for all meetings as a default value.
Expected behavior:

[ ] The logo on the organization level could be changed
[ ] it is possible to set a logo and fonts as default values for all meetings.

Reason:
The reason for this feature request is, that most organizations have a corporate design which is organization wide and used on every level. With this feature an organization admin could set logos and fonts as defaults values for all meetings according to the CD.
How it could be implemented:

File menu is needed on organization level. (This is done by one of the next updates)
create different checkboxes in three-dot-menu behind uploaded files. same like the ones in meeting, only with different content.
Checkboxes for images:

[ ] organization level logo
[ ] set logo as global default

Checkboxes for fonts:

[ ] use font as global for .... (here we need several options like the ones in a meeting; like bold etc.)

After the files are set global, they are copied in a new meeting. This is necessary to change them on meeting level and switch back.

Important:
Most importan is the possibility to change the logo on organization level. The global setting would be a nice quality of live improvement for large organizations.

This can probably be done by using the token functionality in orga-files without requiring any new backend functionality:
The client could use tokens like global-default-font, orga-font, global-default-logo and orga-logo to denote these files.
This would make them accessible to anyone, even those that are not logged in. (Which means that we could even use it on the login pages)


HIVE-25048: Refine the start/end functions in HMSHandler

What changes were proposed in this pull request?

Why are the changes needed?

Does this PR introduce any user-facing change?

How was this patch tested?

Hey, @belugabehr, could you please take a look if you have a sec?


A platformer where you have to go get

How do you play your game?
WASD to move, get keys and coins, then go to the portal. If you die, you have to restart from the beginning!

Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Image (If an image is used)

[ ] The image is in the /games/img directory.
[ ] The name of the image matches the name of your file.

Thanks for your PR!

Really cool platformer game with the coin limit twist. In the future it would be great to have more game mechanics like power-ups! If you're a teenager, and you haven't already received a Sprig device, feel free to fill out this form to receive one! Also, feel free to join Hack Club's Slack in the #sprig channel to share your creation w/ others!

Cool, thank you so much!


Upgrade Snakeyml and Jackson versions

Description
Bump Snakeyml to 1.32 and Jackson to 2.13.4 to address the CVE: https://nvd.nist.gov/vuln/detail/CVE-2022-25857
Issues Resolved
N/A
Check List

[x] New functionality includes testing.

[x] All tests pass

[x] New functionality has been documented.

[x] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Can you raise the PR against main instead? We can then backport it all the branches.

Codecov Report

Merging #572 (b3113ff) into 1.3 (e18d46a) will decrease coverage by 4.01%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                1.3     #572      +/-   ##
============================================
- Coverage     74.45%   70.44%   -4.02%
+ Complexity     1002      960      -42
============================================
  Files           141      141
  Lines          4584     4584
  Branches        506      506
============================================
- Hits           3413     3229     -184
- Misses          855     1029     +174
- Partials        316      326      +10

Impacted Files
Coverage Δ

...rch/replication/action/status/ShardInfoResponse.kt
35.29% <0.00%> (-56.31%)
:arrow_down:

.../replication/action/replay/ReplayChangesRequest.kt
50.00% <0.00%> (-50.00%)
:arrow_down:

.../action/status/TransportReplicationStatusAction.kt
79.34% <0.00%> (-18.48%)
:arrow_down:

...lication/action/status/TranportShardsInfoAction.kt
83.33% <0.00%> (-16.67%)
:arrow_down:

...ch/replication/task/index/IndexReplicationState.kt
51.66% <0.00%> (-15.00%)
:arrow_down:

...ication/action/setup/TransportSetupChecksAction.kt
59.52% <0.00%> (-14.29%)
:arrow_down:

...tion/action/replay/TransportReplayChangesAction.kt
68.47% <0.00%> (-11.96%)
:arrow_down:

...ication/seqno/RemoteClusterRetentionLeaseHelper.kt
80.00% <0.00%> (-11.67%)
:arrow_down:

...tion/repository/RemoteClusterMultiChunkTransfer.kt
90.24% <0.00%> (-9.76%)
:arrow_down:

.../replication/metadata/store/ReplicationMetadata.kt
62.96% <0.00%> (-8.65%)
:arrow_down:

... and 17 more

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


ErrorHandler still crashing on CouchConnectionError

We still see this component going down from time to time, even though it should not crash on (CouchConnectionError, HTTPException) exceptions...
I made a couple of nasty changes to ErrorHandlerPoller.py in vocms0303 :)
BTW, here is an error message/traceback from vocms0303 - running the original code -:
2016-09-19 10:18:17,874:140277928490752:INFO:ErrorHandlerPoller:This operation will take some time...
2016-09-19 10:19:29,858:140277928490752:ERROR:ErrorHandlerPoller:Caught unexpected exception in ErrorHandler
Traceback (most recent call last):
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 362, in algorithm
    self.handleErrors()
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 300, in handleErrors
    self.handleRetryDoneJobs(jobList)
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 259, in handleRetryDoneJobs
    self.exhaustJobs(jobList)
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 126, in exhaustJobs
    self.handleACDC(jobList)
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 185, in handleACDC
    self.dataCollection.failedJobs(loadList)
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/Database/CouchUtils.py", line 53, in wrapper
    return funcRef(x, *args, **opts)
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/ACDC/DataCollectionService.py", line 99, in failedJobs
    job.get("owner", "cmsdataops"))
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/ACDC/CouchService.py", line 71, in newOwner
    userInstance = makeUser(group, user, self.url, self.database)
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/GroupUser/User.py", line 93, in makeUser
    group.connect()
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/GroupUser/CouchObject.py", line 88, in connect
    raise CouchConnectionError(msg)
CouchConnectionError
2016-09-19 10:19:29,936:140277928490752:ERROR:BaseWorkerThread:Error in worker algorithm (1):
Backtrace:
  <WMComponent.ErrorHandler.ErrorHandlerPoller.ErrorHandlerPoller instance at 0x7f95085c8950> ErrorHandlerException
Message: Caught unexpected exception in ErrorHandler

    ModuleName : WMComponent.ErrorHandler.ErrorHandlerPoller
    MethodName : algorithm
    ClassInstance : None
    FileName : /data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py
    ClassName : None
    LineNumber : 372
    ErrorNr : 0

Traceback:
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 362, in algorithm
    self.handleErrors()

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 300, in handleErrors
    self.handleRetryDoneJobs(jobList)

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 259, in handleRetryDoneJobs
    self.exhaustJobs(jobList)

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 126, in exhaustJobs
    self.handleACDC(jobList)

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 185, in handleACDC
    self.dataCollection.failedJobs(loadList)

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/Database/CouchUtils.py", line 53, in wrapper
    return funcRef(x, *args, **opts)

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/ACDC/DataCollectionService.py", line 99, in failedJobs
    job.get("owner", "cmsdataops"))

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/ACDC/CouchService.py", line 71, in newOwner
    userInstance = makeUser(group, user, self.url, self.database)

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/GroupUser/User.py", line 93, in makeUser
    group.connect()

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/GroupUser/CouchObject.py", line 88, in connect
    raise CouchConnectionError(msg)

  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMCore/WorkerThreads/BaseWorkerThread.py", line 172, in __call__
    self.algorithm(parameters)
  File "/data/srv/wmagent/v1.0.19.patch1/sw/slc6_amd64_gcc493/cms/wmagent/1.0.19.patch1/lib/python2.7/site-packages/WMComponent/ErrorHandler/ErrorHandlerPoller.py", line 372, in algorithm
    raise ErrorHandlerException(msg)

2016-09-19 10:19:29,936:140277928490752:INFO:Harness:>>>Terminating worker threads

where we can clearly see the exception of type CouchConnectionError, which I don't get why it doesn't fall on the first except block
https://github.com/dmwm/WMCore/blob/master/src/python/WMComponent/ErrorHandler/ErrorHandlerPoller.py#L363

Since you have restarts on cron job, for the time being should I just inform the Operational Support group to report, but not restart anything with the agents?  Are there components they should restart?  Where do you want them to report these issues to?
Jen

The automatic restart is set only for ErrorHandler (this component was getting stuck with no activity some time ago). So, you can keep restarting anything that crashes (even ErrorHandler, if you want, though it's not needed).
About reporting issues, you can create a GH issue everytime problems arise and a developer needs to look at it, then if it happens again, there is no need to update the issue (unless it's hitting production very badly)

 ErrorHandler still crashing on CouchConnectionError

I haven't seen this issue for quite some time now, so closing it.


variable parameter in Jenkins pipeline

Is ist possible to replace the parameter of an additional argument with a variable when invoking dependency check in a jenkins pipeline?
E. g. the path to a suppression file looks like this at the moment and works perfectly well:
dependencyCheck additionalArguments: --suppression /test/suppression.xml'
But since I want to use a shared library in jenkins the path should be replaced with a placeholder that is filled with a value when the shared library step is called. So the parameter of the suppression-argument should look something like this:
--suppression "${suppressionFile}"
Do I just fail at the syntax here or is this not possible?
Thanks

Of course, per the Jenkins documentation, environment variables are available via the env variable which can be used anywhere in the pipeline.
https://jenkins.io/doc/book/pipeline/jenkinsfile/#using-environment-variables
So, something like env.suppressionFile or ${env.suppressionFile} is what you want. You'll obviously need to specify the value of suppressionFile prior to using it.

Thank you. I use a scripted pipeline so I tried the withEnv step. Setting it up an echoing it works well:
withEnv (['file=suppressionGlobal.xml']){     echo "${env.file}" } --> suppression.xml
but when I want to use the variable as an parameter for the additionalArguments it does not work: neither
dependencyCheck additionalArguments:' --suppression "${env.file}"'  nor
dependencyCheck additionalArguments: '--suppression "${file}"'
--> This leads to a warning/error
Suppression file does not exist [...] Unable to create an Input Stream for ${file} (even though the file exists)
However if I parametrize the pipeline, I can use the variables in the additionalArgument list perfectly well, e.g.
String file= getParam("file", 'suppression.xml')
dependencyCheck additionalArguments: '--suppression "${file}"' --> this works
Do I still miss something in the variable part?

I have no idea. I'm at my limit for knowing how variables in pipeline work. You may want to ask the folks in the Jenkins Users group to see how it works.
https://groups.google.com/forum/#!forum/jenkinsci-users

Did you try this?
dependencyCheck additionalArguments: "--suppression ${file}" (wrapping it entirely with double-quotes)


Anoncreds Initialisation Error

I'm unable to find the anoncreds and autoCreateLinkSecret in AnonCredsModuleConfigOptions.
{
   "level":"error",
   "message":"Agent Initialization Failed Cannot inject the dependency \"anonCredsIssuerService\" at position #3 of "AnonCredsApi constructor. Reason:\n    Attempted to resolve unregistered dependency token: \"Symbol(AnonCredsIssuerService)\"",
   "stack":"Error: Cannot inject the dependency \"anonCredsIssuerService\" at position #3 of \"AnonCredsApi\" constructor. Reason:\n    Attempted to resolve unregistered dependency token: \"Symbol(AnonCredsIssuerService
}

Versions:
{
"@credo-ts/action-menu": "^0.5.0-alpha.101",
"@credo-ts/anoncreds": "^0.5.0-alpha.101",
"@credo-ts/askar": "^0.5.0-alpha.101",
"@credo-ts/cheqd": "^0.5.0-alpha.101",
"@credo-ts/core": "^0.5.0-alpha.101",Ï
"@credo-ts/indy-vdr": "^0.5.0-alpha.101",
"@credo-ts/node": "^0.5.0-alpha.101",
"@credo-ts/openid4vc": "^0.5.0-alpha.115",
"@credo-ts/question-answer": "^0.5.0-alpha.101",
"@credo-ts/tenants": "^0.5.0-alpha.101",
}

I can see this has been merged as well - https://github.com/openwallet-foundation/credo-ts/pull/1204

You're not on the latest alpha release for 0.5.0. Please update to alpha 127

Ahh, cool. Thanks @TimoGlastra.


How to draw circles in 0.7.8v?

Hi guys, I spend a lot of time to understand, what is wrong, but I`m not resolve my problem yet. I need to draw some areas(circles) on a map.

$scope.targets = [];
        var point = {
                lat: 51.50,
                lng: -0.082
            };
        var mapDefaults = {
            weight: 2,
            colorOutside: '#ff612f',
            type: 'circle',
            color: '#72C456'
        };
        var map = {
                center: {
                    lat: 48,
                    lng: 4,
                    zoom: 6
                },
                markers: {
                },
                paths: {
                    p1: {
                        weight: mapDefaults.weight,
                        color: mapDefaults.color,
                        latlngs: point,
                        radius: 1000000,
                        type: mapDefaults.type
                    },
                },
                defaults: {
                    scrollWheelZoom: false
                }
            };
        angular.extend($scope, map);
        resourcesService
            .Map.list().then(function(data){

                $scope.targets = data;
console.log(data);
                var bounds = [];

                _.each($scope.targets, function(target){
                    var curTarget = {
                        'lat': target.lat,
                        'lng': target.lng
                    };
                    var curBound = [target.lat, target.lng];
                    bounds.push(curBound);
                    var curPath = {
                        weight: mapDefaults.weight,
                        color: target.inside ? mapDefaults.color : mapDefaults.colorOutside,
                        type: mapDefaults.type,
                        latlngs: curTarget,
                        radius: target.radius
                    };
                    map.markers[target.name] = curTarget;
                    map.paths[target.name] = curPath;
                });
                leafletData.getMap().then(function(map){
                    map.fitBounds(bounds);
                });
        });

it works in 0.7.6 but in 0.7.8. is not. Now only p1 are drawn (static data). Dinamic data from resourseService are not drawen. In console.log all is ok.

I'm going to rework&redesign angular-leaflet-directive to be compatible with Leaflet v1.0. It will mantain almost all its functionality, and will be compatible with the current features of the directive, but I must start from a fresh point, so I'm going to close this issue. If you think it must be worked with the new version, please reopen it.


Add SKCanvas Methods

Description
Missing

SkCanvas.drawArc (https://skia-doc.commondatastorage.googleapis.com/doxygen/doxygen/html/classSkCanvas.html#ab7d43d64e7e6d756e60a6d42f3dc472d)
SkCanvas.drawDRRect (https://skia-doc.commondatastorage.googleapis.com/doxygen/doxygen/html/classSkCanvas.html#ad7149e359d4d0cfd2ad708e905f0d8c6)
-SkCanvas.drawAtlas (https://skia-doc.commondatastorage.googleapis.com/doxygen/doxygen/html/classSkCanvas.html#a3bd71bfa1b83de37c63df6f5713d275a)

Code
n/a
Expected Behavior
Methods to be available
Actual Behavior
n/a
Basic Information

Version with issue:  1.60.3
Last known good version:  n/a
IDE:  Visual Studio
Platform Target Frameworks: all
Target Devices: all

Screenshots
n/a
Reproduction Link
n/a

VS bug #727959

I'm having a look now and I think I might be able to slip it in for v1.68.2.


⚠ Hartman Foundation has degraded performance

In 95869c3, Hartman Foundation (https://gordonhartman.com/) experienced degraded performance:

HTTP code: 200
Response time: 2742 ms

Resolved: Hartman Foundation performance has improved in f331f72.


[WIP] Release 10.0.0

WIP pr for Primer X release 😎
Tracking issue here: https://github.com/primer/primer-css/issues/335
Note: Any v10 work should be merged into this branch once it's ready and approved, but to get an alpha release for testing you'll need to make the base branch dev temporarily.
Ship checklist

[ ] Update changelog
[ ] Add new release
[ ] npm run bump
[ ] Update primer.io to point to v10
[ ] Publish updated storybook

Noticed some issues that need fixing here after testing in the style guide on staging:

[ ] hover-grow: add margin on example so can see the animation
[ ] fade-out syntax still looks incorrect on staging but is correct in rendered readme
[ ] input-group: forms page needs {toc:}