Add microsoft distribution of the JDK.

Description:
Initial add of the Microsoft OpenJDK distribution
Related issue:
N/A
Check list:

[X] Mark if documentation changes are required.
[X] Mark if tests were added or updated to cover the changes.

This was based off of #225 thanks for making it easy!

cc @brunoborges

@ethomson this is a great PR.

Thanks @brendandburns!  We'll take a look.  👀

Comment addressed and I fixed formatting to follow prettier style guidelines.

Hold on this for a second, I realized that the Windows URLs aren't right, I need to substitute ".zip" for "tar.gz" I will get to that sometime today.

Ok, this is now fixed and I believe should be ready for final review.

Hello @brendanburns. Thank you for you pull request. Will you add logic to automatically grab all available versions ?

@brcrista thanks for the review, I think I have addressed all comments.

Thanks @brendanburns , just kicked off the CI

Looks like there are some unresolved merge conflicts in .github/workflows/e2e-versions.yml and linting is failing.  I can push fixes for those issues, if you don't mind.

https://github.com/brendandburns/setup-java/pull/1 should fix the CI runs.  Once those are green we can merge :ship:

@brcrista Thanks! I merged your PR.

Comments addressed, please re-check.

Could you please revert the changes for package-lock.json and use these commands npm ci -> npm run build.

Looking at my fork, looks like there will be a couple more issues:
https://github.com/brcrista/setup-java/runs/4408213781?check_suite_focus=true#step:4:7
Found java version: __tests__/verify-java.sh: line 24: /c/hostedtoolcache/windows/Java_Microsoft_jdk/11.0.13/aarch64/bin/java: cannot execute binary file: Exec format error
Error: Unexpected version

Similar issue for Ubuntu as well.
@brendanburns if you want to allow edits from maintainers on this PR then we can push fixes for these issues

@dmitry-shibanov comments addressed.
@brcrista not sure where the aarch is coming from but it seems that actions doesn't support that architecture? I have ticked the "allow edits from maintainers" box, so any fixes or pointers would be great.
Thanks!

@brcrista thank you for your help getting this across the finish line!!

Thanks so much @brendanburns!

I just tried using the Microsoft JDK in a GitHub Actions workflow. It did not work.  My workflow uses 'setup-java@v2' and there hasn't been a release that incorporates the new Microsoft JDK code.
Can somebody tag a new release of setup-java?
cc: @ethomson @brendandburns

@sullis you can reference the commit hash as a tag


Sakai 45824

These commits address a bug in table sorting found at Hotelschool the Hague, and alterations to default sorting order that were requested internally at UDayton.

Since the Travis CLI build failed, I'm trying these changes again on another pull request.


Toolchain trouble with Go Version in go.mod

I am having trouble with the go 1.22 directive in the go.mod file generated.
The incomplete semantic version of GO in go.mod does not work with GOTOOLCHAIN=auto.
The behavior is explained here: https://go.dev/doc/toolchain#select. Problem being that with auto the go.mod file is consulted and go1.22 is not a valid go version.
E.g.
GOTOOLCHAIN=auto go env
go: downloading go1.22 (darwin/arm64)
go: download go1.22 for darwin/arm64: toolchain not available

GOTOOLCHAIN=local go env
GO111MODULE=''
GOARCH='arm64'
...

Having GOTOOLCHAIN=auto and go 1.22.0 in the go.mod file also works.
Would it be possible to use the full semantic version in the go.mod file?

Answered in #159:

Yeah, we know, and we disagree. Using a three-numbered toolchain version makes builds fail locally if you run even a single dot release different. It's ridiculous. We will reevalulate with 1.23 which will reportedly fix some of this mess.

That is part of the reason why I would like to use the auto. Then go will get the toolchain it requires and should not fail. https://go.dev/doc/toolchain#download

I got an email that you made a different comment, but the comment does not seem to be here anymore.  (Similar reason to why we prefer vendoring of dependency libs.)

I got an email that you made another comment, but the comment does not seem to be here anymore.  (Similar reason to why we prefer vendoring of dependency libs.)
When reading through my comment again I considered it wrong. I remembered some implications with the three-numbered version as our internal pipelines that work on a pinned minor version with toolchain local. (where I did have the issue you mentioned)


dependency missing - xclip on ubuntu

http://stackoverflow.com/questions/27688804/how-do-i-debug-error-spawn-enoent-on-node-js/27688805#27688805
spawn called
{ '0': 'xclip', '1': [ '-selection', 'clipboard' ] }
/home/developer/.nvm/versions/node/v4.3.2/lib/node_modules/share-cli/cli.js:328
throw error;
^
Error: spawn xclip ENOENT
at exports._errnoException (util.js:870:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:178:32)
at onErrorNT (internal/child_process.js:344:16)
at nextTickCallbackWith2Args (node.js:437:9)
at process._tickCallback (node.js:351:17)
I solved this by sudo apt-get install xclip, you may want to update the docs

Thanks for reporting this! The relevant upstream bug for this is: https://github.com/xavi-/node-copy-paste/issues/57

That being said i think we should catch this and print a warning instead that tells you about the neat hidden feature you are missing out on.

Fixed with v2.0.0


docs: add redirect

Relevant gitbook documentation: https://docs.gitbook.com/integrations/git-sync/content-configuration
- Description for the changelog
docs: add redirect

to wrong base


Issue with Enterprise App registered bot

I am getting the following error when we try to connect to the deployed bot.
We followed App registration manually and entered App Id and Password while creating a web app bot. after the deployment bot is throwing the below issue.
[onTurnError] unhandled error: Error: Bad Request
(node:2588) UnhandledPromiseRejectionWarning: Error: BotFrameworkAdapter.processActivity(): 500 ERROR
 Error: Bad Request
    at MicrosoftAppCredentials.<anonymous> (D:\home\site\wwwroot\node_modules\botframework-connector\lib\auth\microsoftAppCredentials.js:132:23)
    at Generator.next (<anonymous>)
    at fulfilled (D:\home\site\wwwroot\node_modules\botframework-connector\lib\auth\microsoftAppCredentials.js:5:58)
    at process._tickCallback (internal/process/next_tick.js:68:7)
    at BotFrameworkAdapter.<anonymous> (D:\home\site\wwwroot\node_modules\botbuilder\lib\botFrameworkAdapter.js:638:27)
    at Generator.throw (<anonymous>)
    at rejected (D:\home\site\wwwroot\node_modules\botbuilder\lib\botFrameworkAdapter.js:13:65)
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:2588) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:2588) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Investigated further, it looks like an issue with setting of manifest "signInAudience": "AzureADMyOrg" we want this setting to be but not working,
if we change it to "AzureADandPersonalMicrosoftAccount"
but with AzureADMyOrg how to make it work?

Did you create your own AppId and Password or were they auto-generated by the Azure service? To clarify, you are wanting to use "AzureADMyOrg", correct?
Also, are you certain you have the necessary AD app registration permissions assigned that would allow a user to connect and log in? Some companies establish IT policies that block user access without specific access having been granted.

Our App registration admin team has created the app registration manually with the "signInAudience": "AzureADMyOrg" settings.
and as per the documentation here https://docs.microsoft.com/en-us/azure/bot-service/bot-service-resources-bot-framework-faq?view=azure-bot-service-4.0#app-registration
its says only "AzureADandPersonalMicrosoftAccount"
and in this document  https://docs.microsoft.com/en-us/azure/bot-service/abs-quickstart?view=azure-bot-service-4.0#feedback
it says "AzureADMultipleOrgs",  "AzureADandPersonalMicrosoftAccount"
But not "AzureADMyOrg", What is the solution for a single-tenant organization.
Yes we have all the permissions but only the above configuration is causing bot not connecting to Azure AD

@VaradVenkatKrishna, the bot's app registration must be set to one of the multi-tenant options (AzureADandPersonalMicrosoftAccount or AzureADMultipleOrgs) and not AzureADMyOrg. The reason for this is the bot needs to be able to access the BotFramework connector services (i.e., the channels able to be configured in your bot's Azure settings - Facebook, Twilio, etc.). If not set to multi-tenant, then the bot will fail, as mentioned in the docs.
If this is regarding user authentication, that is achieved via a separate app registration. It is in this that any of the three options are available to select. In and of itself, this app registration doesn't make a bot inaccessible to users (assuming a user is already on the same channel as the bot), but it does restrict user's from conversing beyond the authentication step with the bot.
Does this help?

@stevkan Yes Understood. Thank you.

Hi @stevkan, just one quick question about this, since I'm using Microsoft Teams as channel, what I understood is that we have anyway to use the "botframework" organization for make Teams retrieve the Auth Token (this also means that anyway the Bot App ID that we are using in Teams must have the Multi Org enabled).
Is this right?


go get failed with gin v1.7.4

❯ go get -u github.com/long2ice/swagin
go: downloading github.com/long2ice/swagin v0.1.0
go: downloading github.com/getkin/kin-openapi v0.72.0
go: downloading github.com/getkin/kin-openapi v0.81.0
go: downloading github.com/ghodss/yaml v1.0.0
go: downloading github.com/go-openapi/swag v0.19.5
go: downloading github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e
# github.com/long2ice/swagin/router
../../go/pkg/mod/github.com/long2ice/swagin@v0.1.0/router/router.go:31:14: c.ShouldBindRequest undefined (type *gin.Context has no field or method ShouldBindRequest)

See https://github.com/long2ice/swagin/issues/2


[Enhancement] Inefficient use of keyset iterator instead of entrySet iterator [LocalUnSubscribeEventProcessor]

Search before asking

[X] I had searched in the issues and found no similar issues.

Enhancement Request

located at:
org/apache/eventmesh/runtime/core/protocol/http/processor/LocalUnSubscribeEventProcessor.java 187
analysis and explanation:
This method accesses the value of a Map entry, using a key that was retrieved from a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the Map.get(key) lookup.
Describe the solution you'd like
reference:

Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

I would like to work on this issue. @xwm1992  Can you please assign this task to me?

I would like to work on this issue. @xwm1992 Can you please assign this task to me?

Sorry, these issues are labeled as good first issue for first time contributors.

Hi, I would like to work on this issue.


1.2 cherry-pick:  Make HTTP/1.0 responses without Connection: keep-alive mean close. (#7124)

Signed-off-by: John Plevyak<EMAIL_ADDRESS>For an explanation of how to fill out the fields, please see the relevant section
in PULL_REQUESTS.md
Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
[Optional Fixes #Issue]
[Optional Deprecated:]

@jplevyak I recall that you had a follow-up PR (I think with fixes for existing tests). Are they part of this cherry-pick?

@jplevyak I recall that you had a follow-up PR (I think with fixes for existing tests). Are they part of this cherry-pick?

git log shows only three upstream commits by jplevyak.  this is one of them.  the other two are grpc ones


Create alerting for remaing free space in hub home dir

Context
The LEAP hub recently ran out of free space for their home directories.
Thanks to https://github.com/2i2c-org/infrastructure/pull/1992, we have grafana dashboards to see this:

Proposal
We should also create an alert for when the remainig space gets closer to zero to catch this before it causes disruptions.
Updates and actions
No response

I'll take this on as part of the alerting work for this Q.

Fixed in https://github.com/2i2c-org/infrastructure/pull/3088


Add ResourceDictionary (C#) documentation for Theming

Add ResourceDictionary (C#) documentation under User Interface \ Theming \ Theme an app

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

ID: 04d29bb3-0ea9-e42a-d6d2-cf338baca362
Version Independent ID: 04d29bb3-0ea9-e42a-d6d2-cf338baca362
Content: Theme an app - .NET MAUI
Content Source: docs/user-interface/theming.md
Product: dotnet-mobile
Technology: dotnet-maui
GitHub Login: @davidbritch
Microsoft Alias: dabritch

Hello @mark-fay-03 Resource dictionaries are documented at https://docs.microsoft.com/en-us/dotnet/maui/fundamentals/resource-dictionaries and the Define Themes section demonstrates them in this case.
I'm not totally sure what you're asking for.

I am current writing a maui app fully in C# code. I see there is
documentation for XAML, but there isn't any for creating a
resourceDictionary in C#
Thanks
Mark S. Fay
On Tue, Jun 7, 2022, 4:01 PM Andy (Steve) De George <
@.***> wrote:

Hello @mark-fay-03 https://github.com/mark-fay-03 Resource dictionaries
are documented at
https://docs.microsoft.com/en-us/dotnet/maui/fundamentals/resource-dictionaries
and the Define Themes section
https://docs.microsoft.com/en-us/dotnet/maui/user-interface/theming#define-themes
demonstrates them in this case.
I'm not totally sure what you're asking for.
—
Reply to this email directly, view it on GitHub
https://github.com/dotnet/docs-maui/issues/585#issuecomment-1149253369,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARPG7BNXJAMIUDTOZ276ZCDVN7ID5ANCNFSM5X2VMMOQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

@mark-fay-03 Ok, thank you for clarifying that.
@davidbritch This is the 2nd issue in the repo requesting this. I think we should add it. What priority should it have?
Related to #548
@mark-fay-03
Creating a resource dictionary should be the same as creating it in XAML, once you understand how the XAML works.
<ContentPage.Resources>
    <Color x:Key="BackgroundColor">Yellow</Color>
    <Style x:Key="CustomFontStyle" TargetType="{x:Type Label}">
        <Setter Property="FontSize" Value="40" />
        <Setter Property="FontAttributes" Value="Bold" />
        <Setter Property="HorizontalOptions" Value="Center" />
    </Style>
</ContentPage.Resources>

<!-- A label on the content page -->
<Label Text="THE BLACK CAT by Edgar Allan Poe" Style="{StaticResource CustomFontStyle}"
       x:Name="HeaderLabel"/>

And the same in C#
Style customFontStyle = new Style(typeof(Label));
customFontStyle.Setters.Add(new Setter() { Property = Label.FontSizeProperty, Value = 40 });
customFontStyle.Setters.Add(new Setter() { Property = Label.FontAttributesProperty, Value = FontAttributes.Bold });
customFontStyle.Setters.Add(new Setter() { Property = Label.HorizontalOptionsProperty, Value = LayoutOptions.Center });

this.Resources["BackgroundColor"] = Colors.Yellow;
this.Resources["CustomFontStyle"] = customFontStyle;

HeaderLabel.Style = (Style)this.Resources["CustomFontStyle"];


The bug of Timeout while synthesizing

IN ORDER TO ASSIST YOU, PLEASE PROVIDE THE FOLLOWING:

Why I file it as a bug?
I got the same error as this post: https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2079
in which has no resolution but was suggested to file it as a bug if this reappears. So I did. The problem is quite often. I am in F0 pricing tier, not sure if this is only happending to free users. Anyway, this so troublesome and it should be fixed.

Speech SDK log taken from a run that exhibits the reported issue.
Error details: Timeout while synthesizing. Current RTF: 0.542194 (threshold 2), frame interval 10034ms (threshold 3000ms). USP state: ReceivingData. Received audio size: 1550880 bytes.
Did you set the speech resource key and region values?

A stripped down, simplified version of your source code that exhibits the issue.

I am providing 2 functional prototypes as a sample.
tts with different accents
def tts_txt_to_mp3(input_file: str,
accent_voice: str,
output_dir: str = "./mp3_proverbs/"):
Azure TTS configuration
region = "eastasia"  # Replace with your Azure region
subscription_key = os.environ.get("AZURE_SUBSCRIPTION_KEY") # Replace with your Azure subscription key

audio_config = speechsdk.audio.AudioOutputConfig(filename = out_path_file)
# Configurations
speech_config = speechsdk.SpeechConfig(subscription=subscription_key, region=region)

speech_config.speech_synthesis_voice_name = accent_voice
speech_config.set_property(property_id=speechsdk.PropertyId.SpeechServiceResponse_RequestSentenceBoundary, value='true')
speech_config.set_speech_synthesis_output_format(
speechsdk.SpeechSynthesisOutputFormat.Audio16Khz64KBitRateMonoMp3
)
speech_synthesizer = speechsdk.SpeechSynthesizer(speech_config=speech_config,
audio_config=audio_config)
# Read text from input file
with open(input_file, "r", encoding="utf-8") as file:
    text = file.read()

loop through the proverbs text dir
def process_files_in_dir(directory, accent: str, out_dir:str):
for filename in os.listdir(directory):
filepath = os.path.join(directory, filename)
voice = locale.get_random_voice(accent)
print(f"the voice used is: {voice}")
tts_txt_to_mp3(filepath, voice, out_dir)
Read text from input file
with open(input_file, "r", encoding="utf-8") as file:
    text = file.read()
# Synthesize speech
result = speech_synthesizer.speak_text_async(text).get()
if result.reason == speechsdk.ResultReason.SynthesizingAudioCompleted:
    print("Speech synthesized for text completed.")
elif result.reason == speechsdk.ResultReason.Canceled:
    cancellation_details = result.cancellation_details
    print("Speech synthesis canceled: {}".format(cancellation_details.reason))
    if cancellation_details.reason == speechsdk.CancellationReason.Error:
        if cancellation_details.error_details:
            print("Error details: {}".format(cancellation_details.error_details))
            print("Did you set the speech resource key and region values?")

Additional information as shown below

Describe the bug
I was doing TTS using Azure speech API. Each text file is not large, generally 500 words converting within around 2 minute voice. I got 10~15 text files in total. During the conversion, I got 3~4 errors which are in the same type of Speech synthesis canceled: CancellationReason.Error. Error details: Timeout while synthesizing. Current RTF: 2.00423 (threshold 2), frame interval 3471ms (threshold 3000ms). USP state: ReceivingData. Received audio size: 15552 bytes. It seems the timeout is due to the RTF and frame interval threasholds. I did search the solution, but it seems there's no option to adjust these 2 threasholds. Everything in my code was very basic just using the the Azure demo code. I did not use concurrent mode and TTS conversion was done in serial mode, meaning the code was converting each text file one after another.

@Nietzche001 thank you for reporting this! Please enable Speech SDK logs, do another run that shows the error, and attach the log to this GitHub issue.
@yulin-li @yinhew can you please follow up on this? Thanks!

I enabled the configuration of Speech SDK logs by
speech_config.enable_audio_logging()
The error message is: Error details: Connection was closed by the remote host. Error code: 4429. Error details: The request is throttled because you have exceeded the concurrent request limit allowed for your sub USP state: TurnStarted. Received audio size: 0 bytes.

@Nietzche001 This is because of quotas and limits on Free (F0) tier
https://learn.microsoft.com/azure/ai-services/speech-service/speech-services-quotas-and-limits#text-to-speech-quotas-and-limits-per-resource

Maximum number of transactions per time period for prebuilt neural voices and custom neural voices.
20 transactions per 60 seconds
This limit isn't adjustable.

Closed since based on the log issues are due to documented limitations on free subscriptions. Please open a new issue if more support is needed.

I don't have 20 frequencies per minute, why do I keep reporting 4429 errors, Error code: 4429. Error details: The request is throttled because you have exceeded the concurrent request limit allowed for your sub USP state: TurnStarted. Received audio size: 0 bytes.

I don't have 20 frequencies per minute, why do I keep reporting 4429 errors, Error code: 4429. Error details: The request is throttled because you have exceeded the concurrent request limit allowed for your sub USP state: TurnStarted. Received audio size: 0 bytes.

Im now running into this problem did you managed to find a solution?


Update pagination.js

Please make sure these boxes are checked before submitting your PR, thank you!

[x] Make sure you follow Element's contributing guide (中文 | English | Español | Français).
[x] Make sure you are merging your commits to dev branch.
[x] Add some descriptions and refer relative issues for you PR.

I set pagerCount in pagination limit from 3 to 21,cause limit from 5-21 is not friendly for narrow-screen webpages need.
in many situations,limit 5 will have 7 buttons:

limit 3 have 5 buttons in fact,exclude btn-prev and btn-next:

Close #14114
Close #14055
Close #14690

Sorry, we have no plan to support this.


Azure regions shouldn't be hardcoded in resource deployment

Now that the azurecore has an API for mapping region names we shouldn't have this hardcoded in the deployment extension.

I believe this has been fixed, right? @Charles-Gagnon


Add support to resume a Flow Execution by API call

We have to follow the https://azkaban.github.io/azkaban/docs/latest/#api-resume-a-flow-execution

I would like to work on this.


Rails 4.2.6: Asset was not declared to precompile

I just tried a rails upgrade, which seems to have triggered #443 again.
teaspoon 1.1.4, sprockets 3.5.2, ruby 2.2.3
rails <IP_ADDRESS>: No issue
rails 4.2.6: "Asset was not declared to be precompiled in production."
I reproduced this with no other gem versions changing.

have you checked with master?

@jejacks0n Apologies, thought I had. Looks like master fixed it. Do you know when a new gem version will be released with that fix?

👍

+1

Cheers for checking in.. I'll try to get a new version pushed this weekend.

Awesome! Thank you so much!

thanks a bunch @jejacks0n


fix dataset watchers for promises or other objects

I have set dataset properly in my controller but in the directive 'angularchart' scope has dataset,options etc are coming undefined.
Dataset is accessible in ng-repeat function in the same view.
My controller:
var SearchAppController = angular.module('SearchAppController', ['angularChart']);
SearchAppController.controller('ItemDetailController',function($scope,$http,$location,$routeParams){
	var itemID = $routeParams.itemID;
	var completeURL = "/search/price/"+itemID;
	var responsePromise = $http.get(completeURL);
	responsePromise.success(function(data, status, headers, config) {
		var historyList = data[0].history;
		$scope.dataset = historyList;
		                $scope.schema = {
		                  time: {
		                    type: 'datetime',
		                    format: '%Y-%m-%d %H:%M:%S',
		                    name: 'Date'
		                  }
		                };

		                $scope.options = {
		                  rows: [{
		                    key: 'lowestNewPrice',
		                    type: 'bar'
		                  }, {
		                    key: 'time'
		                  }],
		                  xAxis: {
		                    key: 'time',
		                    displayFormat: '%Y-%m-%d %H:%M:%S'
		                  }
		                };

});

});
My view:

Thanks in advance!

If I dont use the callback API call and pass hardcoded values it works.

It seems data binding is happening before callback can populate the values.But I believe the dataset watcher should do the trick.Not sure why its not happening.

dataset watcher was not getting initialized because dataset was undefined initially and watcher does dataset.length.Initialized dataset to a non-blank array, now it works.Please see if it can be handled elegantly.

Thank you for reporting, the behavior is definitively wrong. I'll fix this in the next release.

Thanks Max.


Parser/resolver problem

This parses ok:
[] > oshit
  cage > c1
  cage > c2
  seq > @
    1 > a
    c1.write a
    2 > b
    c2.write b
    TRUE

This fails, because it wants to download foreign objects a and b. What's the difference?
[] > oshit
  TRUE.while > @
    [i]
      cage > c1
      cage > c2
      seq > @
        1 > a
        c1.write a
        2 > b
        c2.write b
        TRUE

the problem is with the vars-float-up pass, the workaround is to give names everywhere, so the following code compiles:
[] > ab2
  TRUE.while > @
    [i] > name
      seq > @
        stdout "ab2\n"
        1 > a
        2 > b
        TRUE

not at all, this one fails to parse with the same error as well:
[] > xtrivial
  [] > xfib
    seq > @
      [] > tmp1

@dours I see the problem, will fix now

@rultor release, tag is 0.21.3

@rultor release, tag is 0.21.3

@yegor256 OK, I will release it now. Please check the progress here

@rultor release, tag is 0.21.3

@yegor256 Done! FYI, the full log is here (took me 16min)

@dours I believe it's fixed, try version 0.21.3

This example also does not work. Moreover, I don't see any commits with fixes. Have you forgotten to commit?
[] > ab2
  TRUE.while > @
    [i]
      seq > @
        stdout "ab2\n"
        1 > a
        2 > b
        TRUE

@yegor256  This example also does not work. Moreover, I don't see any commits with fixes. Have you forgotten to commit?
[] > ab2
  TRUE.while > @
    [i]
      seq > @
        stdout "ab2\n"
        1 > a
        2 > b
        TRUE

@dours yes, forgot to push :(


Calendar Not Shown When Being Called From IFrame In Different Domain

Describe the bug
I have a website with a domain, say, www.aaa.com.
In that website, I called the calendar I have created using tui.calendar which I hosted at www.abc.com using iframe.
The calendar does not show up, it shows an error in the console instead.
Uncaught SecurityError: Failed to read the 'localStorage' property from 'Window': Access is denied for this document.
I found that this error happened in Chromium/Chrome.
Tested in Firefox, the same error does not happen
To Reproduce
Steps to reproduce the behavior:

Host the calendar in the a domain
Call that calendar hosted in a domain in another domain
Try to access that another domain from Chromium/Chrome
The calendar won't shows up.

Expected behavior
I found that there's a solution in StackOverflow to change how to call the browser API.
Can be seen from here, https://stackoverflow.com/a/66133745/5391801
Desktop (please complete the following information):

Chrome, Chromium

I think I should check this issue myself.
Could you get reproducible domain information?

The calendar is being hosted at iseka.services.
And it called in an iframe from crm.zoho.com.
Sent from mobile device.
Sambada Budiarga
Software Developer
e: @.***
On Thu, May 27, 2021, 21:11 조정은 @.***> wrote:

I think I should check this issue myself.
Could you get reproducible domain information?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/nhn/tui.calendar/issues/811#issuecomment-849622369,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEZCDCG2KTZJ6C2UNZNISRTTPZAH3ANCNFSM45IJQNZQ
.

Isn't the hosting provider blocking the iframe?
Do you bring pages other than the calendar well?

In general, schedules rendered as iframes come well.

Hi,
I am sorry for not being clear enough.
The host https://iseka.services is hosting the calendar.
While the calendar itself accessed from crm.zoho.com using iframe the host above.
I think this is an intermittent issue.
I've tried to reproduce this issue few times again to no avail.
Thank you for your quick response.
Have a good day.


Support for Ruby & Python

In the plugin section of the readme.md it says 'To write a plugin, just write some form of executable script that outputs to the standard output' but it doesn't seem to work for python or ruby with me.
Also the 'memusage.5s.py' plugin under Systems doesn't work for me.
Anyone else having trouble with this?

It works fine, example @ https://github.com/ripienaar/sensu_bitbar
Generally "It does not work" isn't a useful error report.

You just need to shebang it for ruby or python.
e.g. #!/usr/bin/env ruby
Using node.js, I needed to export the $PATH as it now mentions in the readme

Did you make sure to add the correct shebang and make your script executable?

@luke3butler do you have an example of a working node script? looked but didnt see on in GH

Someone asked how I got nodejs working.
file.sh:
#!/bin/bash
scriptpath="/path/to/my/js/script.js"
/usr/local/bin/node $scriptpath;

Alternatively to using using the full path to the node executable, you can use
export PATH='your-paths-here'; underneath the shebang
I just typed echo $PATH in terminal to get my PATH.
and then script.js:
console.log("Hello World!");

Apparently my script was throwing errors and because the error wasn't showing anywhere it appeared that it failed to load the script completely.
Anyway, I'm having trouble loading a gem. If I execute my script in terminal in the same directory, it works just fine. When it is being executed in bitbar, one of the gems could not be loaded.
#!/usr/bin/env ruby
puts 'test'
puts '---'
require 'rubygems'
require 'watir-webdriver'

Which gives this as output:

Any ideas on how to solve this issue?

I know the environment inside BitBar is a little different to outside of it. Perhaps you can play around and let me know what you discover?

I was trying to use the wunderground plugin and it fails similarly trying to import a ruby gem.  To get it to work properly, I had to first manually source the rbenv environment in a bash script and then call the wunderground ruby script
#!/bin/bash

# to run in rbenv
RBENV=/usr/local/bin/rbenv
eval "$($RBENV init -)"

$HOME/.bitbar/ruby/wunderground.rb $*

exit $?

@jrnewell I use RVM, and also use a wrapper script to execute the plugin:
#!/bin/bash

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
rvm use $PREFERRED_RUBY >/dev/null 2>/dev/null
ruby /path/to/bitbar/plugins/Weather/Wunderground.30m.rb $API_KEY $LOCATION

In my case, I think it may be because I have RVM init in .bash_profile, which is only used for login shells.  I'll fiddle with this and let you know what I discover.

The shell environment used for the plugin does not appear to invoke or use any shell init scripts, which eliminates tools like pyenv, rbenv, and rvm from ever being loaded without support in the plugin or a wrapper script.

If you can successfully run something in terminal, then it can be run as a plugin.
As long as the PATH is defined correctly within the script, you should be good.
You can even source your .bash_profile and/or .profile from the script if you wanted.

@luke3butler That's true for pure shell scripts, but it's a bit more complex for other languages when you are not using the system-provided version.  In the current state of affairs, a wrapper script (with proper initialization etc) is a necessity for these items.

The solution that worked for me with the Wunderground script: use "which ruby" to find out where ruby is, then copy that to the first line of your script after the shebang.
In my case, it was: #!/usr/local/bin/ruby

Yes, would be great to be able to use rbenv or rvm without using a wrapper script!

@estiens I got rbenv to work without using a wrapper script like so:
#!/usr/bin/env /opt/boxen/rbenv/shims/ruby

puts RUBY_VERSION

I then added a .ruby-version file to my Bitbar plugins folder with the version I wanted to use.
Obviously, you'll have to change the location of the rbenv ruby shim as your environment may be different than mine.

@taylorzane awesome, that works perfectly for me! :100:

There doesn't yet seem to be a way to do this with RVM without a wrapper script.

Maybe something similar to this can be implemented, to get a good user configured environment: https://github.com/atom/atom/pull/11054

For Ruby scripts with a simple output you can always embed them in a shell script & use @asnodgrass's rvm load script like this. Here I needed the socksify gem from my rvm env to be able to do http requests through Tor:
#! /bin/bash

# shellcheck source=/dev/null
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

output=$(
ruby - <<EOF
require 'json'
require 'open-uri'
require 'socksify/http'

uri = URI.parse('http://blockchain.info/ticker')
Net::HTTP.SOCKSProxy('<IP_ADDRESS>', 9050).start(uri.host, uri.port) do |http|
  puts JSON.parse(http.get(uri.path).body)['GBP']['buy']
end
EOF
)
echo "$output"

I am using this with RVM:
#!/usr/bin/env ruby
# Skip this part if we are launching from rvm-auto-ruby
unless ENV['USING_RVM']
  # Re-run this script with RVM default Ruby, after setting up the RVM path, and setting USING_RVM to true
  system(
    <<-EOF
      export USING_RVM=true
      export PATH="~/.rvm/bin:$PATH"
      rvm-auto-ruby #{File.expand_path(__FILE__)}
    EOF
  )
  # Return the exit code from running the script with RVM:
  exit $?.exitstatus.to_i
end

# Put the rest of your script here.
require 'bitbar'
BitBar::Menu.new do
  item 'Hello World, from RVM'
end

This works great for any OS X launched Ruby script that doesn't start from a terminal. You can use any gems installed in your default Ruby.

I realize this is both old and closed, but I'm struggling to get @jakeonrails answer to work with Ruby 2.6.5 and RVM. I'm using Fish Shell, which I know has a hard time with Bash...and I can't get any Ruby scripts to work with BitBar.
Sidebar: BitBar isn't working with #!/usr/bin/env ruby either. My test plugin is literally puts 'test' and all I'm getting is "launch path not accessible"

You may need to make your script executable


Rail emissions seem a bit inconsistent

Hi Milan,
first of all: Cool stuff!
I had a quick look at the data in the excel table and was a bit irritated by the CO2 emissions for rail (tCO2e Rail) in Europe, e.g. Manchester with less emissions than London or Amstersterdam with less emissions than Cologne.... Maybe I have understood something wrong or it might be worth checking the data there...

Yes, and "Rail" just refers to the "every journey <1500km is rail"-scenario. For a country like China the emissions remain the same in the "Realistic" or in the "Rail" scenario.


OSError: -29184 occures when use urequests post method

When using urequests.py post method in the Maixduino with MaixPy, OSError: -29184 occures as below.  In ESP32 micropython, No error occures. MaixPy Mbedtls is same as ESP32 one.

File "urequests.py", line 115, in post
File "urequests.py", line 100, in request
File "urequests.py", line 81, in request
OSError: -29184
MicroPython v0.5.1-111-g638e9af21-dirty on 2020-10-24; Sipeed_M1 with kendryte-k210
Type "help()" for more information.

可能你更新到最新的就好了。
注意协议包的解析。


Handle direct JSX return in arrow functions

Please describe the changes this PR makes and why it should be merged:
This PR addresses a scenario where the component body returns a JSX expression directly, without wrapping it in a BlockStatement.
Previously, the following code would throw an error:
const Component = () =>

because the transformComponent function in visitor.ts expects a t.BlockStatement as argument.
With these changes, we now transform the returned JSX expression into a BlockStatement before passing it to transformComponent, enabling us to correctly handle direct JSX return in arrow functions.
Status

[x] Code changes have been tested against prettier, or there are no code changes
[x] I know how to update typings and have done so, or typings don't need updating

Semantic versioning classification:

[x] This PR changes the codebase

[ ] This PR includes breaking changes (methods removed or renamed, parameters moved or removed)
[x] This PR changes the internal workings with no modifications to the external API (bug fixes, performance improvements)

[ ] This PR only includes non-code changes, like changes to documentation, README, etc.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 22 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.2%) to 31.592%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

packages/compiler/react/visitor.ts
0
22
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.2%

Covered Lines:
912

Relevant Lines:
3053

💛  - Coveralls

Let's see what @aidenybai thinks.

LGTM! Quick question, you are transforming the component directly to a block, right?

Yes, that's correct 👍 @tobySolutions

LGTM! Quick question, you are transforming the component directly to a block, right?

Yes, that's correct 👍 @tobySolutions

Ok, awesome!

LGTM :)

Going to merge now! If any issues come up, let me know and I'll revert it 👍


Support for Drive API corpora

Drive API now has the concept of corpora:
https://developers.google.com/drive/api/v3/reference/files/list
https://developers.google.com/drive/api/v3/search-files#search_the_corpora
https://developers.google.com/drive/api/v3/change-overview#corpora
GAM should support this argument to allow searching a larger area of user-accessible files but shouldn't default to using anything other than user as suggsted by docs.
Note that the work in #151 should also be finished to get GAM off v2 API.

Speaking as someone who's done this, you have a lot of work ahead of you.
Ross

This is now done. Long live GAM7...


Blank Page after Login with HTTPS

code-server version: 2.1650-vsc1.39.2
OS Version: Ubuntu 16.04 under Windows 10 subsystem of Linux

Description
I got a blank screen after login with HTTPS enabled, but everything works well without HTTPS.
Steps to Reproduce
Command :
~/code-server2.1650-vsc1.39.2-linux-x86_64/code-server --host <IP_ADDRESS> --port 20080 --cert /etc/letsencrypt/live/s94285vscode.ddns.net/fullchain.pem --cert-key /etc/letsencrypt/live/s94285vscode.ddns.net/privkey.pem  --verbose -s --log trace
Output :
info  Server listening on https://<IP_ADDRESS>:20080
info  - Password is fa7271ff44002589737f939e
info  - To use your own password, set the PASSWORD environment variable
info  - To disable use --auth none
info  - Using provided certificate and key for HTTPS
Then open browser and login.
Trace from Chrome's console
workbench.web.api.js:1460 TRACE [remote-connection][Management   ][813ed…][initial][s94285vscode.ddns.net:80] 1/6. invoking socketFactory.connect().
workbench.web.api.js:1460 TRACE [remote-connection][Management   ][813ed…][initial][s94285vscode.ddns.net:80] 2/6. socketFactory.connect() was successful.
workbench.web.api.js:1460 TRACE [remote-connection][Management   ][813ed…][initial][s94285vscode.ddns.net:80] 3/6. sending AuthRequest control message.
workbench.web.api.js:1460 TRACE [remote-connection][Management   ][813ed…][initial][s94285vscode.ddns.net:80] 4/6. received SignRequest control message.
workbench.web.api.js:1460 TRACE [remote-connection][Management   ][813ed…][initial][s94285vscode.ddns.net:80] 5/6. sending ConnectionTypeRequest control message.
workbench.web.api.js:1460 TRACE [remote-connection][Management   ][813ed…][initial][s94285vscode.ddns.net:80] 6/6. handshake finished, connection is up and running after 563 ms!
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] starting reconnecting loop. You can get more information with the trace log level.
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] waiting for 5 seconds before reconnecting...
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] resolving connection...
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] connecting to s94285vscode.ddns.net:80...
workbench.web.api.js:1460 TRACE [remote-connection][Management   ][813ed…][reconnect][s94285vscode.ddns.net:80] 1/6. invoking socketFactory.connect().
workbench.web.api.js:1605 WebSocket connection to 'wss://s94285vscode.ddns.net/?reconnectionToken=813ed4cd-4e00-4373-8169-decf8b45ce94&reconnection=true&skipWebSocketFrames=false' failed: WebSocket opening handshake timed out
create @ workbench.web.api.js:1605
connect @ workbench.web.api.js:1606
(anonymous) @ workbench.web.api.js:1606
d @ workbench.web.api.js:1606
h @ workbench.web.api.js:1608
u @ workbench.web.api.js:1609
_reconnect @ workbench.web.api.js:1615
_runReconnectingLoop @ workbench.web.api.js:1613
workbench.web.api.js:1460   ERR [remote-connection][Management   ][813ed…][reconnect][s94285vscode.ddns.net:80] socketFactory.connect() failed. Error:
workbench.web.api.js:1460   ERR Error: WebSocket close with status code 1006
at WebSocket. (workbench.web.api.js:1605)
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] A temporarily not available error occured while trying to reconnect, will try again...
workbench.web.api.js:1460 TRACE Error: WebSocket close with status code 1006
at WebSocket. (workbench.web.api.js:1605)
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] waiting for 5 seconds before reconnecting...
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] resolving connection...
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] connecting to s94285vscode.ddns.net:80...
workbench.web.api.js:1460 TRACE [remote-connection][Management   ][813ed…][reconnect][s94285vscode.ddns.net:80] 1/6. invoking socketFactory.connect().
workbench.web.api.js:1460   ERR [remote-connection] The time limit has been reached for a connection. Error:
workbench.web.api.js:1460   ERR Error: Time limit reached
at workbench.web.api.js:1615
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] A network error occured while trying to reconnect, will try again...
workbench.web.api.js:1460 TRACE Error: Time limit reached
at workbench.web.api.js:1615
workbench.web.api.js:1460  INFO [remote-connection][Management   ][813ed…][reconnect] waiting for 10 seconds before reconnecting...

I can't confirm this, is this WSL1 or WSL2?

@sr229 Thanks for replying.
It's on WSL1. I'll try WSL2 later.

@sr229 I'd like to try WSL2 but it is incompatible with vmware.
So I'll just stick to WSL1. If the problem is caused by WSL1, I'll run it on virtual machine. Thanks.

@sr229 Here's the error that shows on chrome's console:
Uncaught TypeError: Cannot read property 'hasPendingUpdate' of undefined     at p.get hasPendingUpdate [as hasPendingUpdate] (workbench.web.api.js:sourcemap:1627)     at workbench.web.api.js:sourcemap:1627
Then reconnect loop started. Each retry get this error:
workbench.web.api.js:sourcemap:1605 WebSocket connection to 'wss://s94285vscode.ddns.net/?reconnectionToken=efd1aceb-a767-4e75-af4c-5fb90c4f92e0&reconnection=true&skipWebSocketFrames=false' failed: WebSocket opening handshake timed out

I think this is something to do with WSL1's networking AFAIK, WSL2 uses a virtual switch which should handle HTTPS properly. This may be a WSL issue.

I get the same with Safari in iPadOS 13.2 (17B84) now. However, Safari in macOS 10.15.1 works okay in my network.

Same issue here.
If i run code-server over http everything works fine. I can login, use the VSCode and so.
if i run code-server over https, i can still login but after that the page is white.
I think it's an problem with the wss socket because the
Trace from the Google Chrome Developer Console
workbench.web.api.js:165 Uncaught TypeError: Cannot read property 'hasPendingUpdate' of undefined
    at p.get hasPendingUpdate [as hasPendingUpdate] (workbench.web.api.js:165)
    at workbench.web.api.js:165
workbench.web.api.js:147   ERR [remote-connection][Management   ][e5dc6…][initial][dev.strongcherry.com:80] the handshake took longer than 10 seconds. Error:
workbench.web.api.js:147   ERR Error: handshake timeout
    at workbench.web.api.js:163
workbench.web.api.js:147   ERR [remote-connection] An error occurred in the very first connect attempt, it will be treated as a permanent error! Error:
workbench.web.api.js:147   ERR Error: handshake timeout
    at workbench.web.api.js:163
workbench.web.api.js:147   ERR Error: handshake timeout
    at workbench.web.api.js:163
workbench.web.api.js:147   ERR handshake timeout: Error: handshake timeout
    at https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:163:9166
workbench.web.api.js:147   ERR Cannot read property 'get' of undefined: TypeError: Cannot read property 'get' of undefined
    at p.get (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:165:12995)
    at new P (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:365:49765)
    at h._createInstance (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:545)
    at h._createServiceInstance (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:2495)
    at h._createServiceInstanceWithOwner (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:2090)
    at h._createAndCacheServiceInstance (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:1765)
    at h._getOrCreateServiceInstance (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:1053)
    at Object.get (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:146:29673)
    at t.Workbench.initLayout (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:410:15861)
    at https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:410:38850
workbench.web.api.js:147   ERR handshake timeout: Error: handshake timeout
    at https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:163:9166
workbench.web.api.js:6 Uncaught Error: handshake timeout

Error: handshake timeout
    at workbench.web.api.js:163
    at workbench.web.api.js:6
(anonymous) @ workbench.web.api.js:6
setTimeout (async)
unexpectedErrorHandler @ workbench.web.api.js:6
onUnexpectedError @ workbench.web.api.js:6
t.onUnexpectedError @ workbench.web.api.js:6
createStorageService @ workbench.web.api.js:410
workbench.web.api.js:267 Uncaught Error: Handler already set!
    at u.setHandler (workbench.web.api.js:267)
    at g.initialize (workbench.web.api.js:365)
    at new g (workbench.web.api.js:365)
    at new P (workbench.web.api.js:365)
    at h._createInstance (workbench.web.api.js:147)
    at h._createServiceInstance (workbench.web.api.js:147)
    at h._createServiceInstanceWithOwner (workbench.web.api.js:147)
    at h._createAndCacheServiceInstance (workbench.web.api.js:147)
    at h._getOrCreateServiceInstance (workbench.web.api.js:147)
    at h._createInstance (workbench.web.api.js:147)
setHandler @ workbench.web.api.js:267
initialize @ workbench.web.api.js:365
g @ workbench.web.api.js:365
P @ workbench.web.api.js:365
_createInstance @ workbench.web.api.js:147
_createServiceInstance @ workbench.web.api.js:147
_createServiceInstanceWithOwner @ workbench.web.api.js:147
_createAndCacheServiceInstance @ workbench.web.api.js:147
_getOrCreateServiceInstance @ workbench.web.api.js:147
_createInstance @ workbench.web.api.js:147
createInstance @ workbench.web.api.js:146
acquireInstantiationService @ workbench.web.api.js:355
(anonymous) @ workbench.web.api.js:410
setTimeout (async)
(anonymous) @ workbench.web.api.js:410
invokeFunction @ workbench.web.api.js:146
initServices @ workbench.web.api.js:410
startup @ workbench.web.api.js:410
open @ workbench.web.api.js:410
async function (async)
open @ workbench.web.api.js:410
workbench.web.api.js:147   ERR Cannot read property 'get' of undefined: TypeError: Cannot read property 'get' of undefined
    at p.get (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:165:12995)
    at W (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:179:14835)
    at new z (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:179:6287)
    at h._createInstance (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:545)
    at https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:2356
    at t.IdleValue._executor (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:15:5209)
    at https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:15:5298
workbench.web.api.js:147   ERR Cannot read property 'get' of undefined: TypeError: Cannot read property 'get' of undefined
    at p.get (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:165:12995)
    at e.getRecentlyOpened (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:396:2002)
    at e.addRecentlyOpened (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:396:2166)
    at e.addWorkspaceToRecentlyOpened (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:396:1809)
    at new e (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:396:1454)
    at h._createInstance (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:545)
    at https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:147:2356
    at t.IdleValue._executor (https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:15:5209)
    at https://dev.strongcherry.com/static-3d5db8313a91f80dfc402450fd117b4e63f7711e/out/vs/workbench/workbench.web.api.js:15:5298
workbench.web.api.js:288 Error received from starting extension host
(anonymous) @ workbench.web.api.js:288
Promise.then (async)
e @ workbench.web.api.js:288
_createInstance @ workbench.web.api.js:147
createInstance @ workbench.web.api.js:146
_createExtensionHosts @ workbench.web.api.js:333
_startExtensionHostProcess @ workbench.web.api.js:277
_initialize @ workbench.web.api.js:277
D @ workbench.web.api.js:333
_createInstance @ workbench.web.api.js:147
_createServiceInstance @ workbench.web.api.js:147
_createServiceInstanceWithOwner @ workbench.web.api.js:147
_createAndCacheServiceInstance @ workbench.web.api.js:147
_getOrCreateServiceInstance @ workbench.web.api.js:147
get @ workbench.web.api.js:146
initLayout @ workbench.web.api.js:410
(anonymous) @ workbench.web.api.js:410
invokeFunction @ workbench.web.api.js:146
startup @ workbench.web.api.js:410
open @ workbench.web.api.js:410
async function (async)
open @ workbench.web.api.js:410
workbench.web.api.js:288 Error: handshake timeout
    at workbench.web.api.js:163
(anonymous) @ workbench.web.api.js:288
Promise.then (async)
e @ workbench.web.api.js:288
_createInstance @ workbench.web.api.js:147
createInstance @ workbench.web.api.js:146
_createExtensionHosts @ workbench.web.api.js:333
_startExtensionHostProcess @ workbench.web.api.js:277
_initialize @ workbench.web.api.js:277
D @ workbench.web.api.js:333
_createInstance @ workbench.web.api.js:147
_createServiceInstance @ workbench.web.api.js:147
_createServiceInstanceWithOwner @ workbench.web.api.js:147
_createAndCacheServiceInstance @ workbench.web.api.js:147
_getOrCreateServiceInstance @ workbench.web.api.js:147
get @ workbench.web.api.js:146
initLayout @ workbench.web.api.js:410
(anonymous) @ workbench.web.api.js:410
invokeFunction @ workbench.web.api.js:146
startup @ workbench.web.api.js:410
open @ workbench.web.api.js:410
async function (async)
open @ workbench.web.api.js:410
workbench.web.api.js:147   ERR [remote-connection][ExtensionHost][fc46d…][initial][dev.strongcherry.com:80] the handshake took longer than 10 seconds. Error:
workbench.web.api.js:147   ERR Error: handshake timeout
    at workbench.web.api.js:163
workbench.web.api.js:147   ERR [remote-connection] An error occurred in the very first connect attempt, it will be treated as a permanent error!

Same issue here.
If i run code-server over http everything works fine. I can login and use VSCode as expected.
if i run code-server over https, i can still login but after that the page is white.
I think it's an problem with the wss port because the
Trace from the Google Chrome Developer Console
workbench.web.api.js:147   ERR [remote-connection][Management   ][e5dc6…][initial][<ip>:80] the handshake took longer than 10 seconds. Error:

looks like the connection is establishing over port 80 on which my http server is running, that redirects to the https server. And not on 443 which is my https server on which code-server is running.

Ah you can ignore the 80 in that message. You should be able to see the real connection endpoint in the network tab. VS Code tries to connect over a port but we override it to use the current URL but it's not updated in that mmessage.

i still see the same issue. I installed it with traefik to provide SSL on Ubuntu 19.10. Code server is running in docker with http (I did not provide the cert, instead, it’s installed with traefik). I am only able to use it on my Mac with chrome. I tried on safari (mac), safari (iOS 13.3.1), chrome (iOS 13.3.1) but they all got blank page and same error “WebSocket close with status code 1006“ as above.
Traefik.toml (ver. 1.7.20)
defaultEntryPoints = ["http", "https"]

[entryPoints]
  [entryPoints.http]
  address = ":80"
  compress = true
    [entryPoints.http.redirect]
    entryPoint = "https"

  [entryPoints.https]
  address = ":443"
    [entryPoints.https.tls]
      [entryPoints.https.tls.ClientCA]
        optional = true
      [[entryPoints.https.tls.certificates]]
        certFile = "/etc/traefik/certs/my.cert"
        keyFile = "/etc/traefik/certs/my.key"

  [entryPoints.traefik]
  address = ":8083"

Labels for code server
      traefik.backend: "code"
      traefik.frontend.rule: "Host:code.domain.com"
      traefik.enable: "true"
      traefik.port: "8080"

Not working with iOS is expected since you need a non self signed certificate but are you sure it's not working with Safari on Mac? You should see a screen explaining the situation and then you can override and connect.

Not working with iOS is expected since you need a non self signed certificate but are you sure it's not working with Safari on Mac? You should see a screen explaining the situation and then you can override and connect.

Is there any way to get non self signed certificate for my local code server in a docker instance? I tried letsencrypt, but it does not take local IP address and unverified domain.

i still see the same issue. I installed it with traefik to provide SSL on Ubuntu 19.10. Code server is running in docker with http (I did not provide the cert, instead, it’s installed with traefik). I am only able to use it on my Mac with chrome. I tried on safari (mac), safari (iOS 13.3.1), chrome (iOS 13.3.1) but they all got blank page and same error “WebSocket close with status code 1006“ as above.
Traefik.toml (ver. 1.7.20)
defaultEntryPoints = ["http", "https"]

[entryPoints]
  [entryPoints.http]
  address = ":80"
  compress = true
    [entryPoints.http.redirect]
    entryPoint = "https"

  [entryPoints.https]
  address = ":443"
    [entryPoints.https.tls]
      [entryPoints.https.tls.ClientCA]
        optional = true
      [[entryPoints.https.tls.certificates]]
        certFile = "/etc/traefik/certs/my.cert"
        keyFile = "/etc/traefik/certs/my.key"

  [entryPoints.traefik]
  address = ":8083"

Labels for code server
      traefik.backend: "code"
      traefik.frontend.rule: "Host:code.domain.com"
      traefik.enable: "true"
      traefik.port: "8080"

Figured out. My solution is not related to code server but still documented here for future reference

in traefik config, TLS can set to minimum 1.3 but I have to make sure no cypher suites are provided. Incompatible cypher suites would result in errors.
on cloudflare, TLS version should be set to 1.2 minimum, instead of 1.3 minimum. In this way, safari would be as least able to log wss failure, error code 401. The request is still sent with TLS 1.3 but I don't know why this config would matter (chrome does not have this problem).
for the error code 401, I have to disable basic auth in traefik because the authorization code is not part of the request in safari, resulting in 401. However, Chrome would be able to send authorization code. In the end, I use the authorization built with code server.

Had the same problem with Synology Reverse Proxy.
Had to set the Proxy Http version to 1.0 in Advanced Settings

Had to set the Proxy Http version to 1.0 in Advanced Settings

@frederickbeaulieu I still see the blank page after setting the proxy version. Did you do anything else special to make it work on Synology? I set up code-server in a Ubuntu container. It works fine on HTTP without the reverse proxy, but gets stuck at the blank page after login on HTTPS through the proxy.  Thanks.

Here is my config, sorry for the delay, I just moved to a new house and the Syno was not setup yet.
Docker Image :

https://registry.hub.docker.com/r/linuxserver/code-server/
Docker config :

Reverse proxy settings :

@frederickbeaulieu I still see the blank page after setting the proxy version. Did you do anything else special to make it work on Synology? I set up code-server in a Ubuntu container. It works fine on HTTP without the reverse proxy, but gets stuck at the blank page after login on HTTPS through the proxy. Thanks.

Hope this help

@frederickbeaulieu I still see the blank page after setting the proxy version. Did you do anything else special to make it work on Synology? I set up code-server in a Ubuntu container. It works fine on HTTP without the reverse proxy, but gets stuck at the blank page after login on HTTPS through the proxy. Thanks.

Hope this help

Adding the custom headers and ticking the HSTS/HTTP2 boxes in the reverse proxy seem to have done the trick. Thanks!

i still see the same issue，i use docker as the container and use frp to route
docker-compose.yml
version: "3.8"
services:
  frpc:
    image: snowdreamtech/frpc
    volumes:
      - "./frpc.ini:/etc/frp/frpc.ini:ro"
      - "./code.gkotta.cn.crt:/etc/frp/server.crt:ro"
      - "./code.gkotta.cn.key:/etc/frp/server.key:ro"
    restart: unless-stopped
    networks:
      backend:
    environment:
      - "LOCAL_ADDR=code"
      - "LOCAL_PORT=8080"
      - "SUBDOMAIN=code"
  code-server:
    image: codercom/code-server
    ports:
      - "8080:8080"
    volumes:
      - "./data:/home/coder/project"
    environment:
      - "PASSWORD=******"
    restart: unless-stopped
    networks:
      backend:
        aliases:
          - code

networks:
  backend:

frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000

[code-server]
type = http
local_ip = code
local_port = 8080
subdomain = code

[code-server-https]
type = https
subdomain = code

plugin = https2http
plugin_local_addr = code:8080

# HTTPS 证书相关的配置
plugin_crt_path = /etc/frp/server.crt
plugin_key_path = /etc/frp/server.key
plugin_host_header_rewrite = <IP_ADDRESS>
plugin_header_X-From-Where = frp

Hi @Eternity714 - if you're seeing issues, please open a new bug report ticket and fill out the template. That'll help us help you faster! Thanks!


[Feature] [kuberay/apiserver] adding custom init container configuration to worker container specs

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
KubeRay Component
apiserver
Currently there's no parameters in api request payload of cluster creation or compute template creation to define configuration of a custom init container for worker.
Use case
No response
Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

cc @YQ-Wang @han-steve


PIXI.Text cutting off top of text on some fonts

See fiddle here: http://jsfiddle.net/uexztot4/1/
The top of the text is cropped off, I'm guessing the calculation for the ascender is off here, or is there an issue with the font itself?

In v3 there is a padding property that allows you to fix issues like this.

Thanks, is v3 relatively stable at the moment? I need to use this particular font on a current project. Are there any changes in the API in v3?

@baseten A few, but they should be easy to catch and remedy. Many of them are backed by a backwards compatibility layer that warns you in console.

Hey all! Gonna close this as the issue is fixed in v3. Cheers peeps :+1:

Hi @GoodBoyDigital,
I think the problem still exists. I updated the jsfiddle with pixi v4 and the new text-syntax.
See here: http://jsfiddle.net/0fneuguv/
Is there already a better fix than playing with the padding?
Thx Pieter

The static measureFont function within TextMetrics.js is what tries to get a handle on how tall text will be when rendered to a canvas. It is a slight guesswork, however, as you can measure text width wise on a canvas, but not height wise. So we create a canvas we think will almost certainly be taller, then measure pixels drawn to that canvas to get the true height. In that process are a couple of magic numbers like
const height = 2 * baseline;
baseline = baseline * 1.4 | 0;

It's basically looking at the width of an M, and saying, ok, lets say that the tallest text can be is double the width of the widest letter, M. The font you are using is unusually tall, so this turns out not to work. When i double both of those values to 4 * baseline and baseline * 2.8, the text looks fine.

@themoonrat thanks for your response, but for my project it's not an option to do that.
Any other ideas ?

Perhaps these values could be measured in invisible HTML elements during some kind of initialisation step and cached for each font?


[OSCI] Adds new author angelamao930

Description
Adding new author angelamao930
Issues Resolved
[List any issues this PR will resolve]
Check List

[s] 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 BSD-3-Clause License.

@angelamao930 please address Josh's requests and then we can merge!


Question of MOSI DataSet

Hi, I'm really interest in your research. However, I couldn't find the files which are needed to run your code data_loader.py in the link you provided http://immortal.multicomp.cs.cmu.edu/raw_datasets/processed_data/cmu-mosi/, such as word2ix_300_mosi.pkl, glove_300_mosi.pkl and so on. Could you please tell me how I can find them?

Please can you provide the actual file path or files for mosi dataset used in data_loader.py and test_mosi.py


Allow users to use IN/NOT IN operator in Reporter's filter UI

Integrator must be able to select IN or NOT IN operators.
When IN/NOT IN operator is selected left/right sides are flipped - value IN field!

Bonus points:

[x] Enable IN/NOT IN operators only for multi-value fields
[x] Disable all other operators for multi-value fields

Assigning to SNE to keep it close to #456. Feel free to change that.

https://github.com/cortezaproject/corteza/pull/560

Changelog
What changed

New filter operators(IN/NOT IN) added to the prefilter in the reporter UI

Why did it change

Users can now use IN/NOT IN operator in Reporter's filter

How did it change

Updated the prefilter component with the two new operators
Added the locale properties for the filter text
Add the logic to configure switch value and fields input when a multi field value is selected

Steps to recreate:

open reporter
select a report
toggle the report builder
add a block with a table element
under the prefilter section
select a field the a multi value type
and save the see the reflected changes

The functionality works as expected for now and I added the CL entry, will just leave the ticket in qc since it might be also possible the other issues to be fixed today in regards to the in operator in joins/links and multivalue fields displayed as one whole name.

Tomaz addressed the other issues so I am moving the card to Done.


rollback jinchihe to IBM account

As just discussed in the meeting with @jlewi, for the the glound account can be my IBM email, rollback jinchihe to IBM account in the example-maintainers.members.txt.
(python3) hejinchideMacBook-Pro:internal-acls hejinchi$ gcloud info |grep -i account
Account<EMAIL_ADDRESS>    account<EMAIL_ADDRESS>

This change is

/assign @jlewi
I apologize... Please also help refresh the env setting as you done in the meeting just now. Thanks a lot!

Why don't you leave your gmail account for now so we can verify it works with your IBM account before we remove your gmail account.

Why don't you leave your gmail account for now so we can verify it works with your IBM account before we remove your gmail account.

@jlewi Updated. Thank you, so nice :-)

/lgtm
/approve


Docs: clarify that Python 3.9 is not yet supported

What changes are proposed in this pull request?
^
How is this patch tested? If it is not, please explain why.
Local build
Release Notes
Is this a user-facing change that should be mentioned in the release notes?

[x] No. You can skip the rest of this section.
[ ] Yes. Give a description of this change to be included in the release
notes for FiftyOne users.

What areas of FiftyOne does this PR affect?

[ ] App: FiftyOne application changes
[ ] Build: Build and test infrastructure changes
[ ] Core: Core fiftyone Python library changes
[x] Documentation: FiftyOne documentation changes
[ ] Other

I was thinking of putting that up somewhere - an issue could work. It's a bit of effort to track them all down, since many are indirect, and to keep them up-to-date, since ETA just added another one (https://github.com/voxel51/eta/commit/b6bc88e7741b5baa7feb6b3365999e446b8d3a1d), but I can check a clean install soon.
To clarify, the main issue here is a lack of binary packages - many packages are currently possible to install under Python 3.9 if you compile from source, but have lots of external dependencies (e.g. numpy and scipy) and/or take a long time to build (e.g. opencv).
Tensorflow and PyTorch are likely also going to take some time, and have some additional dependencies and constraints - e.g. Tensorflow currently requires numpy < 1.19, and only numpy >= 1.19.3 will provide Python 3.9 binaries.


replaces node-persist by persist-json

Replace node-persist by persist-json. This provides a more convenient way to store data in an OS-specific reasonable path by default and prevents issues when the user running hap-nodejs has no write-access to the node_modules/node-persist folder.
Will by default create a Folder ~/.hap-nodejs/ on Linux and ~/Library/Preferences/hap-nodejs on macOS.

Thanks for this PR.
Changing the underlying storage library is a little bit trick without a way to migrate existing data to new location. Since a lot people already spent a while setting up their homes, accessories and triggers, I'm afraid we cannot simply swap the persist library.

oops, sure, you're right. didnt think about this...

what do you think - should i invest some
time into a migration routine or do you prefer keeping the node-persist storage?

just thought about another approach: keeping node-persist but giving the user the ability to overwrite the default save/load function with his own, that would also suite my needs and should have no negative impact for other users. so everybody could use the storage that he wants, that would help me in my project https://github.com/hobbyquaker/homekit2mqtt and also another project i started working on (both depending on your hap-nodejs)

May I ask why you want to change this...? If you just want to change folder hap-nodejs save the data, you can simply invoke init() with path and hap-nodejs will save things to that path...

The idea to completely change the storage method is mainly motivated by the ioBroker project, there is a homekit plugin that depends on your hap-nodejs also. ioBroker offers his plugins it's own pluggable storage engine and can be used with e.g. a CouchDB backend. Would be nice to be able keep all data including hap-nodejs's in one place there.

I'm fine with this approach as long as it still supports old data :) feel free to send PR and I'll merge that.


FLUME-3133 Add client IP / hostname headers to Syslog sources.

In the newer version of the Syslog message format (RFC-5424) the hostname
is not a mandatory header anymore so the Syslog client might not send it.
On the Flume side it would be a useful information that could be used
in interceptors or for event routing.
To keep this information, two new properties have been added to the Syslog
sources: clientIPHeader and clientHostnameHeader.
Flume users can define custom event header names through these parameters
for storing the IP address / hostname of the Syslog client in the Flume
event as headers.
The IP address / hostname are retrieved from the underlying network sockets,
not from the Syslog message.
This change is based on the patch submitted by Jinjiang Ling which has been
rebased onto the current trunk and the review comments have been implemented.

context.put("host", InetAddress.getLoopbackAddress().getHostAddress());
and
InetAddress localHost = InetAddress.getLocalHost();
Socket syslogSocket = new Socket(localHost, port);

are not the same.  getLocalHost() is a different IP

LGTM, +1, ship it.


C++ library error

update

update

I'm using hackplex.cc as the injector and Osiris alrd comes in it

Build in Release | x86 Mode, not Debug | x86 Mode

Build in Release | x86 Mode, not Debug | x86 Mode

How do i do that

Build in Release | x86 Mode, not Debug | x86 Mode

How do i do that

Hello, if you want to do that, all you simply need to do is just change the build mode from debug to release
https://www.eclipse.org/4diac/documentation/html/installation/img/VSreleaseDebug.png
view this picture as reference


Question about runing Langchain Extraction Demo in Chinese text.

Issue you'd like to raise.
from langchain.chains import create_extraction_chain
from langchain.chat_models import ChatOpenAI
import dotenv

dotenv.load_dotenv()

# Schema
schema = {
    "properties": {
        "name": {"type": "string"},
        "education": {"type": "string"},
        "company": {"type": "string"},

    },
    "required": ["name", "education"],
}

# Input
inp = """小明毕业于北京大学，在微软上班\n小李毕业于清华大学在阿里巴巴上班\n小王毕业于浙江大学在烟草局上班"""

# Run chain
llm = ChatOpenAI(temperature=0, model="gpt-3.5-turbo-1106")
chain = create_extraction_chain(schema, llm)
print(chain.run(inp)[0])

#output
{'name': 'å°\x8fæ\x98\x8e', 'education': 'å\x8c\x97äº¬å¤§å\xad¦', 'company': 'å¾®è½¯'}

How to fix this Chinese encoding/decoding problem?
Suggestion:
No response

Looks like a bug in OpenAI's client for the 1106 models. It works if you change the model to plain "gpt-3.5-turbo"

@hinthornw Thanks a lot! This bug wasted me a lot of time...

Has it been fixed?


Cannot disable SNARK worker

I'm relatively sure this used to work to disable a SNARK worker.
root@9c27b02cdb6a:~# coda client set-snark-worker -address ""
Error parsing command line.  Run with -help for usage information.

Couldn't read public key (Invalid key format)
 Error decoding
Invalid base58 check length in Non zero curve point compressed
 - here's a sample one: B62qqaB4b9F9jLm7sYPquXcx26qf2oEqXca85XNkfrHMorpQPSodFsK

root@9c27b02cdb6a:~# coda client set-snark-worker -help
Set key you wish to snark work with or disable snark working

  coda client set-snark-worker

=== flags ===

  [-address PUBLICKEY]               Public-key address you wish to start
                                     snark-working on; null to stop doing any
                                     snark work

Is this a regression? I've tried a few variants of this to no avail.

Thanks to @Greg the correct format is just coda client set-snark-worker. Strangely, this fails for me even when the daemon is running fine:
coda client set-snark-worker
Error: Unable to connect to Coda daemon.
- The daemon might not be running. See logs (in `~/.coda-config/coda.log`) for details.
  Run `coda daemon -help` to see how to start daemon.
- If you just started the daemon, wait a minute for the GraphQL server to start.
- Alternatively, the daemon may not be running the GraphQL server on http://localhost:3085/graphql.
  If so, add flag rest-server with correct port when running this command.
Error message: (Failure "Connection closed by remote host")

I think this is something specific to my Docker setup so closing for now.


Iterated local search

Is your feature request related to a problem? Please describe
PyVRP's current solver is a hybrid genetic search (HGS) algorithm. We have already built many components that allow us to build an iterated local search (ILS) algorithm. The latter is conceptually much simpler in my opinion, and it would be nice to see if we can build one that is as performant as HGS.
Describe the solution you'd like
An iterated local search algorithm that is as performant as the current hybrid genetic search algorithm. Some questions that need to be dealt with:

[ ] How to perturb solutions?
[ ] How to deal with feasible/infeasible solutions in ILS?
[ ] ...

Additional context
See the following papers for successful implementations of ILS:

Subramanian et al. (2013)
Accorsi and Vigo (2021)
Maximó et al. (2021)
Maximó et al. (2022)

Along the same line, we can also implement a variant of adaptive large neighborhood search (ALNS). ILS needs a perturbation step anyway, so it will be easy to test an ALNS implementation once we have an ILS one.

Can we give this a serious attempt? HGS has many different components that all just about work, and I am reasonably convinced we don't need all of that just to get good solutions out: it's the local search that does most of the heavy lifting.

I think this will be the big part of 0.10.0 (the features are more of a stretch goal; the algorithm update is a more important component). We can probably get going with this over the summer.

I have a very rough implementation of ILS at https://github.com/PyVRP/PyVRP/tree/ils. I'll try to clean it up a bit in the coming week.

Let's see what we can make of #660.

The first thing I want to do is implement SISR, which we should expect to perform very well. This does not rely on local search (but does rely on pyvrp.search components) so it should be straightforward to implement.
While developing SISR, I want to create a benchmarking workflow (see, e.g., https://github.com/PyVRP/Bench/issues/1). This should make it easy for me to evaluate the performance and compare against HGS.
Once SISR performs reasonably well, I want to continue with ILS, that is, add local search. The reason why I don't want to include local search directly is because my previous experience implementing perturb + local search cycle did work well for large instances. I couldn't figure out why and changing our local search module requires substantial effort. I should also check AILS' implementation in a bit more detail to see if we're missing some important insights. Speed is definitely one thing I need to look at: I recall AILS running about 4-5x faster on X-n1001 (CVRP).

I think that our local search procedure is inefficient in an iterated local search when the perturbation only affects a small part of the search space.
The current local search procedure looks like this:
while not completed:
    completed = True

    for U in clients:
        for V in neighbours[client]:
            for node_op in node_ops:
                if node_op.evaluate(U, V) < 0:
                    node_op.apply(U, V)
                    completed = False

The inner loop searches through all possible $O(nkl)$ moves, where $n$ is the number of clients, $k$ is the neighborhood size, and $l$ is the number of operators. If there was at least one improving move, this loop will be repeated again.
The problem that is that we have to go over all clients again every time that we find a small improvement. But with a perturbation operator that only affects a local part of the solution (say at most 50 out of 1000 clients), there is only a very small chance that the routes of the remaining 950 clients will be improved. This is particularly problematic in large-scale instances.
I think this is less of an issue in SREX, because the perturbation is much larger due to the crossover mechanics and the number of routes to move (between 1 and the maxiumum number of routes). But I can still see LS being a bottleneck in large-scale instances because it evaluates too many unpromising moves.
I think a more effective strategy is something like what AILS does:
candidates = set(all_clients)

while candidates:
    U = candidates.pop():

    for V in neighbours[client]:
        for node_op in node_ops:
            if node_op.evaluate(U, V) < 0:
                node_op.apply(U, V)

                # The routes from U and V are modified, so all nodes in both
                # routes are potential candidate for new improving moves.
                candidates |= {client for client in routeU}
                candidates |= {client for client in routeV}

This seems more effective to me because it dynamically keeps track of which parts of the solution space should be checked, while ignoring the non-promising/static parts of the solution. With a proper neighborhood, there is still plenty room to find better moves.
I'm ignoring here that AILS uses a best-improvement instead of first-improvement strategy, but that's another discussion.
I think that introducing this new LS search procedure can already be interesting to try out in an HGS setting.

It's worth an experiment!

Not much of a difference, just ~5% more iterations. I'm going to think about this a bit more.
VRPTW 30min x 10 seeds
14ad525
Num rows: 600
 mean: 334765 (min: 334667, max: 334838)
  gap: 0.93%
iters: 24376 (min: 23964, max: 24904)

cebc3881c699fca70c09600b6f2ec3adc76885a5
Num rows: 600
 mean: 334710 (min: 334563, max: 334833)
  gap: 0.92%
iters: 25572 (min: 24939, max: 25997)

Some very preliminary results with 2b7e615. This is a basic ILS, where we only mimic the core components of AILS (perturbation operators, acceptance criterion, candidate move selection).

We currently destroy between 5-30 clients randomly each iteration, but a smarter perturbation strength operator could really help with convergence. That is, early on during the search we can destroy bigger parts, and later on we should probably destroy smaller parts.
Right now, 22% of the time goes to LoadSolution, so if we get that down, that will increase the number of iterations quite a bit.
More fine-tuned parameter settings could also help.
I tested this on X-n1001-k43, so the performance of VRPTW still needs to be improved.

I ran a benchmark local with the following results:

CVRP, runtime 1s/client, 1 seed, gap: 0.44%

Reference: v0.10.0 has 0.25% gap with 2.4s/client

VRPTW, runtime 900s, 1 seed, gap: 1.54%

Reference: v0.10.0 has 0.62% gap with 7200s, and 0.95% with 1800s.

I think it should not be difficult to soon achieve the same performance as our HGS for CVRP/VRPTW.


java.lang.IllegalStateException: Missing: traceId with AWS propagation type

Describe the bug
Environment setup:

JDK: Java 11.0.17
Spring Boot: 2.7.13
Spring Cloud: 2021.0.8
Spring Cloud Starter Sleuth: 3.1.9
Brave: 5.13.9
Zipkin-aws: 0.21.3

In our application we use Spring Cloud Sleuth for tracing in our micro-services. We set propagation type to AWS because our architecture is based on this Cloud Provider.
The problem we are facing is the following: When we receive an X-Amzn-Trace-Id header with the following format: Root=1-1373cbb-37f4b48ed7ff3eebbd62b5e01 the application crashes with the Exception java.lang.IllegalStateException: Missing: traceId from the brave.propagation package during the trace id extraction.
Based on this AWS Documentation, the X-Amzn-Trace-Id header consists of three numbers separated by hyphens version-time-id , where the time field should be of 8 hexadecimal digits.
The problem seems related to the time(1373cbb, 7 characters) format, when its length is different from 8. In fact, in this section of code we can see that if the timestamp length is different from 8 the traceId is never initialised, causing the Exception.
This is the only case that throws this unhandled Exception, in other cases, such as invalid hexadecimal digits, the application correctly generates a new trace id without propagating the malformed one.
Is this working as intended?
Sample
In order to test this behaviour you need to set sleuth.propagation.type property to AWS and try to send a request with the header X-Amzn-Trace-Id: Root=1-1373cbb-37f4b48ed7ff3eebbd62b5e01 which cause the Exception being thrown.

Can you provide the full stack trace?

I think you should find the issue in Brave aws propagation module. We merely delegate work to their code.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.


'-' Tag Created for Metrics with NULL in MetricTags

A '-' tag is created for metrics with NULL in the MetricDescription attribute.  This doesn't seem useful.  Am I missing something?
Thanks,
René

Metric Description is the description of the dimension or measure.  If you leave it blank, it will show up as a null value in the metrics library table in the metrics library app because you did not populate it from your source.  http://eapowertools.github.io/GovernedMetricsService/user-guide/qsconfig/#create-the-metrics-library-app

Hello Jeff,
I made an incorrect assumption about MetricDescription.  Even my metrics with a definition have this '-' tag.  None of my metrics has MetricOwner or MetricTags defined.  I suppose that the lack of data in MetricTags be the real cause of this?  Since GMS is creating tags for each metric, is there a way not to assign a '-' tag?

Is this in the client, or just the metrics library table?

Both, if I correctly understand your question.

what is the raw data value in the metric owner and metric tag fields for each record.  Is it actually blank / null or are you supplying the dash?  I believe earlier you said it's null.

I believe earlier you said it's null.

Correct, in the source table the data is null.

cools thanks.  I'll log this as a bug.
thanks

Hello Jeff,
It turns out that the '-' tag may be the result of null in MetricTag or MetricOwner whenever there be contents in MetricDescription, but I see that if I have not entered a description, the GMS-created metric does end up with a description value of '-'...

'-' will be resolved in release scheduled for late jan, early feb.

dash is removed in next release.

Resolved in https://github.com/eapowertools/GovernedMetricsService/releases/tag/2.0.0


[KOGITO-1578] Adapting KogitoApp CR to have a more comprehensive inte…

…rface regarding events and persistence
See:
https://issues.redhat.com/browse/KOGITO-1578
Many thanks for submiting your Pull Request :heart:!
Please make sure that your PR meets the following requirements:

[x] You have read the contributors guide
[x] Pull Request title is properly formatted: [KOGITO-XYZ] Subject
[x] Pull Request contains link to the JIRA issue
[x] Pull Request contains description of the issue
[x] Pull Request does not include fixes for issues other than the main ticket
[x] Your feature/bug fix has a unit test that verifies it
[x] You've tested the new feature/bug fix in an actual OpenShift cluster

rebasing for https://github.com/kiegroup/kogito-cloud-operator/pull/245

Waiting for QE approval


IPv6 communication over VPC peering

what
Allow IPv6 communication b/w VPCs over VPC peering
why
Application hosted in VPC-1 wants to access resources hosted in private subnet of VPC-2 over IPv6.
references

/terratest

/terratest

/terratest


⚠ Samsung has degraded performance

In 47398c4, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2771 ms

Resolved: Samsung performance has improved in 35755fc.


Document buggy r650 idrac version

Virtual media can not be mounted on:
iDRAC Firmware Version | <IP_ADDRESS>

It works fine with this version:
iDRAC Firmware Version | <IP_ADDRESS>

You can check idrac versions using racadm:
# sshpass -p "xxxxxx" ssh -o StrictHostKeyChecking=no<EMAIL_ADDRESS>"racadm get iDRAC.Info"
[Key=iDRAC.Embedded.1#Info.1]
#Build=26
#CPLDVersion=1.0.7
#Description=This system component provides a complete set of remote management functions for Dell PowerEdge Servers
#HWRev=0.01
#IPMIVersion=2.0
#Name=iDRAC
#Product=Integrated Dell Remote Access Controller
#RollbackBuild=26
#RollbackVersion=<IP_ADDRESS>
#ServerGen=15G
#Type=15G Monolithic
#Version=<IP_ADDRESS>

It was later identified that the servers in question actually lacked DNS in their BMC configuration.  This prevents any virtual media that requires domain resolution from working.  We should probably actually document this too so less time is spent when encountering this.


Stale PR Cleanup on External repos

Goal of this issue is to track and resolve PRs located in external repos managed by Lodestar.
as-chacha20poly1305

[x] https://github.com/ChainSafe/as-chacha20poly1305/pull/3
[x] https://github.com/ChainSafe/as-chacha20poly1305/pull/4
[x] https://github.com/ChainSafe/as-chacha20poly1305/pull/5
[x] https://github.com/ChainSafe/as-chacha20poly1305/pull/6
[x] https://github.com/ChainSafe/as-chacha20poly1305/pull/7

bls

[ ] https://github.com/ChainSafe/bls/pull/66
[ ] https://github.com/ChainSafe/bls/pull/141
[ ] https://github.com/ChainSafe/bls/pull/142
[ ] https://github.com/ChainSafe/bls/pull/143
[ ] https://github.com/ChainSafe/bls/pull/144
[ ] https://github.com/ChainSafe/bls/pull/145
[ ] https://github.com/ChainSafe/bls/pull/146
[ ] https://github.com/ChainSafe/bls/pull/147

bls-keygen

[ ] https://github.com/ChainSafe/bls-keygen/pull/14

bls-keygen-app

[ ] https://github.com/ChainSafe/bls-keygen-app/pull/26
[ ] https://github.com/ChainSafe/bls-keygen-app/pull/45
[ ] https://github.com/ChainSafe/bls-keygen-app/pull/46
[ ] https://github.com/ChainSafe/bls-keygen-app/pull/47
[ ] https://github.com/ChainSafe/bls-keygen-app/pull/49
[ ] https://github.com/ChainSafe/bls-keygen-app/pull/52
[ ] https://github.com/ChainSafe/bls-keygen-app/pull/53

bls-keystore

[ ] https://github.com/ChainSafe/bls-keystore/pull/50
[ ] https://github.com/ChainSafe/bls-keystore/pull/51
[ ] https://github.com/ChainSafe/bls-keystore/pull/52
[ ] https://github.com/ChainSafe/bls-keystore/pull/53
[ ] https://github.com/ChainSafe/bls-keystore/pull/54
[ ] https://github.com/ChainSafe/bls-keystore/pull/55
[ ] https://github.com/ChainSafe/bls-keystore/pull/56

blst-ts

[ ] https://github.com/ChainSafe/blst-ts/pull/63

discv5

[ ] https://github.com/ChainSafe/discv5/pull/197
[ ] https://github.com/ChainSafe/discv5/pull/228
[ ] https://github.com/ChainSafe/discv5/pull/231
[ ] https://github.com/ChainSafe/discv5/pull/232
[ ] https://github.com/ChainSafe/discv5/pull/237
[ ] https://github.com/ChainSafe/discv5/pull/243
[ ] https://github.com/ChainSafe/discv5/pull/244

discv5-cli

[ ] https://github.com/ChainSafe/discv5-cli/pull/9
[ ] https://github.com/ChainSafe/discv5-cli/pull/12
[ ] https://github.com/ChainSafe/discv5-cli/pull/15
[ ] https://github.com/ChainSafe/discv5-cli/pull/25
[ ] https://github.com/ChainSafe/discv5-cli/pull/26
[ ] https://github.com/ChainSafe/discv5-cli/pull/27
[ ] https://github.com/ChainSafe/discv5-cli/pull/28

enr-app

[ ] https://github.com/ChainSafe/enr-app/pull/11
[ ] https://github.com/ChainSafe/enr-app/pull/12
[ ] https://github.com/ChainSafe/enr-app/pull/19
[ ] https://github.com/ChainSafe/enr-app/pull/20
[ ] https://github.com/ChainSafe/enr-app/pull/22
[ ] https://github.com/ChainSafe/enr-app/pull/25
[ ] https://github.com/ChainSafe/enr-app/pull/26
[ ] https://github.com/ChainSafe/enr-app/pull/28
[ ] https://github.com/ChainSafe/enr-app/pull/33
[ ] https://github.com/ChainSafe/enr-app/pull/34
[ ] https://github.com/ChainSafe/enr-app/pull/36
[ ] https://github.com/ChainSafe/enr-app/pull/37
[ ] https://github.com/ChainSafe/enr-app/pull/38
[ ] https://github.com/ChainSafe/enr-app/pull/39
[ ] https://github.com/ChainSafe/enr-app/pull/40
[ ] https://github.com/ChainSafe/enr-app/pull/41

eth2-light-client-demo

[ ] https://github.com/ChainSafe/eth2-light-client-demo/pull/52
[ ] https://github.com/ChainSafe/eth2-light-client-demo/pull/53
[ ] https://github.com/ChainSafe/eth2-light-client-demo/pull/54
[ ] https://github.com/ChainSafe/eth2-light-client-demo/pull/57
[ ] https://github.com/ChainSafe/eth2-light-client-demo/pull/59
[ ] https://github.com/ChainSafe/eth2-light-client-demo/pull/60
[ ] https://github.com/ChainSafe/eth2-light-client-demo/pull/63
[ ] https://github.com/ChainSafe/eth2-light-client-demo/pull/64

js-libp2p-gossipsub

[ ] https://github.com/ChainSafe/js-libp2p-gossipsub/pull/326
[ ] https://github.com/ChainSafe/js-libp2p-gossipsub/pull/361
[ ] https://github.com/ChainSafe/js-libp2p-gossipsub/pull/368
[ ] https://github.com/ChainSafe/js-libp2p-gossipsub/pull/410
[ ] https://github.com/ChainSafe/js-libp2p-gossipsub/pull/466
[ ] https://github.com/ChainSafe/js-libp2p-gossipsub/pull/491

js-libp2p-noise

[ ] https://github.com/ChainSafe/js-libp2p-noise/pull/418

ssz

[ ] https://github.com/ChainSafe/ssz/pull/271
[ ] https://github.com/ChainSafe/ssz/pull/274
[ ] https://github.com/ChainSafe/ssz/pull/278
[ ] https://github.com/ChainSafe/ssz/pull/281
[ ] https://github.com/ChainSafe/ssz/pull/282
[ ] https://github.com/ChainSafe/ssz/pull/284
[ ] https://github.com/ChainSafe/ssz/pull/285
[ ] https://github.com/ChainSafe/ssz/pull/287
[ ] https://github.com/ChainSafe/ssz/pull/295
[ ] https://github.com/ChainSafe/ssz/pull/305
[ ] https://github.com/ChainSafe/ssz/pull/306
[ ] https://github.com/ChainSafe/ssz/pull/328

closing as stale


fix: fix the redirect of the cookie value PDS_loginToken (resolves #27)

When the google single sign on completes, the personal data server now redirects to the edge proxy API /api/redirect with these query parameters:

loginToken: The login token for future preferences requests
maxAge: The max age of the login token in second
refererURL: The referer URL of the login request. This URL will be used by the Edge Proxy to redirect back to UIO

The edge proxy should then redirect to the refererURL with the login token as a cookie value of PDS_loginToken.

@amb26, @klown, this PR has been updated to add: 1. an Edge Proxy example; 2. tests to verify the redirect url issued by the personal data server once the authentication completes.
In terms of tests, what we talked in the June 16 tech meeting is to start the edge proxy to check query parameters received by it. But once the edge proxy /api/redirect receives the redirect call, it immediately redirects to its client side. It's difficult to intercept before the second redirect to check received parameters. What I did is to verify the redirect url stored in the response object initiated from the personal data server.
This pull request is ready for more reviews.

@amb26, the review comment has been addressed. Ready for another look. Thanks.

@amb26 all review comments have been addressed. Ready for another round of review. Thanks.


live <= main

Docs Build status updates of commit 88444bf:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.github/workflows/wrong-pr-target.yml
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Add types for new lazer score structure

will finish this once I'm home

Addressed in recent commits.


4.1.0 reports as 4.0.2

4.1.0 reports as 4.0.2

See https://github.com/chrismaltby/gb-studio/issues/1490#issuecomment-2252235289 for an explanation

Yeah I normally increment just before doing an official release but to avoid confusion I've set it to 4.1.0-beta in the develop builds now :-)


Fluid Container on gallery item

we briefly chatted w/ @exezbcz about ultrawide support on GI, yet we should some components keep close, probably reflected in galery item v2
my recording is bit extreme, yet I believe beyond 1540px width, it's not so good either
https://user-images.githubusercontent.com/5887929/226912944-c97de03d-c296-4af3-9c13-d3c36b59b63b.mov

hmmm nice item

@floyd-li similar to the one you sent me? lmao

yea, so I think there is the usual fix - Make the container stop expanding from particular screen size - so on ultrawide screen it would not expand further and the content would be in middle

Or we can bring back default container size only for gallery Item like on Rarible

seems there're special changes for this page 🤔

nav height between 769px and 930px
and this one


Use fluent-plugin-remote_syslog for Fluentd v1.2

Replace fluent-plugin-kubernetes_remote_syslog with fluent-plugin-remote_syslog.
Because fluent-plugin-kubernetes_remote_syslog uses old plugin API and
fluent-plugin-remote_syslog is well maintained.

New PR includes this change and it is merged. Thanks!


docs: correction words and command

#105

【内容】：
correction words and command
linked: #105

Thx!


SP4 AxisLimits: WithPan()

Feature Suggestion
Feature description:
In my application, I want to use keys to be able to move the plots.
This is equivalent to creating a "Pan" function.
With Scott's help, I've written an event handler that does the job. However, it would be really handy to have an existing function that does this work.
For example, WithPan().
The arguments would be: X, Y, PanRatio.
PanRatio would be optional with a default value of 0.1.
Code example:
What would be nice:
This will move the pan up-right by one step.
The step corresponds to 10% of the display axis limits (default value).
var limits = formsPlot1.Plot.GetAxisLimits();
var newLimits = limits.WithPan(X: 1, Y: 1);
formsPlot1.Plot.SetAxisLimits(newLimits);

This will move the pan down by one step.
The step corresponds to 50% of the display axis limits.
var limits = formsPlot1.Plot.GetAxisLimits();
var newLimits = limits.WithPan(Y: -1, PanRatio: 0.5);
formsPlot1.Plot.SetAxisLimits(newLimits);

Here is the code I wrote for my application.
       private void formsPlot_KeyDown(object sender, KeyEventArgs e)
       {
           // read current limits
           var limits = formsPlot1.Plot.GetAxisLimits();

           double limitXMax = limits.XMax;
           double limitXMin = limits.XMin;
           double limitYMax = limits.YMax;
           double limitYMin = limits.YMin;

           double XStep = (limitXMax - limitXMin) * 0.1;
           double YStep = (limitYMax - limitYMin) * 0.1;

           switch (e.KeyCode)
           {
               case Keys.F:    // fit view
                   formsPlot1.Plot.AxisAuto();
                   break;

               case Keys.Z:   // pan Y up
                   limitYMax += YStep;
                   limitYMin += YStep;
                   formsPlot1.Plot.SetAxisLimits(yMax: limitYMax, yMin: limitYMin);
                   break;

               case Keys.S: // pan Y down
                   limitYMax -= YStep;
                   limitYMin -= YStep;
                   formsPlot1.Plot.SetAxisLimits(yMax: limitYMax, yMin: limitYMin);
                   break;

               case Keys.Q: // pan X left
                   limitXMax -= XStep;
                   limitXMin -= XStep;
                   formsPlot1.Plot.SetAxisLimits(xMax: limitXMax, xMin: limitXMin);
                   break;

               case Keys.D:    // pan X right
                   limitXMax += XStep;
                   limitXMin += XStep;
                   formsPlot1.Plot.SetAxisLimits(xMax: limitXMax, xMin: limitXMin);
                   break;
           }
           formsPlot1.Refresh();

           // event has been handled
           e.Handled = true;
       }

Thanks for this suggestion @LapinFou!
I added WithPan() and WithPanFraction() methods in f647153 🚀
This new feature will be available in the next release, but if you want to try it now you can run ScottPlot from source and let me know if you have any suggestions https://scottplot.net/faq/environment/#build-scottplot-from-source

Wahouu 😱That was quick!
I will give it a try next Wednesday.
If possible, could you please provide a bit more detail on how to use these new methods? I'm not entirely sure they will work as described in my ticket. 😅
Again, thank a lot for your support.

Wahouu 😱That was quick!

🚀🚀🚀

could you please provide a bit more detail on how to use these new methods? I'm not entirely sure they will work as described in my ticket.

I'm pretty sure the XML docs that pop-up when you start typing the method name will adequately tell you how to use it. If not (or if the description is confusing) let me know and we can work to improve it! 👍

Indeed the XML doc is well describing the method.
I tried both methods .WithPan() and .WithPanFraction() with success.
Thanks a lot for your support. 👍👍