feat: support generic secret in docker auth

Overview
currently, the webhook only supports unwrapping the value of the auth key if it's in a specific user:pass format. this limitation prevents the webhook from working correctly for other valid formats of the auth value, e.g., _json_key.

Hey @quixoten,
First of all thank you for your contribution!
Vault-Secrets-Webhook, will no longer be maintained in the near future, because it will be replaced with our new Webhook project.
I already added this feature to that one, but adding an e2e test-case for json_key handling seems reasonable, may I ask you to please take a look at Secrets-Webhook and if you have the time for it incorporate your changes regarding the e2e tests on that project?
In the meanwhile I left a few comments.


Strange background showing

I tried to achive the same looks as in screenshot of README and I say I only got something partial. Here is the actual screenshot

The green background throughout the tabline spoiled the looks. and also notice buffer are separating ini weird way (with black background and white seperator)

I found a workaround: just add "set termguicolors" to your .vimrc

I solved this problem finaly, you should replace "if has("gui") || has(”termguicolors)" to "if has("gui_running")" in buffet.vim and then modify some ctermfg or ctermbg to a name.
Here is the patch：
diff --git a/plugin/buffet.vim b/plugin/buffet.vim
index cb1e969..a24bfb4 100644
--- a/plugin/buffet.vim
+++ b/plugin/buffet.vim
@@ -11,7 +11,7 @@ augroup buffet_show_tabline
     autocmd VimEnter,BufAdd,TabEnter * set showtabline=2
 augroup END

-if has("gui") || has("termguicolors")
+if has("gui_running")
     if !get(g:, "buffet_use_gui_tablne", 0)
         set guioptions-=e
     endif
@@ -111,7 +111,7 @@ endfor
 function! s:GetHiAttr(name, attr)
     let vim_mode = "cterm"
     let attr_suffix = ""
-    if has("gui") || has('termguicolors')
+    if has("gui_running")
         let vim_mode = "gui"
         let attr_suffix = "#"
     endif
@@ -123,7 +123,7 @@ endfunction

 function! s:SetHi(name, fg, bg)
     let vim_mode = "cterm"
-    if has("gui") || has("termguicolors")
+    if has("gui_running")
         let vim_mode = "gui"
     endif

@@ -157,16 +157,16 @@ function! s:SetColors()
     " Issue: https://github.com/bagrat/vim-buffet/issues/5
     " if get(g:, "buffet_match_color_scheme", 1)

-    hi! BuffetCurrentBuffer cterm=NONE ctermbg=2 ctermfg=8 guibg=#00FF00 guifg=#000000
-    hi! BuffetActiveBuffer cterm=NONE ctermbg=10 ctermfg=2 guibg=#999999 guifg=#00FF00
-    hi! BuffetBuffer cterm=NONE ctermbg=10 ctermfg=8 guibg=#999999 guifg=#000000
+    hi! BuffetCurrentBuffer cterm=NONE ctermbg=green ctermfg=black guibg=#6aa84f guifg=#000000
+    hi! BuffetActiveBuffer cterm=NONE ctermbg=grey ctermfg=green guibg=#999999 guifg=#6aa84f
+    hi! BuffetBuffer cterm=NONE ctermbg=grey ctermfg=black guibg=#999999 guifg=#000000

     hi! link BuffetModCurrentBuffer BuffetCurrentBuffer
     hi! link BuffetModActiveBuffer BuffetActiveBuffer
     hi! link BuffetModBuffer BuffetBuffer

-    hi! BuffetTrunc cterm=bold ctermbg=11 ctermfg=8 guibg=#999999 guifg=#000000
-    hi! BuffetTab cterm=NONE ctermbg=4 ctermfg=8 guibg=#0000FF guifg=#000000
+    hi! BuffetTrunc cterm=bold ctermbg=grey ctermfg=black guibg=#999999 guifg=#000000
+    hi! BuffetTab cterm=NONE ctermbg=blue ctermfg=black guibg=#3d85c6 guifg=#000000

     hi! link BuffetLeftTrunc BuffetTrunc
     hi! link BuffetRightTrunc BuffetTrunc
@@ -179,7 +179,7 @@ function! s:SetColors()
     for left in keys(g:buffet_has_separator)
         for right in keys(g:buffet_has_separator[left])
             let vim_mode = "cterm"
-            if has("gui") || has("termguicolors")
+            if has("gui_running")
                 let vim_mode = "gui"
             endif

I found a workaround: just add "set termguicolors" to your .vimrc

BEFORE:

AFTER:

I changed my colorscheme to onehalfdark and did some config, now , it's really pretty


Outlier color too light

The color of the outlier is very light and hard to see. Is there any way to change that? So far, I didn't find it. Please advice, thanks.

I agree with @yvonnechanlove97. I tried a different background color but the color of the outliers is semitransparent so that didn't help either.


Forte-RC ROS package added

@MicaelCouceiro , can you please create an indigo branch. Can you also make sure your release repo is a proper one.
Was that PR a test ? Should we close it ?

Dear Vincent,
Thank you for your concern. We are still finishing some changes on the code and we will soon upload it to github. Is that ok for you or you prefer to close it for now?
Kind regards,
Micael Couceiro
Ingeniarius, CEO
<EMAIL_ADDRESS><EMAIL_ADDRESS>Ingeniarius, Lda.
Rua da Vacariça, nº 37
3050-381 MEALHADA
Tel :  + 351 96 117 14 09
http://www.ingeniarius.pt/ www.ingeniarius.pt
http://www.ingeniarius.pt/
Find us on
https://www.facebook.com/ingeniarius.pt http://www.linkedin.com/company/ingeniarius
From: Vincent Rabaud<EMAIL_ADDRESS>Sent: 23 September 2015 14:41
To: ros/rosdistro<EMAIL_ADDRESS>Cc: MicaelCouceiro<EMAIL_ADDRESS>Subject: Re: [rosdistro] Forte-RC ROS package added (#9531)
@MicaelCouceiro https://github.com/MicaelCouceiro  , can you please create an indigo branch. Can you also make sure your release repo is a proper one.
Was that PR a test ? Should we close it ?
—
Reply to this email directly or view it on GitHub https://github.com/ros/rosdistro/pull/9531#issuecomment-142604588 .  https://github.com/notifications/beacon/AOD-rG7Z2ga0hnXg9jkPXJoDCe7he5Pdks5o0qN9gaJpZM4GBf6W.gif

Both the source repository and release repository you've asked us to index are empty. I'm going to close these as we cannot index your repositories until they have content. It will both give information that is incorrect to users and cause our buildfarm to keep retrying and failing to process your repositories.
Also it appears that you manually generated this pull-request. It's highly recommended to let bloom do it for you as it will embed the right information. See the bloom tutorials


ctrl+shift+win+L stopped working

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.89.0-insider
OS Version: Windows Server 2022, Windows 10

Steps to Reproduce:

Open "Keyboard Shortcuts"
Click "Record Keys"
Press ctrl+shift+win+L

You will see "ctrl+shift+win" but no L added. Other letters like k, i, j work ok. I tried on different computers with Windows Server 2022 and couple of Windows 10 and it did not work. It worked on Windows Server 2016 though. All tested with the same VSCode zip version. Other Windows programs, like PowerToys Keyboard Manager seems to catch ctrl+shift+win+l properly.

Hi 🙂
Thanks for filing this issue!
Could you please try the following:

Run the command "Developer: Toggle Keyboard Shortcuts Troubleshooting" (you can, for example, run it from the Command Palette).
This will activate logging of dispatched keyboard shortcuts and will open an output panel with the corresponding log file.

Press exactly the keybinding you desire

Check what VS Code detects

If you are having trouble understanding the output, please feel free to paste here and we'll be happy to help ☺

Hi
Thank you for taking care.
I did "Developer: Toggle Keyboard Shortcuts Troubleshooting" before I submitted the issue. It revealed the same behavior ctrl, shift and win are detected but when they are pressed it does not detect following L. I also asked my friends to test and they confirmed the problem. Tested on many computers with Window 10, 11, Server 2022. The only one that it currently works on is Windows Server 2016. In the past it worked also on Windows 10.

Could you try the same shortcut on https://w3c.github.io/uievents/tools/key-event-viewer.html ?
I don't think we do anything specific for this shortcut; it's likely just windows or some built-in program just capturing it and not passing to vscode.

It seems it is problem in Windows not in VSCode. Windows does not catch Ctrl, Shift, Win + L keydown event.

It seems it is problem in Windows not in VSCode. Windows does not catch Ctrl, Shift, Win + L keydown event.

It seems it is problem in Windows not in VSCode. Windows does not catch Ctrl, Shift, Win + L keydown event.

Out of curiosity did you ever find a resolution to this? I'm having similar issues with ctrl+shift+L, where the L keydown is not detected by windows

Out of curiosity did you ever find a resolution to this? I'm having similar issues with ctrl+shift+L, where the L keydown is not detected by windows
Nope, I gave up at this moment. However, I had no problem with ctrl+shift+L, but only ctrl+win+shift+L KEYDOWN event (keyup had been registered).


CSS overrides for WordPress

This plugin is a really great way to present list selections.  However when used in the WordPress backend there are CSS conflicts which makes the presentation of the input line not as clean as users see on your examples page.  There are seven style changes needed and center on the searchfield.
I will be happy to share the changes I have made in case they will be helpful to others who, in turn, may be able show me how to improve them.  These CSS examples may be useful to other people who are trying to use select2 in the admin side of a WordPress plugin.

However when used in the WordPress backend there are CSS conflicts which makes the presentation of the input line not as clean as users see on your examples page.

Do you have some screenshots that you might be able to provide?

I will be happy to share the changes I have made in case they will be helpful to others who, in turn, may be able show me how to improve them.

That would be great, we might be able to integrate some of them into the standard reset CSS that Select2 uses.

Here's an image to illustrate the issue.  You can see how it is supposed to appear based on the default select2 styling.  Then how select2 can appear in WordPress with just a few styling tweaks.  Finally, how select2 is presented in WordPress without any style overrides.

The style conflicts occur with definitions in ./wp-admin/css/common.css (this is a standard path in WordPress hosted site).
You can see the WordPress styling gives the searchfield a shadow.  It also obscures the caret because the standard select2 searchfield width of 0.75em is taken up with padding specified by WordPress.  Finally the field is styled to occupy the smallest space it possibly can.  In a WordPress backend select2 is going to be used in a WordPress metabox or WPList table where it can expect to be allowed to occupy the available horizontal space.
Here are my modifications to the select2 styling.  You will see that I've used !important in several places.  I recognize this is undesirable.  With some time to learn more about the plugin or to workout style selectors that provide more specificity than the WordPress selectors it may be possible to remove the reliance on !important.  For example,, the important directive is used on .select2-container style because the plugin sets an explicit width on the element.  Maybe this style can be passed as a parameter.  My learning about select2 is not yet sufficiently advanced to know if this is possible.
In any case, in my view the most important change is the one to the styling of the search field.
`
.select2-container {
width: 100% !important;
}
.select2-selection--multiple {
border-color: #ddd !important;
}
.select2-container--default .select2-selection--multiple {
height: auto;
}
.select2-selection__rendered {
line-height: 1.8em !important;
font-size: 15px !important;
}
.select2-selection__rendered {
margin-bottom: -5px !important;
}
input[type="search"].select2-search__field {
border: 0px;
box-shadow: inset 0 0px 2px rgba( 0, 0, 0, 0 );
padding: 5px 0 0 0;
-webkit-box-shadow: inset 0 0px 2px rgba( 0, 0, 0, 0 );
-webkit-appearance: searchfield;
width: auto !important;
}


Web worker can't setup.

I'm using redux-worker-middleware, which works pretty well in web browser
( I use a separated webpack config to get codes inside this boilerplate run on electron and browser )
And I loads webworker using worker-loader:
{
        test: /\.worker\.js$/,
        use: { loader: 'worker-loader' },
}

But when it ran in electron, webworker just don't work.

Hey @linonetwo give a look at https://github.com/electron/electron/blob/master/docs/tutorial/multithreading.md#multi-threaded-nodejs

@uppe-r  Thanks, but I surely had tried that:
// main.dev.js
...
  mainWindow = new BrowserWindow({
    show: false,
    width: 1600,
    height: 728,
    titleBarStyle: 'hiddenInset',
    webPreferences: {
      nodeIntegrationInWorker: true,
    },
  });
...

What do you mean with "webworker just don't work" ?

I set up webworker like this:

This work in browser:

But not electron:

How did you successfully set up webwork in electron renderer process? @uppe-r

I didn't set up any webworker in electron yet. Maybe try checking the Service Workers on the Application tab in the devtools?

Sad, option in that article don't work too.
// useless
          {
            test: /\.worker\.js$/,
            include: paths.appSrc,
            use: { loader: 'worker-loader', options: { inline: true } },
          },

I'm considering wrapping https://github.com/electron-userland/electron-remote and webworker and choose the one fit electron or browser at runtime.


Add varcode to Travis

And fix some linter errors along the way.

@iskandr I also added coveralls. Back to you.

LGTM


使用mybatis-plus meta-object-handler 问题

您好，我尝试在项目中使用meta-object-handler，但是在进行配置 INSERT UPDATE的时候却不生效，我不知道是什么原因，下面是我的代码

在我进行update的时候，MetaHandler updateFill 都没执行，我现在找不到到底是什么问题了

It looks like you are using 'kotlinand I think we have never test it withquarkus-mybatis`. So it coudl be very helpful if you can provide a reproducer for this issue?
Is MetaObjectHandler working with Java?

嗯嗯好的

It looks like you are using kotlin and I think we have never test it with quarkus-mybatis. So it could be very helpful if you can provide a reproducer for this issue?
Is MetaObjectHandler working with Java?

嗯嗯好的

It looks like you are using kotlin and I think we have never test it with quarkus-mybatis. So it could be very helpful if you can provide a reproducer for this issue?
Is MetaObjectHandler working with Java?

https://github.com/wangyi12358/quarkus-mybatis-plus-demo
您好，这是仓库地址
sql目录是mysql表配置
您需要在config/application.yml 修改数据库配置
通过./mvnw compile quarkus:dev 启动
访问 http://localhost:8888/hello 就会复现我上面说的问题 在我insert的时候 我的create_time update_time 并没有被赋值

Thanks for your demo! I will take a look.
And even if I can read Chinese, it could help more people understand the issue when we describe it in English.

Thanks for your demo! I will take a look.
And even if I can read Chinese, it could help more people understand the issue when we describe it in English.

Okay, thanks you

Hi @wangyi12358
It seems that we do not support this propery right now. I just check https://github.com/quarkiverse/quarkus-mybatis/blob/73e4d83bd573a82e752f85de70f5d07ad4c046aa/mybatis-plus/runtime/src/main/java/io/quarkiverse/mybatis/plus/MyBatisPlusConfig.java#L7-L15
Do you have any detail for this configuration in mybatis-plus? I can take a look to see if we can add it .

Hi @wangyi12358
It seems that we do not support this propery right now. I just check
https://github.com/quarkiverse/quarkus-mybatis/blob/73e4d83bd573a82e752f85de70f5d07ad4c046aa/mybatis-plus/runtime/src/main/java/io/quarkiverse/mybatis/plus/MyBatisPlusConfig.java#L7-L15
Do you have any detail for this configuration in mybatis-plus? I can take a look to see if we can add it .

I filled it with reference to the configuration of com.baomidou mybatis-plus.
It seems that it is not supported.
So what should I do when I want to fill in a value during insert or update.

@wangyi12358 I'm working on this issue and we can add a config to support this feature.

Please try it with 1.0.7

Please try it with 1.0.7

Okay, thank you


when I use oracledb to binding params, it will throw this error. but if I use raw to query, it will be normal.

await knex.raw('select * from JKPT_TEST');
await knex.raw(insert into "JKPT_TEST" ("CTXT") values (?), ['asdf']);
(node:20568) UnhandledPromiseRejectionWarning: Error: Unable to acquire a connection
at Client_Oracledb.acquireConnection

Closing as there is not enough info provided to resolve what is the problem or to even understand exactly what seems to be a problem here. Can be reopened if there seems to be a bug in knex related to this.


Update /test and /retest comment

Now,
/test , /retest works similar
both trigger all pipelineruns.
but if passed with a pipelinerun name then trigger a specific
/test <pipelinerun> or /retest <pipelinerun>
Closes #661
Closes #662
Signed-off-by: Shivam Mukhade<EMAIL_ADDRESS>
Changes

Submitter Checklist

[ ] ♽  Run make test lint before submitting a PR (ie: with pre-commit, no need to waste CPU cycle on CI
[ ] 📖 If you are adding a user facing feature or make a change of the behavior, please verify that you have documented it
[ ] 🧪 100% coverage is not a target but most of the time we would rather have a unit test if you make a code change.
[ ] 🎁 If that's something that is possible to do please ensure to check if we can add a e2e test.
[ ] 🔎 If there is a flakiness in the CI tests then don't necessary ignore it, better get the flakyness fixed before merging or if that's not possible there is a good reason to bypass it. (token rate limitation may be a good reason to skip).

sorry i have been slow on review but this looks good


Add user task metrics to Easy Telemetry

This PR bundles all telemetry related logic into a metrics folder, which will hopefully be the entry point for future tracking logic.
It implements various user task-related tracking, as defined in https://github.com/camunda/camunda-modeler/issues/2062
On the side, it fixes a slight oversight where any elements in subsequent root elements after the first, ie. multiple participants, would not be taken into account.
Closes #2062
Acceptance Criteria

[ ] Corresponds to the concept
[ ] Corresponds to the design

Definition of Done

[ ] corresponds to the design principles
[ ] corresponds to the code standards
[ ] passes Continuous Integration checks
[ ] available as feature branch on GitHub

[ ] contains the cleaned up commit history
[ ] commit messages satisfy our commit message guidelines
[ ] a single commit closes the issue via Closes #issuenr

PR set to draft until Legal and ET team is notified and has given approval.

PR set to draft until Legal and ET team is notified and has given approval.

https://github.com/camunda/camunda-modeler/tree/develop/docs/telemetry requires an update as well

Shall we hook those docs changes into this PR  as well or is a separated PR okay?

https://github.com/camunda/camunda-modeler/tree/develop/docs/telemetry requires an update as well

Shall we hook those docs changes into this PR  as well or is a separated PR okay?

https://github.com/camunda/camunda-modeler/tree/develop/docs/telemetry requires an update as well

Shall we hook those docs changes into this PR as well or is a separated PR okay?

It is the same concern and I would not like to merge this PR here without having updated the docs. So lets add it to this PR. (Our definition of done shall be "is tested and documented") :-)

https://github.com/camunda/camunda-modeler/tree/develop/docs/telemetry requires an update as well

Shall we hook those docs changes into this PR as well or is a separated PR okay?

It is the same concern and I would not like to merge this PR here without having updated the docs. So lets add it to this PR. (Our definition of done shall be "is tested and documented") :-)

@MaxTru Do you have another look into this one? Let's see if we get it merged.

@MaxTru Do you have another look into this one? Let's see if we get it merged.


Support for Extends keyword

Azure DevOps recently introduced a new keyword named extends that is flagged as an Unexpected property.  In addition, this keyword allows an pipeline to no longer require a mandatory "Stages" section (which may be in the extended file), thus having a 'Missing property "stages"' validation message is incorrect.
https://docs.microsoft.com/en-us/azure/devops/release-notes/2019/sprint-162-update#use-extends-keyword-in-pipelines

This should be fixed, sorry I haven't been on top of closing issues lately!


Compiling on WIndows

Could you test it on Windows and mention the installation steps?

No, I have no plan to support Windows and I'm not even sure if you can install all tools required in Windows. My suggestion for you is to use Linux. Even for Torch only is not straight-forward to install on Windows but you can try starting from here https://github.com/torch/torch7/wiki/Windows#running-torch-on-windows. Note that the first suggestion is to install an Ubuntu on a virtual machine :)


make ansible playbook run in local istio version

To issue: https://github.com/istio/istio/issues/7250
To improve PR: https://github.com/istio/istio/pull/7268

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: LillyWu
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: ijsnellf
If they are not already assigned, you can assign the PR to them by writing /assign @ijsnellf in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

install/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Hi @LillyWu. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

/ok-to-test

/assign @geoand

@LillyWu: GitHub didn't allow me to assign the following users: geoand.
Note that only istio members and repo collaborators can be assigned.
For more information please see the contributor guide

In response to this:

/assign @geoand

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@geoand  this is the feature that I promise to implement last week. (enable ansible playbook install istio with local release)
@geoand  @sdake  as the last PR https://github.com/istio/istio/pull/7268 has been merged, I created a new feature request issue:  https://github.com/istio/istio/issues/7355 to sort out all the things we could do to make ansible installation better

/assign @costinm

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: gyliu513, LillyWu
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

install/OWNERS [gyliu513]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Add tidytuesday example: 2019-04-30

Hello! I'm letting you all know that I am working on the dataset from 2019-04-30:
https://github.com/rfordatascience/tidytuesday/tree/master/data/2019/2019-04-30
Related Issue: #165
It seems that tinytuesday people already use janitor to handle data cleanup, so it's not that bad to translate the code from R.

OK! That's a great contribution, @kimt33 :)
I will mark this as taken by you.


Probes - What to watch/monitor for a running cross DC setup and that none of the parts has failed

When customers run the setup in their environment, they should point their monitoring to specific URLs to see if everything is up and running as expected.
Examples:

URL on loadbalancer
URL on Keycloak Route (one on each Cluster)
URL on Infinispan (one on each Cluster)
URL on the Gossip Router
...

Those could be the health endpoints.

@ahus1
https://github.com/prometheus/blackbox_exporter
I found this prometheus exporter which is designed to probe the liveness of a specific target url, which in this case could be a list of probes or health check endpoints of our architecture. This would also allow the end user to visualize the outcome of these HTTP probes in a Grafana dashboard. Let me know your thoughts on this.

Yes, that blackbox exporter is a popular choice for those items. Still, let's first find the URLs. Giving it a bit more thoughts, there might be more things than just URLs to monitor. Things might include:

Different status items on deployments/Operator CRs
Checking Infinispan if a correct cluster has been formed, and cross-site is all working
Checking if the number of deployed Keycloak Pods matches the number of nodes discovered by Keycloak's infinispan
...

In the end we want to have a list of check that are either "red" (something wrong) or "green" (everything is fine).


Missing "Minimum Supported Client"

Type of issue
Missing information
Feedback
@lorihollasch , @tedhudek  My apologies, I tried to do this with a PR but the markup macros defeated me.
The WDK has this only supported "Windows 19H1 or later."
I went to the source but I don't see the source for the Requirements section (nothing between -remarks and -see-also) so I couldn't add it..
(Also note I had to hard code the PageURL/Content Source/Author so sorry if I got that wrong
Page URL
https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/fltkernel/nf-fltkernel-fltflushbuffers2
Content source URL
git@github.com:MicrosoftDocs/windows-driver-docs-ddi.git/wdk-ddi-src/content/fltkernel/nf-fltkernel-fltflushbuffers2
Author
@lorihollasch

I've added the min OS to this page, @rodwiddowson, thanks. FYI that we insert this information via metadata in the source .md ("req.target-min-winverclnt: Windows 10, version 1903" in this case).


HIVE-26028: Upgrade pac4j-saml-opensamlv3 to 4.5.5 due to CVE

What changes were proposed in this pull request?

Upgrade pac4j-saml-opensamlv3
Why are the changes needed?

CVE
Does this PR introduce any user-facing change?

No
How was this patch tested?

Existing tests

the second re-run succeeded. The force-push retriggered the test for the 3rd time. I cancelled it because there are no new changes. Committing it even though it indicates test failures but it actually passed.

Fix has been merged. Please close the PR.


Support model levels

Description
General

Add new metview dependency for [ecmwf] installation
Add a new input  model_levels to ERA5 constructor. Type should be a list of model levels (like pressure_levels).
pressure_level input is required when defining model_levels - we will interpolate the model levels to these pressure levels.

CDS integration
When no cached data and no paths are supplied, try to download data from CDS:

Update request to cdsapi to reflect ml when model_levels is defined. Continue to default to grid coordinates (rather than native spherical harmonic coefficients) so regridding is done by CDS and returned data can come in netcdf format.
Use metview to automatically interpolate CDS returned data for all variables / times to pressure levels.

This should probably happen before caching so that we don't need to do re-interpolate every time?  This may be less robust.

Local Files

If local file paths are found, assume that it is a NetCDF file with the same format as the output from CDS. Load the local files and then handle the same was as the CDS integration.

Alternatives

Calculate average pressure levels for each model level (valid for high altitudes)

Additional context

See Eq. 2.11 in ECMWF IFS Documentation
Model Level Definitions

Reference
@depion @milenkorz

@depion we're cleaning out old issues here - we've decided not to support this natively in the library, but we will make notebook examples in the documentation for you can take model level input and interpolate to pressure levels using metview


disable function throws arr.filter is not a function

I feel like a complete noob but I can't get the most basic picker to work.
Here's my setup:
<input type="date" name="example_date">

var flatpickr = require('flatpickr');
var flatpickrSv = require('flatpickr/dist/l10n/sv.js');

flatpickr(document.querySelector('[name=example_date]'), {
  enableTime: true,
  altInput: true,
  locale: flatpickrSv,
  // Remove this function to at least make it work (with wrong locale though)
  disable: function (date) {
  	return date.getDay() === 6;
  }
});

Not only do I get arr.filter is not a function when including the disable callback - the locale doesn't work at all.
I've set up a minimum example on requirebin: http://requirebin.com/?gist=48c690ff3db47a0741c2c8f88576b69c
What am I doing wrong?

Hello,
The disable option must be an array.
Just wrap your function in []

Gash, I'm sorry! I blame it on lack of sleep :P
What's wrong with the localization though?

Oh. locale should be flatpickrSv.sv instead of flatpickrSv

Looking at the documentation again I realize I have no one to blame but myself :P Beg your pardon for wasting your time with this. Thanks for your help!


Upgrade ruby/setup-ruby v1.173.0 -> v1.174.0

This PR contains the following updates:

Package
Type
Update
Change

ruby/setup-ruby
action
minor
v1.173.0 -> v1.174.0

Release Notes

ruby/setup-ruby (ruby/setup-ruby)
v1.174.0: Add truffleruby-24.0.1,truffleruby+graalvm-24.0.1
Compare Source

[ ] If you want to rebase/retry this PR, check this box

Suggested commit message:
Upgrade ruby/setup-ruby v1.173.0 -> v1.174.0


staking liquidity new designs

as a user, i would like to have the option to add single or dual side liquidity to a bancor pool.
spec:
https://docs.google.com/document/d/1DYDSQELMPKVf1bVkND7ips37XooTrFzMEL-VewovJZY/edit#
mockups:
https://www.figma.com/file/fwADI9wqDrRAdlMX8EddCw/Bancor-v3?node-id=5769%3A133406

[ ] Determine what bottom 1  BNT = is meant to represent

[ ] Fix bug where checkboxes aren't rendering and hook up.

[ ] Merge master into branch

[ ] Add link between Pools table and liquidity + logic whether to send the user to AddProtection, Double or DoubleLiq.

[ ] Add tooltips

@ashachaf can you answer the top question?

@pingustar is going to sus out...

Fix bug where checkboxes aren't rendering and hook up.

Additional stuff that does not impact UX

[ ] Refactor pages that use approval fetching to utilise the useApprove hook instead for the simplicity.

Conduct tests on Ropsten for full transactions...

[ ] Add Liquidity - Pool with no liquidity.

[ ] Add Liquidity - Pool with liquidity.

[ ] Add Protection

[ ] Utilise useApprove in all components. (Existing system not battle tested)

@ashachaf can you answer the top question?

answered in the spec


Version odds and ends I’m not sure about...

@micheal-w-wells Wasn’t sure what to do with these.

I'll see what these look like in the database and we can sort it out here.  This stuff is damn close but needs a few tweaks.


UI: Add density view in theia-trace-extension

[ ] Trace server now supports density view data-provider with a "new type".
[ ] This "new type" needs to be added in TSP
[ ] Front-end needs to check this "new type" and instantiate a new view (not under the time-axis)
[ ] Evaluate whether D3 makes more sense instead of chart.js

Picked up by Traviz


FLOE 540: Create a new Resources page

JIRA
List of links to various resources related to FLOE and Inclusive Design.

@grrrero and I will do some more cleaning up of the code we've added, but we are going to deploy this now so Jutta can see the resources we've added.


Request Headless

Headless always failed, cannot run on Linux / Windows on true Headless

Headless gets detected. If you want to run it on Linux without a GUI use xvfb-run python3 main.py

it's still failure, also im trying on RDP give me same failure


Use synchronized to guard state, ReentrantReadWriteLock for blocking calls

This is what I wrote in #8290

I think there’s two very different ways we use synchronized:

To guard in-memory state. For the accesses we acquire the lock, read or write some fields, and release the lock. There’s unlikely to be any > contention for these, and if there is it’s likely to be very short-lived.
To guard I/O. For these accesses we acquire the lock, perform some potentially-slow I/O operation, and release the lock. These ones are > likely to have contention.

I think we definitely want to change 2 to Loom-safe locks. I am unconvinced that there’s a benefit for changing 1. But there is a potential memory + performance cost.

I’d like to find all of the things we converted to ReentrantReadWriteLock to guard in-memory state, and change ’em back to use synchronized.
This link from @yschimke provides more discussion!

Let's make sure we have good coverage of Loom tests when we put this in. I think I landed a test that fails if we block loom.


 (They do have different line numbers.) They are also at the beginning of the routine, before any other work has been done.
This makes me wonder whether we could eliminate either or both. @randall77 anything we can do here?

(code from discussion at https://github.com/golang/go/issues/31586)

This is basically a dup of #29571. The two marks are to remember the positions of the two callsites.
I'm surprised we don't remove the first nop. There's another instruction with the same line number - we should have used that instruction instead for the mark, as of CL 158021.
We could put these nops at the end of the function, so they never get executed. I put them inline because it might help debuggers set a breakpoint on that source line. But that's just from my intuition - I'm not sure if that's in fact the case, or if there is another way (DWARF, I guess) to enable that.

Looks like CL 169739 is the one that broke CL 158021. The line numbers don't match because one is a statement and one isn't.
@dr2chase : What's the right way to do atColumn1? I think we want the result to always be a statement, as (if we keep it) it will always be a standin for a real line of code, and always be the only instruction at that line. But generally, for this application we just need it to always return equal Poses given two instructions that are at the same line.
Would makeLico(x.Line(), 1).withIsStmt() work?

I think that's a good CL, and the reasoning for make it be a statement is sound.


input bams are broken symlinks when results directory is a symlink

I've modified the demo while creating a new module. I created a symlink named "results" that points to another location where I want the pipeline to write to. The symlinks that are created are broken and snakemake exits with an error. Oddly, when I move that directory to results_symlink and replace it with an actual directory, the links work fine.
.
├── BATTENBERG_Snakefile
├── config.yaml
├── data
│   ├── 02-13135N.bam -> /projects/rmorin/projects/gambl-repos/gambl-rmorin/data/genome_bams/02-13135N.grch37.bam
│   ├── 02-13135N.bam.bai -> /projects/rmorin/projects/gambl-repos/gambl-rmorin/data/genome_bams/02-13135N.grch37.bam.bai
│   ├── 02-13135T.bam -> /projects/rmorin/projects/gambl-repos/gambl-rmorin/data/genome_bams/02-13135T.grch37.bam
│   ├── 02-13135T.bam.bai -> /projects/rmorin/projects/gambl-repos/gambl-rmorin/data/genome_bams/02-13135T.grch37.bam.bai
│   ├── samples.tsv
│   ├── TCRBOA7-N-WEX.bam -> /projects/bgrande/lcr-modules/test_data/TCRBOA7-N-WEX.bam
│   ├── TCRBOA7-N-WEX.bam.bai -> /projects/bgrande/lcr-modules/test_data/TCRBOA7-N-WEX.bam.bai
│   ├── TCRBOA7-T-RNA.bam -> /projects/bgrande/lcr-modules/test_data/TCRBOA7-T-RNA.bam
│   ├── TCRBOA7-T-RNA.bam.bai -> /projects/bgrande/lcr-modules/test_data/TCRBOA7-T-RNA.bam.bai
│   ├── TCRBOA7-T-RNA.read1.fastq.gz -> /projects/bgrande/lcr-modules/test_data/TCRBOA7-T-RNA.read1.fastq.gz
│   ├── TCRBOA7-T-RNA.read2.fastq.gz -> /projects/bgrande/lcr-modules/test_data/TCRBOA7-T-RNA.read2.fastq.gz
│   ├── TCRBOA7-T-WEX.bam -> /projects/bgrande/lcr-modules/test_data/TCRBOA7-T-WEX.bam
│   └── TCRBOA7-T-WEX.bam.bai -> /projects/bgrande/lcr-modules/test_data/TCRBOA7-T-WEX.bam.bai
├── dry-run.sh
├── reference
│   ├── chrom_mappings -> /projects/bgrande/reference_files/chrom_mappings
│   ├── downloads -> /projects/bgrande/reference_files/downloads/
│   └── genomes -> /projects/bgrande/reference_files/genomes/
├── results
│   └── battenberg-1.0
├── results_symlink -> /projects/rmorin_scratch/rmorins_stuff/results/
├── run.sh
├── scratch
│   └── star-1.0
└── Snakefile```

```(lcr-modules) -bash-4.2$ ls -lhH results/battenberg-1.0/00-inputs/bam/genome--grch37/02-13135T.bam
-rw-r--r-- 1 bioapps users 164G Mar 24 13:02 results/battenberg-1.0/00-inputs/bam/genome--grch37/02-13135T.bam
(lcr-modules) -bash-4.2$ ls -lhH results_symlink/battenberg-1.0/00-inputs/bam/genome--grch37/02-13135T.bam
ls: cannot access results_symlink/battenberg-1.0/00-inputs/bam/genome--grch37/02-13135T.bam: No such file or directory```

I think I understand what's going on, and why I didn't run into an issue when I did the same thing with my adult_blgsp project. I'll look into fixing this tonight.

Thanks! I thought I was going crazy because this works for other people. Yet another example of Snakemake trolling one of us.

Fixed in b824a9ef6c0d70bccf1e89e150d2a930f3798784


Re-run of release pipeline results in loss of release notes information

Azure DevOps Extension you are using
Generate Release Notes (Crossplatform)
Where are you running it?
Azure DevOps Service (VSTS)
Version of Extension/Task
2.8.1
Expected behaviour and actual behaviour
During a successful deployment the release notes are generated based on current and previous release, resulting in a release note as expected. If user re-deploys an environment, the release notes are re-generated (and potentially overwritten), but without any changes as extension now compares release to itself.
Steps to reproduce the problem

Complete a pull request with valid changes, deploy an environment, and generate the release notes.
Generated release notes are healthy and reflect the changes introduced by latest artefacts.
Re-deploy the environment, which generates the release notes again.
Changes introduced by the latest artefacts are not reflected in the release notes.

I think this might be a limitation of the API call that is being made, as it compared between simiple numeric releases, ignoring and rerelease complexities. I need to investigate

@rfennell I did the following test:

Cloned pipeline and re-ran release.
Run 1: Release = Release 1, Compare = Release 1, changes none.
Run 2: Release = Release 2, Compare = Release 1
Re-Run 2: Release = Release 2, Compare = Release 2

In step 1, should the Compare not be "None" and in step 4 be the last successful, but itself, i.e. "Release 1"? When it compares itself, there will be no differences.

1 Cloned pipeline and re-ran release.
1 Run 1: Release = Release 1, Compare = Release 1, changes none. - I would expect all wi/cs associated with the trigger build (this is new feature), the detailed logs show a special route has been taken
1 Run 2: Release = Release 2, Compare = Release 1 - Normal behavior
1 Re-Run 2: Release = Release 2, Compare = Release 2 - this is the problem, I need to look into this this, but it won't be straight away

I think the question is how is the task meant to know that step 4 (above) is really step 3.
It just looks for the last good release to compare against, and the step 3 one was good.
Any thoughts,  how can we signal that step 4 is a redeploy?

@rfennell is there any way that the task can compare itself with the most recent successful build?

For example, release 31 compared itself with release 30. Release 30 compared itself with release 29, which was failed in post=deploy approvals.
I'm thinking aloud ... if we can configure the task to compare itself with the last successful release, for example Release 30 would compare itself with Release 26, we can fail a release, before re-deploying to fix this #440 issue. A bonus would be that the release notes would show the same results as what we see in the release summary when we manually compare with the last successful release.
Thoughts?

Yes, I think that is the only way
I think the task needs to check that this release does match the last successful release's artifacts. if it does in  your example run the compare for 30 > 26 as opposed to 31 >30
Think that works?

Sorry, my image is adding confusion. Ignore release 31 at the top. When Release 30 runs, it compares itself with Release 29 (which was failed in post-approval) according to the release notes. This is default behavior, even for the release summary view, so I would leave it "by default".
It would, however, be "cool" if we could configure the task not to process default behavior, but to compare itself with the most recent successful release. So, if we set this option, release notes would show that Release 31 compared itself with Release 26.
This behavior would unblock a few branching and release reporting issues we 're experiencing.

@rfennell if we could take it one step further. If configured to NON-DEFAULT, release 30 looks for the last successful release (other than itself), which is 26. When Release 31 runs it finds 30. When release 31 is re-deployed, it still looks for the last (other than itself) successful release, which is 30.

Seems reasonable, I will have a look

Checked the code, it should do the compare against the last successful release. If you run with system.debug=true it lists the last successful release, seems Ok from my tests

Busy walking at the beach. Will send you logs as soon as I get home.
Get Outlook for Androidhttps://aka.ms/ghei36

From: Richard Fennell<EMAIL_ADDRESS>Sent: Wednesday, March 20, 2019 3:04:24 PM
To: rfennell/AzurePipelines
Cc: Willy-Peter Schaub; Author
Subject: Re: [rfennell/AzurePipelines] Re-run of release pipeline results in loss of release notes information (#440)
Checked the code, it should do the compare against the last successful release. If you run with system.debug=true it lists the last successful release, seems Ok from my tests
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Frfennell%2FAzurePipelines%2Fissues%2F440%23issuecomment-475046529&data=02|01||bfb2a59f38ac486a2fc808d6ad80040b|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636887162660402472&sdata=Hirgkv5KYuw5vGUQac3ifkmrgPmM5N%2FpGsDPl%2FX790o%3D&reserved=0, or mute the threadhttps://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FALnMq7QWbVRRmzvYmAhIw7TSMWeaTOk7ks5vYrBogaJpZM4bRAoM&data=02|01||bfb2a59f38ac486a2fc808d6ad80040b|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636887162660412483&sdata=73q2NRF9fjQUUMyc50KBr3MKD04VmN6b6Ttkpxer8hc%3D&reserved=0.

@rfennell you're correct. release summary, by default, compares with the previous release, even if failed. Your extension skips the failed releases 👍 I'm stoked and cannot wait to go back to the office tomorrow :) That means the only thing that is still an issue is the re-deploy, which compares the release with itself.

So my bug is good !
I won't fix it then, just the rerun issue and I have plan for that

Yes. I'll redo the test in our sandbox to confirm today and update here. I want to confirm the passed, failed, failed, release scenario, when the task should compare with release - 3.
Get Outlook for Androidhttps://aka.ms/ghei36

From: Richard Fennell<EMAIL_ADDRESS>Sent: Thursday, March 21, 2019 2:17:02 AM
To: rfennell/AzurePipelines
Cc: Willy-Peter Schaub; Author
Subject: Re: [rfennell/AzurePipelines] Re-run of release pipeline results in loss of release notes information (#440)
So my bug is good !
I won't fix it then, just the rerun issue and I have plan for that
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Frfennell%2FAzurePipelines%2Fissues%2F440%23issuecomment-475157805&data=02|01||c50a65cb80ae43f0578908d6adddfb1a|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636887566237303456&sdata=IbJhIAqe2NvMDQCZkha0m9rRmYTfxUM9mVy22LipX8k%3D&reserved=0, or mute the threadhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FALnMq2APgPEYo0ZLKfRaNG3T26PjKWcoks5vY04OgaJpZM4bRAoM&data=02|01||c50a65cb80ae43f0578908d6adddfb1a|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636887566237313473&sdata=lkRc6c6Vgi%2FCxNarTS7Ptu7OaS29kT5qWiKlaFrSQE0%3D&reserved=0.

@rfennell Test was successful. I failed 3 PR and 3 releases, then ran another release and the extension compared Current to Current - 6. Spot on!
In terms of a re-deploy a colleague had a great idea. How about the task skips release notes processing if Release.AttemptNumber > 1?

@wpschaub been a while but I have been thinking on this one.

On the Release.AttemptNumber > 1 option where you thinking output a message somewhere?
I was looking at trying to detect of a release was off the same artifacts as the previous one and using the changes from the previous release, but this is confusing.

I like tracking the  Release.AttemptNumber number , but not sure what to do with it.

@rfennell I was thinking of allowing user to decide whether to re-run the release note generation if ReleaseAttemptNumber>1. By default I would not re-generate release notes, instead place a warning in the log that release notes were not regenerated due to the release being re-deployed.

That sounds like I need both, if we are a re-run then need to go back and get the old artifact number for the checks

I recommend not re-running release note generation on a redeploy, else we clobber the release notes.
Get Outlook for Androidhttps://aka.ms/ghei36

From: Richard Fennell<EMAIL_ADDRESS>Sent: Monday, April 15, 2019 6:46:44 AM
To: rfennell/AzurePipelines
Cc: Willy-Peter Schaub; Mention
Subject: Re: [rfennell/AzurePipelines] Re-run of release pipeline results in loss of release notes information (#440)
That sounds like I need both, if we are a re-run then need to go back and get the old artifact number for the checks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Frfennell%2FAzurePipelines%2Fissues%2F440%23issuecomment-483258248&data=02|01||5981b8501b404bc12e6e08d6c1a8cd5b|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636909328071982901&sdata=iFAWF6dvobZv1KRfdN66AYSo38fduQE0ixqXx611Dyc%3D&reserved=0, or mute the threadhttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FALnMq6y0Hkw73XHPbsCi9_IUcDGEvk9Mks5vhILDgaJpZM4bRAoM&data=02|01||5981b8501b404bc12e6e08d6c1a8cd5b|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636909328072002917&sdata=v4BEd9ZICOM80QNifIUGE0abpJIyVrB4ZSYmPO5DafI%3D&reserved=0.

Give 2..9.6 a try, it has a new advanced option that will skip generation of release notes on a re-deploy (of the stage the task is in). It completes with a 'pass with warnings'
The default is the old behavior, so it is a non-breaking change
Does that work for you?

Perfect, thank you! Blog - https://willys-cave.ghost.io/skip-release-notes-when-re-deploying-a-release/

It sounds like you were attempting to find a way to compare to latest successful deployment (not the current) when redeploying.  Did you determine that this wasn't possible?  Also what about the first run issue where it compares to nothing and doesn't find any related work items?
All of my issues would be solved if I could just delete the current release from DevOps and start a new one.  I'm trying to change the release notes task and regenerate, but I can't find any good way to do that.

@rfennell It sounds like you were attempting to find a way to compare to latest successful deployment (not the current) when redeploying. Did you determine that this wasn't going to be possible?
Sometimes if I don't like what was in the notes, or a work item gets missed, I'd like to go back and regenerate the release notes. Since redeploying won't recreate the notes, and since DevOps won't let you delete a release once it is completed, I don't really have any options if something went wrong.

@rfennell Any tips for situations like this?  The main issue is that DevOps doesn't let you delete your last release.  Still trying to figure out how I could regenerate the correct notes.

The only option I have found is to use the command line test harness I recently wrote and inject the values for the release you wish to re-run.
However even this is problemic if the release ran to completion as the task looks for the last success release to compare against, less if an issue if using multistage YAML.

Great, thank you!
On Mon, Aug 10, 2020 at 2:03 PM Richard Fennell<EMAIL_ADDRESS>wrote:

The only option I have found is to use the command line test harness
https://github.com/rfennell/AzurePipelines/tree/master/Extensions/XplatGenerateReleaseNotes/V3/testconsole
I recently wrote and inject the values for the release you wish to re-run.
However even this is problemic if the release ran to completion as the
task looks for the last success release to compare against, less if an
issue if using multistage YAML.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/rfennell/AzurePipelines/issues/440#issuecomment-671559989,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADSANDHD356LPP4FQN4IF3TSABG73ANCNFSM4G2EBIGA
.


Add option to enable TCP check with Consul registry

One disadvantage of using TTL based health check is the high network
traffic between Consul agent (either between servers, or between server
and client).
In order for the services considered alive by Consul, microservices must
send an update TTL to Consul every n seconds (currently 30 seconds).
Here is the explanation about TTL check from Consul documentation [1]
Time to Live (TTL) - These checks retain their last known state for a
given TTL. The state of the check must be updated periodically over
the HTTP interface. If an external system fails to update the status
within a given TTL, the check is set to the failed state. This
mechanism, conceptually similar to a dead man's switch, relies on the
application to directly report its health. For example, a healthy app
can periodically PUT a status update to the HTTP endpoint; if the app
fails, the TTL will expire and the health check enters a critical
state. The endpoints used to update health information for a given
check are the pass endpoint and the fail endpoint. TTL checks also
persist their last known status to disk. This allows the Consul agent
to restore the last known status of the check across restarts.
Persisted check status is valid through the end of the TTL from the
time of the last check.

Hint:
TTL checks also persist their last known status to disk. This allows
the Consul agent to restore the last known status of the check
across restarts.

When microservices update the TTL, Consul will write to disk. Writing to
disk means all other slaves need to replicate it, which means master need
to inform other standby Consul to pull the new catalog. Hence, the
increased traffic.
More information about this issue can be viewed at Consul mailing list [2].
[1] https://www.consul.io/docs/agent/checks.html
[2] https://groups.google.com/forum/#!topic/consul-tool/84h7qmCCpjg

This cannot be merged in its current form. This is a consul specific change. Consul specific options should be added here https://github.com/micro/go-micro/blob/master/registry/consul/options.go and then accessed through the Context.
Your check is also incorrectly setup. It specifies the consul address as the tcp check address. This makes no sense.

Done. Please check the code.

LGTM, will merge once tests pass. Thanks

Thank you for accepting the PR and for this repository.


Refresh cache when the function code source change

Currently, the cache is loaded even if the function code has changed. For prototyping purposes, it would be great to have the possibility to reload the cache on source code change.
Example :
from cachier import cachier

@cachier()
def f(x):
    print("This will print once")
    return x + 3
print(f(0)) # -> 3

will put the result of f(0) in cache for instance. But, when changing 3 to 4 :
@cachier()
def f(x):
    print("This will not be printed unless cache is invalidated manually")
    return x + 4
print(f(0))  # -> 3

TBD :

This behavior could be default, or enabled with a parameter reload_on_source_change
Should it refresh only when the body of the function changes (easy) or recursively on any change of a function called in the body (harder, maybe not necessary)

This is a duplicate of #34 , and is often discussed.
Please see the last comment there for the history of attempts to add this feature. :)
https://github.com/shaypal5/cachier/issues/34


Sveltia logo flashes before loading configured logo_url image

It happens just above here on the GitHub login window for a moment before the configured image replaces it:

Good catch! Should be easy to fix.

Shipped v0.46.0 with the fix.


Add tooltips to various user interface elements

In order to improve user experience, add tooltips where feasible.

Screenshot shows an example.


Ensure thread safety of handlA.

Use a loop with short wait to speed up test.
@geirst or @havardpe PR

Done


[graphiql] Accessibility: Window Splitter Not Keyboard Accessible

Is there an existing issue for this?

[x] I have searched the existing issues

Current Behavior
The window splitter in GraphiQL is not accessible via keyboard. It is only accessible and operable with a mouse. This creates a significant barrier for keyboard users, resulting in a degraded user experience as they cannot adjust the layout of the interface.
Expected Behavior
The window splitter should be fully accessible and operable via keyboard:

Users should be able to focus on the splitter using the Tab key
Once focused, users should be able to adjust the splitter using arrow keys
The functionality should be equivalent to what is currently possible with mouse interaction

Steps To Reproduce

Open GraphiQL in a web browser
Attempt to navigate to the window splitter using the Tab key
Try to operate the window splitter using keyboard controls (arrow keys)
Observe that it's not possible to interact with the splitter using only the keyboard

Environment

GraphiQL Version: 3.7.1
OS: MacOS
Browser: Chrome
Bundler: Not specified
react Version: 18.3.1
graphql Version: 16.9.0

Anything else?
No response

@juanrgon thank you for reporting these bugs! going on the roadmap for 4.0.0 which is in progress!


chip tool pairing onnetwork-commissioning-mode api fails at CASE session establishment

On ToT (521345202fef46c8039d2b79d38a29507905ca41) chip tool pairing onnetwork-commissioning-mode api fails at CASE session establishment.
Steps to reproduce,

Build chip-tool  using below commands
A. gn gen out/debug --args='chip_mdns="platform"'
B. ninja -C out/debug
launch onnetwork-commissioning-mode using sudo ./out/debug/chip-tool pairing onnetwork-commissioning-mode 99997777 20202021

Attached log
log-2.txt

I'm assuming this is resolved now?


Opaque Types

An important aspect of switch configuration is the creation of objects, such as groups, interfaces, nexthops, tunnels, vrfs, ports, etc.
When the switch pipeline refers to these objects, it usually does so using integer ids, because integer ids are efficiently implementable in the hardware. There are several downsides to that approach:

Integer ids are not very readable for humans. For example, it is much harder to figure out what the following set of flows does:

if dst_ip in <IP_ADDRESS>/8 then use group 4231
group 4231 chooses between nexthop 5643 and 4023
if nexthop = 5643 set interface to 92 and neighbor to 123
if nexthop = 4023 set interface to 12 and neighbor to 456
if interface = 92 set egress port to 5 and src-mac to "00:00:00:00:00:01"
if interface = 12 set egress port to 517 and src-mac to "00:00:00:00:00:02"
if neighbor = 123 set dst-mac to "00:00:00:00:01:01"
if neighbor = 456 set dst-mac to "00:00:00:00:01:02"

when compared to this set of flows, where objects are referenced by name (aka string):
if dst_ip in <IP_ADDRESS>/8 then use group "distribute among middle block nodes"
group "distribute among middle block nodes" chooses between nexthop "mb1" and "mb2"
if nexthop = "mb1" set interface to "int-5/1" and neighbor to "<IP_ADDRESS>"
if nexthop = "mb2" set interface to "int-5/2" and neighbor to "<IP_ADDRESS>"
if interface = "int-5/1" set egress port to "port-5/1" and src-mac to "00:00:00:00:00:01"
if interface = "int-5/2" set egress port to "port-5/2" and src-mac to "00:00:00:00:00:02"
if neighbor = "<IP_ADDRESS>" set dst-mac to "00:00:00:00:01:01"
if neighbor = "<IP_ADDRESS>" set dst-mac to "00:00:00:00:01:02"

For efficiency, it makes sense to choose the minimum bit-width for integer ids, e.g. a switch with just 32 ports would choose a 5bit port id, and a switch with a 1K neighbor table would choose a 10bit neighbor id. This however makes it hard to operate a heterogeneous fleet, as the controller needs to deal with different bit-widths on different targets.

The state of the art for object naming is sufficiently bad that PSA and P4Runtime introduced ad-hoc ways to deal with the translation between various representations of ports and other metadata (see here).

To fix the above problems, we propose the introduction of an opaque type opaque<type, int> to the P4 language. Semantically, an opaque type opaque<T, N> behaves just like the type T. However, the operations on opaque types are limited to equality-checks and assignment, which allows the compiler/switch to remap values of  T to a different physical representation. The switch only needs to handle N distinct values of type T, which it can use to influence the choice of the physical representation (e.g. if N = 1024 it might make sense to choose a 10 bit integer as the physical representation).
Currently, P4 only allows the string type in annotations. We propose to also allow it in the opaque type.
Example
A user wants to have human readable names for nexthops; on a switch that supports upto 1024 nexthops. The user defines nexthop names as opaque<string, 1024>. The P4 program would then look as follows:
struct local_metadata_t {
  opaque<string, 1024> nexthop;
}

table nexthop {
  key = {
    local_metadata.nexthop : exact;
  }
  size: 1024
}

action set_nexthop(opaque<string, 1024> nexthop) {
  local_metadata.nexthop = nexthop;
}

table l3 {
  key = {
    header.ip_addr : lpm;
  }
  actions = {
    set_nexthop;
  }
}

Because representing nexthops as strings is prohibitively expensive in hardware, the compiler decides to remap the nexthop names to 10 bit integers. This means that the nexthop table can be efficiently implemented with 1024 entries of SRAM, where the nexthop id indexes into that SRAM.
When the controller installs a flow on the switch, the switch software dynamically maps the string name to a 10 bit integer. For example:

The controller installs a nexthop flow that matches on "mb0". The switch software allocates the nexthop id 0 for that name, and installs the nexthop.
The controller installs a route pointing to the nexthop "mb0". The switch software translates the name to the nexthop id 0.
The controller installs a nexthop flow that matches on "mb1". The switch software allocates the nexthop id 1 for that name, and installs the nexthop.
The controller removes the nexthop flow that matches on "mb0". The switch software releases the nexthop id 0.
The controller installs a nexthop flow that matches on "mb3". The switch software reuses the nexthop id 0 for that name, and installs the nexthop.

The operations on an opaque type are restricted to equality-checks and assignment. In particular, ternary matches cannot be implemented efficiently as the bit pattern of T might be very different from the type that implements T. Stefan Heule's proposals of using optional and set (both of which work well with opaque types) would allow a user to get back much of the practically relevant ternary match functionality.

Just to check my understanding here: You want to pass larger P4Runtime messages between servers and clients?

@konne-google -- is there a reason the type construct doesn't work for you in terms of creating a restricted type?
Currently the control plane representation of the type is a little bit outside of P4 purview, but you are free to have annotations associated with the type that will describe the control plane representation of your restricted type. Given the diversity of the control planes, it looks to me that keeping this information as annotation might be better for now.
If you ask myself, my biggest quip is that type only produces restricted types :)

jafingerhut@ yes that's right, the message in P4RT would contain the string (the mapping to int would happen on the switch). For us, the improvements in debuggability and portability would far outweigh the cost of a larger message.
vgurevich@ that's a great point. So instead of opaque<string, 1024>, you would prefer we wrote:
@max_distinct_values(1024)
type string nexthop;
That sound great to me!
Two questions:
Would a string in that position already be supported, or would we need to extend the spec for that?
The spec says:
While similar to typedef, the type keyword introduces in fact a
new type, which is not a synonym with the original type: values of the
original type and the newly introduced type cannot be mixed in
expressions.
Does this imply that no operations are allowed on that type, other than checking for equality and assignment?

A type defined via the type keyword, if it has a base type of bit<W> or int<W>, can be cast to or from that base type, in addition to supporting equality and assignment.
Vladimir has also proposed recently in the LDWG that one of those directions of casting should be unnecessary and happen automatically.  I am not trusting my memory right now on which direction that is.

P4_16 supports a string type only in positions where compile time constants are permitted, e.g. for a log extern intended only for debugging programs, or in annotations.  There is no current plan to support strings as the types of run-time variables in P4_16, and I suspect there would be active resistance, and/or extremely careful delimiting of it such that it would really have to be an integer under the hood.

@konne-google ,
Not quite.
As a data plane designer you are supposed to define the exact type that will be used in the data plane, e.g.
type bit<10> nexthop_t;

Separately (and that's where things are not yet standardized) you should be able to specify how you want that type to be visible at the control plane. This can be achieved through any kind of annotation, e.g.
type bit<10> nexthop_t @representation("my_nexthop_string");

It will be up to your control plane layers to convert from bit<10> to your string and vice versa.

Thanks vgurevich@, I think I understand that better now. So basically, instead of writing opaque<T, N> you would write:
type bit<round_up_to_nearest_power_of_two(N)> nexthop @representation("T")
This seems like we could use it.
One problem I see with that is that not everything is a power of two, e.g. the number of ports is usually not a power of two (because there are management ports etc, in addition to the dataplane ports). That would be a problem when combined with a feature like the set match-kind proposed by Stefan (https://github.com/p4lang/p4-spec/issues/795), which would waste resources in that case (because the bitmap would be larger than necessary). We could get around that by adding another annotation, max_distinct_values, as follows:
type bit<round_up_to_nearest_power_of_two(N)> nexthop @representation("T") @max_distinct_values(N)
It's getting to be a mouth-full, but does that sound reasonable?
jafingerhut@, I don't understand the cast to uint. Doesn't that completely defeat the point of introducing the type keyword in the first place (if you can extract the value, then it can't be renamed by the switch). Where is this cast specified?
Thanks everyone for the very helpful comments, very much appreciated!

@konne-google ,
It is quite common (e.g. in the case of ports) that the value in the data plane is N bits wide, but not all values are representable. Nevertheless, we need to carry these N bits in the data plane, since we can't carry less :) and simply be careful.
I cannot say much about the proposed set match type, but it seems to require some specialized hardware. As a result, you might need to associate a certain extern with it and be able to specify the range in the declaration of that extern (essentially the width of the bitmask). All the values outside of the range will cause a miss anyway.
As a more well known example, a number of architectures allow one to declare an indirect counter using the Counter() extern, for example:
Counter<bit<10>>(999, CounterType_t.Packets_and_Bytes) my_counter;

where the index type is bit<10>, but the total number of instances is not 2^10, but less (999 here).
Good architectures typically specify that the attempt to count using the counter instance outside of this range is a no-op.
Your control plane might know what exactly you are supposed to represent and through the corresponding annotation impose the necessary restrictions. Note, that this is still not a bullet-proof way, since P4Runtime passes integers, so it is still possible to pass a number outside of your desired range.

@konne-google Please ignore my comment above: "Vladimir has also proposed recently in the LDWG that one of those directions of casting should be unnecessary and happen automatically. I am not trusting my memory right now on which direction that is."
I was mixing that up in my memory with an actual proposal that has really been made, but has nothing to do with the type keyword in P4_16.  It does have to do with serializable enum types in P4_16: https://github.com/p4lang/p4-spec/issues/793

@konne-google Sorry to chime in so late. Let me see if I understand correctly what you need: a symbolic (string) value that you want to pass on the user/control-plane facing side of the programming, while still represented as integers in the data plane. Seems to me that you are really describing a serializable enum. As long as we can publish the symbolic names of the serializable values in the enum, you get the integer representation as well as the stringified name. And you don't need a new type.  Am I missing something?

@cc10512 Hopefully what I say here will be accurate, but @konne-google can correct me if I go off the rails.
I see at least two differences between this proposal and using serializable enums:
(1) With serializable enums, the P4Runtime API still passes integer values over the gRPC connection, not strings as this proposal would do.  With serializable enums, the enum member name to integer mapping would be in the P4Info file for a P4 program, so it would be fairly straightforward for some debug-level tool to do the number->name mapping, when a name exists for a numeric value.
(2) With serializable enums, the name<->number mapping is fixed at the time of compiling the P4 program.  With this proposal, the string value<->number mapping is dynamically created by the switch driver software / P4Runtime server software, and the set of names exists nowhere in the P4 source code.  The set of names in use can change over time, without changing the P4 program.
I do not know if those differences are important enough to whoever will be making the decision on this proposal, but wanted to at least point out that these differences are there.

I think the second part of Andy's response is what I care about the most.
The P4 program doesn't know what neighbors, vrfs, etc the control plane
will have to create, so we can't enumerate them.
That said, if type is indeed opaque, then we can use that without
introducing anything new in the language, and just adding an annotation
that's used by P4RT to do the translation.
On Fri, Dec 20, 2019, 16:38 Andy Fingerhut<EMAIL_ADDRESS>wrote:

@cc10512 https://github.com/cc10512 Hopefully what I say here will be
accurate, but @konne-google https://github.com/konne-google can correct
me if I go off the rails.
I see at least two differences between this proposal and using
serializable enums:
(1) With serializable enums, the P4Runtime API still passes integer values
over the gRPC connection, not strings as this proposal would do. With
serializable enums, the enum member name to integer mapping would be in the
P4Info file for a P4 program, so it would be fairly straightforward for
some debug-level tool to do the number->name mapping, when a name exists
for a numeric value.
(2) With serializable enums, the name<->number mapping is fixed at the
time of compiling the P4 program. With this proposal, the string
value<->number mapping is dynamically created by the switch driver software
/ P4Runtime server software, and the set of names exists nowhere in the P4
source code. The set of names in use can change over time, without changing
the P4 program.
I do not know if those differences are important enough to whoever will be
making the decision on this proposal, but wanted to at least point out that
these differences are there.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/p4lang/p4-spec/issues/799?email_source=notifications&email_token=AJ3D54FAMVARLNQCNHOS5DDQZVXSFA5CNFSM4J2WL35KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHOSH2I#issuecomment-568140777,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJ3D54DVU65A35TUAVUWRO3QZVXSFANCNFSM4J2WL35A
.

I'm closing this bug, there is no change needed to the language, because type does in-principle already support what we need. There are some follow-up bugs to make type more useful:

support type as exact key: https://github.com/p4lang/p4c/issues/2177
support type as action parameter: https://github.com/p4lang/p4runtime/issues/263
add new match kind optional: https://github.com/p4lang/p4-spec/issues/794
add new match kind set: https://github.com/p4lang/p4-spec/issues/795


Many to many documentation: :on_replace flag

Added docs to better explain many to many relationships in regards to deleting and updating associations, also explains the flags that you can use for on_replace for many to many and how they differ to one to one and one to many associations

To be honest, I'm not convinced about this change. There's nothing specific to many_to_many in the :delete option - it works the same with other association types as well. Or is there something I'm missing?

Thanks for clarifying, @Errol-Hassall .

It might also be worth adding some more explanation on how the :delete will only remove the entry from the linking table not the table that your joining too. This is something that I would have found very helpful myself, and I'm sure it would help future people.

I think this belongs in the many_to_many section in Ecto.Schema. It may even have already been there? However, how to make sure developers will read those sections? :S

@josevalim I had a quick look at the many_to_many section, you're right it is already there. I didn't see that before I think it's because I'm still new to Ecto and Elixir as a whole and didn't know where to look. This can probably be closed as it's already in the schema section. Unless theres something I could add?

Thanks @Errol-Hassall, I do believe the current docs are good as is then. We will keep listening to feedback though and see if there is anything else to improve!


[ENH] Implement accuracy performance measure for clustering

Describe the feature or idea you want to propose
there is no sklearn clustering accuracy performance measure, and we use it in comparing clusterers. Be good to have one in aeon
Describe your proposed solution
new module in performance_metrics called clustering, with a function that returns the clustering accuracy found through permuting possible alignments
Describe alternatives you've considered, if relevant
No response
Additional context
No response

see #1048

I guess solves is not a keyword 🙂.


[BUG] - Project Auga issues

[Info   : Unity Log] 08/02/2021 11:20:10: DLC:beta installed:False

[Error  :Jotunn.Managers.GUIManager] System.ArgumentException: Could not create sprite (0, 1892, 139, 36) from a 512x512 texture.
  at UnityEngine.Sprite.Create (UnityEngine.Texture2D texture, UnityEngine.Rect rect, UnityEngine.Vector2 pivot, System.Single pixelsPerUnit, System.UInt32 extrude, UnityEngine.SpriteMeshType meshType, UnityEngine.Vector4 border, System.Boolean generateFallbackPhysicsShape) [0x000a2] in <30e538f3cf5548cfa6abc9730778bcef>:0
  at UnityEngine.Sprite.Create (UnityEngine.Texture2D texture, UnityEngine.Rect rect, UnityEngine.Vector2 pivot, System.Single pixelsPerUnit, System.UInt32 extrude, UnityEngine.SpriteMeshType meshType, UnityEngine.Vector4 border) [0x00001] in <30e538f3cf5548cfa6abc9730778bcef>:0
  at Jotunn.Managers.GUIManager.CreateSpriteFromAtlas (UnityEngine.Rect rect, UnityEngine.Vector2 pivot, System.Single pixelsPerUnit, System.UInt32 extrude, UnityEngine.SpriteMeshType meshType, UnityEngine.Vector4 slice) [0x00006] in <ae3eb29e3d87405a8073e953faa4f05c>:0
  at Jotunn.Managers.GUIManager.ApplyInputFieldStyle (UnityEngine.UI.InputField field) [0x00056] in <ae3eb29e3d87405a8073e953faa4f05c>:0
  at Jotunn.Managers.GUIManager.InitialLoad (UnityEngine.SceneManagement.Scene scene, UnityEngine.SceneManagement.LoadSceneMode loadMode) [0x00405] in <ae3eb29e3d87405a8073e953faa4f05c>:0
[Debug  :Jotunn.Managers.SynchronizationManager] Gathering config values
[Info   :Jotunn.Managers.LocalizationManager] Loading custom localizations

When using RandyKnapps latest UI overhaul in tandem with Jotunn
I get some NRE on load in reference to the sprite create for Jotunn
I also do not see my custom build categories nor is there a "mod settings" in the settings menu
https://github.com/RandyKnapp/Auga

Randy replaces the whole SpriteSheet? That, too, seems a bit extreme...

I just expect this to be a common report compatibility problem moving forward so thought to make you aware

yeah, thx. appreciate it. we can use this issue to collect AugaUI compat problems :P they seem to be pretty intrusive there

Cant recreate the Exception, just using Auga and Jötunn works fine - need more data on this
The in-game settings dialogue gets replaced completely, Jötunn appends its tab only on the vanilla settings object - wontfix
I will make Jötunn more robust on the custom categories so that it does not throw exceptions at least

Some NRE were fixed, Settings GUI and custom piece categories now even work correctly without writing Auga specific code.


Allow for different MIME types in dev mode.

See this thread: https://groups.google.com/forum/#!searchin/socketstream/mime/socketstream/PcKCoFcaSW0/pu_IrxHKsdYJ
It doesn't appear that we can serve different MIME types in development mode.

Wouldn't we want to move away from implementing a general purpose app server?
I would expect that it is trivial to prepend a middleware which will serve special mime types. In production you should have the static server handle this anyway I would think.
I'm not against the improvement, just think it is a distraction beyond documenting how to write your own static serving middleware for DEV time. There must be 100+ blog posts that explain how to do this with Connect/Express.

@thepian I don't disagree—however—currently it's not possible to hook into the middleware for the MIME type in dev mode—unless I'm missing something.

We now have an Express 4 example.

:+1:


Don't store IDs and archives for a QSCommand (in the plist)

Fixes issue #2419
This should fix #2419 (I think), it seems that in this case:

You create a trigger for an dObject that's not in the catalog
That dObject subsequently gets added to the catalog
You resave the trigger (I guess it happens on every quit of the app)

Then the trigger would have both a directArchive (created originally when the object isn't in the catalog) and then subsequently a directID (when the object gets added to the catalog). This causes problems in QSCommand.m:-(QSObject *)dObject (I think).
Now the ideal solution would be to store both the directID and directArchive, and (for the event that you add a trigger for something that's in the catalog, then it subsequently gets removed from the catalog) but that's another task for another day.

I don’t see a problem in - [QSCommand dObject]. If there’s a directID and it can be used to find and object, the archive is ignored. But there’s obviously a problem somewhere. Rather than try to find it, I’ll just merge this locally and test it out.
Were you able to reproduce the problem prior to this change?

I haven’t tried to reproduce the problem to know if this fixes it, but it doesn’t seem to break anything, so…
Please look at and adjust the release notes if I explained this incorrectly @pjrobertson.

looks good. It doesn't break anything... haha, best kind of code change out there ;-)


Add meta description to Child Benefit Tax Calculator main page

Part of improving search result snippets shown on external search engines.
The lack of a meta-description tag makes some search result snippets unhelpful, confusing or misleading. Ticket: https://trello.com/c/S6VUwRWQ/273-follow-up-add-meta-description-tag-to-custom-content-types

That's a fair question. The app has been around for a good few years, and only has child benefit calculator. It shouldn't take much effort to do that.

Custom team will inherit this app. Could you add a comment above this line to warn that the meta description is valid only for the Child Benefit Calculator?

This app is unlikely to have any more calculators added to it, so YMMV as far as comments go.

Alright, thank you Brad. Mergiging.


remove deprecation warning emitting int32

@hayd cleared most of the deprecation warnings in #33. But, there was a rouge int32 in the HttpParserError constructor. runtests.jl doesn't run that code, so it's easy to miss.

HttpParser doesn't support

I'll issue another PR in a bit. I saw the julia 0.4- in REQUIRE; but, I also saw the @compat Ints in the tests. Given an ignored 0.3, would you prefer a PR with extraneous @compats removed from the tests?

That'd be great, yeah, removal of Compat entirely


[4.0.0-alpha.5] DateTimePicker errors when value is null and view switched to input

Environment

Tech
Version

@material-ui/pickers
4.0.0-alpha.5

material-ui
4.9.12

TypeScript
3.8.3

React
16.13.1

date-fns
2.12.0

Steps to reproduce

Use date time component with state initialized to null
Open the date time picker
Click the pencil icon in the top right of the component
Errors appear in console, it looks like it forward props to the input element in the dom

Expected behavior
When the value is null, component should not error when switching to input view
Actual behavior
Errors appear in dom when switching to input view while value is null.
Warning: React does not recognize the `invalidDateMessage` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `invaliddatemessage` instead. If you accidentally passed it from a parent component, remove it from the DOM element.
    in div (created by ForwardRef(FormControl))
    in ForwardRef(FormControl) (created by WithStyles(ForwardRef(FormControl)))
   ...

Live example
https://codesandbox.io/s/festive-zhukovsky-m3edc?file=/src/DateTimeField.tsx

There is no error on the provided codesandbox. https://codesandbox.io/s/festive-zhukovsky-m3edc?file=/src/DateTimeField.tsx
From the error message you provided: There is no more prop invalidDateMessage prop. They gone at the 4.0.0-alpha.6. Please provide a reproduction with alpha.6

Hi just wanted to make sure that you followed the reproduction steps, the error happens on the user interaction. See the attached gif.
Also it looks like MobileDateTimePicker is broken in alpha.6 and alpha.7.
renderInput is not a function
    at PureDateInput (https://m3edc.csb.app/node_modules/
material-ui/pickers/dist/material-ui-pickers.js:640:10


Using map for Docker labels everywhere

Codecov Report

Merging #411 into master will decrease coverage by 0.05%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #411      +/-   ##
==========================================
- Coverage    78.2%   78.14%   -0.06%
==========================================
  Files           9        9
  Lines        1101     1098       -3
==========================================
- Hits          861      858       -3
  Misses        188      188
  Partials       52       52

Flag
Coverage Δ

#unittests
78.14% <100%> (-0.06%)
:arrow_down:

Impacted Files
Coverage Δ

session/session.go
94.44% <ø> (ø)
:arrow_up:

service/docker.go
82.94% <100%> (-0.2%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e707a8b...5ea50e4. Read the comment docs.


Added script for conversion pytorch public models to onnx

@AlexanderDokuchaev, can you please review this pull request?

Added @eizamaliev for watching this pull request

cc @IRDonch


Inventory acquired inconsistent

Blank dates need to be allowed to be null
acquired = models.DateField(blank=True) becomes acquired = models.DateField(blank=True, null=True

Fixed in ea3a3fbe36aa59d4e089d8bd6270eb385c87fad7


Ellie Yankton Dialogue Typo

There is a typo in one of the dialogue options with Ellie Yankton in the quest 'Breach of Contract', after getting Helgi's agreement to testify. 'He's not the best witness' has been misspelt as 'She's not the best witness'.

Game Version
<IP_ADDRESS>
Language
English (EN)
New Game
Yes
Reproduction Steps
Play 'Breach of Contract' quest in Barrett's questline

Actually, I think the 'she's not the best witness' may be referring to Dalitso as character witness, rather than to Helgi as witness to the case. It's ambiguous enough that I think it can probably be left alone, feel free to delete this issue!


Trying to download cover art from soundcloud. "ERROR: ffmpeg or avconv not found. Please install one." (Mac OSX)

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2<IP_ADDRESS>. If it's not read this FAQ entry and update. Issues with outdated version will be rejected.

[x ] I've verified and I assure that I'm running youtube-dl 2<IP_ADDRESS>

Before submitting an issue make sure you have:

[x] At least skimmed through README and most notably FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[x ] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

$ youtube-dl --embed-thumbnail https://soundcloud.com/ghyppa-142353405/sets/dl-1/s-CNcux
[soundcloud:set] ghyppa-142353405/sets/dl-1/s-CNcux: Resolving id
[soundcloud:set] ghyppa-142353405/sets/dl-1/s-CNcux: Downloading JSON metadata
[download] Downloading playlist: DL
[soundcloud:set] playlist DL: Collected 17 video ids (downloading 17 of them)
[download] Downloading video 1 of 17
[soundcloud] torylanez/diamonds: Resolving id
[soundcloud] torylanez/diamonds: Downloading info JSON
[soundcloud] 278720618: Downloading track url
[soundcloud] 278720618: Checking fallback video format URL
[soundcloud] 278720618: fallback video format URL is invalid, skipping
[soundcloud] 278720618: Checking http_mp3_128_url video format URL
[soundcloud] 278720618: Downloading thumbnail ...
[soundcloud] 278720618: Writing thumbnail to: DIAMONDS (PROD. C-SICK) _ I TOLD YOU  - AUGUST 19.-278720618.jpg
[download] Destination: DIAMONDS (PROD. C-SICK) _ I TOLD YOU  - AUGUST 19.-278720618.mp3
[download] 100% of 2.73MiB in 00:00
[ffmpeg] Adding thumbnail to "DIAMONDS (PROD. C-SICK) _ I TOLD YOU  - AUGUST 19.-278720618.mp3"
ERROR: ffmpeg or avconv not found. Please install one.
...

---

### If the purpose of this *issue* is a *site support request* please provide all kinds of example URLs support for which should be included (replace following example URLs by **yours**):

- Playlist: https://soundcloud.com/ghyppa-142353405

---

### Description of your *issue*, suggested solution and other information

how do i fix this error?

ERROR: ffmpeg or avconv not found. Please install one.


kk Auth error from plugin

Hi, following instruction is very simple to configure all and camunda work very well, but after the token expires I go this error below from:

KeycloakIdentityProviderSession.getKeycloakUserID

Can be the plugin configure to do an auto refresh?
`
org.springframework.web.client.HttpClientErrorException$Unauthorized: 401 Unauthorized
| at org.springframework.web.client.HttpClientErrorException.create(HttpClientErrorException.java:81) ~[spring-web-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:122) ~[spring-web-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:102) ~[spring-web-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.springframework.web.client.ResponseErrorHandler.handleError(ResponseErrorHandler.java:63) ~[spring-web-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:778) ~[spring-web-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:736) ~[spring-web-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:670) ~[spring-web-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:579) ~[spring-web-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.camunda.bpm.extension.keycloak.KeycloakIdentityProviderSession.getKeycloakUserID(KeycloakIdentityProviderSession.java:423) ~[camunda-bpm-identity-keycloak-1.2.0.jar!/:1.2.0]
  | at org.camunda.bpm.extension.keycloak.KeycloakIdentityProviderSession.requestGroupsByUserId(KeycloakIdentityProviderSession.java:739) ~[camunda-bpm-identity-keycloak-1.2.0.jar!/:1.2.0]
  | at org.camunda.bpm.extension.keycloak.KeycloakIdentityProviderSession.findGroupByQueryCriteria(KeycloakIdentityProviderSession.java:713) ~[camunda-bpm-identity-keycloak-1.2.0.jar!/:1.2.0]
  | at org.camunda.bpm.extension.keycloak.KeycloakGroupQuery.executeList(KeycloakGroupQuery.java:36) ~[camunda-bpm-identity-keycloak-1.2.0.jar!/:1.2.0]
  | at org.camunda.bpm.engine.impl.AbstractQuery.evaluateExpressionsAndExecuteList(AbstractQuery.java:191) ~[camunda-engine-7.11.0.jar!/:7.11.0]
  | at org.camunda.bpm.engine.impl.AbstractQuery.execute(AbstractQuery.java:168) ~[camunda-engine-7.11.0.jar!/:7.11.0]
  | at org.camunda.bpm.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:28) ~[camunda-engine-7.11.0.jar!/:7.11.0]
  | at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:107) ~[camunda-engine-7.11.0.jar!/:7.11.0]
  | at org.camunda.bpm.engine.spring.SpringTransactionInterceptor$1.doInTransaction(SpringTransactionInterceptor.java:46) ~[camunda-engine-spring-7.11.0.jar!/:7.11.0]
  | at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140) ~[spring-tx-5.1.9.RELEASE.jar!/:5.1.9.RELEASE]
  | at org.camunda.bpm.engine.spring.SpringTransactionInterceptor.execute(SpringTransactionInterceptor.java:44) ~[camunda-engine-spring-7.11.0.jar!/:7.11.0]
  | at org.camunda.bpm.engine.impl.interceptor.ProcessApplicationContextInterceptor.execute(ProcessApplicationContextInterceptor.java:70) ~[camunda-engine-7.11.0.jar!/:7.11.0]
  | at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:33) ~[camunda-engine-7.11.0.jar!/:7.11.0]
  | at org.camunda.bpm.engine.impl.AbstractQuery.list(AbstractQuery.java:142) ~[camunda-engine-7.11.0.jar!/:7.11.0]
  | at it.infn.sinsinfo.microservice.workflow.workflowservice.configuration.KKAuthenticationProvider.getUserGroups(KKAuthenticationProvider.java:53) ~[classes!/:na]
`

The plugin automatically takes care of the token auto refresh. If the auto-refresh fails, it fetches a new token from the server.
Do you have your Keycloak configuration complete? Did you add roles query-groups, query-users, view-users for your realm to the Camunda Identity Service?

yes it work perfectly and I got the user and groups in Camunda using Keycloak. The strange is if I reboot the application it work. I retry many time and it stop to work exactly when the token expires, any idea?
below is my deployment configuration:
camunda:
  bpm:
    metrics.enabled: true
    history-level: auto
    webapp:
#      index-redirect-enabled: true
      csrf:
        target-origin: https://${HOSTANME_BEHIND_PROXY}
  database:
    schema-update: false
    type: postgres
  authorization:
    enabled: true

server:
  use-forward-headers: true
  tomcat:
    use-relative-redirects: true

spring:
  datasource:
    url: ${CAMUNDA_POSTGRES_URL}
    username: ${CAMUNDA_POSTGRES_USER}
    password: ${CAMUNDA_POSTGRES_PWD}
    driver-class-name: org.postgresql.Driver

keycloak:
  url:
    plugin: ${KEYCLOAK_URL_PLUGIN}
  server-url: ${KEYCLOAK_URL_PLUGIN}/auth
  realm-id: ${KEYCLOAK_REALM}

security:
  oauth2:
    client:
      client-id: ${SERVICE_ID}
      client-secret: ${SERVICE_SECRET}
      accessTokenUri: ${keycloak.url.plugin}/auth/realms/${keycloak.realm-id}/protocol/openid-connect/token
      userAuthorizationUri:  ${keycloak.url.plugin}/auth/realms/${keycloak.realm-id}/protocol/openid-connect/auth
      scope: openid profile email
    resource:
      userInfoUri: ${keycloak.url.plugin}/auth/realms/${keycloak.realm-id}/protocol/openid-connect/userinfo

plugin:
  identity:
    keycloak:
      keycloakIssuerUrl: ${keycloak.url.plugin}/auth/realms/${keycloak.realm-id}
      keycloakAdminUrl: ${keycloak.url.plugin}/auth/admin/realms/${keycloak.realm-id}
      clientId: ${security.oauth2.client.client-id}
      clientSecret: ${security.oauth2.client.client-secret}
      useEmailAsCamundaUserId: true
      useUsernameAsCamundaUserId: false
      administratorGroupName: camunda-admin
      disableSSLCertificateValidation: true

# Camunda Rest API
rest:
  security:
    enabled: true
    jwk-set-url: ${keycloak.url.plugin}/auth/realms/aai/protocol/openid-connect/certs
    required-audience: camunda-rest-api

I digging around the problem and I have set the token lifetime to one minute. I see the Camunda plugin refresh the token and work. I'm waiting to watch raise the problem. I have also try to add some user to cmainda-admin group end I confirm that Camunda update the user group reflecting what I have setup on keycloak. SO configuration seem to work.

other info, calling the api with an invalid token I get the error that it is invalid, calling "engine-rest" endpoint with a good token I get this error:
{
    "error": "invalid_token",
    "error_description": "Invalid JOSE Header kid (El23mfuHKkV8SfYXNut2C2RRc-CWxC6Y-vRk18_RIRQ)"
}

Invalid JOSE Header kid means, that the ID within your token header, which is used to lookup the corresponding public key on the JWKS endpoint of Keycloak, is invalid. So indeed your token is not valid. You should check your setup. A java sample for getting a valid token can be found in RestApiSecurityConfigTest.

Concerning your token timeout problem - what has been your token lifetime when the error occured?

hi, yes the JOSE problem was my misconfiguration, now I put the lifetime to one minute and it is being refreshed by Camunda. I'm still waiting for the problem raise up again. Now I'm in development environment, the problem was into OpenShift deployment. I'll Let you know

after 40 minutes I got this...
KEYCLOAK-01012 TOKEN refresh failed: 400 Bad Request

I check the code of plugin and precisely this :
public boolean needsRefresh() {
	return System.currentTimeMillis() >= expiresAt;
}

perhaps will when this is true the request of new token will not authorised because token has expired. Some framework do the refresh after 70% of the valid time is expired. Perhaps this can be the problem?

ok I got the problem "SSO sessione idle" is 30 minutes and this is the value of the refresh token timeout. Anyway the refresh token should be done before it expires for best practices.
I close the issue as bad Keycloak configuration

Thanks for your response and your hint.

The mentioned variable expiresAt already includes a (minimal) safety time period.
I will check the general timing setup of the sample. Eventually at least an additional hint within the README might help others to not run into this as well.

perfect,
thank you too


No style block in shadow root for StencilJS components

Description
StencilJS web components render properly, complete with styles -- but the styles are non-existent in the DOM (shadow or light/regular). If you inspect the component, you can see styles applied, but you can't go to where it's defined (unlike other styles, which will point you to <style> blocks or CSS files).

Edit: After testing in React, I have the same issue. I'm assuming this means it's an issue with either StencilJS or my own code. I created an issue in the StencilJS repo. I'm leaving this here so someone else can verify if that's the case before I close (just in case someone else has had this issue in another similar form).

Steps to Reproduce

Setup new vanilla JS project (index.html and index.js files)
Add my StencilJS web components to the index.html in a script tag:

<script<EMAIL_ADDRESS>

Add this to index.js

import { html, render } from "lit-html";

const myTemplate = name =>
  html`
    <sui-base>
      <sui-box display="flex">
        <sui-text as="h2" width="50%">Side by side</sui-text>
        <sui-text as="h2" width="50%">Side by side</sui-text>
      </sui-box>
    </sui-base>
  `;

render(myTemplate("World"), document.body);

See components side by side (complete with font styling). But if you inspect, no style block inside any of the web component's shadow root.

Live Reproduction Link
https://codesandbox.io/s/jovial-mccarthy-qtckg
Expected Results
Should see a <style> block inside the web component's shadow root that contains the components styles.

Here you can see the style block (when I don't use lit-html to render the components)
Here you can see the lack of a style block (when I use lit-html)

lit-html seems capable of making <style> blocks. If you run a test where you place the style directly in lit's html(), you can see the <style> block in the shadow root. But for some reason the way StencilJS handles styles, it doesn't get picked up by lit to render in the DOM (but still gets applied?).
Actual Results
Styles applied, but the CSS/styles is nowhere to be found in the DOM.
Browsers Affected

[X ] Chrome
[ ] Firefox
[ ] Edge
[ ] Safari 11
[ ] Safari 10
[ ] IE 11

It seems like this isn't a lit-html issue. Stencil components are in control of their own shadow root.


fix: [#4684] ESLint issues in botbuilder-dialogs-adaptive-testing

Addresses # 4684
#minor
Description
This PR fixes all the new ESLint errors and warnings that appeared after the ESLint packages' upgrade in the botbuilder-dialogs-adaptive-testing project.
Specific Changes

Removed 'only-warn' plugin from 'botbuilder-dialogs-adaptive-testing'.
All updated TS and JS files were due to prettier, mocha, and new jsdoc rules.
Some values in the ResponseStatusCode enum were skipped with ESLint due to having duplicated values. We added description and group them in the Synonyms section.
Some unit tests had their name duplicated, we updated them accordingly.

Testing
The following image shows that there are no more ESLint issues.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>1
Details

8 of 8 (100.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 84.356%

Totals

Change from base Build<PHONE_NUMBER>2:
-0.3%

Covered Lines:
20434

Relevant Lines:
23065

💛  - Coveralls

/promoted 4821


go mod dependency issue:  invalid pseudo-version: major version without preceding tag must be v0, not v1

Issue
When my go.mod file is processed, then the following dep issue is reported as the pongo2 dep relies on a wrong module
go<EMAIL_ADDRESS>requires
<EMAIL_ADDRESS>requires
<EMAIL_ADDRESS>invalid pseudo-version: major version without preceding tag must be v0, not v1

Use the master version. I deleted the pongo2 dependency https://github.com/appscode/go/commit/0887d8ec2eccf1bd9e087052e890c5a784e6db72 to fix this.


[Wise Old Man] Auto submitted name changes are all lowercase

Name changes submitted by the WOM RuneLite plugin are currently always all lowercase.
In the name-changes file, it seems to submit name changes with the correct capitalization. For example:  "PecanVibes11":"PecanBread11"
However, the name is then displayed as pecanvibes11 on the site.
If I was to manually submit a name change on the site https://wiseoldman.net/names/submit
The name would be displayed exactly as capitalized on the new name submission.
A vast number of automatic name changes are submitted by the WOM RL plugin, which is currently leading to a lot of all lower-case names and therefore incorrect capitalization on the site which can't be corrected.

Fixed in by wise-old-man/wise-old-man#864


Switch away from Any in feature flag store

FeatureFlagStoreProtocol’s value(forKey:) should use generics and not return Any. Type casting and type checking should become the store’s responsibility.

Done in ab26175.