uib-carousel animations for sliding next and prev stop working

Please review, for uib-carousel in 1.1.1 with angular 1.4.9 (including animate 1.4.9) and boostrap 3.3.6
The pictures only rotate when the carousel is open/created with the first slide active, if other slide is set to active from the beginning then the next and prev won't rotate/animate. This issue also happens on the demo code plunkr that's posed on the docs.
Interval set to 5000, no wrap set to false manually slides are objects with keys (image, active, text and id). I'm not sure if this might interfere for mouse events but I'm using it inside a modal.
To reproduce add the key and value "active: currIndex === 2" on the demo code in plunkr.
Also, leave focus of the window/tab for a while and come back animations have stop working.

Can you post a reproduction on Plunker?

http://plnkr.co/edit/UTsOV8HmaKT917D4M3Tj?p=preview

Alright I think I have some pointers that might help to the person that tries to fix this.
When the active slide is not the first one a transition gets started to "move" to the active slide causing $scope.$currentTransition to be set to true, but that transition is never cleared so when the next ones comes the code goes to the else if in line 468 the part of "//Prevent this user-triggered transition from occurring if there is already one in progress" because the $scope.$currentTransition was not cleared.
This doesn't happen when the active slide is the first one because no transitions start in this case.
Also I think this happens because on the addSlide function clearing the $scope.$currentTransition to null happens before trying to ".select()" the active slide so it will be set to true again. But not a 100% sure.
Please have a look

I have the same issue.
I can only get it to work with Angular 1.3.X + ui-bootstrap 0.14.3 (still using bootstrap CSS 3.3.6), anything more recent seems to be broken that way.

I think this is fixed in the new api change in 32a247471f53024fd573051b02f22f7e6c901046, as seen here.

Hi,
my team and I were experiencing this issue with "Angular" and "angular-animate" 1.5.3 and after updating to 1.5.5, the issue is still there. We have also updated "angular-bootstrap" to 1.3.2.
$scope.$currentTransition = true; in goNext() is still breaking the carousel navigation. If we comment out that line, then everything works fine.
The problem seems to be related with ngAnimate, as this method is not triggering:
$animate.on('addClass', slides[index].element, function(element, phase) {
Therefore, the condition if (phase === 'close') is never happening and then $scope.$currentTransition = null; is never set.
Thanks.

+1 for @gazpachu suggestion to comment out $scope.$currentTransition = true;
i'm getting the same issue when moving between to another tab on the browser. this solves the problem.

Regarding my previous comment, this is something difficult to show in a plnkr, as it's happening when the carousel is used in conjunction with other modules, pages, etc. So, if no one is going to pay attention to this issue because there's no plnkr to prove it, then this issue will never be fixed :(

@gazpachu, that should be a red flag to you that you're probably doing something wrong then.  to be quite honest, OSS maintainers are not very fond of the reasoning:  "I can't create a plunker because ..." and use this line is not likely to get you much sympathy or assistance.  as most OSS maintainers are unpaid volunteers, the onus is on you to show that the bug lies with OSS software you are using.  one of the rationales behind that is that if you are unable or unwilling to put forth the effort to try and debug why something is happening in your application, why should we?

That's not the rationale - the rationale is that we have a limited amount of time, and we are not mindreaders. It turns out an extraordinary amount of time gets wasted when issues are reported without detailed reproductions, and sometimes they turn out to not be bugs at all, but we cannot know that without a base to work off of.
Claiming there's a bug is one thing, but demonstrating that it is indeed a bug and not user error is another.

I had the same issue. I am using ui-bootstrap--tbls-1.1.1.js.
In function goNext(), I commented out the line
//$scope.$currentTransition = true;
and that seems to have fixed the problem for me.

I got it working by updating the scope inside a timeout
index = 1;
$timeout(function() {
  $scope.slides[index].active = true;
})

Hope this helps.

I am still having this issue with ui.bootstrap 2.5.0. $scope.$currentTransition doesn't get reset at the end of the transition.

I apparently successfully masked this problem by adding
$timeout( function() { $scope.$currentTransition = false; }, 800 );
below the line in GoNext referenced by @RichardCroxall  above.  This enables me to keep the transition protection (without this, double-clicking on Next causes temporary UI pandemonium), yet ensure the transition period ends so that the carousel doesn't freeze when the browser loses focus for a while.


Implement Debug for Date, Time, Offset

I see that many other structs implement Debug in this way. How does this look?
(This will help a downstream project I'm working on.)

I think these might be a bit better derived rather than forwarding to display? That way it should be clear which field is which I think

I'll take a look.

I made the structs derive Debug in #455.

toml-rs has moved to https://github.com/toml-rs/toml_edit.  Feel free to rebase your PR against that repo and open a new issue there.


Query raise the error of Connection reset by peer

Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)

chBenchmark, the duration of q13 is about 3s, but it exceed 17m with error of Connection reset by peer.
some log
[2022/09/16 01:53:36.106 +08:00] [ERROR] [workload.go:275] ["end query"] [qno=q13] ["sql comment"=] ["consume time"=17m21s] ["result count"=0] [error="Error 1105: other error for mpp stream: From MPP<query:436014514131697690,task:12>: Code: 0, e.displayText() = DB::Exception: Receiver state: ERROR, error message: Exchange receiver meet error : Connection reset by peer, e.what() = DB::Exception,"]

[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=1] [address=[tc-tiflash-1.tc](http://tc-tiflash-1.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Table(customer)->Send(7, 8, 9, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=2] [address=[tc-tiflash-0.tc](http://tc-tiflash-0.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Table(customer)->Send(7, 8, 9, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=3] [address=[tc-tiflash-2.tc](http://tc-tiflash-2.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Table(customer)->Send(7, 8, 9, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=4] [address=[tc-tiflash-2.tc](http://tc-tiflash-2.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Table(orders)->Sel([gt(tpcc.orders.o_carrier_id, 8) not(isnull(tpcc.orders.o_c_id))])->Send(7, 8, 9, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=5] [address=[tc-tiflash-0.tc](http://tc-tiflash-0.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Table(orders)->Sel([gt(tpcc.orders.o_carrier_id, 8) not(isnull(tpcc.orders.o_c_id))])->Send(7, 8, 9, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=6] [address=[tc-tiflash-1.tc](http://tc-tiflash-1.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Table(orders)->Sel([gt(tpcc.orders.o_carrier_id, 8) not(isnull(tpcc.orders.o_c_id))])->Send(7, 8, 9, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=7] [address=[tc-tiflash-1.tc](http://tc-tiflash-1.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="LeftHashJoin{Recv(1, 2, 3, )->Recv(4, 5, 6, )}(tpcc.customer.c_w_id,tpcc.orders.o_w_id)(tpcc.customer.c_d_id,tpcc.orders.o_d_id)(tpcc.customer.c_id,tpcc.orders.o_c_id)->HashAgg->Projection->Send(10, 11, 12, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=8] [address=[tc-tiflash-0.tc](http://tc-tiflash-0.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="LeftHashJoin{Recv(1, 2, 3, )->Recv(4, 5, 6, )}(tpcc.customer.c_w_id,tpcc.orders.o_w_id)(tpcc.customer.c_d_id,tpcc.orders.o_d_id)(tpcc.customer.c_id,tpcc.orders.o_c_id)->HashAgg->Projection->Send(10, 11, 12, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=9] [address=[tc-tiflash-2.tc](http://tc-tiflash-2.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="LeftHashJoin{Recv(1, 2, 3, )->Recv(4, 5, 6, )}(tpcc.customer.c_w_id,tpcc.orders.o_w_id)(tpcc.customer.c_d_id,tpcc.orders.o_d_id)(tpcc.customer.c_id,tpcc.orders.o_c_id)->HashAgg->Projection->Send(10, 11, 12, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=10] [address=[tc-tiflash-1.tc](http://tc-tiflash-1.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Recv(7, 8, 9, )->HashAgg->Projection->Projection->Send(-1, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=11] [address=[tc-tiflash-0.tc](http://tc-tiflash-0.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Recv(7, 8, 9, )->HashAgg->Projection->Projection->Send(-1, )"]
[2022/09/16 01:36:14.843 +08:00] [INFO] [mpp_gather.go:80] ["Dispatch mpp task"] [timestamp=436014514131697690] [ID=12] [address=[tc-tiflash-2.tc](http://tc-tiflash-2.tc/)-tiflash-peer.endless-htap-ch-full-ap-query-tps-1261675-1-15.svc:3930] [plan="Recv(7, 8, 9, )->HashAgg->Projection->Projection->Send(-1, )"]

2. What did you expect to see? (Required)
3. What did you see instead (Required)
4. What is your TiFlash version? (Required)
master

not reproduced , close it. feel free to reopen it.


Rails with configurable max speed

We now have some rails with different levels, but they are only in a fixed max speed.
Can we adjust them for different max speed? Like 0-20 km/h for wooden, 20-40 km/h for stone, and so on.
Like if we right click them, it will open an interface to set up the speed we need.
And we can also add a creative type of rail, which can define any speed we want.

What about netherite rails that can do up to 2,400kph...

Faster than Mach 2 :~)

What will happen if 1024? ? ?

computer melt hole in table

Also customised rail speed used to exist in the forge version

Probably not gonna implement this as it will be less user-friendly. There are also more speed rails added into the latest version. Thanks for your suggestion!


[AUTHZ] Check generated policy file in test suite

Why are the changes needed?

add ut to check generated Ranger policy file in #4585
manually activated genpolicy profile in CI builds, as the property based activation not auto-triggered  as expectedly with property ranger.version=2.4.0 set in project parent pom
Support regenerated policy file within the same test suite, by running
KYUUBI_UPDATE=1 build/mvn clean test -pl :kyuubi-spark-authz_2.12 -Dtest=none -DwildcardSuites=org.apache.kyuubi.plugin.spark.authz.gen.PolicyJsonFileGenerator -Pgenpolicy

How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[x] Run test locally before make a pull request

Codecov Report

Merging #4677 (892faf5) into master (5faebb1) will decrease coverage by 0.04%.
The diff coverage is n/a.

:exclamation: Current head 892faf5 differs from pull request most recent head 6366c50. Consider uploading reports for the commit 6366c50 to get more accurate results

@@             Coverage Diff              @@
##             master    #4677      +/-   ##
============================================
- Coverage     57.68%   57.64%   -0.04%
  Complexity       13       13
============================================
  Files           579      579
  Lines         32012    32012
  Branches       4275     4275
============================================
- Hits          18465    18453      -12
- Misses        11784    11789       +5
- Partials       1763     1770       +7

see 9 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Thanks, merged to master.


amm_arb limit order placed right under order its supposed to fill

Describe the bug
amm_arb between mexc <> kucoin:
MEXC limit order is supposed to fill a buy/sell order, but instead places the order right next to the order that's supposed to be filled.
On some occassions, a partial fill happens.

Triggers randomly, but multiple times per day when the market moves.
Stopping and starting the strategy doesn't fix it. It will cancel the open order and then place the same faulty order again.
The bot waits for the order to be filled, stopping any further trading.
The market order on connector 2 (kucoin) is made despite concurrent orders being off. leading to problematic scenario every time you stop & start bot:
Mexc limit order = unfilled
Kucoin market order = filled
Temporary fix = switching config to use different order amounts / profit take %
Steps To Reproduce
set mexc to use limit orders (market orders not supported)
start a basic amm_arb strategy between mexc <> kucoin and leave it running for a while.
Release version
both 1.13 & 1.14
Attachments
Log file doesn't give any errors to work with, just says limit order is placed.
config file is basic amm_arb

also noticing some missing tokens now and then that aren't explained by the above scenario. meaning some faulty buy/sell orders were made and registered as a successful arbitrage.

Seems to be the rounding error described here, which is now being worked on. https://github.com/orgs/hummingbot/projects/11/views/1?pane=issue&itemId=22487321


cachePromise may resolve a empty value.

I want to replace Map with Redis.
The question is, this line uses the cachePromise which the get function returns to check the data is cached or not.
But Redis needs to return a Promise before it knows the data is there or not.
https://github.com/facebook/dataloader/blob/dc3f0cdd0e85067b96a5d11a238a4b548d5bb63d/src/index.js#L88
Any solutions?

Saw some issues.


Request: add pnpsummit.com to the filter

Evidence: https://www.pnpsummit.com/show-question/1636662/python-how-do-i-control-my-mouse-with-a-ps4-controller
Original: https://stackoverflow.com/questions/67660062/how-do-i-control-my-mouse-with-a-ps4-controller

Thanks a lot!


Domains

Requirements

[x] You have completed your website.
[x] The website is reachable.
[x] You have put a full stop (.) at the end of each of the CNAME, MX and NS records.
[x] The CNAME record doesn't contain https:// or /.
[x] There is sufficient information at the owner field.

Description
My own projects on Github
Link to Website
https://jakubkruziko.github.io

CLA Assistant Lite bot: Thank you for your submission, we really appreciate it. Like many open-source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution. You can sign the CLA by just posting a Pull Request Comment same as the below format.

I have read the CLA Document and I hereby sign the CLA

You can retrigger this bot by commenting recheck in this Pull Request

I have read the CLA Document and I hereby sign the CLA

@jakubkruziko You need to sign the CLA document.


CONTRIBUTING.md guide question / local service running

What

I was attempting to run a local version of this service.  Using the CONTRIBUTING.md did not start a server as expected.
Details
It appears that the Fastly CLI (using Viceroy under the covers) was added to this project relatively recently.   When I attempt to follow the getting started steps in the CONTRIBUTING.md, I get an error message about viceroy.
$ git clone https://github.com/JakeChampion/polyfill-service.git
$ cd polyfill-service
$ npm ci
$ npm run build # build the assets for the website
$ npm start # start a server on <IP_ADDRESS>:8080

> start
> viceroy bin/main.wasm -C fastly.toml

sh: viceroy: command not found

Just wanted to know what the preferred way to run this locally is.

Thanks for the issue @bobstrecansky - I have now updated the command to use the fastly cli instead of assuming viceroy is installed and in the users PATH 👍

@JakeChampion - very much appreciate the swift response.  I've tested the version that you've updated on main, and I noticed two other small issues:

when I run npm ci with the latest node version (node 20.7.0), I also need to add a --force flag to have the dependencies hash out as expected.

When I run npm start, the viceroy server serves a 500 response, because it's unable to find the KVStore for what I'm assuming is the current polyfill library.

I've attached a full gist of the server output here:
https://gist.github.com/bobstrecansky/2ac3760b857657dc938fd9ee4378f802
Most notably here is the error about the KVStore:
https://gist.github.com/bobstrecansky/2ac3760b857657dc938fd9ee4378f802#file-gistfile1-txt-L342

(that --force may alternatively need to Bev a --legacy-peer-deps, not quite sure)

ah oh, you first need to run npm run build and then run ./update-local-object-stores.sh, after that npm start should work

I think I also need to install https://github.com/JakeChampion/c-at-e-file-server/releases/tag/main in order to use that ./update-local-object-stores.sh script correctly.  Trying that out now.  If I can get this to work, I'll let you know and hopefully be able to share a Dockerfile for this.


[HOLD for payment 2024-10-10] [$125] The continue button has some extra bottom padding on the page we enter name after selecting the onboarding option.

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.18-1
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @allgandalf
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1723118907902239
Action Performed:

login with new account
On onboarding modal, select something else
Observe the extra bottom padding

Expected Result:
No extra bottom padding for Continue button
Actual Result:
Extra bottom padding observed for Continue button
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[x] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~0112ea720a987767e3
Upwork Job ID:<PHONE_NUMBER>746870352
Last Price Increase: 2024-08-15
Automatic offers:

allgandalf | Reviewer | 103622446
BhuvaneshPatil | Contributor | 103622448

Issue OwnerCurrent Issue Owner: @
Issue OwnerCurrent Issue Owner: @joekaufmanexpensify

Price updating as this is a pretty minor issue

Proposal
Please re-state the problem that we are trying to solve in this issue.
Continue button in on-boarding forms has extra space at bottom when viewed on devices with small screen width
What is the root cause of that problem?
The extra margin bottom is being added when we have footer content passed in FormProvider component
https://github.com/Expensify/App/blob/cc4626f393daf4171a0bccc190be39132ac021ea/src/components/FormAlertWithSubmitButton.tsx#L82
Although OfflineIndicator renders when we are online null but margins is still applied because it's truthy value.
const PersonalDetailsFooterInstance = <OfflineIndicator />;

What changes do you think we should make in order to solve the problem?
There are two approaches for solving this -

Remove the line where we pass FooterContent to FormProvider and add that component outside form provider -

<FormProvider
                    style={[styles.flexGrow1, isMediumOrLargerScreenWidth && styles.mt5, isMediumOrLargerScreenWidth ? styles.mh8 : styles.mh5]}
                    formID={ONYXKEYS.FORMS.ONBOARDING_PERSONAL_DETAILS_FORM}
                    validate={validate}
                    onSubmit={completeEngagement}
                    submitButtonText={translate('common.continue')}
                    enabledWhenOffline
                    submitFlexEnabled
                    shouldValidateOnBlur={false}
                    shouldValidateOnChange={shouldValidateOnChange}
                    shouldTrimValues={false}
                >
                 {....}
                </FormProvider>
                {isSmallScreenWidth && PersonalDetailsFooterInstance}

This approach is being followed at other places in application.

Create room page

This approach is simpler to follow and with less changes.
If we change PersonalDetailsFooterInstance to

const PersonalDetailsFooterInstance = OfflineIndicator({});

It will work as expected. Reason being function will return null in case we are online, so footerContent will be falsy value and extra margin not added. If we are online, it will return the content of component.

Demo
https://github.com/user-attachments/assets/4893113c-bed6-4bf3-955e-4545f1ca7656

Also we need to verify if removing footer content and then changing to offline throttling shows indicator as mentioned in other proposal because I didn't get the expected result.
What alternative solutions did you explore? (Optional)

Proposal updated,
change online to offline at one place

@allgandalf think there will be an update today?

@allgandalf Can you please verify if removing
https://github.com/Expensify/App/blob/cc4626f393daf4171a0bccc190be39132ac021ea/src/pages/OnboardingPersonalDetails/BaseOnboardingPersonalDetails.tsx#L149
Line is working.
Because I tried and it didn't show the indicator

https://github.com/user-attachments/assets/e4508cba-35cb-44ef-a6e4-58b584b8ad99
Please verify changes I have shown are correct. It didn't show for me

Tried directly passing the style -
https://github.com/user-attachments/assets/a6d973d0-129f-42ab-8d5e-187beac2c094
That didn't work either

@allgandalf  Checked on simulator, it is working. Interesting though why it's not working on mweb.

Waiting for @aldo-expensify sign off on proposal

It would have been nice if the screenshots in the issue showed what padding this is talking about. The pictures are the same.
Is this something that happens only in IOS native? the issues says that, but then @BhuvaneshPatil says this doesn't work in mweb.... so is it only happening in IOS native or is it happening in all mobile screens? Can we get a more accurate description of the issue?

@aldo-expensify I updated the screenshots in OP of the issue, I think applause incorrectly added the same one twice from the slack thread.
@allgandalf do you agree that the selected proposal is not working on all platforms?

@aldo-expensify I updated the screenshots in OP of the issue, I think applause incorrectly added the same one twice from the slack thread.

Thanks!

Great. TY!

As an fyi, going to be OOO from tomorrow - Monday. Not adding another BZ since nothing should be needed during that time. Please ask in slack if something comes up.

TY!

Thanks for rechecking everything @allgandalf

@BhuvaneshPatil when do you think you can have a PR up?

Feeling under the weather for 2-3 days. Please give me sometime. I will raise the PR.

No worries, just asking, this is a low priority issue, take your time until you feel better :)

PR in progress

@aldo-expensify I am good now. Thank you for asking. I will be raising the PR by tonight

PR in review

PR still in review

Same

Pr under review

PR still in review

@allgandalf could you handle BZ checklist so I can prep for payment?

Ah, yeah that is fair. We can probably skip here.

@BhuvaneshPatil $125 sent and contract ended!

@allgandalf $125 sent and contract ended!

All set, thanks everyone!


The notification is not localized on CORS Settings dialog

Storage Explorer Version: 1.11.0
Build: 20191128.5
Branch: master
Language: Chinese(zh-CN)/Chinese(zh-TW)
Platform/OS: Windows 10/ Linux Ubuntu 18.04/macOS High Sierra
Architecture: ia32/x64
Regression From: Not a regression
Steps to reproduce:

Launch Storage Explorer.
Open 'Settings' -> Application (Regional Settings) -> Select '中文(简体)' -> Restart Storage Explorer.
Expand a storage account -> Right click File Shares node -> Click '配置CORS 设置...'.
Click '添加' on the CORS Settings dialog.
Input 'e' / '-1' to ‘最长使用时间’ textbox -> Hover over the textbox then check the notification.

Expect Experience:
The notification is localized.
Actual Experience:
The notification is not localized.

@craxal Is this exposed to loc ?

We actually have no control of these strings as they are from the external component.  These are very very edge case.  The ROI for fixing isn't worthy the attempt.  Won't fix for now.


feat: solidity sha3 implementation added

Based on https://web3js.readthedocs.io/en/v1.2.11/web3-utils.html?highlight=soliditySha3#soliditysha3
And built around https://github.com/skywinder/web3swift/blob/develop/Sources/web3swift/EthereumABI/ABIEncoding.swift

@yaroslavyaroslav Thanks!


Disable?

The extension remains on, after disabling or even after deleting .local/share/gnome-shell/extensions
How do I disable?

I had the same problem way back. In my testing, the extension never got disabled at all due to a bug. If you can provide a log, we can pinpoint it. IIRC, I fixed it here https://github.com/franglais125/no-title-bar/commit/b2c498048f84a88d2a1b75d3996f4f8cd8028d8a (can't be 100% sure).
Otherwise, for your case in particular, you can simply log out and back in, everything should be restored (since you want the extension removed).

I tried logging out and back in (well, rebooting the computer), and actually resetting all gnome settings.  Nothing has seemed to work -- I hope I don't have to wipe the machine.
Can you tell me what log information would be useful?  I am happy to provide anything.

The best bet would be to manually remove the extension by deleting the files from<EMAIL_ADDRESS>(check whether it exists).
Perhaps something like:
cd ~/.local/share/gnome-shell/extensions/
rm -rf<EMAIL_ADDRESS>
And then you can log out and back in.

I tried that, no luck.  Is there somewhere else which might be retaining the information?
ls -alh ~/.local/share/gnome-shell/
total 16K
drwx------  2 tjn tjn 4.0K Aug 15 16:40 .
drwx------ 30 tjn tjn 4.0K Aug 15 14:47 ..
-rw-rw-r--  1 tjn tjn 2.6K Aug 15 16:40 application_state
-rw-rw-r--  1 tjn tjn  455 Aug 15 10:35 notifications

What distro do you use? Have you installed the extension from the repos maybe?

Ubuntu 18.04.  I originally installed it from the github by manually copying files and activating it by command line.  After removing the files manually didn't undo the changes, I also tried installing and uninstalling from the gnome extensions web app.
I also just now tried installing from the repos as suggested above, and uninstalling it (and logging out/in afterwards), which also didn't work.
Do you think it would be feasible for me to modify the gnome settings manually to restore the original behavior?  (or somehow obtain the original configuration without re-installing the OS?)

Actually, I just realized I should clarify something ... I no longer have any title bars after after having installed this app for the first time.  (not just limited to maximized windows)

I just deleted ~/.config/gtk-3.0/ and this seemed to fix it.


Add loading="lazy" to <img> tag

We can use it in the home page, but in the article and other place like that, we could use loading="lazy" on image tag to make page load even faster.

Great idea!
We'll need to do that in a combination of two places:

on any image_tag methods in this repo
on img generation in our media_markdown gem

I'd do it in media markdown first, but I'd wait for the new design for doing it in the design, tho. :)


fix a minor issue for pac setup

Issue:
Kustomize cannot refer to individual resources in parent directories, it can only refer to resources in current or child directories, but it can refer to other Kustomize directories.
Changes:
It constructs the blow directory structure , so Kustomize can refer to the resource in the directory gitops/pac/manifests
${TMP_DIR}
├── base
│   ├── ci-runner-ns.yaml
│   ├── ingress.yaml
│   ├── kustomization.yaml
│   ├── repository.yaml
│   └── webhook-cfg-secret.yaml
└── overlays
    └── patch
        ├── kustomization.yaml
        ├── patch-repo.yaml
        ├── patch-secret.yaml
        └── patched.yaml

@Roming22 @fgiloux Let me know if this is okay to be merged.

@Roming22 Thanks.
@fgiloux is taking a look at this. Please do the needful.


Move ESLint configuration to package.json file

As discussed on #441, let's move ESLint configuration to package.json file.
In summary, ecmascript track has already ESLint configuration in package.json files, because it was more convenient for track maintenance.
In the case of this track, it's not so important where the configuration is placed. But, just to keep consistency between those two tracks, ESLint configuration should be inside package.json file.

Let us not move the .eslintignore since it is getting removed eventually after #399 and I have already put on instructions to remove exercise lines from .eslintingore at a couple of places in pending PRs.

@tejasbubane Can I take up this

Sure. Go for it.

@tejasbubane I have given a PR

@tejasbubane @ajomadlabs I thought @tejasbubane might want to approve that PR, I've given my 2 cents already.  Looks good to me after the changes.

@tejasbubane Are the changes that has been made, correct ?


extra state (when embedded to other view) not available

Steps to reproduce:

Create new JsCodeView. I.e. with code return markupTags.pre('state = '+JSON.stringify(state,null,2));.
Embedding JsCodeView to other (Show) view and set {id:row.id} as external state.
Load Show view for some record (so row.id is defined).

Actual results:
state = {}

Expected result:
state = {
  "id": 1
}

Logic proof
When loading JsCodeView with ?id=1 parameter directly state contains id.

Possibly related to saltcorn/saltcorn#1790.

Fixed in saltcorn/saltcorn#2113.


Fix simplejwt integration, add tests and update example project

Fix simplejwt workflow.
TODO: Update README in next PR

Coverage increased (+4.7%) to 87.205% when pulling 630022b1a27df7b05e98c405d2a24b4946e43747 on fix-simple-jwt into e3770aad22eb56ee9a89f413ab22f1948062bde8 on master.


docs: How to deploy Jitsi (and potentially other examples) into DOKS

This issue aims to document how to deploy the Jitsi example into a Digital Ocean Kubernetes cluster.
Jitsi
The mentioned example/tutorial was created using GKE, which means it wasn't tested on other cloud providers. Unfortunately, DOKS is much more strict about creating load balancer services (with a public IP address). To expose TCP ports to the public internet is easy, and there is nothing to modify, however, to expose UDP ports requires some fine-tuning. If a load balancer uses UDP in its forwarding rules, the load balancer requires that a health check port is set that uses TCP, HTTP, or HTTPS to work properly (DOKS health check).
The most important fact is that a health check port must be exposed to the public internet, just to get the load balancer up and running. This is not too secure, because this port is unprotected and lets anyone test this port and get information about the health of your pods in the cluster. While it's unfortunate it is a must-have configuration.
In order to achieve a working UDP load balancer a slightly modified GatewayConfig and Gateway must be used.
loadBalancerServiceAnnotations will be added to the created service as extra annotations. These will tell the DOKS API where and how to check the healthiness of the underlying endpoints (pods).
And an extra TCP port on 8086 will be exposed used for health checking.
apiVersion: stunner.l7mp.io/v1alpha1
kind: GatewayConfig
metadata:
  name: stunner-gatewayconfig
  namespace: stunner
spec:
  authType: longterm
  sharedSecret: "my-shared-secret"
  loadBalancerServiceAnnotations:
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-port: "8086"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-protocol: "http"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-path: "/live"
---
apiVersion: gateway.networking.k8s.io/v1alpha2
kind: Gateway
metadata:
  name: udp-gateway
  namespace: stunner
spec:
  gatewayClassName: stunner-gatewayclass
  listeners:
    - name: health-check
      port: 8086
      protocol: TCP
    - name: udp-listener
      port: 3478
      protocol: UDP

What about other media servers, such as LiveKit?
Haven't tested yet but other examples should work the same way.

UDP load balancer services must have an extra health check port
GatewayConfig should have loadBalancerServiceAnnotations added to their configs
Gateway must have an extra health check port

Nice, thanks. What about adding a new subsection to the Jitsi tutorial README, something along the lines of "Enable health-checking" or similar?
Some notes:

With the new (yet unreleased) version of STUNner you can add per-Gateway annotations: any annotation added to the Gateway will be automatically added to the LB service created by the STUNner operator to expose the Gateway. Gateway annotations override GatewayConfig.Spec.LoadBalancerServiceAnnotations on conflict.

apiVersion: stunner.l7mp.io/v1alpha1
kind: GatewayConfig
metadata:
  name: stunner-gatewayconfig
  namespace: stunner
spec:
  authType: longterm
  sharedSecret: "my-shared-secret"
---
apiVersion: gateway.networking.k8s.io/v1alpha2
kind: Gateway
metadata:
  name: udp-gateway
  namespace: stunner
  annotations:
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-port: "8086"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-protocol: "http"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-path: "/live"
spec:
  gatewayClassName: stunner-gatewayclass
  listeners:
    - name: health-check
      port: 8086
      protocol: TCP
    - name: udp-listener
      port: 3478
      protocol: UDP

Multiprotocol LB services are not supported as of now, since support is fairly uneven across Kubernetes versions. The STUNner operator will remove the TCP service-port from the LB service it creates, leaving only the UDP port in. This means you will have to create the LB service to expose the Gateway manually: just copy the Service created by STUNner and add the missing service-ports.

In order to avoid having two LB Services for the Gateway (one created automatically and the manual copy), which usually costs extra $$$, we can fix the type of the service created by STUNner to ClusterIP by adding the special annotation stunner.l7mp.io/service-type: ClusterIP to the Gateway (or to the GatewayConfig loadBalancerServiceAnnotations but that will affect all services created by STUNner). This will still create a service but the type will be ClusterIP so it will not be exposed to the Internet, and this usually does not cause extra $$$.

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: Gateway
metadata:
  name: udp-gateway
  namespace: stunner
  annotations:
    stunner.l7mp.io/service-type: ClusterIP
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-port: "8086"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-protocol: "http"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-path: "/live"
spec:
  gatewayClassName: stunner-gatewayclass
  listeners:
    - name: health-check
      port: 8086
      protocol: TCP
    - name: udp-listener
      port: 3478
      protocol: UDP

Closing this due to inactivity. Feel free to reopen if the problem persists.


Add conda install option for pyctcdecode

A conda installation option could be very helpful. I have already started working on this, to add pyctcdecode to conda-forge.
Conda-forge PR:

https://github.com/conda-forge/staged-recipes/pull/17602

Once the conda-forge PR is merged, you will be able to install the library with conda as follows:
conda install -c conda-forge pyctcdecode

:bulb: I will push a PR to update the docs once the package is available on conda-forge.

cc: @gkucsko @poneill
It is now available on conda-forge channel. :tada:

You can run the following command to check version and avilability of pyctcdecode on conda-forge channel.
$ conda search -c conda-forge pyctcdecode
Loading channels: done
# Name                       Version           Build  Channel
pyctcdecode                    0.3.0    pyhd8ed1ab_0  conda-forge


Update the devenv documentation with pprof instructions

Document #836 work, binding pprof server to the public hostname to allow remote access to the profile data.
Closes USHIFT-254

LGTM

The executable size reduction is 150MB vs 115MB when CGO is disabled.
MicroShift executable build with CGO support
$ ldd microshift
        linux-vdso.so.1 (0x00007fff529f7000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fb7e7fcb000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fb7e7dab000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fb7e79e6000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fb7e81cf000)
$ ls -l microshift
-rwxrwxr-x. 1 microshift microshift 151104128 Aug  7 08:42 microshift

MicroShift executable built without CGO support
$ ldd microshift
        not a dynamic executable
$ ls -l microshift
-rwxrwxr-x. 1 microshift microshift 119431168 Aug  8 01:33 microshift

/assign @mangelajo


jobs/css/bootstrap.min.css values conflict with css/main.css

The job form uses a full bootstrap.min.css that has different defaults than main.css.
Some example:

.navbar-nav>li>a: padding from 20px to 15px
.navbar-nav>li>a: font-size from 16px to 14px
etc.

This is visible here for example:

Job Form nav:

Main nav:

I'm sure other values also conflict.
Solutions:

see if jobs/css/bootstrap.min.css can be removed or what it brings in addition. those values can be added in main.css
use the same Bootstrap values in jobs/css/bootstrap.min.css as main.css

Thankyou @evalica  :)
Even I have noticed this issue.
Using the same values will bring the consistent to the website.
Is there any other view on this issue? or will I change the values

It should be investigated why that file was added in the first place.

I'm fairly sure it uses bootstrap to do most of its styling. If that file were removed we'd lose a lot of the basic styles - which is not necessarily a bad thing, it's a lot of styles for a simple web form.

Yep. This should be harmonized to be using the same global CSS styles and template in mail site repo!

Is this still an issue? can it be closed?


standard-controller: is trying to connect to router which was already killed

description:
when router is automatically scaled down from 3 to 2 replicas (in automated test bellow) then in standard-controller log are logged following errors: (because 3rd router was already killed)
{"log":"2018-03-20 10:49:16 INFO  AddressController:236 - Error requesting router status from qdrouterd-1825555819-kb2ht. Ignoring\n","stream":"stdout","time":"2018-03-20T10:49:16.925574751Z"}
{"log":"java.util.concurrent.ExecutionException: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /<IP_ADDRESS>:55671\n","stream":"stdout","time":"2018-03-20T10:49:16.92559971Z"}
{"log":"\u0009at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\n","stream":"stdout","time":"2018-03-20T10:49:16.925602817Z"}
{"log":"\u0009at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915)\n","stream":"stdout","time":"2018-03-20T10:49:16.925605496Z"}
{"log":"\u0009at io.enmasse.amqp.SyncRequestClient.request(SyncRequestClient.java:89)\n","stream":"stdout","time":"2018-03-20T10:49:16.925607512Z"}
{"log":"\u0009at io.enmasse.controller.standard.RouterStatusCollector.collectRouter(RouterStatusCollector.java:101)\n","stream":"stdout","time":"2018-03-20T10:49:16.925609535Z"}
{"log":"\u0009at io.enmasse.controller.standard.RouterStatusCollector.collect(RouterStatusCollector.java:61)\n","stream":"stdout","time":"2018-03-20T10:49:16.925618646Z"}
{"log":"\u0009at io.enmasse.controller.standard.AddressController.checkStatuses(AddressController.java:231)\n","stream":"stdout","time":"2018-03-20T10:49:16.925620943Z"}
{"log":"\u0009at io.enmasse.controller.standard.AddressController.onUpdate(AddressController.java:133)\n","stream":"stdout","time":"2018-03-20T10:49:16.92562293Z"}
{"log":"\u0009at io.enmasse.k8s.api.ResourceChecker.doWork(ResourceChecker.java:48)\n","stream":"stdout","time":"2018-03-20T10:49:16.925624834Z"}
{"log":"\u0009at io.enmasse.k8s.api.ResourceChecker.run(ResourceChecker.java:40)\n","stream":"stdout","time":"2018-03-20T10:49:16.925626745Z"}
{"log":"\u0009at java.lang.Thread.run(Thread.java:748)\n","stream":"stdout","time":"2018-03-20T10:49:16.925628574Z"}
{"log":"Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /<IP_ADDRESS>:55671\n","stream":"stdout","time":"2018-03-20T10:49:16.925630464Z"}
{"log":"\u0009at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)\n","stream":"stdout","time":"2018-03-20T10:49:16.925632392Z"}
{"log":"\u0009at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717)\n","stream":"stdout","time":"2018-03-20T10:49:16.925634378Z"}
{"log":"\u0009at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:325)\n","stream":"stdout","time":"2018-03-20T10:49:16.92563623Z"}
{"log":"\u0009at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:340)\n","stream":"stdout","time":"2018-03-20T10:49:16.925638189Z"}
{"log":"\u0009at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:633)\n","stream":"stdout","time":"2018-03-20T10:49:16.92564047Z"}
{"log":"\u0009at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:580)\n","stream":"stdout","time":"2018-03-20T10:49:16.92564249Z"}
{"log":"\u0009at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:497)\n","stream":"stdout","time":"2018-03-20T10:49:16.925644366Z"}
{"log":"\u0009at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:459)\n","stream":"stdout","time":"2018-03-20T10:49:16.92564626Z"}
{"log":"\u0009at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:886)\n","stream":"stdout","time":"2018-03-20T10:49:16.925648089Z"}
{"log":"\u0009at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)\n","stream":"stdout","time":"2018-03-20T10:49:16.925650064Z"}
{"log":"\u0009... 1 more\n","stream":"stdout","time":"2018-03-20T10:49:16.92565193Z"}
{"log":"Caused by: java.net.ConnectException: Connection refused\n","stream":"stdout","time":"2018-03-20T10:49:16.925654702Z"}
{"log":"\u0009... 11 more\n","stream":"stdout","time":"2018-03-20T10:49:16.925681138Z"}
{"log":"2018-03-20 10:49:16 WARN  LogEventLogger:22 - RouterCheckFailed (kind=AddressSpace name=standard-shared-0): io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /<IP_ADDRESS>:55671\n","stream":"stdout","time":"2018-03-20T10:49:16.926078645Z"}

This issue has no impact to functionality. Thank you @lulf  for collaboration on identification this issue!
automated test:
make MULTITENANT=true SYSTEMTEST_ARGS='standard.AnycastTest#testScaleRouterAutomatically' systemtests

@lulf I'm afraid that the fix doesn't work. You can take a look into our CI standard-tests, build No.736,
${JENKINS_URL}/job/enmasse-master-standard/736/artifact/artifacts/docker-logs/standard-shared-0/admin-2162220174-qwhp2_standard-shared-0_standard-controller-55fd2cf1274cf674eae3617a693f287c09106af4ae7e842acd2da7a0cb71e729.log/*view*/
there is still the same issue as above
{"log":"2018-05-29 02:28:39 INFO  AddressController:121 - Usage: {router={all={used=1.9900000000000015, needed=2}}, broker={broker-0={used=0.01, needed=1}}}, Needed: {router={all={used=1.9900000000000015, needed=2}}, broker={broker-0={used=0.01, needed=1}}}\n","stream":"stdout","time":"2018-05-29T02:28:39.707334728Z"}
{"log":"2018-05-29 02:28:39 INFO  AddressProvisioner:227 - Scaling router to 2 replicas\n","stream":"stdout","time":"2018-05-29T02:28:39.724496444Z"}
{"log":"2018-05-29 02:28:39 INFO  KubernetesHelper:128 - Scaling deployment with id qdrouterd and 2 replicas\n","stream":"stdout","time":"2018-05-29T02:28:39.724515792Z"}
{"log":"2018-05-29 02:28:39 INFO  AddressController:236 - Error requesting router status from qdrouterd-3227090358-l55tc. Ignoring\n","stream":"stdout","time":"2018-05-29T02:28:39.795015393Z"}
{"log":"java.util.concurrent.ExecutionException: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /<IP_ADDRESS>:55671\n","stream":"stdout","time":"2018-05-29T02:28:39.79503879Z"}
{"log":"\u0009at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\n","stream":"stdout","time":"2018-05-29T02:28:39.795042351Z"}
{"log":"\u0009at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915)\n","stream":"stdout","time":"2018-05-29T02:28:39.795051445Z"}
{"log":"\u0009at io.enmasse.amqp.SyncRequestClient.request(SyncRequestClient.java:89)\n","stream":"stdout","time":"2018-05-29T02:28:39.795054022Z"}
{"log":"\u0009at io.enmasse.controller.standard.RouterStatusCollector.collectRouter(RouterStatusCollector.java:101)\n","stream":"stdout","time":"2018-05-29T02:28:39.795056309Z"}
{"log":"\u0009at io.enmasse.controller.standard.RouterStatusCollector.collect(RouterStatusCollector.java:61)\n","stream":"stdout","time":"2018-05-29T02:28:39.795058455Z"}
{"log":"\u0009at io.enmasse.controller.standard.AddressController.checkStatuses(AddressController.java:231)\n","stream":"stdout","time":"2018-05-29T02:28:39.795060693Z"}
{"log":"\u0009at io.enmasse.controller.standard.AddressController.onUpdate(AddressController.java:133)\n","stream":"stdout","time":"2018-05-29T02:28:39.795062824Z"}
{"log":"\u0009at io.enmasse.k8s.api.ResourceChecker.doWork(ResourceChecker.java:48)\n","stream":"stdout","time":"2018-05-29T02:28:39.795065174Z"}
{"log":"\u0009at io.enmasse.k8s.api.ResourceChecker.run(ResourceChecker.java:40)\n","stream":"stdout","time":"2018-05-29T02:28:39.795067323Z"}
{"log":"\u0009at java.lang.Thread.run(Thread.java:748)\n","stream":"stdout","time":"2018-05-29T02:28:39.795069535Z"}
{"log":"Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /<IP_ADDRESS>:55671\n","stream":"stdout","time":"2018-05-29T02:28:39.795071659Z"}
{"log":"\u0009at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)\n","stream":"stdout","time":"2018-05-29T02:28:39.795073956Z"}
{"log":"\u0009at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717)\n","stream":"stdout","time":"2018-05-29T02:28:39.795076087Z"}
{"log":"\u0009at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:325)\n","stream":"stdout","time":"2018-05-29T02:28:39.795078332Z"}
{"log":"\u0009at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:340)\n","stream":"stdout","time":"2018-05-29T02:28:39.795080702Z"}
{"log":"\u0009at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:633)\n","stream":"stdout","time":"2018-05-29T02:28:39.79508297Z"}
{"log":"\u0009at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:580)\n","stream":"stdout","time":"2018-05-29T02:28:39.795085141Z"}
{"log":"\u0009at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:497)\n","stream":"stdout","time":"2018-05-29T02:28:39.795087386Z"}
{"log":"\u0009at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:459)\n","stream":"stdout","time":"2018-05-29T02:28:39.795089543Z"}
{"log":"\u0009at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:886)\n","stream":"stdout","time":"2018-05-29T02:28:39.795091739Z"}
{"log":"\u0009at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)\n","stream":"stdout","time":"2018-05-29T02:28:39.795093908Z"}
{"log":"\u0009... 1 more\n","stream":"stdout","time":"2018-05-29T02:28:39.795096182Z"}
{"log":"Caused by: java.net.ConnectException: Connection refused\n","stream":"stdout","time":"2018-05-29T02:28:39.795108819Z"}
{"log":"\u0009... 11 more\n","stream":"stdout","time":"2018-05-29T02:28:39.795113979Z"}
{"log":"2018-05-29 02:28:39 WARN  LogEventLogger:22 - RouterCheckFailed (kind=AddressSpace name=standard-shared-0): io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /<IP_ADDRESS>:55671\n","stream":"stdout","time":"2018-05-29T02:28:39.795116316Z"}

reopening this issue


Hosting options

I have a question regarding the different hosting options for this project. The official documentation is extremely confusing and weak and this repository doesn't seem to have any meaningful documentation either so apologies for asking a very straightforward question like this.
How can I host this project?
Is there an official Docker image for the Microsoft FHIR API?
Is there a managed service in Azure for this?
The official documentation talks about deploying an App Service from the marketplace? That would mean that it's not a managed service right? So after the initial deployment I'd be left maintaining the app service myself in an old fashioned way?
Here is what I essentially want to achieve and I can't work out from this repo or the docs how to do it:

I want a low maintenance way of hosting this API. If you release updates then I want to update my deployed API also in a low maintenance fashion (e.g. just changing the Docker image tag of my K8s manifest, or clicking a button in the Azure Portal to update to the latest version, or ideally just use a managed service where I don't have to do anything)
I want to configure my own CosmosDb connection string and other connection strings which are needed even if it is a managed service. Is there any documentation on what data storage this needs and where to configure it?
I want to run this API in a private network so I can put it behind a public proxy where I want to run existing authentication logic which I already have.

Any help in answering these questions would be much appreciated.
Thank you!

Hi @dustinmoris,
Thanks for the feedback, I understand the confusion. Since you have a lot of questions / requirements I'll try to group your options.
Firstly there are two managed offering to be aware of:

Azure API for FHIR, our current GA product based on Cosmos
Healthcare APIs - FHIR Service - our preview product based on the SQL backend

Questions

I need private link:

Managed options

Azure API for FHIR is the only option right now (https://docs.microsoft.com/en-us/azure/healthcare-apis/azure-api-for-fhir/fhir-paas-portal-quickstart and https://docs.microsoft.com/en-us/azure/healthcare-apis/azure-api-for-fhir/configure-private-link)

OSS

If you deploy to AppService you can configure privatelink yourself there: https://github.com/microsoft/fhir-server/blob/main/docs/DefaultDeployment.md

Is there an official docker image:

We push our OSS builds to Dockerhub via MCR (Microsoft Container Registry): https://hub.docker.com/_/microsoft-healthcareapis-r4-fhir-server

I want to configure my own CosmosDb connection string and other connection strings which are needed even if it is a managed service

You cannot configure connection string in the managed service, if you want this control your only option is OSS. Managed service takes care of more security features such as Key rotations and autoscaling compute based on configured database size.

I want a low maintenance way of hosting this API

We put a lot of work into making this happen smoothly for the managed service
If deploying OSS with a docker image, you should be able to update the tag to a later release: https://github.com/microsoft/fhir-server/releases

@dustinmoris - Let us know if you have other questions.


Running "Terminal: Attach to session" when there are no sessions dead-ends

Verifying https://github.com/microsoft/vscode/issues/118241
After I no longer had terminal session still around I ran the "Attach to session" command. The quick pick/input stays empty, and gives no indication that anything is happening or that there are no sessions:

to verify, in local vscode, run attach to session w no orphaned processes. you should see an informational message that tells you that's what happened and shouldn't see the quick pick.


Reference Kubeconfig File?

Hi,
Is there a way to point Kubewatch to our kubeconfig file that contains the auth token and K8s API url?

@spirrello Yes. You can set the envvar KUBECONFIG, otherwise kubewatch will use the default $HOME/.kube/config

Can you advise how to do this?

From: Tuna<EMAIL_ADDRESS>Sent: Wednesday, December 6, 2017 9:04:08 PM
To: skippbox/kubewatch
Cc: Stefano Pirrello; Mention
Subject: Re: [skippbox/kubewatch] Reference Kubeconfig File? (#68)
@spirrellohttps://github.com/spirrello Yes. You can set the envvar KUBECONFIG, otherwise kubewatch will use the default $HOME/.kube/config
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/skippbox/kubewatch/issues/68#issuecomment-349848621, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AG14dLCcRjZGACdDpxSBDIt9U2PEoEHCks5s91WogaJpZM4Q3Vwy.

Thanks...I figured it out.


Update mr-dev-days.md

Docs Build status updates of commit f32342a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/mr-dev-days.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Update ASRS FAQ

Add data reside doc for privacy guidance.
Add some faq to align with https://github.com/Azure/azure-signalr/blob/dev/docs/faq.md.

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

Admin note: If the PR is approved, the en-us locale needs to be removed from the microsoft.com URLs before merging. The PR review team can help with this.

#sign-off
Hi Review team,
Please help take care of url regions. Thanks!

@JialinXin: I'm sorry - only the author of this article, @sffamily, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

#sign-off

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


Auth token not successfully propagated...

cc @Kami
Context: ST2 2.2.0 without $ST2_AUTH_TOKEN environment variable set, but after successfully running st2 login.
root@7b0ec35f2fe8:~# cat ~/.st2/token-st2admin
{"expire_timestamp":<PHONE_NUMBER>, "token": "ef38f59b20c84cbda03e19d4da1c56a9"}
root@7b0ec35f2fe8:~# cat ~/.st2/config
[credentials]
username = st2admin

st2-self-check fails execution. It appears the auth token is not propagated successfully.
Here's the output from the first failed command run by st2-self-check (run manually: st2 --debug run tests.test_packs_pack):
root@7b0ec35f2fe8:~# st2 --debug run tests.test_key_triggers
2017-03-21 08:01:31,647  DEBUG - Using cached token from file "/root/.st2/token-st2admin"
# -------- begin<PHONE_NUMBER>84944 request ----------
curl -X GET -H  'Connection: keep-alive' -H  'Accept-Encoding: gzip, deflate' -H  'Accept: */*' -H  'User-Agent: python-requests/2.11.1' -H  'X-Auth-Token: ef38f59b20c84cbda03e19d4da1c56a9' http://<IP_ADDRESS>:9101/v1/actions/tests.test_key_triggers
# -------- begin<PHONE_NUMBER>84944 response ----------
{"name": "test_key_triggers", "parameters": {"token": {"default": "", "type": "string", "description": "st2 auth token"}, "hostname": {"default": "<IP_ADDRESS>", "type": "string", "description": "St2 host to run tests against"}, "protocol": {"default": "http", "type": "string", "description": "http/https"}}, "tags": [], "description": "Workflow tests key triggers functionality", "enabled": true, "entry_point": "chains/test_key_triggers.yaml", "notify": {}, "uid": "action:tests:test_key_triggers", "pack": "tests", "ref": "tests.test_key_triggers", "id": "58d0178550484300eb5228ca", "runner_type": "action-chain"}
# -------- end<PHONE_NUMBER>84944 response ------------

# -------- begin<PHONE_NUMBER>84816 request ----------
curl -X GET -H  'Connection: keep-alive' -H  'Accept-Encoding: gzip, deflate' -H  'Accept: */*' -H  'User-Agent: python-requests/2.11.1' -H  'X-Auth-Token: ef38f59b20c84cbda03e19d4da1c56a9' 'http://<IP_ADDRESS>:9101/v1/runnertypes/?name=action-chain'
# -------- begin<PHONE_NUMBER>84816 response ----------
[{"runner_module": "action_chain_runner", "uid": "runner_type:action-chain", "description": "A runner for launching linear action chains.", "enabled": true, "runner_parameters": {"display_published": {"default": false, "type": "boolean", "description": "Intermediate published variables will be stored and displayed."}, "skip_notify": {"default": [], "type": "array", "description": "List of tasks to skip notifications for."}}, "id": "58d0178550484300eb5228af", "name": "action-chain"}]
# -------- end<PHONE_NUMBER>84816 response ------------

# -------- begin<PHONE_NUMBER>85712 request ----------
curl -X POST -H  'Connection: keep-alive' -H  'Accept-Encoding: gzip, deflate' -H  'Accept: */*' -H  'User-Agent: python-requests/2.11.1' -H  'content-type: application/json' -H  'X-Auth-Token: ef38f59b20c84cbda03e19d4da1c56a9' -H  'Content-Length: 69' --data-binary '{"action": "tests.test_key_triggers", "user": null, "parameters": {}}' http://<IP_ADDRESS>:9101/v1/executions
# -------- begin<PHONE_NUMBER>85712 response ----------
{"status": "requested", "start_timestamp": "2017-03-21T08:01:31.719729Z", "log": [{"status": "requested", "timestamp": "2017-03-21T08:01:31.729699Z"}], "runner": {"runner_module": "action_chain_runner", "uid": "runner_type:action-chain", "description": "A runner for launching linear action chains.", "enabled": true, "runner_parameters": {"display_published": {"default": false, "type": "boolean", "description": "Intermediate published variables will be stored and displayed."}, "skip_notify": {"default": [], "type": "array", "description": "List of tasks to skip notifications for."}}, "id": "58d0178550484300eb5228af", "name": "action-chain"}, "web_url": "https://7b0ec35f2fe8/#/history/58d0dddb50484300b2a734ec/general", "context": {"user": "st2admin"}, "action": {"description": "Workflow tests key triggers functionality", "runner_type": "action-chain", "tags": [], "enabled": true, "pack": "tests", "entry_point": "chains/test_key_triggers.yaml", "notify": {}, "uid": "action:tests:test_key_triggers", "parameters": {"token": {"default": "", "type": "string", "description": "st2 auth token"}, "hostname": {"default": "<IP_ADDRESS>", "type": "string", "description": "St2 host to run tests against"}, "protocol": {"default": "http", "type": "string", "description": "http/https"}}, "ref": "tests.test_key_triggers", "id": "58d0178550484300eb5228ca", "name": "test_key_triggers"}, "liveaction": {"runner_info": {}, "parameters": {}, "action_is_workflow": true, "callback": {}, "action": "tests.test_key_triggers", "id": "58d0dddb50484300b2a734eb"}, "id": "58d0dddb50484300b2a734ec"}
# -------- end<PHONE_NUMBER>85712 response ------------

.# -------- begin<PHONE_NUMBER>85712 request ----------
curl -X GET -H  'Connection: keep-alive' -H  'Accept-Encoding: gzip, deflate' -H  'Accept: */*' -H  'User-Agent: python-requests/2.11.1' -H  'X-Auth-Token: ef38f59b20c84cbda03e19d4da1c56a9' http://<IP_ADDRESS>:9101/v1/executions/58d0dddb50484300b2a734ec
# -------- begin<PHONE_NUMBER>85712 response ----------
{"status": "running", "start_timestamp": "2017-03-21T08:01:31.719729Z", "log": [{"status": "requested", "timestamp": "2017-03-21T08:01:31.729000Z"}, {"status": "scheduled", "timestamp": "2017-03-21T08:01:31.792000Z"}, {"status": "running", "timestamp": "2017-03-21T08:01:31.847000Z"}], "runner": {"runner_module": "action_chain_runner", "uid": "runner_type:action-chain", "enabled": true, "name": "action-chain", "runner_parameters": {"display_published": {"default": false, "type": "boolean", "description": "Intermediate published variables will be stored and displayed."}, "skip_notify": {"default": [], "type": "array", "description": "List of tasks to skip notifications for."}}, "id": "58d0178550484300eb5228af", "description": "A runner for launching linear action chains."}, "id": "58d0dddb50484300b2a734ec", "web_url": "https://7b0ec35f2fe8/#/history/58d0dddb50484300b2a734ec/general", "context": {"user": "st2admin"}, "action": {"runner_type": "action-chain", "name": "test_key_triggers", "parameters": {"token": {"default": "", "type": "string", "description": "st2 auth token"}, "hostname": {"default": "<IP_ADDRESS>", "type": "string", "description": "St2 host to run tests against"}, "protocol": {"default": "http", "type": "string", "description": "http/https"}}, "tags": [], "enabled": true, "entry_point": "chains/test_key_triggers.yaml", "notify": {}, "uid": "action:tests:test_key_triggers", "pack": "tests", "ref": "tests.test_key_triggers", "id": "58d0178550484300eb5228ca", "description": "Workflow tests key triggers functionality"}, "liveaction": {"runner_info": {"hostname": "7b0ec35f2fe8", "pid": 95}, "parameters": {}, "action_is_workflow": true, "callback": {}, "action": "tests.test_key_triggers", "id": "58d0dddb50484300b2a734eb"}, "children": ["58d0dddc504843005fcaa98c", "58d0dddd504843005fcaa98e"]}
# -------- end<PHONE_NUMBER>85712 response ------------

.# -------- begin<PHONE_NUMBER>85712 request ----------
curl -X GET -H  'Connection: keep-alive' -H  'Accept-Encoding: gzip, deflate' -H  'Accept: */*' -H  'User-Agent: python-requests/2.11.1' -H  'X-Auth-Token: ef38f59b20c84cbda03e19d4da1c56a9' http://<IP_ADDRESS>:9101/v1/executions/58d0dddb50484300b2a734ec
# -------- begin<PHONE_NUMBER>85712 response ----------
{"status": "failed", "start_timestamp": "2017-03-21T08:01:31.719729Z", "log": [{"status": "requested", "timestamp": "2017-03-21T08:01:31.729000Z"}, {"status": "scheduled", "timestamp": "2017-03-21T08:01:31.792000Z"}, {"status": "running", "timestamp": "2017-03-21T08:01:31.847000Z"}, {"status": "failed", "timestamp": "2017-03-21T08:01:34.300000Z"}], "runner": {"runner_module": "action_chain_runner", "uid": "runner_type:action-chain", "enabled": true, "name": "action-chain", "runner_parameters": {"display_published": {"default": false, "type": "boolean", "description": "Intermediate published variables will be stored and displayed."}, "skip_notify": {"default": [], "type": "array", "description": "List of tasks to skip notifications for."}}, "id": "58d0178550484300eb5228af", "description": "A runner for launching linear action chains."}, "id": "58d0dddb50484300b2a734ec", "elapsed_seconds": 2.562138, "web_url": "https://7b0ec35f2fe8/#/history/58d0dddb50484300b2a734ec/general", "result": {"tasks": [{"name": "cleanup_environment", "workflow": null, "created_at": "2017-03-21T08:01:31.982818+00:00", "updated_at": "2017-03-21T08:01:33.118877+00:00", "state": "succeeded", "result": {"failed": false, "stderr": "Traceback (most recent call last):\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/commands/resource.py\", line 162, in get_resource_by_pk\n    instance = self.manager.get_by_id(pk, **kwargs)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 39, in decorate\n    return func(*args, **kwargs)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 204, in get_by_id\n    self.handle_error(response)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 165, in handle_error\n    response.raise_for_status()\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/requests/models.py\", line 862, in raise_for_status\n    raise HTTPError(http_error_msg, response=self)\nHTTPError: 401 Client Error: Unauthorized\nMESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/keys/a?scope=system", "return_code": 0, "succeeded": true, "stdout": "ERROR: 401 Client Error: Unauthorized\nMESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/keys/a?scope=system\n"}, "id": "cleanup_environment", "execution_id": "58d0dddc504843005fcaa98c"}, {"name": "check_if_key_create_trigger_is_registered", "workflow": null, "created_at": "2017-03-21T08:01:33.127298+00:00", "updated_at": "2017-03-21T08:01:34.270785+00:00", "state": "failed", "result": {"failed": true, "stderr": "Traceback (most recent call last):\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/commands/resource.py\", line 162, in get_resource_by_pk\n    instance = self.manager.get_by_id(pk, **kwargs)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 39, in decorate\n    return func(*args, **kwargs)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 204, in get_by_id\n    self.handle_error(response)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 165, in handle_error\n    response.raise_for_status()\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/requests/models.py\", line 862, in raise_for_status\n    raise HTTPError(http_error_msg, response=self)\nHTTPError: 401 Client Error: Unauthorized\nMESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/triggertypes/core.st2.key_value_pair.create", "return_code": 1, "succeeded": false, "stdout": "ERROR: 401 Client Error: Unauthorized\nMESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/triggertypes/core.st2.key_value_pair.create\n"}, "id": "check_if_key_create_trigger_is_registered", "execution_id": "58d0dddd504843005fcaa98e"}]}, "context": {"user": "st2admin"}, "action": {"runner_type": "action-chain", "name": "test_key_triggers", "parameters": {"token": {"default": "", "type": "string", "description": "st2 auth token"}, "hostname": {"default": "<IP_ADDRESS>", "type": "string", "description": "St2 host to run tests against"}, "protocol": {"default": "http", "type": "string", "description": "http/https"}}, "tags": [], "enabled": true, "entry_point": "chains/test_key_triggers.yaml", "notify": {}, "uid": "action:tests:test_key_triggers", "pack": "tests", "ref": "tests.test_key_triggers", "id": "58d0178550484300eb5228ca", "description": "Workflow tests key triggers functionality"}, "liveaction": {"runner_info": {"hostname": "7b0ec35f2fe8", "pid": 95}, "parameters": {}, "action_is_workflow": true, "callback": {}, "action": "tests.test_key_triggers", "id": "58d0dddb50484300b2a734eb"}, "children": ["58d0dddc504843005fcaa98c", "58d0dddd504843005fcaa98e"], "end_timestamp": "2017-03-21T08:01:34.281867Z"}
# -------- end<PHONE_NUMBER>85712 response ------------

# -------- begin<PHONE_NUMBER>85712 request ----------
curl -X GET -H  'Connection: keep-alive' -H  'Accept-Encoding: gzip, deflate' -H  'Accept: */*' -H  'User-Agent: python-requests/2.11.1' -H  'X-Auth-Token: ef38f59b20c84cbda03e19d4da1c56a9' 'http://<IP_ADDRESS>:9101/v1/executions/58d0dddb50484300b2a734ec/children/?depth=-1'
# -------- begin<PHONE_NUMBER>85712 response ----------
[{"status": "succeeded", "start_timestamp": "2017-03-21T08:01:32.009663Z", "log": [{"status": "requested", "timestamp": "2017-03-21T08:01:32.029000Z"}, {"status": "scheduled", "timestamp": "2017-03-21T08:01:32.102000Z"}, {"status": "running", "timestamp": "2017-03-21T08:01:32.166000Z"}, {"status": "succeeded", "timestamp": "2017-03-21T08:01:32.832000Z"}], "parameters": {"cmd": "st2 key delete a || true", "env": {"ST2_AUTH_URL": "http://<IP_ADDRESS>:9100", "ST2_BASE_URL": "http://<IP_ADDRESS>", "ST2_AUTH_TOKEN": "", "ST2_API_URL": "http://<IP_ADDRESS>:9101"}}, "runner": {"runner_module": "local_runner", "uid": "runner_type:local-shell-cmd", "enabled": true, "name": "local-shell-cmd", "runner_parameters": {"sudo": {"default": false, "type": "boolean", "description": "The command will be executed with sudo."}, "timeout": {"default": 60, "type": "integer", "description": "Action timeout in seconds. Action will get killed if it doesn't finish in timeout seconds."}, "cmd": {"type": "string", "description": "Arbitrary Linux command to be executed on the host."}, "kwarg_op": {"default": "--", "type": "string", "description": "Operator to use in front of keyword args i.e. \"--\" or \"-\"."}, "env": {"type": "object", "description": "Environment variables which will be available to the command(e.g. key1=val1,key2=val2)"}, "cwd": {"type": "string", "description": "Working directory where the command will be executed in"}}, "id": "58d0178550484300eb5228ba", "description": "A runner to execute local actions as a fixed user."}, "elapsed_seconds": 0.806438, "web_url": "https://7b0ec35f2fe8/#/history/58d0dddc504843005fcaa98c/general", "parent": "58d0dddb50484300b2a734ec", "result": {"failed": false, "stderr": "Traceback (most recent call last):\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/commands/resource.py\", line 162, in get_resource_by_pk\n    instance = self.manager.get_by_id(pk, **kwargs)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 39, in decorate\n    return func(*args, **kwargs)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 204, in get_by_id\n    self.handle_error(response)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 165, in handle_error\n    response.raise_for_status()\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/requests/models.py\", line 862, in raise_for_status\n    raise HTTPError(http_error_msg, response=self)\nHTTPError: 401 Client Error: Unauthorized\nMESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/keys/a?scope=system", "return_code": 0, "succeeded": true, "stdout": "ERROR: 401 Client Error: Unauthorized\nMESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/keys/a?scope=system\n"}, "context": {"parent": {"user": "st2admin", "execution_id": "58d0dddb50484300b2a734ec"}, "chain": {"name": "cleanup_environment", "parameters": null, "publish": null, "params": {"cmd": "st2 key delete a || true", "env": {"ST2_AUTH_URL": "{{protocol}}://{{hostname}}:9100", "ST2_BASE_URL": "{{protocol}}://{{hostname}}", "ST2_AUTH_TOKEN": "{{token}}", "ST2_API_URL": "{{protocol}}://{{hostname}}:9101"}}, "notify": null, "on_failure": null, "ref": "core.local", "on_success": "check_if_key_create_trigger_is_registered"}, "user": "st2admin"}, "action": {"runner_type": "local-shell-cmd", "name": "local", "parameters": {"cmd": {"required": true, "type": "string", "description": "Arbitrary Linux command to be executed on the local host."}, "sudo": {"immutable": true}}, "tags": [], "enabled": true, "entry_point": "", "notify": {}, "uid": "action:core:local", "pack": "core", "ref": "core.local", "id": "58d0178550484300eb5228c1", "description": "Action that executes an arbitrary Linux command on the localhost."}, "liveaction": {"runner_info": {"hostname": "7b0ec35f2fe8", "pid": 89}, "parameters": {"cmd": "st2 key delete a || true", "env": {"ST2_AUTH_URL": "http://<IP_ADDRESS>:9100", "ST2_BASE_URL": "http://<IP_ADDRESS>", "ST2_AUTH_TOKEN": "", "ST2_API_URL": "http://<IP_ADDRESS>:9101"}}, "action_is_workflow": false, "callback": {}, "action": "core.local", "id": "58d0dddc504843005fcaa98b"}, "id": "58d0dddc504843005fcaa98c", "end_timestamp": "2017-03-21T08:01:32.816101Z"}, {"status": "failed", "start_timestamp": "2017-03-21T08:01:33.153541Z", "log": [{"status": "requested", "timestamp": "2017-03-21T08:01:33.173000Z"}, {"status": "scheduled", "timestamp": "2017-03-21T08:01:33.255000Z"}, {"status": "running", "timestamp": "2017-03-21T08:01:33.323000Z"}, {"status": "failed", "timestamp": "2017-03-21T08:01:34.008000Z"}], "parameters": {"cmd": "st2 trigger get core.st2.key_value_pair.create", "env": {"ST2_AUTH_URL": "http://<IP_ADDRESS>:9100", "ST2_BASE_URL": "http://<IP_ADDRESS>", "ST2_AUTH_TOKEN": "", "ST2_API_URL": "http://<IP_ADDRESS>:9101"}}, "runner": {"runner_module": "local_runner", "uid": "runner_type:local-shell-cmd", "enabled": true, "name": "local-shell-cmd", "runner_parameters": {"sudo": {"default": false, "type": "boolean", "description": "The command will be executed with sudo."}, "timeout": {"default": 60, "type": "integer", "description": "Action timeout in seconds. Action will get killed if it doesn't finish in timeout seconds."}, "cmd": {"type": "string", "description": "Arbitrary Linux command to be executed on the host."}, "kwarg_op": {"default": "--", "type": "string", "description": "Operator to use in front of keyword args i.e. \"--\" or \"-\"."}, "env": {"type": "object", "description": "Environment variables which will be available to the command(e.g. key1=val1,key2=val2)"}, "cwd": {"type": "string", "description": "Working directory where the command will be executed in"}}, "id": "58d0178550484300eb5228ba", "description": "A runner to execute local actions as a fixed user."}, "elapsed_seconds": 0.835787, "web_url": "https://7b0ec35f2fe8/#/history/58d0dddd504843005fcaa98e/general", "parent": "58d0dddb50484300b2a734ec", "result": {"failed": true, "stderr": "Traceback (most recent call last):\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/commands/resource.py\", line 162, in get_resource_by_pk\n    instance = self.manager.get_by_id(pk, **kwargs)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 39, in decorate\n    return func(*args, **kwargs)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 204, in get_by_id\n    self.handle_error(response)\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py\", line 165, in handle_error\n    response.raise_for_status()\n  File \"/opt/stackstorm/st2/local/lib/python2.7/site-packages/requests/models.py\", line 862, in raise_for_status\n    raise HTTPError(http_error_msg, response=self)\nHTTPError: 401 Client Error: Unauthorized\nMESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/triggertypes/core.st2.key_value_pair.create", "return_code": 1, "succeeded": false, "stdout": "ERROR: 401 Client Error: Unauthorized\nMESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/triggertypes/core.st2.key_value_pair.create\n"}, "context": {"parent": {"user": "st2admin", "execution_id": "58d0dddb50484300b2a734ec"}, "chain": {"name": "check_if_key_create_trigger_is_registered", "parameters": null, "publish": null, "params": {"cmd": "st2 trigger get {{trigger_key_create}}", "env": {"ST2_AUTH_URL": "{{protocol}}://{{hostname}}:9100", "ST2_BASE_URL": "{{protocol}}://{{hostname}}", "ST2_AUTH_TOKEN": "{{token}}", "ST2_API_URL": "{{protocol}}://{{hostname}}:9101"}}, "notify": null, "on_failure": null, "ref": "core.local", "on_success": "check_if_key_update_trigger_is_registered"}, "user": "st2admin"}, "action": {"runner_type": "local-shell-cmd", "name": "local", "parameters": {"cmd": {"required": true, "type": "string", "description": "Arbitrary Linux command to be executed on the local host."}, "sudo": {"immutable": true}}, "tags": [], "enabled": true, "entry_point": "", "notify": {}, "uid": "action:core:local", "pack": "core", "ref": "core.local", "id": "58d0178550484300eb5228c1", "description": "Action that executes an arbitrary Linux command on the localhost."}, "liveaction": {"runner_info": {"hostname": "7b0ec35f2fe8", "pid": 85}, "parameters": {"cmd": "st2 trigger get core.st2.key_value_pair.create", "env": {"ST2_AUTH_URL": "http://<IP_ADDRESS>:9100", "ST2_BASE_URL": "http://<IP_ADDRESS>", "ST2_AUTH_TOKEN": "", "ST2_API_URL": "http://<IP_ADDRESS>:9101"}}, "action_is_workflow": false, "callback": {}, "action": "core.local", "id": "58d0dddd504843005fcaa98d"}, "id": "58d0dddd504843005fcaa98e", "end_timestamp": "2017-03-21T08:01:33.989328Z"}]
# -------- end<PHONE_NUMBER>85712 response ------------

id: 58d0dddb50484300b2a734ec
action.ref: tests.test_key_triggers
parameters: None
status: failed
error: Traceback (most recent call last):
  File "/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/commands/resource.py", line 162, in get_resource_by_pk
    instance = self.manager.get_by_id(pk, **kwargs)
  File "/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py", line 39, in decorate
    return func(*args, **kwargs)
  File "/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py", line 204, in get_by_id
    self.handle_error(response)
  File "/opt/stackstorm/st2/local/lib/python2.7/site-packages/st2client/models/core.py", line 165, in handle_error
    response.raise_for_status()
  File "/opt/stackstorm/st2/local/lib/python2.7/site-packages/requests/models.py", line 862, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
HTTPError: 401 Client Error: Unauthorized
MESSAGE: Unauthorized - One of Token or API key required. for url: http://<IP_ADDRESS>:9101/triggertypes/core.st2.key_value_pair.create
traceback: None
failed_on: check_if_key_create_trigger_is_registered
start_timestamp: 2017-03-21T08:01:31.719729Z
end_timestamp: 2017-03-21T08:01:34.281867Z
+--------------------------+------------------------+----------------------------------------+------------+-------------------------------+
| id                       | status                 | task                                   | action     | start_timestamp               |
+--------------------------+------------------------+----------------------------------------+------------+-------------------------------+
| 58d0dddc504843005fcaa98c | succeeded (0s elapsed) | cleanup_environment                    | core.local | Tue, 21 Mar 2017 08:01:32 UTC |
| 58d0dddd504843005fcaa98e | failed (0s elapsed)    | check_if_key_create_trigger_is_registe | core.local | Tue, 21 Mar 2017 08:01:33 UTC |
|                          |                        | red                                    |            |                               |
+--------------------------+------------------------+----------------------------------------+------------+-------------------------------+

Note the last curl request contains an X-Auth-Token, but the response shows that ST2_AUTH_TOKEN is an empty string.

Thanks for reporting this.
AFAIK, st2-self-check was never really tested with CLI auth token caching since it was always designed to run using an explicit auth token specified as ST2_AUTH_TOKEN environment variable.
In any case, still something we should check out when we get a chance and I would also be OK with making it work with existing cached auth token (if it's not too complicated and involves too much refactoring).

Yes, it's true that st2-self-check does explicitly use the ST2_AUTH_TOKEN env variable when calling st2 run .... However, it's also true that the --debug output shows that it's properly reading and using the token from ~/.ssh/token-st2admin. It's clear something isn't working right server-side.
For the time being, I'll explicitly set ST2_AUTH_TOKEN when running st2-self-check.

OK, I just checked the st2-self-check to confirm and ST2_AUTH_TOKEN environment variable is mandatory when auth is enabled - https://github.com/StackStorm/st2/blob/master/st2common/bin/st2-self-check#L118.
The reason for that is that this token is passed to the tests as token parameter. So in short, it works as designed.
So yeah, it's slightly confusing, but the same token is used by st2 CLI and also used by tests on the server side.
Having said that, I still think the output and behavior is confusing and we should at the very least throw if mandatory ST2_AUTH_TOKEN environment variable is not set for the script run. Only small problem with that is that token shouldn't really be required in case auth is not supported, but auth has been enabled by default for a very long time so this shouldn't be an issue.
So if you feel adventurous you can add a small "if and exit 2 if this variable is not set". This should be the easy part, the hard / time-consuming part will be taking the change all the way through and making sure all the builds pass, etc. :)


Use Node v18 for the build and Storybook

Contributes to https://github.com/treely/app/issues/709

Is it on purpose that we use a different font in the navigation menu in Storybook? Or does it just come with the update?

It's just the default font Storybook uses and yes, it changed when migrating from v6 to v7.


Add authn-ldap design spec

Desired Outcome
Add design document for authn-ldap support in the CLI and API.
Connected Issue/Story
CyberArk internal issue link: ONYX-20237

@szh, how does the CLI (and by extension, the SDK), currently store the auth token after authorization?

It appears that the SDK itself does not store the API key outside of memory, but the CLI stores it in a CredentialsProvider.


let pid control gain be based on current value of mu and corresponding R value

We should make the value of KI gain according to the current value of R and its setpoint so that KI times this difference should be in between exp_shoulder_clip, any concrete algorithms/pseudo code to achieve this? @ntchen

the essence here we want to achieve is that k_i_gain * delta should be in range of exp_shoulder_clip, it should not be too  high otherwise we are always using exp_shoulder_clip, but it should also not be too small, s.t. we are not using the rull range of the exp_shoulder_clip
code
https://github.com/marrlab/DomainLab/blob/45da629c52af57f9cd39a11b37d82ab221c8fdbd/domainlab/algos/trainers/fbopt_mu_controller.py#L128
https://github.com/marrlab/DomainLab/blob/45da629c52af57f9cd39a11b37d82ab221c8fdbd/domainlab/algos/trainers/fbopt_mu_controller.py#L132
via experiments, we observed that small changes in k_i_gain does not change the performance too much, but the scale of k_i_gain plays a big role, for instance, if k_i_gain is 0.1 it might not work at all probably due to activation always saturate, while if k_i_gain is in range 1e-3 bis 1e-4, it all works, but how can we find this range automatically without tuning?   @ntchen @agisga

one conceptual solution I have is at the initialization, we have our initial R value R^{(0)}, we also have our initial setpoint r^{(0)}=0.99*R^{(0)}, then we can get the initial delta^{(0)}=R^{(0)}-r^{(0)}, then k_i_gain * delta^{(0)} should be smaller than exp_shoulder_clip, so we could get the maximum value of k_i_gain so that at initial step, it won't saturate, but this mechanism only gives us the bound for k_i_gain, what exact number should we use? 50% of the maximum value?  should this depend on 0.99 as well?

constantly updating: https://github.com/marrlab/DomainLab/pull/597/files

using
python main_out.py --te_d=0 --tr_d 1 2 --task=mnistcolor10 --bs=16 --aname=diva --trainer=fbopt --nname=conv_bn_pool_2 --epos=2000 --es=500 --mu_init=0.000001 --gamma_y=1.0 --k_i_gain_ratio=0.5
using commit commit f56bfd7f6a9c1143970fdae0057e531b535f690f
I get

merged https://github.com/marrlab/DomainLab/pull/597/files

changing k_i_gain_ratio=0.9, the result is (es=1)

@ntchen , can we draw some conclusions here by comparing the two plots?


feature request: provide existence of standard gamepad button/axis

In addition to the existing API to detect whether a standard mapping exists for a gamepad, it'd be nice to also be able to query whether a specific button or axis of the standard mapping actually exists on the given gamepad.
E.g. when connecting a NES-like controller, it'd be nice if Ebiten could somehow tell the game that X and Y buttons do not exist.
My concrete use case is for auto assigning something to the "exit to menu" feature of my game. For now I am assigning this to all center buttons and all shoulder buttons; however I would like to assign this to the shoulder buttons only if there are no center buttons on the pad. Background is that some Android-focused gamepads exist that have no center buttons but are otherwise complete, and thus connecting those to a PC would be rather annoying, See also https://github.com/divVerent/aaaaxy/issues/20 for some lists of gamepads that lack center buttons.
IIRC both on Linux/evdev and in general when using SDL mappings, Ebiten can know this, so this would be a nice feature. In case some platforms do not support this, it would be nice to have this return a tristate (exists, doesn't exist, Ebiten doesn't know - that IIRC can be the case on the web).

Shouldn't it be possible to check the number of buttons on the gamepad and see if it exceeds the index of the standard mapping button you're searching for?

Yeah, sadly there is no defined order of existence priority of gamepad buttons.
The canonical contradiction is, should the start button be ordered before the shoulder buttons or joystick buttons?

Atari joystick: A.
NES gamepad: Select, Start, A, B.
SNES gamepad: Select, Start, A, B, X, Y, ShoulderL, ShoulderR.
Xbox gamepad: Select, Start, Mode, A, B, X, Y, ShoulderL, ShoulderR, StickL, StickR.

Until here this looks great - every added gamepad just adds buttons. But then there's outliers like this:

Ouya gamepad: A, B, X, Y, ShoulderL, ShoulderR, StickL, StickR and one touchpad.

Thus there exists no such ordering - e.g. not every gamepad that has a Start button has an X or StickL button, and not every gamepad that has a X or StickL button also has a Start button. This approach MAYBE could have worked before mobile gamepads came along, but it's too late now.
That's why I am asking for an API to detect existence - such as HasStandardGamepadButton(id GamepadID, button StandardGamepadButton) bool.

Would ebiten.IsStandardGamepadLayoutAvailable work?

Ah, you want to know availabilities of buttons.

Yeah, as many gamepads report as standard layout but actually only have a subset of its buttons.

The count tells me how many buttons exist, but not which they are.
E.g. I know gamepads that have AB and two center buttons only (NES), but
also some that have the entire standard layout except the center buttons
(Ouya). That is why I need this - to give both a nice mapping.
On Wed, Mar 30, 2022, 16:05 SolarLune @.***> wrote:

Shouldn't it be possible to check the number of buttons on the gamepad and
see if it exceeds the index of the standard mapping button you're searching
for?
—
Reply to this email directly, view it on GitHub
https://github.com/hajimehoshi/ebiten/issues/2040#issuecomment-1083572411,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAB5NMBYUVPIWCU4GG66J3DVCSXX3ANCNFSM5RZWSA4A
.
You are receiving this because you authored the thread.Message ID:
@.***>

Do you have any further requests?

No, that is precisely what I needed. Gotta implement use of it still.
Haven't checked source of it but I assume it verifies existence both via
gamepaddb mapping and, if using automatic mapping e.g. for xbox gamepads,
via input event API.
On Tue, Oct 11, 2022, 09:42 Hajime Hoshi @.***> wrote:

Do you have any further requests?
—
Reply to this email directly, view it on GitHub
https://github.com/hajimehoshi/ebiten/issues/2040#issuecomment-1274232578,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAB5NMESU4SRAA7RMHWDMMTWCUK5ZANCNFSM5RZWSA4A
.
You are receiving this because you authored the thread.Message ID:
@.***>


MFA is not related to web identity

Issue #, if available:
N/A
Description of changes:
This is probably copy/paste mistake from other document about using MFA
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you for your contribution.


Is this Debloater removing bundles?

Hello,
like the title says when i Powershell this command: Get-AppxPackage -AllUsers -PackageTypeFilter Bundle | Select-Object -Property Name, PackageFullName and used custom list to remove all of them (i think it's removing) instead i got this:

Used another script to remove something like:
Microsoft.549981C3F5F10
that should be the real cortana, but after removing these bundles (by removing registry keys too) my system became unstable and it froze for a while and after that i got BSOD with error code DPC_WATCHDOG_VIOLATION.
I tried all the fixes possible for that but in the end i repair\reinstall windows over with media creation tool maintaning files but not app.
Turned out i've had all programs,  settings and apps removed so i had to reinstall all but my files were there. (to reinstall i just install programs then copy relative folders in appdata\local and appdata\roaming from windows.old folder.
In conclusion i'm asking:
Is this debloater not removing these bundle for security\stability purpose or they are not still added and tested before release a new version?
Thanks in advance
Frost

I would recommend you to use SysPrepDebloater in Audit Mode. Before that make sure you modify the script as per your needs.

But with sysprep i need to fresh install windows and right now i dont want to lose all my stuff neither i got time to backup all my (a lot) of files\archives. So i just want to know if there's a way for this debloater to remove these bundles as i did with another script and put my system into an instability so i had to repair\reinstall over with files but not apps and this leaded me to indeed have files but reinstalling all programs and needed apps, settings them again and run debloater again in the end.
I wouldnt do this again...


ghcide setup for darcs development:

hello there, i setup a default.nix file to run in a nix-shell, it uses nix's developPackage function to retrieve all the dependencies needed to build darcs, anyways, ghcide does not seem to be working when i go to develop the darcs src code in a nix-shell, is there a terminal command that i can run in the project to generate a hie.yaml file, so that ghcide will work with darcs inside of a nix-shell?
here's the instructions that i'm following: http://darcs.net/Development/GettingStarted
, here's the default.nix file that i'm using:  https://dpaste.org/rc54

in my default.nix file, nix's developPackage function automatically executes cabal2nix on the .cabal file, retrieving all the needed dependencies to build darcs with  nix.


SDK update - types, lerna, minor optimizations in the SDK

Make lerna use separate node_modules for each sub-package
Remove yarn in favor of npm
Update README
[CLI] Allow user to set the amount (with default)
[SDK] get number of retries as a parameter
[SDK] use storage to save redundant computations of tx signatures (and make it unique for every transaction)
[SDK] take tx gas as a parameter (with default)
[SERVER] - correct product reference id(s) to be uuid 4

I will look more thoroughly at the actual code changes ASAP, but I wanted to get first some information regarding the swap to npm from yarn. Could you elaborate the reasoning behind that change?

We had some issues when installing some of the packages in applications that don't use yarn.
I see this troubles more of you than I've expected, so I reverted it back to use yarn. We will deal with npm on the other side.


Core layout widgets

Following is a list of some of the more important core layout widgets that need to be implemented.
Their exact API is up for debate, since there may be better ways to adapt those to Rust.
Single-child layout widgets

[ ] Align
[x] Center
[ ] Padding
[ ] Transform

[ ] SizedBox
[ ] FittedBox
[ ] LimitedBox
[ ] OverflowBox
[ ] ConstrainedBox
[ ] SizedOverflowBox
[ ] FractionallySizedBox

[ ] Flexible
[ ] Expanded

[ ] Container
[ ] AspectRatio

Multi-child layout widgets

[x] Row
[ ] Wrap
[ ] Stack
[x] Column

[ ] Table
[ ] ListView
[ ] GridView

You might want to consider adding more layout modes. Two Rust libraries for layout that already exist:

(Taffy)[https://github.com/DioxusLabs/taffy] which implements flexbox, and is planning to implement more layout algorithms such as CSS grid.
(Morphorm)[https://github.com/vizia/morphorm] a simplified but flexbox-like layout system.

Interesting and nice framework! which is what I'm want (but with a little missing)
Maybe I can implements some of widgets.
The missing I mentioned is that:

Platform shell: Android and iOS
Multiple window support
Multi-thread render
And maybe a fiber(React tech) like widget build/layout call, interrupt and resume mechanism.

But I'm very interesting with all these, we may have some discuss in future.

After some code reading, I found that this project is highly depend on druid and piet.
The former is now just focused on desktops, the latter is just an abstract wrapper for desktop drawing systems.
But I noticed piet is working on some GPU-accelerated, aka piet-gpu, which is exactly what this project needs.
IMO, before piet-gpu's matures, we can do some top-level design to be compatible with both mechanisms.
And what do you think about the (Xilem)[https://raphlinus.github.io/rust/gui/2022/05/07/ui-architecture.html]? It is similar to frui, and it may be implemented by druid.

You might want to consider adding more layout modes. Two Rust libraries for layout that already exist:

I will be rewriting the layout/drawing API soon. I'll make sure to give those layout modes a try while at it.

You might want to consider adding more layout modes. Two Rust libraries for layout that already exist:

I will be rewriting the layout/drawing API soon. I'll make sure to give those layout modes a try while at it.
Maybe I can implement other Widgets after your new layout/drawing API's rewriting?

I would also like to contribute to the development, my rust knowledge is only theoretical 😅

Maybe I can implement other Widgets after your new layout/drawing API's rewriting?

I will highly appreciate help with this!

I would also like to contribute to the development, my rust knowledge is only theoretical

I will setup Discord/Zulip later so we can talk more freely.

Ok, Discord server is up! It's in pretty rough shape, but it will do for now!

#4 has just fired, Stack is implemented.


nav-flash seems not to be automatically loaded before hooks that need it.

What did you expect to happen?
No error.
What actually happened?
The first time running something that calls doom-switch-window-hook, I see the following errors:
Error (doom-switch-window-hook): Error running hook "+nav-flash-blink-cursor-maybe-h" because: (void-function nav-flash-show) Disable showing Disable logging
Error (buffer-list-update-hook): Error running hook "doom-run-switch-window-hooks-h" because: (doom-hook-error doom-switch-window-hook +nav-flash-blink-cursor-maybe-h (void-function nav-flash-show)) Disable showing Disable logging

Somehow, nav-flash isn't being loaded correctly. Evaluating (require 'nav-flash) manually fixes the issue.
Describe your attempts to resolve the issue
No response
Steps to reproduce

Open Emacs
Wait for config to load.
Try to switch window (maybe from using minibuffer, or visited a file).
Get the error.

System Information
https://pastebin.com/zLc2V9f8

See https://github.com/hlissner/emacs-doom-themes/issues/655#issuecomment-914520115


Add hsyslog-udp

Probably need to re-run tomorrow since hackage version 0.2.0 wasn't picked up

Checked it locally. Looks good, thanks!


Phase 1b

[x] Create a refernce panel with material UI makestyles and paper

file: ReferencePanel.JS

[x] Create a refernceSelector with menulist using materialUI and functionality to change reference accordingly

file: ReferenceSelector.js

[x] Make an navBar (AppBar) using materialUI with all the icons placed exactly as the previous UI.

Achieved as planned


Modify !ta plug in for professor role

add professor role for this plugin.

I work on this sometime this week now that I know how to use the DB, gonna overhaul the TA plugin